]> Adding Synthetic Noise

Adding Synthetic Noise

When modeling system performance or testing algorithms, it is important to add noise to the simulated "data" to accurately model system performance. The PMI toolbox includes routines for adding both Gaussian-distributed noise (e.g., electronic amplifier noise) and Poisson-distributed noise (e.g., detector shot noise) to simulated "data".

Function Summary

Syntax: Phi = addElecNoise(SD, MeasList, Phi0, SNR);
Inputs: SD SD structure
MeasList Measurement List that corresponds to Phi0
Phi0 Original noise-free data
SNR average signal-to-noise ratio (linear, not dB)
Outputs: Phi Phi0 with added Gaussian noise
Syntax: Phi = addShotNoise(SD, MeasList, Phi0, gain, bwidth);
Inputs: SD SD structure
MeasList Measurement List that corresponds to Phi0
Phi0 Original noise-free data
gain Model detector gain
bwdith Model detector bandwidth (Hz)
Outputs: Phi Phi0 with added Poisson noise

Detailed Descriptions

Gaussian noise is sampled from a distribution

φ noise = N 0 σ SNR

where N μ σ is a Gaussian distributed random number with mean value μ and standard deviation σ. In this case, σ SNR is selected such that the RMS signal to noise ratio is equal to the user-requested SNR.

Shot noise is sampled from a Poisson distribution. Before generating the random numbers, however, the measured fluence must be converted into the number (count) of photos received at the detector

N γ = B G h c λ φ 0

where h is Plank's constant, c is the speed of light, λ is the wavelength of the light, G is the electronic gain of the detector, and B is the bandwidth of the detector. Given the number of detected photons, the shot noise is

φ noise = G B λ h c N p N γ - φ 0

where N p ν is a Poisson random process with mean value ν. For complex-valued φ, independent random numbers with mean N γ / 2 are added to both the real and the imaginary components.