Android 室内定位系统的卡尔曼滤波算法
我使用BLE(蓝牙低能量)通过其RSSI和三边测量算法进行室内定位系统 问题是如何使用RSSI找到精确的距离 每次,由于某些干扰,信标都会给出不同的RSSI值 我读到卡尔曼滤波器在某种程度上可以解决这个问题,但是我如何使用卡尔曼滤波器呢Android 室内定位系统的卡尔曼滤波算法,android,iphone,arduino,localization,kalman-filter,Android,Iphone,Arduino,Localization,Kalman Filter,我使用BLE(蓝牙低能量)通过其RSSI和三边测量算法进行室内定位系统 问题是如何使用RSSI找到精确的距离 每次,由于某些干扰,信标都会给出不同的RSSI值 我读到卡尔曼滤波器在某种程度上可以解决这个问题,但是我如何使用卡尔曼滤波器呢 就我所知,有两种功能。一个是预测,另一个是校正。但是我应该从哪里开始呢?卡尔曼滤波器不适合您的问题 问题 你把噪音描述为“某种干扰”。你需要知道 噪声分布提前 由遮挡引起的错误(人类位于 移动设备和可移动信标)将使过滤错误非常严重 大的。事实上,您需要调查许多解
就我所知,有两种功能。一个是预测,另一个是校正。但是我应该从哪里开始呢?卡尔曼滤波器不适合您的问题 问题
卡尔曼滤波器不适合您的问题 问题
使用BLE确实很难估计准确的距离。如果您使用多个信标(每1米一个),您可以对其进行估计,但如果信标之间的距离较大,则由于信号的反射和吸收,因此很难进行估计。
你可以尝试使用指纹识别来提高准确度。卡尔曼滤波器不是这个应用程序的正确选择,因为您没有额外的控制向量来预测。如果你是静止的,那么KF会有帮助,但对于动态情况,你需要有控制向量来预测,你的BLE RSSI水平可以用作测量。使用BLE很难估计准确的距离。如果您使用多个信标(每1米一个),您可以对其进行估计,但如果信标之间的距离较大,则由于信号的反射和吸收,因此很难进行估计。
你可以尝试使用指纹识别来提高准确度。卡尔曼滤波器不是这个应用程序的正确选择,因为您没有额外的控制向量来预测。如果您是静止的,那么KF可以帮助您,但对于动态情况,您需要有控制向量来预测,并且您的BLE RSSI水平可以用作测量。卡尔曼滤波器仅与“存在”检测相关,而不是与“位置”相关,即,如果位置是静止的,它可能有用 预测函数将是一个简单的常数函数:
RSSI(t)=RSSI(t-1)
。
为了进行更正,您需要设置一个任意值,表示您对度量“信任”的程度
如果您想研究此解决方案,这是一个很好的起点:它提供了解释、简化模型以及此类卡尔曼滤波器的实现。卡尔曼滤波器仅与“存在”检测相关,而不是与“位置”相关,即,如果位置是静态的,它可能很有用 预测函数将是一个简单的常数函数:
RSSI(t)=RSSI(t-1)
。
为了进行更正,您需要设置一个任意值,表示您对度量“信任”的程度
如果您想研究此解决方案,这是一个很好的起点:它提供了解释,一个简化的模型和一个这样的卡尔曼滤波器的实现。请添加一些代码以便更好地理解。先生,我有ibeacons的rssi值,我想在上面实现卡尔曼滤波器,以便在距离测量中获得一点精度。我不知道如何从卡尔曼滤波器开始,rssi是一种有限的定位系统,因为它很容易受到环境条件的影响。这是否适用于您的应用程序?广播强度是动态的,因此,它们作为信标的使用最多是非常有限的。请添加一些代码以供击球手理解。先生,我有ibeacons的rssi值,我想在其上实施卡尔曼滤波,以便在距离测量中获得一点精度。我不知道如何从卡尔曼滤波开始。
rssi
是一种有限的定位系统