Skip to content
Snippets Groups Projects
Select Git revision
  • 093afc9acdc719c8701b46d4f3d1012e23768793
  • dev default protected
  • new_pvl_core
  • 8.0-test
  • lts-testing
  • revert-5695-ideal_serial
  • 9.0
  • 9.0.0_RC2
  • 8.0
  • 8.0.5_LTS
  • code8.3.0
  • 9.0.0
  • 9.0.0_RC1
  • gdal_pvl
  • Kelvinrr-patch-3
  • Kelvinrr-patch-2
  • 8.3
  • pvl_core
  • 8.2
  • 8.1
  • Kelvinrr-patch-1
  • 8.0.4
  • 8.3.0
  • 8.2.0
  • 8.1.0
  • 8.0.3
  • 8.0.2
  • 8.0.1
  • 8.0.0
  • 8.1.0_RC2
  • 8.1.0_RC1
  • 8.0.0_RC2
  • 8.0.0_RC1
  • 7.2.0
  • 7.1.0
  • 7.0.0
  • 7.2.0_RC1
  • 7.1.0_RC1
  • 7.0.0_RC2
  • 7.0.0_RC1
  • 6.0.0
41 results

jigsaw.xml

Blame
  • jigsaw.xml 106.27 KiB
    <?xml version="1.0"?>
    <application name="jigsaw" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://isis.astrogeology.usgs.gov/Schemas/Application/application.xsd">
      <brief>
        Improves image alignment by updating camera geometry attached to cubes.
      </brief>
    
      <description>
      <h3>Overview</h3>
        <p>
          The <b>jigsaw</b> application performs a photogrammetric bundle adjustment on a group of
          overlapping, level 1 <def>cube</def>s from framing and/or line-scan cameras.  The adjustment
          simultaneously refines the selected image geometry information (camera pointing, spacecraft
          position) and <def>control point</def> coordinates (x,y,z or lat,lon,radius) to reduce
          boundary mismatches in mosaics of the images.
        </p>
        <p>
          This functionality is demonstrated below in a zoomed-in area of a mosaic of a
          pair of overlapping Messenger images.  In the before jigsaw mosaic on the left
          (uncontrolled), the features on the edges of the images do not match.  In the after
          jigsaw mosaic on the right (controlled), the crater edges meet correctly and the
          seam between the two images is no longer visible.
        </p>
    
        <img src='assets/images/mdis2_Uncontrolled.png' alt='Before jigsaw (uncontrolled)' width='306' height='259' />
        <img src='assets/images/mdis2_Controlled.png' alt='After jigsaw (controlled)' width='306' height='259' />
    
        <p>
          The <b>jigsaw</b> application assumes <b>spiceinit</b> or <b>csminit</b> has been run on the
          input <def>cube</def>s so that camera information is included in the Isis <def>cube</def>
          labels. In order to run the program, the user must provide a list of input <def>cube</def>s,
          an input <def>control net</def>, the name of an output <def>control network</def>, and the
          solve settings. The measured <def>sample</def>/<def>line</def> positions associated with the
          <def>control measure</def>s in the network are not changed. Instead, the control points and
          camera information are adjusted. <b>jigsaw</b> outputs a new <def>control network</def> that
          includes the initial state of the points in the network and their final state after the
          adjustment.  The initial states of the points are tagged as <def>a priori</def> in the
          <def>control network</def>, and their final states are tagged as <def>adjusted</def>.
          Updated camera information is only written to the <def>cube</def> labels if the bundle
          converges and the <b>UPDATE</b> parameter is selected.
        </p>
        <p>
          In order to apply bundle values using <b>ADJUSTMENT_INPUT</b>, only the option <b>FROMLIST</b> 
          must be set. If the <b>ADJUSTMENT_INPUT</b> is set to an HDF5 file containing bundle adjustment values 
          (usually the HDF5 output file from <b>OUTADJUSTMENTH5</b>), those values can be applied to the 
          <def>cube</def> labels. The adjustment file entails a group of HDF5 datasets where each dataset 
          contains the instrument pointing and position for each <def>cube</def>. The dataset key is composed 
          of the <def>cube</def> serial number and the table name, either "InstrumentPointing" or 
          "InstrumentPosition", separated by a forward slash "/". For example:
        </p>
        <pre>
          SerialNumber: MRO/CTX/1016816309:030
          Dataset key for instrument pointing: MRO/CTX/1016816309:030/InstrumentPointing
        </pre>
    
        <p>
          The input control net may be created by finding each image footprint with <b>footprintinit</b>,
          computing the image overlaps with <b>findimageoverlaps</b>, creating guess measurements with 
          <b>autoseed</b>, then registering them with <b>pointreg</b>.
        </p>
    
        <p>
          Optional output files can be enabled to provide more information for analyzing the results of
          the bundle. <b>BUNDLEOUT_TXT</b> provides an overall summary of the bundle adjustment;
          it lists the user input parameters selected and tables of statistics for both the
          images and the points. The image statistics can be written to a separate machine readable
          file with the <b>IMAGESCSV</b> option and likewise for the point statistics with the
          <b>OUTPUT_CSV</b> option. <b>RESIDUALS_CSV</b> provides a table of the measured image
          coordinates, the final <def>sample</def>, <def>line</def>, and overall residuals
          of every control measure in both millimeters and pixels. <b>OUTADJUSTMENTH5</b> stores bundle 
          adjustment values in an HDF5 file. Currently, only ISIS adjustment values are saved to file so