YOLOv9 YOLOYOLOv9 :实时目标检测的进展
实时目标检测技术的演进历程,始终贯穿着对精度与延迟之间最佳平衡点的持续追求。在这项详尽对比中,我们将深入探讨两种重要的架构: YOLOv9,其以可编程梯度信息(PGI)和广义高效层聚合网络(GELAN)著称;以及YOLO,该模型家族通过神经架构搜索(NAS)和重复参数化技术实现优化。
我们还推出了最新一代的YOLO26,它通过端到端NMS设计和针对边缘设备的优化,进一步突破了这些界限。
比较性绩效指标
下表展示了COCO 数据集上关键性能指标的直接对比。YOLOv9 在参数效率YOLOv9 优异,且在同等模型规模下通常具有更高的准确率。
| 模型 | 尺寸 (像素) | mAPval 50-95 | 速度 CPU ONNX (毫秒) | 速度 T4 TensorRT10 (毫秒) | 参数 (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 |
| DAMO-YOLOt | 640 | 42.0 | - | 2.32 | 8.5 | 18.1 |
| DAMO-YOLOs | 640 | 46.0 | - | 3.45 | 16.3 | 37.8 |
| DAMO-YOLOm | 640 | 49.2 | - | 5.09 | 28.2 | 61.8 |
| DAMO-YOLOl | 640 | 50.8 | - | 7.18 | 42.1 | 97.3 |
YOLOv9:可编程梯度信息
YOLOv9 标志着深度学习架构设计的重要飞跃,有效解决了深度神经网络固有的信息瓶颈问题。
- 作者: Chien-Yao Wang, Hong-Yuan Mark Liao
- 组织:中央研究院信息科学研究所
- 日期: 2024-02-21
- Arxiv:YOLOv9:使用可编程梯度信息学习您想学习的内容
- GitHub:WongKinYiu/yolov9
主要架构创新
- 可编程梯度信息(PGI):随着网络层数加深,关键特征信息在前馈过程中常会丢失。PGI引入辅助可逆分支,在训练期间为主分支提供可靠梯度信息。这确保网络保留准确检测所需的本质特征,在不增加推理成本的前提下有效解决了"信息瓶颈"问题。
- GELAN 骨干网络:通用高效层聚合网络(GELAN)融合了CSPNet与ELAN的优势特性。它支持灵活选择计算模块(如ResBlocks或CSP模块),同时最大化参数利用率。由此构建的模型既轻量级又极具计算能力。
这些创新使YOLOv9 在通用目标检测中表现YOLOv9 ,尤其擅长在复杂场景中保留精细细节。
YOLO:神经网络架构搜索优化
YOLO专注于自动发现高效架构,并运用蒸馏技术提升性能。
- 作者:徐宪哲、江一琪、陈伟华、黄一伦、张远、孙秀宇
- 组织: 阿里巴巴集团
- 日期: 2022-11-23
- Arxiv:DAMO-YOLO: A Report on Real-Time Object Detection Design
- GitHub:tinyvision/DAMO-YOLO
架构亮点
YOLO 神经架构搜索(NAS)技术构建其骨干网络MAE-NAS,该方法旨在特定延迟约束下寻找最优网络结构。此外,它运用高效重参数化广义特征金字塔网络(Efficient RepGFPN)实现跨尺度特征融合。 该模型还高度依赖"零头"(ZeroHead)架构与蒸馏增强技术——通过大型教师模型引导小型学生模型的训练过程,从而显著提升其预测精度。
尽管具有创新性,但相较于YOLOv9的模块化设计,依赖NAS和复杂的蒸馏管道会使结果复现或为定制任务修改架构变得更为困难。
Ultralytics :生态系统与易用性
尽管两种架构都提供了强大的理论贡献,但开发者的实际体验却大相径庭。Ultralytics (YOLOv9 YOLOv9和YOLO26)提供了无缝的"零摩擦"体验。
简化工作流程
训练YOLO 通常涉及复杂的配置文件和特定环境设置(如PaddlePaddle 特定CUDA )。相比之下Ultralytics Python 实现了工作流标准化。您可在数分钟内完成前沿模型的加载、训练与部署。
from ultralytics import YOLO
# Load a pre-trained YOLOv9 model
model = YOLO("yolov9c.pt")
# Train on a custom dataset with a single command
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference
results = model("https://ultralytics.com/images/bus.jpg")
通用性与任务支持
Ultralytics 不仅限于边界框检测。该框架原生支持实例分割、姿势估计 定向边界框旋转框检测。这种多功能性使团队能够在不同任务间灵活切换,无需学习新库。相反YOLO 主要YOLO 标准检测,对这些复杂的下游任务集成支持较少。
训练效率与内存
Ultralytics YOLO 专为高效而设计。相较于transformer架构或具有不规则内存访问模式的NAS生成模型,其训练过程通常消耗更少的GPU 。这使得研究人员能够在消费级硬件上训练出稳健模型,从而让高端计算机视觉技术得以普及。
真实世界的应用
选择合适的模型取决于您的部署限制和性能目标。
YOLOv9 的理想应用场景
- 零售分析:YOLOv9c的高精度使其在拥挤货架上进行商品检测时表现卓越,尤其适用于遮挡现象普遍的场景。
- 医学影像:PGI架构有助于保留关键特征信息,这对检测医学扫描中的微小异常或识别骨折至关重要。
- 通用监控:适用于需要在高mAP 合理帧率之间取得平衡的标准安防监控场景。
YOLO的理想应用场景
- 受限硬件搜索:若您正在研究NAS设备,旨在寻找专为极特殊硬件限制量身定制的骨干架构——当标准架构无法满足需求时。
- 学术基准测试:供研究人员比较蒸馏技术与结构性重新参数化方案的效能。
为何YOLO26代表未来
对于2026年启动新项目的开发者而言,YOLO26提供了最具吸引力的功能集。YOLOv9 基础上YOLOv9 引入了端到NMS,无需进行非最大抑制后处理。这极大简化了部署流程并降低了延迟,尤其在边缘设备上表现显著。
YOLO26的关键创新包括:
- MuSGD优化器:融合SGD 混合算法,既能稳定训练过程又能加速收敛速度,将大型语言模型(LLM)训练的稳定性引入视觉领域。
- DFL消除:消除分布式焦点损失可简化模型图,从而简化向ONNX等格式导出的过程。 ONNX 和 TensorRT 等格式的导出过程更为顺畅。
- 增强的小目标检测:通过ProgLoss和STAL,YOLO26在航空影像和无人机应用中表现卓越。
让您的部署具备未来适应性
迁移至YOLO26可确保您的应用充分受益于边缘优化的最新进展。原生端到端设计意味着在CPU和NPU上实现更快的推理速度,这对电池供电的物联网设备至关重要。
结论
虽然YOLO 在神经架构搜索和知识蒸馏方面YOLO 有趣的概念, YOLOv9 及其更新版本YOLO26为绝大多数计算机视觉应用提供了更实用、更强大且更易用的解决方案。Ultralytics 确保开发者能够获取最优质的模型训练、追踪和部署工具,并享有详尽的文档支持与社区协作。
若需进一步探索模型架构,建议查阅我们关于YOLOv10 YOLO YOLO11 YOLOv9YOLO11 对比分析。