Ultralytics YOLO27:

YOLOv7 vs YOLOv10#

过去几年,计算机视觉领域取得了显著进展,YOLO(只需看一次)系列模型在实时目标检测方面一直处于领先地位。为计算机视觉项目选择合适的架构,需要深入了解各种可用方案。在这篇全面的技术对比中,我们将探讨两种里程碑式架构:YOLOv7YOLOv10

模型简介#

这两个模型都代表了人工智能发展史上的重要里程碑,但它们在解决目标检测挑战时采用了截然不同的方法。

YOLOv7:免费赠品先驱#

YOLOv7 于 2022 年 7 月 6 日由来自中国科学院信息科学研究所的研究人员 Chien-Yao Wang、Alexey Bochkovskiy 和 Hong-Yuan Mark Liao 发布,改变了神经网络优化的范式。其原始研究详见他们的学术论文,并发布于他们的官方 GitHub 仓库,重点关注架构重新参数化和可训练的“免费增益包”。

YOLOv7 采用扩展高效层聚合网络(E-ELAN),引导网络学习多样化特征,同时不破坏原始梯度路径。这使其成为学术研究基准以及高度依赖标准高端 GPU 的系统的可靠选择。

了解更多关于 YOLOv7 的信息

YOLOv10:实时端到端检测#

由 Ao Wang 及其在清华大学的团队开发,YOLOv10 于 2024 年 5 月 23 日发布。正如其arxiv 论文清华大学 GitHub 仓库中所述,该模型消除了目标检测领域长期存在的瓶颈:非极大值抑制 (NMS)。

YOLOv10 引入了用于无 NMS 训练的一致双重分配机制,从根本上改变了后处理流程。通过采用以效率和精度为核心的整体模型设计策略,YOLOv10 减少了计算冗余。因此,它形成了特别适合要求极低延迟的边缘设备的架构。

进一步了解 YOLOv10

无 NMS 架构

YOLOv10 移除非极大值抑制(NMS)后,整个模型可以导出为单一计算图。这大幅简化了使用 TensorRTOpenVINO 等运行时的部署。

性能与指标对比#

分析模型性能时,务必评估精度、速度和计算量之间的权衡。下表展示了这些模型的不同尺寸版本之间的性能对比。

模型尺寸
(像素)
mAPval
50-95
速度
CPU ONNX
(毫秒)
速度
T4 TensorRT10
(毫秒)
参数量
(M)
FLOPs
(B)
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9
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

权衡分析#

上述指标揭示了明显的代际差距。YOLOv7x 的 mAPval 达到 53.1%,表现十分强劲,但需要 7130 万个参数和 189.9B FLOPs。相比之下,YOLOv10l 的精度更高(53.3% mAP),所需参数不到前者的一半(2950 万个),FLOPs 也显著更少(120.3B)。此外,高度优化的 YOLOv10n 可实现惊人的 1.56ms 推理速度,非常适合实时视频分析和移动应用。

实际应用场景#

这些模型之间的架构差异决定了它们各自最适合的应用场景。

何时使用 YOLOv7#

得益于丰富的特征表示,YOLOv7 在高度复杂的环境中表现出色。在密集城市区域监测交通流量、分析卫星图像或识别重型制造自动化中的缺陷等应用中,其稳健的结构重新参数化能够发挥优势。对于已经深度集成特定 PyTorch 1.12 流程的传统环境,它也备受青睐。

何时使用 YOLOv10#

YOLOv10 的无 NMS 轻量化设计在受限环境中表现出色。我们强烈推荐将其用于NVIDIA Jetson Nano 或 Raspberry Pi 等边缘计算设备。其低延迟性能使其非常适合体育分析、自主无人机导航以及传送带上的高速机器人分拣等快速移动应用。

Ultralytics 生态系统优势#

虽然这两个模型都具有深厚的学术根基,但只有在统一的 Ultralytics Platform 中使用时,它们的真正潜力才能得到充分释放。从零开始开发计算机视觉模型一向非常困难,而 Ultralytics 生态系统为机器学习工程师提供了无与伦比的体验。

  • 易用性: Ultralytics Python API 提供统一的接口。你只需几行代码即可训练、验证和导出模型,从而避免典型学术仓库中常见的复杂依赖问题。
  • 完善维护的生态系统: Ultralytics 确保底层代码持续积极开发。用户可以无缝集成热门 ML 工具,例如使用 Weights & Biases 进行日志记录,或使用 Hugging Face 快速创建 Web 演示。
  • 内存需求: 基于 Transformer 的目标检测器在训练期间通常会消耗大量 CUDA 内存。相比之下,Ultralytics YOLO 模型所需内存少得多,因此可以在消费级硬件上使用更大的批次大小
  • 多功能性: Ultralytics 流程不限于标准边界框。它还可无缝支持姿态估计实例分割和有向边界框,并适用于 YOLO11YOLOv8 等支持的模型系列。

简化的训练示例#

使用 Ultralytics 运行训练流程非常简单。无论你采用的是 YOLOv7 历经验证的稳健性,还是 YOLOv10 的无 NMS 速度,语法都保持一致:

from ultralytics import YOLO

# Load the preferred model (e.g., YOLOv10 Nano)
model = YOLO("yolov10n.pt")

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

# Run an inference prediction on a sample image
predictions = model.predict("https://ultralytics.com/images/bus.jpg")

# Export to an edge-friendly format like ONNX
model.export(format="onnx")

使用场景与建议#

在 YOLOv7 和 YOLOv10 之间进行选择,取决于你的具体项目需求、部署限制和生态系统偏好。

何时选择 YOLOv7#

YOLOv7 是以下场景的理想选择:

  • **学术基准测试:**复现 2022 年前后的最先进结果,或研究 E-ELAN 和可训练的免费技巧组合技术的影响。
  • **重参数化研究:**研究规划好的重参数化卷积和复合模型缩放策略。
  • **现有自定义流程:**围绕 YOLOv7 特定架构构建、难以轻松重构的高度定制化项目。

何时选择 YOLOv10#

以下情况推荐选择 YOLOv10:

  • 无 NMS 实时检测: 适用于能够从无需非极大值抑制的端到端检测中受益的应用,可降低部署复杂性。
  • 速度与准确率的平衡: 适用于需要在各种模型规模之间实现推理速度和检测准确率良好平衡的项目。
  • 延迟稳定的应用: 适用于推理时间可预测至关重要的部署场景,例如机器人技术或自主系统。

何时选择 Ultralytics (YOLO26)#

对于大多数新项目,Ultralytics YOLO26 在性能和开发者体验之间提供了最佳组合:

  • 无 NMS 边缘部署: 适用于需要稳定、低延迟推理,同时又不希望引入非极大值抑制后处理复杂性的应用。
  • 仅使用 CPU 的环境: 适用于没有专用 GPU 加速的设备,此时 YOLO26 最高提升 43% 的 CPU 推理速度将带来决定性优势。
  • 小目标检测: 适用于航空无人机影像或 IoT 传感器分析等具有挑战性的场景,在这些场景中,ProgLoss 和 STAL 能显著提升微小目标的准确率。

未来:推出 YOLO26#

虽然 YOLOv7 和 YOLOv10 都是令人印象深刻的里程碑,但 AI 的前沿始终在不断发展。Ultralytics YOLO26 于 2026 年 1 月发布,已成为所有边缘和云端部署场景中效率与精度的新标准,无可争议。

如果你今天开始一个新的计算机视觉项目,YOLO26 是推荐的架构。它在前代模型的基础上融入了多项突破性创新:

  • 端到端无 NMS 设计: YOLO26 借鉴 YOLOv10 的理念,原生消除 NMS 后处理,为确定性实时机器人应用带来超低延迟推理。
  • CPU 推理速度最高提升 43%: 通过策略性地移除分布式焦点损失(DFL)模块,YOLO26 大幅加快了非 GPU 边缘计算硬件上的执行速度,使其成为物联网设备的强大方案。
  • MuSGD 优化器: YOLO26 从近期大语言模型训练创新中汲取灵感,融合 SGD 和 Muon,稳定训练路径并确保更快收敛。
  • ProgLoss + STAL: 这些先进的损失函数显著提升了小目标识别能力,克服了旧版 YOLO 代际模型长期存在的弱点。
  • 无与伦比的多功能性: YOLO26 提供原生的任务专用优化,例如用于姿态跟踪的残差对数似然估计(RLE),以及用于航空影像中精确 OBB 检测的专用角度损失。

对于寻求速度、精度和部署简便性之间终极平衡的工程师而言,从传统模型迁移到 YOLO26 将带来即时且可量化的竞争优势。

评论