ROS2 packages based on NVIDIA libArgus library for hardware-accelerated CSI camera support.

Overview

Isaac ROS Argus Camera

This repository provides monocular and stereo nodes that enable ROS developers to use cameras connected to Jetson platforms over a CSI interface. The nodes internally use libargus, which is an API for acquiring images and associated metadata from camera devices.

Libargus API reference

This package is compatible with ROS2 Foxy and has been tested on the Jetson platfrom with off-the-shelf cameras from NVIDIA partners(see the Reference Camera section for more details). Note: x86_64 is not supported.

System Requirements

The CSI camera device needs to be connected and running and to present the video device node (e.g. /dev/video0).

Jetson

Note: For best performance on Jetson, ensure that power settings are configured appropriately (Power Management for Jetson).

Docker

Precompiled ROS2 Foxy packages are not available for JetPack 4.6 (based on Ubuntu 18.04 Bionic). You can either manually compile ROS2 Foxy and required dependent packages from source or use the Isaac ROS development Docker image from Isaac ROS Common.

You must first install the Nvidia Container Toolkit to make use of the Docker container development/runtime environment.

Configure nvidia-container-runtime as the default runtime for Docker by editing /etc/docker/daemon.json to include the following:

    "runtimes": {
        "nvidia": {
            "path": "nvidia-container-runtime",
            "runtimeArgs": []
        }
    },
    "default-runtime": "nvidia"

and then restarting Docker: sudo systemctl daemon-reload && sudo systemctl restart docker

Run the following script in isaac_ros_common to build the image and launch the container:

$ scripts/run_dev.sh

You can either provide an optional path to mirror in your host ROS workspace with Isaac ROS packages, which will be made available in the container as /workspaces/isaac_ros-dev, or you can setup a new workspace in the container.

Reference Camera

The Leopard Imaging NVIDIA camera partner provides the below camera modules, which are compliant with the isaac_ros_argus_camera packages.

Product Name Type Resolution
HAWK Stereo Camera 1920 x 1200
OWL Fisheye Camera 1920 x 1200
IMX477 4K Monocular Camera 4056 x 3040

Quickstart

  1. Create a ROS2 workspace if one is not already prepared:
    mkdir -p your_ws/src
    Note: The workspace can have any name; this guide assumes you name it your_ws.

  2. Clone the Isaac ROS Argus Camera repository to your_ws/src/isaac_ros_argus_camera. Check that you have Git LFS installed before cloning to pull down all large files.
    sudo apt-get install git-lfs
    cd your_ws/src && git clone https://github.com/NVIDIA-ISAAC-ROS/isaac_ros_argus_camera

  3. Build and source the workspace:
    cd your_ws && colcon build --symlink-install && source install/setup.bash

  4. (Optional) Run tests to verify complete and correct installation:
    colcon test

  5. Launch the node:
    ros2 run isaac_ros_argus_camera_mono isaac_ros_argus_camera_mono --ros-args -p device:=0 -p sensor:=0 -p output_encoding:="mono8"

Package Reference

isaac_ros_argus_camera_mono

ros2 run isaac_ros_argus_camera_mono isaac_ros_argus_camera_mono --ros-args -p device:= -p sensor:= -p output_encoding:=

ROS Argument Usage
device_index The video node index (e.g. /dev/video0)
sensor_index The sensor mode supported by the camera sensor and driver
output_encoding The output image format. mono8 and rgb8 are currently supported

isaac_ros_argus_camera_stereo

ros2 run isaac_ros_argus_camera_stereo isaac_ros_argus_camera_stereo --ros-args -p device:= -p sensor:= -p output_encoding:=

ROS Argument Usage
device_index The first video node index (e.g. /dev/video0)
sensor_index The sensor mode supported in the camera sensor and driver
output_encoding The output image format. mono8 and rgb8 are currently supported

Note: To run the stereo node, two video nodes should present for left and right sensors, respectively (e.g. /dev/video0 and /dev/video1).

Examples:
ros2 run isaac_ros_argus_camera_mono isaac_ros_argus_camera_mono --ros-args -p device:=0 -p sensor:=0 -p output_encoding:="rgb8"

ros2 run isaac_ros_argus_camera_stereo isaac_ros_argus_camera_stereo --ros-args -p device:=0 -p sensor:=0 -p output_encoding:="mono8"

To view the output images:

ros2 run image_view image_saver --ros-args -r image:=/image_raw -p filename_format:="right_image.jpg"

ros2 run image_view image_saver --ros-args -r image:=/stereo/left/image_raw -p filename_format:="left_image.jpg"

CameraInfo Message

Argus nodes use the Argus Ext API to retrieve calibration parameters from the camera through the Linux device driver and convert it to CameraInfo messages.
Refer to link for the data structure of the calibration parameters.

Note: Each camera module should have stored the calibration parameters in the internal memory like EEPROM and the device driver supports the API to extract it. Contact your camera vendor to get the driver that supports it.

Troubleshooting

Argus camera nodes could stop publishing images sometimes when used with 4K high-resolution cameras in certain graph configurations on FastRTPS

With downstream subscribers that are not able to process images at the camera frame rate, we have observed instances where the Argus camera node suddenly stops publishing new images after about 15-20 minutes.

Solution

We are continuing to collect data and diagnose the issue but changing the QoS settings to "Best Effort" and using a smaller frame size seem to alleviate the condition.

Updates

Date Changes
2021-10-20 Initial release
Issues
  • Arducam IMX219 Camera Info Message

    Arducam IMX219 Camera Info Message

    Hello,

    I am using a Jetson Xavier NX development board for my project. I have Arducam-IMX219, which are natively supported. Nearly for all my projects with ROS and camera, I was using the camera calibration tool (http://wiki.ros.org/camera_calibration) to obtain camera intrinsic parameters, save them as .yaml or .ini, the give this as a parameter to ROS camera driver such as usb_cam (http://wiki.ros.org/usb_cam) to successfully publish camera_info message. As I understand isaac_ros_argus_camera node expects these parameters stored in EEPROM of camera which I think is not possible for every brand. Is there way to run this node with this kind of parameter file (.yaml or .ini)? Thanks a lot in advance.

    opened by kaganGH 4
  • Error Could not find Argus/Argus.h

    Error Could not find Argus/Argus.h

    I am running ROS2-foxy on jetson nano. I installed everything required to build this package however I am still getting these error(s)

    --- stderr: isaac_ros_argus_camera_mono                       
    /home/r1mini/ros2_ws/src/isaac_ros_argus_camera/isaac_ros_argus_camera_mono/src/argus_camera_mono_node.cpp:17:10: fatal error: Argus/Argus.h: No such file or directory
       17 | #include <Argus/Argus.h>
          |          ^~~~~~~~~~~~~~~
    compilation terminated.
    make[2]: *** [CMakeFiles/monocular_node.dir/build.make:63: CMakeFiles/monocular_node.dir/src/argus_camera_mono_node.cpp.o] Error 1
    make[1]: *** [CMakeFiles/Makefile2:107: CMakeFiles/monocular_node.dir/all] Error 2
    make: *** [Makefile:141: all] Error 2
    ---
    Failed   <<< isaac_ros_argus_camera_mono [3.80s, exited with code 2]
    Aborted  <<< opencv_tests [14.4s]                                         
    Aborted  <<< isaac_ros_argus_camera_stereo [23.3s]
    

    Found a topic regarding this issue and tried to put 'set(TegraMM_ROOT $ENV{HOME}/jetson_multimedia_api)' on top of CMageLists.txt but no luck. https://forums.developer.nvidia.com/t/error-when-using-argus-camera/180137

    How to solve this issue? Thanks,

    needs info 
    opened by kyuhyong 1
  • Dude, where's my CUDA?

    Dude, where's my CUDA?

    This is odd because this was working yesterday

    I'm inside the isaac common docker, on Jetson NX with JetPack 4.6.1 and it's not finding cuda?

    I've 'git lfs pull'ed the dirs.

    
    [email protected]:/workspaces/isaac_ros-dev$ cd src/
    [email protected]:/workspaces/isaac_ros-dev/src$ ls -l
    total 8
    drwxrwxr-x 6 admin admin 4096 Mar 12 18:12 isaac_ros_argus_camera
    drwxrwxr-x 9 admin admin 4096 Mar 12 18:10 isaac_ros_common
    
    
    [email protected]:/workspaces/isaac_ros-dev$ colcon build --symlink-install
    Starting >>> isaac_ros_test
    Starting >>> isaac_ros_common
    Starting >>> isaac_ros_nvengine_interfaces
    Finished <<< isaac_ros_test [3.38s]                                                                                                   
    Finished <<< isaac_ros_common [18.2s]                                                                                     
    Starting >>> isaac_ros_argus_camera_mono
    Starting >>> isaac_ros_argus_camera_stereo
    Finished <<< isaac_ros_nvengine_interfaces [29.8s]                                                                                                                                   
    Starting >>> isaac_ros_nvengine
    --- stderr: isaac_ros_argus_camera_stereo                                                                                                                                   
    /usr/bin/ld: warning: libcudart.so.10.2, needed by /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15, not found (try using -rpath or -rpath-link)
    /usr/bin/ld: warning: libcufft.so.10, needed by /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15, not found (try using -rpath or -rpath-link)
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    /opt/nvidia/vpi1/lib64/libnvvpi.so.1.1.15: undefined reference to `[email protected]'
    collect2: error: ld returned 1 exit status
    make[2]: *** [isaac_ros_argus_camera_stereo] Error 1
    make[1]: *** [CMakeFiles/isaac_ros_argus_camera_stereo.dir/all] Error 2
    make: *** [all] Error 2
    ---
    Failed   <<< isaac_ros_argus_camera_stereo [39.0s, exited with code 2]
    Aborted  <<< isaac_ros_argus_camera_mono [44.7s]                                                                                         
    Aborted  <<< isaac_ros_nvengine [43.6s]                                       
    
    Summary: 3 packages finished [1min 14s]
      1 package failed: isaac_ros_argus_camera_stereo
      2 packages aborted: isaac_ros_argus_camera_mono isaac_ros_nvengine
      2 packages had stderr output: isaac_ros_argus_camera_mono isaac_ros_argus_camera_stereo
    
    
    

    ( i tried sudo apt install nvidia-cuda but same error, afterwards. maybe LD_LIBRARY_PATH needs fixing? could someone suggest how I might fix it, if that is the issue?)

    [email protected]:/workspaces/isaac_ros-dev$ echo $LD_LIBRARY_PATH 
    /opt/ros/foxy/install/opt/yaml_cpp_vendor/lib:/opt/ros/foxy/install/lib:/usr/lib/aarch64-linux-gnu/tegra-egl:/usr/local/cuda-10.2/targets/aarch64-linux/lib:/usr/lib/aarch64-linux-gnu/tegra:/opt/nvidia/vpi1/lib64:/usr/local/cuda-10.2/targets/aarch64-linux/lib::/opt/tritonserver/lib
    

    It doesn't make sense. i had the isaac ros argus camera working yesterday (with RPi 2.1 camera), and now CUDA disappeared today? That's enough internet for me today.

    Thanks in advance.

    opened by javadan 1
  • Performance much worse than GStreamer pipeline with nvarguscamera source

    Performance much worse than GStreamer pipeline with nvarguscamera source

    I am on a Jetson Nano and the isaac_ros_argus_camera nodes are much slower than using something like a gstreamer pipeline shown below. I get about 8fps from isaac where I get closer to 60 using a GStreamer pipeline shown below. Any suggestions on what might be causing this or am I missing something else here? Using isaac as described in the quick start guide.

    verify to close 
    opened by carTloyal123 5
  • /camera_info topic?  Using Two Monocular cameras for Stereo?

    /camera_info topic? Using Two Monocular cameras for Stereo?

    Hi there

    Is the stereo vision only for realsense cameras?

    Is there a way to do it with two monocular cameras, with clever remapping?

    I currently get stuck because of /camera_info requirements in most of the ISAAC ROS packages.

    I've tried dropping a left.yaml and right.yaml (files from the ROS calibration process) under the .ros directory, but the camera_info_url doesn't seem to work.

    what(): found unknown ROS arguments: 'camera_info_url=file:///home/admin/.ros/camera_info/left.yaml'

    Without calibration, It starts up warning: [WARN] [1650544642.816017010] [argus_monocular]: Cannot get ISyncSensorCalibrationData interface

    And /camera_info is all zeroes

    [email protected]:/workspaces/isaac_ros-dev/src/isaac_ros_argus_camera$ ros2 topic echo /camera_info
    header:
      stamp:
        sec: 1650544846
        nanosec: 49888246
      frame_id: '6073'
    height: 0
    width: 0
    distortion_model: ''
    d: []
    k: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
    r: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
    p: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
    binning_x: 0
    binning_y: 0
    roi:
      x_offset: 0
      y_offset: 0
      height: 0
      width: 0
      do_rectify: false
    

    So something straightforward like the isaac_ros_image_pipeline won't do anything, if I try check the topics.

    [ERROR] [1650545104.173691674] [rectify_color]: Rectified topic '/image_rect' requested but camera publishing '/camera_info' is uncalibrated

    I'm not sure how to publish the camera info so that the /camera_info topic is usable by the rest of the ISAAC ROS suite. (Or likewise /left/camera_info and /right/camera_info, or whatever, for stereo).

    If stereo is possible by remapping a left and a right camera to the input topics required by say, the stereo camera, or the stereo_proc, how would I do that?

    Can I remap the output topics on the command line? Or should I be making a launch file to handle the remappings?

    Thanks

    verify to close 
    opened by javadan 1
  • Low fps from Arducam-IMX219

    Low fps from Arducam-IMX219

    Hello,

    I am using a Jetson Xavier NX development board for my project. The power mode I set is "Mode 20W 6Core". I am using Arducam-IMX219, which are natively supported. I have built and run the docker successfully and then cloned and built "isaac_ros_argus_camera" without any error. When camera is seen at /dev/video0, i run the following command to launch the node:

    ros2 run isaac_ros_argus_camera_mono isaac_ros_argus_camera_mono --ros-args -p device:=0 -p sensor:=4 -p output_encoding:="mono8"

    which corresponds to 1280x720 resolution for my camera and it should run at 60fps according to v4l2-ctl --dev?dev/video0 --list-format-ext

    However, I can get at most 24-26 fps when i check the topic /image_raw. What could be the possible reason? Do I need to activate any GPU related settings (CUDA)? Can the nvpmodel be the issue? Are the other parameters that I can set for this node? Thank you in advance.

    bug 
    opened by kaganGH 5
Releases(v0.10.1-dp)
Owner
NVIDIA Isaac ROS
High-performance computing for robotics
NVIDIA Isaac ROS
Visual odometry package based on hardware-accelerated NVIDIA Elbrus library with world class quality and performance.

Isaac ROS Visual Odometry This repository provides a ROS2 package that estimates stereo visual inertial odometry using the Isaac Elbrus GPU-accelerate

NVIDIA Isaac ROS 181 Aug 11, 2022
nvidia nvmpi encoder for streamFX and obs-studio (e.g. for nvidia jetson. Requires nvmpi enabled ffmpeg / libavcodec)

nvmpi-streamFX-obs nvidia nvmpi encoder for streamFX and obs-studio (e.g. for nvidia jetson. Requires nvmpi enabled ffmpeg / libavcodec) Purpose This

null 16 Jun 25, 2022
3D-Lidar Camera Calibration using planar Point to to camera Plane Constraint

3D-Lidar Camera Calibration using planar Point to to camera Plane Constraint

Subodh Mishra 62 Aug 9, 2022
ROS2 / Ignition Gazebo Gym Environment for Reproducible Reinforcement Learning

ROS2/Ignition Gazebo Environment for Reinforcement Learning

Nicholas José Palomo 3 Dec 11, 2021
YOLOX + ROS2 object detection package

YOLOX-ROS YOLOX+ROS2 Foxy Supported List Base ROS1 C++ ROS1 Python ROS2 C++ ROS2 Python CPU ✅ CUDA ✅ CUDA (FP16) ✅ TensorRT (CUDA) ✅ OpenVINO ✅ MegEng

Ar-Ray 132 Aug 9, 2022
A easy-to-use image processing library accelerated with CUDA on GPU.

gpucv Have you used OpenCV on your CPU, and wanted to run it on GPU. Did you try installing OpenCV and get frustrated with its installation. Fret not

shrikumaran pb 4 Aug 14, 2021
YOLOv4 accelerated wtih TensorRT and multi-stream input using Deepstream

Deepstream 5.1 YOLOv4 App This Deepstream application showcases YOLOv4 running at high FPS throughput! P.S - Click the gif to watch the entire video!

Akash James 34 Jul 28, 2022
CUDA-accelerated Apriltag detection and pose estimation.

Isaac ROS Apriltag Overview This ROS2 node uses the NVIDIA GPU-accelerated AprilTags library to detect AprilTags in images and publishes their poses,

NVIDIA Isaac ROS 40 Aug 3, 2022
HugeCTR is a GPU-accelerated recommender framework designed to distribute training across multiple GPUs and nodes and estimate Click-Through Rates (CTRs)

Merlin: HugeCTR HugeCTR is a GPU-accelerated recommender framework designed to distribute training across multiple GPUs and nodes and estimate Click-T

null 686 Aug 8, 2022
A lightweight, portable pure C99 onnx inference engine for embedded devices with hardware acceleration support.

Libonnx A lightweight, portable pure C99 onnx inference engine for embedded devices with hardware acceleration support. Getting Started The library's

xboot.org 411 Aug 8, 2022
A PoC for requesting HWIDs directly from hardware, skipping any potential hooks or OS support.

PCIBan A PoC for requesting HWIDs directly from hardware, skipping any potential hooks or OS support. This is probably very unsafe, not supporting edg

null 52 Jul 27, 2022
Forward - A library for high performance deep learning inference on NVIDIA GPUs

a library for high performance deep learning inference on NVIDIA GPUs.

Tencent 123 Mar 17, 2021
A library for high performance deep learning inference on NVIDIA GPUs.

Forward - A library for high performance deep learning inference on NVIDIA GPUs Forward - A library for high performance deep learning inference on NV

Tencent 502 Jul 31, 2022
TensorRT is a C++ library for high performance inference on NVIDIA GPUs and deep learning accelerators.

TensorRT Open Source Software This repository contains the Open Source Software (OSS) components of NVIDIA TensorRT. Included are the sources for Tens

NVIDIA Corporation 5.7k Aug 8, 2022
GPU Cloth TOP in TouchDesigner using CUDA-enabled NVIDIA Flex

This project demonstrates how to use NVIDIA FleX for GPU cloth simulation in a TouchDesigner Custom Operator. It also shows how to render dynamic meshes from the texture data using custom PBR GLSL material shaders inside TouchDesigner.

Vinícius Ginja 37 Jul 27, 2022
Gstreamer plugin that allows use of NVIDIA Maxine SDK in a generic pipeline.

GST-NVMAXINE Gstreamer plugin that allows use of NVIDIA MaxineTM sdk in a generic pipeline. This plugin is intended for use with NVIDIA hardware. Visi

Alex Pitrolo 14 May 11, 2022
GPU ray tracing framework using NVIDIA OptiX 7

GPU ray tracing framework using NVIDIA OptiX 7

Shunji Kiuchi 22 Jun 11, 2022
The core engine forked from NVidia's Q2RTX. Heavily modified and extended to allow for a nicer experience all-round.

Nail & Crescent - Development Branch Scratchpad - Things to do or not forget: Items are obviously broken. Physics.cpp needs more work, revising. Proba

PalmliX Studio 13 Jul 6, 2022