J’ai développé le projet ArUcO_Vision dans le cadre de ma participation à la Coupe de France de Robotique édition 2024. Ce projet est né de la nécessité de détecter et localiser de manière fiable les codes Aruco dans des images en temps réel, une fonctionnalité essentielle pour améliorer la précision et l’efficacité des robots autonomes lors de la compétition.
Ce projet est entièrement disponible sur mon Github: https://github.com/Florian-BARRE/ArUcO_Vision
Aperçu du projet
ArUcO_Vision a été conçu pour répondre aux défis spécifiques de la Coupe de France de Robotique. Il permet de détecter les marqueurs Aruco et de calculer précisément leurs coordonnées (x, y) par rapport à la caméra du robot. En utilisant une calibration soignée des caméras et des méthodes de traitement d’image efficaces, le projet garantit une localisation précise des codes Aruco, même dans un environnement de compétition complexe.
Caractéristiques principales
- Calibration de la caméra : J’ai utilisé
calibrate_camera.py
avec des images de calibration pour corriger les distorsions des lentilles, ce qui est crucial pour obtenir des mesures précises dans le contexte de la robotique. - Détection des codes Aruco : Le script
main.py
est au cœur du projet, où j’ai programmé la détection en temps réel des marqueurs Aruco, permettant au robot de réagir rapidement et avec précision. - Localisation précise : J’ai intégré des algorithmes qui calculent les coordonnées 2D des codes Aruco, fournissant des informations spatiales essentielles pour la navigation autonome du robot.
- Compression des flux vidéo : Pour garantir que le robot fonctionne de manière fluide en temps réel, j’ai inclus des outils pour compresser les flux vidéo, optimisant ainsi les performances.
- Configuration facile : Le fichier
configuration.py
permet d’ajuster facilement les paramètres de détection et de calibration, ce qui est utile pour s’adapter aux différentes phases de la compétition. - Installation simplifiée : J’ai inclus un fichier
requirements.txt
pour faciliter l’installation des dépendances Python nécessaires, rendant le projet accessible et facile à mettre en œuvre.
Fonctionnement
- Initialisation : Le projet commence par la calibration de la caméra pour assurer que toutes les détections soient aussi précises que possible.
- Détection et localisation : Le système scanne en continu les images pour identifier et localiser les marqueurs Aruco, informations indispensables pour que le robot puisse naviguer de manière autonome.
- Traitement en temps réel : Les flux vidéo sont traités et compressés en temps réel pour permettre au robot de réagir instantanément aux changements dans son environnement.
Mise en route
- Prérequis : Assurez-vous d’avoir Python 3.x installé. Travailler avec des environnements virtuels est recommandé pour faciliter la gestion des dépendances.
- Installation : Clonez le projet depuis le dépôt, configurez un environnement virtuel, activez-le, et installez les dépendances à partir de
requirements.txt
. - Calibration : Utilisez
calibrate_camera.py
avec les images de calibration pour configurer le système avant la compétition. - Exécution de la détection : Lancez
main.py
pour démarrer la détection des codes Aruco et permettre au robot de naviguer en temps réel.
Conclusion
Le projet ArUcO_Vision a été conçu pour répondre aux besoins spécifiques de la Coupe de France de Robotique 2024. Grâce à ce système, les robots participants peuvent détecter et localiser avec précision les marqueurs Aruco, ce qui est crucial pour réussir les défis de la compétition. Mon objectif était de créer un outil fiable et adaptable pour maximiser les performances du robot lors de l’événement.