一种基于双向鉴别信息的粒子滤波跟踪方法

2018-06-21 06:30刘晓华付秀华田野黄盛锋舒伟平
关键词:像素点双向矩形

刘晓华,付秀华,田野,黄盛锋,舒伟平

(1.长春理工大学 光电工程学院,长春 130022;2.广东光阵光电科技有限公司,东莞 523660)

基于视频图像序列的目标跟踪是计算机视觉领域中的一个热点问题,广泛应用于安全监控、虚拟现实、机器人应用、生物医学等领域[1]。目标跟踪面临的最大问题是目标所处的复杂环境使得估计目标的状态成为一项非常困难的任务:遮挡、光照和以及姿态的变化都将严重影响跟踪的效果[2]。

为了解决或部分解决这些难点,国内外的研究人员提出大量的跟踪算法。根据跟踪方法的不同,大致可以分为三类:基于目标模式搜索匹配的跟踪方法、基于分类的跟踪方法和基于滤波理论的跟踪方法[3]。基于目标模式搜索匹配的跟踪方法将目标跟踪转化成一个模式匹配寻优问题,以Mean-Shift跟踪算法为代表[4]。其优点是收敛速度快,可用于实时跟踪,但该方法无法适应跟踪对象的外形变化,跟踪效果一般。基于分类的跟踪方法将目标跟踪转化成一个前景和背景的两分类问题。以用于人脸跟踪(检测)的AdaBoost方法为代表[5]。这类方法在使用前需要对大量正负样本进行训练来构造分类器,不能满足实时跟踪的需要。基于滤波理论的跟踪方法将目标跟踪转化为一个在贝叶斯理论框架下已知目标状态的先验概率,通过获得新观测值后求解目标状态最大后验概率的过程。以kalman滤波[6,7]和粒子滤波为代表[7]。kalman滤波只能处理线性单高斯单模态情况下的跟踪问题。而粒子滤波没有任何特殊要求,适用于各种非线性、非高斯的运动目标跟踪,精度可逼进最优估计,因此成为目前视频跟踪方法中的主流方法之一。

后续还有众多学者对粒子滤波进行了深入研究,针对其各个模块如观测模型、动态模型、重要性函数等提出了一系列改进的跟踪算法[9-11],取得了较好的跟踪效果。但是粒子滤波跟踪方法依然存在一些不足之处。目前的跟踪算法对目标的描述都局限在一个目标矩形框内,但是随着时间的推移,目标和背景都会随之发生改变,如果不考虑目标矩形框附近的背景变化,仅仅对目标矩形进行更新,很可能会导致模型和真实的概率分布发生偏移,这种偏移不断累积,最终导致跟踪失败。

为了解决这个难题,需要设计一种新的机制,能够同时反应目标和背景的变化,因此提出一种基于双向鉴别信息的粒子滤波目标跟踪方法。首先在视频图像序列的第一帧中,同时给目标和背景建立模型。然后以粒子滤波为跟踪框架,对每个粒子进行操作时,采用基于扩展的局部不变特征分别描述目标区域和背景区域。最终通过目标和背景的双向鉴别信息,获取目标的跟踪结果。由于每个粒子能够提供更多的信息,并有效的考虑目标和背景的差异,因此此方法在不需要太多数目粒子的条件下依然可以达到很好的跟踪效果,特别是对目标与背景不易分离的视频序列具有良好的鲁棒性,跟踪结果更加准确。

1 目标和背景同时建模

首先通过某种摄像工具对目标进行视频拍摄,得到目标的视频序列图像{Pn(x,y)|n=1,2,…N}。不同于普通的处理模式,在第一帧图像上同时对目标和背景进行建模。通过手工的方式选择包含跟踪目标的一个矩形,记为A(x,y),矩形大小为w×h。然后以目标矩形A(x,y)的中心像素(x0,y0)为中心,再选择一个大小为(2w)×(2h)的矩形,这个矩形区域明显面积更大且完全包含了目标矩形A(x,y),记属于这个矩形区域且不属于目标矩形A(x,y)的区域为B(x,y)。用区域B(x,y)表示跟踪目标附近的背景信息。如图1所示,图像上有两个矩形框,较小的矩形框表示目标矩形,属于较大的矩形区域且不属于较小矩形区域的部分为背景区域。

传统的粒子滤波跟踪方法里面只使用目标矩形A(x,y)的信息,不考虑其他相关信息。这里不仅对目标矩形A(x,y)进行建模,也使用周围的背景信息B(x,y)。同时采用目标和非目标(即背景)信息,可以有效的鉴别双方的差异信息,得到更好的跟踪效果。

图1 目标和背景示意图

2 基于扩展的局部不变特征描述

传统的粒子滤波框架下,采用颜色特征对目标进行建模。但是如果目标矩形A(x,y)和背景区域B(x,y)拥有相近的颜色分布,则提取的颜色特征的鉴别性能大大下降,不利于后续跟踪。这里借鉴了局部二元模式描述子的思想,通过颜色比对结果而不是简单的颜色分布信息进行编码,下面以目标矩形A(x,y)为例,说明具体步骤。

(1)将目标矩形A(x,y)上平均分成面积相同大小的100个区域,然后在每个区域随机选择一个像素点作为特征点,记为{(x1,y1),…,(x100,y100)}。

(2)采用扩展的局部特征描述方法分别对每个特征点进行特征描述,下面任取一个特征点(xn,yn)为例进行说明。在A(x,y)上,以(xn,yn)为中心在A(x,y)选择其四周紧邻的8个像素记为{(x1,y1),…,(x8,y8)}作为该点的对比像素,然后进行第一个模式比对:

其中,m∈{1 ,2,…,8}表示像素点顺序号,t1表示第一个差异阈值,取10为值,ρ1(m)表示像素点(xm,ym)在第一个模式下的编码。可以看到第一个模式表征颜色比对差异较小时的编码。最终8个像素点会获得一个8位的二进制数{ρ1(1),ρ1(2),…,ρ1(8)},将其转化为十进制数所得的值即为像素点(xn,yn)的在第一个模式下的特征值,记为FT1。

接下来进行第二个模式的比对:

其中,t2表示第二个差异阈值,取30为值,ρ2(m)表示像素点(xm,ym)在第二个模式下的编码。可以看到第二个模式表征颜色比对差异较大时的编码。同样8个像素点会获得一个8位的二进制数{ρ2(1),ρ2(2),…,ρ2(8)},将其转化为十进制数所得的值即为像素点(xn,yn)的在第二个模式下的特征值,记为FT2。

最后进行第三个模式的比对:

其中,ρ3(m)表示像素点(xm,ym)在第三个模式下的编码。可以看到第三个模式表征颜色比对差异适中时的编码。同样8个像素点会获得一个8位的二进制数 {ρ3(1),ρ3(2),…,ρ3(8)},将其转化为十进制数所得的值即为像素点(xn,yn)的在第三个模式下的特征值,记为FT3。

最终特征点(xn,yn)一共得到一个长度为三的特征向量{FT1,…,FT3}。

对A(x,y)上所有的特征点,都按照上述方法进行特征描述,获得各自的特征向量,把所有的特征向量排列在一起,可以获得一个长度为100×3=300的特征向量{FT1,…,FT300},然后进行归一化得到最终特征向量,记为FT_A。也即完成对目标矩形A(x,y)的特征描述。

通过上述方法可以对背景区域B(x,y)进行特征描述,得到特征向量FT_B。

3 基于双向鉴别信息的粒子滤波目标跟踪

下面以相邻两帧图像第n(≥1)帧和第n+1帧为例,详细说明如何用粒子滤波的思想进行目标跟踪,也即根据第n帧的目标矩形的位置,计算第n+1帧的跟踪矩形的位置。

3.1 目标初始化

为了提高效率,选取粒子数量S=60,每个粒子表示一个跟踪矩形,且第n+1帧的跟踪矩形的大小和第n帧的目标矩形的大小完全相同,所以每个粒子只需要3个参数其中表示跟踪矩形的权重,表示跟踪矩形的中心坐标,上标号表示粒子的序号。

现在已知第n帧的目标矩形A(x,y),中心像素为(x0,y0),以及背景区域B(x,y)。分别按上述基于扩展的局部不变特征描述方法对A(x,y)和B(x,y)进行建模,得到特征向量FT_A和FT_B。

接下来在第n+1帧图像上,以(x0,y0)为中心,随机选取60个位置作为粒子的中心坐标:

其中,ε1,ε2均为[- 1,1]内的随机数,β是一个常数,表示单帧内像素的偏移范围,这里取值50。然后给每个粒子的权重进行初始化,初始权重均设为1S;于是每个粒子的三个参数也即初始权重和位置信息都已经得到。

3.2 双向鉴别信息计算

接下来计算每个粒子代表的跟踪结果和前一帧(即第n帧)的目标矩形的相似程度。通过相似程度给每个粒子赋予不同的权重,使得相似度越高的粒子拥有越大的权值,反之权值较小。下面任取一个粒子为例说明具体步骤。

记此粒子所表示的跟踪矩形为TA(x,y),采用前述的方法可以得到周围的背景区域,记为TB(x,y)。分别按上述基于扩展的局部不变特征描述对TA(x,y)和TB(x,y)进行描述,得到特征向量FT_TA和FT_TB。

然后采用Bhattacharyya系数分别计算它们的相似度,定义如下:

这两个相似度分别代表前后两帧图像之间的目标和背景的相似程度,传统的粒子滤波只使用目标之间的相似度,忽略了背景部分的信息。为了得到更好的跟踪结果,将目标和背景部分的信息融合使用,也即采用双向鉴别信息来计算最终的相似度,定义如下:

其中,λ是调节因子,这里取值0.1。

由于最终相似度的计算是通过目标和背景的信息融合而成,包含了双向鉴别信息,所以比传统的计算方法更准确。反馈到单个粒子上,使得单个粒子能够表征更多的信息,因此此算法在不需要太多数目的粒子的条件下依然可以达到很好的跟踪效果。

接着根据相似度计算当前粒子的观测概率密度其中δ是个常数。然后更新当前粒子的权重:

对于所有的60个粒子都进行上述操作,计算出新的权重,然后再进行归一化得到最终权重{newθsn|s=1,2,…,S}。

3.3 根据双向鉴别信息获得跟踪结果

所有粒子的权重都进行更新后,通过权重对每个粒子所代表的跟踪矩形中心进行加权,可以得到最终的跟踪矩形中心:

跟踪矩形中心信息加上已知的目标矩形大小即可获得目标在第n+1帧图像的位置。

4 实验结果和分析

为了验证此算法的有效性,选择了一些目标跟踪视频对该方法进行实验论证,帧率均为25frame/s。由于此方法采用粒子滤波作为跟踪框架,因此选择了传统的粒子滤波跟踪算法(记为PF)和Mean Shift跟踪算法(记为MS)作为对比。其中PF的粒子数为200。

实验视频中跟踪对象为小区散步的行人,其中该行人经历了被固定物体遮挡和其他行人遮挡两者情况,实验结果如图2所示:序列1是基于双向鉴别信息的跟踪算法的跟踪结果,序列2是使用PF的跟踪结果,序列3是使用MS的跟踪结果。从实验结果可以看到,当跟踪目标从另一个行人后面经过时,新算法能够很好的对目标进行跟踪,跟踪框始终在目标身上;算法PF的跟踪效果较差一些,跟踪结果发生明显偏移;而算法MS的跟踪结果完全失败,跟踪框完成转移到遮挡行人身上,这导致跟踪的目标发生错误,后续跟踪结果完全是错误的。接下来再对目标被固定物体遮挡时的跟踪结果进行分析,从下图可以看到,目标要经过一个小树,期间存在被小树遮挡的情况。新算法基本没受到影响,跟踪框始终在目标身上;算法PF的跟踪效果较差一些,跟踪框明显滞后,跟踪结果发生偏移,继续偏移就会导致后续跟踪完全失败;而算法MS的跟踪结果完全失败,跟踪框完成转移到遮挡物小树身上,这导致后续跟踪结果完全错误。

通过对3种算法的跟踪结果比较,可以看出基于双向鉴别信息的跟踪算法能够在各种干扰下更好地对目标进行跟踪。

图2 三种算法的跟踪效果比较

其中(xi,yi)表示算法输出的目标位置信息,(x0,y0)表示目标的真实位置信息,sum表示目标矩形框的尺寸信息。三种算法的跟踪误差指标如表1所示。

为了更准确的对跟踪效果进行量化,定义一个跟踪误差指标,公式如下:

表1 三种算法的跟踪误差指标

从表1可以明显看到,基于双向鉴别信息的粒子滤波跟踪算法的跟踪效果要明显优于传统的粒子滤波跟踪算法和Mean Shift跟踪算法。

5 结论

针对粒子滤波跟踪方法的不足之处,设计一种新的机制,能够同时反应目标和背景的变化,创造性的将双向鉴别信息加入粒子滤波目标跟踪框架。首先在视频图像序列的第一帧中,同时给目标和背景建立模型。然后以粒子滤波为跟踪框架,对每个粒子进行操作时,采用基于扩展的局部不变特征分别描述目标区域和背景区域。最终通过目标和背景的双向鉴别信息,获取目标的跟踪结果。实验结果表明,此方法在不需要太多数目粒子的条件下依然可以达到很好的跟踪效果,特别是对目标与背景不易分离的视频序列具有良好的鲁棒性,跟踪结果更加准确。

[1]贾云得.机器视觉[M].北京:科学出版社,2002.

[2]Alper Y,Omar J,Mubarak S.Object Tracking:A Survey[J].ACM ComputerSurvey,2006,38(4):13-57.

[3]李培华,序列图像中运动目标跟踪方法[M].北京:科学出版社,2010.

[4]ComaniciuD,RameshV,MeerP.Kernel-Based Object Tracking[J].IEEE Transactions on Pattern Analysis and Machine Intelligence(S0162-8828),2003,25(5):564-577.

[5]Viola P,Jones M.Robust Real-Time Face Detection[J],International Journal of Computer Vision,2004,57(2):137-154.

[6]Yim J,Jeong S,Gwon K,et al.Improvement of Kalman Filters for WLAN Based Indoor Tracking[J].ExpertSystemswith Applications,2010,37(1):426-433.

[7]Isard M,Blake A.Condensation-Conditional density propa-gation for visual tracking[J].International Journal of Computer Vision,1998,29(1):5-28.

[8]谷欣超,刘俊杰,才华.基于Kalman滤波器的运动目标跟踪算法[J].长春理工大学学报:自然科学版,2015,38(5):136-139.

[9]Nummiaro K,Koller-Meier E,Gool L.An adaptive color-based particle filter[J].Image and Vision Computing,2003,21(1):99-110.

[10]Perez P,Hue C,Vermaak J.Color-based probabilistic tracking[C].ECCV 2002:661-675.

[11]WL LU,Okuma K,Little J.Tracking and recognizing actions of multiple hockey players using the boosted particle filter[J].Image and Vision Computing,2009,27(1-2):189-205.

猜你喜欢
像素点双向矩形
双向度的成长与自我实现
降低寄递成本需双向发力
用“双向宫排除法”解四宫数独
基于局部相似性的特征匹配筛选算法
两矩形上的全偏差
化归矩形证直角
基于5×5邻域像素点相关性的划痕修复算法
基于canvas的前端数据加密
从矩形内一点说起
基于逐像素点深度卷积网络分割模型的上皮和间质组织分割