RT-DETR_R50VD 项目介绍
背景介绍
RT-DETR 是一种实时端到端目标检测器,其全名是 Real-Time DEtection TRansformer。它的设计灵感来源于著名的 YOLO 系列,YOLO 系列由于在速度和准确性之间的合理平衡,成为实时目标检测领域的热门框架。然而,YOLO 在速度和精度方面都受到非极大值抑制(NMS)步骤的负面影响。
最近,基于 Transformer 的检测器(如 DETR)为取消 NMS 提供了一个替代方案,但其高计算成本限制了其实用性。RT-DETR 正是在这样的背景下被提出的,事实上,它也是首个解决这一困境的实时端到端目标检测器。
项目亮点
RT-DETR 通过两个步骤进行构建:首先提升速度的同时保持精度,其次在提升精度的同时保持速度。具体方法包括:
- 设计了一种高效的混合编码器,通过分离尺度内交互和跨尺度融合来快速处理多尺度特征,提高了速度。
- 提出了最小不确定性查询选择器,为解码器提供高质量的初始查询,提升了精度。
- 支持灵活的速度调整,可以根据不同场景调整解码器层数,而无需重新训练。
模型性能
RT-DETR-R50 和 R101 在 COCO 数据集上分别达到了 53.1% 和 54.3% 的 AP(平均精度),在 T4 GPU 上分别可以达到 108 和 74 的 FPS(每秒帧数)。相比以前的先进 YOLO 模型,在速度和精度上都得到了超越。此外,RT-DETR-R50 在准确性上超越了 DINO-R50 2.2% 的 AP,并在 FPS 上快了约 21 倍。在用 Objects365 数据集进行预训练后,RT-DETR-R50 和 R101 达到了更高的 AP。
使用指南
要开始使用 RT-DETR,可以通过 Python 代码从预训练模型生成物体检测结果。模型使用 COCO 和 Objects365 数据集进行训练和评估,涉及标准的 COCO 度量,包括 AP、AP50、AP75 等。
训练细节
RT-DETR 模型利用 COCO 2017 物体检测数据集进行训练,该数据集包含 118k 张标注图像用于训练和 5k 张用于验证。训练过程中,图像被调整为 640x640 像素,并根据特定的均值和标准差进行重新缩放。
模型架构
RT-DETR 的架构包括一个高效混合编码器,它将多尺度特征通过基于注意力的尺度内特征交互和基于卷积的跨尺度特征融合转换为图像特征序列。接下来,不确定性最小的查询选择器会选择固定数量的编码器特征作为解码器的初始查询,最后解码器通过辅助预测头逐次优化这些查询以生成物体类别和边界框。
相关链接
- 项目主页: RT-DETR 项目页面
- 源代码库: GitHub Repository
- 论文链接: Arxiv
- 演示: RT-DETR Tracking
参考文献
如果需要引用本项目的论文,您可以使用以下 BibTex:
@misc{lv2023detrs,
title={DETRs Beat YOLOs on Real-time Object Detection},
author={Yian Zhao and Wenyu Lv and Shangliang Xu and Jinman Wei and Guanzhong Wang and Qingqing Dang and Yi Liu and Jie Chen},
year={2023},
eprint={2304.08069},
archivePrefix={arXiv},
primaryClass={cs.CV}
}
通过这篇介绍,相信读者可以更好地理解和使用 RT-DETR 模型进行高效的目标检测任务。