Saltar al contenido

Aprende a exportar a formato TFLite Edge TPU desde el modelo YOLOv8

Desplegar modelos de visi贸n por ordenador en dispositivos con una potencia de c谩lculo limitada, como los sistemas m贸viles o integrados, puede ser complicado. Utilizar un formato de modelo optimizado para un rendimiento m谩s r谩pido simplifica el proceso. El formato de modelo TensorFlow Lite Edge TPU o TFLite Edge TPU est谩 dise帽ado para consumir la m铆nima energ铆a y, al mismo tiempo, ofrecer un rendimiento r谩pido a las redes neuronales.

La funci贸n de exportaci贸n al formato TFLite Edge TPU te permite optimizar tus Ultralytics YOLOv8 modelos para inferencias de alta velocidad y bajo consumo. En esta gu铆a, te guiaremos a trav茅s de la conversi贸n de tus modelos al formato TFLite Edge TPU , facilitando que tus modelos funcionen bien en diversos dispositivos m贸viles e integrados.

驴Por qu茅 deber铆as exportar a TFLite Edge TPU?

Exportar modelos a TensorFlow Edge TPU hace que las tareas de aprendizaje autom谩tico sean r谩pidas y eficientes. Esta tecnolog铆a se adapta a aplicaciones con potencia, recursos inform谩ticos y conectividad limitados. Edge TPU es un acelerador de hardware de Google. Acelera los modelos de TensorFlow Lite en dispositivos edge. La siguiente imagen muestra un ejemplo del proceso.

Borde TFLite TPU

El Borde TPU funciona con modelos cuantizados. La cuantizaci贸n hace que los modelos sean m谩s peque帽os y r谩pidos sin perder mucha precisi贸n. Es ideal para los recursos limitados de la inform谩tica de borde, ya que permite que las aplicaciones respondan con rapidez al reducir la latencia y permitir un procesamiento r谩pido de los datos a nivel local, sin depender de la nube. El procesamiento local tambi茅n mantiene los datos del usuario privados y seguros, ya que no se env铆an a un servidor remoto.

Caracter铆sticas principales de TFLite Edge TPU

脡stas son las caracter铆sticas clave que hacen de TFLite Edge TPU una gran elecci贸n de formato de modelo para los desarrolladores:

  • Rendimiento optimizado en dispositivos Edge: El TFLite Edge TPU consigue un rendimiento de red neuronal de alta velocidad mediante la cuantizaci贸n, la optimizaci贸n del modelo, la aceleraci贸n del hardware y la optimizaci贸n del compilador. Su arquitectura minimalista contribuye a su menor tama帽o y rentabilidad.

  • Alto rendimiento computacional: TFLite Edge TPU combina la aceleraci贸n de hardware especializado y la ejecuci贸n eficiente en tiempo de ejecuci贸n para lograr un alto rendimiento computacional. Es muy adecuado para desplegar modelos de aprendizaje autom谩tico con estrictos requisitos de rendimiento en dispositivos perif茅ricos.

  • C谩lculos matriciales eficientes: El TensorFlow Edge TPU est谩 optimizado para las operaciones matriciales, que son cruciales para los c谩lculos de redes neuronales. Esta eficiencia es clave en los modelos de aprendizaje autom谩tico, sobre todo en los que requieren numerosas y complejas multiplicaciones y transformaciones matriciales.

Opciones de despliegue con TFLite Edge TPU

Antes de pasar a c贸mo exportar YOLOv8 modelos a la TFLite Edge TPU formato, entendamos d贸nde TFLite Edge TPU Por lo general, se utilizan modelos.

TFLite Edge TPU ofrece varias opciones de despliegue para los modelos de aprendizaje autom谩tico, entre ellas:

  • Despliegue en dispositivos: TensorFlow Los modelos Edge TPU pueden desplegarse directamente en dispositivos m贸viles e integrados. El despliegue en el dispositivo permite que los modelos se ejecuten directamente en el hardware, eliminando la necesidad de conectividad en la nube.

  • Edge Computing con TPUs en la Nube TensorFlow : En escenarios en los que los dispositivos de borde tienen capacidades de procesamiento limitadas, las TPU de borde TensorFlow pueden descargar las tareas de inferencia a servidores en la nube equipados con TPU.

  • Despliegue h铆brido: Un enfoque h铆brido combina el despliegue en el dispositivo y en la nube, y ofrece una soluci贸n vers谩til y escalable para desplegar modelos de aprendizaje autom谩tico. Las ventajas incluyen el procesamiento en el dispositivo para respuestas r谩pidas y la computaci贸n en la nube para c谩lculos m谩s complejos.

Exportar modelos YOLOv8 a TFLite Edge TPU

Puedes ampliar la compatibilidad de modelos y la flexibilidad de despliegue convirtiendo los modelos YOLOv8 a TensorFlow Edge TPU.

Instalaci贸n

Para instalar el paquete necesario, ejecuta

Instalaci贸n

# Install the required package for YOLOv8
pip install ultralytics

Para obtener instrucciones detalladas y buenas pr谩cticas relacionadas con el proceso de instalaci贸n, consulta nuestra gu铆a de instalaci贸nUltralytics . Mientras instalas los paquetes necesarios para YOLOv8, si encuentras alguna dificultad, consulta nuestra gu铆a de Problemas comunes para encontrar soluciones y consejos.

Utilizaci贸n

Antes de sumergirte en las instrucciones de uso, es importante tener en cuenta que, aunque todos los modelos deUltralytics YOLOv8 est谩n disponibles para exportar, aqu铆 puedes asegurarte de que el modelo que seleccionas admite la funci贸n de exportaci贸n.

Utilizaci贸n

from ultralytics import YOLO

# Load the YOLOv8 model
model = YOLO("yolov8n.pt")

# Export the model to TFLite Edge TPU format
model.export(format="edgetpu")  # creates 'yolov8n_full_integer_quant_edgetpu.tflite'

# Load the exported TFLite Edge TPU model
edgetpu_model = YOLO("yolov8n_full_integer_quant_edgetpu.tflite")

# Run inference
results = edgetpu_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLOv8n PyTorch model to TFLite Edge TPU format
yolo export model=yolov8n.pt format=edgetpu  # creates 'yolov8n_full_integer_quant_edgetpu.tflite'

# Run inference with the exported model
yolo predict model=yolov8n_full_integer_quant_edgetpu.tflite source='https://ultralytics.com/images/bus.jpg'

Para m谩s detalles sobre las opciones de exportaci贸n admitidas, visita la p谩gina de documentaci贸nUltralytics sobre opciones de despliegue.

Despliegue de modelos exportados YOLOv8 TFLite Edge TPU

Despu茅s de exportar con 茅xito tus modelos Ultralytics YOLOv8 al formato TPU de TFLite Edge, ya puedes desplegarlos. El primer paso principal y recomendado para ejecutar un modelo TPU de TFLite Edge es utilizar el m茅todo YOLO("model_edgetpu.tflite"), como se indica en el fragmento de c贸digo de uso anterior.

Sin embargo, para obtener instrucciones detalladas sobre el despliegue de tus modelos TFLite Edge TPU , echa un vistazo a los siguientes recursos:

Resumen

En esta gu铆a, hemos aprendido a exportar Ultralytics YOLOv8 modelos a TFLite Edge TPU formato. Siguiendo los pasos mencionados anteriormente, puede aumentar la velocidad y la potencia de sus aplicaciones de visi贸n artificial.

Para m谩s detalles sobre el uso, visita el sitio web oficial de Edge TPU .

Adem谩s, para obtener m谩s informaci贸n sobre otras integraciones de Ultralytics YOLOv8 , visita nuestra p谩gina de gu铆a de integraci贸n. All铆 descubrir谩s valiosos recursos y conocimientos.

PREGUNTAS FRECUENTES

驴C贸mo exporto un modelo YOLOv8 al formato TFLite Edge TPU ?

Para exportar un modelo YOLOv8 al formato TFLite Edge TPU , puedes seguir estos pasos:

Utilizaci贸n

from ultralytics import YOLO

# Load the YOLOv8 model
model = YOLO("yolov8n.pt")

# Export the model to TFLite Edge TPU format
model.export(format="edgetpu")  # creates 'yolov8n_full_integer_quant_edgetpu.tflite'

# Load the exported TFLite Edge TPU model
edgetpu_model = YOLO("yolov8n_full_integer_quant_edgetpu.tflite")

# Run inference
results = edgetpu_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLOv8n PyTorch model to TFLite Edge TPU format
yolo export model=yolov8n.pt format=edgetpu  # creates 'yolov8n_full_integer_quant_edgetpu.tflite'

# Run inference with the exported model
yolo predict model=yolov8n_full_integer_quant_edgetpu.tflite source='https://ultralytics.com/images/bus.jpg'

Para conocer todos los detalles sobre la exportaci贸n de modelos a otros formatos, consulta nuestra gu铆a de exportaci贸n.

驴Cu谩les son las ventajas de exportar modelos de YOLOv8 a TFLite Edge TPU?

Exportar modelos de YOLOv8 a TFLite Edge TPU ofrece varias ventajas:

  • Rendimiento optimizado: Consigue un rendimiento de red neuronal de alta velocidad con un consumo de energ铆a m铆nimo.
  • Latencia reducida: R谩pido procesamiento local de los datos sin necesidad de depender de la nube.
  • Privacidad mejorada: El procesamiento local mantiene los datos del usuario privados y seguros.

Esto lo hace ideal para aplicaciones en inform谩tica de borde, donde los dispositivos tienen potencia y recursos computacionales limitados. M谩s informaci贸n sobre por qu茅 debes exportar.

驴Puedo implantar los modelos TFLite Edge TPU en dispositivos m贸viles e integrados?

S铆, los modelos TensorFlow Lite Edge TPU pueden desplegarse directamente en dispositivos m贸viles e integrados. Este enfoque de despliegue permite que los modelos se ejecuten directamente en el hardware, ofreciendo una inferencia m谩s r谩pida y eficiente. Para ver ejemplos de integraci贸n, consulta nuestra gu铆a de despliegue de Coral Edge TPU en Raspberry Pi.

驴Cu谩les son algunos de los casos de uso habituales de los modelos TFLite Edge TPU ?

Entre los casos de uso habituales de los modelos TFLite Edge TPU se incluyen:

  • C谩maras inteligentes: Mejorando el an谩lisis de imagen y v铆deo en tiempo real.
  • Dispositivos IoT: Habilitaci贸n de la automatizaci贸n dom茅stica e industrial inteligente.
  • Sanidad: Aceleraci贸n de la imagen m茅dica y el diagn贸stico.
  • Comercio minorista: Mejora de la gesti贸n de inventarios y an谩lisis del comportamiento del cliente.

Estas aplicaciones se benefician del alto rendimiento y el bajo consumo de los modelos TFLite Edge TPU . Descubre m谩s sobre los escenarios de uso.

驴C贸mo puedo solucionar problemas al exportar o desplegar modelos TFLite Edge TPU ?

Si tienes problemas al exportar o desplegar los modelos TFLite Edge TPU , consulta nuestra gu铆a de Problemas comunes para obtener consejos sobre la soluci贸n de problemas. Esta gu铆a cubre problemas y soluciones comunes para ayudarte a garantizar un funcionamiento sin problemas. Para obtener ayuda adicional, visita nuestro Centro de Ayuda.



Creado 2024-03-13, Actualizado 2024-07-05
Autores: glenn-jocher (5), Burhan-Q (1), abirami-vina (1)

Comentarios