跳转至内容

Ultralytics YOLO11

概述

YOLO11 是 Ultralytics YOLO 系列实时目标检测器的最新迭代版本,它以前沿的精度、速度和效率重新定义了可能性。YOLO11 在之前 YOLO 版本的显著进步基础上,在架构和训练方法上进行了重大改进,使其成为各种计算机视觉任务的多功能选择。

Ultralytics YOLO11 对比图

Ultralytics YOLO11 🚀 由 NotebookLM 生成的播客



观看: 如何使用 Ultralytics YOLO11 进行目标检测和跟踪 | 如何进行基准测试 | YOLO11 发布🚀

主要功能

  • 增强的特征提取: YOLO11 采用改进的 backbone 和 neck 架构,从而增强了特征提取能力,以实现更精确的目标检测和复杂的任务性能。
  • 优化效率和速度: YOLO11 引入了改进的架构设计和优化的训练流程,从而提供更快的处理速度,并在精度和性能之间保持最佳平衡。
  • 以更少的参数实现更高的精度: 凭借模型设计的进步,YOLO11m 在 COCO 数据集上实现了更高的 平均精度均值 (mAP),同时比 YOLOv8m 使用的参数减少了 22%,从而在不影响精度的情况下提高了计算效率。
  • 跨环境的适应性: YOLO11 可以无缝部署在各种环境中,包括边缘设备、云平台和支持 NVIDIA GPU 的系统,从而确保最大的灵活性。
  • 广泛支持的任务范围: 无论是目标检测、实例分割、图像分类、姿势估计还是旋转框检测 (OBB),YOLO11 都旨在满足各种计算机视觉挑战。

支持的任务和模式

YOLO11 基于 YOLOv8 中引入的通用模型系列,为各种计算机视觉任务提供增强的支持:

模型 文件名 任务 推理 验证 训练 导出
YOLO11 yolo11n.pt yolo11s.pt yolo11m.pt yolo11l.pt yolo11x.pt 检测
YOLO11-seg yolo11n-seg.pt yolo11s-seg.pt yolo11m-seg.pt yolo11l-seg.pt yolo11x-seg.pt 实例分割
YOLO11-姿势估计 yolo11n-pose.pt yolo11s-pose.pt yolo11m-pose.pt yolo11l-pose.pt yolo11x-pose.pt 姿势/关键点
YOLO11-旋转框检测 yolo11n-obb.pt yolo11s-obb.pt yolo11m-obb.pt yolo11l-obb.pt yolo11x-obb.pt 定向检测
YOLO11-cls yolo11n-cls.pt yolo11s-cls.pt yolo11m-cls.pt yolo11l-cls.pt yolo11x-cls.pt 分类

此表概述了 YOLO11 模型变体,展示了它们在特定任务中的适用性以及与推理、验证、训练和导出等操作模式的兼容性。这种灵活性使 YOLO11 适用于计算机视觉中的各种应用,从实时检测到复杂的分割任务。

性能指标

性能

有关使用这些在 COCO 上训练的模型的示例,请参阅检测文档,其中包括 80 个预训练类别。

模型 尺寸
(像素)
mAPval
50-95
速度
CPU ONNX
(毫秒)
速度
T4 TensorRT10
(毫秒)
参数
(M)
FLOPs
(B)
YOLO11n 640 39.5 56.1 ± 0.8 1.5 ± 0.0 2.6 6.5
YOLO11s 640 47.0 90.0 ± 1.2 2.5 ± 0.0 9.4 21.5
YOLO11m 640 51.5 183.2 ± 2.0 4.7 ± 0.1 20.1 68.0
YOLO11l 640 53.4 238.6 ± 1.4 6.2 ± 0.1 25.3 86.9
YOLO11x 640 54.7 462.8 ± 6.7 11.3 ± 0.2 56.9 194.9

有关使用这些在 COCO 上训练的模型的示例,请参阅分割文档,其中包括 80 个预训练类别。

模型 尺寸
(像素)
mAPbox
50-95
mAPmask
50-95
速度
CPU ONNX
(毫秒)
速度
T4 TensorRT10
(毫秒)
参数
(M)
FLOPs
(B)
YOLO11n-seg 640 38.9 32.0 65.9 ± 1.1 1.8 ± 0.0 2.9 10.4
YOLO11s-seg 640 46.6 37.8 117.6 ± 4.9 2.9 ± 0.0 10.1 35.5
YOLO11m-seg 640 51.5 41.5 281.6 ± 1.2 6.3 ± 0.1 22.4 123.3
YOLO11l-seg 640 53.4 42.9 344.2 ± 3.2 7.8 ± 0.2 27.6 142.2
YOLO11x-seg 640 54.7 43.8 664.5 ± 3.2 15.8 ± 0.7 62.1 319.0

请参阅分类文档,其中包含使用这些在ImageNet上训练的模型的使用示例,其中包括 1000 个预训练类别。

模型 尺寸
(像素)
acc
top1
acc
top5
速度
CPU ONNX
(毫秒)
速度
T4 TensorRT10
(毫秒)
参数
(M)
FLOPs
(B) at 224
YOLO11n-cls 224 70.0 89.4 5.0 ± 0.3 1.1 ± 0.0 1.6 0.5
YOLO11s-cls 224 75.4 92.7 7.9 ± 0.2 1.3 ± 0.0 5.5 1.6
YOLO11m-cls 224 77.3 93.9 17.2 ± 0.4 2.0 ± 0.0 10.4 5.0
YOLO11l-cls 224 78.3 94.3 23.2 ± 0.3 2.8 ± 0.0 12.9 6.2
YOLO11x-cls 224 79.5 94.9 41.4 ± 0.9 3.8 ± 0.0 28.4 13.7

请参阅姿势估计文档,获取在COCO上训练的这些模型的使用示例,其中包括 1 个预训练类别“person”。

模型 尺寸
(像素)
mAP姿势估计
50-95
mAP姿势估计
50
速度
CPU ONNX
(毫秒)
速度
T4 TensorRT10
(毫秒)
参数
(M)
FLOPs
(B)
YOLO11n-pose 640 50.0 81.0 52.4 ± 0.5 1.7 ± 0.0 2.9 7.6
YOLO11s-姿势估计 640 58.9 86.3 90.5 ± 0.6 2.6 ± 0.0 9.9 23.2
YOLO11m-姿势估计 640 64.9 89.4 187.3 ± 0.8 4.9 ± 0.1 20.9 71.7
YOLO11l-姿势估计 640 66.1 89.9 247.7 ± 1.1 6.4 ± 0.1 26.2 90.7
YOLO11x-姿势估计 640 69.5 91.1 488.0 ± 13.9 12.1 ± 0.2 58.8 203.3

请参阅定向检测文档,其中包含使用这些在DOTAv1上训练的模型的使用示例,其中包括 15 个预训练类别。

模型 尺寸
(像素)
mAP测试
50
速度
CPU ONNX
(毫秒)
速度
T4 TensorRT10
(毫秒)
参数
(M)
FLOPs
(B)
YOLO11n-旋转框检测 1024 78.4 117.6 ± 0.8 4.4 ± 0.0 2.7 17.2
YOLO11s-旋转框检测 1024 79.5 219.4 ± 4.0 5.1 ± 0.0 9.7 57.5
YOLO11m-旋转框检测 1024 80.9 562.8 ± 2.9 10.1 ± 0.4 20.9 183.5
YOLO11l-旋转框检测 1024 81.0 712.5 ± 5.0 13.5 ± 0.6 26.2 232.0
YOLO11x-旋转框检测 1024 81.3 1408.6 ± 7.7 28.6 ± 1.0 58.8 520.2

使用示例

本节提供简单的 YOLO11 训练和推理示例。有关这些和其他模式的完整文档,请参阅PredictTrainValExport文档页面。

请注意,以下示例适用于 YOLO11 检测 模型的目标检测。有关其他支持的任务,请参阅分割分类旋转框检测姿势估计文档。

示例

PyTorch pretrained *.pt 模型以及配置 *.yaml 文件可以传递给 YOLO() 类在 Python 中创建模型实例:

from ultralytics import YOLO

# Load a COCO-pretrained YOLO11n model
model = YOLO("yolo11n.pt")

# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference with the YOLO11n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")

可以使用 CLI 命令直接运行模型:

# Load a COCO-pretrained YOLO11n model and train it on the COCO8 example dataset for 100 epochs
yolo train model=yolo11n.pt data=coco8.yaml epochs=100 imgsz=640

# Load a COCO-pretrained YOLO11n model and run inference on the 'bus.jpg' image
yolo predict model=yolo11n.pt source=path/to/bus.jpg

引用与致谢

Ultralytics YOLO11 出版物

由于模型的快速发展,Ultralytics 尚未发布 YOLO11 的正式研究论文。我们专注于推进技术并使其更易于使用,而不是生成静态文档。有关 YOLO 架构、功能和用法的最新信息,请参阅我们的 GitHub 存储库文档

如果您在工作中使用 YOLO11 或此存储库中的任何其他软件,请使用以下格式引用它:

@software{yolo11_ultralytics,
  author = {Glenn Jocher and Jing Qiu},
  title = {Ultralytics YOLO11},
  version = {11.0.0},
  year = {2024},
  url = {https://github.com/ultralytics/ultralytics},
  orcid = {0000-0001-5950-6979, 0000-0003-3783-7069},
  license = {AGPL-3.0}
}

请注意,DOI 正在申请中,一旦可用,将添加到引文中。YOLO11 模型在 AGPL-3.0Enterprise 许可下提供。

常见问题

与之前的版本相比,Ultralytics YOLO11 的主要改进是什么?

Ultralytics YOLO11 在其前代产品的基础上进行了多项重大改进。主要改进包括:

  • 增强的特征提取: YOLO11 采用了改进的骨干网络和颈部架构,增强了特征提取能力,从而实现更精确的目标检测。
  • 优化的效率和速度: 改进的架构设计和优化的训练流程提供了更快的处理速度,同时保持了准确性和性能之间的平衡。
  • 以更少的参数实现更高的精度: YOLO11m 在 COCO 数据集上实现了更高的平均精度均值 (mAP),与 YOLOv8m 相比,参数减少了 22%,从而在不影响准确性的前提下提高了计算效率。
  • 跨环境的适应性: YOLO11 可以部署在各种环境中,包括边缘设备、云平台和支持 NVIDIA GPU 的系统。
  • 广泛支持的任务范围: YOLO11 支持各种计算机视觉任务,例如目标检测、实例分割、图像分类、姿势估计和旋转框检测 (OBB)。

如何训练 YOLO11 模型进行目标检测?

可以使用 Python 或 CLI 命令训练用于目标检测的 YOLO11 模型。以下是两种方法的示例:

示例

from ultralytics import YOLO

# Load a COCO-pretrained YOLO11n model
model = YOLO("yolo11n.pt")

# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Load a COCO-pretrained YOLO11n model and train it on the COCO8 example dataset for 100 epochs
yolo train model=yolo11n.pt data=coco8.yaml epochs=100 imgsz=640

有关更详细的说明,请参阅训练文档。

YOLO11 模型可以执行哪些任务?

YOLO11 模型用途广泛,支持各种计算机视觉任务,包括:

  • 目标检测: 识别和定位图像中的目标。
  • 实例分割: 检测目标并描绘其边界。
  • 图像分类 将图像分类为预定义的类别。
  • 姿势估计: 检测和跟踪人体上的关键点。
  • 旋转框检测 (OBB): 检测具有旋转的对象,以获得更高的精度。

有关每个任务的更多信息,请参阅检测实例分割分类姿势估计旋转框检测文档。

YOLO11 如何以更少的参数实现更高的精度?

通过模型设计和优化技术的进步,YOLO11 以更少的参数实现了更高的准确率。 改进的架构允许高效的特征提取和处理,从而在使用比 YOLOv8m 少 22% 的参数的同时,在 COCO 等数据集上实现更高的平均精度 (mAP)。 这使得 YOLO11 在计算上高效,同时又不影响准确性,使其适合部署在资源受限的设备上。

YOLO11 可以部署在边缘设备上吗?

是的,YOLO11 旨在适应各种环境,包括边缘设备。其优化的架构和高效的处理能力使其适合部署在边缘设备、云平台和支持 NVIDIA GPU 的系统上。这种灵活性确保了 YOLO11 可用于各种应用,从移动设备上的实时检测到云环境中的复杂分割任务。有关部署选项的更多详细信息,请参阅导出文档。



📅 创建于 11 个月前 ✏️ 更新于 1 个月前

评论