RTDETRv2 与 YOLOv9:实时 detect Transformer 和 CNN 的比较
计算机视觉领域在架构理念上出现了引人入胜的分歧,主要体现在卷积神经网络(CNN)和基于Transformer的模型之间。在比较RTDETRv2和YOLOv9时,开发者实际上是在评估全局注意力机制和可编程梯度信息之间的权衡。这两种模型都代表了各自范式的巅峰,不断突破实时目标检测的界限。
模型介绍
RTDETRv2:实时 detect Transformer
由百度研究人员开发的 RTDETRv2 在原始 RT-DETR 的基础上,引入了“免费赠品包”(Bag-of-Freebies)以增强基线实时 detect 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 dataset上的性能。
| 模型 | 尺寸 (像素) | mAPval 50-95 | 速度 CPU ONNX (毫秒) | 速度 T4 TensorRT10 (毫秒) | 参数 (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.1 | 26.4 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.0 | 76.3 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.3 | 102.1 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 57.3 | 189.0 |
内存要求与训练效率
像 RTDETRv2 这样的 Transformer 模型在训练期间以内存密集型著称,通常需要大量的 CUDA 内存和更长的训练周期才能完全收敛。相反,像 YOLOv9 和其他Ultralytics YOLO 模型这样的 CNN 架构提供了极低的内存使用量,允许开发人员在消费级硬件上使用更大的批量进行训练。
高效训练
为了最大限度地利用硬件,请考虑使用Ultralytics Platform进行流线型的云端训练。它会自动处理环境设置和最佳批次大小。
Ultralytics 优势:生态系统与易用性
尽管研究像官方 RTDETRv2 或 YOLOv9 GitHub 页面这样的独立仓库极具教育意义,但生产环境需要稳定性、易用性和维护良好的生态系统。通过 Ultralytics python API 集成这些模型可提供无缝的开发者体验。
统一API与多功能性
Ultralytics 框架抽象化了数据加载、增强和分布式训练的复杂性。此外,虽然原始的 RTDETRv2 严格专注于 detect,但 Ultralytics 生态系统允许用户轻松地在目标 detect、实例 segment 和姿势估计之间切换。
from ultralytics import RTDETR, YOLO
# Train a YOLOv9 model on custom data
model_yolo = YOLO("yolov9c.pt")
model_yolo.train(data="coco8.yaml", epochs=50, imgsz=640)
# Easily switch to RT-DETR for complex scene evaluation
model_rtdetr = RTDETR("rtdetr-l.pt")
results = model_rtdetr.predict("https://ultralytics.com/images/bus.jpg")
# Export to production-ready formats like TensorRT
model_yolo.export(format="engine")
凭借完善的文档、自动实验跟踪以及无缝的导出能力,支持ONNX、TensorRT和OpenVINO等格式,Ultralytics显著缩短了从原型到生产的时间。
理想用例
RTDETRv2 的优势
得益于其全局注意力机制,RTDETRv2 是 服务器端处理 以及全局上下文至关重要的环境的强大工具。它擅长于:
- 医学影像:识别周围上下文至关重要的细微异常。
- 空中监视:在高分辨率无人机 footage 中发现小目标,而没有传统 CNN 卷积的空间偏差。
- 密集人群分析:在严重遮挡通常会使基于锚点的模型混淆的情况下,跟踪个体。
YOLOv9 的优势
YOLOv9 是资源受限边缘部署的佼佼者。其计算效率使其非常适合:
- 机器人技术: 实时导航和避障,需要最小延迟。
- 智慧城市物联网:部署在 NVIDIA Jetson 等边缘设备上,用于交通监控。
- 工业检测: 需要高帧率 (FPS) 的高速装配线质量控制。
未来:迎接 Ultralytics YOLO26
尽管YOLOv9和RTDETRv2代表着巨大的飞跃,但领域格局已迅速演变。对于现代部署,新发布的Ultralytics YOLO26代表了两种架构理念的终极协同。
YOLO26 融合了 Transformer 和 CNN 的最佳特性,建立了新标准:
- 端到端免NMS设计:与RTDETRv2类似,YOLO26原生支持端到端,完全消除了NMS后处理,以实现更快、更简单、高度可预测的部署流程。
- MuSGD 优化器:受大型语言模型(LLM)训练技术(例如月之暗面 Kimi K2)启发,YOLO26 采用了 SGD 和 Muon 的混合体。这为计算机视觉带来了无与伦比的训练稳定性和快速收敛。
- CPU 推理速度提升高达 43%:与笨重的 Transformer 不同,YOLO26 针对边缘计算和不带 GPU 的设备进行了深度优化。
- DFL移除:移除分布式焦点损失大幅简化了模型图,确保了模型能够无缝导出到低功耗边缘设备和嵌入式神经网络处理单元(NPU)。
- ProgLoss + STAL: 这些改进的损失函数显著增强了小目标识别能力,这对于物联网和航空数据集是关键特性。
对于希望启动新计算机视觉项目的团队,我们强烈建议评估 YOLO26。它提供了 Transformer 的 NMS-free 优雅,以及高度优化的 YOLO 架构的惊人速度和训练效率。
总结
在 RTDETRv2 和 YOLOv9 之间进行选择,主要取决于您的部署硬件和具体的精度需求。RTDETRv2 为服务器端应用提供最先进的精度和上下文感知能力,而 YOLOv9 则为边缘设备提供卓越的效率。
然而,通过利用成熟的 Ultralytics 生态系统,开发者可以轻松地同时尝试这两种模型。此外,随着YOLO11等较新模型和原生端到端YOLO26的引入,在高速推理、多功能任务支持和低内存消耗之间找到完美平衡变得前所未有的容易。