跳转至内容

YOLOv10 vs YOLOv7:详细技术对比

选择合适的物体检测模型对于计算机视觉项目至关重要,它会影响性能、速度和资源使用。本页面提供了 YOLOv10 和 YOLOv7 这两个 You Only Look Once (YOLO) 系列中的重要模型之间的技术比较,以帮助您选择最适合您需求的模型。我们将深入研究它们的架构、性能指标和理想用例。

YOLOv10

YOLOv10 由 清华大学 的研究人员于 2024 年 5 月推出,代表了 实时对象检测 领域的一项重大进步。它的主要创新是通过消除推理过程中对 非极大值抑制 (NMS) 的需求来实现端到端对象检测。这一突破降低了计算开销并降低了 推理延迟,从而提高了部署效率。

技术细节:

架构和主要特性

YOLOv10 引入了几项旨在优化速度-准确性权衡的架构创新:

  • 无NMS训练: 通过利用一致的 dual assignments 进行标签分配,YOLOv10 避免了冗余预测,并消除了对 NMS 后处理步骤的需求。这简化了部署流程,并使模型真正实现端到端。
  • 整体效率-精度驱动设计: 模型架构经过整体优化,兼顾效率和性能。这包括引入轻量级分类头和使用空间通道解耦降采样来减少计算冗余,同时增强模型能力。
  • 无Anchor方法: 与其他现代 YOLO 模型一样,它采用了无anchor检测器设计,从而简化了检测头并提高了泛化能力。
  • 无缝 Ultralytics 集成: YOLOv10 已完全集成到 Ultralytics 生态系统中,受益于简化的用户体验,包括简单的 Python API 和强大的 CLI 命令。这使得训练、验证和部署异常简单。

优势

  • 顶尖效率: 无需 NMS 的设计和架构优化带来了更快的推理速度和显著更低的延迟,这对于实时应用至关重要。
  • 竞争性准确率: 与其前身相比,YOLOv10 在大幅减小模型尺寸和计算成本的同时,保持了强大的准确率。
  • 简化部署: 移除 NMS 创建了一个真正的端到端检测流程,使其更易于部署,尤其是在边缘设备上。
  • 卓越的可扩展性: 提供从 Nano (N) 到 Extra-large (X) 的一系列模型,满足从资源受限的边缘硬件到强大的云服务器的各种性能需求。

弱点

  • 较新的模型: 作为一个最近发布的版本,与 YOLOv7 或 Ultralytics YOLOv8 等更成熟的模型相比,社区支持和第三方集成的数量可能较少。

了解更多关于 YOLOv10 的信息

YOLOv7

YOLOv7于2022年7月发布,凭借其在速度和准确性方面的卓越平衡,迅速为目标检测树立了新标准。它由中研院信息科学研究所的研究人员开发,引入了几项架构改进和训练策略,即“trainable bag-of-freebies”,以提高性能,而无需增加推理成本。

技术细节:

架构和主要特性

YOLOv7的架构包含多项关键增强功能,这些功能在发布时突破了实时目标检测的界限:

  • 扩展高效层聚合网络 (E-ELAN): 这种先进的网络结构提高了模型学习多样化特征的能力,同时保持高效的梯度流动,从而实现更高的准确性和更快的收敛速度。
  • 基于连接的模型的模型缩放: YOLOv7 引入了复合缩放方法,可以智能地调整模型深度和宽度,从而优化不同计算预算下的性能。
  • 可训练的免费赠品(Trainable Bag-of-Freebies): 它利用先进的训练技术,例如使用具有由粗到精指导的辅助头,以提高准确性,而不会在推理过程中增加任何开销。

优势

  • 高 mAP: 提供出色的对象检测精度,使其成为对精度要求极高的应用的强大选择。
  • 快速推理: 提供具有竞争力的推理速度,适用于许多实时任务,尤其是在 GPU 硬件上。
  • 良好基础: YOLOv7 已经存在了更长时间,因此受益于更大的社区基础、更多的教程以及在各种项目中更广泛的采用。

弱点

  • NMS 依赖性: 与 YOLOv10 不同,YOLOv7 依赖于 NMS 后处理步骤,这增加了整体推理延迟并使部署管道复杂化。
  • 效率较低: 与 YOLOv10 相比,YOLOv7 模型通常具有更多的参数和更高的 FLOPs,但在相似的精度水平下,使得它们的效率较低。

了解更多关于 YOLOv7 的信息

性能对比:YOLOv10 vs YOLOv7

在性能对比时,YOLOv10 在效率方面表现出明显的优势。最直接的比较是 YOLOv10-M 和 YOLOv7-L 之间。如下表所示,与 YOLOv7-L 的 51.4% 相比,YOLOv10-M 实现了几乎相同的 mAPval,为 51.3%。然而,YOLOv10-M 的效率明显更高:它更快(在 TensorRT 上为 5.48 毫秒,而 YOLOv7-L 为 6.84 毫秒),参数不到一半(1540 万,而 YOLOv7-L 为 3690 万),并且需要的计算资源少得多(591 亿 FLOPs,而 YOLOv7-L 为 1047 亿 FLOPs)。这突显了 YOLOv10 出色的架构设计,它以更高的效率提供了相当的精度。

模型 尺寸
(像素)
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
YOLOv7l 640 51.4 - 6.84 36.9 104.7
YOLOv7x 640 53.1 - 11.57 71.3 189.9

结论

YOLOv10 和 YOLOv7 都是强大的目标检测模型,但 YOLOv10 代表了实时检测效率的下一步。其无 NMS 架构提供了一个真正的端到端解决方案,该解决方案更快、更轻且更易于部署,而不会牺牲准确性。对于新项目,尤其是那些针对 边缘 AI 或需要最小延迟的项目,建议选择 YOLOv10。

虽然 YOLOv7 仍然是一个有能力的模型,但它对 NMS 的依赖和效率较低的架构使其更适合于遗留项目或其广泛的社区资源是主要考虑因素的场景。对于寻求最佳性能、易用性和全面生态系统的开发人员来说,像 YOLOv10 这样的 Ultralytics 模型提供了卓越的体验。与 Ultralytics HUB 的集成进一步简化了训练和部署,使高级 计算机视觉 比以往任何时候都更容易访问。

探索其他模型

如需进一步探索,请参考 Ultralytics 文档中提供的其他先进模型:

  • Ultralytics YOLOv8:一种高度通用的模型,擅长处理多种视觉任务,包括检测分割姿势估计
  • YOLOv9:引入了可编程梯度信息(PGI)等创新,以解决深度网络中的信息丢失问题。
  • YOLO11:Ultralytics 的最新官方模型,提供最先进的性能、多任务支持和无与伦比的易用性。


📅 1 年前创建 ✏️ 1 个月前更新

评论