跳转至内容

YOLOv10 vs YOLOv5:全面技术比较

选择合适的神经网络架构对于在生产环境中部署成功的计算机视觉管道至关重要。本页面提供了YOLOv10YOLOv5的深入技术分析,这两个模型在实时目标检测的发展中都具有重要影响力。尽管这两个模型都对AI社区产生了重大影响,但它们代表了深度学习架构设计中不同的时代和理念。

本指南根据平均精度均值 (mAP)、推理延迟、参数效率和生态系统支持来评估这些架构,助您为部署需求选择最佳模型。

模型概述

YOLOv10:实时端到端目标检测

由清华大学的研究人员开发的 YOLOv10 通过消除后处理的需求,为目标 detect 引入了一种新颖的方法。

YOLOv10 的决定性突破在于其 端到端无 NMS 设计。历史上,YOLO 模型依赖于 非极大值抑制 (NMS) 来过滤冗余的边界框。YOLOv10 采用一致的双重分配进行无 NMS 训练,这显著降低了推理延迟的可变性并简化了部署逻辑。此外,该架构采用了一种整体的效率-精度驱动设计,彻底优化了各种组件以减少计算冗余。

了解更多关于 YOLOv10

YOLOv5:易用性的行业标准

在Ultralytics PyTorch仓库创立后不久,YOLOv5重新定义了开发者对开源视觉AI框架的期望。它仍然是全球部署最广泛的架构之一。

YOLOv5 因其 易用性 和高度 维护良好的生态系统 而备受赞誉。它完全用 PyTorch 编写,开箱即用地支持训练、验证以及导出到 ONNXTensorRT 等格式,提供了无缝的“从零到英雄”体验。与主要专注于纯目标 detect 的 YOLOv10 不同,YOLOv5 展现了卓越的 多功能性,在同一个统一的 python API 中支持 实例 segment图像分类

了解更多关于 YOLOv5

性能与指标比较

可视化速度与精度之间的关系对于识别在给定速度约束下提供最佳精度的模型至关重要。理解这些性能指标是选择符合您特定硬件约束的模型的基础。

模型尺寸
(像素)
mAPval
50-95
速度
CPU ONNX
(毫秒)
速度
T4 TensorRT10
(毫秒)
参数
(M)
FLOPs
(B)
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
YOLOv5n64028.073.61.122.67.7
YOLOv5s64037.4120.71.929.124.0
YOLOv5m64045.4233.94.0325.164.2
YOLOv5l64049.0408.46.6153.2135.0
YOLOv5x64050.7763.211.8997.2246.4

技术分析

  1. 准确性 (mAP):YOLOv10在准确性方面展现出明显的代际优势。例如,YOLOv10-X模型实现了54.4%的mAPval,超越了YOLOv5x(50.7% mAP)。这一飞跃主要归因于2024年引入的NMS-free训练策略和架构改进。
  2. 推理延迟: 尽管 YOLOv5 模型在原始 T4 TensorRT 基准测试中表现出极快的速度(例如 YOLOv5n 为 1.12 毫秒),但 YOLOv10 完全消除了后处理 NMS 步骤。在端到端实际部署中,YOLOv10 的无 NMS 设计提供了更一致和确定性的延迟,这对于自动驾驶汽车和机器人等实时应用至关重要。
  3. 参数效率:YOLOv10模型保持了极具竞争力的性能平衡。YOLOv10-S仅用7.2M参数即可达到46.7%的mAP,而YOLOv5s则用9.1M参数达到37.4%的mAP。

部署提示

部署到像NVIDIA Jetson这样的边缘AI设备时,没有NMS逻辑的模型(如YOLOv10和YOLO26)通常能更干净地编译到TensorRT,避免回退到CPU操作。

应用场景与建议

在YOLOv10和YOLOv5之间选择取决于您具体的项目需求、部署限制和生态系统偏好。

何时选择 YOLOv10

YOLOv10是以下场景的有力选择:

  • 免NMS的实时检测:受益于无需非极大值抑制的端到端检测,从而降低部署复杂性的应用。
  • 速度-精度平衡权衡:适用于需要在推理速度和 detect 精度之间取得良好平衡的各种模型规模的项目。
  • 一致延迟应用:部署场景中,可预测的推理时间至关重要,例如机器人技术或自主系统。

何时选择 YOLOv5

YOLOv5推荐用于:

  • 成熟的生产系统:现有部署中,YOLOv5 长期以来稳定的 track 记录、全面的文档和庞大的社区支持备受重视。
  • 资源受限训练: 在 GPU 资源有限的环境中,YOLOv5 高效的训练流程和更低的内存需求具有优势。
  • 广泛的导出格式支持:项目需要部署到多种格式,包括ONNXTensorRTCoreMLTFLite

何时选择 Ultralytics (YOLO26)

对于大多数新项目,Ultralytics YOLO26 提供了性能和开发者体验的最佳组合:

  • 免NMS的边缘部署:需要一致的低延迟推理,且无需非极大值抑制后处理复杂性的应用。
  • 纯CPU环境:在没有专用GPU加速的设备上,YOLO26高达43%的CPU推理速度提升提供了决定性优势。
  • 小目标 detect:无人机航拍图像 或物联网传感器分析等挑战性场景中,ProgLoss 和 STAL 显著提高了微小目标的准确性。

Ultralytics 优势

尽管YOLOv10提供了出色的detect能力,但依赖学术仓库有时会使生产流水线复杂化。通过使用官方的Ultralytics python package,您可以访问一个支持YOLOv5和YOLOv10的统一生态系统,并获得高级功能。

  • 训练效率:Ultralytics YOLO架构在训练期间经过深度优化,以降低内存需求。与需要大量CUDA内存的大型Transformer模型(如RT-DETR)不同,您可以在标准消费级GPU上轻松训练YOLOv5和YOLOv10。
  • 生态系统集成:Ultralytics Platform 的集成允许开发者可视化管理数据集、使用 Weights & Biases 跟踪实验并自动调整超参数。

代码示例:无缝训练

使用Ultralytics库,在这些架构之间切换就像更改模型字符串一样简单。训练管道会自动处理数据增强、缩放和优化器配置。

from ultralytics import YOLO

# To use YOLOv5:
# model = YOLO("yolov5s.pt")

# To use YOLOv10:
model = YOLO("yolov10s.pt")

# Train the model on a custom dataset
results = model.train(
    data="coco8.yaml",
    epochs=100,
    imgsz=640,
    batch=16,
    device=0,  # Use GPU 0
)

# Export the trained model to ONNX format
path = model.export(format="onnx")

下一代:Ultralytics YOLO26

如果您今天开始一个新的机器学习项目,我们强烈建议评估最新的Ultralytics YOLO26。它于 2026 年 1 月发布,结合了过去五年中最优秀的创新,代表了绝对的最新技术水平。

YOLO26 原生集成了由 YOLOv10 首创的端到端无 NMS 设计,确保了快速、确定性的部署。此外,YOLO26 还引入了多项关键突破:

  • CPU 推理速度提升高达 43%:通过移除分布焦点损失 (DFL) 模块,YOLO26 在标准 CPU 上实现了巨大的速度提升,使其成为 移动部署和低功耗物联网传感器的首选。
  • MuSGD 优化器:受大型语言模型(LLM)训练技术(如月之暗面 Kimi K2)启发,YOLO26 采用了 SGD 和 Muon 的混合体。与 YOLOv10 中使用的 AdamW 优化器相比,这确保了极其稳定的训练运行和大幅加速的收敛。
  • ProgLoss + STAL: 这些先进的损失函数在小目标识别方面取得了显著改进,这对于无人机影像和航空安全应用至关重要。
  • 任务特定掌握: 尽管 YOLOv10 严格来说是一个边界框 detect 器,但 YOLO26 为所有任务提供了专用的架构改进,包括用于姿势估计的残差对数似然估计 (RLE) 和用于旋转框检测 (OBB) 的专用角度损失。

进一步探索

如果您正在探索更广阔的目标检测领域,您可能还会对将这些架构与其他框架进行比较感兴趣。请查看我们关于YOLO11 与 EfficientDetRT-DETR 与 YOLOv8的深入分析,以进行更全面的基准测试。

无论您依赖 YOLOv5 强大的传统、YOLOv10 的无 NMS 创新,还是 YOLO26 无与伦比的尖端性能,Ultralytics 生态系统都能提供快速高效地将您的视觉 AI 应用程序变为现实所需的工具。


评论