基于孪生网络的目标跟踪算法研究进展
2022-10-19梁启花胡现韬钟必能李先贤
梁启花, 胡现韬, 钟必能*, 于 枫,2, 李先贤
(1.广西多源信息挖掘与安全重点实验室(广西师范大学), 广西 桂林 541004;2.东南大学 计算机网络和信息集成教育部重点实验室, 江苏 南京 211189)
视觉目标跟踪以其重要的理论价值、广泛的实用价值以及多学科交叉性一直吸引着学术界和工业界的极大关注,并在智能视频监控、公共交通、人机交互、自动驾驶、无人机、军事目标定位等领域有着重要的应用[1-4]。在目标跟踪场景中,首先,跟踪器将视频序列的第一帧目标信息作为模板,即模板帧,部分在线更新的孪生跟踪器会对模板帧进行有条件的更新[5],在获取模板帧后,将后续视频帧作为序列图像流进行目标跟踪。其中,根据测试目的以及应用场景的不同,可将跟踪过程划分为短时目标跟踪和长时目标跟踪。
在短时目标跟踪场景中,其基准数据集[6-10]多具有序列短、目标变化较小等特点,针对环境噪声、场景模糊、动态变化等扰动挑战,借助抑制背景、干扰物等噪声的方法,实现高判别性跟踪器。此外,跟踪目标在持续运动过程中由于旋转、受压等姿态变化,不可避免地导致外观上的改变,这种源于目标内在因素的外观变化能够直接影响对物体表观的刻画和边界框的预测,边界框预测的准确性对于后续模型能否有效更新起了很大作用。
在长时目标跟踪场景中,其基准数集[11-14]多以较长序列为主,目标会出现暂时消失、隔帧出现等情况,造成目标表观变化显著和背景多样性、复杂性。通常情况下,长时间跟踪场景中,目标易发生遮挡,其中会出现完全遮挡、部分遮挡等情况;在以时间维度度量场景中,光照等环境噪声干扰容易变化,造成目标表征不明显、环境复杂度变高等挑战。此外,由于目标特征变化明显,形成相似目标物体干扰,对跟踪器的鲁棒性和准确性带来了巨大挑战。
无论是短时目标跟踪场景,还是长时目标跟踪场景,目标尺度和宽高比的变化都给目标跟踪算法带来了巨大挑战。以往的目标跟踪算法通常采用基于多尺度搜索的方法或基于锚框的方法,对目标尺度和宽高比变化进行处理,但效果不佳。为了准确估计目标的尺度和宽高比,同时避免锚框相关超参数的手工设计,近年来基于无锚框的尺度处理方法,已经吸引越来越多目标跟踪领域学者的关注。与此同时,Transformer模型因其较好的全局建模能力,在视觉领域中取得了巨大成功,有一部分学者将其引入目标跟踪领域,极大地推动了目标跟踪领域的发展,然而也给目标跟踪研究带来一些问题。例如:Transformer模型计算量过大,是否能够对模型进行轻量化;能否有效融合视觉和语言等多模态信息。在长时跟踪领域,往往存在目标消失后重现的问题,这也是长时跟踪难以解决的痛点。如表1所示,根据上述目标跟踪算法的特性,可以将上述基于孪生网络的目标跟踪算法划分为如下6类模型:无锚框(anchor-free)跟踪框架、孪生网络关系器、基于Transformer的孪生跟踪器、轻量化单目标跟踪模型、基于自然语言的跟踪模型和基于检测—跟踪长时目标跟踪算法。接下来,本文将对这6个方面的相关工作展开论述,最后,对目标跟踪领域的未来发展方向进行讨论和展望。
表1 基于孪生网络的目标跟踪算法特性和分类示例
1 无锚框跟踪框架
近年来,很多跟踪器[15-16,25-26]采用基于无锚框的方式来进行目标估计。在无锚框的方式出现之前,很多跟踪器是基于多尺度搜索[27-29]和基于锚框[30-32]的,如图1所示。
图1 估算目标尺度或宽高比的方法Fig.1 Method for estimating target scale or aspect ratio
基于多尺度搜索的方法依赖于分类组件,虽然速度上有一定优势,但是不能准确估计目标的尺度和宽高比。而基于锚框的方法,虽然相比采用多尺度搜索的方法,准确度有了明显的提升,但其需要基于先验知识仔细设计锚框,引入了相关的超参数,增加了计算。为了准确估计目标的尺度和宽高比,同时避免锚框相关超参数的手工设计,一些学者将无锚框的方法引入目标跟踪[15-16,25]。SiamFC++[16]分析了之前基于孪生网络的目标跟踪器的不足,将跟踪任务拆分为分类和回归2个子任务;为了增强跟踪器的分类能力和减少回归分支对先验知识的依赖,SiamFC++增加质量评估分支辅助分类和采用无锚框的方式估计目标状态。SiamCAR[25]和SiamFC++相似,用无锚框的方式进行跟踪,增加了一个中心点分支辅助分类。Ocean[26]是另一个基于无锚的跟踪器,它通过学习对象感知特征以辅助分类并使用在线学习方法更新模型,但是,其对象感知特征和用于分类的特征是从不同位置采样的,不同的采样位置可能会导致其对象感知和分类特征之间的不一致。
准确估计目标的尺度和宽高比仍然是目标跟踪领域的挑战性问题之一,并且由于遮挡、光照变化、相似物干扰、背景混杂等因素的存在而进一步复杂化。Chen等[15]通过利用全卷积网络的强大能力,设计了一个简单而有效的目标跟踪算法,称为孪生边框自适应网络(siamese box adaptive network,SiamBAN),用以解决准确估计目标的尺度和宽高比这个挑战性问题。如图2,SiamBAN由一个孪生网络骨干和多个边框自适应头组成,可以在训练过程中进行端到端优化。孪生边框自适应网络直接以逐像素的方式对目标进行分类,并预测其边框,从而将跟踪任务转换为分类和回归问题。无先验框的设计避免了与候选框相关的超参数,从而使SiamBAN更加灵活和通用。
图2 SiamBAN结构[15]Fig.2 SiamBAN structure diagram[15]
SiamFC++[16]、SiamCAR[25]、Ocean[26]在GOT-10k[10]上的性能对比结果如表2所示。GOT-10k[10]是最近发布的大型高多样性基准数据集,用于野外通用目标跟踪。它包含超过10 000个真实世界运动物体的视频片段。其协议确保了深度跟踪器的公平比较,即所有方法都使用数据集提供的相同训练数据。训练数据集和测试数据集中的类是零重叠的。研究人员需要在给定的训练数据集上训练他们的模型,并在给定的测试数据集上测试它们。上传跟踪结果后,官方网站会自动进行分析,提供的评估指标包括成功图、平均重叠(AO)和成功率(SR)。AO表示所有估计边界框和地面真值框之间的平均重叠。SR0.5表示重叠超过0.5的成功跟踪帧的速率。从表2中我们不难发现,基于在线更新机制的跟踪器(如Ocean)比不更新模板帧的跟踪器(如SiamCAR)有更好的性能。
表2 SiamFC++、SiamCAR、Ocean在GOT-10k上的性能对比
2 孪生网络关系器
基于孪生网络的跟踪器通常会保留一些先验信息[33],并把跟踪任务看成是一个相似性学习的问题,获得目标模板和候选帧之间的匹配函数[34],且在准确性和实时性上均有着非常优异的性能。其中,跟踪器在跟踪阶段易受到背景干扰物等噪声的影响,这极大限制了鲁棒性。由此,发现导致这种现象的原因是模型的判别能力不够。最近,现有的工作通过利用在线更新机制,设计适应性更新策略引入跟踪器模型当中,以增强模型判别力[17,28,35]。CFNet[28]把相关滤波器翻译成一个可以微分的网络层来在线更新模型;DSiam[27]采用了一个快速转换模块来实现在线学习;UpdateNet[35]试图在跟踪时去估计目标的模板图来应对目标的表观变化。然而,在线更新策略需要繁重的计算并且更新时累计的误差会最终导致跟踪失败。DiMP[18]通过在线收集样本,利用元学习的方法训练一个在线分类器来对目标进行分类。除此之外,SPM[32]尝试使用“由粗到细”思想进行两阶段的跟踪来对干扰物进行筛选;DaSiamRPN[36]通过增加随机训练负样本的方式来提高跟踪器对相似干扰物的判别力。少样本学习期望在给定少量带有标签的样本情况下能识别出新的类别[37]。在训练的时候,通常只有很少甚至只有一个样本的数据能够获取,因此,如何克服这种情况以确保模型的泛化能力成为一个具有挑战性的任务[38]。少样本学习的主流方法有以下几种:用循环神经网络(RNN)优化[39]、基于在线微调的方法[40]、训练学习一个有效的度量[41-42]。目前,一个流行的趋势是设计一个通用的策略使得能够在每个任务中去指导有监督学习,这被叫做元学习。在大量任务中学习的这些元知识是可以迁移的,这样训练出来的网络就能够处理不同的任务。最近,随着基于快速学习初始化模型参数MAML[40]的提出,Huang等[43]和Wang等[44]借鉴了这个技术,并在他们的跟踪任务中用其让模型快速自适应。总的来说,元学习的方法研究可以促进目标跟踪在不同场景下的适应能力[34]。
近些年,通过对孪生网络跟踪器进行分析发现,其容易受到干扰物的影响,并且大部分基于孪生网络的跟踪器会利用分类分支和回归分支去定位目标,而这2个分支是相互独立进行优化的,这会引起在跟踪阶段的不匹配现象,即分类置信分数最高的定位框和目标的IoU值不一定是最大的。Cheng等[45]提出孪生关系网络框架来解决跟踪过程有效地分辨和抑制干扰物等扰动挑战,网络结构如图3所示。其中,关系检测器模块如图4所示,通过衡量预选建议框和跟踪目标之间的关系,对背景干扰物进行分辨和过滤。此外,设计基于少样本学习的对比训练策略来进一步提高模型判别力,这个策略使得模型不仅能够匹配相同的目标,而且还能够区分不同的目标,如图5所示。同时,为了缓解分支的不匹配现象并得到更加精确的跟踪结果,设计精调模块利用关系检测器的输出达到分类分支和回归分支的相互关联。
图3 孪生关系网络跟踪流程[45]Fig.3 Siamese network tracking flow char[45]
图4 关系检测器的结构[45]Fig.4 Structure diagram of relationship detector[45]
图5 对比训练策略示意Fig.5 Schematic diagram of comparative training strategy
OTB-100[46]是一个被广泛用于评估视觉跟踪算法性能的视觉跟踪基准数据集。该数据集总共包含100个序列,每个序列都逐帧注释,带有边界框和11个挑战属性。其中AUC表示预测框与真实框之间计算 IoU,当大于某个阈值时,认定跟踪成功。如果阈值从0到1不断变化,就能画出每个阈值下跟踪成功率,计算曲线与x、y轴的面积,得到AUC。用真实框中目标的位置初始化第一帧,然后运行跟踪算法得到平均精度和成功率。这种方法被称为one-pass evaluation (OPE)。CFNet[28]、SPM[32]在OTB-100[46]测试集上的性能对比结果如表3所示。由表3可知,SPM由于采用了干扰物筛选等处理策略,能够取得较好的跟踪结果。
表3 CFNet、SPM在OTB-100测试集上的性能对比
3 基于Transformer的孪生跟踪器
Transformer在2017年由Vaswani等[47]提出,它不同于以往深度学习任务经常使用的CNN和RNN方法,而是通过引入注意力的思想来处理自然语言任务。因其出众的性能和符合人体的感知机制[48-49],近几年来被众多研究者引入计算机视觉领域中,诸如图像分类[50]、图像分割、目标跟踪等视觉任务。
Transformer的核心是多头注意力机制,如图6所示,有查询(query, q)、键(key, k)和值(value, v)3个输入,通常使用缩放点积方法来计算它们的注意力矩阵,即相似度矩阵,公式表示为
式中:d代表输入k的维度;Pq、Pk代表q和k对应的位置编码。为了探索更强有力的长距离依赖能力,Transformer将q、k和v向量划分为多个子特征向量,并使用多头注意力机制计算它们的注意力矩阵以从v特征向量中传播相关信息,其公式表示如下:
MultiHead(q,k,v)=Concat(h1,…,hN)Wo,
图6 多头注意力示意Fig..6 Multi-head attention diagram
最近,一些工作将Transformer引进到单目标跟踪领域中,它们采用编码器—解码器的范式来设计Transformer网络结构并将其结合到以往的跟踪框架上,展现出非凡的跟踪性能。具体地,Chen等[19]提出TransT,设计了一个带有自身上下文增强(ego-context augment, ECA)和交叉特征增强(cross-feature augment, CFA)模块的Transformer特征融合网络,它可以避免传统的跨相关操作陷入局部最优解和丢失部分语义信息的问题。Yan等[20]提出STARK,直接把目标跟踪看做是一个边界框预测问题,对此设计了一个基于Transformer的跟踪器,它通过自注意力和交叉注意力模块对模板帧和搜索帧之间的时空特征进行全局建模。Wang等[51]提出TrDiMP,利用一个Transformer结构对多个模板特征进行关系建模,同时传播跟踪线索到当前帧以执行跟踪任务。另外,Zhao等[52]提出TrTr,把Transformer的编码器和解码器分离到2个分支上,同时对模板和搜索特征进行编码以进行目标跟踪。以上这些跟踪器通过尝试建立长时序依赖来感知上下文信息的方法取得了很大的性能提升,展示出Transformer强大的全局建模能力。
然而,当前对Transformer的探索还处于一个初期阶段,仍存在很多可探索的地方,诸如减少计算复杂度、基于Transformer来重新思考整体的跟踪架构等。另外,在计算资源受限的平台运行传统卷积骨干网络(ResNet)的计算成本仍然较高,因此未来研究移动平台的高效骨干网络、基于轻量化的Transformer跟踪器、基于纯Transformer架构的跟踪器等都可能是有趣的方向。TransT[19]与STARK[20]在GOT-10k[10]测试集上的性能对比结果如表4所示。从表中可以分析得出在短时跟踪时,TransT的跨注意力和自注意力模块更高效。
表4 TransT与STARK在GOT-10k上的性能对比
4 轻量化单目标跟踪模型
当前学术界更加注重单目标跟踪模型的鲁棒性和正确率,但是在工业界,模型轻量化是一个至关重要的标准,这个标准决定着单目标跟踪模型是否能够部署到边缘设备上。然而单目标跟踪的模型越来越大,倾向于使用更深和更复杂的模块,很少有考虑到效率及模型大小问题,且伴随着Transformer的引入使模型参数大大增加。这些原因导致单目标跟踪模型无法部署在边缘设备进行实时单目标跟踪任务,即无法工业化。因此,研究轻量化且具有高准确率的单目标跟踪模型势在必行。
LightTrack[21]、E.T.Track[22]、FEAR[53]是目前性能较为强大的3种单目标跟踪模型,同时具有高速度、高性能和低模型大小的特点。LightTrack使用神经结构搜索来设计更轻量、高效的对象跟踪器,它的性能优于SiamRPN++[31]和Ocean[26]等先进跟踪器,并且模型更加小,能够部署在移动芯片上。E.T.Track是目前唯一基于Transformer的实时目标跟踪器,它利用Exemplar Transformer实现的实时目标跟踪模型,在CPU上能达到47 frame/s的速度,比其他基于Transformer的模型有更快的速度,相较于TransT快9倍,较STARK快6倍。FEAR是一种新颖、快速、高效、准确并且强大的视觉跟踪器,其中优化版FEAR-XS的跟踪速度比当前流行的SiamRPN++快10倍以上,且能够接近最先进的结果。FEAR-XS跟踪器的模型大小比LightTrack小了2.4倍,速度却是LightTrack的4.3倍,且具有更高的精度。
近来,发表的轻量级目标跟踪器仍然和SOTA有不小的差距,它们的准确率和鲁棒性仍然有许多值得改进的地方。不同版本的LightTrack[21]在GOT-10k测试集的性能对比结果如表5所示。从表中可以看出,更大的参数和模型确实能够一定程度上提升跟踪器的性能。但是如何在保留性能的情况下降低模型的计算量和参数是轻量化不得不考虑的问题。
表5 不同版本的LightTrack在GOT-10k上的性能对比
5 基于自然语言的跟踪器
仅仅依靠视觉中的表观特征信息进行跟踪很容易受到外部世界及其自身状态的影响,进而导致在跟踪领域出现许多难以解决的痛点。如图7所示,根据人的常识,在跟踪某个任意目标时,视觉和语言是缺一不可的联合表达和相互补充的通道。在人类的认知中,在目光锁定任意目标时,都是先从“是什么”开始,用“什么样子”进行辅助。
图7 自然语言的作用和优势Fig.7 Functions and advantages of natural language
在近十年里,出现了很多将自然语言和跟踪相结合的研究工作,通常自然语言被用来提高跟踪器的性能。使用文本为视觉提供更稳定和更准确的高级语义信息。通过两者的互补,消除表观特征变化引起的歧义和不确定性。Li等[54]通过自然语言定义了跟踪的3种不同形式,即只使用自然语言、使用依赖基于自然语言的视觉目标规范以及利用其联合能力。Wang等[55]将自然语言作为监督信息,以稳健地学习特征表示和分类器。Feng等[56]使用贝叶斯公式,在检测跟踪框架中通过自然语言形式化跟踪。Wang等[57]基于自然语言进行跟踪,使用高级语义信息指导对象跟踪,巧妙地将局部和全局搜索联系在一起。Feng等[23]将自然语言引入孪生网络,为目标跟踪提供了一类新的基线。但在上述工作中,自然语言的信息和视觉特征只是做了简单的交互,并没有完全利用到自然语言的优势。如果可以在关注本身模态的前提下,对不同模态之间的关系进行建模,或许能够获得更好的跟踪效果。
TNL2K[54]与Wang等[55]在OTB-Lang[54]测试集的性能对比结果如表6所示。Prec为衡量目标跟踪算法的精度指标,其根据目标跟踪算法估计的目标位置的中心点与人工标注真实框的目标中心点,计算这两者的距离小于给定阈值的视频帧的百分比得到。从表6中实验结果可以看出,基于视觉和语言融合的跟踪算法已经初步验证了其性能。但是如何进一步有效地将自然语言与跟踪领域结合,从而处理仅仅依靠视觉信息没法处理的难题,依然值得进一步深入研究。
表6 TNL2K与文献[55]在OTB-Lang上的性能对比
6 基于检测—跟踪的长时目标跟踪算法
得益于长时目标跟踪算法的实用性,大尺度长时跟踪算法成为视觉目标跟踪中新的热点问题。长时与短时跟踪器的主要区别是,长时跟踪器需要具备处理目标频繁消失和重现的问题。一般来说,长时跟踪序列[12]会持续长达数百至上千帧,并且通常包含表观变化、长时间消失和类别内干扰物等困难场景。因此,长时跟踪器必须具备高效重检测目标以及区分目标和相似物的能力。
高效实用的长时跟踪算法通常包含3个关键的属性:高效的模型设计、强大的全局重检测策略以及鲁棒的干扰物感知机制。然而,目前的长时跟踪器没有很好地考虑这些因素,因此存在耗时过大以及干扰物导致的漂移问题。为了解决这些问题,DMTrack[64]提出一个两任务的跟踪框架,如图8所示,通过使用单样本检测(one-shot detection)和重识别(Re-identity)这2个核心模块来获得一个基于动态卷积核和多目标跟踪的干扰物感知多目标跟踪算法。为了实现精确以及快速的全局检测,DMTrack构建了一个基于动态卷积生成的高效小样本检测—跟踪模型,在此模型的基础上,引入重识别模型,用于提供一个更加统一和灵活的方法将目标信息结合到跟踪框架中。与此同时,为了增强跟踪器对干扰物的区别能力,该工作受到多目标跟踪方法的启发,为所有潜在的干扰物维护跟踪列表,从而显式地区分目标和其他相似物体。总体来说,得益于高召回的检测模型以及显式的目标关联,该跟踪器取得可靠高效的长时跟踪性能。当然,基于检测—跟踪的方法,受限于检测速度和精度,训练负担大,提升跟踪过程的速度以及选择更合适的训练方式,是长时跟踪领域需要考虑的问题。
图8 基于MOT的长时检测—跟踪算法[64]Fig.8 Long term detection and tracking algorithm based on MOT[64]
SPLT[62]、DMTrack[64]在VOT-2019-LT的性能对比结果如表7所示。VOT-2019-LT是2019年VOT比赛长时赛道。F-Score 一种平衡召回率和准确率的评价指标。从表中可以看出,DMTrack使用重识别的核心模块进行显式的多目标跟踪,取得了较好的长时目标跟踪性能。
表7 SPLT、DMTrack在VOT-2019-LT上的性能对比
7 总结与展望
过去几年中,出现了大量基于深度学习的目标跟踪算法研究工作,同时在跟踪器的实时性、鲁棒性和准确性方面也取得了令人欣喜的效果。但是,该领域当面对真实场景更加复杂的应用场景时,仍然存在大量问题亟待解决。这里,我们重点讨论以下3个问题与其未来发展方向。
1)泛化能力。当前的跟踪器非常依赖大量有标注的训练数据,获取数据成本很高,并且特定场景存在数据量较小、复杂度较低和多样性不足等问题。由此,提升模型的泛化能力,借助少样本学习和自监督学习能够有效改善。首先,少样本学习能够解决训练样本数量少导致模型泛化能力不够的问题,自监督学习能够有效解决训练数据缺少标注的问题。通过借助训练数据提升模型泛化能力,能够适应性地应用于复杂场景当中,对目标跟踪领域而言能够提升整体的发展水平。
2)跟踪精细化。从多尺度搜索的方法到基于锚框和基于无锚框的目标跟踪器,算法模型设计趋于精细化。基于锚框的方法可以处理目标尺度和宽高比的变化,但是此方法对锚框的数量、大小和宽高比很敏感。同时,基于无锚框的方法直接对对象进行分类并回归其边框,简单而有效。但这些方法在预测的边框和卷积特征之间存在对齐问题,限制了这些跟踪器的性能。如果能解决预测的边框和特征之间的对齐问题,相信对跟踪器的性能会有明显提升。
3)模型架构。基于经验设计的神经网络架构逐渐被基于神经网络结构搜索的结构所替代,在检测任务中,已有不少工作集中于骨干网络[65]、特征提取网络[66]和检测头[67]的搜索。在跟踪任务中,其实也存在大量经验设计的网络,特别是模板分支与搜索分支融合的部分是通过大量实验得出的(包括卷积类型、通道数、融合操作和融合点个数),通过神经网络架构搜索的方式将获得性能更好的结构,但目前在搜索空间定义、训练指标定义、训练收敛等问题上仍需要研究人员的不懈努力。