Поєднайте (об'єднайте) дані приватних формфайлів із даними OSM


11

Фон

Завантажили дані Alberta OSM з Geofabrik і запустили їх на приватному сервері Linux за допомогою PostgreSQL 9.1, PostGIS 2.0, Mapnik 2.1.0, osm2pgsql, Apache 2, mod_tile, renderd та OpenLayers:

Дані імпортовано, використовуючи osm2pgsqlнаступне:

osm2pgsql -W -K -S /usr/local/share/osm2pgsql/default.style -d osm alberta.osm.bz2

Проблема

Дані про ОСМ для Альберти неповні. Мені надали набір форм- файлів, що покращують дані OSM:

City.dbf, City.prj, City.sbn, City.sbx, City.shp, City.shp.xml, City.shx

Плюс додаткові формуляри для сіл, міських районів, меж муніципальних районів тощо. Я успішно імпортував файли форм у PostgreSQL за допомогою плагіна pgAdmin . City.prjФайл описує його проекцію наступним чином :

GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]]

Дані форм-файлів та дані OpenStreetMap (OSM) мають свою власну базу даних, але я вважаю, що хочу імпортувати дані форм-файлів у базу даних OSM. (Це приватний сервер і локальна копія даних OSM; дані форматного формату не можна юридично ділитися.)

Оновлення №1

Щоб було зрозуміло, файли форм не містять доріг: лише межі муніципалітетів (які точно не входять до даних про ОСМ), міста (деякі з яких є частиною даних ОСМ) та межі міст для великих міст (деякі з яких можуть бути конфлікт із даними OSM).

Питання

Як з'єднати дані форми файлів з даними OSM, щоб нові міста з’явились на карті?

Примітка: Моя головна проблема полягає у вирішенні дублікатів даних (наприклад, Едмонтон перерахований як в OSM, так і в закуплених файлах форм).

Пов'язані посилання

Дякую!


Завантажте свої файли форм у postgis, використовуючи теги osm - wiki.openstreetmap.org/wiki/Canadian_tagging_guidelines#Naming, тоді оновіть ваш сервер плиток, щоб завантажувати всі нові функції у вигляді даних, оформлених OSM.
Mapperz

Відповіді:


5

Вступ

Це, ймовірно, вимагатиме значної кількості ручної роботи для виявлення та видалення дублюваних даних. Під час виявлення та усунення дублікатів даних; ви хочете, щоб обидва джерела були в одному геоформаті: shapefile, PostGIS DBs або як дані OSM.

Робочий процес

Наступний робочий процес заснований на тому, що обидва джерела даних є OSM перед об'єднанням та вирішенням дублікатів даних.

Є кілька варіантів перетворення даних в OSM:

A]

  1. Перетворіть дані форми файлу в OSM, як би ви хотіли. Версії ogr2ogr, випущені в 2013 році або пізнішої версії (версія 1.10 або пізніша версія IIRC), також можуть конвертувати SHP в OSM. Існує також, ogr2osmяк ви зазначали: є кілька різних версій ogr2osm, незалежно від того, яку ви використовуєте - я вважаю за краще пнорман , це найсучасніший. Незважаючи ні на що, переконайтеся, що файли перекладу сумісні з версією ogr2osm, яку ви використовуєте (для простоти, ті, з якими я пов’язаний, повинні бути сумісні з версією ogr2osm). Дивіться тут приклади файлів перекладу, сумісних із ogr2osm pnorman.

Переконайтеся, що у файлі перекладу є вся інформація, яку ви хочете у вашому файлі форм. Файл перекладу перетворить ваші типи та атрибути файлу форм у те, що ОСМ називає Теги , які складаються з клавіш та значень.

1а. запустити ogr2osm.

  1. Відкрийте josm , завантажте плагін для конфлікту

  2. Тепер ваші дані gov - це файл osm. Відкрити Josm, Файл> Відкрити Ваші дані є як шар.

  3. Якщо у вас вже є локальні дані OSM, які зберігаються на вашому комп’ютері, відкрийте їх у josm, вони також відкриються як новий шар.

  4. Об'єднання цих двох джерел даних разом та усунення дублікатів даних відоме як сплутаність . Запустіть плагін конфлікту та вирішіть усі конфлікти.

Якщо у JOSM не вистачає пам’яті (наприклад, при використанні великих файлів), відокремте типи атрибутів і виконайте цей робочий процес кілька разів, кожен з різними видами даних (наприклад, межі та землекористування; шосейні дороги; будівлі), а потім, нарешті, об'єднайте. файли osm разом, використовуючи osmium або інший інструмент.

B. JOSM також може читати форму файлів, хоча підтримка SHP не є ідеальною, і цей метод передбачає, що файл форми може бути завантажений повністю в пам'ять ...

  1. Запустіть JOSM.
  2. Відкрийте файл форми (наприклад, filename.shp).
  3. Вибрати все.
  4. У JOSM відредагуйте атрибути та властивості, які були імпортовані з SHP, та змініть їх так, щоб кожен атрибут відповідав тегу OSM.
  5. Зберегти як формат OSM.
  6. Продовжуйте рухатись від A4 та конфулювати

Імпортувати як OSM

Імпортуйте дані OpenStreetMap в систему наступним чином:

  1. Перейдіть до каталогу, що містить файли OpenStreetMap (OSM), перетворені за допомогою JOSM.
  2. Виконайте такі команди в базі даних:
    СТВОРИТИ РОЗШИРЕННЯ hstore;
    osm2pgsql -j -W \
              -d osm filename.osm

Цей -jпараметр є ключовим, оскільки він вказує osm2pgsql імпортувати теги в hstoreстовпчик, зберігаючи базову структуру даних і імпортувати всі теги в базу даних.

Створіть шар Mapnik

Щоб дані з’явились на карті, додайте шар і стиль для цього шару. Це може бути так само просто, як наступне:

  1. Редагувати mapnik-stylesheets/osm.xml.
  2. Вставте наступний код XML перед </Map>тегом закриття ...

...

<Layer name="prefix_zone" status="on" srs="&osm2pgsql_projection;">
  <StyleName>zones</StyleName>
  <Datasource>
    <Parameter name="table">
    (select way from prefix_line order by tags desc, z_order) as zones
    </Parameter>
    &datasource-settings;
  </Datasource>
</Layer>

Створіть стиль Mapnik

Продовжуючи з попереднього розділу:

  1. Знайдіть останній </Style>тег (біля рядка 3350).
  2. Вставте наступний код XML перед &layer-shapefiles;директивою:

...

<Style name="zones">
  <Rule>
    &maxscale_zoom1;
    &minscale_zoom19;
    <LineSymbolizer stroke="#0065BD" stroke-width="2.5" />
  </Rule>
</Style>

Дорожній матч

roadmatcher це ще один інструмент , який може бути корисним


OpenJUMP 1.5.1 не сумісний з RoadMatcher 1.4. OpenJUMP 1.3.1, який може використовувати RoadMatcher 1.4, не сумісний з PostGIS 2.0 (тому що OpenJUMP викликає find_extentшвидше st_find_extent). У базі даних встановлений PostGIS 2.0.
Дейв Джарвіс

Плагін JOSM OpenData читає форму
Дейв Джарвіс
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.