跳转至内容

YOLOX与YOLOYOLOv1010:从无锚点检测到端到端检测的进化之路

2021至2024年间,目标检测领域格局发生剧变。旷视公司发布的YOLOX标志着研究方向的重大转向——摒弃锚点基准方法,引入简化的无锚点设计,成为研究基准的宠儿。三年后,清华大学研究团队推出 YOLOv10,通过端到端架构彻底消除了非最大抑制(NMS)的需求,进一步推动了该范式的发展。

本比较探讨了从YOLOX解耦式目标检测到YOLOv10双目标分配策略的技术飞跃,帮助开发者为计算机视觉管道选择合适的工具。

概览比较

虽然两种模型都致力于实现实时性能,但它们解决检测问题的方式不同。YOLOX专注于通过动态标签分配简化训练过程,YOLOv10 则通过消除后处理瓶颈YOLOv10 推理延迟。

YOLOX:无锚框先驱

YOLOX由郑格及其团队于2021年7月在旷视推出。该算法YOLO 转变为无锚点机制,减少了工程师需要调优的设计参数(如锚框尺寸)数量。

  • 关键创新:解耦式头部与SimOTA(简化最优运输分配)。
  • 架构:基于CSPDarknet骨干网络的改进方案,重点在于平衡速度与准确性。
  • 历史地位:在学术论文中被广泛用作可靠基准,例如YOLOX的Arxiv报告

了解更多关于 YOLOX 的信息

YOLOv10:实时端到端检测

YOLOv10由清华大学研究人员于2024年5月发布的YOLOv10,解决了NMS的延迟问题。通过在训练阶段采用一致的双目标分配策略,该模型能够为每个目标预测单个边界框,从而实现真正的端到端部署。

  • 关键创新:通过双标签分配NMS(监督阶段采用一对多分配,推理阶段采用一对一分配)。
  • 效率:引入整体效率-精度驱动的模型设计,包括秩引导的块设计。
  • 集成:在Ultralytics 提供支持,便于轻松进行训练和部署

了解更多关于 YOLOv10

性能分析

这些代际之间的性能差距显著,尤其体现在现代硬件上的效率(FLOPs)和推理速度方面。YOLOv10 更新的架构模块,在减少参数数量的同时实现了更高的均值平均精度(mAP)

模型尺寸
(像素)
mAPval
50-95
速度
CPU ONNX
(毫秒)
速度
T4 TensorRT10
(毫秒)
参数
(M)
FLOPs
(B)
YOLOXnano41625.8--0.911.08
YOLOXtiny41632.8--5.066.45
YOLOXs64040.5-2.569.026.8
YOLOXm64046.9-5.4325.373.8
YOLOXl64049.7-9.0454.2155.6
YOLOXx64051.1-16.199.1281.9
YOLOv10n64039.5-1.562.36.7
YOLOv10s64046.7-2.667.221.6
YOLOv10m64051.3-5.4815.459.1
YOLOv10b64052.7-6.5424.492.0
YOLOv10l64053.3-8.3329.5120.3
YOLOv10x64054.4-12.256.9160.4

关键差异

  1. 延迟: YOLOv10 NMS 。在边缘设备上,NMS 占总推理时间的很大一部分,这使得YOLOv10 在实际应用中YOLOv10 更快。
  2. 准确率:YOLOv10x 达到54.4%mAP,明显高于 YOLOX-x 的51.1%,尽管 YOLOX-x 的参数数量几乎是其两倍(9910 万 vs 5690 万)。
  3. 计算效率:在相同精度下YOLOv10 浮点运算次数通常较低,从而减轻了GPU 压力并降低能耗。

架构深度解析

YOLOX:解耦式头部与SimOTA

YOLOX通过采用解耦式头部结构,与之前的YOLO 产生了分歧。在传统检测器中,分类和定位任务共享卷积特征。YOLOX将这两者分离为两个分支,从而提升了收敛速度和准确率。

此外,YOLOX引入了动态标签分配策略SimOTA。该策略摒弃了将真实目标框与锚框进行匹配的固定规则,而是将匹配过程视为最优运输问题,通过全局成本计算分配标签。这种方法使YOLOX在不同数据集上表现出强健性,且无需进行繁重的超参数调优。

YOLOv10:一致的双重分配

YOLOv10的主要贡献在于解决了NMS中存在的训练与推理不一致问题。

  • 一对多训练:在训练过程中,模型将多个正样本分配给单个目标,从而提供丰富的监督信号。
  • 一对一推理:通过一致的匹配度量,模型在推理过程中学会选择单个最佳框,从而无需进行NMS。

此外YOLOv10 大核卷积和局部自注意力(PSA)模块,能够有效捕捉全局上下文信息,同时避免了全变换器带来的高计算成本。

为什么无NMS很重要

非最大抑制(NMS)是一种用于过滤重叠边界框的后处理算法。虽然该算法效果显著,但其处理过程是顺序的,难以在FPGA或NPU等硬件上加速。移除该算法可使部署流程严格确定化并提升速度。

理想适用场景

何时选择 YOLOX

  • 学术基准:若您正在撰写研究论文,需要一个干净、标准且无锚点的检测器作为对照基准。
  • 遗留系统:已在Megvii代码库或OpenMMLab框架上完成验证的环境,其中无法实现整个推理引擎的升级。

何时选择 YOLOv10

  • 低延迟应用:例如自动刹车系统或高速工业分拣等场景,其中后处理的每毫秒都至关重要。
  • 资源受限的边缘设备: CPU 有限的设备在移除NMS 步骤后将获得显著提升。

Ultralytics 优势

尽管YOLOX和YOLOv10 强大的架构,Ultralytics 原始模型代码与生产就绪应用程序之间提供了桥梁。

无缝集成

YOLOv10 Ultralytics 仅需一行代码即可在不同模型间切换。这免去了学习不同API或数据格式的麻烦(例如为YOLOX将标签COCO )。

from ultralytics import YOLO

# Load YOLOv10n or the newer YOLO26n
model = YOLO("yolov10n.pt")

# Train on your data with one command
model.train(data="coco8.yaml", epochs=100, imgsz=640)

多功能性与生态系统

与独立的YOLOX存储库不同Ultralytics 多种超越检测的任务,包括实例分割姿势估计 以及 旋转框检测。所有这些任务均可通过Ultralytics 统一管理,该平台提供基于网页的数据集管理、一键式训练,并支持将模型部署为CoreML、ONNX和TensorRT等格式。

训练效率

Ultralytics 内存效率优化。尽管某些transformer模型(如 RT-DETR)需要大量CUDA Ultralytics YOLO 则专为消费级GPU训练而设计,让尖端人工智能技术触手可及。

未来:YOLO26

对于追求极致性能与易用性的开发者,我们建议您YOLOv10 全新发布的 YOLO26

YOLO26于2026年1月发布,在YOLOv10 实现的NMS突破基础上YOLOv10 优化了生产稳定性和运行速度。

  • MuSGD优化器:受Moonshot AI在大型语言模型训练领域的创新启发,该优化器可确保更快的收敛速度和稳定的训练过程。
  • DFL移除:通过移除分布焦点损失(Distribution Focal Loss),YOLO26简化了模型图,使向边缘设备导出更顺畅,且不易出现操作员兼容性问题。
  • 速度:专为CPU 优化,相比前代产品速度提升高达43%,使其成为标准物联网硬件的理想选择。

了解更多关于 YOLO26 的信息

结论

YOLOX在目标检测发展史上仍是一个重要里程碑,证明了无锚框方法也能达到顶尖水平的准确率。 YOLOv10 标志着逻辑上的下一步突破,NMS 消除NMS 的最终瓶颈NMS 真正的端到端处理。

然而,要实现稳健的长期解决方案, Ultralytics 生态系统——以YOLO26为旗舰产品——提供了最完整的解决方案。凭借卓越的文档支持、活跃的社区协作以及涵盖数据标注模型导出的全流程平台Ultralytics 您的计算机视觉项目从原型开发到生产部署全程成功。

延伸阅读


评论