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.
 
 
 

8.6 KiB

comments description keywords
true Guía paso a paso sobre cómo exportar sus modelos YOLOv8 a varios formatos como ONNX, TensorRT, CoreML y más para su despliegue. ¡Explora ahora!. YOLO, YOLOv8, Ultralytics, Exportación de modelos, ONNX, TensorRT, CoreML, TensorFlow SavedModel, OpenVINO, PyTorch, exportar modelo

Exportación de Modelos con Ultralytics YOLO

Ecosistema de Ultralytics YOLO e integraciones

Introducción

El objetivo final de entrenar un modelo es desplegarlo para aplicaciones en el mundo real. El modo exportación en Ultralytics YOLOv8 ofrece una gama versátil de opciones para exportar tu modelo entrenado a diferentes formatos, haciéndolo desplegable en varias plataformas y dispositivos. Esta guía integral pretende guiarte a través de los matices de la exportación de modelos, mostrando cómo lograr la máxima compatibilidad y rendimiento.



Ver: Cómo Exportar un Modelo Entrenado Personalizado de Ultralytics YOLOv8 y Ejecutar Inferencia en Vivo en la Webcam.

¿Por Qué Elegir el Modo Exportación de YOLOv8?

  • Versatilidad: Exporta a múltiples formatos incluyendo ONNX, TensorRT, CoreML y más.
  • Rendimiento: Acelera hasta 5 veces la velocidad en GPU con TensorRT y 3 veces en CPU con ONNX o OpenVINO.
  • Compatibilidad: Hacer que tu modelo sea universalmente desplegable en numerosos entornos de hardware y software.
  • Facilidad de Uso: Interfaz de línea de comandos simple y API de Python para una exportación de modelos rápida y sencilla.

Características Clave del Modo de Exportación

Aquí tienes algunas de las funcionalidades destacadas:

  • Exportación con Un Solo Clic: Comandos simples para exportar a diferentes formatos.
  • Exportación por Lotes: Exporta modelos capaces de inferencia por lotes.
  • Inferencia Optimizada: Los modelos exportados están optimizados para tiempos de inferencia más rápidos.
  • Vídeos Tutoriales: Guías y tutoriales en profundidad para una experiencia de exportación fluida.

!!! tip "Consejo"

* Exporta a ONNX u OpenVINO para acelerar la CPU hasta 3 veces.
* Exporta a TensorRT para acelerar la GPU hasta 5 veces.

Ejemplos de Uso

Exporta un modelo YOLOv8n a un formato diferente como ONNX o TensorRT. Consulta la sección Argumentos más abajo para una lista completa de argumentos de exportación.

!!! example ""

=== "Python"

    ```python
    from ultralytics import YOLO

    # Carga un modelo
    model = YOLO('yolov8n.pt')  # carga un modelo oficial
    model = YOLO('path/to/best.pt')  # carga un modelo entrenado personalizado

    # Exporta el modelo
    model.export(format='onnx')
    ```
=== "CLI"

    ```bash
    yolo export model=yolov8n.pt format=onnx  # exporta modelo oficial
    yolo export model=path/to/best.pt format=onnx  # exporta modelo entrenado personalizado
    ```

Argumentos

Los ajustes de exportación para modelos YOLO se refieren a las diversas configuraciones y opciones utilizadas para guardar o exportar el modelo para su uso en otros entornos o plataformas. Estos ajustes pueden afectar el rendimiento del modelo, su tamaño y su compatibilidad con diferentes sistemas. Algunos ajustes comunes de exportación de YOLO incluyen el formato del archivo del modelo exportado (p. ej., ONNX, TensorFlow SavedModel), el dispositivo en el que se ejecutará el modelo (p. ej., CPU, GPU) y la presencia de características adicionales como máscaras o múltiples etiquetas por caja. Otros factores que pueden afectar el proceso de exportación incluyen la tarea específica para la que se está utilizando el modelo y los requisitos o limitaciones del entorno o plataforma objetivo. Es importante considerar y configurar cuidadosamente estos ajustes para asegurar que el modelo exportado está optimizado para el caso de uso previsto y se pueda utilizar eficazmente en el entorno objetivo.

Llave Valor Descripción
format 'torchscript' formato al que exportar
imgsz 640 tamaño de imagen como escalar o lista (h, w), p. ej. (640, 480)
keras False usu Keras para la exportación de TF SavedModel
optimize False TorchScript: optimizar para móvil
half False cuantificación FP16
int8 False cuantificación INT8
dynamic False ONNX/TensorRT: ejes dinámicos
simplify False ONNX/TensorRT: simplificar modelo
opset None ONNX: versión de opset (opcional, por defecto la más reciente)
workspace 4 TensorRT: tamaño del espacio de trabajo (GB)
nms False CoreML: añadir NMS

Formatos de Exportación

Los formatos de exportación disponibles de YOLOv8 están en la tabla a continuación. Puedes exportar a cualquier formato usando el argumento format, por ejemplo, format='onnx' o format='engine'.

Formato Argumento format Modelo Metadatos Argumentos
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