Gu铆a de exportaci贸n de modelos YOLO11 a TFLite para su implantaci贸n
La implantaci贸n de modelos de visi贸n por ordenador en dispositivos perif茅ricos o integrados requiere un formato que garantice un rendimiento sin fisuras.
El formato de exportaci贸n TensorFlow Lite o TFLite le permite optimizar sus Ultralytics YOLO11 para tareas como la detecci贸n de objetos y la clasificaci贸n de im谩genes en aplicaciones basadas en dispositivos de bordes. En esta gu铆a, explicaremos los pasos necesarios para convertir los modelos al formato TFLite, lo que facilitar谩 su uso en distintos dispositivos de bordes.
驴Por qu茅 exportar a TFLite?
Presentado 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 la inferencia en dispositivos, tambi茅n conocida como edge computing. 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 embebido, Android, iOS, y MCU. Exportar tu modelo a TFLite hace que tus aplicaciones sean m谩s r谩pidas, fiables y capaces de ejecutarse sin conexi贸n.
Caracter铆sticas principales de los modelos TFLite
Los modelos TFLite ofrecen una amplia gama de funciones clave que permiten el aprendizaje autom谩tico en el dispositivo, ayudando a los desarrolladores a ejecutar sus modelos en dispositivos m贸viles, integrados y perif茅ricos:
-
Optimizaci贸n en el dispositivo: TFLite optimiza para ML en el dispositivo, reduciendo la latencia al procesar los datos localmente, mejorando la privacidad al no transmitir datos personales y minimizando el tama帽o del modelo para ahorrar espacio.
-
Compatibilidad con m煤ltiples plataformas: TFLite ofrece una amplia compatibilidad de plataformas, con soporte para Android, iOS, Linux embebido y microcontroladores.
-
Compatibilidad con diversos lenguajes: TFLite es compatible con diversos lenguajes de programaci贸n, como Java, Swift, Objective-C, C++ y Python.
-
Alto rendimiento: Consigue un rendimiento superior mediante la aceleraci贸n por hardware y la optimizaci贸n de modelos.
Opciones de despliegue en TFLite
Antes de ver el c贸digo para exportar modelos YOLO11 al formato TFLite, vamos a entender c贸mo se utilizan normalmente los modelos TFLite.
TFLite ofrece varias opciones de despliegue en el dispositivo para modelos de aprendizaje autom谩tico, entre las que se incluyen:
- Despliegue con Android y iOS: Tanto las aplicaciones Android y iOS con TFLite pueden analizar la alimentaci贸n de c谩maras y sensores basados en bordes para detectar e identificar objetos. TFLite tambi茅n ofrece bibliotecas nativas iOS escritas en Swift y Objective-C. El siguiente diagrama de arquitectura muestra el proceso de despliegue de un modelo entrenado en plataformas Android y iOS utilizando TensorFlow Lite.
-
Implementaci贸n con Embedded Linux: Si la ejecuci贸n de inferencias en una Raspberry Pi utilizando la Gu铆aUltralytics no cumple los requisitos de velocidad para su caso de uso, puede utilizar 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 s贸lo unos pocos kilobytes de memoria. El n煤cleo de ejecuci贸n s贸lo cabe en 16 KB en un Arm Cortex M3 y puede ejecutar muchos modelos b谩sicos. No requiere soporte del sistema operativo, ni bibliotecas C o C++ est谩ndar, ni asignaci贸n din谩mica de memoria.
Exportar a TFLite: Conversi贸n de su modelo YOLO11
Puede mejorar la eficacia de la ejecuci贸n de modelos en el dispositivo y optimizar el rendimiento convirti茅ndolos al formato TFLite.
Instalaci贸n
Para instalar los paquetes necesarios, ejecute
Para obtener instrucciones detalladas y buenas pr谩cticas relacionadas con el proceso de instalaci贸n, consulta nuestra gu铆a de instalaci贸nUltralytics . Mientras instala los paquetes necesarios para YOLO11, si encuentra alguna dificultad, consulte nuestra gu铆a de problemas comunes para obtener soluciones y consejos.
Utilizaci贸n
Antes de entrar en las instrucciones de uso, es importante tener en cuenta que, aunque todos los modelos deUltralytics YOLO11 est谩n disponibles para la exportaci贸n, aqu铆 puede asegurarse de que el modelo que seleccione admite la funci贸n de exportaci贸n.
Utilizaci贸n
from ultralytics import YOLO
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
# Export the model to TFLite format
model.export(format="tflite") # creates 'yolo11n_float32.tflite'
# Load the exported TFLite model
tflite_model = YOLO("yolo11n_float32.tflite")
# Run inference
results = tflite_model("https://ultralytics.com/images/bus.jpg")
Para m谩s detalles sobre el proceso de exportaci贸n, visite la p谩gina de documentaci贸nUltralytics sobre exportaci贸n.
Despliegue de modelos TFLite exportados YOLO11
Despu茅s de exportar con 茅xito sus modelos Ultralytics YOLO11 al formato TFLite, ya puede desplegarlos. El primer paso principal y recomendado para ejecutar un modelo TFLite es utilizar 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 el despliegue de sus modelos TFLite en otras configuraciones, eche un vistazo a los siguientes recursos:
-
Android: Una gu铆a de inicio r谩pido para integrar TensorFlow Lite en las aplicaciones de Android , proporcionando pasos f谩ciles de seguir para configurar y ejecutar modelos de aprendizaje autom谩tico.
-
iOS: Consulte esta gu铆a detallada para desarrolladores sobre la integraci贸n y el despliegue de modelos TensorFlow Lite en aplicaciones iOS , que ofrece instrucciones paso a paso y recursos.
-
Ejemplos de extremo a extremo: Esta p谩gina proporciona 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 edge.
Resumen
En esta gu铆a, nos centramos en c贸mo exportar al formato TFLite. Al convertir sus modelos Ultralytics YOLO11 al formato de modelo TFLite, puede mejorar la eficacia y la velocidad de los modelos YOLO11 , haci茅ndolos m谩s eficaces y adecuados para entornos de computaci贸n de borde.
Para m谩s detalles sobre su uso, visite la documentaci贸n oficial de TFLite.
Adem谩s, si tienes curiosidad sobre otras integraciones de Ultralytics YOLO11 , aseg煤rate de consultar nuestra p谩gina de gu铆a de integraci贸n. All铆 encontrar谩s un mont贸n de informaci贸n 煤til.
PREGUNTAS FRECUENTES
驴C贸mo se exporta un modelo YOLO11 al formato TFLite?
Para exportar un modelo YOLO11 al formato TFLite, puede utilizar la biblioteca Ultralytics . En primer lugar, instale el paquete necesario utilizando:
A continuaci贸n, utilice el siguiente fragmento de c贸digo para exportar su modelo:
from ultralytics import YOLO
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
# Export the model to TFLite format
model.export(format="tflite") # creates 'yolo11n_float32.tflite'
Los usuarios de CLI pueden conseguirlo con:
Para m谩s detalles, visite la gu铆a de exportaci贸nUltralytics .
驴Cu谩les son las ventajas de utilizar TensorFlow Lite para laimplantaci贸n del modelo YOLO11 ?
TensorFlow Lite (TFLite) es un marco de aprendizaje profundo de c贸digo abierto dise帽ado para la inferencia en el dispositivo, por lo que es ideal para implementar modelos YOLO11 en dispositivos m贸viles, integrados y IoT. Entre sus principales ventajas se incluyen:
- Optimizaci贸n en el dispositivo: Minimiza la latencia y mejora la privacidad procesando los datos localmente.
- Compatibilidad de plataformas: Compatible con Android, iOS, Linux embebido y MCU.
- Rendimiento: Utiliza la aceleraci贸n por hardware para optimizar la velocidad y la eficacia del modelo.
Para saber m谩s, consulta la gu铆a TFLite.
驴Es posible ejecutar modelos YOLO11 TFLite en Raspberry Pi?
S铆, puedes ejecutar modelos YOLO11 TFLite en Raspberry Pi para mejorar la velocidad de inferencia. En primer lugar, exporte su modelo a formato TFLite como se explica aqu铆. A continuaci贸n, utiliza una herramienta como TensorFlow Lite Interpreter para ejecutar el modelo en tu Raspberry Pi.
Para mayores optimizaciones, puedes considerar el uso de Coral Edge TPU. Para conocer los pasos detallados, consulta nuestra gu铆a de implementaci贸n de Raspberry Pi.
驴Puedo utilizar modelos TFLite en microcontroladores para realizar predicciones en YOLO11 ?
S铆, TFLite admite la implementaci贸n en microcontroladores con recursos limitados. El n煤cleo de ejecuci贸n de TFLite s贸lo requiere 16 KB de memoria en un Arm Cortex M3 y puede ejecutar modelos b谩sicos de YOLO11 . Esto lo hace adecuado para su despliegue en dispositivos con una potencia de c谩lculo y una memoria m铆nimas.
Para empezar, visite la gu铆a TFLite Micro para microcontroladores.
驴Qu茅 plataformas son compatibles con los modelos YOLO11 exportados por TFLite?
TensorFlow Lite ofrece una amplia compatibilidad de plataformas, lo que le permite implantar los modelos YOLO11 en una amplia gama de dispositivos, incluidos:
- Android y iOS: Soporte nativo a trav茅s de las bibliotecas TFLite Android y iOS .
- Linux integrado: Ideal para ordenadores de placa 煤nica como Raspberry Pi.
- Microcontroladores: Adecuado para MCU con recursos limitados.
Para m谩s informaci贸n sobre las opciones de implantaci贸n, consulte nuestra gu铆a detallada de implantaci贸n.
驴C贸mo puedo solucionar los problemas m谩s comunes durante la exportaci贸n del modelo YOLO11 a TFLite?
Si se encuentra con errores al exportar modelos de YOLO11 a TFLite, las soluciones m谩s comunes incluyen
- Compruebe la compatibilidad de los paquetes: Aseg煤rese de que utiliza versiones compatibles de Ultralytics y TensorFlow. Consulte nuestra gu铆a de instalaci贸n.
- Modelo compatible: Compruebe que el modelo espec铆fico YOLO11 admite la exportaci贸n TFLite marcando aqu铆.
Para obtener m谩s consejos sobre la soluci贸n de problemas, visita nuestra gu铆a de problemas comunes.