Isis 3 Application Documentation
Improves camera pointing
Description
This program takes as input a control network and list of level 1 cubes. It uses the control network to solve for new
camera pointing for each of the cubes. This helps eliminate mismatches in mosaics of multiple images.
Categories
Applications
History
Jeff Anderson | 2007-04-27 |
Original version
|
Steven Lambright | 2007-07-23 |
Changed category to Control Networks and corrected XML bugs
|
Debbie A. Cook | 2007-10-05 |
Revised iteration report to list the errors and sigmas from the same iteration. Previous version reported errors from previous iteration and sigmas from current iteration.
|
Christopher Austin | 2008-07-03 |
Cleaned the Bundle Adjust memory leak and fixed the app tests.
|
|
Parameter Groups
Files
Solve Options
Name
|
Description
|
OBSERVATIONS | Keep instances of the same observation in different cube files dependent |
RADIUS | Solve for local radii of points |
UPDATE | Update cube label |
METHOD | Matrix solution method to use |
Iteration Options
Name
|
Description
|
MAXITS | iterations
|
TOL | tolerance |
Camera Pointing Options
Name
|
Description
|
CKDEGREE |
Degree of polynomial fit to original camera angles
|
SOLVEDEGREE |
The degree of the polynomial being fit to in the bundle adjustment
|
CAMSOLVE | Sets which, if any, camera pointing factors to include in the bundle adjustment" |
TWIST | Solve for twist? |
Spacecraft Options
Name
|
Description
|
SPSOLVE | Sets which, if any, spacecraft position factors to include in the adjustment |
|
Files:
FROMLIST
Description
This file contains a list of all cubes in the network
Type
| filename |
File Mode
| input |
Filter
|
*.txt *.lis
|
Files:
HELDLIST
Description
This file contains a list of all cubes whose pointing angles will be held in the adjustment.
Type
| filename |
File Mode
| input |
Internal Default
| none |
Filter
|
*.txt *.lis
|
Files:
CNET
Description
This file is a control network generated from programs such as autoseed or qnet
Type
| filename |
File Mode
| input |
Filter
|
*.net
|
Files:
ONET
Description
This file will contain the update control network with residuals for each measurement.
Type
| filename |
File Mode
| output |
Filter
|
*.net
|
Solve Options:
OBSERVATIONS
Description
This option will solve for spice on all cubes with a matching observation number as though they were a single image.
For most missions the default observation number is the serial number of the cube file so that a single cube is an observation.
However all Lunar Orbiter missions have defined observation numbers that are different from their serial numbers, so that the 3
subframes of a Lunar Orbiter High Resolution frame will be treated as a single observation if this option is on. Otherwise each
subframe will be adjusted independently.
Solve Options:
RADIUS
Description
Select this option to solve for the local radius of each control
point. If this button is not turned on, the radii of the points
will not change from the cube's shape model.
Solve Options:
UPDATE
Description
This option will write the results of the solution to each cube in the FROMLIST. The pointing is written in the form of a SPICE
blob which is attached to the cube. This only occurs if the solution converged to the requested tolerance within the
the requested number of iterations. If this option is turned off, then only the output control network with the latitude/longitude/radius
for each point in the solution and and the point residuals is created.
Solve Options:
METHOD
Description
Enter the desired method to use to solve the matrix. Methods will
vary in speed and accuracy. The default, QRD, is the preferred
method, unless the matrix is close to singular or the system being
solved has more than 2000 unknowns. A matrix might be close to
singular if some of the points are very close to each other, or if
some of the images have camera angles that are nearly identical. In
the case of a nearly singular matrix, the SVD method wil work the
best. For larger bundle adjustments involving more than 2000
unknowns, the SPARSE option will work the best. To determine the
number of unknowns use the following formula:
Total # Unknowns = observCount * (camUnknowns + spUnknowns) + controlPt*ptUnknowns,
where, observCount = the number of images or observations
camUnknowns = 2, if CAMSOLVE=ANGLES and TWIST is not checked
= 3, if CAMSOLVE=ANGLES and TWIST is checked
= 4, if CAMSOLVE=VELOCITIES and TWIST is not checked
= 5, if CAMSOLVE=VELOCITIES and TWIST is checked
= 6, if CAMSOLVE=ACCELERATIONS and TWIST is not checked
= 7, if CAMSOLVE=ACCELERATIONS and TWIST is checked
= SOLVEDEGREE * 2 if TWIST is not checked
= SOLVEDEGREE * 3 if TWIST is checked
spUnknowns = 0, if SPSOLVE=NONE
= 3, if SPSOLVE=POSITION
= 6, if SPSOLVE=VELOCITIES
= 9, if SPSOLVE=ACCELERATIONS
controlPt = The number of control points in the network
ptUnknowns = 2, if RADIUS is not checked in the Solve Options box
= 3, if RADIUS is checked in the Solve Options box
Type
| string |
Default
|
QRD
|
Option List:
|
Option |
Brief |
Description |
SVD | Single Value Decomposition |
Solve the matrix using the method of single value
decomposition. This method is very accurate, but slow.
|
QRD | QR Decomposition |
Solve the matrix using the method of QR
decomposition, where Q is an orthogonal matrix such that Q
transpose * Q =I, and R is an upper triangular matrix.
|
SPARSE | Sparse matrix solver |
Solve the matrix using a sparse matrix solver.
Note: Sparse solver will not work on Sun/Solaris, QRD will be
used.
|
|
Iteration Options:
MAXITS
Description
Number of iterations
Iteration Options:
TOL
Description
Tolerance in pixels
Camera Pointing Options:
CKDEGREE
Description
The degree of the polynomial fit to the original camera angles
and used to generate apriori camera angles for the first
iteration.
Camera Pointing Options:
SOLVEDEGREE
Description
The degree of the polynomial being fit to in the bundle adjust
solution. This polynomial can be different from the one used to
generate the apriori camera angles used in the first iteration.
In the case of an instrument with a jitter problem, a higher
degree polynomial fit to each of the camera angles might provide
a better solution (smaller errors).
Camera Pointing Options:
CAMSOLVE
Description
This parameter is used to specify which camera pointing factors to fit in the adjustment. At least one item must be selected in this group or the spacecraft group, or the application will have nothing to adjust.
Type
| string |
Default
|
ANGLES
|
Option List:
|
Option |
Brief |
Description |
NONE | Don't solve for any camera pointing factors |
If this option is selected, no camera pointing factors will be adjusted.
|
ANGLES | Solve for camera angles: right ascension, declination, and optionally twist |
If this option is selected the camera angles in each cube will be adjusted in the solution, but not the angular velocity or angular acceleration. The adjustments will not be applied unless UPDATE is selected.
|
VELOCITIES | Solve for camera angles AND their angular velocities |
If this option is selected, camera angles (right ascension, declination, and optionally twist) and their angular velocites will be adjusted in the solution.
|
ACCELERATIONS | Solve for camera angles, their angular velocities, and their angular accelerations |
If this option is selected, camera angles (right ascension, declination, and optionall twist), their angular velocities, and their angular accelerations will be adjusted in the solution.
|
ALL | Solve for all coefficients in the polynomials fit to the camera angles. |
If this option is selected, all coefficients of the
solve equation will be fit in the solution
(SOLVEDEGREE+1 coefficients)
|
|
Camera Pointing Options:
TWIST
Description
If this option is on, the twist angle will be adjusted in the bundle adjustment solution.
Spacecraft Options:
SPSOLVE
Description
This parameter is used to specify which spacecraft position factors to fit in the adjustment.
Type
| string |
Default
|
NONE
|
Option List:
|
Option |
Brief |
Description |
NONE | Don't solve for any spacecraft position factors |
If this option is selected, no spacecraft position factors will be adjusted. A camera angle factor must be included in the adjustment in order for the application to run.
|
POSITION | Solve for the spacecraft positions |
If this option is selected, the spacecraft positions will be adjusted in the solution, but not the velocity or the acceleration.
|
VELOCITIES | Solve for the spacecraft positions and velocites |
If this option is selected, the spacecraft positions will be adjusted in the solution, as well as the velocities of the spacecraft at each instance.
|
ACCELERATIONS | Solve for the spacecraft positions, velocities, and accelerations |
If this option is selected, the spacecraft positions will be adjusted in the solution, as well as the velocities and accelerations of the spacecraft at each instance.
|
|