跳转至内容

YOLOv6.0 与YOLOv10:详细技术比较

选择最佳计算机视觉模型对人工智能计划的成功至关重要,它需要平衡推理延迟、准确性和计算效率等因素。这篇综合技术比较研究了两种著名的物体检测架构:YOLOv6.0 专为工业速度而设计,而 YOLOv10以实时端到端效率著称。我们分析了它们的架构创新、基准指标和理想用例,为您的选择过程提供指导。

YOLOv6.0:工业级速度和精度

YOLOv6.0由美团视觉智能部门开发,是专为工业应用优化的单级物体检测框架。该框架将于 2023 年初发布,优先采用硬件友好型设计,以最大限度地提高 GPU 和边缘设备的吞吐量,满足制造和物流领域对实时推理的严格要求。

架构和主要特性

YOLOv6.0 对其架构进行了 "全面重装",纳入了多项先进技术,以提高特征提取和收敛速度:

  • 高效的重参数化骨干网:它采用了硬件感知骨干网,可将复杂的训练结构简化为更快的推理层,在不影响精度的情况下优化FLOPS
  • 双向串联(BiC):颈部设计利用 BiC 改进定位信号,确保在不同尺度上更好地进行特征融合。
  • 锚点辅助训练 (AAT):虽然YOLOv6.0 主要不使用锚点,但在训练过程中重新引入了基于锚点的辅助分支,以稳定收敛并提高性能。

优势与劣势

优势: YOLOv6.0 在需要高吞吐量的场景中表现出色。它支持模型量化,可在移动平台和嵌入式系统上有效部署。精简版 "特别适用于CPU环境。

弱点: 作为一个严格专注于对象检测的模型,它缺乏对更广泛任务的本机支持,如统一框架中的实例分割或姿势估计 ,如 YOLO11.此外,与较新的模型相比,它的参数效率较低,需要更多内存才能达到类似的精度水平。

理想应用案例:工业自动化

YOLOv6.0 是制造自动化的理想选择,因为装配线上的摄像机必须快速处理高分辨率图像,以detect 缺陷或对物品进行分类。

了解有关YOLOv6的更多信息

YOLOv10:端到端效率的前沿

YOLOv10 由清华大学的研究人员于 2024 年 5 月推出,在后处理过程中无需使用非最大抑制 (NMS),从而推动了YOLO 系列的发展。这一创新将其定位为适用于延迟关键型应用的下一代型号。

架构和主要特性

YOLOv10 采用以效率和精确度为导向的整体设计策略:

  • NMS 训练:通过使用一致的双重分配(一对多用于训练,一对一用于推理),YOLOv10 可以为每个对象预测一个最佳方框。这消除了与NMS 后处理相关的计算开销和延迟变化。
  • 整体模型设计:该架构具有轻量级分类头和空间通道解耦下采样功能,可显著降低模型参数和计算成本。
  • 等级引导区块设计:为提高效率,该模型采用等级引导区块设计,以减少特征处理不那么重要的阶段的冗余。

优势与劣势

优势: YOLOv10 在速度和精度之间进行了出色的权衡,通常能实现更高的 mAP与前代产品相比,它的参数要少得多。它与Ultralytics Python 生态系统的集成使其非常容易与其他模型一起进行训练和部署。

弱点: 作为一款相对较新的产品,社区资源和第三方工具仍在不断增长。与YOLOv6 一样,它专门用于检测,而需要多任务功能的用户可能更喜欢 YOLO11.

训诫:效率突破

由于取消了NMS ,YOLOv10 可以实现稳定的推理延迟,这对于自动驾驶汽车等安全关键型系统来说是一个至关重要的因素,因为这些系统的处理时间必须是确定的。

了解有关YOLOv10的更多信息

性能分析:指标和基准

下表比较了YOLOv6.0 和YOLOv10 在COCO 数据集上的性能。主要指标包括模型大小、平均精度mAP)以及在CPU 和GPU 上的推理速度。

模型尺寸
(像素)
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
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

重要见解

  1. 参数效率: YOLOv10 的效率非常高。例如,YOLOv10s实现的mAP (46.7%)高于YOLOv6.0s(45.0%),而使用的参数不到其一半(7.2M 对 18.5M)。这种内存占用的减少对边缘人工智能设备至关重要。
  2. 延迟:虽然YOLOv6.0n 显示原始TensorRT 延迟稍快(1.17ms 对 1.56ms),但YOLOv10 取消了NMS 步骤,而NMS 步骤通常会在真实世界的流水线中消耗额外的时间,而原始模型推理时间并不反映这一点。
  3. 准确性:在几乎所有尺度上,YOLOv10 都能提供更高的精度,使其成为在复杂环境中检测困难物体的更可靠选择。

使用和实施

Ultralytics 提供了使用这些模型的简化体验。YOLOv10 在 ultralytics 软件包,实现无缝 培训 和预测。

使用Ultralytics运行YOLOv10

只需几行代码,您就可以使用Python API 运行YOLOv10 。这凸显了Ultralytics 生态系统固有的易用性

from ultralytics import YOLO

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

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

# Train the model on a custom dataset
# model.train(data="coco8.yaml", epochs=100, imgsz=640)

使用YOLOv6.0

由于YOLOv6.0 采用了不同的代码库结构,因此通常需要克隆美团官方资源库来进行训练和推理。

# Clone the YOLOv6 repository
git clone https://github.com/meituan/YOLOv6
cd YOLOv6
pip install -r requirements.txt

# Inference using the official script
python tools/infer.py --weights yolov6s.pt --source path/to/image.jpg

总结:选择正确的模式

这两个型号代表了计算机视觉领域的重大成就。YOLOv6.0仍然是专门针对其架构进行优化的传统工业系统的可靠选择。但是 YOLOv10由于其NMS 架构、出色的参数效率和更高的精度,通常能为新项目提供更好的投资回报。

适用于寻求多功能性生态系统支持的开发人员、 Ultralytics YOLO11强烈推荐。YOLO11 不仅能提供最先进的检测性能,还能原生支持姿势估计 旋转框检测Ultralytics 在一个维护良好的软件包中提供了大量的数据分析、分类分析功能。Ultralytics 生态系统可确保高效的训练过程、低内存使用率,并可轻松导出为以下格式 ONNXTensorRT等格式,使您能够放心地部署强大的人工智能解决方案。

延伸阅读


评论