扩展卡尔曼滤波_SLAM从0到1——9. 推导思路:卡尔曼滤波与扩展卡尔曼滤波

5c052864dfdb25076df1344c81669a0f.png

本文介绍了SLAM后端部分的卡尔曼滤波器与扩展卡尔曼滤波器的推导思路(个人总结,若有不规范请勿采纳)

之前介绍过SLAM状态估计问题的优化求解方法。除了优化方法,对于状态估计问题还有一类经典“古老”的方法,那就是卡尔曼滤波方法。关于卡尔曼滤波的介绍有很多,在这里给出笔者自己对推导过程的理解和整理。

在SLAM中,如果我们不像视觉里程计一样只考虑相邻两帧(或相邻几帧)的运动估计,而是考虑较长时间内的运动估计,那么对这些多个时刻(大量)数据的处理思路可以分为两类:

  1. k时刻的状态和前面1到k-1个时刻的状态都有关,利用前面所有状态对k时刻的状态进行估计。这种处理方式是非线性优化方法。
  2. k时刻的状态只和k-1时刻的状态有关,即假设运动具有马尔可夫性,并且是一阶马尔可夫性。这类方法称为滤波器方法(卡尔曼滤波器)。

1.线性系统与卡尔曼滤波

考虑复杂的非线性系统之前,先看一下如何对线性系统进行状态估计。假设噪声信号服从最简单的高斯分布:

运动方程:

观测方程:

现在假设我们已经有了k-1时刻的状态估计和协方差,根据k时刻的运动输入和观测数据,来获得k时刻的状态估计(后验分布)

根据贝叶斯法则, 后验 -> 似然 * 先验。

>>>所以卡尔曼滤波思路可以概括为:计算求得满足马尔可夫性的先验分布和似然概率,相乘求得后验分布(状态估计)<<<

通过运动方程确定

的先验分布:

根据观测方程计算k时刻的似然(观测数据分布):

。这一步通过技巧简化计算后,可以直接计算
卡尔曼增益K。

计算后验概率(似然和先验的乘积)。根据计算技巧,转换为直接计算后验的状态估计

和协方差矩阵

2.非线性系统与扩展卡尔曼滤波

有了上面线性系统的推导和结论,把卡尔曼滤波器推广至非线性系统就称为扩展卡尔曼滤波EKF。

由于直接对非线性系统进行求解非常复杂,所以我们对该非线性系统在

处进一阶泰勒展开,运动方程与观测方程相比于线性系统会多出来一项,但是后面求解思路和过程都是一样的,
求后验概率转换为求似然和先验的乘积。

通过运动方程确定

的先验分布:

根据观测方程计算k时刻的似然(观测数据分布):

。这一步通过技巧简化计算后,可以直接计算
卡尔曼增益

计算后验概率(似然和先验的乘积)。根据计算技巧,转换为直接计算后验的状态估计

和协方差矩阵

3.总结

卡尔曼滤波器给出了线性化后状态变量分布的变化过程,在SLAM中给出了非线性系统在一阶线性近似后的最大后验估计(就是那个我们一直在求解的)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
【资源说明】 基于迭代误差状态卡尔曼滤波(IESKF)的Livox-IMU车载SLAM系统C++源码.zip 基于迭代误差状态卡尔曼滤波(IESKF)的Livox-IMU车载SLAM系统C++源码.zip 基于迭代误差状态卡尔曼滤波(IESKF)的Livox-IMU车载SLAM系统C++源码.zip 基于迭代误差状态卡尔曼滤波(IESKF)的Livox-IMU车载SLAM系统C++源码.zip 基于迭代误差状态卡尔曼滤波(IESKF)的Livox-IMU车载SLAM系统C++源码.zip基于迭代误差状态卡尔曼滤波(IESKF)的Livox-IMU车载SLAM系统C++源码.zip基于迭代误差状态卡尔曼滤波(IESKF)的Livox-IMU车载SLAM系统C++源码.zip基于迭代误差状态卡尔曼滤波(IESKF)的Livox-IMU车载SLAM系统C++源码.zip基于迭代误差状态卡尔曼滤波(IESKF)的Livox-IMU车载SLAM系统C++源码.zip基于迭代误差状态卡尔曼滤波(IESKF)的Livox-IMU车载SLAM系统C++源码.zip基于迭代误差状态卡尔曼滤波(IESKF)的Livox-IMU车载SLAM系统C++源码.zip 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载使用,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可直接用于毕设、课设、作业等。 欢迎下载,沟通交流,互相学习,共同进步!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值