结合纹理特征的Camshift目标跟踪算法研究
2018-08-10杨磊刘美枝高海党婵娟
杨磊,刘美枝,高海,党婵娟
(山西大同大学物理与电子科学学院,山西大同037009)
运动目标跟踪就是在连续图像序列中根据目标所处的环境,充分利用一个或多个能够表示运动目标的特征,实时搜索感兴趣的目标(包括目标的位置,速度,加速度等)。根据运动目标的描述和相似性度量,跟踪算法包括基于特征匹配、模型、主动轮廓、运动特性、区域的跟踪算法。在目标跟踪过程中,选用较好的目标特征和合适的搜索算法很重要。目标跟踪算法主要从提高搜索匹配的速度和精度两个方面来对运动目标的性能加以提高。
虽然近些年来,目标视频跟踪技术获得了广泛的研究并且取得了很大的进步,但是由于现实场景中各种因素的无规律变化都会影响视频图像中目标跟踪的可靠性和稳定性。比如,常见的图像噪声对跟踪结果的干扰,光照强度和天气变化对跟踪的影响,目标外观变化或者发生旋转,放缩,位移等各种复杂的变化,目标遮挡问题,目标快速运动时跟踪稳定性问题和实时性问题,复杂背景下的跟踪问题,多传感器跟踪等,因此,设计出能够在复杂环境中准确,稳定,有效,快速地跟踪目标的方法,仍然是一项具有挑战性的任务和急需解决的课题[1-4]。
1 Camshift算法描述
CamShift算法是一种连续自适应的目标跟踪算法,是在Meanshift算法的基础上实现的。它利用目标的色彩模型变换,反向投影检索技术,自适应核窗技术实现每一帧之间的快速移动[5-9],结合MeanShift算法在每一帧中实现梯度寻优,跟踪目标质心点,对目标形变具有很好的鲁棒性[10]。
经典的CamShift算法利用感兴趣目标的颜色特征中H分量,建立H分量的直方图模型,进而将H分量的直方图模型转化为色彩概率模型,最终得到反向概率密度投影图。再由MeanShift算法根据反向概率密度投影图和初始搜索窗口的位置,采用迭代方法移动搜索窗口的位置到质心位置,如果移动距离大于设定的阈值,继续迭代,直到搜索窗口的中心与质心间的移动距离小于预设的阈值,或者迭代次数达到设定值,认为满足收敛条件,无需迭代[11]。
表达颜色的色彩空间有很多种模型,常用的有RGB,YUV,HSV模型等。RGB模型常用于显示,YUV模型常面向硬件的,HSV模型最符合人眼对色彩的感知,常用作视频信号的传输。本文主要讨论HSV模型。
HSV模型是根据颜色的直观特性由A.R.Smith在1978年创建的一种色彩空间[12],这个模型中颜色的参数分别是色调(H),饱和度(S),亮度(V)。也被称作六角椎体模型。色调是用角度度量,取值范围是0∘∼360∘,指的是颜色,饱和度指的是色彩的纯度,取值范围为0~1,值越大,颜色越饱和。亮度代表了感受到的光源能量的大小,它的取值是从0到1。
图1 HSV颜色模型
该模型能较好的反映人对颜色的感知,而我们通常采集到的图像是基于RGB模型的,将RGB空间转化为HSV空间的转化公式如下
其中:H代表色调分量,S代表饱和度分量,V代表亮度分量,r,g,b分别代表红色,绿色,蓝色分量。
CamShift算法有效克服了MeanShift算法模型无法更新、核窗宽固定的缺点,能够根据目标角度的变化自适应调节搜索窗口的大小[11]。
计算当前帧窗口的质心位置:
计算该窗口的零阶矩和二阶矩:
再计算参数:
定义下一帧中窗口的长度(l1),宽度(l2)和移动方向θ为:
自此,则完成了对跟踪窗口的自适应调整过程。CamShift算法实现过程如图2所示。
图2 CamShift算法流程图
2 本文算法
在实际跟踪环境中,场景变化一般较大,CamShift算法有时很难保证鲁棒性。当亮度变化过于剧烈,容易导致目标丢失。为了消除光照变化对目标跟踪的影响,常用对光照变化不敏感的特征来降低其影响。经常采用的特征就是纹理特征,它可以提供图像区域的稀疏,平滑,规则性等特性,常用的纹理模型有灰度共生矩阵,小波纹理模型等。这些纹理模型近些年来,在纹理分类,图像检索,人脸分析等领域[13-16]得到广泛的应用。本文采用对光照变化不敏感,计算量小的局部二值特征来描述图像的纹理信息,将感兴趣目标的纹理信息,即局部二值模式(LBP)信息,以概率密度反向投影图的形式与CamShift算法结合,应用到目标跟踪算法中,从理论上分析可以有效解决CamShift算法易受光照强度影响的问题,且能满足跟踪实时性的要求。
2.1 LBP的定义及计算方法
LBP纹理模型是一种用来描述图像局部纹理特征的算子,具有灰度平移不变性和旋转不变性等特点[13],所以近年来在纹理检索、人脸分析等领域有广泛的应用。
其基本原理:定义一个3×3的窗口,Ix为像素点x处灰度值,以a为中心点,它的灰度值为Ia,它的邻域的灰度值为:Ip(p=0,1…P-1),邻域8个点的灰度值分别与中心点的灰度值进行差值比较,以窗口中心点灰度值为阈值对窗口其他像素做二值化处理。统一规定该模式中二进制码的获取方式为,由九点中方向开始,沿逆时针方向依次读取,最后按像素不同位置进行加权求和,得到一个8位的二进制数,就是该窗口的LBP模式,其大小就是该窗口的LBP值,最后用其LBP值代替中心像素点的灰度值。下图是经过LBP(8,1)算子得到的LBP模式的过程如图3所示:
图3 基本LBP算组示意图
将阈值处理结果与一个权值模板对应相乘求和,即可得到LBP值,该中心点的LBP的值为:Ia=LBP(8,1)=(01111010)2=122。在纹理特征提取的过程中,由于LBP算子的窗口是固定的,因而它不会随图像的内容而改变,这样提取出来的纹理特征存在一定的误差,很难满足不同纹理图像的要求。
随后,为了适应不同尺度的纹理特征,Ojala等人[13]不断对LBP算子进行改进和优化,将3*3领域扩展到任意领域,采用圆形邻域代替正方形领域。只要思想如下:在一幅灰度图像上,定义半径为R,邻域内采样像素点个数为P,其中R,P都是大于零,编码方法如下:
图4 几种LBP算子
优化后的LBPP,R算子与固定窗口的算子计算差别不大,两者的主要区别是定义在圆形邻域上的算子可以进行扩展。
由该算子的计算过程知,只要图像中各像素的相对位置保持不变,LBP模式也不变。那么由式(6)得到的LBP算子对任何单调的灰度变化都具有很好的鲁棒性。
2.2 LBP和方差的联合分布
上述的LBPP,R算子只考虑了图像的局部信息而忽略了纹理的另外一个重要特征,即对比度。若要准确地识别出图像的纹理,需要将图像表现出的模式和模式强度结合在一起,常用对比度表征模式强度。通常情况下,对比度的度量使用方差(variance)的定义,也是定义在圆形邻域上:
2.3 LBP直方图
经过LBP编码后的图像,表达了其暗点、边缘等局部特征,但这些特征的分布情况还没有被完全表达,为了表达这些局部特征的空间结构,将编码图分块,并采用上述算子得到纹理图像,按照式(8)统计其纹理谱直方图。
式中,M和N代表图像的尺寸。此时LBP纹理直方图不仅表达了图像的区域特征,而且表达了连接区域特征形成的全局特征。
2.4 本文算法实现
本文采用的纹理信息与色调信息的结合模式。具体操作如下:在转化后的HSV颜色空间中,对其采用对比度均衡化处理。
在此基础上,采用LBP8,1/VAR8,1算子提取图像纹理信息,进而生成纹理信息直方图,将此直方图与H通道直方图分别转化为概率密度反向投影图,将两者的概率密度反向投影图进行与运算,这样做的目的是只保留目标局部二值模式特征的概率密度反向投影,把不运动的与目标颜色非常接近的背景滤除掉。将运算结果图作为目标的纹理概率密度反向投影图,然后与H通道的概率密度反向投影图进行如式(8)所示的加权运算,生成最终的概率密度反向投影图。
图5 改进算法流程图
3 实验结果和分析
本文使用两组视频图像序列分别在光照强度变化和存在相似颜色干扰情况下对本文算法进行验证,视频采集率为每秒25帧。
3.1 环境光照强度变化情况下的跟踪结果及分析
本实验主要研究摄像头视场中,由于光照强度不断变化,导致目标跟踪失效问题。实验跟踪目标初始帧由人工选择(采用矩形框)。为了验证本文所提算法的有效性,分别采用传统Camshift算法和本文改进算法对目标小车进行跟踪,其跟踪结果分别如图6和图7所示。
在图6中,从第89帧到272帧表示在光照强度不断变化情况下进行目标跟踪。第89帧表示场景中存在微弱光线变化情况下的跟踪结果。第89和94帧表示场景中存在局部暗光下的跟踪情况,从第101帧的跟踪结果图知,由于背景中存在局部高光以及误差累积,出现目标跟踪丢失现象,第261帧和第267帧反映的是目标跑出视场后,再次进入的跟踪情况,由图可知从第101帧开始目标跟踪失败。由上面的实验结果知:基于H分量的概率密度搜索出现了跟踪丢失现象,这是因为H分量容易受光照强度变化的影响,这就导致不能更加精确的对目标进行跟踪,使跟踪产生较大的误差,当误差积累到一定阈值时就会致使跟踪偏离,进而导致跟踪失效。
图6 传统CamShift算法跟踪部分帧结果
图7与图6显示了在同一场景下的跟踪结果图。由图6可知,当光线变强时,跟踪过程中误差逐渐变大。图7中,当光照强度变化较大时,跟踪误差明显减小。当背景中存在微弱光线变化干扰时,由第89帧可以看出,改进后的跟踪算法的跟踪误差比图6中第89帧的跟踪误差要小。当背景中存在局部暗光和高光时,由第94帧,第101帧,第261帧,第267帧知,该算法对光照具有鲁棒性,即使目标在第261帧后跑出视场,第267帧重新回到视场后仍然可以很好地进行连续跟踪。这是由于局部二值模式反映的是相邻像素间像素的亮度变化,当图像全局变亮时,局部二值模式值不变,所以可以得到较好的跟踪效果。
图7 改进算法跟踪部分帧结果
3.2 环境存在颜色干扰情况下的跟踪结果及分析
本实验是在室内环境中存在相似色干扰物的情况下,对红色小车进行跟踪。实验跟踪目标初始帧同样由人工选择(采用矩形框)。图8与图9是对同一视频中运动的小车分别采用传统Camshift算法和本文算法进行跟踪,视频中目标小车和红色中性笔的颜色相似,造成颜色干扰。
图8中从第115帧到第249帧对目标小车跟踪效果良好,第340帧到第375帧,目标小车和红色中性笔重合,由于颜色相似,跟踪框逐渐扩大,直到第400帧跟踪狂几乎占满整个视场,目标丢失。这是由于传统的CamShift算法是基于颜色直方图特征的,所以颜色的干扰对算法的影响较大,一旦出现相似颜色干扰物,就无法找回目标,整个跟踪过程就会失效。而采用本文算法的图9在第340帧到第400帧,在目标小车逐渐靠近红色中性笔到与红色中性笔分离的过程中,跟踪并没有受到干扰物的影响,进而反映了本文算法对背景中存在相似颜色的干扰物具有较好的抗干扰性。
图8 传统CamShift算法跟踪部分帧结果图
图9 本文算法跟踪部分帧结果图
4 结束语
本文分析了将颜色特征与局部二值模式特征结合起来的CamShift跟踪算法。基本思想是分别生成的图像H通道概率密度反向投影和纹理图概率密度反向投影,将两者的概率密度反向投影进行相与运算,将运算后的概率密度反向投影图与色调概率密度反向投影图进行加权运算,得到最终的概率密度投影图,然后采用MeanShift算法在概率密度投影图上搜索目标。本文结合局部二值模式特征的跟踪算法能够解决传统CamShift算法易受光照影响的缺点。由实验结果知:相比传统Camshift算法,本文算法对光照强度变化和颜色干扰具有一定的鲁棒性。