Omni Sensors Schema#

Typed Schema#

OmniSensor#

Typed schema representing a transformable sensor

Describes minimal set of common sensor params (extrinsics). Mainly for semantic purposes and for identifying sensors programmatically on the stage.

Inherits from: Xformable

Properties#

Name

Type

Default

Description

proxyPrim

rel

The proxyPrim relationship allows us to link a prim whose purpose is “render” to its (single target) purpose=”proxy” prim. This is entirely optional, but can be useful in several scenarios:

  • In a pipeline that does pruning (for complexity management) by deactivating prims composed from asset references, when we deactivate a purpose=”render” prim, we will be able to discover and additionally deactivate its associated purpose=”proxy” prim, so that preview renders reflect the pruning accurately.

  • DCC importers may be able to make more aggressive optimizations for interactive processing and display if they can discover the proxy for a given render prim.

  • With a little more work, a Hydra-based application will be able to map a picked proxy prim back to its render geometry for selection.

Note

It is only valid to author the proxyPrim relationship on prims whose purpose is “render”.

purpose

token

“default”

Allowed tokens: “default”, “render”, “proxy”, “guide”

Purpose is a classification of geometry into categories that can each be independently included or excluded from traversals of prims on a stage, such as rendering or bounding-box computation traversals.

See for more detail about how purpose is computed and used.

visibility

token

“inherited”

Allowed tokens: “inherited”, “invisible”

Visibility is meant to be the simplest form of “pruning” visibility that is supported by most DCC apps. Visibility is animatable, allowing a sub-tree of geometry to be present for some segment of a shot, and absent from others; unlike the action of deactivating geometry prims, invisible geometry is still available for inspection, for positioning, for defining volumes, etc.

xformOpOrder

token[]

None

Encodes the sequence of transformation operations in the order in which they should be pushed onto a transform stack while visiting a UsdStage’s prims in a graph traversal that will effect the desired positioning for this prim and its descendant prims.

You should rarely, if ever, need to manipulate this attribute directly. It is managed by the AddXformOp(), SetResetXformStack(), and SetXformOpOrder(), and consulted by GetOrderedXformOps() and GetLocalTransformation().

OmniRadar#

Typed schema representing a radar sensor, has all attributes of its base class

Inherits from: OmniSensor

OmniLidar#

Typed schema representing a lidar sensor, has all attributes of its base class

Inherits from: OmniSensor

OmniUltrasonic#

Typed schema representing an ultrasonic sensor, has all attributes of its base class (currently not in use)

Inherits from: OmniSensor

OmniGeneralSensor#

Fallback schema for sensor types we haven’t considered yet, but a user might want to specify, e.g. gravity wave sensor, has all attributes of its base class (currently not in use)

Inherits from: OmniSensor

API Schemas#

OmniSensorAPI#

This API schema defines attributes necessary to specify a sensor model. Model implementations are expected to prepend this schema and set those attributes to the model they represent.

Inherits from: APISchemaBase

Can only apply to: OmniSensor

Properties#

Name

Type

Default

Description

omni:sensor:marketName

string

“”

Specifies the sensor market marketName for this sensor.

omni:sensor:modelName

string

“”

Specifies the model to be used for evaluating this sensor. The special string ‘latest’ is reserved as a hint to the simulation to use the latest best model for this marketName.

omni:sensor:modelVendor

string

“”

Specifies the vendor that authored the given model.

omni:sensor:modelVersion

string

“”

Specifies the version of the model to be used for evaluating this sensor. The special string ‘latest’ is reserved as a hint to the simulation to use the latest available version of the model.

omni:sensor:tickRate

float

0.0

Tick rate of the sensor in Hz. Note that this is a hint to the simulation about the expected rate at which the sensor should be ticked, it does not in itself drive the ticking of the sensor.

OmniSensorEncryptionAPI#

This API schema defines attributes necessary to specify encrypted parameters for a sensor model. (not in use)

Inherits from: APISchemaBase

Can only apply to: OmniSensor

Properties#

Name

Type

Default

Description

omni:sensor:encryption:params

uchar[]

[]

Blob of bytes that represents an encrypted parameters that the specified model will understand. If filled, the decrypted parameters trump any parameters specified in USD.

OmniSensorGenericLidarCoreEmitterStateAPI#

API Defines generic lidar emitter state

Inherits from: APISchemaBase

Multiple Apply API: Yes

Property Namespace Prefix: omni:sensor:Core:emitterState

Properties#

Name

Type

Default

Description

azimuthDeg

float[]

Array of 128 values from -3.0 to 3.0

Azimuth of the emitters in degrees; Has numberOfEmitters elements; Changing the number of elements at runtime is not supported.

elevationDeg

float[]

Array of 128 values from -15.0 to 10.0

Elevation of the emitters in degrees; Has numberOfEmitters elements; Changing the number of elements at runtime is not supported.

fireTimeNs

uint[]

Array of 128 values: 16 zeros, followed by 7 groups of 16 values increasing by 3500ns each

Fire time of the emitters in ns – delta to the azimuth tick start time; Has numberOfEmitters elements; Changing the number of elements at runtime is not supported.

channelId

uint[]

Array of 128 values from 1 to 128

Corresponding channel id of the emitters; Has numberOfEmitters elements; Changing the number of elements at runtime is not supported.

rangeId

uint[]

[]

Corresponding range id of the emitters; Has numberOfEmitters elements or empty; Changing the number of elements at runtime is not supported.

vertOffsetM

float[]

[]

Vertical offset of the emitters in meters; Has numberOfEmitters elements or empty; Changing the number of elements at runtime is not supported.

horOffsetM

float[]

[]

Horizontal offset of the emitters in meters; Has numberOfEmitters elements or empty; Changing the number of elements at runtime is not supported.

distanceCorrectionM

float[]

[]

Distance correction of the emitters in meters; Has numberOfEmitters elements or empty; Changing the number of elements at runtime is not supported.

focalDistM

float[]

[]

Focal distance of the emitters in meters; Has numberOfEmitters elements or empty; Changing the number of elements at runtime is not supported.

focalSlope

float[]

[]

Focal slope of the emitters; Has numberOfEmitters elements or empty; Changing the number of elements at runtime is not supported.

reportRateDiv

float[]

[]

Report rate divisor of the emitters; Has numberOfEmitters elements or empty; Changing the number of elements at runtime is not supported.

bank

uint[]

[]

Bank/line of the emitters; Has numberOfEmitters elements or empty; Changing the number of elements at runtime is not supported.

roi

bool[]

[]

Is the emitter part of the ROI; Has numberOfEmitters elements or empty; Changing the number of elements at runtime is not supported.

isROIState

bool

false

Is the emitter state a ROI state

OmniSensorGenericLidarCoreAPI#

API Defines generic lidar using Core model

Inherits from: APISchemaBase

Applies to: OmniLidar

Prepend API Schemas:
  • OmniSensorAPI

  • OmniSensorEncryptionAPI

  • OmniSensorGenericLidarCoreEmitterStateAPI:s001

Properties#

Name

Type

Default

Description

omni:sensor:Core:auxOutputType

token

“NONE”

Allowed tokens: “NONE”, “BASIC”, “EXTRA”, “FULL”

sets the desired level of detail of the output auxiliary data; Runtime changes not supported, yet.

omni:sensor:Core:elementsCoordsType

token

“SPHERICAL”

Allowed tokens: “CARTESIAN”, “SPHERICAL”

sets the desired coordinate system for the output basic elements (not auxiliary data)); Runtime changes not supported, yet.

omni:sensor:Core:outputMotionCompensationState

token

“NONCOMPENSATED”

Allowed tokens: “NONCOMPENSATED”, “COMPENSATED”

sets the desired motion compensation state for all outputs (including auxiliary data); Runtime changes not supported, yet.

omni:sensor:Core:outputFrameOfReference

token

“SENSOR”

Allowed tokens: “SENSOR”, “WORLD”, “CUSTOM”

sets the desired frame of reference for all outputs (including auxiliary data); Runtime changes not supported, yet.

omni:sensor:Core:customFrameOfReferenceTrafo

float[]

[0,0,0,0,0,0]

used only if outputFrameOfReference = CUSTOM. defines the transformation for the custom frame of reference. structured as [x,y,z,roll,pitch,yaw]; Runtime changes not supported, yet.

omni:sensor:Core:skipDroppingInvalidPoints

bool

false

when false the model will drop invalid points; Runtime changes not supported, yet.

omni:sensor:Core:scanType

token

“ROTARY”

Allowed tokens: “ROTARY”, “SOLID_STATE”

Scanning principle of the sensor; Runtime changes not supported, yet.

omni:sensor:Core:intensityProcessing

token

“NORMALIZATION”

Allowed tokens: “RAW”, “NORMALIZATION”, “CORRECTION”

Intensity processing mode

omni:sensor:Core:rotationDirection

token

“CW”

Allowed tokens: “CW”, “CCW”

Rotation direction of the sensor – only for rotary sensors

omni:sensor:Core:rayType

token

“IDEALIZED”

Allowed tokens: “IDEALIZED”, “GAUSSIAN_BEAM”, “UNIFORM_BEAM”

Ray type of the sensor; Runtime changes not supported, yet.

omni:sensor:Core:nearRangeM

float

0.3

Minimum range of the sensor in meters

omni:sensor:Core:farRangeM

float

200.0

Maximum range of the sensor in meters

omni:sensor:Core:reflectionPowerFraction

float

0.5

Fraction of the reflection power for multiple returns.

omni:sensor:Core:transmissionPowerFraction

float

1.0

Fraction of the transmission power for multiple returns.

omni:sensor:Core:startAzimuthOffsetDeg

float

0.0

Start azimuth offset angle of the sensor in degrees – in sensor market model frame

omni:sensor:Core:validStartAzimuthDeg

float

0.0

Valid start azimuth angle of the sensor in degrees – in sensor market model frame

omni:sensor:Core:validEndAzimuthDeg

float

360.0

Valid end azimuth angle of the sensor in degrees – in sensor market model frame

omni:sensor:Core:minAzimuthROI

float

400.0

Start azimuth point of the ROI part of the pattern – in sensor market model frame

omni:sensor:Core:maxAzimuthROI

float

400.0

End azimuth point of the ROI part of the pattern – in sensor market model frame

omni:sensor:Core:rangeResolutionM

float

0.004

Range resolution of the sensor in meters

omni:sensor:Core:rangeAccuracyM

float

0.02

Range accuracy of the sensor in meters

omni:sensor:Core:minDistBetweenEchosM

float

0.4

Minimum distance between two echos in meters

omni:sensor:Core:rangeOffsetM

float

0.0

Range for which objects are invisible – useful for sensors inside objects

omni:sensor:Core:avgPowerW

float

0.002

Average power per emitter in watts

omni:sensor:Core:minReflectance

float

0.1

Minimum reflectance value of an object for a guarantueed Pointcloud at minReflectionRange

omni:sensor:Core:minReflectionRangeM

float

200.0

Minimum range for a guaranteed detection of an object with minReflectance

omni:sensor:Core:waveLengthNm

float

903.0

Wavelength of the sensor in nm

omni:sensor:Core:pulseTimeNs

uint

6

Pulse time of the sensor in ns

omni:sensor:Core:focusDistM

float

0.15

Focus distance of the sensor in meters

omni:sensor:Core:Msquared

float

1.4

M squared value of the sensor

omni:sensor:Core:beamWaistHorM

float

0.002

Beam waist horizontal of the sensor in meters

omni:sensor:Core:beamWaistVerM

float

0.002

Beam waist vertical of the sensor in meters

omni:sensor:Core:divergenceHorDeg

float

0.0

Divergence horizontal of the sensor in degrees

omni:sensor:Core:divergenceVerDeg

float

0.0

Divergence vertical of the sensor in degrees

omni:sensor:Core:aspectRatio

float

1.0

Aspect ratio of the detector

omni:sensor:Core:effectiveApertureSizeM

float

0.01

Effective aperture size of the sensor in meters

omni:sensor:Core:quantumEfficiency

float

0.9

Quantum efficiency of the detector

omni:sensor:Core:pixelPitch

float

40.0

Pixel pitch of the detector

omni:sensor:Core:calibrationGain

float

40.0

Calibration gain of the sensor

omni:sensor:Core:bitDepthResolution

float

65536.0

Bit depth resolution of the sensor

omni:sensor:Core:scanRateBaseHz

uint

10

Scan rate base of the sensor in Hz; Runtime changes not supported, yet.

omni:sensor:Core:reportRateBaseHz

uint

36000

Report rate base of the sensor in Hz; Runtime changes not supported, yet.

omni:sensor:Core:numberOfEmitters

uint

128

Number of emitters of the sensor; Runtime changes not supported, yet.

omni:sensor:Core:numberOfChannels

uint

128

Number of channels of the sensor; Runtime changes not supported, yet.

omni:sensor:Core:maxReturns

uint

2

Maximum number of returns of the sensor; Runtime changes not supported, yet.

omni:sensor:Core:azimuthErrorMean

float

0.0

Mean value of the azimuth error in degrees

omni:sensor:Core:azimuthErrorStd

float

0.005

Standard deviation of the azimuth error in degrees

omni:sensor:Core:elevationErrorMean

float

0.0

Mean value of the elevation error in degrees

omni:sensor:Core:elevationErrorStd

float

0.0

Standard deviation of the elevation error in degrees

omni:sensor:Core:originErrorMean

float[]

[0.0,0.0,0.0]

Mean value of the origin error in meters

omni:sensor:Core:originErrorStd

float[]

[0.0,0.0,0.0]

Standard deviation of the origin error in meters

omni:sensor:Core:intensityMappingType

token

“LINEAR”

Allowed tokens: “LINEAR”, “NONLINEAR”, “NONLINEAR_ENCODING_ONLY”, “NONLINEAR_DECODING_ONLY”

Intensity mapping type

omni:sensor:Core:intensityScalePercent

float

255.0

Intensity scale percent

omni:sensor:Core:intensityMappingEncoding

float[]

[]

Intensity mapping encoding; Changing the number of elements at runtime is not supported.

omni:sensor:Core:intensityMappingDecoding

float[]

[]

Intensity mapping decoding; Changing the number of elements at runtime is not supported.

omni:sensor:Core:numLines

uint

0

Number of lines of the sensor; Runtime changes not supported, yet.

omni:sensor:Core:numRaysPerLine

uint[]

[]

Number of points per line of the sensor; Has numLines elements; Changing the number of elements at runtime is not supported.

omni:sensor:Core:rangeCount

uint

0

Number of range regions of the emitters

omni:sensor:Core:rangesMinM

float[]

[]

Minimum ranges of the emitters in meters; Has rangeCount elements; Changing the number of elements at runtime is not supported.

omni:sensor:Core:rangesMaxM

float[]

[]

Maximum ranges of the emitters in meters; Has rangeCount elements; Changing the number of elements at runtime is not supported.

omni:sensor:Core:stateResolutionStep

uint

1

State resolution step of the sensor – Handles switching between states

omni:sensor:Core:emitterStatesFile

string

“”

File containing the emitter states of the sensor; Not supported, yet.

OmniSensorGenericRadarWpmDmatScanCfgAPI#

API Defines generic radar scan configuration

Inherits from: APISchemaBase

Multiple Apply API: Yes

Property Namespace Prefix: omni:sensor:WpmDmat:scan

Properties#

Name

Type

Default

Description

raysPerDeg

float

8.0

ray tracing density; Runtime changes not supported, yet.

timeOffsetUsec

uint

0

time offset of the scan from the frame time to simulate non-equidistant scans

powerFactor

float

1.0

power factor for the scan tx power

binsFromSpec

bool

true

deduce number of bins from spec parameters

enAngAliasing

bool

false

enable angular aliasing

detValFromBinIdx

bool

false

calculate detection value from bin index of the detection peak

elevMode

token

“FULL_EL”

Allowed tokens: “NO_EL”, “POS_EL”, “FULL_EL”

elevation mode

maxRangeM

float

200

max detection range of the scan in meters

maxAzAngDeg

float

66

max azimuth angle of the scan in degrees; Runtime changes not supported, yet.

maxElAngDeg

float

20

max elevation angle of the scan in degrees; Runtime changes not supported, yet.

rangeResM

float

0.4

range resolution of the scan in meters

velResMps

float

0.147

velocity resolution of the scan in meters per second

boreAzResDeg

float

1.3

azimuth resolution of the scan in degrees at bore sight

boreElResDeg

float

5.0

elavation resolution of the scan in degrees at bore sight

rBins

uint

112

number of range bins of the scan

vBins

uint

160

number of velocity bins of the scan

azBins

uint

12

number of azimuth bins of the scan

elBins

uint

2

number of elevation bins of the scan

cfarRnT

uint

1

cfar number of test cells for the scan in range dimension

cfarRnG

uint

0

cfar number of guard cells for the scan in range dimension

cfarVnT

uint

1

cfar number of test cells for the scan in velocity dimension

cfarVnG

uint

0

cfar number of guard cells for the scan in velocity dimension

cfarAznT

uint

1

cfar number of test cells for the scan in azimuth dimension

cfarAznG

uint

0

cfar number of guard cells for the scan in azimuth dimension

cfarElnT

uint

1

cfar number of test cells for the scan in elevation dimension

cfarElnG

uint

0

cfar number of guard cells for the scan in elevation dimension

cfarMinVal

float

7e-17

minimum energy value in a bin to be used in cfar detection

cfarOffset

float

1.0

cfar threshold offset value (multiplier)

cfarNoiseMean

float

0.0

noise mean value for cfar detection

cfarNoiseSDev

float

0.0

noise standard deviation value for cfar detection

maxVelMpsSequence

float[]

[50.0, 55.0]

max unambiguous velocity sequence of the scan in meters per second

rcsTuningCoefficients

float[]

[-12, 150, 0.0]

RCS tuning polynomial coefficients. 0: detections with RCS in dBsm lower than this threshold will be removed; 1: multiplied with RCS before conversion to dBsm. Set to 1 if no change is needed; 2: standard deviation of rcs noise in dBsm. Set to 0 if no noise is needed.

azimuthRadNoiseMean

float

0.0

mean value of the azimuth noise in radians

azimuthRadNoiseSDev

float

0.0

standard deviation of the azimuth noise in radians

rangeNoiseMean

float

0.0

mean value of the range noise in meters

rangeNoiseSDev

float

0.0

standard deviation of the range noise in meters

OmniSensorGenericRadarWpmDmatAPI#

API Defines generic radar using WpmDMAT model

Inherits from: APISchemaBase

Applies to: OmniRadar

Prepend API Schemas:
  • OmniSensorAPI

  • OmniSensorEncryptionAPI

  • OmniSensorGenericRadarWpmDmatScanCfgAPI:s001

Properties#

Name

Type

Default

Description

omni:sensor:WpmDmat:auxOutputType

token

“NONE”

Allowed tokens: “NONE”, “BASIC”

sets the desired level of detail of the output auxiliary data; Runtime changes not supported, yet.

omni:sensor:WpmDmat:elementsCoordsType

token

“SPHERICAL”

Allowed tokens: “CARTESIAN”, “SPHERICAL”

sets the desired coordinate system for the output basic elements (not auxiliary data)); Runtime changes not supported, yet.

omni:sensor:WpmDmat:outputFrameOfReference

token

“SENSOR”

Allowed tokens: “SENSOR”, “WORLD”, “CUSTOM”

sets the desired frame of reference for all outputs (including auxiliary data); Runtime changes not supported, yet.

omni:sensor:WpmDmat:customFrameOfReferenceTrafo

float[]

[0,0,0,0,0,0]

used only if outputFrameOfReference = CUSTOM. defines the transformation for the custom frame of reference. structured as [x,y,z,roll,pitch,yaw]; Runtime changes not supported, yet.

omni:sensor:WpmDmat:waveLengthMm

float

3.9

operational wavelength of the radar; Runtime changes not supported, yet.

omni:sensor:WpmDmat:traceTreeDepth

uint

3

max number of bounces to trace; Runtime changes not supported, yet.

omni:sensor:WpmDmat:instanceTimeOffsetUsec

uint

5000

time offset of this radar instance to simulate continuous firing in a group of radars; Runtime changes not supported, yet.

omni:sensor:WpmDmat:cfarMode

token

“2D”

Allowed tokens: “2D”, “4D”

cfar processing mode

omni:sensor:WpmDmat:antennaGainMode

token

“COSINEFALLOFF”

Allowed tokens: “CONSTANT”, “COSINEFALLOFF”

antenna gain profile

OmniSensorGenericCameraIspAPI#

API Defines generic camera sensor and ISP using Core model

Inherits from: APISchemaBase

Applies to: Camera

Prepend API Schemas:
  • OmniSensorAPI

  • OmniSensorEncryptionAPI

Properties#

Currently empty (camera params will be exposed in a future release)

OmniSensorDepthSensorSingleViewAPI#

API Defines generic depth sensor camera using Core model

Inherits from: APISchemaBase

Applies to: RenderProduct

Properties#

Name

Type

Default

Description

omni:rtx:post:depthSensor:enabled

bool

0

Enable stereo disparity generation. (deprecated carb setting path: ‘/rtx/post/depthSensor/enabled’)

omni:rtx:post:depthSensor:baselineMM

float

55.0

Distance between the two cameras in millimeters. (deprecated carb setting path: ‘/rtx/post/depthSensor/baselineMM’)

omni:rtx:post:depthSensor:focalLengthPixel

float

897.0

Focal length of the camera in pixels. (deprecated carb setting path: ‘/rtx/post/depthSensor/focalLengthPixel’)

omni:rtx:post:depthSensor:sensorSizePixel

float

1280.0

Size of the camera sensor in pixels. (deprecated carb setting path: ‘/rtx/post/depthSensor/sensorSizePixel’)

omni:rtx:post:depthSensor:maxDisparityPixel

float

110.0

Maximum disparity value in pixels. (deprecated carb setting path: ‘/rtx/post/depthSensor/maxDisparityPixel’)

omni:rtx:post:depthSensor:noiseMean

float

0.25

Mean value for noise generation. (deprecated carb setting path: ‘/rtx/post/depthSensor/noiseMean’)

omni:rtx:post:depthSensor:noiseSigma

float

0.25

Standard deviation for noise generation. (deprecated carb setting path: ‘/rtx/post/depthSensor/noiseSigma’)

omni:rtx:post:depthSensor:noiseDownscaleFactorPixel

float

1.0

Factor to downscale noise texture in pixels. (deprecated carb setting path: ‘/rtx/post/depthSensor/noiseDownscaleFactorPixel’)

omni:rtx:post:depthSensor:confidenceThreshold

float

0.95

Threshold for confidence filtering. (deprecated carb setting path: ‘/rtx/post/depthSensor/confidenceThreshold’)

omni:rtx:post:depthSensor:outlierRemovalEnabled

int

3

Samples separated by this range (in pixels) will be removed. (deprecated carb setting path: ‘/rtx/post/depthSensor/outlierRemovalEnabled’)

omni:rtx:post:depthSensor:minDistance

float

0.5

Minimum distance for disparity generation. (deprecated carb setting path: ‘/rtx/post/depthSensor/minDistance’)

omni:rtx:post:depthSensor:maxDistance

float

10000000.0

Maximum distance for disparity generation. (deprecated carb setting path: ‘/rtx/post/depthSensor/maxDistance’)

omni:rtx:post:depthSensor:rgbDepthOutputMode

int

0

RGB output mode. (deprecated carb setting path: ‘/rtx/post/depthSensor/rgbDepthOutputMode’)

omni:rtx:post:depthSensor:showDistance

bool

0

Show distance for disparity generation. (deprecated carb setting path: ‘/rtx/post/depthSensor/showDistance’)