跳转至内容

YOLOv9 vs. PP-YOLOE+:技术比较

对于计算机视觉工程师来说,选择最佳物体检测架构是一项关键决策,需要在高精度需求与计算限制之间取得平衡。本综合指南比较了 YOLOv9PP-YOLOE+(一种针对PaddlePaddle 框架进行了优化的鲁棒检测器)进行了比较。我们分析了它们的架构创新、基准性能和部署适用性,以帮助您确定最适合您的计算机视觉应用。

YOLOv9:用于增强学习的可编程梯度信息

YOLOv9 代表了实时对象检测器发展中的一次重大飞跃。它于 2024 年初发布,解决了与深度神经网络中信息丢失相关的根本问题,为准确性和参数效率树立了新的基准。

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

该架构引入了两个开创性概念:可编程梯度信息 (PGI)广义高效层聚合网络 (GELAN)。随着网络变得更深,计算 损失函数 所必需的数据可能会丢失——这种现象被称为信息瓶颈。PGI 通过辅助可逆分支生成可靠梯度来解决此问题,确保深层特征保留关键信息。同时,GELAN 优化了参数利用率,与基于深度卷积的架构相比,使模型能够以更少的计算资源实现更高的 精度

集成到 Ultralytics 生态系统中,YOLOv9 受益于以用户为中心的设计,简化了复杂的工作流程。开发人员可以利用统一的 Python API 进行训练、验证和部署,从而大幅缩短从原型到生产的时间。这种集成还确保了与各种数据集和导出格式的兼容性。

了解更多关于YOLOv9的信息。

PP-YOLOE+:PaddlePaddle 生态系统内的高精度

PP-YOLOE+是PP-YOLOE的演进版本,由百度开发,作为PaddleDetection套件的一部分。它经过专门设计,可在PaddlePaddle框架上高效运行,为工业应用提供速度和精度之间的强大平衡。

作者: PaddlePaddle 作者
机构:百度
日期: 2022-04-02
预印本:https://arxiv.org/abs/2203.16250
GitHub:https://github.com/PaddlePaddle/PaddleDetection/
文档:https://github.com/PaddlePaddle/PaddleDetection/blob/release/2.8.1/configs/ppyoloe/README.md

PP-YOLOE+ 采用无anchor机制,无需预定义anchor boxes,从而简化了超参数调优过程。其骨干网络通常使用CSPRepResNet,并具有由任务对齐学习(TAL)驱动的独特头部设计。这种方法对齐了分类和定位任务,以提高 detect 结果的质量。尽管功能强大,PP-YOLOE+ 与 PaddlePaddle 生态系统紧密耦合,这对于已标准化使用 PyTorch 或 TensorFlow 的团队来说可能存在学习曲线。

生态系统依赖性

尽管 PP-YOLOE+ 提供了具有竞争力的性能,但其对 PaddlePaddle 框架的依赖可能会限制其与西方研究社区中常用的更广泛的基于 PyTorch 的工具和库的互操作性。

了解更多关于 PP-YOLOE+ 的信息

性能分析:速度、准确性和效率

比较这两种架构时,YOLOv9 在参数效率和峰值精度方面均表现出明显优势。GELAN 的集成使 YOLOv9 能够更有效地处理视觉数据,从而在 COCO 数据集上获得更高的 平均精度 (mAP) 分数,同时通常保持较低的延迟。

模型尺寸
(像素)
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
PP-YOLOE+t64039.9-2.844.8519.15
PP-YOLOE+s64043.7-2.627.9317.36
PP-YOLOE+m64049.8-5.5623.4349.91
PP-YOLOE+l64052.9-8.3652.2110.07
PP-YOLOE+x64054.7-14.398.42206.59

主要内容

  • 参数效率:YOLOv9-T模型实现了与大型模型相当的性能,而仅使用2.0M参数,远少于PP-YOLOE+t变体的4.85M。这使得YOLOv9特别适用于存储受限的边缘AI设备。
  • 峰值精度:YOLOv9-E 实现了卓越的 55.6% mAP,超越了最大的PP-YOLOE+x模型(54.7% mAP),尽管参数量减少了约40%(57.3M vs. 98.42M)。这凸显了GELAN在最大化特征提取能力方面的架构优势。
  • 推理速度:虽然PP-YOLOE+s在T4 GPU上的原始延迟方面略有优势,但YOLOv9模型通常提供更好的权衡,在相似的计算成本下提供显著更高的准确性。例如,YOLOv9-C在准确性方面优于PP-YOLOE+l(53.0% vs 52.9%),同时速度更快(7.16毫秒 vs 8.36毫秒)且更轻。

训练方法与易用性

这两种模型的开发者体验差异显著,主要受其底层框架和生态系统支持的影响。

Ultralytics 生态系统优势

通过 Ultralytics 选择 YOLOv9,可获得一套全面的工具,旨在简化机器学习生命周期。

  • 简单API: 训练模型仅需几行代码,抽象化了复杂的样板代码。
  • 内存效率:Ultralytics YOLO 模型优化了训练期间的内存使用,与基于 Transformer 的架构相比,允许在消费级硬件上使用更大的批处理大小
  • 多功能性:除了 detect 之外,Ultralytics 框架还支持实例分割姿势估计和分类,为各种任务提供统一的接口。
  • 高效训练:借助先进的数据增强和现成的预训练权重,开发者可以更快地实现收敛,节省宝贵的GPU时间。

使用 Ultralytics 简化工作流程

您只需几行 Python 代码即可加载、训练和验证 YOLOv9 模型,利用强大的 Ultralytics 引擎进行自动化超参数调优和实验跟踪。

from ultralytics import YOLO

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

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

# Validate the model's performance
metrics = model.val()

PaddlePaddle 环境

PP-YOLOE+ 需要 PaddleDetection 库。虽然功能强大,但它要求用户熟悉百度生态系统。对于尚未融入 PaddlePaddle 基础设施的用户来说,设置环境、将数据集转换为所需格式以及导出模型进行部署可能会更加复杂。

理想用例

理解每个模型的优势有助于为特定的实际应用选择合适的工具。

何时选择 YOLOv9

  • 自动系统:对于自动驾驶汽车和机器人技术而言,最大限度地提高准确性对安全至关重要,YOLOv9-E卓越的mAP提供了必要的可靠性。
  • 边缘部署: 轻量级 YOLOv9-T 非常适合部署在 Raspberry Pi 或 NVIDIA Jetson 设备上,用于 人员计数 或智能零售分析等任务。
  • 研究与开发:维护良好的生态系统和 PyTorch 支持使其成为研究人员原型化新的计算机视觉解决方案或集成目标 track 功能的理想选择。
  • 资源受限环境:在有限显存下需要高性能的应用受益于YOLOv9的高效架构和更低的内存占用。

何时选择 PP-YOLOE+

  • PaddlePaddle 用户:对于已使用百度基础设施的组织,PP-YOLOE+ 提供无缝集成和原生优化。
  • 工业检测(中国): 鉴于其在亚洲市场的广泛采用,该模型常用于依赖特定 PaddlePaddle 推理硬件的制造流程中。

结论

尽管这两个模型在 object detection 领域都是强大的竞争者,但 YOLOv9 成为全球大多数开发人员和企业的卓越选择。它创新性地使用可编程梯度信息 (PGI),以卓越的效率提供最先进的准确性,在关键指标上优于 PP-YOLOE+,同时使用显著更少的参数。

此外,Ultralytics 生态系统通过提供无与伦比的易用性、详尽的文档和活跃的社区,提升了 YOLOv9。无论您是构建安全警报系统、分析医学图像,还是开发智慧城市基础设施,YOLOv9 都能提供成功所需的性能平衡和多功能性。

其他值得考虑的模型

如果您正在探索最先进的视觉 AI,请考虑 Ultralytics 的这些其他强大模型:

  • YOLO11:YOLO 系列的最新演进,为前沿应用提供更快的速度和更高的准确性。
  • YOLOv8:一种高度通用的行业标准,支持 detect、segment、姿势估计和 OBB 任务。
  • RT-DETR:一种基于 Transformer 的实时检测器,在准确性方面表现出色,为基于 CNN 的架构提供了一种替代方案。

评论