ZED Isaac™ ROS Integration Overview
NVIDIA® Isaac™ ROS (Robot Operating System) is a collection of NVIDIA® CUDA®-accelerated computing packages and AI models designed to streamline and expedite the development of advanced AI robotics applications.
ZED ROS 2 Integration #
The ZED ROS 2 Wrapper automatically integrates the ZED stereo cameras with the NVIDIA® Isaac™ ROS framework, enabling developers to leverage the power of NVIDIA GPUs for real-time perception tasks.
NITROS Support #
When building the ZED ROS 2 Wrapper packages, the build system automatically checks for the presence of the NVIDIA® Isaac™ ROS packages, in particular the isaac_ros_nitros
package. If detected, the ZED Camera ROS 2 components are built with NITROS support enabled. NITROS (NVIDIA® Isaac™ Transport for ROS) is a technology that accelerates ROS data streaming by leveraging GPU memory, allowing high-performance data transfer without routing through the CPU.
You can find more information about NITROS and how it works with ROS 2 in the official NITROS documentation.
📌 Note: If the
isaac_ros_nitros
package is not detected during the build, the ZED ROS 2 Wrapper will still compile and function normally, but NITROS acceleration will not be enabled. You can continue to use your ZED cameras in a standard ROS 2 environment, though you will not benefit from the enhanced data transfer and performance optimizations provided by NVIDIA NITROS.
The ZED ROS 2 Wrapper can leverage NITROS thanks to its strong integration with CUDA processing using the isaac_ros_managed_nitros
package.
In particular, the ZED ROS 2 Wrapper uses Managed NITROS publishers to publish images and depth maps directly from the GPU memory, avoiding unnecessary data copies and CPU overhead. This results in significantly improved performance for applications that require high throughput and low latency, such as real-time object detection, mapping, and navigation.
The Managed NITROS publisher and its counterpart, the Managed NITROS subscriber, enable efficient, GPU-accelerated data transfer between the ZED camera node and other Isaac™ ROS nodes. Thanks to ROS 2 Type Adaptation, these components maintain compatibility with standard (non-Isaac™) ROS 2 nodes by automatically converting data to standard ROS 2 message types when needed—for example, to visualize images in rviz2. This seamless integration ensures high performance while preserving interoperability within the ROS 2 ecosystem.
You can find more information about CUDA with NITROS and how it works in the “CUDA with NITROS” documentation.
Get Started #
To use the ZED ROS 2 Wrapper with NVIDIA® Isaac™ ROS, you need to install the NVIDIA® Isaac™ ROS packages and configure the environment to support the ZED cameras through the ZED SDK.
Install NVIDIA® Isaac™ ROS with ZED support and NITROS #
Follow the instructions to install the NVIDIA® Isaac™ ROS packages and enable the ZED ROS 2 Wrapper with NITROS support.
Tutorials and examples #
You can find a variety of tutorials and examples to help you get started with the ZED ROS 2 Wrapper and NVIDIA® Isaac™ ROS integration:
- April Tag Detection: Learn how to use the ZED camera with the AprilTag detection package in an NVIDIA® Isaac™ ROS environment.