融合检测机制的鲁棒相关滤波视觉跟踪算法

2019-10-15 03:13侯志强余旺盛李宥谋马素刚
应用光学 2019年5期
关键词:响应值滤波器峰值

侯志强,王 帅,余旺盛,李宥谋,马素刚

(1. 西安邮电大学 计算机学院,陕西 西安 710121;2.西安邮电大学 陕西省网络数据分析与智能处理重点实验室,陕西 西安 710121;3. 空军工程大学 信息与导航学院,陕西 西安 710077)

引言

在计算机视觉领域中,目标跟踪一直是研究的难点与热点[1-3],目前其已广泛应用于视频监控、成像制导、智能交通等领域。近年来,随着计算机软硬件性能的提升以及目标跟踪算法研究的不断深入,视觉跟踪的效果得到了显著提高。但在现实中,目标往往面临形变、光照、尺度变化以及目标遮挡等问题[1]。因此,实现高精度的跟踪仍然是一项具有挑战性的任务。

目前,视觉跟踪算法可以分为生成式模型[2-3](generative model)和判别式模型[4](discriminative model)两大类。生成式模型跟踪算法通过对初始帧内所选目标区域建立模型,并在下一帧中找到与所建立模型最相似的区域位置作为跟踪结果,代表性算法有meanshift[5]、粒子滤波[6]以及L1跟踪[7]等算法;判别式模型跟踪算法把目标的跟踪问题转化为分类问题,将目标区域划分为正样本,背景区域划分为负样本,训练分类器,使分类器可将目标从图像背景中分离出来,从而获得目标的位置,代表算法有支持向量机(support vector machine, SVM)[8]、MOSSE(minimum output sum of squared error)[9]以及MIL( multi-instance learning)[10]跟踪等算法。近年来,基于相关滤波(correlation filter,CF)的跟踪方法因其优异的性能成为研究的热点。Blome等在文献[9]中首次将相关滤波的方法用到视觉跟踪领域,提出了MOSSE算法,该算法在灰度图像上学习到一个相关滤波器使其平方误差和最小,跟踪速度可达600 fps。Henriques等[11]提出CSK(circulant structure kernel)跟踪算法,通过对原始图像进行循环移位操作得到大量样本,利用循环结构的性质以及傅里叶变换在频域内的快速计算,从而训练出更加稳定和精确的滤波器。Danelljan等[12]提出了CN(color-name)算法,在CSK跟踪基础上引入颜色属性特征,提高了算法在彩色图像序列跟踪上的鲁棒性。Ma[13]提出长时相关滤波跟踪算法(LCT),通过引入SVM分类器,当跟踪可能出现丢失时,提出对目标重新检测。循环采样的相关滤波器在视觉跟踪中是很高效的,但会受到边界效应的影响。为了有效解决这一问题,Danelljan[14]提出空间正则化DCF(spatially regularized discriminative correlation filter ,SRDCF),通过对核滤波器增加空间惩罚项,有效抑制了边界效应,提高了跟踪性能,但为了解决在线更新问题,该算法在多幅图像上建立模型,提高了算法复杂度,影响了跟踪实时性。Wang Dong等[15]将多滤波器融合应用于红外的小目标检测,该算法在不同场景下均有较高检测精度。Chao Ma等[16]提出一种基于检测的跟踪算法LCT+,该算法使用了三个滤波器,分别用于平移检测、尺度估计和再检测。当跟踪结果低于阈值使用支持向量机进行再检测,提高了跟踪性能。为解决跟踪过程中目标被遮挡导致丢失的问题,Li Chao[17]等提出了一种记忆跟踪状态,在目标丢失后进入记忆跟踪状态,提高了跟踪算法的鲁棒性。Feng Li[18]等提出时空正则化滤波器(spatial-temporal regularized correlation filter,STRCF),通过将时间正则项引入到单样本SRDCF中,使STRCF在抑制边界效应的同时,避免了效率的损失,提升了跟踪速度。但STRCF算法在跟踪过程中使用较大搜索窗口在当前帧进行目标响应计算,由于搜索窗口增大,导致更多的背景加入响应计算中,造成背景干扰问题。

针对STRCF算法的上述不足,本文基于STRCF算法提出一种“检测-跟踪-检测”的双滤波器跟踪算法,首先训练时空正则化滤波器(STRCF)和线性核相关滤波器(DCF)[19]两个滤波器,将STRCF作为跟踪器用于跟踪过程中,每当新来一帧图像时,通过跟踪器获取响应图,由于目标候选区域存在背景干扰等问题,响应图有可能出现多个峰值。当响应图出现多个峰值时,本文提出将线性核滤波器作为检测器,对响应图进行检测,当检测到的响应值大于原响应值时,检测响应值是可以被信赖的;跟踪器将会使用检测到的目标响应值,精确目标位置,提高了算法的精度。同时加入平均峰值相关能量[20]判断目标是否被遮挡,提供选择性的模板更新,防止模板被污染,提高算法的鲁棒性。为验证所提算法的有效性,本文利用OTB2015[21]、Temple color 128[22]和VOT2016 数据集作为测试数据,分别与不同的主流跟踪算法进行了对比实验。

1 STRCF跟踪模型

在相关滤波跟踪算法中,首先利用循环矩阵获得大量样本训练滤波器,但通过循环矩阵会将边界效应引入到样本中,这样会降低滤波器的判别能力。所以SRDCF[ 14]在核相关滤波器的基础上通过增加空间惩罚项抑制边界效应,但其为了解决在线更新问题,在跟踪过程中不得不使用过去的多帧样本,增加了计算消耗。为了减少计算消耗,STRCF[18]在SRDCF的基础上添加了时间正则项,跟踪过程中只使用上一帧的信息,使STRCF的目标函数是凸的,所求解的子问题都有闭式解,故STRCF在大多数跟踪序列上可以在较少的迭代次数内收敛,在提高算法精度的同时,保证了速度。

STRCF的目标函数[18]为

(1)

为求解(1)式,首先引入一个辅助变量g(f=g)和步长γ,则(1)式的增广拉格朗日形式可表述为

(2)

其中s、μ为拉格朗日系数以及正则化系数。

(3)

通过对(3)式部分的子问题分开求解,得到滤波器Pt。

STRCF在两个方面做了在线被动攻击算法(PA)[25]的延伸:1) STRCF不是分类器,而是线性回归的在线学习;2) STRCF中的样本在每一轮都是批处理级别(即图像的所有移位样本)。因此STRCF在积极模型学习和被动模型学习之间自适应平衡,使出现较大外观变化下,模型依然具有很强的鲁棒性。STRCF是多训练图像上SRDCF形式的合理近似,也可用于同时进行DCF学习和模型更新。

(4)

2 本文算法

针对STRCF在视觉跟踪中所存在的相似背景干扰、快速运动模糊等情况下跟踪失败的问题,本文基于STRCF跟踪算法提出一种跟踪与检测结合的双滤波器视觉跟踪鲁棒算法。如图1所示,本文算法首先提取目标的HOG和颜色信息特征,训练两个滤波器分别进行跟踪与检测;然后使用STRCF算法作为跟踪滤波器,获取当前帧目标响应图;最后,判断其是否为多峰值情况,若是,使用核相关滤波器与多个峰值点即目标潜在的位置逐一进行匹配,得到响应值;若不是,则不激活检测机制;最后响应值的最高点即为目标的最终位置。算法通过利用两个滤波器在跟踪过程中的融合检测机制,提高了跟踪的成功率和准确度。

图1 融合多峰检测的算法示意图Fig.1 Schematic diagram of algorithm fused with multi-peak detection

2.1 融合多峰检测的跟踪器

2.1.1 基于STRCF的跟踪响应计算

在相关滤波跟踪过程中,首先对大小为a×b的感兴趣区域(ROI)进行循环采样,得到a×b个图像样本,之后提取图像样本的颜色特征和方向梯度直方图(histogram of oriented gradient, HOG)特征作为训练滤波器的样本XT,其中XT为一个循环矩阵。根据(2)式以及上一节对(3)式的求解,可以训练出滤波器PT。

本文以训练出的滤波器Pt做跟踪器,在第t帧图像中,基于上一帧目标中心位置post-1和目标大小以及背景区域填充Padding,可以得出ROI的中心位置post和搜索区域的大小,之后得到图像块S,对图像块S进行HOG特征和颜色属性特征的提取,得到特征xt,通过(6)式以及循环采样,得到整张响应图Response map。如图2所示。

Ft=f(xt;pt)

(6)

其中:t为帧数;pt为训练好的滤波器参数。

图2 响应图获取过程Fig.2 Response graph acquisition process

2.1.2 融合多峰提取和核相关滤波的检测机制

文献[16]提出了再检测机制,当跟踪置信度小于该文提出的阈值时激活检测模块,然而该方法使其检测性能过于依赖阈值的选取,因此本文使用融合多峰提取和核相关滤波的检测机制。

对于现有的a×b个训练样本,可以通过最小正则化风险训练一个分类滤波器作为检测器。一个线性的分类滤波器通常可以表示为

f(x)=δTx+ψ

(5)

其中:δ=(δ1,δ2,…,δn)T表示分类器参数;ψ表示预测值和真实值的偏差,通常服从标准正态分布ψ~N(0,σ2)。因此,本文使用样本XT进行检测滤波器的训练,最终获得检测滤波器δT。

在第t帧的跟踪过程中,本文利用跟踪滤波器PT与当前帧图像特征进行相关计算,得到响应图。但由于背景干扰、目标运动模糊等因素,响应图可能出现多个峰值,而最高峰值有可能不是目标的真实位置[17]。如图3所示:图3(a)、(c)表示当前帧图像,当前帧图像中的绿色框为跟踪结果,黄色框为目标的真实位置;图3(b)、(d)表示当前帧通过STRCF相关计算得到的响应图,响应图为多个峰值的情况。图3中绿色虚线表示跟踪结果与响应图最高峰对应,红色虚线表示真实目标位置在响应图中对应位置,由此可见多峰响应中很可能出现最高点不是目标的情况(彩图见电子版)。

图3 多峰情况的响应图与原图像关系Fig.3 Relationship between response diagram of multi-peak case and original image

针对上述多峰问题,本文提出在得到响应图后引入一种检测机制,当响应图出现多个峰值的情况时,使用线性核相关滤波器(DCF)与多个峰值逐一计算响应,进一步确定目标真实位置。首先对响应图矩阵进行遍历搜索并结合(7)式提取多个峰值点。设置阈值υ,当峰值fmn大于fmax·υ时,保留其峰值。当峰值fmn小于fmax·υ时,其响应值置为0,保留下来的几个峰值才具有研究意义,即这些峰值中可能存在目标真实位置。

(7)

其中(m,n)为响应图fT中的元素位置。

对于保留下来的多个峰值点fmn,使用训练好的检测滤波器δT对这些位置进行检测,取得各个峰值点对应的响应值,最终取其中最大值为检测响应值。当检测响应值大于原响应值时,经过检测所得响应点为可信赖响应,否则使用原响应点。最终,通过响应点的值计算得到目标位置。

2.2 模型更新策略

相关滤波算法中,模型更新策略的选择对算法跟踪性能影响很大。在实际跟踪过程中,存在长时间误差积累及目标形状、颜色变化等因素,难免会出现跟踪失败问题。当出现跟踪失败情况时,使用失败的跟踪结果更新模板,更加容易出现跟踪漂移问题。

针对上述模型更新问题,本文在保证跟踪速度的同时引入了一种有效的模型更新策略,通过已获得信息对跟踪是否出现错误做判断。计算平均峰值相关能量(APCE),该指标可反映出响应图峰值水平和响应波动程度,该指标按(8)式[20]计算:

(8)

其中:fmin、fmax分别代表响应图的最小值、最大值;F为当前响应图。APCE可以表示响应图峰值水平和响应波动程度。当峰值起伏越小,APCE会越大。当目标被完全遮挡或者跟踪错误时,APCE值将急剧下降。

跟踪滤波器参数保持原有的更新策略,检测滤波器只在APCE高于阈值时进行更新,为减少目标快速运动所造成的运动模糊、噪声干扰以及遮挡等因素影响,检测器采用线性插值法进行更新,即在第t帧时,检测滤波器的模型更新表示为

(9)

2.3 算法流程

综合上述,本文算法流程如表1所示。

3 实验结果

为充分验证本文算法的有效性,采用MATLAB 2016a进行编程实现。将本文算法在Intel(R)core(TM)i5-8400 2.8 GHz处理器上进行测试。实验参数设置如下:目标的搜索窗口为4.52倍目标大小,惩罚因子ρ=0.05,多峰提取阈值μ=0.75,检响应值阈值λ=0.8,尺度池为S={1.03,1.02,1.01,1,0.99,0.98,0.97},高斯核带宽σ=1,参数均经过大量实验得出效果较好的经验值。本文算法实验参数均保持固定不变。

利用OTB-2015数据集[20]测试本文算法,其中共有100组视频序列。为了更充分说明本文算法的有效性,本文算法与8种流行算法进行比较:STRCF(spatial-temporal regularized correlation filters)[18]、Staple(complementary learners)[26]、Siamese FC(fully-convolutional siamese networks)[27]、MEEM(multiple experts using entropy minimization)[28]、KCF(kernelized correlation filters)[16]、SAMF(scale adaptive kernel correlation Filter)[29]、MCPF(multi-task correlation filter)[30]、HCF(hierarchical convolutional features)[23]。其中STRCF、Staple、KCF、SAMF、MCPF、HCF和SiameseFC为基于深度学习的跟踪算法;MEEM加入了模板更新策略。

3.1 OTB100实验

3.1.1 定性分析

1) 尺度变化。尺度变化是目标跟踪中常见问题,目标尺度的变化致使固定大小的跟踪框无法取得完整目标,影响跟踪结果甚至丢失目标,如图4所示,在“Board”、“Lemming”这2组视频中,目标均有一定程度的尺度变化,SAMF、STRCF等算法都具有尺度适应能力可以有效地跟踪目标。针对尺度变化的目标,目标颜色属性信息对于跟踪过程中尺度估计具有重要作用,本文算法采用尺度估计模块并融合颜色信息特征,故能够适应目标的尺度变化。

2) 光照变化。光照变化常使得目标的颜色属性信息发生变化,因此跟踪可能出现丢失和误差。如图4所示,以“Singer”和“Matirx”为例,视频序列里背景光照发生剧烈变化,因而要求算法对于颜色信息剧烈变化有较强的鲁棒性。

3) 目标形变。目标的表观改变会使当前帧特征信息与模板匹配的程度下降,在一定程度上增加跟踪难度。如图4所示,以“Diving”和“MotorRolling”为例,目标的外形发生明显变化。本文算法跟踪特征中包含了多个特征的融合以及多峰检测模块,使算法可以较好地跟踪目标。

4) 目标快速运动。快速运动常导致目标图像模糊,跟踪算法难以取得目标特征信息,使得跟踪难以准确进行。如图4所示,以“Basketball”和“Matrix”为例,当目标快速运动时,部分算法的跟踪尺度和跟踪准确性出现偏差,本文由于引入检测机制,故而对目标位置的估计具有良好的稳健性。

5) 目标遮挡。目标被遮挡问题让跟踪算法不能完全获取目标信息甚至获取错误信息污染模板,致使跟踪漂移。如图4所示,以“Skating”和“Lemming”为例,针对目标遮挡和跟错目标问题,本文算法提出更新策略进行判断,避免劣质样本对好模板的污染,因此本文算法对目标遮挡问题有较好的鲁棒性,能准确跟踪目标。

3.1.2 定量分析

为综合评价本文算法对于所有测试视频的跟踪性能,对OTB2015的100组测试视频进行分析。表2、表3分别列出了11种不同属性的跟踪序列里算法的跟踪精度和成功率。表格第1行代表了不同属性的缩写,括号里为该属性视频序列的个数,第1列为进行测试的算法名称,表格里的数据是不同算法在不同属性的视频序列下的精确度和成功率,其中同一属性下最优算法由加粗的形式表示,次优算法结果由实下划线表示。11种属性分别为:尺度变化(SV)、离面旋转(OPR)、平面内旋转(IPR)、遮挡(OCC)、目标形变(DEF)、快速运动(FM)、光照变化(IV)、背景变化(BC)、运动模糊(MB)、目标超出视野(OV)、低分辨率(LR)。

表2 不同属性下算法的跟踪成功率对比结果

表3 不同属性下算法的精确度对比结果

图5 OTB100测试视频结果(彩图见网上)Fig.5 OTB100 testing video results(colour online)

由表2和表3可知,本文算法对各种属性视频的跟踪精度和成功率均为前列。另外,从图5可以看到,本文算法对100组视频序列整体跟踪进度以及成功率均优于其他算法。与原始算法STRCF相比,本文算法在精确率上有1.5%的提升,在成功率上有1.1%的提升,而且本文算法速度为14.96 fps,相较于STRCF算法的跟踪速度16.78 fps,没有明显下降。由此表明,对于各种属性的视频序列,以及100组视频整体而言,本文算法均有很好的跟踪性能。

3.2 Temple color 128实验

本文算法在Temple color 128数据集上与C-COT[24]、STRCF[15]、MCPF[30]、DeepSRDCF[14]、MEEM[28]、CF2[31]、Struck[32]和KCF[16]算法做对比实验。如图6所示(彩图见网上),本文算法在Temple color 128数据集上表现较优,与STRCF算法相比,跟踪平均成功率和平均精度均有提高,因此本文提出的融合检测的算法可有效提高算法精度和成功率。

图6 Temple color 128测试视频结果Fig.6 Temple color 128 testing video results

3.3 VOT2016 实验

本文算法在VOT2016数据集上与C-COT[24]、STRCF[15]、DSST[33]、DeepSRDCF[14]、SiamRPN[34]、Staple[26]、Struck[32]和KCF[16]算法做对比实验。如图7所示(彩图见网上),本文算法在VOT2016数据集上表现较优,与STRCF算法相比,平均重叠率有提升,因此本文提出的融合检测的算法可有效提高算法性能。

图7 VOT2016 测试视频的平均重叠率Fig.7 Average overlap rate of VOT2016 testing videos

4 结论

本文在STRCF算法的基础上提出了一种融合滤波检测的跟踪算法。该算法使用STRCF跟踪滤波器进行跟踪,并在跟踪结果处加入了检测机制,将检测与跟踪相融合,提高了算法的精度。同时,为了保证跟踪速度,基于平均峰值相关能量判断目标跟踪结果,选择性的对模板进行更新,一定程度上保证了跟踪速度。实验结果表明,在复杂跟踪环境下,本文算法能够准确跟踪目标,在运动模糊、相似背景等视频序列上有较大的提高,同时速度没有严重影响。在实验中还发现,当目标出现严重形变时,本文算法容易出现跟踪丢失、漂移的情况。为解决这一问题,在下一步工作中,考虑结合深度特征,以此提高跟踪器对于目标形变的鲁棒性。

猜你喜欢
响应值滤波器峰值
“四单”联动打造适龄儿童队前教育峰值体验
基于荧光光谱技术的不同食用淀粉的快速区分
气相色谱法测定蔬菜中常见有机磷农药响应值变化规律
从滤波器理解卷积
提高环境监测数据准确性初探
紫外荧光法测硫各气路流量对响应值的影响
开关电源EMI滤波器的应用方法探讨
基于Canny振荡抑制准则的改进匹配滤波器
宽占空比峰值电流型准PWM/PFM混合控制
基于峰值反馈的电流型PFM控制方法