2014-02-06 2 views
-1

Я думаю, я не могу спросить, как Google делает обратное геокодирование, поскольку никто, кроме Google, не узнает об этом. Но как открытый источник, такой как OSM (OpenStreetMap), разрешает координацию GPS в месте?Как работает обратное геокодирование?

Я понимаю, что в OSM (и Google Maps) каждый адрес считается местом (или точкой) с назначенной координатой GPS. И обратное геокодирование фактически возвращает не точную точку с одинаковой координатой, а ближайшую точку. Так оно и есть? Пройдите через каждую известную точку в базе данных и верните точку в шкафу? Или это намного сложнее? Кроме того, как он знает, к какому городу/стране относится каждый пункт?

Заранее спасибо.

+0

Какую точную информацию вы хотите знать? * https://en.wikipedia.org/wiki/Geocoding * http://postgis.net/docs/Geocode.html И вы говорите об общих идеях/решениях или ориентированных на OSM? * https://wiki.openstreetmap.org/wiki/Nominatim – MaM

+0

Дублированный вопрос: https://help.openstreetmap.org/questions/30512/how-does-nominatim-reverse-geocode – scai

ответ

0

Обратное геокодирование - проблема пространственного поиска. У вас есть дорожные сегменты или данные посылки, и вам нужно найти объект, который ближе всего к вам, ll. Как только вы обнаружите, что вы можете извлечь из него атрибуты и вернуть его пользователю. Существует множество инструментов OpenSource, которые способны выполнять пространственные запросы, такие как PostgreSQL/PostGIS или mapserver.org.

+0

Данные по переписи США Tiger Tiger на уличных сегментах, поэтому, если вы ищете ближайший уличный сегмент, вы можете сбросить нормаль на улицу, а затем линейно интерполировать, чтобы вычислить приблизительный адрес вдоль улицы, предполагая, что дома расположены равномерно вдоль уличного сегмента. –

Смежные вопросы