tempusSystem Class SensorNoiseSNR
SensorNoiseSNR is part of the WaveTrain system class library

SensorNoiseSNR is similar to SensorNoise, but has extra functionality. The principal reason for using SensorNoiseSNR is to calculate a per frame signal to noise ratio by treating all input intensity as signal and all added counts as noise. Per frame SNR is calculated as the mean of the signal divided by the standard deviation of added noise. The quantaties are averaged over all pixels with signal above a specified relative threshold of the maximum signal value.
There is an additional flag to specify if negative counts are allowed or set to zero (SensorNoise always clips negative count values to zero when digitizing counts). The default is to clip negative counts, i.e., to match the behaviour of SensorNoise.
SensorNoise is used for two related but distinct purposes:
(1) spatial integration of sensor outputs (or actually, of any input Grid);
(2) addition of photoelectron conversion shot noise, other electronic noise and background variations, and A/D quantization.
Spatial integration is performed by specifying a new mesh whose spacing is coarser than the mesh on which the input exists. See the WT User Guide for details regarding the spatial integration rules and the mesh specifications. To only add noise without spatial integration, specify a new mesh that is identical to the input mesh. The new mesh defines the size of "physical" sensor pixels in which the subsequent noise effects and A/D quantization are computed.
The noise effects available are photoelectron conversion shot noise and signal-independent noise (representing, e.g., CCD read-out noise). The signal-independent noise in the physical pixels consists of independent samples of a Gaussian random variable with specified rms value. Additionally, nonuniform background and responsivity maps can be specified. Input quantum efficiency and responsivity (digital counts per photoelectron) are used to convert the input integratedIntensity to digital counts. Finally, a saturation value of digital counts can be specified.
All noise effects can be turned off by means of a single parameter, "addNoise"; this includes the truncation associated with A/D digitization. However, the conversion from input integratedIntensity units to counts units will always be performed: if "addNoise" = "false" the difference is that fractional counts will be reported.

Tempus Block Diagram Editor Snapshot
Parameters
detectorGrid  GridGeometry   Geometry of new, "physical" pixel mesh: set with functions "gwoom" or "GridGeometry"   
wavelength  float   Wavelength used in computing energy per photon   
quantumEfficiency  float   Photoelectrons per incident photon   1.0
rmsSignalIndependentNoise  float   RMS value (Gaussian PDF), in digital counts   
background  Grid<float>   In digital counts   
responsivity  Grid<float>   Digital counts per photoelectron (A/D conversion)   
maxCount  int   Maximum possible digital count (saturation)   
addNoise  bool   Controls whether noise and digitization truncation are applied   false
iseed  int   Random number seed for noise effects   -123456789
relThreshSNR  float   Relative threshold to select pixels for SNR calculation   0.05
clipNegative  bool   Clip negative counts to zero   true
Inputs
integratedIntensity  Grid<float>   IntegatedIntensity (J/m^2) from a sensor plane   
Outputs
detectorCounts  Grid<float>   Digital counts in the "physical" pixels of the new mesh   
SNR  float   Signal to noise ratio 0.0  
Subsystems


Last Saved: Thu Feb 21 15:03:35 MST 2008 by TVE version 2007B