卡尔曼滤波器的原理及应用

最近在学习Probablistic Robotics这本书,获益良多。以前学了概率论和随机过程之后一直觉得这些是虚的,不知道在工程上怎么用,而这本书恰恰就是讲如何把这些概率理论和方差估计应用到工程上去,更确切的说,应用到机器人上去。

  • 应用前提
  • 算法详细介绍
  • 应用举例
  • 下一步

1.应用前提

要应用kalman Filter,首先要有三个前提假设:

  • 当前状态的概率分布必须是上一状态和将要执行的控制量的线性函数,再叠加一个高斯噪声。表达式如下: 
     
    其中是状态变量,如果系统有多个自由度的话,它们表示状态向量。这样的话根据高斯分布 
    可以得到状态转移概率

     

    其中表示上一状态的均值,表示方差。

  • 对状态的测量必须是状态的线性函数叠加高斯噪声 

    其含义与上类似,不再赘述。

  • 初始状态分布为高斯分布

2.算法详细介绍

Kalman Filter五条黄金公式 :

这五条公式基本上就是Kalman Filter的主要内容了, 它的本质就是通过预测结合测量来估计当前系统的状态。举个lizi,假如我们要估计一架飞行器的姿态,可以通过IMU来实时测量,但是测量值有一定的风险是不准确的,所以并不能完全依赖传感器。任何一个满足物理规律的系统应当是连续的,所以我们还可以通过上一状态来预测当前状态。Kalman Filter正是结合这两条进行状态估计,到底是相信哪一个多一点,还要根据Kt来决定,我们定义Kt为卡尔曼增益,它是根据 测量和预测的协方差来计算的。

下面逐条解释:

卡尔曼滤波器学习笔记(一)相关推荐

  1. 卡尔曼滤波器学习笔记(二)

    扩展卡尔曼滤波器的原理及应用 经典的卡尔曼滤波只适用于线性且满足高斯分布的系统,但实际工程中并不是这么简单,比如飞行器在水平运动时有可能伴随着自身的自旋,此时的系统并不是线性的,这时就需要应用扩展卡尔 ...

  2. 【滤波器学习笔记】一阶RC低通滤波

    一阶RC低通滤波 从模拟到数字 本文整理自网络.<匠人手记>等书籍文章 模拟电路低通滤波时域.频域 软件低通滤波 典型电路 图1 典型RC电路 直流.交流.脉冲信号都可以用它 时域 电容电 ...

  3. 卡尔曼滤波与组合导航原理_图解卡尔曼滤波器,无需深厚的数学知识也易懂(第五部分:多维卡尔曼滤波器)...

    译者前言:因第1-4部分(基础)已经学习完毕,接下来需要学习多维卡尔曼滤波器与扩展的卡尔曼滤波器(EKF),但是1-4部分的作者对接下来要学习的内容还没有更新,因此我们将从华盛顿大学教授的教材开始学习 ...

  4. SLAM14讲学习笔记(十五)卡尔曼滤波器的直观理解

    之前在SLAM14讲学习笔记(六)后端(最难一章:卡尔曼滤波器推导.理解以及扩展)中,介绍了卡尔曼滤波器的推导. 但是感觉不太直观,因此这次用了几个简单的图,希望能一目了然卡尔曼滤波器是在干什么. 先 ...

  5. 优达学城《无人驾驶入门》学习笔记——卡尔曼滤波器实现详解

    优达学城<无人驾驶入门>的第二个项目是实现矩阵类,要求通过python编写一个用来计算矩阵的类Matrix.编写这个类并不难,涉及到的线性代数方面的知识也不多,比如矩阵的加法.减法.乘法, ...

  6. 卡尔曼滤波器1——递归算法(笔记篇 + 代码实现)

    前言 本文是观看DR_CAN老师的视频后,简单总结了一下的笔记,并根据思路写了示例代码:这里主要讲卡尔曼滤波器与递归算法. 视频地址:https://www.bilibili.com/video/BV ...

  7. 卡尔曼滤波器2——数据融合(笔记篇 + 代码实现)

    前言 本文是观看DR_CAN老师的视频后,简单总结了一下的笔记,并根据思路写了示例代码:这里主要讲使用卡尔曼滤波器进行数据融合. 视频地址:[卡尔曼滤波器]2_数学基础_数据融合_协方差矩阵_状态空间 ...

  8. OpenCV学习笔记(十二):边缘检测:Canny(),Sobel(),Laplace(),Scharr滤波器

    OpenCV学习笔记(十二):边缘检测:Canny(),Sobel(),Laplace(),Scharr滤波器 1)滤波:边缘检测的算法主要是基于图像强度的一阶和二阶导数,但导数通常对噪声很敏感,因此 ...

  9. AI学习笔记(七)图像滤波器、OpenCV算法解析

    AI学习笔记之图像滤波器.OpenCV算法解析 图像滤波器 图像噪声 噪声的产生 信噪比 高斯噪声 椒盐噪声 其他噪声 图像滤波 滤波的目的 滤波的要求 各种滤波器 均值滤波 中值滤波 最大最小值滤波 ...

最新文章

  1. python英语-我们用程序整理出了一份Python英语高频词汇表,拿走不谢!
  2. spark sql定义RDD、DataFrame与DataSet
  3. 使用自定义DelegatingHandler编写更整洁的Typed HttpClient
  4. javascript运算符_JavaScript中!=或!==运算符之间的区别
  5. CarAppFocusManager
  6. 三、gridView增删改查
  7. 中小企业如何搭建数据分析平台?
  8. tomcat 配置https 访
  9. CentOS 8 安装Tomcat
  10. odb对象关系映射系统
  11. sql数据库去重语法_SQL如何去重?
  12. splunk篇5-导出csv文件中文乱码
  13. 所见所得的OFFICE功能区编辑器(自定义界面编辑)RibbonCreator
  14. Python之freshman08 Socket
  15. 2021-2027全球与中国牛肉罐头市场现状及未来发展趋势
  16. 抱歉,Xposed真的可以为所欲为——2.改为OV机型流畅玩耍高帧率王者农药
  17. 在Windows Server 2008系统环境下无损调整分区
  18. The missing semester of your CS education--调试及性能分析
  19. 资料员培训建筑八大员培训资料员港航工程资料管理存在的问题
  20. Mozilla XUL分析

热门文章

  1. JavaScript中闭包实现的私有属性的getter()和setter()方法
  2. BZOJ 2742: [HEOI2012]Akai的数学作业
  3. SQL查询语句执行速度快,存储过程执行慢
  4. 【Treap】[BZOJ 3224]Tyvj 1728 普通平衡树
  5. [翻译]XNA外文博客文章精选之sixteen(中)
  6. 编写高性能Web应用程序的10个技巧
  7. 制作WEB在线编辑器-插入HTML标签
  8. XSSFORK:新一代XSS自动扫描测试工具(精)
  9. abap 生成流水号每天从1开始_条码软件如何制作循环流水号
  10. [网络安全自学篇] 十三.Wireshark抓包原理(ARP劫持、MAC泛洪)及数据流追踪和图像抓取(二)