YOLOv8 与 YOLO26 对比:实时视觉 AI 的演进
计算机视觉领域发展迅速,每一代 You Only Look Once (YOLO) 系列都在速度和准确性方面树立了新的基准。这一系列中的两个关键里程碑是 Ultralytics YOLOv8 和最先进的 Ultralytics YOLO26。YOLOv8 建立了行业领导者所依赖的强大生态系统和多任务能力,而 YOLO26 则引入了突破性的架构变革,例如端到端推理和针对边缘设备的优化。
本指南提供了详细的技术比较,以帮助研究人员和开发者根据其特定的部署需求选择合适的模型,涵盖从基于云的分析到资源受限的物联网应用。
模型概述
Ultralytics YOLOv8
YOLOv8 于 2023 年 1 月发布,标志着向统一框架的重大转变,该框架支持目标检测、实例分割、姿势估计、分类和旋转框检测 (OBB) 任务。它引入了无锚框检测和新的损失函数,使其成为各行各业的多功能选择。
- 作者: Glenn Jocher、Ayush Chaurasia 和 Jing Qiu
- 组织:Ultralytics
- 日期: 2023-01-10
- GitHub:Ultralytics 仓库
Ultralytics YOLO26
YOLO26 于 2026 年 1 月推出,代表着效率和性能的又一次飞跃。它被设计为原生端到端 (E2E),在推理过程中无需非极大值抑制 (NMS)。这带来了更快的速度,尤其是在 CPU 和边缘硬件上。随着分布焦点损失 (DFL) 的移除和 MuSGD 优化器的引入,YOLO26 为现代部署限制进行了优化。
- 作者:Glenn Jocher 和 Jing Qiu
- 组织:Ultralytics
- 日期: 2026-01-14
- GitHub:Ultralytics 仓库
架构差异
从 YOLOv8 到 YOLO26 的转变涉及旨在降低延迟和提高训练稳定性的根本性结构变化。
端到端NMS-Free设计
传统检测器(如 YOLOv8)最显著的瓶颈之一是称为 NMS 的后处理步骤,它用于过滤重叠的边界框。
- YOLOv8: 使用高度优化但必不可少的 NMS 步骤。这会使部署流程复杂化,尤其是在导出到诸如 ONNX 或 TensorRT 等格式时,高效的 NMS 插件支持各不相同。
- YOLO26: 采用由YOLOv10首创的免NMS架构。通过直接从网络生成一对一预测,它简化了导出逻辑并降低了推理延迟,使其成为在Raspberry Pi或移动设备上进行实时应用的理想选择。
损失函数与优化
YOLO26在训练方案中引入了几个新颖的组件:
- MuSGD 优化器: SGD 和 Muon 的混合体,灵感来自大型语言模型 (LLM) 训练技术。与以前版本中使用的标准 AdamW 或 SGD 相比,该优化器稳定了训练动量,从而实现了更快的收敛速度。
- DFL 移除: 移除分布焦点损失简化了回归头。这种复杂性的降低是 YOLO26 在 CPU 上运行速度提高 43% 的关键因素。
- ProgLoss + STAL: 渐进式损失平衡和小目标感知标签分配 (STAL) 显著提高了小目标的性能,解决了用于航空影像或工业检测的通用检测器中的常见弱点。
注意: 边缘部署
YOLO26 中 NMS 和 DFL 的移除使其对 8 位量化异常友好。如果您使用 TFLite 或 CoreML 部署到边缘硬件,YOLO26 在较低精度下通常能比 YOLOv8 保持更高的准确性。
性能指标
下表比较了 YOLOv8 和 YOLO26 模型在 COCO 数据集上的性能。YOLO26 在所有模型规模上都表现出卓越的速度和准确性,尤其是在其架构优化优势尤为突出的 CPU 环境中。
| 模型 | 尺寸 (像素) | mAPval 50-95 | 速度 CPU ONNX (毫秒) | 速度 T4 TensorRT10 (毫秒) | 参数 (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv8n | 640 | 37.3 | 80.4 | 1.47 | 3.2 | 8.7 |
| YOLOv8s | 640 | 44.9 | 128.4 | 2.66 | 11.2 | 28.6 |
| YOLOv8m | 640 | 50.2 | 234.7 | 5.86 | 25.9 | 78.9 |
| YOLOv8l | 640 | 52.9 | 375.2 | 9.06 | 43.7 | 165.2 |
| YOLOv8x | 640 | 53.9 | 479.1 | 14.37 | 68.2 | 257.8 |
| YOLO26n | 640 | 40.9 | 38.9 | 1.7 | 2.4 | 5.4 |
| YOLO26s | 640 | 48.6 | 87.2 | 2.5 | 9.5 | 20.7 |
| YOLO26m | 640 | 53.1 | 220.0 | 4.7 | 20.4 | 68.2 |
| YOLO26l | 640 | 55.0 | 286.2 | 6.2 | 24.8 | 86.4 |
| YOLO26x | 640 | 57.5 | 525.8 | 11.8 | 55.7 | 193.9 |
注意:粗体表示更好的性能指标(更高的 mAP,更低的速度/参数/FLOPs)。
训练效率与易用性
两种模型都受益于成熟的 Ultralytics 生态系统,该系统以其“从零到英雄”的简易性而闻名。
精简 API
无论使用 YOLOv8 还是 YOLO26,Python API 都保持一致。这允许开发人员只需更改一行代码即可在不同架构之间切换,从而方便进行基准测试和 A/B 测试。
from ultralytics import YOLO
# Load a YOLOv8 model
model_v8 = YOLO("yolov8n.pt")
# Load a YOLO26 model
model_26 = YOLO("yolo26n.pt")
# Train YOLO26 on your custom dataset
results = model_26.train(data="coco8.yaml", epochs=100, imgsz=640)
内存与资源
与基于 Transformer 的模型(如 RT-DETR)或旧版 YOLO 相比,YOLO26 在训练期间的内存效率显著更高。其简化的损失函数曲面和 MuSGD 优化器允许在相同的 GPU 硬件上使用更大的批次大小,从而降低了训练基础设施的总拥有成本。VRAM 有限的用户可以轻松地微调 yolo26s 或 yolo26m 在标准消费级 GPU 上运行模型。
理想用例
选择 YOLOv8 还是 YOLO26 取决于您的具体限制和部署环境。
何时选择 YOLOv8
- 遗留兼容性: 如果您现有流程与 YOLOv8 特定的后处理逻辑深度集成,且无法轻松更新。
- 特定社区插件: 一些较旧的第三方工具或深度嵌入式系统可能仍然对 YOLOv8 导出格式存在严格依赖,尽管 Ultralytics 导出模块能够无缝处理大多数转换。
何时选择 YOLO26
- 边缘计算: 对于 NVIDIA Jetson、手机或嵌入式 CPU 上的应用,每一毫秒的延迟都至关重要。43% 的 CPU 速度提升对于电池供电设备来说是颠覆性的。
- 小目标检测: ProgLoss和STAL的改进使YOLO26成为更优选择,用于无人机监控或农业检测,在这些场景中,目标通常距离较远且微小。
- 简化部署: 如果您想避免在非标准环境(例如定制FPGA或专用AI加速器)中实现NMS的麻烦,YOLO26的端到端特性是理想的选择。
- 高性能任务: 对于需要最高准确性的任务,例如医学影像或安全关键型自动驾驶组件。
结论
尽管YOLOv8仍然是计算机视觉领域强大而可靠的工具,但YOLO26代表了高效、高性能检测的未来。其架构创新解决了NMS等长期存在的部署痛点,同时提供了最先进的准确性。
对于寻求保持技术前沿的开发者而言,升级到YOLO26可在速度和模型大小方面带来立竿见影的优势,同时不牺牲Ultralytics体验所定义的易用性。我们建议使用YOLO26启动新项目,以充分利用这些进步。
其他值得探索的模型
- YOLO11: YOLO26的直接前身,为那些从旧版本过渡的用户提供了性能与功能的平衡。
- YOLOv10: 开创了免NMS方法的模型,对于架构演进的学术研究很有帮助。
- YOLO-World: 一款开放词汇检测器,非常适合无需在自定义数据集上训练即可识别物体,利用文本提示进行检测。