9.8 Objekterkennung

Docker-Nutzungsreferenz: Modul 3.7 Docker

Isaac ROS Objektprüfer-Netzwerklink: https://nvidia-isaac-ros.github.io/repositories_and_packages/isaac_ros_object_detection/index.html

Übersicht

Die Isaac ROS Objekterkennung umfasst Softwarepakete in ROS 2 zur Durchführung der Objekterkennung. Isaac ros rtdetr, Isaac ros dectnet und isaac ros yolov8 bieten jeweils eine Methode zur räumlichen Klassifizierung von Eingabebildern mithilfe von Begrenzungsrahmen. Die Klassifizierung wird durch das GPU-Beschleunigungsmodell der entsprechenden Struktur implementiert:

isac ros rtdetr: RT-DTR-Modell

isac ros dectnet: DetectNet-Modell

isac ros yolov8: YOLOv8-Modell

Ausgabevorhersagen können verwendet werden, um das Vorhandensein von Objekten in Bildern und deren räumliche Position zu verstehen.

Schnellstart

Um die Entwicklung zu vereinfachen, verwenden wir hauptsächlich Isaac ROS Dev Docker-Images und führen darauf Auswirkungsdemonstrationen durch. Die Demonstration erfordert nicht die Installation eines Kamerageräts, da Datenströme der Kamera durch Abspielen der rosbag-Datei simuliert werden.

Wenn Sie den Workflow auf echter Hardware oder mit einer angeschlossenen Kamera ausführen möchten, finden Sie in der offiziellen Isaac ROS-Dokumentation Informationen zu unterstützten Kamera-Setups.

Öffnen Sie ein Terminal, wechseln Sie in den Workspace und betreten Sie den Isaac ROS-Entwicklungscontainer.

bash

cd ${ISAAC_ROS_WS}/src

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

Führen Sie den folgenden Startbefehl aus:

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

Öffnen Sie ein zweites Terminal und betreten Sie den Container.

bash

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

Führen Sie den folgenden Befehl aus:

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

Ergebnis anzeigen

Öffnen Sie das dritte Terminal und betreten Sie den Container.

bash

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

Führen Sie den folgenden Befehl aus:

bash

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

Öffnen Sie das vierte Terminal und betreten Sie den Container.

bash

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

Führen Sie den folgenden Befehl aus, um das Ergebnis anzuzeigen:

bash

ros2 run rqt_image_view rqt_image_view /detectnet_processed_image