Skip to content

Commit 41950cb

Browse files
authored
Merge pull request #9 from NVIDIA-ISAAC-ROS/release-dp-1.1
Isaac ROS 0.11.0 (DP1.1)
2 parents aa2a6aa + c234427 commit 41950cb

File tree

6 files changed

+27
-8
lines changed

6 files changed

+27
-8
lines changed

README.md

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,15 +46,17 @@ The following are the benchmark performance results of the prepared pipelines in
4646
- [Updates](#updates)
4747

4848
## Latest Update
49-
Update 2022-06-30: Removed frame_id, queue_size and tensor_output_order parameter. Added network_output_type parameter (support for sigmoid and argmax output layers). Switched implementation to use NITROS. Removed support for odd sized images. Switched tutorial to use PeopleSemSegNet ShuffleSeg and moved som details to other READMEs.
49+
Update 2022-08-31: Update to be compatible with JetPack 5.0.2
5050

5151
## Supported Platforms
5252
This package is designed and tested to be compatible with ROS2 Humble running on [Jetson](https://developer.nvidia.com/embedded-computing) or an x86_64 system with an NVIDIA GPU.
5353

54+
> **Note**: Versions of ROS2 earlier than Humble are **not** supported. This package depends on specific ROS2 implementation features that were only introduced beginning with the Humble release.
55+
5456

5557
| Platform | Hardware | Software | Notes |
5658
| -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
57-
| Jetson | [Jetson Orin](https://www.nvidia.com/en-us/autonomous-machines/embedded-systems/jetson-orin/)<br/>[Jetson Xavier](https://www.nvidia.com/en-us/autonomous-machines/embedded-systems/jetson-agx-xavier/) | [JetPack 5.0.1 DP](https://developer.nvidia.com/embedded/jetpack) | For best performance, ensure that [power settings](https://docs.nvidia.com/jetson/archives/r34.1/DeveloperGuide/text/SD/PlatformPowerAndPerformance.html) are configured appropriately. |
59+
| Jetson | [Jetson Orin](https://www.nvidia.com/en-us/autonomous-machines/embedded-systems/jetson-orin/)<br/>[Jetson Xavier](https://www.nvidia.com/en-us/autonomous-machines/embedded-systems/jetson-agx-xavier/) | [JetPack 5.0.2](https://developer.nvidia.com/embedded/jetpack) | For best performance, ensure that [power settings](https://docs.nvidia.com/jetson/archives/r34.1/DeveloperGuide/text/SD/PlatformPowerAndPerformance.html) are configured appropriately. |
5860
| x86_64 | NVIDIA GPU | [Ubuntu 20.04+](https://releases.ubuntu.com/20.04/) <br> [CUDA 11.6.1+](https://developer.nvidia.com/cuda-downloads) |
5961

6062

@@ -231,6 +233,7 @@ For solutions to problems with using DNN models, please check [here](https://git
231233
## Updates
232234
| Date | Changes |
233235
| ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
236+
| 2022-08-31 | Update to be compatible with JetPack 5.0.2 |
234237
| 2022-06-30 | Removed frame_id, queue_size and tensor_output_order parameter. Added network_output_type parameter (support for sigmoid and argmax output layers). Switched implementation to use NITROS. Removed support for odd sized images. Switched tutorial to use PeopleSemSegNet ShuffleSeg and moved unnecessary details to other READMEs. |
235238
| 2021-11-15 | Isaac Sim HIL documentation update |
236239
| 2021-10-20 | Initial release |

docs/tutorial-isaac-sim.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# 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**
2+
33
1. Complete the [Quickstart section](../README.md#quickstart) in the main README till step 9.
44
2. Launch the Docker container using the `run_dev.sh` script:
55
```bash

isaac_ros_unet/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ if(BUILD_TESTING)
6868
ament_lint_auto_find_test_dependencies()
6969

7070
find_package(launch_testing_ament_cmake REQUIRED)
71-
add_launch_test(test/isaac_ros_unet_pol_test.py TIMEOUT "300")
71+
add_launch_test(test/isaac_ros_unet_pol_test.py TIMEOUT "400")
7272
endif()
7373

7474
ament_auto_package(INSTALL_TO_SHARE launch)

isaac_ros_unet/package.xml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ license agreement from NVIDIA CORPORATION is strictly prohibited.
1313
<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
1414
<package format="3">
1515
<name>isaac_ros_unet</name>
16-
<version>0.9.0</version>
16+
<version>0.11.0</version>
1717
<description>U-Net model processing</description>
1818

1919
<maintainer email="[email protected]">Hemal Shah</maintainer>
@@ -28,6 +28,8 @@ license agreement from NVIDIA CORPORATION is strictly prohibited.
2828
<depend>rclcpp_components</depend>
2929
<depend>isaac_ros_dnn_encoders</depend>
3030
<depend>isaac_ros_nitros</depend>
31+
<depend>isaac_ros_nitros_image_type</depend>
32+
<depend>isaac_ros_nitros_tensor_list_type</depend>
3133

3234
<test_depend>ament_lint_auto</test_depend>
3335
<test_depend>ament_lint_common</test_depend>

isaac_ros_unet/src/unet_decoder_node.cpp

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@
1818

1919
#include "rclcpp/rclcpp.hpp"
2020
#include "sensor_msgs/sensor_msgs/image_encodings.hpp"
21-
#include "isaac_ros_nitros/types/nitros_image.hpp"
22-
#include "isaac_ros_nitros/types/nitros_tensor_list.hpp"
21+
#include "isaac_ros_nitros_image_type/nitros_image.hpp"
22+
#include "isaac_ros_nitros_tensor_list_type/nitros_tensor_list.hpp"
2323

2424
namespace nvidia
2525
{
@@ -159,6 +159,9 @@ UNetDecoderNode::UNetDecoderNode(const rclcpp::NodeOptions options)
159159
throw std::invalid_argument("Received invalid network output type: " + network_output_type_);
160160
}
161161

162+
registerSupportedType<nvidia::isaac_ros::nitros::NitrosImage>();
163+
registerSupportedType<nvidia::isaac_ros::nitros::NitrosTensorList>();
164+
162165
startNitrosNode();
163166
}
164167

isaac_ros_unet/test/isaac_ros_unet_pol_test.py

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -127,14 +127,25 @@ class IsaacROSUNetPipelineTest(IsaacROSBaseTest):
127127

128128
@IsaacROSBaseTest.for_each_test_case()
129129
def test_image_segmentation(self, test_folder):
130+
self.node._logger.info(f'Generating model (timeout={self.MODEL_GENERATION_TIMEOUT_SEC}s)')
130131
start_time = time.time()
132+
ten_second_count = 1
131133
while not os.path.isfile(self.MODEL_PATH):
132-
if (time.time() - start_time) > self.MODEL_GENERATION_TIMEOUT_SEC:
134+
time_diff = time.time() - start_time
135+
if time_diff > self.MODEL_GENERATION_TIMEOUT_SEC:
133136
self.fail('Model generation timed out')
137+
if time_diff > ten_second_count*10:
138+
self.node._logger.info(
139+
f'Waiting for model generation to finish... ({int(time_diff)}s passed)')
140+
ten_second_count += 1
134141
time.sleep(1)
142+
135143
# Wait for TensorRT engine
136144
time.sleep(self.INIT_WAIT_SEC)
137145

146+
self.node._logger.info(
147+
f'Model generation was finished (took {(time.time() - start_time)}s)')
148+
138149
"""Expect the node to segment an image."""
139150
self.generate_namespace_lookup(
140151
['image', 'unet/raw_segmentation_mask',

0 commit comments

Comments
 (0)