Statistic summary of values of raster pixels inside polygons?

15 vues (au cours des 30 derniers jours)
Marmar
Marmar le 8 Mai 2018
Hi there, I have a raster satellite image that I imported to matlab as geotiff and I have a file (shapefile) with several polygons (about 500), form the same area, that I imported in matlab by shaperead function. I want to know the mean, maximum, minimum and sum of the values of the pixels of the raster that are within each polygon. So I finally want to have a matrix with 500 rows, which each row represents a polygon and 4 columns that each indicates a parameter (mean, maximum, minimum and sum). Any idea is really appreciated. ?!

Réponse acceptée

KSSV
KSSV le 9 Mai 2018
As you said you have polygons in hand.......you can extract the points of the raster lying inside these polygons using inpolygon. inpolygon gives you indices of the raster points lying inside the given polygon. Once indices are known, you extract the points and calculate mean, max, min and sum. Bottomline read about inpolygon.
  1 commentaire
Marmar
Marmar le 9 Mai 2018
Hi Thanks, do you have any idea how can I put a raster in inpolygon function? SO I had a raster and a polygone and now I imported them to Matlab by shaperead and geotiffread. SO I thinkn in inpolygon function it just needs coordinates! Thanks for your reply in advance

Connectez-vous pour commenter.

Plus de réponses (1)

Reema Alhassan
Reema Alhassan le 10 Juin 2018
Hello Marmar,
this is exactly what I need to do if you have a code of doing this could you share it please ? till know I can do statistics for only a shape with one polygon but I need to do the same with a file with many polygons and I couldn't if you know a way of doing this please let me know
Many thanks.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by