基于孪生网络结构的目标跟踪算法综述
2020-03-19陈云芳
陈云芳,吴 懿,张 伟
南京邮电大学 计算机学院,南京210023
1 引言
目标跟踪是计算机视觉领域的重要组成部分。目标追踪广泛应用于视频监控、自动驾驶和人机交互等系统中[1]。尽管在该领域已经取得了巨大的成就,但由于跟踪场景种类繁多,环境复杂多变,以及由物体运动产生的形变、遮挡、模糊、快速移动等情况[2],到目前仍没有合适的方法可以覆盖跟踪的所有场景,所以目标跟踪仍被认为是一个非常有挑战的任务。目标跟踪一般由三个部分组成,分别是特征提取,建立外观模型和运动模型以及模型更新[3]。对于单目标跟踪问题,先验知识是第一帧给定的矩形框。这个框在实际应用中大多是目标检测算法的结果,目标跟踪算法的任务是通过一系列视觉方法得到目标的特征,并且在接下来的帧中成功定位到该目标。在给定边界框的情况下,最佳跟踪器需要克服快速运动、严重遮挡、目标变形、背景干扰、尺度变化、旋转等挑战,并且最好兼顾高精度和实时性。为了解决这些实际问题,在过去的几年里,许多跟踪算法被提出。
目前的目标跟踪算法主要分为生成模型方法和判别模型方法[4],生成模型方法是在当前帧中对目标区域进行建模,在下一帧中寻找与模型最相似的区域,该区域就是预测位置。判别模型方法是近年来的主流方法[5],把跟踪问题转化为一个关于前景和背景的二分类问题,使用图像特征和机器学习的组合来进行跟踪。在当前帧中以目标区域为正样本,以背景区域为负样本,使用机器学习方法训练分类器,在下一帧中用训练好的分类器找最优区域。与生成类方法最大的区别是,判别类方法采用机器学习,训练中用到了背景信息,这样分类器就能专注区分前景和背景,所以判别类方法普遍都比生成类好。
本文将目标跟踪算法分为传统的跟踪算法和基于孪生网络的跟踪算法。传统的跟踪算法可以被分为三类,分别是生成模型方法、传统的相关滤波算法和结合深度特征的相关滤波算法,目前基于相关滤波和深度学习的方法属于判别模型方法这一类别。传统的相关滤波方法的优势是速度快,可以在CPU 上实时运行,但精度一般。结合深度特征的相关滤波方法使用强大的深度卷积网络提取出更好的特征,精度得到了很大提高,但速度下降,大多算法在GPU 上也难以达到实时。基于孪生网络结构的跟踪算法使用特殊的神经网络结构,Chopra 等在文献[6]中提出了这个结构,其特点是接收两张图片作为输入。这种特殊的网络结构将目标跟踪问题转化为相似性学习问题,很好地平衡了速度和精度,既可以在GPU 上实时运行,又在精度上追赶并超过结合深度特征的相关滤波类方法。孪生网络结构不仅应用在跟踪问题中,沈雁也将其应用到了交通标志的分类任务中,取得了超过99%的准确率[7]。
2019年,基于孪生网络结构的跟踪算法的精度首次超越了相关滤波类算法,并且保持了实时性。这意味着孪生网络将是目标跟踪领域的重要研究方向。因此本文将详细介绍孪生网络的结构和改进,并根据现有的不足讨论该研究方向的发展趋势。
2 传统的目标跟踪算法
2.1 基于生成模型的方法
生成类方法是在当前帧中对目标区域建模,下一帧寻找与模型最相似的区域,该区域就是预测位置,此类方法经常使用卡尔曼滤波[8]、粒子滤波[9]、均值漂移[10]等算法。
卡尔曼滤波的特点是对目标的运动模型进行建模从而估计目标在下一帧的位置,不对目标特征进行建模。杨鹏生等人[11]提出了一种基于改进扩展卡尔曼滤波的目标跟踪算法,通过构建时间差和信号到达方向的观测方程,利用几何和代数关系化简得到伪线性模型对目标运动轨迹进行跟踪,取得了优于传统卡尔曼滤波算法的效果。
粒子滤波基于粒子分布统计,寻找一组在状态空间中传播的随机样本来近似的表示概率密度函数,用样本均值代替积分运算,进而获得系统状态的最小方差估计。刘芳等人[12]针对复杂背景变化和目标尺度变化等跟踪中常见的问题,提出了一种基于深度特征和模板更新的自适应粒子滤波目标跟踪方法,解决由目标模板更新精度低导致跟踪算法鲁棒性差的问题。
均值漂移方法基于概率密度分布,沿着概率梯度上升的方向,迭代收敛到概率密度分布的局部峰值上。Tomas 等提出的生成模型方法ASMS 算法[13]在经典的均值漂移框架下进行了尺度估计的理论推导,并引入了正则项来解决两个问题:由背景混乱引起的尺度扩张和自相似物体的尺度内爆。还有一类经典算法是基于特征点的光流跟踪算法,对目标物体提取特征点,在下一帧计算特征的光流匹配点,进行统计从而得到目标位置。王忠民等人[14]针对物体快速移动以及均值漂移算法误差累积造成的目标漂移问题,提出了一种融合目标检测算法YOLO[15]与均值漂移的目标跟踪算法,进行有效的跟踪。
生成式模型通常寻找与目标模板最相似的候选作为跟踪结果,这一过程可以视为模板匹配。而判别式模型通过训练一个分类器去区分目标与背景,选择置信度最高的候选样本作为预测结果。由于使用各种机器学习方法所以判别类方法普遍都比生成类好。
2.2 相关滤波方法
2010 年后,基于相关滤波的算法开始流行,其特点是算法运算速度快。传统相关滤波器的算法利用循环相互的特性,在傅里叶域中进行运算,此类算法有效更新过滤器的权重从而实现在线跟踪。初期的相关滤波算法使用浅层特征主要由灰度特征、纹理特征、颜色特征等组成。Bolme 等提出的MOSSE[16]使用单帧初始化时产生稳定的相关滤波器。对于光照、缩放、姿势和非刚性变形的变化时,基于MOSSE 滤波器的跟踪器具有鲁棒性,同时以669帧的速度运行。Henriques等提出的CSK[17]算法使用了一种基于循环矩阵的核跟踪方法,并且从数学上完美解决了密集采样的问题,利用傅里叶变换快速实现了检测的过程。算法通过使用高斯核计算相邻两帧之间的相关性,取响应最大的点为预测的目标中心。Henriques 等人在CSK 算法的基础上提出了KCF/DCF 算法[18],这是CSK 算法的多通道特征改进版本。CSK 中使用的是灰度特征,KCF 使用HOG 特征和高斯核函数,DCF 使用HOG 特征和线性核函数。表1是OTB50[19]上的实验结果,测试数据集是作者所建立的一个跟踪数据集,其中包含50 个完全标注好的序列。并且每个跟踪器通过分析超过660 000个边界框输出进行广泛评估。可以看到KCF/DCF 算法在平均速度和平均精度上的优势。
在此之后,Danelljan 等提出的CN[20]算法是CSK 算法的多通道颜色特征改进算法,而该团队的DSST[21]方法只用了HOG 特征并且专门训练类似MOSSE 的相关滤波器检测尺度变化,开创了平移滤波和尺度滤波相结合的方法。关于颜色特征,吴晓光等人[22]在基于空时上下文和核函数循环结构的目标跟踪器的基础上,介绍基于颜色特征的跟踪器,并针对其在目标被遮挡、尺度变化和光照发生变化时易发生跟踪漂移的问题,提出自适应学习速率和自适应高斯核尺度因子两种方法,分别对训练模型的更新和标记进行改进,减少目标模型累积错误,提高跟踪过程准确性。
表1 KCF/DCF和其他算法的比较
Li 等提出的SAMF[23]方法基于KCF,该算法将单一的特征扩展为多个特征并利用尺度池的方法实现目标的自适应跟踪。成悦等人[24]为解决单一特征鲁棒性差,模型和尺度更新机制不健全的问题,提出了一种将自适应加权特征融合方法与置信度模型及尺度更新机制相结合的相关滤波目标跟踪算法。同时提出一种新的尺度更新策略,使跟踪更精确的同时降低时间代价。胡昭华等人[25]针对传统核跟踪算法单一特征的局限性、目标模板和特征外观模板更新的不足,提出了一种多通道特征和择优并行更新的核相关滤波跟踪算法,采用多支路的择优并行更新弥补了单一支路更新的不足。
2.3 结合深度特征的相关滤波方法
近年来结合深度特征的相关滤波方法利用深度特征替代传统的手工设计特征,从而提高模型的准确度。相关滤波算法与深度学习结合,大幅度提升了算法的表现。深度学习的优势之一就是卷积输出得到的特征表达优于HOG或CN等浅层特征,但同时也带来了计算量的增加。
吴刚等人[26]针对相关滤波算法中难以解决的目标快速移动导致的边界问题,引入了交替方向乘子方法,提出了DCNN 深度特征与交替方向乘子结合的相关滤波跟踪器。
戴凤等人[27]对现有的神经网络结构和实验结果进行分析,和基于堆叠自编码器和递归网络的方法相比,基于卷积神经网络的跟踪模型具有更好的效果和发展前景。
Danelljan 等在C-COT[28]方法中指出基本的DCF 公式仅仅关注单分辨率的特征映射,但是此算法在传统DCF 框架上介绍了一个用于训练连续卷积滤波器的新公式。作者使用隐式插值模型提出了连续空间域中的学习问题,通过学习一组卷积滤波器来产生目标的连续域置信度图。接着该团队又提出了ECO 算法[29],该方法基于C-COT框架,但解决了速度太慢的问题。从2010年的MOSSE 开始,很多基于相关滤波的跟踪算法为了得到更好的效果,使用了越来越高的特征维度,这也导致了速度越来越慢。作者分析了速度降低的三个最重要的要素并提出了解决方法。
(1)采用因式分解的卷积操作来解决模型大小的问题。
(2)采用生成样本空间模型来解决训练集大小的问题。
(3)简单地规定每隔一定帧更新一次来解决模型更新的问题。
从结果上来看,不仅取得了极高的精度,而且解决了速度的问题。使用HOG 特征和CN 特征的版本速度高于60 帧/s,但使用CNN 特征、HOG 特征和CN 特征的速度仅有8 帧/s。
大多结合深度特征的相关滤波方法进行大量卷积计算,并且在跟踪过程中更新权重来调整网络,这导致算法的速度变慢。尽管很多研究人员提出了优化的方法,但仍无法达到实时,这也有违相关滤波的初衷。
在大数据背景下,传统的算法没有充分地利用数据来构建模型。随着深度学习的发展,基于深度学习的算法变得越来越重要,基于深度学习的跟踪器可以利用强大的深层特性,并且离线训练,跟踪过程不更新模型。考虑到深度神经网络的优越性,研究人员开始考虑不使用相关滤波器,研究仅依赖深度网络的跟踪方法,基于深度网络的目标跟踪本质上仍然是判别式模型。尽管早期的基于深度学习的跟踪算法MDNet[30]、TCNN[31]取得了一些效果,但是在速度和精度上无法做到平衡。孪生网络作为一种特殊的神经网络,将目标跟踪问题转化为相似性学习问题。随着更深的网络结构和超级巨大的数据的应用,如今的基于孪生网络的跟踪器在保证实时的条件下,性能已经不弱于基于相关滤波的跟踪器。
3 基于孪生网络结构的目标跟踪方法
首先介绍孪生网络的结构和应用,接着介绍研究者对孪生网络的重要改进,最后介绍该领域的发展趋势。
3.1 孪生网络的结构和应用
孪生网络结构是一种特殊的神经网络架构,由两个或更多子网络构成,其特点是同时接收两个图片作为输入并且两个神经网络权值共享,如图1。孪生网络结构的主要思想是找到一个可以将输入的图片映射到目标空间的函数,使得目标空间中的简单距离近似于输入空间的“语义”距离。更准确的说该结构试图找到一组参数,使得相似度度量在属于同一类别是小的,在属于不同类别时是大的。该网络过去主要用于度量学习,用来计算图像、声音、文本等信息的相似性。尤其是在人脸验证领域[32-34]上的应用。孪生网络结构还有一个特点就是可以自然地增加训练数据量,因为每次输入一对图像。这样就可以充分利用有限的数据集来训练网络,这一点在目标跟踪领域非常重要,因为和目标检测相比,跟踪领域的训练数据集较少。
图1 孪生网络结构
随着SINT[35]和SiamFC[36]的出现,孪生网络结构跟踪器成为了解决单目标跟踪问题的一个重要方法。基于孪生网络的算法特点是通过孪生网络学习一个匹配函数,在得到第一帧的边界框后,后续的所有帧都在采样后和第一帧中的目标进行相似度计算。由于网络模型不更新,目标即使被遮挡也不会影响后续的找回,这样可以极大提高跟踪算法的鲁棒性。
Tao 等提出的SINT 方法第一个提出了基于孪生网络结构的目标跟踪算法,该算法在图像中生成多个候选目标,经过网络后与示例图像作比较,然后选择距离最小的候选目标。即开创性地将目标跟踪问题转化为匹配问题,并通过神经网络来实现,但每次处理大量的候选框是非常耗时的操作。
同年Bertinetto 等提出的SiamFC 方法更具有实用性。该方法训练一个深度网络以在初始离线阶段解决更一般的相似性学习问题,然后在跟踪期间简单进行在线评估。该算法训练一个全卷积孪生网络,以在更大的搜索图像中定位候选图像。新的孪生结构对搜索图像进行了完全卷积:使用双线性层实现密集和高效的滑动窗口评估。该双线性层实际上计算其两个输入的互相关,将示例图像与候选图像进行比较,并且如果两个图像描绘相同的对象则返回高分,否则返回低分。为了在搜索图像中找到对象的位置,可以穷尽地测试所有可能的位置,并选择与对象的外观具有最大相似性的候选图像。
网络结构如图2,由模板分支和检测分支组成。模板分支负责接收目标作为输入(用z 表示),目标通常是第一帧给定的边界框。检测分支接收在当前帧作为输入(用x表示)。卷积神经网络中的两个分支共享参数。SiamFC 使用深度卷积网络作为函数,使用孪生架构的深层网络进行相似性学习。孪生网络对两个输入应用相同的变换,然后根据f(z,x)=g(φ(z),φ(x))计 算相关性,其中函数g 可以被认为是卷积操作,其中卷积核是φ(x)。
图2 SiamFC的网络结构
以SiamFC为代表的早期的孪生网络在速度上远超实时,但在精度上不如结合深度特征的相关滤波方法。表2 展示了VOT2016[37]的部分结果,将SianFC-R 和SianFC-A 和竞赛前三名进行比较,其中SiamFC-R 使用ResNet[38]作为骨干网络,而SianFC-A 使用AlexNet[39]作为骨干网络。具体评价的指标包括平均期望重叠率、准确度、鲁棒性和消除硬件影响的速度。实验的参数设置采用VOT评价工具的默认参数,保证公平。
表2 SiamFC和同年先进算法的对比
3.2 孪生网络方法的改进
初期的孪生网络在速度上远超实时,但精度上不如结合深度特征的相关方法,随着研究者对孪生网络的不断改进,来自其他领域的功能模块被应用在孪生网络结构中,改进的基于孪生网络结构的跟踪器使用更好的方法取代了传统的多尺度检测,并且使用了更深的网络结构,在精度和速度上追赶结合深度特征的相关滤波跟踪器。本节将介绍孪生网络的改进,将其分为功能模块的引入和骨干网络的优化两种改进方法。
3.2.1 不同功能模块的引入
SiamFC 之后,有很多研究者对其进行了改进。其中Li等提出的SiamRPN[40]进行了非常大的改进。SiamFC中一个非常大的弱点是没有尺度估计。SiamFC 输入三个尺度的图,经过网络对比后选出响应最大的作为目标的位置。手工设计的尺度长宽比例固定,这一点非常不合理。SiamRPN 是在SiamFC 的算法上,借鉴了Faster R-CNN[41]中的区域推荐网络,这样可以用边界框回归来替代多尺度检测,从而得到最大响应的边界框。该框架采用大规模图像进行端对端训练,跟踪可以被认为是局部的一阶段检测任务。算法框架如图3。
该框架由用于特征提取的孪生网络和用于生成建议的区域建议子网络组成,其中区域建议子网络包含分类分支和回归分支,分别负责区分前景后景和边界框回归。孪生子网络和SiamFC 中的网络结构相同,采用无填充的全卷积网络。
在RPN 的分类分支中,模板图像和检测图像的特征图首先通过一个卷积层,该卷积层主要是对模板图像的特征图进行通道上的升维,令其维度变为检测图像的特征图维度的2k 倍,其中k 为RPN中设定的锚框数。此后,将模板图像的特征图在通道上按序等分为2k 份,作为2k 个卷积核,在检测图像的特征图完成卷积操作,得到一个维度为2k 的分数图。该分数图同样在通道上按序等分为k 份,得到k 个维度为2 的分数图,两个维度分别对应锚框中前景(目标)和后景(背景)的分类分数,是关于目标的置信度。
在RPN 的回归分支中,模板图像和检测图像的特征图,都将首先通过一个卷积层,该卷积层主要是对模板图像的特征图进行通道上的升维,令其维度变为检测图像的特征图维度的4k 倍,其中k 仍为RPN中设定的锚框数。此后,将模板图像的特征图在通道上按序等分为4k 份,作为4k 个卷积核,在检测图像的特征图完成卷积操作,得到一个维度为4k 的分数图。分数图同样在通道上按序等分为k 份,得到k 个维度为4 的分数图,四个维度分别对应锚框的目标的坐标及尺寸。
在VOT2018 竞赛[42]中,SiamRPN 取得第三名,前三名的具体数据如表3 所示,具体评价的指标包括平均期望重叠率、准确度、鲁棒性,实验的参数设置采用VOT评价工具的默认参数。这意味着基于孪生网络结构的跟踪算法在精度上取得了极大的进步,并且仍保持远超实时性,速度达到160 帧/s。
Wang 等提出可以同时实现视频目标跟踪和视频目标分割这两个任务,并能达到实时的效果[43]。文章提出的模型叫SiamMask,该模型通过在用于目标跟踪的全卷积孪生网络上增加MASK分支来实现目标的分割,同时增强网络的损失,优化网络。一旦网络训练好之后,SiamMask 仅依赖于初始的一个边界框就可以实现类别无关的目标实时跟踪及分割,网络结构如图4所示。
3.2.2 骨干网络的优化
Zhang 等提出的SiamDW[44]认为随着深度学习的发展,网络层数越来越深,从而提取到更好的特征。但跟踪算法仍使用经典的AlexNet,这是非常不合理的。论文中的实验对比了多个骨干网络,但随着网络层数的增加,跟踪效果剧烈的变差,如图5中的蓝色线。
作者分析了神经网络的多个因素,例如步长、填充和感受野。
图3 SiamRPN的网络结构
图4 SiamMASK的网络结构
图5 成功图曲线下面积与网络深度和宽度的关系
大部分的计算机视觉任务的步长经常设置为16 或者32。但对于跟踪人物而言,由于帧间的位移较小,步长通常取值较小,例如4 或者8。通常神经网络都是使用填充来确保随着层数的增加,特征图不会变得太小,并且正常采集边缘的信息。但从SiamFC 开始,零填充被引入到网络中。在没有填充的时候,目标移动一定的距离,特征图上原来的相应点会对应移动一定距离,这个距离和步长有关。此时特征图上响应值不变。有填充时,如果目标移动后的位置对应的感受野超出了图片的边界,就会导致响应值的改变,填充的引入导致了学习中的位置偏见。孪生网络中的感受野的设置非常重要。感受野过大,重叠就会很大,模板图像中的相邻的两个候选图像的特征会很接近,将减小定位准确度。感受野过小会降低单个特征的判别力,而神经元感受野的大量增加导致特征识别率和定位准确率的下降。作者强调网络的步长、感受野大小要在整体上同时分析。可想而知,这些因素之间并不独立,一个改变,其他的也会随之改变。作者提出了新的残差模块来消除填充的负面影响,这使得更深的神经网络结构可以应用到目标跟踪中。
基于孪生网络结构的跟踪算法将跟踪描述为目标模板和搜索区域之间的卷积特征互相关操作。然而,与最先进的算法相比,孪生网络跟踪器的精度仍然存在差距,而且它们无法利用深度网络(如ResNet-50 或更深)的特性。Li等[45]在SiamRPN的基础上提出了SiamRPN++,解答了为什么深层网络ResNet 不能应用在孪生网络架构中,其结构如图6所示。
孪生网络无法使用更深的网络结构的核心原因是缺乏平移不变性。作者认为原始的采样策略存在问题,该策略使得图像的中心一直有较大的权重,因此作者通过一种简单有效的空间感知采样策略,在中心进行移位,即偏移中心16~64 个像素范围内进行均匀采样,成功地训练了一个性能显著提高的采用ResNet 作为骨干网络的孪生网络跟踪器。此外,该方法提出了一种新的模型架构来执行逐层聚合和深度聚合,这不仅进一步提高了精度,而且减小了模型的尺寸。
视觉跟踪需要从低到高、从小到大、从细到粗分辨率的丰富表示。即使在卷积网络中有深度的特征,单独的层也是不够的:将这些表示进行组合和聚合可以提高识别和定位的能力。在ResNet 这类深度网络中,全面卷积层获取的特征主要集中在低层信息,如颜色、形状等,对于定位是必不可少的,而缺乏语义信息;后面层的特性具有丰富的语义信息,在一些挑战场景中,如运动模糊、巨大变形时,这些信息可能是有益的。这种丰富的层次信息可以帮助跟踪。逐层聚合操作将Conv3、Conv4和Conv5输出的特征独立地输入到区域推荐网络中,由于三个区域推荐模块的输出尺寸具有相同的空间分辨率,因此可以直接对区域推荐网络输出进行加权求和。互相关计算模块是一个用来整合两个分支信息的核心操作。作者提出了一个轻量级的互相关层,称为深度互相关,来实现更有效的信息关联,它具有更少的参数。
图6 SiamRPN++的网络结构
表4 最新跟踪算法关于平均重叠、鲁棒性和准确性方面的对比
SiamRPN++保持了实时性,速度是35 帧/s,采用MobileNet[46]作为骨干网络速度高于70 帧/s。表4 展示了在VOT2018 基准上,SiamRPN++在预期平均重叠(EAO),鲁棒性(故障率)和准确性方面与最新技术的比较,其中实验是在VOT2018 基准上完成的,参数遵循基准的默认设置。作者认为SiamRPN++的性能已经超过了相关滤波的方法,这是深度学习在跟踪领域的重大突破。
3.3 孪生网络方法的新趋势
根据近几年VOT 竞赛的结果[37,42,47]中可以看出,基于孪生网络结构的跟踪算法越来越多,表5 对现有主要的孪生网络结构算法进行总结。尽管孪生网络结构取得了广泛的应用,但该结构仍然存在严重的局限性。首先,孪生跟踪器在训练时只利用目标的外观信息,忽略了背景的外观信息,而背景信息对于在相似的物体中找到目标是至关重要的。其次,对于离线训练集中没有包含的物体,学习的相似度度量不一定可靠,导致泛化能力差。第三,现有的孪生网络跟踪方法没有提供模型更新策略,无法获得图像上下文信息。
近年来一些研究人员针对现有孪生网络结构方法进行了改进,虽然方法不同,但主要的目标都是利用上下文信息或者是背景信息在线更新模板或者增强目标表示,使得跟踪过程更加鲁棒。
Gao等在文献[48]中认为现有的孪生网络方法大多没有充分利用不同情景下的时空目标外观建模。首先,许多孪生网络跟踪器使用第一帧的初始目标模板来匹配候选图像。然而由于视觉跟踪是一个具有变化场景的动态过程,目标对象在连续帧之间存在着很强的时空关系,可以利用来自不同帧和位置的特征进行目标外观建模。其次目标对象的周围环境对跟踪性能有很大的影响。然而,现有的孪生网络跟踪方法大多忽略了搜索图像的上下文信息来指导目标外观模型的适应。由于缺乏在线适应性,很难很好地捕捉到搜索图像中的目标对象、背景的变化,这可能导致跟踪失败。在当前上下文的帮助下,学习一个新的模型作为适应变化。时空信息可以提供多种特征来增强目标表示,而上下文信息对目标定位的在线适应非常重要。图卷积网络可以在统一的框架下,实现目标的时空外观建模和上下文感知的自适应学习,从而达到鲁棒性目标定位的目的。
Goutam 等人在文献[49]中认为现在流行的孪生网络仅仅预测目标特征模板,而在推理过程中忽略了背景外观信息,因此预测模型对目标和背景只具有有限的分辨性。目标跟踪算法需要在推理阶段在线学习鲁棒的外观模型,解决方法是将目标模型的在线学习嵌入到跟踪结构中进行端对端训练。
Peixia 等人在文献[50]中认为在现有的孪生神经网络结构中,模板具有初始目标特征并且跟踪器的性能完全依赖于孪生网络的匹配能力,然而这种方式无法捕获目标的时间变化或背景杂波。因此提出了一种新颖的梯度引导网络,利用梯度中的判别信息并通过前馈和后向操作更新孪生网络中的模板。具体而言,该算法可以利用来自梯度的信息来更新当前帧中的模板。另外提出了一种模板泛化训练方法,以更好地利用梯度信息,避免过度拟合。
Janghoon等人在文献[51]中提出了一种基于孪生网络和元学习器的新型在线视觉跟踪框架,通过添加目标感知特征空间,为匹配网络提供了目标的新外观信息。常规的基于深度卷积特征的判别式视觉跟踪算法需要对分类器或相关过滤器进行连续的重新训练,这需要解决复杂的优化任务以适应目标对象的新外观,而使用元学习器可以克服这一缺点。
目前针对孪生网络结构的缺点,主流的改进方法是在线更新机制。通过在线更新机制可以获得图像上下文的信息,但这种机制是一把双刃剑。如果使用这样机制,优点是随时适应目标的变化和背景信息的变化,缺点是模型更新会累计误差,遮挡或失败时会学到背景,丢失后再也找不回来。如果不使用这种机制,优点是速度更快,跟踪目标永远不会被污染,长期特性非常优秀,缺点是对特征的要求非常高,必须是表达能力足够强足够鲁棒的特征。目前研究人员针对孪生网络的缺点进行了针对性的研究,通过引入不同的模块来解决现有的问题,取得了较好的效果。表6 对近年使用在线更新机制的跟踪算法的设计原理和性能表现进行了总结,可以看到现有的使用在线更新机制的目标跟踪方法兼顾了准确性和实时性。
总的来说,基于孪生网络结构的目标跟踪算法的未来发展需要与在线更新机制结合在一起,但要兼顾速度的问题。跟踪过程中更新模板,计算量的增加会显著拖慢跟踪速度。虽然目前提出了一些方法,但整体效果还有待提升。在这种情况下,如何能够让跟踪网络适应跟踪目标的外观变化,同时又能尽量减少计算量是一个重要的研究方向。
表5 现有的孪生网络结构算法的对比
表6 使用在线更新机制的算法对比
4 总结
本文介绍了目标跟踪领域的发展,将其分为传统的跟踪算法以及基于孪生网络结构的跟踪算法,其中详细介绍了基于孪生网络结构跟踪算法的发展。与相关滤波方法相比,深度学习以其强大的特征提取能力配合大量的数据,使得跟踪的效果越来越好,孪生网络结构作为一个特殊的网络结构,将跟踪问题转化为相似度学习问题,很好地适应了跟踪这一任务。孪生网络将是未来目标跟踪的重要发展方向之一,使用神经网络进行端对端学习的方法可以充分利用大数据来实现更准确的跟踪。本文将帮助读者建立对单目标跟踪的整体认识,并找到这个快速发展的研究领域的未来方向。