@@ -114,17 +114,21 @@ public class IntersceneMatchParameters {
// Pairwise scenes matching
publicbooleanpmtch_use_affine=false;// when matching pairs, start with known scene affine matrices, false - use unity
publicdoublepmtch_frac_remove=0.1;
publicdoublepmtch_metric_err=0.05;// 0.02;// 2 cm
publicdoublepmtch_max_std=1.5;// maximal standard deviation to limit center area
publicdoublepmtch_min_std_rad=2.0;// minimal radius of the central area (if less - fail)
publicdoublepmtch_metric_err=0.05;// 0.02;// 2 cm
publicdoublepmtch_max_std=1.5;// maximal standard deviation to limit center area
publicdoublepmtch_min_std_rad=2.0;// minimal radius of the central area (if less - fail)
publicbooleanpmtch_ignore_rms=true;
publicintpmtch_num_iter=10;
publicdoublepmtch_cent_rad=0.6;// center circle radius fraction of 0.5* min(width, height) in tiles
publicdoublepmtch_max_cent_rad=40;// 30; // maximal center radius in tiles (limit pmtch_cent_rad)
publicdoublepmtch_cent_fill=0.2;// 25; // should be populated not less than this
publicdoublepmtch_cent_final=0.23;// 4; // should be populated not less than this
publicdoublepmtch_ease_nosfm=2.0;// ease metric_error when no SfM gain == 0;
publicdoublepmtch_pull_skew=0.0;// ~rotation, = 0 fraction of the total weight == 1
publicdoublepmtch_pull_tilt=0.1;// > 0
publicdoublepmtch_pull_scale=0.0;// = 0
publicdoublepmtch_cent_rad=0.6;// center circle radius fraction of 0.5* min(width, height) in tiles
publicdoublepmtch_max_cent_rad=40;// 30; // maximal center radius in tiles (limit pmtch_cent_rad)
publicdoublepmtch_cent_fill=0.2;// 25; // should be populated not less than this
publicdoublepmtch_cent_final=0.23;// 4; // should be populated not less than this
publicdoublepmtch_ease_nosfm=2.0;// ease metric_error when no SfM gain == 0;
// spiral search parameters
publicbooleanospir_existing=false;// use existing pair
...
...
@@ -782,6 +786,11 @@ public class IntersceneMatchParameters {
gd.addNumericField("Central area minimal radius",this.pmtch_min_std_rad,3,7,"tile","Minimal radius of the central area after all LMA passes.");
gd.addCheckbox("Ignore previous RMSE",this.pmtch_ignore_rms,"Do not exit full fitting cycles if the RMSE worsened/not improved.");
gd.addNumericField("Number of fitting iterations",this.pmtch_num_iter,0,3,"","number of full fittng iterations.");
gd.addNumericField("Pull skew (rotation)",this.pmtch_pull_skew,3,7,"","Prevent pairwise match from rotation.");
gd.addNumericField("Pull tilt",this.pmtch_pull_tilt,3,7,"","Prevent pairwise match from tilt.");
gd.addNumericField("Pull scale",this.pmtch_pull_scale,3,7,"","Prevent pairwise match from scaling.");
gd.addNumericField("Central area radius as fraction",this.pmtch_cent_rad,3,7,"","Central area radius as fraction of half minimal WOI dimension.");
gd.addNumericField("Maximal central area radius",this.pmtch_max_cent_rad,3,7,"tiles","Absolute limit to the center area radius (eases bad peripheral matching).");
gd.addNumericField("Central area minimal fill",this.pmtch_cent_fill,3,7,"","Central area minimal fill for all but the last iteration.");
...
...
@@ -1701,6 +1710,11 @@ public class IntersceneMatchParameters {
this.pmtch_min_std_rad=gd.getNextNumber();
this.pmtch_ignore_rms=gd.getNextBoolean();
this.pmtch_num_iter=(int)gd.getNextNumber();
this.pmtch_pull_skew=gd.getNextNumber();
this.pmtch_pull_tilt=gd.getNextNumber();
this.pmtch_pull_scale=gd.getNextNumber();
this.pmtch_cent_rad=gd.getNextNumber();
this.pmtch_max_cent_rad=gd.getNextNumber();
this.pmtch_cent_fill=gd.getNextNumber();
...
...
@@ -2229,6 +2243,11 @@ public class IntersceneMatchParameters {