Поиск изменений границ OSM с течением времени с помощью osmnx?

#openstreetmap #osmnx

#openstreetmap #osmnx

Вопрос:

Я хочу сравнить изменения в OSM с течением времени для данного местоположения (например, Нью-Йорк). Я создал графики OSM Нью-Йорка с двумя разными временными метками, используя overpass_settings в ox.config(). Я хотел бы найти все изменения ребер между двумя графиками OSM (например, перемещение ребер, добавление или удаление ребер из-за построения). Я начал с использования конкатенации u, v, ключа и геометрии в качестве уникального идентификатора для каждого ребра на обоих графиках (идея включения геометрии как части уникального идентификатора заключалась в том, чтобы фиксировать различия между «одним и тем же» ребром в двух разных временных метках). Однако, из того, что я прочитал, а также из того, что я видел при ручном изучении двух графиков в виде шейп-файлов, u, v и key не являются неизменяемыми с течением времени. U, v и key создают стабильный уникальный идентификатор в любом конкретном графике OSM, но они могут не создавать стабильный уникальный идентификатор с течением времени.

Является ли это неотъемлемым ограничением OSM или есть способ сравнить изменения границ с течением времени? Если вышесказанное не ясно, в этом диалоге из проекта SharedStreets описывается, что я хочу сделать, хотя и в рамках SharedStreets.

Комментарии:

1. Вы могли бы попробовать установить simplify=False в OSMnx, а затем использовать osmid geometry в качестве уникальных идентификаторов.

2. @gboeing, спасибо, что так быстро ответили! Кстати, большой поклонник OSMnx — спасибо за постоянное добавление потрясающих функций. Похоже, что osmid также может меняться со временем, как u, v и key, так что не возникнет ли при использовании osmid такая же проблема? Я уже использую simplify=False для получения необработанных ребер OSM — это очень важная часть этой головоломки.