jitterfit
Characterize jitter for rolling shutter images.
This program calculates two sets of polynomial coefficients that characterize the jitter in an image acquired by a rolling shutter instrument. One polynomial for the line direction and one for the sample direction. The ISIS camera model for the instrument can then use the coefficients to adjust for the time dependent jitter.
The coefficients are calculated by coregistering lines in the main cube with each line in the check line cube, where each check line was acquired durring the readout of the main cube using the same detector, but at a different time. The registration produces sample and line offsets which are fed into a least squares solution to determin the coeficients of an Nth degree polynomial in time. The coefficients are written to the cube label for use by the ISIS camera model.
The main cube (FROM) is expected to be a full frame image collected by a rolling shutter sensor. The cube must have a table named "Normalized Main Readout Line Times" containing records for each line in the cube where the first column contains the sensor line number used to collect the corresponding image line, and the second column contains the associated exposure time (normalized -1 to 1). A table that meet these requirements is attacted to the cube during ingestion to ISIS (i.e., eis2isis).
The checkline cube is expected to have individual lines (possibly repeated) from the same sensor as the main cube. The checklines must be read during the readout of the main image sequence. A table named "Normalized Main Readout Line Times" containing records for each check line where the first column is the sensor line number used to collect the corresponding check line and the second column contains the normalized time the line was exposed. The same minimum and maximum must be used to normalize these times as was used for the main image times.
An example line readout order for a 100 line sensor with 3 check lines read 3 times each could be (readout time for a line = line exposure number * exposure duration):Type Line Exp# Number -------------------- Main 1-10 1-10 Check 75 11 Main 11-20 12-21 Check 50 22 Main 21-30 23-32 Check 25 33 Main 31-40 34-43 Check 75 44 Main 41-50 45-54 Check 50 55 Main 51-60 56-65 Check 25 66 Main 61-70 67-76 Check 75 77 Main 71-80 78-87 Check 50 88 Main 81-90 89-98 Check 25 99 Main 91-100 100-109
In this example the 9 check lines cause the last line of the array to be readout (9 * exposure duration) later than it would have without the check line readouts.
This program was designed around work for the Europa Clipper Europa Imaging System Narrow Angel Camera by Randy Kirk. Since the program relies on the check lines and their spatial and temporal relationship to the main lines, the program will not work with other instruments unless they provide similar data.
Categories
History
Stuart Sides | 2020-01-20 | Original version |