This program will update the camera pointing (CK) in the labels of a
Level1 cube using a map projected, Level2
"Base" cube to determine the latitude/longitude of
control points. Angles 1 and 2 of the camera pointing
stored in the cube labels will be adjusted to align the
coordinate of each sample/line from the "Match" level 1 cube with
the latitude/longitude from the "Base" map projected cube. To
solve for all three camera angles select the TWIST radio button in
the Qtie Tool window. At least two control points will need to be
selected for the TWIST option.
The application will adjust the camera
angles to align all control points with the latitude/longitude
values from the "Base" cube with minimal errors using an iterative
least-squares bundle adjustment. The number of iterations and
tolerance (sigma0) for convergence can be selected from the
Qtie Tool window. Solving for two angles only is similar to a
translation of the image. Solving for twist will result in both a
translation and a rotation of the image.
This is the interactive version of the program "deltack".
Like "jigsaw" and "deltack", it works on both framing cameras and line
scanners. Note that only the camera pointing is solved for with
qtie and deltack (solving for radius and spacecraft position are not
options with these applications, refer to jigsaw for more options).
To run qtie, you will enter a base map cube (map projected) and a match
cube (unprojected) which will be the cube which will have the camera
pointing updated. The unprojected match cube must have been initialized
with the "spiceinit" program using ATTACH="YES". Optionally, an
existing control network containing control points between the "Match"
cube and a basemap, may be entered.
There are 2 core windows used in this application.
The main qtie window is similar to the qview application. You will see many
of the same tools, such as "Band Selection", "Zoom", "Pan", "Stretch" and
"Find" along the right border. The "Tie" tool is the last button along the
right toolbar. It will be the default tool selected when qtie is launched.
In this window, select the "Open images" button or the Open action (from
File menu). You will be prompted to enter the base map cube first followed
by the level 1 (unprojected) cube to be tied to the base map. You then
have the option of opening an existing control network which has control
points between the "Match" cube and a basemap. Click the "Cancel"
button to create a new control points.
When the "Tie" tool is activated, the mouse buttons have the following
function in the cube viewports of the main qtie window:
Mouse events will only work on the "Match" cube)
Left Button: Modify the closest control point
Middle Button: Delete the closest control point
Right Button: Create new control point
Qtie Tool window
This is the point editor window of qtie for modifying or creating a point.
The window will display the cube that is the base map on the left and
the level 1 cube on the right. Both measures ("Base" and "Match") may be
Changing Measure Locations
The measure location can be adjusted by:
- Move the cursor location under the crosshair by clicking the left mouse
- Move 1 pixel at a time by using arrow keys on the keyboard, or using arrow
buttons located above the measure views
Other point editor functions
In the File menu:
Save Control Network As Save the ground points
in a control network.
Close Close the Tie Point Tool.
In the Options menu:
Registration Set or view and save registration
Along the top of the window:
Twist Turning off twist will solve for right ascension and
declination only which is a translation of the image. Solving for twist
includes both translation and rotation.
Maximum Iterations Maximum number of iterations to try
for convergence to tolerance before stopping.
Sigma0 Standard deviation of unit weight. Solution
converges on stabilization
Along the right border of the window:
Geom: Geometrically match the right view to the left
Rotate: Rotate the right view using either the dial
or entering degrees
Show control points: Draw crosshairs at all control
point locations visible within the view
Show crosshair: Show a red crosshair across the entire
Circle Draw circle which may help center measure
on a crater
Below the left view:
Blink controls: Blink the left and right view in the
left view window using the "Blink Start" button (with play icon) and
"Blink Stop" button (with stop icon). Both arrow keys above the right view
and the keyboard arrow keys may be used to move the right view while
Find: Center the right view so that the same latitude /
longitude is under the crosshair as the left view. Shortcut: F
Below the right view:
Register: Sub-pixel register the right view to
the left view. Shortcut: R
Undo Registration: Undo the sub-pixel registration.
Save Measure: Save the control measure under the
right view to the edit control point. Shortcut: M
Along the bottom:
Solve Attempt the bundle solution using the control
points picked with the given input parameters such as Twist, Maximum
Iterations and Sigma0. If the solution converges, a window will be
displayed showing the bundle adjustment results. The option is given
to update the camera pointing on the labels of the "Match" cube.
Once the camera pointing labels have been updated (Match cube labels),
there are various ways to evaluate the results. The 'Find' tool with
the "Match" cube and "Base" cube can give a visual indication how
correlated the features are between the two images. The updated
"Match" cube can be projected to a map projection (cam2map), the
projected result can then be displayed with other reference images
(for example, the "Base" image) in qview.
If the results of the updated "Match" cube are unsatisfactory, the
original 'CK/camera pointing' can recovered by re-running spiceinit
on the "Match" cube.
Add option to save ground points to a ControlNet.
Correct user documentation in qtie.xml.
Added error checking when opening files and allow new files to be opened.
Discontinued forcing of gui style to windows
Updated for binary control networks.
Updated documentation with input from Tammy Becker.
Added links to definitions and made corrections to documentation
based on suggestions from Trent Hare.
Fixed bug when opening new sets of files (base,match,cnet). Moved
error checking from QtieTool to QtieFileTool.
Fixed bugs when attempting to delete a point in an empty network, deleting all
measures in a point. Fixed repetitive warnings when the current edit point does
not fall on the ground source. References #1493.
Updated icons. Fixes #1041.
Added shortcuts to Qtie Tool window for selecting right measures, registration, saving
measures, and find. Fixes #2324.
Prevented qtie from crashing when user attempts to select a registration template.
Modified to use the CholMod sparse decomposition matrix solve method instead of the
"SpecialK" solve method (deprecated). Results are expected to be identical. References #4162.
Cleaned up heap allocated objects after the program returns in the main function of qtie.cpp.
This was not being done before like it is in other qisis apps such as qnet and qview,
and was causing a segfault due to the new Qt5 libraries IPCE uses. Fixes #4471.