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.
cd ${ISAAC_ROS_WS}/src
cd ${ISAAC_ROS_WS}/src/isaac_ros_common && \
./scripts/run_dev.shFühren Sie den folgenden Startbefehl aus:
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.
cd ${ISAAC_ROS_WS}/src/isaac_ros_common && \
./scripts/run_dev.shFühren Sie den folgenden Befehl aus:
ros2 bag play -l ${ISAAC_ROS_WS}/isaac_ros_assets/isaac_ros_detectnet/rosbags/detectnet_rosbag --remap image:=image_rect camera_info:=camera_info_rectErgebnis anzeigen
Öffnen Sie das dritte Terminal und betreten Sie den Container.
cd ${ISAAC_ROS_WS}/src/isaac_ros_common && \
./scripts/run_dev.shFühren Sie den folgenden Befehl aus:
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.
cd ${ISAAC_ROS_WS}/src/isaac_ros_common && \
./scripts/run_dev.shFühren Sie den folgenden Befehl aus, um das Ergebnis anzuzeigen:

ros2 run rqt_image_view rqt_image_view /detectnet_processed_image