Ultralytics YOLO27:

YOLOv9 vs YOLOv10#

实时计算机视觉领域取得了巨大进展,这在很大程度上得益于研究人员持续突破性能与效率之间的界限。在分析最先进视觉模型的演进时,YOLOv9YOLOv10 代表了两个关键里程碑。这两个模型均于 2024 年初发布,通过引入颠覆范式的架构设计,解决了深度神经网络长期存在的挑战,从信息瓶颈到后处理延迟问题。

这份全面的技术对比将探讨它们的架构、性能指标和理想部署场景,帮助你应对现代目标检测生态系统的复杂性。

模型起源与架构突破#

了解这些模型的发展脉络和理论基础,对于为你的具体计算机视觉项目选择合适的架构至关重要。

YOLOv9:掌控信息流#

YOLOv9 于 2024 年 2 月 21 日推出,旨在解决数据通过深度神经网络时产生信息丢失这一理论问题。

YOLOv9 引入了广义高效层聚合网络(GELAN),结合 CSPNet 和 ELAN 的优势,最大限度地提高参数利用率。此外,它还采用了**可编程梯度信息(PGI)**这一辅助监督机制,确保深层保留关键的空间信息。这使 YOLOv9 在要求高特征保真度的任务中表现尤为出色,例如医学图像分析或远距离监控。

了解更多关于 YOLOv9 的信息

YOLOv10:实时端到端效率#

YOLOv10 于 2024 年 5 月 23 日不久后发布,通过消除目标检测中最著名的延迟瓶颈之一——非极大值抑制(NMS),重新构想了部署流程。

YOLOv10 在训练期间采用一致的双重分配,从而实现原生的 NMS-free 设计。这消除了推理过程中的后处理开销,大幅降低了延迟。结合以整体效率和准确率为导向的模型设计,YOLOv10 在保持有竞争力的精度的同时降低了计算开销(FLOPs),实现了出色的平衡,因此对边缘计算应用极具吸引力。

进一步了解 YOLOv10

性能与指标对比#

在标准 MS COCO 数据集上对这两款强大模型进行基准测试时,可以明显看出纯准确率与推理延迟之间存在不同的权衡。

模型尺寸
(像素)
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
YOLOv10n64039.5-1.562.36.7
YOLOv10s64046.7-2.667.221.6
YOLOv10m64051.3-5.4815.459.1
YOLOv10b64052.7-6.5424.492.0
YOLOv10l64053.3-8.3329.5120.3
YOLOv10x64054.4-12.256.9160.4

数据分析#

  1. 延迟与准确率: YOLOv10 系列模型通常能提供更快的推理速度。例如,YOLOv10s 在 TensorRT 上仅需 2.66ms 即可达到 46.7% mAP,而 YOLOv9s 则需要 3.54ms,才能达到几乎相同的 46.8% mAP。
  2. 顶级精度: 对于要求最高检测准确率的研究场景,YOLOv9e 仍然是一个强有力的选择,可达到令人印象深刻的 55.6% mAP。其 PGI 架构确保能够可靠地提取细微特征。
  3. 效率: YOLOv10 在 FLOPs 效率方面表现出色。这会直接转化为更低的功耗,而对于运行视觉 AI 模型的电池供电设备来说,这是一个至关重要的指标。
部署提示

如果你要部署到 CPU 或 Raspberry Pi 等资源受限的边缘硬件上,YOLOv10 的 NMS-free 架构通常可以通过消除非确定性后处理步骤,提供更流畅的流程。

Ultralytics 的优势:训练与生态系统#

虽然架构差异至关重要,但周边软件生态系统在很大程度上决定了项目能否成功。YOLOv9 和 YOLOv10 均已完全集成到 Ultralytics 生态系统中,为开发者提供无与伦比的使用体验。

易用性与内存效率#

与会造成严重内存膨胀的复杂 Transformer 架构不同,Ultralytics YOLO 模型经过专门设计,可优化 GPU 内存的使用。这使研究人员能够在消费级硬件上使用更大的批量大小,让最先进的 AI 技术触手可及。

统一的 Python API 抽象掉了数据增强超参数调优的复杂性。你只需修改权重文件字符串,就可以在不同架构之间无缝切换。

from ultralytics import YOLO

# Load a YOLOv10 model (Easily swap to "yolov9c.pt" for YOLOv9)
model = YOLO("yolov10n.pt")

# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=50, imgsz=640, device=0)

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

# Export the trained model to ONNX format for deployment
model.export(format="onnx")

无论你是需要将指标记录到 MLflow,还是导出到 TensorRT以便在高速硬件上部署,Ultralytics 平台都能原生处理。

理想应用场景#

在这些模型之间进行选择取决于你的部署限制:

  • 选择 YOLOv9 的情况: 如果你正在处理小目标检测任务,例如航空无人机图像或检测小型肿瘤,此时 GELAN 架构的特征保留能力可以提供最高的保真度。
  • 选择 YOLOv10 的情况: 如果你的主要目标是在边缘设备上实现实时推理。NMS-free 设计使其非常适合自主机器人、实时交通监控和智能监控

面向未来:转向 YOLO26#

虽然 YOLOv8、YOLOv9 和 YOLOv10 都是出色的模型,但希望构建现代 AI 解决方案的开发者应考虑于 2026 年 1 月发布的 Ultralytics YOLO26

YOLO26 代表了前几代模型的终极融合,结合了 YOLOv9 的准确率优势和 YOLOv10 的效率优势。

YOLO26 的关键创新#

  • 端到端 NMS-free 设计: YOLO26 在 YOLOv10 奠定的基础上进一步发展,原生消除 NMS 后处理,使部署更加简单。
  • MuSGD 优化器: MuSGD 是 SGD 和 Muon 的混合体,将先进的 LLM 训练创新引入计算机视觉,实现极其稳定且快速的收敛。
  • CPU 推理速度最高提升 43%: 针对边缘计算和没有专用 GPU 的设备进行了专门优化。
  • 移除 DFL: 移除了 Distribution Focal Loss,以简化模型导出并提升与低功耗设备的兼容性。
  • ProgLoss + STAL: 这些改进后的损失函数显著提升了小目标识别能力,达到或超越 YOLOv9 的表现。

对于评估旧架构的研究人员来说,RT-DETRYOLO11 也是 Ultralytics 生态系统中有完善文档的替代方案。不过,如果你希望在所有视觉任务中实现最大的通用性,迁移到 Ultralytics Platform 上的 YOLO26,可以确保你利用开源视觉 AI 的顶尖能力。

评论