[GIS] Reverse geocoding polygon co-ordinates

google-maps-apiopenstreetmappolygonqgisreverse-geocoding

I have a large dataset of polygons for property sections that I need to reverse geocode. It was recommended that I use a GIS like Quantam to do this however from my research I am not 100% sure if a GIS will support doing this.

The technique that I was going to use until I found GIS was to get the center co-ordinates of the polygon and then pass these co-ordinates into a reverse geo-coding api like google or openstreetmap. However I am not sure if this is very accurate.

The polygon data is in the projection format WGS 84 (EPSG:4326 Lat/Long)

Here is an example of what one of the polygons data looks like:

MULTIPOLYGON (((174.76394635 -41.34094115,174.763921416699986
-41.340960566699998,174.763611683300013 -41.340978616699999,174.763597816700013 -41.3409202,174.763793716700008 -41.340691133299998,174.7638963 -41.34071535,174.763958516700001 -41.34073005,174.76394635 -41.34094115)))

What is the best way to reverse geocode this polygon data?

How can I do it on a large scale?

Best Answer

Your results will only be as accurate as the weakest link in your data and methods. Reverse geocoding large polygons is inherently inaccurate if you have no intelligent method to determine a point location from the area. If so, a centroid could be the best bet. Reverse geocoding this will (afaik) snap to the nearest street and have the address interpolated from the range this street represents.

One possible option to accomplish this on a large scale is to script it using python. You can use Shapely to access the spatial information in python, then pygeocoder to reverse geocode the centroid of the polygons.