NVIDIA-ISAAC-ROS/isaac_ros_dnn_inference

Full Example for custom model

eladpar opened this issue · 6 comments

Hi!
I was looking at the Quickstart Guide with TensorRT,
and It only has a "proof of life".
is it possible to add a full example with Ros2 bag images and viewing the inference on the bag?
(like seen here https://github.com/NVIDIA-ISAAC-ROS/isaac_ros_object_detection with visualizing using rqt_image_view)
TIA,
Elad.

Good suggestion, thanks! The Isaac ROS DNN Inference packages are intended to trend close to TensorRT / Triton inference on arbitrary model. Isaac ROS Object Detection then is basically one of your full examples of running inference with a specific model. We can take a look at adding an example inline with Isaac ROS DNN Inference, though.

UPDATE:
I've been trying to help extend the example with peoplenet,
I'm working according to this block diagram:
image
2 main gaps are:

  1. There is no node to turn back tensors to images only convert images to tensors
  2. The issac_ros_dnn_encoders has NO executable and cant be run in order to convert images to tensors

For your first question

There is no node to turn back tensors to images only convert images to tensors
Decoder nodes are the one which does the task of interpreting what those tensor mean. Some DNNs output image masks, some bounding boxes, etc.

For your second question

The issac_ros_dnn_encoders has NO executable and cant be run in order to convert images to tensors
You can use the ComposableNode in the launch file to include isaac_ros_dnn_encoder node.

The following Isaac ROS webinar on how to integrate YOLOv5 or any custom model into Isaac ROS here may be useful.

wep21 commented

@hemalshahNV The link you shared shows how to create a node which subscribes tensor lists via ros dds, not nitros.
Nitros is not fully open source, so we can't create a custom nitros decorder, right?

@hemalshahNV The link you shared shows how to create a node which subscribes tensor lists via ros dds, not nitros. Nitros is not fully open source, so we can't create a custom nitros decorder, right?

User-implemented custom NITROS decoders are not supported at the moment.