【读点论文】DETRs Beat YOLOs on Real-time Object Detection,detr也能实时目标检测,去除了NMS耗时操作,混合编码器加上IOU感知查询助力检测

DETRs Beat YOLOs on Real-time Object Detection

Abstract

  • 近年来,基于transformer的端到端检测器(DETRs)取得了令人瞩目的进展。然而,DETRs的高计算成本问题并没有得到有效解决,这限制了它们的实际应用,并阻碍了它们充分利用无后处理的好处,如非最大抑制(NMS)。

  • 本文首先分析了现代实时目标检测器中NMS对推理速度的影响,并建立了端到端的速度基准。为了避免NMS造成的推理延迟,本文提出了实时检测变压器(RT-DETR),这是本文所知的第一个实时端到端对象检测器。具体而言,本文设计了一种高效的混合编码器,通过解耦尺度内交互和跨尺度融合来高效处理多尺度特征,并提出了iou感知查询选择来改进对象查询的初始化。此外,本文提出的检测器可以通过使用不同的解码器层来灵活调整推理速度,而无需再训练,这有利于实时目标检测器的实际应用。本文的rt-detr- l在COCO val2017上实现了53.0%的AP,在T4 GPU上实现了114 FPS,而rt - detr - x实现了54.8%的AP和74 FPS,在速度和精度上都优于相同规模的所有YOLO检测器。

  • 此外,本文的RT-DETR-R50达到53.1%的AP和108 FPS,在精度上优于DINO-deformable- detr-r50 2.2%的AP和约21倍的FPS。源代码和预训练模型将在PaddleDetection PaddlePaddle/PaddleDetection: Object Detection toolkit based on PaddlePaddle. It supports object detection, instance segmentation, multiple object tracking and real-time multi-person keypoint detection. (github.com) 上提供。

  • 论文地址:[2304.08069] DETRs Beat YOLOs on Real-time Object Detection (arxiv.org)

  • 飞桨在去年 3 月份推出了高精度通用目标检测模型 PP-YOLOE ,同年在 PP-YOLOE 的基础上提出了 PP-YOLOE+ 。后者在训练收敛速度、下游任务泛化能力以及高性能部署能力方面均达到了很好的效果。而继 PP-YOLOE 提出后,MT-YOLOv6、YOLOv7、DAMO-YOLO、RTMDet 等模型先后被提出,一直迭代到今年开年的 YOLOv8。超越YOLOv8,飞桨推出精度最高的实时检测器RT-DETR! (qq.com)

  • 在这里插入图片描述

  • YOLO 检测器有个较大的待改进点是需要 NMS 后处理,其通常难以优化且不够鲁棒,因此检测器的速度存在延迟。为避免该问题,我们将目光移向了不需要 NMS 后处理的 DETR,一种基于 Transformer 的端到端目标检测器。然而,相比于 YOLO 系列检测器,DETR 系列检测器的速度要慢的多,这使得"无需 NMS "并未在速度上体现出优势。上述问题促使我们针对实时的端到端检测器进行探索,旨在基于 DETR 的优秀架构设计一个全新的实时检测器,从根源上解决 NMS 对实时检测器带来的速度延迟问题。

  • 基于Transformer的端到端检测器(DETR)取得了显著的性能。然而,DETR的高计算成本问题尚未得到有效解决,限制了它们的实际应用,并阻止它们充分利用无后处理的优点,例如非最大值抑制(NMS)。于是乎,百度近期又基于 DETR 实现并开源了第一个实时的端到端物体检测器RT-DETR,有效的避免 NMS 导致的推理延迟同时提升性能。具体来说,作者设计了一个高效的混合编码器,通过解耦内部尺度交互和跨尺度融合来高效地处理多尺度特征,并提出了 IoU 感知的查询选择来改进目标查询的初始化

Introduction

  • 物体检测是一项基本的视觉任务,涉及识别和定位图像中的物体。现代目标检测器有两种典型的架构:基于cnn的和基于transformer的。在过去的几年里,人们对基于CNN的目标探测器进行了广泛的研究。这些检测器的架构已经从最初的两阶段演变为一阶段,并且出现了基于锚的和无锚的两种检测范式。

  • 这些研究在检测速度和准确性方面都取得了重大进展。基于transformer的目标检测器(DETRs)[detr,Sparse r-cnn,End-to-end object detection with fully convolutional network,Deformable detr,Conditional detr for fast training convergence,Anchor detr,Dab-detr,Dn-detr,Dino]自提出以来受到了学术界的广泛关注,因为它消除了各种手工制作的组件,例如非最大抑制(NMS)。该体系结构大大简化了目标检测的流水线,实现了端到端的目标检测。

  • 实时目标检测是一个重要的研究领域,具有广泛的应用,如目标跟踪、视频监控、自动驾驶等。现有的实时检测器一般采用基于cnn的架构,在检测速度和精度上实现了合理的权衡。然而,这些实时检测器通常需要NMS进行后处理,这通常难以优化且不够鲁棒,导致检测器的推理速度延迟

  • 近年来,由于研究人员在加速训练收敛和降低优化难度方面的努力,基于transformer的检测器取得了显著的性能。然而,DETRs计算成本高的问题尚未得到有效解决,这限制了DETRs的实际应用,导致无法充分发挥其优势。这意味着虽然简化了目标检测流水线,但由于模型本身的计算成本较高,很难实现实时目标检测。以上问题自然激发本文考虑是否可以将DETR扩展到实时场景,充分利用端到端检测器的优势,避免NMS对实时检测器造成的延迟。

  • 为了实现上述目标,本文对DETR进行了重新思考,并对其关键组件进行了详细的分析和实验,以减少不必要的计算冗余。具体来说,本文发现虽然多尺度特征的引入有利于加速训练收敛和提高性能[Deformable detr],但它也会导致输入编码器的序列长度显著增加。因此,transformer编码器由于计算成本高,成为模型的计算瓶颈。为了实现实时目标检测,本文设计了一种高效的混合编码器来取代原来的transformer编码器。通过解耦尺度内的相互作用和多尺度特征的跨尺度融合,编码器可以有效地处理不同尺度的特征

  • 此外,先前的研究[Anchor detr,Dab-detr]表明,解码器的对象查询初始化方案对检测性能至关重要。为了进一步提高性能,本文提出了IoU感知查询选择,通过在训练过程中提供IoU约束,为解码器提供更高质量的初始对象查询。此外,本文提出的检测器通过使用不同的解码器层来灵活调整推理速度,而不需要再训练,这得益于基于DETR架构的解码器设计,有利于实时检测器的实际应用

  • 在本文中,本文提出了一个实时检测Transformer(RT-DETR),这是本文所知的第一个实时端到端对象检测器。RT-DETR不仅在精度和速度上优于当前最先进的实时检测器,而且不需要后处理,因此检测器的推理速度不会延迟且保持稳定,充分发挥了端到端检测流水线的优势。本文提出的 rt-detr-l 在COCO val2017上实现了53.0%的AP,在NVIDIA Tesla T4 GPU上实现了114 FPS,而rt-detr-x实现了54.8%的AP和74 FPS,在速度和精度上都优于相同规模的所有YOLO检测器。因此,本文的RT-DETR成为实时目标检测的新SOTA,如下图所示。此外,本文提出的rt-detr-r50达到53.1%的AP和108 FPS,而rt-detr-r101达到54.3%的AP和74 FPS。其中,RT-DETR-R50的准确率比dino- detr-r50高2.2% (53.1% AP对50.9% AP), FPS比dino-detr-r50高约21倍(108 FPS对5 FPS)。

    • 在这里插入图片描述

    • 与其他实时目标探测器相比,本文提出的探测器在速度和准确性方面都达到了最先进的性能。

  • 本文的主要贡献如下:

    • (1)提出了第一个实时端到端目标检测器,该检测器不仅在精度和速度上优于目前最先进的实时检测器,而且不需要后处理,因此其推理速度不延迟且保持稳定;

    • (ii)详细分析了NMS对实时检测器的影响,并从后处理的角度得出了基于cnn的实时检测器的结论;

    • (iii)本文提出的iou感知查询选择在本文的模型中显示出出色的性能改进,这为改进对象查询的初始化方案提供了新的思路;

    • (iv)本文的工作为端到端检测器的实时实现提供了可行的解决方案,所提出的检测器可以通过使用不同的解码器层灵活调整模型大小和推理速度,而无需再训练

  • NMS 是目标检测领域常用的后处理技术,用于去除检测器产生的重叠较多的检测框,其包含两个超参数:置信度阈值和 IoU 阈值。具体来说,低于置信度阈值的框被直接过滤,并且如果两个检测框的交并比大于 IoU 阈值,那么其中置信度低的框会被滤除。该过程迭代执行,直到所有类别都被处理完毕。因此,NMS 算法的执行时间取决于预测框数量和上述两个阈值。为了更好地说明这一点,我们使用 YOLOv5 (anchor-based) 和 YOLOv8 (anchor-free) 进行了统计和实测,测量指标包括不同置信度阈值下剩余的检测框的数量,以及在不同的超参数组合下检测器在 COCO 验证集上的精度和 NMS 的执行时间。实验结果表明,NMS 不仅会延迟推理速度,并且不够鲁棒,需要挑选合适的超参数才能达到最优精度。这一实验结果有力证明设计一种实时的端到端检测器是具有重要意义的。

Related work

Real-time Object Detectors.

  • 经过多年的不断发展,YOLO系列已成为实时目标探测器的代名词,大致可分为基于锚点的和无锚点的两类。从这些探测器的性能来看,锚不再是制约YOLO发展的主要因素。然而,上述检测器会产生许多冗余的边界框,需要在后处理阶段利用NMS将它们过滤掉。不幸的是,这会导致性能瓶颈,NMS的超参数对检测器的准确性和速度有重大影响。本文认为这与实时目标探测器的设计理念是不相容的

End-to-end Object Detectors.

  • 端到端目标检测器以其流线型管道而闻名。Carion等[detr]首先提出了基于Transformer的端到端对象检测器,命名为DETR (DEtection Transformer)。它因其独特的特点而引起了极大的关注。特别是,DETR消除了传统检测管道中手工设计的锚和NMS组件。相反,它采用二部匹配,直接预测一对一的对象集。通过采用该策略,DETR简化了检测管道,缓解了NMS带来的性能瓶颈。尽管有明显的优势,但DETR存在两个主要问题:训练收敛缓慢和查询难以优化。已经提出了许多DETR变体来解决这些问题。具体而言,deformable-detr通过提高注意机制的效率,加速了多尺度特征的训练收敛。条件DETR和锚定DETR降低了查询的优化难度。DAB-DETR引入4D参考点,逐层迭代优化预测框。DN-DETR通过引入查询去噪来加速训练收敛。DINO建立在以前的工作基础上,并取得了最先进的结果。虽然本文正在不断改进DETR的组件,但本文的目标不仅是进一步提高模型的性能,而且还要创建一个实时的端到端对象检测器

Multi-scale Features for Object Detection.

  • 现代目标探测器已经证明了利用多尺度特征来提高性能的重要性,特别是对于小目标。FPN引入了一种融合相邻尺度特征的特征金字塔网络。随后的研究对该结构进行了扩展和改进,并被广泛应用于实时目标检测器中。[DINO]首先在DETR中引入了多尺度特征,提高了性能和收敛速度,但这也导致DETR的计算成本显著增加。虽然可变形注意机制在一定程度上减轻了计算成本,但多尺度特征的加入仍然导致了较高的计算负担。为了解决这个问题,一些工作尝试设计计算效率高的DETR。Efficient detr 通过初始化具有密集先验的对象查询来减少编码器和解码器层的数量。Sparse detr 选择性地更新编码器令牌,期望被解码器引用,从而减少计算开销。Lite DETR 通过交错的方式降低底层特征的更新频率来提高编码器的效率。虽然这些研究降低了DETR的计算成本,但这些工作的目的并不是为了促进DETR作为实时检测器。

End-to-end Speed of Detectors

Analysis of NMS

  • NMS是一种广泛应用于目标检测的后处理算法,用于消除检测器输出的重叠预测框。该技术方案中需要设置两个超参数:分数阈值和IoU阈值。其中,分数低于分数阈值的预测框直接被过滤掉,当两个预测框的IoU均超过IoU阈值时,分数较低的预测框将被丢弃。这个过程迭代地执行,直到每个类别的所有盒子都被处理完。因此,NMS的执行时间主要取决于输入预测框的数量和两个超参数

  • 为了验证这一观点,本文利用YOLOv5(基于锚点的)和YOLOv8(无锚点的)进行实验。本文首先计算用相同的输入图像对输出框进行不同的分数阈值过滤后剩余的预测框的数量。本文从0.001到0.25选取一些分数作为阈值,对两个检测器的剩余预测框进行计数,并将其绘制成直方图,直观地反映了NMS容易受到其超参数的影响,如下图所示。

    • 在这里插入图片描述

    • 处于不同得分阈值的盒子数量。

  • 进一步,本文以YOLOv8为例,评估不同NMS超参数下COCO值2017上的模型精度和技术方案操作的执行时间。注意,本文实验中采用的NMS后处理操作是TensorRT efficientNMS Plugin,涉及多个CUDA内核,包括EfficientNMSFilter、RadixSort、EfficientNMS等,本文只报告了EfficientNMS内核的执行时间。本文在T4 GPU上测试了速度,上述实验的输入图像和预处理是一致的。本文使用的超参数和结果如下表所示。

    • 在这里插入图片描述

    • IoU和评分阈值对模型准确性和NMS执行时间的影响。

End-to-end Speed Benchmark

  • 为了能够公平地比较各种实时检测器的端到端推理速度,本文建立了端到端速度测试基准。考虑到NMS的执行时间会受到输入图像的影响,有必要选择一个基准数据集,计算多个图像之间的平均执行时间。基准测试采用COCO val2017作为默认数据集,对需要后处理的实时检测器附加TensorRT的NMS后处理插件。具体来说,本文根据基准数据集上相应精度的超参数测试检测器的平均推断时间,并排除IO和Memory-Copy操作。本文利用这个基准测试了基于锚点的探测器YOLOv5和YOLOv7,以及无锚点的探测器PP-YOLOE、YOLOv6和YOLOv8在T4 GPU上的端到端速度。试验结果见下表。根据结果,本文得出结论,对于需要NMS后处理的实时检测器,无锚点检测器在同等精度下优于基于锚点的检测器,因为前者的后处理时间明显少于后者,这在以前的工作中被忽略了。造成这种现象的原因是,基于锚点的检测器比无锚点的检测器产生更多的预测框(在本文测试的检测器中是三倍多)。

    • 在这里插入图片描述

    • 主要的结果。实时检测器和本文的RT-DETR共享640的公共输入大小,端到端检测器使用(800,1333)的输入大小。使用官方预训练模型在T4 GPU上报告了端到端速度结果。(注意:本文不测试detr的速度,除了DINO-Deformable-DERT进行比较,因为它们不是实时检测器。)

The Real-time DETR

Model Overview

  • 提出的RT-DETR由主干网、混合编码器和带辅助预测头的 transformer 解码器组成。模型体系结构的概述如下图所示。具体来说,本文利用主干的最后三个阶段{S3, S4, S5}的输出特征作为编码器的输入。混合编码器通过尺度内交互和跨尺度融合将多尺度特征转换为一系列图像特征。随后,使用iou感知查询选择从编码器输出序列中选择固定数量的图像特征作为解码器的初始对象查询。最后,带有辅助预测头的解码器迭代优化对象查询以生成方框和置信度分数。

    • 在这里插入图片描述

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

Efficient Hybrid Encoder

  • 现有的多尺度 Transformer 编码器在多个尺度的特征之间进行注意力运算,同时进行尺度内和尺度间特征交互,计算消耗较大。为了减少计算消耗,一个简单的办法是直接削减编码器层数。但是我们认为这并不能从根本上解决问题并且势必会对精度造成较大影响,更本质的方法应该是要解耦这种尺度内和尺度间的同时交互,缩短输入编码器的序列长度

  • 计算瓶颈分析。为了加速训练收敛,提高性能,[detr]建议引入多尺度特征,并提出可变形注意力机制来减少计算量。然而,尽管注意机制的改进减少了计算开销,但输入序列长度的急剧增加仍然使编码器成为计算瓶颈,阻碍了DETR的实时实现。据文献[ D ˆ 2 e t r Dˆ 2etr Dˆ2etr]报道,编码器占gflop的49%,但在deformable - detr中仅贡献11%的AP[Deformable detr]。为了克服这一障碍,本文分析了多尺度 transformer 编码器中存在的计算冗余,并设计了一组变体来证明尺度内和跨尺度特征同时相互作用是计算效率低下的。

  • 高级特征是从包含图像中对象的丰富语义信息的低级特征中提取出来的。直观地看,在串联的多尺度特征上进行特征交互是冗余的。为了验证这一观点,本文重新思考编码器结构,并设计了一系列不同编码器的变体,如下图所示。

    • 在这里插入图片描述

    • 具有不同类型编码器的变体集。QS表示查询选择,SSE表示单尺度编码器,MSE表示多尺度编码器,CSF表示跨尺度融合。

  • 变量集通过将多尺度特征交互解耦为尺度内交互和跨尺度融合两步操作,逐渐提高了模型精度,同时显著降低了计算成本(详细指标参见下表)。本文首先去除DINO-R50中的多尺度 transformer 编码器作为基线A。接下来,在基线a的基础上,插入不同形式的编码器,产生一系列变体,具体如下:

    • 在这里插入图片描述

    • 将多尺度特征融合解耦为尺度内相互作用和跨尺度融合两步操作的分析实验结果。

    • A→B: 变体B插入单量程 transformer 编码器,采用一层 transformer 块。每个尺度的特征共享编码器进行尺度内特征交互,然后将输出的多尺度特征串联起来。

    • B→C: 变体C在B的基础上引入跨尺度特征融合,将拼接的多尺度特征输入编码器进行特征交互。

    • C→D: 变体D解耦了尺度内的相互作用和多尺度特征的跨尺度融合。首先,采用单尺度transformer编码器进行尺度内交互,然后采用类似panet的结构进行跨尺度融合。

    • D→E: 变体E在D的基础上进一步优化了尺度内的相互作用和多尺度特征的跨尺度融合,采用了本文设计的高效混合编码器(详见下文)。

  • 混合设计。在此基础上,本文重新思考了编码器的结构,提出了一种新型的高效混合编码器。如上文图所示,本文提出的编码器由两个模块组成,即基于注意力的尺度内特征交互(AIFI)模块和基于cnn的跨尺度特征融合(CCFM)模块。AIFI在变体D的基础上进一步减少了计算冗余,变体D只在S5上执行尺度内交互。本文认为,将自注意操作应用于语义概念更丰富的高级特征,可以捕获图像中概念实体之间的联系,从而便于后续模块对图像中物体的检测和识别。同时,由于缺乏语义概念,并且存在与高级特征交互重复和混淆的风险,低级特征的尺度内交互是不必要的。为了验证这一观点,本文只对变量D中的S5进行尺度内相互作用,实验结果见上表,见DS5行。与普通版本D相比,DS5显著降低了延迟(快了35%),但提高了准确性(高出0.4%)。

  • 这一结论对实时探测器的设计至关重要。CCFM还基于变体D进行了优化,在融合路径中插入了多个由卷积层组成的融合块。融合块的作用是将相邻的特征融合成一个新的特征,其结构如下图所示。融合块包含N个repblock,两条路径的输出通过元素添加进行融合。本文可以将这个过程表述为:

    • 在这里插入图片描述

    • CCFM中的融合块。

    • Q = K = V = F l a t t e n ( S 5 ) F 5 = R e s h a p e ( A t t e n ( Q , K , V ) ) O u t p u t = C C F M ( { S 3 , S 4 , F 5 } ) , ( 1 ) Q=K=V=Flatten(S_5)\\ F_5=Reshape(Atten(Q,K,V))\\ Output=CCFM(\{S_3,S_4,F_5\}),(1) Q=K=V=Flatten(S5)F5=Reshape(Atten(Q,K,V))Output=CCFM({S3,S4,F5}),(1)

    • 式中Attn表示多头自注意,重塑表示将特征的形状恢复到与S5相同,这是flatten的逆操作。

IoU-aware Query Selection

  • DETR中的对象查询是一组可学习的嵌入,由解码器进行优化,并通过预测头映射到分类分数和边界框。然而,这些对象查询很难解释和优化,因为它们没有明确的物理意义。后续工作改进了对象查询的初始化,并将其扩展到内容查询和位置查询(锚点)。其中提出了查询选择方案,它们的共同点是利用分类分数从编码器中选择top K的特征来初始化对象查询(或者只进行位置查询)。但由于分类分数和位置置信度分布不一致,部分预测盒分类分数高,但与GT盒不接近,导致分类分数高、IoU分数低的盒子被选择,分类分数低、IoU分数高的盒子被丢弃。这会损害检测器的性能。为了解决这个问题,本文提出了IoU感知查询选择,通过约束模型在训练过程中对IoU分数高的特征产生高分类分数,对IoU分数低的特征产生低分类分数。因此,模型根据分类得分选择的前K个编码器特征所对应的预测框具有高分类得分和高IoU得分。本文将探测器的优化目标重新表述为:

    • L ( y ^ , y ) = L b o x ( b ^ , b ) + L c l s ( c ^ , b ^ , y , b ) = L b o x ( b ^ , b ) + L c l s ( c ^ , c , I o U ) , ( 2 ) \mathcal{L}(\hat{\mathcal{y}},y)=\mathcal{L}_{box}(\hat{b},b)+\mathcal{L}_{cls}(\hat{c},\hat{b},y,b)\\ =\mathcal{L}_{box}(\hat{b},b)+\mathcal{L}_{cls}(\hat{c},c,IoU),(2) L(y^,y)=Lbox(b^,b)+Lcls(c^,b^,y,b)=Lbox(b^,b)+Lcls(c^,c,IoU),(2)

    • 其中 y ^ \hat y y^ 和y分别表示预测和基础真值, y = { c ^ , b ^ } , y = { c , b } y = \{\hat c,\hat b\}, y = \{c, b\} y={c^,b^}y={c,b} , c和b分别表示类别和边界框。本文将IoU分数引入到分类分支的目标函数中(类似于VFL),实现对阳性样本分类和定位的一致性约束。

  • 有效性分析。为了分析所提出的IoU感知查询选择的有效性,本文在val2017上可视化查询选择所选择的编码器特征的分类分数和IoU分数,如下图所示。具体来说,本文首先根据分类分数选择前K个(实验中K = 300)编码器特征,然后可视化分类分数大于0.5的散点图。红点和蓝点分别从应用vanilla查询选择和iou感知查询选择训练的模型中计算出来。点越靠近图的右上方,对应特征的质量越高,即分类标签和边界框更有可能描述图像中的真实物体。根据可视化结果,本文发现最显著的特征是大量的蓝色点集中在图的右上方,而红色点则集中在右下方。这表明,使用iou感知查询选择训练的模型可以产生更多高质量的编码器特征

    • 在这里插入图片描述

    • 本文在val2017上计算查询选择所选择的编码器特征的分类分数和IoU分数,并将分类分数大于0.5的散点图可视化。红点和蓝点分别从应用普通查询选择和建议的iou感知查询选择训练的模型中计算出来

  • 在此基础上,定量分析了两类点的分布特征。图中蓝色点比红色点多138%,即分类分数小于等于0.5的红色点较多,可以认为是低质量特征。然后本文分析分类分数大于0.5的特征的IoU分数,本文发现IoU分数大于0.5的蓝点比红点多120%。定量结果进一步表明,IoU感知查询选择可以为对象查询提供更多准确分类(高分类分数)和精确定位(高IoU分数)的编码器特征,从而提高检测器的准确性。详细的定量结果见第5.4节。

Scaled RT-DETR

  • 为了提供一个可扩展的RT-DETR版本,本文用HGNetv2取代了ResNet主干。本文使用深度乘法器和宽度乘法器一起缩放主干和混合编码器。因此,本文得到两个版本的RT-DETR具有不同的参数数量和FPS。对于混合编码器,本文分别通过调整CCFM中repblock的数量和编码器的嵌入维数来控制深度乘法器和宽度乘法器。值得注意的是,本文提出的不同尺度的RT-DETR保持了一个均匀的解码器,这有利于光探测器在高精度大DETR模型中的蒸馏。这将是一个可探索的未来方向。

Experiments

Setups

  • 数据集。本文在Microsoft COCO数据集上进行了广泛的实验来验证所提出的检测器。对于消融研究,本文在COCO train2017上进行训练,并在COCO val2017数据集上进行验证。本文使用带有单个尺度图像的标准COCO AP度量作为输入。

  • 实现细节。本文使用来自PaddleClas的在ImageNet上预训练的ResNet和HGNetv2系列作为本文的主干。AIFI由1个transformer层组成,CCMF中的融合块默认由3个repblock组成。在iou感知查询选择中,本文选择前300个编码器特征初始化解码器的对象查询。解码器的训练策略和超参数几乎遵循DINO。本文使用AdamW优化器训练检测器,基本学习率= 0.0001,权重衰减= 0.0001,全局梯度剪辑范数= 0.0001,线性热身步骤= 2000。主干设置的学习率如[detr]。本文也使用指数移动平均线(EMA), EMA衰减= 0.9999。1x配置意味着总epoch为12,如果没有指定,所有烧蚀实验都使用1x。报告的最终结果使用6x配置。数据增强包括随机{颜色扭曲,扩展,裁剪,翻转,调整大小}操作,遵循[Pp-yoloe]。

Comparison with SOTA

  • 【主要的结果】表将所提出的RT-DETR与其他实时端到端目标检测器进行了比较。本文提出的rt-detr- l的AP为53.0%,FPS为114,而rt-detr- x的AP为54.8%,FPS为74,在速度和精度上都优于同尺度的所有YOLO检测器。此外,本文提出的rt-detr- r50实现了53.1%的AP和108 FPS,而rt-detr- r101实现了54.3%的AP和74 FPS,在速度和精度方面都优于同一骨干网的最先进的端到端检测器

  • 与实时探测器相比。为了公平比较,本文在端到端设置中将缩放后的RT-DETR的速度和精度与当前实时检测器进行了比较-。本文在上表中将缩放后的RT-DETR与YOLOv5、PP-YOLOE、YOLOv6v3.0(以下简称YOLOv6)、YOLOv7、YOLOv8进行比较。与YOLOv5-L / PP-YOLOE-L / YOLOv7-L相比,RT-DETR-L的精度提高了4.0% / 1.6% / 1.8% AP, FPS提高了111.1% / 21.3% / 107.3%,参数数量减少了30.4% / 38.5% / 11.1%。与YOLOv5-X / PP-YOLOE-X / YOLOv7-X相比,rt-detr-x精度提高4.1% / 2.5% / 1.9% AP, FPS提高72.1% / 23.3% / 64.4%,参数数量减少22.1% / 31.6% / 5.6%。与YOLOv6-L / YOLOv8-L相比,RT-DETR-L精度提高0.2% / 0.1% AP,速度提高15.2% / 60.6% FPS,参数数量减少45.8% / 25.6%。与YOLOv8-X相比,rt-detr- x在精度上提高了0.9%,在速度上提高了48.0%的FPS,在参数数量上减少了1.5%。

  • 与端到端检测器相比。上文表显示,RT-DETR在具有相同主干的所有端到端检测器中达到了最先进的性能。与dino-deform-detr-r50相比,RT-DETR-R50的准确率提高了2.2% AP (53.1% AP对50.9% AP),速度提高了21倍(108 FPS对5 FPS),参数数量减少了10.6%。与smca-der-r101相比,rt- detr- r101的准确率显著提高了8.0%

Ablation Study on Hybrid Encoder

  • 为了验证本文对编码器分析的正确性以及所提出的混合编码器的有效性,本文评估以下变量的指标,包括AP、参数数量和T4 GPU上的延迟。实验结果如上文表所示。变体B比a提供了1.9%的AP改进,同时增加了3%的参数数量和54%的延迟。这证明了尺度内特征交互是重要的,但普通的transformer编码器是昂贵的。变体C比B提供0.7%的AP改进,并保持参数数量不变,而延迟增加了20%。由此可见,跨尺度特征融合也是必要的。变体D比C提供了0.8%的AP改进,同时增加了9%的参数数量,但减少了8%的延迟。这表明解耦尺度内相互作用和跨尺度融合可以在提高精度的同时减少计算量。与普通版本D相比,DS5减少了35%的延迟,但提供了0.4%的AP改进。这证明了低层次特征的尺度内相互作用是不必要的。最后,配备本文提出的混合编码器的变体E比d提供1.5%的AP改进,尽管参数数量增加了20%,延迟减少了24%,使编码器的计算效率更高。

Ablation Study on IoU-aware Query Selection

  • 本文对iou感知查询选择进行了消融研究,定量实验结果如下图所示。本文采用的查询选择根据分类得分选择top K (K = 300)个编码器特征作为内容查询,这些被选择特征对应的边界框作为初始位置查询。本文比较val2017上两种查询选择所选择的编码器特征,并计算分类得分大于0.5和都大于0.5的比例,分别对应“ P r o p c l s Prop_{cls} Propcls”和“ P r o p b o t h Prop_{both} Propboth”列。结果表明,通过IoU感知查询选择的编码器特征不仅增加了高分类分数的比例(0.82% vs 0.35%),而且提供了更多高分类分数和高IoU分数的特征(0.67% vs 0.30%)。本文还评估了在val2017上使用两种类型的查询选择训练的检测器的准确性,其中iou感知查询选择实现了0.8% AP的改进(48.7% AP对47.9% AP)。

    • 在这里插入图片描述

    • iou感知查询选择的消融研究结果。 P r o p c l s Prop_{cls} Propcls P r o p b o t h Prop_{both} Propboth分别表示分类得分大于0.5的比例,两者得分均大于0.5。

Ablation Study on Decoder

  • 下表显示了RT-DETR在不同解码器层下各解码器层的精度和速度。当解码器层数为6层时,检测器的最佳准确率为53.1% AP。本文还分析了每个解码器层对推理速度的影响,得出每个解码器层大约消耗0.5 ms。此外,本文发现解码器相邻层之间的精度差随着解码器层索引的增加而逐渐减小。以6层解码器为例,使用5层进行推理只损失0.1%的AP (53.1% AP vs 53.0% AP),同时减少0.5 ms的延迟(9.3 ms vs 8.8 ms)。因此,RT-DETR可以通过使用不同的解码器层来灵活调整推理速度,而不需要对推理进行再训练,这有利于实时检测器的实际应用

    • 在这里插入图片描述

    • 解码器消融研究结果。ID表示解码器层索引,AP表示不同解码器层得到的模型精度。 D e t k Det^k Detk 表示具有k个解码器层的检测器。结果报告RT-DETR-R50与6×时间表设置。

Conclusion

  • 5
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

羞儿

写作是兴趣,打赏看心情

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值