卡尔曼滤波

卡尔曼滤波

更通用的,一个变量(状态)的卡尔曼滤波

就是利用历史数据(根据状态转移方法)预测新数据,并且根据当前观测的新数据值,和其不确定性,综合修正预测的数据。

干了这么

如果有两个系统对一个数据(高度,位置或者其他的)都有测量或者说是观测,但是都不准。那如何通过这两个不准的东西得到一个更准的结果。

更简单的说法:怎么去求两个数据的加权平均

如何通俗并尽可能详细地解释卡尔曼滤波? - Kent Zeng的回答 - 知乎 https://www.zhihu.com/question/23971601/answer/26254459

翻译理解

接下来按照

https://www.bzarg.com/p/how-a-kalman-filter-works-in-pictures/

一文简单翻译理解一下 这是一个多变量 运动定位系统

what is it ?

你有一个不准确但是可以观测的,连续变化的系统。此外,你还能对着干观测值进行一些科学的推论。但是也不准。通过卡尔曼滤波(合理的对不准确的推理和不准确的观测结果加权),可以得到一个更准确的当前值的结果。

what can we do with a Kalman filter

假设你有一个小机器人,这个机器人在森林里行走,需要定位。

这个小机器人有一个状态,这个状态包括了当前位置和当前速度。这个速度是某种码表里可以读出来的。此外,这个机器人还有一个GPS定位,表明了当前的位置。不管是GPS还是速度都是不太准的的。怎么得到更准确的当前位置呢?

how a Kalman filter sees your problem

我们有两个连续变化的数据(假设都服从高斯分布),位置和速度,虽然这些都不准,方差衡量了不同变量各自的不确定性,协方差衡量了他们之间的关系。

Describe the problem with martics

我们可以得到,当前状态的(速度和位置)的均值,然后和这两个变量之间的斜方差矩阵

下一步,我们可以通过p = p + vt 得到下一次的位置,速度预测。这步就是科学推倒得到的合理的预测。同时更新均值和其斜方差。

此外,考虑再复杂一些,我们加入外力(加速度)和不确定性。

最终影响下一次状态的均值的是,当前状态以及外力,影响下一次斜方差的是当前斜方差,不确定噪音。

Refining the estimate with measures

我们可以通过直接读数,得到一个位置速度分布的概率。我们还可以通过科学推倒得到一个速度位置分布的概率。那将这两个概率相乘归一化,就是更准的概率了。

putting it all together

新的位置等于 根据老位置预测出来的新位置,以及新位置读数的加权。加权值由推倒公式,读数概率等原始数据共同决定。

信号去噪之卡尔曼滤波_卡尔曼滤波 去噪-CSDN博客

卡尔曼滤波去噪python_mob64ca12f7e7cf的技术博客_51CTO博客

【译】图解卡尔曼滤波(Kalman Filter)-腾讯云开发者社区-腾讯云