命令行界面
Ultralytics 命令行界面CLI)提供了一种直接使用Ultralytics YOLO 模型的方法,无需Python 环境。CLI 支持直接从终端运行各种任务,使用 yolo
命令,无需定制或编写Python 代码。
观看: 掌握Ultralytics YOLO :CLI
示例
Ultralytics yolo
命令使用以下语法:
在哪里?
- TASK
(可选)是[检测、分割、分类、姿势、OBB]之一
- MODE
(必填)是 [train, val, predict, export, track, benchmark] 中的一个。
- ARGS
(可选)是任意数量的自定义 arg=value
如 imgsz=320
覆盖默认值。
查看所有 ARGS 全文 配置指南 或与 yolo cfg
.
在图像大小为 320 的 YouTube 视频上使用预训练的分割模型进行预测:
验证预先训练的检测模型,批量大小为 1,图像大小为 640:
将YOLO 分类模型导出为ONNX 格式,图像大小为 224x128(无需 TASK):
在哪里?
TASK
(可选)是[detect, segment, classify, pose, obb]
.如果没有明确传递,YOLO 将尝试推断出TASK
来自模型类型。MODE
(必填)是[train, val, predict, export, track, benchmark]
ARGS
(可选)是任意数量的自定义arg=value
如imgsz=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 数据集上训练模型的结果。无需参数,因为 model
保留其培训 data
和参数作为模型属性。
示例
预测
使用训练有素的模型对图像进行预测。
示例
出口
将模型导出为不同的格式,如ONNX 或CoreML。
示例
可用的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
成双成对。
提示
在图像大小为 320 的 YouTube 视频上使用预训练的分割模型进行预测:
覆盖默认配置文件
覆盖 default.yaml
的配置文件,通过传递一个带有 cfg
参数,例如 cfg=custom.yaml
.
为此,首先创建一个 default.yaml
在当前工作目录中使用 yolo copy-cfg
命令,创建一个 default_copy.yaml
锉刀
然后,您可以将该文件作为 cfg=default_copy.yaml
以及其他参数,如 imgsz=320
在此示例中:
解决方案命令
Ultralytics 通过CLI 为常见的计算机视觉应用提供即用型解决方案。这些解决方案简化了复杂任务的执行,如对象计数、运动监控和队列管理。
示例
对视频或实时流中的物体进行计数:
使用姿势模型监控锻炼练习:
对指定队列或区域中的对象进行计数:
使用 Streamlit 在网络浏览器中执行对象检测、实例分割或姿态估计:
有关Ultralytics 解决方案的更多信息,请访问解决方案页面。
常见问题
如何使用Ultralytics YOLO 命令行界面CLI)进行模型训练?
要使用CLI 训练模型,请在终端执行单行命令。例如,要训练一个学习率为0.01、历时 10 次的检测模型,请运行
该命令使用 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,运行:
该命令在指定数据集上评估模型,并提供mAP、精确度和召回率等性能指标。有关详细信息,请参阅Val部分。
使用CLI 可以将YOLO 模型导出成什么格式?
您可以将YOLO 模型导出为各种格式,包括ONNX、TensorRT、CoreML、TensorFlow 等。例如,要将模型导出为ONNX 格式,请运行
导出命令支持多种选项,可针对特定部署环境优化模型。有关所有可用导出格式及其特定参数的完整详细信息,请访问导出页面。
如何使用Ultralytics CLI 中的预建解决方案?
Ultralytics 通过以下方式提供即用型解决方案 solutions
命令。例如,对视频中的物体进行计数:
这些解决方案只需最低限度的配置,即可为常见的计算机视觉任务提供即时功能。要查看所有可用的解决方案,请运行 yolo solutions help
.每种解决方案都有特定的参数,可根据您的需求进行定制。