孙新领,张 皓,赵 丽
(1.河南工学院 计算机科学与技术系,河南 新乡 453003;2.山西大学 软件学院,太原 030013)
基于视频的运动跟踪在许多领域有着重要的作用,跟踪应用基于高精度信息,特别是在动态背景的情况下。另外,还需克服遮挡、杂乱背景、对象尺度变化等问题[1]。均值漂移(mean-shift)算法[2-6]是一种常用的跟踪算法,其通过计算连续帧中目标模型和目标候选者的Bhattacharyya系数对目标相似性进行估计,从而实现目标跟踪。其目标模型和候选者的表示主要基于颜色直方图描述。
Mean-Shift算法只利用颜色特征进行跟踪,实际上,为了应对不同的情况,应利用多个图像特征,因为单个特征不能提供不同成像条件下的不变性。为此,学者提出了多种改进的Mean-Shift算法。例如,校正后的背景加权直方图(CBWH)通过减少候选目标计算中背景特征的影响[7],但是,CBWH方法无法处理颜色和光照的变化情况。为减少Mean-Shift算法中光照变化引起的干扰,Ju等[8]描述了通过构造模糊聚类的模糊颜色直方图,其生成的颜色区域的数量取决于目标图像。Stolkin等[9]提出了一种新的基于颜色的跟踪算法,名为自适应背景的跟踪器(ABCshift),它使用贝叶斯概率方法对背景进行建模。Zivkovic等[10]将最大期望算法(EM)与Mean-Shift相结合,提出了EM-shift算法,可同时估计描述局部模式的近似形状和位置的协方差矩阵,但是EM-shift仅使用颜色信息来描述模型,并且这种算法的性能很大程度上依赖于目标表示,当背景混乱复杂时,不能很好地实现跟踪[11]。
缺乏空间信息会导致在某些条件下目标位置的丢失,例如遮挡和光照变化。因此,更准确的目标表示是实现精确跟踪的前提。为此,一些学者使用颜色和纹理的两个加权特征空间来描述对象,通过它们的互补性来确保对目标的位置、尺度和方向变化的准确估计[12]。例如,杨德红等[13]采用局部二值模式(LBP)纹理和颜色特征相结合的LBP-MS算法,以便增强Mean-Shift算法中自适应尺度和方向均值漂移框架内的目标表示。另外,还有学者通过融入一些智能滤波器来提高跟踪精度,应对遮挡情况。例如,Jeong等[14]提出将卡尔曼滤波与尺度和方向自适应MS算法(SOAMS)相结合。Sangale等[15]将粒子滤波与MS算法相结合,提出一种多特征视频序列目标跟踪方法。但是这类方法都存在计算量较大的问题,较难满足实时跟踪的要求。
本文针对Mean-Shift算法的缺陷,采用了一种尺度和方向自适应的Mean-Shift跟踪器,在均值漂移跟踪框架下估计目标的尺度和方向。另外,将LTP纹理特征与颜色特征相结合,进一步增强目标模型的表示,提高目标跟踪准确性。实验结果证明了所提出算法的有效性。
Mean-Shift算法的基本思想就是不断把跟踪窗口中心向样本均值移动使之收敛(重合)的过程。传统Mean-Shift跟踪器中使用颜色直方图来构建目标模型。被跟踪对象的目标模型定义为
需要注意的是,k(x)是一个各向同性的核,它将较小的权重归因于远离中心的像素。目标模型和目标候选者之间的相似性是使用Bhattacharyya系数计算的,该系数定义了两个标准化直方图和(y)之间的对应关系:
尺度方向自适应Mean-Shift跟踪算法使用Bhattacharyya系数来估计目标位置、尺度和方向。当目标区域(在前一帧中)中的颜色分布接近候选区域(在当前帧中)中的颜色分布时,该相似度函数的值较高(接近1)。因此,如果物体及其背景具有显著不同的颜色分布,随着Bhattacharrya系数增加,目标候选者则更有可能捕获当前帧中的实际物体[16-17]。因此,目标模型与候选模型之间的距离为
其中y0是目标在前一帧的位置,ωi可以根据下式计算得到:
Jianhua等开发了一种尺度和方向自适应的Mean-Shift跟踪算法,在均值漂移跟踪框架下估计目标的尺度和方向。已经证明该跟踪器在解决跟踪对象的尺度和方向变化的问题上是有效的[18]。
由给出的目标候选区域中的像素权重值描述了它属于目标的概率。零阶矩M00即为所有像素的权重之和,是对目标区域的估计,表示如下:
每当来自目标像素的权重ω(xi)变大时,估计误差将是显著的,反之亦然。根据Jianhua等的说法,通过以下等式,Bhattacharyya系数可用于调整估计目标区域[18]:
其中c(ρ)是一个单调递增函数。它用于将M00缩小到实际目标比例,可以定义为
在(0≤ρ≤1)时,Jianhua等发现σ的最佳值设置在1和2之间[18]。如果ρ近似取上限值1,则意味着目标候选模型接近目标模型。如果它更接近0,则候选模型与目标模型不同,因为c(ρ)变得非常小并且M00一直扩大,直到它超过目标区域。假设候选区域中每个像素的坐标是(xi,1,xi,2),则候选区域的矩可以定义为
y1的1阶矩与零阶矩的比率描述了其位置,而2阶中心矩描述了目标的形状和方向。使用式(8)(10)和(12)可以重写式为:
要估计跟踪对象的尺度和方向,可以将式(14)转换为协方差矩阵:
使用奇异值分解(SVD)方法,可以将其转换为
在估计当前帧中目标的位置、尺度和方向之后,可以使用式(18)协方差矩阵定义下一帧中目标候选者的大小。
其中Δd用于在下一帧中递增目标候选区域。目标候选区域的初始位置由式(19)椭圆区域给出。
LBP算子在纹理分析和模式识别的研究领域中被广泛应用。LBP是一个高效而简单的运算符,描述了图像局部纹理的空间结构。该方法利用中心像素对每个像素的P个邻居进行阈值化,将阈值化的值乘以二项式权重,并将结果连接起来得到LBP码。最后,将得到的二进制代码分配给中心像素。给定图像中的一个像素,通过将其与其邻居进行比较来生成LBP。
其中:pc表示中心像素的灰度值;pn表示其邻居的灰度值;N表示邻居的数量;R表示邻居的半径。假定图像的尺寸是I×J,则pc的坐标是(0,0),pn的坐标为那么,LBP纹理可以通过构建一个直方图来获得。
其中T是最大LBP码值。在具有均匀外观的图像帧的区域中,中心像素及其邻居的灰度值非常接近。因此,LBP算子对目标的描述不具判别性。Marko等成功修改了阈值策略,使得LBP更具判别性,即通过将式中的LBP算子项sn(pn-pc)替换为sn(pn-pc+a)[19]。为了增强LBP算子的鲁棒性,a的值应该相对小。
局部三元模式(LTP)纹理描述符是LBP的一种改进形式[20]。LTP是二进制模式到三元组模式的一种简单扩展。与LBP一样,考虑帧中心像素周围的3×3邻域,权值设为2n,LTP的数学表达式描述如下:
式中,t表示用户定义的阈值。在LTP方法中,与以中心像素值为阈值的LBP不同,根据预先设置的阈值t对原始图像区域进行三值化,生成具有3个值(1,0,-1)的编码。为使LTP特征在光照及复杂背景下具有鲁棒性,这里设置t=5。将像素x与领域像素pn、中间像素pc和阈值进行比较,小于pn-pc-5记为-1,大于pn-pc+5记为1,范围内取值为0。
为了消除负值,将三元模式转换为两个LBP单元。正数是高LTP(LTPU),负数是低LTP(LTPL)。LTPU是通过将原始LTP中的负值替换为零来生成的,生成LTPL有两步:首先,将原始LTP中的所有值1都替换成0;之后,将所有负值都替换成1。计算用于正和负分量的两个单独的LBP描述符,最后将结果连接起来。类似LBP编码的推导过程,LTP算子的计算过程如图1所示。
图1 LTP计算过程
几种Mean-Shift跟踪算法利用颜色信息来表示目标。虽然时间效率较高,但在考虑非刚性物体时通常会失败。基于目标颜色辨别的均值偏移会受到部分遮挡的影响,尤其是当跟踪对象与相应背景具有相同颜色时。此外,如今大多数相机使用滤镜来调整其白平衡并根据全局图像强度执行一些色彩校正,这会极大地影响准确性。
为了解决这些问题,人们提出了各种类型的扩展。很多学者通过将Mean-Shift与局部方法相结合来改进该过程,或通过引入对象、背景分类处理严重的遮挡。本文使用LBP纹理的一种变体(局部三元模式LTP)来构建基于尺度的自适应Mean-Shift跟踪算法。通过颜色和纹理特征的精确组合,显著增强目标的位置、尺度和方向变化的估计精度,提高在高动态和嘈杂场景中跟踪非刚性物体的准确性。
对于尺度的变化,连续帧中对象的缩小或放大通常是一个渐进的过程。实际上,相邻帧中尺度的突然变化使得跟踪任务非常具有挑战性。因此,本文假设目标大小的改变是缓慢的,并且这种假设在大多数视频中是符合现实的,包括那些具有高动态场景的视频。
本文运用的方法是通过计算从目标模型和目标候选者导出的权重图像来确保移动物体的尺度和方向的估值。在尺度自适应Mean-Shift跟踪算法中,每个像素的权重值表示它属于目标候选者的概率,并且由(7)定义与的颜色概率的比率的平方根。在本文的方法中,可以通过LTP纹理与目标候选区域中的目标模型的密度分布函数的组合来生成这样的权重图像值,即通过LTP纹理和RGB通道描述目标模型和目标候选者(y)。
为了获得目标区域的纹理和颜色分布,本文在式(7)中添加一个纹理分量LTP。因此,其变为u=R×G×B×LTP。前3个维度说明了颜色通道的量化区间,第4个维度(LTP维度)是纹理图案模式的量化区间。
本文方法的具体步骤如下:
步骤1初始化迭代次数k,k→0,设定Mean-Shift算法收敛过程中的最大迭代次数N0为15,两次迭代的最小距离ε为0.1。
步骤2在初始帧中确定目标区域,计算LTP纹理和颜色直方图,得到目标模型,目标的初始化位置为y0。
步骤3在当前帧中,以y0为候选目标的中心位置,计算候选区域的LTP纹理和颜色直方图,得到候选模型。
步骤4计算候选目标区域内的各像素权值ω(xi)。
步骤5迭代计算得到新的窗口中心y1,令距离迭代次数+1;如果距离小于阈值(d<ε)或达到最大迭代次数,则停止迭代,输出当前帧上的跟踪结果,并执行下一步。否则,返回步骤3,继续在当前帧中进行迭代跟踪。
步骤6如果当前帧是最后一帧,则跟踪过程结束;否则,读取下一帧作为当前帧,返回步骤2。
为验证本文算法的有效性,采用3个不同的视频测试算法的性能。从包含真实世界视频序列的PETS标准数据集中选择出乒乓球(Ball)序列,汽车(Car1)序列和滑板(Skateboarding)序列作为测试集。其中,乒乓球序列存在目标快速移动;汽车序列包含了遮挡情况;滑板序列包含了尺度变化情况。
选择传统Mean-Shift算法、EM-shift算法和基于LBP纹理的Mean-Shift算法(LBP-MS)与本文算法(LTP-IMS)进行对比实验。另外,本文选择了RGB颜色作为特征空间,并将其量化为16×16×16位。
所有算法均在Matlab2013a中实现,并在具有Intel@Core i5 2.5GHzCPU和8GB RAM的PC上运行。
首先,为了验证融入纹理特征的有效性,将本文LTP-IMS算法与没有纹理特征的传统Mean-Shift和EM-shift算法进行比较。这3种算法在乒乓球视频上的跟踪结果如图2所示。视频中,乒乓球快速移动,使得它在连续帧之间的位移很大。
从跟踪结果可以看出,Mean-Shift和EM-shift算法都不能跟踪目标,而LTP-IMS算法可以稳定地跟踪目标。这是因为Mean-Shift和EM-shift算法只采用颜色特征,而LTP-IMS算法使用了纹理和颜色特征来描述目标,使得这些特征对图像模糊不敏感。
图2 乒乓球视频上的跟踪结果
在滑板视频序列中的3个帧上,EM-shift跟踪器、LBP-MS跟踪器和本文LTP-IMS跟踪器的跟踪结果如图3中展示。这个视频序列中目标的尺度发生了很大的变化,而且背景较为复杂。
图3 滑板视频上的跟踪结果
可以看出,各种算法在一开始时都能定位目标。但当目标尺度大幅度变化时,EM-shift跟踪器无法跟踪滑板运动员并最终丢失目标。另外,滑板与腿部具有与道路相同的颜色,这导致目标边界的重叠。由于使用了LBP纹理,LBP-MS和LTP-IMS的跟踪效果较好。然而,LBP-MS算法可以跟踪目标,但无法准确确定其尺度和方向,因为其无法处理姿态变化。相比之下,LTP-IMS中采用了一种尺度和方向自适应的改进型Mean-Shift跟踪算法,可以成功实现准确跟踪,能够应对虚假边缘和边界间隙问题。这是因为在目标模型和候选模型之间使用Bhattacharyya系数、零阶矩和校正的2阶中心矩,使得高度、宽度和方向变化的估计非常准确,可准确定位并调整滑板的尺度和方向。
为了评估跟踪算法的跟踪精度,使用中心位置误差(CLE)作为性能指标,它可以测量估计物体的中心位置与实际数据之间的误差,定义如下:
其中:xe和ye表示跟踪结果的中心位置;xg和yg表示实况数据的中心位置。
各种算法在3个视频序列上的平均CLE如表1所示。可以看到,本文LTP-IMS算法获得的跟踪误差最小。对于Ball序列,目标快速移动,使得它在连续帧之间的位移很大。但由于其背景相对简单,所以各种算法的性能都不差。在Skateboarding序列中,背景复杂,且目标与背景颜色存在重叠。为此,仅利用颜色特征的EM-shift算法不能很好地实现跟踪。LBP-MS算法结合了纹理和颜色特征,所以性能比EM-shift算法要好。而本文LTPIMS算法不仅将LTP纹理特征与颜色特征相结合,还估计了目标的尺度和方向,所以获得了最佳性能。
表1 平均中心位置误差(CLE)
表2列出了3种跟踪器在实验序列上的平均迭代次数。LTP-IMS算法的迭代次数略微大于LBP-MS算法,但都比较低。这是因为这些算法都能比较准确地对目标进行建模,因此不需要进行大量迭代来收敛。影响EM-shift跟踪器收敛速度的主要因素是协方差矩阵的计算。对于每次迭代,EM-shift进行估计并运行3次平均移位算法,而LBP-MS和LTP-IMS仅在估计每帧时进行迭代。
表2 各种方法的平均迭代次数
本文在Mean-Shift框架中嵌入LTP纹理特征,构建一种高效且稳定的跟踪器。该特征提取方法不仅适用于动态运动,还适用于外观、姿态和方向变化的复杂情况。与其他跟踪算法进行比较评估,实验结果证明了LTP-IMS算法的优越性。在下一步工作中,将考虑融入字典学习功能以实现随机对象的跟踪研究,提高跟踪器的效率。