kalman滤波(二)---扩展kalman滤波[EKF]的推导
一.状态估计的解释

我们知道每个方程都受噪声的影响,这里把位姿x和路标y看成服从某种概率分布的随机变量。因此我们关心的问题就变成了:当我们已知某些运动数据u和观测数据z时,如何确定状态量x,y的分布?比较常见且合理的情况下,我们假设状态量和噪声项服从高斯分布---这意味着在程序中只需存储它们的均值和协方差即可。均值可看作是对变量最优值的估计,而协方差矩阵度量了它的不确定性。如果认为k时刻状态只与k-1时刻状态有关,而与再之前无关,我们就会得到以卡尔曼滤波(EKF)为代表的滤波器方法,在滤波方法综合那个,我们会将某时刻的状态估计,推导到下一时刻;另一种方法考虑k时刻状态与之前所有状态的关系,将得到以非线性优化为主体的优化框架。目前SLAM的主流是非线性优化方法。
二.EKF
[1] 卡尔曼滤波 -- 从推导到应用(一)
卡尔曼滤波 -- 从应用(一) 到 (二)
|
高斯分布,又称为正态分布: ![]()
|
|
样本方差的无偏估计可以通过以下方式获得(μ为期望,即均值):
方差只能用来解释数据在与特征空间轴线平行的方向上的传播。图2所示的2d特征空间: 协方差: 协方差矩阵: 二维正态分布数据完全由均值和2×2协方差矩阵来解释。类似地,一个3×3的协方差矩阵用于捕捉三维数据的传播,而n×n次协方差矩阵捕捉n维数据的传播。
前两个:协方差对称,最大方差方向与轴不重合,并且数据被旋转。 后两个:协方差为0,最大方差方向是轴对齐 2.特征值分解Eigendecomposition of a covariance matrix 3.Covariance matrix as a linear transformation 协方差矩阵的特征向量的最直观的解释之一是,它们是数据变化最多的方向。(更准确地说,第一特征向量是数据变化最多的方向,第二特征向量是那些正交(垂直)到第一特征向量的最大方差的方向,第三个特征向量是与前两个正交的最大方差的方向,等等)。下面是2个维度的示例[ 1 ]:
每个数据样本是一个2维点,坐标x,y。这些数据样本的协方差矩阵的特征向量是向量u和v;u,长箭头,是第一特征向量,v,短箭头,是第二个。(特征值是箭头的长度),正如你所看到的,第一个特征向量点(从数据的平均值)到数据在欧氏空间中变化最大的方向,第二特征向量是正交的(垂直的)到第一个。 在3个维度中可视化有点困难,但这里有一个尝试[ 2 ]:
在这种情况下,假设所有的数据点都位于椭球内。V1,方向的数据变化最大,是第一特征向量(λ1是相应的特征值)。V2是在那些与V1正交的方向上数据变化最大的方向。V3是那些方向与V1和V2正交的最大方差方向(虽然只有一个这样的正交方向)。 |
[2]卡尔曼滤波原理及实现---介绍的详细,适合初学者;卡尔曼增益K解释的较好
http://www.tina-vision.net/docs/memos/2003-003.pdf
|
在求解卡尔曼增益的过程中: 对两个云团进行重叠,找到重叠最亮的点(实际上我们能够把云团看做一帧图像,这帧图像上面的每一个像素具有一个灰度值,灰度值大小代表的是该事件发生在这个点的概率密度),最亮的点,从直觉上面讲,就是以上两种预测准确的最大化可能性,也就是得到了最终的结果。非常神奇的事情是,对两个高斯分布进行乘法运算,得到新的概率分布规律仍然符合高斯分布,然后就取下图当中蓝色曲线峰值对应的横坐标不就是结果了嘛。证明如下: σ2 N(x,μ,σ)=1σ2π−−√e−(x−μ)22σ2(4
如果存在两个这样的高斯分布,只不过期望和方差不同,当两个分布相乘,得到什么结果? 是不是下式成立:
注意:我这里铅笔书写的标注和上面博客中的是反的,只要按步骤推导还是容易理解的。 N(x,μ0,σ0)⋅N(x,μ1,σ1)=?N(x,μ′,σ′)(5
|
kalman滤波(二)---扩展kalman滤波[EKF]的推导的更多相关文章
- (二). 细说Kalman滤波:The Kalman Filter
本文为原创文章,转载请注明出处,http://www.cnblogs.com/ycwang16/p/5999034.html 前面介绍了Bayes滤波方法,我们接下来详细说说Kalman滤波器.虽然K ...
- 学习 opencv---(7) 线性邻域滤波专场:方框滤波,均值滤波,高斯滤波
本篇文章中,我们一起仔细探讨了OpenCV图像处理技术中比较热门的图像滤波操作.图像滤波系列文章浅墨准备花两次更新的时间来讲,此为上篇,为大家剖析了"方框滤波","均值滤 ...
- OpenCV计算机视觉学习(4)——图像平滑处理(均值滤波,高斯滤波,中值滤波,双边滤波)
如果需要处理的原图及代码,请移步小编的GitHub地址 传送门:请点击我 如果点击有误:https://github.com/LeBron-Jian/ComputerVisionPractice &q ...
- Atitit 图像处理 平滑 也称 模糊, 归一化块滤波、高斯滤波、中值滤波、双边滤波)
Atitit 图像处理 平滑 也称 模糊, 归一化块滤波.高斯滤波.中值滤波.双边滤波) 是一项简单且使用频率很高的图像处理方法 用途 去噪 去雾 各种线性滤波器对图像进行平滑处理,相关OpenC ...
- Kalman Filter、Extended Kalman Filter以及Unscented Kalman Filter介绍
模型定义 如上图所示,卡尔曼滤波(Kalman Filter)的基本模型和隐马尔可夫模型类似,不同的是隐马尔科夫模型考虑离散的状态空间,而卡尔曼滤波的状态空间以及观测空间都是连续的,并且都属于高斯分布 ...
- 【滤波】标量Kalman滤波的过程分析和证明及C实现
摘要: 标量Kalman滤波的过程分析和证明及C实现,希望能够帮助入门的小白,同时得到各位高手的指教.并不涉及其他Kalman滤波方法. 本文主要参考自<A Introduction to th ...
- 卡尔曼(Kalman)滤波及十种数据采集滤波的方法和编程实例
卡尔曼(Kalman)滤波:https://blog.csdn.net/CSDN_X_W/article/details/90289021 十种数据采集滤波的方法和编程实例:https://wenku ...
- 目标跟踪之粒子滤波---Opencv实现粒子滤波算法
目标跟踪学习笔记_2(particle filter初探1) 目标跟踪学习笔记_3(particle filter初探2) 前面2篇博客已经提到当粒子数增加时会内存报错,后面又仔细查了下程序,是代码方 ...
- 实现Sobel算子滤波、Robers算子滤波、Laplace算子滤波
前几天,老师布置了这样一个任务,读取图片并显示,反色后进行显示:进行Sobel算子滤波,然后反色,进行显示:进行Robers算子滤波,然后反色,进行显示.我最后加上了Laplace算子滤波,进行了比较 ...
随机推荐
- head命令用法总结
head命令用法总结 head命令用于显示文件的开头的内容.在默认情况下,head命令显示文件的头10行内容. 1.语法 head(选项)(参数) 2.选项 -c, --bytes=[-]K 显示每个 ...
- 【浅色】最强Win7 x64评测
[浅色]最强Win7 x64评测 [浅色]最强Win7 x86 & x64 | WINOS https://www.winos.me/archives/789.htmlESD671MB,安装后 ...
- Android中是否推荐使用枚举Enum
一.Enum的产生 Java1.5中引入了枚举的语法,包括Enum,EnumSet,EnumMap等.其中Enum就是我们在C或C++中见过的枚举类型,但是Java中的枚举又比C或C++中的枚举更成熟 ...
- [ExcelHome]15个常用的Excel函数公式,拿来即用
微软最有价值专家(MVP)祝洪忠分享15个模式化的表格公式,大家有类似问题可以直接套用. 首先声明,我这个可称不上是什么公式大全,就是给各位新人朋友们入门学习的,高手请按返回键. 1.查找重复内容 = ...
- 学习 MeteoInfo二次开发教程(二)
1.注意TSB_Select_Click等几个名称要改为toolStripButton2_Click等. 2.以下代码的位置与public Form1()函数并行. ToolStripButton _ ...
- Chapter 5 数组:为什么很多编程语言种数组都是从0开始编号?
如何实现随机访问? 线性表:数组,队列,链表,栈 非线性表:树,图 总结:数组用一块连续的内存空间,来存储相同类型的一组数据,最大的特点就是支持随机访问,但插入,删除操作也因此变得比较低效,平均情况时 ...
- WPF 重写ListBox(透明效果)
<UserControl d:DesignHeight="460" d:DesignWidth="300" x:Name="UCcontrol& ...
- ios7自定义返回按钮后,右滑返回功能失效解决方法
-(void)viewWillAppear:(BOOL)animated{ [super viewWillAppear:animated]; //开启ios右滑返回 if ([ ...
- 杰克.多西 twitter创始人 必做清单和不必做清单
必做清单 活在当下 接受脆弱(Be vulnerable) 只喝柠檬水和红酒 每天 6 组下蹲和俯卧撑 每天跑步 3 英里 每天思考本清单 站直了 打拳击沙袋 10 分钟 跟所有人打招呼 每天 7 小 ...
- ZIP压缩输入/输出流
ZIP是压缩文件的格式,使用ZIP可以节省空间 java将压缩/解压缩文件的方法都封装在java.util.zip包下,java实现了I/O数据流和网络数据流的单一接口,所以实现起来比较容易. 主要的 ...





,其中





