主要内容

介绍估计过滤器

背景

评估系统

对于许多自治系统,系统状态的知识是任何应用程序设计的先决条件。然而,在现实中,国家经常不能直接获得。系统状态通常是推断或估计基于系统输出来衡量某些仪器(传感器等)和流动的状态由一个动态或运动模型。一些简单的技巧,如最小平方估计或批量评估,充分解决静态或离线估计问题。在线和实时(顺序)估计问题,更复杂的评估通常应用过滤器。

估计系统是由一个动态或运动模型,描述的流动状态和测量模型,该模型描述了如何测量。在数学上,这两个模型可以表示为一个运动方程和测量方程。例如,对于一般的非线性运动方程和测量方程离散估计系统可以写成:

x k + 1 = f ( x k ) y k = h ( x k )

在哪里k时间步长,xk在时间步是系统状态吗k,f(xk)是依赖政府的运动方程,h(xk)是国家相关测量方程,yk是输出。

噪声分布

在大多数情况下,构建一个完美的模型来捕获所有的动态现象是不可能的。例如,包括所有摩擦运动模型的自主车是不可能的。为了弥补这些未建模动态,过程噪声(w)通常是添加到动态模型。此外,当测量值,多个来源的错误,比如校准错误,都不可避免地包含在测量。考虑到这些错误,适当的测量噪声必须添加到测量模型。一个评估系统包括这些随机噪声和错误被称为随机评估系统,它可以表示为:

x k + 1 = f ( x k , w k ) y k = h ( x k , v k )

在哪里wkvk分别代表过程噪声和测量噪声。

对于大多数工程应用程序,这个过程噪声和测量噪声是假定服从零均值高斯分布或正态分布,或至少被高斯分布近似。另外,因为准确的状态未知,估计是一个随机变量,通常假定服从高斯分布。假设为这些变量高斯分布极大地简化了估计滤波器的设计,和卡尔曼滤波器的基础形式的家人。

高斯分布的随机变量(x)是参数化的平均值μ和协方差矩阵P写成xN(μ,P)。给定一个高斯分布,平均,这也是最可能的值x由期望定义(E):

μ = E ( x ]

的意思是也叫第一的时刻x关于原点。协方差描述的不确定性x被定义为期望(E):

P = E ( ( x μ ) ( x μ ) T ]

协方差也被称为第二的时刻x对其的意思。

如果尺寸x是1,P仅仅是一个标量。在这种情况下,价值的P通常是用σ2和方差。的平方根,σ,称为标准偏差x。标准差具有重要的物理意义。例如,下图显示了概率密度函数(描述的可能性x需要一定的值)与平均等于一维高斯分布μ和标准偏差等于σ。大约68%的数据属于1σ边界的x,95%的数据属于2σ边界,99.7%的数据属于3σ边界。

高斯分布

尽管高斯分布假设是占主导地位的假设在工程应用中,存在系统的状态不能近似高斯分布。在这种情况下,non-Kalman过滤器(如粒子滤波)需要准确估计系统状态。

滤波器的设计

的目标设计一个滤波器来估计系统的状态使用测量和系统动力学。由于测量通常是在离散的时间步长,过滤过程通常分为两个步骤:

  1. 预测:传播状态和协方差之间离散测量时间步骤(k= 1、2、3、…N)使用动态模型。这一步也被称为流动更新。

  2. 更正:正确的状态估计和协方差在离散时间使用测量步骤。这一步也被称为测量更新。

表示状态估计和协方差状态在不同的步骤中,xk|kPk|k表示状态估计和协方差校正后在时间步k,而xk+ 1 |kPk+ 1 |k表示的状态估计和协方差预测从先前的时间步k到当前时间步k+ 1。

预测

在预测步骤,传播是非常简单的。过滤器只需要替代状态估计到动态模型在时间和传播它xk+ 1 |k=f(xk|k)。

协方差传播更为复杂。如果评估系统是线性的,那么可以传播协方差(Pk|kPk+ 1 |k)在一个标准方程完全基于系统属性。对于非线性系统,准确的协方差传播是具有挑战性的。一个主要的区别不同的过滤器是如何传播系统协方差。例如:

  • 一个线性卡尔曼滤波器使用一个线性方程协方差传播。

  • 扩展卡尔曼滤波器将协方差传播基于线性近似,这使得当系统是高度非线性的大错误。

  • 使用无味的无味卡尔曼滤波变换样本协方差分布和传播它。

多国家和协方差传播也大大影响过滤器的计算复杂性。例如:

  • 一个线性卡尔曼滤波器使用一个线性方程完全协方差传播,通常计算效率。

  • 扩展卡尔曼滤波用线性近似,这需要计算雅可比矩阵和更多的计算资源的需求。

  • 一个无味卡尔曼滤波需要样本协方差分布,因此需要多个采样点的传播,这是昂贵的高维系统。

修正

在校正步骤中,过滤器使用测量通过测量反馈正确的状态估计。基本上,区别真正的测量和预测度量添加到状态估计后乘以一个反馈增益矩阵。例如,在一个扩展的卡尔曼滤波器,给出了状态估计的修正:

x k + 1 | k + 1 = x k + 1 | k + K k ( y k + 1 h ( x k + 1 | k ) )

正如前面提到的,xk+ 1 |k是状态估计(先天)校正和之前xk+ 1 |k+ 1(后验)修正后的状态估计。Kk卡尔曼增益由最优准则,yk是真正的测量,然后呢h(xk+ 1 |k)是预测测量。

在校正步骤中,过滤器也纠正了估计误差协方差。基本的想法是正确的概率分布x使用的分布信息yk + 1。这就是所谓的后验概率密度x鉴于y。在一个过滤器,处理递归预测和校正步骤。流程图显示了卡尔曼滤波器的通用算法。

卡尔曼滤波算法流程图

在传感器融合估计过滤器和跟踪工具

传感器融合和跟踪工具箱™提供多个估计过滤器可以用来估计和跟踪动态系统的状态。

卡尔曼滤波器

经典的卡尔曼滤波器(trackingKF)是线性系统的最优滤波器,高斯过程和测量噪声。一个线性估计系统可以得到:

x k + 1 = 一个 k x k + w k y k = H k x k + v k

过程和测量噪声都假定为高斯分布,即:

w k ~ N ( 0 , k ) v k ~ N ( 0 , R k )

因此,测量步骤之间的协方差矩阵可以直接传播使用一个线性代数方程为:

P k + 1 | k = 一个 k P k | k 一个 k T + k

修正测量更新方程:

x k + 1 | k + 1 = x k + 1 | k + K k ( y k H k x k + 1 | k ) P k + 1 | k + 1 = ( K k H k ) P k + 1 | k

卡尔曼增益矩阵计算(Kk)在每个更新过滤器需要计算矩阵的逆:

K k = P k | k 1 H k T ( H k P k | k 1 H k T + R k ] 1

自反矩阵的维数等于估计的状态,这个计算需要一些计算高维系统的努力。更多细节,请参阅线性卡尔曼滤波器

α-β滤波器

α-β滤波器(trackingABF)是一种次优滤波器应用于线性系统。过滤器可以被看作是一个简化的卡尔曼滤波器。卡尔曼滤波,卡尔曼增益和协方差矩阵计算动态和更新每一个步骤。然而,在一个α-β滤波器,这些矩阵是常数。这种治疗牺牲的最优卡尔曼滤波器,提高了计算效率。出于这个原因,一个α-β滤波器可能会喜欢当计算资源是有限的。

扩展卡尔曼滤波器

最受欢迎的扩展卡尔曼滤波器(trackingEKF)修改从古典适应非线性卡尔曼滤波模型。它通过线性化的非线性系统状态估计和忽视第二和高阶非线性项。它的配方基本上是相同的线性卡尔曼滤波器除了一个kHk矩阵的卡尔曼滤波器取代的雅可比矩阵f(xk),h(xk):

一个 k = f ( x k ) x k | x k | k 1 H k = h ( x k ) x k | x k | k 1

如果真正的动态评估系统接近线性化动力学,然后使用这个线性近似不产生短时间内重大错误。出于这个原因,一个卡尔曼滤波器能产生相对精确的状态估计为轻度非线性估计系统更新时间间隔较短。然而,由于一个卡尔曼滤波器忽略高阶项,它可以分化为高度非线性系统(例如,表演),尤其是在大更新的时间间隔。

相比KF、卡尔曼滤波器需要推导出雅可比矩阵,这需要系统动力学是可微的,和计算雅可比矩阵线性化系统,这就意味着需要更多计算资产。

请注意,估计系统状态在球坐标表示,您可以使用trackingMSCEKF

无味卡尔曼滤波

无味卡尔曼滤波(trackingUKF)使用一个无味的转换(UT)大约传播的协方差分布非线性模型。UT方法样本协方差高斯分布在当前时间,传播的采样点(称为σ点)使用非线性模型,近似得到的协方差分布假定为高斯通过评估这些传播σ点。这个数字说明了实际传播之间的区别,线性化传播,但传播的不确定性协方差。

真正的、线性和UT变换

相对于线性化方法采取一个卡尔曼滤波器,UT方法导致更精确的协方差传播和导致更精确的状态估计,尤其是高度非线性系统。UKF不需要雅可比矩阵的推导和计算。然而,UKF需要2的传播n+ 1σ点通过非线性模型,n的维数估计的状态。这可以计算为高维系统昂贵。

容积卡尔曼滤波

容积卡尔曼滤波(trackingCKF比UKF)一种稍微不同的方法来生成2n采样点用来传播协方差分布,n的维数估计的状态。这替代样本点集往往导致更好的统计稳定性和避免分歧在UKF可能发生,特别是当运行在一个单精度的平台。注意,位置是相当于UKF UKF参数集的时候出现α= 1,β= 0,κ= 0。看到trackingUKF对这些参数的定义。

高斯和滤波

高斯和滤波(trackingGSF)使用多个高斯分布的加权和来近似估计的分布状态。估计状态是由高斯加权和的状态:

x k = = 1 N c k x k

在哪里N是高斯状态的数量保持在过滤器,然后呢ck的重量对应的高斯状态,在每次更新修改基于测量。多个高斯国家遵循相同的动态模型为:

x k + 1 = f ( x k , w k ) , = 1 , 2 , , N

过滤器有效估计的状态不完全可观测的评估系统。例如,过滤器可以使用多个angle-parametrized扩展卡尔曼滤波器来估计系统状态时只可用测量范围。看到跟踪与测距测量了一个例子。

交互式多模型滤波器

交互式多模型滤波器(trackingIMM)使用多个高斯滤波器跟踪目标的位置。在高度机动系统,系统动力学可以切换多个模型(恒定速度、加速度恒定不变)。使用只有一个模型的运动目标运动模型是很困难的。多个模型评估系统可以被描述为:

x k + 1 = f ( x k , w k ) y k = h ( x k , v k )

在哪里= 1,2,…,动态模型的总数。IMM滤波器解决了目标运动的不确定性通过使用多个机动目标模型。同时过滤过程所有模型,代表了总体估计的加权和估计这些模型,每个模型的概率权重。看到机动目标跟踪了一个例子。

粒子滤波

粒子滤波(trackingPF)不同于卡尔曼家族的过滤器(例如,EKF与UKF),因为它不依赖于高斯分布的假设,这对应于一个参数的不确定性的描述使用均值和方差。相反,粒子滤波创建多个模拟加权样本(粒子)系统的操作时间,然后分析这些粒子代替未知的真实分布。简要介绍粒子滤波算法的图所示。

粒子滤波算法

这种方法背后的动机是一个大数定律的论点——作为粒子数变大,他们的经验分布接近真实分布。粒子滤波的主要优势在不同的卡尔曼滤波器,它可以应用于非高斯分布。同时,系统动力学上的过滤器没有限制,可以使用高度非线性系统。另一个好处是滤波器的固有能力代表多个假设当前状态。因为每个粒子代表一个国家的假设有一定关联的可能性,一个粒子滤波器的情况下有用存在模棱两可的状态。

随着这些吸引人的属性是粒子滤波的计算复杂性。例如,UKF需要传播13个样本点估计对象的3 d位置和速度。然而,粒子滤波可能需要成千上万的粒子获得一个合理的估计。同时,粒子的数量需要达到良好的估计生长非常迅速与国家维度和可能导致粒子在高维度空间不足问题。因此,粒子过滤器主要用于系统在较低的维度(例如机器人)。

如何选择一个跟踪滤波器

下表列出了所有可用的跟踪滤波器在传感器融合和跟踪工具箱以及如何选择给定的系统非线性的约束,国家分布、和计算复杂度。

过滤器的名字 金宝app支持非线性模型 高斯状态 计算复杂度 评论
α-β 非最优滤波器。
卡尔曼 介质低 线性系统的最优选择。
扩展卡尔曼 媒介 使用线性模型协方差传播的不确定性。
无味卡尔曼 中等高 样本协方差传播的不确定性采样点。可能成为一个单精度平台数值不稳定。
容积卡尔曼 中等高 样本协方差传播的不确定性采样点。数值稳定。
高斯和

(假设一个加权和的分布)

对部分可观测的情况下(例如angle-only跟踪)。
交互多模型(IMM)

多个模型

(假设一个加权和的分布)

操纵对象(例如,加速或转)
粒子 非常高的 样品使用加权粒子分布的不确定性。

引用

[1]王,电子,R。Van Der Merwe. "The Unscented Kalman Filter for Nonlinear Estimation."IEEE 2000自适应系统的信号处理、通信和控制研讨会。00 ex373, 2000年,页153 - 158。

[2],H。,N。T我an, Y. Wang, M. Zhou, and M.A. Haile. "Nonlinear Bayesian Estimation: From Kalman Filtering to a Broader Horizon."IEEE / CAA自动化杂志》上。5卷,第二,2018年,页401 - 417。

[3]Arasaratnam,我。,美国微积分。“容积卡尔曼滤波器”。IEEE自动控制。54卷,6号,2009年,页1254 - 1269。

[4]Konatowski, S。,P。Kaniewski, and J. Matuszewski. "Comparison of Estimation Accuracy of EKF, UKF and PF Filters."年度的导航。第一卷。23日,2016年,页69 - 87。

[5]达科,J。“轻松对象跟踪:粒子滤波。”https://www.codeproject.com/Articles/865934/Object-Tracking-Particle-Filter-with-Ease。