]>
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".
| Syntax: | Phi = addElecNoise(SD, MeasList, Phi0, SNR); | |
|---|---|---|
| Inputs: | SD | |
| MeasList | ||
| Phi0 | Original noise-free data | |
| SNR | average signal-to-noise ratio (linear, not dB) | |
| Outputs: | Phi | |
| Syntax: | Phi = addShotNoise(SD, MeasList, Phi0, gain, bwidth); | |
|---|---|---|
| Inputs: | SD | |
| MeasList | ||
| Phi0 | Original noise-free data | |
| gain | Model detector gain | |
| bwdith | Model detector bandwidth (Hz) | |
| Outputs: | Phi | |
Gaussian noise is sampled from a distribution
where is a Gaussian distributed random number with mean value and standard deviation . In this case, 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
where is Plank's constant, is the speed of light, is the wavelength of the light, is the electronic gain of the detector, and is the bandwidth of the detector. Given the number of detected photons, the shot noise is
where is a Poisson random process with mean value . For complex-valued , independent random numbers with mean are added to both the real and the imaginary components.