Tutorial for NITROS Bridge with Isaac Sim
Overview
This tutorial will walk you through how to use isaac_ros_nitros_bridge to move images on the GPU while avoiding CPU memory copies from Isaac Sim.
Tutorial Walkthrough
Clone
isaac_ros_common
repository under a new workspace:
mkdir -p ~/isaac_sim_workspaces && \ cd ~/isaac_sim_workspaces && \ git clone -b release-3.1 https://github.com/NVIDIA-ISAAC-ROS/isaac_ros_common.git isaac_ros_common
Install and launch Isaac Sim under the Isaac Sim workspace following the steps in the Isaac ROS Isaac Sim Setup Guide
Press Play to start publishing data from the Isaac Sim.
Note
You should be able to see, using the command
ros2 topic list
, two topics under the same main name, one for the standard ROS 2 sensor_msgs/Image (e.g.:/front_stereo_camera/left/image_rect_color
) and another for isaac_ros_nitros_bridge_interfaces/NitrosBridgeImage (e.g.:/front_stereo_camera/left/image_rect_color/nitros_bridge
).
Complete the step 3 & 4 from
Set Up Development Environment
section andBuild from Source
section following theisaac_ros_nitros_bridge_ros2
quickstart here.Inside the container, change the
ptrace
scope to be able to run the NITROS Bridge:
echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope
Inside the container, edit the isaac_ros_nitros_bridge_image_converter.launch.py ROS 2 launch file to remap the
ros2_input_bridge_image
to the Isaac Sim’s NITROS Bridge topic name (e.g.:/front_stereo_camera/left/image_rect_color/nitros_bridge
). Then, run the following command to start the NITROS Bridge.
cd /workspaces/isaac_ros-dev && \ source install/setup.bash && \ ros2 launch isaac_ros_nitros_bridge_ros2 isaac_ros_nitros_bridge_image_converter.launch.py pub_image_name:=nitros_pub sub_image_name:=nitros_sub
The converted NITROS image will be available under the
nitros_pub
topic.