目录
论文
摘要
更复杂和强大的神经网络模型的设计显着推进了视觉目标跟踪的最新技术水平。 这些进步可归因于更深层次的网络,或引入新的构建块,例如Transformer。 然而,在追求提高跟踪性能的过程中,运行时间常常受到阻碍。 此外,高效的跟踪架构很少受到关注。 在本文中,我们介绍了 Exemplar Transformer,这是一种利用单个实例级注意层进行实时视觉对象跟踪的转换器模块。 我们的视觉跟踪器 E.T.Track 包含 Exemplar Transformer 模块,在 CPU 上以 47 FPS 的速度运行。 这比其他基于Transformer的模型快 8 倍。 与可以在标准 CPU 上实时运行的轻量级跟踪器相比,E.T.Track 在 LaSOT [16]、OTB-100 [52]、NFS [27]、TrackingNet [36] 和 VOTST2020 [29] 数据集上始终优于所有其他方法。 代码和模型可在 https://github.com/pblatter/ettrack 获得。
1 引言
估计视频序列中对象的轨迹,称为视觉跟踪,是计算机视觉中的基本问题之一。 深度神经网络通过更深的网络 [4]、更准确的边界框 [31] 或引入新模块(例如Transformer[53、8、48)] 显着提高了视觉跟踪方法的性能。 然而,这些进步通常是以更大的计算开销的模型为代价的。 虽然自动驾驶、机器人和人机交互等应用对实时视觉跟踪的需求不断增加,但高效的深度跟踪架构却很少受到关注。 这需要视觉跟踪器能够在有限的硬计算约束下实时运行,同时准确且稳健。
针对机器翻译提出的Transformer[45]在许多基于视觉的任务中也表现出了优异的性能,包括图像[3]和视频[51]分类、对象检测[7],甚至多任务学习[6]。视觉跟踪领域也观察到了类似的性能优势[53,42,48]。虽然Transformer使跟踪器能够提高准确性和鲁棒性,但它们严重受到高计算成本的影响,导致运行时操作减少,如图1所示。在这项工作中,我们开始寻找一个Transformer模块,能够提高跟踪精度和鲁棒性,同时不影响运行时间。
在这项工作中,我们提出了 Exemplar Attention,这是一个用于视觉跟踪的单个实例级注意力层。 我们的注意力模块利用特定领域的知识来提高跟踪器的性能,同时保持可观的运行时间。 具体来说,我们建立在两个假设之上。首先,在跟踪单个对象时,一个全局查询值具有足够的描述性。其次,一小组范例值可以充当数据集样本之间的共享内存。 因此,与传统的注意力模块相比,我们的约束实例级范例注意力捕获了关于目标对象的更明确的信息。
我们通过将 Exemplar Transformer 层集成到 Siamese 跟踪架构中来开发 Exemplar Transformer Tracker (E.T.Track)。 具体来说,我们用 Exemplar Transformer 层替换了跟踪头中的卷积层。 Exemplar Transformer 层的额外表现力显着提高了基于常规卷积层的模型的性能。 如图 1 所示,将其与mobile
LightTrack [54](LT-Mobile)进行比较时,增加的性能增益会在运行时产生微不足道的成本。 我们进一步将用于单个对象跟踪的变换器层与其他通用变换器层进行比较。 我们发现 Exemplar Transformer 始终优于竞争方法,证明了为视觉跟踪任务明确设计注意力层的好处。
我们在六个基准数据集上验证了我们的方法:LaSOT [16]、OTB-100 [52]、UAV-123 [35]、NFS [27]、TrackingNet [36] 和 VOT-ST2020 [29]。 我们提出的跟踪器在 CPU 上以每秒 46.8 帧 (FPS) 的速度运行,同时通过在具有挑战性的 LaSOT 数据集上实现 59.1% 的 AUC,在实时 CPU 跟踪器中设置了一个新的最先进技术。
总之,我们的贡献是:
- 我们介绍了 Exemplar Transformer,这是一个基于单个实例级注意力层的转换器层,称为 Exemplar Attention。
- 我们基于我们的 Exemplar Transformer 层开发了一个基于 transformer 的跟踪架构。
- 我们的跟踪器在 CPU 上实时运行,同时在 5 个基准测试中优于以前的实时跟踪器。
2 相关工作
Siamese Trackers: 近年来,Siamese 跟踪器因其性能和简单性而广受欢迎。 基于 Siamese 的跟踪框架将视觉对象跟踪制定为模板匹配问题,利用搜索和图像块之间的互相关。 Bertinetto 等人的原创作品介绍了 SiamFC [4],这是第一个将特征相关性纳入 Siamese 框架的模型。 李等[31] 引入区域提议网络以提高效率并获得更准确的边界框。 Siamese 跟踪器前沿的最新进展包括使用额外的分支 [49]、用于更精确的边界框回归的细化模块 [55] 以及各种模型更新机制 [17、18、56、58]。与以前的孪生跟踪器不同,我们建议将 Examplar Transformer 模块合并到预测头中,并在忽略不计的运行时间增加的情况下提高跟踪器的性能。
Transformers in Tracking: Transformer [45] 是作为一个模块引入的,它通过使每个元素都能关注所有其他元素来改进神经机器翻译中远程依赖关系的学习。 在计算机视觉中,Transformer 已被用于图像 [3] 和视频 [51] 分类、目标检测 [7],甚至密集预测任务的多任务学习 [6]。 与我们的工作更相关的是,Transformer 也被用来提高视觉跟踪器的性能。 STARK [53] 利用Transformer 对目标对象和搜索区域之间的全局时空特征依赖关系进行建模。 除了常规搜索和模板补丁之外,这是通过将动态更新的模板集成到编码器中来实现的。 [48] 引入了一种Transformer 架构,通过额外利用时间上下文来改进标准的 Siamese-like 管道。 编码器模型通过利用自注意力块相互增强多个模板特征。 在解码器中,模板和搜索分支由交叉注意块桥接,以传播时间上下文。 [8] 还通过用基于 Transformer 的特征融合网络替换常规相关操作来改进基于 Siamese 的跟踪器。 基于 Transformer 的融合模型聚合了全局信息,为标准线性相关操作提供了一个更好的替代方案。 另一方面,ToMP [34] 利用Transformer 来预测卷积核的权重,以便在搜索区域和模板补丁中定位目标。 在这项工作中,我们还设计了用于跟踪的变压器架构。 与之前用于跟踪的转换器不同,Exemplar Transformer 是轻量级的,可以用于实时运行的计算量有限的硬件。
Efficient Tracking Architectures: 随着自动驾驶和人机界面等应用对实时视觉跟踪需求的增加,高效的深度跟踪架构必不可少。 然而,令人惊讶的是,很少有人关注可以在计算有限的硬件上运行的高效跟踪器。 KCF [21] 和 fDSST [13] 采用手工制作的功能来实现 CPU 上的实时操作。 虽然速度很快,但与更新和更复杂的方法相比,它们对手工制作特征的依赖显着阻碍了它们的性能。 相比之下,我们提出了一种高效的深度跟踪器,它在可比的运行时间下运行,但与更昂贵的深度跟踪器的性能相当。 与我们的工作更相关的是,LightTrack [54] 使用神经架构搜索 (NAS) 来寻找轻量级且高效的 Siamese 跟踪架构。相反,我们提出了一个高效的Transformer 层,可以补充现有架构如LightTrack。具体来说,我们的Transformer 层可以作为卷积层的替代品,提高性能而对运行时间的影响可以忽略不计。
Efficient Transformers: 对 transformer 架构 [15、37、7、51] 的极大兴趣导致了各种高效模型变体的开发,这些变体可以分为 4 个主要类别 [44]。 低秩/核方法假设并利用自注意力矩阵的低秩近似 [26, 9]。 内存/下采样方法学习侧内存模块以同时访问多个tokens,或者简单地减少序列长度 [43、59、33]。 Fixed/Factorized/Random Patterns 限制了 self-attention 的视野,例如使用 block patterns [40, 59, 33, 38]。 Learnable Patterns 用动态模式 [47, 50, 28] 代替了标准transformer 中的固定模式。 我们的工作属于内存/下采样和固定/分解/随机模式的交集。 与上述旨在设计通用注意力层的作品不同,Exemplar Attention 是通过利用特定领域的知识来设计用于单个对象视觉跟踪任务的。
3 Efficient Tracking with Transformers
为了在保证性能良好的情况下满足实时跟踪,在计算受限的设备上部署时是一个具有挑战性的问题。 在本节中,我们介绍了 Exemplar Transformer,这是一种基于单实例级注意层的Transformer架构,用于单个对象跟踪。 虽然是轻量级架构,但我们的 Exemplar Transformer 显着缩小了与计算量大的基于 transformer 的跟踪器的性能差距 [53、48、8]。3.1节首先介绍了原始的Transformer ,接下来是我们的 Exemplar Transformer 公式。3.2 介绍我们的 E.T.Track。 具体来说,它首先概述了整体架构,并介绍了如何在跟踪器中使用 Exemplar Transformers。
3.1 Exemplar Transformers
Standard Transformer: 为机器翻译而引入的 Transformer [45] 接收一维输入序列 x ∈ R N × D x\in \mathbb{R}^{N\times D} x∈RN×D,具有 N 个维度为 D 的特征向量。输入序列由一系列定义为
e q 1 : T ( x ) = f ( A ( x ) + x ) eq1: T(x)=f(A(x)+x) eq1:T(x)=f(A(x)+x)
函数 f ( ⋅ ) f(·) f(⋅) 是一个轻量级前馈网络 (FFN),它独立映射每个特征向量。 函数 A(·) 表示作用于整个序列的自注意力层。 具体来说,作者使用了“Scaled Dot-Product Attention”,定义为
e q 2 : A ( x ) = s o f t m a x ( Q ⏞ f Q ( x ) K T ⏞ f K ( x ) d k ) V ⏞ f V ( x ) = s o f t m a x ( ( x W Q ) ⏞ f Q ( x ) ( W K T x T ) ⏞ f K ( x ) d k ) ( x W V ) ⏞ f V ( x ) eq2: A(x)=softmax(\frac{\overset{
{f_{Q}(x)}}{\overbrace{Q}} \overset{
{f_{K}(x)}}{\overbrace{K^{T}}} }{\sqrt{d_{k}} } )\overset{
{f_{V}(x)}}{\overbrace{V}} = softmax(\frac{\overset{
{f_{Q}(x)}}{(\overbrace{xW_{Q})}} \overset{
{f_{K}(x)}}{(\overbrace{W_{K}^{T}x^{T})}} }{\sqrt{d_{k}} } )\overset{
{f_{V}(x)}}{(\overbrace{xW_{V})}} eq2:A(x)=softmax(dkQ
fQ(x)K