详细的RT-DETR学习笔记

不了解DETR的可以看看之前的介绍: DETR学习笔记_什么是集合预测-CSDN博客

背景介绍

        本文的目标不仅是进一步提高模型的性能,而且是创建一个实时的端到端目标检测器。
针对DETR的高计算成本问题,设计了一种高效的 混合编码器,通过解耦尺度内交互和跨尺度融合来高效处理多尺度特征,并提出了IoU感知的查询选择,以提高目标查询的初始化。
* 尺度内交互:针对每个尺度的特征,使用单尺度Transformer编码器进行处理,这样可以更高效地捕捉同一尺度内的目标信息。
* 跨尺度融合:在处理完尺度内交互后,使用一种高效的融合机制(如PANet结构)来合并不同尺度的特征,从而实现对不同大小目标的整体理解。
IoU感知查询选择:传统的查询选择方法主要基于分类得分,这可能导致选择的查询与真实目标的重叠度(IoU)不高。IoU感知查询选择机制旨在优化这一过程,通过考虑IoU分数来选择更有可能描述真实目标的特征。

anchor base和anchor free?

  • Anchor-based 方法
依赖于预定义的锚点(anchors)或提议(proposals)来生成目标的候选区域。这些锚点是在不同尺度、长宽比和位置上预先定义好的框,它们均匀地分布在图像中。在目标检测过程中,模型会评估这些锚点与实际目标的匹配程度,并调整它们的位置和大小以更好地拟合目标。

anchors:
  - [10,13, 16,30, 33,23]  # P3/8
  - [30,61, 62,45, 59,119]  # P4/16
  - [116,90, 156,198, 373,326]  # P5/32
这种方法的代表是Faster R-CNN,它使用区域提议网络(Region Proposal Network, RPN)来生成高质量的锚点,然后通过RoI(Region of Interest)池化层和后续的分类器和边界框回归器来预测目标的类别和精确位置。
  • Anchor-free 方法
不依赖于预定义的锚点。相反,它直接在图像的特征图上预测目标的位置和大小。这意味着模型需要自行学习如何从原始图像特征中推断出目标的存在和它们的确切位置。
Anchor-free方法的一个例子是CornerNet,它使用关键点预测来确定目标的角点,从而推断出目标的边界框。另一个例子是FCOS(Fully Convolutional One-Stage Object Detection),它直接在特征图上预测目标的类别和边界框,而无需任何锚点。

3090 

本文的主要贡献如下:

(i)提出了第一个实时端到端目标检测器,该检测器不仅在速度和精度上优于当前的实时检测器,而且不需要后处理,因此其推理速度不会延迟并且保持稳定;
(ii)详细分析了NMS对实时检测器的影响,并从后处理的角度得出了当前实时检测器的结论;
(iii)我们的工作为当前端到端检测器的实时实现提供了可行的解决方案,并且所提出的检测器可以通过使用不同的解码器层灵活调整推理速度,而无需再训练,这是现有实时检测器所难以做到的。
NMS非极大值抑制
NMS中需要2个超参数:得分阈值和IoU阈值。
设置一个得分阈值threah1=0.2, 如果分数小于thresh1的话,就把这个bounding box的分数设为0;然后按照分数从大到小排列
设置一个最大交并比,两个框相交的部分大于0.5,就把分数小的框设为0
YOLOv8n  0.1ms preprocess, 0.9ms inference, 0.0ms loss, 0.3ms postprocess per image
处于不同得分阈值的boxes数量

网络模型

        RT-DETR概述。我们首先利用主干的最后三个阶段{S3, S4, S5}的特征作为编码器的输入。高效混合编码器通过尺度内特征交互(AIFI)和跨尺度特征融合模块(CCFM)将多尺度特征转化为图像特征序列。使用iou感知查询选择来选择固定数量的图像特征作为解码器的初始对象查询。最后,带有辅助预测头的解码器迭代优化对象查询以生成方框和置信度分数。混合编码器通 过尺度内特征交互跨尺度融合将多尺度特征转换为一系列图像特征。                        注意力             特征金字塔之类的特征融合

AIFI(Attention-based Intra-scale Feature Interaction)模块

        其实他就是一个很普通的Transformer的Encoder层,包含标准的MSAH( 多头自注意力机制 或者Deformable Attention)和FFN 前馈网络。 FFN通常由两个线性变换组成,中间夹着一个非线性激活函数(如ReLU或GELU)。FFN的作用是对注意力机制的输出进行进一步的特征变换,增加模型的表达能力。
        RT-DETR作者团队认为只需将Encoder作用在 S5  特征上,既可以大幅度地减小计算量、提高计算速度,又不会损伤到模型的性能。
1. 以往的DETR,如Deformable DETR是将多尺度的特征都拉平成拼接在其中,构成一个序列很长的向量,尽管这可以使得多尺度之间的特征进行充分的交互,但也会造成极大的计算量和计算耗时。RT-DETR认为这是当前的DETR计算速度慢的主要原因之一;
2. RT-DETR认为相较于较浅的S3 特征和 S4 特征, S5 特征拥有更深、更高级、更丰富的语义特征,这些语义特征是Transformer更加感兴趣的和需要的,对于区分不同物体的特征是更加有用的,而浅层特征因缺少较好的语义特征而起不到什么作用。
        作者认为,在串联的多尺度特征上进行特征交互是冗余的。重新思考编码器结构,并设计了一系列不同编码器的变体,如图5所示。变量集通过将多尺度特征交互解耦为尺度内交互和跨尺度融合两步操作,逐渐提高了模型精度,同时显著降低了计算成本(详细指标参见表3)。
    我们首先移除DINO-R50[46]中的多尺度变压器编码器作为基线A。接下来,在基线a的基础上插入不同形式的编码器,产生一系列变型,具体如下:
•A→B:变体B插入了一个单尺度变压器编码器,它使用了一层变压器模块。每个尺度的特征共享编码器进行尺度内特征交互,然后将输出的多尺度特征进行串联。
•B→C:变体C在B的基础上引入跨尺度特征融合,将拼接的多尺度特征输入编码器进行特征交互。
•C→D:变体D解耦了尺度内的相互作用和多尺度特征的跨尺度融合。首先,采用单尺度变压器编码器进行尺度内交互,然后采用类似panet的结构进行跨尺度融合。
•D→E:变体E在D的基础上进一步优化了尺度内的相互作用和多尺度特征的跨尺度融合,采用了我们设计的高效混合编码器(详见下文)。
QS表示查询选择,SSE表示单尺度编码器,MSE表示多尺度编码器,CSF表示跨尺度融合。
        本文提出的编码器由两个模块组成,即基于注意力的尺度内特征交互(AIFI)模块和基于cnn的跨尺度特征融合(CCFM)模块。AIFI在变体D的基础上进一步减少了计算冗余,变体D只在S5上执行尺度内交互。
        作者认为,将自注意操作应用于语义概念更丰富的高级特征,可以捕获图像中概念实体之间的联系,从而便于后续模块对图像中物体的检测和识别。同时,由于缺乏语义概念,并且存在与高级特征交互重复和混淆的风险,低级特征的尺度内交互是不必要的。
        为了验证这一观点,我们只对变量D中的S5进行尺度内相互作用,实验结果见表3,见DS5行。与普通版本D相比,DS5显著降低了延迟(快了35%),但提高了准确性(高出0.4%)。
大概就是注意力就只放在包含语义特征的高层S5,
        最后,带有辅助预测头的解码器迭代优化对象查询以生成方框和置信度分数。
self.encoder就是DETR中的encoder

IoU-aware

        在传统的目标检测训练中,每个目标的类别标签通常是通过one-hot编码来表示的,即对于一个特定的类别,对应的标签向量中只有一个元素是1,其余元素都是0。这种方式的一个潜在问题是,它可能允许分类任务过早地收敛,即使目标的定位(即边界框的位置和大小)还不够准确。
为了解决这个问题,"IoU-aware"的概念被引入到目标检测的训练中。具体来说,模型的分类损失会考虑到预测边界框与真实边界框之间的IoU。IoU是一个衡量两个边界框重叠程度的指标,它的值介于0到1之间,值越高表示重叠程度越大。在"IoU-aware"的训练策略中,只有当预测边界框与真实边界框的IoU超过某个阈值时,模型才会将该目标的类别标签视为正确的分类。
这种方法的优点在于,它迫使模型在进行分类预测之前,必须先准确地定位目标。因为如果边界框定位不准确,即使类别预测正确,由于IoU较低,模型仍然会收到较高的分类损失,从而鼓励模型同时优化分类和定位任务。这样可以提高模型的整体性能,尤其是在需要精确边界框定位的任务中。
1. IoU (Intersection over Union): IoU是目标检测中一个常用的评价指标,用于衡量预测边界框和真实边界框之间的重叠程度。计算公式为两个边界框交集的面积除以它们并集的面积。IoU的值范围从0到1,值越高表示预测边界框与真实边界框的重叠程度越大,预测越准确。
2. IoU-aware: "IoU-aware"是一种训练策略或方法,它在目标检测模型的训练过程中使用IoU作为一个额外的信息或信号。具体来说,"IoU-aware"方法会在模型损失函数中直接考虑预测边界框和真实边界框之间的IoU值,以此来引导模型在训练过程中更加关注边界框的精确定位。这种方法可以帮助模型在分类正确的同时,也提高边界框定位的准确性。
实验结果:
  • 26
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值