9.8 Détection d'objets

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

Lien réseau du vérificateur d'objets Isaac ROS : https://nvidia-isaac-ros.github.io/repositories_and_packages/isaac_ros_object_detection/index.html

Vue d'ensemble

La détection d'objets Isaac ROS inclut des packages logiciels dans ROS 2 pour effectuer la détection d'objets. Isaac ros rtdetr, Isaac ros dectnet et isaac ros yolov8 fournissent respectivement une méthode de classification spatiale des images d'entrée à l'aide de boîtes englobantes. La classification est mise en œuvre par le modèle d'accélération GPU de la structure correspondante :

isac ros rtdetr : modèle RT-DTR

isac ros dectnet : modèle DetectNet

isac ros yolov8 : modèle YOLOv8

Les prédictions de sortie peuvent être utilisées pour comprendre l'existence d'objets dans les images et leur localisation spatiale.

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:=detectnet interface_specs_file:=${ISAAC_ROS_WS}/isaac_ros_assets/isaac_ros_detectnet/quickstart_interface_specs.json

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_WS}/isaac_ros_assets/isaac_ros_detectnet/rosbags/detectnet_rosbag --remap image:=image_rect camera_info:=camera_info_rect

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 :

bash

ros2 run isaac_ros_detectnet isaac_ros_detectnet_visualizer.py --ros-args --remap image:=detectnet_encoder/resize/image

Ouvrez le quatriè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 /detectnet_processed_image