在这里插入图片描述

RT-DETR(Real-Time Detection Transformer)是一种目标检测模型,具有高效、准确的特点,其详细介绍如下:

  1. 核心设计理念
    • 高效的混合编码器:设计了一个高效的混合编码器(Hybrid Encoder),它通过解耦尺度内特征交互(AIFI)和跨尺度特征融合(CCFM)来高效处理多尺度特征。这种设计能够在保持较高检测精度的同时,降低模型的计算复杂度,提高模型的运行速度。
    • IOU感知的查询选择:提出了IOU感知的查询选择机制(IOU-Aware Query Selection),用于优化解码器查询的初始化。该机制考虑了预测框与真实框之间的IOU信息,使得模型能够选择更优质的查询,从而提高检测的准确性,尤其是对于那些分类分数和IOU不一致的情况,该机制能够提供更高质量的解码器特征。
    • 灵活的推理速度调整:支持使用不同的解码器层来灵活调整推理速度,而不需要重新训练。这使得模型可以根据不同的硬件设备和应用场景,在保证一定检测精度的前提下,选择合适的推理速度,方便了模型的实际应用。
  2. 模型结构
    • Backbone:采用了经典的ResNet和百度自研的HGNet-V2两种骨干网络,并且骨干网络是可缩放的,有不同的版本以适应不同的需求。与其他DETR类检测器使用最后4个阶段输出不同,RT-DETR为了提速只使用最后3个阶段的输出,这也符合YOLO系列的风格特点。
    • Neck:即上述的混合编码器,相当于DETR中的编码器,类似于经典检测模型常用的FPN(Feature Pyramid Network)结构。通过对编码器的改进,减少了计算量的冗余,提高了特征提取的效率。
    • Transformer:名为RT-DETR Transformer,是基于Dino Transformer中的解码器改动而来,改动相对不大。
    • Head和Loss:与Dino Head基本一样,整个模型的颈部(Neck)、Transformer和检测头(Head)构成了一个完整的Transformer结构。
  3. 性能表现
    • 在速度方面,RT-DETR表现出色,例如RT-DETR-L在COCO val2017数据集上能够达到114FPS的速度,而RT-DETR-X则能达到74FPS的速度。
    • 在精度方面,RT-DETR也具有较高的检测精度,如RT-DETR-L在COCO val2017上实现了53.0%的AP(Average Precision),RT-DETR-X实现了54.8%的AP,在速度和精度的综合表现上优于相同规模的YOLO检测器。

1.RT-DETR整体网络结构

在这里插入图片描述

2. backbone模块

backbone之一是对ResNet的魔改,命名为presnet,其主要修改包含两个方向:

  • 第一,把开始阶段的7x7卷积改为三组3x3卷积,通过调整步长使得输出shape与原来的7x7保持一致。
  • 第二,把resnetblock中1x1,步长为2的池化模块替换为步长为2的全局池化,然后1x1调整通道数。
    在这里插入图片描述

3. encode模块

  • encode对应结构图中efficient hybrid encoder
    在这里插入图片描述
    在这里插入图片描述
  • AIFI编码器TransformerEncoderLayer
    在这里插入图片描述
  • CCFM可以认为就是个PAFPN。
    在这里插入图片描述
  • Fusion模块
    在这里插入图片描述

4. decode模块

  • decode部分比encode复杂很多,整合多种detr相关技术
    在这里插入图片描述
  • 解析get_decoder_input() : IOU-aware+decode输入,解决类别置信度与位置置信度表现不一样的问题.
    在这里插入图片描述
  • decoder模块模块来自Deformable DETR.
    – memory_mask: 哪写memory中的query是pading出来的.
    – score_head: ModuleList, 对每个docoder层输出进行类别预测
    – bbox_head: ModuleList, 对每个docoder层输出进行坐标预测
    在这里插入图片描述
  • 解析layer层主要模块Multi-scale Deformable-Attention
    在这里插入图片描述
Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐