Перейти к содержимому

Использование интерфейса командной строки

Интерфейс командной строки YOLO (CLI) позволяет выполнять простые однострочные команды без необходимости создания среды Python . CLI не требует настройки или Python кода. Ты можешь просто запускать все задания из терминала с помощью команды yolo Командуй.



Смотри: Мастеринг Ultralytics YOLOv8 : CLI

Пример

Ultralytics yolo Команды используют следующий синтаксис:

yolo TASK MODE ARGS

Where   TASK (optional) is one of [detect, segment, classify]
        MODE (required) is one of [train, val, predict, export, track]
        ARGS (optional) are any number of custom 'arg=value' pairs like 'imgsz=320' that override defaults.
Смотри все ARGS в полном объеме Руководство по настройке или с yolo cfg

Обучи модель обнаружения в течение 10 эпох с начальной скоростью обучения 0.01

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

Прогнозируй видео на YouTube с помощью предварительно обученной модели сегментации при размере изображения 320:

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

Вали предварительно обученную модель обнаружения при размере партии 1 и размере изображения 640:

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

Экспортируй модель классификации YOLOv8n в формат ONNX с размером изображения 224 на 128 (не требуется TASK).

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

Выполняй специальные команды, чтобы посмотреть версию, просмотреть настройки, запустить проверки и многое другое:

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

Где:

  • TASK (необязательно) - это одно из [detect, segment, classify]. Если он не передан явно, YOLOv8 попытается угадать. TASK от типа модели.
  • MODE (обязательно) является одним из [train, val, predict, export, track]
  • ARGS (необязательно) - это любое количество пользовательских arg=value Такие пары, как imgsz=320 которые отменяют настройки по умолчанию. Полный список доступных ARGS см. Конфигурация страница и defaults.yaml GitHub источник.

Внимание

Аргументы должны быть переданы как arg=val пары, разделенные знаком равенства = знак и разделенные пробелами между парами. Не используйте -- Префиксы аргументов или запятые , между аргументами.

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

Поезд

Обучи YOLOv8n на наборе данных COCO8 в течение 100 эпох при размере изображения 640. Полный список доступных аргументов смотри на странице конфигурации.

Пример

Запусти обучение YOLOv8n на COCO8 на 100 эпох при размере изображения 640.

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

Возобнови прерванную тренировку.

yolo detect train resume model=last.pt

Вэл

Проверь точность обученной модели YOLOv8n на наборе данных COCO8. Не нужно передавать никаких аргументов в качестве model сохраняет свою подготовку data и аргументы в качестве атрибутов модели.

Пример

Проверь официальную модель YOLOv8n .

yolo detect val model=yolov8n.pt

Проверь модель, обученную на заказ.

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

Предсказывай

Используй обученную модель YOLOv8n для выполнения прогнозов на изображениях.

Пример

Предсказывай с помощью официальной модели YOLOv8n .

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

Предсказывай с помощью пользовательской модели.

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

Экспорт

Экспортируй модель YOLOv8n в другой формат, например ONNX, CoreML и т. д.

Пример

Экспортируй официальную модель YOLOv8n в формат ONNX .

yolo export model=yolov8n.pt format=onnx

Экспортируй обученную модель в формат ONNX .

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

Доступные форматы экспорта YOLOv8 приведены в таблице ниже. Ты можешь экспортировать в любой формат, используя format аргумент, то есть format='onnx' или format='engine'.

Формат format Аргумент Модель Метаданные Аргументы
PyTorch - yolov8n.pt -
TorchScript torchscript yolov8n.torchscript imgsz, optimize, batch
ONNX onnx yolov8n.onnx imgsz, half, dynamic, simplify, opset, batch
OpenVINO openvino yolov8n_openvino_model/ imgsz, half, int8, batch
TensorRT engine yolov8n.engine imgsz, half, dynamic, simplify, workspace, int8, batch
CoreML coreml yolov8n.mlpackage imgsz, half, int8, nms, batch
TF SavedModel saved_model yolov8n_saved_model/ imgsz, keras, int8, batch
TF GraphDef pb yolov8n.pb imgsz, batch
TF Lite tflite yolov8n.tflite imgsz, half, int8, batch
TF Край TPU edgetpu yolov8n_edgetpu.tflite imgsz
TF.js tfjs yolov8n_web_model/ imgsz, half, int8, batch
PaddlePaddle paddle yolov8n_paddle_model/ imgsz, batch
NCNN ncnn yolov8n_ncnn_model/ imgsz, half, batch

Смотреть полностью export подробности в Экспорт Страница.

Переопределение стандартных аргументов

Аргументы по умолчанию можно переопределить, просто передав их в качестве аргументов в CLI в arg=value Пары.

Обучи модель обнаружения для 10 epochs с learning_rate из 0.01

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

Прогнозируй видео на YouTube с помощью предварительно обученной модели сегментации при размере изображения 320:

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

Проверь предварительно обученную модель обнаружения при размере партии 1 и размере изображения 640:

yolo detect val model=yolov8n.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


Created 2023-11-12, Updated 2024-06-10
Authors: glenn-jocher (18), Burhan-Q (3), RizwanMunawar (1), AyushExel (1), Laughing-q (1), shuizhuyuanluo@126.com (1)

Комментарии