irlincor: Correct IR imager frames for non-linearity

Package: irred

Usage

irlincor input output

Parameters

input
The list of images to be corrected for non-linearity
output
The list of corrected output images
coeff1 = 1.0
The first coefficient of the correction function
coeff2 = 0.0
The second coefficient of the correction function
coeff3 = 0.0
The third coefficient of the correction function

Description

The IR imager frames specified by input, which may be a general image template including wild cards or an @list, are corrected for non-linearity on a pixel by pixel basis and written to output. The number of output images must match the number input. The pixel type of the output image(s) will match that of the input image(s), however, internally all calculations are performed as type real. The correction is performed assuming that the non-linearity can be represented by the following simple relationship:

ADU' = ADU * [ coeff1 + coeff2 * (ADU / 32767) + coeff3 * (ADU / 32767)**2 ]

The coefficients which occur in this expression are specified by the parameters coeff1, coeff2 and coeff3. Their values are derived from periodic instrumental calibrations and are believed to be fairly constant. The default values specify a null correction. You should consult Jay Elias for the latest values. Note that the coefficients are expressed in terms of ADU normalised to the maximum possible value 32767, in order that their values can be input more easily.

Examples

1. Correct input to output using the default values for the coefficients (not a very rewarding operation!)

cl> irlincor input output

2. Correct a list of images in place using specified values for the coefficients

cl> irlincor @list @list coeff1=1.0 coeff2=0.1 coeff3=0.01

Time requirements

Authors

The IRLINCOR task was originally written by Steve Heathcote as part of the CTIO package.

Bugs

The form of the correction equation is currently experimental; a higher order polynomial or a different functional form could be accommodated very easily if required. It may be advisable to carry out the calculations in double precision.

See also

onedspec.coincor, proto.imfunction