gpt4 book ai didi

android - 位置跟踪 - 带计步器和 WIFI 的西格玛点卡尔曼滤波器

转载 作者:太空狗 更新时间:2023-10-29 12:48:35 25 4
gpt4 key购买 nike

我正在使用 Android 构建一个室内位置跟踪应用。

我已经成功地实现了计步器,它可以计算步数并将步数转换为自上次 WIFI/GPS 修复以来的变化,从而更准确地跟踪用户在建筑物内的位置。

计步器非常有用,我得到的结果非常准确,但是,当获得新的 WIFI 修复时,路径变得不准确且不稳定。

我在网上搜索并阅读了许多论文和案例研究,我发现我需要某种过滤器来平滑结果。

我已经缩小范围,我需要使用粒子滤波器或西格玛点卡尔曼滤波器(或扩展卡尔曼滤波器)

我已经阅读了很多关于这些过滤器的文章,我已经在 UDACITY.com 上观看了类(class),但我仍然无法理解。

简而言之,我的计步器输出的是新的纬度和经度,该纬度和经度基于手机标题中的步数,WIFI 位置管理器的输出也是纬度和经度。

有人可以为我提供一个简短的说明,说明我应该如何使新的 WIFI 修复平滑到我当前的计步器路径吗?

最佳答案

要使用卡尔曼滤波器(线性或扩展),您需要:

  1. 定义你的状态空间:大概这是人(经验法则:只有在实际测量时才包括加速度)。您可能可以在纬度/经度坐标中执行此操作,而不必担心非线性,因为人们不会走那么远。
  2. 定义您的测量空间:即您的传感器告诉您什么以及它们之间的关系到状态空间。
  3. 定义植物噪声模型:确定真实世界的运动特征你的目标;通常这只是一个协方差矩阵,它从统计学上描述了如何目标的运动可以在观察之间发生变化。
  4. 定义测量噪声模型:估计传感器报告的数据中的误差;同样,这是一个统计模型,通常用测量误差的协方差表示。

我的猜测是您的问题来自 (4):您没有对基于计步器的子系统和基于 GPS 固定的子系统的测量误差进行适当建模。

在您的问题上尝试使用基本的线性卡尔曼滤波器可能也是值得的;涉及的数学不那么复杂,或多或少可以用作黑匣子(一旦你定义了上面的模型);扩展方法(sigma 点 KF 或粒子滤波)通常需要更多针对特定问题领域的调整。

关于android - 位置跟踪 - 带计步器和 WIFI 的西格玛点卡尔曼滤波器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15092644/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com