全局运动补偿的动态背景下运动轨迹跟踪算法*
2016-08-25王闪,吴秦
王 闪, 吴 秦
(江南大学 物联网工程学院,江苏 无锡 214122)
全局运动补偿的动态背景下运动轨迹跟踪算法*
王闪, 吴秦
(江南大学 物联网工程学院,江苏 无锡 214122)
针对动态背景下,一般跟踪算法存在着被动跟踪的滞后或偏移的问题,提出了一种结合Kalman滤波器的Mean-Shift跟踪算法。对运动矢量进行预处理,得到一个平稳更能反映运动信息的矢量场;利用Mean-Shift搜索算法精确地确定对象位置;此基础上,利用Kalman滤波器算法进行运动估计预测,来确定运动的轨迹。实验表明:与现有的方法相比,该方法可从复杂场景中更准确地对运动对象进行轨迹的跟踪。
全局运动补偿; 压缩域; 轨迹跟踪
0 引 言
近年来,运动对象的轨迹跟踪一直是人们备受关注的多学科交叉课题。主要对象的轨迹跟踪在很多应用中起到非常重要的作用,现在已经应用在很多APP应用中。大部分跟踪算法基于外观特征模板,即先离线或在线学习一个外观模型来描述目标,然后使用该模型在图像区域进行搜索,寻找与外观模型最相似的目标,这种思想比较简易,比较适用于刚性且对象与背景色差相差较大的视频序列[1]。在此基础上Ross D A提出离线学习自适应目标外观变化的外观模型,虽然能适应目标外观的变化,但是没有考虑背景信息,而这些被丢弃的背景信息很可能提高跟踪的稳定性和准确性[2]。现在,除了基于外观模型方法之外,比较常用的运动对象跟踪算法包括基于3D模型的方法、基于活动轮廓模型的方法等[3~5]。其中,Nummiaro K等人采用粒子滤波结合Mean-Shift的方法进行目标跟踪,但是粒子滤波器本身的复杂计算降低了跟踪的实时性。虽然很多跟踪算法被提出,但以上算法都面临一个挑战性的问题,因为在像素域中进行的,所以,会很容易受到光照、遮挡、姿态和颜色的影响。随着视频分辨率的逐渐提高,在像素域研究也越来越受到很多限制。所以,压缩域中的研究慢慢受到重视,文献[6]介绍了一种基于Snake方法的跟踪推理方法来解决车辆遮挡跟踪问题。但是,这些方法只是在监控视频且不太拥挤的情况下相对有效。而离子滤波可以对拥挤的情况有较好的鲁棒性,Hue将离子滤波应用在目标跟踪上,主要优点是可以进行多目标的目标跟踪,但在跟踪过程中易出现偏移的现象。
分析上述文献方法,在针对对象单一、监控视频和具有刚性运动对象的运动轨迹具有较好的效果,但针对背景运动和非刚性物体的运动对象,不能正确地进行运动对象的轨迹跟踪。为了实现较低的时间复杂度和实时性,本文算法在压缩域中进行,并提出了一种基于全局运动补偿的动态背景下的运动轨迹跟踪算法,首先对运动矢量(MV)进行预处理,得到一个平稳更能反映运动信息的矢量场;然后利用Kalman进行平稳滤波和预测,将结果重新作用于检测器,对其进行校正;最后,此基础上利用Mean-Shift搜索算法精确的确定对象位置来确定运动的轨迹跟踪。相比其他算法,本文算法不仅满足实时要求,并且有良好的精度,在针对背景复杂下具有较好的鲁棒性。
1 全局运动参数模型的建立
针对全局运动,需要满足一定的运动变化模型,不同的运动所对应的运动参数也不同,常见的运动参数模型有2—参数模型、6—参数模型和8—参数模型,分别对应为平移投影模型、仿射投影模型和透视投影模型[7,8]。如图1所示。
图1 不同运动模型的形变Fig 1 Deformation of different motion model
由于2—参数平移模型有很大的局限性,不太合适用于复杂背景下的跟踪,所以在本文中使用的是6—参数仿射模型,虽然6—参数仿射模型没有8—参数透视模型灵活,但是6—参数仿射模型在去除全局运动的研究中应用更广泛。令6—参数仿射模型参数为m,则
M=[m1,m2,m3,m4,m5,m6]
(1)
若在t帧中,一个块的坐标为(x,y),被转换的参考帧的坐标为(x',y'), 则
x'=m1+m2x+m3x,y'=m4+m5y+m6y
(2)
所以,得到v(x,y)为
v(x,y)=(x'-x,y’-y)
(3)
最后将运动模型运用到整个矢量场,求出最后的残差。
2 在动态背景下的运动对象轨迹跟踪方法
在使用6—参数全局运动参数模型的条件下,本文算法的流程图如图2所示。
图2 算法的流程图Fig 2 Flow chart of algorithm
2.1运动矢量预处理
将H.264压缩视频中的运动矢量场归一化为4×4的块,用矢量中值滤波能够消除孤立矢量噪声并且平滑相邻块之间运动矢量的差异。使用滑动窗方法进行中值滤波,首先定义N×N窗函数内各元素之间的差异度
(4)
式中vi和vj为N×N窗内的运动矢量;L为欧几里德距离。将di升序排列映射到vi。最后根据式(5),以排序后的vout作为最后的输出结果,即
(5)
式中cor(v(N+1)/2,v)=‖v(N+1)/2,v‖/(‖v(N+1)/2‖‖v‖),v为平均矢量,p为预设的阈值。
H.264/AVC编码标准采用7种不同的宏块分割尺寸,使得对应都一个单独的参考帧序号和运动矢量。导致提取出来的运动矢量场是一个不规则的稀疏场,不便于运动对象的检测与跟踪,因此,有必要对运动矢量场进行预处理。首先进行运动矢量场的迭代累积,由于得到的运动矢量场含有噪声,需要进行滤除。为减轻运算,将运动矢量的X和Y方向的绝对值和作为运动矢量的幅值,即
(6)
2.2Mean-Shift搜索算法
Mean-Shift 检测对象区域采用运动矢量方向角作为特征空间,对视频序列中的运动对象进行跟踪。在0°-360°的范围内对矢量方向角量化,以20°作为步长,分成18个量化等级。最终得到的矢量方向角直方图覆盖整个运动对象的运动特征。运动对象所对应的运动矢量分布的区域的中心位置记为x0,运动对象的运动矢量对应的块的位置记为{xi},i=1,2,…,n。如果对象模型表示成m个值的直方图,其形式为q={qv},v=1,2,…,m,则对象运动矢量分布
(7)
式中函数o:R→{1,2,…,m} 为xi在直方图中的索引映像,δ[·]为Delta函数,C为归一化系数。一般地,像素域跟踪对象易受背景颜色影响,但矢量方向角基于运动矢量更加可靠,且不受对象形状变化的影响。为了更好说明靠近对象中心的矢量方向角更可靠,引入核函数估计,式(7)改写成
(8)
式中h为带宽,k(·)为轮廓函数。对目标模型建立特征后,后面的视频序列对应的运动矢量,可能存在目标的区域称为候选区域。首先假定目标的中心位置x,该区域中的矢量方向角对应的位置为{xi},i=1,2,…,n。跟踪过程即首先建立目标模型,然后在候选模型中找一个与目标模型分布最相似的候选模型作为当前帧的目标位置。
2.3卡尔曼滤波器
目标跟踪需要进行校正学习,并预测得到下一帧的位置信息,而其重点是在于对样本的校正,这一部分的计算对实时性的影响起到非常关键的作用。卡尔曼滤波是一种经典的运动预测模型和优化迭代的算法,仅仅只利用当前帧的检测位置信息与前一帧的跟踪位置信息来预测得到当前帧的位置信息,其参数也是迭代得到,需要的空间容量特别的小,其速度非常的快。所以,本文结合卡尔曼滤波来进行下一帧运动对象的预测。卡尔曼滤波可作为一个线性随机的微分方程,由目标方程和状态方程组成进行迭代,即
Xk=AXk-1+BUk-1+Wk
(9)
Zk=HXk+Vk
(10)
式中Xk为第k次迭代的系统状态变量,Uk为第k次迭代时对系统的控制量,A和B为系统参数,Zk为第k次迭代时的测量量,H为测量系统的参数。Wk和Vk分别为过程和测量的噪声。可以基于前一状态而预测出当前的状态
(11)
(12)
(13)
(14)
(15)
3 实验与结果分析
采用标准测试视频序列进行评估实验,视频采用的是YUV4:2:0格式的序列,所有的帧速为30fps和H.264/AVCJMV.18.0进行编码,平台采用AMDAthlon(tm)IIX4 645处理器,主频3.1GHz。为了体现本文提出的算法的鲁棒性和稳定性,在整个实验中采用同样的参数序列,采用标准测试序列Coastguard,Hallmonitor,Stefan,Garden,Foreman和Mobile等序列进行了实验,跟踪轨迹效果分别为图3所示,其中,黑色实线为本文算法的跟踪轨迹,灰色虚线为groundtruth的轨迹。
图3 运动对象轨迹跟踪Fig 3 Trajectory tracking of motion object
图3中,(a)Coastguard视频序列,从中可以看出小船遇到大船时,相机出现突然下移的过程,本文算法依然能正确的跟踪。(b),(d),(e)为非刚性运动目标,本文算法依然可以准确跟踪,其中,(d)在跟踪和分割方面都具有较高的难道。(c),(f)既存在背景的运动也存在其他因素的干扰,本文算法在保证去除背景运动的前提下依然能正确跟踪,以上六种视频序列包含了多种复杂情况,由此体现了本文算法的鲁棒性。为了能体现很佳的效果,对算法进行比较,从精确度(p)、召回率(r)和f值(r)方面进行对比,其定义如下
(16)
(17)
(18)
式中TP为被模型预测为正的正样本(truepositives),FP为被模型预测为负的负样本(falsepositives),FN为被模型预测为负的正样本(falsenegatives)。如图4所示。
图4 准确度、召回率和f值结果对比Fig 4 Results comparion of accuracy,recall rate and f value
其中,图4(a)为运动轨迹的准确度,可以体现跟踪轨迹和真实轨迹的对比,图(b)和(c)分别为召回率和f值的对比,具体计算如式(17)、式(18)所示。从图4可以看出,文献[9]也存在较高的精确度,但在召回率和f值方面与本文算法相差较大,主要原因取决于每帧的跟踪精度。所以,本文算法在路径跟踪方面具有较高的鲁棒性。
4 结束语
本文基于全局运动补偿在动态背景下进行运动轨迹跟踪,提出了一种结合Kalman滤波器的Mean-Shift跟踪算法,从而准确地对运动对象进行轨迹跟踪。然而,同像素域相比,压缩域处理最小单元是4×4块,压缩域丢失一些特征,所以最终的跟踪框会抖动;对于这些缺点的解决,在检测运动对象方面,可以增加运动目标的“特征”,比如运动矢量的幅值,宏块类型等信息,这些也是今后努力的方向。
[1]BlackMJ,JepsonAD.EigenTracking:Robustmatchingandtra-ckingofarticulatedobjectsusingaview-basedrepresentation[J].InternationalJournalofComputerVision,1998,26(1):63-84.
[2]RossDA,LimJ,LinRS,etal.Incrementallearningforrobustvisualtracking[J].InternationalJournalofComputerVision,2015,77(1-3):125-141.
[3]MehmoodK,MrakM,CalicJ,etal.Objecttrackinginsurveillancevideosusingcompresseddomainfeaturesfromscalablebit-streams[J].SignalProcessingImageCommunication,2009,24(10):814-824.
[4]AlliliMS,ZiouD.Objecttrackinginvideosusingadaptivemixturemodelsandactivecontours[J].Neurocomputing,2008,71(10-12):2001-2011.
[5]NummiaroK,Koller-MeierE,GoolLV.Objecttrackingwithanadaptivecolor-basedparticlefilter[J].LectureNotesinCompu-terScience,2002,2449(2):353-360.
[6]KamijoS,NishidaT,SatohS,etal.Automatedbehaviorandstatisticalanalysisfromtrafficimagesbasedonprecisevehicletra-ckingalgorithm[C]∥ProceedingsofIEEE2002the5thInternationalConferenceonIntelligentTransportationSystems,IEEE,2002:920-925.
[7]李庆瀛,褚金奎,李荣华,等.基于卡尔曼滤波的移动机器人运动目标跟踪[J].传感器与微系统,2008,27(11):66-68,71.
[8]聂卫科,朱从光,房鼎益,等.随机布署平面传感器阵列实现色噪声下运动节点跟踪算法[J].传感器与微系统,2014,33(12):141-145.
[9]ZhangK,ZhangL,YangMH.Real-timecompressivetracking[C]∥EuropeanConferenceonComputerVision,Springer-Verlag,2012:864-877.
吴秦,通讯作者,E—mail:qinwu@jiangnan.edu.cn。
Motion trajectory tracking algorithm based on global motion compensation in dynamic background*
WANG Shan, WU Qin
(College of IOT Engineering, Jiangnan University,Wuxi 214122,China)
Dynamic background,general tracking algorithm has problem of passive tracking lag or shift,propose an algorithm which combines Kalman filter and Mean-Shift tracking algorithm.Preprocess motion vector to get a smooth vector field which can reflect movement information very well; using Mean-Shift searching algorithm to determine object position precisely;motion estimation prediction is carried out by using Kalman filter algorithm on this basis,to determine movement track.Experiment shows that this method can track trajectory more accurately from complex scene compared with existing methods.
global motion compensation; compressed domain; trajectory tracking
2016—06—01
国家自然科学基金资助项目(61202312);中央高校基本科研基金资助项目(JUSRP51510)
TP 391
A
1000—9787(2016)08—0137—04
王闪(1990-),男,安徽阜阳人,硕士研究生,主要研究方向为机器视觉与视频编解码。
DOI:10.13873/J.1000—9787(2016)08—0137—04