ISIS 3 Application Documentation
deltack | Standard View | TOC | Home |
Update camera pointing for a single image
Description
Categories
Groups
History
deltack can be used to correct isolated instances of problems with camera attitude. It adjusts camera orientation in the labels of a single Isis 3 cube (resection). Like jigsaw, it works on both framing cameras and line scanners. The user must supply a latitude/longitude for at least one sample/line coordinate in the image. Angles 1 and 2 of the camera orientation stored in the cube labels will be adjusted to align the coordinate with the entered latitude/longitude. To solve for all three camera angles, select the TWIST option. A second coordinate point and desired latitude/longitude must be entered if the TWIST option is used. deltack will adjust the camera orientation to align both points with their corresponding latitudes/longitudes with minimal residuals in sample and line. In order for deltack to work properly, the input cube must have been initialized with spiceinit using ATTACH="YES".
The camera pointing is updated using an iterative least-squares bundle adjustment. The number of iterations (MAXIT)and tolerance (SIGMA0) for convergence are input parameters to deltack. Solving for two angles only is similar to a translation of the image in sample and line. Solving for the twist as well will result in both a translation and a rotation.
deltack creates a set of two output files for analyzing the results. BUNDLEOUT.TXT provides an overall summary of the resection. It lists the user input parameters selected and tables of statistics for both the image and the point(s). RESIDUALS.CSV provides a table of the measured image coordinates and the final sample, line, and overall residuals in both millimeters and pixels.
Name | Description |
---|---|
FROM | Input camera cube |
Name | Description |
---|---|
SIGMA0 | Standard deviation of unit weight |
MAXITS | Iterations |
TWIST | Solve for camera twist |
Name | Description |
---|---|
SAMP1 | Sample coordinate, point #1 |
LINE1 | Line coordinate, point #1 |
LAT1 | Latitude, point #1 |
LON1 | Longitude, point #1 |
RAD1 | Radius, point #1 |
SAMP2 | Sample coordinate, point #2 |
LINE2 | Line coordinate, point #2 |
LAT2 | Latitude, point #2 |
LON2 | Longitude, point #2 |
RAD2 | Radius, point #2 |
The file specification for the input cube. The cube will have its camera pointing updated.
Type | cube |
---|---|
File Mode | input |
Filter | *.cub |
Convergence is reached when the solution parameters change by less than Sigma0. Units: unitless.
Type | double |
---|---|
Default | 1.0e-10 |
Maximum number of iterations
Type | integer |
---|---|
Default | 10 |
In addition to angle1 and angle2, if this parameter is set the program will solve for the camera twist. This requires input of a second fixed coordinate (SAMP2,LINE2) and (LAT2,LON2)
Type | boolean |
---|---|
Default | False |
Inclusions |
|
The sample coordinate for fixed point #1 (LAT1,LON1). Units:: pixels
Type | double |
---|
The line coordinate for fixed point #1 (LAT1,LON1). Units:: pixels
Type | double |
---|
Desired planetocentric latitude at the image coordinate (SAMP1,LINE1). Units: degrees.
Type | double |
---|---|
Minimum | -90.0 (inclusive) |
Maximum | 90.0 (inclusive) |
Desired east longitude at the image coordinate (SAMP1,LINE1). Units: degrees
Type | double |
---|---|
Minimum | 0.0 (inclusive) |
Maximum | 360.0 (inclusive) |
Desired radius at the image coordinate (SAMP1,LINE1). It will be automatically computed using the shape model that was entered in the "spiceinit" application. Units: meters.
Type | double |
---|---|
Internal Default | Computed |
Minimum | 0.0 (exclusive) |
The sample coordinate for fixed point #2 (LAT2,LON2). Units: pixels.
Type | double |
---|---|
Inclusions |
|
The line coordinate for fixed point #2 (LAT2,LON2). Units: pixels.
Type | double |
---|---|
Inclusions |
|
Planetocentric latitude at the image coordinate (SAMP2,LINE2). Units: degrees.
Type | double |
---|---|
Minimum | -90.0 (inclusive) |
Maximum | 90.0 (inclusive) |
Inclusions |
|
Desired east longitude at the image coordinate (SAMP2,LINE2). Units: degrees.
Type | double |
---|---|
Minimum | 0.0 (inclusive) |
Maximum | 360.0 (inclusive) |
Inclusions |
|
Radius at the image coordinate (SAMP2,LINE2). It will be automatically computed using the shape model that was initialized in the "spiceinit" application. Units: meters.
Type | double |
---|---|
Internal Default | Computed |
Minimum | 0.0 (exclusive) |
Inclusions |
|
Jeff Anderson | 2006-09-06 | Original version |
Tracie Sucharski | 2007-05-02 | Added inclusion of TWIST to SAMP2,LINE2,LAT2,LON2,RAD2. Without this inclusion, the AML was requiring these parameters even if TWIST was false. |
Debbie A. Cook | 2007-07-12 | Added pvl status report for a successful update. |
Steven Koechle | 2007-10-05 | Added check to see if cube has existing polygon, if so delete it. |
Debbie A. Cook | 2011-06-06 | Updated to current version of BundleAdjust class. |
Debbie A. Cook | 2011-06-07 | Changed point type "Ground" to "Fixed". |
Debbie A. Cook | 2011-09-28 | Updated documentation in response to Mantis issue #187. |
Brent A. Archinal | 2011-09-30 | Updated documentation, mostly to indicate units. |
Debbie A. Cook | 2011-10-04 | Added documentation for output files and removed creation of output csv tables because the tables are not useful for only one or two points. The information is already listed in bundleout.txt. |
Kimberly Oyama | 2014-03-28 | Added check for history group in input cube. If it's there, add a new entry. If not, add a new history group. Added an app test. Fixes #1350. |
Jeannie Backer | 2014-07-23 | Modified to create a bundle settings object for the bundle adjustment. |
Ian Humphrey and Makayla Shepherd | 2015-09-01 | Changed code to accommodate changes in Sensor and Camera relationships. |