首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >室内定位系统的卡尔曼滤波算法

室内定位系统的卡尔曼滤波算法
EN

Stack Overflow用户
提问于 2017-03-03 18:52:03
回答 3查看 3.1K关注 0票数 0

我正在使用BLE (蓝牙低能量)通过其RSSI和三边定位算法进行室内定位系统。

问题是如何使用RSSI找到准确的距离。

由于某些干扰,每次信标都会给出不同的RSSI值。

我读到卡尔曼滤波器可以在某种程度上解决这个问题,但是我如何使用卡尔曼滤波器呢?

据我所知,有两个函数。一个是预测,另一个是校正。但是我应该从哪里开始呢?

EN

回答 3

Stack Overflow用户

发布于 2017-03-03 19:45:09

卡尔曼滤波器不适合您的问题。

问题

  1. 你把噪音描述为“一些干扰”。你需要事先知道噪声的分布。
  2. 遮挡(人类位于移动设备和BLE信标之间)造成的误差会使滤波误差非常大。实际上,您需要研究许多解决方法来规避non-linearity)

非线性

  • BLE的指示器与移动设备的实际位置不是线性函数(同样,non-linearity)

回答

  1. 您需要了解贝叶斯建模的概述,在您的案例中,您需要研究"Unscented卡尔曼滤波器“、”扩展卡尔曼滤波器“(对非线性的扩展)或”粒子滤波器“(例如,非线性滤波器,与噪声分布无关)。在这里可以找到关于本地化的简短概述(在机器人的上下文中):http://robots.stanford.edu/papers/thrun.probrob.pdf,更详细的可以在这里找到:http://www.probabilistic-robotics.org/
  2. Since我假设您已经预先了解了房间和信标位置,一个更直接的方法可能是调查BLE fingerprinting技术。该链接还包含其他室内定位技术的进一步文献。
票数 2
EN

Stack Overflow用户

发布于 2017-03-11 10:07:04

使用BLE很难估计出准确的距离。如果你使用许多信标(每隔1米),你可以估计它,但如果信标之间的距离很大,这是困难的,因为信号的反射和吸收。您可以尝试使用指纹识别以获得更高的准确性。卡尔曼滤波器不是这种应用的正确选择,因为你没有额外的控制向量来预测。如果你是静止的,那么KF可以帮助你,但对于动态情况,你需要有控制向量来预测,你的BLE RSSI水平可以用作测量。

票数 1
EN

Stack Overflow用户

发布于 2020-04-16 18:49:49

卡尔曼滤波器只与“存在”检测相关,而不是“位置”检测,也就是说,如果位置是静态的,它可能是有用的。

预测函数将是一个简单的常量函数:RSSI(t) = RSSI(t-1)。为了进行更正,您需要设置一个任意值,表示您对度量的“信任”程度。

如果您想要研究此解决方案,此blog post可能是一个很好的起点:它提供了解释、简化的模型以及这样的卡尔曼滤波器的实现。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42576931

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档