命令行界面
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=value
如 imgsz=320
覆盖默认值。
查看所有 ARGS 全文 配置指南 或与 yolo cfg
.
在图像大小为 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=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 上对 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 , half , optimize , nms , batch , device |
ONNX | onnx |
yolo11n.onnx |
✅ | imgsz , half , dynamic , simplify , opset , nms , batch , device |
OpenVINO | openvino |
yolo11n_openvino_model/ |
✅ | imgsz , half , dynamic , int8 , nms , batch , data , fraction , device |
TensorRT | engine |
yolo11n.engine |
✅ | imgsz , half , dynamic , simplify , workspace , int8 , nms , batch , data , fraction , device |
CoreML | coreml |
yolo11n.mlpackage |
✅ | imgsz , half , int8 , nms , batch , device |
TF SavedModel | saved_model |
yolo11n_saved_model/ |
✅ | imgsz , keras , int8 , nms , batch , device |
TF GraphDef | pb |
yolo11n.pb |
❌ | imgsz , batch , device |
TF 轻型 | tflite |
yolo11n.tflite |
✅ | imgsz , half , int8 , nms , batch , data , fraction , device |
TF 边缘TPU | edgetpu |
yolo11n_edgetpu.tflite |
✅ | imgsz , device |
TF.js | tfjs |
yolo11n_web_model/ |
✅ | imgsz , half , int8 , nms , batch , device |
PaddlePaddle | paddle |
yolo11n_paddle_model/ |
✅ | imgsz , batch , device |
MNN | mnn |
yolo11n.mnn |
✅ | imgsz , batch , int8 , half , device |
NCNN | ncnn |
yolo11n_ncnn_model/ |
✅ | imgsz , half , batch , device |
IMX500 | imx |
yolov8n_imx_model/ |
✅ | imgsz , int8 , data , fraction , device |
RKNN | rknn |
yolo11n_rknn_model/ |
✅ | imgsz , batch , name , device |
查看全文 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
.每种解决方案都有特定的参数,可根据您的需求进行定制。