Интерфейс командной строки#
Интерфейс командной строки Ultralytics (CLI) позволяет легко использовать модели Ultralytics YOLO без написания кода на Python. CLI поддерживает запуск различных задач прямо из терминала с помощью команды yolo.
Смотри: Осваиваем Ultralytics YOLO: CLI
Команды yolo в Ultralytics используют следующий синтаксис:
yolo TASK MODE ARGSГде:
TASK(необязательный) — одно из значений [detect, segment, semantic, depth, classify, pose, obb]MODE(обязательный) — одно из значений [train, val, predict, export, track, benchmark]ARGS(необязательные) — любое количество пользовательских парarg=value, напримерimgsz=320, которые переопределяют значения по умолчанию.
Полный список ARGS смотри в руководстве по конфигурации или с помощью yolo cfg.
Где:
TASK(необязательный) — одно из значений[detect, segment, semantic, depth, 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. Если data не указан, пользовательская модель повторно использует data из обучения; для официальных весов используется значение coco8.yaml по умолчанию для этой задачи.
Проведи валидацию официальной модели YOLO26n:
yolo detect val model=yolo26n.pt data=coco8.yamlПредсказание#
Используй обученную модель для предсказаний на изображениях.
Выполни предсказание с помощью официальной модели 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 | ✅ | - |
| TorchScript | torchscript | yolo26n.torchscript | ✅ | imgsz, quantize, dynamic, nms, batch, device |
| ONNX | onnx | yolo26n.onnx | ✅ | imgsz, quantize, dynamic, simplify, opset, nms, batch, data, fraction, device |
| OpenVINO | openvino | yolo26n_openvino_model/ | ✅ | imgsz, quantize, dynamic, nms, batch, data, fraction, device |
| TensorRT | engine | yolo26n.engine | ✅ | imgsz, quantize, dynamic, simplify, opset, workspace, nms, batch, data, fraction, device |
| CoreML | coreml | yolo26n.mlpackage | ✅ | imgsz, dynamic, quantize, nms, batch, device |
| Apple Core AI | coreai | yolo26n.aimodel | ✅ | imgsz, batch, quantize |
| TF SavedModel | saved_model | yolo26n_saved_model/ | ✅ | imgsz, quantize, opset, nms, batch, data, fraction, device |
| TF GraphDef | pb | yolo26n.pb | ❌ | imgsz, opset, batch, device |
| TF Edge TPU | edgetpu | yolo26n_edgetpu.tflite | ✅ | imgsz, quantize, opset, data, fraction, device |
| LiteRT | litert | yolo26n.tflite | ✅ | imgsz, quantize, batch, data, fraction, device |
| PaddlePaddle | paddle | yolo26n_paddle_model/ | ✅ | imgsz, batch, device |
| MNN | mnn | yolo26n.mnn | ✅ | imgsz, batch, dynamic, quantize, simplify, opset, nms, device |
| NCNN | ncnn | yolo26n_ncnn_model/ | ✅ | imgsz, quantize, batch, device |
| IMX500 | imx | yolo26n_imx_model/ | ✅ | imgsz, quantize, data, fraction, nms, device |
| RKNN | rknn | yolo26n_rknn_model/ | ✅ | imgsz, batch, name, quantize, simplify, opset, data, fraction, device |
| ExecuTorch | executorch | yolo26n_executorch_model/ | ✅ | imgsz, batch, device |
| Axelera | axelera | yolo26n_axelera_model/ | ✅ | imgsz, batch, quantize, data, fraction, device |
| DEEPX | deepx | yolo26n_deepx_model/ | ✅ | imgsz, quantize, simplify, opset, data, optimize, device |
| Qualcomm QNN | qnn | yolo26n_qnn.onnx | ✅ | imgsz, batch, name, quantize, simplify, opset, data, fraction, device |
| Hailo | hailo | yolo26n_hailo_model/ | ✅ | imgsz, name, quantize, data, fraction, simplify, conf, iou, device |
| Huawei Ascend | ascend | yolo26n_ascend_model/ | ✅ | imgsz, batch, name, quantize, opset, simplify, nms, device |
| AMD Xilinx | xilinx | yolo26n_xilinx_model/ | ✅ | imgsz, name, quantize, data, fraction, opset, simplify, device |
nms=None по умолчанию возвращает исходные выходные данные для внешней NMS. Укажи nms=False, чтобы выбрать доступную голову без NMS; неподдерживаемые форматы используют собственный путь вывода. Элементы nms выше обозначают форматы, в которые можно встроить NMS с помощью nms=True.
Полную информацию о export см. на странице экспорта.
Переопределение аргументов по умолчанию#
Передавай аргументы командной строки в виде пар arg=value, чтобы переопределить значения по умолчанию.
Обучи модель обнаружения за 10 эпох с learning rate 0.01:
yolo detect train data=coco8.yaml model=yolo26n.pt epochs=10 optimizer=SGD 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, отслеживание по зонам, подсчёт объектов в областях, подачу сигналов тревоги и управление парковкой — полный каталог см. на странице решений. Выполни yolo solutions help, чтобы вывести список всех поддерживаемых решений и их аргументов.
Подсчитывай объекты в видео или прямой трансляции:
yolo solutions count show=True
yolo solutions count source="path/to/video.mp4" # specify video file pathПодробнее о решениях Ultralytics см. на странице решений.
Часто задаваемые вопросы#
Чтобы обучить модель с помощью CLI, выполни в терминале однострочную команду. Например, чтобы обучить модель обнаружения за 10 эпох, выполни:
yolo train data=coco8.yaml model=yolo26n.pt epochs=10Эта команда использует режим
trainс заданными аргументами. Полный список доступных аргументов см. в руководстве по конфигурации.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.
- Обучение модели: выполни
Чтобы проверить точность модели, используй режим
val. Например, чтобы проверить предварительно обученную модель обнаружения с размером пакета 1 и размером изображения 640, выполни:yolo val model=yolo26n.pt data=coco8.yaml batch=1 imgsz=640Эта команда оценивает модель на указанном наборе данных и выводит метрики производительности, например mAP, точность и полноту. Подробнее см. в разделе Val.
Модели YOLO можно экспортировать в различные форматы, включая ONNX, TensorRT, CoreML, TensorFlow и другие. Например, чтобы экспортировать модель в формат ONNX, выполни:
yolo export model=yolo26n.pt format=onnxКоманда экспорта поддерживает множество параметров для оптимизации модели под конкретные среды развёртывания. Полный список доступных форматов экспорта и соответствующих параметров см. на странице экспорта.
Ultralytics предоставляет готовые решения через команду
solutions. Например, чтобы подсчитывать объекты в видео:yolo solutions count source="path/to/video.mp4"Для этих решений требуется минимальная настройка, и они сразу готовы к выполнению распространённых задач компьютерного зрения. Чтобы увидеть все доступные решения, выполни
yolo solutions help. Параметры каждого решения можно настроить в соответствии с твоими потребностями.