跳至内容

命令行界面

Ultralytics 命令行界面CLI)提供了一种直接使用Ultralytics YOLO 模型的方法,无需Python 环境。CLI 支持直接从终端运行各种任务,使用 yolo 命令,无需定制或编写Python 代码。



观看: 掌握Ultralytics YOLO :CLI

示例

Ultralytics yolo 命令使用以下语法:

yolo TASK MODE ARGS

在哪里? - TASK (可选)是[检测、分割、分类、姿势、OBB]之一 - MODE (必填)是 [train, val, predict, export, track, benchmark] 中的一个。 - ARGS (可选)是任意数量的自定义 arg=valueimgsz=320 覆盖默认值。

查看所有 ARGS 全文 配置指南 或与 yolo cfg.

训练检测模型 10 个历元,初始学习率为0.01:

yolo train data=coco8.yaml model=yolo11n.pt epochs=10 lr0=0.01

在图像大小为 320 的 YouTube 视频上使用预训练的分割模型进行预测:

yolo predict model=yolo11n-seg.pt source='https://youtu.be/LNwODJXcvt4' imgsz=320

验证预先训练的检测模型,批量大小为 1,图像大小为 640:

yolo val model=yolo11n.pt data=coco8.yaml batch=1 imgsz=640

将YOLO 分类模型导出为ONNX 格式,图像大小为 224x128(无需 TASK):

yolo export model=yolo11n-cls.pt format=onnx imgsz=224,128

运行特殊命令可查看版本、设置、运行检查等:

yolo help
yolo checks
yolo version
yolo settings
yolo copy-cfg
yolo cfg

在哪里?

  • TASK (可选)是 [detect, segment, classify, pose, obb].如果没有明确传递,YOLO 将尝试推断出 TASK 来自模型类型。
  • MODE (必填)是 [train, val, predict, export, track, benchmark]
  • ARGS (可选)是任意数量的自定义 arg=valueimgsz=320 可覆盖默认值。有关可用 ARGS配置 页和 defaults.yaml.

警告

参数必须以 arg=val 对,之间用等号隔开 = 符号,每对之间用空格分隔。请勿使用 -- 参数 , 参数之间。

  • yolo predict model=yolo11n.pt imgsz=640 conf=0.25   ✅
  • yolo predict model yolo11n.pt imgsz 640 conf 0.25   ❌
  • yolo predict --model yolo11n.pt --imgsz 640 --conf 0.25   ❌

火车

在图像大小为 640 的 COCO8 数据集上训练YOLO 100 个历元。有关可用参数的完整列表,请参阅配置页面。

示例

开始在 COCO8 上对 YOLO11n 进行 100 次训练,图像大小为 640:

yolo detect train data=coco8.yaml model=yolo11n.pt epochs=100 imgsz=640

恢复中断的培训课程:

yolo detect train resume model=last.pt

瓦尔

验证 精确度 在 COCO8 数据集上训练模型的结果。无需参数,因为 model 保留其培训 data 和参数作为模型属性。

示例

验证官方 YOLO11n 型号:

yolo detect val model=yolo11n.pt

验证自定义训练的模型

yolo detect val model=path/to/best.pt

预测

使用训练有素的模型对图像进行预测。

示例

使用官方 YOLO11n 模型进行预测:

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

使用自定义模型进行预测:

yolo detect predict model=path/to/best.pt source='https://ultralytics.com/images/bus.jpg'

出口

将模型导出为不同的格式,如ONNX 或CoreML。

示例

将 YOLO11n 官方模型导出为ONNX 格式:

yolo export model=yolo11n.pt format=onnx

将自定义训练的模型导出为ONNX 格式:

yolo export model=path/to/best.pt format=onnx

可用的Ultralytics 导出格式如下表所示。您可以使用 format 参数,即 format='onnx'format='engine'.

格式 format 论据 模型 元数据 论据
PyTorch - yolo11n.pt -
TorchScript torchscript yolo11n.torchscript imgsz, optimize, nms, batch
ONNX onnx yolo11n.onnx imgsz, half, dynamic, simplify, opset, nms, batch
OpenVINO openvino yolo11n_openvino_model/ imgsz, half, dynamic, int8, nms, batch, data
TensorRT engine yolo11n.engine imgsz, half, dynamic, simplify, workspace, int8, nms, batch, data
CoreML coreml yolo11n.mlpackage imgsz, half, int8, nms, batch
TF SavedModel saved_model yolo11n_saved_model/ imgsz, keras, int8, nms, batch
TF GraphDef pb yolo11n.pb imgsz, batch
TF 轻型 tflite yolo11n.tflite imgsz, half, int8, nms, batch, data
TF 边缘TPU edgetpu yolo11n_edgetpu.tflite imgsz
TF.js tfjs yolo11n_web_model/ imgsz, half, int8, nms, batch
PaddlePaddle paddle yolo11n_paddle_model/ imgsz, batch
MNN mnn yolo11n.mnn imgsz, batch, int8, half
NCNN ncnn yolo11n_ncnn_model/ imgsz, half, batch
IMX500 imx yolov8n_imx_model/ imgsz, int8, data
RKNN rknn yolo11n_rknn_model/ imgsz, batch, name

查看全文 export 的详细信息 出口 page.

覆盖默认参数

通过在CLI 中以 arg=value 成双成对。

提示

以 0.01 的学习率训练检测模型 10 个历元:

yolo detect train data=coco8.yaml model=yolo11n.pt epochs=10 lr0=0.01

在图像大小为 320 的 YouTube 视频上使用预训练的分割模型进行预测:

yolo segment predict model=yolo11n-seg.pt source='https://youtu.be/LNwODJXcvt4' imgsz=320

验证预先训练的检测模型,批量大小为 1,图像大小为 640:

yolo detect val model=yolo11n.pt data=coco8.yaml batch=1 imgsz=640

覆盖默认配置文件

覆盖 default.yaml 的配置文件,通过传递一个带有 cfg 参数,例如 cfg=custom.yaml.

为此,首先创建一个 default.yaml 在当前工作目录中使用 yolo copy-cfg 命令,创建一个 default_copy.yaml 锉刀

然后,您可以将该文件作为 cfg=default_copy.yaml 以及其他参数,如 imgsz=320 在此示例中:

示例

yolo copy-cfg
yolo cfg=default_copy.yaml imgsz=320

解决方案命令

Ultralytics 通过CLI 为常见的计算机视觉应用提供即用型解决方案。这些解决方案简化了复杂任务的执行,如对象计数、运动监控和队列管理。

示例

对视频或实时流中的物体进行计数:

yolo solutions count show=True
yolo solutions count source="path/to/video.mp4" # specify video file path

使用姿势模型监控锻炼练习:

yolo solutions workout show=True
yolo solutions workout source="path/to/video.mp4" # specify video file path

# Use keypoints for ab-workouts
yolo solutions workout kpts=[5, 11, 13] # left side
yolo solutions workout kpts=[6, 12, 14] # right side

对指定队列或区域中的对象进行计数:

yolo solutions queue show=True
yolo solutions queue source="path/to/video.mp4"                                # specify video file path
yolo solutions queue region="[(20, 400), (1080, 400), (1080, 360), (20, 360)]" # configure queue coordinates

使用 Streamlit 在网络浏览器中执行对象检测、实例分割或姿态估计:

yolo solutions inference
yolo solutions inference model="path/to/model.pt" # use custom model

查看可用解决方案及其选项:

yolo solutions help

有关Ultralytics 解决方案的更多信息,请访问解决方案页面。

常见问题

如何使用Ultralytics YOLO 命令行界面CLI)进行模型训练?

要使用CLI 训练模型,请在终端执行单行命令。例如,要训练一个学习率为0.01、历时 10 次的检测模型,请运行

yolo train data=coco8.yaml model=yolo11n.pt epochs=10 lr0=0.01

该命令使用 train 模式的参数。有关可用参数的完整列表,请参阅 配置指南.

使用Ultralytics YOLO CLI 可以执行哪些任务?

Ultralytics YOLO CLI 支持各种任务,包括检测分割分类姿态估计定向边界框检测。您还可以执行以下操作

  • 训练模型:运行 yolo train data=<data.yaml> model=<model.pt> epochs=<num>.
  • 运行预测:使用 yolo predict model=<model.pt> source=<data_source> imgsz=<image_size>.
  • 导出模型:执行 yolo export model=<model.pt> format=<export_format>.
  • 使用解决方案:运行 yolo solutions <solution_name> 用于现成的应用程序。

使用各种参数自定义每个任务。有关详细语法和示例,请参阅相应章节,如训练预测导出

如何使用CLI 验证经过训练的YOLO 模型的准确性?

为了验证模型的 精确度使用 val 模式。例如,要验证预训练的检测模型,可以使用 批量大小 为 1,图像大小为 640,运行:

yolo val model=yolo11n.pt data=coco8.yaml batch=1 imgsz=640

该命令在指定数据集上评估模型,并提供mAP精确度召回率等性能指标。有关详细信息,请参阅Val部分。

使用CLI 可以将YOLO 模型导出成什么格式?

您可以将YOLO 模型导出为各种格式,包括ONNX、TensorRT、CoreML、TensorFlow 等。例如,要将模型导出为ONNX 格式,请运行

yolo export model=yolo11n.pt format=onnx

导出命令支持多种选项,可针对特定部署环境优化模型。有关所有可用导出格式及其特定参数的完整详细信息,请访问导出页面。

如何使用Ultralytics CLI 中的预建解决方案?

Ultralytics 通过以下方式提供即用型解决方案 solutions 命令。例如,对视频中的物体进行计数:

yolo solutions count source="path/to/video.mp4"

这些解决方案只需最低限度的配置,即可为常见的计算机视觉任务提供即时功能。要查看所有可用的解决方案,请运行 yolo solutions help.每种解决方案都有特定的参数,可根据您的需求进行定制。

📅创建于 1 年前 ✏️已更新 5 天前

评论