RMV Operations Manual Revision Copyright illunis LLC, 2014
Page 92
The RMV can calculate SNR on each frame by analyzing the noise in the black
clamp areas of the CCD and measuring the maximum pixel brightness in the image
area. The detector measures:
N Number of pixels in SNR detector window
SUM
Sum of the pixel values in the SNR window
SQR
Sum of the square of the pixel values in the SNR window
MAX
Maximum pixel value of the tap area intersected by AE window area
From these numbers we calculate
Bmean = SUM / N;
Bsdev = √ ((N * SQR - SUM * SUM) / ( N * (N -1)));
Bmean must be greater than Bsdev * 3
If it is not then the black clamp must be raised
SNR = 20 * log ((MAX - Bmean) / Bsdev)
DNR = ((MAX - Bmean) / Bsdev;
BITS = log (DNR) / log (2); where BITS < 4095
RMS noise in ADC counts = Bsdev—1.0
// C Code to Calculate SNR in DB
fsum
= (
float
) snr_sum * 16;
//
16 is sum scale
fsqr
= (
float
) snr_sqr * 16 * 64;
// 64 is mult scale,
fn
= (
float
) snr_n;
fmax
= (
float
) snr_max;
fblk_mean
= fsum/fn;
fstd_dev
= sqrt( (fn * fsqr - fsum * fsum) / (fn * (fn -1)));
if
( fblk_mean > (3 * fstd_dev) )
// Make sure noise is measurable
{
fdr = (fmax - fblk_mean) / fstd_dev;
fsnr = 20.0 * log10( fdr );
bits = log( fdr ) / log( 2 );
// ENOB
}
System Noise Calculation:
The noise can be calculated as fstd_dev from above in counts.
at 244.14uV/count we can get the uV of noise
For example the KAI-11000 color camera has a RMS count of 2.3, and 13uV/e
A count of 2.3 => 244.14*2.3 = 561uV of noise
Then 561uV/13uV/e = 43e
C Code to calculate SNR from detector values