RTDETRv2 与 YOLOv9#
计算机视觉领域的架构理念出现了引人注目的分化,主要体现在卷积神经网络 (CNN) 与基于 Transformer 的模型之间。比较 RTDETRv2 和 YOLOv9,本质上是在评估全局注意力机制与可编程梯度信息之间的权衡。这两款模型都代表各自技术路线的巅峰,不断拓展实时目标检测的边界。
模型简介#
RTDETRv2:实时检测 Transformer#
RTDETRv2 由百度的研究人员开发,在原始 RT-DETR 的基础上加入“免费增益包”,以增强基础版实时检测 Transformer。它解决了 Transformer 的传统瓶颈——推理速度问题,使 Transformer 能够应用于实时场景。
- 作者: Wenyu Lv、Yian Zhao、Qinyao Chang、Kui Huang、Guanzhong Wang 和 Yi Liu
- 组织: 百度
- 日期: 2024-07-24
- 链接: Arxiv、GitHub
RTDETRv2 的一个显著特点是其原生的端到端、无需 NMS 的设计。通过在后处理中彻底移除非极大值抑制 (NMS),该模型稳定了推理延迟并简化了部署流程。全局注意力机制使模型能够同时评估整幅图像的上下文,因此在理解复杂场景和人群密集的场景时表现出色。
YOLOv9:可编程梯度信息#
YOLOv9 是一款高效的 CNN 架构,可解决深度神经网络固有的信息瓶颈问题。它引入了可编程梯度信息 (PGI) 和通用高效层聚合网络 (GELAN)。
- 作者:Chien-Yao Wang 和 Hong-Yuan Mark Liao
- 机构:中央研究院信息科学研究所
- 日期: 2024 年 2 月 21 日
- 链接: Arxiv、GitHub
YOLOv9 基于久经验证的卷积神经网络原理构建,同时最大限度提高参数效率。它在前向传播过程中保留关键信息,确保权重可靠更新,从而打造出极为轻量且精度很高的模型。不过,与 RTDETRv2 不同,YOLOv9 仍依赖标准 NMS 后处理。
性能与资源效率#
在评估这些模型是否适用于生产环境时,平衡平均精度均值 (mAP) 与计算成本至关重要。下表展示了它们在 MS COCO 数据集上的性能。
| 模型 | 尺寸 (像素) | mAP验证集 50-95 | 速度 CPU ONNX (毫秒) | 速度 T4 TensorRT10 (ms) | 参数 (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| RTDETRv2-s | 640 | 48.1 | - | 5.03 | 20 | 60 |
| RTDETRv2-m | 640 | 51.9 | - | 7.51 | 36 | 100 |
| RTDETRv2-l | 640 | 53.4 | - | 9.76 | 42 | 136 |
| RTDETRv2-x | 640 | 54.3 | - | 15.03 | 76 | 259 |
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.2 | 26.7 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.1 | 76.8 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.5 | 102.8 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 58.1 | 192.5 |
内存需求与训练效率#
RTDETRv2 这类 Transformer 在训练期间以占用大量内存而闻名,通常需要大量 CUDA 内存和更长的训练周期才能充分收敛。相比之下,YOLOv9 和其他 Ultralytics YOLO 模型等 CNN 架构的内存占用低得多,因此开发者可以在消费级硬件上使用更大的批量大小进行训练。
为了最大限度地利用硬件,可以使用 Ultralytics Platform 简化云端训练流程。它会自动处理环境设置和批量大小优化。
Ultralytics 的优势:生态与易用性#
研究 RTDETRv2 或 YOLOv9 的官方代码库等独立资源虽然很有教育意义,但生产环境需要稳定性、易用性和维护良好的生态系统。通过 Ultralytics Python API 集成这些模型,可以获得流畅的开发者体验。
统一 API 与多功能性#
Ultralytics 框架将数据加载、增强和分布式训练等复杂工作抽象化处理。此外,原始 RTDETRv2 只专注于检测,而 Ultralytics 生态系统支持用户轻松切换至目标检测、实例分割和姿态估计。
from ultralytics import RTDETR, YOLO
# 使用自定义数据训练 YOLOv9 模型
model_yolo = YOLO("yolov9c.pt")
model_yolo.train(data="coco8.yaml", epochs=50, imgsz=640)
# 轻松切换到 RT-DETR,评估复杂场景
model_rtdetr = RTDETR("rtdetr-l.pt")
results = model_rtdetr.predict("https://ultralytics.com/images/bus.jpg")
# 导出为 TensorRT 等可用于生产环境的格式
model_yolo.export(format="engine")凭借完善的文档、自动化实验跟踪以及无缝的导出功能,可导出为 ONNX、TensorRT 和 OpenVINO 等格式,Ultralytics 大幅缩短了从原型到生产部署的时间。
理想应用场景#
RTDETRv2 的优势领域#
得益于全局注意力机制,RTDETRv2 在服务器端处理和全局上下文至关重要的环境中表现强劲。它尤其适用于:
- 医学影像:识别细微异常,而周围上下文在此类任务中至关重要。
- 空中监控:在高分辨率无人机影像中发现小目标,且不受传统 CNN 卷积的空间偏差影响。
- 密集人群分析:跟踪个体,避免严重遮挡导致基于锚框的模型通常出现混淆。
YOLOv9 的优势领域#
YOLOv9 是资源受限边缘部署领域的佼佼者。其计算效率使其非常适合:
- 机器人:在要求极低延迟的场景中实现实时导航和避障。
- 智慧城市物联网:部署在 NVIDIA Jetson 等边缘设备上进行交通监控。
- 工业检测:用于装配线高速运行时的质量控制,需要较高的每秒帧数 (FPS)。
未来:迎接 Ultralytics YOLO26#
虽然 YOLOv9 和 RTDETRv2 代表了巨大的进步,但行业格局已经迅速演变。对于现代部署,全新发布的 Ultralytics YOLO26 将两种架构理念完美融合。
YOLO26 融合了 Transformer 和 CNN 的优势,树立了新的标准:
- 端到端无 NMS 设计:与 RTDETRv2 一样,YOLO26 支持原生端到端推理,并通过
nms=False跳过 NMS 后处理,使部署流程更快、更简单且高度可预测。 - MuSGD 优化器:YOLO26 借鉴大型语言模型 (LLM) 的训练技术(例如 Moonshot AI 的 Kimi K2),结合 SGD 和 Muon。这为计算机视觉带来了卓越的训练稳定性和快速收敛能力。
- CPU 推理速度最高提升 43%:与大型 Transformer 不同,YOLO26 针对边缘计算和无 GPU 设备进行了深度优化。
- 移除 DFL:移除 Distribution Focal Loss 大幅简化了模型计算图,确保模型能够顺利导出到低功耗边缘设备和嵌入式神经处理单元 (NPUs)。
- ProgLoss + STAL:这些改进的损失函数大幅提升了小目标识别能力,这对物联网和航空影像数据集至关重要。
对于计划启动新计算机视觉项目的团队,我们强烈建议评估 YOLO26。它兼具 Transformer 可选的无 NMS 优雅设计,以及高度优化 YOLO 架构所具备的极速和高效训练能力。
总结#
在 RTDETRv2 和 YOLOv9 之间做选择,主要取决于你的部署硬件和具体精度需求。RTDETRv2 为依赖服务器的应用提供先进的精度和上下文感知能力,而 YOLOv9 则为边缘设备带来出色的效率。
不过,借助成熟的 Ultralytics 生态系统,开发者可以轻松试用 YOLOv9 和原版 RT-DETR。此外,随着 YOLO11 等新模型和原生端到端的 YOLO26 问世,要在高速推理、丰富的任务支持和低内存占用之间找到理想平衡,从未如此简单。