9.5 Bildrektifizierung und Vorverarbeitung
Docker-Nutzungsreferenz: Modul 3.7 Docker
Isaac ROS Bildverzerrungsverarbeitung: https://nvidia-isaac-ros.github.io/repositories_and_packages/isaac_ros_image_pipeline/index.html
Übersicht

Die Isaac ROS-Bildverzerrungsverarbeitung verwendet die Isaac ROS Image Pipeline, ein Paket für Bildverarbeitungsfunktionen. Die Kameraausgabe erfordert in der Regel eine Vorverarbeitung, um die Eingabeanforderungen einer Vielzahl von Sensorfunktionen zu erfüllen. Dazu gehören Zuschneiden, Größenanpassung, Spiegeln, Korrektur von Linsenverzerrungen und Farbraumumwandlung. Für Stereokameras ist eine zusätzliche Verarbeitung erforderlich, um eine visuelle Differenz zwischen dem linken und rechten Bild und der Lichtwolke zu erzeugen, wodurch eine tiefe Wahrnehmung erreicht wird.
Schnellstart
Um die Entwicklung zu vereinfachen, verwenden wir hauptsächlich Isaac ROS Dev Docker-Images und führen darauf Auswirkungs-Demonstrationen durch. Die Demonstration erfordert nicht die Installation eines Kameragerätes, um Datenströme von der Kamera durch Abspielen der rosbag-Datei zu simulieren.
Hinweis: Wenn Sie auf Ihrem eigenen Gerät installieren oder die Kamera anschließen möchten, um andere Funktionen zu entwickeln, beziehen Sie sich bitte auf das offizielle Isaac ROS-Netzwerk, um die Kamera mit dem angegebenen Modell von NVIDIA zu verbinden.
Größe ändern:
Öffnen Sie ein Terminal, wechseln Sie in den Arbeitsbereich 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:=resizeÖ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 --loop ${ISAAC_ROS_WS}/isaac_ros_assets/isaac_ros_image_proc/quickstart --remap /hawk_0_left_rgb_image:=/image_raw /hawk_0_left_rgb_camera_info:=/camera_infoErgebnis 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 image_view image_view --ros-args --remap image:=resize/imageFarbumwandlung
Öffnen Sie ein Terminal und wechseln Sie in den Arbeitsbereich
Hinweis: Wenn der Container bereits geöffnet wurde und andere Befehle bedient wurden, starten Sie den Befehl, nachdem das erste Terminal ein exit aus allen Docker-Containern ausgeführt hat.
Öffnen Sie ein Terminal, wechseln Sie in den Arbeitsbereich 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:=color_conversion interface_specs_file:=${ISAAC_ROS_WS}/isaac_ros_assets/isaac_ros_image_proc/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 --loop ${ISAAC_ROS_WS}/isaac_ros_assets/isaac_ros_image_proc/quickstart --remap /hawk_0_left_rgb_image:=/image_raw /hawk_0_left_rgb_camera_info:=/camera_infoErgebnis 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 image_view image_view --ros-args --remap image:=image_monoZuschneiden
Öffnen Sie ein Terminal, wechseln Sie in den Arbeitsbereich 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:=crop interface_specs_file:=${ISAAC_ROS_WS}/isaac_ros_assets/isaac_ros_image_proc/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 --loop ${ISAAC_ROS_WS}/isaac_ros_assets/isaac_ros_image_proc/quickstart --remap /hawk_0_left_rgb_image:=/image_raw /hawk_0_left_rgb_camera_info:=/camera_infoErgebnis 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 image_view image_view --ros-args --remap image:=crop/imageRektifizieren
Öffnen Sie ein Terminal, wechseln Sie in den Arbeitsbereich 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:=rectify_mono interface_specs_file:=${ISAAC_ROS_WS}/isaac_ros_assets/isaac_ros_image_proc/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 --loop ${ISAAC_ROS_WS}/isaac_ros_assets/isaac_ros_image_proc/quickstart --remap /hawk_0_left_rgb_image:=/image_raw /hawk_0_left_rgb_camera_info:=/camera_infoErgebnis 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 image_view image_view --ros-args --remap image:=image_rectSpiegeln
Öffnen Sie ein Terminal, wechseln Sie in den Arbeitsbereich 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:=flipÖ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 --loop ${ISAAC_ROS_WS}/isaac_ros_assets/isaac_ros_image_proc/quickstart --remap /hawk_0_left_rgb_image:=/image_raw /hawk_0_left_rgb_camera_info:=/camera_infoErgebnis 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 image_view image_view --ros-args --remap image:=image_flipped