Cómo ejecutar Ultralytics YOLO26 en una Raspberry Pi con Coral Edge TPU#
Una Raspberry Pi es una plataforma asequible y de bajo consumo para ejecutar visión artificial en el edge, pero la inferencia en el dispositivo es lenta incluso con formatos optimizados como ONNX u OpenVINO. Al conectar la Pi a un coprocesador Coral Edge TPU, se descarga la inferencia en hardware especializado y se acelera notablemente. Esta guía explica cómo instalar el entorno de ejecución, exportar un modelo Ultralytics YOLO26 al formato Edge TPU y ejecutar inferencias aceleradas.
Ver: Cómo ejecutar inferencias en Raspberry Pi con Google Coral Edge TPU
¿Por qué usar Coral Edge TPU?#
Coral Edge TPU es un dispositivo compacto que añade un coprocesador Edge TPU a tu sistema y permite ejecutar inferencias de ML de alto rendimiento y bajo consumo con modelos TensorFlow Lite. Es una opción excelente para despliegues integrados y móviles en los que una CPU por sí sola no da abasto:
- Inferencia más rápida — Edge TPU acelera los modelos cuantizados mucho más de lo que puede conseguir por sí sola la CPU de Raspberry Pi.
- Bajo consumo — ofrece un alto rendimiento por vatio, ideal para despliegues alimentados por batería o energía solar.
- Conectar y listo — el Acelerador USB se conecta mediante USB 3.0, así que no hace falta integrar hardware adicional.
La guía oficial de Coral está desactualizada: las compilaciones originales del entorno de ejecución de Coral ya no funcionan con las versiones actuales del entorno de ejecución de TensorFlow Lite, y el proyecto no recibió actualizaciones entre 2021 y 2025. Esta guía utiliza un entorno de ejecución Edge TPU que se mantiene activamente y la versión más reciente de tflite-runtime para que el acelerador funcione en una instalación actual de Raspberry Pi OS.
Requisitos previos#
- Raspberry Pi 4B (se recomiendan 2 GB o más) o Raspberry Pi 5 (recomendada)
- Raspberry Pi OS Bullseye/Bookworm (64 bits) con escritorio (recomendado)
- Coral USB Accelerator
- Una plataforma Linux x86_64 (Google Colab, un equipo Linux x86_64 o el contenedor Docker de Ultralytics en un host x86_64) para exportar el modelo, ya que el compilador Edge TPU solo está disponible en Linux x86_64
Esta guía presupone que ya tienes instalada una versión funcional de Raspberry Pi OS con ultralytics y sus dependencias. Si no es así, sigue primero la guía de inicio rápido.
Una vez tengas todo lo necesario, el flujo de trabajo consta de tres pasos: instalar el entorno de ejecución Edge TPU en la Pi, exportar el modelo en un equipo Linux x86_64 y ejecutar la inferencia de nuevo en la Pi.
Instala el entorno de ejecución Edge TPU#
El entorno de ejecución se distribuye en varias compilaciones; elige la que corresponda a tu sistema operativo. La compilación de alta frecuencia ejecuta Edge TPU a una velocidad de reloj mayor para mejorar el rendimiento, pero puede provocar limitación térmica: si la eliges, utiliza algún sistema de refrigeración.
| Raspberry Pi OS | Modo de alta frecuencia | Versión que debes descargar |
|---|---|---|
| Bullseye de 32 bits | No | libedgetpu1-std_ ... .bullseye_armhf.deb |
| Bullseye de 64 bits | No | libedgetpu1-std_ ... .bullseye_arm64.deb |
| Bullseye de 32 bits | Sí | libedgetpu1-max_ ... .bullseye_armhf.deb |
| Bullseye de 64 bits | Sí | libedgetpu1-max_ ... .bullseye_arm64.deb |
| Bookworm de 32 bits | No | libedgetpu1-std_ ... .bookworm_armhf.deb |
| Bookworm de 64 bits | No | libedgetpu1-std_ ... .bookworm_arm64.deb |
| Bookworm de 32 bits | Sí | libedgetpu1-max_ ... .bookworm_armhf.deb |
| Bookworm de 64 bits | Sí | libedgetpu1-max_ ... .bookworm_arm64.deb |
Descarga aquí la versión más reciente y, después, instala el paquete .deb:
sudo dpkg -i path/to/package.debDespués de instalar el entorno de ejecución, conecta Coral Edge TPU a un puerto USB 3.0 de la Raspberry Pi para que se aplique la nueva regla udev.
Elimina primero cualquier entorno de ejecución existente
Si ya tienes instalado el entorno de ejecución de Coral Edge TPU, desinstálalo antes de instalar una nueva compilación.
# If you installed the standard version
sudo apt remove libedgetpu1-std
# If you installed the high-frequency version
sudo apt remove libedgetpu1-maxExporta tu modelo al formato Edge TPU#
Para usar Edge TPU, convierte el modelo a un formato compatible. Ejecuta la exportación en Linux x86_64 —Google Colab, un equipo Linux x86_64, el contenedor Docker oficial de Ultralytics en un host x86_64 o Ultralytics Platform—, ya que el compilador Edge TPU solo está disponible en Linux x86_64. Consulta el modo de exportación para ver los argumentos disponibles.
from ultralytics import YOLO
# Cargar un modelo
model = YOLO("path/to/model.pt") # Carga un modelo oficial o un modelo personalizado
# Exporta el modelo
model.export(format="edgetpu")El modelo exportado se guarda en la carpeta <model_name>_saved_model/ como <model_name>_full_integer_quant_edgetpu.tflite.
El nombre del archivo debe terminar en _edgetpu.tflite. Si le cambias el nombre, Ultralytics lo cargará como un modelo LiteRT normal (.tflite) en lugar de detectar Edge TPU, y no se utilizará el acelerador.
Ejecuta inferencias en Edge TPU#
Antes de ejecutar el modelo, instala las bibliotecas adecuadas en la Raspberry Pi. Si ya está instalado TensorFlow, desinstálalo primero:
pip uninstall tensorflow tensorflow-aarch64A continuación, instala o actualiza tflite-runtime:
pip install -U tflite-runtimeAhora puedes ejecutar inferencias:
from ultralytics import YOLO
# Cargar un modelo
model = YOLO("path/to/yolo26n_full_integer_quant_edgetpu.tflite") # Carga un modelo oficial o un modelo personalizado
# Ejecuta una predicción
model.predict("path/to/source.png")Encontrarás todos los detalles del modo de predicción en la página Predicción.
Si tienes varios Edge TPU, puedes seleccionar uno concreto con el argumento device.
from ultralytics import YOLO
# Cargar un modelo
model = YOLO("path/to/yolo26n_full_integer_quant_edgetpu.tflite") # Carga un modelo oficial o un modelo personalizado
# Ejecuta una predicción
model.predict("path/to/source.png") # La inferencia utiliza por defecto el primer TPU
model.predict("path/to/source.png", device="tpu:0") # Selecciona el primer TPU
model.predict("path/to/source.png", device="tpu:1") # Selecciona el segundo TPUPruebas de rendimiento#
Las cifras siguientes se han medido con Raspberry Pi OS Bookworm de 64 bits y un Coral Edge TPU USB. Muestran únicamente el tiempo de inferencia (sin incluir el preprocesamiento ni el posprocesamiento) y sirven como referencia relativa de la aceleración que aporta Edge TPU en los distintos modelos y modos de Pi.
Estos benchmarks se registraron con modelos YOLOv8. Los tiempos de inferencia absolutos varían según la versión del modelo y el tamaño de la imagen, pero las mejoras relativas de velocidad entre los modelos de Pi y los modos de reloj se mantienen.
| Tamaño de imagen | Modelo | Tiempo de inferencia estándar (ms) | Tiempo de inferencia de alta frecuencia (ms) |
|---|---|---|---|
| 320 | YOLOv8n | 32.2 | 26.7 |
| 320 | YOLOv8s | 47.1 | 39.8 |
| 512 | YOLOv8n | 73.5 | 60.7 |
| 512 | YOLOv8s | 149.6 | 125.3 |
De media:
- La Raspberry Pi 5 es un 22 % más rápida que la Raspberry Pi 4B en el modo estándar.
- La Raspberry Pi 5 es un 30,2 % más rápida que la Raspberry Pi 4B en el modo de alta frecuencia.
- El modo de alta frecuencia es un 28,4 % más rápido que el modo estándar.
Conclusión#
Coral Edge TPU convierte una Raspberry Pi en un dispositivo de inferencia potente y de bajo consumo para Ultralytics YOLO26. Exporta el modelo en un equipo Linux x86_64, conserva el sufijo _edgetpu.tflite y ejecútalo con tflite-runtime en la Pi para obtener inferencia acelerada en el edge. Para ver más opciones de despliegue, consulta la guía de Raspberry Pi.
Preguntas frecuentes#
Coral Edge TPU es un dispositivo compacto que añade un coprocesador Edge TPU a tu sistema. Este coprocesador permite ejecutar inferencias de ML de alto rendimiento y bajo consumo, especialmente optimizadas para modelos TensorFlow Lite. En una Raspberry Pi, acelera la inferencia muy por encima de lo que consigue por sí sola la CPU, lo que mejora considerablemente el rendimiento de los modelos Ultralytics YOLO26.
Descarga el paquete
.debadecuado para tu versión de Raspberry Pi OS desde este enlace y, después, instálalo:sudo dpkg -i path/to/package.debAsegúrate de desinstalar cualquier versión anterior del entorno de ejecución de Coral Edge TPU siguiendo los pasos de la sección Instala el entorno de ejecución Edge TPU.
Sí. Ejecuta la exportación en Google Colab, un equipo Linux x86_64 o el contenedor Docker de Ultralytics; también puedes usar Ultralytics Platform. A continuación se explica cómo exportar con Python y CLI:
Exportar el modelofrom ultralytics import YOLO # Cargar un modelo model = YOLO("path/to/model.pt") # Carga un modelo oficial o un modelo personalizado # Exporta el modelo model.export(format="edgetpu")Para obtener más información, consulta la documentación del modo de exportación.
Si tienes TensorFlow instalado y necesitas cambiar a
tflite-runtime, desinstala TensorFlow primero:pip uninstall tensorflow tensorflow-aarch64A continuación, instala o actualiza
tflite-runtime:pip install -U tflite-runtimeEncontrarás instrucciones detalladas en la sección Ejecuta inferencias en Edge TPU.
Después de exportar tu modelo YOLO26 a un formato compatible con Edge TPU, ejecuta la inferencia con los siguientes fragmentos de código. El archivo del modelo debe conservar el sufijo
_edgetpu.tflitepara que Ultralytics lo cargue en Edge TPU:Ejecución del modelofrom ultralytics import YOLO # Cargar un modelo model = YOLO("path/to/yolo26n_full_integer_quant_edgetpu.tflite") # Carga un modelo oficial o un modelo personalizado # Ejecuta una predicción model.predict("path/to/source.png")Encontrarás información detallada sobre el modo de predicción en la página Predicción.