相关滤波的运动目标抗遮挡再跟踪技术

2021-09-11 03:13戴煜彤陈志国傅毅
智能系统学报 2021年4期
关键词:跟踪目标响应值高斯

戴煜彤,陈志国,傅毅

(1.江南大学 人工智能与计算机学院,江苏 无锡 214122;2.无锡环境科学与工程研究中心,江苏 无锡 214153)

目标跟踪[1]近年来因其横跨视频监控、无人驾驶、无人飞行器、医学图像分析、空中预警等诸多领域而迅速成为计算机视觉研究的热点之一。目标跟踪的主流方法目前正由生成类方法逐渐转向判别式方法,其中基于相关滤波的目标跟踪算法发展尤为快速[2]。

相关滤波算法由Bolm 等提出的最小输出误差平方和[3](minimum output sum of squared error,MOSSE)引入目标跟踪领域。Henriques 等采用了HOG 特征和循环移位采样方式,提出了核相关滤波器[4](kernelized correlation filter,KCF)跟踪算法,大大提高了跟踪算法的准确率。Martin Danelljan 等在MOSSE 的基础上增加了一个尺度滤波器用以应对尺度变换的情况,提出了DSST(discriminative scale space tracking)算法[5]。循环移位策略的应用使得基于相关滤波的目标跟踪算法会受到边缘效应的影响,Martin Danellja 提出的SRDCF[6](spatially regularized discriminant correlation filter)采用空间正则化惩罚系数取得了一定的效果。之后,Danelljan 在2016 年提出了C-COT[7](continuous convolution operators for visual tracking)算法,通过差值函数,将不同分辨率的特征图映射到连续的空间域上,计算机效率却降低了。随后,Danelljan 于2017 年在CVPR 上提出了ECO[8](efficient convolution operators),该算法分为手工特征算法(efficient convolution operators handcraft,ECO_HC)和卷积特征算法两个版本。ECO 使用高效卷积操作融合多个特征获取特征图,从模型的大小、训练集的更新策略以及模型更新的频率3 个方面对C-COT 改进,极大地提高了算法的时间与空间效率。2018 年,Li 等[9]在CVPR 上发表了Siam-RPN(siamese-region proposal network)网络架构算法。为了解决Siam-RPN 网络架构算法在使用训练好的深层网络时出现的跟踪算法精度下降问题,Li 等[10]在2019 年CVPR 上又提出了Siam-RPN++算法。Fan 等[11]为了解决大的尺度问题,在CVPR 2019 上提出了多级tracking 网络La-SOT(large-scale single object tracking)算法。

本文针对ECO_HC 在遮挡方面的不足提出了多特征融合的抗遮挡相关滤波跟踪算法。将FHOG 特征和ULBP 特征进行自适应加权融合,实现了对目标更精确地定位。再利用高斯掩码函数过滤掉一部分负样本,用以解决循环移位造成的边界效应,缓解模型漂移的情况。最后,根据最大响应值计算的峰值均值比判断目标是否被遮挡,若目标处于正常跟踪状态,则修正卡尔曼滤波器预测的跟踪目标坐标;若目标处于被遮挡状态,则启动目标重定位策略,使用卡尔曼算法预测得出目标位置,并停止模型更新,回溯到之前模型未被污染的状态。

1 ECO_HC 跟踪基本原理

相关滤波器[12-18]的核心是通过当前帧和前序帧训练的滤波器判定跟踪目标在下一帧的位置。ECO_HC 算法首先在第一帧中选定跟踪目标,获取其在图片帧中的实际位置及其他特征信息用以初始化训练跟踪器,后续帧中根据跟踪器中预测的位置对其周围进行采样点响应,取最高响应值的位置为跟踪的目标所在位置,并对跟踪器进行更新。相关滤波是根据前序帧训练的模型去预测跟踪目标下一帧的位置,当跟踪目标发生剧烈变化,比如产生形变或者遮挡时,模型就会学习到错误的信息,受到污染,导致后续帧容易跟踪失败。此外,相关滤波采用了循环移位来丰富样本,这就导致在训练的图像块中,只有万分之一的图像块是真实的样本,因此,解决边界效应对提高模型的准确度有着至关重要的作用。

1.1 相关滤波

相关滤波的核心思想如下:若滤波器为h,输入的图像为f,对二者做相关运算求得响应值g:

响应值g越大,则f和h的相关度越高。当输出的响应值取最大值时,该响应值对应的位置即为当前跟踪目标的位置。为了提高计算速度,可将式(1)利用快速傅里叶变换转至频域计算:

式中:(∗)表示共轭,上述公式可简化为

对于每一个样本图像fi都存在与其对应的gi,则式(3)可变换为

H*的更新公式为

最后,对式(5)进行傅里叶逆变换即可求得滤波器h。

1.2 因式分解的卷积操作

ECO_HC 是在C-COT 算法的基础上进行改进的,C-COT 通过学习一个含有M个训练样本的集合获得一个卷积滤波器,其中每一个通道d的特征层都有独立的分辨率Nd。通过引入运算符Jd给出的插值模型,将特征通过插值操作转至连续空间域t(t∈[0,T)):

式中:bd是周期为T(T>0)的插值内核,所得插值特征层是一个连续的周期为T的函数。在C-COT 中,使用Jd{x}表示整个插值特征图,将其与训练的一个连续的周期为T的多通道卷积滤波器f=(f1,f2,···,fD)进行相关运算,得到的响应分数S f{x}为

C-COT 对于每个维度的特征都训练了一个对应的滤波器,但是其中很多滤波器的贡献不大。因此,ECO_HC 在特征提取的阶段使用了原来特征的子集,对于D维特征,ECO_HC 选取了其中贡献较大的C个滤波器(C

式中:P为D×C的系数矩阵;PT为线?性降维算子;是特征层为c的滤波器的线性组合;pd,c为滤波器的学习系数。

1.3 生成样本空间模型

ECO_HC 更改了训练集的样本更新策略,用高斯混合模型(gaussian mixture model,GMM)生成不同的分量,每个分量是一组相似度较高的样本,分量之间差异较大。GMM 的建模如下:

式中:L是高斯分量N(x;µl;I)的数量;πl是高斯分量的先验权重;µl是高斯分量的平均值;单位矩阵I是协方差矩阵。起初,每一个新样本xj都初始化一个新的分量m:

γ为学习速率,当分量个数超过设定好的上限L时,如果有一组分量的权重 πl小于设定的阈值,则丢弃该分量;否则,将两个最相似的分量k与l合并为一个公共分量n:

2 再定位基本原理

本文算法是基于ECO_HC 实现的目标遮挡后的再定位技术[19-20]。首先,将FHOG 特征和ULBP 特征进行自适应加权融合;其次,加入高斯形状的掩码函数解决边缘效应,并保留更多的背景信息,减少模型漂移;最后,本算法根据每一帧获取的峰值响应值计算参数峰值均值比(peak-to-average ration,PAR),使用PAR 对目标是否被遮挡进行判断。若PAR 大于一个固定的阈值,说明目标此时处于正常跟踪状态,根据ECO_HC 算法预测的目标位置,修正Kalman 算法预测的目标位置,并更新滤波器模型;若PAR 小于一个固定的阈值,则说明目标处于遮挡或失踪状态,此时采取目标再定位机制,使用Kalman 滤波器预测出当前目标的位置,并回溯到之前未被污染的模型来更新模型。

2.1 ULBP 特征提取

本文使用ULBP 提取的特征来加强FHOG 提取的特征。ULBP 算法是对LBP(local binary pattern) 算法的一种改进,是单维度的特征表述,LBP 描述的是图像局部纹理特征。LBP 算子是对样本中的每个像素点,选取其为中心的3×3 邻域,在该邻域内,将其周围的8 个像素值与之比较,大于该像素点的值置1,否则置0,然后按照顺时针方向组合即可产生8 位二进制数,即28种模式。但是,过多的二进制模式对于纹理的表达是不利的,过于复杂且较大的信息量,对快速提取目标特征信息是不利的,因此需要的是尽可能少且具有代表性的一些目标特征。因此本文采取了uniform LBP(ULBP),其核心思想是对LBP 进行降维,绝大多数LBP 模式只包含两次从1 到0 或者从0 到1 的跳变,并将最多有两次跳变的归为一个等价模式类,其余的归为混合模式类,通过这样改进,3×3 的邻域的二进制模式就由28模式减少为58 种,并且不会丢失任何信息,也能减少高频噪声的影响。

在FHOG 提取得到的一个31 通道的梯度直方图M1的基础上,用ULBP 得到的一维特征MULBP与M1的每个通道进行线性加权融合,得到特征图M2。通过大量实验,融合系数 λ取值为0.01:

2.2 高斯掩码函数

本文在模型更新时采用高斯掩码函数,对跟踪目标的中心取较大的系数,边缘取较小的系数,保留一定的背景信息,缓解边缘不连续性造成的影响,以提高模型的准确性。

二维高斯函数将正态分布应用于图像处理中,随着中心点到边缘的距离增大,取得的加权平均值越小。若(u,v)表示像素点坐标,则二维高斯函数的定义为

因为目标中心位置的样本信息比边界位置上的信息更加重要,所以本文对高斯函数做了相应的改进,使得函数由中心点随着目标框的形状呈椭圆形向图像边缘发散,结合掩码函数,对图像边缘不连续性的地方至0,其余地方至改进过后的高斯函数值。然后将此构造好的掩码矩阵左乘循环移位样本,得以增加真实训练的样本比例,得到的函数如图1(d)所示。定义如下:

式中:假设原始样本的长宽分别为W与H,则w与h分别为目标框的长与宽,则只有在时,会发生边缘不连续性的情况,如图1(b)所示。参数 σ控制函数径向作用范围,即控制样本权重衰减的速度。本文将二维高斯函数分解成两个一维的高斯函数,先从水平方向对图像进行卷积操作,将所得结果再对竖直方向进行操作,提高了算法的效率。图1(b)和图1(c)对比看出,加了高斯掩码函数之后,边界效应得到了有效的缓解。

图1 高斯掩码示意Fig.1 Illustration of the mask

2.3 参数峰值均值比

本文在模型更新时使用参数峰值均值比(peak to-average-ratio,PAR)来判断当前目标是否处于遮挡状态。ECO 主要采用连续空间域中的卷积算子对训练样本进行隐式差值,通过对一组卷积滤波器来产生目标的连续域置信度图,该图中的最高响应值即为目标位置。而当目标处于遮挡状态的时候,置信度图则会由一个很高峰值变为多个不明显的峰值状态,为了解决目标此状态下容易跟踪失败的问题,本算法引入再跟踪机制。由PAR 判断跟踪目标在当前帧中的状态,若PAR 不小于阈值θ,说明目标处于正常跟踪状态;而当PAR 小于阈值θ,说明目标处于遮挡状态,开始执行再跟踪机制。PAR 的定义为

式中:max(f(i))表示第i帧的最大响应值;PAR 即为跟踪目标在i帧的最大响应值与前q帧的最大响应值均值的比值,本文q的值为20。通过大量实验,阈值 θ取值为0.55。

当跟踪目标处于正常跟踪状态时,PAR 的值处于一种相对稳定的波动状态而当目标处于遮挡状态时,max(f(i))会突然变小,因而PAR 的值也会随之变小,见图2。因此,PAR 可以判断目标目前的跟踪状态。

图2 视频序列Girlmov 的PAR 时刻值Fig.2 PAR time value of Girlmov

2.4 目标重定位

卡尔曼滤波[21]结合前序帧与当前帧可递推地推测下一帧跟踪目标的位置,从而预测出目标被遮挡后在图片中的位置。若PAR 小于阈值θ,则目标被遮挡,此时启动目标重定位机制,将卡尔曼滤波器预测的目标位置传给核相关滤波器,并回溯至之前未被污染的模型去更新模型;若PAR 大于阈值θ,则使用ECO 算法中目标的位置修正卡尔曼滤波预测的目标位置。为了提高计算效率,将目标中心点的横纵坐标分两步更新。假设ri是系统噪声,vi是观测噪声,皆服从高斯分布,则根据式(16)、(17)构造第i帧的横坐标ui状态预测方程和系统的观测方程:

式(18)和式(19)是状态预测方程和误差协方差预测方程。上述两个方程中C−i是根据前一帧中的噪声协方差矩阵递推计算出的第i帧的预测的误差。Q为协方差矩阵。

式(20)~(22)是状态更新方程,其中K是卡尔曼增益矩阵,C是卡尔曼增益矩阵的误差值,N是修正后的状态转移矩阵,R为修正后的协方差矩阵。式(21)是修正过后的目标中心点的横坐标值。目标中心点纵坐标的预测和更新与横坐标一致,如若启动重定位机制,则将卡尔曼滤波器预测的位置传回原滤波器,并停止模型更新。

本文改进算法的具体流程如图3 所示。

图3 算法整体流程图Fig.3 Algorithm overall flow char

3 实验结果及分析

3.1 实验环境及参数

本算法的测试平台为Matlab2018b,所有实验均在Intel(R) Core(TM) i5-8250U CPU with NVIDIA GeForce MX150 2G,主频1.6 GHz,8 GB 内存配置的windows10 64bit PC 系统上完成的。本文算法仍保留ECO_HC 算法的基本参数,并在所有测试视频上保持一致,高斯标签带宽 σ的值为0.062 5,学习率为0.009,存储的最大训练样本的数量为30。

3.2 性能评估方法

为了验证本算法对抗遮挡问题的有效性,本文选用了数据集Temple Color 128 中16 个不同程度遮挡的视频进行测试,16 个视频分别为Airport_ce、Busstation_ce1、Coke、Face_ce2、Girlmov、Motorbike_ce、Soccer、Suitcase_ce、Surf_ce3、Tiger2、Busstation_ce1、Jogging2、Kite_ce2、Matrix、Basketball、Boat_ce2。除了与ECO_HC[8]进行对比之外,本文还选取了DSST[5]、KCF[4]、SRDCF[6]、STRCF[22]、LDES[23]和SAMF[24]进行比较。本文分别从精确度、成功率、覆盖率和中心误差对算法进行分析。精确度DP=m/N(distance precision,DP),成功率SR=Sn/N(success rate,SR),中心误差tion error,CLE)。

为跟踪目标覆盖率,Rt为跟踪得到的目标窗口,Rgt为真实目标窗口,area是区域面积。Sn为成功的次数,当score>0.5时,Sn加1。(xi,yi)是第i帧滤波器得到的目标中心位置,(xi0,yi0)是目标在第i帧的真实中心位置。N是视频帧总数。

3.3 抗遮挡实验结果

3.3.1 本文算法与基线ECO_HC 算法比较

首先将本算法与ECO_HC 算法在16 组有不同程度遮挡问题的视频上针对抗遮挡问题进行对比实验,以验证本文算法的有效性。表1 中显示了本文算法与ECO_HC 在精确度和成功率两个评价指标上的测试结果,可以看出本文算法性能较好。在这10 个视频集中,本文算法的平均精确度为87.3%,成功率为76.5%,相比基线算法ECO_HC,分别提升了27.7%和23.7%。由此可见,本文改进后的算法产生了积极的作用。

表1 在视频集上的精确度和成功率Table 1 Precision and success rate on the videos

3.3.2 抗遮挡性能的定性分析

本实验选用DSST[5]、ECO_HC[8]、KCF[4]、SRDCF[6]、STRCF[22]、LDES[23]、SAMF[24]共7 种跟踪算法进行性能对比,测评结果如图4 所示。在视频序列Airport_ce 上,目标受到颜色相同的干扰物遮挡时,DSST、SRDCF、ECO_HC 随着遮挡物发生了偏移,例如第80 帧、90 帧、100 帧。在视频序列Busstation_ce1 上,第60 帧显示的是目标处于较长时间的全遮挡后的位置,只有本文的算法跟上了目标,而其余的7 种算法均丢失了跟踪目标。在视频序列Girlmov 中,目标发生完全遮挡后,其他几种算法都随着遮挡物发生了漂移,例如第110 帧、第120 帧、第130 帧、第140 帧。在视频序列Motorbike_ce 中,当目标发生遮挡又重新出现之后,本文算法跟踪准确,而其他算法发生了不同程度的偏移。在视频序列Suitcase_ce中,目标的尺度较小,而遮挡物的尺度较大,遮挡情况比较严重,本文算法较准确地预测出了行李箱的位置,ECO_HC 与SRDCF 发生了严重的漂移,其余算法则停留在目标被遮挡前的位置,例如第170 帧。综合这5 个测试视频中的跟踪效果,可见本文算法较好地预测了目标被遮挡后的位置,并且较好地学习了背景信息,优化了模型污染造成的漂移问题,而其他7 种算法在处理遮挡问题上效果不佳,本文算法的效果较好。

图4 目标遮挡部分效果Fig.4 Part of target occlusion results

图5 显示了本文算法与其他7 种在视频序列上的精确度。在受部分遮挡的视频序列Coke、Tiger2 中,除了KCF 和DSST 外,其他几种算法效果差不多。而当目标遮挡情况严重一点时,比如Soccer 和Face_ce2 中,LDES、SAMF、ECO_HC 的精度些许偏低。但是当目标处于一段时间的完全遮挡,比如视频序列Airport_ce 和Busstation_ce1,本文算法的重定位机制以及改进的模型更新算法起到了有效的作用。

图5 不同算法在不同视频集上的精确度图Fig.5 Distance precison diagram of different trackers on different videos

表2 展示了几种算法在这几个视频序列上的跟踪结果。本文提出的算法在Coke、Tiger2 这几个发生较轻微遮挡的视频序列中,精确度与其他算法仅相差0.1% 与0.05%,均高于90.7%,而STRCF 在这两个视频序列上的结果仅为89.7%和52.6%。在余下几个遮挡严重的视频序列中,KCF 算法基本都没有跟上目标,SAMF 和STRCF效果好些,精确度分别为60.9%和63.2%,ECO_HC算法的精确度也达到了59.6%,本文算法的优势较为明显,平均精确度能达到87.3%。

表2 不同算法在视频序列上的结果Table 2 Results of the videos via different methods

续表 2

表3 显示了中心误差位置这一评价指标的测试结果,由于存在部分视频序列跟丢的情况,因此7 种算法的表现不是很好。DSST、ECO_HC、KCF、SRDCF、LDES 的平均中心误差都超过了40。SAMF 与STRCF 的中心位置误差较小,分别为30.10 和32.78。本文算法的中心误差远小于其他几种算法,平均中心误差为8.71,说明本文算法的表现较好。

表3 不同算法在视频序列上的中心误差值Table 3 Center location error of the videos via different methods

表4 显示了8 种算法在这16 个视频序列上的成功率情况,ECO_HC、KCF、SAMF 跟丢的情况出现的较多,成功率偏低,分别为0.528、0.450 和0.507。SRDCF 与STRCF 这两个算法对模型污染有较好的效果,在目标被遮挡的情况下表现的效果稍好,平均成功率分别为0.589 和0.541。LDES 在这7 种算法中表现较好,平均成功率达到63.6%。而本文算法的成功率76.5%,较基线方法ECO_HC 优势明显。因此,本文算法的抗遮挡性能表现良好。

表4 不同算法在视频序列上的成功率Table 4 Success rate of the videos via different methods

由于视频序列Matrix 只有100 帧,所以在绘制图6 的平均中心误差和平均覆盖率评价曲线时,截取了16 个视频序列的前100 帧进行对比。图中红色曲线为本文算法的效果曲线,虽然本算法在覆盖率这一评价指标的前50 帧效果一般,但总体效果优势明显,对ECO_HC 算法的改进成效不错。由上可知,本文改进的算法相较基线算法在抗遮挡方面有较强的鲁棒性。

图6 16 个视频序列上的平均精确度、平均中心误差、平均覆盖率和平均成功率Fig.6 Average distance precision,average center location error,average cover rate and average success rate on 16 videos

4 结束语

本文针对ECO_HC 算法容易被遮挡以及遮挡后模型污染等情况干扰而导致算法效果不佳的问题,提出了一种融合ULBP 特征的目标重定位机制相关滤波算法,有效地解决了由于遮挡因素带来的模型漂移问题,提高了算法跟踪的精度。在视频序列集上的结果显示,本文算法在覆盖率、跟踪成功率、中心误差等评价指标下较其他算法性能较好,具有较强的鲁棒性。本文算法在面对目标发生快速移动时表现效果较差,因此对目标行动轨迹的预测仍需进一步的改进与研究。

猜你喜欢
跟踪目标响应值高斯
核相关滤波与孪生网络相结合的目标跟踪算法
基于荧光光谱技术的不同食用淀粉的快速区分
数学王子高斯
天才数学家——高斯
提高环境监测数据准确性初探
紫外荧光法测硫各气路流量对响应值的影响
基于图割理论的尺度自适应人脸跟踪算法
连续同色调背景下运动目标自适应跟踪
从自卑到自信 瑞恩·高斯林
基于卡尔曼和图像信息量的Mean Shift改进跟踪算法