光电工程  2020, Vol. 47 Issue (1): 190279      DOI: 10.12086/oee.2020.190279     
基于核滤波器实时运动目标的抗遮挡再跟踪
汤学猛1 , 陈志国1 , 傅毅1,2     
1. 江南大学物联网工程学院, 江苏 无锡 214122;
2. 无锡环境科学与工程研究中心, 江苏 无锡 214153
摘要:相关滤波算法是通过模板与检测目标的相似性来确定目标位置, 自从将相关滤波概念用于目标跟踪起便一直受到广泛的关注, 而核相关滤波算法的提出更是将这一理念推到了一个新的高度。核相关滤波算法以其高速度、高精度以及高鲁棒性的特点迅速成为研究热点, 但核相关滤波算法在抗遮挡性能上有着严重的缺陷。本文针对核相关滤波在抗遮挡性能上的缺陷对此算法进行改进, 提出了一种融合Sobel边缘二元模式算法的改进KCF算法, 通过Sobel边缘二元模式算法加权融合目标特征, 然后计算目标的峰值响应强度旁瓣值比检测目标是否丢失, 最后将Kalman算法作为目标遮挡后搜索目标的策略。结果显示, 本文方法不仅对抗遮挡有较好的鲁棒性, 而且能够满足实时要求, 准确地对目标进行再跟踪。
关键词KCF    特征融合    旁瓣值比    Kalman预测    
Anti-occlusion and re-tracking of real-time moving target based on kernelized correlation filter
Tang Xuemeng1, Chen Zhiguo1, Fu Yi1,2     
1. School of Internet of Things Engineering, Jiangnan University, Wuxi, Jiangsu 214122, China;
2. Wuxi Research Center of Environmental Science and Engineering, Wuxi, Jiangsu 214153, China
Abstract: The correlation filtering algorithm determines the target position by the similarity between the template and the detection target. Since the related filtering concept is used for target tracking, it has been widely concerned, and the proposal of the kernelized correlation filter is to push this concept to a new height. The kernelized correlation filter has become a research hotspot with its high speed, high precision and high robustness. However, the kernelized correlation filter has serious defects in anti-blocking performance. In this paper, the algorithm for the anti-occlusion performance of kernelized correlation filter is improved. An improved KCF algorithm based on Sobel edge binary mode algorithm is proposed. The Sobel edge binary mode algorithm is used to weight the fusion target feature. The target's peak response intensity sidelobe value is more than the detection target is lost. Finally, the Kalman algorithm is used as the target occlusion strategy. The results show that the proposed method not only has better robustness against occlusion, but also satisfy the real-time requirements and can accurately re-tracks the target.
Keywords: KCF    feature fusion    side lobe ratio    Kalman prediction    

1 引言

目标跟踪是当前学术界一直深入探讨的课题,其应用相当宽泛,横跨监控、运动分析、医疗图像、行为识别、监控及人机交互等诸多方面。尽管经过数十年的探索改进,速度与精度上已取得重大的突破,遗憾的是在匹配移动目标上依然道阻且长。环境变化,目标尺度变化、采光问题、视频的清晰度、跟踪目标被遮挡等影响因素一直是横亘在准确度上的难关,截至目前依然没有一种方法能够完善解决上述问题[1]。现在研究目标跟踪主要算法有:循环结构(circulant structure of tracking-by-detection with kernels,CSK)跟踪算法[2]、Meanshift算法[3]、粒子滤波跟踪算法[4]、DSST(discriminative scale space tracking)算法[5]、最小输出平方误差核(minimum output sum of squared error,MOSSE)跟踪算法[6]等。

鉴于上述学习跟踪方法复杂度过大,近年来计算简单、精度高、速度快的相关滤波器受到关注。很多专家在目标跟踪方面应用相关滤波器技术。王暐等[7]基于循环矩阵结构跟踪算法只适用于跟踪尺度固定不变的目标,提出了一种基于分块的尺度自适应CSK刚体目标跟踪算法。Henriques等[8]用梯度方向直方图(histogram of oriented gradients,HOG)特征,提出了核相关滤波器(kernelized correlation filters,KCF)跟踪器。Danelljan等[9]在KCF基础上提出了自适应颜色属性(color name,CN)视觉跟踪。但是由于多通道运算量较大,主成分分析(principal components analysis,PCA)降低维度,从11个通道中选出2个主要的通道进行处理,提高了跟踪精确度。上述方法在某些情形确实能够适用且效果良好,但是当目标受到严重遮挡时却存在很大局限性,不能达到预期效果。Danelljan等[10]在判别相关滤波器(discrimitive correlation filters,DCF)基础上提出了空间正规化(spatially regularized discrimitive correlation filters,SRDCF),使用Gauss-Seidel函数求解滤波器。Bertinetto等[11]于2016年在CVPR上发表了使用HOG-KCF+Color-KCF目标跟踪的Staple(sum of template and pixel-wise learners)算法。随着深度学习的发展,研究人员能够更好地提取跟踪目标的信息。Valmadre等[12]在目标跟踪中使用End-to- end模型。Danelljan等[13]在CVPR上发表了有效卷积算子跟踪的ECO(efficient convolution operators)算法。包晓安等[14]利用SIFT(scale-invariant feature transform)特征检测重定位再次出现的目标,对于遮挡视频的处理取得了一定成果。闫河等[11]提出融合LBP(local binary pattern)与HOG特征来提高跟踪遮挡的准确率。Bertinetto等[15]将HOG特征和颜色特征结合,在算法精度方面有了很大改善。Li等[16]通过对DCF强制执行空间惩罚来解决边界系数和引入时间正则化,以复杂性增加为代价,提出了空间时间正则化相关滤波器(spatially-temporal regularization correlation filter,STRCF)。Li等[17]在基于传统相关滤波器上,提出了一种新的鲁棒的相似变换估计大位移(large displacement tracking visestimation of similarity,LDES)跟踪算法。Xu等[18]在DCF的基础上利用时间一致性来设计低维判别流形空间,提出了LADCF(learning adaptive discriminative correlation filters)算法。在2018年,Li等[19]在CVPR上发表了SiamRPN(Siamese region proposal network)网络架构算法。为了解决SiamRPN网络架构算法需要使用训练好的深层网络从而导致跟踪算法精度下降的问题,Li等[20]于2019年CVPR上又提出了SiamRPN++算法。单倩文等[21]为了提高算法速度,提出快速检测和识别算法。Fan等[22]为了解决大尺度问题,在CVPR2019上提出了多级跟踪网络LaSOT(large-scale single object tracking)算法。

本文将Sobel算子检测与FHOG(fast histogram of oriented gradients)直方图相融合,对目标特征加强了FHOG边缘检测,使跟踪的目标信息更加明显。为了对目标遮挡后的Kalman预测算法进行准确判断,在跟踪过程中用KCF算法得到的目标位置修正Kalman算法,从而得到的目标位置。在保证目标信息可靠性的基础上,提出了SPKCF算法,能过自适应目标响应峰值旁瓣值比(SPSR),结合Kalman算法,根据目标丢失前的状态预测目标下一帧可能出现的位置。

2 KCF跟踪基本原理

KCF跟踪算法首先在第一帧选定被跟踪的目标,读取目标位置的信息来训练跟踪器。使用该跟踪器对下一帧目标预测位置附近进行采样点响应,响应点最强的位置就是目标存在的位置。

设训练样本集(xi, yi),线性回归函数$f({x_i}) = {w^{\rm{T}}}{x_i}$$w$为权重系数,样本训练过程实际上是一个岭回归问题,通过正则化最小二乘法,解得:

$\mathop {\min }\limits_w \sum\nolimits_i {{{(f({x_i}) - {y_i})}^2} + \lambda ||w|{|^2}} 。$ (1)

训练目的是为了寻找一组权值$w$,由式(1)得:

$w = {({{\boldsymbol{X}}^{\rm{H}}}{\boldsymbol{X}} + \lambda {\boldsymbol{I}})^{ - 1}}{{\boldsymbol{X}}^{\rm{H}}}y, $ (2)

其中:${\boldsymbol{X}} = {({x_1}, {x_2}, {x_3}, ..., {x_n})^{\rm{T}}}$${{\boldsymbol{X}}^{\rm{H}}}{\rm{ = (}}{{\boldsymbol{X}}^ * }{{\rm{)}}^{\rm{T}}}$${{\boldsymbol{X}}^ * }$${\boldsymbol{X}}$的共轭,$\lambda $为正则化系数。原本空间通过核函数将$\varphi ({x_i})$输入映射到希尔伯特特征空间中,$w = \sum\limits_i {{\alpha _i}\varphi ({x_i})} $,则分类器的响应值为$f(z) = {w^{\rm{T}}}\varphi (z)$。基于核函数的岭回归问题(KRLS)可表示为

${\boldsymbol{\alpha }} = {({\boldsymbol{K}} + \lambda {\boldsymbol{I}})^{ - 1}}{\boldsymbol{y}}, $ (3)

其中:ααi所组成的向量,${\boldsymbol{y}}$yi所组成的向量,${\boldsymbol{I}}$为单位矩阵,${\boldsymbol{K}}$N×N核矩阵,满足${K_{ij}} = k({x_i}, {y_i})$,因此将寻找ω最优的问题转化为寻找最优α的问题。

为了简化符号,将专注于单通道一维信号。通过循环移位算子来建模该向量的一维平移,循环移位算子是置换矩阵:

${\boldsymbol{P}} = \left[ {\begin{array}{*{20}{c}} 0&0&0& \cdots &1 \\ 1&0&0& \cdots &0 \\ 0&1&0& \cdots &0 \\ \vdots & \ddots & \ddots & \ddots & \vdots \\ 0&0&0&1&0 \end{array}} \right]。$ (4)

乘积${P_x} = {({x_n}{x_1}, {x_2}, {x_3}, ..., {x_{n - 1}})^{\rm{T}}}$x移动一个元素,建立一个小的平移。由于循环特性,每n个周期得到相同信号x,可获得全套移位信号$\{ {P^u}x|u = 0, ..., n - 1\} $。所有循环矩阵都通过离散傅里叶变换(DFT)对角化:

${\boldsymbol{X}} = {\boldsymbol{F}}diag(\hat x){{\boldsymbol{F}}^{\rm{H}}}, $ (5)

式中:F为与$x$无关常量矩阵,${{\boldsymbol{F}}^{\rm{H}}}$F共轭转置,diag()是获得二维矩阵的对角矩阵函数,$\hat x$为生成向量x的离散傅里叶变换,下文中用“^”来表示一个向量的傅里叶变换。由文献[8]可知,循环矩阵C(x)在傅里叶空间具有对角性质,核矩阵K可以得出:

${\boldsymbol{K}} = {\boldsymbol{C}}({k^{xx}}) = {\boldsymbol{F}}diag({\hat k^{xx}}){{\boldsymbol{F}}^{\rm{H}}}, $ (6)

其中:${k^{xx}}$表示和矩阵${{\boldsymbol{K}}^{xx}}$的第一行,其意义为模板矩阵x与其循环矩阵的自相关,由式(6),将${{\boldsymbol{X}}^{\rm{H}}}{\boldsymbol{X}}$带入式(2)中,再将两边同乘${{\boldsymbol{F}}^{\rm{H}}}$,共轭转置为$w = {{\boldsymbol{F}}^{ - 1}}(w)$。为了解决矩阵求逆运算量大的问题,把循环矩阵进行傅里叶对角化,将矩阵求逆转化为向量点积运算。这样就将解$w$最优的问题变为解最优α的问题:

$\hat \alpha = \hat y/({\hat k^{xx}} + \lambda ), $ (7)

离散傅里叶变换之后可表示为

$\hat f(z) = ({\hat k^{zz}}) \cdot \hat \alpha , $ (8)

其中:$\hat y$为向量y的离散傅里叶变换,$\lambda $为系数,$\hat \alpha $为向量α的离散傅里叶变换。可以看出,在所有位置处评估函数$f(z)$被视为对核值${k^{zz}}$的空间滤波操作。

3 再跟踪基本原理

本文算法是在KCF的基础上引进再跟踪机制,从而实现对目标丢失后的再跟踪。

3.1 Sobel-FHOG

Sobel算子主要用于边缘检测,利用快速卷积函数对边缘快速提取,对像素的位置做加权,以降低边缘模糊程度。Sobel算子与FHOG相融合,加强了FHOG对目标特征提取,使目标轮廓更加清晰。Sobel算子由水平和垂直两个方向算子组成,实际上是对图像进行卷积,根据像素点上下、左右邻点灰度加权差在边缘处达到极值来检测边缘,对噪声具有平滑作用,以提供精确的边缘方向信息。将其用于加强FHOG,对目标特征提取有很好的效果,本文使用Sobel与FHOG相融合的方式。如图 1所示,从图上可以明显看出,Sobel-FHOG提取特征比FHOG提取特征效果更好。

图 1 (a) 原图;(b) FHOG;(c) Sobel-FHOG Fig. 1 (a) Original image; (b) FHOG; (c) Sobel-FHOG
3.2 自适应峰值响应强度旁瓣值比(Adaptive target response peak sidelobe ratio, SPSR)

峰值响应强度旁瓣值比(PSR,用RPSR表示)用来判断检测目标是否在当前帧的检测框中。KCF跟踪目标是把当前帧与滤波模板作用后响应最大的位置作为目标位置,而每次进行滤波的位置是上一帧目标所在位置。当目标遮挡造成跟踪失败,引入目标再跟踪机制,即目标PSR小于阈值T时才开始运行。PSR的定义为

${R_{{\rm{PSR}}}} = ({g_{\max }} - \mu )/\sigma , $ (9)

其中:${g_{\max }}$为响应最大值,$\mu $为除了响应峰值附近均值,$\sigma $为除响应峰值附近的值方差,${g_{\max }}$就是之前$f(z)$元素值。由于在每个视频中检测框的大小不一样,本文SPSR是对PSR中$\mu $$\sigma $提出改进,$\mu $为除了响应峰值附近(r×c)的均值,$\sigma $为除响应峰值附近(r×c)值的方差,r、c为根据目标的大小变化而变化。

图 2(a)视频Jogging和图 2(b)视频Rom105上,跟踪目标没有被遮挡时,SPSR在一个值上波动。当跟踪目标被遮挡物遮挡时,SPSR值出现急速下降,当目标再出现时,SPSR又以一个值上下波动。

图 2 SPSR时刻值。(a) Jogging;(b) Rom105 Fig. 2 SPSR time value. (a) Jogging; (b) Rom105
3.3 再跟踪机制

为了保证Kalman算法对遮挡后跟踪目标信息可靠性,跟踪过程中使用KCF算法修正每次Kalman算法得到的目标位置:

$\left\{ \begin{gathered} x = kx + (1 - k) \cdot {p_2} \\ y = ky + (1 - k) \cdot {p_1} \\ \end{gathered} \right.。$ (10)

由于跟踪视频质量不同会导致经验阈值T也有所不同,若视频质量较差,T一般取0.1左右;若视频质量一般,T一般值0.25左右;若视频质量较好,T一般取0.36左右。当SPSR小于阈值T时,再跟踪机制失效,根据之前目标的状态信息,用Kalman滤波器进行目标预测[23],然后把目标位置信息传给核相关滤波器,用前几帧没有丢失的模板信息更新核滤波器。当SPSR大于T值,继续用核相关滤波进行目标跟踪。

在跟踪前初始化Kalman滤波器,当开始跟踪前10帧时,用核滤波器得到的目标信息来更新Kalman滤波器。Kalman滤波算法中,为了降低计算复杂性,分别在XY方向更新。X方向时间更新为

$X = A \cdot {X_{\rm{e}}} + W + \frac{{{\boldsymbol{K}}({p_1} - {p_2})}}{m}, $ (11)
${P_{\rm{p}}} = A \cdot {P_{\rm{e}}} \cdot A' + {\boldsymbol{Q}}, $ (12)

其中:X为预测位置的值,Pp为上一次的误差方差和过程噪声的预测新的误差。$W$为预测系统噪声;Q为协方差矩阵。状态更新:

$Z = p + {\boldsymbol{V}}, $ (13)
${\boldsymbol{K}} = \frac{{{P_{\rm{p}}} \cdot H'}}{{H \cdot {P_{\rm{p}}} \cdot H' + {\boldsymbol{R}}}}, $ (14)
${X_{\rm{e}}} = X + {\boldsymbol{K}}(Z - H \cdot X), $ (15)
${P_{\rm{e}}} = {P_{\rm{p}}} - {\boldsymbol{K}} \cdot H \cdot {P_{\rm{p}}}, $ (16)

其中:K为卡尔曼增益矩阵,Xe为修正当前目标位置的值,Pe为增益矩阵方差的误差,V为测量噪声,R为协方差矩阵。当SPSR小于T值时,进行Kalman预测,将式(11)、式(15)更改为

$X = A \cdot {X_{\rm{e}}} + W + \frac{{{p_1} - {p_{\rm{2}}}}}{m}, $ (17)
${X_{\rm{e}}} = X。$ (18)

Y方向的更新与X方向一样。XY方向得出的值取整赋给p,然后把位置信息返还给KCF滤波器。

3.4 再跟踪的算法流程

本文先用方向梯度直方图(FHOG)与Sobel边缘二元模式算法加权融合目标特征,核滤波计算每一帧的目标的峰值自适应响应强度(SPSR)[24],并对SPSR进行判断。当SPSR大于T时,此时再进行Kalman滤波训练,用KCF算法预测的坐标选取跟踪窗口,提取中心点位置附近的目标信息,并修正Kalman算法得到的目标位置,直接更新滤波器模型;否则,直接进行Kalman预测,得出的坐标直接返还给KCF滤波器,并使用前第10帧的模型更新这一帧的模型。本文改进方法在抗遮挡方面有着很好的效果。其算法流程:

输入:视频中的某一帧。

输出:当前帧目标的位置。

While(视频序列读取未结束):

1) 求出目标的Sobel-FHOG特征;Sobel-FHOG= mSobel+nFHOG;

2) 训练图像补丁:回归目标,高斯型,并得到测试图片补丁;

3) 分别训练Kalman模型和KCF模型;

4) 计算目标块响应得分,并根据式(9)计算目标的峰值响应强度旁瓣值比(SPSR);

5) If SPSR > 阈值T

5.1)根据式(11)~式(16)更新Kalman模型,根据式(10)更新目标位置p

5.2)根据式(6)~式(8)更新KCF模型;

Else

5.1)根据式(12)~式(14)、式(16)~式(18)预测目标位置p并更新Kalman模型;

5.2)用前第10帧KCF模型更新当前帧KCF模型;

End

End While

图 3给出了本文改进KCF再跟踪算法整体流程。

图 3 算法整体流程图 Fig. 3 Algorithm overall flow char
4 实验结果分析 4.1 实验环境及参数

为了验证本文SPKCF算法的有效性,在6个视频上进行综合测评,并与目前比较先进的跟踪算法如DSST[5]、ECO、KCF[11]、LDES、SRDCF[10]、SAMF(scale adaptive with multiple features tracker)[25]、STRCF进行对比测试平台为Matlab2018b,实验均在Intel(R) Core(TM) i5-7400 CPU with NVIDIA GTX 1050 4G,主频3.0 GHz,16 G内存配置的Windows10 64 bit PC系统上完成。本算法的基本参数与KCF相同,且在所有视频序列上保持一致,高斯核标准差σ为0.5,正则化系数λ为0.0001,学习因子η为0.02。

4.2 性能评估方法

针对本文所提SPKCF算法对抗遮挡问题的鲁棒性,本文选用OTB数据集中6组有着不同程度遮挡的数据集进行测试,测试视频分别是Coke、Girl、Jogging、Rom105、Subway和Tiger2。本文分别从准确度,成功覆盖率和速度方面分析。

准确度${D_{\rm{P}}} = m/N$(distance precision,DP),成功覆盖率${S_{\rm{R}}} = {S_n}{\rm{/}}N$(success rate,SR),中心误差${E_{{\rm{CLE}}}} = \sqrt {{{({x_t} - {x_{t0}})}^2} + {{({y_t} - {y_{t0}})}^2}} $(center location error,ECLE),速度$V = N{\rm{/}}{t_{{\rm{toc}}}}$(velocity,V)。跟踪目标重叠率${O_{{\rm{score}}}} = area({R_{\rm{t}}} \cap {R_{{\rm{gt}}}})/area({R_{\rm{t}}} \cup {R_{{\rm{gt}}}})$。其中:Rt为跟踪得到的目标窗口,Rgt为真实目标窗口,area是区域面积,Sn为成功次数。当Oscore > 0.5时,Sn加1。(xtyt)是第t帧滤波器得到的目标中心位置,(xt0yt0)是目标在第t帧的真实中心位置,N是视频帧总数,${t_{{\rm{toc}}}}$为跟踪算法跑完这个视频所需要的时间。

4.3 抗遮挡实验结果 4.3.1 SPKCF与KCF对比

首先将SPKCF算法与KCF在6组遮挡视频上进行抗遮挡对比,以验证算法的有效性。图 4显示了SPKCF与KCF在各个视频上的时刻覆盖结果。从图 4可知,SPKCF在重叠方面优于KCF,在全遮挡Jogging、rom105和Tiger2视频中,SPKCF时刻重叠率基本都在0.7以上,而KCF遇见遮挡导致跟踪目标丢失时,时刻重叠率为0,中心位置与手工标注的准确中心位置之间平均欧氏距离超过了20像素点。从而得知,在遮挡方面SPKCF比KCF具有鲁棒性。

图 4 KCF与SPKCF在视频上与真实位置重叠情况(红线是SPKCF,蓝线是KCF) Fig. 4 KCF and SPKCF overlap with the real position on the video (the red line is SPKCF and the blue line is KCF)
4.3.2 抗遮挡性能对比

图 5显示了目标遇见遮挡时部分的跟踪结果(红色框是SPKCF,蓝绿色是DSST,蓝色框是ECO,绿色框是KCF,黑色框是LDES,黄色框是SAMF,紫红色框是SRDCF,白色框(用水绿色表示)是STRCF)。在Coke数据集上,KCF、SRDCF和STRCF在目标遇见遮挡时会产生偏移,例如第200帧、第210帧。在Girl数据集上,目标受到相似的干扰物遮挡,DSST和KCF出现目标跟丢了,SRDCF出现了跟踪偏移,例如第450帧、第480帧、第500帧。在Jogging数据集中,在被灯杆遮挡之后,8种算法中,DSST、KCF算法出现了目标跟丢的情况,例如第86帧、第98帧、第108帧、第131帧和第150帧。在Rom105数据集中,跟踪目标经历了长时间遮挡,只有SPKCF算法能正确跟踪目标,例如第318帧和第329帧,而其它7种算法都出现了目标丢失。在Subway数据集中,DSST和LDES在跟踪过程中,由于跟踪目标较小,受到背景干扰比较多,导致了跟踪效果不佳。在Tiger2数据集中,目标经历了遮挡和尺度稍微变化,只有SPKCF、SRDCF和STRCF跟踪的效果比较好,例如第124帧、第205帧和第290帧。在受到不同程度遮挡的数据集上,本文算法很好地处理遮挡后跟踪,而其它7种算法都受到不同程度的影响,导致跟踪效果没有达到预期,图 6显示了8种算法在数据集上的精确度图。

图 5 目标遮挡部分结果 Fig. 5 Part of target occlusion results

图 6 算法在不同视频集上的精确度图。(a) Coke;(b) Girl;(c) Jogging;(d) Subway;(e) Rom105;(f) Tiger2 Fig. 6 Accuracy diagram of tracker on different videos. (a) Coke; (b) Girl; (c) Jogging; (d) Subway; (e) Rom105; (f) Tiger2

表 1列出几种算法在抗遮挡方面的结果。在受遮挡不严重的视频集Coke、Girl和Subway上,SPKCF在视频集Girl和Subway上的精确度能达到100%(以20 pixels为标准)。而DSST和LDES在Subway上的精确度分别为25.7%,72.6%。在视频Jogging、Rom105和Tiger2上,跟踪的目标受到遮挡的情况稍微严重一点,DSST和KCF就跟不上目标了,LDES、SAMF和STRCF跟踪效果差不多。ECO、SRDCF和SPKCF跟踪效果较好。从抗遮挡整体情况上来说,DSST和KCF跟踪效果一般,LDES、SAMF、SRDCF和STRCF效果还行,精确度分别能达到84.1%,87.3%,88.2%和86.7%。ECO和SPKCF精确度超过90%,ECO的精确度是93.2%,而SPKCF能达到95.8%。

表 1 在视频集上的结果 Table 1 Results of the videos
DSST ECO KCF LDES SAMF SRDCF STRCF SPKCF
Coke 0.931 0.911 0.838 0.952 0.935 0.808 0.897 0.921
Girl 0.928 1 0.864 1 1 0.992 1 1
Subway 0.257 1 1 0.726 1 1 1 1
Jogging 0.231 0.974 0.235 0.977 0.974 0.977 0.977 0.99
Rom105 0.805 0.805 0.796 0.808 0.805 0.767 0.797 1
Tiger2 0.323 0.900 0.39 0.584 0.526 0.748 0.533 0.839
Average 0.579 0.932 0.687 0.841 0.873 0.882 0.867 0.958

表 2是8种算法在测试视频上的成功覆盖情况。DSST、ECO和KCF成功覆盖率都低于0.8,分别是0.501、0.754和0.655。DSST跟丢目标的情况相对比较多,成功覆盖率偏低。LDES、SAMF、SRDCF和STRCF的成功覆盖率都超过了0.8,分别是0.845、0.829、0.817和0.802。其中,LDES由于只有部分跟丢,效果相对SAMF、SRDCF和STRCF要稍微好点。而本文的SPKCF的成功覆盖率达到了0.898,远远好于KCF 0.655的成功覆盖率,并且明显好于其它算法。因此,本文的改进方法在抗遮挡方面有很好的效果。

表 2 算法在测试视频上的覆盖情况 Table 2 Coverage of the algorithm on the test video
DSST ECO KCF LDES SAMF SRDCF STRCF SPKCF
Coke 0.832 0.526 0.722 0.952 0.818 0.636 0.722 0.773
Girl 0.306 0.774 0.756 0.980 0.904 0.776 0.940 0.960
Jogging 0.225 0.958 0.225 0.971 0.967 0.971 0.971 0.971
Rom105 0.773 0.773 0.767 0.761 0.773 0.761 0.764 0.956
Subway 0.223 1.000 0.994 0.726 0.989 0.994 1.000 0.994
Tiger2 0.319 0.723 0.400 0.574 0.532 0.945 0.497 0.861
Average 0.501 0.754 0.655 0.845 0.829 0.817 0.802 0.898

表 3是算法在测试视频上的平均中心误差。DSST和KCF超过了30,ECO、LDES、SAMF、SRDCF和STRDCF超过了7,分别是7.88,10.60,9.54,9.55和8.98。SPKCF为6.55,远小于KCF的30.02,说明本文算法跟踪效果比较好。

表 3 算法在测试视频上的平均中心误差 Table 3 The average center error of the algorithm on the test video
DSST ECO KCF LDES SAMF SRDCF STRCF SPKCF
Average 55.24 7.88 30.02 10.60 9.54 9.55 8.98 6.55

LDES、SAMF、SRDCF和STRCF在遮挡方面实验效果相对不错,然而在跟踪速度方面表现得很一般。由表 4可知,SPKCF在速度上比LDES、SAMF、SRDCF和STRCF有明显的优势。LDES平均跟踪速度只有每秒19.17帧,达不到实时要求最基本的速度。SAMF检测速度平均是每秒27.53帧,最低是每秒10.8帧。SRDCF检测速度的帧数都在每秒13帧以下,基本上在每秒7帧左右,无法达到在线跟踪的要求。STRCF和LDES的检测速度基本上相同,每秒17.05帧。ECO跟踪速度与相比上面的几种算法相比,快了很多,能达到每秒47.82帧。而SPKCF在速度方面表现依旧很好,大约是ECO跟踪速度的3倍。

表 4 平均跟踪速度 Table 4 Mean velocity 
(f/s)
Coke Girl Jogging Rom105 Subway Tiger2 Average
DSST 28.9 72.5 37.4 69.4 95.4 22.7 54.38
ECO 38.8 59.8 41.41 51.42 56.04 39.42 47.82
KCF 219.82 361.91 330.08 432.95 476.72 184.22 334.28
LDES 9.05 31.38 15.99 25.49 24.39 8.74 19.17
SAMF 11.53 48.14 26.71 32.83 35.15 10.8 27.53
SRDCF 5.24 9.32 5.45 8.35 12.49 4.98 7.64
STRCF 14.17 16.1 14.98 16.41 25.9 14.71 17.05
SPKCF 83.5 143.16 119.47 151.45 175.56 66.14 123.21

图 7是8种算法在测试视频上整体的精确度图。从图上可知,SPKCF在抗遮挡方面有着很好的鲁棒性。本文改进的算法在抗遮挡方面有着明显的提升,并且也符合了在线跟踪的速度要求,在阈值误差为20 px时的精确度达到95.8%。

图 7 六个视频集上的平均精确度图 Fig. 7 Average accuracy on six videos
5 结论

本文针对核相关滤波实时运动目标进行抗遮挡再跟踪,应用Sobel边缘检测算法与FHOG相融合,检测目标所在位置,并计算响应值旁瓣值比(SPSR),再根据SPSR与阈值进行判断,进而基于此判定Kalman预测的必要性。实验结果充分说明,较之其它现有方法,核相关滤波方法的改进在解决核相关滤波器抗遮挡问题上有着显著的进步,其在检测速度上也有着不错的表现。但是也应该看到,实验存在不足,还是有可以改进地方。本文加入了改进方法,导致检测速度会比KCF检测速度慢了一点,这方面仍然需要进一步研究。

参考文献
[1]
Wu X J, Xu T Y, Xu W B. Review of target tracking algorithms in video based on correlation filter[J]. Command Information System and Technology, 2017, 8(3): 1-5.
吴小俊, 徐天阳, 须文波. 基于相关滤波的视频目标跟踪算法综述[J]. 指挥信息系统与技术, 2017, 8(3): 1-5 [Crossref]
[2]
Henriques J F, Caseiro R, Martins P, et al. Exploiting the circulant structure of tracking-by-detection with kernels[C]// Proceedings of the 12th European Conference on Computer Vision, 2012: 702–715.
[3]
Comaniciu D, Meer P. Mean shift: a robust approach toward feature space analysis[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2002, 24(5): 603-619. [Crossref]
[4]
Mei X, Ling H B. Robust visual tracking and vehicle classification via sparse representation[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2011, 33(11): 2259-2272. [Crossref]
[5]
Danelljan M, Häger G, Khan F S, et al. Accurate scale estimation for robust visual tracking[C]//Proceedings of the British Machine Vision Conference, 2014.
[6]
Grabner H, Grabner M, Bischof H. Real-time tracking via on-line boosting[C]//Proceedings of the British Machine Vision Conference, 2006, 1: 47–56.
[7]
Wang W, Wang C P, Fu Q, et al. Patch-based scale adaptive CSK tracking method[J]. Electronics Optics & Control, 2017, 24(2): 25-29.
王暐, 王春平, 付强, 等. 基于分块的尺度自适应CSK跟踪算法[J]. 电光与控制, 2017, 24(2): 25-29 [Crossref]
[8]
Henriques J F, Caseiro R, Martins P, et al. High-speed tracking with kernelized correlation filters[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2015, 37(3): 583-596. [Crossref]
[9]
Danelljan M, Khan F S, Felsberg M, et al. Adaptive color attributes for real-time visual tracking[C]//Proceedings of 2014 IEEE Conference on Computer Vision and Pattern Recognition, 2014: 1090–1097.
[10]
Danelljan M, Häger G, Khan F S, et al. Learning spatially regularized correlation filters for visual tracking[C]//Proceedings of 2015 IEEE International Conference on Computer Vision, 2015: 4310–4318.
[11]
Bertinetto L, Valmadre J, Golodetz S, et al. Staple: complementary learners for real-time tracking[C]//Proceedings of 2016 IEEE Conference on Computer Vision and Pattern Recognition, 2016: 1401–1409.
[12]
Valmadre J, Bertinetto L, Henriques J, et al. End-to-end representation learning for correlation filter based tracking[C]//Proceedings of 2017 IEEE Conference on Computer Vision and Pattern Recognition, 2017: 5000–5008.
[13]
Danelljan M, Bhat G, Khan F S, et al. Eco: efficient convolution operators for tracking[C]//Proceedings of 2017 IEEE Conference on Computer Vision and Pattern Recognition, 2017: 6931–6939.
[14]
Bao X A, Zhan X J, Wang Q, et al. Anti occlusion target tracking algorithm based on KCF and SIFT feature[J]. Computer Measurement & Control, 2018, 26(5): 148-152.
包晓安, 詹秀娟, 王强, 等. 基于KCF和SIFT特征的抗遮挡目标跟踪算法[J]. 计算机测量与控制, 2018, 26(5): 148-152 [Crossref]
[15]
Yan H, Zhang Y, Yang X L, et al. A kernelized correlaton filters with occlusion handling[J]. Journal of Optoelectronics·Laser, 2018, 29(6): 647-652.
闫河, 张杨, 杨晓龙, 等. 一种抗遮挡核相关滤波目标跟踪算法[J]. 光电子·激光, 2018, 29(6): 647-652 [Crossref]
[16]
Li F, Tian C, Zuo W M, et al. Learning spatial-temporal regularized correlation filters for visual tracking[C]//Proceedings of 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2018: 4904–4913.
[17]
Li Y, Zhu J K, Hoi S C H, et al. Robust estimation of similarity transformation for visual object tracking[C]//Proceedings of the AAAI Conference on Artificial Intelligence, 2019, 33: 8666–8673.
[18]
Xu T Y, Feng Z H, Wu X J, et al. Learning adaptive discriminative correlation filters via temporal consistency preserving spatial feature selection for robust visual tracking[C]//Proceedings of 2019 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2019.
[19]
Li B, Yan J J, Wu W, et al. High performance visual tracking with Siamese region proposal network[C]//Proceedings of 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2018: 8971–8980.
[20]
Li B, Wu W, Wang Q, et al. SiamRPN++: evolution of Siamese visual tracking with very deep networks[C]//Proceedings of 2018 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2018.
[21]
Shan Q W, Zheng X B, He X H, et al. Fast object detection and recognition algorithm based on improved multi-scale feature maps[J]. Laser & Optoelectronics Progress, 2019, 56(2): 55-62.
单倩文, 郑新波, 何小海, 等. 基于改进多尺度特征图的目标快速检测与识别算法[J]. 激光与光电子学进展, 2019, 56(2): 55-62 [Crossref]
[22]
Fan H, Lin L T, Yang F, et al. LaSOT: a high-quality benchmark for large-scale single object tracking[C]//Proceedings of 2019 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2019.
[23]
Faragher R. Understanding the basis of the Kalman filter via a simple and intuitive derivation[lecture notes][J]. IEEE Signal Processing Magazine, 2012, 29(5): 128-132. [Crossref]
[24]
Bolme D S, Beveridge J R, Draper B A, et al. Visual object tracking using adaptive correlation filters[C]//Proceedings of 2010 IEEE Computer Society Conference on Computer Vision and Pattern Recognition, 2010: 2544–2550.
[25]
Li Y, Zhu J K. A scale adaptive kernel correlation filter tracker with feature integration[C]//Computer Vision-ECCV 2014 Workshops, 2014: 254–265.