跳转至内容

YOLOv6.0 与YOLO-YOLO:物体检测技术比较

对于工程师和研究人员来说,选择合适的计算机视觉架构是一项关键决策。物体检测领域竞争激烈,行业巨头不断挑战速度和精度的极限。本页将对美团的高硬件效率机型YOLOv6.0 和阿里巴巴集团的技术架构YOLO 进行全面的技术比较。

YOLOv6.0 概览

YOLOv6.0是专为工业应用定制的强大框架。该框架由美团的视觉人工智能部门发布,它将实际效率放在首位,目的是在制造和自动化领域的标准硬件限制条件下提供高性能。

架构与关键创新

YOLOv6.0 以重新参数化为重点,完善了单级检测器范式。这种技术允许模型在训练期间具有复杂的结构,以获得更好的学习效果,但在推理期间则会折叠成更简单、更快速的结构。

  • EfficientRep 主干网:骨干网针对不同的模型大小使用不同的区块(EfficientRep 用于小型模型,CSPStackRep 用于大型模型),优化了GPU 硬件能力的利用。
  • Rep-PAN 颈部:颈部采用 Rep-PAN 拓扑,在保持较高推理速度的同时加强了特征融合。
  • 自我发散:一种关键的训练方法,即模型从自身的预测(具体来说,是同一网络中的教师分支)中学习,以提高准确性,而无需在部署过程中另设教师模型的计算成本。

工业优化

YOLOv6 在设计时明确考虑了量化问题。它的架构对训练后量化(PTQ)和量化感知训练(QAT)非常友好,因此非常适合部署在边缘设备上,在这些设备上,INT8精度是速度的首选。

了解有关YOLOv6的更多信息

DAMO-YOLO 概述

由阿里巴巴集团开发的YOLO 引入了一系列新技术,以优化性能和延迟之间的权衡。它与众不同之处在于采用了神经架构搜索(NAS)和先进的特征融合技术。

架构与关键创新

YOLO 摆脱了纯手工制作的架构,部分依靠自动搜索策略来寻找高效的结构。

  • 由 NAS 驱动的主干网(MazeNet):骨干网是利用 MAE-NAS(神经架构搜索)生成的,其结构称为 MazeNet,针对不同的计算预算进行了高度优化。
  • 高效 RepGFPN:它利用广义特征金字塔网络(GFPN)与重参数化相结合。这样就能实现丰富的多尺度特征融合,这对检测各种尺寸的物体至关重要。
  • ZeroHead:简化的探测头设计,减少了网络最后阶段的参数数量和计算复杂度。
  • AlignedOTA:一种动态标签分配策略,可解决训练过程中分类和回归任务之间的不匹配问题。

高级功能融合

YOLO 中的RepGFPN颈部结构在处理具有重叠对象的复杂场景时尤为有效。与标准 FPN 结构相比,RepGFPN 颈允许在不同尺度级别之间跳转连接,从而更好地保留了语义信息。

了解更多关于 DAMO-YOLO 的信息

性能分析:速度 vs. 准确性

以下比较采用COCO val2017 数据集的数据。这些指标突出了两种模型在不同尺度上的权衡。

模型尺寸
(像素)
mAPval
50-95
速度
CPU ONNX
(毫秒)
速度
T4 TensorRT10
(毫秒)
参数
(M)
FLOPs
(B)
YOLOv6.0n64037.5-1.174.711.4
YOLOv6.0s64045.0-2.6618.545.3
YOLOv6.0m64050.0-5.2834.985.8
YOLOv6.0l64052.8-8.9559.6150.7
DAMO-YOLOt64042.0-2.328.518.1
DAMO-YOLOs64046.0-3.4516.337.8
DAMO-YOLOm64049.2-5.0928.261.8
DAMO-YOLOl64050.8-7.1842.197.3

主要内容

  1. 延迟领先:YOLOv6.0n是本次比较中速度最快的型号,在 T4GPU 上的延迟为 1.17 毫秒。这使其非常适合实时推理场景中的高 FPS 要求。
  2. 精确度峰值:YOLOv6.0l实现了最高的精确度,其 mAP 值为 0.1。 mAP达到了最高精度,mAP 为 52.8,证明了其重骨干和自蒸馏策略的有效性,不过与YOLO 相比,代价是更高的参数和 FLOP。
  3. 效率甜点:DAMO-YOLOs的精度(46.0 对 45.0mAP)超过了YOLOv6.0s,而参数数量(16.3M 对 18.5M)却更少。这凸显了 NAS 搜索骨干网在小型模型系统中的效率。
  4. 参数效率:一般来说,DAMO-YOLO 模型的 FLOP 和参数数量较低,但在中大型范围内的精度相当,这验证了 ZeroHead 设计的有效性。

Ultralytics 的优势

而YOLOv6.0 和YOLO 则为特定的利基市场提供了引人注目的功能、 Ultralytics YOLO11为现代人工智能开发提供了更全面的解决方案。选择Ultralytics 模型,就能开启一个旨在简化整个机器学习生命周期的综合生态系统。

为什么选择Ultralytics YOLO?

  • 无与伦比的易用性 与通常需要复杂环境设置和编译自定义 C++ 操作符的研究资源库不同,Ultralytics 模型可以通过简单的 pip install ultralytics.直观 Python API 只需几行代码就能训练和部署模型。
  • 性能平衡: YOLO11 的设计在推理速度和准确性之间实现了最佳平衡,在实际基准测试中经常超越竞争对手,同时在训练过程中保持较低的内存需求。
  • 任务多样性: YOLOv6 和YOLO 主要是对象检测器,而Ultralytics YOLO 则原生支持多种任务,包括实例分割姿势估计 分类定向边框(旋转框检测)检测。
  • 维护良好的生态系统: Ultralytics 通过Discord和 GitHub 提供频繁更新、丰富文档和社区支持的动态生态系统。这确保您的项目面向未来,并与最新的硬件和软件库兼容。
  • 部署灵活:将训练好的模型轻松导出为各种格式,如 ONNX、TensorRT、CoreML 和OpenVINO 等多种格式,便于在从云服务器到Raspberry Pi设备等各种设备上部署。

示例:使用YOLO11运行物体检测

有了Ultralytics,开始使用最先进的检测技术非常简单:

from ultralytics import YOLO

# Load a pre-trained YOLO11 model
model = YOLO("yolo11n.pt")

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

# Display the results
results[0].show()

结论

YOLOv6.0YOLO都是物体检测技术发展的重要里程碑。YOLOv6.0 在对原始速度和量化支持要求极高的工业环境中表现出色,尤其是其 Nano 变体。YOLO 展示了神经架构搜索和创新特征融合的强大功能,在中小型模型范围内提供了高效率和高精度。

然而,对于寻求生产就绪解决方案的开发人员来说,这种解决方案既能提供最先进的性能,又具有多功能性和易用性、 Ultralytics YOLO11仍然是值得推荐的选择。其强大的生态系统、多任务功能以及与现代 MLOps 工作流程的无缝集成,为确保项目成功提供了显著优势。

探索其他模型

为了拓宽您对物体检测领域的了解,请考虑探索这些相关的模型比较:


评论