《人工智能》常用滤波器
文章平均质量分 96
贝叶斯滤波器的深度解析
Yngz_Miao
这个作者很懒,什么都没留下…
展开
-
【滤波】自适应滤波器
%matplotlib inline#format the bookimport book_formatbook_format.set_style()简介到目前为止,我们已经考虑了跟踪与我们的过程模型相关的表现良好的对象的问题。例如,我们可以使用恒速滤波器来跟踪直线运动的物体。只要物体以合理的恒定速度沿直线移动,或者非常缓慢地改变其轨迹或速度,这个滤波器都会表现得比较好。相反,假设我们正试图跟踪机动目标,例如草原上的马、天空中飞行的鸟等。在这些情况下,滤波器的性能相当差。或者,考虑一种情况,原创 2023-06-29 19:56:32 · 13211 阅读 · 0 评论 -
【滤波】平滑
当你考虑未来的数据时,卡尔曼滤波器的性能并不是最优的。在接近稳定状态的一段时间后,观测值突然有一个很大的变化。假设该变化已经超过了飞机飞行的极限。尽管如此,卡尔曼滤波器还是会根据当前的卡尔曼增益,将新的观测值合并到滤波器中。它不能拒绝噪声,因为观测的结果可能反映转弯的开始。飞机之前就开始转弯,但之前的观测值结果很嘈杂,没有显示变化;飞机正在转弯,观测值比较嘈杂;飞机没有转弯,观测值非常嘈杂;飞机正在相反方向转弯,观测值比较嘈杂;根据这些未来的观测结果,我们可以推断出:飞机开始转弯。原创 2023-06-28 20:44:45 · 13277 阅读 · 0 评论 -
【滤波】粒子滤波(PF)
本文只触及这个庞大话题的表面。我的目标不是教会你这个领域,而是让你接触实用的贝叶斯蒙特卡罗滤波技术。粒子滤波是一种集成滤波。卡尔曼滤波器用高斯函数表示状态,利用贝叶斯定理对高斯模型进行观测,利用状态空间方法进行预测。相比之下,集成滤波使用点和相关概率的离散集合来表示概率分布。观测应用于这些点,而不是高斯分布。同样,系统模型应用于点,而不是高斯分布。然后我们这些点集合的统计特性。这些方法各有利弊。卡尔曼滤波是非常有效的,并且在线性和高斯噪声假设成立的情况下是一种最优估计。原创 2023-06-22 01:33:18 · 15331 阅读 · 0 评论 -
【滤波】扩展卡尔曼滤波器(EKF)
%matplotlib inline#format the bookimport book_formatbook_format.set_style()我们发展了线性卡尔曼滤波器的理论。然后在上两章中,我们提出了使用卡尔曼滤波器解决非线性问题的主题。在本章中,我们将学习扩展卡尔曼滤波器(EKF)。EKF通过在当前估计点对系统进行线性化来处理非线性,然后使用线性卡尔曼滤波器对该线性化系统进行滤波。这是最早用于非线性问题的技术之一,也是最常用的技术。EKF为滤波器的设计者设置了较大的数学挑战,因此我原创 2023-06-20 20:59:21 · 17957 阅读 · 6 评论 -
【滤波】无迹卡尔曼滤波(UKF)
%matplotlib inline# format the bookimport book_formatbook_format.set_style()前文在上一章中,我们讨论了非线性系统带来的困难。这种非线性可以出现在两个地方。它可能出现在我们的观测值里,也可能发生在过程模型中。对于这些问题,标准卡尔曼滤波器的性能可能会很差。在上一章中,我向你们展示了这样的一个现象(为了强调非线性的影响,我对方程做了一些修改):from kf_book.book_plots import set_fi原创 2023-06-13 11:58:22 · 14558 阅读 · 2 评论 -
【滤波】非线性滤波
我们开发的卡尔曼滤波器使用线性方程组,因此该滤波器只能处理线性问题。但是这个世界是非线性的,所以我们一直在研究的经典滤波器的使用范围非常有限。过程模型可能存在非线性。假设我们想要追踪一个从大气坠落的物体,物体的加速度取决于它遇到的阻力。阻力取决于空气密度,空气密度随高度降低。x¨0.0034ge−x22000x˙22β−gx¨2β0.0034ge−x/22000x˙2−g非线性的第二个来源是观测模型。原创 2023-05-30 20:12:44 · 13954 阅读 · 0 评论 -
【滤波】设计卡尔曼滤波器
%matplotlib inline#format the bookimport book_formatbook_format.set_style()简介在上一章节中,我们讨论了教科书式的问题。这些问题很容易陈述,只需几行代码就可以编程,也很容易教学。但现实世界的问题很少这么简单。在本章中,我们将使用更实际的示例,并学习如何评估滤波器性能。我们将首先在二维空间中跟踪一个机器人,比如一个场地或仓库。我们将从一个简单的传感器开始,该传感器输出有噪声的(x,y)(x, y)(x,y)坐标,我们需原创 2023-05-29 11:18:21 · 13762 阅读 · 0 评论 -
【滤波】卡尔曼滤波数学
%matplotlib inline#format the bookimport book_formatbook_format.set_style()简介如果你已经学习到了这一步,我希望你会认为卡尔曼滤波器有些名不副实。当然,我所书写的一些方程式,我希望对你来说是相当简单的。卡尔曼滤波的基本概念非常简单——进行两次观测,或者一次预测一次观测,然后选择介于两者之间的输出。如果你越相信观测值,你的估计值就越接近观测值;如果你越相信预测值,你的估计值就越接近预测值。老实说,我一直在仔细地选择我所原创 2023-05-19 20:26:27 · 12749 阅读 · 2 评论 -
【滤波】多元卡尔曼滤波器
%matplotlib inline#format the bookimport book_formatbook_format.set_style()简介我们现在准备研究和实现完整的、多元形式的卡尔曼滤波器。在上一章中,我们学习了多元高斯如何表达多个随机变量之间的相关性,例如飞机的位置和速度,我们还了解了变量之间的相关性如何显著提高后验概率。如果我们只粗略地知道位置和速度,但它们是相关的,那么我们的新估计可以非常准确。我更希望你通过几个示例,来培养这些滤波器工作原理的直觉。本文中,我将要掩原创 2023-05-11 20:49:22 · 12755 阅读 · 0 评论 -
【滤波】多元高斯
上一篇文章中的技术非常强大,但它们只适用于一个变量或维度。它们无法表示多元数据,例如狗在野外的位置和速度。位置和速度是相互关联的,而我们永远不应该丢弃信息。在本文中,我们将学习如何从概率的角度来描述这种关系,并获得明显更好的滤波器性能。我们利用了系统的相关性,得出了非常精确的估计。数学并不关心我们是在处理两个位置,还是一个位置和一个相关的速度,或者其他的空间维度。如果建筑面积和房价相关,你可以写一个卡尔曼滤波器来跟踪房价;如果年龄与疾病发生率相关,你可以编写一个卡尔曼滤波器来跟踪疾病;原创 2023-05-05 20:35:25 · 12276 阅读 · 0 评论 -
【滤波】一维卡尔曼滤波器
本文中描述的卡尔曼滤波器,是我们将在下一文章中学习到的更一般的滤波器的一个特殊的、受限的情况。大多数文章并不讨论这种一元形式。然而,我认为这是一个至关重要的垫脚石。我们从离散贝叶斯滤波器开始,到现在实现了一元卡尔曼滤波器。我试着向你们展示,这些滤波器中的每一个都使用相同的算法。我们不久将学习的卡尔曼滤波器的数学是相当复杂的。这种复杂性带来了显著的好处:性能将明显优于本文中的滤波器。本文需要时间来理解。要真正理解这一点,你可能要把本文多读几遍。我鼓励你更改代码中的各种变量并观察结果。原创 2022-12-14 20:14:48 · 14451 阅读 · 2 评论 -
【滤波】概率、高斯和贝叶斯
%matplotlib inline#format the bookimport book_formatbook_format.set_style()前言上一章讨论了离散贝叶斯滤波器的一些缺点。对于许多跟踪和滤波问题,我们希望有一个单峰和连续的滤波器。例如,我们确定一架飞机的位置在(12.34,−95.54,2389.5)(12.34, -95.54, 2389.5)(12.34,−95.54,2389.5),三个数字分别表示纬度,经度和高度。我们不想让我们的滤波器告诉我们:它可能在(1.6原创 2022-12-02 20:05:47 · 12347 阅读 · 0 评论 -
【滤波】离散贝叶斯滤波器
%matplotlib inline#format the bookimport book_formatbook_format.set_style()前言卡尔曼滤波器属于贝叶斯滤波器的一种。大多数教科书中对卡尔曼滤波的讲解几乎都是直接上贝叶斯公式,然后一大堆公式推导。这种方式也许说明了贝叶斯公式是如何影响到卡尔曼滤波方程的,但大多数的讨论都停留在一个非常抽象的层次上。这种讲解方法需要对某些数学领域有一个深刻的理解,比如概率统计、矩阵运算等,对于初学者来说还是稍许晦涩难懂。我将用另一种方式原创 2021-01-25 23:35:37 · 15292 阅读 · 2 评论