MixFormer学习笔记

MixFormer: End-to-End Tracking with Iterative Mixed Attention

动机:

视觉对象跟踪通常采用特征提取、目标信息集成和边界框估计的多阶段管道。为了简化这一流程,并统一特征提取和目标信息集成的过程,本文提出了一种基于转换器的紧凑跟踪框架MixFormer。我们的核心设计是利用注意力操作的灵活性,并提出一种混合注意力模块(MAM)来同时进行特征提取和目标信息整合。这种同步建模方案允许提取特定于目标的区分特征,并在目标和搜索区域之间进行广泛的通信。基于 MAM,我们只需通过堆叠多个 MAM 并将定位头放在顶部来构建我们的 MixFormer跟踪器。

贡献:

  1. 提出了一种基于混合注意模块(MAM)的紧凑型端到端跟踪框架MixFormer。MAM允许同时提取特定于目标的特征以及目标和搜索之间的广泛通信。
  2. 实例化了两种类型的 MixFormer跟踪器,一种具有渐进下采样和深度卷积投影的分层跟踪器(称为 MixCvT),以及建立在 Vi 普通主干的非分层跟踪器(称为 MixVT)。特别是,为普通 MixVT 设计了一个金字塔角头,可以补充多尺度信息以实现准确的目标定位。
  3. 研究了MixFormer框架的一系列预训练策略,并揭示了开发高效和有效的跟踪器的重要成分。特别是,提出了简单的自监督预训练策略TrackMAE,它实现了与大规模ImageNet预训练相当的性能。
  4. 对于在线模板更新,在 MAM 中设计了一个定制的非对称注意力,以提高效率,并提出了一个有效的分数预测模块来选择高质量的模板,从而产生高效有效的基于在线transformer的跟踪器。

1、Method

image-20230523133735891

展示了我们的端到端跟踪框架,称为 MixFormer,基于迭代混合注意模块 (MAM),整个管道如图 1 (b) 所示。实例化了两种类型的MixFormer,包括基于W-MAM的层次化MixCvT和基于S-MAM的非层次化MixViT。具体来说,MixCvT 旨在通过渐进式下采样利用视觉归纳偏差来接受 CNN 混合结构和变换的成功。MixViT专注于设计一个更简单、更有效的跟踪器,具有较少的归纳偏差,但需要仔细的预训练才能达到卓越的性能。引入了我们提出的MAM来统一特征提取和目标信息合并的过程。这种同时处理的方案将使我们的特征提取更针对相应的跟踪目标。此外,它还允许更广泛地执行目标信息整合,从而更好地捕捉目标与搜索区域之间的相关性。

1.1、Mixed Attention Module (MAM)

混合注意模块(MAM)是追求紧凑端到端视觉对象跟踪器的核心设计。我们的MAM的输入是目标模板和搜索区域。MAM旨在同时提取它们自身的视觉特征,并融合它们之间的交互信息。MAM对目标模板和搜索区域的两个独立标记序列进行双重混合注意操作。它对每个序列中的标记自己进行自我关注,以捕捉目标或搜索区域信息。同时,它在两个序列中的标记之间进行交叉注意,以允许目标模板和搜索区域之间的信息交流。

image-20230523134705134

如图2所示,这种混合注意机制可以通过连接标记序列有效地实现。在这项工作中,我们实例化了两种类型的MAM,包括MixCvT的Wide MAM和MixViT的Slimming MAM。前者通过深度卷积投影将CNN的理想特性(即移位、缩放和失真不变性)引入Transformer架构。这使得跟踪器能够在训练数据规模有限的情况下实现有希望的性能。而后者追求的是简单而通用的变压器操作。

Wide Mixed Attention Module (W-MAM)

从形式上看,给定一个多个目标和搜索的串联标记,我们首先将其分成两部分,并将其重塑为2D特征图。为了实现局部空间上下文的额外建模,在每个特征图(即查询、键和值)上执行可分离的深度卷积投影层。它还允许在键和值矩阵中进行下采样,从而提高了效率。然后目标和搜索的每个特征图都被线性投影展平和处理以产生注意力操作的查询、键和值。我们用 q t q_t qt k t k_t kt v t v_t vt表示目标,用 q s q_s qs k s k_s ks v s v_s vs表示搜索区域。混合注意定义为:

k m = Concat ⁡ ( k t , k s ) , v m = Concat ⁡ ( v t , v s ) , Attention ⁡ t = Softmax ⁡ ( q t k m T d ) v m , Attention ⁡ s = Softmax ⁡ ( q s k m T d ) v m , \begin{array}{l}k_m=\operatorname{Concat}\left(k_t, k_s\right), \quad v_m=\operatorname{Concat}\left(v_t, v_s\right), \\ \operatorname{Attention}_{\mathrm{t}}=\operatorname{Softmax}\left(\frac{q_t k_m^T}{\sqrt{d}}\right) v_m, \\ \operatorname{ Attention }_s=\operatorname{Softmax}\left(\frac{q_s k_m^T}{\sqrt{d}}\right) v_m,\end{array} km=Concat(kt,ks),vm=Concat(vt,vs),Attentiont=Softmax(d qtkmT)vm,Attentions=Softmax(d qskmT)vm,
其中 d d d表示键的维度, Attention ⁡ t \operatorname{ Attention }_t Attentiont和分 Attention ⁡ s \operatorname{ Attention }_s Attentions别是目标和搜索的注意图。它包含自我注意和交叉注意,统一了特征提取和信息集成。然后将目标标记和搜索标记连接起来,通过线性投影进行处理。最后,通过层归一化和MLP函数处理连接的标记序列,如图2所示。

Slimming Mixed Attention Module (S-MAM)

虽然W-MAM通过在Vanilla变换(即深度卷积投影)中引入平移等变先验(即深度卷积投影)来产生强视觉表示,但它也存在一些问题。首先,由于每个关注元素(即查询、关键字和值)的重塑运算和深度卷积运算,导致跟踪速度较慢。此外,它缺乏适应最近 ViT 开发的灵活性,例如简单的掩码预训练。为了解决这些问题,我们通过去除 W-MAM 中的深度卷积投影来进一步呈现 Slimming Mixed Attention Module (S-MAM)。S-MAM的详细结构如图2所示。

首先,我们使用多个在线模板和搜索标记序列,将输入标记序列拆分为多个目标标记序列,包括静态标记序列和在线标记序列。然后通过一层归一化和简单的线性投影对目标和搜索的分割特征进行处理。接下来,对生成的查询、键和值执行混合注意操作。其余的操作与W-MAM相同。

Asymmetric Mixed Attention Scheme.

直观地说,从目标查询到搜索区域的交叉注意并不那么重要,并且可能会因为潜在的干扰而带来负面影响。为了减少MAM的计算开销,从而有效地使用多个模板来处理对象变形,我们进一步提出了一种定制的非对称混合注意方案,通过剪枝不必要的目标到搜索区域的交叉注意。这种不对称混合注意的定义如下:
Attention ⁡ t = Softmax ⁡ ( q t k t T d ) v t Attention ⁡ s = Softmax ⁡ ( q s k m T d ) v m \begin{array}{l} \operatorname { Attention }_{\mathrm{t}}=\operatorname{Softmax}\left(\frac{q_t k_t^T}{\sqrt{d}}\right) v_t \\ \operatorname { Attention }_s=\operatorname{Softmax}\left(\frac{q_s k_m^T}{\sqrt{d}}\right) v_m \end{array} Attentiont=Softmax(d qtktT)vtAttentions=Softmax(d qskmT)vm
每个MAM中的模板令牌在跟踪过程中可以保持不变,因此只需要处理一次。

Discussions

与STARK的变压器编码器相比,我们的MAM具有相似的注意机制,但有三个显著的差异。

首先,在W-MAM中,我们将空间结构信息与深度卷积结合起来,同时使用位置编码。

更重要的是,我们的MAM是作为一个多阶段主干网构建的,用于联合特征提取和信息集成,而它们依赖于一个单独的CNN主干网进行特征提取,只关注另一个单阶段的信息集成。

最后,我们还提出了一种不同的非对称MAM,在不降低精度的前提下,进一步提高了跟踪效率。

1.2、Hierarchical MixFormer: MixCvT

Overall Architecture

基于 W-MAM 块,我们构建了 MixCvT 的分层 MixFormer 跟踪器,它的主要思路是逐步提取目标模板与搜索区域的耦合特征,并在两者之间进行深度信息集成。它基本上由两部分组成:由迭代的W-MAM组成的主干和用于产生目标包围盒的简单定位头。与其他流行的跟踪器通过解耦特征提取和信息集成的步骤相比,它只需要一个主干和跟踪头就可以更紧凑、更整齐的跟踪管道,而无需显式集成模块或任何后处理。整体架构如图 3 所示。

image-20230523141155138

W-MAM Based Backbone

我们的目标是在统一的基于Transformer的架构中将通用特征提取和目标信息集成结合起来。基于 W-MAM 的主干采用渐进式多阶段架构设计。每个阶段由 N个MAM 层组成,这些层在具有相同通道数的相同比例特征图上操作。所有阶段都有类似的结构,由一个重叠的补丁嵌入层和 N i N_i Ni宽的混合注意力模块组成。

具体来说,给定大小为 T × H t × W t × 3 T×H_t×W_t×3 T×Ht×Wt×3 T T T个模板(即第一个模板和T−1个在线模板)和大小为 H s × W s × 3 H_s×W_s×3 Hs×Ws×3的搜索区域(根据先前目标状态裁剪的区域),我们首先使用卷积标记嵌入层将它们映射为重叠的补丁嵌入,其步长为4,核大小为7。卷积令牌嵌入层在每个阶段都被引入,以便在降低空间分辨率的同时提高通道分辨率。然后我们展平补丁嵌入并将它们连接起来,得到一个大小为 ( T × H t 4 × W t 4 + H s 4 × W s 4 ) × C \left(T \times \frac{H_t}{4} \times \frac{W_t}{4}+\frac{H_s}{4} \times \frac{W_s}{4}\right) \times C (T×4Ht×4Wt+4Hs×4Ws)×C 的融合令牌序列,其中 C C C等于 64 或 192, H t H_t Ht和 $W_t 是 128 , 是 128, 128H_s$和 W s W_s Ws是 320 。然后,串联后的令牌通过 N i N_i Ni目标搜索MAM进行特征提取和目标信息融合。最后得到大小为 ( T × H t 16 × W t 16 + H s 16 × W s 16 ) × 6 C \left(T \times \frac{H_t}{16} \times \frac{W_t}{16}+\frac{H_s}{16} \times \frac{W_s}{16}\right) \times 6 C (T×16Ht×16Wt+16Hs×16Ws)×6C 的令牌序列。在传递到预测头部之前,搜索标记被拆分并重塑为 H s 16 × W s 16 × 6 C \frac{H_s}{16} \times \frac{W_s}{16} \times 6 C 16Hs×16Ws×6C 的大小。特别是,我们不应用多尺度特征聚合策略。

Corner Based Localization Head

受 STARK中的角检测头的启发,我们采用基于全卷积角的定位头直接估计跟踪对象的边界框,仅使用左上角和右下角的几个Conv-BN-ReLU 层预测。最后,我们可以通过计算角点上的期望概率分布来获得边界框。与STARK的不同之处在于,我们的方法是完全卷积的头部,而STARK高度依赖于具有更复杂设计的编码器和解码器。

Query Based Localization Head

受 DETR 的启发,我们建议使用一个简单的基于查询的定位头。这种稀疏的定位头可以验证我们的MAM主干的泛化能力,并产生一个纯粹的基于Transformer的跟踪框架。具体来说,我们在最后阶段的序列上添加了一个额外的可学习回归标记,并使用该标记作为锚点来聚合来自整个目标和搜索区域的信息。最后,使用三个全连接层的 FFN 直接回归边界框坐标。该框架也不使用任何后处理技术。

1.3、Plain MixFormer: MixViT

Overall Architecture

为了去除层次结构和卷积投影的设计,我们构建了一个简单且非分层跟踪器,称为 MixViT。MixViT由一个补丁嵌入层、标记序列上的几个瘦身混合注意模块(S-MAM)和顶部的一个新的金字塔角头组成。

首先,MixViT 的主干是非分层的,单阶段,由单个非重叠补丁嵌入层和多个瘦身混合注意模块组成。这就避免了像MixCvT那样在高分辨率阶段出现大量的标记,从而保证了高追踪效率。其次,我们探索了不同类型的目标和搜索标记的位置嵌入,以明确地编码绝对位置信息。第三,由于MixViT骨干与普通Vision Transformer具有相同的可训练权值,它可以与最近的ViT开发兼容,如MAE预训练。

首先,给定大小为$T×H_t×W_t×3 的 T 个模板和大小为 的 T 个模板和大小为 T个模板和大小为H_s×W_s×3$ 的搜索区域,我们使用内核大小为16、跨度为16的卷积标记嵌入层将它们映射为非重叠的补丁嵌入。然后我们分别向搜索区域和模板补丁嵌入添加两个不同的位置嵌入。接下来,我们将模板(大小为 T × H t 16 × W t 16 × C T×\frac{H_t}{16}×\frac{W_t}{16}×C T×16Ht×16Wt×C)和搜索区域标记(大小为 H s 16 × W s 16 × C \frac{H_s}{16}×\frac{W_s}{16}×C 16Hs×16Ws×C)连接起来,并将其输入到多个 Slimming 混合注意模块中。最后,分割的搜索区域令牌准备输入定位头。

Positional Embedding

在这项工作中,我们研究了三种类型的位置嵌入,对目标和搜索区域的位置建模进行了彻底的检查。我们对目标和搜索区域使用两个不同长度的位置嵌入。三种位置嵌入的区别在于初始化方法和是否可学习。对于第一类,我们采用二维双线性插值法从MAE预训练的VIT模型中内插预训练的位置嵌入。并且在训练过程中将嵌入设置为冻结。对于第二种类型,使用与第一种类型相同的初始化方法。然而,将嵌入设置为可学习,以实现动态调整。对于最后一个,我们使用 vanilla ViT 中采用的冻结 sin-cos 位置嵌入。

Pyramidal Corner Head

由于MixViT采用了非层次化的骨架,可能缺乏多尺度信息,我们只从MixViT骨架的最后一张特征图中建立了一个金字塔形的角头。如下图C所示

image-20230523150354103

具体来说,我们首先通过几个卷积层和插值层构建特征金字塔,从而产生三个不同的分辨率特征图。然后,通过卷积层融合多尺度特征图以获得稳健的表示。实验结果表明,与MixCvT中使用的普通角头相比,金字塔角头可以获得更好的性能。

1.4、Pre-training of MixFormer

我们发现主干的预训练在构建有效的MixFormer跟踪器中起着重要作用。由于attention操作的灵活性,ImageNet上用于图像分类的预训练CvT或ViT模型可以直接用于初始化MixFormer跟踪器的骨干权值。具体来说,我们研究了MixCvT的不同监督预训练模型,以及MixViT的监督预训练模型和自监督预训练模型。受掩膜预训练优异性能的启发,我们进一步在常用的跟踪数据集(即LaSOT、TrackingNet、GOT-10k和COCO)上设计了一个掩膜自编码器,并将其作为MixViT的预训练权值。

ImageNet上的监督预训练

对于MixCvT,使用ImageNet-1k或ImageNet22k上训练的CvT模型权值作为MixCvT主干的初始化。在ImageNet-22k上的预训练提供了比ImageNet-1k更强的视觉表示。对于MixViT,我们通过最近的DeiT3模型进行监督预训练,该模型在ImageNet-1k和ImageNet-21k上成功训练出了高性能的vanilla ViT模型。值得注意的是,在使用DeiT3预训练MixViT时,我们在MixViT的Transformer块中添加了LayerScale以保持一致性。

Self-supervised Pre-training on ImageNet.

受掩模自编码器(mask autoencoder, MAE)预训练的巨大成功及其在目标检测中的应用的启发,我们也在MixViT中研究了MAE预训练。为了更好地研究监督预训练和自监督预训练在学习表征上的差异,我们通过改变ViT深度对预训练的效果进行了详细的研究。我们观察到监督预训练和 MAE 预训练的不同行为,其中有监督的预训练模型倾向于学习后期的高级语义表示,而 MAE 预训练模型似乎专注于沿所有层逐步学习低级信号结构。因此,在有监督的预训练模型中减少几层会导致很小的性能损失,因为后期的高层语义特征对目标跟踪的贡献很小。此外,我们通过借用MAE解码器的Transformer块,进一步增加了MAE预训练ViT的深度,并获得了进一步的性能提升。

为了结合掩蔽预训练和渐进建模视觉感应先验的优点,我们在MixViT跟踪器中进一步探索了ConvMAE预训练。ConvMAE预训练模型的结构与普通的ViT相似,只是它用一个轻量级的CNN取代了原来的单层分层补丁嵌入,用于渐进式补丁嵌入。因此,我们可以通过简单地将补丁嵌入层更改为相应的 CNN,轻松地将 ConvMAE 预训练模型适应我们的 MixViT。改进的带有ConvMAE预训练的MixViT由一个三级补丁嵌入CNN、S-MAM的普通ViT编码器和金字塔角头组成。补丁嵌入 CNN 使用简单的卷积块将搜索和模板分别转换为令牌嵌入。

Simple MAE Pre-training on Tracking Datasets.

受 MAE 预训练及其在训练样本上的数据效率的启发,我们想知道我们是否可以仅使用普通跟踪数据集预训练我们的 MixViT,而不使用大规模 ImageNet 数据集。首先,我们通过在跟踪数据集上直接预训练掩码自动编码器来设计一个简单的 MAE 基线,并使用这个预训练的 MAE 来初始化我们的 MixViT。具体来说,我们首先在跟踪数据集(包括 LaSOT、TrackingNet、GOT-10k 和 coco)上训练掩码自动编码器,然后在相同的跟踪数据集上微调 MixViT。除了数据集和数据增强之外,训练掩码自动编码器的主要过程与 MAE 保持一致。令人惊讶的是,我们观察到仅在跟踪数据集上具有自我监督预训练的 MixVT 大大优于从头开始训练。

TrackMAE Pre-training on Tracking Datasets.

为了更好地将 MAE 预训练适应我们的 MixViT 跟踪器,我们提出了一种新的自监督预训练方法,用于视觉对象跟踪,称为 TrackMAE,如图 5 所示。

image-20230523152230934

TrackMAE继承了随机令牌丢弃和重建被屏蔽的令牌的简单管道。然而,为了使其更适合跟踪框架,并缩小跟踪器预训练和精调之间的差距,对搜索图像进行了75%的掩蔽,同时模板完全可见并放置用于信息整合。解码器重建搜索图像的不可见部分。特别是,我们只使用跟踪数据集进行TrackMAE预训练。

1.5、Training and Inference

Training

我们首先分别用CvT模型和MAE的编码器对MixCvT和MixViT骨干进行预训练,然后在追踪数据集上对整个追踪框架进行微调。

对于MixCvT训练,采用L1损失和GIoU损失的组合如下:
L l o c = λ L 1 L 1 ( B i , B i ^ ) + λ g i o u L g i o u ( B i , B i ^ ) , L_{loc} = λ_{L1}L_1(B_i, \hat{B_i}) + λ_{giou}L_{giou}(B_i, \hat{B_i}), Lloc=λL1L1(Bi,Bi^)+λgiouLgiou(Bi,Bi^),
其中 λ L 1 = 5 和 λ g i o u = 2 λ_{L1} = 5 和 λ_{giou} = 2 λL1=5λgiou=2 是两个损失的权重, B i B_i Bi是真实边界框, B i ^ \hat{B_i} Bi^ 是目标的预测边界框。对于MixViT训练,我们将GIoU损失替换为CIoU损失[89]。

Template Online Update

在线模板在捕获时间信息和处理对象变形和外观变化方面发挥着重要作用。然而,质量较差的在线模板可能会导致跟踪性能下降。因此,我们引入了一个分数预测模块(SPM),如图 6 所示,以选择由预测置信度分数确定的可靠在线模板。

image-20230523153030464

SPM由两个注意块和一个三层感知器组成。首先,可学习的分数标记作为查询来关注搜索 ROI 标记。它使分数标记能够对挖掘的目标信息进行编码。接下来,分数标记关注初始目标标记的所有位置,以将挖掘的目标与第一个目标隐式进行比较。最后,分数由 MLP 层和一个 sigmoid 激活产生。当其预测分数低于 0.5 时,在线模板被视为负数。对于 SPM 训练,它是在主干训练后执行的,我们使用标准的交叉熵损失:
L s c o r e = y i l o g ( p i ) + ( 1 − y i ) l o g ( 1 − p i ) , L_{score} = y_ilog(p_i) + (1 − y_i)log(1 − p_i), Lscore=yilog(pi)+(1yi)log(1pi),
其中 y i y_i yi是真实标签, p i p_i pi是预测的置信度分数。

Discussions on SPM

我们将我们的 SPM 与 STARK 中的分数预测分支进行比较。

  1. 我们将当前帧的跟踪对象RoI特征(基于MixFormer的跟踪结果裁剪)显式输入到SPM中,而STARK通过编码器-解码器结构隐式提取目标信息;
  2. 与 STARK 不同,MixFormer主干中没有解码器,因此我们引入了一个额外的分数令牌和两个注意力模块。
  3. 我们的 SPM 由两个渐进式注意块组成,用于对跟踪对象和目标进行比较,以及一个 MLP 头来生成在线模板置信度分数。相比之下,STARK 只使用三层感知器头来输出模板置信度分数。
Inference

在推理过程中,多个模板,包括一个静态模板和N个动态在线模板,连同裁剪的搜索区域一起被送入MixFormer跟踪器,以产生目标边界框和置信度分数。只有当到达更新间隔并选择具有最高置信度分数的样本时,我们才会更新在线模板。特别是,预测的边界框用作最终输出,无需任何后处理,例如余弦窗口或边界框平滑。

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值