我正在尝试实现卡尔曼滤波器以便定位机器人。 我对预测步骤(不包括过程噪声)x = Fx + u
感到困惑如果x是状态估计向量:[xLocation,xVelocity],F是状态转移矩阵[[1 1],[0 1]],那么新的xLocation将等于xLocation + xVelocity +相应的组件运动矢量u。
为什么方程不是x = x + u?机器人的预测位置不应该是机器人的位置+运动吗?
答案 0 :(得分:2)
对于矩阵实际代表的内容,可能存在一些混淆。
"控制向量", u ,可能是外部应用于系统的加速度。
在这种情况下,我希望方程看起来像这样:
x location = x location + x velocity
x velocity = x velocity + u velocity
这两个方程假设每1秒应用一次更新(否则需要应用一些" delta时间"因子,并包括转换矩阵和控制向量)。
对于上述情况,矩阵和向量是:
状态向量(带有2个条目的列向量):
X <子>位置子>
X <子>速度子>
转换矩阵(2 x 2矩阵):
1 1
0 1
控制向量(具有2个条目的列向量):
0
û速度子>
This link包含卡尔曼滤波器的精彩解释和可视化。