Skip to content

NVIDIA-ISAAC-ROS/isaac_ros_dnn_stereo_depth

Repository files navigation

Isaac ROS DNN Stereo Depth

NVIDIA-accelerated, deep learned stereo disparity estimation

image

Webinar Available

Learn how to use this package by watching our on-demand webinar: Using ML Models in ROS 2 to Robustly Estimate Distance to Obstacles


Overview

Isaac ROS DNN Stereo Depth provides a GPU-accelerated package for DNN-based stereo disparity. Stereo disparity is calculated from a time-synchronized image pair sourced from a stereo camera and is used to produce a depth image or a point cloud for a scene. The isaac_ros_ess package uses the ESS DNN model to perform stereo depth estimation via continuous disparity prediction. Given a pair of stereo input images, the package generates a disparity map of the left input image.

image

ESS is used in a graph of nodes to provide a disparity prediction from an input left and right stereo image pair. Images to ESS need to be rectified and resized to the appropriate input resolution. The aspect ratio of the image is recommended to be maintained, so the image may need to be cropped and resized to maintain the input aspect ratio. The graph for DNN encode, DNN inference, and DNN decode is included in the ESS node. Inference is performed using TensorRT, as the ESS DNN model is designed with optimizations supported by TensorRT. ESS node is agnostic to the model dimension and disparity output has the same dimension as the ESS model.

Isaac ROS NITROS Acceleration

This package is powered by NVIDIA Isaac Transport for ROS (NITROS), which leverages type adaptation and negotiation to optimize message formats and dramatically accelerate communication between participating nodes.

Performance

Sample Graph

Input Size

AGX Orin

Orin NX

x86_64 w/ RTX 4060 Ti

DNN Stereo Disparity Node


Full

576p



96.5 fps


13 ms @ 30Hz

41.2 fps


27 ms @ 30Hz

224 fps


5.5 ms @ 30Hz

DNN Stereo Disparity Node


Light

288p



276 fps


5.9 ms @ 30Hz

134 fps


10 ms @ 30Hz

350 fps


2.4 ms @ 30Hz

DNN Stereo Disparity Graph


Full

576p



89.4 fps


5.4 ms @ 30Hz

36.8 fps


36 ms @ 30Hz

215 fps


3.7 ms @ 30Hz

DNN Stereo Disparity Graph


Light

288p



247 fps


5.9 ms @ 30Hz

122 fps


8.5 ms @ 30Hz

350 fps


6.1 ms @ 30Hz


Documentation

Please visit the Isaac ROS Documentation to learn how to use this repository.


Packages

Latest

Update 2024-05-30: Updated for ESS 4.0 with fused kernel plugins