Страница 1 из 1

Как выделить и разделить все автодороги, на отрезки и поместить в БД

Добавлено: 03 фев 2019, 21:31
lostandleft
Добрый день.
Подскажите пожалуйста, каким образом, можно решить 3 задачи:
- 1: из карт (например из карты monaco.osm.pbf) взять только автодороги и дворы, без парков, площадей, скверов, и прочего, в общем только то, по чему может двигаться автомобиль.
- 2: Все автодороги автоматически, алгоритмом, разделить на отрезки длиной в 1 километр (или меньше, для последнего отрезка) без смежных пересечений, если пересечение имеется, то отрезок в 1 км дробится таким образом, чтобы координаты перекрестка (точка пересечения) находились только на одном отрезке.
-3: Как все полученные отрезки поместить в базу данных, например Postgress под разными индексами.

В целом задача видится так, чтоб все дороги разделить на локации, и для каждой локации дополнительно в базе данных уже вводить определенные дополнения.

Пожалуйста подскажите, какой инструментарий необходим для решения.
Как подобную задачу видели бы Вы?

Re: Как выделить и разделить все автодороги, на отрезки и поместить в БД

Добавлено: 03 фев 2019, 21:59
trir
1. Osmfilter
2. python
3. python

Re: Как выделить и разделить все автодороги, на отрезки и поместить в БД

Добавлено: 04 фев 2019, 00:52
lostandleft
trir,
1 - Спасибо, почитаю.
2 - питонов видел только в зоопарке
3 - немножко знаком с плюсами, но это не вселяет понимания того, как придумать алгоритм

Re: Как выделить и разделить все автодороги, на отрезки и поместить в БД

Добавлено: 04 фев 2019, 06:43
trir
но это не вселяет понимания того, как придумать алгоритм
1. берёшь либу которая умеет расчитывать расстояние
2. строишь граф
3. разбиваешь рёбра на куски
4. грузищь в БД
язык в принципе не важен...

Re: Как выделить и разделить все автодороги, на отрезки и поместить в БД

Добавлено: 04 фев 2019, 09:51
lostandleft
Немножко понятнее, спасибо.
1 - Т.е. существуют либы которые умеют рассчитывать расстояние всех автодорог на всей загруженной карте?
2 - Требуются знания математики как минимум на уровне выпускника физмата?

Re: Как выделить и разделить все автодороги, на отрезки и поместить в БД

Добавлено: 04 фев 2019, 09:53
trir
1 - Т.е. существуют либы которые умеют рассчитывать расстояние всех автодорог на всей загруженной карте?
есть либы которые умеют решать геодезическую задачу
2 - Требуются знания математики как минимум на уровне выпускника физмата?
при наличии либы - необязательно

Re: Как выделить и разделить все автодороги, на отрезки и поместить в БД

Добавлено: 04 фев 2019, 12:14
lostandleft
Я смог подключить http://project-osrm.org/ к своему проекту.
Это сервер построения маршрутов, в том числе считает расстояние между точками, в том числе и строит кратчайшие маршруты.
Но, вот что-то, как именно это для своей задачи применить и решить с помощью этого инструмента не понимаю.
Я научился находить расстояние между точками, научился делать привязку (map matching).
Но вот, к сожалению, как поделить все дороги на отрезки не представляю.

Re: Как выделить и разделить все автодороги, на отрезки и поместить в БД

Добавлено: 04 фев 2019, 12:22
trir
из пушки по воробьям - тебе нужен только граф

Re: Как выделить и разделить все автодороги, на отрезки и поместить в БД

Добавлено: 04 фев 2019, 15:17
lostandleft
Спасибо! Ознакомлюсь.