Kalman滤波器的设计可以分为三步:
Step1:计算卡尔曼增益(Kalman Gain)
为k-1时刻的估计误差,为k时刻的测量误差。
Step2:计算k时刻的状态变量估计值
为k时刻测量值。
Step3:更新k时刻的估计误差
具体原理及详细推导:
首先给出状态空间方程(离散形式)
其中为过程噪声,为测量噪声,且满足正态分布
Q、R为协方差矩阵且
补充:
假设
,
则
和分别表示方差和,和分别表示协方差和。
所以协方差矩阵。
建模过程中和未知,无法准确得到和,为方便表示将上述状态方程去掉噪声直接计算出来的状态变量定义为先验估计值,即
另一方面由于测量结果已知,所以这里可以得到测量相关的估计值
注:不管是上述计算得到的状态变量(先验估计值)还是测量相关的状态变量(测量估计值)都不准确。
因此为了得到一个相对准确的状态变量估计结果(后验估计值),可以使用数据融合(Data Fusion)的方法通过先验估计值和测量估计值对其进行表示
其中。
目标:寻找卡尔曼增益使得
引入误差和先验误差
且满足
所以误差协方差
其中和相互独立,因此。
同样可以求得先验误差协方差
其中和相互独立,因此。
以二维状态变量为例
所以要使误差(协方差P)最小,只需保证协方差矩阵的迹最小。
总结
预测环节
(1)计算先验估计值
(2)计算先验误差协方差
校正环节
(1)计算卡尔曼增益
(2)计算状态(后验)估计值
(3)更新误差协方差