APP下载

一种结合颜色纹理直方图的改进型Camshift目标跟踪算法

2018-04-18初红霞谢忠玉王科俊

西安交通大学学报 2018年3期
关键词:直方图权值纹理

初红霞, 谢忠玉, 王科俊

(1.哈尔滨工程大学自动化学院, 150001, 哈尔滨; 2.黑龙江工程学院电气与信息工程学院, 150001, 哈尔滨)

视频序列中运动目标跟踪问题是计算机视觉领域的研究热点[1]。由于在跟踪过程中存在快速运动、遮挡、变形、光照变化、背景干扰及实时性约束等问题,因此跟踪具有挑战性[2]。MS(mean shift)由于其低复杂度和实时性性能从而在计算机视觉领域得到了广泛应用[3-4]。Comaniciu等通过使用MS迭代计算目标的位置对目标进行跟踪[5]。Bradski等提出实现人脸跟踪和人机界面的Camshift算法[6],虽然该算法可以适应较大规模的变化,但由于只有HSV颜色空间的色相分量可用于表示目标,因此在复杂背景的户外应用中跟踪失败。EMS算法通过估计局部模式和协方差矩阵位置,来近似描述局部模式的形状[7]。Hu等使用空间颜色特征和一个新的相似性度量函数来估计目标大小和方向变化[8]。文献[9]中,基于非对称内核的距离变换被用来适应对象的形状。这些算法在背景复杂、目标与背景颜色接近、运动目标交错、重叠、遮挡等时,会导致瞬间失去某个目标特征,跟踪结果难以令人满意。

在上述Camshift算法中,图像权值使用基于目标色调的颜色概率直方图进行计算,没有考虑候选模型的变化。而Camshift算法中目标尺度和方向是利用图像权值的特征来估计,由于这些矩特征仅依赖于图像权值的计算,只使用CamShift计算的图像权值来估计目标的位置,所以并不准确。而MS跟踪算法中,图像权值是由目标模型中颜色概率与目标候选模型中颜色概率之比的平方根来计算,图像权值的计算比在Camshift算法中更有效。因此,可将MS算法中的图像权值计算方法应用于Camshift算法中,进而提高跟踪的准确性。

为了提高跟踪的准确性,Camshift算法也可以与卡尔曼滤波器(KF)、粒子滤波(PF)结合。然而,KF仅当系统是线性时,协方差矩阵的过程和测量噪声跟踪才是最佳的,在涉及非线性行为时,跟踪鲁棒性很差[10],而PF可以处理非线性非高斯系统[11],特别是在快速运动、完全遮挡和复杂的背景环境下优于传统的KF方法。

综上所述,考虑到仅使用颜色特征检测和跟踪不到颜色与背景相近的目标,本文提出了一种加入纹理特征的改进Camshift算法,该算法利用目标模型与目标候选模型来计算像素的权值和矩特征,进而估计目标位置和方向,同时利用粒子滤波对运动目标的状态进行估计,从而提高目标位置跟踪精度。

1 改进的Camshift目标跟踪算法

改进Camshift目标跟踪算法的优势表现在权值计算方法、运动目标的宽度、高度和方向的估计等方面。

1.1 权值计算

原始Camshift算法的计算只依靠目标模型,而本文改进的Camshift算法中像素的权值采用MS算法中图像权值的计算,其优势在于图像权值随目标大小而动态变化,目标的真实大小离候选区域越近,图像权值越接近于1,即图像权值是目标大小变化的指示因子。图像权值作为目标的密度分布函数,它的权值大小能充分反应其属于目标的概率。

(1)

假定候选目标区域的像素位置为{xi}i=1,…,nh,在当前帧中以y为中心,则候选目标特征值的概率为

(2)

采用Bhattacharyya系数来计算目标模型和候选模型之间的似然性,即

(3)

(4)

计算权值

(5)

得到图像权值后,目标的大小和方向可用密度分布函数和图像权值的矩特征来估计,使用这种图像权值可有效提高跟踪的准确性。

1.2 改进Camshift目标跟踪算法的实现

首先,给出改进的Camshift目标跟踪算法流程,算法框图如图1所示。

图1 改进的Camshift跟踪算法框图

其次,给出改进的Camshift目标跟踪算法的步骤。

(1)计算阶矩特征。在目标候选区域中像素的权值表示其属于目标的概率和所有像素的权值总和。零阶矩可看作目标候选区域中目标的权值面积,即

(6)

在MS跟踪中,目标通常在大目标候选区域中。由于目标候选区域中背景特征的存在,其目标特征的概率要比目标模型的小。因此,在MS权值计算中,增加了目标像素权值,而减少了背景像素权值。通过计算,在跟踪目标的过程中可减少背景特征的影响。

令一阶矩

(7)

二阶矩

(8)

式中:(xi,1,xi,2)为候选区域中像素i的坐标。

(9)

(3)计算目标的长轴、短轴和方向角。通过计算二阶矩,可得被跟踪目标的长轴、短轴和方向角。目标长轴的方向角为

(10)

(11)

图像中目标长轴和短轴的计算式为

(12)

(13)

因为图像权值是由式(5)计算的,其密度分布函数受背景因素的影响,所以目标方向计算式比传统Camshfit算法更准确。

(4)确定下一帧候选区域。为了确定下一帧候选区域,式(11)可改写为方差阵

(14)

假设向量(μ11,μ21)T和(μ12,μ22)T是C0的特征向量,分别表示目标候选区域中目标两个主轴的方向。L2、W2是C0的特征值。

将式(14)中的方差阵使用奇异值分解成

C0=U×S×UT=

(15)

定义方差阵C1来表示下一帧目标候选区域的大小,即

(16)

其中Δd是下一帧目标候选区域的增量。初始目标候选区域的位置由如下椭圆区域来定义

(17)

(5)重复(1)、(2)、(3)、(4)直到收敛,即质心变化小于给定的阈值。

2 改进的Camshift和粒子滤波组合算法

2.1 粒子滤波

粒子滤波的动态系统可用以下状态空间模型表示,即

Xk=fk(Xk-1,vk-1)

(18)

Zk=hk(Xk,ωk)

(19)

式中:Xk为系统状态向量;Zk为量测向量。X0:k={x0,x1,…xk},Z1:k={z1,z2,…zk},后验概率密度函数为P(X0:k|Z1:k),假设初始状态X0的先验分布为p(X0),则状态的后验概率密度(PDF)可用经验分布逼近

(20)

通常,PDF是未知的,这时需要从一个容易采样的重要性分布函数q(X0:k|Z1:k-1)独立抽取N个样本{X0:k(i);i=1,…,N},则状态的PDF逼近为

(21)

(22)

2.2 基于粒子滤波的运动目标状态估计

图2 Camshift算法和粒子滤波算法结合框图

3 实验结果与分析

传统的Camshift算法只使用颜色信息进行计算,当目标和背景颜色比较接近,且两者可能具有相同的直方图,则无法区分目标,从而导致跟踪误差。此外,颜色特征易受光照影响,当光照不稳定时,往往也导致跟踪失败,所以要寻找更好描述目标特征的方法或者将更多的目标特征信息同颜色特征进行融合。当目标和背景颜色接近时,它们一般具有不同的纹理属性[12],因此本文应用融合颜色和纹理两种特征对目标进行跟踪,使目标跟踪的鲁棒性增强。本文选用旋转不变的等价模式LBP(local binary pattern)算子[2]来描述颜色-纹理直方图特征,使计算简单且对全局的灰度变化不敏感,同时对遮挡有较好的鲁棒性。

3.1 颜色纹理直方图的目标表示

当灰度值有小的波动时,传统的特征提取方法LBP对于平滑区域的特征提取不起作用,而改进的LBP可以移除平滑背景而抽取主要特征,从而大大减少了由最小一致模式引起的干扰,而这种最小一致模式主要来源于目标区域中的平滑背景和的噪声。本文采用9种一致模式中的2~6这5种主要模式来表示目标,即

(23)

(24)

U(L8,1)=|s(gp-1-gc)-s(g0-gc)|+

(25)

式(25)表示邻域上有P=8个相邻像素,环形邻域的半径R=1。gc表示邻域关系中的中心像素的灰度值;gp(P=0,1,…,7)为8个周边像素的灰度值;γ2表示具有旋转不变性一致模式的U值最大为2。|a|的值越大,像素值的波动就会越大,但并不影响阈值结果,在实验中,设定|a|值为3。

(26)

3.2 实验与结果

和传统Camshift算法[6]、 基于颜色-纹理直方图的MS算法[2]、EM-shift算法[8]相比较,评估本文改进算法的性能。在实际视频序列上进行实验,算法都在MATLAB 7.10软件环境下运行,改进的算法用3个真实的视频序列进行测试。第一个实验序列是一个轿车序列[13],共501帧,从被跟踪车辆出现的250帧开始,目标较小,有微小的尺度和方向变化,且目标和背景颜色相近,跟踪结果如图3所示。由图3可知,除传统的Camshift算法以外,都能实现跟踪,但本文改进算法由于颜色-纹理直方图和粒子滤波的使用,抽取了目标的主要特征,而抑制了背景特征,定位最精确。由于只基于颜色的Camshift的跟踪算法对本文给出的3个视频都不能实现跟踪,所以文中没有给出跟踪结果。

第2个视频是一个人的运动序列,人脸序列在不同跟踪算法下的跟踪结果如图4所示。由图4可知:对于人体在运动中有颜色相近目标遮挡脸部、快速运动、背景相近、人体旋转、尺度和方向变化;只有本文改进的算法能成功跟踪目标,并适应人脸尺度的变化;基于颜色-纹理直方图MS算法能跟踪目标,但尺度变化时,跟踪失败。传统Camshift跟踪算法和EM算法均跟踪失败或存在误差跟踪。

最后一个实验是在一个复杂的小轿车行驶的序列[13],目标由于几乎被完全遮挡或半遮挡而存在更大的尺度变化。传统Camshift算法[6]、基于颜色纹理直方图的MS算法[2]在165帧车辆被完全遮挡后,跟踪中断, 不能实现有效跟踪,跟踪结果如图5所示。EMS和本文改进的Camshift两种算法在都能跟踪到目标,尤其当遮挡发生时,EMS算法跟踪准确性较差;本文改进的算法能更好估计目标的大小和方向。纹理直方图的使用和粒子滤波对运动目标状态的估计,使本文算法具有较好的准确性和鲁棒性。

(a)基于颜色-纹理直方图的MS算法跟踪结果

(b)EMS算法跟踪结果

(c)本文改进的Camshift算法跟踪结果图3 6辆轿车序列在不同跟踪算法下的跟踪结果

(a)基于颜色-纹理直方图的MS算法跟踪结果

(b)EMS算法跟踪结果

(c)本文改进的Camshift算法跟踪结果图4 人脸序列在不同跟踪算法下的跟踪结果

(a)EMS算法跟踪结果

(b)本文改进的Camshift算法跟踪结果图5 一辆轿车序列在不同跟踪算法下的跟踪结果

表1列出了3个视频序列在不同算法下的平均迭代数。本文所提算法平均迭代数低于其他算法的迭代数,是所有算法中最小的,传统Camshift算法不能跟踪,所以没有给出迭代数,而EMS算法迭代数较大,影响其收敛速度的是协方差矩阵的计算,因为在每次迭代时都要估计协方差矩阵,本文改进算法对每一帧只估计一次,因此比EMS算法快得多。

为了更好地估计算法的有效性,表2列出3个不同视频序列在3种不同跟踪算法下的平均位置误差和每帧成功率,每帧成功率是跟踪结果和目标真实位置之间的重叠面积之比。

表1 3个序列在不同算法下的平均迭代数

表2 不同算法在3种序列的平均中心位置误差和成功率

由于基于颜色纹理直方图的MS算法[2]在跟踪中不能实现尺度变化,而Camshift算法在3个视频的跟踪过程中发生跟踪中断和失败,所以文中只列出了本文算法和EMS算法每帧中心位置误差和每帧成功率,结果如图6、7所示,可知本文改进算法性能明显优于EMS算法,在几种跟踪算法中性能最优。改进算法的每帧成功率达到50%以上,平均中心位置误差低于20%,均满足跟踪系统的要求。由此可知,本文改进算法既保留了传统Camshift算法的简单性和有效性,又具有较高准确性和鲁棒性。

(a)6辆车序列

(b)人脸序列

(c)1辆车序列图6 3个测试序列的中心位置误差

(a)6辆车序列

(b)人脸序列

(c)1辆车序列图7 3个测试序列的每帧成功率

4 结 论

为了提高Camshift目标跟踪算法的准确性和鲁棒性,本文提出了改进的Camshift目标跟踪算法。本文算法使用特征融合的直方图作为目标特征的概率分布,解决了Camshift算法对颜色有特定要求的不足,当背景中存在颜色干扰、目标间颜色接近时,也不会影响跟踪效果,并用新的权值计算模型的矩特征,进而估计目标的位置和方向。算法中使用粒子滤波对运动目标的状态进行了估计,从而解决了目标间遮挡、重叠时误差跟踪的问题。实验结果表明,本文跟踪算法的鲁棒性和准确性均高于传统的Camsfhit、EMS和MS算法。

参考文献:

[1]YANG H, SHAO L, ZHENG F, et al. Recent advances and trends in visual tracking: a review [J]. Neurocomputing, 2011, 74(18), 3823-3831.

[2]NING Jifeng, ZHANG Lei, ZHANG D. Robust object tracking using joint color-texture histogram [J]. International Journal of Pattern Recognition & Artificial Intelligence, 2011, 23: 1245-1263.

[3]WANG J, THIESSON B, XU Y, et al. Image and video segmentation by anisotropic kernel mean shift [C]∥European Computer Vision-ECCV Conference. Berlin, Germany: Springer, 2004: 238-249.

[4]COLLINS R T. Mean-shift blob tracking through scale space [C]∥IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, NJ, USA:

IEEE, 2003: 234.

[5]COMANICIU D, RAMESH V, MEER P. Real-time tracking of nonrigid objects using mean shift [C]∥IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, NJ, USA: IEEE, 2000: 142-149.

[6]BRADSKI G R. Computer vision face tracking for use in a perceptual user interface [J]. IEEE Workshop on Applications of Computer Vision, 1998, q2: 214-219.

[7]ZIVKOVIC Z, KRÖSE B. An EM-like algorithm for color-histogram-based object tracking [C]∥IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, NJ, USA: IEEE, 2004: 798-803.

[8]HU J, JUAN C, WANG J. A spatial-color mean-shift object tracking algorithm with scale and orientation estimation [J]. Pattern Recognition Letters, 2008, 29(16): 2165-2173.

[9]YANG C, RAMANI D, DAVIS L. Efficient mean-shift tracking via a new similarity measure [C]∥IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, NJ, USA: IEEE, 2005: 176-183.

[10] 贲晛烨, 王科俊, 李阳, 等. 交通视频中的Kalman滤波的多车辆跟踪 [J]. 应用科技, 2011, 38(3): 1-5.

BEN Xianye, WANG Kejun, LI Yang, et al. Multiple vehicle tracking algorithm based on Kalman filter in traffic video [J]. Applied Science and Technology, 2011, 38(3): 1-5.

[11] GORDON N, RISTIC B, ARULAMPALAM S. Beyond the Kalman filter: particle filters for tracking applications [J]. IEEE Trans of Aerospace & Electronic Systems, 2003, 19(7): 37-38.

[12] LIU H, SUN F. Efficient visual tracking using particle filter with incremental likelihood calculation [J]. Information Sciences, 2012, 195: 141-153.

[13] 段喜萍, 刘家锋, 王建华, 等. 多模态特征联合稀疏表示的视频目标跟踪 [J]. 哈尔滨工程大学学报, 2015, 36(12): 1609-1613.

DUAN Xiping, LIU Jiafeng, WANG Jianhua, et al. Visual target tracking via multi-cue joint sparse representation [J]. Journal of Harbin engineering University, 2015, 36(12): 1609-1613.

猜你喜欢

直方图权值纹理
统计频率分布直方图的备考全攻略
符合差分隐私的流数据统计直方图发布
一种融合时间权值和用户行为序列的电影推荐模型
CONTENTS
基于BM3D的复杂纹理区域图像去噪
用直方图控制画面影调
使用纹理叠加添加艺术画特效
TEXTURE ON TEXTURE质地上的纹理
基于权值动量的RBM加速学习算法研究
消除凹凸纹理有妙招!