跳转至内容

YOLOv10 与 EfficientDet:技术比较

在过去几年中,物体检测技术发展迅速,从复杂的多级管道过渡到精简的实时架构。本对比探讨了 YOLOv10 和 YOLOv10 之间的技术差异。 YOLOv10和Google 在 2019 年推出的先锋架构EfficientDet 之间的技术差异。

EfficientDet 为当时的参数效率设定了基准,而YOLOv10 则突破了延迟和准确性的界限,引入了NMS 训练范例,大大提高了推理速度。本指南分析了它们的架构、性能指标和理想用例,帮助您为计算机视觉项目选择合适的模型。

YOLOv10:实时端到端物体检测

YOLOv10 是YOLO (You Only Look Once,你只看一次)系列的一次重大飞跃,它重点消除了非最大抑制NMS)后处理步骤,而这一步骤往往是推理速度的瓶颈。与之前的迭代版本相比,通过采用一致的双分配进行NMS 训练,它以更低的延迟实现了极具竞争力的性能。

技术细节:

了解有关YOLOv10的更多信息

主要建筑特点

YOLOv10 引入了以效率和精度为导向的整体模型设计。核心创新在于其双重分配策略。在训练过程中,模型既使用一对多的分配(YOLOv8 中常用)来进行丰富的监督,也使用一对一的分配来确保在没有NMS 的情况下进行端到端部署。

  1. NMS 训练:传统的检测器需要NMS 来过滤重复的边界框,这会带来推理延迟。YOLOv10 的架构允许模型在推理过程中对每个对象精确预测一个边框,从而有效消除了这一开销。
  2. 效率驱动型设计:该模型利用轻量级分类头和空间通道解耦下采样来降低计算成本(FLOPs)和参数数量。
  3. 大内核卷积:通过有选择性地使用大核深度卷积,YOLOv10 增强了其感受野和detect 小物体的能力,而无需大量增加计算量。

NMS 为何重要

消除非最大抑制NMS)可创建真正的端到端流水线。这对于每毫秒都至关重要的边缘人工智能应用(如NVIDIA Jetson设备)来说至关重要,可确保稳定和可预测的延迟。

优势

  • 卓越的速度:针对实时推理进行了优化,在GPU 硬件上明显优于旧版模型。
  • Ultralytics 集成:作为Ultralytics 生态系统的一部分,YOLOv10 受益于简单的Python 应用程序接口,使其非常易于培训、验证和部署。
  • 内存使用量更低:与transformer检测器(如 RT-DETR.

EfficientDet:可扩展且高效的架构

EfficientDetGoogle 大脑团队开发,旨在优化精度和效率。它引入了一个模型系列(D0-D7),采用复合缩放方法对分辨率、深度和宽度进行统一调整。

技术细节:

了解更多关于 EfficientDet 的信息

主要建筑特点

EfficientDet 建立在EfficientNet骨干之上,并引入了BiFPN(双向特征金字塔网络)。

  1. BiFPN与标准 FPN 不同,BiFPN 允许双向信息流,并使用可学习权重来融合不同尺度的特征。这样就能以更少的参数获得更好的多尺度特征表示。
  2. 复合扩展:这种方法可确保骨干网络、特征网络和箱体/类别预测网络一起高效扩展。D0 模型体积小,移动速度快,而 D7 模型则能在高资源环境中实现最先进的准确性。

优势与劣势

  • 参数效率:EfficientDet 以实现高 mAP而著称。
  • 可扩展性:D0-D7 系列为不同的计算预算提供了灵活性。
  • 高延迟:尽管 FLOP 数较低,但与YOLO 模型的精简 CNN 架构相比,BiFPN 和深度可分离卷积中的复杂连接会导致 GPU 的延迟更高。
  • 复杂性:与 Ultralytics 的直接设计相比,该架构更难定制或调整。 Ultralytics YOLOv8或YOLOv10 相比,架构更难定制或调整。

性能分析:速度与效率

在比较这两个模型时,理论效率(FLOPs)和实际速度(Latency)之间的区别变得非常明显。EfficientDet 擅长最小化 FLOPs,但在 GPU 等现代硬件上,YOLOv10 在实际推理速度方面占据优势。

下表显示,虽然 EfficientDet 模型结构紧凑,但YOLOv10 为实时应用提供了更好的权衡。例如,YOLOv10在 T4GPU 上提供了极具竞争力的 46.7%mAP ,延迟时间仅为 2.66ms,而EfficientDet-d3(47.5%mAP)的延迟时间为 19.59mAP,慢了近 7 倍。

模型尺寸
(像素)
mAPval
50-95
速度
CPU ONNX
(毫秒)
速度
T4 TensorRT10
(毫秒)
参数
(M)
FLOPs
(B)
YOLOv10n64039.5-1.562.36.7
YOLOv10s64046.7-2.667.221.6
YOLOv10m64051.3-5.4815.459.1
YOLOv10b64052.7-6.5424.492.0
YOLOv10l64053.3-8.3329.5120.3
YOLOv10x64054.4-12.256.9160.4
EfficientDet-d064034.610.23.923.92.54
EfficientDet-d164040.513.57.316.66.1
EfficientDet-d264043.017.710.928.111.0
EfficientDet-d364047.528.019.5912.024.9
EfficientDet-d464049.742.833.5520.755.2
EfficientDet-d564051.572.567.8633.7130.0
EfficientDet-d664052.692.889.2951.9226.0
EfficientDet-d764053.7122.0128.0751.9325.0

口译

  • GPU 优势: YOLOv10 采用了硬件感知设计,可以很好地映射GPU 架构,从而大大提高吞吐量。
  • 精确度相当:新的训练策略使YOLOv10 的准确性可以与速度慢得多的 EfficientDet 变体相媲美,甚至超过它们。
  • 部署: YOLOv10 的NMS 特性简化了向以下格式的导出过程 TensorRT和ONNX 等格式的导出过程,从而降低了部署管道的复杂性。

易用性和生态系统

对于开发人员来说,最关键的因素之一是围绕模型的生态系统。在这方面,Ultralytics 具有很大的优势。

Ultralytics 的优势

YOLOv10 集成到了Ultralytics Python 软件包中,提供了从数据注释到部署的无缝体验。

  • 简单的应用程序接口:只需几行代码就能完成加载、训练和预测。
  • 维护良好:频繁的更新、社区支持和丰富的文档可确保您在调试过程中不会遇到模糊的错误。
  • 训练效率: Ultralytics 模型经过优化,可快速收敛。预训练权重随时可用,可在自定义数据集上进行有效的迁移学习

使用Ultralytics培训YOLOv10

使用Ultralytics API 可以直接在COCO8 数据集上训练YOLOv10 模型。

from ultralytics import YOLO

# Load a pre-trained YOLOv10n model
model = YOLO("yolov10n.pt")

# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference on an image
results = model("path/to/image.jpg")

相比之下,EfficientDet 依赖于较旧的TensorFlow 软件库或第三方PyTorch 实现,这些软件库或实现可能缺乏统一的支持,因此将其集成到现代MLOps管道中更具挑战性。

理想用例

在YOLOv10 和 EfficientDet 之间做出选择取决于您的具体限制条件。

何时选择YOLOv10

YOLOv10 是大多数现代计算机视觉应用的上佳选择,尤其是在以下应用中:

  • 自主系统:自动驾驶汽车和无人机需要低延迟检测以确保安全。YOLOv10 的速度可确保快速反应。
  • 视频分析:处理用于安全监控或交通监控的高帧频视频流。
  • 边缘部署:在 Raspberry Pi 或NVIDIA Jetson 等嵌入式设备上部署,这些设备资源有限,但实时性能却不容忽视。

何时选择 EfficientDet

EfficientDet 仍适用于特定的利基方案:

  • 学术研究:如果目标是研究复合缩放规律或高效神经网络设计原理。
  • 严格的 FLOPs 限制:在极其特殊的硬件环境中,理论 FLOP 是硬瓶颈,而不是延迟或内存带宽。

结论

EfficientDet 是高效模型设计的里程碑、 YOLOv10代表了高性能对象检测的新标准。其创新的NMS 架构在推理速度上具有决定性的优势,同时又不影响准确性,使其在实际部署中更加实用。

此外,强大的Ultralytics 生态系统确保了YOLOv10 的工作效率和开发人员友好性。从简便的导出选项到全面的数据集管理指南,Ultralytics 使您能够更快地实现人工智能项目的愿景。

对于那些追求多功能性和高性能的用户,我们还建议他们了解 Ultralytics YOLO11,它以这些先进技术为基础,在检测、分割和姿势估计 任务方面提供了最先进的功能。

探索更多比较


评论