YOLO26 与 YOLOv10:端到端目标检测模型的比较
计算机视觉领域不断发展,这得益于对更快、更准确、更高效模型的需求。本指南对实时目标检测领域的两种开创性架构:YOLO26和YOLOv10进行了全面的技术比较。通过分析它们的架构、性能指标和部署能力,我们旨在帮助开发者和研究人员为其视觉应用选择最佳模型。
无 NMS 架构的演进
多年来,YOLO(You Only Look Once)系列严重依赖非极大值抑制 (NMS)在后处理过程中过滤掉冗余的边界框。尽管有效,但 NMS 会引入推理延迟,并使在Raspberry Pi或专用神经网络处理单元 (NPU) 等边缘设备上的部署复杂化。
YOLOv10 的引入通过开创端到端无 NMS 设计,代表了一次范式转变。在此基础性突破之上,Ultralytics YOLO26 针对生产环境优化了架构,在更广泛的任务中实现了前所未有的效率和易用性。
YOLOv10:开创性的免 NMS 检测
日期:2024-05-23
作者:Ao Wang, Hui Chen, Lihao Liu, et al.
机构:清华大学
资源:ArXiv论文 | GitHub仓库
由清华大学的研究人员开发的 YOLOv10 引入了一致的双重分配策略,以消除对 NMS 的需求。通过采用整体效率-准确性驱动的模型设计,它减少了计算冗余,同时保持了强大的 mAP(平均准确率)。
优势:
- NMS-Free 架构:YOLO 系列中 NMS-Free 设计的最初开创者,大幅降低了实时应用的延迟。
- 效率:与早期模型相比,在参数数量和推理速度之间提供了强大的权衡。
弱点:
- 有限的任务支持:主要专注于标准目标 detect,缺乏对诸如 segment 或姿势估计等高级任务的原生开箱即用支持。
- 学术重点:该代码库虽然健壮,但更侧重于研究,而非精简的企业级生产部署。
YOLO26:边缘与云的新标准
日期:2026-01-14
作者:Glenn Jocher and Jing Qiu
机构:Ultralytics
资源:GitHub仓库 | Ultralytics Platform
作为YOLO11的继任者,YOLO26将无NMS概念推向了极致。它将端到端检测原生集成到高度优化的Ultralytics平台中,为现代机器学习流水线提供了一整套工具。
YOLO26 引入了多项架构突破:
- 移除DFL:已完全移除分布焦点损失。这极大地简化了模型导出流程,并提升了与边缘设备和低功耗设备的兼容性。
- CPU 推理速度提升高达 43%:得益于 DFL 移除和结构优化,YOLO26 在 CPU 上显著提速,非常适合物联网(IoT)和移动部署。
- MuSGD 优化器:受大型语言模型(LLM)训练技术(例如月之暗面 Kimi K2)启发,YOLO26 采用了 SGD 和 Muon 的混合体。这为计算机视觉带来了无与伦比的训练稳定性和更快的收敛。
- ProgLoss + STAL: 这些先进的损失函数在小目标识别方面取得了显著改进,这对于航空影像和基于无人机的安全监控至关重要。
- 任务特定改进: YOLO26 不仅仅是一个 detect 器。它具有用于segment 的语义分割损失和多尺度原型、用于姿势估计 的残差对数似然估计 (RLE),以及用于旋转框检测 (OBB) 的专用角度损失。
性能分析和指标
下表比较了 YOLO26 和 YOLOv10 模型在 COCO detect 上的性能。请注意 YOLO26 如何在保持卓越参数效率的同时实现更高的精度。
| 模型 | 尺寸 (像素) | mAPval 50-95 | 速度 CPU ONNX (毫秒) | 速度 T4 TensorRT10 (毫秒) | 参数 (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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 |
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
Ultralytics 优势:训练与内存效率
将模型部署到生产环境时,内存需求和训练效率与推理速度同样关键。Ultralytics 模型,特别是YOLO26,经过高度优化,可在训练期间减少CUDA内存使用。这使得开发人员能够在消费级GPU上使用更大的批量大小,从而大幅缩短训练时间和计算成本。相反,复杂的架构或像RT-DETR这样的重型Transformer模型通常需要昂贵的高端硬件才能有效训练。
实际实现:代码示例
Ultralytics 的标志是其行业领先的易用性。凭借直观的 python API,从像YOLOv8这样的传统模型迁移到尖端的 YOLO26,只需更新一行代码。
以下是一个100%可运行的示例,演示如何使用YOLO26进行训练和推理:
from ultralytics import YOLO
# 1. Load the state-of-the-art YOLO26 nano model
model = YOLO("yolo26n.pt")
# 2. Train the model on the COCO8 dataset efficiently
# The MuSGD optimizer and efficient memory management are handled automatically
results = model.train(
data="coco8.yaml",
epochs=100,
imgsz=640,
device="cpu", # Easily switch to 0 for GPU
)
# 3. Perform NMS-free inference on a sample image
predictions = model.predict("https://ultralytics.com/images/bus.jpg")
# 4. Display the results to screen
predictions[0].show()
# 5. Export to ONNX for simplified edge deployment
export_path = model.export(format="onnx")
print(f"Model exported successfully to {export_path}")
应用场景与建议
在YOLO26和YOLOv10之间选择取决于您具体的项目需求、部署限制和生态系统偏好。
何时选择 YOLO26
YOLO26 是以下场景的理想选择:
- 免NMS的边缘部署:需要一致的低延迟推理,且无需非极大值抑制后处理复杂性的应用。
- 纯CPU环境:在没有专用GPU加速的设备上,YOLO26高达43%的CPU推理速度提升提供了决定性优势。
- 小目标 detect:在 无人机航拍图像 或物联网传感器分析等挑战性场景中,ProgLoss 和 STAL 显著提高了微小目标的准确性。
何时选择 YOLOv10
YOLOv10 推荐用于:
- 免NMS的实时检测:受益于无需非极大值抑制的端到端检测,从而降低部署复杂性的应用。
- 速度-精度平衡权衡:适用于需要在推理速度和 detect 精度之间取得良好平衡的各种模型规模的项目。
- 一致延迟应用:部署场景中,可预测的推理时间至关重要,例如机器人技术或自主系统。
结论
尽管YOLOv10通过引入NMS-free范式对学术界做出了重大贡献,但YOLO26将这项技术提升至企业级就绪水平。凭借其显著提升的43% CPU速度、创新的MuSGD优化器以及在视觉任务中无与伦比的通用性,YOLO26脱颖而出,成为边缘计算和大规模云部署的终极选择。
对于优先考虑活跃社区、全面文档和无摩擦开发体验的团队,Ultralytics 生态系统是无与伦比的。如果您正在探索用于特殊场景的模型,您可能还需要研究YOLO-World 以进行零样本开放词汇 detect。然而,对于绝大多数实际用例,YOLO26 是明确的推荐。