今天写了个卡尔曼滤波的小程序,希望对有需要的同学有点帮助。
卡尔曼滤波是一个很常用的滤波算法,与维纳滤波相比有很多长处。这里我们把Kalman Filter简称为KF。KF的基本思想是:采用信号、噪声、状态空间模型,利用前一时刻的状态最优估计值及其误差方差估计和现时刻的量测值来更新对状态变量的估计,求出现在时刻的最优估计值。
说白点就是对现在时刻的估计(可能是同时估计好几个变量)是取决于前一时刻估计误差和现在时刻的某个观测值。通过不断的预测和实测来修正自己的估计值,最后达到一个理想的平稳状态。
卡尔曼滤波的具体原理和推导过程,有点复杂。某些细节我也没弄明白,不过这并不影响我们写程序和使用它。如果你看了我写的这个小分享,表明你对卡尔曼滤波有一定的了解了,否则你也不会看这种玩意。如果真的不了解,那可以查找下相关资料。
卡尔曼滤波的5大公式: