YOLOv8 vs YOLOv5:详细对比
比较 Ultralytics YOLOv8 和 Ultralytics YOLOv5 的目标检测能力,揭示了 YOLO 架构的持续演进以及每种模型的独特优势。这两种模型均由 Ultralytics 开发,以其速度和准确性的卓越平衡而闻名。但是,它们满足计算机视觉领域中不同的优先级。本页提供了详细的技术比较,以帮助开发人员和研究人员根据其项目需求做出明智的决策,并突出显示 Ultralytics 生态系统的优势。
YOLOv8:前沿解决方案
作者: Glenn Jocher, Ayush Chaurasia, 和 Jing Qiu
组织: Ultralytics
日期: 2023-01-10
GitHub: https://github.com/ultralytics/ultralytics
文档: https://docs.ultralytics.com/models/YOLOv8/
Ultralytics YOLOv8是 YOLO 系列中最新的主要版本,它被设计为一个统一的框架,以支持全方位的视觉 AI 任务。这些任务包括目标检测、实例分割、图像分类、姿势估计和旋转框检测 (OBB)。YOLOv8 引入了重大的架构创新,例如无锚框检测器和改进的 C2f 颈部,从而增强了其性能和灵活性。
优势
- 卓越的准确性和性能:在所有模型尺寸上,YOLOv8 始终比 YOLOv5 提供更高的准确性 (mAP),同时保持具有竞争力的推理速度。 这为要求苛刻的应用程序提供了出色的性能平衡。
- 增强的通用性:YOLOv8被设计为一个综合框架,原生支持多个视觉任务。 这种通用性允许开发人员为复杂的多方面项目使用单一、一致的模型架构,从而简化开发和部署。
- 现代架构: YOLOv8 的无锚框设计降低了训练过程的复杂性,并减少了需要调整的超参数数量,通常可以更好地泛化到不同的数据集。更新后的 C2f 模块提供了比 YOLOv5 的 C3 模块更高效的特征融合。
- 简化的用户体验:与所有 Ultralytics 模型一样,YOLOv8 受益于简单的 Python API 和 CLI、全面的 文档 以及维护良好的生态系统。这包括与 Ultralytics HUB 的集成,用于无代码训练和 MLOps 管理。
- 内存效率: Ultralytics YOLO 模型经过优化,可在训练和推理期间实现低内存使用率,使其比许多资源密集型架构(如 Transformers)更易于访问。
弱点
- 计算要求:虽然 YOLOv8 模型效率很高,但较大的 YOLOv8 模型 (L/X) 需要大量的计算能力,这可能会限制在资源严重受限的边缘设备上的部署。
理想用例
对于需要最先进的性能和灵活性的新项目,建议选择 YOLOv8。
- 高级机器人技术: 适用于需要高精度进行复杂场景理解和对象交互的场合。
- 高分辨率图像分析: 擅长于需要检测细微细节的应用,如医学图像分析。
- 多任务视觉系统:非常适合需要同时执行检测、分割和姿势估计的系统,例如在智能零售分析中。
YOLOv5:已建立且通用的标准
作者: Glenn Jocher
组织: Ultralytics
日期: 2020-06-26
GitHub: https://github.com/ultralytics/yolov5
文档: https://docs.ultralytics.com/models/yolov5/
Ultralytics YOLOv5 在发布后不久便成为行业标准,因其在速度、准确性和卓越的易用性方面实现了出色的平衡而备受赞誉。它基于 PyTorch 构建,具有 CSPDarknet53 主干和 PANet neck。其基于 anchor 的检测头非常高效,并且该模型可以跨各种尺寸(n、s、m、l、x)进行缩放,以适应不同的计算预算。
优势
- 卓越的推理速度:YOLOv5 针对快速推理进行了高度优化,使其成为实时系统的首选,尤其是在 CPU 和 边缘设备 上。
- 成熟且稳定的生态系统: YOLOv5 在该领域已经发展了数年,拥有庞大的用户群、广泛的社区支持以及丰富的教程和第三方集成。其稳定性使其成为生产环境的可靠选择。
- 易用性:YOLOv5 以其简单的 API 和直接的训练流程而闻名,这使其在初学者和专家中都非常受欢迎。Ultralytics 生态系统 确保了从训练到部署的流畅用户体验。
- 训练效率: 该模型提供高效的训练过程,并提供现成的预训练权重,从而能够快速进行原型设计和开发。
弱点
- 准确率较低: 与 YOLOv8 相比,对于给定的尺寸,YOLOv5 模型通常具有较低的 mAP 分数。性能差距在较大的模型中变得更加明显。
- 基于Anchor的检测: 它依赖于预定义的anchor框,有时可能需要手动调整,才能在具有不规则形状或缩放比例的对象的数据集上获得最佳性能。
理想用例
YOLOv5 仍然是一个强大且相关的模型,尤其适用于速度和稳定性至关重要的应用。
- 边缘计算: 其较小的变体 (n/s) 非常适合部署在资源受限的设备上,如 Raspberry Pi 和 NVIDIA Jetson。
- 实时监控:非常适合低延迟至关重要的安全系统和实时视频监控。
- 移动应用:适用于计算资源有限的设备端目标检测任务。
性能对决:YOLOv8 vs. YOLOv5
在 COCO 数据集上的性能基准清楚地说明了 YOLOv8 所取得的进展。总的来说,YOLOv8 模型在具有可比或改进的性能特征下,提供了卓越的准确性。
模型 | 尺寸 (像素) |
mAPval 50-95 |
速度 CPU ONNX (毫秒) |
速度 T4 TensorRT10 (毫秒) |
参数 (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
YOLOv8n | 640 | 37.3 | 80.4 | 1.47 | 3.2 | 8.7 |
YOLOv8s | 640 | 44.9 | 128.4 | 2.66 | 11.2 | 28.6 |
YOLOv8m | 640 | 50.2 | 234.7 | 5.86 | 25.9 | 78.9 |
YOLOv8l | 640 | 52.9 | 375.2 | 9.06 | 43.7 | 165.2 |
YOLOv8x | 640 | 53.9 | 479.1 | 14.37 | 68.2 | 257.8 |
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 |
从表中可以明显看出,YOLOv8 模型提供了显着的 mAP 提升。 例如,YOLOv8s 实现了 44.9 mAP,远远超过了 YOLOv5s 的 37.4 mAP,而参数和延迟仅略有增加。 同样,YOLOv8x 达到了 53.9 mAP,优于 YOLOv5x 的 50.7 mAP,同时计算效率更高。
结论:您应该选择哪种模型?
YOLOv5 和 YOLOv8 都是非常出色的模型,但它们满足不同的需求。
-
YOLOv5 对于那些将最大推理速度和一个成熟、稳定的平台作为最高优先级的应用来说,是一个绝佳的选择。对于在资源受限的设备上部署以及从其广泛的生态系统中获益的项目来说,它仍然是一个强大的竞争者。
-
YOLOv8 代表了下一代 YOLO 技术。对于寻求最高准确性和跨多个视觉任务的通用性的新项目来说,它是推荐的选择。其现代化的无锚框架构和统一的框架使其成为从研究到生产的各种应用中更强大、更灵活的解决方案。
对于大多数使用场景,YOLOv8 卓越的性能和灵活性使其成为首选。
探索其他模型
Ultralytics 在 计算机视觉 领域不断创新。对于正在探索其他最先进选项的用户,我们还提供 YOLOv9、YOLOv10 和最新的 YOLO11 等模型,每种模型都提供独特的优势。您可以在我们的 模型比较页面 上找到更详细的分析。