New ROS/ROS2 AI Packages and Docker Images for NVIDIA Jetson

Our team at NVIDIA has created ROS2 containers for NVIDIA Jetson platform based on ROS2 Installation Guide and dusty-nv/jetson-containers

NVIDIA Jetson provides various AI application ROS/ROS2 packages, please find here more information

ROS2 Foxy / Eloquent with PyTorch and TensorRT Docker Image consists of following:

ROS2 Foxy / Eloquent NVIDIA DeepStream SDK Docker image consists of following:

All containers will have #cyclonedds support.
To learn more: How to pull docker image and build your own, please follow ReadMe here

We also have released two more new packages for edge AI applications :

For previously released package, please find ROS2 WG meeting notes here, GitHub Links here and Blog post here

If you face any problem please open an issue on the GitHub repo and we will try to address them soon.

13 Likes

Wow, great examples. Are you thinking about to provide inference examples based on ONNX packaged models as well? In comparison to Python pickle-based packaged models ONNX packaged models can be run on top of a lot of potentially way faster runtimes. I’m not quite sure about if there is NVIDIA specifc hardware acceleration supported already but according to the ONNX website in general NVIDIA acceleration seems to be supported or at least planned.

2 Likes

Thank you @fkromer

We accelerated using NVIDA TensorRT with torch2trt: An easy to use PyTorch to TensorRT converter. In TensorRT, we first convert PyTorch model to ONNX and then to TensorRT.

All the packages are accelerated for NVIDIA Jetson Hardware.

For example: Human Pose Estimation ROS2 Package accelerated with TensorRT has higher FPS with lower GPU utilization.

For more on NVIDIA TensorRT, please find brief highlights here

3 Likes

Hi @ak-nv we’ve been working quite hard on ROS 1 and ROS 2 packages for conda. These packages are cross-platform, and we could use cuda / cudnn etc. from the conda-forge channel. NVidia is actually quite active in the conda-forge community which our effort is based on. I am wondering if there is any interest by NVidia to also make the conda-package route attractive for Jetson? We already have ARM64 packages for ROS noetic, and for Foxy we just need to turn it on. Would be happy to give you a demo / chat about this. PS: Here is a link with our recent updates Cross-platform conda packages for ROS | by Wolf Vollprecht | robostack | Feb, 2021 | Medium

5 Likes

@ak-nv This is quite helpful. Do your containers also provide OpenCV?

Yes. Please also check DockerFiles if needed.

Great, thanks. I was having trouble building anything that used opencv in the docker, but I think it was just that the libopencv-dev package was missing.

1 Like

Isaac ROS is available now at github.com/NVIDIA-ISAAC-ROS. Clone the repositories you need into your ROS workspace to build from source with colcon alongside your other ROS2 packages.

Our latest release includes hardware accelerated ROS2 Foxy packages for image processing and deep learning, tested on Jetson AGX Xavier with JetPack 4.6.

  • Stereo visual inertial odometry (60 fps at 720p)
  • DNN model inference for custom and pre-trained DNNs with included examples for DOPE 3D pose estimation & U-NET semantic image segmentation (pre-trained PeopleSemSegNet 25fps at 544p)
  • AprilTag detection (52fps at 1080p)
  • Image pre-processing (lens distortion correction, color space conversion, scaling)
  • Stereo depth estimation (disparity and point cloud)
  • Camera support (CSI & GMSL interface imagers)
4 Likes