AiATrack: Attention in Attention for Transformer Visual Tracking模型及代码结构解读

论文地址
代码地址

Introduction

典型的Transformer跟踪框架中,通过自注意力模块增强参考帧和搜索帧的特征表示,并通过交叉注意力模块桥接它们之间的相关性,以在搜索帧中预测目标。这种机制通过QK的点积来计算相关性图,但独立计算每对QK的相关性可能会忽略它们之间的相互作用,从而在复杂背景中引入误差。这可能导致注意力权重变得不准确,影响跟踪性能。

所以:
作者引入了AiA(Attention in Attention)模块,字面意思,就是在一个Attention中,再引入一个Attention,并把该模块作为Encoder和Decoder的basis。

Method

在这里插入图片描述

作者引入的AiA模块,就是基于 Q ⊗ K {Q \otimes K} QK的值,在代码中叫做 c o r r {corr} corr_ m a p {map} map,将其与 [ H × W , B , C = 64 ] {[H \times W, B, C=64]} [H×W,B,C=64]的位置嵌入 i n r _ e m b {inr \_ emb} inr_emb作为输入,进行二次注意力计算,这大概就是Attention in Attention名字的由来吧。

在这里插入图片描述作者基于上述的AiA module,

  • 构建了一个3层Encoder layer的Encoder和一层Decoder layer的Decoder,作为模型的主模块,
  • backbone为ResNet50,输出为layer3
  • Head部分由一个CornerHead和一个IoUNet构成

关于输入采样:

  • Search Image采样一张
  • Reference Image采样两张

实验结果和我个人的理解

作者提出的模型效果真的很好,LaSOT测试集上的AUC效果直接干到了 69.0 {69.0} 69.0,但是令人费解的是,这么庞大的网络结构,这么多的参数,在一个2080Ti显卡上居然能有38FPs

在这里插入图片描述我是持怀疑态度的,最近正好在跑Mainstream模型在2080Ti显卡上的FPs,结果还需要挺久才能出来所以这里就先留一个悬念吧。

细化的网络模型和代码结构

详细代码就不上了,太枯燥了,直接放上代码的导图,仔细看,很细的哟
从这里就可以看出来,这个模型确实有点过于庞大,所以我才有怀疑模型的运行速度的
在这里插入图片描述由于版面限制,这里是普通清晰度的,高清大图点这里

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值