🔥 🔥 🔥针对YOLO系列实时目标检测器受NMS影响导致速度与精度下降,以及DETRs因计算成本高昂无法实时应用的困境,本文提出了RT-DETR,首个兼顾实时性和端到端特性的Transformer目标检测器。
RT-DETR创新改进目录:新RT-DETR 有效涨点改进目录 | 包含各种卷积、主干改进、各种注意力机制、Neck特征融合改进、损失函数、AIFI创新改进、独家创新、小目标检测、特殊场景检测等最全大论文及小论文必备创新改进点
全新RT-DETR创新改进专栏地址:最全RT-DETR创新改进高效涨点+永久更新中(至少500+改进)+高效跑实验发论文

代码地址:https://github.com/lyuwenyu/RT-DETR
论文地址:https://arxiv.org/pdf/2304.08069
目录
摘要:YOLO 系列因速度与精度的折中在实时检测中广受欢迎,但其速度和精度会被 NMS 负面影响。近期端到端的 Transformer 检测器(DETR)可去掉 NMS,但高算力开销限制其实用性,反而难以发挥无 NMS 的优势。本文提出 RT-DETR,据我们所知首个实时端到端检测器。我们分两步构建:先“提速不掉点”,再“保速提精度”。具体来说:
设计了高效混合编码器,通过将“尺度内交互”和“跨尺度融合”解耦,加速多尺度特征处理;
提出最小不确定性查询选择,为解码器提供更高质量的初始查询,提高精度;
RT-DETR 可通过调节解码层数实现无需重训的速度调参。
在 COCO 上,RT-DETR-R50/R101 分别达到 53.1/54.3 AP,在 T4 上 108/74 FPS,在速度与精度上均超越以往 SOTA YOLO。R50 还比 DINO-R50 高 2.2 AP、约 21× FPS。经 Objects365 预训练后,R50/R101 提升至 55.3/56.2 AP。摘要点明两大矛盾:YOLO 快但受 NMS 牵制;DETR 端到端但太慢。RT-DETR 的贡献一“快”(混合编码器)一“准”(不确定性最小查询),再加灵活推理深度调节,覆盖真实工业场景的速度/精度需求。
1 引言(Introduction)
实时目标检测是一个重要的研究领域,具有广泛的应用,如目标跟踪[43]、视频监控[28]和自动驾驶[2]等。现有的实时检测器通常采用基于CNN的架构,其中最著名的是YOLO检测器[1, 10 - 12, 15, 16, 25, 30, 38, 40],因为它们在速度和准确性之间取得了合理的平衡。然而,这些检测器通常需要非极大值抑制(NMS)进行后处理,这不仅减慢了推理速度,还引入了超参数,导致速度和准确性的不稳定。此外,考虑到不同场景对召回率和准确性的重视程度不同,有必要仔细选择合适的NMS阈值,这阻碍了实时检测器的发展。
最近,基于端到端Transformer的检测器(DETRs)[4, 17, 23, 27, 36, 39, 44, 45]因其精简的架构和消除了手工制作的组件而受到学术界的广泛关注。然而,它们的高计算成本使其无法满足实时检测的要求,因此无NMS的架构并没有显示出推理速度的优势。这促使我们探索DETRs是否可以扩展到实时场景,并在速度和准确性上超越先进的YOLO检测器,消除NMS对实时目标检测造成的延迟。
为了实现上述目标,我们重新思考DETRs,并对关键组件进行详细分析,以减少不必要的计算冗余并进一步提高准确性。对于前者,我们观察到,尽管引入多尺度特征有助于加速训练收敛[45],但它导致输入编码器的序列长度显著增加。多尺度特征交互导致的高计算成本使Transformer编码器成为计算瓶颈。因此,实现实时DETR需要重新设计编码器。对于后者,先前的工作[42, 44, 45]表明,难以优化的对象查询阻碍了DETRs的性能,并提出了查询选择方案,用编码器特征代替普通的可学习嵌入。然而,我们观察到,当前的查询选择直接采用分类分数进行选择,忽略了检测器需要同时对对象的类别和位置进行建模的事实,这两者都决定了特征的质量。这不可避免地导致具有低定位置信度的编码器特征被选为初始查询,从而导致相当程度的不确定性并损害DETRs的性能。我们将查询初始化视为进一步提高性能的突破口。
在本文中,我们提出了实时检测Transformer(RT - DETR),据我们所知,这是第一个实时端到端目标检测器。为了快速处理多尺度特征,我们设计了一个高效的混合编码器来取代普通的Transformer编码器,通过解耦不同尺度特征的尺度内交互和跨尺度融合,显著提高了推理速度。为了避免具有低定位置信度的编码器特征被选为对象查询,我们提出了不确定性最小的查询选择,通过明确优化不确定性为解码器提供高质量的初始查询,从而提高准确性。此外,由于DETR的多层解码器架构,RT - DETR支持灵活的速度调整,以适应各种实时场景而无需重新训练。
RT - DETR在速度和准确性之间实现了理想的平衡。具体来说,RT - DETR - R50在COCO val2017上实现了53.1%的AP,在T4 GPU上达到108 FPS,而RT - DETR - R101实现了54.3%的AP和74 FPS,在速度和准确性上均优于先前先进的YOLO检测器的L和X模型,如图1所示。我们还通过缩小编码器和解码器并使用更小的骨干网络开发了缩放的RT - DETR,其性能优于更轻量级的YOLO检测器(S和M模型)。此外,RT - DETR - R50在准确性上比DINO - Deformable - DETR - R50高出2.2%的AP(53.1% AP对50.9% AP),在FPS上高出约21倍(108 FPS对5 FPS),显著提高了DETRs的准确性和速度。在使用Objects365 [35]进行预训练后,RT - DETR - R50 / R101实现了55.3% / 56.2%的AP,实现了令人惊讶的性能提升。更多的实验结果在附录中提供。

如图1所示。我们还通过缩小编码器和解码器并使用更小的骨干网络开发了缩放的RT - DETR,其性能优于更轻量级的YOLO检测器(S和M模型)。
主要贡献总结如下:
(i).我们提出了第一个名为RTDETR的实时端到端目标检测器,它不仅在速度和准确性方面优于先前先进的YOLO检测器,而且消除了NMS后处理对实时目标检测造成的负面影响。
(ii).我们定量分析了NMS对YOLO检测器速度和准确性的影响,并建立了一个端到端速度基准来测试实时检测器的端到端推理速度。
(iii).所提出的RT-DETR支持通过调整decoder层数来灵活调整速度,以适应各种场景,而无需重新训练。
2 相关工作(Related Work)
2.1 实时目标检测器
YOLOv1 [31]是第一个基于CNN的一阶段目标检测器,实现了真正的实时目标检测。经过多年的不断发展,YOLO检测器已经超越了其他一阶段目标检测器[21, 24],成为了实时目标检测器的代名词。YOLO检测器可分为两类:基于锚点的[1, 11, 15, 25, 29, 30, 37, 38]和无锚点的[10, 12, 16, 40],它们在速度和准确性之间取得了合理的平衡,并广泛应用于各种实际场景中。
2.2 端到端目标检测器
端到端目标检测器以其精简的流水线而闻名。Carion等人[4]首次提出了基于Transformer的端到端检测器DETR,因其独特的特性而受到广泛关注。特别是,DETR消除了手工制作的锚点和NMS组件,而是采用二分匹配并直接预测一对一的对象集。尽管有明显的优势,但DETR存在一些问题:训练收敛缓慢、计算成本高和查询难以优化。许多DETR变体被提出以解决这些问题。 加速收敛 :Deformable - DETR [45]通过使用多尺度特征增强注意力机制的效率来加速训练收敛。DAB - DETR [23]和DN - DETR [17]通过引入迭代精化方案和去噪训练进一步提高性能。Group - DETR [5]引入了组式的一对多分配。 降低计算成本 :Efficient DETR [42]和Sparse DETR [33]通过减少编码器和解码器层数或更新的查询数量来降低计算成本。Lite DETR [18]通过交错方式减少低级特征的更新频率来提高编码器的效率。 优化查询初始化 :Conditional DETR [27]和Anchor DETR [39]降低了查询的优化难度。Zhu等人[45]为两阶段DETR提出了查询选择,DINO [44]建议混合查询选择以帮助更好地初始化查询。当前的DETR仍然计算量很大,且不是为实时检测而设计的。我们的RT - DETR大力探索降低计算成本,并尝试优化查询初始化,优于最先进的实时检测器。
实时检测:YOLO 从 anchor-based 到 anchor-free,速度/精度折中优,但普遍需要 NMS,产生大量重叠框需后处理。
端到端检测:DETR 通过匈牙利匹配一对一预测,去掉 anchor 与 NMS;但存在收敛慢、算力大、queries 难优化等问题,于是出现 Deformable-DETR、DAB、DN、DINO 等改进。然而这些改进仍未以“实时”为目标。RT-DETR 重点在降算力和优化查询初始化。
铺垫了两条路线的优缺点,为“端到端也能实时”埋了伏笔。
3 检测器的端到端速度
3.1 NMS 分析
NMS 依赖两个阈值:置信度与 IoU。推理耗时取决于保留下来需两两计算 IoU 的框数量以及阈值设置。实测(YOLOv5/YOLOv8):
-
置信度阈越高 → 先过滤更多框 → NMS 更快(但可能漏检)
-
IoU 阈越高 → 每轮淘汰更少 → NMS 更慢
并且不同阈值对 AP 与时间影响显著(表1给出在 T4+TensorRT FP16 的核级耗时),最佳 AP 往往对应更高的 NMS 时间。很多 YOLO 速度报告不含 NMS 时间,因而需要端到端速度基准。


关键点:NMS 是输入与阈值敏感的“黑盒瓶颈”,让“报的速度”与“真实端到端速度”不一致;也解释了 YOLO 在实际部署中需要调阈值的工程负担。图2直观显示低置信度阈时框数量剧增。
3.2 端到端速度基准
为了能够公平地比较各种实时检测器的端到端速度,我们建立了一个端到端速度基准。考虑到NMS的执行时间受输入的影响,有必要选择一个基准数据集并计算多张图像的平均执行时间。我们选择COCO val2017 [20]作为基准数据集,并为上述的YOLO检测器附加TensorRT的NMS后处理插件。具体来说,我们根据基准数据集上对应准确性的NMS阈值测试检测器的平均推理时间,排除I/O和MemoryCopy操作。我们使用该基准测试基于锚点的检测器YOLOv5 [11]和YOLOv7 [38],以及无锚点的检测器PP - YOLOE [40]、YOLOv6 [16]和YOLOv8 [12]在T4 GPU上使用TensorRT FP16的端到端速度。根据结果(参见表2),我们得出结论,对于YOLO检测器,具有同等准确性的无锚点检测器优于基于锚点的检测器,因为前者需要的NMS时间更少。原因是基于锚点的检测器比无锚点的检测器产生更多的预测框(在我们测试的检测器中多出三倍)。

4. 实时DETR(RT-DETR)
4.1 模型概述
RT-DETR由一个backbone、一个高效的混合编码器和一个带有辅助预测头的Transformer解码器组成。RT-DETR的概述如图4所示。具体来说,我们将backbone最后三个阶段的特征{S3, S4, S5}输入到编码器中。高效的混合编码器通过尺度内特征交互和跨尺度特征融合将多尺度特征转换为图像特征序列(参见第4.2节)。随后,采用不确定性最小化查询选择来选择固定数量的编码器特征,作为解码器的初始对象查询(参见第4.3节)。最后,带有辅助预测头的解码器迭代地优化对象查询,以生成类别和框。

图 4. RT-DETR 概述。我们将主干网络的最后三个阶段的特征输入到 encoder 中。高效的混合 encoder 通过基于注意力的同尺度特征交互 (Attention-based Intra-scale Feature Interaction, AIFI) 和基于 CNN 的跨尺度特征融合 (CNN-based Cross-scale Feature Fusion, CCFF) 将多尺度特征转换为图像特征序列。然后,不确定性最小化查询选择会选择固定数量的 encoder 特征作为 decoder 的初始目标查询。最后,带有辅助预测头的 decoder 迭代地优化目标查询以生成类别和框。
4.2 高效混合编码器(Hybrid Encoder)
多尺度特征让编码器序列剧长,尽管可用可变形注意力,但编码器仍是计算瓶颈(文献显示:Encoder 贡献 49% GFLOPs,仅带来 11% AP)。直觉:高层(S5)含语义,低层(S3/S4)已被高层“提炼过”,没必要把所有尺度一股脑做 Transformer 交互。

为此,作者设计一组变体(图3、表3)来验证:
-
A→B:加入单尺度 Transformer(各尺度共享)做尺度内交互,再拼接输出
-
B→C:在 B 基础上再加多尺度 Transformer做内交互+跨融合同时进行
-
C→D:将“尺度内交互”与“跨尺度融合”解耦:前者用单尺度 Transformer,后者用 PANet 风格自顶向下/自底向上的卷积融合
-
D→DS5:只在最高层 S5做自注意力(低层不做),精度更高、时延更低;

-
D→E(最终):增强 D:AIFI(注意力做 S5 的尺度内交互) + CCFF(卷积堆的跨尺度融合,含 1×1 调维、RepBlock 融合、逐级相加;见图5)。
公式:将 S5 flatten 进 AIFI 得 F5,再与 S3/S4 进入 CCFF 融合得到 O。

解析表3得出结论如下:
-
B 相比 A:AP +1.9,延迟 +54% → 说明“尺度内交互重要但贵”
-
C 相比 B:AP +0.7,延迟 +20% → “跨尺度融合也必要,但多尺度 Transformer 更贵”
-
D 相比 C:AP +0.8,延迟 -8% → “解耦”带来又快又准
-
DS5 相比 D:AP +0.4,延迟 -35% → “低层别做自注意力”
-
E(最终 Hybrid)相对 D:AP +1.5,参数 +20% 但延迟 -24% → 性价比最佳
这为“只在高层做注意力 + 用卷积做跨尺度”给出了实证支撑。
4.3 最小不确定性查询选择
以往两阶段/混合查询选择多按分类分选 Top-K 编码器特征作为初始 query(或位置),忽略定位质量。本文将“特征质量”视为与分类与定位共同相关的潜变量,引入不确定性 U(分类分布与定位分布的差异度量),并把 U 纳入损失优化,使被选中的特征的分类与定位一致性更高,从而得到更高质量的初始 queries(式(2)(3))。

有效性分析 :为了分析不确定性最小的查询选择的有效性,我们可视化了在COCO val2017上所选特征的分类分数和IoU分数,如图6所示。我们绘制了分类分数大于0.5的散点图。紫色和绿色点分别表示从使用不确定性最小的查询选择和普通查询选择训练的模型中选择的特征。
散点图最显著的特征是紫色点集中在图的右上角,而绿色点集中在右下角。这表明不确定性最小的查询选择产生了更多高质量的编码器特征。此外,我们对两种查询选择方案所选的编码器特征进行了定量分析。紫色点比绿色点多138%,即更多绿色点的分类分数小于或等于0.5,这些可以被认为是低质量特征。并且紫色点比绿色点多120%,其分类分数和IoU分数都大于0.5。从密度曲线也可以得出相同的结论,其中紫色和绿色之间的差距在图的右上角最为明显。定量结果进一步表明,不确定性最小的查询选择为查询提供了更多准确分类和精确定位的特征,从而提高了检测器的准确性(参见第5.3节)。

Figure 6. 所选encoder特征的分类和IoU分数。紫色和绿色点分别代表通过不确定性最小化查询选择和普通查询选择训练的模型中所选的特征。
4.4 可缩放的RT-DETR
由于实时检测器通常提供不同规模的模型以适应不同的场景,RT - DETR也支持灵活的缩放。具体来说,对于混合编码器,我们通过调整嵌入维度和通道数量来控制宽度,通过调整Transformer层数和RepBlocks的数量来控制深度。解码器的宽度和深度可以通过操纵对象查询的数量和解码器层数来控制。此外,RT - DETR的速度通过调整解码器层数支持灵活调整。我们观察到,在末尾去除一些解码器层对准确性的影响最小,但大大提高了推理速度(参见第5.4节)。我们将配备ResNet50和ResNet101 [13, 14]的RT - DETR与YOLO检测器的L和X模型进行比较。可以通过应用其他更小的(例如ResNet18/34)或可扩展的(例如CSPResNet [40])骨干网络以及缩放的编码器和解码器来设计更轻的RT - DETR。我们在附录中将缩放的RT - DETR与更轻的(S和M)YOLO检测器进行了比较,它们在速度和准确性上都优于所有S和M模型。
5. 实验(Experiments)
5.1 与SOTA方法对比
表2对比了RT-DETR与现有主流实时检测器(YOLOv5/6/7/8等)和端到端检测器(各类DETRs)的表现。RT-DETR和YOLO系列统一输入尺寸为(640,640),其他DETRs为(800,1333)。
FPS是在T4 GPU(TensorRT FP16)下实测的端到端推理速度。RT-DETR-R50取得了53.1%的AP和108 FPS,RT-DETR-R101取得了54.3%的AP和74 FPS。无论在速度还是精度上,RT-DETR均超越了同规模的SOTA YOLO系列和DETR系列。

与实时检测器的对比:
-
RT-DETR-R50 对比 YOLOv5-L / PP-YOLOE-L / YOLOv6-L,AP分别提升了 4.1% / 1.7% / 0.3%,FPS提升了 100% / 14.9% / 9.1%,参数量分别减少 8.7% / 19.2% / 28.8%。
-
RT-DETR-R101 对比 YOLOv5-X / PP-YOLOE-X,AP提升 3.6% / 2.0%,FPS提升 72.1% / 23.3%,参数量减少 11.6% / 22.4%。
-
RT-DETR-R50 相比 YOLOv8-L,AP高 0.2%,FPS高 52.1%;相比 YOLOv7-L,AP高 1.9%,FPS高 96.4%。
-
RT-DETR-R101 相比 YOLOv8-X,AP高 0.4%,FPS高 48%;相比 YOLOv7-X,AP高 1.4%,FPS高 64.4%。
与DETR系列的对比:
-
RT-DETR-R50 相比 DINO-Deformable-DETR-R50,AP高 2.2%,FPS快 21倍(108 vs 5)。
实验小结:
RT-DETR在工业部署场景下,首次实现了在速度和精度上全面超越YOLO和DETR系列,是真正意义上的SOTA实时端到端检测器。
5.2 混合编码器消融实验
作者设计了一组编码器变体(A~E),评估AP、参数量、推理延迟。

表3分析:
-
从A到E,AP逐步提升,延迟在合理范围内波动。最终E变体AP最高且延迟控制在9.3ms。
-
DS5变体证明了只对高层语义特征做注意力,低层用卷积融合更高效,既减少延迟又提升精度。
-
最终混合编码器结构(AIFI+CCFF)实现了速度与精度的最佳平衡,是RT-DETR实时化的关键。
5.3 查询选择消融实验
对比“传统分类分数top-K选查询(Vanilla)”与“最小不确定性查询选择(Uncertainty-minimal)”两种方式:

表4分析:
-
不确定性最小化查询策略,使高质量查询比例翻倍(0.30→0.67),AP提升0.8%。
-
可视化发现,紫色点(新方法)明显集中在“分类和定位都可靠”区域,绿色点(旧方法)分布更离散。
-
改进的查询选择策略,是RT-DETR高精度的重要保证,显著优于传统方法。
5.4 解码器消融实验
作者研究了解码器层数对性能与延迟的影响,发现解码器层数减少,推理速度提升但精度损失很小:

表5分析:
-
减少1~2层解码器,对精度影响很小但延迟降低显著,可根据实际部署灵活裁剪,无需重新训练。
-
极大提升了模型的工业适应性和部署弹性。
5.5 大规模预训练实验
-
在Objects365上预训练后再微调COCO,RT-DETR的AP进一步提升2%左右(R50达到55.3%,R101达到56.2%)。
-
证明RT-DETR可与大规模数据配合持续突破性能瓶颈,具备SOTA级成长空间。
6. 局限性与讨论
局限性:
虽然我们提出的RT-DETR在速度和精度上都超过了同规模的最先进实时检测器和端到端检测器,但它和其他DETR系列一样,在小目标检测方面表现仍略逊于最强的实时检测器。根据表2,RT-DETR-R50在小目标(APs)上比YOLOv8-L低0.5%;RT-DETR-R101比YOLOv7-X低0.9%。我们希望未来能进一步解决这一问题。
讨论:
当前的大型DETR模型已在COCO test-dev榜单上展现出极强的性能。RT-DETR在不同模型规模下保持了与主流DETR解码器结构的一致性,这意味着可以通过蒸馏大模型(如高精度预训练DETR),进一步提升RT-DETR的轻量级模型性能。我们认为这是RT-DETR相较其他实时检测器的一大优势,也为未来研究提供了有趣的方向。
7. 结论 Conclusion
本文提出了实时端到端检测器——RT-DETR,首次将DETR系列成功拓展到实时检测场景,并实现了SOTA性能。RT-DETR包含两项关键创新:高效混合编码器(可快速处理多尺度特征)与最小不确定性查询选择机制(提升初始查询质量)。此外,RT-DETR支持无需重新训练即可灵活调节速度,彻底消除了传统NMS两大超参数带来的不便,极大提升了实际应用价值。结合模型伸缩策略,RT-DETR为实时目标检测提供了超越YOLO系列的全新技术路径,为多样化应用场景开辟了新可能。我们期待RT-DETR能够真正应用于工业实践。
8 可视化对比

图A.YOLOv8-L[12]模型在不同NMS阈值下的预测可视化结果

图B.RT-DETR-R50预测结果在不同评分阈值下的可视化。
129

被折叠的 条评论
为什么被折叠?



