基于改进SiamFC的实时目标跟踪算法 下载: 668次
1 引言
目标跟踪是计算机视觉领域里的一个研究热点,在诸如公共场所安防监控、交通监督、**应用、医疗器械等方面均有广泛的应用。目标跟踪的应用面临着环境复杂、长时间跟踪等一系列挑战[1]。传统目标跟踪算法由于存在特征提取困难、计算量过大、实时性差等缺点,跟踪性能难以保证[2-4]。随着大数据时代的到来,深度学习技术为目标跟踪领域带来新的特征提取手段,推动了目标跟踪的发展。近年来,随着深度学习的蓬勃发展,各种神经网络框架不断地得到创新和发展,自Alexnet问世以来,通过卷积神经网络与传统的目标跟踪方法相结合,大大提高了目标跟踪的性能[5]。Wang等[6]提出的DLT(deep learning tracker)算法首次将深度学习应用于目标跟踪领域,通过采用离线预训练和在线微调的思路,有效解决了训练样本不足的情况,但由于提取特征的能力不足,其跟踪效果仍低于一些传统的跟踪算法。Bertinetto等[7]提出的SiamFC跟踪算法使用了孪生神经网络结构,网络的两个分支使用相同的特征提取网络共享权值,并使用相似度学习解决跟踪问题。该算法的跟踪速度达到实时性要求,故有望应用于实际场景;但在物体出现遮挡、环境复杂的情况下,该算法因网络无法准确地判别目标,导致其跟踪速度慢于一些相关滤波类跟踪算法。为了提升孪生网络的判别能力,Wang等[8]提出的RASNet算法使用三个注意力机制对SiamFC特征的空间和通道进行加权,对特征提取和判别性分析的耦合进行分解,但跟踪速度的提升效果不佳。Li等[9]提出的SiamRPN算法在SiamFC的基础上加入区域候选网络(RPN)用于产生候选区域,卷积网络层数变得更深,提取到的特征信息变得更丰富、更鲁棒,省掉多尺度测试,大大提高了跟踪速度,但模型的参数量和计算量也随之增多,并因为数据集大小而受到限制。综合各算法的优势与不足,在不过多增加网络层数的基础上提高孪生网络的判别能力和跟踪的实时性是有待改进的方向。
本文基于SiamFC算法提出一种基于孪生网络的实时目标跟踪算法。该算法使用深度可分离卷积,通过减少算法的参数计算量,提高了算法的速度;并通过设置拥有不同尺寸卷积核的混合深度卷积来实现多特征融合,获取表达性更强的特征,提高网络判别能力。
2 SiamFC算法介绍
SiamFC跟踪算法使用孪生神经网络结构在较大的搜索区域上进行样本图片搜索。其网络结构主要由5个卷积层构成的特征提取网络和用于互相关操作的卷积层组成,模板分支和待搜索分支分别经过相同的特征提取网络。SiamFC的网络结构是一个全卷积网络,不包含连接层,优点是待搜索图像无需与样本图像尺寸相同。网络结构[7]如
基于孪生网络的SiamFC算法将跟踪目标过程视为相似度学习,通过判断第一帧模板和后续帧待搜索图像的相似性确定目标的位置,将6×6的特征图看作卷积核,在22×22的特征图上进行卷积操作,得到响应图,计算相似度。相似度函数为
式中:x代表模板图像;y代表待搜索图像;φ表示提取网络;b1代表在响应图上每个位置的取值。
SiamFC在跟踪阶段的目标模型不更新,模板分支始终是第一帧图像,后续帧图像都在采样以后和第一帧图像进行相似度计算,便于目标被遮挡时能够迅速找回,但当图像中出现多个同类型目标交替遮挡时,该算法可能会跟丢目标对象。同时,由于在线不更新,网络不存在模板累积误差,但图像上下文之间的联系未能得到充分利用,无法随时适应目标和背景信息的变化,因此提高网络的判别能力、设置合适的跟踪策略是必要的改进手段。
SiamFC使用卷积层替代传统Alexnet的全连接层,减少了参数,有效地提高了实时性,并拥有较好的模型泛化能力。但SiamFC网络结构仍采用常规卷积,并且包含较大尺寸的卷积核,网络参数量规模仍然较大,其跟踪速度不如一些使用深度网络的相关滤波类跟踪算法,因此需从卷积结构上进行改进,以减少参数。
3 本文算法
3.1 网络结构
为减少网络在卷积操作时的参数量,提高速度,使用深度可分离卷积替代原网络的第二层常规卷积。深度可分离卷积可以理解为将常规卷积分解为一个depthwise(DW)卷积和一个1×1的逐点pointwise(PW)卷积[10]。深度可分离卷积的两参数计算量与常规卷积的参数计算量比值为
式中:XDW、XPW、XConv表示各类型卷积的参数计算量;h、w、c分别代表输入的高度、宽度和通道数;n×n代表卷积核的尺寸;k为卷积核的数目即输出通道数。原网络中第二层常规卷积的卷积核尺寸为5×5,卷积核数目为256,将原网络替换为深度可分离卷积后参数量约减少为原来的1/25。
针对如何提高网络判别能力,在原网络的第三层卷积层处,对通道进行分组并使用混合深度卷积提取特征。通过混合深度卷积的不同尺寸卷积核提取的特征是不同的,对每组通道使用不同尺寸的卷积核进行DW卷积相当于进行了特征融合[11]。将混合深度卷积通道数等分为2组,设计原则为第1组使用的卷积核尺寸为3×3,第2组卷积核尺寸为5×5,为了充分利用不同通道在相同空间位置上的特征信息,在混合深度卷积后添加PW卷积。常规卷积和混合深度卷积的参数计算量比值为
式中:XMix表示混合深度卷积的参数计算量;n1×n1、n2×n2代表混合深度卷积两组卷积核的尺寸。原网络中第三层常规卷积的卷积核尺寸为3×3,卷积核数目为384,替换为3×3、5×5混合深度卷积后参数量约减少为原来的3/50。
深度可分离卷积和使用不同尺寸的卷积核的混合深度卷积结构如
图 2. 深度可分离卷积和混合深度卷积结构
Fig. 2. Structures of depthwise separable convolution and mixed depthwise convolution
本文改进后的卷积网络结构如
3.2 数据预处理
使用ILSVRC2015 VID[12]数据集来训练网络。ILSVRC2015数据集大小为86 GByte,其中图像有30个基本类别。将数据集下载并解压后,包含3800个训练集视频序列,555个验证集视频序列,937个测试集视频序列。因样本分支和待搜索分支的输入图片尺寸大小需分别为127和255,故先对原始图片进行预处理,即通过数据集中给出的标注信息获得物体的位置,在模板图像中截取一个尺寸为z的图像框。尺寸z的确定方式为
其中k、g对应数据集中给出标注信息中的尺寸,p为k和g之和的一半。这一步的目的是将上下文信息包含进来。随后选择一个比例常数s,对图片进行缩放变换,使得图像尺寸变为127,即
对于待搜索图像,则直接在整张图片中以第一帧的目标边界框裁剪出255×255大小的图片。在对模板图像和待搜索图像进行预处理时出现图像框超出图片范围的情况下,需先对原图像进行填充操作后再进行缩放和裁剪。
由于ILSVRC2015 VID数据集中数据太多,包含一百多万张图像,因此采取GPU多线程(multi-threaded)加速的方式进行图像预处理,处理后以质量90储存图像,并将数据保存为二进制序列化格式文件用于下一步训练。
3.3 训练过程
为节省时间,本研究使用SiamFC的三尺度网络模型作为预训练网络,使用预训练网络中的参数作为训练参数的初始值,训练方法采用随机梯度下降法。训练的batch size设为8,数据集通过网络训练的次数设为50次,每次训练的样本数设为53200,则总训练步数为
式中:st为总训练步数,设定为332500步;e代表训练总次数;n代表每次训练的样本数;Nbs代表batch size的大小。确定完总训练步数后,设定每训练十步输出一次训练损失。
在训练中首先对正负样本进行分类,从目标中心出发,以半径r画圆,落在圆区域内的为正样本,落在圆区域外的为负样本。正样本取值为1,负样本取值为0,如
定义训练中对每一组训练样本使用的损失函数为
其中l代表每组训练样本的损失,ω为样本权重,y为样本取值,f为输出响应图的置信结果。
定义完训练策略和损失函数后进行训练,由于训练样本数目过大,设定每训练6500步保存一次,后续不断更新。训练完成后,使用tensorboard将训练的效果进行可视化,判断训练效果的好坏,进而调试参数。经调试,确定训练网络的权值衰减值为0.0005,动量项设定为0.9,学习率设定为0.0001,同时使用随机梯度下降算法(SGD)对每个训练样本进行参数更新。
3.4 跟踪
SiamFC算法的跟踪速度部分得益于其跟踪策略,该算法在跟踪过程中不更新模板和网络权值,因此在背景复杂、目标形变较大等条件下其目标跟踪效果会受到限制。这一问题可以通过改用在线跟踪策略或增强对首帧图像的特征提取来解决,但在线跟踪策略会牺牲部分速度,降低实时性,因此本研究通过改进网络结构来增强特征的表达力。为了更好地与SiamFC比较,本文算法采取相同的跟踪策略,即在跟踪阶段不更新,始终采用第一帧图像作为模板进行跟踪。本文跟踪算法通过上述步骤,在跟踪阶段使用训练好的网络进行特征提取,通过互相关操作得到目标的响应图,其中响应值最大处即为目标所在位置。
4 实验验证与结果分析
本文算法使用的计算机硬件配置为Intel Core i7-9750H CPU@2.60GHz,GPU版本为NVIDIA GeForce GTX 1660Ti。计算机软件配置为tensorflow-gpu1.9.0,python3.6.5,matlab2016a,CUDA9.2。
为了评估本文算法的性能,使用OTB2015[13]数据集进行测试对比,选择SiamFC原文中使用的一次性评估(OPE)、时间鲁棒性评估(SRE)、空间鲁棒性评估(TRE)作为评价指标,查看跟踪效果并与SiamFC算法进行比较。再选取VOT2016[14]数据集测试本文算法的预期平均重叠率(EAO)、速度(FPS和EFO)、鲁棒性(Robustness)以及准确度(Accuracy),并与几种主流算法进行对比。为验证本文算法在实际应用中的表现,使用ILSVRC2015中的部分火车测试集进行测试,定义评价指标:跟踪成功率Overlap为估计值与真值的交并比,跟踪精度Accuracy为跟踪中心误差小于阈值的比例,跟踪速度Speed为视频帧数与跟踪时长之比。
4.1 OTB数据集测试
在OTB2015数据集上测试本文算法的跟踪性能,设置本文算法对应的OTB数据集跟踪器,调用训练好的网络,测试本文算法与SiamFC[7]算法以及其他4种近年来表现出色的算法[15-18]的性能。结果如
图 4. 6种跟踪算法的OPE、TRE、SRE成功图。(a) OPE;(b) TRE;(c) SRE
Fig. 4. Success plots of OPE, TRE, SRE on six tracking algorithms. (a) OPE; (b) TRE; (c) SRE
图 5. 6种跟踪算法的OPE、TRE、SRE精度图。(a) OPE;(b) TRE;(c) SRE
Fig. 5. Precision plots of OPE, TRE, SRE on six tracking algorithms. (a) OPE; (b) TRE; (c) SRE
图 6. 本文算法在OTB2015的部分跟踪结果。(a) David;(b) Bolt;(c) Gym;(d) Car
Fig. 6. Tracking results of our algorithm on OTB2015. (a) David; (b) Bolt; (c) Gym; (d) Car
图 7. 本文算法与其他5种算法在目标快速移动视频序列中的跟踪结果对比。(a) Video 1;(b) video 2;(c) video 3
Fig. 7. Tracking results of our algorithm compared with the other five algorithms in the fast moving video sequences. (a) Video 1; (b) video 2; (c) video 3
4.2 VOT2016数据集测试
本研究以官方VOT2016数据集上的测试数据为基准,同样使用VOT2016数据集对本文算法和KCF[19]、SRDCF[20]、SiamFC[7]、Staple[21]进行对比,调用数据集进行跟踪,得到平均重叠率、跟踪精度以及跟踪速度。该数据集评价指标中EAO、FPS、EFO和准确度数值越高,鲁棒性数值越小,由此说明算法性能越优。测试结果如
表 1. VOT2016数据集下的评估结果
Table 1. Evaluation results based on VOT2016
|
4.3 ILSVRC2015火车测试集测试
在ILSVRC2015测试集中以序号类别为基准逐个搜索出火车类别的视频序列,将图像格式转换为.jpg格式,并将.xml格式的标注数据转换成.txt格式的标注数据,将筛选出来的视频序列使用SiamFC算法和本文算法进行跟踪比较。在选出的火车类别视频序列中包含火车旋转、火车长时间跟踪、火车快速通过以及火车尺度大小等实际问题[22]。本研究针对每一个小类别图像只选择其中一个视频序列,共选择了13段火车类视频序列进行测试。火车类别视频序列测试后的性能记录如
表 2. ILSVRC2015数据集评估结果
Table 2. Evaluation results based on ILSVRC2015 dataset
|
为了更加直观地比较本文算法与SiamFC算法的性能,以视频序列号为横坐标,评价指标为纵坐标,绘制折线图,如
图 8. SiamFC和本文算法在ILSVRC2015火车测试集的性能折线。(a)平均重叠率;(b)跟踪精度;(c)跟踪速度
Fig. 8. Performance polylines of SiamFC and our algorithm on the ILSVRC2015-train test set. (a) Overlap; (b) accuracy; (c) speed
4.4 网络参数量分析
为了求证改进后的模型参数量如理论分析所示大幅减少,首先根据(2)式和(3)式以及网络各层结构推导出预期的参数量Params1,再使用tensorflow的参数量统计模块统计出实际的参数量Params2[23],并与SiamFC网络参数量进行对比,如
表 3. 网络参数量
Table 3. Network parametersunit: MByte
|
5 结论
本文算法基于SiamFC算法的特征提取网络Alexnet结构改进卷积层结构,引入深度可分离卷积和混合深度卷积,提高了跟踪速度,实现了在卷积层上的特征融合,并在OTB2015、VOT2016、ILSVRC2015数据集上对SiamFC算法和本文算法进行了测试和比较。在OTB2015和VOT2016公开数据集上的实验结果证明本文算法在跟踪成功率、跟踪精度以及跟踪速度上都有一定的提升;在ILSVRC2015的火车类别测试集上的实验结果说明本文算法相较于SiamFC在目标旋转、快速移动以及长时间移动的实际问题上表现更好且跟踪速度能够满足实时性要求。但是,本文算法仍然存在一定局限性,对卷积层结构的改进并未达到预期的提升效果,并且仍未解决视频序列中出现目标交替时跟丢目标的问题,期望在下一步工作中得以改善。
[1] 刘美菊, 曹永战, 朱树云, 等. 基于卷积神经网络的特征融合视频目标跟踪方法[J]. 激光与光电子学进展, 2020, 57(4): 041502.
[3] 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.
[4] Nejhum S M S, Ho J, Yang M H. Online visual tracking with histograms and articulating blocks[J]. Computer Vision and Image Understanding, 2010, 114(8): 901-914.
[5] Krizhevsky A, Sutskever I, Hinton G E. ImageNet classification with deep convolutional neural networks[J]. Communications of the ACM, 2017, 60(6): 84-90.
[6] Wang NY, Yeung DY. Learning a deep compact image representation for visual tracking[C]∥Advances in Neural Information Processing Systems 26: 27th Annual Conference on Neural Information Processing Systems 2013, December 5-10, 2013, Lake Tahoe, Nevada, USA. New York: Neural Information Processing Systems Foundation, Inc., 2013: 809- 817.
[7] BertinettoL, ValmadreJ, Henriques JF, et al. Fully-convolutional Siamese networks for object tracking[C]∥ Hua G, Jégou H. European Conference on Computer Vision(ECCV 2016). Cham: Springer, 2016, 9914: 850- 865.
[8] WangQ, TengZ, Xing JL, et al.Learning attentions: residual attentional Siamese network for high performance online visual tracking[C] //2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition, June 18-23, 2018, Salt Lake City, UT, USA. New York: IEEE Press, 2018: 4854- 4863.
[9] LiB, Yan JJ, WuW, et al.High performance visual tracking with Siamese region proposal network[C] //2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition, June 18-23, 2018, Salt Lake City, UT, USA.New York: IEEE Press, 2018: 8971- 8980.
[10] CholletF. Xception: deep learning with depthwise separable convolutions[C] //2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), July 21-26, 2017, Honolulu, HI, USA. New York: IEEE Press, 2017: 1800- 1807.
[11] TanM, Le QV. Mixconv: mixed depthwise convolutional kernels[EB/OL]. (2019-12-01)[2020-08-01]. https://arxiv.org/abs/1907.09595?context=cs.LG. 09595, 2019.
[12] Russakovsky O, Deng J, Su H, et al. ImageNet large scale visual recognition challenge[J]. International Journal of Computer Vision, 2015, 115(3): 211-252.
[13] Wu Y, Lim J, Yang M H. Object tracking benchmark[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2015, 37(9): 1834-1848.
[14] KristanM, MatasJ, LeonardisA, et al.The visual object tracking VOT2015 challenge results[C] //2015 IEEE International Conference on Computer Vision Workshop (ICCVW), December 7-13, 2015, Santiago, Chile.New York: IEEE Press, 2015: 564- 586.
[15] DanelljanM, RobinsonA, Khan FS, et al. Beyond correlation filters: Learning continuous convolution operators for visual tracking[C] // European Conference on Computer Vision. Cham: Springer, 2016: 472- 488.
[16] WangQ, GaoJ, Xing JL, et al. DCFNet: discriminant correlation filters network for visual tracking[EB/OL]. (2017-04-13)[2020-08-01]. https://arxiv.org/abs/1704.04057.
[17] LiY, ZhuJ. A scale adaptive kernel correlation filter tracker with feature integration[C]//European Conference on Computer Vision. Cham: Springer, 2014: 254- 265.
[18] Qi YK, Zhang SP, QinL, et al.Hedged deep tracking[C]//2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), June 27-30, 2016, Las Vegas, NV, USA.New York: IEEE Press, 2016: 4303- 4311.
[19] 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.
[20] DanelljanM, HägerG, Khan FS, et al.Learning spatially regularized correlation filters for visual tracking[C]//2015 IEEE International Conference on Computer Vision (ICCV), December 7-13, 2015, Santiago, Chile.New York: IEEE Press, 2015: 4310- 4318.
[21] BertinettoL, ValmadreJ, GolodetzS, et al.Staple: complementary learners for real-time tracking[C] //2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), June 27-30, 2016, Las Vegas, NV, USA. New York: IEEE Press, 2016: 1401- 1409.
[22] 赵春梅, 陈忠碧, 张建林. 基于卷积网络的目标跟踪应用研究[J]. 光电工程, 2020, 47(1): 0180668.
Zhao C M, Chen Z B, Zhang J L. Research on target tracking based on convolutional networks[J]. Opto-Electronic Engineering, 2020, 47(1): 0180668.
[23] 谭光鸿, 侯进, 韩雁鹏, 等. 基于卷积神经网络的低参数量实时图像分割算法[J]. 激光与光电子学进展, 2019, 56(9): 091003.
Article Outline
张红颖, 贺鹏艺, 王汇三. 基于改进SiamFC的实时目标跟踪算法[J]. 激光与光电子学进展, 2021, 58(6): 0615003. Zhang Hongying, He Pengyi, Wang Huisan. A Real-Time Target-Tracking Algorithm Based on Improved SiamFC[J]. Laser & Optoelectronics Progress, 2021, 58(6): 0615003.