宋光彦
摘 要:随着当前计算机性能的不断提高,粒子滤波算法日益受到人们的关注,因为其在非线性、非高斯系统和状态滤波等方面具有独到的优势,也被广泛应用到运动目标跟踪研究当中。
关键词:粒子滤波图像信号目标跟踪
中图分类号:TP301 文献标识码:A 文章编号:1674-098X(2012)6(a)-0031-01
1 粒子滤波算法描述
粒子滤波的思想基于蒙特卡洛方法,它是利用粒子集来表示概率,即通过随机抽取的加权粒子来代替状态的后验概率分布,这是一种顺序重要性采样法。当随机采取的粒子数量时,结果也就无限接近于实际的状态后验分布。因其在非线性、非高斯系统表现出来的优越性,粒子滤波已经成为视频监控、图像处理、生物测定、金融数据等领域的研究热点。
1.1 初始化
图像特征是表征一个图像最基本的属性,是图像分析的分布重要依据,它分为自然特征和人工特征。被跟踪的运动目标要具有一定的先验特征,如目标的颜色分布特征、灰度边缘特征、纹理、光谱等。我们可以根据实际的需要,选择不同特点的先验特征来描述粒子滤波中每个粒子的初始状态,其决定着滤波的先验概率形式,初始权重取1/Ns。值得注意的是粒子数的选取与跟踪的实际要求有关,粒子数越多,跟踪就越稳定,精度也就越高,但同时计算量也会变得越大。
1.2 系统状态转移
系统状态转移,是指运动目标状态随时间的更新。需要通过系统模型中的状态方程来描述其状态转移关系。布朗运动模型、匀速运动模型和匀加速运动模型是处理图像跟踪中的有三种比较普遍的数学模型。布朗运动模型也被叫作随机游走模型,其目标方程为:xk=Axk-1+Bjk-1,其中,A,B为常数,xk为目标在k时刻的状态,jk-1为归一化噪声量。匀速和匀加速运动模型的目标方程采用高阶自回归模型,其方程为:ck=Ack-2+Bck-1+Cjk-1,A、B、C均为常数。
1.3 系统观测
系统观测是指在通过状态转移方程对目标状态的传播进行“假设”后,用所得的观测量对其进行验证。使用观测量对系统状态转移的结果进行验证,实际上是通过建立似然模型,计算在前一个过程中生成的粒子与实际情况之间的相似度。其目的是观测每个粒子所代表区域的特征与目标模板特征之间的相似程度,相似度越小的粒子赋予的权值就越小,反之权值越大。
1.4 后验概率的计算
后验概率是指在得到“结果”的信息后重新修正的概率,后验概率的计算要以先验特征为基础,在此采用加权准则来计算后验概率,这种准则要求粒子根据自身权值的大小来决定其在后验概率中所占比例的多少。
1.5 重采样
对于重采样的目的,是为了解决在传播过程中粒子集合发生的退化现象。如果发生了退化,会使许多粒子的权重变得很小,导致大量的计算浪费在小权值粒子上,需要通过对后验概率密度进行再采样,去除权值小的粒子,保留权值大的粒子。
2 粒子滤波算法的仿真
前面详细描述了基于粒子滤波算法各模块的具体功能,下面我们对粒子滤波性能进行仿真实验。为了验证的方便我们使用MATLAB进行仿真验证,MATLAB版本使用的是2008a。采用如下的一个简单一维系统模型进行仿真:
状态方程为
;
观测方程为,其中rk和qk分别表示系统噪声和观测噪声。
通过实验仿真结果表明粒子滤波跟踪的误差值较小,该算法性能有效可靠。
3 粒子滤波跟踪算法的仿真
3.1 算法的基本流程
在视频序列的跟踪中运用粒子滤波算法,首先对粒子进行初始化,设定粒子数Ns,选择运动模型,然后再进行粒子滤波的计算。
3.2 算法的仿真结果
在MATLAB环境下建立运动目标检测跟踪的模型,然后采用walk.avi视频进行平移空间跟踪测试,图1是截取视频的第11,28,42和70帧的实验跟踪结果。
跟踪实验结果表明,基于粒子滤波算法的运动目标跟踪,可以有效的跟踪到运动的目标区域,有很好的应用价值,值得进一步推广。
4 结语
本文主要研究了运动目标跟踪中的粒子滤波算法,详细论述了粒子滤波的理论基础和算法过程,最后在MATLAB平台上对粒子滤波跟踪算法进行了仿真实验,实验结果表明此算法可以很好的运用于运动目标跟踪。
参考文献
[1] 万缨,韩毅,卢汉青.运动目标检测算法的探讨[J].计算机仿真.第23卷,第10期,221-226,2006.
[2] 徐方明,卢官名.基于改进surendra背景更新算法的运动目标检测算法[J].山西電子应用,2006,5:39.
[3] 伏思华,张小虎.基于序列图像的运动目标实时监测方法[J].光电技术,2004年3月第30卷第2期.