欢迎回来。在模块二中,我们将学习最著名的算法之一 在所有工程中;卡尔曼滤波器。

在当今先进的机器学习世界中, 卡尔曼滤波器仍然是一个重要的工具 融合来自多个传感器的测量结果

实时估计状态 机器人系统,例如自动驾驶汽车。

在这个模块中,我们将学习一些历史 卡尔曼滤波器并介绍其基本线性公式。

我们将介绍为什么卡尔曼滤波器是 最好的线性无偏估计,然后 通过线性化将线性公式扩展到非线性系统。

讨论这种线性化方法的局限性,最后, 提出一种现代的替代方案 通过无味变换线性化。

在本课结束时,您将能够将通用过滤器描述为 分两个阶段工作的状态估计器;预测和修正。

了解运动模型和测量模型的区别, 然后使用卡尔曼滤波器公式 在一个简单的一维定位示例中。

让我们从一点历史开始。 卡尔曼滤波器算法由鲁道夫 E.卡尔曼于 1960 年发表, 匈牙利出生的教授和工程师 在高等研究院工作 在马里兰州巴尔的摩。

多年后的 2009 年, 美国总统奥巴马授予卡尔曼 因其在以下方面的工作而获得享有盛誉的国家科学奖章 卡尔曼滤波器和 控制工程领域的其他贡献。

1960 年出版后, 卡尔曼滤波器被采用 NASA 用于阿波罗制导计算机。 正是这项突破性的创新在 成功将阿波罗飞船送上月球, 以及我们迈向另一个世界的第一步。

过滤器帮助指导 阿波罗航天器准确地通过其绕月轨道。

美国宇航局艾姆斯研究中心的工程师们, 采用卡尔曼线性理论并将其扩展到非线性模型。

我们将在即将到来的模块中查看这个特定的扩展。

但首先,让我们谈谈基本的线性卡尔曼滤波器。

卡尔曼滤波器与线性滤波器非常相似 我们之前讨论过的递归最小二乘滤波器。

虽然递归最小二乘更新静态参数的估计, 但卡尔曼滤波器能够更新和估计不断发展的状态。

卡尔曼滤波器的目标是取 这种状态的概率估计和 分两步实时更新;预测和修正。

为了使这些想法更加具体, 让我们考虑一个估计车辆一维位置的问题。

从 k 减 1 时刻的初始概率估计开始, 我们的目标是使用一个运动模型,它可以从 车轮里程计或惯性传感器测量来预测我们的新状态。

然后,我们将使用从 GPS 导出的观测模型,例如, 纠正当时车辆位置的预测 克。

这些组成部分中的每一个,初始估计,预测状态和最终修正状态都是 我们将通过它们的均值和协方差来指定随机变量。

这样,我们就可以把卡尔曼滤波器看作是一种融合的技术 来自不同传感器的信息以产生 一些未知状态的最终估计, 考虑到运动和我们测量中的不确定性。

对于卡尔曼滤波算法, 我们已经能够以下列方式编写运动模型;

在时间步 k 的估计是 时间步 k 减 1 估计的线性组合, 一个控制输入和一些零均值噪声。

输入是一个外部信号 影响我们系统状态的演变。

在自动驾驶汽车的背景下, 这可能是施加到的车轮扭矩 例如,加速和改变车道。

接下来,我们还需要定义一个线性测量模型。

最后,我们需要一个像以前一样的测量噪声 控制我们有多确定的过程噪音 我们的线性动力系统实际上是正确的, 或者等价地,有多不确定 我们是关于我们的控制输入的效果。

一旦我们掌握了我们的系统, 我们可以使用与我们非常相似的方法 在递归最小二乘视频中讨论过。

除了这一次,我们将分两步完成。

首先,我们使用过程模型来预测我们的状态,记住, 我们现在通常谈论的是不断发展的状态和 自上一个时间步以来演化的非状态参数, 并将传播我们的不确定性。

其次,我们将使用我们的测量来纠正该预测 基于我们的测量残差或创新以及我们的最佳收益。

最后,我们将使用增益来传播 从我们的预测到我们校正估计的状态协方差。

在我们的符号中,帽子 表示在特定时间步长的校正预测。

而支票表明 合并测量之前的预测。 如果您以前使用过卡尔曼滤波器, 你可能也看过这个用加号和减号写的 分别为校正量和预测量的符号。

让我们回顾一下。我们从概率密度开始我们的状态,也可能是时间步 k 减 1 的参数, 我们将其表示为多元高斯。

然后,我们使用以下方法预测时间步骤 k 的状态 我们的线性预测模型和 传播均值和不确定性; 协方差,及时向前。

最后,使用我们的概率测量模型, 我们通过最佳方式更正我们的初始预测 将来自我们测量的信息与 通过我们的最佳增益矩阵 k 的先验预测。

我们的最终结果是当时我们各州的更新概率估计 步骤 k。

最好的方法适应卡尔曼滤波器就是使用它。

让我们看一个简单的例子。 再次考虑以下情况 自动驾驶汽车估计自己的位置。

我们的状态向量将包括 车辆位置及其一阶导数速度。

我们的输入将是一个标量加速度,可能来自 一个控制系统,命令我们的汽车向前或向后加速。

对于我们的测量,我们假设我们能够确定 使用 GPS 接收器之类的东西直接确定车辆位置。

最后,我们将噪声方差定义为 如下:鉴于这个初步估计和我们的数据, 我们执行后我们校正的位置估计是多少 一个预测步骤和一个使用卡尔曼滤波器的校正步骤? 这是我们如何使用这些定义来解决 我们修正后的位置和速度估计。

请注意以下事实 我们最终校正的状态协方差较小。

那是我们更确定 结合位置测量后汽车的位置。

这种不确定性降低发生 因为我们的测量模型相当准确。

也就是说,测量噪声方差非常小。

尝试增加测量方差和 观察最终状态估计会发生什么。

总而言之,卡尔曼滤波器类似于递归平方, 而且还添加了一个运动模型,用于定义我们的状态如何随时间演变。

卡尔曼滤波器分两个阶段工作:首先, 使用运动模型预测下一个状态, 其次,使用测量校正这个预测。

但是我们如何确定卡尔曼滤波器是 给我们一个准确的状态估计? 在接下来的视频中, 我们将讨论一些吸引人的理论特性 卡尔曼滤波器使其成为工程领域的主要产品。

第 1 课补充阅读:线性卡尔曼滤波器

补充阅读:线性卡尔曼滤波器
要了解有关线性卡尔曼滤波器的更多信息,请查看以下资源:

  • 这是Tim Babb的一篇有趣的博客文章,解释了卡尔曼滤波器。Babb 是皮克斯动画工作室的照明优化主管。

  • 您可以在Timothy D. Barfoot, State Estimation for Robotics (2017)(免费提供)的第 3 章第 3 节中找到对卡尔曼滤波器的广泛、详细的处理。

  • 阅读Dan Simon, Optimal State Estimation (2006) 的第 5 章第 1 节中的另一个详细解释。

  • 在此页面上探索与卡尔曼滤波器相关的各种重要资源,该页面由中佛罗里达大学的 Greg Welch 和北卡罗来纳大学教堂山分校的 Gary Bishop 维护。

  • 阅读 Kalman关于线性滤波器的原始文章,由 Welch 和 Bishop 提供,由 UNC 教堂山分校主办(免费提供)。

参考

https://www.coursera.org/learn/state-estimation-localization-self-driving-cars/lecture/7DFmY/lesson-1-the-linear-kalman-filter

自动驾驶 9-1: (线性)卡尔曼滤波器The (Linear) Kalman Filter相关推荐

  1. 卡尔曼滤波器(THE KALMAN FILTER)的数学原理

    0.内容提要 这篇博客想试图证明卡尔曼滤波器(KALMAN FILTER),即就是说明KF(KALMAN FILTER)和EKF(EXTENDED KALMAN FILTER)算法中的步奏是怎么来的, ...

  2. 卡尔曼滤波器算法(Kalman Filter)—— 数学推导,图文并茂

    (1)HMM:隐变量是离散的 (2)Kalman Filter:又叫 Linear Dynamic Model 或 Linear Gaussian Model 隐变量和观测变量都是连续的,都是服从高斯 ...

  3. C++中贝叶斯滤波器包bfl的使用(1)-线性卡尔曼滤波器

    摘要 bfl是内置在ROS系统中的一个贝叶斯滤波器包,被使用在robot_pose_ekf中.本文是将该包单独提出来,操作一次整个包的教程(英文教程地址).这个教程由3部分组成,第一部分,也就是本文, ...

  4. 匀速运动小车卡尔曼_卡尔曼滤波(Kalman Filter)

    一.引言 以下我们引用文献[1]中的一段话作为本文的開始: 想象你在黄昏时分看着一仅仅小鸟飞行穿过浓密的丛林.你仅仅能隐隐约约.断断续续地瞥见小鸟运动的闪现.你试图努力地猜測小鸟在哪里以及下一时刻它会 ...

  5. Christopher Manning​:Uber 出售自动驾驶部门是一个标志性事件​ | AI日报

    为 AI 内行人定制资讯, 帮你一篇尽览 AI 行业要闻. AI消除马赛克,GitHub开源项目上线三天收获近7000星 最近,一个名为 Depix 的 GitHub 项目爆火,上线三天 star 量 ...

  6. 经久不衰的卡尔曼滤波器:基础知识及公式推导

    作者 | Zeal  编辑 | 汽车人 原文链接:https://zhuanlan.zhihu.com/p/578920168 点击下方卡片,关注"自动驾驶之心"公众号 ADAS巨 ...

  7. ad 卡尔曼_对Kalman(卡尔曼)滤波器的理解

    1.简介(Brief Introduction) 在学习卡尔曼滤波器之前,首先看看为什么叫"卡尔曼".跟其他著名的理论(例如傅立叶变换,泰勒级数等等)一样,卡尔曼也是一个人的名字, ...

  8. 卡尔曼滤波器(Kalman Filter) 理解

    卡尔曼滤波器 1 简介(Brief Introduction) 在学习卡尔曼滤波器之前,首先看看为什么叫"卡尔曼".跟其他著名的理论(例如傅立叶变换,泰勒级数等等)一样,卡尔曼也是 ...

  9. 【Matlab】扩展卡尔曼滤波器原理及仿真(初学者入门专用)

    文章目录 0.引言及友情链接 1.场景预设 2.扩展卡尔曼滤波器 3.仿真及效果 0.引言及友情链接 \qquad卡尔曼滤波器(Kalman Filter, KF)是传感器融合(Sensor Fusi ...

最新文章

  1. ResultSet 的相关介绍
  2. Failed to start bean ‘documentationPluginsBootstrapper‘ StackOverflowError
  3. ServletRequest HttpServletRequest 请求方法 获取请求参数 请求转发 请求包含 请求转发与重定向区别 获取请求头字段...
  4. concurrent包下的Exchanger练习
  5. 为k8s-master节点添加/移除污点taints
  6. 拓端tecdat|R语言中的马尔可夫区制转移(Markov regime switching)模型
  7. 非biztalk项目的部署
  8. 【一起学习输入法】华宇拼音输入法开源版本解析(5)
  9. 【WinHex篇】WinHex跳过坏扇区制作磁盘镜像
  10. Android恶意样本分析——frida破解三层锁机样本
  11. 漏电开关跳闸,把火线和零线对换就不跳了,这是什么原因?
  12. JavaScript BOM和DOM部分
  13. 彩虹7色的RGB及CMYK值列表参考
  14. 中国天气雷达行业市场供需与战略研究报告
  15. 网页中打开pdf、doc、ppt、xsl、sxw、ods、odp相关代码
  16. 原画还是3D建模?业内发展趋势,你来权衡
  17. 关于Halcon C++常用的两种数据结构Hobject和HTuple
  18. 【DG】[三思笔记]一步一步学DataGuard
  19. 程序员的十级孤独,你体会过几级
  20. Linux文本搜索:grep命令

热门文章

  1. Study-VTK:vtkWidget 分割/配准类之 放置种子点(Qt + vtkSeedWidget)
  2. 报告显示:2023年,电信区块链业产值将达10亿美元
  3. Scrapy 简易爬取Boss直聘 可设定city job 爬取工作到excel或mysql中
  4. 【系统性学习】Linux Shell常用命令
  5. windows10和linux双系统安装教程
  6. uniapp的video组件视频预览略缩图问题
  7. 高德地图API学习二、获取定位数据
  8. 隐私协议授权访问的实现
  9. Mac 电脑四大类生产力软件,你还缺少哪些?
  10. Android 高德地图API(详细步骤+源码)