前言

写这篇文章是因为自己经过一段时间初步学完了卡尔曼滤波,把自己的一些理解记录下来,针对新手学习,把自己的曾经的困扰以及后来如何理解记录下来,希望能对你有一些启示。文中都用大白话阐述,能够便于理解,就是纯心得记录。因为本人也是小白一枚,如果文章中有出现错误的地方,希望大佬斧正。
**

卡尔曼滤波解决了什么问题?

**
卡尔曼滤波器是一种线性的滤波器,所以在算法中都强制假设变量间都是线性关系,那有人要问了?那要解决非线性问题怎么办?那就要用到扩展卡尔曼滤波,这是卡尔曼滤波器的扩展版,解决了非线性的问题。
卡尔曼滤波适用于存在不确定因素的动态系统里找到系统的最优状态解。并且卡尔曼滤波的好处还有很多,只要在时域里实现,不需要转换到频域等等。

  • 不确定因素如何理解:我们生活的世界,存在着各种不确定因素,再精确的测量仪器也会有误差。卡尔曼滤波器中强调的不确定因素主要包括两个部分:1,测量仪器对系统状态测量时存在的误差(观察噪声)
    2,系统本身由外接的干扰存在的误差(过程噪声)
  • 系统的状态如何理解:系统的温度、速度、位置等等都是系统的状态,又他们组成的矩阵称为状态矩阵。
  • 最优状态如何理解:对于系统的各个状态的最优估计,也就是最接近真实值的一个估计值。
    什么样的问题可以用卡尔曼滤波处理?
    1,汽车行驶状态
    2,图像识别、目标预测
    3,金融学
    等等

卡尔曼滤波的五个公式

卡尔曼滤波原理+matlab实现
左边为先验,右边为后验以及更新。

卡尔曼滤波算法中的五大公式的变量介绍

看上面的五个公式,逐一解释其中的变量代表的意义以及公式的由来。

卡尔曼滤波原理+matlab实现
第一个公式:
Xt^_:X代表的是系统的状态矩阵,t代表某个时刻, ^代表(hot)估计,表示这是X的估计值,表示这是X的先验值。(后面有同样的表示也代表同样的意思,就不再赘述了)
F:状态转移矩阵,有什么用呢,用来控制系统的状态的个数,可以这么理解,就是让FXt-1^等于系统的状态。
B:控制矩阵,作用和状态转移矩阵类似。
ut-1:上一时刻的系统的控制量,也就是系统内部产生的控制量。
公式的推导:由系统的状态变量结合系统环境写出计算公式,将计算公式转换成矩阵的形式,就是这个公式的推导过程。
例子:以一个小车的运动为例:小车在某地假设存在两个状态变量:位置s和速度v,那么由高中物理公式有S = V0
t+1/2at²,还有Vt = V0+at。其中在每一个时刻的V0即相当于上一时刻的速度即Vt-1。则此时的方程就应该为[St; Vt] = [1 t; 0 1][St-1; Vt-1] + [1/2*t² ; t]*ut-1
卡尔曼滤波原理+matlab实现
第二个公式:
Pt
:误差的协方差矩阵,用来传递估计系统状态时(第一个公式)产生的的误差的传递的
Q:误差的协方差矩阵,就是Wt-1的期望值,这个W就是最开始说的不确定因素里的过程噪声。
公式推导:这个公式记住就可以。
卡尔曼滤波原理+matlab实现
第三个公式:
Kt:卡尔曼系数,也叫卡尔曼增益。
H:观察矩阵的控制矩阵,用来控制观察值的。观察值是什么?就是我们用一些测量工具对系统状态变量的测量值。也就是,对于一个状态变量,我们有两种获得方式,1是系统估计出来的,也就是1做的,2就是这个测量仪器测量出来的,这两者都有误差,卡尔曼增益的作用就是让我们在这两个结果中,更加相信哪个结果,然后得到一个相对更接近真实值的结果,也就是有点类似权重的意思。
R:观察协方差矩阵,也就是有最开始将的测量误v求期望得到的。说是一个矩阵,但通常是一个常数。因为仪器测量存在误差,那每次测量的误差值基本上都是不变的,所以矩阵里的值也都是一个常数值。
公式推导:卡尔曼增益公式的推导比较复杂,由上一个公司逐步推导出来,选择合适的K,使得Pt_的迹最小(即方差最小),然后一步步推导出来,期间用了大量的数学知识,线性代数基础。这里不做介绍,有兴趣的可以查看网上资料。
卡尔曼滤波原理+matlab实现
第四个公式:
Zt:观察矩阵。Zt = H*Xt +vt
用于更新数据,给出系统状态变量的最优估计值。
卡尔曼滤波原理+matlab实现
第五个公式:
I:单位矩阵
更新Pt值,然后再从第一个公式开始迭代循环,直到求出最优解。
这五个公式是卡尔曼滤波的最重要的五个公式,同时也是卡尔曼滤波的五个步骤,将五个步骤头尾相连,迭代循环,就完成了一个最简单的卡尔曼滤波器。

学习卡尔曼滤波中应该知道的数学知识

1.协方差矩阵
协方差矩阵是什么?协方差矩阵-百度百科
看完还是不知道协方差矩阵是什么?简单的说,协方差矩阵就是一个由方差和协方差组成的矩阵。方差在主对角线上,协方差在对应的其他位置。协方差矩阵能充分的体现变量间的关系。举个例子:
未完待续。。。。。。

相关文章:

  • 2021-10-07
  • 2021-05-25
  • 2021-08-19
  • 2021-11-30
  • 2021-04-18
猜你喜欢
  • 2021-11-19
  • 2021-06-13
  • 2021-06-12
  • 2021-12-28
  • 2021-08-10
  • 2021-06-11
  • 2021-11-28
相关资源
相似解决方案