Нужен граф дорог России - что делать/с чего начать?

Ну, собственно говоря, для этого OpenStreetMap и создавался.

теперь нужно намутить программу-конвертор, которая будет импортировать данные из OSM в вашу программу.

не только можно, но и нужно :slight_smile:
Эти данные нужно перевести в формат gpx и импортировать в базу треков OSM. По ним можно более точно “привязать” спутниковые снимки. Кроме того, становится понятно, что “если есть треки - значит, там есть дорога”.

Вам будет любопытно посмотреть этот проект (на основе OSM) http://map.project-osrm.org/

увы, обычно граф сам собой не редактируется. Обычно его редактируют люди. :slight_smile:

Как правило, их надо предварительно чистить, хотя бы места стоянок. А то там иногда такие “кляксы” попадаются, что с треками в этом месте становится работать невозможно.

Да. А ещё бывает, что в начале трека идёт большой разброс. Это при старте GPS-приёмник позицию уточняет. У меня на mustek GP-220 такая фигня.

Ого! Приятно поражен скоростью реакции сообщества.

Изначально задача такова, что нужен именно свой сервис. Потому как предполагается работа НЕ через визуализацию, но через некий API. Причем мы должны иметь возможность влиять на результат. Запрет проезда, уклон дороги, направление движения, платные дороги, учет транзита. Потом информация с РЕБЕР будет использоваться в расчете затрат на поездку. И запросы к этому сервису будут ОЧЕНЬ высокочастотными.

Это я к чему - сторонний сервис использовать как-то проблематично (на мой взгляд). Нужна связь на уровне объектов.

**Вопрос в первоначальном заполнении!! **

И если честно - я не совсем понял, что вы мне насоветовали парни.

Я, кстати, и есть тот программист.

По сути, меня бы наверное устроила бы база данных с отрезками у которых:

  1. Есть геокоординаты.
  2. Которые, будучи прямыми (по своей сути), повторяют прямые же сегменты дороги.

То есть - расстояние для которых я мог бы рассчитать по простой формуле. Понимаете, да?

Сейчас ближайшая база - это трекинг наших грузовиков. Часть из них настолько часто посылают данные - что используй не хочу. К сожалению, данные несколько неоднородные и нуждаются в ручной коррекции и контроле.

И вопрос был не столько к OSM, а сколько к людям, которые шарят в картографии.

Спасибо!

P.S. И мой “формат” это простая БД на MS SQL, никаких особенных конвертеров не надо.

Чтобы не быть голословным по поводу клякс, поясню: глядит это вот так http://www.openstreetmap.ru/?mapid=842950830 (бывает хуже)
А “чистить” - http://www.gpsbabel.org/htmldoc-development/filter_discard.html как минимум, sat=4

Так почему просто не взять базу из OSM целиком и использовать у себя?

2 s777n
А как её можно “взять”?

У OSRM как раз есть свой api: https://github.com/DennisOSRM/Project-OSRM/wiki/Server-api
Он умеет искать ближайшую к заданной точке дорогу и прокладывать маршрут, выплевывая последовательность ребер по которым нужно проехать, а также общие характеристики маршрута (длину, время проезда и т.п.). Для начала можно отладиться на их апи, а потом поднять свой, с нужными настройками.

OSM - это общая база данных геообъектов. В том числе и дорог. Вам нужно отфильтровать из общей базы интересующие вас данные и сконвертировать их в вашу базу.

Но если вы собираетесь в дальнейшем править эти данные, то тут уже встаёт вопрос лицензии. Нельзя просто так скопировать данные и дальше развивать их в закрытом режиме - лицензия OSM это запрещает. Вот если вы правки будете вносить в OSM - тогда пожалуйста.

Разве? Вроде б раньше запрещалась только публикация таких данных. А для себя в закрытом режиме - сколько угодно

Да, упустил. Если только внутри компании - то можно. :roll_eyes:

как скачать и использовать. Так же есть выгрузки по отдельным странам и регионам.

Я всё понял. Ткните пожалуйста в ссылку для нубья - с чего начать - как выбрать нужные мне дороги??

s777n, спасибо огромное!

Пыщь
Прежде всего, обратите внимание на теги highway и route=ferry.

БД вам поднимать совсем не обязательно, можно просто скачать дамп и распарсить его (если он в формате osm, то любым событийным XML-парсером, навроде SAX), заливая по ходу дела в свой MySQL. Хотя с вашим форматом, наверное, так просто не получится, и таки придется сначала залить в БД. :3

Ну или поднять свой OSRM, там и API, и нужные алгоритмы реализованы.

Вот здесь смотрите раздел Работа с данными OpenStreetMap.

Парни, а какой шаг у ребра дороги? Есть какие-то соглашения/правила?

Кстати, я тут для себя сделал плугинчик к osmosis, который позволяет упростить фильтрацию и разборки со связностью в дорожном графе:

http://forum.openstreetmap.org/viewtopic.php?pid=270474#p270474

Для собственного строительства графов роутинга - самое то.

Сложно-то как всё.

Кто за вознаграждение поможет? Нужны дороги России с шагом скажем в 15 км и города с шагом поменьше.
Всё это надо дать/или научить как - в удобном формате, без зауми и карусели расширений.

В одно жало я чувствую потрачу на это дофига времени.