卡尔曼滤波粗略解读

1. 概述

    卡尔曼滤波(Kalman Filter, KF)是一种线性无偏估计方差最小的最优估计算法。KF本质是估计+测量同时考虑的迭代优化过程。其适用于线性高斯系统。
  卡尔曼滤波器的优势:不需要追溯很久之前的数据,只需要上一次的就可以。
状态方程:
x k = A x k − 1 + B u k + w k x_{k}=Ax_{k-1}+Bu_{k}+w_{k} xk=Axk1+Buk+wk其中, A A A为状态转移矩阵, B B B为输入状态矩阵, w k w_{k} wk为过程噪声(高斯噪声)。

测量方程:
y k = C x k + v k y_k=Cx_k+v_k yk=Cxk+vk其中, y k y_k yk为测量值, C C C为测量转换矩阵, v k v_k vk为测量噪声(传感器测量误差)。

w k w_{k} wk v k v_k vk均符合高斯分布:
ω k ∈ N ( 0 ; Q k ) v k ∈ N ( 0 ; R k ) \begin{array}{l} \omega_{k} \in N\left(0 ; Q_{k}\right) \\ v_{k} \in N\left(0 ; R_{k}\right) \end{array} ωkN(0;Qk)vkN(0;Rk)

2. 卡尔曼公式理解

    实现过程:使用上一次的最优结果预测当前的值,同时使用测量值修正当前值,得到最优结果。
步骤:

  1. 先验估计
    x ^ t − = F x ^ t − 1 + B u t − 1 + w t \hat{x}_{t}^{-}=F \hat{x}_{t-1}+B u_{t-1}+w_{t} x^t=Fx^t1+But1+wt
  2. 先验估计协方差
    P t − = cov ⁡ ( x ^ t − , x ^ t − ) = cov ⁡ ( F x ^ t − 1 + B u t − 1 + w t , F x ^ t − 1 + B u t − 1 + w t ) = F cov ⁡ ( x ^ t − 1 , x ^ t − 1 ) F T + Q = F P t − 1 F T + Q \begin{aligned} P_{t}^{-}&=\operatorname{cov}\left(\hat{x}_{t}^{-}, \hat{x}_{t^{-}}\right)\\ &=\operatorname{cov}\left(F \hat{x}_{t-1}+B u_{t-1}+w_{t}, F \hat{x}_{t-1}+B u_{t-1}+w_{t}\right) \\ &=F \operatorname{cov}\left(\hat{x}_{t-1}, \hat{x}_{t-1}\right) F^{T}+Q\\ &=F P_{t-1} F^{T}+Q \end{aligned} Pt=cov(x^t,x^t)=cov(Fx^t1+But1+wt,Fx^t1+But1+wt)=Fcov(x^t1,x^t1)FT+Q=FPt1FT+Q注:此时 u t − 1 u_{t-1} ut1相当于一个常数,故其协方差为0
  3. 测量方程
    z t = H x t + v z_{t}=H x_{t}+v zt=Hxt+v
  4. 修正估计(最终结果)
    x ^ t = x ^ t − + K t ( z t − H x ^ t − ) \hat{x}_{t}=\widehat{x}_{t}^{-}+K_{t}\left(z_{t}-H \hat{x}_{t}^{-}\right) x^t=x t+Kt(ztHx^t)
  5. 更新卡尔曼增益
    K t = P t − H T H P t − H T + R K_{t}=\frac{P_{t}^{-} H^{T}}{H P_{t}^{-} H^{T}+R} Kt=HPtHT+RPtHT
  6. 更新后验估计协方差
    P t = ( I − K t H ) P t − P_{t}=\left(I-K_{t} H\right) P_{t}^{-} Pt=(IKtH)Pt
    调节Q与R的取值:
    由1和5可得,在H取1时,有:
    K t = P t − 1 + Q P t − 1 + Q + R K_{t}=\frac{P_{t-1}+Q}{P_{t-1}+Q+R} Kt=Pt1+Q+RPt1+Q则代入4,可得根据调节Q和R即可调整权重使得结果更好。
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值