9.10 Visual SLAM
Référence d'utilisation Docker : Module 3.7 Docker
Lien officiel d'Isaac ROS Visual SLAM : https://nvidia-isaac-ros.github.io/repositories_and_packages/isaac_ros_visual_slam/index.html
Vue d'ensemble

Isaac ROS Vision SLAM fournit un package logiciel ROS 2 de première classe et hautes performances pour VSLAM. Le package utilise une ou plusieurs caméras stéréo et une IMU optionnelle pour estimer le kilométrage et l'utilise comme entrée de navigation. Il utilise l'accélération GPU pour fournir des résultats en temps réel et à faible latence dans les applications robotiques. VSLAM fournit une source supplémentaire de kilométrage pour les robots mobiles (au sol) et peut servir de source principale de kilométrage pour les drones.
Démarrage rapide
Pour simplifier le développement, nous utilisons principalement les images Docker Isaac ROS Dev et y effectuons des démonstrations d'impact. La démonstration ne nécessite pas l'installation d'un dispositif de caméra pour simuler les flux de données de la caméra en lisant le fichier rosbag.
Si vous prévoyez d'exécuter le workflow sur du matériel réel ou avec une caméra connectée, consultez la documentation officielle Isaac ROS pour connaître les configurations de caméra prises en charge.
Ouvrez un terminal, déplacez-vous dans l'espace de travail et entrez dans le conteneur de développement Isaac ROS.
cd ${ISAAC_ROS_WS}/src
cd ${ISAAC_ROS_WS}/src/isaac_ros_common && \
./scripts/run_dev.shExécutez la commande de lancement suivante :
rviz2 -d $(ros2 pkg prefix isaac_ros_visual_slam --share)/rviz/default.cfg.rvizOuvrez un deuxième terminal et entrez dans le conteneur.
cd ${ISAAC_ROS_WS}/src/isaac_ros_common && \
./scripts/run_dev.shExécutez la commande suivante :
ros2 launch isaac_ros_examples isaac_ros_examples.launch.py launch_fragments:=visual_slam \
interface_specs_file:=${ISAAC_ROS_WS}/isaac_ros_assets/isaac_ros_visual_slam/quickstart_interface_specs.json \
rectified_images:=falseVoir le résultat
Ouvrez le troisième terminal et entrez dans le conteneur.
cd ${ISAAC_ROS_WS}/src/isaac_ros_common && \
./scripts/run_dev.shExécutez la commande suivante, comme indiqué dans rviz2. Si aucune image n'apparaît, vous pouvez exécuter cette commande à nouveau.

ros2 bag play ${ISAAC_ROS_WS}/isaac_ros_assets/isaac_ros_visual_slam/quickstart_bag --remap \
/front_stereo_camera/left/image_raw:=/left/image_rect \
/front_stereo_camera/left/camera_info:=/left/camera_info_rect \
/front_stereo_camera/right/image_raw:=/right/image_rect \
/front_stereo_camera/right/camera_info:=/right/camera_info_rect \
/back_stereo_camera/left/image_raw:=/rear_left/image_rect \
/back_stereo_camera/left/camera_info:=/rear_left/camera_info_rect \
/back_stereo_camera/right/image_raw:=/rear_right/image_rect \
/back_stereo_camera/right/camera_info:=/rear_right/camera_info_rect