Link to this sectionYOLOv5 对比 YOLOv10#
过去几年,实时计算机视觉领域经历了指数级增长,各种架构不断挑战现代硬件的极限。在评估先进架构时,YOLOv5 与 YOLOv10 的对比凸显了目标检测领域的重要演进。这份深度技术分析将探讨它们的架构范式、性能权衡,以及开发者如何在生产环境中利用这些工具。
Link to this section架构深度解析#
理解这些模型之间的结构差异对于在实际场景中高效部署它们至关重要。
Link to this sectionUltralytics YOLOv5:行业标准#
由 Ultralytics 推出,YOLOv5 长期以来以其在速度、准确性和易用性之间无与伦比的平衡而著称。
- 作者:Glenn Jocher
- 组织:Ultralytics
- 日期:2020-06-26
- GitHub:YOLOv5 仓库
- 文档:YOLOv5 文档
YOLOv5 依赖于基于锚框的检测机制,并结合了经过深度优化的 CSPDarknet 主干网络。这种架构极大地依赖于几乎所有推理引擎都支持的标准操作,使其具备极强的通用性。其主要优势在于 Ultralytics Python SDK,它提供了精简的用户体验、简单的 API 以及详尽的文档。此外,与基于 Transformer 的模型相比,YOLOv5 的内存需求更低,这意味着它可以在消费级 GPU 上快速训练,而不会产生高昂的显存开销。
Link to this sectionYOLOv10:推动范式进步#
YOLOv10 由清华大学的研究人员开发,旨在解决先前架构中存在的特定延迟瓶颈。
- 作者:Ao Wang, Hui Chen, Lihao Liu 等。
- 机构:清华大学
- 日期:2024-05-23
- ArXiv:2405.14458
- GitHub:YOLOv10 仓库
- 文档:YOLOv10 文档
YOLOv10 的定义特征在于其原生无 NMS(非极大值抑制)的设计。通过在训练期间使用一致的双重分配,该模型消除了推理过程中对 NMS 后处理的需求。这种理论上的延迟降低对于在具备强大 NVIDIA TensorRT 加速的高端硬件上运行的部署非常有利,尽管它可能会给边缘设备带来结构上的复杂性。
虽然 YOLOv10 提供了一些有趣的架构创新,但像 YOLOv5 以及更新的 YOLO26 等 Ultralytics 模型在 Ultralytics Platform 内获得了原生支持,并开箱即用地提供了卓越的训练效率、自动超参数进化和丰富的导出选项。
Link to this section性能分析#
在对比这些模型时,准确率 (mAP) 与计算成本(延迟和参数量)之间的平衡决定了最佳使用场景。以下是基于 COCO 数据集 的技术性能对比。
| 模型 | 尺寸 (像素) | mAPval 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | 参数量 (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
YOLOv10 明显在同等规模下实现了更高的 mAP50-95,利用了其现代化的高效率与高准确率驱动的模型设计。然而,YOLOv5 保持了令人难以置信的竞争力延迟,特别是在 Nano 和 Small 级别,使其在诸如 NVIDIA Jetson 系列或通过 OpenVINO 运行的标准 CPU 等受限嵌入式环境中非常可靠。
Link to this section训练方法与生态系统#
模型的价值与其周围的生态系统息息相关。Ultralytics 维护着一个非常出色且支持广泛任务的生态系统。虽然 YOLOv10 仅专注于 2D 目标检测,但 Ultralytics 原生支持 实例分割、图像分类、姿态估计 以及 定向边界框 (OBB)。
此外,训练 Ultralytics 模型所需的内存开销远低于基于 Transformer 的同类方法,从而保持了快速且具有成本效益的开发周期。
Link to this section无缝的代码执行#
训练、验证和导出模型在统一的 API 下进行。你只需更改一个字符串即可在不同模型之间切换。
from ultralytics import YOLO
# Load a pre-trained YOLOv5 model for baseline testing
model_v5 = YOLO("yolov5s.pt")
# Load a YOLOv10 model for comparison
model_v10 = YOLO("yolov10s.pt")
# Train the model on the COCO8 dataset efficiently
results = model_v5.train(
data="coco8.yaml",
epochs=100,
imgsz=640,
device="0", # Automatically utilizes PyTorch CUDA acceleration
batch=16,
)
# Export to ONNX for CPU inference deployment
model_v5.export(format="onnx", simplify=True)Link to this section应用场景与建议#
在 YOLOv5 和 YOLOv10 之间做出选择取决于你的特定项目需求、部署限制以及对生态系统的偏好。
Link to this section何时选择 YOLOv5#
YOLOv5 是以下情况的强力选择:
- 久经考验的生产系统: 在那些重视 YOLOv5 长期稳定记录、详尽文档和庞大社区支持的现有部署中。
- 资源受限的训练: 在 GPU 资源有限的环境中,YOLOv5 的高效训练流程和更低的内存需求具有优势。
- 广泛的导出格式支持: 需要在多种格式(包括 ONNX、TensorRT、CoreML 和 TFLite)间进行部署的项目。
Link to this section何时选择 YOLOv10#
推荐使用 YOLOv10 的情况:
- 无需 NMS 的实时检测: 得益于无需非极大值抑制(Non-Maximum Suppression)的端到端检测,能够降低部署复杂性的应用。
- 平衡的速度与精度权衡: 需要在推理速度和检测精度之间取得良好平衡的各类项目,适用于多种模型规模。
- 延迟一致的应用: 在机器人或自动驾驶系统等对可预测推理时间有严格要求的部署场景中。
Link to this section何时选择 Ultralytics (YOLO26)#
对于大多数新项目,Ultralytics YOLO26 提供了性能和开发者体验的最佳组合:
- 无 NMS 的边缘部署: 需要一致、低延迟推理且无需复杂非极大值抑制后处理的应用。
- 仅 CPU 环境: 没有专用 GPU 加速的设备,YOLO26 带来的高达 43% 的 CPU 推理提速可提供决定性优势。
- 小目标检测: 具有挑战性的场景,如 aerial drone imagery 或 IoT 传感器分析,其中 ProgLoss 和 STAL 可显著提升对极小目标的检测精度。
Link to this section未来:Ultralytics YOLO26#
虽然 YOLOv5 革新了易用性,而 YOLOv10 推动了无 NMS 架构的边界,但先进技术仍在不断演进。对于新项目,我们强烈推荐 2026 年 1 月发布的尖端产品 Ultralytics YOLO26。
YOLO26 将 Ultralytics 生态系统的可靠性与突破性的进展相结合:
- 端到端无 NMS 设计: 将无 NMS 范式直接融入 Ultralytics 框架,YOLO26 简化了部署并保证了更低的延迟。
- CPU 推理速度提升高达 43%: 随着分布焦点损失 (DFL) 的移除,YOLO26 在没有 GPU 的边缘设备上表现得显著更快。
- MuSGD 优化器: 受 Moonshot AI 大语言模型训练创新的启发,MuSGD 优化器提供了前所未有的稳定性和快速收敛性。
- ProgLoss + STAL: 这些新型损失函数显著改善了对小目标的识别能力,这对无人机影像和机器人技术等领域至关重要。
你可以直接通过 Ultralytics Platform 管理、训练和部署 YOLO26。
Link to this section结论#
在 YOLOv5 和 YOLOv10 之间做选择通常取决于项目的具体限制。YOLOv10 为研究人员和利用原始 GPU 通量的应用提供了极佳的 mAP。相反,YOLOv5 仍然是标准部署中稳健且高度兼容的主力模型。
然而,计算机视觉领域是动态变化的。为了获得绝对最好的性能平衡、通用性和易用性,开发者应该关注 Ultralytics YOLO26。它集成了无 NMS 推理的速度与稳健且文档详尽的 Ultralytics 生态系统,确保你的视觉 AI 解决方案具有面向未来的能力。对于特殊用例,开发者还可以探索 YOLO11 以获得通用稳健性,或 RT-DETR 以实现基于 Transformer 的精度。