罗 航,尹逊青,刘 晨,许 彩
(1.海军装备部驻武汉地区军事代表局,湖北 武汉 430000;2.海装武汉局驻武汉第五军事代表室,湖北 武汉 430000;3.海装武汉局驻武汉第三军事代表室,湖北 武汉 430205)
随着红外成像技术的不断进步,红外序列图像中目标感兴趣区的跟踪具有重大的实际意义,已成为国内外研究的热点,得到了广泛的关注[1]。目前典型的跟踪方法主要分两类:确定性方法和统计性方法。其代表算法分别是Mean Shift算法和粒子滤波算法。由于具有较高的实时性和准确度,Mean Shift算法被广泛运用。然而,红外图像序列成像对比度低,背景与目标之间灰度差别不大,此时仅使用灰度特征的核密度估计很难实现对目标的准确跟踪。另外,图像中可能包含了目标、背景以及载体平台之间的复杂的运动关系,目标在帧间相对位移较大,所需的搜索非常耗时,在复杂条件下,其跟踪结果往往出现偏差,甚至跟踪失败。
为了解决上述问题,本文在分析Mean shift 理论的基础上,研究Mean shift算法的跟踪原理及不足,重点探讨将边缘特征与灰度特征进行融合跟踪的问题,提出了基于特征融合的Mean shift跟踪算法。经试验验证,该算法提升了Mean shift算法在运动平台下红外目标跟踪应用领域的有效性、准确性。
Mean shift算法是一种基于密度梯度的无参估计算法。该算法无需对整个区域的概率密度进行估计,只需利用核函数对当前点的梯度进行估计即可进一步导出均值平移的步长。无参密度估计一般也称非参数估计技术.常见的非参数估计技术有以下几种:直方图法、最近邻域法及核密度估计法。而核密度估计方法是目前最通用的无参密度估计方法。相对于直方图法,它多了一个用于平滑数据的核函数。下面从核函数的定义着手,研究核密度估计方法、均值平移向量器求取等关键问题,来说明Mean shift算法实质上就是利用核密度估计迭代求取均值平移向量的过程。
根据核函数定义及性质,得知核密度估计,对于一组n个一维空间的数据点的集合S={xi}i=1,2,…,n,其未知概率密度函数为f(x)。取核函数Kh(x) ,那么在x点处的密度可按下式进行计算:
(1)
对应于(1)式,其密度梯度估计为:
令g(x)=-k′(x),则上式可化为:
将g(x)作为轮廓函数;核函数G(x)按上面定义为:G(x)=g(‖x‖2),则核函数G(x)称为核函数K(x)的影子核。上式分成两部分,第二部分可写成:
(2)
式(2)称为Mean shift向量。为了更好地理解Mean shift向量的含义,不妨设g(x)=1,权重wi设为1/n,则上式可写为:
(3)
给定一个初始点x、核函数G(x)及允许误差ε,Mean shift算法循环地执行下面三步,直到条件满足:
1)计算Mean shift向量mh,G(x);
2)把mh,G(x)赋给x;
3)如果|mh,G(x)-x|<ε,结束循环,否则,继续执行1)。
针对标准Mean Shift算法的不足,国内外研究人员进行了大量的研究工作并提出了一些解决办法,取得了一定的进展,但运用上仍有很大不足。由于红外图像特征空间是灰度空间,比可见光图像颜色空间的信息量更少,若只用灰度直方图来描述目标模型,很容易丢失目标。因此,有必要探讨基于特征融合的Mean shift跟踪问题。本节将从提升目标描述模型的鲁棒性出发,探讨基于边缘特征与灰度特征融合的目标建模问题,并通过引入kalman滤波来解决目标运动估计、抗遮挡设计等问题。重点研究互信息量与目标尺寸之间的关系,并完成基于kalman-Mean shift特征融合的自适应跟踪算法的设计。
边缘特征,是目标的重要特性之一,在目标识别、提取、分割等领域均应用广泛。边缘特征的提取,通常依赖于边缘检测局部算子(如Roberts算子、Sobel算子、LoG算子和Canny算子),主要考察图像每个像素在某个邻域内灰度的变化。设一幅(帧)红外目标模板图像I为f(x,y),分别使用水平、垂直的Sobel算子对图像I进行边缘提取,生成边缘图像I1和I2。由边缘图像I1和I2,原图像I中每个像素Pij对应的梯度幅值、梯度方向分别为:
(4)
(5)
为了对目标边缘特征进行量化,将θ(i,j)的取值范围分成n等份。n的值可以根据需要选取,当然n越大,计算精度越高,计算量也增大[3]。若取n=16,那么方向角各量化区间为:[-π/2+kπ/16,-7π/16+kπ/16],其中k=0,…,15。若 [-π/2+kπ/16,-7π/16+kπ/16],那么θ(i,j)对应的量化值θij=k。
根据上述图像边缘特征的提取及量化过程,红外目标模板图像I边缘梯度方向量化为n级。同样,该图像各像素的灰度Iij则可量化为m级。由此,可根据图像的边缘方向信息与灰度信息构建边缘-灰度联合直方图p(u,v)来描述红外图像目标模型。灰度-边缘联合直方图就是统计各个灰度-边缘梯度方向在图像中出现的概率。红外目标模板图像I中第u=0,1,…,m-1;v=0,1,…,n-1;各灰度-边缘梯度方向出现的频率为:
(6)
定义函数b1:R2→{0,1,…,m-1}是位于xi处;函数b2:R2→{0,1,…,n-1}是位于xi的像素向灰度量化索引的映射。由此可将单一灰度特征的目标及候选目标模型修正为式(7)、式(8):
quv=
(7)
puv=
(8)
2.2.1 kalman运动估计
标准的Mean shift跟踪算法是以上一帧的目标位置作为当前帧迭代的初始位置,并在其邻域内寻找使相似度函数极大值的位置。如果运动目标尺度变化较快且附近有其他相似物体靠近,则很容易丢失目标或误定位。事实上,空间目标的运动是连续的、有规律的,无论是机动还是非机动,都可以在一定范围内用某种数学模型来近似描述。因此,可以采用一定的方法进行目标运动辨识与估计,从而提高算法的实时性。卡尔曼滤波是一种最小均方误差估计方法。采用kalman进行运动目标位置预测可将搜索窗口限制在一个很小的范围,从而减小运算量,提高速度;可利用运动趋势估计将目标和其他相似物体或噪声分开,也可独立用于多目标跟踪。
设一个离散时间线性系统的状态方程和kalman目标运动估计观测模型分别为:
X(k)=A(k-1)X(k-1)+B(k)W(k)
Y(k)=C(k)X(k)+V(k)
2.2.2 遮挡问题分析及处理
遮挡问题的处理是目标跟踪中很重要的部分,它直接影响到算法的性能,因为在跟踪过程中,各种程度的遮拦是不可避免的。本节将在kalman滤波器的基础上,根据Bhattacharyya系数的变化和一种简单高效的遮挡检测算法来解决跟踪过程中的遮挡问题。由于Bhattacharyya系数表征了当前核窗口区域核直方图与目标核直方图的相似度,当目标被其他物体遮挡时,当前核窗口区域的Bhattacharyya系数将减小。
给定一阈值Th,对于第k帧图像中的目标区域是否出现遮挡可以通过以下准则进行判断:
(9)
由于Mean shift算法本身具有一定程度的抗遮挡能力,因此若出现遮挡情况,必须根据实际情况来判断遮挡的程度,采用不同的策略进行遮挡处理。将遮挡情况分为部分遮挡和完全遮挡两种情况。如图1所示,首先把目标感兴趣区模板分成四个子块Al,A2,A3,A4,然后将其相邻的两块合并成为四个新的子块S1,S2,S3,S4。
图1 目标感兴趣区模板分块示意图
对i=1,2,3,4,统计出满足ρi(yk) 图2 目标搜索示意图 其中,半径r满足下面的关系式,式中h为核函数的带宽。 (10) 在搜索区域内等间距地设置5个搜索块,这些块的中心点连同B点一同构建目标搜索区域关键点{yi}i=1,2,…,6。对应区域直方图特征分布为pi(yi)。 目标出现的条件设定为: ρ(pi(yi),q)>Tapper,i=1,2,…,6 (11) 其中Tappear为阈值,通常设定为局部遮挡时的相似度。对满足式(11)的候选块i执行Mean shift跟踪算法。 (12) 文献[10]基于信息量与目标尺寸的关系,在Mean-shift算法中加入了一个尺度更新项,取得了较好的效果。然而从信息论角度出发,互信息量作为两个变量(两幅图像)之间相关性的量度,更具有代表性。因此,依据互信息量与目标尺寸之间的关系,对文献[10]的尺度更新项进行了修正。在研究互信息量与目标尺寸之间的关系时,需引入预测扩展窗口的概念。该窗口以kalman滤波预测的目标位置估计值为中心进行矩形扩展,具体大小可设定,本文将设为图像的1/7。显然,预测扩展窗口可看目标位置估计值为中心的一个邻域,是Mean shift算法的迭代搜索范围。引入该窗口,可减小匹配搜索区域,同时减少Mean shift迭代次数。 设需跟踪的目标模板(即时更新的)为图像A(其信息量为I0),下一帧图像中的预测扩展窗口图像设为B,计算两幅图像的互信息量I(A,B)。当目标尺寸增大时,其互信息量呈增加趋势。本文选取40帧坦克序列图像进行尺度效应试验(试验效果如图3所示)。取各帧图像,人为测量目标尺寸数据,并分别计算互信息量与模板图像信息量的比值、目标矩形区域尺寸变化的比值S,并求得误差e=1+log2[I(A,B)/I0]-S,研究互信息量与目标尺寸变化的关系。 图3 坦克序列图像及误差曲线图 分析第2帧图像对应的直方图(图3a),发现直方图表现为“宽谷”的形式,坦克目标与背景灰度区分不明显,属于典型的复杂背景。40帧坦克序列图像度效应试验误差曲线如图3f所示。由误差曲线图可知,误差相对很小。因此,互信息量与模板信息量的比值和物体尺寸存在如下的关系:H≈H0(1+log2[I(A,B)/I0],其中H0指前一帧的物体尺寸,H指当前帧的物体尺寸。 标准的Mean shift算法,主要是选取合适的相似度函数度量目标模型和候选目标模型的相似性,通过求相似性函数的最大值迭代计算Mean shift向量,从而完成跟踪的目的。在实际应用过程中,通常选择Bhattacharyya系数作为Mean shift跟踪算法的相似性函数,选择具有对称特性的Epanechnikov核函数(其核函数模型描述如图4所示)进行核密度估计,从而进行目标定位。 图4 Epanechnikov 核函数 在图4中,左边描述的是Epanechnikov 核函数K(x)的仿真模型,核函数的轮廓函数定义为: (13) 右边描述的是核函数K(x)经过归一化后的结果,对应的轮廓函数g(x)定义为: (14) 那么,可得当前帧目标的中心位置: (15) 从式(15)可以看出,Mean shift迭代式依赖于带宽h,却没有能力自适应调整窗宽。自动更新跟踪窗口尺度是改进Mean shift跟踪算法的关键。为了提高Mean shift跟踪算法在灰度序列图像中应用的适应性,提出了基于特征融合的自适应跟踪算法:引入基于灰度-边缘特征融合的目标模型替换基于灰度直方图的目标模型;根据上述的互信息量与跟踪目标尺寸的关系,在Mean shift算法中加入了一个尺度更新项,按照s=1+log2[I(A,B)/I0]比例进行跟踪窗口尺度更新。在未出现遮挡时,利用更新的目标模版(第一帧可人工指定,也可利用感兴趣区自动提取的目标感兴趣模板,后续帧目标模板采用跟踪后的目标区域进行更新),通过kalman滤波估计下一帧目标位置估计值,获取预测扩展窗口,计算预测扩展窗口图像与目标模版图像的互信息量与目标模版图像的信息量的比值,然后按照关系进行尺度更新。参照标准的Mean shift跟踪算法的流程,引入基于特征融合的目标模型、kalman目标运动估计和互信息量更新尺度后,相应的自适应跟踪算法核心的流程如下: 1) 初始化帧计数器n=0,设定初始跟踪窗口参数,尺度变化比例S=0;目标位置,根据式(7)计算目标模型quv(y0),u=1…m; 2) 读取下一帧图像,即n=n+1,并利用卡尔曼滤波器预测运动目标位置的估计值; 3) 计算预测扩展窗口图像与模板图像的互信息量与模板图像的信息量比值,并由关系式s=1+log2[I(A,B)/I0]得到跟踪窗口变化比例,更新当前跟踪窗口尺度; 4)计算权值wi,i=1…n;并根据式(13)迭代计算候选目标的新位置; 5)根据式(8)计算候选模型puv(y1),u=1…m,并计算它与目标模板的相似度; 6)如果ρ(y1)>ρ(y0),那么y1←(y0+y1)/2; 7)如果‖y1-y0‖<ε(ε的选择,应保证匹配搜索窗口目标之间距离小于一个像素)则停止计算,并将以ε为中心,跟踪窗口尺度内的目标图像更新为模板图像;否则y0←y1,转到步骤4)。 为了验证上述特征融合自适应跟踪算法的有效性,分别选择存在尺度变化的红外坦克序列图像(共截取40帧,大小为640×480,目标尺寸逐渐增大),红外飞机序列图像(共截取110帧,大小为256×200,目标尺寸逐渐增大)进行跟踪试验。对于天空背景下的飞机红外序列,由于目标与背景灰度区分明显,分别采用基于灰度直方图的窗宽固定Mean shift算法和kalman-Mean shift尺度自适应跟踪算法进行对比跟踪试验。对红外坦克序列图像,由于背景复杂,目标与背景灰度区分不明显,但其边缘特征比较明显,因此采用基于灰度直方图的窗宽固定Mean shift算法和特征融合的自适应跟踪算法对其进行对比跟踪试验。跟踪窗口选矩形窗,初始跟踪窗在第1帧人工辅助选择;边缘方向编码量化级别为16个,灰度等级为16个。 针对两次试验,分别选取5帧序列图像的跟踪情况以示说明。其中,图 5a是选用标准的Mean shift算法的跟踪效果;图5 b是基于灰度特征目标模型的kalman-Mean shift自适应算法的跟踪效果。很显然,在对目标长时间跟踪时,特别是目标尺寸发生变化时,若不及时更新目标模板,会产生目标丢失的现象,如飞机序列图像的第72帧、110帧。而基于灰度特征目标模型的kalman-Mean shift自适应算法能较准确估计目标位置,并根据预测扩展窗口与目标模板的互信息量进行尺度更新,能适应目标的尺寸变化,同时保持Mean shift算法的实时性,跟踪效果良好。 图5 跟踪效果比较 图6a是标准Mean shift算法的跟踪效果,在包含与目标灰度特征近似背景的图像中出现了误跟踪,如第7帧、16帧;选取20帧作为模板后重新进行跟踪,22帧目标基本定位正确,35帧出现目标定位偏差,并且跟踪窗口尺度不能满足目标尺寸的变化。图6b是基于特征融合的kalman-Mean shift自适应算法的跟踪效果,很明显该算法利用边缘信息消除了与目标灰度特征近似背景的影响,定位准确,且跟踪窗口尺度与目标尺寸自适应变化。 图6 跟踪效果比较 本文在分析Mean shift理论的基础上,从标准的Mean shift算法的跟踪原理及特点分析出发,针对灰度直方图目标模型描述能力较弱的问题,研究了可基于灰度-边缘特征融合的目标描述模型,并引入了kalman滤波器用于目标运动估计及目标模板更新。通过研究互信息量与目标尺寸变化的关系,进行跟踪窗口自适应变化,最后实现了基于kalman-Mean shift的特征融合自适应跟踪算法。经过试验证明该算法有利于增强直方图目标描述能力,能够适应目标尺寸的变化,提高Mean shift算法的鲁棒性。此算法具有一定的应用潜力和实际价值。2.3 互信息量与目标尺寸变化的关系
3 基于kalman-Mean shift的特征融合自适应跟踪算法
3.1 模型建立
3.2 试验结果
4 结束语