跳转至内容

YOLOv9 与YOLOv6.0:详细技术比较

选择理想的物体检测架构是开发强大的计算机视觉解决方案的关键一步。这一决定往往需要在准确性、推理速度和计算资源消耗之间进行复杂的权衡。本指南全面比较了 YOLOv9YOLOv6.0 之间进行了全面的技术比较。YOLOv6.0 是专为工业部署速度而优化的模型。我们将分析它们的架构创新、性能指标和理想部署方案,帮助您做出明智的选择。

YOLOv9:重新定义精度和效率

2024 年初推出的YOLOv9 代表了实时物体检测领域的范式转变。它从根本上解决了深度神经网络中的信息丢失问题,在保持卓越计算效率的同时实现了超高精度。

作者:王建尧、廖鸿源Chien-Yao Wang and Hong-Yuan Mark Liao
组织:台湾中央研究院信息科学研究所
日期:2024-02-21
Arxiv:https://arxiv.org/abs/2402.13616
GitHub:https://github.com/WongKinYiu/yolov9
Docs:ultralytics

建筑创新

YOLOv9 的核心优势在于两个突破性的概念:可编程梯度信息 (PGI)广义高效层聚合网络 (GELAN )。随着网络的深入,在前馈过程中往往会丢失重要的特征信息。PGI 可确保在更新网络权重时保留可靠的梯度信息,从而解决这一信息瓶颈问题。同时,GELAN 优化了架构,最大限度地提高了参数利用率,与传统设计相比,该模型可以用更少的参数和FLOP达到更高的精度。

在Ultralytics 生态系统中使用YOLOv9 时,可以获得无缝的开发体验。它拥有用户友好的Python API、全面的文档和强大的支持,使研究人员和企业开发人员都能使用它。

优势

  • 卓越的精度: YOLOv9 实现了最先进的 mAPCOCO 数据集等基准测试中获得了最先进的 mAP 分数,在检测精度方面始终优于前代产品。
  • 计算效率:GELAN 架构可确保模型提供顶级性能,而无需通常与高精度模型相关的高昂计算成本,因此适用于边缘人工智能应用。
  • 信息保护:通过缓解信息瓶颈,PGI 可以让模型学习到更有效的特征,从而在复杂场景中进行更可靠的检测。
  • 生态系统集成:用户可受益于全套Ultralytics 工具,包括简化的训练、验证和部署管道。此外,还对模型进行了优化,以降低训练过程中的内存使用率。 transformer架构相比,Ultralytics
  • 多功能性:除检测外,该架构还支持扩展到其他任务,如实例分割和全景分割。

弱点

  • 新颖性:尽管官方支持非常广泛,但作为一个相对较新的加入者,社区生成的教程和第三方实施范例的数量仍在不断扩大。

理想用例

YOLOv9 在精度要求极高的场景中表现出色:

  • 医学成像:用于肿瘤检测等任务的高分辨率分析,在这些任务中,保留细粒度细节至关重要。
  • 自动驾驶:关键的ADAS功能需要准确识别行人、车辆和障碍物。
  • 工业检测:识别生产过程中的微小缺陷,这些缺陷的漏检可能导致代价高昂的故障。

了解有关YOLOv9的更多信息

YOLOv6.0:为工业速度而生

YOLOv6.0 是美团视觉团队开发的YOLOv6 系列的第三次迭代。YOLOv6-3.0 于 2023 年初发布,其设计重点是最大限度地提高工业应用的推理速度,尤其是在GPU 硬件上。

作者:李楚怡、李露露、耿一飞等
机构:美团网
日期:2023-01-13
Arxiv:https://arxiv.org/abs/2301.05586
GitHubYOLOv6
Docs:ultralytics

建筑特色

YOLOv6.0 采用了硬件感知神经网络设计。它采用了高效的重参数化骨干(RepBackbone)和由混合块组成的颈部。这种结构经过专门调整,以利用 GPU 的并行计算能力,从而在推理过程中提供尽可能低的延迟,同时保持具有竞争力的准确性。

优势

  • 高推理速度:该架构针对吞吐量进行了大量优化,使其成为GPU 部署的最快选择之一。
  • 速度与精确度的权衡:对于以毫秒为单位的实时系统(如高速分拣线)来说,它提供了一种令人信服的平衡。
  • 工业重点:该模型旨在应对制造和自动化环境中的实际挑战。

弱点

  • 峰值精度较低:虽然速度很快,但该模型的峰值精度普遍低于YOLOv9 ,尤其是在较大的模型变体中。
  • 生态系统有限:与广泛采用的Ultralytics 框架相比,社区和工具生态系统规模较小。
  • 任务特殊性:它主要专注于物体检测,缺乏Ultralytics 新模型中的原生多任务多功能性(如姿势估计 或旋转框检测)。

理想用例

YOLOv6.0 非常适合高吞吐量环境:

  • 实时监控:安全警报系统同时处理多个视频流。
  • 生产线分类:在快速移动的传送带上对物体进行快速分类和定位。

了解有关YOLOv6.0 的更多信息

性能分析

下面的比较突出显示了两种型号的性能指标。虽然YOLOv6.0 的最小变体具有令人印象深刻的速度,但YOLOv9 表现出更高的效率,在可比的支架中以更少的参数提供更高的精度。

模型尺寸
(像素)
mAPval
50-95
速度
CPU ONNX
(毫秒)
速度
T4 TensorRT10
(毫秒)
参数
(M)
FLOPs
(B)
YOLOv9t64038.3-2.32.07.7
YOLOv9s64046.8-3.547.126.4
YOLOv9m64051.4-6.4320.076.3
YOLOv9c64053.0-7.1625.3102.1
YOLOv9e64055.6-16.7757.3189.0
YOLOv6.0n64037.5-1.174.711.4
YOLOv6.0s64045.0-2.6618.545.3
YOLOv6.0m64050.0-5.2834.985.8
YOLOv6.0l64052.8-8.9559.6150.7

主要收获:

  1. 效率之王: YOLOv9 仅用 25.3M 个参数就实现了 53.0% 的mAP 。相比之下,YOLOv6.0l 需要 5960 万个参数才能达到 52.8% 的较低mAP 。这说明YOLOv9 的架构设计非常出色,能够 "以更少的资源实现更多的功能"。
  2. 峰值性能: YOLOv9型号以 55.6% 的mAP 树立了很高的标杆,其精确度是YOLOv6 系列在此次比较中无法达到的。
  3. 速度与精度: YOLOv6.0n的速度快得令人难以置信(1.17ms),这使它成为满足极端低延迟要求的可行选择,在这种情况下,精度下降(37.5%mAP)是可以接受的。然而,对于通用应用,YOLOv9 提供了更好的平衡(2.3ms 时的 38.3%mAP ),参数明显减少(2.0M 对 4.7M)。

内存效率

包括YOLOv9 在内的Ultralytics YOLOv9 模型因其在训练过程中优化的内存使用而闻名。与一些需要大量GPU VRAMtransformer重型transformer的模型不同,这些模型通常可以在消费级硬件上进行训练,从而实现了最先进的人工智能开发的平民化。

培训和可用性

两种模式的用户体验有很大不同。YOLOv9 已完全集成到Ultralytics 生态系统中,提供了简化的工作流程。开发人员只需几行代码,就能利用简单的Python 界面来训练、验证和部署模型。

from ultralytics import YOLO

# Load a pre-trained YOLOv9 model
model = YOLO("yolov9c.pt")

# Train the model on your custom dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference on an image
results = model.predict("image.jpg")

该集成可提供高级功能,如自动超参数调整、与TensorBoardTensorBoard的实时日志记录。 Weights & Biases以及无缝导出为 ONNXTensorRT.

相比之下,培训YOLOv6.0 通常需要浏览其特定的 GitHub 存储库和培训脚本,这对于习惯了Ultralytics 库即插即用特性的用户来说,学习曲线可能会比较陡峭。

结论

虽然YOLOv6.0 仍然是要求GPU 硬件具有绝对最低延迟的特定工业领域的有力竞争者,但YOLOv9 已成为现代计算机视觉任务的最佳全面选择。

YOLOv9 将最先进的精度、出色的参数效率和Ultralytics 生态系统的巨大优势完美地结合在一起。YOLOv9 能够以更轻的模型实现更高的精度,从而在边缘部署场景中降低存储成本并加快传输速度。此外,与Ultralytics 模型相关的易用性、广泛的文档和活跃的社区支持也大大加快了开发周期,使团队能够满怀信心地从概念转向部署。

对于追求下一代性能的开发人员,我们还建议探索 Ultralytics YOLO11,我们的最新模型进一步完善了这些功能,适用于更广泛的任务,包括姿势估计 面向对象检测。您还可以将它们与transformer方法进行比较,如 RT-DETR等基于变换器的方法进行比较


评论