Class ShotNoise
Provide a custom noise on lidar intensity.
Syntax
public class ShotNoise : Transcoder
Fields
_randomValues
Intenal buffer to provide normal distributed random values to the shader.
Declaration
protected ComputeBuffer _randomValues
Field Value
apertureRadius
Declaration
[Tooltip("Radius of photosensor aperture")]
[Field("Aperture Radius(m)", PortDirection.Left, FieldExtra.Read | FieldExtra.Constant)]
[SerializeField]
protected PortType<float> apertureRadius
Field Value
dutyCycle
Declaration
[Tooltip("Photosensor Exposure Duty Cycle")]
[Field("Exposure Duty Cycle(%)", PortDirection.Left, FieldExtra.Read | FieldExtra.Constant)]
[SerializeField]
protected PortType<float> dutyCycle
Field Value
framePeriod
Declaration
[Tooltip("Time elapsed since the last encode request.")]
[Field("FramePeriod", PortDirection.Left, FieldExtra.Read)]
[SerializeField]
protected PortType<float> framePeriod
Field Value
lambda
Declaration
[Tooltip("Lambda for the poisson process.")]
[Field("Noise Lambda(Number of Photons)", PortDirection.Left, FieldExtra.Read | FieldExtra.Constant)]
[SerializeField]
protected PortType<float> lambda
Field Value
noisyIntensity
Declaration
[Tooltip("Output noisy intensity.")]
[Field("Intensity", PortDirection.Right, FieldExtra.Write)]
[SerializeField]
protected PortType<RawData> noisyIntensity
Field Value
rawData
Declaration
[Tooltip("A circular buffer containing the photosensor samples.")]
[Field("RawData", PortDirection.Left, FieldExtra.Read)]
[SerializeField]
protected PortType<RawData> rawData
Field Value
samplingRate
Declaration
[Tooltip("The sampling rate used to fill the incoming raw data.")]
[Field("SamplingRate", PortDirection.Left, FieldExtra.Read)]
[SerializeField]
protected PortType<uint> samplingRate
Field Value
wavelength
Declaration
[Tooltip("Photon Wavelength")]
[Field("Wavelength(nm)", PortDirection.Left, FieldExtra.Read | FieldExtra.Constant)]
[SerializeField]
protected PortType<float> wavelength
Field Value
Methods
Disable()
Disable the change event and release the graphic resources.
Declaration
public override void Disable()
Overrides
Enable(Scheduler.ClockState)
Enable the change event on the input inTranscode, build the random value distribution
and initialize the compute shader.
Declaration
public override void Enable(Scheduler.ClockState clockState)
Parameters
Type |
Name |
Description |
Scheduler.ClockState |
clockState |
The parameters of the waveform associated to this node
|
Overrides
Transcode(CustomPassContext)
Add to the command buffer the application of the noise on the intensity buffer.
Declaration
protected override void Transcode(CustomPassContext ctx)
Parameters
Overrides