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.