LidarViewer

I want to get LiDAR point cloud data in cartar_sim, but isaac::viewers::LidarViewer usage is not described in Isaac SDK Developer Guide (https://docs.nvidia.com/isaac/isaac/doc/index.html).
Please can someone tell me how to use it?

Hello hyt131,

Depending on your LIDAR you may want to use the isaac::viewers::LidarViewer or the isaac::viewers::PointCloudViewer. They take in a full range scan proto or a point cloud proto, respectively. You can see these proto details at: https://docs.nvidia.com/isaac/isaac/doc/message_api.html#lidar

Which LIDAR would you want to use? Brand? Model?

I think it would actually be great to have an Ouster OS1. Do you offer support for that lidar?

At the moment Isaac SDK doesn’t natively support the Ouster OS1.

However one could write support for the Ouster OS1 in Isaac SDK with inspiration from other existing support such as this one: https://github.com/nvidia-isaac/velodyne_lidar

Thank you for bringing this up.

Thank you for your answer.

This time, we are looking into a project based on “apps / cartar_sim”. For this we are planning to use “LiDAR” in “isaac_sim”.

I have modified the default “cartar.graph.json” and “cartar.config.json” to attach a diagram with “LiDARView” added.

Could someone tell me how to set it up correctly?
The contents of the json files are:

carter.graph.json
...
"edges": [
    {
      "source": "LidarSubscriber/isaac.alice.TcpSubscriber/LidarSensor",
      "target": "scan_accumulator/isaac.perception.ScanAccumulator/scan"
    },
    {
      "source": "scan_accumulator/isaac.perception.ScanAccumulator/fullscan",
      "target": "LidarViewer/isaac.viewers.LidarViewer/fullscan"
    },
...

carter.config.json
...
  "websight": {
    "WebsightServer": {
      "webroot": "packages/sight/webroot",
      "assetroot": "../isaac_assets",
      "port": 3000,
      "ui_config": {
        "windows": {
          "Carter Sim - LidarViewer2": {
            "renderer": "3d",
            "dims": {
              "width": 640,
              "height": 480
            },
            "channels": [
              {
                "name": "carter_sim/LidarViewer/isaac.viewers.LidarViewer/Lidar",
                "active": true
              }
            ]
          },
          "Carter Sim - LidarViewer2_2D": {
            "renderer": "2d",
            "dims": {
              "width": 640,
              "height": 480
            },
            "channels": [
              {
                "name": "carter_sim/LidarViewer/isaac.viewers.LidarViewer/Lidar",
                "active": true
              }
            ]
          },
          "Carter Sim - LidarViewer_RangeScan": {
            "renderer": "3d",
            "dims": {
              "width": 640,
              "height": 480
            },
            "channels": [
              {
                "name": "carter_sim/scan_localization/flatscan_viewer/beam_lines",
                "active": true
              },
              {
                "name": "carter_sim/scan_localization/flatscan_viewer/beam_endpoints",
                "active": true
              }
            ]
          },
          "Carter Sim - LidarViewer_RangeScan2D": {
            "renderer": "2d",
            "dims": {
              "width": 640,
              "height": 480
            },
            "channels": [
              {
                "name": "carter_sim/scan_localization/flatscan_viewer/beam_lines",
                "active": true
              },
              {
                "name": "carter_sim/scan_localization/flatscan_viewer/beam_endpoints",
                "active": true
              }
            ]
          },
...

Also, so far, I think that it is not possible with the COMPONENT API alone to correctly output LiDAR’s PointCloud information, and I think it needs to be analyzed using the MESSAGE API. Is this correct?
LiDARView.png

Hello hyt131,
Can you tell us more about what you’re setting up?
You want to put real LIDAR data in simulation?