DAMO-YOLO 与 RTDETRv2 的技术对比
选择正确的目标检测模型是一个关键的决定,它平衡了精度、速度和计算成本。此比较深入研究了两种强大的架构:阿里巴巴集团的高速检测器 DAMO-YOLO 和百度的高精度实时 Transformer 模型 RTDETRv2。我们将探讨它们的架构差异、性能基准和理想用例,以帮助您为您的计算机视觉项目选择最佳模型。
DAMO-YOLO:快速而准确的检测
DAMO-YOLO 是由阿里巴巴集团开发的目标检测模型,旨在实现速度和精度之间的卓越平衡。它融合了几项创新技术,旨在提升 YOLO 风格检测器的性能。
- 作者: Xianzhe Xu、Yiqi Jiang、Weihua Chen、Yilun Huang、Yuan Zhang 和 Xiuyu Sun
- 组织: 阿里巴巴集团
- 日期: 2022-11-23
- Arxiv: https://arxiv.org/abs/2211.15444v2
- GitHub: https://github.com/tinyvision/DAMO-YOLO
- 文档: https://github.com/tinyvision/DAMO-YOLO/blob/master/README.md
架构和主要特性
DAMO-YOLO 基于经典的 单阶段目标检测器 范例,并进行了几项关键创新:
- NAS-Powered Backbone: 它利用 神经架构搜索 (NAS) 来生成优化的骨干网络。这使得模型能够找到针对特定硬件和性能目标量身定制的高效架构。
- 高效 RepGFPN Neck: 该模型采用广义特征金字塔网络(GFPN)的高效版本进行特征融合。这种颈部结构有效地结合了来自不同尺度的特征,同时保持了计算上的轻量级。
- ZeroHead: 一项关键创新是 ZeroHead,它将分类头和回归头分离,以减少计算开销并提高性能。这种设计选择简化了头部架构,而不会牺牲准确性。
- AlignedOTA 标签分配: DAMO-YOLO 使用 AlignedOTA(最优传输分配)在训练期间为预测分配标签。这种先进的策略可确保为每个真实对象选择最合适的锚点,从而实现更好的训练收敛和更高的准确性。
优势与劣势
优势:
- 卓越的推理速度: DAMO-YOLO 模型,尤其是较小的变体,在 GPU 硬件上提供非常低的延迟,使其成为实时推理的理想选择。
- 高效性: 该模型以相对较少的参数和 FLOPs 实现了速度和准确率的强大平衡。
- 可扩展的架构: 它提供多种尺寸(Tiny、Small、Medium、Large),使开发人员能够为其特定资源约束选择合适的模型。
弱点:
- 精度限制: 虽然速度很快,但在具有许多小对象或被遮挡对象的具有挑战性的场景中,其峰值精度可能无法与更复杂的基于 Transformer 的模型相媲美。
- 生态系统与可用性: 与更主流的框架相比,DAMO-YOLO周围的生态系统不太发达,可能需要更多的精力来进行集成和部署。
RTDETRv2:高精度实时检测 Transformer
RTDETRv2(Real-Time Detection Transformer v2)是百度的先进目标检测模型,它利用 Transformer 的强大功能来提供高精度,同时保持实时性能。它是原始 RT-DETR 的演进,结合了“免费赠品”以进一步提高其功能。
- 作者: Wenyu Lv、Yian Zhao、Qinyao Chang、Kui Huang、Guanzhong Wang 和 Yi Liu
- 组织: Baidu
- 日期: 2023-04-17 (原始 RT-DETR), 2024-07-24 (RTDETRv2 改进)
- Arxiv: https://arxiv.org/abs/2304.08069 (原始版本), https://arxiv.org/abs/2407.17140 (v2)
- GitHub: https://github.com/lyuwenyu/RT-DETR/tree/main/rtdetrv2_pytorch
- 文档: https://github.com/lyuwenyu/RT-DETR/tree/main/rtdetrv2_pytorch#readme
架构和主要特性
RTDETRv2 基于 DETR(DEtection TRansformer)框架,该框架将目标检测重新构想为直接集预测问题。
- 混合 CNN-Transformer 设计: 它使用传统的 CNN 主干网络(如 ResNet)来提取初始特征图,然后将其馈送到 Transformer 编码器-解码器。
- 全局上下文建模: Transformer 的自注意力机制允许模型捕获图像不同部分之间的全局关系。这使得它在检测复杂和杂乱场景中的对象方面非常出色。
- End-to-End Detection: 与其他基于 DETR 的模型一样,RTDETRv2 是端到端的,并且消除了对手工设计的组件(如非极大值抑制 (NMS))的需求,从而简化了检测流程。
- 无Anchor方法: 该模型是无anchor的,避免了与设计和调整anchor框相关的复杂性。
优势与劣势
优势:
- 最先进的精度: RTDETRv2 实现了非常高的 mAP 分数,通常优于其他实时检测器,尤其是在密集对象分布的场景中。
- 复杂场景中的鲁棒性: 全局注意力机制使其在区分重叠对象和理解更广泛的场景上下文方面非常有效。
- 简化流程: 端到端、无 NMS 设计使后处理阶段更简洁、更直接。
弱点:
- 更高的计算成本: 与纯 CNN 模型相比,基于 Transformer 的架构通常在参数、FLOP 和内存使用方面要求更高。
- 推理速度较慢: 虽然针对实时使用进行了优化,但其推理速度通常比最快的基于YOLO的模型慢。
- 训练复杂性: 训练 Transformer 可能比 CNN 更消耗资源,需要更长的训练计划和更多的内存。
性能与训练对比
性能基准
以下是 DAMO-YOLO 和 RTDETRv2 变体在 COCO val 数据集上的详细性能比较。
模型 | 尺寸 (像素) |
mAPval 50-95 |
速度 CPU ONNX (毫秒) |
速度 T4 TensorRT (ms) |
参数 (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
DAMO-YOLO-t | 640 | 42.0 | - | 2.32 | 8.5 | 18.1 |
DAMO-YOLO-s | 640 | 46.0 | - | 3.45 | 16.3 | 37.8 |
DAMO-YOLO-m | 640 | 49.2 | - | 5.09 | 28.2 | 61.8 |
DAMO-YOLO-l | 640 | 50.8 | - | 7.18 | 42.1 | 97.3 |
RTDETRv2-s | 640 | 48.1 | - | 5.03 | 20.0 | 60.0 |
RTDETRv2-m | 640 | 51.9 | - | 7.51 | 36.0 | 100.0 |
RTDETRv2-l | 640 | 53.4 | - | 9.76 | 42.0 | 136.0 |
RTDETRv2-x | 640 | 54.3 | - | 15.03 | 76.0 | 259.0 |
从表中,我们可以得出以下几个结论:
- 准确率: 在可比较的模型尺寸下,RTDETRv2始终实现更高的mAP,其最大变体达到了令人印象深刻的54.3 mAP。
- 速度: DAMO-YOLO 在推理速度方面具有明显的优势,其微型模型在 T4 GPU 上的速度是最快的 RTDETRv2 模型的两倍以上。
- 效率: DAMO-YOLO 模型在参数和 FLOPs 方面更有效率。例如,DAMO-YOLO-m 以 28.2M 参数实现了 49.2 mAP,而 RTDETRv2-s 需要 20.0M 参数才能达到类似的 48.1 mAP,但速度较慢。
理想用例
-
DAMO-YOLO 最适合速度至关重要的应用,例如:
- 实时视频监控: 处理高帧率视频源,适用于 安全警报系统 等应用。
- Edge AI 部署: 在资源受限的设备上运行,如 NVIDIA Jetson 或 Raspberry Pi。
- 机器人: 为需要快速决策的机器人实现快速感知,正如人工智能在机器人技术中的作用中所讨论的那样。
-
RTDETRv2 在精度是首要考虑因素的情况下表现出色:
- 自动驾驶: 可靠地检测复杂城市环境中的行人、车辆和障碍物。
- 高风险安全: 在拥挤的公共场所识别威胁,其中精度至关重要。
- 零售分析: 准确地计算和跟踪货架上的大量产品或商店中的顾客。
Ultralytics 的优势:YOLOv8 和 YOLO11
虽然 DAMO-YOLO 和 RTDETRv2 都是强大的模型,但 Ultralytics YOLO 生态系统(以 YOLOv8 和最新的 Ultralytics YOLO11 等模型为特色)提供了一个引人注目的替代方案,通常为开发人员和研究人员提供卓越的整体方案。
使用 Ultralytics 模型的主要优势包括:
- 易用性: 精简的 python API、丰富的文档和直接明了的 CLI 使用方式,使训练、验证和部署变得非常简单。
- 完善的生态系统: Ultralytics 提供积极的开发、通过 GitHub 提供的强大社区支持、频繁的更新以及与 Ultralytics HUB 的无缝集成,以实现端到端的 MLOps。
- 性能平衡: Ultralytics 模型经过高度优化,可在速度和准确性之间实现出色的平衡,使其适用于从 边缘设备 到云服务器的各种应用。
- 内存效率: Ultralytics YOLO 模型旨在提高内存效率,与基于 Transformer 的模型(如 RTDETRv2)相比,通常需要更少的 CUDA 内存来进行训练和推理,而 RTDETRv2 以资源密集型而闻名。
- 通用性: 像 YOLOv8 和 YOLO11 这样的模型是多任务框架,它们原生支持目标检测、实例分割、图像分类、姿势估计和旋转框检测 (OBB),提供 DAMO-YOLO 和 RTDETRv2 缺乏的统一解决方案。
- 训练效率: 受益于快速的训练时间、高效的收敛以及 COCO 等常用数据集上随时可用的预训练权重。
结论
DAMO-YOLO 和 RTDETRv2 都是卓越的目标检测模型,分别突破了速度和准确率的界限。对于需要在 GPU 硬件上实现尽可能最低延迟的应用,DAMO-YOLO 是首选。相比之下,当实现最高准确率是不可协商的,尤其是在复杂的视觉环境中时,RTDETRv2 是首选模型。
然而,对于大多数开发者和研究人员来说,像YOLO11这样的Ultralytics模型是最实用和有效的解决方案。它们在速度和准确性之间提供了卓越的平衡、无与伦比的易用性、多任务通用性,并由一个强大且积极维护的生态系统提供支持。这种组合使Ultralytics YOLO模型成为构建高性能、真实世界计算机视觉应用程序的推荐选择。
探索其他模型
对 DAMO-YOLO 和 RTDETRv2 感兴趣的用户也可能会发现这些比较具有参考价值:
- YOLOv8 vs. DAMO-YOLO
- YOLO11 vs DAMO-YOLO
- YOLOv8 vs. RT-DETR
- YOLO11 vs. RT-DETR
- EfficientDet 与 DAMO-YOLO
- YOLOX 与 DAMO-YOLO 对比
- YOLOv7 vs RT-DETR