深入理解卡尔曼滤波

参考博客:http://blog.csdn.net/zkl99999/article/details/46619771

参考知乎链接里肖畅的回答:https://www.zhihu.com/question/23971601/answer/46480923

首先,需要明确的一点是滤波的概念:filtering is weighting(滤波即加权),滤波的作用就是给不同的信号分量不同的权重。

一:卡尔曼滤波的用途

卡尔曼滤波是来帮助我们做测量的,如果你要测量的东西很容易测准确,没有什么随机干扰,那就不需要。但在有的时候,我们的测量因为随机干扰,无法准确得到,卡尔曼先生就给我们想了个办法,让我们在干扰为高斯分布的情况下,得到的测量均方误差最小,也就是测量值扰动最小,看起来最平滑。

二:举例理解

考虑轨道上的一个小车,无外力作用,它在时刻t的状态向量只与t-1时刻相关。那么根据t=0时刻的初值,理论上我们可以求出它任意时刻的状态。当然,实际情况不会这么美好。这个递推函数可能会受到各种不确定因素的影响(内在的外在的都算,比如刮风下雨地震,小车结构不紧密,轮子不圆等等)导致并不能精确标识小车实际的状态。我们假设每个状态分量受到的不确定因素都服从正态分布,现在仅对小车的位置进行估计。

请看下图:t=0时小车的位置服从红色的正态分布。


根据小车的这个位置,我们可以预测出t=1时刻它的位置:


分布变“胖”了,这很好理解——因为在递推的过程中又加了一层噪声,所以不确定度变大了。为了避免纯估计带来的偏差,我们在t=1时刻对小车的位置坐标进行一次雷达测量,当然雷达对小车距离的测量也会受到种种因素的影响,于是测量结果告诉我们,小车t=1时的位置服从蓝色分布:


好了,现在我们得到两个不同的结果。前面有人提过加权,Kalman老先生的牛逼之处就在于找到了相应权值,使红蓝分布合并为下图这个绿色的正态分布(啰嗦一句,这个绿色分布均值位置在红蓝均值间的比例称为Kalman增益(比如下图中近似0.8),就是各种公式里的K(t))

绿色分布不仅保证了在红蓝给定的条件下,小车位于该点的概率最大,而且,它居然还是一个正态分布!正态分布就意味着,可以把它当做初值继续往下算了!这是Kalman滤波能够迭代的关键。最后,把绿色分布当做第一张图中的红色分布对t=2时刻进行预测,算法就可以开始循环往复了。

那绿色分布是怎么得出的呢?其实可以通过多种方式推导出来。我们课上讲过的就有最大似然法、Ricatti方程法。另外,由于我只对小车位移这个一维量做了估计,因此Kalman增益是标量,通常情况下它都是一个矩阵。而且如果估计多维量,还应该引入协方差矩阵的迭代。

Kalman滤波算法的本质就是利用两个正态分布的融合仍是正态分布这一特性进行迭代而已。

另外:

1:因为高斯模型有时不适用,于是有了extended kalman filter。

2:particle filter是用于多个对象的,比如要估计两个小车的位置,他们的位置有一个联合概率模型,每一个对象就是一个particle。无论是卡尔曼滤波还是particle滤波,都是概率分布传递的过程,卡尔曼传递的是高斯分布,particle filter 传递的是高斯混合分布,每一个峰代表一个小车。


  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值