You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

11 KiB

comments description keywords
true Пошаговое руководство по экспорту ваших моделей YOLOv8 в различные форматы, такие как ONNX, TensorRT, CoreML и другие, для развертывания. Изучите сейчас!. YOLO, YOLOv8, Ultralytics, Экспорт модели, ONNX, TensorRT, CoreML, TensorFlow SavedModel, OpenVINO, PyTorch, экспорт модели

Экспорт модели с Ultralytics YOLO

Экосистема и интеграции Ultralytics YOLO

Введение

Основная цель тренировки модели — её развертывание для реальных приложений. Режим экспорта в Ultralytics YOLOv8 предлагает множество вариантов для экспорта обученной модели в различные форматы, обеспечивая возможность развертывания на разных платформах и устройствах. Это исчерпывающее руководство направлено на то, чтобы провести вас через тонкости экспорта моделей, демонстрируя, как достичь максимальной совместимости и производительности.



Смотрите: Как экспортировать обученную пользовательскую модель Ultralytics YOLOv8 и запустить живое воспроизведение на веб-камере.

Почему стоит выбрать режим экспорта YOLOv8?

  • Универсальность: Экспорт в несколько форматов, включая ONNX, TensorRT, CoreML и другие.
  • Производительность: Увеличение скорости на GPU до 5 раз с TensorRT и ускорение на CPU до 3 раз с ONNX или OpenVINO.
  • Совместимость: Сделайте вашу модель универсально развертываемой в различных аппаратных и программных средах.
  • Простота использования: Простой интерфейс командной строки и Python API для быстрого и простого экспорта моделей.

Ключевые особенности режима экспорта

Вот некоторые из ключевых функций:

  • Экспорт одним кликом: Простые команды для экспорта в разные форматы.
  • Пакетный экспорт: Экспорт моделей, способных к пакетной обработке.
  • Оптимизированное предсказание: Экспортированные модели оптимизированы для более быстрого предсказания.
  • Учебные видео: Глубокие руководства и обучающие видео для гладкого опыта экспорта.

!!! Tip "Совет"

* Экспортируйте в ONNX или OpenVINO для ускорения CPU до 3 раз.
* Экспортируйте в TensorRT для увеличения скорости на GPU до 5 раз.

Примеры использования

Экспорт модели YOLOv8n в другой формат, например ONNX или TensorRT. Смотрите раздел Аргументы ниже для полного списка аргументов экспорта.

!!! Example "Пример"

=== "Python"

    ```python
    from ultralytics import YOLO

    # Загрузите модель
    model = YOLO('yolov8n.pt')  # загрузка официальной модели
    model = YOLO('path/to/best.pt')  # загрузка обученной пользовательской модели

    # Экспорт модели
    model.export(format='onnx')
    ```
=== "CLI"

    ```bash
    yolo export model=yolov8n.pt format=onnx  # экспорт официальной модели
    yolo export model=path/to/best.pt format=onnx  # экспорт обученной пользовательской модели
    ```

Аргументы

Настройки экспорта моделей YOLO относятся к различным конфигурациям и опциям, используемым для сохранения или экспорта модели для использования в других средах или платформах. Эти настройки могут влиять на производительность модели, размер и совместимость с разными системами. Некоторые общие настройки экспорта YOLO включают формат экспортируемого файла модели (например, ONNX, TensorFlow SavedModel), устройство, на котором будет запущена модель (например, CPU, GPU), а также наличие дополнительных функций, таких как маски или несколько меток на коробку. Другие факторы, которые могут повлиять на процесс экспорта, включают конкретное задание, для которого используется модель, и требования или ограничения целевой среды или платформы. Важно тщательно рассмотреть и настроить эти параметры, чтобы убедиться, что экспортированная модель оптимизирована для предполагаемого использования и может быть эффективно использована в целевой среде.

Ключ Значение Описание
format 'torchscript' формат для экспорта
imgsz 640 размер изображения в виде скаляра или списка (h, w), например, (640, 480)
keras False использовать Keras для экспорта TF SavedModel
optimize False TorchScript: оптимизация для мобильных устройств
half False квантование FP16
int8 False квантование INT8
dynamic False ONNX/TensorRT: динамические оси
simplify False ONNX/TensorRT: упрощение модели
opset None ONNX: версия набора операций (необязательный, по умолчанию последний)
workspace 4 TensorRT: размер рабочей области (ГБ)
nms False CoreML: добавление NMS

Форматы экспорта

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

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