NVIDIA today announced new initiatives to deliver a suite of perception technologies to the Robotics Operating System (ROS) developer community.
NVIDIA and Open Robotics have entered into an agreement to accelerate ROS 2 performance on NVIDIA’s Jetson edge AI platform and GPU-based systems. These initiatives will reduce development time and improve performance for developers seeking to incorporate computer vision and AI/machine learning functionality into their ROS-based applications.
“As more ROS developers leverage hardware platforms that contain additional compute capabilities designed to offload the host CPU, ROS is evolving to make it easier to efficiently take advantage of these advanced hardware resources,” said Brian Gerkey, CEO of Open Robotics. “Working with an accelerated computing leader like NVIDIA and its vast experience in AI and robotics innovation will bring significant benefits to the entire ROS community.”
Open Robotics to Extend ROS for NVIDIA AI
Open Robotics will enhance ROS 2 to enable efficient management of data flow and shared memory across GPU and other processors present on the NVIDIA Jetson edge AI platform. This will significantly improve the performance of applications that have to process high-bandwidth data from sensors such as cameras and lidars in real time.
In addition, Open Robotics and NVIDIA are working to enable seamless simulation interoperability between Open Robotics’s Ignition Gazebo and NVIDIA Isaac Sim on Omniverse. Isaac Sim already supports ROS 1 and 2 out of the box and features an all-important ecosystem of 3D content with its connection to popular applications, such as Blender and Unreal Engine 4.
Ignition Gazebo brings a decades-long track record of widespread use throughout the robotics community, including in high-profile competition events such as the ongoing DARPA Subterranean Challenge.
With the two simulators connected, ROS developers can easily move their robots and environments between Ignition Gazebo and Isaac Sim to run large-scale simulation and take advantage of each simulator’s advanced features such as high-fidelity dynamics, accurate sensor models and photorealistic rendering to generate synthetic data for training and testing of AI models.
Software resulting from this collaboration is expected to be released in the spring of 2022.
Isaac GEMs Released for ROS (Significant Speedup vs CPU only packages)
Isaac GEMs for ROS are hardware accelerated packages that make it easier for ROS developers to build high-performance solutions on the Jetson platform. The focus of these GEMs is on improving throughput on image processing and on DNN-based perception models that are of growing importance to roboticists. These packages reduce the load on the host CPU while providing significant performance gain.
The new Isaac GEMs for ROS include:
- SGM Stereo Disparity and Point Cloud
- Color Space Conversion and Lens Distortion Correction
- AprilTags Detection
Figure 1. Stereo camera support in ROS depicted here with the left and right camera view in the ROS Rviz tool. Both RGB and depth images are shown in RViz.
New Isaac Sim Features Enable ROS Developers
The latest release of Isaac Sim includes significant support for the ROS developer community. Some of the more compelling examples of this are the ROS2 Navigation stack and the MoveIt Motion Planning Framework. These examples are available today and can be found in the Isaac Sim documentation here.
List of ROS Examples in Isaac Sim
- ROS April Tag
- ROS Stereo Camera
- ROS Navigation
- ROS TurtleBot3 Sample
- ROS Manipulation and Camera Sample
- ROS Services
- MoveIt Motion Planning Framework
- Native Python ROS Usage
- ROS2 Navigation
Figure 2. Functional block diagram of Isaac Sim on Omniverse showing three inputs to the simulator: the robot model, environment model, and 3D assets. The simulator can be controlled from both ROS and python. Outputs of the simulator include the digital twin and the synthetic data which can be used to train perception models.
Isaac Sim Generates Synthetic Datasets for Training Perception
In addition to being a robotic simulator, Isaac Sim has a powerful set of capabilities to generate synthetic data to train and test perception models. These capabilities will be more important as roboticists incorporate more perception features into their platforms. It’s clear that the better that a robot can perceive its environment the more autonomous it can be, thereby requiring less human intervention.
Once Isaac Sim generates synthetic datasets, they can be fed directly into NVIDIA’s TAO, an AI model adaptation platform, to adapt perception models for a robot’s specific working environment. The task of ensuring that a robot’s perception stack is going to perform in a given working environment can be started well before any real-data is ever collected from the target surroundings.
Roboticists have long faced challenges in connecting and integrating the classic robotic tasks like navigation to AI-based perception stacks. Isaac Sim addresses this workflow challenge by being simultaneously a full robotics and synthetic data generation tool with streamlined integration with the TAO training platform.
More to Come at ROS World and GTC 2021
NVIDIA is gearing up for ROS World on Oct 21-22, 2021. We are planning to release more new GEMs for Jetson developers including several popular DNNs. We will also announce features in Isaac Sim to support the ROS developer community. Be sure to stop by our virtual booth, attend our NVIDIA ROS roundtable, watch the technical presentation on Isaac Sim, and more.
NVIDIA has a great lineup of speakers, talks, and content at the upcoming GTC scheduled for Nov. 8-11. We have a track for robotics developers including a presentation by Brian Gerkey, CEO of Open Robotics. Additionally, we have talks covering NVIDIA Jetson, Isaac ROS, Isaac Sim, and Isaac GYM.
Getting Started Today
Developers interested in getting started today on adding NVIDIA AI Perception to their products should leverage the links below:
Download Isaac GEMs for ROS here
More Info on Isaac Sim here
Tutorials on Synthetic Data Generation with Isaac Sim here
More Info on Accelerating ML Training with TAO Toolkit here
NVIDIA Jetson & JetPack – details here
NVIDIA DeepStream – details here
NVIDIA Fleet Command – details here
NVIDIA TRITON Inference Server – details here
NVIDIA RIVA – details here
Additional Explainers and Videos: