Интерфейс командной строки

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



Watch: Mastering Ultralytics YOLO: CLI
Пример

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

yolo TASK MODE ARGS

Где:

  • TASK (опционально) — это одно из значений [detect, segment, classify, pose, obb]
  • MODE (обязательно) — это одно из значений [train, val, predict, export, track, benchmark]
  • ARGS (опционально) — это любое количество пользовательских пар arg=value, например imgsz=320, которые переопределяют значения по умолчанию.

Смотри все ARGS в полном Руководстве по конфигурации или с помощью команды yolo cfg.

Где:

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

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

  • yolo predict model=yolo26n.pt imgsz=640 conf=0.25
  • yolo predict model yolo26n.pt imgsz 640 conf 0.25
  • yolo predict --model yolo26n.pt --imgsz 640 --conf 0.25

Обучение

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

Пример

Начни обучение YOLO26n на COCO8 в течение 100 эпох при размере изображения 640:

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

Валидация

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

Пример

Проведи валидацию официальной модели YOLO26n:

yolo detect val model=yolo26n.pt

Прогнозирование

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

Пример

Предсказание с официальной моделью YOLO26n:

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

Экспорт

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

Пример

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

yolo export model=yolo26n.pt format=onnx

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

ФорматАргумент formatМодельМетаданныеАргументы
PyTorch-yolo26n.pt-
TorchScripttorchscriptyolo26n.torchscriptimgsz, half, dynamic, optimize, nms, batch, device
ONNXonnxyolo26n.onnximgsz, half, dynamic, simplify, opset, nms, batch, device
OpenVINOopenvinoyolo26n_openvino_model/imgsz, half, dynamic, int8, nms, batch, data, fraction, device
TensorRTengineyolo26n.engineimgsz, half, dynamic, simplify, workspace, int8, nms, batch, data, fraction, device
CoreMLcoremlyolo26n.mlpackageimgsz, dynamic, half, int8, nms, batch, device
TF SavedModelsaved_modelyolo26n_saved_model/imgsz, keras, int8, nms, batch, data, fraction, device
TF GraphDefpbyolo26n.pbimgsz, batch, device
TF Litetfliteyolo26n.tfliteimgsz, half, int8, nms, batch, data, fraction, device
TF Edge TPUedgetpuyolo26n_edgetpu.tfliteimgsz, int8, data, fraction, device
TF.jstfjsyolo26n_web_model/imgsz, half, int8, nms, batch, data, fraction, device
PaddlePaddlepaddleyolo26n_paddle_model/imgsz, batch, device
MNNmnnyolo26n.mnnimgsz, batch, int8, half, device
NCNNncnnyolo26n_ncnn_model/imgsz, half, batch, device
IMX500imxyolo26n_imx_model/imgsz, int8, data, fraction, nms, device
RKNNrknnyolo26n_rknn_model/imgsz, batch, name, device
ExecuTorchexecutorchyolo26n_executorch_model/imgsz, batch, device
Axeleraaxelerayolo26n_axelera_model/imgsz, batch, int8, data, fraction, device
DeepXdeepxyolo26n_deepx_model/imgsz, int8, data, optimize, device

Полные сведения об export см. на странице Export.

Переопределение аргументов по умолчанию

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

Совет

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

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

Переопределение файла конфигурации по умолчанию

Полностью переопредели файл конфигурации 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 открывает доступ к подсчету объектов, обрезке, размытию, мониторингу тренировок, тепловым картам, сегментации экземпляров, VisionEye, оценке скорости, управлению очередями, аналитике, логическому выводу в Streamlit и отслеживанию по зонам — полный каталог смотри на странице Solutions. Запусти yolo solutions help, чтобы вывести список всех поддерживаемых решений и их аргументов.

Пример

Подсчитывай объекты на видео или в прямом эфире:

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

Для получения дополнительной информации о решениях Ultralytics посети страницу Solutions.

Часто задаваемые вопросы (FAQ)

Как использовать интерфейс командной строки (CLI) Ultralytics YOLO для обучения моделей?

Чтобы обучить модель с помощью CLI, выполни однострочную команду в терминале. Например, чтобы обучить модель детектирования в течение 10 эпох с скоростью обучения 0.01, запусти:

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

Эта команда использует режим train с определенными аргументами. Полный список доступных аргументов см. в Руководстве по конфигурации.

Какие задачи я могу выполнять с помощью CLI Ultralytics YOLO?

CLI Ultralytics YOLO поддерживает различные задачи, включая детектирование, сегментацию, классификацию, оценку позы и детектирование ориентированных ограничивающих рамок. Ты также можешь выполнять такие операции, как:

  • Обучение модели: Запусти 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> для готовых приложений.

Настраивай каждую задачу с помощью различных аргументов. Подробный синтаксис и примеры смотри в соответствующих разделах, таких как Train, Predict и Export.

Как проверить точность обученной модели YOLO с помощью CLI?

Чтобы проверить точность модели, используй режим val. Например, чтобы проверить предобученную модель детектирования с размером пакета 1 и размером изображения 640, запусти:

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

Эта команда оценивает модель на указанном наборе данных и предоставляет метрики производительности, такие как mAP, precision и recall. Более подробную информацию смотри в разделе Val.

В какие форматы я могу экспортировать свои модели YOLO с помощью CLI?

Ты можешь экспортировать модели YOLO в различные форматы, включая ONNX, TensorRT, CoreML, TensorFlow и другие. Например, чтобы экспортировать модель в формат ONNX, запусти:

yolo export model=yolo26n.pt format=onnx

Команда экспорта поддерживает множество опций для оптимизации твоей модели под конкретные среды развертывания. Полную информацию обо всех доступных форматах экспорта и их специфических параметрах смотри на странице Export.

Как использовать готовые решения в CLI Ultralytics?

Ultralytics предоставляет готовые решения с помощью команды solutions. Например, для подсчета объектов на видео:

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

Эти решения требуют минимальной настройки и обеспечивают немедленную функциональность для распространенных задач компьютерного зрения. Чтобы увидеть все доступные решения, запусти yolo solutions help. У каждого решения есть специфические параметры, которые можно настроить под свои нужды.

Комментарии