YOLOv9 与YOLOv5:详细对比
本页提供 YOLOv9 和YOLOv5(YOLO 系列中的两种流行型号)之间的技术比较,重点关注它们的物体检测功能。我们深入探讨了它们在架构上的差异、性能指标、训练方法和合适的使用案例,以帮助您为计算机视觉任务选择合适的模型。
YOLOv9:可编程渐变信息
YOLOv9 由台湾中央研究院信息科学研究所的 Chien-Yao Wang 和 Hong-Yuan Mark Liao 于 2024 年 2 月推出,是实时物体检测领域的一大进步。他们的论文《YOLOv9:利用可编程梯度信息学习你想学的东西》详细介绍了该模型,代码可在GitHub 上获取。
结构与创新:YOLOv9 引入了两项关键创新:可编程梯度信息 (PGI) 和广义高效层聚合网络 (GELAN)。PGI 解决了深度网络中的信息丢失问题,使模型能够更有效地学习,而 GELAN 则优化了网络架构,提高了参数利用率和计算效率。两者结合,在不增加计算成本的情况下提高了准确性。
性能YOLOv9 在 MS COCO 数据集上实现了最先进的性能,与以前的YOLO 版本和其他实时物体检测器相比,显示出更高的准确性和效率。例如,YOLOv9c 在使用 25.3M 参数的情况下实现了 53.0mAPval50-95。
使用案例:YOLOv9 非常适合要求高精度和高效率的应用,例如
- 高精度物体检测:精度要求极高的应用场景,如自动驾驶、高级监控和机器人视觉。
- 资源有限的环境:虽然训练需要比YOLOv5 更多的资源,但高效的架构允许在边缘设备上部署,并优化了推理速度。
优势:
- 高精确度:实现卓越的 mAP 分数,尤其是在 YOLOv9e 等模型中。
- 高效设计:与精度相似的以往模型相比,GELAN 和 PGI 有助于提高参数和计算效率。
弱点
- 更高的培训资源需求:与YOLOv5 相比,训练YOLOv5 模型需要更多的计算资源和时间。
- 相对较新的模式:与更成熟的YOLOv5 相比,作为一款较新的机型,其社区和文档仍在发展之中。
YOLOv5:多功能和速度
Ultralytics YOLOv5 由 Glenn Jocher 撰写,于 2020 年 6 月发布,以速度快、易用性强、功能多而著称。虽然没有具体的 arXiv 论文,但Ultralytics YOLOv5 文档和GitHub 存储库中提供了详细信息。
架构和功能: YOLOv5 采用 CSP Bottleneck 和 PANet 等架构,注重速度和可访问性。它提供一系列模型尺寸(YOLOv5n、s、m、l、x),以满足不同的计算预算和性能需求。YOLOv5 由PyTorch 实现,用户界面友好,适应性强。
性能: YOLOv5 在速度和准确性之间取得了平衡,因此适合广泛的实际应用。YOLOv5s 是一种小型变体,推理速度快,可达到 37.4 mAPval50-95。
使用案例: YOLOv5 的用途非常广泛,非常适合那些对部署速度和简便性要求极高的应用场景:
- 实时应用:非常适合需要快速推理的应用,如实时视频处理、机器人和无人机视觉。
- 边缘部署:较小的模型(YOLOv5n、YOLOv5s)由于计算需求较低,非常适合在边缘设备和移动平台上部署。
- 快速原型设计和开发: YOLOv5 的易用性和丰富的文档使其成为快速开发周期和教育目的的绝佳选择。
优势:
- 高速:推理速度快,尤其是对较小的模型变量。
- 易于使用:文档齐全,社区庞大且活跃,易于使用和实施。
- 多功能性:有多种尺寸可供选择,可适应各种任务,包括检测、分割和分类。
弱点
- 与 YOLOv9 相比精度较低:一般来说,YOLOv5 模型无法达到与最新 YOLOv9 相同的精度水平,尤其是在要求较高的场景中。
- 架构创新性低于 YOLOv9:虽然有效,但其架构没有采用 YOLOv9 中的 PGI 和 GELAN 创新技术。
模型 | 大小(像素) | mAPval50-95 | 速度CPU ONNX(毫秒) | 速度T4张量RT10(毫秒) | 参数(M) | FLOPs(B) |
---|---|---|---|---|---|---|
YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
YOLOv9s | 640 | 46.8 | - | 3.54 | 7.1 | 26.4 |
YOLOv9m | 640 | 51.4 | - | 6.43 | 20.0 | 76.3 |
YOLOv9c | 640 | 53.0 | - | 7.16 | 25.3 | 102.1 |
YOLOv9e | 640 | 55.6 | - | 16.77 | 57.3 | 189.0 |
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 |
结论
在 YOLOv9 和YOLOv5 之间做出选择取决于您的项目优先级。如果准确性是最重要的,并且有培训资源,那么 YOLOv9 是更好的选择。对于优先考虑速度、易用性和部署灵活性(尤其是在边缘设备上)的应用,YOLOv5 仍然是一个极佳且被广泛采用的选择。
对于有兴趣探索其他模型的用户,Ultralytics 还提供YOLOv8、YOLOv7、YOLOv6 和最新发布的YOLO11,每种模型都有自己的优势和优化功能。请浏览Ultralytics 模型文档,了解全部选项。