RTX Radar Sensor#

../_images/isaacsim_sensors_rtx_radar_node_overview_warehouse.png

RTX Radar sensors are simulated at render time on the GPU with RTX hardware. Their results are then copied to the RtxSensorCpu rendering buffer for use.

How They Work#

Before an RTX Radar can render, there must be a camera prim with appropriately-set attributes. The render product from that camera will contain the RtxSensorCpu result.

The following code snippet, when run in the Script Editor, will:

  1. Create a RTX Radar sensor in the scene with the IsaacSensorCreateRtxRadar command.

  2. Render its results into a Hydra texture

  3. Create a point cloud from the results using the RtxRadarDebugDrawPointCloudBuffer writer

  4. Create a RtxSensorCpuIsaacCreateRTXRadarScanBuffer annotator that can read the data from the radar.

import omni.kit.commands
from pxr import Gf
import omni.replicator.core as rep
radar_config = "Example"

# 1. Create The Camera
_, sensor = omni.kit.commands.execute(
    "IsaacSensorCreateRtxRadar",
    path="/sensor",
    parent=None,
    config=radar_config,
    translation=(0, 0, 1.0),
    orientation=Gf.Quatd(1,0,0,0),
)
# 2. Create and Attach a render product to the camera
render_product = rep.create.render_product(sensor.GetPath(), [1, 1]).path

# 4. Create a Replicator Writer that "writes" points into the scene for debug viewing
writer = rep.writers.get("RtxRadarDebugDrawPointCloud")
writer.attach(render_product)

Note

To observe something similar to the example picture above, run the RTX Radar standalone example using ./python.sh standalone_examples/api/omni.debug.draw/rtx_radar.py.

Creating and attaching the annotator and writer automatically generates an Action Graph to perform the debug view task; details about the Action Graph can be explored using the links below:

Radar Config Files#

Currently, only the omni.sensors WpmDmatApproxRadar model is supported in Isaac Sim, and is described here.

Sensor Materials#

The material system for RTX Radar allows content creators to assign sensor material types to partial material prim names on a USD stage. Radar return behavior depends on material properties (eg. emissivity, reflectivity, etc.), as described below.

Standalone Examples#

For examples of creating RTX Radar see the examples:

./python.sh standalone_examples/api/isaacsim.util.debug_draw/rtx_radar.py

Note

See the Isaac Sim Conventions documentation for a complete list of NVIDIA Isaac Sim conventions.