【问题标题】:Smoothing noise for geo locations平滑地理位置的噪声
【发布时间】:2013-12-10 00:21:21
【问题描述】:

我的移动网络应用程序利用 navigator.geolocation.watchPosition 来跟踪历史徒步旅行的折线和航点。 (客户要求的非原生应用)

由于天气恶劣,我的第一次测试是在车辆中进行的,在嵌入式 Google 地图上实时绘制折线时似乎产生了合理的结果。但是,在行走时,它会产生更多的曲折线。

一些研究表明,我需要过滤检索到的位置,而不仅仅是计算两点的距离。

建议的过滤器,卡尔曼过滤器,似乎有点出乎我的意料,我想知道是否有可用的 JavaScript 开源实现,这可能对我的用例有所帮助。

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

【问题讨论】:

标签: javascript html google-maps-api-3 geolocation kalman-filter


【解决方案1】:

我在回答这个问题时发布了一个简单的卡尔曼滤波器,可用于地理定位数据:Smooth GPS data。它是为 Android 设计的,GPS 位置读数伴随着一个名为accuracy 的误差条数字,以米为单位。这意味着对于每个 GPS 位置读数,真实位置在以指定位置为中心的圆内的概率为 67%,圆的半径由accuracy 数字给出。如果您的情况不同,则需要做一些工作,如果是这样,我建议您编辑问题以更详细地说明卡尔曼滤波器的输入。

【讨论】:

  • 感谢您的加入。我之前遇到过您的简单卡尔曼滤波器,并计划在 JavaScript 中实现您的 Java 类。我已经完成了,我们可以就测试用例进行交流以验证我的实现吗?由于要求仅使用 HTML5 API,我将根据我已经完成的测试将所有部分组合在一起后立即编辑我的原始问题。
  • 对于测试用例,您可以做的一件事是使用您的应用程序存储真实数据(位置和accuracy 数字),然后通过您的实现运行该数据以获得不同的值Q 参数。您应该看到Q 控制了平滑的程度。
猜你喜欢
  • 2016-08-17
  • 2018-12-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-22
  • 2019-04-29
相关资源
最近更新 更多