我对用 Python 实现卡尔曼滤波器很感兴趣。首先,我编写了一个非常简单的 K 滤波器版本——只有一个状态(Y 方向的位置)。 我的状态转换矩阵如下所示:
X <- X + v * t
其中 v 和 t 是常量。
我用一个简单的线性函数模拟测量
y = mx + b
并为其添加噪声:
y1 = np.random.normal(y, sigma, Nsamples).
它工作得很好,我可以重新定义 R 和 Q 来改变测量和过程噪声值(到目前为止,它不是矩阵)。
现在我有一个想法......
如果我进行第二次测量会怎样?
y2 = np.random.normal(y, sigma2, Nsamples)
我该怎么办?我应该像这样预过滤测量吗:
(y1 + y2) / 2
或者是否有涉及卡尔曼滤波器的更合适的方法/解决方案?
最佳答案
有多种方法可以使用卡尔曼滤波器处理多个传感器测量值的融合。一种方法是使用新测量值顺序更新卡尔曼滤波器。
请参阅传感器融合先驱 Hugh Durrant-Whyte 在 this answer 中找到的幻灯片了解如何融合传感器数据的多种方法。
关于python - 卡尔曼滤波器 - 两个相同传感器的融合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60203984/