YOLO超快时代终结了 | RT-DETR用114FPS实现54.8AP,远超YOLOv8(二)

简介: YOLO超快时代终结了 | RT-DETR用114FPS实现54.8AP,远超YOLOv8(二)

4、The Real-time DETR


4.1、方法概览

所提出的RT-DETR由Backbone、混合编码器和带有辅助预测头的Transformer解码器组成。模型体系结构的概述如图3所示。

image.png

具体来说:

  • 首先,利用Backbone的最后3个阶段的输出特征作为编码器的输入;
  • 然后,混合编码器通过尺度内交互和跨尺度融合将多尺度特征转换为一系列图像特征(如第4.2节所述);
  • 随后,采用IoU-Aware查询选择从编码器输出序列中选择固定数量的图像特征,作为解码器的初始目标查询;
  • 最后,具有辅助预测头的解码器迭代地优化对象查询以生成框和置信度得分。

4.2、高效混合编码器

1、计算瓶颈分析

为了加速训练收敛并提高性能,Zhu等人建议引入多尺度特征,并提出Deformable Attention机制以减少计算。然而,尽管注意力机制的改进减少了计算开销,但输入序列长度的急剧增加仍然导致编码器成为计算瓶颈,阻碍了DETR的实时实现。

如 所述,编码器占GFLOP的49%,但在Deformable DETR中仅占AP的11%。为了克服这一障碍,作者分析了多尺度Transformer编码器中存在的计算冗余,并设计了一组变体,以证明尺度内和尺度间特征的同时交互在计算上是低效的。

从包含关于图像中的对象的丰富语义信息的低级特征中提取高级特征。直观地说,对连接的多尺度特征进行特征交互是多余的。如图5所示,为了验证这一观点,作者重新思考编码器结构,并设计了一系列具有不同编码器的变体。

image.png

该组变体通过将多尺度特征交互解耦为尺度内交互和跨尺度融合的两步操作,逐步提高模型精度,同时显著降低计算成本。首先删除了DINO-R50中的多尺度变换编码器作为基线A。接下来,插入不同形式的编码器,以产生基于基线A的一系列变体,具体如下:

  1. A→ B: 变体B插入一个单尺度Transformer编码器,该编码器使用一层Transformer Block。每个尺度的特征共享编码器,用于尺度内特征交互,然后连接输出的多尺度特征。
  2. B→ C: 变体C引入了基于B的跨尺度特征融合,并将连接的多尺度特征输入编码器以执行特征交互。
  3. C→ D: 变体D解耦了多尺度特征的尺度内交互和跨尺度融合。首先,使用单尺度Transformer编码器进行尺度内交互,然后使用类PANet结构进行跨尺度融合。
  4. D→ E: 变体E进一步优化了基于D的多尺度特征的尺度内交互和跨尺度融合,采用了设计的高效混合编码器。

2、Hybrid design

基于上述分析,作者重新思考了编码器的结构,并提出了一种新的高效混合编码器。如图3所示,所提出的编码器由两个模块组成,即基于注意力的尺度内特征交互(AIFI)模块和基于神经网络的跨尺度特征融合模块(CCFM)。

AIFI进一步减少了基于变体D的计算冗余,变体D仅在上执行尺度内交互。作者认为,将自注意力操作应用于具有更丰富语义概念的高级特征可以捕捉图像中概念实体之间的联系,这有助于后续模块对图像中目标的检测和识别。

同时,由于缺乏语义概念以及与高级特征的交互存在重复和混淆的风险,较低级别特征的尺度内交互是不必要的。为了验证这一观点,只对变体D中的进行了尺度内相互作用,实验结果见表3,见行。与变体D相比,显著降低了延迟(快35%),但提高了准确性(AP高0.4%)。这一结论对实时检测器的设计至关重要。

image.png

CCFM也基于变体D进行了优化,在融合路径中插入了几个由卷积层组成的融合块。融合块的作用是将相邻的特征融合成一个新的特征,其结构如图4所示。融合块包含N个RepBlock,两个路径输出通过元素相加进行融合。

可以将这个过程表述如下:

其中表示多头自注意力,表示将特征的形状恢复到与相同的形状,这是的inverse操作。

4.3、IoU-Aware查询选择

DETR中的目标查询是一组可学习的嵌入,这些嵌入由解码器优化,并由预测头映射到分类分数和边界框。然而,这些目标查询很难解释和优化,因为它们没有明确的物理意义。后续工作改进了目标查询的初始化,并将其扩展到内容查询和位置查询(Anchor点)。其中,Effificient detr、Dino以及Deformable detr都提出了查询选择方案,它们的共同点是利用分类得分从编码器中选择Top-K个特征来初始化目标查询(或仅位置查询)。然而,由于分类得分和位置置信度的分布不一致,一些预测框具有高分类得分,但不接近GT框,这导致选择了分类得分高、IoU得分低的框,而分类得分低、IoU分数高的框被丢弃。这会削弱探测器的性能。

为了解决这个问题,作者提出了IoU-Aware查询选择,通过约束模型在训练期间为具有高IoU分数的特征产生高分类分数,并为具有低IoU得分的特征产生低分类分数。因此,与模型根据分类得分选择的Top-K个编码器特征相对应的预测框具有高分类得分和高IoU得分。

将检测器的优化目标重新表述如下:

其中和表示预测和GT,和。和分别表示类别和边界框。将IoU分数引入分类分支的目标函数(类似于VFL),以实现对正样本分类和定位的一致性约束。

有效性分析

为了分析所提出的IoU感知查询选择的有效性,在val2017上可视化了查询选择所选择的编码器特征的分类分数和IoU分数,如图6所示。

具体来说,首先根据分类得分选择前K个(在实验中K=300)编码器特征,然后可视化分类得分大于0.5的散点图。红点和蓝点是根据分别应用普通查询选择和IoU感知查询选择训练的模型计算的。点越靠近图的右上角,对应特征的质量就越高,即分类标签和边界框更有可能描述图像中的真实对象。

根据可视化结果发现最引人注目的特征是大量蓝色点集中在图的右上角,而红色点集中在右下角。这表明,使用IoU感知查询选择训练的模型可以产生更多高质量的编码器特征。

此外,还定量分析了这两类点的分布特征。图中蓝色点比红色点多138%,即分类得分小于或等于0.5的红色点更多,这可以被视为低质量特征。然后,分析分类得分大于0.5的特征的IoU得分,发现IoU得分大于0.5时,蓝色点比红色点多120%。

定量结果进一步表明,IoU感知查询选择可以为对象查询提供更多具有准确分类(高分类分数)和精确定位(高IoU分数)的编码器特征,从而提高检测器的准确性。

4.4、Scaled RT-DETR

为了提供RT-DETR的可扩展版本,将ResNet网替换为HGNetv2。使用depth multiplier和width multiplier将Backbone和混合编码器一起缩放。因此,得到了具有不同数量的参数和FPS的RT-DETR的两个版本。

对于混合编码器,通过分别调整CCFM中RepBlock的数量和编码器的嵌入维度来控制depth multiplier和width multiplier。值得注意的是,提出的不同规模的RT-DETR保持了同质解码器,这有助于使用高精度大型DETR模型对光检测器进行蒸馏。这将是一个可探索的未来方向。


5、实验


5.1、与SOTA比较

image.png

5.2、混合编码器的消融实验研究

image.png

5.3、IoU感知查询选择的消融研究

5.4、解码器的消融研究


6、参考


[1].DETRs Beat YOLOs on Real-time Objext Detection.

相关文章
|
机器学习/深度学习 编解码 固态存储
超轻目标检测 | 超越 NanoDet-Plus、YOLOv4-Tiny实时性、高精度都是你想要的!
超轻目标检测 | 超越 NanoDet-Plus、YOLOv4-Tiny实时性、高精度都是你想要的!
549 0
超轻目标检测 | 超越 NanoDet-Plus、YOLOv4-Tiny实时性、高精度都是你想要的!
|
3月前
|
机器学习/深度学习 网络架构
YOLOv8改进 | 2023主干篇 | 利用RT-DETR特征提取网络PPHGNetV2改进YOLOv8(超级轻量化精度更高)
YOLOv8改进 | 2023主干篇 | 利用RT-DETR特征提取网络PPHGNetV2改进YOLOv8(超级轻量化精度更高)
102 1
|
12月前
|
机器学习/深度学习 并行计算 监控
YOLO超快时代终结了 | RT-DETR用114FPS实现54.8AP,远超YOLOv8(一)
YOLO超快时代终结了 | RT-DETR用114FPS实现54.8AP,远超YOLOv8(一)
420 0
|
12月前
|
机器学习/深度学习 计算机视觉
即插即用 | SIoU 实现50.3 AP+7.6ms检测速度精度、速度完美超越YoloV5、YoloX
即插即用 | SIoU 实现50.3 AP+7.6ms检测速度精度、速度完美超越YoloV5、YoloX
274 0
|
12月前
|
编解码 开发工具 计算机视觉
Faster RCNN超快版本来啦 | TinyDet用小于1GFLOPS实现30+AP,小目标炸裂(二)
Faster RCNN超快版本来啦 | TinyDet用小于1GFLOPS实现30+AP,小目标炸裂(二)
443 0
|
12月前
|
机器学习/深度学习 编解码 人工智能
Faster RCNN超快版本来啦 | TinyDet用小于1GFLOPS实现30+AP,小目标炸裂(一)
Faster RCNN超快版本来啦 | TinyDet用小于1GFLOPS实现30+AP,小目标炸裂(一)
182 0
|
12月前
|
机器学习/深度学习 编解码 自然语言处理
NAS-ViT | 超低FLOPs与Params实现50FPS的CPU推理,精度却超越ResNet50!!!
NAS-ViT | 超低FLOPs与Params实现50FPS的CPU推理,精度却超越ResNet50!!!
171 0
|
12月前
|
机器学习/深度学习 编解码 固态存储
超轻目标检测 | 超越 NanoDet-Plus、YOLOv4-Tiny实时性、高精度都是你想要的!(一)
超轻目标检测 | 超越 NanoDet-Plus、YOLOv4-Tiny实时性、高精度都是你想要的!(一)
427 0
|
12月前
|
编解码 算法 数据可视化
超轻目标检测 | 超越 NanoDet-Plus、YOLOv4-Tiny实时性、高精度都是你想要的!(二)
超轻目标检测 | 超越 NanoDet-Plus、YOLOv4-Tiny实时性、高精度都是你想要的!(二)
154 0
|
12月前
|
并行计算 算法 数据可视化
432.4 FPS 快STDC 2.84倍 | LPS-Net 结合内存、FLOPs、CUDA实现超快语义分割模型(二)
432.4 FPS 快STDC 2.84倍 | LPS-Net 结合内存、FLOPs、CUDA实现超快语义分割模型(二)
85 0