Exportación a Rockchip RKNN para modelos Ultralytics YOLO26
Al implementar modelos de visión artificial en dispositivos integrados, especialmente aquellos equipados con procesadores Rockchip, es esencial contar con un formato de modelo compatible. Exportar modelos de Ultralytics YOLO26 al formato RKNN garantiza un rendimiento optimizado y compatibilidad con el hardware de Rockchip. Esta guía te explicará cómo convertir tus modelos YOLO26 al formato RKNN, permitiendo una implementación eficiente en plataformas Rockchip.
Esta guía ha sido probada con Radxa Rock 5B, basado en el Rockchip RK3588, y Radxa Zero 3W, basado en el Rockchip RK3566. Se espera que funcione en otros dispositivos basados en Rockchip que sean compatibles con rknn-toolkit2, como RK3576, RK3568, RK3562, RK2118 y RV1126B. Los objetivos que solo admiten inferencia INT8 (RV1103, RV1106, RV1103B, RV1106B) aún no son compatibles, ya que la exportación RKNN de Ultralytics actualmente solo genera modelos FP16.
¿Qué es Rockchip?
Reconocida por ofrecer soluciones versátiles y energéticamente eficientes, Rockchip diseña sistemas en chip (SoCs) avanzados que impulsan una amplia gama de electrónica de consumo, aplicaciones industriales y tecnologías de IA. Con una arquitectura basada en ARM, unidades de procesamiento neuronal (NPU) integradas y soporte multimedia de alta resolución, los SoCs de Rockchip permiten un rendimiento de vanguardia para dispositivos como tabletas, televisores inteligentes, sistemas IoT y aplicaciones de IA en el borde. Empresas como Radxa, ASUS, Pine64, Orange Pi, Odroid, Khadas y Banana Pi ofrecen una variedad de productos basados en SoCs de Rockchip, extendiendo aún más su alcance e impacto en diversos mercados.
RKNN Toolkit
El RKNN Toolkit es un conjunto de herramientas y bibliotecas proporcionado por Rockchip para facilitar la implementación de modelos de aprendizaje profundo en sus plataformas de hardware. RKNN, o Rockchip Neural Network, es el formato propietario utilizado por estas herramientas. Los modelos RKNN están diseñados para aprovechar al máximo la aceleración de hardware proporcionada por la NPU (unidad de procesamiento neuronal) de Rockchip, garantizando un alto rendimiento en tareas de IA en dispositivos como RK3588, RK3566, RV1103, RV1106 y otros sistemas basados en Rockchip.
Características clave de los modelos RKNN
Los modelos RKNN ofrecen varias ventajas para su implementación en plataformas Rockchip:
- Optimizado para NPU: Los modelos RKNN están específicamente optimizados para ejecutarse en las NPU de Rockchip, lo que garantiza el máximo rendimiento y eficiencia.
- Baja latencia: El formato RKNN minimiza la latencia de inferencia, lo cual es fundamental para aplicaciones en tiempo real en dispositivos de borde.
- Personalización específica de la plataforma: Los modelos RKNN se pueden adaptar a plataformas Rockchip específicas, lo que permite un mejor aprovechamiento de los recursos de hardware.
- Eficiencia energética: Al aprovechar el hardware de NPU dedicado, los modelos RKNN consumen menos energía que el procesamiento basado en CPU o GPU, lo que prolonga la duración de la batería en dispositivos portátiles.
Instalar el SO en hardware Rockchip
El primer paso después de obtener tu dispositivo basado en Rockchip es instalar un sistema operativo para que el hardware pueda arrancar en un entorno funcional. En esta guía, te indicaremos las guías de inicio rápido de los dos dispositivos que probamos, que son Radxa Rock 5B y Radxa Zero 3W.
Exportar a RKNN: convirtiendo tu modelo YOLO26
Exporta un modelo Ultralytics YOLO26 al formato RKNN y ejecuta la inferencia con el modelo exportado.
Asegúrate de utilizar un PC con Linux basado en x86 para exportar el modelo a RKNN, ya que la exportación en dispositivos basados en Rockchip (ARM64) no es compatible.
Instalación
Para instalar los paquetes necesarios, ejecuta:
!!! Tip "Instalación"
# Install the required package for YOLO26
pip install ultralyticsPara 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 alguna dificultad al instalar los paquetes necesarios para YOLO26, consulta nuestra guía de problemas comunes para obtener soluciones y consejos.
Uso
La exportación actualmente solo es compatible con modelos de detección. En el futuro se añadirá soporte para más modelos.
from ultralytics import YOLO
# Load the YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to RKNN format
# 'name' can be one of rk3588, rk3576, rk3566, rk3568, rk3562, rk2118, rv1126b (FP16). INT8-only targets rv1103, rv1106, rv1103b, rv1106b are not yet supported.
model.export(format="rknn", name="rk3588") # creates '/yolo26n_rknn_model'Argumentos de exportación
| Argumento | Tipo | Predeterminado | Descripción |
|---|---|---|---|
format | str | 'rknn' | Formato de destino para el modelo exportado, que define la compatibilidad con varios entornos de implementación. |
imgsz | int o tuple | 640 | Tamañ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. |
batch | int | 1 | Especifica 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. |
name | str | 'rk3588' | Especifica el objetivo de Rockchip. Compatible con FP16: rk3588, rk3576, rk3566, rk3568, rk3562, rk2118, rv1126b. Los objetivos solo para INT8 (rv1103, rv1106, rv1103b, rv1106b) aún no son compatibles. |
device | str | None | Especifica el dispositivo para la exportación: GPU (device=0), CPU (device=cpu). |
Asegúrate de utilizar una máquina Linux x86 al exportar a RKNN.
Para más detalles sobre el proceso de exportación, visita la página de documentación de Ultralytics sobre exportación.
Implementación de modelos YOLO26 RKNN exportados
Una vez que hayas exportado con éxito tus modelos Ultralytics YOLO26 al formato RKNN, el siguiente paso es implementar estos modelos en dispositivos basados en Rockchip.
Instalación
Para instalar los paquetes necesarios, ejecuta:
!!! Tip "Instalación"
# Install the required package for YOLO26
pip install ultralyticsUso
from ultralytics import YOLO
# Load the exported RKNN model
rknn_model = YOLO("./yolo26n_rknn_model")
# Run inference
results = rknn_model("https://ultralytics.com/images/bus.jpg")Si encuentras un mensaje de registro que indica que la versión del tiempo de ejecución de RKNN no coincide con la versión del RKNN Toolkit y la inferencia falla, sustituye /usr/lib/librknnrt.so con el archivo librknnrt.so oficial.

Aplicaciones en el mundo real
Los dispositivos basados en Rockchip con modelos YOLO26 RKNN se pueden utilizar en diversas aplicaciones:
- Vigilancia inteligente: Implementa sistemas de detección de objetos eficientes para el monitoreo de seguridad con bajo consumo de energía.
- Automatización industrial: Implementa el control de calidad y la detección de defectos directamente en dispositivos integrados.
- Análisis minorista: Rastrea el comportamiento del cliente y la gestión de inventario en tiempo real sin dependencia de la nube.
- Agricultura inteligente: Monitorea la salud de los cultivos y detecta plagas utilizando visión artificial en agricultura.
- Robótica autónoma: Habilita la navegación basada en visión y la detección de obstáculos en plataformas con recursos limitados.
Benchmarks
Los puntos de referencia de YOLO26 a continuación fueron ejecutados por el equipo de Ultralytics en Radxa Rock 5B basado en Rockchip RK3588 con el formato de modelo rknn, midiendo velocidad y precisión.
| Modelo | Formato | Estado | Tamaño (MB) | mAP50-95(B) | Tiempo de inferencia (ms/im) |
|---|---|---|---|---|---|
| YOLO26n | rknn | ✅ | 7.1 | 0.479 | 65.7 |
| YOLO26s | rknn | ✅ | 20.9 | 0.571 | 99.2 |
| YOLO26m | rknn | ✅ | 42.5 | 0.610 | 235.3 |
| YOLO26l | rknn | ✅ | 52.1 | 0.630 | 280.5 |
| YOLO26x | rknn | ✅ | 112.2 | 0.666 | 669.1 |
Evaluado con ultralytics 8.4.23
La validación para los puntos de referencia anteriores se realizó utilizando el conjunto de datos COCO128. El tiempo de inferencia no incluye el pre/post-procesamiento.
Resumen
En esta guía, has aprendido a exportar modelos Ultralytics YOLO26 al formato RKNN para mejorar su implementación en plataformas Rockchip. También se te presentó el RKNN Toolkit y las ventajas específicas de utilizar modelos RKNN para aplicaciones de IA en el borde.
La combinación de Ultralytics YOLO26 y la tecnología NPU de Rockchip proporciona una solución eficiente para ejecutar tareas avanzadas de visión artificial en dispositivos integrados. Este enfoque permite detección de objetos en tiempo real y otras aplicaciones de IA de visión con un consumo mínimo de energía y un alto rendimiento.
Para más detalles sobre el uso, visita la documentación oficial de RKNN.
Además, si deseas saber más sobre otras integraciones de Ultralytics YOLO26, visita nuestra página de guía de integración. Encontrarás muchos recursos e ideas útiles allí.
Preguntas frecuentes
¿Cómo exporto mi modelo Ultralytics YOLO al formato RKNN?
Puedes exportar fácilmente tu modelo Ultralytics YOLO al formato RKNN utilizando el método export() en el paquete de Python de Ultralytics o a través de la interfaz de línea de comandos (CLI). Asegúrate de usar un PC con Linux basado en x86 para el proceso de exportación, ya que los dispositivos ARM64 como Rockchip no son compatibles para esta operación. Puedes especificar la plataforma Rockchip de destino utilizando el argumento name, como rk3588, rk3566, u otros. Este proceso genera un modelo RKNN optimizado listo para la implementación en tu dispositivo Rockchip, aprovechando su unidad de procesamiento neuronal (NPU) para una inferencia acelerada.
from ultralytics import YOLO
# Load your YOLO model
model = YOLO("yolo26n.pt")
# Export to RKNN format for a specific Rockchip platform
model.export(format="rknn", name="rk3588")¿Cuáles son los beneficios de usar modelos RKNN en dispositivos Rockchip?
Los modelos RKNN están diseñados específicamente para aprovechar las capacidades de aceleración de hardware de las unidades de procesamiento neuronal (NPU) de Rockchip. Esta optimización da como resultado velocidades de inferencia significativamente más rápidas y una latencia reducida en comparación con la ejecución de formatos de modelo genéricos como ONNX o TensorFlow Lite en el mismo hardware. El uso de modelos RKNN permite un uso más eficiente de los recursos del dispositivo, lo que lleva a un menor consumo de energía y un mejor rendimiento general, especialmente crítico para aplicaciones en tiempo real en dispositivos de borde. Al convertir tus modelos Ultralytics YOLO a RKNN, puedes lograr un rendimiento óptimo en dispositivos equipados con SoCs de Rockchip como el RK3588, RK3566 y otros.
¿Puedo implementar modelos RKNN en dispositivos de otros fabricantes como NVIDIA o Google?
Los modelos RKNN están optimizados específicamente para plataformas Rockchip y sus NPU integradas. Aunque técnicamente puedes ejecutar un modelo RKNN en otras plataformas utilizando emulación de software, no te beneficiarás de la aceleración de hardware proporcionada por los dispositivos Rockchip. Para un rendimiento óptimo en otras plataformas, se recomienda exportar tus modelos Ultralytics YOLO a formatos diseñados específicamente para esas plataformas, como TensorRT para GPU NVIDIA o TensorFlow Lite para Edge TPU de Google. Ultralytics admite la exportación a una amplia gama de formatos, lo que garantiza la compatibilidad con varios aceleradores de hardware.
¿Qué plataformas Rockchip son compatibles para la implementación de modelos RKNN?
La exportación de Ultralytics YOLO al formato RKNN actualmente admite plataformas Rockchip con inferencia FP16: RK3588, RK3576, RK3566, RK3568, RK3562, RK2118 y RV1126B. Los objetivos solo para INT8 (RV1103, RV1106, RV1103B, RV1106B) aún no son compatibles porque sus NPU requieren cuantificación, lo cual está en la hoja de ruta. Estas plataformas se encuentran comúnmente en dispositivos de fabricantes como Radxa, ASUS, Pine64, Orange Pi, Odroid, Khadas y Banana Pi, lo que te permite implementar tus modelos RKNN optimizados en una variedad de dispositivos basados en Rockchip, desde computadoras de placa única hasta sistemas industriales.
¿Cómo se compara el rendimiento de los modelos RKNN con otros formatos en dispositivos Rockchip?
Los modelos RKNN generalmente superan a otros formatos como ONNX o TensorFlow Lite en dispositivos Rockchip debido a su optimización para las NPU de Rockchip. Por ejemplo, los puntos de referencia en Radxa Rock 5B (RK3588) muestran que YOLO26n en formato RKNN logra un tiempo de inferencia de 99.5 ms/imagen, significativamente más rápido que otros formatos. Esta ventaja de rendimiento es constante en varios tamaños de modelo YOLO26, como se demuestra en la sección de puntos de referencia. Al aprovechar el hardware de NPU dedicado, los modelos RKNN minimizan la latencia y maximizan el rendimiento, lo que los hace ideales para aplicaciones en tiempo real en dispositivos de borde basados en Rockchip.