27 KiB
Ultralytics YOLOv8 是一款前沿、最先进(SOTA)的模型,基于先前 YOLO 版本的成功,引入了新功能和改进,进一步提升性能和灵活性。YOLOv8 设计快速、准确且易于使用,使其成为各种物体检测与跟踪、实例分割、图像分类和姿态估计任务的绝佳选择。
我们希望这里的资源能帮助您充分利用 YOLOv8。请浏览 YOLOv8 文档 了解详细信息,在 GitHub 上提交问题以获得支持,并加入我们的 Discord 社区进行问题和讨论!
如需申请企业许可,请在 Ultralytics Licensing 处填写表格
文档
请参阅下面的快速安装和使用示例,以及 YOLOv8 文档 上有关培训、验证、预测和部署的完整文档。
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 格式
模型
在COCO数据集上预训练的YOLOv8 检测,分割和姿态模型可以在这里找到,以及在ImageNet数据集上预训练的YOLOv8 分类模型。所有的检测,分割和姿态模型都支持追踪模式。
所有模型在首次使用时会自动从最新的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 愿景。现在就开始您的免费之旅!
贡献
我们喜欢您的参与!没有社区的帮助,YOLOv5 和 YOLOv8 将无法实现。请参阅我们的贡献指南以开始使用,并填写我们的调查问卷向我们提供您的使用体验反馈。感谢所有贡献者的支持!🙏
许可证
Ultralytics 提供两种许可证选项以适应各种使用场景:
- AGPL-3.0 许可证:这个OSI 批准的开源许可证非常适合学生和爱好者,可以推动开放的协作和知识分享。请查看LICENSE 文件以了解更多细节。
- 企业许可证:专为商业用途设计,该许可证允许将 Ultralytics 的软件和 AI 模型无缝集成到商业产品和服务中,从而绕过 AGPL-3.0 的开源要求。如果您的场景涉及将我们的解决方案嵌入到商业产品中,请通过 Ultralytics Licensing与我们联系。
联系方式
对于 Ultralytics 的错误报告和功能请求,请访问 GitHub Issues,并加入我们的 Discord 社区进行问题和讨论!