YOLOv5 对比 YOLO26:实时目标检测的演进
目标检测的演进以效率和准确性的显著飞跃为标志。多年来,YOLOv5 一直是行业标准,因其速度和易用性的平衡而备受喜爱。然而,计算机视觉领域变化迅速。迎来 YOLO26,这是 Ultralytics 的最新一代,它重新定义了边缘设备和高性能服务器上可能实现的功能。
本指南对传奇的 YOLOv5 和尖端的 YOLO26 进行了技术比较,分析了它们的架构、性能指标和理想用例,以帮助您为下一个计算机视觉项目选择合适的工具。
概览比较
虽然这两种模型都是 Ultralytics 致力于普及 AI 的成果,但它们代表了不同时代的设计理念。YOLOv5 专注于建立一个强大、用户友好的生态系统,而 YOLO26 则突破了延迟和架构效率的界限。
YOLOv5:经典标准
由 Glenn Jocher 于 2020 年 6 月发布,YOLOv5 彻底改变了目标检测的易用性。它是首批直接在 PyTorch 生态系统内提供无缝训练体验的模型之一,摆脱了其前身 Darknet 框架的束缚。
- 日期: 2020-06-26
- 作者: Glenn Jocher
- 组织:Ultralytics
- 关键特性:基于锚框的检测,需要非极大值抑制 (NMS)。
YOLOv5仍然是一个可靠的主力,尤其适用于更新推理管线可能成本高昂的传统系统。其“基于锚框”的架构依赖预定义框来预测物体位置,这种方法虽然有效,但需要仔细调整超参数。
YOLO26:新前沿
由Glenn Jocher 和 Jing Qiu于2026年1月发布,YOLO26引入了为现代边缘AI时代设计的根本性架构变革。它摒弃了锚框和复杂的后处理,在不牺牲精度的情况下实现了极致速度。
- 日期: 2026-01-14
- 作者: Glenn Jocher, Jing Qiu
- 组织:Ultralytics
- 主要特性:端到端免NMS、MuSGD优化器、去除DFL。
YOLO26专为需要最大吞吐量的开发者而设计。通过消除对NMS的需求,它简化了部署逻辑并降低了延迟,使其成为CPU和移动设备上实时应用的卓越选择。
技术性能比较
以下指标突显了性能上的代际飞跃。测试在COCO数据集上进行,这是目标检测任务的标准基准。
| 模型 | 尺寸 (像素) | mAPval 50-95 | 速度 CPU ONNX (毫秒) | 速度 T4 TensorRT10 (毫秒) | 参数 (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
| 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 |
主要内容
- CPU效率:YOLO26n在CPU上的速度比YOLOv5n快近2倍,同时精度大幅提升(28.0% vs 40.9% mAP)。这对于在树莓派或GPU资源不可用的移动设备上进行部署至关重要。
- 参数效率:YOLO26x在参数量几乎减半(55.7M vs 97.2M)的情况下,实现了比YOLOv5x(50.7%)显著更高的精度(57.5% mAP)。模型尺寸的减小降低了内存需求和存储成本。
- 精度/速度权衡:YOLO26的“Nano”版本在精度上优于YOLOv5的“Small”版本,尽管它属于更小的模型类别。
从 YOLOv5 升级
如果您目前正在使用YOLOv5s,切换到YOLO26n可能会同时为您带来更高的精度和更快的推理速度,从而降低您的计算成本和延迟。
架构深度解析
性能差距源于模型解决检测问题方式的根本性差异。
1. 端到端 NMS-Free 设计
YOLOv5采用传统方法,生成数千个潜在的边界框。需要一个称为非极大值抑制(NMS)的后处理步骤,将其筛选为最终的检测结果。此步骤通常很慢,并且难以在FPGA或NPU等硬件上加速。
YOLO26原生端到端。它在训练期间采用双标签分配策略,强制模型为每个物体预测一个高质量的单一框。这在推理时完全消除了NMS步骤。
- 优势:更低的延迟和更简单的部署管线(无需在C++或CUDA中为自定义导出实现NMS)。
- 结果:与依赖大量后处理的上一代模型相比,CPU推理速度提升高达43%。
2. 损失函数:DFL 移除与 ProgLoss
YOLOv5(以及随后的YOLOv8)采用了分布焦点损失(DFL)来细化边界框。虽然有效,但DFL增加了计算开销和导出过程的复杂性。
YOLO26移除了DFL,回归到简化的回归头,更易于进行INT8量化部署。为了弥补任何潜在的精度损失,YOLO26引入了ProgLoss(渐进式损失平衡)和STAL(小目标感知标签分配)。
- STAL:专门针对“小目标”问题,提升了对远处或微小目标的性能——这是包括v5在内的早期YOLO版本的常见弱点。
- ProgLoss:在训练期间动态调整不同损失分量的权重,以稳定收敛。
3. MuSGD 优化器
训练稳定性是YOLO26团队的主要关注点。YOLOv5通常依赖标准的SGD或Adam优化器,而YOLO26则引入了MuSGD,这是一种混合优化器,其灵感来源于月之暗面(Moonshot AI)的Kimi K2和大型语言模型(LLM)训练技术。
- 创新:它将Muon优化的稳定性带入计算机视觉领域,允许更高的学习率和更快的收敛速度,同时避免损失值飙升的风险。
通用性与任务支持
两种模型都已集成到Ultralytics生态系统,这意味着它们支持广泛的计算机视觉任务。然而,YOLO26包含了YOLOv5所缺乏的针对特定任务的架构改进。
| 特性 | YOLOv5 | YOLO26 |
|---|---|---|
| 目标检测 | ✅ 标准基于锚框 | ✅ 免NMS,STAL用于小目标 |
| 分割 | ✅ 在v7.0中添加 | ✅ 语义损失 & 多尺度原型 |
| 姿势估计 | ❌ (在分支中可用) | ✅ RLE (残差对数似然估计) |
| OBB | ❌ (在分支中可用) | ✅ 角度损失,用于精确旋转 |
| 分类 | ✅ 支持 | ✅ 优化架构 |
YOLO26 对残差对数似然估计 (RLE)在姿势估计中的支持,为人体的姿势 track 提供了显著更准确的关键点,使其在体育分析和医疗保健应用中表现卓越。
训练与使用
Ultralytics 生态系统的优势之一是其统一的 API。无论您使用 YOLOv5(通过现代软件包)还是 YOLO26,代码都保持一致且简单。
Python 代码示例
以下是您如何使用 ultralytics 软件包。请注意,对于 YOLOv5,现代软件包默认使用 yolov5u (无锚点适应的)权重,以实现更好的兼容性,但这种比较适用于其架构。
from ultralytics import YOLO
# Load the models
model_v5 = YOLO("yolov5s.pt") # Legacy standard
model_26 = YOLO("yolo26n.pt") # New NMS-free standard
# Comparison: Inference on an image
# YOLO26 requires no NMS post-processing arguments in export/deployment
results_v5 = model_v5("https://ultralytics.com/images/bus.jpg")
results_26 = model_26("https://ultralytics.com/images/bus.jpg")
# Print results to see speed differences
print(f"YOLOv5 Speed: {results_v5[0].speed}")
print(f"YOLO26 Speed: {results_26[0].speed}")
# Train YOLO26 on custom data
# The MuSGD optimizer is handled automatically
results = model_26.train(data="coco8.yaml", epochs=100, imgsz=640)
Ultralytics 平台(前身为 HUB)通过允许您在云端管理数据集并训练这两个模型,而无需编写代码,从而进一步简化了这一点,尽管 YOLO26 是在该平台上创建新项目的推荐默认模型。
部署与生态系统
YOLOv5 拥有庞大的传统生态系统。有数千个专门为 yolov5 格式。如果您正在使用严格要求 YOLOv5 精确输出 tensor 形状的僵化、老旧的硬件 pipeline,它仍然是一个可行的选择。
然而,对于现代部署,YOLO26 提供了卓越的导出选项。
- 边缘 AI: DFL 和 NMS 的移除使 YOLO26 模型更容易转换为 TensorRT 和 OpenVINO 等格式。
- 量化: YOLO26 被设计为对量化友好,在转换为用于移动处理器的 INT8 时能保持更高的精度。
结论
尽管 YOLOv5 仍然是使目标 detect 大众化的传奇模型,但 YOLO26 代表着未来。凭借其端到端的免 NMS 设计、移除繁重的损失函数以及集成受 LLM 启发的优化器(如 MuSGD),YOLO26 提供了 YOLOv5 无法比拟的性能表现。
对于启动新项目的开发者而言,YOLO26 是明确的推荐。它提供了更低的延迟、更高的精度、更少的内存使用和更简单的部署路径。
探索其他模型
对于对专业架构感兴趣的用户,可以考虑探索 YOLO11,它是 YOLO26 的直接前身,提供了出色的通用性能,或者 YOLO-World,用于开放词汇 detect 任务,即您需要 detect 训练集中不存在的对象。