Exportation RKNN pour les modèles Ultralytics YOLO11
Lors du déploiement de modèles de vision par ordinateur sur des dispositifs embarqués, en particulier ceux équipés de processeurs Rockchip, il est essentiel de disposer d'un format de modèle compatible. L'exportation des Ultralytics YOLO11 vers le format RKNN permet d'optimiser les performances et la compatibilité avec le matériel Rockchip. Ce guide vous aidera à convertir vos modèles YOLO11 au format RKNN, ce qui permettra un déploiement efficace sur les plates-formes Rockchip.
Note
Ce guide a été testé avec Radxa Rock 5B qui est basé sur Rockchip RK3588 et Radxa Zero 3W qui est basé sur Rockchip RK3566. Il devrait fonctionner avec d'autres appareils basés sur la puce Rockchip qui prend en charge rknn-toolkit2 tels que RK3576, RK3568, RK3562, RV1103, RV1106, RV1103B, RV1106B et RK2118.
Qu'est-ce que Rockchip ?
Réputé pour fournir des solutions polyvalentes et économes en énergie, Rockchip conçoit des systèmes sur puce (SoC) avancés qui alimentent une large gamme d'appareils électroniques grand public, d'applications industrielles et de technologies d'IA. Avec une architecture basée sur ARM, des unités de traitement neuronal (NPU) intégrées et une prise en charge multimédia haute résolution, les SoC de Rockchip permettent des performances de pointe pour des appareils tels que les tablettes, les téléviseurs intelligents, les systèmes IoT et les applications d'IA de pointe. Des entreprises telles que Radxa, ASUS, Pine64, Orange Pi, Odroid, Khadas et Banana Pi proposent une variété de produits basés sur les SoC de Rockchip, élargissant encore leur portée et leur impact sur divers marchés.
Boîte à outils RKNN
La boîte à outils RKNN est un ensemble d'outils et de bibliothèques fournis par Rockchip pour faciliter le déploiement de modèles d'apprentissage profond sur leurs plates-formes matérielles. RKNN, ou Rockchip Neural Network, est le format propriétaire utilisé par ces outils. Les modèles RKNN sont conçus pour tirer pleinement parti de l'accélération matérielle fournie par la NPU (Neural Processing Unit) de Rockchip, ce qui garantit des performances élevées dans les tâches d'IA sur des appareils tels que RK3588, RK3566, RV1103, RV1106 et d'autres systèmes alimentés par Rockchip.
Principales caractéristiques des modèles RKNN
Les modèles RKNN offrent plusieurs avantages pour le déploiement sur les plates-formes Rockchip :
- Optimisé pour NPU: Les modèles RKNN sont spécifiquement optimisés pour fonctionner sur les NPU de Rockchip, ce qui garantit des performances et une efficacité maximales.
- Faible latence: Le format RKNN minimise la latence de l'inférence, ce qui est essentiel pour les applications en temps réel sur les appareils périphériques.
- Personnalisation spécifique à la plate-forme: Les modèles RKNN peuvent être adaptés à des plates-formes Rockchip spécifiques, ce qui permet une meilleure utilisation des ressources matérielles.
Flash OS to Rockchip hardware
La première étape après avoir mis la main sur un appareil à base de Rockchip est de flasher un système d'exploitation afin que le matériel puisse démarrer dans un environnement fonctionnel. Dans ce guide, nous vous indiquerons les guides de démarrage des deux appareils que nous avons testés, à savoir Radxa Rock 5B et Radxa Zero 3W.
Exporter vers RKNN : Conversion de votre modèle YOLO11
Exporter un modèle Ultralytics YOLO11 au format RKNN et exécuter l'inférence avec le modèle exporté.
Note
Veillez à utiliser un PC Linux basé sur X86 pour exporter le modèle vers RKNN, car l'exportation sur des appareils basés sur Rockchip (ARM64) n'est pas prise en charge.
Installation
Pour installer les paquets nécessaires, exécutez :
Pour des instructions détaillées et les meilleures pratiques liées au processus d'installation, consultez notre guide d'installationUltralytics . Lors de l'installation des paquets requis pour YOLO11, si vous rencontrez des difficultés, consultez notre guide des problèmes courants pour obtenir des solutions et des conseils.
Utilisation
Note
L'exportation n'est actuellement possible que pour les modèles de détection. D'autres modèles seront pris en charge à l'avenir.
Utilisation
from ultralytics import YOLO
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
# Export the model to RKNN format
# Here name can be one of rk3588, rk3576, rk3566, rk3568, rk3562, rv1103, rv1106, rv1103b, rv1106b, rk2118
model.export(format="rknn", args={"name": "rk3588"}) # creates '/yolo11n_rknn_model'
Pour plus de détails sur le processus d'exportation, consultez la page de documentationUltralytics sur l'exportation.
Déploiement des modèles RKNN exportés YOLO11
Une fois que vous avez réussi à exporter vos modèles Ultralytics YOLO11 au format RKNN, l'étape suivante consiste à déployer ces modèles sur des appareils basés sur Rockchip.
Installation
Pour installer les paquets nécessaires, exécutez :
Utilisation
Utilisation
Critères de référence
YOLO11 Les tests de référence ci-dessous ont été effectués par l'équipe Ultralytics sur Radxa Rock 5B basé sur Rockchip RK3588 avec rknn
format de modèle vitesse de mesure et précision.
Modèle | Format | Statut | Taille (MB) | mAP50-95(B) | Temps d'inférence (ms/im) |
---|---|---|---|---|---|
YOLO11n | rknn | âś… | 7.4 | 0.61 | 99.5 |
YOLO11s | rknn | âś… | 20.7 | 0.741 | 122.3 |
YOLO11m | rknn | âś… | 41.9 | 0.764 | 298.0 |
YOLO11l | rknn | âś… | 53.3 | 0.72 | 319.6 |
YOLO11x | rknn | âś… | 114.6 | 0.828 | 632.1 |
Note
La validation du benchmark ci-dessus a été effectuée à l'aide de l'ensemble de données coco8
Résumé
Dans ce guide, vous avez appris à exporter les modèles Ultralytics YOLO11 au format RKNN afin d'améliorer leur déploiement sur les plates-formes Rockchip. Vous avez également découvert la boîte à outils RKNN et les avantages spécifiques de l'utilisation des modèles RKNN pour les applications d'intelligence artificielle.
Pour plus de détails sur l'utilisation, consultez la documentation officielle de RKNN.
Par ailleurs, si vous souhaitez en savoir plus sur d'autres intégrations de Ultralytics YOLO11 , visitez notre page de guide d'intégration. Vous y trouverez de nombreuses ressources et informations utiles.