跳转至内容

YOLOv7 与YOLOv9:全面技术比较

YOLO (You Only Look Once,只看一次)系列的发展以神经网络架构的不断创新为标志,在推理速度、准确性和计算效率之间进行了重要的权衡。本比较深入探讨了 YOLOv7和 YOLOv9 的比较。 YOLOv9和 YOLOv9,YOLOv9 是 2024 年推出的架构,引入了可编程梯度信息 (PGI),以克服深度网络中的信息瓶颈。

性能和效率分析

从YOLOv7 到YOLOv9 的过渡代表着参数效率的重大飞跃。YOLOv7 经过优化,利用扩展高效层聚合网络 (E-ELAN) 突破了实时对象检测的极限,而YOLOv9 则引入了架构变化,使其能够以更少的参数和浮点运算 (FLOP) 实现更高的平均精度mAP)。

对于专注于边缘人工智能部署的开发人员来说,这种效率至关重要。如下表所示,YOLOv9e mAP 率高达55.6%,超过了较大的YOLOv7x,同时保持了具有竞争力的计算占用空间。相反,较小的YOLOv9t为高度受限的设备提供了轻量级解决方案,而YOLOv7 并没有明确针对这一层级提供相同的粒度。

模型尺寸
(像素)
mAPval
50-95
速度
CPU ONNX
(毫秒)
速度
T4 TensorRT10
(毫秒)
参数
(M)
FLOPs
(B)
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9
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

YOLOv7:优化可培训的免费赠品包

YOLOv7 于 2022 年 7 月发布,对YOLO 架构进行了多项结构改革,重点是在不增加推理成本的情况下优化训练过程。

建筑亮点

YOLOv7 利用E-ELAN(扩展高效层聚合网络)控制最短和最长梯度路径,使网络能够有效地学习更多特征。它还推广了基于串联模型的模型缩放,允许同时缩放深度和宽度。一项关键创新是计划中的重新参数化卷积,它简化了推理过程中的模型架构,从而提高了速度。

遗产状态

虽然YOLOv7 仍然是一个有能力的模型,但它缺乏对Ultralytics 生态系统中更新优化的本地支持。与更新的迭代版本相比,开发人员可能会发现与现代 MLOps 工具的集成更具挑战性。

了解有关YOLOv7的更多信息

YOLOv9:解决信息瓶颈问题

2024 年初推出的YOLOv9 解决了深度学习中的一个基本问题:数据通过连续层时的信息丢失。

建筑亮点

YOLOv9 的核心创新是可编程梯度信息 (PGI)。在深度网络中,有用的信息可能会在前馈过程中丢失,从而导致不可靠的梯度。PGI 提供了一个辅助监督框架,确保为损失函数保留关键信息。此外,广义高效层聚合网络(GELAN)扩展了 ELAN 的功能,允许任意阻塞,最大限度地利用了参数和计算资源。

这种架构使YOLOv9 在执行复杂的检测任务(如检测杂乱环境中的小物体或高分辨率航空图像分析)时异常强大。

了解有关YOLOv9的更多信息

为什么Ultralytics 模型YOLO11 和YOLOv8)是首选?

虽然YOLOv7 和YOLOv9 取得了令人瞩目的学术成就,但 Ultralytics YOLO系列,包括 YOLOv8和最先进的 YOLO11-是专为实际应用开发而设计的。这些机型将易用性生态系统集成运行效率放在首位,是大多数工程团队的上佳选择。

简化用户体验

Ultralytics 模型封装在统一的Python 应用程序接口中,抽象化了训练管道的复杂性。在对象检测实例分割姿势估计 定向边界框(旋转框检测)任务之间切换,只需更改一个参数,这是标准YOLOv7 或YOLOv9 实现所缺乏的多功能性。

from ultralytics import YOLO

# Load a model (YOLO11 automatically handles architecture)
model = YOLO("yolo11n.pt")  # Load a pretrained model

# Train the model with a single line of code
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Perform inference on an image
results = model("path/to/image.jpg")

维护良好的生态系统

选择Ultralytics 模型,就能进入一个强大的生态系统。这包括与Ultralytics HUB(以及即将推出的Ultralytics Platform)无缝集成,用于云培训和数据集管理。此外,活跃的社区和频繁的更新确保了与最新硬件的兼容性,例如导出到 TensorRTOpenVINO以获得最佳推理速度。

记忆和训练效率

Ultralytics 模型以其训练效率而闻名。与transformer模型(如 RT-DETR等)可能会占用内存且收敛速度较慢,Ultralytics YOLO 模型利用优化的数据加载器和Mosaic 增强技术,以较低的CUDA 内存需求实现快速训练。这样,开发人员就可以在消费级 GPU 上训练最先进的模型。

了解更多关于 YOLO11 的信息

理想用例

选择正确的模型取决于项目的具体限制因素。

YOLOv9在现实世界中的应用

  • 研究与基准:适用于要求COCO 数据集绝对最高报告准确性的学术研究。
  • 高保真监控:安防报警系统等场景中,1-2% 的精确度增益可证明较高的实施复杂性是合理的。

YOLOv7在现实世界中的应用

  • 传统系统:已在 Darknet 或早期PyTorch 生态系统上构建的项目,这些项目需要稳定的已知数量,而无需重构整个代码库。

Ultralytics 在现实世界中的应用YOLO11

  • 智能城市:利用物体追踪技术进行交通流量分析,在这种情况下,速度和部署的简便性至关重要。
  • 医疗:医学图像分析通常需要同时进行分割和检测。
  • 制造:在NVIDIA Jetson 或 Raspberry Pi 等边缘设备上部署质量控制系统,受益于向TFLite 和ONNX 的直接输出选项。

结论

YOLOv7 和YOLOv9 都是计算机视觉发展史上的重要里程碑。 YOLOv9凭借其 PGI 架构,在 v7 的基础上进行了引人注目的升级,提供了更高的效率和准确性。然而,对于正在寻找多功能、易用性和支持良好的解决方案的开发人员来说,YOLOv9 是一个很好的选择、 Ultralytics YOLO11仍然是值得推荐的选择。它兼顾了性能、全面的文档和多任务功能detect、segment、classify、姿势估计),提供了从概念到生产的最快途径。

探索其他模型

要找到最适合您的特定计算机视觉任务的产品,请考虑进行其他比较:


评论