1

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

Мои первые испытания были проведены в автомобиле из-за плохой погоды и, как представляется, дали разумные результаты при построении полилинии на встроенной карте Google в режиме реального времени. Однако при ходьбе он произвел более зигзагообразную линию.

Некоторые исследования показали, что мне нужно отфильтровать полученное местоположение, а не просто вычислять расстояние между двумя точками.

Предлагаемый фильтр, фильтр Калмана, кажется, что-то над моей головой, и мне интересно, существует ли версия JavaScript с открытым исходным кодом для JavaScript, которая может помочь моему варианту использования.

Использование C/C++ с открытым исходным кодом для фильтра Kalman, которое может быть скомпилировано в JavaScript с использованием emscripten, также может помочь.

+0

Вы попробовали? [Это был четвертый результат для «hhalman filter javascript»] (https://github.com/itamarwe/kalman), [это был шестой] (http://www.codeproject.com/Articles/326657/KalmanDemo) , – geocodezip

+0

@geocodezip Я сделал, но, очевидно, пропустил вашу первую ссылку, спасибо в любом случае. – bardu

ответ

1

Я разместил простой фильтр Калмана, который может быть использован для данных геолокации в ответ на этот вопрос: Smooth GPS data. Он был разработан для Android, где показания местоположения GPS сопровождаются одним номером ошибки, который называется accuracy, который измеряется в метрах. Это означает, что для каждого считывания местоположения GPS, с вероятностью 67%, истинное местоположение находится внутри круга с центром в указанном месте, а радиус круга задается номером accuracy. Если ваша ситуация другая, потребуется немного работы, и если да, то я предлагаю вам отредактировать вопрос, чтобы более подробно рассказать, какие данные у вас есть для фильтра Калмана.

+0

Спасибо, что присоединились. Я наткнулся на ваш простой фильтр Калмана и планирую реализовать свой Java-класс в JavaScript. Я сделал это, можем ли мы сообщить о тестовом примере для проверки моей реализации? Поскольку требование состоит в том, чтобы использовать только API HTML5, я собираюсь изменить свой первоначальный вопрос, как только у меня будет все части на основе тестов, которые я уже сделал. – bardu

+0

Для тестового примера вы могли бы использовать ваше приложение для хранения реальных данных (как местоположения, так и номера «точности»), а затем запускать эти данные через свою реализацию для разных значений параметра «Q». Вы должны видеть, что 'Q' контролирует степень сглаживания. – Stochastically

Смежные вопросы