tiepoints

Purpose

Interactive tie point review application — a modern replacement for ISIS’s Qnet. Displays side-by-side image cutouts at each tie point location with linked zoom/pan, making it easy to verify registration quality.

Usage

# Launch tie point review
isistools tiepoints cubes.lis control.net

# Custom port
isistools tiepoints cubes.lis control.net --port 5001

Options

Option Default Description
--port, -p 0 (auto) Server port
--no-browser off Start server without opening browser

What it shows

The tiepoint review app launches a Panel application in the browser with:

  • Point browser: navigate through tie points with point metadata (ID, registration status, residual magnitude)
  • Side-by-side image cutouts: both images displayed at the tie point location with linked zoom/pan — zoom into one panel and the other follows
  • Residual display: pixel-level residual vectors showing the registration quality at each point
  • Status filtering: show only registered, unregistered, or ignored points

Improvements over Qnet

Qnet isistools tiepoints
Shows images flipped in detector readout order Images in correct (north-up) orientation
Requires level-2 cubes Works with level-1 cubes directly
Registered points nearly invisible Clear color-coded status display
Qt-only Browser-based with linked interactivity

Example: Before/after jigsaw verification

A common workflow is to compare tie point alignment before and after bundle adjustment. The image below shows cutouts at three random tie points:

Figure 5.1: Before/after jigsaw terrain alignment at three tie points. Left two columns show K05 and V05 at apriori (pre-jigsaw) coordinates — mismatched terrain. Right two columns show both images at adjusted coordinates — identical terrain features.

Python API

from isistools.apps.tiepoint_review import TiepointReview

# In a Jupyter notebook
app = TiepointReview("cubes.lis", "control.net")
app.panel()  # renders inline

# As a standalone server
app.serve(port=5001)