Методы оценки «извилистости» дороги в Google Maps? - PullRequest
2 голосов
/ 04 февраля 2012

согласно названию. Я хочу, учитывая URL-адрес карт Google, создать рейтинг извилистости, основанный на том, насколько дороги извилистые. Есть ли какие-либо методы, которые я могу изучить?

Что я имею в виду под закручиванием? Ну, я точно не уверен. Я предполагаю, что это характеризуется высоким отношением поворота к расстоянию, а также большим числом изменений угла поворота за поворот. Я также сказал бы, что изменение высоты дороги также влияет на нее.

Ответы [ 2 ]

2 голосов
/ 14 декабря 2012

Попробуйте http://www.hardingconsultants.co.nz/transportationconference2007/images/Presentations/Technical%20Conference/L1%20Megan%20Fowler%20Canterbury%20University.pdf в качестве отправной точки.

Я бы предположил, что вам нужно каким-то образом захватить осевую линию дороги из Карт Google в виде векторизованного набора данных и проанализировать, используя программное обеспечение ГИС, чтобы сделатьчто вы описываетеВозможно, сделайте снимок экрана, а затем начните преобразование растра в вектор.

Совокупный угол поворота на километр является наиболее часто используемым показателем при оценке дороги.Плотность вершин также полезна.Обратите внимание, что эти меры зависят от предположения, что вершины были размещены в некоторой форме равной плотности вдоль длины линии, пока они были захвачены, а не размещены вручную.Запуск инструмента ГИС, такого как алгоритм "bendsimplify" на линии, должен решить эту проблему.Я написал скрипты на Python для ArcGIS 10, чтобы определить эти меры, если они кому-то нужны.

Извилистость иногда используется для измерения изгибов в реках - хорошее описание см. На страницах справки для Hawths Tools for ArcGIS.Это может вводить в заблуждение для дорог, которые имеют значительные изменения в курсе по всей их длине.

2 голосов
/ 04 февраля 2012

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

Я могу представить несколько измерений:

  • отношение длины дороги к расстоянию между началом и концом (из-за этого длинная одиночная кривая «извилистая», поэтому, скорее всего, это не полный ответ)
  • количество точек перегиба на единицу длины (это сделало бы почти прямую дорогу с большим количеством небольших покачиваний, так что, скорее всего, это не полный ответ)

Эти два значения можно объединить умножением, так что вы получите:

road-length        * inflection-points
--------------------------------------
start-end-distance * road-length

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

Что касается учета высоты, я думаю, что для первой попытки достаточно всего вычисления в трех измерениях.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...