YOLOv8 与 YOLO11#
计算机视觉的快速发展在很大程度上得益于实时目标检测框架的持续进步。对于探索现代技术领域的开发者和研究人员而言,选择合适的模型对于平衡准确率、速度和资源效率至关重要。在这篇技术对比中,我们将探讨 Ultralytics 生态中的两个基础模型:Ultralytics YOLOv8 和 Ultralytics YOLO11。
这两个模型都展现了 Ultralytics 架构的标志性特征——易于使用、维护良好的生态系统,以及低内存需求下出色的训练效率。下面让我们深入了解它们的架构设计、性能基准和理想部署场景。
模型概览#
在比较它们的具体技术优势之前,先了解这两个模型的起源和核心规格会很有帮助。
Ultralytics YOLOv8#
YOLOv8 于 2023 年初发布,代表了一次重大飞跃,引入了无锚框检测和对损失函数的显著改进,并迅速成为各种机器学习任务的黄金标准。
- 作者: Glenn Jocher、Ayush Chaurasia 和 Jing Qiu
- 组织: Ultralytics
- 日期: 2023-01-10
- GitHub: ultralytics/ultralytics
Ultralytics YOLO11#
YOLO11 在前代模型成功的基础上,对核心架构进行了优化,使准确率与延迟之间的帕累托前沿进一步提升,同时引入了高度优化的参数数量,而不牺牲预测能力。
- 作者: Glenn Jocher 和 Jing Qiu
- 组织: Ultralytics
- 日期: 2024-09-27
- GitHub: ultralytics/ultralytics
如果你正在探索替代方案,Ultralytics 还支持基于 Transformer 的模型,例如 RT-DETR,以及支持零样本开放词汇检测的模型,例如 YOLO-World。不过,就延迟和内存效率而言,标准 YOLO 架构通常仍是首选。
架构与方法差异#
从 YOLOv8 到 YOLO11 的转变代表了神经网络设计的谨慎演进,而不是彻底重构,从而确保围绕这些模型的维护良好的生态系统保持稳定。
骨干网络与颈部网络优化#
YOLOv8 引入了精简的 CNN 骨干网络,摆脱了传统锚框,将目标检测纯粹视为中心点预测问题。这种无锚框方法显著降低了边界框回归的复杂度。YOLO11 在此基础上引入了优化的特征金字塔网络(FPN),并将 C2f 模块改为 C3k2 模块。这一改动使 YOLO11 能够提取更丰富的空间特征,从而提升对 COCO 数据集中通常出现的小目标的检测准确率。
内存需求与训练效率#
YOLOv8 和 YOLO11 最显著的优势之一,是训练期间较低的内存需求。与可能轻易耗尽消费级硬件 VRAM 的大型视觉 Transformer 不同,这些模型经过优化,可以在标准 GPU 上使用易于运行的 PyTorch 进行训练。YOLO11 大幅减少了总参数量——在 large(L)版本中,参数量最多比 YOLOv8 少 42%——同时提高了平均精度(mAP)。这意味着模型训练的 epoch 更快,碳足迹也更低。
性能指标#
要真正评估这些模型的性能平衡,我们必须查看客观基准。下表对比了 YOLOv8 和 YOLO11 在标准缩放版本(从 nano 到 extra-large)中的表现。
| 模型 | 尺寸 (像素) | 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 |
| YOLO11n | 640 | 39.5 | 56.1 | 1.5 | 2.6 | 6.5 |
| YOLO11s | 640 | 47.0 | 90.0 | 2.5 | 9.4 | 21.5 |
| YOLO11m | 640 | 51.5 | 183.2 | 4.7 | 20.1 | 68.0 |
| YOLO11l | 640 | 53.4 | 238.6 | 6.2 | 25.3 | 86.9 |
| YOLO11x | 640 | 54.7 | 462.8 | 11.3 | 56.9 | 194.9 |
如结果所示,YOLO11 始终以更少的参数量和 FLOPs 实现了比 YOLOv8 更高的准确率。使用 ONNX Runtime 测得的 CPU 推理速度凸显了 YOLO11 在边缘部署方面的卓越效率。导出到 NVIDIA TensorRT 后,两个模型都能实现出色的 15 ms 以下延迟,这对于真实世界的视频流分析至关重要。
生态系统与易用性#
这两个模型都充分受益于统一的 ultralytics Python 包。这种易于使用的特性让工程师可以在 YOLOv8 和 YOLO11 之间无缝切换。训练、验证和导出只需几行代码即可完成。
from ultralytics import YOLO
# Load a pre-trained YOLO11 model (you can simply swap to "yolov8n.pt")
model = YOLO("yolo11n.pt")
# Train the model efficiently on a local dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640, device=0)
# Export the optimized model to ONNX
model.export(format="onnx")这种无缝集成还延伸到了 Ultralytics Platform,它无需高级 DevOps 知识即可简化基于云的训练、模型监控和部署。
多样性与实际应用#
Ultralytics 框架的一大标志性特点是其内在的多样性。YOLOv8 和 YOLO11 都支持标准目标检测之外的多种计算机视觉任务:
- 实例分割: 高度准确的像素级掩码,可用于医学影像和自动驾驶。
- 姿态估计: 专为体育分析和人机交互设计的关键点检测。
- 图像分类: 使用在 ImageNet 上训练的骨干网络进行轻量级分类。
- 定向边界框(OBB): 对识别卫星影像中的旋转目标至关重要。
YOLOv8 上线时间更长,拥有数量庞大的社区教程和经过充分测试的企业级部署案例。如果你要集成严格要求 YOLOv8 张量形状的旧版流程,它仍然是非常可靠的选择。不过,对于优先考虑最大效率的新项目——例如部署到 Raspberry Pi 等嵌入式边缘设备上——YOLO11 凭借更出色的速度与参数比,显然是更优的实际选择。
使用场景与建议#
在 YOLOv8 和 YOLO11 之间进行选择,取决于你的具体项目需求、部署限制和生态偏好。
何时选择 YOLOv8#
YOLOv8 适合以下场景:
- 通用多任务部署: 需要在 Ultralytics 生态系统中使用成熟模型执行检测、分割、分类和姿态估计的项目。
- 成熟的生产系统: 已经基于 YOLOv8 架构构建,并拥有稳定且经过充分测试的部署流程的现有生产环境。
- 广泛的社区和生态系统支持: 能够受益于 YOLOv8 丰富教程、第三方集成和活跃社区资源的应用。
何时选择 YOLO11#
推荐在以下场景使用 YOLO11:
- 生产级边缘部署: 在 Raspberry Pi 或 NVIDIA Jetson 等设备上运行的商业应用,其中可靠性和持续维护至关重要。
- 多任务视觉应用: 需要在统一框架中实现检测、分割、姿态估计和 OBB 的项目。
- 快速原型开发与部署: 需要借助简洁高效的 Ultralytics Python API,快速完成从数据采集到生产部署的团队。
何时选择 Ultralytics (YOLO26)#
对于大多数新项目,Ultralytics YOLO26 在性能和开发者体验之间提供了最佳组合:
- 无 NMS 边缘部署: 适用于需要稳定、低延迟推理,同时又不希望引入非极大值抑制后处理复杂性的应用。
- 仅使用 CPU 的环境: 适用于没有专用 GPU 加速的设备,此时 YOLO26 最高提升 43% 的 CPU 推理速度将带来决定性优势。
- 小目标检测: 适用于航空无人机影像或 IoT 传感器分析等具有挑战性的场景,在这些场景中,ProgLoss 和 STAL 能显著提升微小目标的准确率。
前沿之选:YOLO26 的优势#
虽然 YOLOv8 和 YOLO11 都是出色的架构,但 AI 领域的发展从未停止。对于希望在 2026 年实现绝对最先进性能的开发者而言,Ultralytics YOLO26 代表了下一次重大飞跃。
YOLO26 从根本上重新构想了部署流程。它采用端到端无 NMS 设计,这是 YOLOv10 首创的突破性方法,可消除复杂的后处理步骤。此外,移除 DFL(分布焦点损失)大幅简化了导出逻辑,并增强了与低功耗边缘设备的兼容性,相比前代模型可实现最高 43% 更快的 CPU 推理。
新颖的 MuSGD 优化器是一种受 LLM 训练技术启发的混合优化器,大幅提升了训练稳定性和收敛速度。此外,ProgLoss + STAL 等新的损失函数显著增强了小目标识别能力,解决了 IoT 和机器人领域长期存在的难题。借助姿态估计专用的 RLE 和分割专用的多尺度 proto 等任务特定改进,YOLO26 无出其右。
如果你需要广泛的旧版社区支持,可以从 YOLOv8 开始。如果你希望在速度和参数量之间取得高度优化的平衡,可以升级到 YOLO11。如果你追求面向未来、终极边缘优化且无 NMS 的架构,可以跃迁到 YOLO26。
结论#
最终,在 YOLOv8 和 YOLO11 之间进行选择,取决于你的项目时间安排和硬件限制。YOLOv8 是业内久经考验的强大模型,提供无可匹敌的稳定性。相比之下,YOLO11 对该架构进行了优化,以更少的参数实现更高的 mAP,因此对资源受限的边缘应用极具吸引力。无论你选择哪个模型,无缝衔接的 Ultralytics Python API 都能确保你的开发工作流保持敏捷、高效并获得充分支持。当你准备好突破边缘设备的性能极限时,YOLO26 已经整装待发。