【论文阅读】基于DETR的旋转目标检测

性能

现有的模型在DOTA-v1.0、v1.5、v2.0上的性能,所有的模型均采用单一尺度的训练和测试:

DOTA-v1.0

模型 Backbone AP_50 Year Publication
EMO2-DETR R-50 70.91 2021 TGRS 2023
ARS-DETR R-50 73.79 2023 ICCV 2023
AO2-DETR R-50 77.73 2022 TCSVT 2023
RHINO R-50 78.68 2024 WACV 2025
OrientedFormer R-50 75.37 2024 TGRS 2024
Oriented-DETR R-50 ~79.1 2024 ECCV 2024 (Oral)

DOTA-v1.5

模型 Backbone AP_50 Year Publication
AO2-DETR R-50 66.26 2022 TCSVT 2023
RHINO R-50 71.96 2024 WACV 2025
Oriented-DETR R-50 2024 ECCV 2024 (Oral)

DOTA-v2.0

模型 Backbone AP_50 Year Publication
AO2-DETR R-50 2022 TCSVT 2023
RHINO R-50 59.26 2024 WACV 2025
Oriented-DETR R-50 2024 ECCV 2024 (Oral)

标注⭐的是已开源的项目

⭐AO2-DETR: Arbitrary-Oriented Object Detection Transformer

image.png

将传统 DETR 结构简单拓展以增加角度预测并不足够,因为会导致以下问题:

  1. 特征错位问题(Misalignment):Transformer 中的 object query 通常是水平的,用于预测旋转目标时与特征区域无法对齐;

  2. 特征混乱(Cluttered features):由于对象方向各异且密集分布,水平 proposals 容易包含多个对象或背景区域;

  3. 匹配能力有限(Limited matching):Transformer 原始的匹配策略对旋转与尺度变化的泛化能力较弱。

为解决上述问题,作者提出一个基于 Transformer 的任意方向目标检测框架:AO2-DETR。该方法包含三大模块:

  • 方向 Proposal 生成机制(Oriented Proposal Generation, OPG):用于生成带角度的 proposal,作为 object query 送入解码器,解决错位与特征混乱问题;

  • 自适应方向 Proposal 精修模块(Adaptive Oriented Proposal Refinement, OPR):通过上下文信息调整 proposals,进行特征重构与对齐;

  • 旋转感知的一对一匹配损失(Rotation-aware Set Matching Loss):用于实现无重复预测的一对一匹配,提升训练效果。

方向 Proposal 生成机制(Oriented Proposal Generation, OPG)

生成带角度的 proposal:

  • 每个像素点 i 对应一个初始方向框 pi=(xi,yi,wi,hi,θi)p_i=(x_i,y_i,w_i,h_i,\theta_i)

  • 初始 θ 设置为 0,w 和 h 设置为尺度相关常数 (2li1s,s=0.05)(2^{l_i-1}s,s=0.05)

  • 使用 encoder 提取的特征预测一个增量 Δri\Delta r_i,与 pip_{i}​ 合并得到最终方向框 b^i\hat{b}_{i}

  • 坐标转换过程包含 sigmoid 函数与旋转公式,确保四个顶点坐标归一化到 [0,1][0,1]

这样生成的方向 proposals 作为解码器的 object queries,具有更好的位置先验。

自适应方向 Proposal 微调模块(Adaptive Oriented Proposal Refinement, OPR)

image.png

在遥感图像中,目标尺寸和角度变化较大,卷积特征一般是轴对齐的,容易与旋转目标错位,影响检测性能。为解决这一问题,提出 OPR 模块:

包括两部分:

  1. 大感受野卷积结构(如 1×1、5×1、7×1 卷积)
  • 增强上下文感知能力;

  • 用于捕捉不同方向和尺度的信息;

  1. 特征对齐模块(Feature Alignment)
  • 通过双线性插值(Bilinear Interpolation)方式对旋转框区域内特征进行精确采样;

  • 将原始框与 refined 框之间的位置信息进行重新编码;

  • 最终输出一个新的特征图用于 refinement。

这个精修模块能有效缓解卷积特征与方向目标间的错位问题。

可变形 Transformer 解码器(Deformable Transformer Decoder)

解码器结构与 deformable DETR 相似,但对 attention 模块做了关键修改

  • 每一层解码器从 refinement 后的特征图中采样,提取 proposal 区域的上下文;

  • 关键点:我们使用旋转框区域内的采样点(而非水平框)作为注意力范围;

  • 解码器逐层 refine proposals,从粗到细,逐步靠近 ground-truth;

  • 每一层 decoder 输出框和分类结果,并进行 iterative refinement。

每层 decoder 会更新 query 对应的框的 (x, y, w, h, θ),最终由 FFN 输出预测框和类别。

匹配策略与损失函数(Set Matching and Loss Function)

为了进行 one-to-one 匹配,采用**与 DETR 类似的匈牙利匹配(Hungarian Matching)**策略。

损失函数由三部分组成:

  1. 分类损失(Focal Loss)

  2. 边界框回归损失(L1 Loss)

  3. 旋转 IoU 损失(Lriou):专为斜框设计,考虑角度差异与四个顶点的位置关系

公式如下:

Lmatch=λclsFocal Loss+λL1L1 Loss+λriouRotated IoU Loss\mathcal{L}{\mathrm{match}}=\lambda{\mathrm{cls}}\cdot\text{Focal Loss}+\lambda_{L1}\cdot\mathrm{L}1\mathrm{~Loss}+\lambda_{\mathrm{riou}}\cdot\text{Rotated IoU Loss}

每个 ground-truth 仅与一个 prediction 匹配,其余均视为背景类(no object)。

⭐ARS-DETR: Aspect Ratio-Sensitive Detection Transformer for Aerial Oriented Object Detection

AR-CSL(Aspect Ratio-aware CSL)

CSL(Circular Smooth Label)

传统的角度回归方法在预测定向框的角度时,会遇到周期性边界问题。例如,-89° 和 +89° 实际上很接近,但数值差异大,导致回归损失很大,训练不稳定。

为了解决这个问题,CSL 将角度预测转化为分类问题

  • 将角度划分成若干类(通常是180类,对应[-90°, +90°))。

  • 把角度看作分类标签,而非连续值。

CSL通过高斯窗口函数对角度标签进行平滑处理,使得角度预测具有一定的容错性,并能表达“相邻角度的相关性”。

image.png

CSL(t)={g(t),θr<t<θ+r0,otherwise\mathrm{CSL}(t)=\begin{cases}g(t),&\theta-r<t<\theta+r\0,&\mathrm{otherwise}&\end{cases}

AR-CSL(Aspect Ratio-aware CSL)

虽然CSL有效解决了周期边界问题,但存在三个关键问题:

  1. 固定平滑策略:CSL 的高斯窗口是固定的,无法适应不同目标的敏感度(尤其是不同纵横比的目标)。

  2. 不感知角度粒度变化:角度类别越少(粒度越粗),实际每一类代表的角度范围越宽,平滑策略应随之改变,但CSL不会自动调整。

  3. 引入超参数 r:窗口半径 r 需要手动调参,不具备良好的泛化性。

AR-CSL 用目标的纵横比和角度偏差,通过 SkewIoU 曲线自动构建平滑标签分布,完全无超参数,并动态响应角度粒度变化:

AR-CSL(k,t)=SkewIoU(k,Δθ)min1min,Δθ=tθ\text{AR-CSL}(k,t)=\frac{\text{SkewIoU}(k,\Delta\theta)-\min}{1-\min},\quad\Delta\theta=|t-\theta|

其中,kk 是目标框的长宽比,tt 是标签角度类别,θ\theta 是真实角度。

这样可以保证:

  • 与真实角度一致时,SkewIoU = 1,最终值为 1(最大置信度)

  • 与真实角度相差最大时,SkewIoU = min,最终值为 0(最小置信度)

对于瘦长的目标,标签的分布会更加尖锐,避免过度平滑。

Rotated Deformable Attention

使用传统的 DETR 或 Deformable DETR 结构时存在两个主要问题:

  1. 对齐不准确:传统 deformable attention 中的采样点是基于“水平参考框”生成的,这对于旋转目标来说采样点往往落在背景区域或其他目标上,如下图:

  2. 未嵌入角度信息:虽然某些方法会预测角度参数,但这个信息并未被用于对注意力采样机制进行引导。

引入了角度信息 θ 来对采样点进行旋转,使采样点与旋转目标在空间上更对齐,从而提取更准确的特征。

Δpmqk=(w,h)2K(zqfmk+rmk)R(θq)\Delta p_{mqk}=\frac{(w,h)}{2K}\cdot(z_qf_{mk}+r_{mk})R^\top(\theta_q)

在可变形注意力的基础上加上了一个角度偏移。

image.png

Denoising Training

在去噪训练时引入角度偏移的学习,从而使得模型能够更好地学会角度的预测。

Aspect Ratio Sensitive Matching

Lmatch(i)=λclsLcls+λboxLbox+λiouLiouLiou+λθ2ki1+kiLθL_{\mathrm{match}}(i)=\lambda_{\mathrm{cls}}\cdot L_{\mathrm{cls}}+\lambda_{\mathrm{box}}\cdot L_{\mathrm{box}}+\lambda_{\mathrm{iou}}\cdot L_{\mathrm{iou}}\cdot L_{\mathrm{iou}}+\lambda_{\theta}\cdot\frac{2k_{i}}{1+k_{i}}\cdot L_{\theta}

其中:

  • kik_{i} 是目标i的长宽比(k1k≥1

  • LθL_{\theta} 是角度分类的交叉熵损失

  • 2k1+k\frac{2k}{1+k}​ 是一个动态加权因子,当长宽比越大时,这个因子越接近2,反之越接近1。

细长目标(k大):角度更重要,给角度匹配的权重更高。

方形目标(k小):角度影响小,减少角度匹配的权重。

Aspect Ratio-sensitive Loss

Lθtrain=2ki1+ki×LθL_\theta^{\mathrm{train}}=\frac{2k_i}{1+k_i}\times L_\theta

细长目标,加大角度损失的权重,让网络更加关注角度的预测准确性。

接近方形的目标,适当降低角度损失的权重。

D2Q-DETR: DECOUPLING AND DYNAMIC QUERIES FOR ORIENTED OBJECT DETECTION WITH TRANSFORMERS

  • **点集预测头:**不直接回归角度,而是回归一组代表性的点,使用minAreaRect算法将这些点拟合成最小外接矩形。

  • **查询特征解耦:**查询的数量动态,在每一层decoder动态地减少queries的数量。

  • **查询标签重分配:**在二分图匹配后,进一步检查每个query与目标的拟合程度,如果IoU太低,则重新标为背景以避免低质量的匹配影响训练(?)

没有开源,不确定是否真实。

⭐OrientedFormer: An End-to-End Transformer-Based Oriented Object Detector in Remote Sensing Images

image.png

Gaussian Positional Encoding (Gaussian PE)

image.png

把每一个有方向的目标框 (x,y,w,h,θ)(x, y, w, h, θ) 转化为一个二维高斯分布

这样可以用高斯分布的**均值(mean)协方差矩阵(covariance)**来自然地表达物体的中心、尺度和方向信息。

均值 μ:是物体中心点 (x, y)

协方差矩阵 Σ:根据物体的宽、高和旋转角 θ 计算而成。

Lθtrain=2ki1+ki×LθL_\theta^{\mathrm{train}}=\frac{2k_i}{1+k_i}\times L_\theta

其中 RR 是一个基于角度 θ 的旋转矩阵。

Wasserstein Self-Attention

WAttn(Qc,ϕ,G)=Softmax((Qc+ϕ)(Qc+ϕ)dq+G)Qc\mathrm{WAttn}(Qc,\phi,G)=\mathrm{Softmax}\left(\frac{(Qc+\phi)(Qc+\phi)^\top}{\sqrt{d_q}}+G\right)Qc

基于内容查询的相似度和高斯分布的差异来执行 Decoder 阶段的Self-Attention。

Oriented Cross-Attention

image.png

⭐RHINO:Hausdorff Distance Matching with Adaptive Query Denoising for Rotated Detection Transformer

Hausdorff距离匹配

image.png

在以往方法中,旋转目标检测模型使用L1距离来进行二分图匹配,这样会导致在旋转场景下存在边界不连续性方形类似问题(square-like problem),导致重复低置信度预测。

LL1=XpredXgt+ypredygt+WpredWgt+hpredhgt+θpredθgt\mathcal{L}{L1}=|X{pred}-X_{gt}|+|y_{pred}-y_{gt}|+|W_{pred}-W_{gt}|+|h_{pred}-h_{gt}|+|\theta_{pred}-\theta_{gt}|

定义

dH(X,Y)=max{supxXd(x,Y),supyYd(X,y)}d_H(X,Y)=\max\left{\sup_{x\in X}d(x,Y),\sup_{y\in Y}d(X,y)\right}

其中,d(x,Y)d(x,Y) 表示点 xx 到集合 YY 中所有点的最小距离,supsup 表示上确界(最大距离)。 核心思想:通过比较预测框和真实框的整体形状(而非仅中心或角度),缓解L1距离的局限性。

  • 将旋转框表示为4个角点和边中点的坐标集合,覆盖框的几何轮廓。

  • 在二分匹配中,使用Hausdorff距离匹配代替L1距离作为匹配代价。

自适应查询去噪

在DETR模型中,查询去噪(Query Denoising) 是一种通过向编码器输入带噪声的真实框(noised ground truth)来加速训练收敛的技术。然而,传统静态去噪方法(如DN-DETR和DINO)存在以下问题:

  1. 训练后期失效:随着模型预测精度提升,噪声真实值的质量可能低于模型预测结果,导致模型被迫学习不准确的监督信号。

  2. 冗余噪声干扰:固定的噪声查询在训练后期可能引入无效的干扰,阻碍模型进一步优化。

动态筛选噪声查询仅保留与真实框匹配的噪声查询用于训练,其余视为背景。其核心在于:

  1. 二分匹配筛选:在训练过程中,通过二分匹配(Bipartite Matching)动态选择与当前模型预测匹配的噪声查询。

  2. 自适应过滤:随着模型精度提升,逐步过滤掉无效的噪声查询,避免其对训练的负面影响。

具体步骤:

  • 将噪声查询和模型预测的候选框拼接为完整候选列表

  • 通过二分匹配计算候选列表与真实框的匹配代价,确定哪些噪声查询与真实框匹配。

  • 筛选规则:未匹配的噪声查询被标记为背景(分类为“无目标”),匹配的噪声查询标记为物体,所有噪声查询都用于计算定位损失。

⭐Oriented-DETR: Projecting Points to Axes: Oriented Object Detection via Point-Axis Representation

点-轴表示(Point-Axis Representation)

将旋转目标分解为**点集(Points)轴线(Axes)**两部分:

  • 点集:描述目标的空间轮廓(如边界点、中心点),捕捉形状细节。

  • 轴线:定义目标的主方向,解决角度模糊性问题。

优势

  • 解耦位置与方向:避免传统旋转框参数化的边界不连续问题。

  • 几何直观性:通过点集灵活拟合不规则目标,轴线提供稳定的方向约束。

image.png

损失函数

  • Max-Projection Loss:监督点集学习,鼓励点集投影到目标边界**(Fig. 3c)**。仅优化最大投影值,避免过度约束。

  • Cross-Axis Loss:将轴线方向离散化为角度区间,通过交叉熵损失学习多峰分布,增强方向鲁棒性。

  • 损失函数:L=1NΣi=1N(λ1Lproj+λ2Lca)\mathrm{\cal{L}}=\mathrm{\frac{1}{N}}{\Sigma}{i=1}^{N}\left(\lambda{1}\mathrm{L_{proj}}+\lambda_{2}\mathrm{L_{ca}}\right)

image.png

Max-Projection Loss

通过最大化预测点与GT径向向量的投影对齐来优化点集。具体步骤:

  1. 将预测点 PiP^i​ 转换为相对于中心点的向量 ViV^i​。

  2. 计算每个预测向量在GT向量方向上的投影,选择最大投影值作为优化目标。

  3. 损失函数鼓励预测点覆盖GT框的边界**(Fig. 3c)**。

Cross-Axis Loss

  • 角度分箱(Binning):将360°方向范围均匀离散化为N bins​个区间(默认360个,每1°一个区间)。

  • 四峰标签生成: 对每个目标的主方向(如长轴方向),生成一个四峰(4-peak)的平滑标签,峰值分别位于主方向及其正交方向(即主方向±90°和180°)。例如:

    • 若主方向为45°,则峰值位于45°、135°、225°、315°。

    • 使用高斯平滑对峰值附近的区间赋予连续权重,避免硬标签导致的优化困难**(Fig. 3b)**。

模型架构

image.png

  • 点查询初始化:将物体查询(Object Queries)转换为条件点查询(Conditioned Point Queries),预测点集坐标。

  • 点检测解码器

    • 点-点注意力:同组点查询交互,细化局部形状。

    • 物体-物体注意力:中心点查询交互,捕捉全局关系。

  • 预测头:输出点集坐标、类别和轴线方向。

评论 (0)

暂无评论,来发表第一条评论吧!