| велосипед Hammer |

Начать новую тему Ответить на тему На страницу Пред.  1, 2, 3, 4, 5, 6, Bce  След.
Автор Сообщение
 Заголовок сообщения: Re:
СообщениеДобавлено: 13.11.2015 08:42 
Аватара пользователя

Сообщения: 471
Город: Екатеринбург
Пол: Муж
Возраст: 59
Зарегистрирован:26.03.2012
Вот картинка в качестве иллюстрации той самой пилы:

Вложение:
1.gif
1.gif [ 241.88 КБ | Просмотров: 2840 ]


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

Просто й эксперимент - запишите пару минут "трека", просто положив прибор на камень неподвижно. Логика подсказывает, что из всех точек одна должна быть "истинной", а остальные - "локальные несоответствия". А теперь попробуйте понять какая точка "настоящая"... Ответ - скорее всего ни одна из них. "Истина где-то рядом". Все, что вы видите - это по сути шум прибора в чистом виде. Чтобы минимизировать его нужно сделать некоторую математическую обработку - построить функцию распределения, выкинуть все точки за пределами "трех сигм", посчитать среднее из оставшихся...

В движении этот шум никуда не девается. Он лишь накладывается на вашу траекторию. И тут задача усложняется тем, что простым усреднением уже ничего не добиться (хотя теоретически можно записать, скажем, 10 точек в секунду, предполагая что за 0.1с ваше перемещение будет минимальным и усреднять их за секунду). Тут приходится применять более сложные фильтры, позволяющие выделить истинную траекторию на фоне шумовых добавок. Т.е. классическая фильтрация зашумленного сигнала.

Посему, считать что есть "правильные" точки и есть "неправильные" и что "неправильные" нужно выкидывать, а "правильные" трогать нельзя ошибочно. Они все состоят из двух частей - "истинное положение" + шумовая компонента. Точнее даже так - положение + шум + погрешность метода + погрешность измерения.

А "локальные несоответсвия" позволяют всего лишь выделить те одиночные точки, где ко всему этому добавилось еще какое-то однократное случайное воздействие. Не более того.

_________________
//Cheers, Victor
//Magellan eXplorist 310, Transystem TripMate 852, Columbus V-990, Transystem PersonalMate 860Lite, Garmin Nuvi 50


Вернуться к началу
shoppage  personalpage P  
 
 Заголовок сообщения: Re: TrackProcessor
СообщениеДобавлено: 13.11.2015 12:14 
Аватара пользователя

Сообщения: 471
Город: Екатеринбург
Пол: Муж
Возраст: 59
Зарегистрирован:26.03.2012
По-моему, удалось исправить ошибку.

https://drive.google.com/open?id=0B1SFdzGC9fHXU0xBT2dyRDl6aWc

Плюс теперь можно грузить файл через командную строку.
Ну и мелкая косметика.

Насчет выделения нескольких точек на карте - подумаю.
Насчет "больше источников карт" - не знаю. Пока смысла не вижу большого. Это, все-таки, не картографическая программа, а обработчик треков. Тут просто нужно видеть как тот или иной фильтр отработал а не как трек на карту ложится.

_________________
//Cheers, Victor
//Magellan eXplorist 310, Transystem TripMate 852, Columbus V-990, Transystem PersonalMate 860Lite, Garmin Nuvi 50


Вернуться к началу
shoppage  personalpage P  
 
 Заголовок сообщения: Re: TrackProcessor
СообщениеДобавлено: 14.11.2015 05:18 
Аватара пользователя

Сообщения: 1172
Город: Харьков
Пол: Муж
Возраст: 47
Зарегистрирован:18.03.2013
Ошибка у меня продолжала выскакивать, а потом пропала. Может, это связано с тем, что я переключил Map Refresh Mode с Manual на Auto?

Для обработки треков при помощи фильтров, конечно, дополнительные источники карт не нужны. Они нужны для ручной обработки. Когда собираешься вручную удалить какие-то точки, и хотел бы посмотреть, допустим, по спутниковому снимку, какие точки попали на тропинку, а какие находятся в стороне от неё. Либо посмотреть: резкий изгиб трека - это "неправильные" точки или же там действительно резко тропинка изогнулась?

По поводу фильтров: вы, конечно, правы, что все точки неправильные. И что желательно как-то их усреднять и сглаживать. Однако что я вижу на практике? Работа ваших фильтров (с настройками по умолчанию) мне не очень понравилась. Результат либо не особо правдоподобный, либо очень слабо убирающий скачки.

Кстати, большинство ваших фильтров хорошо сглаживают мелкую зубчатку, но не справляются с сильными явно неправильными выбросами. Исключение - фильтр Speed. Он их убирает неплохо (я ставил верхний порог 6 км/ч при том, что с рюкзаком я иду со скоростью максимум 5,5 км/ч). Но совершенно не понял, почему в отфильтрованном таким образом треке присутствуют точки со скоростью выше той, которую я указал при фильтрации (например, 12 км/ч).

На мой взгляд, ваша программа даёт лучший результат при применении сначала фильтра Speed, а затем - LowPass. Но упомянутая ранее программа GPS Track Editor даёт примерно такой же результат всего лишь при одном фильтре - Local inconsistencies. А если после него задействовать фильтр By value, где можно указать пороги скорости и ускорения, то результат будет несколько лучше вашего.

Моя оценка базируется на знании местности и того, как мы шли в том походе. Так что, когда на этом треке я вижу крупную петлю или крупный выброс, то я знаю, шли мы так или нет. И если эта петля (выброс) не соответствует нашей реальной траектории, то по ней можно судить об эффективности фильтра: удалит он её или нет. Понятно, что для объективности судить о работе фильтра нужно не по одному выбросу, а по нескольким.

P.S. Я старался быть объективным и ни в коем случае не хотел написать ничего обидного. Таких программ, как ваша - очень мало. И, несмотря на некоторые критические замечания, её наличие уже представляет собой большой плюс.

_________________
Карти для GPS-навігаторів: де їх брати? https://encyclopedia-mandriv.blogspot.com/2013/06/karty-dlya-gps-navigatorov.html


Вернуться к началу
shoppage  personalpage P  
 
 Заголовок сообщения:
СообщениеДобавлено: 14.11.2015 08:58 
Аватара пользователя

Сообщения: 471
Город: Екатеринбург
Пол: Муж
Возраст: 59
Зарегистрирован:26.03.2012
Я вот думаю - а ручной режим обновления карты вообще нужен? Может убрать его напрочь?

По поводу скорости - посмотрю. Возможно, где-то ошибка.

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

Сплайн, кстати, их тоже срезает.

А вообще работа каждого фильтра очень сильно зависит от параметров. Нужно экспериментировать.

А вообще, математически, задача непростая. Далеко не все искажени можно распознать. Мелкую зубчатка подавить достаточно легко. А вот систематичекую ошибку, когда трек в силу какой-то постоянной помеехи плавно увело в сторону а потом плавно вернуло обратно, распознать практически невозможно.

И даже хаотические метания при стоянии на месте на самом деле трудно выявляются (чтобы фильтр при этом не резал все подряд).

За критику в любом случае спасибо. Дело нужное и важное. :-)

_________________
//Cheers, Victor
//Magellan eXplorist 310, Transystem TripMate 852, Columbus V-990, Transystem PersonalMate 860Lite, Garmin Nuvi 50


Вернуться к началу
shoppage  personalpage P  
 
 Заголовок сообщения: Re: TrackProcessor
СообщениеДобавлено: 15.11.2015 03:02 
Аватара пользователя

Сообщения: 1172
Город: Харьков
Пол: Муж
Возраст: 47
Зарегистрирован:18.03.2013
Да, похоже, что ручной режим обновления совершенно не нужен. Автоматический работает без нареканий.

Теперь про срезание отдельных пиков. Привожу несколько скриншотов, используя вышеупомянутый трек. Взял кусочек, где мы шли по ровной грунтовой дороге без существенных изгибов, но на треке появилось несколько явных выбросов в сторону от основной траектории движения (напоминаю, мы шли по дороге и с неё не сходили).

Первый скриншот - программа GPS Track Editor, фильтр Local inconsistencies. Выбросы более-менее удалены (исходный трек обозначен пунктиром).

Второй скриншот - программа Track Processor, фильтр Median. Выбросы уменьшились незначительно (хотя в целом этот фильтр показал довольно неплохой результат).

Третий скриншот - программа Track Processor, фильтр Spline Smooth. Выбросы, по сути, какого размера были, такого и остались, только приобрели несколько более плавные очертания.


Вложения:
Комментарий к файлу: GPS Track Editor, фильтр Local inconsistencies
gpstrackeditor.png
gpstrackeditor.png [ 191.15 КБ | Просмотров: 2782 ]
Комментарий к файлу: Track Processor, фильтр Median
trackprocessor-median.png
trackprocessor-median.png [ 57.21 КБ | Просмотров: 2782 ]
Комментарий к файлу: Track Processor, фильтр Spline Smooth
trackprocessor-splinesmooth.png
trackprocessor-splinesmooth.png [ 57.67 КБ | Просмотров: 2782 ]


_________________
Карти для GPS-навігаторів: де їх брати? https://encyclopedia-mandriv.blogspot.com/2013/06/karty-dlya-gps-navigatorov.html
Вернуться к началу
shoppage  personalpage P  
 
 Заголовок сообщения:
СообщениеДобавлено: 15.11.2015 08:22 
Аватара пользователя

Сообщения: 471
Город: Екатеринбург
Пол: Муж
Возраст: 59
Зарегистрирован:26.03.2012
А какие параметры для фильтров использовались?

Про медиану могу сразу сказать что чем больше апертура, тем лучше сглаживание. Попробуйте увеличить до 7-9. Результат будет другим.

_________________
//Cheers, Victor
//Magellan eXplorist 310, Transystem TripMate 852, Columbus V-990, Transystem PersonalMate 860Lite, Garmin Nuvi 50


Вернуться к началу
shoppage  personalpage P  
 
 Заголовок сообщения: Re: TrackProcessor
СообщениеДобавлено: 16.11.2015 03:03 
Аватара пользователя

Сообщения: 1172
Город: Харьков
Пол: Муж
Возраст: 47
Зарегистрирован:18.03.2013
Параметры использовались те, которые у вас стоят по умолчанию. В медиане апертура стояла 3. Сейчас поставил 9. Результат лучше.

_________________
Карти для GPS-навігаторів: де їх брати? https://encyclopedia-mandriv.blogspot.com/2013/06/karty-dlya-gps-navigatorov.html


Вернуться к началу
shoppage  personalpage P  
 
 Заголовок сообщения: Re: TrackProcessor
СообщениеДобавлено: 16.11.2015 03:06 
Аватара пользователя

Сообщения: 1172
Город: Харьков
Пол: Муж
Возраст: 47
Зарегистрирован:18.03.2013
Но всё же Speed отрабатывает лучше (ставлю порог скорости 5,7 км/ч).

_________________
Карти для GPS-навігаторів: де їх брати? https://encyclopedia-mandriv.blogspot.com/2013/06/karty-dlya-gps-navigatorov.html


Вернуться к началу
shoppage  personalpage P  
 
 Заголовок сообщения: Re: TrackProcessor
СообщениеДобавлено: 16.11.2015 08:48 
Аватара пользователя

Сообщения: 471
Город: Екатеринбург
Пол: Муж
Возраст: 59
Зарегистрирован:26.03.2012
Примеры работы фильтров:

DES с параметром 0.1:
Вложение:
DES 0.gif
DES 0.gif [ 144.03 КБ | Просмотров: 2732 ]


Фильтр Калмана с параметрами 5 (кавариация шума процесса) и 500 (ковариация шума измерения)
Вложение:
Kalman 5-500.gif
Kalman 5-500.gif [ 162.31 КБ | Просмотров: 2732 ]


Сглаживание усреднением с параметрами:
Интервал усреднения по расстоянию 50м, по времени 60сек
Минимальное время от последней точки 15сек, скорость 3км/ч, угол поворота 15 градусов
Коэффициент сглаживания 0.25
Вложение:
Average.gif
Average.gif [ 146.29 КБ | Просмотров: 2732 ]


Медианный фильтр с апертурой 9 + Фильтр Калмана
Вложение:
Median-Kalman.gif
Median-Kalman.gif [ 148.48 КБ | Просмотров: 2732 ]


Медианный фильтр + Сглаживание усреднением
Вложение:
Median-Average.gif
Median-Average.gif [ 146.17 КБ | Просмотров: 2732 ]


А вот подавление дрифта с параметрами
Апертура 50м, порог скорости 1.5км/ч, интенсивность высокая.
Вложение:
Drift.gif
Drift.gif [ 140.99 КБ | Просмотров: 2732 ]


В общем, надо играться с параметрами и часто накладывать один фильтр поверх другого. К сожалению, универсального фильтра "сделайте мне красиво" мне не удалось придумать :-) Подозреваю, что такового в природе не существует, для разных условий нужны разные фильтры. И все равно идеалного результат добиьтся вряд ли удастся.

_________________
//Cheers, Victor
//Magellan eXplorist 310, Transystem TripMate 852, Columbus V-990, Transystem PersonalMate 860Lite, Garmin Nuvi 50


Вернуться к началу
shoppage  personalpage P  
 
 Заголовок сообщения: Re: TrackProcessor
СообщениеДобавлено: 16.11.2015 13:44 
Аватара пользователя

Сообщения: 471
Город: Екатеринбург
Пол: Муж
Возраст: 59
Зарегистрирован:26.03.2012
Поправил фильтр скорости, удалил режим ручного обновления карты + по мелочи еще немного.

https://drive.google.com/open?id=0B1SFdzGC9fHXTjZQc21NZDh3M2s

_________________
//Cheers, Victor
//Magellan eXplorist 310, Transystem TripMate 852, Columbus V-990, Transystem PersonalMate 860Lite, Garmin Nuvi 50


Вернуться к началу
shoppage  personalpage P  
 
 Заголовок сообщения: Re: TrackProcessor
СообщениеДобавлено: 16.11.2015 21:23 
Аватара пользователя

Сообщения: 471
Город: Екатеринбург
Пол: Муж
Возраст: 59
Зарегистрирован:26.03.2012
Андрей Лунячек писал(а):
Параметры использовались те, которые у вас стоят по умолчанию. В медиане апертура стояла 3. Сейчас поставил 9. Результат лучше.


Внимательно сравните как работает фильтр в track editor и сравните с результатом median + average smooth.

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

Про дрифт не говорю - его вообще сложно распознать. Здесь уже второй вариант дрифт-фильтра. Первый был реализован в nmeaprocessor, там вообще сплошное шаманство, он работал очень жестко. Даже черезчур жестко, потому и отказался от него.

Вообще тут часть фильтров (DES, ФНЧ, медиана, калман) используют стандартные алгоритмы, а часть (дрифт, усреднение, кластерный) - мои оригинальные. Сплайн - стандартный алгоритм с оригинальным способом рассчета коэффициентов сглаживания.

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

_________________
//Cheers, Victor
//Magellan eXplorist 310, Transystem TripMate 852, Columbus V-990, Transystem PersonalMate 860Lite, Garmin Nuvi 50


Вернуться к началу
shoppage  personalpage P  
 
 Заголовок сообщения: Re: TrackProcessor
СообщениеДобавлено: 17.11.2015 03:03 
Аватара пользователя

Сообщения: 1172
Город: Харьков
Пол: Муж
Возраст: 47
Зарегистрирован:18.03.2013
Спасибо за примеры. Очень наглядно.

Victor Pomortseff писал(а):
Внимательно сравните как работает фильтр в track editor и сравните с результатом median + average smooth.

В отличие от вашей программы, GPS Track Editor только удаляет точки, ничего не пересчитывая и не записывая новых точек. С одной стороны это минус, а с другой - плюс. У вас median + average smooth вроде бы и неплохо отработали, но несуществующую петлю (как минимум в одном месте) всё же пририсовали.

Небольшое косметическое пожелание. Цвет трека задаётся автоматически. Но некоторые цвета явно неудачные. Было бы удобно, если бы имелась возможность менять цвет трека. И чтобы в левой панели рядом с названием трека изображался квадратик с его цветом. Тогда на карте было бы более понятно, где какой трек.

_________________
Карти для GPS-навігаторів: де їх брати? https://encyclopedia-mandriv.blogspot.com/2013/06/karty-dlya-gps-navigatorov.html


Вернуться к началу
shoppage  personalpage P  
 
 Заголовок сообщения: Re: TrackProcessor
СообщениеДобавлено: 17.11.2015 13:46 
Аватара пользователя

Сообщения: 471
Город: Екатеринбург
Пол: Муж
Возраст: 59
Зарегистрирован:26.03.2012
Андрей Лунячек писал(а):
Небольшое косметическое пожелание. Цвет трека задаётся автоматически. Но некоторые цвета явно неудачные. Было бы удобно, если бы имелась возможность менять цвет трека. И чтобы в левой панели рядом с названием трека изображался квадратик с его цветом. Тогда на карте было бы более понятно, где какой трек.


Со сменой цвета муторно (может потом сделаю, не знаю...), а индикацию добавил.

https://drive.google.com/open?id=0B1SFdzGC9fHXZTh5WXl4RXdPMHM

Сейчас на очереди попробовать поменять XML парсер. Что-то стоковый тормозит безбожно на больших треках. Попробую альтернативный поискать и прикрутить

_________________
//Cheers, Victor
//Magellan eXplorist 310, Transystem TripMate 852, Columbus V-990, Transystem PersonalMate 860Lite, Garmin Nuvi 50


Вернуться к началу
shoppage  personalpage P  
 
 Заголовок сообщения: Re: TrackProcessor
СообщениеДобавлено: 18.11.2015 03:06 
Аватара пользователя

Сообщения: 1172
Город: Харьков
Пол: Муж
Возраст: 47
Зарегистрирован:18.03.2013
Спасибо!
Ещё раз поигрался с фильтрами. Думаю, надо начинать со Speed (ставить 7 км/ч для пешехода) - это отфильтрует одиночные сильные выбросы. А затем либо Median (не столько сглаживает, сколько удаляет выбросы), либо Low Pass (довольно корректно сглаживает, почти не внося "отсебятины").
Остальные фильтры либо действуют слабо, либо чересчур сильно и некорректно сглаживают (вместо срезания сильного выброса - плавно его обводят; вместо следования точно по треку там, где он идёт плавно - вносится "отсебятина" в виде участка траектории, не соответствующего действительности).

_________________
Карти для GPS-навігаторів: де їх брати? https://encyclopedia-mandriv.blogspot.com/2013/06/karty-dlya-gps-navigatorov.html


Вернуться к началу
shoppage  personalpage P  
 
 Заголовок сообщения: Re: TrackProcessor
СообщениеДобавлено: 19.11.2015 11:50 
Аватара пользователя

Сообщения: 471
Город: Екатеринбург
Пол: Муж
Возраст: 59
Зарегистрирован:26.03.2012
Андрей Лунячек писал(а):
Спасибо!
Ещё раз поигрался с фильтрами. Думаю, надо начинать со Speed (ставить 7 км/ч для пешехода) - это отфильтрует одиночные сильные выбросы. А затем либо Median (не столько сглаживает, сколько удаляет выбросы), либо Low Pass (довольно корректно сглаживает, почти не внося "отсебятины").
Остальные фильтры либо действуют слабо, либо чересчур сильно и некорректно сглаживают (вместо срезания сильного выброса - плавно его обводят; вместо следования точно по треку там, где он идёт плавно - вносится "отсебятина" в виде участка траектории, не соответствующего действительности).


Ну по одному треку некорректно судить. Я при отработке фильтров десятки треков прогонял.

Вообще, если вас интересует только убрать отдельные пики, то проще Track Editor наверное...

Кстати, странно откуда у вас их столько. Я у себя практически не вижу таких артефактов. Очень редко бывают. Так что в основном меня интересует сглаживание "пилы" ну и подавление дрифта, конечно же.

Заменил стандартный XML парсер (очень уже он тормозной) на более быстрый. Теперь gpx файлы грузятся быстрее. Ваш файл (19380 точек) загружается за 5 сек (вместо 22сек в предыдущей версии)

https://drive.google.com/open?id=0B1SFdzGC9fHXMTQya01lTlltb1E

_________________
//Cheers, Victor
//Magellan eXplorist 310, Transystem TripMate 852, Columbus V-990, Transystem PersonalMate 860Lite, Garmin Nuvi 50


Вернуться к началу
shoppage  personalpage P  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему На страницу Пред.  1, 2, 3, 4, 5, 6, Bce  След.


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
  © Mishael 2003-2024
Наши друзья: Телеграм-канал про SEO | Рыбалка в Полтаве
Мобильный вид

[ Time : 0.115s | 33 Queries | GZIP : On ]
Reputation System ©'