1.滤波

1.1.什么是滤波

这里的卡尔曼滤波实际上和信号处理里面的滤波有很大的不同。

信号处理里面的滤波,假设一个正弦信号有很多毛刺,想要对其进行滤波滤除毛刺。信号处理里面的做法是把信号进行FFT变换到频域,然后用一个低通滤波器滤掉高频信号,然后再用IFFT变换到时域,就完成了滤波过程。如下图所示:
而状态估计中的滤波,更属于是一种状态的融合,使用卡尔曼滤波。

1.2.卡尔曼滤波的例子

一个例子:现在一个人玩荒野求生需要确定自己的位置,他手上有一个GPS传感器,定位的可信度是±2m,但是这个GPS的信号发送频率比较低。同时这个人每次走一步可以自己估计出自己这一步走了多远,并且估计的可信度是±0.1m。

假设这个人从开始走了四步,每一步估计自己走了多远的可信度是0.1m,注意这是每一步的,那么他走了四步之后估计出的自己的最终位置的置信度肯定是要比0.1m高的,因为误差在这个过程中是会传递的。假设最终对位置的这个估计是 x a x_a xa​(状态转移),置信度是0.8m(实际计算需要严格的推导,这里只是距离)。此时来了一个GPS信号定位的位置是 x b x_b xb​(观测),置信度是2m,那么这个时候就需要使用卡尔曼滤波融合这两个结果,比如最后得到的结果是 x c x_c xc​,并且融合的结果的置信度一定比之前两个的置信度都要高,假设是0.6m。整个过程如下图所示:

1.3.卡尔曼滤波方程

1.3.1.使用条件

注意普通的卡尔曼滤波的使用条件是系统是线性的,并且状态方程和观测方程的噪声都服从高斯分布。

1.3.2.五大方程

1.4.非线性的EKF

扩展卡尔曼滤波EKF本质上还是KF,他是在工作点附近对状态方程和观测方程都进行了线性化,从而得到线性KF中的A和H。

但是这样存在的一个问题是我们求的偏导都是在预测的 x k x_k xk​处的结果,并非最后真正的 x k x_k xk​,所以如果预测的结果和真值差的比较远的话,那么线性化不成立,这样EKF的效果自然也就不好了。

2.优化

优化的思想和滤波不同之处在于,滤波只是在上一个状态的基础上考虑当前状态的最佳估计,而不考虑之前的其他状态。但是优化是考虑当前状态和之间的所有状态,以及之前的所有观测,同时优化所有的状态让总的误差最小,也就是寻找在所有观测下的所有状态最大后验估计。

使用贝叶斯公式可以知道,优化的求的最大后验估计其实可以转化为求最大似然估计。原来的最大后验估计问题的描述是找到 x i x_i xi​使得 P ( x i ∣ z i ) P(x_i|z_i) P(xi​∣zi​)最大,而转成最大似然估计后问题的描述变成找到一个 x i x_i xi​使得最可能产生当前的观测值 z i z_i zi​。比如在高中物理测电阻的实验中,得到一组数据 ( I i , U i ) (I_i, U_i) (Ii​,Ui​),据此拟合一条直线得到电阻 R R R。实际上这个过程就是一个最大似然估计,就是寻找一个电阻 R R R,使得物理系统的电阻阻值为 R R R时最可能产生得到的这些数据 ( I i , U i ) (I_i, U_i) (Ii​,Ui​)。

PS:在这里我好像还是没有特别理解最大似然和最大后验的区别,如果按照上面的说法,对电阻测量的这个实验来说,最大似然估计很好解释的通,那么最大后验估计使得后验概率最大是什么意思

VINS笔记1——滤波与优化相关推荐

  1. TensorFlow 深度学习笔记 TensorFlow实现与优化深度神经网络

    TensorFlow 深度学习笔记 TensorFlow实现与优化深度神经网络 转载请注明作者:梦里风林 Github工程地址:https://github.com/ahangchen/GDLnote ...

  2. 笔记45 | 代码性能优化建议[转]

    地址 笔记45 | 代码性能优化建议[转] 目录 前言 避免创建不必要的对象 选择Static而不是Virtual 常量声明为Static Final 避免内部的Getters/Setters 使用增 ...

  3. 视觉SLAM笔记(47) 优化 PnP 的结果

    视觉SLAM笔记(47) 优化 PnP 的结果 1. 迭代优化 2. 优化边 3. 姿态估计 4. 结果对比 1. 迭代优化 尝试 RANSAC PnP 加上迭代优化的方式估计相机位姿 看看是否对 视 ...

  4. 深度学习笔记(10) 优化算法(二)

    深度学习笔记(10) 优化算法(二) 1. Adam 优化算法 2. 学习率衰减 3. 局部最优的问题 1. Adam 优化算法 Adam代表的是 Adaptive Moment Estimation ...

  5. 深度学习笔记(9) 优化算法(一)

    深度学习笔记(9) 优化算法(一) 1. Mini-batch 梯度下降 2. 指数加权平均数 3. 动量梯度下降法 4. 均方根反向传播 1. Mini-batch 梯度下降 把训练样本放大巨大的矩 ...

  6. Android高手笔记-屏幕适配 UI优化

    Android高手笔记-屏幕适配 & UI优化 屏幕与适配 由于Android碎片化严重,屏幕分辨率千奇百怪,而想要在各种分辨率的设备上显示基本一致的效果,适配成本越来越高: 屏幕适配究其根本 ...

  7. VIO回顾:从滤波和优化的视角

    http://www.5yedu.com/b64550.html 泡泡机器人翻译作品 作者:Javier Civera, DorianGálvez-López, L. Riazuelo, Juan D ...

  8. 崔岩的笔记——粒子滤波原理及应用(3)粒子滤波原理及算法流程

    崔岩的笔记--粒子滤波原理及应用(1)概率论与数理统计基础_今天也是睡觉的一天的博客-CSDN博客 崔岩的笔记--粒子滤波原理及应用(2)蒙特卡洛法与贝叶斯滤波_今天也是睡觉的一天的博客-CSDN博客 ...

  9. Android高手笔记-D8, R8编译优化

    在之前的文章Android高手笔记-包体积优化中提到过通过编译优化包体积,涉及到了ProGuard,D8,R8,其中关于ProGuard及包体积优化方案已经进行了详细介绍,那么今天我们来说说D8和R8 ...

最新文章

  1. spring boot 文件上传工具类(bug 已修改)
  2. 读书笔记:怪侠一枝梅 看后感
  3. openresty+mysql+乱码_openresty记录响应body乱码问题
  4. python concat去除重复值语句_Python数据处理从零开始----第二章(pandas)④数据合并和处理重复值...
  5. _临武县组合式桥梁伸缩缝F型伸缩缝—批发
  6. nagios监控安装及设置案例
  7. C/C++面试题总结
  8. 趋势科技企业级杀软产品俩 0day 已遭利用
  9. linux中判断语句,Linux--shel的if判断语句--05
  10. 【UnityShader】使用Cubemap/Matcap制作玻璃
  11. 常按摩七个地方永葆年轻
  12. 3D打印技术助力传感器:制造出堪比鹰眼视野的摄像头
  13. 网站备案包括哪些内容?ICP域名备案和网安备案操作细节
  14. Ubuntu 16.04升级到Ubuntu 16.10的方法:
  15. R语言绘制沈阳地铁线路图
  16. Google BERT 中文应用之《红楼梦》中对话人物提取
  17. 2013年10月高等教育考试电子商务与电子政务试题
  18. 《怪诞行为学二》启发(一)
  19. 这是一篇测试博客,主要测试新浪图床是否可用
  20. 文件默认保存位置无法使用 将不能正常使用微信,如何解决?

热门文章

  1. 冥想的重大功能——人类21在21世纪的伟大发现
  2. c语言u8代表,请问头文件里的 u8,u16 vu 等符号是什么意思?
  3. OSCHINA博文抄袭检查
  4. 看,2021年,一个普通应届生的成长之旅
  5. 漏洞深度分析|Thinkphp 多语言 RCE
  6. Google Earth Engine(GEE)提取水体
  7. 如果解决长尾数据(样本不均衡)
  8. Matlab中如何修改字体的大小?
  9. Linux下copy命令,并重命名
  10. [SSD固态硬盘技术 7] 主控核心设计