9.9 Estimation de pose 3D
Référence d'utilisation Docker : Module 3.7 Docker
Lien officiel d'estimation de pose 3D Isaac ROS : https://nvidia-isaac-ros.github.io/repositories_and_packages/isaac_ros_pose_estimation/isaac_ros_centerpose/index.html
Vue d'ensemble

Isaac ROS Pose Estimation inclut trois principaux packages ROS 2 pour les workflows de pose d'objets à 6 DoF. Le tableau ci-dessous résume les différences entre eux.
| Package | Nouvel objet sans réentraînement | Support TAO | Vitesse relative | Qualité relative | Meilleur usage |
|---|---|---|---|---|---|
isaac_ros_foundationpose | Oui | N/A | Rapide | Meilleur | Estimation et suivi de pose zero-shot pour objets non vus |
isaac_ros_dope | Non | Non | Le plus rapide | Bon | Estimation de pose mature et légère pour objets connus |
isaac_ros_centerpose | Non | Oui | Plus rapide | Meilleur | Estimation de pose d'objets connus avec support d'entraînement NVIDIA TAO |
Ces packages utilisent le GPU pour accélérer le raisonnement DNN afin d'estimer l'attitude de l'objet. La fonction de capteur peut utiliser les prédictions de sortie pour s'intégrer à la profondeur correspondante, fournissant ainsi l'attitude 3D et la distance de l'objet pour la navigation ou l'opération.
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 :
ros2 launch isaac_ros_examples isaac_ros_examples.launch.py launch_fragments:=centerpose,centerpose_visualizer interface_specs_file:=${ISAAC_ROS_WS}/isaac_ros_assets/isaac_ros_centerpose/quickstart_interface_specs.json model_name:=centerpose_shoe model_repository_paths:=[${ISAAC_ROS_WS}/isaac_ros_assets/models]Ouvrez 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 bag play -l ${ISAAC_ROS_WS}/isaac_ros_assets/isaac_ros_centerpose/quickstart.bagVoir 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 pour voir le résultat :

ros2 run rqt_image_view rqt_image_view /centerpose/image_visualized