YOLOv10 vs. YOLOv9:技术对比
选择合适的物体检测模型对于任何计算机视觉项目都至关重要,它直接影响其性能、速度和部署可行性。随着该领域的快速发展,随时了解最新的架构至关重要。本页详细比较了两个最先进的模型:YOLOv10 和 YOLOv9。我们将分析它们的架构创新、性能指标和理想用例,以帮助您根据 准确性、速度和资源需求等因素做出明智的决定。
YOLOv10:实时端到端效率
YOLOv10 是清华大学研究人员于 2024 年 5 月发布的尖端模型。它旨在通过创建真正的端到端物体检测管道来提供卓越的实时性能。 突出的创新之处在于它消除了 非极大值抑制 (NMS),这是一个传统上会增加 推理延迟 的后处理步骤。 这使得 YOLOv10 成为对速度要求至关重要的应用的高效选择。
技术细节:
- 作者: Ao Wang, Hui Chen, Lihao Liu, et al.
- 组织: 清华大学
- 日期: 2024-05-23
- Arxiv: https://arxiv.org/abs/2405.14458
- GitHub: https://github.com/THU-MIG/yolov10
- 文档: https://docs.ultralytics.com/models/yolov10/
架构和主要特性
YOLOv10 引入了几项架构改进,以突破速度与精度之间权衡的界限。
- 无 NMS 训练: 核心创新是在训练期间使用 一致性双重分配。此策略为模型提供了丰富的监督,同时使其能够在推理期间无需 NMS 即可运行。通过消除此后处理瓶颈,YOLOv10 实现了更低的延迟并简化了部署流程。
- 整体效率-精度驱动设计: 作者对模型的组件进行了全面优化。这包括一个轻量级分类头以减少计算负载,空间通道解耦降采样以更有效地保留信息,以及一个秩引导块设计以消除计算冗余。为了以最小的开销提高准确性,该架构结合了大内核卷积和部分自注意力(PSA)。
优势与劣势
优势:
- 极高的效率: YOLOv10 经过优化,可最大限度地减少延迟和计算成本,使其成为目前速度最快的对象检测器之一。
- End-to-End Deployment: 无 NMS 设计消除了后处理步骤,从而简化了部署并减少了推理时间。
- 卓越的性能平衡: 它在速度和准确性之间实现了最先进的平衡,通常在相似规模下优于其他模型。
- Ultralytics 集成: YOLOv10 已无缝集成到 Ultralytics 生态系统中。这为用户提供了一个简化的体验,包括一个简单的 Python API、广泛的文档以及维护良好的框架的支持。
弱点:
- 新颖性: 作为一个非常新的模型,与 Ultralytics YOLOv8 等更成熟的模型相比,社区和第三方资源仍在发展中。
理想用例
对于实时性能和效率是最高优先级的应用,YOLOv10 是理想的选择。
- Edge AI: 其低延迟和小尺寸使其非常适合在资源受限的设备(如 NVIDIA Jetson)和移动平台部署。
- 高速视频分析: 需要在视频流中立即进行检测的场景,例如交通管理或实时安全监控。
- 自主系统: 在 机器人技术 和无人机中的应用,在这些领域中,快速决策至关重要。
YOLOv9:可编程梯度信息
YOLOv9于 2024 年 2 月推出,是台湾中研院信息科学研究所研究人员取得的重大进展。它解决了深度神经网络中的一个基本问题:数据在连续层中流动时的信息丢失。YOLOv9 引入了 可编程梯度信息 (PGI),以确保可靠的梯度信息可用于网络更新,从而实现更有效的学习和更高的准确性。
技术细节:
- 作者: Chien-Yao Wang, Hong-Yuan Mark Liao
- 组织: 台湾中研院资讯所
- 日期: 2024-02-21
- Arxiv: https://arxiv.org/abs/2402.13616
- GitHub: https://github.com/WongKinYiu/yolov9
- 文档: https://docs.ultralytics.com/models/yolov9/
架构和主要特性
YOLOv9 的架构旨在最大限度地提高信息保留和学习效率。
- 可编程梯度信息 (PGI): 这种新颖的概念有助于生成可靠的梯度来更新网络权重,从而有效地解决信息瓶颈问题,并防止细节在深度架构中丢失。
- 广义高效层聚合网络 (GELAN): YOLOv9 引入了 GELAN,这是一种新的网络架构,可优化参数利用率和计算效率。通过结合以前架构的优势,GELAN 使 YOLOv9 能够在不产生过高计算成本的情况下实现高性能。
优势与劣势
优势:
- 高精度: YOLOv9 实现了先进的精度,其中最大的变体 (YOLOv9-E) 在 COCO 数据集 上树立了 mAP 的新基准。
- 高效架构: 与旨在达到类似精度水平的其他模型相比,PGI 和 GELAN 的结合以更少的参数实现了卓越的性能。
- 信息保留: 其核心设计有效地缓解了信息丢失,从而更好地表示特征并检测难以检测的对象。
- Ultralytics 生态系统: 与 YOLOv10 一样,YOLOv9 也受益于集成到 Ultralytics 框架中,从而提供 易用性、全面的文档以及对用于 训练 和部署的强大工具集的访问。
弱点:
- 比 YOLOv10 更高的延迟: 虽然在其精度等级中效率很高,但通常具有比 YOLOv10 更高的推理延迟,如性能表所示。
- 复杂性: 与更直接的设计相比,PGI 和辅助可逆分支的概念为架构增加了一层复杂性。
理想用例
YOLOv9 非常适合以实现尽可能高的精度为主要目标,并且计算资源不太受限的应用。
- 高分辨率分析: 适用于需要详细分析大型图像的场景,例如在医学影像或卫星图像分析中。
- 高级安全系统: 复杂的监控环境,在这些环境中,准确识别各种对象对于安全至关重要。
- 质量控制: 工业应用,需要高精度地检测细微缺陷,以进行制造质量控制。
性能与基准测试:YOLOv10 vs. YOLOv9
下表详细比较了 COCO 数据集上 YOLOv10 和 YOLOv9 模型的各种规模。这些指标清楚地说明了这两个系列之间的设计权衡。
YOLOv10 在所有可比较的模型尺寸中始终表现出更低的延迟和更高的参数效率。例如,YOLOv10-B 实现了与 YOLOv9-C 相似的 mAP,但延迟降低了 46%,参数减少了 25%。这突出了 YOLOv10 在实时应用中的优势。
另一方面,YOLOv9-E 实现了最高的 mAP,达到 55.6%,使其成为对精度要求极高,即使以更高的延迟和更多参数为代价也在所不惜的场景的首选。
模型 | 尺寸 (像素) |
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 |
结论:您应该选择哪种模型?
YOLOv10 和 YOLOv9 之间的选择完全取决于您项目的具体需求。
-
如果您的主要限制是速度、延迟和计算效率,请选择 YOLOv10。其无 NMS 的端到端设计使其成为实时视频处理、边缘设备部署以及任何需要快速高效推理的应用程序的卓越选择。
-
如果您的主要目标是实现尽可能高的检测精度,请选择 YOLOv9。其创新的架构擅长保留信息,使其成为复杂场景和高风险应用的理想选择,在这些应用中,精度比绝对最低的延迟更重要。
这两款模型都是强大的、最先进的架构,它们都极大地受益于集成到 Ultralytics 生态系统中,这简化了它们的使用和部署。
探索其他模型
虽然 YOLOv10 和 YOLOv9 代表了最前沿的技术,但 Ultralytics 生态系统支持各种各样的模型。对于正在寻找成熟、多功能和均衡的模型的开发人员来说,Ultralytics YOLOv8 仍然是一个极好的选择,它支持检测之外的多种视觉任务。对于那些正在寻找 Ultralytics 最新进展的人,请查看 YOLO11。您可以在我们的 模型比较页面 上探索更多比较。