Après la création d’un modèle auquel on a appris à exécuter une tâche (reconnaître des formes géométriques), Frédéric nous propose de déployer ce modèle sur le module d’IA Hailo, sur un Raspberry Pi 5. Cet article est le dernier de la série proposée par Frédéric JELMONI alias Fred Robotic et vice-Président de l’Association de robotique Caliban.
Au sommaire :
Déploiement et tests d’un modèle d’IA
Dernière étape !! le test final !!
Pré-requis
Pré-requis pour tester son IA fraîchement compilée :
- Installation et configuration du Raspberry PI5 : Assurez-vous que votre Raspberry PI5 est correctement installé et configuré.
- Installation des exemples proposés par HAILO : Ces exemples permettent de récupérer les dépendances nécessaires ainsi que l’environnement d’exécution.
- Création d’un fichier de configuration JSON : Ce fichier définira les paramètres requis par votre application.
- Utilisation du fichier .hef préalablement copié sur le Raspberry PI pour l’utiliser lors de l’exécution.
Installer et configurer correctement son Raspberry PI5
Documentation officielle :
https://www.raspberrypi.com/documentation/accessories/ai-hat-plus.html
https://www.raspberrypi.com/documentation/computers/ai.html
Un bref résumé ici :
https://github.com/FredJ21/RPI5_AI_Hailo_tests/blob/main/Doc/2_config_et_tests.md
Installer les exemples proposés par HAILO
1 2 3 4 |
git clone https://github.com/hailo-ai/hailo-rpi5-examples.git cd hailo-rpi5-examples ./install.sh |
Le fichier de configuration
Le fichier de configuration JSON est utilisé pour paramétrer le modèle de détection d’objets.
3 paramètres :
- detection_threshold : 0.5 → Seulement les objets avec une confiance ≥ 50% seront détectés.
- max_boxes : 200 → Limite le nombre d’objets détectés à 200 par image.
- labels → Liste des classes d’objets que le modèle peut détecter
Nous devons créer ce fichier :
1 2 3 4 5 6 7 8 9 10 11 12 13 |
vi my_labels.json { "detection_threshold": 0.5, "max_boxes":200, "labels": [ "unlabeled", "hexagon", "round", "square", "triangle" ] } |
Exécution
Afin de faciliter l’exécution, j’ai créé un petit script Shell sur mon dépôt GitHub :
https://github.com/FredJ21/RPI5_AI_Hailo_tests
Dans le répertoire « Scripts »
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
vi test_my_IA.sh # chemin du projet MY_REP=/home/pi/FRED/RPI5_AI_Hailo_tests/Results/20250203_result_from_210125_4_shapes_test_v2 # nom du fichier de configuration MY_LAB=my_labels.json # chemin vers le fichier .hef MY_HEF=hailo_result_1/yolov8s_with_test_img.hef # chargement de l’environnement cd /home/pi/FRED/hailo-rpi5-examples source setup_env.sh # lancement de la caméra et de la détection python3 basic_pipelines/detection.py \ --hef-path ${MY_REP}/${MY_HEF} \ --labels-json ${MY_REP}/${MY_LAB} \ --input rpi |
Let’s GO !!!
1 |
./test_my_IA.sh |
![]() |
![]() |
![]() |
![]() |
Test final réussi !
La puce HAILO8 exécute le modèle d’IA avec une très bonne précision. La reconnaissance des objets s’effectue en temps réel, démontrant la puissance et l’efficacité du système.
Tous les paramètres et configurations se sont révélés corrects, ce qui confirme la fiabilité de notre pipeline de déploiement et l’optimisation du fichier .hef.
C’est une validation concrète de notre travail de compilation et d’intégration sur le Raspberry PI5 !
Vidéo
Nous avons donc décrit les grandes étapes de la mise en oeuvre d’une intelligence artificielle de traitement vidéo pour la reconnaissance d’objet par Rasberry PI5
- création du Dataset,
- entraînement avec Yolo,
- conversion avec le compilateur Hailo
- déploiement sur le Raspberry
Il est vrai que ce travail est assez fastidieux et plutôt chronophage. Le processus d’apprentissage de l’IA peut être perturbé par de nombreuses raisons et ne pas donner le résultat escompté. Certains biais peuvent rapidement parvenir selon le choix et/ou la qualité des images de son Dataset. Les erreurs seront alors visibles uniquement lors des tests finaux. Il faudra alors reprendre son travail dès le départ.
De plus, ces traitements demandent de posséder une grosse machine équipée d’un CPU et d’un GPU puissants pour réaliser les calculs, même si certaines solutions restent possibles dans le cloud.
Mais l’arrivée des modules IA pour le Raspberry PI est une vraie révolution ! La puce Hailo est conçue pour accélérer l’exécution des réseaux de neurones en prenant en charge les calculs d’inférence, ce qui permet d’analyser rapidement des vidéos ou des images en temps réel. Cela se traduit par une faible consommation d’énergie et une réduction de la charge sur le processeur principal du Raspberry Pi, rendant ainsi le dispositif plus efficace pour des applications d’intelligence artificielle embarquée.
… et toujours au format carte de crédit !
https://www.raspberrypi.com/documentation/accessories/ai-hat-plus.html
https://www.raspberrypi.com/documentation/computers/ai.html
https://github.com/hailo-ai/hailo-rpi5-examples
https://github.com/hailo-ai/hailo_model_zoo
https://hailo.ai
https://hailo.ai/developer-zone/software-downloads
https://hailo.ai/developer-zone/documentation/hailo-sw-suite-2025-01
et sur mon GitHub :
https://github.com/FredJ21/RPI5_AI_Hailo_tests
https://github.com/FredJ21/RPI5_AI_Hailo_tests/tree/main/Doc
Conclusion de framboise314
Merci à Frédéric pour cette série d’articles qui permettront à ceux qui sont intéressés de développer leur propre modèle d’IA pour le module Hailo sur un Raspberry Pi 5.
Si vous vous lancez dans l’aventure, n’hésitez pas à faire des retours dans les commentaires ci dessous et si vous réalisez une vidéo de démo, mettez un lien vers la vidéo ou envoyez là pour qu’elle soit ajoutée à l’article.
Merci à Kubii qui a fourni une grande partie du matériel utilisé à l’occasion de cette réalisation, et en particulier le module Hailo.
Les articles de cette trilogie :