|
| 1 | +# Tutorial with Isaac Sim |
| 2 | +> **Note: Isaac Sim 2022.1.0 published on 6/3/2022 does not support ROS2 Humble. Please follow one of the [workarounds](https://github.com/NVIDIA-ISAAC-ROS/isaac_ros_common/blob/main/docs/isaac-sim-sil-setup.md#isaac-sim-202210-workarounds) before continuing with the tutorial** |
| 3 | +1. Complete the [Quickstart section](../README.md#quickstart) in the main README till step 9. |
| 4 | +2. Launch the Docker container using the `run_dev.sh` script: |
| 5 | + ```bash |
| 6 | + cd ~/workspaces/isaac_ros-dev/src/isaac_ros_common && \ |
| 7 | + ./scripts/run_dev.sh |
| 8 | + ``` |
| 9 | +3. Inside the container, build and source the workspace: |
| 10 | + ```bash |
| 11 | + cd /workspaces/isaac_ros-dev && \ |
| 12 | + colcon build --symlink-install && \ |
| 13 | + source install/setup.bash |
| 14 | + ``` |
| 15 | +4. Install and launch Isaac Sim following the steps in the [Isaac ROS Isaac Sim Setup Guide](https://github.com/NVIDIA-ISAAC-ROS/isaac_ros_common/blob/main/docs/isaac-sim-sil-setup.md) |
| 16 | +5. Open up the Isaac ROS Common USD scene (using the "content" window) located at: |
| 17 | + `omniverse://localhost/NVIDIA/Assets/Isaac/2022.1/Isaac/Samples/ROS2/Scenario/carter_warehouse_apriltags_worker.usd`. |
| 18 | + |
| 19 | + And wait for it to load completely. |
| 20 | + > **Note:** To use a different server, replace `localhost` with `<your_nucleus_server>` |
| 21 | +6. Go to the stage tab and select `/World/Carter_ROS`, then in properties tab -> Transform -> Translate -> X change `-3.0` to `0.0`. |
| 22 | + <div align="center"><img src="../resources/Isaac_sim_set_carter.png" width="400px"/></div> |
| 23 | +</br> |
| 24 | +7. Change the left camera topic name. Go to the stage tab and select `/World/Carter_ROS/ROS_Cameras/ros2_create_camera_left_rgb`, properties tab -> Compute Node -> Inputs -> topicName change `rgb_left` to `image`. |
| 25 | + <div align="center"><img src="../resources/Isaac_sim_topic_rename.png" width="400px"/></div> |
| 26 | +</br> |
| 27 | +8. Press **Play** to start publishing data from the Isaac Sim application. |
| 28 | + <div align="center"><img src="../resources/Isaac_sim_image_segmentation.png" width="800px"/></div> |
| 29 | +</br> |
| 30 | +9. Run the following launch files to start the inferencing: |
| 31 | + |
| 32 | +```bash |
| 33 | + ros2 launch isaac_ros_unet isaac_ros_unet_triton.launch.py model_name:=peoplesemsegnet_shuffleseg model_repository_paths:=['/tmp/models'] input_binding_names:=['input_2:0'] output_binding_names:=['argmax_1'] network_output_type:='argmax' |
| 34 | +``` |
| 35 | +</br> |
| 36 | +10. Visualize and validate the output of the package by launching `rqt_image_view` in another terminal: |
| 37 | + |
| 38 | +```bash |
| 39 | +cd ~/workspaces/isaac_ros-dev/src/isaac_ros_common && \ |
| 40 | + ./scripts/run_dev.sh |
| 41 | +``` |
| 42 | +Then launch `rqt_image_view`: |
| 43 | +```bash |
| 44 | + ros2 run rqt_image_view rqt_image_view |
| 45 | +``` |
| 46 | +Then inside the `rqt_image_view` GUI, change the topic to `/unet/colored_segmentation_mask` to view a colorized segmentation mask. |
| 47 | + |
| 48 | +<div align="center"><img alt="Coloured Segmentation Mask" src="../resources/Isaac_sim_peoplesemsegnet_shuffleseg_rqt.png" width="350" title="U-Net Shuffleseg result in rqt_image_view"/></div> |
| 49 | + |
| 50 | +**Note:** The raw segmentation is also published to `/unet/raw_segmentation_mask`. However, the raw pixels correspond to the class labels and so the output is unsuitable for human visual inspection. |
0 commit comments