基于双FPGA 的多目标跟踪算法研究
2015年8月28日 16:58 作者:刘旭东 吉林省经济管理干部学院 吉林长春刘旭东 吉林省经济管理干部学院 吉林长春 130021
【文章摘要】
多目标跟踪系统的精度和实时性一直是目标跟踪领域的主要研究问题。本文以双FPGA 为主处理芯片,对卡尔曼滤波和粒子滤波这两个常用的滤波算法进行有机结合,分别利用各自的特点对目标进行跟踪处理。通过两片FPGA 相互配合对多目标进行实时跟踪。
【关键词】
FPGA ; 卡尔曼滤波; 粒子滤波; 多目标跟踪
中图分类号: TP391 文献标识码:A
0 引言
随着目标跟踪背景的复杂程度增大以及数字技术的快速发展,对于在干扰背景下雷达的多目标跟踪能力要求越来越高。多目标跟踪技术已经在军事、通信、卫星导航、遥感等领域中得到广泛地应用,而多目标跟踪的核心为滤波算法。如何提出性能更好的适应各种线性、非线性滤波算法,用来应对实际系统的非线性、非高斯问题,是本领域研究的热点和难点所在。本文以两片FPGA 为处理器核心,对卡尔曼滤波算法和粒子滤波算法进行融合,使这种新的算法更能对复杂环境下多目标进行有效的实时性跟踪。
1 滤波算法的FPGA 实现
多目标跟踪就是对目标运动参数,如位置、速度、加速度及目标分类特征进行识别和跟踪,将接收机所接收到的量测数据分解和估计,最终形成每个目标的运动轨迹。在整个系统中,滤波处于至关重要的地位,滤波效果好坏直接影响整个系统的跟踪成败。所谓滤波是指从当前和过去的观测值来最优估计信号的当前值;滤波理论就是在对系统可观测信号进行测量的基础上, 根据一定的滤波准则, 对系统的状态或参数进行估计的理论和方法。
由于在滤波过程中需要存取和计算大量的状态数据,这就要求跟踪系统中的主处理芯片要有很快的运算速度和很大的存储空间。与此同时主处理芯片和外围电路还要有数据进行通信,这就要求主处理芯片要有很强大的接口通信能力才能保证目标跟踪的实时性。Spartan-3A 型FPGA 是xilinx 在SP3 基础上,针对用户对丰富I/O 的需求推出的I/O 优化FPGA。SP3A 的优势在于具有同系列FPGA 中最大的I/O 密度,能支持最多的I/O 标准等, 因此,它是多目标跟踪主处理芯片的理想选择,本设计中所有的滤波算法均采用的Spartan-3A 型FPGA 实现。
对于多目标跟踪系统来说,滤波算法有多种,如贝叶斯滤波、最优估计滤波、次优估计滤波等。目前比较成熟和常用的有卡尔曼滤波(最优估计滤波的一种)和粒子滤波。本文就针对这两种滤波方法进行综合处理。
1.1 卡尔曼滤波(Kalman Filter,KF)
卡尔曼滤波是用状态空间法描述系统的,由状态方程和量测方程所组成。卡尔曼滤波用前一个状态的估计值和最近一个观测数据来估计状态当前值,并以状态变量的估计值的形式给出。
假设某系统k 时刻的状态变量为Xk, 状态方程和量测方程表示为
( 1)
( 2)
其中,k 表示时间,这里指第k 步迭代时,相应信号的取值;输入信号ωk 是一白噪声,输出信号的观测噪声vk 也是一个白噪声,输入信号到状态变量的支路增益等于1 ;A 表示状态变量之间的增益矩阵,可以随时间发生变化;C 表示状态变量与输出信号之间的增益矩阵。其信号模型如图1 所示。当状态方程中时间变量k 用k-1 代替,得到
( 3)
( 4)
其中,Xk 是状态变量;ωk-1 表示输入信号是白噪声;vk 是观测噪声; yk 是观测数据。
图1 卡尔曼滤波的信号模型
图2 卡尔曼滤波的FPGA 算法流程
卡尔曼滤波的在FPGA 中的算法如图2 所示。其中,计算当前协方差和计算滤波器的增益这两步是在一个FPGA 中实现的,而后验状态估计,后验误差协方差估计是在另一个FPGA 中实现的,这样两个FPGA 可以在同时进行一个算法的计算和存储,可以提高实时性。
对于线性高斯随机系统,卡尔曼滤波能获得后验概率密度函数的精确解析解。但在部分情况下获得精确的后验概率密度函数是不可能的,这就需要进行各种近似次优估计。并且由系统的可观测性差、状态空间模型的线性程度低,也可导致了卡尔曼滤波算法在收敛精度及收敛时间上往往满足不了要求。为了解决这个问41
消费警示
Consumer warning
质量管理
题Gordon 等人将重采样算法引入到序贯重要性采样中,提出序贯重要性重采样算法,从而使这一技术趋于完善,序贯重要性重采样算法也是各种粒子滤波算法的基础相比于传统的卡尔曼滤波及其改进方法,粒子滤波可以在非线性非高斯环境下获得良好的性能,当粒子数足够多时,其估计可逼近最优解。
1.2 粒子滤波(Particle Filter,PF)
粒子滤波是一种基于蒙特卡罗方法(Monte Carlo Methods,MCM) 和递推贝叶斯估计的用于非线性、非高斯系统的滤波方法。粒子滤波的基本思想是:首先依据系统状态向量的经验条件分布,在状态空间抽样产生一组随机样本集合,这些样本集合称为“粒子”;然后根据观测值不断地调整粒子的权重大小和样本位置;最后, 通过调整后的粒子的信息修正最初的经验条件分布,估计出系统状态和参数。算法如图3 所示。
一般情况下,对于非线性、非高斯系统描述如下:
( 5)
( 6)
其中Xk ∈ Rn 表示k 时刻系统状态, Yk ∈ Rn 表示量测,Vk ∈ Rn,Wk ∈ Rn 分别为独立同分布的系统噪声和观测噪声序列。状态空间模型是描述动态系统的模型,隐含时间为白变量,在多目标跟踪问题中,状态向量包含了目标动力学特征参数,比如其在坐标系中的具体位置和某个方向上的速度值。该算法是一种递推滤波算法,原则上可以用来估计任意非线性、非高斯随机系统的状态和参数,有效克服了KF 滤波算法的缺点。
在粒子滤波过程中存在粒子退化问题,为了解决这处问题,可以采用重采样的方法进行初步解决。但这样将产生更多的计算量,使主处理器负担加重,从而影响系统的时实性。粒子滤波的FPGA 算法流程如图4 所示。
为了彻底解决这个问题,可以使用双FPGA 的处理形式,两片FPGA 芯片采用并行操作的模式,一片主要用来处理卡尔曼滤波的处理过程、粒子滤波的重采样过程及双芯片之间的通信,另一片主要完成粒子滤波的主要运算过程,程序流程如图5 所示。这样不仅可以根据信号的具体情况进行不同滤波方法切换;还可以充分利用资源,同步运行两种滤波方式,解决更复杂的非线性、非高斯系统。在一些机动多目标跟踪系统中,系统需要随时可在各种模式间切换,两个FPGA 相互配合,可保证系统对多个目标的实时跟踪。
图 3 粒子滤波器的信号模型
图4 粒子滤波的FPGA 算法流程
3 仿真对比
仿真过程中仅取前100 帧图像作为参考,为实现简便,设系统噪声和测量噪声均为零均值的高斯白噪声。
图5 FPGA 滤波算法程序的总体流程
图6 卡尔曼滤波及粒子滤波仿真结果
仿真结果如图6 所示,实心圈构成的轨迹是目标的实际运动轨迹,空心圈构成的轨迹是算法估计的运动轨迹。从图中可以看出,对于每个目标,滤波算法估计的运动轨迹与实际目标运动轨迹的差值很小。在目标运动变化过程中,即使存在很大的加速度,滤波效果也能达到预期要求,完全满足多目标跟踪的目的。
4 总结
本文是在FPGA 为主处理芯片的基础上,设计并实现了应用于复杂环境下多目标跟踪系统的算法,该算法能满足对多目标检测及跟踪的后续处理工作,仿真结果表明能够达到预期目标。如果需要进一步提高本系统的信号时实时处理速度,可以在两片FPGA 处理具体信号之前,再加入一片DSP(TMS320C6416)来进行信号的预处理,这样可以更好的分辨信号的特性。本算法的系统如增加USB 形式的输出接口,将会有很广的市场应用前景。42
消费警示
Consumer warning
质量管理
【参考文献】
[1] 刘刚. 多目标跟踪算法及实现研究[D]. 西安: 西北工业大学,2003.7
[2] 丁玉美. 数字信号处理[M]. 西安: 西安电子科技大学出版社,2003.12
[3] 徐林忠. 基于粒子滤波和卡尔曼滤波的复杂场景下视觉跟踪[D]. 杭州: 浙江大学.2008.3:29-32
[3] A.E.Abdel-Hakim, A.AFarag. A SIFT Descriptor with Color Invariant Characteristics. IEEE Computer Society Conf.on Computer Vision and Pattern Recognition.2006:1978-1983.
[4] 邓文坛. 基于FPGA 实现的粒子滤波算法研究[D]. 北京: 北京交通大学,2008.6:7-17
[5] Zawar S. MalaneyR.A. Particle F i l t e r s a n d P o s i t i o n T r a c k i n g i n W i - F i N e t w o r k s . V e h i c u l a r T e c h n o l o g y C o n f e r e n c e 2 0 0 6 . IEEE63rd.2006,2:613-617.
[6] 吴川, 杨冬, 郝志成. 基于粒子滤波的彩色图像跟踪[J]. 光学精密工程.2009.10:2542-2546
[7] Czyz J, Ristic B, Macq B.A particle filter for joint detection and tracking of color objects .Image Vision Computing,2007,25(8):1271-1281.
[8] 王婷婷. 粒子滤波在目标跟踪中的应用研究. 太原: 中北大学.2009.3:32-40
[9] Xiong X, Navon I M. Ensemble P a r t i c l e F i l t e r w i t h P o s t e r i o r G a u s s i a n R e s a m p l i n g . A r t e c h House.2005:60-70.
[10] 冯洋. 多目标跟踪的数据并联算法研究[D]. 西安: 西安电子科技大学,2008.9:25-30
【作者简介】
刘旭东(1978-),男,吉林省长春市人,副教授。博士研究生,主要研究方向:光电传感与光电探测技术。