Кто-нибудь знает хороший способ сделать автономное обратное геокодирование?

Мне нужно сделать обратное геокодирование в автономном режиме, предназначенное для работы в качестве cron-заданий. Обратный кодер должен давать город, штат для миллионов "записей".

Какие существуют услуги (платные или бесплатные), которые могут сделать "это"?

Я посмотрел на http://www.geonames.org/, но это не совсем то, что мне нужно.

2 ответа

Получить таблицу координат всех городов (и в каком штате город находится). Для любой координаты выберите ближайший город. Для эффективного использования закодируйте таблицу как R-дерево.

Ссылки на R-дерево и т. Д. См. В разделе " Обратное геокодирование без веб-доступа".

Получить таблицу городов из географических названий, см. Учитывая координаты широты и долготы, как мы можем узнать город / страну?

Этот вопрос довольно старый, но я нашел другое решение, помимо популярного решения на основе R-Tree.

Рассматривая карту как изображение, вы можете закодировать карту по длине в (отсортированный) список кортежей (x, y1, y2, loc) с желаемым разрешением. Чтобы найти положение точки (a, b), просто найдите строку, где x = a и y1 <= b <= y2.

Это решение эффективно, так как карта имеет фиксированное разрешение. По сравнению с решением на основе R-Tree, оно имеет то преимущество, что не вводит новые библиотеки в существующие системы. Данные могут быть эффективно запрошены обычной базой данных SQL, пока (x, y1) проиндексированы, или запрошены с помощью двоичного поиска в статическом файле.

Существует веб-сайт (https://reverse-geocoding.com/), который предлагает такую ​​базу данных и бесплатные демонстрации того, как это работает. Раскрытие информации: я работаю над этим сайтом.

Другие вопросы по тегам