Home

Quick Links

Software Manual
GitHub
API Reference

Documentation Versions

Public Release
8.3.0
8.2.0
8.1.0
8.0.0
7.2.0
7.1.0
7.0.0
6.0.0
3.9.0
3.5.0
USGS

ISIS Application Documentation


jitterfit

Standard View | TOC | Home

Characterize jitter for rolling shutter images.

Description
Categories
Groups
History


Description

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


Parameter Groups

Registration

Name Description
FROM Input cube to be jitter corrected.
FROM2 Input cube containing the check lines.
DEFFILE The Auto Registration template
SCALE The scale of the image.
TO Output file where the registration results will be written.
TO2 Output file where the registration statistics will be written.

Fitting

Name Description
TOLERANCE The tolerance that determines which points will be excluded based on the goodness of fit of the registration.
DEGREE The order of polynomial to solve for.
MAXTIME The time, in seconds, that the last line was taken. The minimum is .0026 seconds it takes for a 2250 line image to be taken plus the time it takes to take 60 check lines.
COEFFICIENTTO Output file that holds the coefficients.
RESIDUALTO Output file that holds the solution residuals.

Registration: FROM

Description

This input cube is the cube that needs to be de-jittered. The algorithms used are designed for a rolling shutter instrument with an accompanying check line cube file (see main description). This cube file must be writable. Coefficients to adjust the jitter will be written to the cube labels for use by the rolling shutter camera model.

Type cube
File Mode input
Filter *.cub

Registration: FROM2

Description

This input cube is the check line cube. It contains a set of lines that were repeatedly read from the sensor array interspersed with the readout of the main image data. ...EXPAND...

Type cube
File Mode input
Filter *.cub

Registration: DEFFILE

Description

The parameter template to use for the auto registration process. The default template calls the Maximum Correlation pattern matching algorithm with predefined parameter values. There are other templates available in the system autoreg/template directory. Also, the user can use the 'autoregtemplate' application to create a new template file. Example minimal auto registration definition file:

             Object = AutoRegistration
               Group = Algorithm
                 Name = MaximumCorrelation
                 Tolerance = 0.7
                 SubPixelAccuracy = True
               EndGroup
 
               Group = PatternChip
                 Samples = 1391
                 Lines = 1 

               EndGroup
 
               Group = SearchChip
                 Samples = 1399
                 Lines = 7
               EndGroup

               Group = SurfaceModel
                 WindowSize = 7
               EndGroup
             EndObject
          

Type filename
File Mode input
Filter *.def

Registration: SCALE

Description

This is the scale of the image. Only use this parameter if you have enlarged the main cube. This will allow the program to access the correct normal cube line number based on the un-enlarged check table values. Enlarging the main image by 4x is used to assist the registration from becoming pixel locked (i.e., registering on the whole pixel value instead of a sub-pixel) Example: For a 4x enlargement set this value to 4.0.

Type double
Default 4.0

Registration: TO

Description

The resigstration results from the bundle adjustment will be written to this file.

Type filename
File Mode output
Internal Default None
Filter *.csv

Registration: TO2

Description

This file will contain the statistics gathered during the registration process. The format is PVL and is identical to the statistics for all auto registration applications.

Type filename
File Mode output
Internal Default None
Filter *.csv

Fitting: TOLERANCE

Description

This tolerance is used by the auto registration to determine which registrations are valid and which are invalid. See the auto registration documentation for more information.

Type double
Default .7
Minimum 0.0 (inclusive)

Fitting: DEGREE

Description

SOMETHING

Type integer
Default 3
Minimum 1 (inclusive)

Fitting: MAXTIME

Description

SOMETHING WHAT IS THIS USED FOR

Type double
Default 0.0027114285714286
Minimum 0.0 (exclusive)

Fitting: COEFFICIENTTO

Description

A comma separated value file of the line and sample coefficients. One line of line, sample for each degree.

Type filename
File Mode output
Filter *.csv

Fitting: RESIDUALTO

Description

A comma separated value file of the residual information from the least squares solution. The columns are: Registered Line, Solved Line, Registered Line Residual, Registered Sample, Solved Sample, Sample Residual, Time Taken

Type filename
File Mode output
Internal Default None
Filter *.csv

History

Stuart Sides2020-01-20 Original version