ISIS Application Documentation
|Printer Friendly View | TOC | Home|
Radiometric correction of Cassini ISS camera images.
|Overview||Parameters||Example 1||Example 2|
This program performs radiometric corrections on images acquired by the Cassisi Imaging Science Subsystem (ISS) camera. It performs bitweight correction, bias subtraction, dark subtraction, non-linearity correction, flat field correction, DN to flux conversion, and correction factor division. The user may choose between intensity units and I/F for the DN to flux conversion. If you are trying to run cisscal on a cube ingested/created with an ISIS version less than 3.9 and are getting these errors: **ERROR** PVL Keyword [ShutterStateId] does not exist in [Group = Instrument]. **ERROR** Labels do not appear contain a valid Cassini ISS instrument. You will need to reingest the original image using ciss2isis or another ingesting program. This application is derived from the IDL CISSCAL application developed by the Cassini Imaging Central Laboratory for Operations (CICLPOS) using the following set of steps:
Step 1: Correct Bitweight This step is performed on images that do not have a data conversion type of "Table" or compression type of "Lossy" due to loss of information in these processses. This step is also skipped if the image has a zero gain state due to the lack of data for this case. Bitweight correction requires no user defined parameters. It uses a bitweight file found in the Cassini calibration bitweight directory.
Step 2: Subtract Bias This step defaults to a method that uses a line dependent bias. That method derives the bias by performing a linear fit to an array of overclocked pixels taken out of the binary prefix data and saved off by the ciss2isis application. This method cannot be performed if the image has a compression type of "Lossy". In that case, the BiasStripMean value found in the Instrument Group of the cube's labels is subtracted from every pixel. This alternative method cannot be implemented if the instrument used was CAS-ISS3 or earlier since, according to the SIS, the BiasStripMean keyword contains invalid data for these images. Bias subtraction requires no user defined parameters.
Step 3: Subtract Dark This step uses a spline interpolation to construct a dark image by calculating, for each pixel, a duration to be used with the coefficients found in the dark parmeter file. Dark current removal requires no user defined parameters and should be performed on all images. It uses a dark parameter file and if a narrow angle camera was used, a bias distortion table. These are found in the Cassini calibration darkcurrent directory.
Step 4: Linearize This step corrects for non-linearity. It requires no user defined parameters and should be performed on all images. It uses a linearity correction table found in the Cassini calibration linearize directory.
Step 5: Correct Flat field This step consists of two parts: dust ring removal and division by flat field. Dust ring removal only applies to images from narrow angle cameras. This process masks a dust ring found on images and, if the image is recent (after 286th day of 2003), divides out a mottle map. Flat field correction is applied to all images. During this process, each pixel is divided by the average of the center of the image. For SummingMode 2 or 4, the results from this method diverge from the IDL results due to differences in the bilinear method used to expand the flat file image. Flat field correction requires no user defined parameters. If narrow angle, it uses a dust ring file found in the Cassini calibration dustring directory. The dust ring file is determined by the epoch number associated with the file, the program choses the file with the largest epoch before the time stamp of the image being calibrated. It also uses a mottle file and an effective wavelength file found in dustring and efficiency directories. And, for any image a slope database and a flat file are used,found in slope and slope/slope2flat directories.
Step 6: Convert DN to Flux This step consists of 4 processes and the user must enter a value of "intensity" or "I/F" for the parameter "units". In the first process, DNs are converted to electrons by multiplying by the true gain. Second, the image is divided by the exposure time, correcting for shutter offset effect. Third, the image is divided by the optics area and, if intensity units are chosen, divided by the solid angle. In the last process, each pixel is divided by an efficiency factor. This value is dependent on the flux units chosen by the user: intensity units (photons/cm2/s/nm/ster) or I/F (irradiance over solar flux). If "I/F" is chosen, the input cube must have been run through the Isis3 application spiceinit to be able to calculate Solar Distance. The results from this method diverge from the IDL results due to differences in the way they calculate solar distance. However, the DN results are still within 0.2% after we divide by the efficiency factor. DN to Flux conversion should be performed on all images. Converting DN to flux units requires a shutter offset file, a spectral file (if I/F is chosen), a transmission file, and a quantum efficiency correction file found in the Cassini calibration offset, efficiency, efficiency/systrans and correction directories.
Step 7: Divide by Correction Factor This step is implemented in order to force theory and observation to match. It consists of 2 processes. First, the image is divided by its correction factor. This step requires no user defined parameters. It uses a correction factor file found in the Cassini calibration correction directory. Second, a sensitivity vs time correction is completed. A sensitivity value is calculated based off of the instrument Id and the image is multiplied by this value.
Omitted IDL Steps: In the original IDL program, there were 2 steps that were omitted in this application since they act as noise removal that can be filtered using other applications after calibration is complete. The first omitted step is 2-Hz noise removal. This is meant to remove horizontal banding patterns introduced during image readout of Cassini ISS images and has two peaks in the power spectrum near 2Hz. There are two methods to this correction. The first method invovles the smoothing and filtering of the overclocked pixel array, thus removing high frequency random noise, slow-varying, and DC-offset components. The second method requires large regions of dark sky pixels present for all lines and uses an image mean to construct a 2-Hz signal. The second omitted step is A-B pixel pairs correction (also referred to as anti-blooming correction or bright/dark pixel pair removal). In the IDL program, this correction is only performed if the labels of the image indicate that the AntiBloomingStateFlag is "On" and the InstrumentModeId is "Full" (i.e., SummingMode is 1). In this correction, bright/dark pixel pairs are identified and replaced with a boxcar average of their horizontal neighbors.
Use this parameter to choose an Isis cube to be calibrated. To ensure that it contains all needed keywords in its label, input cube should have been imported using ciss2isis and, if "I/F" is chosen, input cube must have been run through spiceinit application.
Use this parameter to select the output filename of the calibrated Isis cube.
A list of the types of units to which user may choose to convert from DNs.
Cube calibrated using intensity units.
This example shows how to calibrate a Cassini ISS cube, converting to intensity units.
cisscal from=../IN/inputCube.cub to=../OUT/outputCube.cub units=INTENSITY
Run the cisscal application to calibrate the cube.
Cube calibrated using I/F.
This example shows how to calibrate a Cassini ISS cube, converting to I/F.
cisscal from=../IN/inputCube.cub to=../OUT/outputCube.cub
Run the cisscal application to calibrate the cube.