单目标追踪——【Transformer】Transformer Tracking

目录

Transformer这个香饽饽怎么能不用来迁移到目标追踪里呢。

本篇文章分析TransT。

Transformer Tracking.

文章侧重点

这篇文章是利用Transformer设计了一个新的基于注意力的特征融合网络和一个Siamese结构的集成该融合网络的追踪方法TransT。 在TransT中该融合网络以替换传统Siamese框架中的correlation相关操作。
几个值得注意的点:

  • 特征融合网络由两个模板组成:基于自注意力的上下文增强模块 + 基于交叉注意力的特征增强模块。 两个都是在增强特征。 不过回想Siamese网络结构中常用的naive correlation、depth-wise correlation、pixel-wise correlation都是在用提取的Template特征作为核来对Search特征进行增强,只是操作不同罢了【 文中分析,原有的correlation是一种局部的线性的匹配过程,会导致语义信息丢失,陷入局部最优】。
  • TransT的追踪结构也挺简单的:Siamese型的共享backbone网络、基于注意力机制的融合网络、分类和坐标回归预测头。
  • 其实从可视化结果来看,TransT的Search特征的注意力还比较集中在目标上,但是Template特征因为引入Search特征,感觉Template的注意力被分散了。作者在文中说这是个奇怪的分布。所以这种特征设计网络其实感觉有一点草率了,不过Encoder和Decoder堆叠这么多,效果肯定也不会差。

网络结构

上下文增强模块

单目标追踪——【Transformer】Transformer Tracking
这个模块主要就是多头自注意力机制+位置编码Sin函数。与原始的Transformer中的多头自注意力机制一样。所以这个模块叫上下文语境的增强模块也正是因为Transformer中Encoder的自注意力的全局特性。

; 交叉特征增强

单目标追踪——【Transformer】Transformer Tracking
这个模块应用了Transformer的Decoder的多头交叉注意力机制、Sin位置编码和前馈神经网络(FFN)。之所以不索性去掉FFN,因为作者认为FFN模块增强了模型的拟合能力。
【不过在上一篇Transformer meets Tracking(TMT)中,有做关于FFN的消融实验证明FFN提升不多反而参数敏感容易坏事。这篇文章的消融实验关注于模块有无,倒也没这么细,不过我相信FFN肯定比TMT中重要啦】

TransT网络结构

单目标追踪——【Transformer】Transformer Tracking
这个网络结构倒也中规中矩, 特征提取+特征融合+特征解析。最后在取响应最大生成边界框之前还应用了一个后置操作—— 窗口惩罚,相当于给离上一帧位置过远的响应小权重,因为每隔一帧物体不可能移动过远。
实际上后置处理都是超参敏感的,然鹅在消融实验中验证的时候可以看到,有窗口惩罚比没窗口惩罚的效果(AUC)上升2%,所以调好参数后置操作还是可以滴。

; 可视化结果分析

文中可视化了注意力模块的结果,TransT的网络结构中的特征融合网络一共堆叠了4层ECA和CFA模块。可视化结果也包含了4层。

n=1

单目标追踪——【Transformer】Transformer Tracking
n=1是相当于经过ECA的自注意力结果;经过ECA-CFA的交叉注意力结果
  • 第一行是Search区域的自注意力机制,这时候还没有模板信息,所以注意力主要放在前景信息中,简单区分前后景。
  • 第二行是模板的自注意力机制,这时候模板也是对自身应用注意力,提取了模板中的目标特征信息。
  • 第三行是Search区域作为 query_的交叉注意力机制,模板的自注意力结果作为 _key_和 _value,这时候注意力区域开始集中在目标小蚂蚁上。
  • 第四行是模板的交叉注意力机制,模板作为 query_的交叉注意力机制,Search区域的自注意力结果作为 _key_和 _value。特征加强在小蚂蚁尾部,因为相对应的Search特征那部分也比较明显。简单来说就是,在模板特征中引入了Search自注意力特征,反而有点干扰。

; n=2

单目标追踪——【Transformer】Transformer Tracking
n=2是相当于经过ECA-CFA-ECA的自注意力结果;经过ECA-CFA-ECA-CFA的交叉注意力结果
  • 第一行是Search特征自注意力的结果,这时候可以看到注意力主要在目标上面了,周围小蚂蚁干扰物只有少部分注意力。
  • 第二行是Template特征自注意力结果,这时候注意力在目标的边界,照理说交叉注意力的结果才会主要在边界,这点有点奇怪。
  • 第三行是Search特征交叉注意力结果,注意力在目标的边界。
  • 第四行是Template特征交叉注意力结果,这个分布更奇怪了,我觉得是因为把Search区域的自注意力结果作为 key_和 _value,让原本的特征污染了。

n=3

单目标追踪——【Transformer】Transformer Tracking

n=3是相当于经过ECA-CFA-ECA-CFA-ECA的自注意力结果;经过ECA-CFA-ECA-CFA-ECA-CFA的交叉注意力结果

  • 第一行是Search特征自注意力的结果,这时候可以看到注意力已经大部分在目标上面了。
  • 第二行是Template特征自注意力结果,这时候注意力在目标的边界,但是有点涣散,感觉是被Search特征干扰了。
  • 第三行是Search特征交叉注意力结果,注意力在目标的边界,比n=2的时候有加强。
  • 第四行是Template特征交叉注意力结果,这个分布稍微正常点了,集中在小蚂蚁尾部。

; n=4

单目标追踪——【Transformer】Transformer Tracking

n=4是相当于经过ECA-CFA-ECA-CFA-ECA-CFA-ECA的自注意力结果;经过ECA-CFA-ECA-CFA-ECA-CFA-ECA-CFA的交叉注意力结果

  • 第一行是Search特征自注意力的结果,这时候可以看到注意力已经全部在目标上面了,抗干扰牛。
  • 第二行是Template特征自注意力结果已经涣散了,说明当上一层的Template的交叉注意力本来就有点奇怪了,再自注意力效果只会更奇怪。
  • 第三行是Search特征交叉注意力结果,注意力在目标的边界。
  • 第四行是Template特征交叉注意力结果,这个分布更奇怪了,这时候作为 _key_和 _value_的Search区域的自注意力结果都分布在中间,所以注意力在中间。但是感觉这个交叉注意力不该关注边界吗?奇奇怪怪。

强强觉得奇怪吗?

Original: https://blog.csdn.net/qq_42312574/article/details/125591297
Author: zz的大穗禾
Title: 单目标追踪——【Transformer】Transformer Tracking

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/628073/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球