卡尔曼滤波-α滤波器

标准卡尔曼滤波也就是系统模型是线性的,理解了标准卡尔曼滤波后,其他的也就理解了

概述

从网上看了很多很多关于卡尔曼滤波的文章,最容易理解的居然是国外的一个教程
https://www.kalmanfilter.net/default.aspx
在这里插入图片描述
英文不好的也可以切换到中文版哦!!!
当然国内也有翻译过后的版本https://zhuanlan.zhihu.com/c_1149619223558012928,这两篇文章几乎从无到有的过程给你讲述了什么是卡尔曼滤波,我下面写到的大多也是基于上述两篇文章,再加上自己的一些理解,有很多不正确的地方,还妄多多纠正。
在整个学习的过程中我们会用到很多基础线性代数,概率的知识,比如说期望、方差、正态分布、协方差、矩阵、微积分等这些基础知识你可以在B站上的3Blue1Brown上快速掌握它的核心要点即可。
参考文章:
https://blog.csdn.net/u010720661/article/details/63253509
https://www.jianshu.com/p/f6ce8943560c?from=singlemessage
http://blog.tkjelectronics.dk/2012/09/a-practical-approach-to-kalman-filter-and-how-to-implement-it/
https://mp.weixin.qq.com/s/II7xYWtgG6cQd-kP-O47mA
https://mp.weixin.qq.com/s/cr1u840FeBLalrmtJQs8TQ
https://mp.weixin.qq.com/s/__Lok-rPNz9eP7pKkR2nvQ
https://mp.weixin.qq.com/s?__biz=MzUxMDY4NTgxMQ==&mid=2247483772&idx=1&sn=50f8a0c5606810a2e9f94075375cb013&chksm=f97e6660ce09ef768621801b2ac6e6f135b4e5d9d9024de458f5250c71239c440ea4b6e960a7&scene=21#wechat_redirect
https://wenku.baidu.com/view/3c42b7733186bceb18e8bb29.html#
https://www.e-learn.cn/topic/996361
https://www.cnblogs.com/rouwawa/p/11643850.html

α滤波器

问题模型

假设我们有这么一个系统模型,我们制造了一枚导弹,这个导弹做50m/s的匀速直线运动,导弹上装有雷达测距仪,可以测出导弹距离出发点的位置,雷达的测量频率为0.2Hz也就是5秒测量一次当前的位置,我们观察10次也就是50秒内的数据,现在我们想知道每一时刻的导弹的真实位置。
有人说我们不是有雷达吗?但是雷达有误差并不准确,这里的误差就是测量误差。还有人说我们可以用数学公式计算,导弹不是做匀速运动吗? S=vt 不就可以了吗?
但是导弹在空气中会受到各种环境的影响,气流、温度等都会让这个系统动力模型产生误差,这里的误差就是过程噪声。
为了解决上述问题,我们引入了α滤波器

状态更新方程

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

状态预测方程

我们引入两个状态方程:
在这里插入图片描述
这两个方程称为状态外推方程(State Extrapolation Equation)也可以叫做(State Transition Equation/ State Prediction Equation),这名字太装逼了,以后都叫他状态预测方程,说白了就是根据过去的值推算未来的值也就是预测的意思了,不同的系统方程当然不一样,和我们实际设计的动力系统模型相关。
根据状态预测方程,下一时刻的位置等于当前时刻的位置加上速度乘以间隔时间,在这个模型中速度是恒定的,所以下一时刻的速度等于当前时刻的速度。

估计算法

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

开始滤波

在这里插入图片描述
第一步:伪造数据
我们先伪造一下雷达的数据,在没有真实雷达的情况下如何伪造数据呢?我可以通过真实值+高斯噪声来模拟雷达的数据,我们可以用python来实现。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

总结

从α滤波器中我们总结一下:
在这里插入图片描述
我们引入了卡尔曼滤波五个方程中的两个:状态更新方程和状态预测方程,在状态更新方程中有一个滤波系数,这个系数其实就是后面的卡尔曼增益K_n,只不过我们这里的系数是静态的而已

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值