9.6 Segmentation d'images

Référence d'utilisation Docker : Module 3.7 Docker

Lien web officiel de la segmentation d'images Isaac ROS : https://nvidia-isaac-ros.github.io/repositories_and_packages/isaac_ros_image_segmentation/index.html

Vue d'ensemble

La segmentation d'images Isaac ROS contient un package ROS pour la segmentation sémantique d'images.

Ces packages fournissent une classification au niveau du pixel des images d'entrée en exécutant une inférence accélérée par GPU sur le modèle DNN. Chaque pixel qui entre dans une image est projeté pour appartenir à un groupe défini de catégories. La fonction de capteur peut utiliser les prédictions de sortie pour comprendre la position spatiale de chaque catégorie dans une image bidimensionnelle ou pour l'intégrer avec la position de profondeur correspondante dans une scène tridimensionnelle.

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.

bash

cd ${ISAAC_ROS_WS}/src

cd ${ISAAC_ROS_WS}/src/isaac_ros_common && \
./scripts/run_dev.sh

Exécutez la commande de lancement suivante :

bash

ros2 launch isaac_ros_examples isaac_ros_examples.launch.py launch_fragments:=segformer interface_specs_file:=${ISAAC_ROS_WS}/isaac_ros_assets/isaac_ros_segformer/quickstart_interface_specs.json model_name:=peoplesemsegformer model_repository_paths:=[${ISAAC_ROS_WS}/isaac_ros_assets/models]

Ouvrez un deuxième terminal et entrez dans le conteneur.

bash

cd ${ISAAC_ROS_WS}/src/isaac_ros_common && \
./scripts/run_dev.sh

Exécutez la commande suivante :

bash

ros2 bag play -l isaac_ros_assets/isaac_ros_segformer/segformer_sample_data

Voir le résultat

Ouvrez le troisième terminal et entrez dans le conteneur.

bash

cd ${ISAAC_ROS_WS}/src/isaac_ros_common && \
./scripts/run_dev.sh

Exécutez la commande suivante pour voir le résultat :

bash

ros2 run rqt_image_view rqt_image_view /segformer/colored_segmentation_mask