Стратегии для обнаружения и удаления беспорядочных скоплений точек GPS? - PullRequest
12 голосов
/ 03 апреля 2012

Моя проблема в том, что у меня есть большой набор треков GPS от разных регистраторов GPS, используемых в автомобилях. Когда эти устройства не выключены, они регистрируют фантомные движения, даже стоя на месте:

enter image description here

Как вы можете видеть на картинке выше, около тысячи точек визуализируются в виде скопления. Теперь я хочу удалить все эти точки, чтобы красная дорожка, идущая слева, заканчивалась до начала дрожания. Мой подход заключается в том, чтобы «нарисовать» два или три круга вокруг каждой точки на трассе, проверить, сколько других точек находится в этих кругах, и проверить соотношение:

(#points / covered area) > threshold?

enter image description here

Если порог превышает определенное соотношение (фиолетовые кружки), я могу удалить все точки внутри. Итак: простой метод, но имеет огромные недостатки, например, время вычислений, удаляя «невинные» дорожки, только проходящие через круг, не обнаруживает выбросы, подобные отдельным точкам внизу рисунка).

Я ищу лучший способ обнаружить большие кучи точек , как на картинке. Он не должен удалять ложных срабатываний (возможно, 5 или 10 баллов, эти агрегаты не имеют значения для меня). Также это не должно упрощать остальную часть трассы!

Редактировать: Результат в данном примере должен выглядеть следующим образом: enter image description here

Ответы [ 3 ]

2 голосов
/ 03 апреля 2012

Подобно ответу High Performance Mark, вы можете искать пересечения линий, которые происходят в пределах короткого количества точек.При движении по дороге маршрут из последних n точек редко пересекается с самим собой, но в стационарной ситуации это происходит из-за дрожания.Единственное пересечение может быть человеком, удваивающимся или вращающимся вокруг блока, но многократные пересечения должны быть более редкими.Угол пересечения также будет более резким для случая дрожания.

2 голосов
/ 03 апреля 2012

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

Какую информацию, кроме положения во времени, сообщает ваше устройство GPS?

РЕДАКТИРОВАТЬ (после комментария ОП)

Проблема состоит в том, чтобы охарактеризовать часть журнала как «автомобиль движется», а часть журнала как «автомобиль не движется, но дрожит местоположение GPS». Я предложил один подход, Бенджамин предложил другой. Если скорость недостаточно точна, попробуйте ускорение. Попробуйте скорость изменения заголовка. Если ни один из этих простых подходов не сработает, я думаю, вам пора выложить учебники по статистике и начать выяснять автокорреляцию случайных процессов и тому подобного. В этот момент я тихо ухожу прочь ...

0 голосов
/ 19 октября 2013

Что такое интервал данных точек GPS, кажется, что это в секундах.Может быть еще один способ добавить к ранее упомянутой логике.

sum_of_distance (d0, d1, d2 .... dn)> = 80% от sum_of_distance (d0, dn)

Это значение от 0 до n может повторяться в меньших и больших порциях, так как пройденное расстояние в этом диапазоне будет небольшим.Таким образом, вы можете перебрать более 60 точек данных на начальном этапе, и в рамках этих данных переберите 10 данных за каждую итерацию.

...