Cómo ejecutar Ultralytics YOLO26 en una Raspberry Pi con una Coral Edge TPU#
Una Raspberry Pi es una plataforma económica y eficiente en cuanto a 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. Emparejar la Pi con un coprocesador Coral Edge TPU descarga la inferencia en hardware especializado y la acelera considerablemente. Esta guía te muestra cómo instalar el entorno de ejecución, exportar un modelo Ultralytics YOLO26 al formato Edge TPU y ejecutar inferencia acelerada.
Watch: How to Run Inference on Raspberry Pi using Google Coral Edge TPU
¿Por qué usar una Coral Edge TPU?#
La Coral Edge TPU es un dispositivo compacto que añade un coprocesador Edge TPU a tu sistema y permite realizar inferencia de ML de alto rendimiento y bajo consumo con modelos TensorFlow Lite. Es ideal para implementaciones integradas y móviles en las que una CPU por sí sola no puede seguir el ritmo:
- Inferencia más rápida — la Edge TPU acelera los modelos cuantizados mucho más de lo que consigue por sí sola la CPU de la Raspberry Pi.
- Bajo consumo energético — ofrece un alto rendimiento por vatio, ideal para implementaciones alimentadas por batería o energía solar.
- Plug and play — el USB Accelerator se conecta mediante USB 3.0, por lo que no se necesita ninguna integración de 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 de Edge TPU mantenido activamente y la última versión 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 que no sea ARM (Google Colab, una máquina Linux x86_64 o el contenedor Docker de Ultralytics) para exportar el modelo, ya que el compilador de Edge TPU no está disponible en ARM
Esta guía presupone que ya tienes una instalación funcional de Raspberry Pi OS con ultralytics y sus dependencias instaladas. Si no es así, sigue primero la guía de inicio rápido.
Con los requisitos previos listos, el flujo de trabajo consta de tres pasos: instalar el entorno de ejecución de Edge TPU en la Pi, exportar tu modelo en una máquina que no sea ARM y ejecutar la inferencia de nuevo en la Pi.
Instala el entorno de ejecución de Edge TPU#
El entorno de ejecución se distribuye en varias compilaciones, así que elige la que corresponda a tu sistema operativo. La compilación de alta frecuencia ejecuta la Edge TPU a una velocidad de reloj superior para mejorar el rendimiento, pero puede provocar estrangulamiento térmico; utiliza algún sistema de refrigeración si la eliges.
| 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 la última versión desde aquí y, a continuación, instala el paquete .deb:
sudo dpkg -i path/to/package.debDespués de instalar el entorno de ejecución, conecta tu Coral Edge TPU a un puerto USB 3.0 de la Raspberry Pi para que la nueva regla udev pueda surtir efecto.
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 utilizar la Edge TPU, convierte tu modelo a un formato compatible. Ejecuta la exportación en una plataforma que no sea ARM —Google Colab, una máquina Linux x86_64, el contenedor Docker oficial de Ultralytics o Ultralytics Platform—, ya que el compilador de Edge TPU no está disponible en ARM. Consulta el modo Export para ver los argumentos disponibles.
from ultralytics import YOLO
# Load a model
model = YOLO("path/to/model.pt") # Load an official model or custom model
# Export the model
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 lo cambias por cualquier otro nombre, Ultralytics lo cargará como un modelo normal de TensorFlow Lite en lugar de detectar la Edge TPU, por lo que no se utilizará el acelerador.
Ejecuta inferencia en la Edge TPU#
Antes de ejecutar el modelo, instala las bibliotecas correctas en la Raspberry Pi. Si TensorFlow ya está instalado, desinstálalo primero:
pip uninstall tensorflow tensorflow-aarch64A continuación, instala o actualiza tflite-runtime:
pip install -U tflite-runtimeAhora puedes ejecutar la inferencia:
from ultralytics import YOLO
# Load a model
model = YOLO("path/to/yolo26n_full_integer_quant_edgetpu.tflite") # Load an official model or custom model
# Run Prediction
model.predict("path/to/source.png")Consulta todos los detalles del modo de predicción en la página Predict.
Si tienes varias Edge TPU, puedes seleccionar una específica con el argumento device.
from ultralytics import YOLO
# Load a model
model = YOLO("path/to/yolo26n_full_integer_quant_edgetpu.tflite") # Load an official model or custom model
# Run Prediction
model.predict("path/to/source.png") # Inference defaults to the first TPU
model.predict("path/to/source.png", device="tpu:0") # Select the first TPU
model.predict("path/to/source.png", device="tpu:1") # Select the second TPUEvaluaciones comparativas#
Las cifras siguientes se midieron con Raspberry Pi OS Bookworm de 64 bits y una Coral Edge TPU USB. Muestran únicamente el tiempo de inferencia (sin incluir el preprocesamiento ni el postprocesamiento) y sirven como referencia relativa de la aceleración que proporciona la 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 imagen, pero las aceleraciones relativas entre modelos de Pi y 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 en el modo estándar que la Raspberry Pi 4B.
- La Raspberry Pi 5 es un 30,2 % más rápida en el modo de alta frecuencia que la Raspberry Pi 4B.
- El modo de alta frecuencia es un 28,4 % más rápido que el modo estándar.
Conclusión#
Una Coral Edge TPU convierte una Raspberry Pi en un dispositivo de inferencia competente y de bajo consumo para Ultralytics YOLO26. Exporta tu modelo en una máquina que no sea ARM, conserva el sufijo _edgetpu.tflite y ejecútalo con tflite-runtime en la Pi para obtener inferencia acelerada en el edge. Para consultar más opciones de implementación, consulta la guía de Raspberry Pi.
Preguntas frecuentes#
La Coral Edge TPU es un dispositivo compacto que añade un coprocesador Edge TPU a tu sistema. Este coprocesador permite realizar inferencia de ML de alto rendimiento y bajo consumo, especialmente optimizada para modelos TensorFlow Lite. En una Raspberry Pi, acelera la inferencia mucho más allá de lo que consigue la CPU por sí sola, 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, a continuación, 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 de Edge TPU.
Sí. Ejecuta la exportación en Google Colab, una máquina Linux x86_64 o el contenedor Docker de Ultralytics; también puedes utilizar Ultralytics Platform. A continuación se explica cómo exportar con Python y CLI:
Exportación del modelofrom ultralytics import YOLO # Load a model model = YOLO("path/to/model.pt") # Load an official model or custom model # Export the model model.export(format="edgetpu")Para obtener más información, consulta la documentación del modo Export.
Si tienes TensorFlow instalado y necesitas cambiar a
tflite-runtime, desinstala primero TensorFlow:pip uninstall tensorflow tensorflow-aarch64A continuación, instala o actualiza
tflite-runtime:pip install -U tflite-runtimePara obtener instrucciones detalladas, consulta la sección Ejecuta inferencia en la 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 la Edge TPU:Ejecución del modelofrom ultralytics import YOLO # Load a model model = YOLO("path/to/yolo26n_full_integer_quant_edgetpu.tflite") # Load an official model or custom model # Run Prediction model.predict("path/to/source.png")Encontrarás información completa sobre el modo de predicción en la página Predict.