La navigation autonome est une étape cruciale pour les systèmes robotiques. L'un des éléments essentiels de la navigation des robots mobiles autonomes (AMR) est le « SLAM visuel », ou localisation et cartographie simultanées par vision. Le SLAM visuel est une technique qui utilise les images capturées par une caméra pour cartographier simultanément l'environnement et estimer la position du robot. L'atterrisseur Phoenix, le rover Opportunity et l'hélicoptère Ingenuity utilisés pour l'exploration de Mars utilisent des algorithmes SLAM visuels pour la navigation et l'atterrissage autonomes. Parmi les autres applications, citons l'aspiration, l'endoscopie et les robots aériens, terrestres et sous-marins sans pilote, où les machines automatisent les tâches.
Le SLAM visuel nécessite une grande puissance de calcul pour estimer les poses et générer une carte à partir des images acquises par une caméra. La majorité des algorithmes SLAM visuel (VSLAM) utilisent la puissance du processeur, ce qui limite l'estimation des poses et la création de cartes en temps réel. Isaac ROS (Robot Operating System), VSLAM et Nvblox sont des paquets ROS2 accélérés par GPU qui aident à estimer les poses et à créer la carte de l'environnement environnant pour la navigation des robots mobiles autonomes en temps réel. Des expériences sont menées pour voir dans quelle mesure Isaac ROS VSLAM et Nvblox fonctionnent avec les caméras Realsense pour la navigation autonome des AMR.
La figure 1 illustre le fonctionnement et l'intégration du pipeline NVIDIA ISAAC ROS Visual SLAM et Nvblox. Ici, le VSLAM estime les poses et Nvblox reconstruit la carte de l'environnement environnant pour la navigation autonome du robot.
NVIDIA Isaac ROS VSLAMest un package ROS2 qui effectue simultanément la localisation et la cartographie visuelles stéréo. Il calcule l'odométrie visuelle stéréo inertielle à l'aide d'une paire d'images stéréo synchronisées dans le temps et utilise la bibliothèque accélérée par GPU Isaac Elbrus. L'odométrie visuelle inertielle, l'optimisation et la cartographie sont les trois composants d'Isaac ROS VSLAM. L'odométrie visuelle (VO) est une technique permettant d'estimer la position de la caméra par rapport à son point de départ. La pose VO illustrée àla figure 1est estimée par VO. La méthode de localisation et de cartographie visuelles simultanées (VSLAM) s'appuie sur la pose VO et vise à améliorer la qualité des poses VO grâce à la détection de boucles fermées et à l'estimation des poses SLAM à l'aide de parties de l'environnement déjà observées. En plus des données visuelles, Elbrus peut utiliser les mesures d'une unité de mesure inertielle (IMU). Lorsque la VO ne parvient pas à estimer une pose, par exemple en cas de mauvais éclairage ou de longue surface sans relief devant la caméra, elle passe à l'IMU.La figure 1montre les poses SLAM estimées par V-SLAM.
NVIDIA Isaac ROS Nvbloxest un package ROS2 utilisé pour la reconstruction 3D en temps réel de l'environnement autour d'un robot mobile autonome (AMR) à partir d'images de caméra. La reconstruction est destinée à être utilisée par les planificateurs d'itinéraires pour générer un itinéraire de navigation sûr. Nvblox utilise NVIDIA CUDA pour accélérer ce processus et permettre un fonctionnement en temps réel. Ce référentiel contient l'intégration ROS2 pour la bibliothèque principale Nvblox. L'algorithme Nvblox comprend trois composants clés : la fonction de distance signée tronquée (TSDF), le maillage et la fonction de distance signée euclidienne (ESDF). Nvblox utilise une image RVB, une image de profondeur et une pose SLAM comme entrées et génère des maillages pour la visualisation, ainsi qu'une carte de distance par tranches pour la planification de trajectoire. Nvblox génère une carte de distance 2D par tranches et un maillage 3D à partir d'un flux d'images RVB et de profondeur et de la pose correspondante de l'image de profondeur. Le flux d'images RVB, qui est utilisé pour colorer la reconstruction 3D de l'environnement environnant à des fins de visualisation, est facultatif. La tranche de carte de distance 2D montre la distance entre chaque point et l'obstacle reconstruit le plus proche, ainsi qu'un maillage 3D pour la visualisation RVIZ. La reconstruction 3D de l'environnement environnant à des fins de visualisation est facultative. La tranche de carte de distance 2D affiche la distance entre chaque point et l'obstacle reconstruit le plus proche, ainsi qu'un maillage 3D pour la visualisation RVIZ.
L'ensemble du pipeline pour la navigation autonome AMR utilisant Isaac ROS V-SLAM, Nvblox et la pile Nav2 est illustré àla figure 2. Ce pipeline est composé de cinq nœuds : le nœud de caméra Realsense, le nœud Isaac ROS V-SLAM, le nœud Isaac ROS Nvblox, le nœud Nav2 et le nœud Rviz. Le paragraphe suivant explique chaque bloc.
La figure 3montre l'AMR, ce qu'il voit à travers la caméra Realsense qui y est montée, et la carte de nuage de points 3D résultante sous forme de maillage.La figure 4 affiche la carte créée avec l'état cible donné, le chemin prévu et l'AMR arrivant en toute sécurité à l'état cible en suivant le chemin prévu.
Figure 3 : L'image de gauche montre l'AMR dans l'environnement du laboratoire, l'image du milieu montre ce que voit l'AMR et l'image de droite montre la carte 3D générée sous forme de maillage.
Figure 4 : La figure de gauche montre la carte générée avec l'objectif donné, la deuxième figure représente le chemin prévu et la troisième figure de droite montre que l'AMR a atteint l'état d'objectif.
Pour permettre à l'AMR de se déplacer de manière autonome dans le laboratoire, une caméra Intel RealSense a été intégrée aux piles Isaac ROS VSLAM, Isaac ROS Nvblox et Nav2. L'AMR s'est déplacé à l'intérieur d'un environnement de laboratoire à des fins de cartographie et de navigation. Isaac ROS VSLAM a estimé avec succès l'odométrie de l'AMR tout en créant une carte de l'environnement autour de l'AMR. Grâce à l'accélération GPU, les pipelines NVIDIA Isaac ROS VSLAM et Nvblox offrent des performances en temps réel. Simultanément, l'algorithme VSLAM a localisé sa position sur la carte et créé une carte pour une navigation sûre. Nous espérons que la démonstration de nos expériences aidera les ingénieurs en robotique à développer divers produits robotiques commerciaux. Pour plus de détails, vous pouvez contacter les auteurs.
Sagar Dhatrak a obtenu son master en sciences électroniques en 2011 et a soutenu sa thèse de doctorat sur le SLAM visuel monoculaire en 2021. Il occupe actuellement le poste de spécialiste VSLAM chez Einfochips (une société du groupe Arrow) et travaille sur la navigation autonome de robots mobiles autonomes à l'aide du SLAM visuel. Il travaille depuis environ six ans sur des projets liés aux systèmes embarqués et à la robotique.
Naitik Nakrani travaille actuellement comme ingénieur solutions chez Einfochips (une société Arrow), à Ahmedabad. Il est titulaire d'un doctorat et possède plus de 9 ans d'expérience en R&D dans des domaines tels que la robotique, le SLAM, la navigation, la conception de systèmes de contrôle, l'IA/ML, le traitement du signal et la vision par ordinateur. Il travaille actuellement sur divers PoC pour des algorithmes basés sur ROS/ROS2 afin de résoudre des problèmes liés à la conception et au développement de systèmes AMR. Il a de l'expérience dans le domaine des plateformes embarquées, des capteurs de distance, des capteurs de vision, ainsi que du profilage et du benchmarking de systèmes.
Prenez rendez-vous pour une consultation de 30 minutes avec nos experts en solutions automobiles
Prenez rendez-vous pour une consultation de 30 minutes avec notre expert en solutions de gestion de batteries
Prenez rendez-vous pour une consultation de 30 minutes avec nos expertsen solutions industrielles et énergétiques
Prenez rendez-vous pour une consultation de 30 minutes avec nos experts