The calibration type affects how the calibration is defined and how the calibration response curve (calibration LUT) is calculated. Supported types are:
mcitFreeForm: The calibration is calculated from a number of
user-defined sample points that are fit to a polynomial.
The type of polynomial and its order are set via SetSamplePoints
and FittingMode.
mcitOD: Standard optical density calibration. The calibration is defined by two intensity values: Black Level = the intensity read by the acquisition device for totally opaque samples. Incident Level = the intensity read by the acquisition device for totally transparent regions. The calibration response curve is calculated using the standard optical density formula, which assumes that light decays exponentially as it goes through light- transmitting material: OD(x,y) = -log ((I(x,y) - BL) / (IL - BL)), where BL and IL are the Black Level and the Incident Level respectively, and I(x,y) is the intensity at location x,y.
mcitLUT: The calibration is not calculated, but it is defined by a LUT given by the client. This LUT has the same format as the one that would be calculated by the other methods.
All three types above use a LUT contains N double floating point values that map gray levels into calibrated values as follow: CI(x,y) = (k - ki) * (LUT[ki+1] - LUT[ki]) + LUT[ki] where CI(x,y) and I(x,y) are the calibrated intensity value and gray level at pixel(x,y), k = (I(x,y) - InputMin) * (N - 1) / (InputMax - InputMin), ki = integer value of k, InputMin and InputMax are user defined values that specify the range of gray levels mapped by the calibration LUT.
mcitNeutral: A neutral calibration where calibrated values are mapped directly to gray levels. This calibration is useful to associate a calibration unit name with an image.