APP下载

基于多尺度建议框的目标跟踪误差修正方法

2020-10-10张宏伟李晓霞

计算机工程与应用 2020年19期
关键词:跟踪器修正滤波

张宏伟,李晓霞,朱 斌,马 旗

国防科技大学 电子对抗学院,合肥230037

1 引言

视觉目标跟踪一直是机器视觉领域的重点问题[1-2],其广泛应用于视频监控、智能交通、行为分析等领域。随着各类无人机的广泛使用,针对无人机航拍图像的视觉跟踪在远程无人机打击、前视红外、精确制导等领域得到了越来越多的应用。最近几年,随着深度学习算法和计算机硬件条件的发展,跟踪算法都在朝着深度学习方向发展,精度得到了显著的提升。依据目标的外观模型描述的不同,目前跟踪算法通常分为基于产生式(Generative)模型和判别式(Discriminative)模型的方法[3],判别式方法通过训练分类器来区分目标和背景,兼顾背景模型用作负的样本进行训练,因此在处理复杂的场景时一般具有更好的鲁棒性。

在OTB(Visual Object Tracking)测试集,上评分较高的算法实际应用于无人机视觉跟踪时往往只能短时间锁定目标,其中最主要的挑战是跟踪漂移问题,原因在于针对判别式模型只有少量准确的标签样本来训练分类器。由于在跟踪过程中,模板跟踪依赖的是前面序列帧的分类结果,因此,如果前几帧的跟踪没有正确的框定目标,这种自我学习的方法最终将造成跟踪漂移,从而致使误差不断累积导致跟踪失败,如图1所示。

图1 无人机视觉跟踪时跟踪失败情况

在低空无人机视觉跟踪中,无人机视角转换、目标的非平面内旋转较频繁的出现,现有算法由于跟踪漂移问题,难以自适应调整目标框。判别式模型跟踪方法都属于自我学习类方法,要克服这类方法的缺陷,需要离线训练模型来对跟踪结果进行修正。本文使用核相关滤波跟踪方法作为跟踪器,用学习得到的卷积神经网络特征代替HOG特征。目标跟踪修正模型采用多尺度建议框回归的网络结构,特征提取来自relu6_2 和relu7 两个分支,通过大量的已标注的目标样本离线训练,修正模型学习得到的是目标级别信息,通过置信度评价机制对相关滤波跟踪结果进行分析判断,及时修正跟踪漂移带来的误差,实验结果表明了该算法的有效性。

2 相关工作

最近几年,深度学习在图像分类、目标识别、显著性检测等计算机领域取得了非常大的发展。对于视觉跟踪,基于深度学习的方法已经超过传统的方法逐步成为研究的重点。例如,DLT[4]基于去噪自编码器通过离线训练和在线微调的方式实现对目标的跟踪。Zhang 等人[5]提出采用两层的卷积神经网络,通过局部特征映射获取鲁棒性全局特征来提高算法的鲁棒性。通过联合多层卷积特征,Wang等人[6]基于全卷积神经网络提高了跟踪的准确性。同样是多层卷积特征的结合,Ma等人[7]通过由粗到精的方式来挖掘不同深度特征的优势。MDNet 采用多域卷积网络的方式,针对不同的视频在线训练新的fc6 层提高了跟踪精度,但由于需要在线训练影响了跟踪速度[8]。Learnet[9]是第一个利用元学习方法解决跟踪任务,利用单个的样本来预测网络的参数,但该方法的性能比不上基于相关滤波(Correlation Filter,CF)的最新算法,例如CCOT[10]。

相对于传统算法采用人工设计的特征,基于深度学习的跟踪算法在成功率和跟踪精度上占据明显的优势,但跟踪速度还无法做到实时。另外一类判别式跟踪方法就是相关滤波算法,利用循环矩阵的性质推导实现了密集采样相关滤波,在跟踪速度上占据明显优势。MOSSE[11]首先推导了核相关滤波的闭解形式并用于视觉跟踪,如果采用单通道灰度图像速度能达到600 FPS,CN[12]、CSK[13]、KCF[14]以及COOT 都是后续在此基础上提出的改进算法,跟踪速度也达到了100 FPS。

这两类算法都有各自的优势,在OTB 测试集上获得了较高的评分,但实际应用于无人机视觉跟踪场景时普遍存在跟踪漂移的情况,因此需要对此进行改进才能应用于长时间跟踪问题。在最新的无人机跟踪算法中,文献[15]采用CSK跟颜色特征相结合的方法,提高了算法在目标运动速度较快、幅度改变较大时的适应能力,但由于采用手工设计的特征,算法的准确性不高,同时无法自适应调整目标框。文献[16]改进的基于核相关滤波器的无人机目标跟踪算法,也只是对尺度估计进行了重新设计,没有解决目标较大形变时的跟踪漂移问题。

3 本文算法

图2 基于修正模型的核相关滤波跟踪框架

为了解决无人机视觉跟踪时的跟踪漂移问题,本文提出了基于多尺度建议框回归的核相关滤波跟踪算法,整个算法跟踪框架如图2 所示。第一部分为孪生卷积神经网络提取特征,孪生网络两个分支具有相同的滤波参数,输入图像为模板图像和以上一帧跟踪结果为中心的周围搜索区域,通过核相关滤波得到模板匹配响应,响应图的中心即为初始估计位置。第二部分为目标跟踪修正模型,目标框回归训练在不同特征层多尺度建议框上进行,在线跟踪时能比较好的的修正跟踪漂移带来的误差。为了提高算法速度,跟踪框的修正只在发生漂移时进行,期间设计了相关响应置信度自适应评价机制对跟踪结果进行综合判断。得益于目标跟踪修正模型,精修后的跟踪结果反过来用于跟踪模块中模板的更新,避免了核相关滤波模板的污染。

3.1 基于孪生网络的核相关滤波跟踪

基于深度学习的跟踪算法在准确率上有明显的提高,其中在线更新类需要针对正、负样本在线训练网络参数,影响了跟踪速度,而相关滤波类算法在速度和精度上均有优良的表现,因此这里采用核相关滤波作为跟踪器。相关滤波采用孪生卷积神经网络来提取目标的深度学习特征,孪生卷积神经网络的训练框架如图3所示。

图3 孪生卷积神经网络提取深度特征

在前向传播过程中,网络输入为训练图像x和测试图像z,图像x为前一帧以目标为中心的周围区域,图像z为当前帧搜索区域内图像,分别通过具有相同结构的卷积神经网络fρ提取特征。CF为相关滤波模块,通过在傅里叶域求解脊回归问题获取训练样本的特征模板,最后再进行互相关运算,响应的表达式为:

为了使相关响应变换到逻辑回归的值域,增加s、b调整系数。在跟踪的过程中,每一帧都可以得到一个跟踪结果,获取一个新的目标模板w,实际跟踪时用于相关运算的模板是通过与前面所有帧计算的模板进行加权平均得到,这样可以自适应目标外观的变化。

其中矩阵X∈ℝd×n每列为取样向量,y∈ℝn为目标向量,λ为正则化系数。利用拉格朗日乘子法[17]进行求解,首先构建拉格朗日表达式,并令r=XTw-y可以得到:

因为相关滤波操作为矩阵元素点积,因此在跟踪时速度非常快,通过相关滤波网络离线训练CNN参数ρ,同直接采用目标检测任务迁移过来的网络相比较,可以进一步提高跟踪精度。

3.2 基于多尺度建议框的修正模型设计

为了解决跟踪漂移漂移时跟踪器无法自适应调整目标框,训练目标跟踪修正模型对跟踪结果进行修正。设目标建议框p(px,py,pw,ph)到正确的目标框g(gx,gy,gw,gh)的偏差估计为gˆ(gˆx,gˆy,gˆw,gˆh),修正模型输入以目标为中心的周围区域,经过网络前端的特征提取之后,训练得到目标特征到偏差的映射关系。由于CNN具有尺度不变性,因此偏差的计算一般采用平移+尺度缩放的形式,即:

当输入的建议框与目标框相差较小时(参考RCNN设置为IOU>0.6),才能认为这种变换是一种线性变换,那么可以用线性回归来建模对窗口进行微调,否则会导致训练的修正模型不收敛。

为了让建议框更加接近目标框,这里选择在多层特征图的每个点选取不同比例的预选框,如图4 所示,在特征图的每个位置设定固定的多个不同尺度建议框,当其中一个建议框与目标框差别较小时,训练时就能拟合偏差的线性关系。建议框的使用能让目标函数更容易收敛,降低训练难度,并能对应目标大小到不同的特征层。CNNbase采用VGG网络第5卷积层前面的相关层,回归模块包括建议框提取、置信度计算、目标框回归3个分支,网络结构设计如图5所示。

图4 多尺度建议框选取示意图

目标跟踪修正模型采用离线训练的形式,以避免在线跟踪再训练降低跟踪速度。

3.3 置信度评价机制和模板更新策略

通过前面的相关滤波网络和回归网络可以得到目标的两方面的信息,一是跟踪器根据前面帧的跟踪结果学习得到的目标外观模型w,可以预测它在下一帧的尺度和位置,但这样难以避免误差累积问题,而且一旦物体在图像中消失,跟踪就会失效,即使物体再出现也无法重新跟踪;二是修正模型离线训练得到的物体类级别的信息和特征到边框预测的映射关系,但也存在训练样本不足或者多目标干扰无法检测到目标的情况。为了综合运用这两方面的信息,需要对跟踪结果的可靠性进行评价,以便于及时停止用错误的结果对相关滤波模板进行更新。

在跟踪漂移出现的时候,往往伴随着相关滤波响应峰值的逐渐降低,这里用峰值旁瓣比(Peak Sidelobe Ratio,PSR)来定量描述相关响应峰的尖锐程度:

其中η为目标模板学习系数。通过引入目标跟踪修正模型,可以充分利用离线训练样本获取的先验知识,克服在线跟踪训练样本不足的缺陷,用准确位置对相关滤波模板进行更新,防止错误样本对跟踪器造成污染。融合相关滤波响应f(i)r和修正模型输出的目标置信图f(i)c是为了寻找数据在空间上的结构性,把跟踪器产生的结果和修正模型检测的正样本进行比较,选择出一个最可信的位置,保证物体最多只出现在一个位置上。

图5 回归网络结构示意图

以图6 的例子为例分析综合利用相关滤波跟踪和修正模型各自优点的好处,列表中第2 行为t时刻初始化框,第3 行中黄色框是t+1 时刻跟踪器产生的正样本,蓝色框是修正模型得到的正样本,红星标记的是综合判断之后的最后结果,4 行和5 行分别为相关滤波响应和修正模型得到的目标置信度。序列1 中汽车在转弯时跟踪器不能准确框定目标,置信度小于阈值,此时引入修正模型对跟踪器结果进行修正,防止跟踪漂移。序列2 中修正模型错误的认为上面一辆车的样本更可信,跟踪器通过前面序列帧学习得到的表观模型选择了置信度排序第2的下方一辆车,通过综合利用了离线训练获得的先验知识和在线跟踪特定目标的表观模型,最后仍然可以追踪到正确的目标。

images/BZ_141_328_1287_998_2048.png

4 实验结果及分析

4.1 网络训练

相关滤波网络特征提取层的训练数据来自ImageNet 视频数据集ILSVRC VID2015,输入图片为同个视频中时间间隔为T的两帧图像,以目标为中心裁剪周围区域。使用大小为32的批量处理计算每次迭代的梯度,学习速率从102到105依次递减。

修正模型首先在VOC2007 和VOC2010 数据集上训练学习得到卷积特征层的通用表达。对于每张图像取目标周围区域3倍目标框尺寸的范围,图片输入大小为300×300像素。采用SGD梯度下降算法,动量取0.9,权值衰减 γ 取0.000 5,学习率为105。在VOC 数据上训练将损失降到一定程度之后,再针对特定目标在无人机数据集VisDrone 上接着训练。VisDrone 中训练集含56个序列,共计24 201 帧图像,验证集含7 个序列,共计2 819 帧图像。模型总共训练了24 代,迭代过程中的损失函数变化如图7所示。

图7 修正模型训练时的损失函数变化

4.2 测试及结果分析

为了对算法效果进行评价,采用VisDrone、UAV123和DTB这3种专用的无人机跟踪数据集进行测试,测试环境为:CPU为Intel I5-7300HQ,4核2.50 GHz,GPU为NVIDIA GeForce GTX 1060 MaxQ。在使用GPU 的情况下,文本算法的运行速度大约为34.7 FPS。

评价采用OTB-100 标准中的中心定位误差和边框重合率两种评价指标,采用OPE(One Pass Evaluation)测试方法,将本文算法与目前较好的9 种算法ECO、Staple、CFNet、SRDCF、DSST、SiamFC、Goturn、KCF、CN进行了比较。

图8为成功率曲线测试图,其表征的是估计目标矩形框与真实目标矩形框的重叠率的大小,即两矩形框的相交部分面积除以两矩形框的相并部分的面积。其横坐标是从0 到1 的连续阈值,纵坐标是重叠率大于该阈值的所有帧占该序列总帧的百分比,使用曲线下方的面积来表示评价得分。图9是精度曲线图测试,其衡量的是估计目标中心与真实目标中心的欧式距离误差大小,其横坐标是一系列不同的距离阈值大小(像素单位),纵坐标是估计目标中心位置的误差距离小于该阈值的所有帧占该序列总帧的百分比,其中采用阈值为11 像素所对应的百分比为评价得分。

图8 航拍视频成功率曲线测试

图9 航拍视频精度曲线测试

可以看到针对无人机平台视觉目标跟踪,本文算法在成功率和精度要优于其他几类算法,特别是较小重叠率情况下。从成功率曲线可以看到,本文算法比排第二的ECO提高了14.3%,效果比较明显。对于精度曲线中心距离差小于11像素的占比为0.635,比SiamFC提高了3.1%(0.616),跟踪精度的提高主要得益于算法中修正模型对相关滤波跟踪结果的修正,克服了相关滤波长时间跟踪时容易产生跟踪漂移的缺点。

如图10 为10 种算法对视频序列跟踪的定性分析,由于篇幅原因列出了其中差别较大的4个序列。例如,序列UAV123-Car1 汽车转弯、序列UAV123-Boat3 船大尺度的变形情况时,其他几种算法只学习到前面序列帧目标出现过的形态,当形态发生剧烈变化,跟踪框不能及时的调整,而本文算法因为在离线阶段目标跟踪修正模型学习到目标的先验知识,所以在线跟踪时能及时对目标框进行修正,防止跟踪器目标模板被污染。序列visDrone-Person1中跟踪目标人在跟踪的过程中有大量遮挡,并且不时有旁边相似物体的干扰,本文算法都有好的表现,目标框能紧随目标形态的改变而改变。序列visDrone-Sheep2为成小目标形态的羊,在前面序列帧都能框定目标,在700帧的时候,相机有大幅度的晃动,因此所有算法都跟丢了目标。

同时,本文算法也存在跟踪失败的情况,如图11所示。在对DTB-Animal3序列羊的跟踪过程中,另一只羊从前面交叉通过,目标框最终漂移到了羊的头部,主要是因为目标跟踪修正模型错误的将两只羊当成了一个目标。DTB-ChasingDrones序列和UAV123-Car7序列存在目标跟丢的情况,出现在无人机速度太快导致视野晃动、汽车被遮挡的时候,本文算法因为搜索域比较小,还不能应对大范围搜索跟踪的情况,这同时也是另外几种跟踪算法普遍存在问题,是下一步需要进一步解决的问题。

图11 跟踪失败的情况

图10 部分无人机视频序列中的跟踪结果

5 总结

目前基于深度学习的目标跟踪方法跟踪精度上有显著的提升,在OTB等常规测试集上有明显的优势,但实际应用于低空无人机平台目标跟踪时,存在严重的跟踪漂移情况,主要是由于模板跟踪依赖的是前面序列帧的分类结果,当目标外观改变造成模板污染之后,很难重新框定目标。针对该问题,本文提出了一种基于目标跟踪修正模型的相关滤波跟踪算法,利用相关滤波来对目标的位置和尺度进行初始估计,针对特定的目标,修正模型离线训练得到目标级别信息,在线跟踪时对相关滤波跟踪结果进行精修成功的避免了误差累积的扩大。在UAV123、VisDrone、DTB无人机航拍数据集上进行的实验结果表明,本文算法能较好地克服跟踪时跟踪漂移问题,跟踪精度和成功率要优于其他几种算法。该跟踪框架还存在同类相似目标干扰、长时间跟踪的问题,需要下步更进一步改进。

猜你喜欢

跟踪器修正滤波
光伏跟踪器阵列跟踪精度的测算方法研究
Some new thoughts of definitions of terms of sedimentary facies: Based on Miall's paper(1985)
修正这一天
浅析一种风光储一体化跟踪器
超长待机的自行车位置跟踪器
双向多轨迹判定方法在目标跟踪中的应用研究
软件修正
基于PID控制的二维弹道修正弹仿真
一种GMPHD滤波改进算法及仿真研究
基于自适应Kalman滤波的改进PSO算法