热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

007KalmanFilters

其实就是Matlab教学视频的理解视频地址https:www.mathworks.comvideosseriesunderstanding-kalman-filters.html知

其实就是Matlab教学视频的理解

视频地址
https://www.mathworks.com/videos/series/understanding-kalman-filters.html
知乎大神的解释
https://zhuanlan.zhihu.com/p/129370341
https://zhuanlan.zhihu.com/p/129694693
wiki
https://en.wikipedia.org/wiki/Kalman_filter

你碰到一个人,给你的帅气打十分,你自己给自己打八分,那你实际有多帅呢?你不断地碰到更多的人,怎么用这些数据估计自己最真实客观的颜值呢?Kalman Filters可以神奇地帮你去除那些噪声

简介

在统计和控制理论中,卡尔曼滤波(也称为线性二次估计(LQE))是一种算法,该算法使用随时间推移观察到的一系列测量值(包含统计噪声和其他误差),并生成未知变量的估计,而这些估计往往会通过估计每个时间范围内变量的联合概率分布,比仅基于单个测量的结果更准确

通俗解释

1 房间温度

你在一个房间,可以通过温度计和自己的感觉获得两个温度(包含噪声),然后根据这两个温度你给出一个实际温度的猜测温度,随着时间的推移,你不断地重复这个操作,你怎么让猜测的温度更接近实际温度,更可靠准确。直接取两个温度的平均值吗?

2 火箭尾焰温度

在这里插入图片描述
火箭的尾焰温度很高,不能直接测量,需要把传感器放在紧靠尾焰,温度较低的外部。
在这里插入图片描述
通过一个温度传导公式,你可以通过外部温度获得尾焰温度,你也可以根据以前加入的所有燃料,通过火箭模型,计算出外部温度,尾焰温度,燃料在不断地添加的过程中,你怎么通过测量获得估计和火箭模型获得的估计,估计真实的尾焰温度。注意这是一个过程,你在不断地给出估计值,你要做的是,让你的估计不要偏离实际温度,并且尽可能越来越接近真实值,即使被外星人攻击了,短暂地偏离了,也能快速地拉回来

3 自动驾驶

在这里插入图片描述
你很缺钱,参加一个自动驾驶比赛,比赛规定每辆车跑1km,测试100次,谁的车停的离终点线最近,谁就赢得100万。要想赢,这一百次你的平均距离要接近1km(均值接近1km),并且每次都尽可能接近1km(方差小)。
在这里插入图片描述

你很牛,知道了每个加速减速的操作以后,车子不用跑,用一个模型就计算出了每个时间的位置,速度,你还能通过GPS实时获取车子的位置,然后你有了两个位置,怎么通过这两个位置估计车子实际跑时候的位置,并且使得这个估计越来越准?

为什么这个问题可以有解

虽然测量估计和实际环境都有噪声,但这个噪声一般来说都是服从高斯分布或者其他分布的。测量估计和模型估计的可信度可以通过大量实验增加其可靠度,即使你刚开始的猜测不靠谱,这个算法也可以像梯度下降那样,让你很快变得可靠

State Estimator(状态估计器)

火箭尾焰温度的估计可以用下图的状态估计器描述。T^in\hat{T}_{in}T^inT^ext\hat{T}_{ext}T^ext是模型预测的内部温度。通过K将模型预测值T^ext\hat{T}_{ext}T^ext和测量值Text{T}_{ext}Text联系起来,将他们的差反馈给模型,用于改进预测可靠度。
在这里插入图片描述

  • xxx:当前状态(k时刻实际内部温度)
  • yyy:测量状态(k时刻测量外部温度)
  • uuu:控制向量(k时刻添加燃料量)
  • AAA:状态转移模型(k时刻状态转向k+1时刻)
  • BBB:输入控制模型(输入对状态转移的作用)
  • CCC:观测模型(真实值转向观察值)
  • KKK:Kalman 增益
  • x˙\dot{x}x˙:当前状态的一阶导数,也就是当前状态的变化趋势,有时这里会是x(k+1)x(k+1)x(k+1),也就是下一状态,其实都是一样的
  • 戴帽子的其他变量都是模型预测值
  • eobs{e}_{obs}eobs:预测的误差,我们希望它越小越好。

从下图可以看出,通过调节A−KCA-KCAKC我们可以让我的估计误差以指数性质逼近实际值
在这里插入图片描述
没有KKK其实也可以,但是有了KKK可以更方便调节,也更快
在这里插入图片描述

Kalman Filters

自动驾驶的例子也是相似的,只不过多了两个噪声wkw_kwkvkv_kvk,他们满足正态分布。从概率分布来看,通过将预测值x^k\hat{x}_kx^k和观察值yky_kyk的概率分布相乘,我们可以得到一个更可靠的预测值x^k\hat{x}_kx^k
在这里插入图片描述
从State observer到Kalman filter,Kalman filter其实就是一种State observer。

  • x^k−\hat{x}^-_kx^k:模型预测值的预测值
  • x^k\hat{x}_kx^k:同时考虑测量值和模型预测值的预测值
    在这里插入图片描述
    在这里插入图片描述
    Kalman filter是处理一种动态的过程,也就是不断有新的观测值和测量值,要不断地更新预测值,不断地靠近真实值,如何更新呢
  • Pk{P}_kPk:模型预测值x^k\hat{x}_kx^k的variance(变动)
  • QQQRRR:白噪声的方差,也是一种变动
    在这里插入图片描述
    更新过程:
  • 知道了AAABBBQQQu1{u}_1u1P0{P}_0P0(初始值)、x^0−\hat{x}^-_0x^0(初始值),可以得到x^1−\hat{x}^-_1x^1P1−{P}^-_1P1
  • 知道了CCCRRR、计算得到的P1−{P}^-_1P1,算出K1{K}_1K1P1{P}_1P1,根据你的测量值y1{y}_1y1,计算同时考虑了模型前预测值、测量的后预测值
  • 周而复始

视频介绍了两种极端情况便于理解。

RRR=0,这说明测量时,内部温度到外部温度的转移模型非常好,基本没有噪声,那测量值的可信度就非常高
在这里插入图片描述
Pk−{P}^-_kPk=0,这说明数学模型很好,预测出来的变化很小,预测的可信度很高
在这里插入图片描述
这些公式怎么推导的?数学不好,请自行搜索

EKF、UKF、PF

KF是针对线性系统的,对于非线性系统,又出现了一些扩展
在这里插入图片描述
在这里插入图片描述


推荐阅读
  • 您的数据库配置是否安全?DBSAT工具助您一臂之力!
    本文探讨了Oracle提供的免费工具DBSAT,该工具能够有效协助用户检测和优化数据库配置的安全性。通过全面的分析和报告,DBSAT帮助用户识别潜在的安全漏洞,并提供针对性的改进建议,确保数据库系统的稳定性和安全性。 ... [详细]
  • 能够感知你情绪状态的智能机器人即将问世 | 科技前沿观察
    本周科技前沿报道了多项重要进展,包括美国多所高校在机器人技术和自动驾驶领域的最新研究成果,以及硅谷大型企业在智能硬件和深度学习技术上的突破性进展。特别值得一提的是,一款能够感知用户情绪状态的智能机器人即将问世,为未来的人机交互带来了全新的可能性。 ... [详细]
  • 在前一篇文章《Hadoop》系列之“踽踽独行”(二)中,我们详细探讨了云计算的核心概念。本章将重点转向物联网技术,全面解析其基本原理、应用场景及未来发展前景。通过深入分析物联网的架构和技术栈,我们将揭示其在智能城市、工业自动化和智能家居等领域的广泛应用潜力。此外,还将讨论物联网面临的挑战,如数据安全和隐私保护等问题,并展望其在未来技术融合中的重要角色。 ... [详细]
  • 全球计算机视觉顶会CVPR2018(ConferenceonComputerVisionandPatternRecognition,即IEEE国际计算机 ... [详细]
  • javax.mail.search.BodyTerm.matchPart()方法的使用及代码示例 ... [详细]
  • 本文回顾了作者初次接触Unicode编码时的经历,并详细探讨了ASCII、ANSI、GB2312、UNICODE以及UTF-8和UTF-16编码的区别和应用场景。通过实例分析,帮助读者更好地理解和使用这些编码。 ... [详细]
  • 网站访问全流程解析
    本文详细介绍了从用户在浏览器中输入一个域名(如www.yy.com)到页面完全展示的整个过程,包括DNS解析、TCP连接、请求响应等多个步骤。 ... [详细]
  • javascript分页类支持页码格式
    前端时间因为项目需要,要对一个产品下所有的附属图片进行分页显示,没考虑ajax一张张请求,所以干脆一次性全部把图片out,然 ... [详细]
  • 字节流(InputStream和OutputStream),字节流读写文件,字节流的缓冲区,字节缓冲流
    字节流抽象类InputStream和OutputStream是字节流的顶级父类所有的字节输入流都继承自InputStream,所有的输出流都继承子OutputStreamInput ... [详细]
  • Python 3 Scrapy 框架执行流程详解
    本文详细介绍了如何在 Python 3 环境下安装和使用 Scrapy 框架,包括常用命令和执行流程。Scrapy 是一个强大的 Web 抓取框架,适用于数据挖掘、监控和自动化测试等多种场景。 ... [详细]
  • 深入解析国内AEB应用:摄像头和毫米波雷达融合技术的现状与前景
    本文作者程建伟,武汉极目智能技术有限公司CEO,入选武汉市“光谷3551人才计划”。文章详细探讨了国内自动紧急制动(AEB)系统中摄像头与毫米波雷达融合技术的现状及未来前景。通过分析当前技术的应用情况、存在的挑战以及潜在的解决方案,作者指出,随着传感器技术的不断进步和算法优化,AEB系统的性能将大幅提升,为交通安全带来显著改善。 ... [详细]
  • 在尝试对 QQmlPropertyMap 类进行测试驱动开发时,发现其派生类中无法正常调用槽函数或 Q_INVOKABLE 方法。这可能是由于 QQmlPropertyMap 的内部实现机制导致的,需要进一步研究以找到解决方案。 ... [详细]
  • 浏览器作为我们日常不可或缺的软件工具,其背后的运作机制却鲜为人知。本文将深入探讨浏览器内核及其版本的演变历程,帮助读者更好地理解这一关键技术组件,揭示其内部运作的奥秘。 ... [详细]
  • Webdriver中元素定位的多种技术与策略
    在Webdriver中,元素定位是自动化测试的关键环节。本文详细介绍了8种常用的元素定位技术与策略,包括ID、名称、标签名、类名、链接文本、部分链接文本、XPath和CSS选择器。每种方法都有其独特的优势和适用场景,通过合理选择和组合使用,可以显著提高测试脚本的稳定性和效率。此外,文章还探讨了在复杂页面结构中如何灵活运用这些定位技术,以应对各种挑战。 ... [详细]
  • 当前物联网领域十大核心技术解析:涵盖哪些关键技术?
    经过近十年的技术革新,物联网已悄然渗透到日常生活中,对社会产生了深远影响。本文将详细解析当前物联网领域的十大核心关键技术,包括但不限于:1. 军事物联网技术,该技术通过先进的感知设备实现战场环境的实时监测与数据传输,提升作战效能和决策效率。其他关键技术还包括传感器网络、边缘计算、大数据分析等,这些技术共同推动了物联网的快速发展和广泛应用。 ... [详细]
author-avatar
李慧颖yynd_613
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有