Meet YOLO26: next-gen vision AI.

Link to this sectionUna guía sobre la exportación de modelos YOLO26 a TFLite para despliegue#

TensorFlow Lite edge deployment framework

Desplegar modelos de visión artificial en dispositivos de borde o integrados requiere un formato que garantice un rendimiento fluido.

El formato de exportación TensorFlow Lite o TFLite te permite optimizar tus modelos Ultralytics YOLO26 para tareas como detección de objetos y clasificación de imágenes en aplicaciones basadas en dispositivos de borde. En esta guía, recorreremos los pasos para convertir tus modelos al formato TFLite, facilitando que funcionen bien en diversos dispositivos de borde.

Link to this section¿Por qué deberías exportar a TFLite?#

Introducido por Google en mayo de 2017 como parte de su framework TensorFlow, TensorFlow Lite, o TFLite para abreviar, es un framework de aprendizaje profundo de código abierto diseñado para inferencia en el dispositivo, también conocido como computación de borde. Proporciona a los desarrolladores las herramientas necesarias para ejecutar sus modelos entrenados en dispositivos móviles, integrados e IoT, así como en ordenadores tradicionales.

TensorFlow Lite es compatible con una amplia gama de plataformas, incluyendo Linux integrado, Android, iOS y microcontroladores (MCUs). Exportar tu modelo a TFLite hace que tus aplicaciones sean más rápidas, fiables y capaces de ejecutarse sin conexión.

Link to this sectionCaracterísticas clave de los modelos TFLite#

Los modelos TFLite ofrecen una amplia gama de características clave que permiten el aprendizaje automático en el dispositivo al ayudar a los desarrolladores a ejecutar sus modelos en dispositivos móviles, integrados y de borde:

  • Optimización en el dispositivo: TFLite optimiza para ML en el dispositivo, reduciendo la latencia mediante el procesamiento de datos localmente, mejorando la privacidad al no transmitir datos personales y minimizando el tamaño del modelo para ahorrar espacio.

  • Soporte para múltiples plataformas: TFLite ofrece una amplia compatibilidad de plataforma, soportando Android, iOS, Linux integrado y microcontroladores.

  • Soporte para diversos lenguajes: TFLite es compatible con varios lenguajes de programación, incluyendo Java, Swift, Objective-C, C++ y Python.

  • Alto rendimiento: Logra un rendimiento superior a través de aceleración de hardware y optimización de modelos.

Link to this sectionOpciones de despliegue en TFLite#

Antes de ver el código para exportar modelos YOLO26 al formato TFLite, entendamos cómo se utilizan normalmente los modelos TFLite.

TFLite ofrece varias opciones de despliegue en el dispositivo para modelos de aprendizaje automático, incluyendo:

  • Despliegue con Android e iOS: Tanto las aplicaciones Android como iOS con TFLite pueden analizar transmisiones de cámara y sensores basados en borde para detectar e identificar objetos. TFLite también ofrece bibliotecas nativas para iOS escritas en Swift y Objective-C. El diagrama de arquitectura a continuación muestra el proceso de desplegar un modelo entrenado en plataformas Android e iOS usando TensorFlow Lite.

TensorFlow Lite deployment architecture for mobile

  • Implementación con Linux integrado: Si ejecutar inferencias en una Raspberry Pi usando la Guía de Ultralytics no cumple con los requisitos de velocidad para tu caso de uso, puedes usar un modelo TFLite exportado para acelerar los tiempos de inferencia. Además, es posible mejorar aún más el rendimiento utilizando un dispositivo Coral Edge TPU.

  • Despliegue con microcontroladores: Los modelos TFLite también pueden desplegarse en microcontroladores y otros dispositivos con solo unos pocos kilobytes de memoria. El tiempo de ejecución central encaja en solo 16 KB en un Arm Cortex M3 y puede ejecutar muchos modelos básicos. No requiere soporte de sistema operativo, ninguna biblioteca estándar de C o C++, ni asignación de memoria dinámica.

Link to this sectionExportar a TFLite: Convirtiendo tu modelo YOLO26#

Puedes mejorar la eficiencia de ejecución del modelo en el dispositivo y optimizar el rendimiento convirtiendo tus modelos al formato TFLite.

Link to this sectionInstalación#

Para instalar los paquetes necesarios, ejecuta:

Instalación
# Install the required package for YOLO26
pip install ultralytics

Para obtener instrucciones detalladas y mejores prácticas relacionadas con el proceso de instalación, consulta nuestra guía de instalación de Ultralytics. Si encuentras dificultades mientras instalas los paquetes necesarios para YOLO26, consulta nuestra guía de problemas comunes para obtener soluciones y consejos.

Link to this sectionUso#

Todos los modelos Ultralytics YOLO26 están diseñados para soportar la exportación directamente, lo que facilita su integración en tu flujo de trabajo de despliegue preferido. Puedes ver la lista completa de formatos de exportación y opciones de configuración compatibles para elegir la mejor configuración para tu aplicación.

El formato TFLite soporta los modos Export, Predict y Validate. Exporta tu modelo, luego carga el modelo exportado para ejecutar inferencia o validar su precisión.

Exportar
from ultralytics import YOLO

# Load a YOLO26 model
model = YOLO("yolo26n.pt")

# Export the model to TFLite format
model.export(format="tflite")  # creates 'yolo26n_float32.tflite'
Predecir
from ultralytics import YOLO

# Load the exported TFLite model
model = YOLO("yolo26n_float32.tflite")

# Run inference
results = model("https://ultralytics.com/images/bus.jpg")
Validar
from ultralytics import YOLO

# Load the exported TFLite model
model = YOLO("yolo26n_float32.tflite")

# Validate accuracy on the COCO8 dataset
metrics = model.val(data="coco8.yaml")

Link to this sectionArgumentos de exportación#

ArgumentoTipoPredeterminadoDescripción
formatstr'tflite'Formato destino para el modelo exportado, que define la compatibilidad con diversos entornos de despliegue.
imgszint o tuple640Tamaño de imagen deseado para la entrada del modelo. Puede ser un número entero para imágenes cuadradas o una tupla (height, width) para dimensiones específicas.
halfboolFalseHabilita la cuantización FP16 (precisión media), lo que reduce el tamaño del modelo y potencialmente acelera la inferencia en hardware compatible.
int8boolFalseActiva la cuantización INT8, lo que comprime aún más el modelo y acelera la inferencia con una pérdida mínima de precisión, principalmente para dispositivos periféricos.
nmsboolFalseAñade la supresión de no máximos (NMS), esencial para el posprocesamiento de detecciones preciso y eficiente.
batchint1Especifica el tamaño de inferencia por lotes del modelo de exportación o el número máximo de imágenes que el modelo exportado procesará simultáneamente en modo predict.
datastr'coco8.yaml'Ruta al archivo de configuración del dataset (predeterminado: coco8.yaml), esencial para la cuantización.
fractionfloat1.0Especifica la fracción del dataset que se utilizará para la calibración de cuantización INT8. Permite calibrar sobre un subconjunto del dataset completo, lo cual es útil para experimentos o cuando los recursos son limitados. Si no se especifica y la opción INT8 está activada, se utilizará el dataset completo.
devicestrNoneEspecifica el dispositivo para la exportación: CPU (device=cpu), MPS para Apple silicon (device=mps).

Para obtener más detalles sobre el proceso de exportación, visita la página de documentación de Ultralytics sobre exportación.

Link to this sectionDesplegando modelos YOLO26 TFLite exportados#

Después de exportar con éxito tus modelos Ultralytics YOLO26 al formato TFLite, ya puedes desplegarlos. El primer paso principal y recomendado para ejecutar un modelo TFLite es usar el método YOLO("model.tflite"), como se indica en el fragmento de código de uso anterior. Sin embargo, para obtener instrucciones detalladas sobre cómo desplegar tus modelos TFLite en otros entornos, echa un vistazo a los siguientes recursos:

  • Android: Una guía de inicio rápido para integrar TensorFlow Lite en aplicaciones Android, proporcionando pasos fáciles de seguir para configurar y ejecutar modelos de aprendizaje automático.

  • iOS: Echa un vistazo a esta guía detallada para desarrolladores sobre cómo integrar y desplegar modelos TensorFlow Lite en aplicaciones iOS, ofreciendo instrucciones paso a paso y recursos.

  • Ejemplos integrales: Esta página ofrece una visión general de varios ejemplos de TensorFlow Lite, mostrando aplicaciones prácticas y tutoriales diseñados para ayudar a los desarrolladores a implementar TensorFlow Lite en sus proyectos de aprendizaje automático en dispositivos móviles y de borde.

Link to this sectionResumen#

En esta guía, nos centramos en cómo exportar al formato TFLite. Al convertir tus modelos Ultralytics YOLO26 al formato de modelo TFLite, puedes mejorar la eficiencia y la velocidad de los modelos YOLO26, haciéndolos más eficaces y adecuados para entornos de computación de borde.

Para más detalles sobre el uso, visita la documentación oficial de TFLite.

Además, si tienes curiosidad por otras integraciones de Ultralytics YOLO26, echa un vistazo a nuestra página de guía de integración. Encontrarás mucha información útil y perspectivas allí.

Link to this sectionPreguntas frecuentes#

Link to this section¿Cómo exporto un modelo YOLO26 al formato TFLite?#

Para exportar un modelo YOLO26 al formato TFLite, puedes usar la biblioteca Ultralytics. Primero, instala el paquete necesario usando:

pip install ultralytics

Luego, utiliza el siguiente fragmento de código para exportar tu modelo:

from ultralytics import YOLO

# Load a YOLO26 model
model = YOLO("yolo26n.pt")

# Export the model to TFLite format
model.export(format="tflite")  # creates 'yolo26n_float32.tflite'

Para usuarios de CLI, puedes lograr esto con:

yolo export model=yolo26n.pt format=tflite # creates 'yolo26n_float32.tflite'

Para más detalles, visita la guía de exportación de Ultralytics.

Link to this section¿Cuáles son los beneficios de usar TensorFlow Lite para el despliegue de modelos YOLO26?#

TensorFlow Lite (TFLite) es un framework de aprendizaje profundo de código abierto diseñado para inferencia en el dispositivo, lo que lo hace ideal para desplegar modelos YOLO26 en dispositivos móviles, integrados y IoT. Los beneficios clave incluyen:

  • Optimización en el dispositivo: Minimiza la latencia y mejora la privacidad al procesar datos localmente.
  • Compatibilidad de plataforma: Soporta Android, iOS, Linux integrado y MCU.
  • Rendimiento: Utiliza aceleración de hardware para optimizar la velocidad y eficiencia del modelo.

Para aprender más, echa un vistazo a la guía de TFLite.

Link to this section¿Es posible ejecutar modelos YOLO26 TFLite en Raspberry Pi?#

Sí, puedes ejecutar modelos YOLO26 TFLite en Raspberry Pi para mejorar las velocidades de inferencia. Primero, exporta tu modelo al formato TFLite como se explicó anteriormente. Luego, usa una herramienta como TensorFlow Lite Interpreter para ejecutar el modelo en tu Raspberry Pi.

Para optimizaciones adicionales, podrías considerar usar Coral Edge TPU. Para pasos detallados, consulta nuestra guía de despliegue en Raspberry Pi y la guía de integración de Edge TPU.

Link to this section¿Puedo usar modelos TFLite en microcontroladores para predicciones YOLO26?#

Sí, TFLite soporta despliegue en microcontroladores con recursos limitados. El tiempo de ejecución central de TFLite requiere solo 16 KB de memoria en un Arm Cortex M3 y puede ejecutar modelos YOLO26 básicos. Esto lo hace adecuado para el despliegue en dispositivos con potencia computacional y memoria mínimas.

Para empezar, visita la guía de TFLite Micro para microcontroladores.

Link to this section¿Qué plataformas son compatibles con los modelos YOLO26 exportados a TFLite?#

TensorFlow Lite proporciona una amplia compatibilidad de plataforma, permitiéndote desplegar modelos YOLO26 en una amplia gama de dispositivos, incluyendo:

  • Android e iOS: Soporte nativo a través de las bibliotecas de TFLite para Android e iOS.
  • Linux integrado: Ideal para ordenadores de placa única como Raspberry Pi.
  • Microcontroladores: Adecuado para MCUs con recursos limitados.

Para más información sobre las opciones de despliegue, consulta nuestra guía de despliegue detallada.

Link to this section¿Cómo soluciono problemas comunes durante la exportación de modelos YOLO26 a TFLite?#

Si encuentras errores mientras exportas modelos YOLO26 a TFLite, las soluciones comunes incluyen:

  • Comprobar la compatibilidad del paquete: Asegúrate de que estás usando versiones compatibles de Ultralytics y TensorFlow. Consulta nuestra guía de instalación.
  • Soporte del modelo: Verifica que el modelo YOLO26 específico soporte la exportación a TFLite comprobando la página de documentación de exportación de Ultralytics.
  • Problemas de cuantización: Cuando uses cuantización INT8, asegúrate de que la ruta de tu conjunto de datos esté especificada correctamente en el parámetro data.

Para consejos adicionales de resolución de problemas, visita nuestra guía de problemas comunes.

Comentarios