Skip to content

Commit ce43e59

Browse files
Merge pull request #41 from NVIDIA-ISAAC-ROS/release-3.0
Isaac ROS 3.0.1
2 parents 1db58ee + 0c45413 commit ce43e59

File tree

8 files changed

+35
-33
lines changed

8 files changed

+35
-33
lines changed

README.md

Lines changed: 21 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -7,28 +7,35 @@ NVIDIA-accelerated, deep learned model support for object detection including De
77

88
## Overview
99

10-
[Isaac ROS Object Detection](https://github.com/NVIDIA-ISAAC-ROS/isaac_ros_object_detection) contains an ROS 2 package to perform object
11-
detection. `isaac_ros_detectnet` provides a method for spatial
10+
[Isaac ROS Object Detection](https://github.com/NVIDIA-ISAAC-ROS/isaac_ros_object_detection) contains ROS 2 packages to perform object
11+
detection.
12+
`isaac_ros_rtdetr`, `isaac_ros_detectnet`, and `isaac_ros_yolov8` each provide a method for spatial
1213
classification using bounding boxes with an input image. Classification
13-
is performed by a GPU-accelerated
14-
[DetectNet](https://catalog.ngc.nvidia.com/orgs/nvidia/teams/tao/models/pretrained_detectnet_v2)
15-
model. The output prediction can be used by perception functions to
14+
is performed by a GPU-accelerated model of the appropriate architecture:
15+
16+
- `isaac_ros_rtdetr`: [RT-DETR models](https://nvidia-isaac-ros.github.io/concepts/object_detection/rtdetr/index.html)
17+
- `isaac_ros_detectnet`: [DetectNet models](https://nvidia-isaac-ros.github.io/concepts/object_detection/detectnet/index.html)
18+
- `isaac_ros_yolov8`: [YOLOv8 models](https://nvidia-isaac-ros.github.io/concepts/object_detection/yolov8/index.html)
19+
20+
The output prediction can be used by perception functions to
1621
understand the presence and spatial location of an object in an image.
1722

1823
<div align="center"><a class="reference internal image-reference" href="https://media.githubusercontent.com/media/NVIDIA-ISAAC-ROS/.github/main/resources/isaac_ros_docs/repositories_and_packages/isaac_ros_object_detection/isaac_ros_object_detection_nodegraph.png/"><img alt="image" src="https://media.githubusercontent.com/media/NVIDIA-ISAAC-ROS/.github/main/resources/isaac_ros_docs/repositories_and_packages/isaac_ros_object_detection/isaac_ros_object_detection_nodegraph.png/" width="800px"/></a></div>
1924

20-
`isaac_ros_detectnet` is used in a graph of nodes to provide a
25+
Each Isaac ROS Object Detection package is used in a graph of nodes to provide a
2126
bounding box detection array with object classes from an input image. A
22-
[DetectNet](https://catalog.ngc.nvidia.com/orgs/nvidia/teams/tao/models/pretrained_detectnet_v2)
23-
model is required to produce the detection array. Input images may need
24-
to be cropped and resized to maintain the aspect ratio and match the
25-
input resolution of DetectNet; image resolution may be reduced to
27+
trained model of the appropriate architecture is required to produce the detection array.
28+
29+
Input images may need to be cropped and resized to maintain the aspect ratio and match the
30+
input resolution of the specific object detection model; image resolution may be reduced to
2631
improve DNN inference performance, which typically scales directly with
2732
the number of pixels in the image. `isaac_ros_dnn_image_encoder`
28-
provides a DNN encoder to process the input image into Tensors for the
29-
DetectNet model. Prediction results are clustered in the DNN decoder to
30-
group multiple detections on the same object. Output is provided as a
31-
detection array with object classes.
33+
provides DNN encoder utilities to process the input image into Tensors for the
34+
object detection models.
35+
Prediction results are decoded in model-specific ways,
36+
often involving clustering and thresholding to group multiple detections
37+
on the same object and reduce spurious detections.
38+
Output is provided as a detection array with object classes.
3239

3340
DNNs have a minimum number of pixels that need to be visible on the
3441
object to provide a classification prediction. If a person cannot see
@@ -41,10 +48,6 @@ image, which provides 1K pixels for the person, and fail to detect the
4148
same person in the downscaled resolution, which only provides 0.25K
4249
pixels for the person.
4350

44-
> [!Note]
45-
> DetectNet is similar to other popular object detection
46-
> models such as YOLOV3, FasterRCNN, and SSD, while being efficient at
47-
> detecting multiple object classes in large images.
4851
<div align="center"><a class="reference internal image-reference" href="https://media.githubusercontent.com/media/NVIDIA-ISAAC-ROS/.github/main/resources/isaac_ros_docs/repositories_and_packages/isaac_ros_object_detection/isaac_ros_object_detection_example_bboxseg.png/"><img alt="image" src="https://media.githubusercontent.com/media/NVIDIA-ISAAC-ROS/.github/main/resources/isaac_ros_docs/repositories_and_packages/isaac_ros_object_detection/isaac_ros_object_detection_example_bboxseg.png/" width="800px"/></a></div>
4952

5053
Object detection classifies a rectangle of pixels as containing an

gxf_isaac_detectnet/package.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ SPDX-License-Identifier: Apache-2.0
2121
<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
2222
<package format="3">
2323
<name>gxf_isaac_detectnet</name>
24-
<version>3.0.0</version>
24+
<version>3.0.1</version>
2525
<description>Detectnet GXF extension.</description>
2626

2727
<maintainer email="[email protected]">Isaac ROS Maintainers</maintainer>

isaac_ros_detectnet/launch/isaac_ros_detectnet_isaac_sim.launch.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -48,10 +48,10 @@ def generate_launch_description():
4848
'encoding_desired': 'rgb8',
4949
}],
5050
remappings=[
51-
('camera_info', 'front_stereo_camera/left_rgb/camerainfo'),
52-
('image', 'front_stereo_camera/left_rgb/image_raw'),
53-
('resize/camera_info', 'front_stereo_camera/left_rgb/camerainfo_resize'),
54-
('resize/image', 'front_stereo_camera/left_rgb/image_resize')]
51+
('camera_info', 'front_stereo_camera/left/camera_info'),
52+
('image', 'front_stereo_camera/left/image_rect_color'),
53+
('resize/camera_info', 'front_stereo_camera/left/camera_info_resize'),
54+
('resize/image', 'front_stereo_camera/left/image_resize')]
5555
)
5656

5757
encoder_dir = get_package_share_directory('isaac_ros_dnn_image_encoder')
@@ -71,8 +71,8 @@ def generate_launch_description():
7171
'attach_to_shared_component_container': 'True',
7272
'component_container_name': 'detectnet_container/detectnet_container',
7373
'dnn_image_encoder_namespace': 'detectnet_encoder',
74-
'image_input_topic': '/front_stereo_camera/left_rgb/image_resize',
75-
'camera_info_input_topic': '/front_stereo_camera/left_rgb/camerainfo_resize',
74+
'image_input_topic': '/front_stereo_camera/left/image_resize',
75+
'camera_info_input_topic': '/front_stereo_camera/left/camera_info_resize',
7676
'tensor_output_topic': '/tensor_pub',
7777
}.items(),
7878
)
@@ -117,7 +117,7 @@ def generate_launch_description():
117117
package='isaac_ros_detectnet',
118118
executable='isaac_ros_detectnet_visualizer.py',
119119
name='detectnet_visualizer',
120-
remappings=[('image', 'front_stereo_camera/left_rgb/image_resize')]
120+
remappings=[('image', 'front_stereo_camera/left/image_resize')]
121121

122122
)
123123

isaac_ros_detectnet/package.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ SPDX-License-Identifier: Apache-2.0
2121
<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
2222
<package format="3">
2323
<name>isaac_ros_detectnet</name>
24-
<version>3.0.0</version>
24+
<version>3.0.1</version>
2525
<description>DetectNet model processing</description>
2626

2727
<maintainer email="[email protected]">Isaac ROS Maintainers</maintainer>

isaac_ros_detectnet/scripts/setup_model.sh

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ function setup_model() {
7474
model_name_from_model_link=$(extract_model_name "$MODEL_LINK")
7575
echo "Model name from model link: $model_name_from_model_link"
7676
echo Creating Directory : ${ISAAC_ROS_WS}/isaac_ros_assets/models/$model_name_from_model_link/1
77-
rm -rf ${ISAAC_ROS_WS}/isaac_ros_assets/models
77+
rm -rf ${ISAAC_ROS_WS}/isaac_ros_assets/models/$model_name_from_model_link
7878
mkdir -p ${ISAAC_ROS_WS}/isaac_ros_assets/models/$model_name_from_model_link/1
7979
cd ${ISAAC_ROS_WS}/isaac_ros_assets/models/$model_name_from_model_link/1
8080
echo Downloading .etlt file from $MODEL_LINK
@@ -99,7 +99,6 @@ function setup_model() {
9999
-o $OUTPUT_LAYERS\
100100
$MODEL_FILE_NAME
101101
echo Copying .pbtxt config file to ${ISAAC_ROS_WS}/isaac_ros_assets/models/$model_name_from_model_link
102-
cd /workspaces/isaac_ros-dev/src/isaac_ros_object_detection/isaac_ros_detectnet
103102
export ISAAC_ROS_DETECTNET_PATH=$(ros2 pkg prefix isaac_ros_detectnet --share)
104103
cp $ISAAC_ROS_DETECTNET_PATH/config/$CONFIG_FILE \
105104
${ISAAC_ROS_WS}/isaac_ros_assets/models/$model_name_from_model_link/config.pbtxt

isaac_ros_rtdetr/launch/isaac_ros_rtdetr_isaac_sim.launch.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -79,8 +79,8 @@ def generate_launch_description():
7979
'disable_padding': True
8080
}],
8181
remappings=[
82-
('image', 'front_stereo_camera/left_rgb/image_raw'),
83-
('camera_info', 'front_stereo_camera/left_rgb/camerainfo')
82+
('image', 'front_stereo_camera/left/image_rect_color'),
83+
('camera_info', 'front_stereo_camera/left/camera_info')
8484
]
8585
)
8686
pad_node = ComposableNode(

isaac_ros_rtdetr/package.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ SPDX-License-Identifier: Apache-2.0
2121
<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
2222
<package format="3">
2323
<name>isaac_ros_rtdetr</name>
24-
<version>3.0.0</version>
24+
<version>3.0.1</version>
2525
<description>RT-DETR model processing</description>
2626

2727
<maintainer email="[email protected]">Isaac ROS Maintainers</maintainer>

isaac_ros_yolov8/package.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
2222
<package format="3">
2323
<name>isaac_ros_yolov8</name>
24-
<version>3.0.0</version>
24+
<version>3.0.1</version>
2525
<description>Isaac ROS YOLOv8 decoding</description>
2626

2727
<maintainer email="[email protected]">Isaac ROS Maintainers</maintainer>

0 commit comments

Comments
 (0)