EfficientDet 与 RTDETRv2:物体检测技术比较
物体检测领域已经发生了重大演变,从传统的卷积神经网络(CNN)转向了Transformer现代架构。在这一演变过程中,有两个值得注意的里程碑,一个是Google推出的可扩展 CNN 架构EfficientDet,另一个是百度推出的实时检测transformer RTDETRv2。
本指南对这两种模式进行了深入的技术比较,分析了它们的架构创新、性能指标和理想部署方案。我们还探讨了 Ultralytics YOLO11如何作为一种强大的替代方案,为各种计算机视觉应用提供统一的生态系统。
机型概览
在深入了解架构的细微差别之前,有必要了解每种模式的起源和主要目标。
EfficientDet 详情:
作者: Mingxing Tan、Ruoming Pang 和 Quoc V. Le:Mingxing Tan、Ruoming Pang 和 Quoc V. Le
机构: Google ResearchGoogle 研究院
日期: 2019-11-20
Arxiv:https://arxiv.org/abs/1911.09070
GitHub:https:google
文档:google
RTDETRv2 详情:
作者吕文玉、赵一安、常沁瑶、黄魁、王冠中、刘毅
机构: 百度百度
日期: 2023-04-17
Arxiv:https://arxiv.org/abs/2304.08069
GitHub:https:RT-DETR
文档: https:RT-DETR
建筑分析
EfficientDet 和 RTDETRv2 的核心区别在于特征提取和边界框预测的基本方法。
EfficientDet:通过复合扩展提高效率
EfficientDet 的设计旨在打破简单地扩大模型以获得更高精度的趋势。它利用EfficientNet骨干网络,并引入了加权双向特征金字塔网络(BiFPN)。
- BiFPN与传统的 FPN 不同,BiFPN 可通过引入可学习权重,轻松实现多尺度特征融合。这使得网络能够学习不同输入特征的重要性。
- 复合缩放EfficientDet 使用单个复合系数同时对网络的分辨率、深度和宽度进行缩放。这确保了模型(变体 D0 到 D7)在各种资源限制条件下都能保持高效。
RTDETRv2:实时检测Transformer
RTDETRv2 建立在 DETR(DetectionTransformer,检测Transformer)成功的基础上,但也解决了其计算成本高和收敛速度慢的问题。它是一种无锚模型,利用自我注意机制来模拟全局上下文。
- 混合编码器:它通过解耦尺度内交互和跨尺度融合来处理多尺度特征,与标准变形器相比,可显著提高推理速度。
- IoU查询选择:该机制可选择高质量的初始对象查询,从而加速训练收敛并提高检测精度。
- 动态灵活性:RTDETRv2 可以通过改变解码器层数来调整推理速度,无需重新训练,为实时推理提供了独特的灵活性。
Transformer 与 CNN 内存使用情况对比
虽然 RTDETRv2 等变形器在捕捉全局上下文方面表现出色,但与 EfficientDet 或YOLO 等基于 CNN 的架构相比,由于注意力机制的二次方复杂性,它们在训练过程中通常需要更多的CUDA 内存。
性能指标
在选择部署模型时,开发人员必须在精度mAP)、速度(延迟)和模型大小(参数)之间权衡取舍。下表比较了 EfficientDet 变体与 RTDETRv2 的性能。
| 模型 | 尺寸 (像素) | mAPval 50-95 | 速度 CPU ONNX (毫秒) | 速度 T4 TensorRT10 (毫秒) | 参数 (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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 |
| RTDETRv2-s | 640 | 48.1 | - | 5.03 | 20 | 60 |
| RTDETRv2-m | 640 | 51.9 | - | 7.51 | 36 | 100 |
| RTDETRv2-l | 640 | 53.4 | - | 9.76 | 42 | 136 |
| RTDETRv2-x | 640 | 54.3 | - | 15.03 | 76 | 259 |
分析:
- 准确性: RTDETRv2 一般可实现更高的mAPval 在 GPU 上,与类似延迟的 EfficientDet 模型相比,得分更低。例如
RTDETRv2-x胜EfficientDet-d7的准确性,而TensorRT 的速度则明显更快。 - 速度:EfficientDet 针对 FLOPs 进行了优化,这与CPU 性能密切相关,但并不总是与GPU 延迟相关。RTDETRv2 是专为最大限度地提高GPU 利用率而设计的,使其成为高性能服务器端应用的上佳之选。
- 参数效率:EfficientDet-d0 仍然非常轻巧(3.9M 个参数),因此可用于无法使用现代加速器的低功耗传统设备。
Ultralytics 优势:卓越的替代方案
虽然 EfficientDet 和 RTDETRv2 是强大的模型,但开发人员在寻求兼顾性能、可用性和多功能性的整体解决方案时,应该考虑 Ultralytics YOLO系列。最新的 YOLO11等型号为从研究到生产部署的广泛应用提供了令人信服的选择。
为什么选择 Ultralytics YOLO11?
- 易于使用: Ultralytics 模型以其简化的用户体验而闻名。通过简单的Python API,用户只需几行代码就能完成模型的训练、验证和部署。这与 EfficientDet 通常所需的复杂配置文件或 RTDETR 的内存密集型训练循环形成了鲜明对比。
- 多功能性:与许多竞争对手专注于单一任务的做法不同,YOLO11 在一个框架内支持对象检测、实例分割、分类、姿势估计 和定向对象检测(旋转框检测)。
- 维护良好的生态系统: Ultralytics 提供了一个强大的生态系统,包括用于数据集管理和模型训练的Ultralytics HUB,以及大量的文档和社区支持。
- 性能平衡: Ultralytics 模型经过精心设计,在速度和准确性之间实现了极佳的平衡。它们设计得非常节省内存,可以在标准的消费级 GPU 上进行训练,而Transformer 模型可能会在此方面遇到困难。
代码示例:开始使用YOLO11
下面的示例演示了使用Ultralytics YOLO11 运行推理是多么容易,展示了与旧框架相比 API 的简易性。
from ultralytics import YOLO
# Load a pre-trained YOLO11 model
model = YOLO("yolo11n.pt") # 'n' for nano, or try 's', 'm', 'l', 'x'
# Run inference on an image
results = model("path/to/image.jpg")
# Display the results
results[0].show()
理想用例
选择合适的型号在很大程度上取决于具体的硬件限制和项目要求。
何时使用 EfficientDet
- 传统边缘设备:如果要部署到较旧的 CPU 或硬件上,深度可分离卷积是唯一有效的操作方法。
- 参数限制: 对于那些以模型文件的绝对存储容量为主要瓶颈的应用系统(例如:.....、
EfficientDet-d0is < 4MB).
何时使用 RTDETRv2
- 高端GPU 部署:当您可以使用强大的NVIDIA ®)GPU(如 T4、A100)并能利用TensorRT 优化时。
- 复杂场景理解:适用于需要 Transformers 全局上下文功能的场景,例如在拥挤或遮挡的场景中检测物体。
何时使用Ultralytics YOLO11
- 快速开发:当您需要使用标准工具(如Google Colab或本地环境)快速从数据集到部署模型时。
- 实时边缘人工智能: YOLO11 针对NVIDIA Jetson和 Raspberry Pi 等边缘设备进行了高度优化,可提供出色的mAP 权衡。
- 多任务要求:如果您的项目除了边界框之外,还需要分段掩码或姿势估计 关键点。
- 资源效率:当训练资源有限时(如有限的 VRAM),YOLO 模型的训练效率明显高于Transformer替代方案。
结论
EfficientDet 和 RTDETRv2 都是计算机视觉领域的重大成就。EfficientDet 通过扩展推进了效率的极限,而 RTDETRv2 则证明了变形器的速度足以满足实时应用的需要。
然而,对于绝大多数开发人员和企业来说,Ultralytics YOLO 模型是最实用的解决方案。 Ultralytics 将最先进的性能与无与伦比的开发人员体验和丰富的生态系统相结合,使您能够更快、更可靠地构建强大的人工智能解决方案。