YOLO26 与 YOLOv10#
计算机视觉领域在不断演进,这得益于对更快速、更准确和更高效模型的需求。本指南对实时目标检测领域中两个开创性的架构:YOLO26 和 YOLOv10 进行了全面的技术对比。通过分析它们的架构、性能指标和部署能力,我们旨在帮助开发者和研究人员为他们的视觉应用选择最优模型。
无 NMS 架构的演进#
多年来,YOLO 家族在很大程度上依赖 Non-Maximum Suppression (NMS) 在后处理期间过滤掉冗余的边界框。尽管 NMS 很有效,但它引入了推理延迟,并使部署在诸如 Raspberry Pi 或专用神经处理单元 (NPUs) 等边缘设备上的工作变得复杂。
YOLOv10 的推出代表了范式的转变,它率先实现了端到端的无 NMS 设计。在这一基础性突破之上,Ultralytics YOLO26 为生产环境优化了架构,在更广泛的任务中实现了前所未有的效率和易用性。
YOLOv10:无 NMS 检测的先驱#
日期: 2024-05-23
作者: Ao Wang, Hui Chen, Lihao Liu 等
机构: Tsinghua University
资源: ArXiv Paper | GitHub Repository
由清华大学研究人员开发的 YOLOv10 引入了一种一致的双重分配策略,以消灭对 NMS 的需求。通过采用整体效率与准确性驱动的模型设计,它在保持强大 mAP (mean Average Precision) 的同时减少了计算冗余。
优势:
- 无 NMS 架构: YOLO 系列中无 NMS 设计的最初开拓者,显著降低了实时应用的延迟。
- 效率: 与前几代模型相比,在参数量和推理速度之间提供了极佳的平衡。
劣势:
- 任务支持有限: 主要专注于标准目标检测,缺乏对分割或姿态估计等高级任务的原生开箱即用支持。
- 学术侧重: 代码库虽然稳健,但更倾向于研究而非精简、企业级的生产部署。
YOLO26:边缘和云端的新标准#
日期: 2026-01-14
作者: Glenn Jocher 和 Jing Qiu
机构: Ultralytics
资源: GitHub Repository | Ultralytics Platform
作为 YOLO11 的继承者发布,YOLO26 将无 NMS 的概念推向了极致。它将端到端检测原生集成到高度优化的 Ultralytics Platform 中,为现代机器学习流水线提供了一套完整的工具。
YOLO26 引入了几项架构突破:
- 移除 DFL: 分布式焦点损失 (Distribution Focal Loss) 已被完全移除。这极大地简化了模型导出流程,并提高了与边缘和低功耗设备的兼容性。
- CPU 推理速度提升高达 43%: 得益于 DFL 的移除和结构优化,YOLO26 在 CPU 上的运行速度显著加快,使其成为物联网和移动部署的理想选择。
- MuSGD 优化器: 受大语言模型 (LLM) 训练技术(如 Moonshot AI 的 Kimi K2)启发,YOLO26 采用了 SGD 和 Muon 的混合体。这为计算机视觉带来了前所未有的训练稳定性和更快的收敛速度。
- ProgLoss + STAL: 这些先进的损失函数在小目标识别方面带来了显著改进,这对于航空影像和基于无人机的安全监控至关重要。
- 特定任务的改进: YOLO26 不仅仅是一个检测器。它具有用于分割的语义分割损失和多尺度 proto、用于姿态估计的残余对数似然估计 (RLE),以及用于旋转边界框 (OBB) 的专用角度损失。
性能分析与指标#
下表对比了 YOLO26 和 YOLOv10 模型在 COCO 上的检测性能。注意 YOLO26 是如何在保持卓越参数效率的同时实现更高准确度的。
| 模型 | 尺寸 (像素) | mAPval 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | 参数量 (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 推理提速可提供决定性优势。
- 小目标检测: 诸如航拍无人机图像或物联网传感器分析等具有挑战性的场景,其中 ProgLoss 和 STAL 显著提高了微小目标的准确率。
何时选择 YOLOv10#
推荐使用 YOLOv10 的情况:
- 无需 NMS 的实时检测: 得益于无需非极大值抑制(Non-Maximum Suppression)的端到端检测,能够降低部署复杂性的应用。
- 平衡的速度与精度权衡: 需要在推理速度和检测精度之间取得良好平衡的各类项目,适用于多种模型规模。
- 一致延迟的应用: 预测推理时间至关重要的部署场景,例如机器人技术或自主系统。
结论#
虽然 YOLOv10 通过引入无 NMS 范式为学术界做出了重大贡献,但 YOLO26 将这项技术提升到了企业级就绪水平。凭借其 CPU 速度 43% 的惊人提升、创新的 MuSGD 优化器以及在视觉任务中无与伦比的多功能性,YOLO26 脱颖而出,成为边缘计算和大规模云部署的终极选择。
对于优先考虑活跃社区、全面文档以及顺畅开发者体验的团队来说,Ultralytics 生态系统是无与伦比的。如果你正在探索针对特殊场景的模型,你可能还想研究用于零样本开放词汇检测的 YOLO-World。然而,对于绝大多数现实世界的用例,YOLO26 是绝对的推荐。