Commit 0dc0c89d authored by Jeannie Backer's avatar Jeannie Backer
Browse files

Removed deprecated SpecialK option from bundle adjustment.

git-svn-id: http://subversion.wr.usgs.gov/repos/prog/isis3/branches/ipce@7032 41f8697f-d340-4b68-9986-7bafba869bb8
parent 6cef40f0
Loading
Loading
Loading
Loading
+9 −7
Original line number Diff line number Diff line
@@ -179,13 +179,15 @@ BundleSettingsQsp bundleSettings() {
  // =========================================================================================//
  settings->setValidateNetwork(false);
  //  set the following:
  //     solve observation mode = false update cube label      = false error
  //     propagation      = false solve radius           = false latitude
  //     sigma         = 1000.0 longitude sigma        = 1000.0 radius sigma
  //     = -1.0 (since we are not solving for radius) outlier rejection =
  //     false
  settings->setSolveOptions(BundleSettings::Sparse, false, false, false, false,
                           1000.0, 1000.0, -1.0);
  //     solve observation mode = false
  //     update cube label      = false
  //     error propagation      = false
  //     solve radius           = false
  //     latitude sigma         = 1000.0
  //     longitude sigma        = 1000.0
  //     radius sigma           = Null since we are not solving for radius
  //     outlier rejection      = false
  settings->setSolveOptions(false, false, false, false, 1000.0, 1000.0, Isis::Null);
  settings->setOutlierRejection(false);

  // =========================================================================================//
+3 −0
Original line number Diff line number Diff line
@@ -96,6 +96,9 @@
      Modified to use the FROM cube labels to set output control net's 'target instead of the TargetName. 
      Removed check for TargetName since this happens when the ControlNet target is set. References #3892
    </change>
    <change name="Jeannie Backer" date="2016-08-18">
      Removed deprecated parameter from call to BundleSettings::setSolveOptions. References #4162.
    </change>
  </history>

  <groups>
+7 −4
Original line number Diff line number Diff line
@@ -143,10 +143,13 @@ BundleSettingsQsp bundleSettings(UserInterface &ui) {
    radiusSigma = ui.GetDouble("POINT_RADIUS_SIGMA");
  }

  settings->setSolveOptions(BundleSettings::stringToSolveMethod(ui.GetString("METHOD")),
                           ui.GetBoolean("OBSERVATIONS"), ui.GetBoolean("UPDATE"), 
                           ui.GetBoolean("ERRORPROPAGATION"), ui.GetBoolean("RADIUS"),
                           latitudeSigma, longitudeSigma, radiusSigma);
  settings->setSolveOptions(ui.GetBoolean("OBSERVATIONS"), 
                            ui.GetBoolean("UPDATE"), 
                            ui.GetBoolean("ERRORPROPAGATION"), 
                            ui.GetBoolean("RADIUS"),
                            latitudeSigma, 
                            longitudeSigma, 
                            radiusSigma);

  settings->setOutlierRejection(ui.GetBoolean("OUTLIER_REJECTION"),
                               ui.GetDouble("REJECTION_MULTIPLIER"));
+10 −30
Original line number Diff line number Diff line
@@ -39,11 +39,11 @@

    <p>
    Optional output files can be selected to provide more information for analyzing the 
    results.  <b>BUNDLEOUT.TXT</b> provides an overall summary of the bundle adjustment.  
    results.  <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 also be written to a separate
    <b>CSV</b> file and likewise for the point statistics with the <b>OUTPUT_CSV</b>
    option selected.  <b>RESIDUALS_CSV</b> provides a table of the measured image
    <b>CSV</b> file and likewise for the point statistics with the <b>output_csv</b>
    option selected.  <b>residuals_csv</b> provides a table of the measured image
    coordinates and the final <def>sample</def>, <def>line</def>, and overall residuals 
    in both millimeters and pixels.
    </p>
@@ -181,6 +181,13 @@
      Created observationSolveSettings() method to create an observation settings object from the user
      entered values.
    </change>
    <change name="Jeannie Backer" date="2016-08-18">
      Removed the user parameter called METHOD (i.e. the method used for solving the bundle matrix). 
      This solve method is no longer user-selected. The program will now use what was called the SPARSE option
      for the METHOD parameter (i.e. solve with CholMod sparse decomposition). This method should give
      the same results as the other options and should run faster. So the other options were no longer needed.
      References #4162.
    </change>
  </history>

  <groups>
@@ -369,33 +376,6 @@
        </default>
      </parameter>

      <parameter name="METHOD">
        <type>string</type>
        <brief> Matrix solution method</brief>
        <default>
          <item>SPARSE</item>
        </default>
        <description>
            Enter the desired method to use to solve the matrix.  Methods will
            vary in speed and accuracy.   The default, SPARSE, is the preferred
            method because of speed and memory usage.  
        </description>
        <list>
        <option value="SPARSE">
          <brief>CholMod </brief>
          <description>
            Solve with CholMod sparse decomposition.
          </description>
          </option>
          <option value="SPECIALK">
            <brief>SpecialK (dense)</brief>
            <description>
            Solve with Cholesky dense decomposition.
            </description>
          </option>
        </list>
      </parameter>

      <parameter name="OUTLIER_REJECTION">
      <brief> Auto-rejection of outliers</brief>
      <description>
+3 −28
Original line number Diff line number Diff line
APPNAME = jigsaw
# These tests exercise the bundle adjustment of images from the Apollo frame camera.
# Test 1: specialk (dense cholesky) method, solving for position, angles (with twist), and radius; 
#         with error propagation.
# Test 2: sparse (cholmod) method, solving for position, angles (with twist), and radius; 
#         with error propagation.
# Solving for position, angles (with twist), and radius with error propagation.
#
# 2013-04-02 Ken Edmundson - added weights for spacecraft position and angles to test. This reduced 
#                the precision of the adjusted point covariance matrices in the output netfiles.
@@ -21,6 +18,8 @@ APPNAME = jigsaw
# 2014-07-23 Jeannie Backer - Commented out specialk test and references to bundleout_images.csv
# 2015-07-30 Jeannie Backer - Added command to remove inverseMatrix.dat file since error propagation
#                is turned on and we do not have a way to compare this file type.
# 2016-08-11 Jeannie Backer - Removed specialk test since we have removed this solve method from 
#                the bundle adjustment. Updated documentation

# The "cat bundleout.txt" command in these tests uses sed to do the following (in order):
# 1. remove cube filename paths
@@ -32,30 +31,6 @@ include $(ISISROOT)/make/isismake.tsts

commands:
	$(LS) -1 $(INPUT)/*.cub > $(OUTPUT)/cube.lis;
#	$(APPNAME) fromlist=$(OUTPUT)/cube.lis \
#	           cnet=$(INPUT)/Ames_7-ImageLSTest_USGS_combined.net \
#	           onet=$(OUTPUT)/apollo_specialK_out.net \
#	           radius=yes \
#	           method=specialk \
#	           errorpropagation=yes \
#	           spsolve=position \
#	           spacecraft_position_sigma=1000.0 \
#	           camera_angles_sigma=2.0 > /dev/null;
#	$(CAT) bundleout.txt  | grep -v "Run Time:" | grep -v "Elapsed Time:" \
#	       | perl -pe 's/(^|,|: )([^,:]+\/)([^,\/:]*\.)(net|cub)/\1\3\4/g' 2>/dev/null \
#	       | $(SED) 's/\([0-9][0-9]*\.[0-9][0-9][0-9][0-9]\)\([0-9][0-9]*\)/\1/g' \
#	       | $(SED) s/`date +%Y-%m-%dT`\[0-2\]\[0-9\]:\[0-5\]\[0-9\]:\[0-5\]\[0-9\]/date/ \
#	       > $(OUTPUT)/apollo_specialK_bundleout.txt;
#	$(CAT) residuals.csv \
#	       | perl -pe 's/(^|,|: )([^,:]+\/)([^,\/:]*\.)(net|cub)/\1\3\4/g' 2>/dev/null \
#	       > $(OUTPUT)/apollo_specialK_residuals.csv;
#	$(CAT) bundleout_images.csv \
#	       | perl -pe 's/(^|,|: )([^,:]+\/)([^,\/:]*\.)(net|cub)/\1\3\4/g' 2>/dev/null \
#	       > $(OUTPUT)/apollo_specialK_bundleout_images.csv;
#	$(RM) bundleout_images.csv > /dev/null;
#	$(MV) bundleout_points.csv $(OUTPUT)/apollo_specialK_bundleout_points.csv > /dev/null;
#	$(RM) bundleout.txt print.prt > /dev/null;
#	$(RM) residuals.csv > /dev/null;
	$(APPNAME) fromlist=$(OUTPUT)/cube.lis  \
	           cnet=$(INPUT)/Ames_7-ImageLSTest_USGS_combined.net \
	           onet=$(OUTPUT)/apollo_cholmod_out.net \
Loading