I have a Buildings (polygon) shp file and a DSM. what I wanted to do was to get the pixel values for all the vertices of those buildings, and find another pixel value just around those vertices (say 2m, but exclude values coinciding with the building) that will give the maximum difference when subtracted to the value of the vertex. Finally, retain only the vertex that gave the maximum difference for each building.
What I did is I used the 'Feature to Point Vertices' in ArcMap to convert my building vertices into a point shp file. Then I made a 2m buffer around these points and I used the Erase tool using the Buildings as the erase feature. I thought I'd get the value for the vertices using 'Extract Values to Point' tool and then use Zonal Stat as Table to get the minimum values on the buffer circles. This is where my problem starts, ArcMap won't perform the Zonal Stat as Table because I have overlapping circles and performing the process on each circle is time consuming.
Does anyone have a suggestion to do it in a more efficient manner?