You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

27 KiB

English | 简体中文

Ultralytics CI Ultralytics Code Coverage YOLOv8 Citation Docker Pulls
Run on Gradient Open In Colab Open In Kaggle

Ultralytics YOLOv8 是一款前沿、最先进(SOTA)的模型,基于先前 YOLO 版本的成功,引入了新功能和改进,进一步提升性能和灵活性。YOLOv8 设计快速、准确且易于使用,使其成为各种物体检测与跟踪、实例分割、图像分类和姿态估计任务的绝佳选择。

我们希望这里的资源能帮助您充分利用 YOLOv8。请浏览 YOLOv8 文档 了解详细信息,在 GitHub 上提交问题以获得支持,并加入我们的 Discord 社区进行问题和讨论!

如需申请企业许可,请在 Ultralytics Licensing 处填写表格

Ultralytics GitHub Ultralytics LinkedIn Ultralytics Twitter Ultralytics YouTube Ultralytics TikTok Ultralytics Instagram Ultralytics Discord

文档

请参阅下面的快速安装和使用示例,以及 YOLOv8 文档 上有关培训、验证、预测和部署的完整文档。

安装

使用Pip在一个Python>=3.8环境中安装ultralytics包,此环境还需包含PyTorch>=1.8。这也会安装所有必要的依赖项

PyPI version Downloads

pip install ultralytics

如需使用包括CondaDocker和Git在内的其他安装方法,请参考快速入门指南

Usage

CLI

YOLOv8 可以在命令行界面(CLI)中直接使用,只需输入 yolo 命令:

yolo predict model=yolov8n.pt source='https://ultralytics.com/images/bus.jpg'

yolo 可用于各种任务和模式,并接受其他参数,例如 imgsz=640。查看 YOLOv8 CLI 文档以获取示例。

Python

YOLOv8 也可以在 Python 环境中直接使用,并接受与上述 CLI 示例中相同的参数

from ultralytics import YOLO

# 加载模型
model = YOLO("yolov8n.yaml")  # 从头开始构建新模型
model = YOLO("yolov8n.pt")  # 加载预训练模型(建议用于训练)

# 使用模型
model.train(data="coco128.yaml", epochs=3)  # 训练模型
metrics = model.val()  # 在验证集上评估模型性能
results = model("https://ultralytics.com/images/bus.jpg")  # 对图像进行预测
success = model.export(format="onnx")  # 将模型导出为 ONNX 格式

模型 会自动从最新的 Ultralytics 发布版本中下载。查看 YOLOv8 Python 文档以获取更多示例。

模型

COCO数据集上预训练的YOLOv8 检测分割姿态模型可以在这里找到,以及在ImageNet数据集上预训练的YOLOv8 分类模型。所有的检测,分割和姿态模型都支持追踪模式。

Ultralytics YOLO supported tasks

所有模型在首次使用时会自动从最新的Ultralytics 发布版本下载。

检测 (COCO)

查看检测文档以获取这些在COCO上训练的模型的使用示例,其中包括80个预训练类别。

模型 尺寸
(像素)
mAPval
50-95
速度
CPU ONNX
(ms)
速度
A100 TensorRT
(ms)
参数
(M)
FLOPs
(B)
YOLOv8n 640 37.3 80.4 0.99 3.2 8.7
YOLOv8s 640 44.9 128.4 1.20 11.2 28.6
YOLOv8m 640 50.2 234.7 1.83 25.9 78.9
YOLOv8l 640 52.9 375.2 2.39 43.7 165.2
YOLOv8x 640 53.9 479.1 3.53 68.2 257.8
  • mAPval 值是基于单模型单尺度在 COCO val2017 数据集上的结果。
    通过 yolo val detect data=coco.yaml device=0 复现
  • 速度 是使用 Amazon EC2 P4d 实例对 COCO val 图像进行平均计算的。
    通过 yolo val detect data=coco.yaml batch=1 device=0|cpu 复现
检测(Open Image V7)

查看检测文档以获取这些在Open Image V7上训练的模型的使用示例,其中包括600个预训练类别。

模型 尺寸
(像素)
mAP验证
50-95
速度
CPU ONNX
(毫秒)
速度
A100 TensorRT
(毫秒)
参数
(M)
浮点运算
(B)
YOLOv8n 640 18.4 142.4 1.21 3.5 10.5
YOLOv8s 640 27.7 183.1 1.40 11.4 29.7
YOLOv8m 640 33.6 408.5 2.26 26.2 80.6
YOLOv8l 640 34.9 596.9 2.43 44.1 167.4
YOLOv8x 640 36.3 860.6 3.56 68.7 260.6
  • mAP验证 值适用于在Open Image V7数据集上的单模型单尺度。
    通过 yolo val detect data=open-images-v7.yaml device=0 以复现。
  • 速度 在使用Amazon EC2 P4d实例对COCO验证图像进行平均测算。
    通过 yolo val detect data=open-images-v7.yaml batch=1 device=0|cpu 以复现。
分割 (COCO)

查看分割文档以获取这些在COCO-Seg上训练的模型的使用示例,其中包括80个预训练类别。

模型 尺寸
(像素)
mAPbox
50-95
mAPmask
50-95
速度
CPU ONNX
(ms)
速度
A100 TensorRT
(ms)
参数
(M)
FLOPs
(B)
YOLOv8n-seg 640 36.7 30.5 96.1 1.21 3.4 12.6
YOLOv8s-seg 640 44.6 36.8 155.7 1.47 11.8 42.6
YOLOv8m-seg 640 49.9 40.8 317.0 2.18 27.3 110.2
YOLOv8l-seg 640 52.3 42.6 572.4 2.79 46.0 220.5
YOLOv8x-seg 640 53.4 43.4 712.1 4.02 71.8 344.1
  • mAPval 值是基于单模型单尺度在 COCO val2017 数据集上的结果。
    通过 yolo val segment data=coco-seg.yaml device=0 复现
  • 速度 是使用 Amazon EC2 P4d 实例对 COCO val 图像进行平均计算的。
    通过 yolo val segment data=coco-seg.yaml batch=1 device=0|cpu 复现
姿态 (COCO)

查看姿态文档以获取这些在COCO-Pose上训练的模型的使用示例,其中包括1个预训练类别,即人。

模型 尺寸
(像素)
mAPpose
50-95
mAPpose
50
速度
CPU ONNX
(ms)
速度
A100 TensorRT
(ms)
参数
(M)
FLOPs
(B)
YOLOv8n-pose 640 50.4 80.1 131.8 1.18 3.3 9.2
YOLOv8s-pose 640 60.0 86.2 233.2 1.42 11.6 30.2
YOLOv8m-pose 640 65.0 88.8 456.3 2.00 26.4 81.0
YOLOv8l-pose 640 67.6 90.0 784.5 2.59 44.4 168.6
YOLOv8x-pose 640 69.2 90.2 1607.1 3.73 69.4 263.2
YOLOv8x-pose-p6 1280 71.6 91.2 4088.7 10.04 99.1 1066.4
  • mAPval 值是基于单模型单尺度在 COCO Keypoints val2017 数据集上的结果。
    通过 yolo val pose data=coco-pose.yaml device=0 复现
  • 速度 是使用 Amazon EC2 P4d 实例对 COCO val 图像进行平均计算的。
    通过 yolo val pose data=coco-pose.yaml batch=1 device=0|cpu 复现
分类 (ImageNet)

查看分类文档以获取这些在ImageNet上训练的模型的使用示例,其中包括1000个预训练类别。

模型 尺寸
(像素)
acc
top1
acc
top5
速度
CPU ONNX
(ms)
速度
A100 TensorRT
(ms)
参数
(M)
FLOPs
(B) at 640
YOLOv8n-cls 224 66.6 87.0 12.9 0.31 2.7 4.3
YOLOv8s-cls 224 72.3 91.1 23.4 0.35 6.4 13.5
YOLOv8m-cls 224 76.4 93.2 85.4 0.62 17.0 42.7
YOLOv8l-cls 224 78.0 94.1 163.0 0.87 37.5 99.7
YOLOv8x-cls 224 78.4 94.3 232.0 1.01 57.4 154.8
  • acc 值是模型在 ImageNet 数据集验证集上的准确率。
    通过 yolo val classify data=path/to/ImageNet device=0 复现
  • 速度 是使用 Amazon EC2 P4d 实例对 ImageNet val 图像进行平均计算的。
    通过 yolo val classify data=path/to/ImageNet batch=1 device=0|cpu 复现

集成

我们与领先的AI平台的关键整合扩展了Ultralytics产品的功能,增强了数据集标签化、训练、可视化和模型管理等任务。探索Ultralytics如何与Roboflow、ClearML、Comet、Neural Magic以及OpenVINO合作,优化您的AI工作流程。




Roboflow ClearML NEW Comet NEW Neural Magic NEW
使用 Roboflow 将您的自定义数据集直接标记并导出至 YOLOv8 进行训练 使用 ClearML(开源!)自动跟踪、可视化,甚至远程训练 YOLOv8 免费且永久,Comet 让您保存 YOLOv8 模型、恢复训练,并以交互式方式查看和调试预测 使用 Neural Magic DeepSparse 使 YOLOv8 推理速度提高多达 6 倍

Ultralytics HUB

体验 Ultralytics HUB 带来的无缝 AI,这是一个一体化解决方案,用于数据可视化、YOLOv5 和即将推出的 YOLOv8 🚀 模型训练和部署,无需任何编码。通过我们先进的平台和用户友好的 Ultralytics 应用程序,轻松将图像转化为可操作的见解,并实现您的 AI 愿景。现在就开始您的免费之旅!

Ultralytics HUB preview image

贡献

我们喜欢您的参与!没有社区的帮助,YOLOv5 和 YOLOv8 将无法实现。请参阅我们的贡献指南以开始使用,并填写我们的调查问卷向我们提供您的使用体验反馈。感谢所有贡献者的支持!🙏

许可证

Ultralytics 提供两种许可证选项以适应各种使用场景:

  • AGPL-3.0 许可证:这个OSI 批准的开源许可证非常适合学生和爱好者,可以推动开放的协作和知识分享。请查看LICENSE 文件以了解更多细节。
  • 企业许可证:专为商业用途设计,该许可证允许将 Ultralytics 的软件和 AI 模型无缝集成到商业产品和服务中,从而绕过 AGPL-3.0 的开源要求。如果您的场景涉及将我们的解决方案嵌入到商业产品中,请通过 Ultralytics Licensing与我们联系。

联系方式

对于 Ultralytics 的错误报告和功能请求,请访问 GitHub Issues,并加入我们的 Discord 社区进行问题和讨论!


Ultralytics GitHub Ultralytics LinkedIn Ultralytics Twitter Ultralytics YouTube Ultralytics TikTok Ultralytics Instagram Ultralytics Discord