跳转至内容

DAMO-YOLO vs. YOLO26:实时目标检测器的技术比较

实时目标检测的发展取得了快速进步,这得益于对兼顾速度、精度和部署效率的模型的需求。本文将对由阿里巴巴集团开发的DAMO-YOLO和Ultralytics的最新迭代YOLO26进行全面的技术比较。我们将分析它们的架构、性能指标和理想用例,以帮助开发人员和研究人员为他们的计算机视觉项目选择合适的工具。

DAMO-YOLO 概述

DAMO-YOLO是由阿里巴巴集团的研究人员于2022年末推出的一种快速准确的目标检测方法。它旨在通过将多项前沿技术集成到YOLO框架中来突破性能极限。DAMO-YOLO的核心理念是利用神经架构搜索(NAS)自动发现高效骨干网络,并结合重参数化颈部网络。

主要架构特性包括:

  • MAE-NAS骨干网络:利用掩码自编码器(MAE)方法,在不同延迟约束下搜索最优骨干网络结构。
  • 高效RepGFPN:一种广义特征金字塔网络(GFPN),通过重参数化进行深度优化,以提高特征融合效率,同时不牺牲推理速度。
  • ZeroHead:一种轻量级头部设计,可减少计算开销。
  • AlignedOTA:一种改进的标签分配策略,解决了分类和回归任务之间的不对齐问题。
  • 蒸馏增强:使用强大的蒸馏管线,利用大型教师模型来提高小型模型的精度。

作者:徐贤哲、蒋一奇、陈卫华、黄一伦、张远、孙秀宇
组织:阿里巴巴集团
日期:2022年11月23日
链接:ArxivGitHub

了解更多关于 DAMO-YOLO 的信息

YOLO26概述

Ultralytics于2026年1月发布的YOLO26,代表了边缘优化计算机视觉领域的重大飞跃。它专为边缘和低功耗设备设计,专注于简化部署管线,同时提高在小目标检测等挑战性任务上的精度。

YOLO26以几项重大创新脱颖而出:

  • 端到端无NMS设计:通过消除对非极大值抑制(NMS)后处理的需求,YOLO26简化了部署逻辑并降低了延迟可变性,这一概念最早由YOLOv10开创。
  • DFL移除:移除分布焦点损失(DFL)简化了模型的输出结构,使得导出到ONNXTensorRT等格式更加直接,并与更广泛的硬件兼容。
  • MuSGD优化器:一种新颖的混合优化器,结合了SGDMuon,灵感来源于月之暗面(Moonshot AI)Kimi K2的LLM训练技术。这带来了更稳定的训练动态和更快的收敛速度。
  • ProgLoss + STAL:渐进式损失平衡(Progressive Loss Balancing)和小目标感知标签分配(Small-Target-Aware Label Assignment, STAL)的结合显著提升了在小目标上的性能,解决了实时检测器中的一个常见弱点。

作者: Glenn Jocher 和 邱靖
组织:Ultralytics
日期: 2026年1月14日
链接:Ultralytics 文档, GitHub

了解更多关于 YOLO26 的信息

对比分析

架构与设计理念

最显著的区别在于推理流程。DAMO-YOLO 遵循传统的 detect 工作流,需要 NMS 来过滤重叠的边界框。虽然有效,但 NMS 在高吞吐量应用中可能成为瓶颈,并使在某些加速器上的部署复杂化。

相比之下,YOLO26 原生支持端到端。模型直接预测最终的边界框集合。这种免 NMS 设计不仅减少了推理延迟——特别是在 NMS 成本高昂的 CPU 密集型边缘设备上——而且还简化了在生产环境中运行模型所需的集成代码。

部署简易性

YOLO26 的免 NMS 架构意味着在部署到边缘设备时,您无需在 C++ 或 CUDA 中实现复杂的后处理逻辑。模型输出即为最终的 detect 结果。

训练方法

DAMO-YOLO 严重依赖知识蒸馏来实现其高性能,特别是对于其较小的变体。这增加了训练流程的复杂性,因为必须首先训练一个强大的教师模型。

YOLO26 引入了MuSGD 优化器,弥合了大型语言模型 (LLM) 优化与计算机视觉之间的鸿沟。这使得 YOLO26 能够在不一定依赖复杂蒸馏设置的情况下实现最先进的收敛,尽管Ultralytics 训练模式支持各种高级配置。此外,YOLO26 的ProgLoss在训练期间动态调整损失权重,以稳定学习过程。

性能指标

在 COCO 数据集上比较性能时,两种模型都表现出令人印象深刻的结果,但在速度和效率方面出现了明显的权衡。

模型尺寸
(像素)
mAPval
50-95
速度
CPU ONNX
(毫秒)
速度
T4 TensorRT10
(毫秒)
参数
(M)
FLOPs
(B)
DAMO-YOLOt64042.0-2.328.518.1
DAMO-YOLOs64046.0-3.4516.337.8
DAMO-YOLOm64049.2-5.0928.261.8
DAMO-YOLOl64050.8-7.1842.197.3
YOLO26n64040.938.91.72.45.4
YOLO26s64048.687.22.59.520.7
YOLO26m64053.1220.04.720.468.2
YOLO26l64055.0286.26.224.886.4
YOLO26x64057.5525.811.855.7193.9

分析:

  • 参数效率: YOLO26 表现出显著更好的参数效率。例如, YOLO26s 实现了 48.6 mAP 仅需 9.5M 参数,而 DAMO-YOLOs 使用 16.3M 参数实现了 46.0 mAP。这使得 YOLO26 模型存储更轻量,加载更快。
  • 推理速度: YOLO26n 速度极快,在 T4 GPU 上使用 TensorRT 时仅需 1.7 毫秒,而 Tiny DAMO 变体大约需要 2.32 毫秒。YOLO26 的CPU 速度也是一大亮点,专门针对 Raspberry Pi 或 GPU 不可用的手机等设备进行了优化。
  • 准确性: 在相似规模(例如,中/大型)下,YOLO26 在 mAP 方面始终优于 DAMO-YOLO,这可能得益于先进的STAL分配策略和精炼的架构。

通用性与任务支持

虽然 DAMO-YOLO 主要专注于目标 detect,但Ultralytics 生态系统确保 YOLO26 是一个多任务的强大工具。

这种多功能性使开发人员能够使用单一统一的 API 来解决各种计算机视觉问题,从而降低学习曲线和技术债务。

易用性与生态系统

YOLO26 最强大的优势之一是其周围的Ultralytics 生态系统

DAMO-YOLO 提供了一个代码库,研究人员可以使用它来重现结果,但它可能缺乏在更注重产品的库中常见的广泛文档、维护和社区支持。

YOLO26 受益于:

代码示例:运行 YOLO26

from ultralytics import YOLO

# Load a pretrained YOLO26n model
model = YOLO("yolo26n.pt")

# Run inference on an image
results = model("https://ultralytics.com/images/bus.jpg")
results[0].show()

应用案例

何时选择DAMO-YOLO

  • 研究应用: 如果您的工作涉及研究神经架构搜索 (NAS) 或探索新颖的重参数化技术,DAMO-YOLO 为学术研究提供了丰富的土壤。
  • 特定遗留约束: 如果现有管道严格围绕 DAMO-YOLO 的特定输出格式或锚点分配策略构建,且重构不可行。

何时选择 YOLO26

  • 边缘部署: 适用于 Raspberry Pi、移动设备或嵌入式系统上的应用,其中 CPU 推理速度和低内存占用至关重要。
  • 实时系统: NMS-free 的特性使 YOLO26 成为机器人技术或自动驾驶中超低延迟要求的理想选择。
  • 多任务项目: 如果您的项目需要同时 detect 物体、segment 掩码和估计姿势,YOLO26 通过一个框架涵盖所有这些功能。
  • 商业开发: 稳定性、支持以及易于导出到 CoreMLOpenVINO 等格式,使其成为生产软件的首选。

结论

两种模型都代表了计算机视觉领域的重大成就。DAMO-YOLO 在 NAS 和高效特征融合方面引入了令人印象深刻的概念。然而,YOLO26 通过专注于部署实用性训练稳定性计算效率,进一步提升了最先进水平。凭借其端到端的 NMS-free 设计、卓越的参数效率以及强大的 Ultralytics 生态系统的支持,YOLO26 在现代实时计算机视觉应用中脱颖而出,成为推荐选择。

对于那些有兴趣探索 Ultralytics 系列中其他选项的用户,YOLO11YOLOv8 等模型仍然是通用 detect 任务的强大替代方案。


评论