signed

QiShunwang

“诚信为本、客户至上”

卡尔曼滤波初识

2021/6/3 13:34:09   来源:

最近偶然接触到了卡尔曼滤波这个概念,先来简单地学习它的基本理念吧~卡尔曼滤波用于预测,既能包含数据的时序信息,也可以结合当前时刻的观测信息。

卡尔曼递推算法根据前一个时刻状态的估计值和当前时刻的观测数据,递推估计当前时刻的状态值。

卡尔曼滤波是采用递推的算法实现的,其基本思想是先不考虑过程噪声ωk和观测噪声vk的影响,得到状态变量和输出信号(观测数据)的估计值,再用输出信号的估计误差加权后校正状态变量的估计值,使状态变量估计误差的均方值最小。因此,卡尔曼滤波的关键是计算出加权矩阵的最佳值。

主要涉及两个方程:
状态方程:
(得到状态值的预测值,状态值也就是我们的目标值,他是不能直接观测得到的。)
在这里插入图片描述
量测方程:
在这里插入图片描述

为量测值,量测方程的含义是通过上一步状态方程的预测值结果得到对应的量测值。

量测方程误差:
在这里插入图片描述
量测值是可以测量得到的,通过将上上式得到的量测值与可测量的真实值( )比较,可以得到量测方程的误差。为了提高状态估计的质量,用输出信号(量测值)的估计误差来校正不可观测的状态变量 的误差。
卡尔曼滤波就是通过合理地为预测值和量测值赋予权重,来使得预测更加准确。其中量测方程中的权重体现在基于 的误差对状态方程预测值的更新修正中。

校正后的状态变量:
在这里插入图片描述
其中, 为增益矩阵,也就是加权系数。

卡尔曼滤波就是要找到这样一个 使得得出的估计值与真实值的均方误差最小。基于状态方程会得到一个理论预测值,基于观测方程会得到一个实际观测值,将两个值与优化后的估计值做比较,得到各自的误差,误差大的赋予更小的权重,依据这个思想进行下一步的预测和修正。每次预测都会基于上一步的结果,重新调整增益矩阵。

对卡尔曼滤波的初步认识就是这样啦,后面有新的理解就再补充~不过卡尔曼滤波的状态方程只是基于上一步的信息,并且处理的是不可直接测量的估计,是有一个自己的适用范围,但是这种思想我觉得可以拓展至很多场景,比如可以用多步预测得到目标的状态预测值,对于可直接测量的量也可以使用这种思想优化它的估计过程。哈哈哈也不知道这样想对不对><