Bridging Cross-task Protocol Inconsistency for Distillation in Dense Object Detetion

Spatial Transform Decouplling for Oriented Object Detection

Introduction

论文题目 :Spatial Transform Decouplling for Oriented Object Detection

论文地址https://arxiv.org/pdf/2308.10561v2.pdf

论文出处 :2024’AAAI accepted

代码实现https://github.com/yuhongtian17/Spatial-Transform-Decoupling

Idea

作者提出了空间变换解耦,这里的解耦就是指对于不同语义含义的回归参数(对象的位置(x,y)(x, y), 角度α\alpha,大小(w,h)(w,h)),使用不同的网络分支(不同的Transformer Block Layer)来预测,以分而治之的方式有效的利用来ViT的空间变换潜力。在这样的解耦过程中,加入级联激活掩码来增强多个分支产生的特征,指导后续Self-Attenetion机制。

Detail

网络框架图

整体的网络架构参考的是imTED(2023’ ICCV),为了方便理解,这里简单介绍一下这篇文章:

imTED架构

一句话总结就是,将MAE预训练好的Encoder-Decoder整体迁移到目标检测中,比只迁移Encoder的方案性能↑,泛化性↑

如果只是把原始预训练的Backbone迁移过去,对于检测头来说,参数都是随机初始化的

基于MAE预训练,在训练Backbone(Encoder)的同时,还会有一个Decoder,这个Decoder具有很强重构能力,于是作者就想着将整体的Encoder-Decoder做迁移。

直接迁移方案会带来一个尴尬的局面,那就是在经过预训练的Encoder和Decoder之间有一个随机初始化的FPN,经过随机初始化的FPN处理的特征分布跟Encoder输出的特征分布肯定是不一样的,这样预训练的Decoder的功能就要大打折扣了。为了构建一个跟预训练时一致的特征流,作者取Encoder的最后一层的特征输入到Decoder中,如图(b)所示。

作者额外提出了一个多尺度调制器,整体分两组进行,一组对Encoder最后一层的特征进行,另一组对FPN输出的多尺度特征进行,然后以learnable的方式将这两个特征组合后送入到Decoder中,公式如下所示:

F=Fss+αFmsF = F_{ss} + \alpha * F_{ms}

整体的迁移架构如下所示:


对比上面两张网络框架图,STD就是把二阶段RoI Align后的全连接层替换成了4层Transformer Block。

这里Backbones使用的是基于MAE预训练的ViT-Small

参数解耦预测

对象的位置(x,y)(x, y), 角度α\alpha,大小(w,h)(w,h)和类别得分(cls score)分别是根据第1、2、3、4层的Transfomrer Block预测得到的。

具体来讲,在得到每个Transformer Block的离散token输出后,把它重构为7×7的特征图(与RoI Align后的特征图大小一致)

级联激活掩码

就是一个根据proposal生成的二进制掩码,用来增强前景特征的。

这个掩码后续用来跟V进行点乘操作,以指导自注意力机制。

Result

DOTA1.0数据集上的性能,SOTA:

消融实验,做了不解耦预测参数,和解耦参数的顺序: