命令行界面使用
YOLO命令行界面(CLI)允许通过简单的单行命令执行操作,无需Python环境。CLI不需要自定义或Python代码。您只需在终端中使用yolo
命令即可运行所有任务。
观看: 掌握Ultralytics YOLO: CLI
Example
Ultralytics yolo
命令使用以下语法:
yolo TASK MODE ARGS
其中 TASK (可选) 是 [detect, segment, classify, pose, obb] 之一
MODE (必需) 是 [train, val, predict, export, track, benchmark] 之一
ARGS (可选) 是任意数量的自定义 'arg=value' 对,如 'imgsz=320',用于覆盖默认值。
yolo cfg
使用初始学习率为0.01,训练一个检测模型10个epoch
使用预训练的分割模型,在图像尺寸为320的情况下预测YouTube视频:
将YOLO11n分类模型导出为ONNX格式,图像尺寸为224x128(无需TASK)
其中:
TASK
(可选) 是[detect, segment, classify, pose, obb]
之一。如果不明确传递,YOLO11将尝试根据模型类型猜测TASK
。MODE
(必需) 是[train, val, predict, export, track, benchmark]
之一ARGS
(可选) 是任意数量的自定义arg=value
对,如imgsz=320
,用于覆盖默认值。有关可用ARGS
的完整列表,请参阅配置页面和defaults.yaml
Warning
参数必须以 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数据集上训练YOLO11n 100个epoch。有关可用参数的完整列表,请参阅配置页面。
Example
验证
在COCO8数据集上验证训练好的YOLO11n模型的准确性。无需参数,因为model
保留了其训练data
和参数作为模型属性。
Example
预测
使用训练好的YOLO11n模型对图像进行预测。
Example
导出
导出YOLO11n模型到不同格式如ONNX、CoreML等。
Example
可用的YOLO11导出格式如下表所示。您可以使用format
参数导出到任何格式,例如format='onnx'
或format='engine'
。
格式 | format 参数 |
模型 | 元数据 | 参数 |
---|---|---|---|---|
PyTorch | - | yolo11n.pt |
✅ | - |
TorchScript | torchscript |
yolo11n.torchscript |
✅ | imgsz , optimize , batch |
ONNX | onnx |
yolo11n.onnx |
✅ | imgsz , half , dynamic , simplify , opset , batch |
OpenVINO | openvino |
yolo11n_openvino_model/ |
✅ | imgsz , half , int8 , batch |
TensorRT | engine |
yolo11n.engine |
✅ | imgsz , half , dynamic , simplify , workspace , int8 , batch |
CoreML | coreml |
yolo11n.mlpackage |
✅ | imgsz , half , int8 , nms , batch |
TF SavedModel | saved_model |
yolo11n_saved_model/ |
✅ | imgsz , keras , int8 , batch |
TF GraphDef | pb |
yolo11n.pb |
❌ | imgsz , batch |
TF Lite | tflite |
yolo11n.tflite |
✅ | imgsz , half , int8 , batch |
TF Edge TPU | edgetpu |
yolo11n_edgetpu.tflite |
✅ | imgsz |
TF.js | tfjs |
yolo11n_web_model/ |
✅ | imgsz , half , int8 , batch |
PaddlePaddle | paddle |
yolo11n_paddle_model/ |
✅ | imgsz , batch |
NCNN | ncnn |
yolo11n_ncnn_model/ |
✅ | imgsz , half , batch |
在Export页面查看完整的export
详情。
覆盖默认参数
通过在CLI中以arg=value
对的形式传递参数,可以覆盖默认参数。
Tip
使用预训练的分割模型预测YouTube视频,图像尺寸为320:
覆盖默认配置文件
您可以通过传递带有cfg
参数的新文件(例如cfg=custom.yaml
)来完全覆盖default.yaml
配置文件。
首先,使用yolo copy-cfg
命令在当前工作目录中创建default.yaml
的副本。
这将创建default_copy.yaml
,然后您可以将其作为cfg=default_copy.yaml
传递,并附带任何额外的参数,例如本例中的imgsz=320
:
常见问题
如何使用Ultralytics YOLO11命令行界面(CLI)进行模型训练?
要使用CLI训练YOLO11模型,您可以在终端中执行一个简单的单行命令。例如,要训练一个检测模型进行10个epoch,学习率为0.01,您可以运行:
此命令使用train
模式并带有特定参数。请参阅配置指南中的可用参数完整列表。
我可以使用Ultralytics YOLO11 CLI执行哪些任务?
Ultralytics YOLO11 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>
。
每个任务都可以使用各种参数进行自定义。有关详细语法和示例,请参阅训练、预测和导出等相应部分。
如何使用CLI验证训练好的YOLO11模型的准确性?
要验证YOLO11模型的准确性,请使用val
模式。例如,要验证一个预训练的检测模型,批量大小为1,图像尺寸为640,请运行:
此命令在指定数据集上评估模型并提供性能指标。有关更多详情,请参阅验证部分。
我可以使用CLI将YOLO11模型导出到哪些格式?
YOLO11模型可以导出为多种格式,如ONNX、CoreML、TensorRT等。例如,要将模型导出为ONNX格式,请运行:
有关完整详情,请访问导出页面。
如何自定义YOLO11 CLI命令以覆盖默认参数?
要在YOLO11 CLI命令中覆盖默认参数,请以arg=value
对的形式传递它们。例如,要使用自定义参数训练模型,请使用:
有关可用参数及其描述的完整列表,请参阅配置指南。确保参数格式正确,如覆盖默认参数部分所示。