一种基于高斯扰动的重采样粒子滤波算法的制作方法

文档序号:12367213阅读:823来源:国知局
一种基于高斯扰动的重采样粒子滤波算法的制作方法与工艺

本发明属于智能信息处理技术领域,涉及一种基于高斯扰动的重采样粒子滤波算法。



背景技术:

目标跟踪问题实际上是目标状态的滤波问题,即根据传感器己获得的目标量测数据对所关心的目标状态进行精确的估计。对低信噪比光电图像序列中机动小目标的检测与跟踪问题而言,由于信噪比低,目标成像面积小,使得小目标跟踪和检测存在诸多困难,传统的手段难以实现。在近年提出的诸多先跟踪后检测方法中,递推贝叶斯滤波方法通过状态模型和量测模型,真正引入了跟踪的思想。其中,卡尔曼滤波器已被证明是线性高斯问题的最优贝叶斯实现。然而,实际跟踪问题受多种噪声干扰并且目标运动复杂,属于非线性非高斯问题,以线性和高斯的假设为基础的跟踪方法常导致跟踪失败。基于蒙特卡罗近似估计的粒子滤波方法在工程上实现了非线性系统的贝叶斯滤波思想,是目前小目标跟踪问题中研究的重点。

粒子滤波方法中的重采样虽然在一定程度上缓解权值退化现象,但同时也引入了新的问题,即权值越大的粒子子代越多,而权值较小的粒子被逐步削弱或剔除,最极端的情况是新的粒子集实际都是一个权值最大的粒子的子代,引起样本空间的崩塌,也就是“样本枯竭”现象,采样结果中包含了许多重复点,从而损失了粒子的多样性,导致粒子滤波状态估计精度的降低,就小目标跟踪问题而言,在极端情况下会导致跟踪的失败,而要提高状态估计精度和保证小目标的跟踪精度,需要在粒子滤波迭代过程中保证粒子的多样性。



技术实现要素:

为了解决上述问题,本发明提出了一种基于高斯扰动的重采样粒子滤波算法,其特征在于,所述方法的步骤为

步骤1、初始化,在初始时刻k=0时,从系统状态的先验概率密度分布函数p(S0)~U(Λ)中采样得到粒子集合其中,U表示均匀分布函数,Λ表示系统状态的均匀分布区间,N为采样粒子数目,表示在k=0时刻采样得到的第i个粒子,为第i个粒子的权值,此时所有粒子重要性权值相同,均为初始化后进入粒子滤波迭代过程,令k=1;

步骤2、从重要性概率密度分布函数中采样:对粒子依据系统状态模型进行预测;式中表示在k时刻采样得到的第i个粒子、p(Sk|Sk-1)为重要性概率密度分布函数;

步骤3、根据由观测模型确定的似然函数计算每个粒子权值并对权值归一化,归一化后粒子的权值为式中,Zk为观测值,为k时刻第i个粒子的权值;此时系统状态后验概率密度分布函数近似为式中Sk为待估计的k时刻的系统状态,δ为单位脉冲函数;

步骤4、计算有效粒子的数目

步骤5、当有效粒子数目Neff大于等于设定阈值时,输出系统状态估计值否则当有效粒子数目小于设定阈值时,进入步骤6;

步骤6、启动重采样过程进行重采样,对粒子集进行重采样得到新的粒子集重采样的过程为

601、产生[0,1]上均匀分布的随机数{ui}i=1…N

602、产生权值累积函数wc,满足

603、找到满足wc(m-1)≤ui≤wc(m)的整数m生成重采样粒子下标m,第m个粒子经重采样后将被复制在第i个位置,即为k时刻重采样后第i个粒子,为k时刻重采样前第m个粒子;

604、统计第m个粒子被采样的次数

605、若Cm>1,则计算采样邻域的大小α22与粒子集中的有效粒子目数和系统状态的方差ε2有关,进入606;

606、对由多次重采样后的粒子添加高斯扰动为重采样后,粒子集中粒子的重要性权值相等,均为重采样得到新的粒子集

607、计算输出k时刻系统状态估计期望值

步骤7、比较k是否到达结束时刻T,若k<T,则k=k+1跳至步骤2;若k≥T则结束。

有益效果

本发明在非线性和非高斯系统中用来估计系统状态,应用于无特征的小目标跟踪定位中。方法在重采样过程中对高权值粒子增加高斯扰动扩散的方法,在保证粒子有效性的前提下增加粒子多样性,解决了粒子样本空间崩塌的问题,因此,采用基于高斯分布扰动的重采样算法粒子滤波算法在小目标的跟踪过程中,增加了粒子逼近目标的概率,在不增加计算量和存储量的条件下,降低了跟踪误差,提高了小目标跟踪精度。另一方面,从计算量角度来看,尽管增加了基于高斯扰动的扩散过程,但是由于粒子的收敛速度加快,改进算法的执行时间和系统重采样算法接近。

附图说明

图1为本发明方法的流程图;

图2经典重采样和改进重采样算法目标跟踪结果;

图3为经典与本发明两种重采样算法100次蒙特卡罗仿真RMSE;

图4a经典重采样算法粒子分布图;

图4b为本发明中重采样算法粒子分布图;

图5为经典重采样和本发明重采样算法100次蒙特卡罗仿真的RMSE和平均CPU运行时间。

具体实施方式

本发明提出了一种基于高斯扰动的重采样粒子滤波算法,其过程流程图如图1所示,具体步骤为

步骤1、初始化,在初始时刻k=0时,从系统状态的先验概率密度分布函数p(S0)~U(Λ)中采样得到粒子集合其中,U表示均匀分布函数,Λ表示系统状态的均匀分布区间,N为采样粒子数目,表示在k=0时刻采样得到的第i个粒子,为第i个粒子的权值,此时所有粒子重要性权值相同,均为初始化后进入粒子滤波迭代过程,令k=1;

步骤2、从重要性概率密度分布函数中采样:对粒子依据系统状态模型进行预测;式中表示在k时刻采样得到的第i个粒子、p(Sk|Sk-1)为重要性概率密度分布函数;

步骤3、根据由观测模型确定的似然函数计算每个粒子权值并对权值归一化,归一化后粒子的权值为式中,Zk为观测值,为k时刻第i个粒子的权值;此时系统状态后验概率密度分布函数近似为式中Sk为待估计的k时刻的系统状态,δ为单位脉冲函数;

步骤4、计算有效粒子的数目

步骤5、当有效粒子数目Neff大于等于设定阈值时,输出系统状态估计值否则当有效粒子数目小于设定阈值时,进入步骤6;

步骤6、启动重采样过程进行重采样,对粒子集进行重采样得到新的粒子集重采样的过程为

601、产生[0,1]上均匀分布的随机数{uj}i=1…N

602、产生权值累积函数wc,满足

603、找到满足wc(m-1)≤ui≤wc(m)的整数m生成重采样粒子下标m,第m个粒子经重采样后将被复制在第i个位置,即为k时刻重采样后第i个粒子,为k时刻重采样前第m个粒子;

604、统计第m个粒子被采样的次数

605、若Cm>1,则计算采样邻域的大小α22与粒子集中的有效粒子目数和系统状态的方差ε2有关,进入606;

606、对由多次重采样后的粒子添加高斯扰动为重采样后,粒子集中粒子的重要性权值相等,均为重采样得到新的粒子集

607、计算输出k时刻系统状态估计期望值

步骤7、比较k是否到达结束时刻T,若k<T,则k=k+1跳至步骤2;若k≥T则结束。

采用相同的模型和参数对于系统重采样算法和改进后重采样算法进行仿真。显示了两种重采样算法的跟踪结果,图3中显示的是两种算法对于小目标跟踪在x,y坐标上的估计值和真实值。从图3中可以看出,由于增强了粒子的多样性,与系统重采样方法相比,本发明提出的方法更快的跟踪上了目标。

为进一步验证本发明的有效性,对两种方法进行100次蒙特卡罗仿真,按照计算每一帧跟踪过程中真实值与估计值的100次仿真的均方根误差RMSE。从图中可以看出,添加了基于高斯分布扰动的重采样算法降低了跟踪误差,提高了跟踪精度。

在经典重采样过程中值得一提的是,重采样只是对于粒子si的简单的m次复制,因此在重采样过程中,虽然降低了粒子退化的影响,但是同时也引入了粒子耗尽问题,减弱了粒子的多样性,即经过多次迭代和重采样后,所有粒子占据状态空间的同一点,所有粒子值相同。而这一粒子值所代表的空间中的位置极有可能偏移真正系统状态,也就难以实现对小目标的跟踪。在粒子滤波算法中,由于实际跟踪问题中系统状态后验概率密度函数p(Sk|Z1:k)难以获得,通常用重要性函数p(Sk|Sk-1)替代了真正的系统状态后验概率密度函数,该重要性函数没有将最新的系统观测值考虑进来,因此粒子权重的计算始终存在误差。在极端情况下,当单一粒子权重值为1而其他粒子权重为零时,重采样后,权重为1的粒子被复制N-1次,同时整个样本空间崩塌为一个粒子在后续第k时刻的预测过程中,该粒子将通过目标运动模型进行预测,然而,对于机动运动的目标而言,难以建立准确的运动模型描述这一运动过程,更由于存在着过程噪声和模型误差,用这一模型对预测的粒子运动会偏移真正的系统状态,也就是目标的状态。当预测的粒子偏移真正的系统状态时,依据量测模型计算的权重为零或者逼近零,估计的后验状态概率密度p(Sk|Z1:k)也将逼近零,最终导致所有样本的丢失,跟踪过程失败。而本发明中,为了保证粒子的多样性,在重采样过程中添加了基于高斯分布的采样扰动。重采样过程中不是对于权重高的粒子简单的复制,而是从高权重粒子的邻域基于高斯分布的采样,是在采样过程中需要被替换的粒子,是高权重的粒子,α2决定了采样邻域的大小。α2与粒子集中的有效粒子数和系统状态的方差有关:α2与有效粒子数成反比,当有效粒子数Neff减少时,采样邻域需要扩张以保证粒子的多样性。α2与方差ε2成正比,ε2是系统状态的估计精度,当ε2增加时,表示需要更多的不同粒子表示系统的状态,因此采样邻域也随之扩张,反之亦然。图4a-b是一次小目标跟踪仿真实验中粒子的分布图,其中红色圆圈表示的是小目标的真实位置。图4a中,在采用直接复制方法进行重采样时,粒子始终没有逼近目标的状态。而4b显示,在添加了扰动增强粒子的多样性后,粒子分布覆盖了真实的目标位置。

本发明在30帧仿真产生的信噪比SNR=6.02dB的光电图像序列中进行机动小目标跟踪实验。实验结果表明,由于改进重采样算法增加了基于高斯扰动的扩散改善了粒子的多样性,解决了粒子样本空间崩塌的问题,因此,采用基于高斯分布扰动的重采样算法粒子滤波算法在小目标的跟踪过程中,在不增加计算量和存储量的条件下,降低了跟踪误差,提高了跟踪精度。在对粒子滤波,改进重采样粒子滤波算法进行100次蒙特卡罗仿真实验,以跟踪的估计值与目标位置真实值之间的平均均方根误差RMSE作为跟踪精度的衡量标准,结果表明,和粒子滤波相比,改进重采样粒子滤波算法跟踪精度提高了40%,如图5所示。另一方面,从计算量角度来看,尽管增加了基于高斯扰动的扩散过程,但是由于粒子的收敛速度加快,改进算法的执行时间和系统重采样算法接近,只增加了0.05秒。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1