3、RDD-Single-Stage Rotation-Decoupled Detector for Oriented Object

article/2025/8/6 6:32:16

3、RDD-Single-Stage Rotation-Decoupled Detector for Oriented Object

code:

https://github.com/Capino512/pytorch-rotation-decoupled-detector

1.Abstract

2.Introduction

贡献:

文章提出一种新的单阶段检测算法用于有效且准确的方向性目标检测。

展示了一种旋转解耦anchor匹配策略,将OBB看作是HBB与角度的组合。

新的匹配策略基于旋转解耦的包围框IoU而不是OBB。

所提出的策略没有带来回归参数的改变,在算法的学习上扮演正面效应。

首先,HBB在匹配过程中比起OBB更高的表现出稳定性。

其次,提出的策略在HBB的基础上只引入了一个目标变量。

比起其他旋转检测算法需要增加额外的不同角度的anchor,新方法只需要很少的anchor,因此极大地减少了计算量。

为了应用HBB检测框架,我们重新设计了OBB的表征形式,新设计的表征方法在计算anchor与GT的IoU时不会受到角度变化的影响。

新提出的方法对依据spindle主轴的方向将OBB分类为两类,反过来对应HBB。

新提出的策略并没有对网络模型进行修改,因而可以被应用在不同结构的检测模型中。

基于以上观点,我们提出了RDD方法,在三个OBB标签的公开遥感数据集上实现了最好的效果。(DOTA , HRSC2016 and UCAS-AOD)。

3.Related Work

4.Proposed Method

RDD 方法基于FPN架构,采用多尺度特征图。

任意方向的目标通过一个旋转包围框来表示通常比水平边界更准确。

然而,IoU对角度变化很敏感。

实验发现,通过设计合理的学习目标,即使不应用旋转框,也可以准确学习到角度。

本文设计了一个新的包围框标准形式。

此外,旋转解耦anchor匹配策略用于优化任意方向目标的位置学习。

采用正负样本均衡策略解决前景-背景、类别不平衡问题。

1、Network Architecture

RDD轻量级网络结构如1图所示,

每种操作的类型在图1的底部。

首先,从骨干网络获取多尺度特征图,选择ResNet101作为实验的基础网络。

其次,多尺度特征图输入一个金字塔架构做特征融合。

为了级联不同层的特征,对特征图上采样,与前一层的特征图进行元素级相加操作。

在想加操作前后添加一个卷积层,以保证检测中特征的分辨性。

最后,预测层输出分类和回归结果。

分类和回归采用相同的预测层,仅仅在输出通道数目方面不同。

对于分类,输出通道数量是 α ∗ c \alpha * c αc;

对于回归,输出通道数量为 α ∗ 5 \alpha * 5 α5

其中 α 和 c \alpha 和 c αc分别表示anchor数目和类别数目。

在本项研究中,只有水平anchor用于后续操作而非旋转anchor。

在这里插入图片描述

2、Rotated Bounding Box Representation

HBB 具有良好的鲁棒性,但是缺乏准确性。

OBB更为准确但是不够鲁棒。

θ \theta θ周期性通常会带来突然的IoU下降问题,从而后续产生不可避免的错检,尤其极端长宽比。

利用HBB和OBB各自的优势重新定义包围框。

通常情况下,定义为 ( x , y , w , h ) (x,y,w,h) (x,y,w,h)的HBB和 ( x , y , h , w ) (x,y,h,w) (x,y,h,w)的HBB是不同的。

将其此重新定义为 H B B h HBB_h HBBh H B B v HBB_v HBBv分别表示水平方向和垂直方向。

因此,对任意OBB,可以找到对应的 H B B h / v HBB_{h/v} HBBh/v.

他们具有相同的形状和中心点,角度范围为 [ − π / 4 , π / 4 ] [-\pi/4,\pi/4] [π/4,π/4].

图2显示了新定义的包围框角度。

在这里插入图片描述

3、Anchor Setting

本方法采用了SDD算法中的anchor设置策略,仅仅采用水平anchor而,而没有用旋转anchor。

4、旋转解耦Anchor匹配策略

基于重定义的包围框,我们提出一种旋转解耦的anchor匹配策略。

在匹配之前,旋转的包围框、GT被解耦成 H B B h / v HBB_{h/v} HBBh/v和一个绝对的角度。

H B B h / v HBB_{h/v} HBBh/v用作匹配中的GT。

图3显示了提出的匹配策略与旋转anchor不同之处。

在这里插入图片描述

GT与旋转解耦anchor之间的IoU计算无需考虑角度,但是GT与旋转anchor之间需要考虑角度。

本研究中,与RetinaNet类似,前景IoU阈值为0.5,背景IoU阈值为0.4.

提出的anchor匹配策略更为关注形状,抑制了角度的影响。

在这里插入图片描述

在这里插入图片描述

为了更好的对比,我们对匹配过程进行仿真。

水平anchor采用7个比例 1 , 2 , 1 / 2 , 4 , 1 / 4 , 8 , 1 / 8 {1,2,1/2,4,1/4,8,1/8} 1,2,1/2,4,1/4,8,1/8,三种尺度 2 0 , 2 1 / 3 , 2 2 / 3 {2^0,2^{1/3},2^{2/3}} 20,21/3,22/3

旋转anchor通过在水平anchor的基础上增加一系列 3 0 ° 30^° 30°为间隔的角度。

图4 显示了不同匹配策略的结果。

可以看出,除了密集anchor的设置,GT与匹配anchor的重叠部分在某些角度并不高。

这是因为,旋转anchor的角度通常是在固定间隔上设置的,而没有考虑长宽比。

此外,我们还画出了最大IoU的变化曲线,如图5所示。

图5表明,基于旋转anchor匹配策略,最大IoU曲线在长宽比上升时急剧变化,而对于所提出的策略,曲线并未受到影响。

在匹配anchor数量增加时,这一区别相当明显。

在长宽比增加时,anchor匹配数目的不同显著增加。

在这种情况下,anchor的匹配数目甚至达到0,此时网络无法从GT学习。

然而,这一变化是不合理的。

理想情况是匹配结果不会受到角度变化的影响。

与之对比,我们提出的方法在不同条件下总是稳定的。

5、Positive and Negative Sample Balance Strategy

在匹配之后,大部分anchor被标记为背景或者是负样本。

极少部分作为正样本或者前景。

前景背景不平衡问题在训练时发生,不依赖于每个类别的样本数量。

本文采用一种与Focal Loss类似的策略,不同之处在于新策略不再动态对loss进行缩放。

我们对类别标签分配为1,0,-1,分别对应前景,背景和忽略anchor。

BCE损失定义为:

在这里插入图片描述

其中, y y y是anchor的类别标签, p p p是预测概率。

分类损失定义为:

在这里插入图片描述

其中 N N N表示anchor的数目, N p o s N_{pos} Npos表示前景anchor的数目。

正样本对分类损失贡献相比于负样本更加稳定,但是正样本的数目相对于负样本而言少。

在这里插入图片描述

anchor采用 ( x a , y a , w a , h a ) (x_a,y_a,w_a,h_a) (xa,ya,wa,ha)进行表示。

采用Smooth-L1损失作为旋转框回归损失,仅计算前景anchor:
在这里插入图片描述

最终的损失计算为:

在这里插入图片描述

5.实验

https://github.com/Capino512/pytorch-rotation-decoupled-detector

1、DOTA

在这里插入图片描述

2、HRSC2016

在这里插入图片描述

3、UCAS-AOD

在这里插入图片描述

6.讨论

本文方法存在基于anchor的检测算法的通病:

1)anchor的设置根据检测目标的形状确定;

2)在每个特征层,采用多尺度的anchor,增大了计算量;

3)难以处理高重叠的目标。


http://chatgpt.dhexx.cn/article/Sock3cLn.shtml

相关文章

基于Yolov5的道路缺陷识别,加入CVPR2023 InceptionNeXt、华为诺亚2023 VanillaNet、ASFF、EVC、Decoupled_Detect、TSCODE、WIoU优化

目录 1.数据集介绍 1.1数据增强,扩充数据集 1.1.1 通过split_train_val.py得到trainval.txt、val.txt、test.txt 1.1.2 通过voc_label.py得到适合yolov5训练需要的 2.基于yolov5的道路缺陷识别 2.1配置 crack.yaml 2.2 修改yolov5s_crack.yaml 2.3训练道路缺…

【Decouple】《Improving Semantic Segmentation via Decoupled Body and Edge Supervision》

ECCV-2020 作者分享:https://www.techbeat.net/talk-info?id462 Code:https://github.com/lxtGH/DecoupleSegNets 文章目录 1 Background and Motivation2 Related Work3 Advantages / Contributions4 Method4.1 Decoupled segmentation framework4.2 …

【CVPR2021】Decoupled dynamic filter networks

论文:https://thefoxofsky.github.io/files/ddf.pdf 代码:https://github.com/thefoxofsky/ddfnet 主页:https://thefoxofsky.github.io/project_pages/ddf 先从论文首页的图说起。第一行为普通静态卷积,对于道路、车辆、建筑使用…

阅读Decoupled Spatial-Temporal Attention Network for Skeleton-Based Action Recognition

基于骨骼动作识别的解耦时空注意网络 paper:https://arxiv.org/abs/2007.03263 文章目录 AbstractIntroductionMethod3.1 Spatial-temporal attention module 3.2 Decoupled Position encoding3.3 Spatial global regularization3.4 Complete attention module3.5 O…

[论文评析]Decoupled Knowledge Distillation, CVPR2022

[论文评析]Decoupled Knowledge Distillation, CVPR2022 文章信息动机方法Basic notionsKL Loss重要发现伪码 思考References 文章信息 题目:Decoupled Knowledge Distillation 发表: CVPR ,2022 作者:Borui Zhao 11,…

Decoupled head(解耦合头)和Coupled head(耦合头)

👻解耦合头和耦合头是目标检测中常见的两种头部设计,用于从检测网络的特征图中提取目标位置和类别信息。 (先看概念,概念看不懂可以直接看图一定能懂😁) 文章目录 耦合头(Coupled head&#xf…

#Reading Paper# 【序列推荐】SIGIR 2022 Decoupled Side Information Fusion for Sequential Recommendation

#论文题目:【序列推荐】Decoupled Side Information Fusion for Sequential Recommendation(DIF-SR:用于序列推荐的辅助信息解耦) #论文地址:https://arxiv.org/pdf/2204.11046.pdf #论文源码开源地址:http…

yolox Head-Decoupled head源码解读

目录 前言 yolox网络结构 yolox head网络结构 head组件及对应源码 解码 前言 yolox backbone部分介绍 yolox neck部分介绍 yolox:https://github.com/Megvii-BaseDetection/YOLOX yolox详细解读可参考:https://jishuin.proginn.com/p/763bfbd628ce yolox网络…

Decoupled Knowledge Distillation——目标分布与非目标分布相解耦

通过传统知识蒸馏的解耦分析,DKD(Decoupled Knowledge Distillation)重新审视了暗知识的本质,并通过蒸馏损失函数的改进、获得DKD loss,显著改善了任务相关知识迁移的效果: Paper地址:https://a…

【GCN-CTR】DC-GNN: Decoupled GNN for Improving and Accelerating Large-Scale E-commerce Retrieval WWW22

《DC-GNN: Decoupled Graph Neural Networks for Improving and Accelerating Large-Scale E-commerce Retrieval》(WWW’22) 在工业场景中,数百亿节点和数千亿的边直接端到端的GNN-based CTR模型开销太大,文章把整个GNN框架解耦成三阶段:预…

(2019.01, iclr) Decoupled Weight Decay Regularization

code: https://github.com/loshchil/AdamW-and-SGDW 除了纯SGD, L2 ! weight_decay 背景知识: sgd with momentum和adam,详见《深度学习》: L2 regulization and weight decay: https://benihime91.github.io/blog/machinelearning/deeplearning/python3…

Decoupled Novel Object Captioner

Decoupled Novel Object Captioner AbstractIntroductionMethodsPreliminariesZero-Shot Novel Object Captioning.Sequence Model with the PlaceholderKey-Value Object MemoryFramework OverviewTraining Reference Reference[原文]: Joselynzhao.top & 夏木青 | Decoup…

Video Anomaly Detection by Solving Decoupled Spatio-Temp

Video Anomaly Detection by Solving Decoupled Spatio-Temp 什么是SSL? Self-Supervised Learning,又称为自监督学习什么是多标签分类问题: 一个数据有多个标签pretext 任务: 简单的来说,通过另一个任务简介完成主任务 比如,要训…

魔改YOLOv5/YOLOv7高阶版——改进之结合解耦头Decoupled_Detect

💖💖>>>加勒比海带,QQ2479200884<<<💖💖 🍀🍀>>>【YOLO魔法搭配&论文投稿咨询】<<<🍀 ✨✨>>>学习交流 | 温澜潮生 | 合作共赢 | 共同进步<<<✨✨

Distilling Object Detectors via Decoupled Features

Abstract 相比于图像分类而言&#xff0c;目标检测器更加复杂&#xff0c;具有多个损失函数。而目前的的检测中&#xff0c;其主要将注意力集中在对象的区域中&#xff0c;但本文指出&#xff0c;从背景中提取的特征信息对于学生模型的学习也是必不可少的。且由于目标区域和背…

Decoupled Attention Network for Text Recognition

摘要&#xff1a; 最流行的文字检测的方法是注意力机制&#xff0c;但是大多数的注意力机制方法由于循环的对齐操作会导致严重的对齐问题。因为对齐操作依赖于历史解码信息。 本文提出的DAN将对齐操作与历史解码信息解耦。 原理&#xff1a; Connectionist temporal classifi…

涨点技巧:Detect系列---Yolov5/Yolov7加入解耦头Decoupled_Detect,涨点明显

目录 1. Decoupled Head介绍 2.Yolov5加入Decoupled_Detect 2.1 DecoupledHead加入common.py中&#xff1a; 2.2 Decoupled_Detect加入yolo.py中&#xff1a; 2.3修改yolov5s_decoupled.yaml 3.数据集下验证性能 &#x1f3c6; &#x1f3c6;&#x1f3c6;&#x1f3c6;&…

Decoupled Contrastive Learning 论文解读和感想

本文首先提出了当前对比学习的三大痛点&#xff1a; 1、当前的sota方法结构都过于复杂 2、对比学习要想取得效果&#xff0c;必须要用大batch 3、超参敏感(个人认为这里说的超参是指数据增强方式) 然后本文以SimCLR为例&#xff0c;通过对对比损失的梯度进行分析&#xff0c;发…

DECOUPLED WEIGHT DECAY REGULARIZATION

引言 Adam作为一个常用的深度学习优化方法&#xff0c;提出来的时候论文里的数据表现都非常好&#xff0c;但实际在使用中发现了不少问题&#xff0c;在许多数据集上表现都不如SGDM这类方法。 后续有许多工作针对Adam做了研究&#xff0c;之前整理过关于优化算法的发展历程&am…

Decoupled Dynamic Filter Networks

转载自:https://www.cnblogs.com/liuyangcode/p/14755924.html 对depth-wise的改进&#xff0c;将卷积核的参数改为根据输入变化的方式 Introduction 卷积缺点在于&#xff1a;内容不变&#xff0c;计算量高动态filter可以根据内容自适应&#xff0c;但是会提高计算量。depth…