1

我的移动网络应用程序利用navigator.geolocation.watchPosition跟踪历史步行旅行的多段线和航点。 (客户需求非原生应用程序)平滑地理位置的噪音

我的第一次测试是在恶劣天气下完成的,并且在实时嵌入谷歌地图上绘制多段线时似乎产生了合理的结果。然而,走路时产生了更多的曲折曲折线。

一些研究表明,我需要筛选检索的位置,而不是只计算两点的距离。

建议的滤波器,卡尔曼滤波器,似乎是我头上的东西,我想知道是否有可用的JavaScript的开源实现,这可以帮助我的用例。

可以使用emscripten编译为JavaScript的卡尔曼滤波器的开源C/C++实现可能也有帮助。

+0

你试过搜索吗? [这是“khalman过滤器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

感谢您的加入。我以前遇到过简单的卡尔曼滤波器,并计划在JavaScript中实现Java类。我已经完成了我们可以沟通一个测试用例来验证我的实现吗?由于要求只使用HTML5 API,因此,只要基于我已完成的测试将所有代码组合在一起,我将立即编辑原始问题。 – bardu

+0

对于测试用例,您可以做的一件事就是使用您的应用程序来存储真实数据(包括位置和“准确度”数字),然后通过您的实现针对'Q'参数的不同值运行该数据。你应该看到'Q'控制平滑的程度。 – Stochastically