YOLOv10 与 YOLOv9#
实时计算机视觉的发展一直以速度、准确率和架构效率方面的持续突破为标志。在为下一次部署评估现代解决方案时,对比 YOLOv10 和 YOLOv9,可以深入了解解决深度学习瓶颈的两种截然不同的方法。YOLOv9 专注于在训练期间最大化梯度信息流,而 YOLOv10 则率先采用原生端到端设计,彻底消除了传统后处理的障碍。
本综合指南将分析它们的架构创新、性能指标和理想应用场景,帮助开发者和研究人员针对具体的计算机视觉任务选择最优模型。
YOLOv10:无 NMS 端到端先驱#
YOLOv10 旨在解决传统目标检测器的延迟瓶颈,引入了革命性的端到端架构,原生移除了对非极大值抑制(NMS)的需求。
技术细节与发展沿革:
- 作者: Ao Wang、Hui Chen、Lihao Liu 等。
- 机构: 清华大学
- 日期: 2024 年 5 月 23 日
- 链接: Arxiv 论文、GitHub 仓库、Ultralytics 文档
架构与优势#
YOLOv10 对该领域最重要的贡献,是其用于无 NMS 训练的一致性双重分配策略。通过消除 NMS,模型显著降低了推理延迟,尤其是在后处理可能成为整个流程瓶颈的边缘设备上。它从效率和准确率两个角度优化了多个组件,最终打造出在速度与参数量之间取得出色权衡的模型。例如,YOLOv10-S 版本速度极快,非常适合高速视频分析和实时机器人导航。
劣势#
虽然免 NMS 设计对于边界框检测具有开创性,但 YOLOv10 主要作为纯目标检测器进行优化。它缺乏原生支持实例分割或姿态估计的较新生态系统的开箱即用通用性。
为生产环境准备 YOLOv10 时,务必确保将模型导出为 TensorRT 或 ONNX 等优化格式。在部署中直接运行原始 PyTorch 权重,可能会因为图操作未经过优化而导致推理速度低于预期。
YOLOv9:可编程梯度信息#
在 YOLOv10 之前,YOLOv9 引入了新颖的架构概念,用于解决深度神经网络固有的信息瓶颈问题,从而实现高效的参数利用。
技术细节与发展沿革:
- 作者: Chien-Yao Wang 和 Hong-Yuan Mark Liao
- 机构: 中国台湾中央研究院信息科学研究所
- 日期: 2024 年 2 月 21 日
- 链接: Arxiv 论文、GitHub 仓库、Ultralytics 文档
架构与优势#
YOLOv9 将可编程梯度信息(PGI)与广义高效层聚合网络(GELAN)相结合。PGI 确保关键目标信息不会在数据经过网络深层时丢失,从而为权重更新生成可靠的梯度。GELAN 最大限度地提升了网络参数的效率。这些创新共同使 YOLOv9 能够在 MS COCO 数据集上实现极高的平均精度均值(mAP),通常在使用更少 FLOPs 的同时超越更大型的模型。对于专注于最大化理论准确率指标的研究人员而言,它是一款出色的模型。
劣势#
尽管准确率很高,YOLOv9 仍然依赖标准 NMS 后处理。这意味着,虽然神经网络操作速度很快,但最终的边界框筛选可能会根据场景中的目标密度引入可变延迟。此外,与后续模型相比,其训练过程可能会消耗大量内存,因此在自定义数据集微调时需要更强大的 GPU 资源。
性能对比#
下表展示了两种模型的核心指标。请注意,YOLOv10 通常通过 TensorRT 实现更低的延迟,而 YOLOv9 则在其最大配置中突破了准确率上限。
| 模型 | 尺寸 (像素) | mAPval 50-95 | 速度 CPU ONNX (毫秒) | 速度 T4 TensorRT10 (毫秒) | 参数量 (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
| 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 |
下一代:为什么 YOLO26 是终极推荐#
虽然 YOLOv9 和 YOLOv10 都是令人印象深刻的里程碑,但机器学习领域发展迅速。对于现代生产环境,开发者越来越依赖集成完善且维护良好的 Ultralytics Platform 生态系统。截至 2026 年,无论是研究还是企业应用,明确的推荐选择都是新发布的 YOLO26。
YOLO26 继承了前代模型的基础概念,并通过简化的用户体验、简单的 API,以及相比臃肿的基于 Transformer 的架构在训练期间显著更低的内存需求,进一步提升了这些概念。
YOLO26 的关键创新#
- 端到端无 NMS 设计: YOLO26 延续了 YOLOv10 的突破,原生采用端到端架构,彻底消除了 NMS 后处理,从而实现更简单的部署和高度确定性的延迟表现。
- CPU 推理速度最高提升 43%: 开箱即用地针对边缘 AI进行了优化,是缺少专用 GPU 的嵌入式系统的理想选择。
- MuSGD 优化器: SGD 与 Muon 的突破性混合方案(受大语言模型优化方法启发),确保训练过程高度稳定并实现极快的收敛。
- 移除 DFL: 通过移除分布焦点损失,YOLO26 简化了模型导出流程,大幅增强了与低功耗设备及各种边缘部署框架的兼容性。
- 任务特定增强: 与专用的单任务检测器不同,YOLO26 是一款功能多样的强大模型。它利用语义分割损失实现更精细的像素级准确率,利用残差对数似然估计(RLE)实现精准的姿态估计,并利用专用角度损失解决 OBB(定向边界框)边界问题。
实际实现#
利用 Python SDK 训练和部署这些模型非常简单。以下示例演示了如何利用 Ultralytics 生态系统高效的训练流程,该流程会自动处理超参数调度和最优内存分配。
from ultralytics import YOLO
# Load the recommended state-of-the-art model
model = YOLO("yolo26n.pt") # Also compatible with 'yolov10n.pt' or 'yolov9c.pt'
# Train the model efficiently on a custom dataset
train_results = model.train(data="coco8.yaml", epochs=100, imgsz=640, device=0, batch=16)
# Run ultra-fast inference
predictions = model.predict("https://ultralytics.com/images/bus.jpg")
# Export to ONNX for simplified edge deployment
model.export(format="onnx")使用场景与建议#
在 YOLOv10 和 YOLOv9 之间进行选择,取决于你的具体项目需求、部署限制和生态系统偏好。
何时选择 YOLOv10#
YOLOv10 适合:
- 无 NMS 实时检测: 适用于能够从无需非极大值抑制的端到端检测中受益的应用,可降低部署复杂性。
- 速度与准确率的平衡: 适用于需要在各种模型规模之间实现推理速度和检测准确率良好平衡的项目。
- 延迟稳定的应用: 适用于推理时间可预测至关重要的部署场景,例如机器人技术或自主系统。
何时选择 YOLOv9#
以下场景推荐使用 YOLOv9:
- **信息瓶颈研究:**研究可编程梯度信息 (PGI) 和广义高效层聚合网络 (GELAN) 架构的学术项目。
- **梯度流优化研究:**专注于理解和缓解深度网络层在训练期间信息丢失问题的研究。
- **高精度检测基准测试:**需要将 YOLOv9 出色的 COCO 基准性能作为架构对比参考的场景。
何时选择 Ultralytics (YOLO26)#
对于大多数新项目,Ultralytics YOLO26 在性能和开发者体验之间提供了最佳组合:
- 无 NMS 边缘部署: 适用于需要稳定、低延迟推理,同时又不希望引入非极大值抑制后处理复杂性的应用。
- 仅使用 CPU 的环境: 适用于没有专用 GPU 加速的设备,此时 YOLO26 最高提升 43% 的 CPU 推理速度将带来决定性优势。
- 小目标检测: 适用于航空无人机影像或 IoT 传感器分析等具有挑战性的场景,在这些场景中,ProgLoss 和 STAL 能显著提升微小目标的准确率。
结论#
YOLOv9 和 YOLOv10 都各具优势。YOLOv9 充分体现了网络参数效率和理论梯度流最大化的成果,从而实现顶级准确率。同时,YOLOv10 作为学术领域的先驱,实现了端到端边界框检测,且没有 NMS 带来的延迟开销。
然而,对于寻求性能、多功能性和易用性完美平衡的开发者而言,升级到最新模型至关重要。凭借先进的 MuSGD 优化器、用于提升小目标检测效果的 ProgLoss + STAL 功能,以及全面的多任务支持,YOLO26 代表了应对任何现实世界计算机视觉挑战的明确最先进解决方案。