RTDETR阅读笔记

RTDETR阅读笔记

摘要

  • DETR的高计算成本限制了它们的实际应用,并阻碍了它们充分利用无需后处理(例如非最大抑制NMS)的优势。
  • 文中首先分析了NMS对实施目标检测的精度和速度的负面影响。(RTDETR是第一个实时端到端的目标检测器。具体来说,我们设计了一个高效的混合编码器,通过解耦内部尺度交互和跨尺度融合来有效处理多尺度特征,并提出了IoU感知查询选择,通过向解码器提供更高质量的初始对象查询来进一步提高性能。此外,我们提出的检测器支持通过使用不同的解码器层来灵活调整推理速度,而无需重新训练,这有助于在各种实时场景中的实际应用。)

Introduction

  • 基于变换器的对象检测器(DETR)自提出以来就受到了学术界的广泛关注,原因在于它消除了各种手工制作的组件,例如非最大抑制(NMS)

  • 一般实时检测通常都需要NMS做后续处理,且NMS难以优化,并且鲁棒性不够,还导致推理时间的浪费

  • DETR有不需要NMS的优势,但是其具有高计算成本问题,限制了DETR的实际应用,并导致无法充分利用它们的优势。

  • 为了实现实时对象检测,我们设计了一个高效的混合编码器来替代原始的变换器编码器。通过解耦多尺度特征的内部尺度交互和跨尺度融合,编码器能够有效处理不同尺度的特征。

  • 此外,之前的研究[40、24]表明,解码器的对象查询初始化方案对检测性能至关重要。为了进一步提高性能,我们提出了IoU感知查询选择,通过在训练期间提供IoU约束,向解码器提供更高质量的初始对象查询。

[40] Yingming Wang, Xiangyu Zhang, Tong Yang, and Jian Sun. Anchor detr: Query design for transformer-based detector. In Proceedings of the AAAI conference on artificial intelligence, volume 36, pages 2567–2575, 2022. 1, 2, 3, 6, 7

[24] Shilong Liu, Feng Li, Hao Zhang, Xiao Yang, Xianbiao Qi, Hang Su, Jun Zhu, and Lei Zhang. Dab-detr: Dynamic anchor boxes are better queries for detr. arXiv preprint arXiv:2201.12329, 2022. 1, 2, 3, 6, 7

本文的主要贡献总结如下:(i)我们提出了第一个实时端到端对象检测器,不仅在速度和精度上超越了当前最先进的实时检测器,而且不需要后处理,因此其推理速度没有延迟并保持稳定;(ii)我们详细分析了NMS对实时检测器的影响,并从后处理的角度得出关于当前实时检测器的结论;(iii)我们的工作为当前端到端检测器的实时实现提供了一种可行的解决方案,所提出的检测器可以通过使用不同的解码器层灵活调整推理速度,无需重新训练,这在现有的实时检测器中很难实现。

相关工作

2.1实时目标检测

YOLO的瓶颈目前是NMS,NMS的超参数和对检测器精度、速度有显著影响,所以NMS或许并不适合存在于实时检测的网络模型当中。

2.2 End-to-End目标检测

尽管DETR有明显的优势,但它仍存在两个主要问题:训练收敛慢和查询优化难。已经提出了许多DETR变体来解决这些问题。具体来说,Deformable-DETR[49]通过增强注意力机制的效率,使用多尺度特征加速训练收敛。Conditional DETR[27]和Anchor DETR[40]减少了查询的优化难度。DAB-DETR[24]引入了4D参考点,并逐层迭代优化预测框。DN-DETR[20]通过引入查询去噪来加速训练收敛。Group-DETR[6]通过引入分组式一对多分配来加速训练。DINO[46]在前人工作的基础上取得了最先进的结果。尽管我们在不断改进DETR的组件,但我们的目标不仅是进一步提高性能,还要创建一个实时的端到端对象检测器。

2.3. 多尺度特征在对象检测中的应用。 现代对象检测器已经展示了利用多尺度特征来提高性能的重要性,特别是对于小型对象。FPN[22]引入了一个特征金字塔网络,融合了相邻尺度的特征。随后的工作[25、11、35、13、18、38、14]扩展并增强了这一结构,并被广泛应用于实时对象检测器中。朱等人[49]首次将多尺度特征引入DETR,提高了性能和收敛速度,但这也导致了DETR的计算成本显著增加。尽管变形注意力机制在一定程度上缓解了计算成本,但多尺度特征的融合仍然导致高计算负担。为了解决这个问题,一些工作尝试设计计算效率高的DETR。Efficient DETR[43]通过用密集先验初始化对象查询,减少了编码器和解码器层的数量。Sparse DETR[32]选择性地更新预计会被解码器引用的编码器标记,从而减少计算开销。Lite DETR[19]通过以交错方式减少低层特征的更新频率,提高了编码器的效率。尽管这些研究降低了DETR的计算成本,但这些工作的目标并不是将DETR推广为实时检测器。

End-to-end Speed of Detectors

3.1 Analysis of NMS

NMS算法需要俩个超参数:score threshold and IOU threshold

NMS所消耗的时间绝对多数取决于俩个超参数的设置以及预测boxes的数量

NMS算法非常容易收到Score threshold的影响
RTDETR阅读笔记_第1张图片

3.2. End-to-end Speed Benchmark

  • Anchor free在相当精度的情况下比基于锚点的检测器性能更好,因为前者的后处理时间比后者少得多。因为Anchor-based产生的框更多,NMS处理的时间更多。

为了公平比较各种实时检测器的端到端推理速度,我们建立了一个端到端速度测试基准。考虑到NMS的执行时间可能受输入图像的影响,选择一个基准数据集并计算多个图像的平均执行时间是必要的。这个基准采用COCO val2017作为默认数据集,并为需要后处理的实时检测器附加TensorRT的NMS后处理插件。具体来说,我们根据在基准数据集上取得的相应精度的超参数测试检测器的平均推理时间,并排除IO和内存复制操作。我们利用这个基准测试了基于锚点的检测器YOLOv5[13]和YOLOv7[38]以及无锚点的检测器PP-YOLOE[41]、YOLOv6[18]和YOLOv8[14]在T4 GPU上的端到端速度。测试结果显示在表2中。根据结果,我们得出结论,对于需要NMS后处理的实时检测器,无锚点检测器在具有相当精度的情况下比基于锚点的检测器性能更好,因为前者的后处理时间比后者少得多,这在之前的工作中被忽略了。这种现象的原因是基于锚点的检测器比无锚点检测器产生更多的预测框(在我们测试的检测器中多出三倍)。

RTDETR阅读笔记_第2张图片

4.The Real-time DETR

4.1. Model Overview

  • RT-DETR consists of Backbone, a hybrid encoder, a transformer decoder with auxiliary prediction heads。
    RTDETR阅读笔记_第3张图片

使用Backbone的S3, S4, S5最后三层作为encoder的输入。

hybrid encoder通过内部尺度交互和跨尺度融合将多尺度特征转换为a sequence of image features。

IOU-aware query从编码器输出序列中选择固定数量的图像特征,作为解码器的初始对象查询

最后,带有辅助预测头的解码器迭代优化对象查询,生成框和置信度分数。

4.2. Efficient Hybrid Encoder

Computational bottleneck analysis.

  • 高级特征都是从包含丰富语义信息的低级特征中提出得到的。直观上,对连接的多尺度特征进行特征交互是多余的。

为了验证这个观点,我们重新思考了编码器结构,并设计了一系列具有不同编码器的变体,如图5所示。这组变体通过将多尺度特征交互解耦为内部尺度交互和跨尺度融合的两步操作,逐渐提高模型精度的同时显著降低了计算成本(详细指标参见表3)。我们首先移除DINO-R50[46]中的多尺度变换器编码器作为基线A。接下来,插入不同形式的编码器以产生一系列基于基线A的变体,具体如下:

  • A → B:变体B插入了单尺度变换器编码器,它使用一层变换器块(One layer of transformer block.)。每个尺度的特征共享编码器进行内部尺度特征交互,然后将输出的多尺度特征进行连接。
  • B → C:变体C在B的基础上引入了跨尺度特征融合,并将连接的多尺度特征输入编码器进行特征交互。
  • C → D:变体D将多尺度特征的内部尺度交互和跨尺度融合解耦。首先,使用单尺度变换器编码器进行内部尺度交互,然后利用类似PANet[25]的结构进行跨尺度融合。
  • D → E:变体E在D的基础上进一步优化了多尺度特征的内部尺度交互和跨尺度融合,采用了我们设计的高效混合编码器(详见下文)。

RTDETR阅读笔记_第4张图片
RTDETR阅读笔记_第5张图片

Hybrid design:

the Attention-based Intra-scale Feature Interaction (AIFI) module and the CNN-based Cross-scale Feature-fusion Module (CCFM).

AIFI further reduces computational redundancy based on variant D, which only performs intra-scale interaction on S5.(变体D,如果只在S5进行intra-scale,还可以减少计算冗余)

我们认为,将自注意力操作应用于含有丰富语义概念的高层特征可以捕获图像中概念实体之间的联系,这有助于后续模块检测和识别图像中的对象。同时,由于缺乏语义概念以及与高层特征交互的重复和混淆风险,低层特征的内部尺度交互是不必要的。

为了验证这一观点,我们在变体D中只在S5上执行内部尺度交互,实验结果报告在表3中,参见DS5行。与普通变体D相比,DS5显著减少了延迟(快了35%),但提高了精度(AP提高了0.4%)。这个结论对于实时检测器的设计至关重要。

4.3.IOU-aware Query Selection

  • 在DETR中,object query十一组可学习的embeding。通过解码器优化,并通过预测投影射到分类分数和边界框。然而,这些对象查询难以解释和优化,因为它们没有明确的物理含义。

  • 后续都是提出了对object query初始化的改进,们的共同点是利用分类分数从编码器中选择前K个特征来初始化对象查询(或仅位置查询[46])。然而,由于分类分数和位置置信度的分布不一致,一些预测框具有高分类分数但与GT(Ground Truth,真实框)框不接近,导致选择了具有高分类分数但低IoU分数的框,而丢弃了具有低分类分数但高IoU分数的框。这损害了检测器的性能。

  • 本文提出了IoU感知查询选择(IoU-aware Query Selection),在训练过程中通过约束模型对具有高IoU分数的特征产生高分类分数,对具有低IoU分数的特征产生低分类分数。

  • 根据分类分数由模型选择的前K个编码器特征对应的预测框既具有高分类分数又具有高IoU分数。

Effectiveness analysis

RTDETR阅读笔记_第6张图片

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

此外,我们定量分析了这两种点的分布特征。图中蓝点比红点多138%,即更多的红点分类分数小于或等于0.5,可以被认为是低质量特征。然后我们分析了分类分数大于0.5的特征的IoU分数,发现IoU分数大于0.5的蓝点比红点多120%。定量结果进一步表明,IoU感知查询选择可以为对象查询提供更多具有准确分类(高分类分数)和精确位置(高IoU分数)的编码器特征,从而提高检测器的准确性。详细的定量结果将在第5.4节中呈现。

4.4. Scaled RT-DETR

为了提供可扩展版本的RT-DETR,我们用HGNetv2替换了ResNet[16]主干网络。我们使用深度乘数和宽度乘数共同缩放主干网络和混合编码器。因此,我们得到了两个版本的RT-DETR,它们在参数数量和FPS上有所不同。对于我们的混合编码器,我们通过调整CCFM中的RepBlocks数量和编码器的嵌入维数来控制深度乘数和宽度乘数。值得注意的是,我们提出的不同规模的RT-DETR维持了一个同质的解码器,这有助于使用高精度大型DETR模型[7、31、46、50、3、42]对轻量级检测器进行蒸馏。这将是一个可探索的未来方向。

你可能感兴趣的:(论文阅读笔记,笔记,目标检测,人工智能,论文阅读,深度学习)