【卡尔曼滤波器】1_前提基础

CAN博士学习笔记
【卡尔曼滤波器】_Kalman Filter_全网最详细数学推导

递归算法

卡尔曼滤波是一种最优化递归数字处理算法(Optimal Recursire Data Processing Algorithm)。
通常用于导航算法,处理一些不确定性的事物预测
在这里插入图片描述
递归算法的开始其实是找测量的平均值来估算真实值,通过算数推导可以发现此刻的状态( x ~ k \tilde{x}_k x~k)可以用上一时刻的状态( x ~ k − 1 ) \tilde{x}_{k-1}) x~k1))和当前测量的状态( Z k Z_k Zk)来表示。

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

数据融合思想

下面给出 K k K_k Kk公式推导,先从一个例题开始:

有两个秤用来称同一个物体,第一个称得物体重30g,它的标准差是2g,第二个称得物体重32g,它的标准差是4g,而且这两个误差都是符合正态分布(也叫高斯分布)的,也就是说,根据第一个秤测量结果我们可以的出结论,该物体的重量在28g~32g间的概率为68.4%。(28= Z 1 Z_1 Z1- σ 1 \sigma_1 σ1),根据两个秤的测量,我们得到两个正态分布曲线,通常情况下我们认为真实值就是在这两个值之间,但是如果我们用数学的方法给出一个最优估计值,我们就需要使用前面我们用到的卡尔曼增益K
计算一个K使得 σ z \sigma_z σz 最小,既方差最小,它的方差可以表现为以下式子,最后推导得出 σ z 2 = ( 1 − k ) 2 σ 1 2 + k 2 σ 2 2 {\sigma_z}^2=(1-k)^2{\sigma_1}^2+k^2{\sigma_2}^2 σz2=(1k)2σ12+k2σ22
σ z 2 {\sigma_z}^2 σz2对k求导,等于0,求其最小值,可得
k = σ 1 2 σ 1 2 + σ 2 2 = 0.2 k=\frac{\sigma_{1}^{2}}{\sigma_{1}^{2}+\sigma_{2}^{2}}=0.2 k=σ12+σ22σ12=0.2
将K、 σ 1 \sigma_1 σ1 σ 2 \sigma_2 σ2带入原式可得方差和标准差

在这里插入图片描述

协方差矩阵

协方差矩阵是方差和协方差在一个矩阵中表现出来,表示变量间的联动关系,用一个例子来说明,下面的 P P P就是协方差矩阵。
后面为了编程我们会用到一个过渡矩阵 a a a,我们看后半部分是一个1矩阵(注意不是单位矩阵)乘以它本身,计算我们就发现, a a a矩阵就是前面矩阵减去它的平均值,而 P = 1 3 a T a P=\frac{1}{3}a^Ta P=31aTa

在这里插入图片描述

状态空间方程

用向量的形式表达,既状态空间方程

在这里插入图片描述
当我们拥有一个不太准的计算结果和一个不太准的测量结果,来获得一个误差比它俩相对小的结果。卡尔曼滤波就是解决此类问题的
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值