跳转至内容

YOLOv9 vs. EfficientDet:详细对比

选择最佳目标检测模型对于计算机视觉任务至关重要,需要在准确性、速度和计算资源之间取得平衡。本页提供了 Ultralytics YOLOv9 和 EfficientDet 这两个目标检测领域中的重要模型之间的详细技术比较。我们将深入研究它们的架构设计、性能基准和适用应用,以帮助您为您的项目做出明智的决定。

YOLOv9:最先进的准确性和效率

YOLOv9由中国台湾中研院信息科学研究所的王建尧和廖弘源于2024年推出,代表了YOLO系列的一个重大进步。详细信息请参见他们的论文“YOLOv9: Learning What You Want to Learn Using Programmable Gradient Information”,并在他们的GitHub存储库中实现。YOLOv9通过可编程梯度信息(PGI)和通用高效层聚合网络(GELAN)等创新架构元素,解决了深度网络中的信息丢失挑战。这些创新确保了模型能够有效地学习,并以更少的参数保持高精度,从而展现了性能和效率之间的强大平衡。

技术细节:

优势

  • 顶尖精度: YOLOv9 在 目标检测 方面实现了卓越的精度,通常在相似的参数数量下,性能优于竞争对手。
  • 高效参数利用: PGI 和 GELAN 架构增强了特征提取,并减少了信息丢失,从而以更少的参数和 FLOP 实现了更好的性能。
  • 可扩展性: YOLOv9系列包括各种模型尺寸(YOLOv9t到YOLOv9e),为不同的计算能力提供灵活性。
  • Ultralytics 生态系统: 虽然最初的研究来自 Academia Sinica,但在 Ultralytics 框架内集成可提供巨大的好处。这些好处包括通过简单的 Python API 实现 易用性、丰富的 文档 以及通过随时可用的预训练权重实现 高效训练维护良好的生态系统 可确保积极的开发、强大的社区支持以及与诸如 Ultralytics HUB 之类的工具集成,以实现无代码训练。
  • 低内存占用: 与许多其他架构(尤其是像 RT-DETR 这样的基于 Transformer 的模型)相比,YOLO 模型在训练期间通常表现出较低的内存需求。

弱点

  • 新颖性: 作为一个较新的模型,实际部署示例可能不如 EfficientDet 等较旧的成熟模型那么多,尽管 Ultralytics 社区内的采用速度很快。
  • 任务特定性: 最初的 YOLOv9 论文主要关注目标检测。然而,它集成到 Ultralytics 生态系统中暗示了更广泛的潜力,与Ultralytics YOLOv8等模型的多任务能力相一致。

应用案例

YOLOv9 特别适合精度和效率至关重要的应用,例如:

了解更多关于 YOLOv9 的信息

EfficientDet:可扩展且高效的目标检测

EfficientDet 于 2019 年由 Google Research 的一个团队推出。它提出了一种新型的可扩展目标检测器系列,该系列优先考虑效率而不牺牲准确性。该模型的架构基于高效的 EfficientNet 主干网络、用于特征融合的新型双向特征金字塔网络 (BiFPN) 以及统一缩放模型所有部分的分辨率、深度和宽度的复合缩放方法。

技术细节:

优势

  • 复合缩放 (Compound Scaling): EfficientDet 的关键创新在于其系统化的缩放方法,使其能够创建一系列模型(D0-D7),以适应不同的资源约束。
  • BiFPN: 与传统的 FPN 相比,双向特征金字塔网络可实现更丰富的多尺度特征融合,从而提高检测精度。
  • 历史意义: 在发布时,EfficientDet为目标检测的效率树立了新标准,影响了许多后续架构。

弱点

  • 性能过时: 尽管 EfficientDet 在当时具有开创性,但其准确性和速度已被 YOLOv9 等新型号超越。如性能表所示,YOLOv9 模型始终以更少的参数和明显更快的推理速度实现更高的 mAP。
  • 推理速度较慢: 在NVIDIA T4等现代硬件上,即使是最小的EfficientDet模型也比同等或更精确的YOLOv9变体慢。
  • 有限的生态系统: EfficientDet 主要是一个研究存储库。它缺乏 Ultralytics 提供的全面、用户友好的生态系统,后者包括简化的训练、部署和社区支持。
  • 任务特定: EfficientDet 专门为目标检测而设计,不提供 Ultralytics 框架中发现的实例分割姿势估计等其他任务的内置多功能性。

应用案例

对于传统系统或作为学术比较的基准,仍然可以考虑使用EfficientDet。其应用包括:

  • 通用目标检测,对高速推理没有主要约束。
  • 用于理解特征金字塔网络和模型缩放原理的教育目的。
  • 已在 TensorFlow 框架上标准化的项目,原始实现在该框架中。

了解更多关于 EfficientDet 的信息

性能分析:YOLOv9 vs. EfficientDet

YOLOv9 和 EfficientDet 之间的性能比较清楚地表明了过去几年在对象检测方面取得的进步。YOLOv9 在准确性、速度和模型大小之间始终提供卓越的权衡。

模型 尺寸
(像素)
mAPval
50-95
速度
CPU ONNX
(毫秒)
速度
T4 TensorRT
(ms)
参数
(M)
FLOPs
(B)
YOLOv9t 640 38.3 - 2.30 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
EfficientDet-d0 640 34.6 10.2 3.92 3.9 2.54
EfficientDet-d1 640 40.5 13.5 7.31 6.6 6.1
EfficientDet-d2 640 43.0 17.7 10.92 8.1 11.0
EfficientDet-d3 640 47.5 28.0 19.59 12.0 24.9
EfficientDet-d4 640 49.7 42.8 33.55 20.7 55.2
EfficientDet-d5 640 51.5 72.5 67.86 33.7 130.0
EfficientDet-d6 640 52.6 92.8 89.29 51.9 226.0
EfficientDet-d7 640 53.7 122.0 128.07 51.9 325.0

从表中,可以得出几个关键的见解:

  • 精度与效率: YOLOv9c 模型实现了 53.0 mAP,仅使用了 25.3M 参数,并且在 T4 GPU 上的推理时间快如闪电,仅为 7.16 毫秒。相比之下,精度相似的 EfficientDet-d6 (52.6 mAP) 需要两倍以上的参数 (51.9M),并且速度慢 12 倍以上,为 89.29 毫秒。
  • 顶级性能: 最大的模型YOLOv9e达到了令人印象深刻的55.6 mAP,甚至超过了最大的EfficientDet-d7模型(53.7 mAP),同时速度快7倍以上,并且需要的FLOPs显著减少。
  • 轻量级模型: 在较小的一端,YOLOv9s (46.8 mAP) 提供了与 EfficientDet-d3 (47.5 mAP) 相当的精度,但参数几乎减少了一半,并且在 GPU 上的速度快 5 倍以上。

结论:您应该选择哪种模型?

对于几乎所有现代目标检测应用,YOLOv9 都是明显的赢家。其先进的架构在保持卓越的推理速度和参数效率的同时,提供了最先进的精度。集成到 Ultralytics 生态系统中进一步增强了其价值,提供了从训练到部署的简化工作流程,并以强大的文档和活跃的社区为后盾。

从历史和学术的角度来看,EfficientDet 仍然是一个重要的模型,它开创了模型缩放和特征融合的概念。然而,对于实际的开发和部署,它的性能已经被更新、更高效的架构(如 YOLOv9)所超越。如果您正在启动一个新项目或希望升级现有项目,选择 YOLOv9 将提供卓越的性能、更快的开发周期以及对未来发展的更好支持。

探索其他模型

如果您正在探索其他最先进的模型,请考虑查看与 YOLOv10YOLOv8 和基于 Transformer 的架构(如 RT-DETR)的比较。您可以在我们的模型比较页面上找到更详细的分析。



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

评论