跳转至内容

YOLOv7 vs YOLOv10:详细技术对比

选择正确的目标检测模型涉及平衡准确性、速度和部署要求。本页提供了 YOLOv7 和 YOLOv10 这两个 实时目标检测 领域的重要模型之间的详细技术比较。我们将深入研究它们的架构差异、性能指标和理想用例,以帮助您为您的计算机视觉项目选择最合适的模型。

YOLOv7:高精度和速度

YOLOv7于2022年7月推出,因在速度和准确性之间实现了令人印象深刻的平衡而迅速获得认可,并在当时树立了新的技术水平基准。它专注于使用“可训练的免费技巧包”优化训练过程,以提高准确性,同时不增加推理成本。

技术细节:

架构和主要特性

YOLOv7 引入了几项架构改进和训练优化,以实现其性能:

  • 扩展高效层聚合网络 (E-ELAN): backbone 中的这一关键组件增强了网络学习多样化特征的能力,同时控制梯度路径,从而提高收敛性和整体准确性。
  • 模型缩放: 它为基于连接的模型实施了复合缩放方法,从而可以有效地调整模型深度和宽度,以适应不同的计算预算。
  • 可训练的免费赠品(Trainable Bag-of-Freebies): YOLOv7 在训练期间利用了先进的技术,例如标签分配策略和批量归一化调整,以提高性能,而不会在推理过程中增加任何开销。
  • 辅助头由粗到精: 该模型在训练期间使用辅助头,以改善深度监督并更有效地指导模型的学习过程。

优势与劣势

优势

  • 高精度和速度平衡: YOLOv7 提供了高 mAP 和快速推理速度的强大组合,使其适用于许多实时应用。
  • 高效训练: 该模型结合了先进的训练技术,可在不显着增加推理期间的计算需求的情况下提高性能。
  • 良好基础: 作为一个成熟的模型,与最新的模型相比,它受益于更大的用户群和更多的社区资源。

弱点

  • NMS 依赖性: YOLOv7 依赖于非极大值抑制 (NMS) 进行后处理,这会增加计算开销并增加推理延迟
  • 复杂性: 尽管架构和训练策略有效,但要充分理解并针对自定义应用进行微调可能很复杂。

应用案例

YOLOv7 非常适合需要速度和准确性平衡的苛刻应用:

  • 高级监控: 其高精度对于识别安全系统中的物体或威胁非常有价值。
  • 自主系统:自动驾驶汽车等应用提供强大的检测能力。
  • 工业自动化: 该模型可用于制造业中可靠的缺陷检测和质量控制。

了解更多关于 YOLOv7 的信息

YOLOv10:端到端实时检测

YOLOv10 由清华大学的研究人员于 2024 年 5 月推出,代表着实时对象检测领域的一项重大进步。它的主要创新是通过消除对 非极大值抑制 (NMS) 的需求来创建端到端解决方案,从而减少了延迟并提高了部署效率。

技术细节:

架构和主要特性

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

  • 无NMS训练: 它在训练期间利用一致的 dual assignments,从而在没有 NMS 后处理步骤的情况下实现有竞争力的性能。这简化了部署流程并降低了推理延迟。
  • 整体效率-精度驱动设计: 该模型优化了各种组件,例如分类头和降采样层,以减少计算冗余并增强能力。这包括诸如秩引导块设计和部分自注意力(PSA)之类的技术。
  • 无Anchor方法: 与其他现代 YOLO 模型一样,它采用了无anchor检测器设计,从而简化了检测头并提高了泛化能力。

优势与劣势

优势

  • 高效性: 无 NMS 设计和其他架构优化可实现更快的推理、更低的延迟和更低的计算成本。
  • 竞争性准确率: 在显著提高速度和减少模型尺寸的同时,它保持了强大的准确率。
  • End-to-End Deployment: 移除 NMS 简化了部署流程,使其更容易集成到应用程序中。

弱点

  • 相对较新: 作为一个较新的模型,与 YOLOv7 或 Ultralytics YOLOv8 等已建立的模型相比,社区支持和实际案例的数量可能较少。
  • 优化性能的调整: 要获得最佳结果,可能需要仔细调整超参数,并可能受益于诸如 模型训练技巧 之类的资源。

应用案例

YOLOv10 注重实时效率,使其成为资源受限环境的理想选择:

  • Edge AI 应用: 非常适合在 NVIDIA JetsonRaspberry Pi 等设备上部署,在这些设备上,低延迟至关重要。
  • 机器人: 实现更快的导航和交互感知,这是人工智能在机器人技术中的作用的关键方面。
  • 自动无人机: 其轻量级和快速架构适用于无人机和其他无人飞行器中的快速物体检测。

了解更多关于 YOLOv10 的信息

正面交锋性能对比

在比较YOLOv7和YOLOv10时,最显著的区别在于它们的设计理念。YOLOv7致力于在高精度和速度之间取得平衡,使其成为一个强大的通用检测器。相比之下,YOLOv10通过消除NMS来优先考虑计算效率和低延迟,使其成为边缘设备上实时应用的更佳选择。

下表显示,在相似的 mAP 水平下,YOLOv10 模型始终实现更低的延迟,并且比 YOLOv7 模型需要更少的参数和 FLOP。例如,YOLOv10b 以仅 6.54 毫秒的延迟实现了 52.7 mAP,优于 YOLOv7l,后者具有相似的 mAP 但更高的延迟。

模型 尺寸
(像素)
mAPval
50-95
速度
CPU ONNX
(毫秒)
速度
T4 TensorRT10
(毫秒)
参数
(M)
FLOPs
(B)
YOLOv7l 640 51.4 - 6.84 36.9 104.7
YOLOv7x 640 53.1 - 11.57 71.3 189.9
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

结论与建议

YOLOv7 和 YOLOv10 都是强大的模型,但它们满足不同的需求。YOLOv7 是一款强大而准确的检测器,对于优先考虑实现高 mAP 的应用来说,仍然是一个可靠的选择。YOLOv10 凭借其创新的无 NMS 架构,显然是需要最高效率和最低延迟的应用的赢家,尤其是在端到端部署中。

对于寻求现代、通用和用户友好框架的开发者来说,来自 Ultralytics 生态系统的模型,例如 Ultralytics YOLOv8 和最新的 YOLO11,通常会提供更引人注目的选择。这些模型提供:

探索其他模型

如果您对其他模型感兴趣,请查看以下其他对比:



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

评论