In ArcMap, Zonal Statistics uses the centre points of the Rasters pixels to link to the under or overlying polygons.
Some of the polygons that I am using are small enough that they do not overlap the centroid point of the overlying raster pixel and subsequently do not retrieve any data.
Rough picture illustrates 4 raster cells and 4 polygons that would fail to retrieve zonal statistics data because they do not overlap the centroids of the pixels.
Model Based Approach?
At this point I am considering developing a model that defers to marginally displaced versions of the raster if Zonal Statistics initially fails (Displacing rasters so that the centroid of the pixel is artificially moved from the centre to the midpoint between the centre point and the top right corner (Doing this 4 times for each quadrant of the pixel)).
This model would conduct the initial Zonal Statistics on the polygon feature set before extracting all those polygons which failed to collect any data from the Rasters (because they were too small and didn't overlap a pixel centroid). It would then attempt zonal statistics with 4 blank rasters, all of which have been offset marginally so that the chance of a polygon overlapping is multiplied by 4. Once it has been determined which offset works for each polygon I could then offset the polygons relevant to the right offset or create offset versions of each raster layer that I am doing zonal statistics for.
Whilst I think this model would ultimately work it would be overly complex and convoluted to setup. Is there an alternative way that this issue can be gotten around?
Answer
You could convert the raster to point and perform a Near operation
OR
Buffer your null polygons by half of the cell size of your raster and then perform the zonal statistics, which I think would be the best approach
No comments:
Post a Comment