一、应用:估计小车的运动状态,以我们的底盘为例。
1. 数学模型:
![](https://i-blog.csdnimg.cn/blog_migrate/e3ee2f9e96d77512c6469109f9e71513.png)
![](https://i-blog.csdnimg.cn/blog_migrate/dc8db6cc35626e0244d8a01de9a01d67.png)
![](https://i-blog.csdnimg.cn/blog_migrate/53f871df044890ea6c32bb6095229152.png)
2. 实现效果(Code runing):
![](https://i-blog.csdnimg.cn/blog_migrate/4579bc9c0c65f03d585a54076eddc17a.png)
二、原理:流程和反馈图,参数的意义。
1. 线性模型假设
![](https://i-blog.csdnimg.cn/blog_migrate/774699b3cb98bb0d69fa59829a2200a3.png)
2. 卡尔曼滤波工作原理图:
![](https://i-blog.csdnimg.cn/blog_migrate/bd331d9d0c5de5e77b0c21152f63bef1.png)
三、推导:五条方程式的推导过程。
1. 非线性过程的卡尔曼滤波器
![](https://i-blog.csdnimg.cn/blog_migrate/5ea04f640bd6264f35fdfe7c18fb8cb5.png)
2. 线性过程的卡尔曼滤波器
总共五个方程,每个方程的推导如下:
①
![](https://i-blog.csdnimg.cn/blog_migrate/b524111beb5d01918ddd63b49423d639.png)
这个是预测模型,线性方程模型,人为建立的。
②
![](https://i-blog.csdnimg.cn/blog_migrate/6c21458e588ebe66100cffc025843f6b.png)
这个是
预测值和真实值之间误差协方差矩阵。
![](https://i-blog.csdnimg.cn/blog_migrate/9faa44c32380bd7c77a3c21dbc8bec12.png)
其中,
![](https://i-blog.csdnimg.cn/blog_migrate/3bd3044a0d653f02e0c9706814875387.png)
③
![](https://i-blog.csdnimg.cn/blog_migrate/2aacc40425bf8633ba07a1ba46705722.png)
估计值方程。根据反馈思想构造的一个表达式。这一方程也可利用最大似然的思想推导得到。
如果H矩阵是常数,这也是“互补滤波”的表达式。
![](https://i-blog.csdnimg.cn/blog_migrate/8a48900e2f8029cc86fbe3305f358e51.png)
④
![](https://i-blog.csdnimg.cn/blog_migrate/fb88b2d117d0fd07b018a7ac79d2854a.png)
这个是卡尔曼增益。如何求解“三”中的系数K?
既然这是“
③
”中构造函数的系数,目的是让估计值与真实值最接近,可以用均方差最小来评判。这里用到了最小二乘的思想。这也就是为什么说它 “最优化自回归数据处理算法”。
在进行下面的推导时,请注意区分哪个真实值,哪个是估计值,并且注意量测方程的表达式:
![](https://i-blog.csdnimg.cn/blog_migrate/d21a3869de9c1689c1c968672af60f20.png)
![](https://i-blog.csdnimg.cn/blog_migrate/107cd0664d450bda9d6ff79f1b727c1a.png)
![](https://i-blog.csdnimg.cn/blog_migrate/98859301fbdae836081ac13bef7c0c8e.png)
备注:
A、K与P-、H、R相关,P-跟A、P、Q相关,也就是说K跟模型系数、噪声分布、协方差都相关;而模型系数一般为已知量,协方差是迭代结果,因此K跟噪声分布的关系相当大。合理变化Q和R能让估计效果更好。
B、协方差的对角线元素为各个变量的方差。
C、以下是对矩阵转置的理解:
![](https://i-blog.csdnimg.cn/blog_migrate/2cee405d022aca630468eda77f39a4ca.png)
⑤
![](https://i-blog.csdnimg.cn/blog_migrate/a62400454ed1f04699e9eeebed29b64d.png)
这个是
估计值和真实值之间的误差协方差矩阵。
当卡尔曼增益K求出来后,即可求出这个协方差,参见“④”。
如下:
![](https://i-blog.csdnimg.cn/blog_migrate/4e3dbabea12572be9f3567bf8bc848f1.png)
为了能够运行并且不断的递推下去,我们
只需设定最初的Pk(真值与估计值的协方差)。
四、扩展内容:经验型卡尔曼滤波。
五、参考内容:
1. 卡尔曼滤波 -- 从推导到应用
2.《kalman卡尔曼滤波器中文介绍》
作者:李少海。联系方式:QQ395217658。