Re: анализ gps-треков
On Mon, Jun 29, 2009 at 01:01:30PM +0400, spied wrote:
> > Это можете решить только Вы сами основываясь на анализе получаемых данных.
> > Во-первых, можно проверять DOP
> > http://en.wikipedia.org/wiki/Dilution_of_precision_(GPS)
> >
> > и отбрасывать подозрительные точки. Само по себе это не гарантирует повышение
> > качества трека и отброшенные точки вполне могут быть измерены точно.
>
> хотелось бы не отбрасывать их, но учитывать "подозрительность"
Писать сложный фильтр: если точка сильно вылетает от соседних, и если HDOP
меньше 3-х... Что-то в этом духе, но повторюсь: всё определяется задачами и
данными. Надо пробовать и смотреть на результат. Или же можно раскрашивать
точки по-разному в зависимости от атрибутов (см. mapserver).
> > Во-вторых, можно сглаживать трек, отбрасывая вылетающие точки. Всё это умеет
> > gpsbabel, посмотрите его документацию в разделе фильтров данных.
>
> я такого фильтра там не нашёл :(
Фильтр simplify.
> >> ну и самый главный вопрос - как подсчитать реальный путь по записанному треку
> >> (с ошибкой скажем не более процента)?
> >
> >
> > Следует чётко понимать, что основные ошибки в определении местоположения
> > создаются ионосферой и переотражениями от окружающих объектов, учесть это в
> > Вашем случае всё равно не удастся, поэтому особенно бороться за предельную
> > точность смысла не имеет.
>
> предельную - не имеет.
> но в процессе использования gps возникло ощущение, что точность вполне
> достаточна и при обработке данных ошибка будет минимальной.
Дело в том, что при измерениях может присутствовать постоянная систематическая
ошибка. Можно идеально сгладить трек, но пролегать он всё равно будет на
соседней улице. Поэтому лично я бы особенно упираться в сглаживания не стал.
Убрать сильно выбивающиеся, убрать повторяющиеся --- и достаточно.
> > Для манипуляций же с треками посоветую использовать библиотеку GDAL/OGR
>
> спасибо, посмотрю
А что касается вычисления длины отрезков геодезической линии, то тут вопрос
тоже интересный и неплохо разработанный. Во-первых, есть программа geod из
PROJ.4 (пакет proj-bin). Во-вторых, дальнейшие разработки автора PROJ.4
(реализация алгоритма T. Vincenty):
http://home.comcast.net/~gevenden56/geodesy/project/
В-третьих, ещё более точная реализация:
http://charles.karney.info/geographic/
http://charles.karney.info/geographic/geodesic.html
По последней ссылке подробное описание проблемы и библиография.
> > Не обязательно использовать openlayers, можно применить mapserver
>
> с первого взгляда это то же самое - визуализация карт с веб-интерфейсом. в
> чём разница?
Openlayers --- это "тяжёлый" JavaScript на стороне клиента, mapserver --- CGI,
клиент получает отрендеренную картинку. Разумеется, чем больше функционала
вокруг этой картинки, тем больше JavaScript'а.
А ещё можно преобразовать трек в KML и визуализировать с помощью GoogleEarth.
--
Andrey V. Kiselev
Reply to: