Commit ca8ad02a authored by Andrey Filippov's avatar Andrey Filippov

Before adding MCP analysis of the targets, using the saved files

parent cf0298e1
...@@ -1099,8 +1099,8 @@ public class CuasMotion { ...@@ -1099,8 +1099,8 @@ public class CuasMotion {
int num_pars = CuasMotionLMA.RSLT_LEN; // pvf_top_titles[0].length; // .RSLT_LEN; int num_pars = CuasMotionLMA.RSLT_LEN; // pvf_top_titles[0].length; // .RSLT_LEN;
int npar = CuasMotionLMA.RSLT_A; int npar = CuasMotionLMA.RSLT_A;
int fw = 9; int fw = 9;
final int PAR_UPXY=-3,PAR_VPXY=-2,PAR_PXY=-1; final int PAR_UPXY=-4,PAR_VPXY=-3,PAR_PXYAR=-2,PAR_PXY=-1;
String [] extra_choices = {"upX/upY/range", "vX/vY/conf", "pX/pY"}; String [] extra_choices = {"upX/upY/range", "vX/vY/conf", "pX/pY/A/RMSE/R", "pX/pY/A"};
String [] choices = new String [num_pars+extra_choices.length]; String [] choices = new String [num_pars+extra_choices.length];
for (int i = -extra_choices.length; i < 0; i++) { for (int i = -extra_choices.length; i < 0; i++) {
choices[i + extra_choices.length] = String.format("%2d: %s", i, extra_choices[i+extra_choices.length]); // pvf_top_titles[0]) choices[i + extra_choices.length] = String.format("%2d: %s", i, extra_choices[i+extra_choices.length]); // pvf_top_titles[0])
...@@ -1111,6 +1111,7 @@ public class CuasMotion { ...@@ -1111,6 +1111,7 @@ public class CuasMotion {
while (true) { while (true) {
GenericJTabbedDialog gd1 = new GenericJTabbedDialog("Select Range",600,500); GenericJTabbedDialog gd1 = new GenericJTabbedDialog("Select Range",600,500);
// gd1.addMessage(target_path);
gd1.addNumericField("tile X (0.."+(wh[0] -1)+")", tx, 0, 3, "", gd1.addNumericField("tile X (0.."+(wh[0] -1)+")", tx, 0, 3, "",
"Select tile X"); "Select tile X");
gd1.addNumericField("tile Y (0.."+(wh[1] -1)+")", ty, 0, 3, "", gd1.addNumericField("tile Y (0.."+(wh[1] -1)+")", ty, 0, 3, "",
...@@ -1154,10 +1155,10 @@ public class CuasMotion { ...@@ -1154,10 +1155,10 @@ public class CuasMotion {
nseq1 = Math.max(Math.min(nseq1, multi_targets.length -1), nseq0); nseq1 = Math.max(Math.min(nseq1, multi_targets.length -1), nseq0);
npar = Math.max(Math.min(npar, num_pars -1), -extra_choices.length); npar = Math.max(Math.min(npar, num_pars -1), -extra_choices.length);
System.out.println("\nProcessing "+target_path);
switch (mode) { switch (mode) {
case ANLZ_SECT: case ANLZ_SECT:
System.out.println("\nDisplaying scenes from "+nseq0+" to "+nseq1+", parameter: "+choices[npar+extra_choices.length]); // CuasMotionLMA.LMA_TITLES System.out.println("Displaying scenes from "+nseq0+" to "+nseq1+", parameter: "+choices[npar+extra_choices.length]); // CuasMotionLMA.LMA_TITLES
System.out.println("tx="+tx+", ty="+ty); System.out.println("tx="+tx+", ty="+ty);
int ntile = tx + ty * wh[0]; int ntile = tx + ty * wh[0];
for (int nseq = nseq0; nseq <= nseq1; nseq++) { for (int nseq = nseq0; nseq <= nseq1; nseq++) {
...@@ -1180,11 +1181,21 @@ public class CuasMotion { ...@@ -1180,11 +1181,21 @@ public class CuasMotion {
double vconf = multi_targets[nseq][ntile][ntarg][CuasMotionLMA.RSLT_VSTR]; double vconf = multi_targets[nseq][ntile][ntarg][CuasMotionLMA.RSLT_VSTR];
System.out.print(String.format("(%8.4f, %8.4f, %8.5f)",vx,vy,vconf)); System.out.print(String.format("(%8.4f, %8.4f, %8.5f)",vx,vy,vconf));
break; break;
case PAR_PXY: case PAR_PXYAR: //RSLT_A
double px1 = tileSize * tx + tileSize/2 + multi_targets[nseq][ntile][ntarg][CuasMotionLMA.RSLT_X];
double py1 = tileSize * ty + tileSize/2 + multi_targets[nseq][ntile][ntarg][CuasMotionLMA.RSLT_Y];
double a1 = multi_targets[nseq][ntile][ntarg][CuasMotionLMA.RSLT_A];
double rmse = multi_targets[nseq][ntile][ntarg][CuasMotionLMA.RSLT_RMS];
double rp = multi_targets[nseq][ntile][ntarg][CuasMotionLMA.RSLT_R1];
System.out.print(String.format("(%8.3f, %8.3f, %8.4f, %8.4f, %8.4f)",px1,py1,a1, rmse, rp));
break;
case PAR_PXY: //RSLT_A
double px = tileSize * tx + tileSize/2 + multi_targets[nseq][ntile][ntarg][CuasMotionLMA.RSLT_X]; double px = tileSize * tx + tileSize/2 + multi_targets[nseq][ntile][ntarg][CuasMotionLMA.RSLT_X];
double py = tileSize * ty + tileSize/2 + multi_targets[nseq][ntile][ntarg][CuasMotionLMA.RSLT_Y]; double py = tileSize * ty + tileSize/2 + multi_targets[nseq][ntile][ntarg][CuasMotionLMA.RSLT_Y];
System.out.print(String.format("(%8.3f, %8.3f)",px,py)); double a = multi_targets[nseq][ntile][ntarg][CuasMotionLMA.RSLT_A];
System.out.print(String.format("(%8.3f, %8.3f, %8.4f)",px,py,a));
break; break;
//
default: default:
System.out.print(String.format("%"+fw+"f",multi_targets[nseq][ntile][ntarg][npar])); System.out.print(String.format("%"+fw+"f",multi_targets[nseq][ntile][ntarg][npar]));
} }
...@@ -1991,11 +2002,13 @@ public class CuasMotion { ...@@ -1991,11 +2002,13 @@ public class CuasMotion {
true, // batch_mode, // final boolean batch_mode, true, // batch_mode, // final boolean batch_mode,
dbg_suffix, // final String dbg_suffix, // for image_names dbg_suffix, // final String dbg_suffix, // for image_names
debugLevel); // int debugLevel) debugLevel); // int debugLevel)
double scale_fat_zero = 1.0 / boost_pairs; // TODO: scale according to actual number of pairs compared to nominal number of pairs
// convert to pixel domain and display // convert to pixel domain and display
double [][] corr_tiles_pd = cuasMotion.convertTDtoPD( double [][] corr_tiles_pd = cuasMotion.convertTDtoPD(
tdCorrTiles, // final TDCorrTile [] tiles, tdCorrTiles, // final TDCorrTile [] tiles,
0xFE, // final int corr_type, // 0xFE 0xFE, // final int corr_type, // 0xFE
fat_zero, // final double gpu_fat_zero, fat_zero * scale_fat_zero, // *scale_fat_zero, // final double gpu_fat_zero,
debugLevel); // final int debug_level debugLevel); // final int debug_level
double [][] vector_field = TDCorrTile.getMismatchVector( // full tiles in gpu (512*512) double [][] vector_field = TDCorrTile.getMismatchVector( // full tiles in gpu (512*512)
...@@ -7425,6 +7438,7 @@ public class CuasMotion { ...@@ -7425,6 +7438,7 @@ public class CuasMotion {
double centered_blur = clt_parameters.imp.cuas_centered_blur; // 0.5; // relative transition radius range (for 0.5 the mask inside (1-0.5) radius will be 1.0, outside (1+0.5) radius will be 0 double centered_blur = clt_parameters.imp.cuas_centered_blur; // 0.5; // relative transition radius range (for 0.5 the mask inside (1-0.5) radius will be 1.0, outside (1+0.5) radius will be 0
double duplicate_tolerance = clt_parameters.imp.cuas_duplicate_tolerance ; // 2.0; // (pix) Remove weaker maximums closer than this to a stronger one double duplicate_tolerance = clt_parameters.imp.cuas_duplicate_tolerance ; // 2.0; // (pix) Remove weaker maximums closer than this to a stronger one
boolean debug_more = clt_parameters.imp.cuas_debug_more; boolean debug_more = clt_parameters.imp.cuas_debug_more;
double boost_accum_pairs = slow_mode? 1.0: clt_parameters.imp.cuas_boost_accum; // 4.0; // if >1 and the motion vector is below tile_size/cuas_boost_slow, scale corr_pairs
for (int i = 0; i < target_frac.length; i++) { for (int i = 0; i < target_frac.length; i++) {
if (clt_parameters.imp.cuas_target_frac[i].length >= 2) { if (clt_parameters.imp.cuas_target_frac[i].length >= 2) {
...@@ -7457,8 +7471,7 @@ public class CuasMotion { ...@@ -7457,8 +7471,7 @@ public class CuasMotion {
final double [][][][] target_sequence_multi = new double [num_seq][num_tiles][][]; final double [][][][] target_sequence_multi = new double [num_seq][num_tiles][][];
int niter=0; int niter=0;
// first pass, using non-centered targets // first pass, using non-centered targets
double boost_accum_pairs = slow_mode? 1.0:4.0; // just for testing, unconditionally boost tracking cameras exposure time // double boost_accum_pairs = slow_mode? 1.0:4.0; // just for testing, unconditionally boost tracking cameras exposure time
for (; niter < num_cycles; niter++) { for (; niter < num_cycles; niter++) {
boolean save_filtered_low = intermed_low && (niter < iter_show); boolean save_filtered_low = intermed_low && (niter < iter_show);
boolean save_filtered_high = intermed_high && (niter < iter_show); boolean save_filtered_high = intermed_high && (niter < iter_show);
...@@ -9367,7 +9380,7 @@ public class CuasMotion { ...@@ -9367,7 +9380,7 @@ public class CuasMotion {
final int debugLevel) { final int debugLevel) {
int start_frame = 0; int start_frame = 0;
boolean half_step = clt_parameters.imp.cuas_half_step; // true; boolean half_step = clt_parameters.imp.cuas_half_step; // true;
boolean slow_en = clt_parameters.imp.cuas_slow_en;
double slow_ra = clt_parameters.imp.cuas_slow_ra; double slow_ra = clt_parameters.imp.cuas_slow_ra;
double slow_score = clt_parameters.imp.cuas_slow_score; double slow_score = clt_parameters.imp.cuas_slow_score;
boolean reuse_targets = clt_parameters.imp.cuas_reuse_targets; // true; // read previously calculated non-conflict (one per tile) targets boolean reuse_targets = clt_parameters.imp.cuas_reuse_targets; // true; // read previously calculated non-conflict (one per tile) targets
...@@ -9423,6 +9436,14 @@ public class CuasMotion { ...@@ -9423,6 +9436,14 @@ public class CuasMotion {
motion_sequence_fast, // double [][][] target_sequence, motion_sequence_fast, // double [][][] target_sequence,
false, // boolean slow_mode, false, // boolean slow_mode,
debugLevel); // final int debugLevel) debugLevel); // final int debugLevel)
double [][][][] targets_good_multi = targets_fast;
/*
* Before running with slow_en== true, verify temporal (scene) offset between slow and fast mode.
* It seems that when the same target is recognized as fast for some scenes, and as slow for anothers,
* it gets offset in x,y - likely caused by incorrect center scene matching. AF 05/02/2026
*/
if (slow_en) {
// process slow targets // process slow targets
this.slow_targets = true; // just for filenames this.slow_targets = true; // just for filenames
float [][] fpixels_slow = runningGaussian( float [][] fpixels_slow = runningGaussian(
...@@ -9442,13 +9463,18 @@ public class CuasMotion { ...@@ -9442,13 +9463,18 @@ public class CuasMotion {
motion_sequence_slow,// double [][][] target_sequence, motion_sequence_slow,// double [][][] target_sequence,
true, // boolean slow_mode, true, // boolean slow_mode,
debugLevel); // final int debugLevel) debugLevel); // final int debugLevel)
double [][][][] targets_good_multi = combineFastSlow( targets_good_multi = combineFastSlow(
targets_fast, // final double [][][][] targets_fast, // will only process non-nulls here targets_fast, // final double [][][][] targets_fast, // will only process non-nulls here
targets_slow, // final double [][][][] targets_slow, targets_slow, // final double [][][][] targets_slow,
slow_score); // final double scale_slow){ // if >0, limit number of best results to add slow_score); // final double scale_slow){ // if >0, limit number of best results to add
sortMultiTargets( }
sortMultiTargets( // maybe only needed after slow branch?
targets_good_multi, // final double [][][][] target_multi, targets_good_multi, // final double [][][][] target_multi,
true); // final boolean trim_nulls) { // trim null targets true);
// final boolean trim_nulls) { // trim null targets
targets_nonconflict = resolveTargetsConflictsMulti( targets_nonconflict = resolveTargetsConflictsMulti(
batch_mode, // boolean batch_mode, batch_mode, // boolean batch_mode,
fpixels, // float [][] fpixels, fpixels, // float [][] fpixels,
......
...@@ -794,6 +794,7 @@ min_str_neib_fpn 0.35 ...@@ -794,6 +794,7 @@ min_str_neib_fpn 0.35
public boolean cuas_smooth = true; // used cosine window when averaging correlations public boolean cuas_smooth = true; // used cosine window when averaging correlations
public int cuas_corr_pairs = 20; // number of correlation pairs to accumulate public int cuas_corr_pairs = 20; // number of correlation pairs to accumulate
public double cuas_boost_slow = 4.0; // if >1 and the motion vector is below tile_size/cuas_boost_slow, scale corr_pairs public double cuas_boost_slow = 4.0; // if >1 and the motion vector is below tile_size/cuas_boost_slow, scale corr_pairs
public double cuas_boost_accum = 4.0; // if >1 increase tracking camera exposure (TODO: conditional / compete)
public double cuas_boost_mstr = 0.007; // scale corr_pairs if motion strength is below public double cuas_boost_mstr = 0.007; // scale corr_pairs if motion strength is below
public int cuas_corr_offset = 5; // offset between motion detection pairs public int cuas_corr_offset = 5; // offset between motion detection pairs
public boolean cuas_gaussian_ra = true; // use gaussian temporal Gaussian instead of running average public boolean cuas_gaussian_ra = true; // use gaussian temporal Gaussian instead of running average
...@@ -872,7 +873,7 @@ min_str_neib_fpn 0.35 ...@@ -872,7 +873,7 @@ min_str_neib_fpn 0.35
public double cuas_lma_a2a = 0.5; // Minimal ratio of the maximal pixel to the amplitude public double cuas_lma_a2a = 0.5; // Minimal ratio of the maximal pixel to the amplitude
public boolean cuas_slow_en = true; // enable slow (almost static) target detection // verify temporal offset with fast
public double cuas_slow_ra = 50.0; // running averaging for slow targets public double cuas_slow_ra = 50.0; // running averaging for slow targets
public double cuas_slow_score = 1.0; // scale scores for slow target mode public double cuas_slow_score = 1.0; // scale scores for slow target mode
public double cuas_score_mv = 0.0; // minimal score for the motion vectors public double cuas_score_mv = 0.0; // minimal score for the motion vectors
...@@ -2688,6 +2689,8 @@ min_str_neib_fpn 0.35 ...@@ -2688,6 +2689,8 @@ min_str_neib_fpn 0.35
"The number of correlation pairs to accumulate."); "The number of correlation pairs to accumulate.");
gd.addNumericField("Boost pairs for slow targets", this.cuas_boost_slow, 5,8,"", gd.addNumericField("Boost pairs for slow targets", this.cuas_boost_slow, 5,8,"",
"If >1 and the motion vector is below tile_size/cuas_boost_slow, scale corr_pairs."); "If >1 and the motion vector is below tile_size/cuas_boost_slow, scale corr_pairs.");
gd.addNumericField("Increase tracking camera exposure", this.cuas_boost_accum, 5,8,"",
"If >1 increase tracking camera exposure (later - conditional).");
gd.addNumericField("Boost pairs for weak targets", this.cuas_boost_mstr, 5,8,"", gd.addNumericField("Boost pairs for weak targets", this.cuas_boost_mstr, 5,8,"",
"Scale corr_pairs if motion strength is below."); "Scale corr_pairs if motion strength is below.");
gd.addNumericField("Pairs offset", this.cuas_corr_offset, 0,3,"scenes", gd.addNumericField("Pairs offset", this.cuas_corr_offset, 0,3,"scenes",
...@@ -2832,7 +2835,10 @@ min_str_neib_fpn 0.35 ...@@ -2832,7 +2835,10 @@ min_str_neib_fpn 0.35
"Maximal ratio of the overshoot radius to the first 0 radius (typical 3.0)."); "Maximal ratio of the overshoot radius to the first 0 radius (typical 3.0).");
gd.addNumericField("Minimal max pixel to amplitude ratio", this.cuas_lma_a2a, 5,8,"", gd.addNumericField("Minimal max pixel to amplitude ratio", this.cuas_lma_a2a, 5,8,"",
"Minimal ratio of the maximal pixel near fitted maximum to the LMA amplitude."); "Minimal ratio of the maximal pixel near fitted maximum to the LMA amplitude.");
gd.addMessage("=== Slow targets detection ==="); gd.addMessage("=== Slow targets detection ===");
gd.addCheckbox ("Enable slow targets detection", this.cuas_slow_en,
"Enable slow (almost static) target detection // verify temporal offset with fast.");
gd.addNumericField("Slow targets averaging", this.cuas_slow_ra, 5,8,"frames", gd.addNumericField("Slow targets averaging", this.cuas_slow_ra, 5,8,"frames",
"Running averaging for slow targets."); "Running averaging for slow targets.");
gd.addNumericField("Slow targets score scale", this.cuas_slow_score, 5,8,"", gd.addNumericField("Slow targets score scale", this.cuas_slow_score, 5,8,"",
...@@ -4343,6 +4349,7 @@ min_str_neib_fpn 0.35 ...@@ -4343,6 +4349,7 @@ min_str_neib_fpn 0.35
this.cuas_smooth = gd.getNextBoolean(); this.cuas_smooth = gd.getNextBoolean();
this.cuas_corr_pairs = (int) gd.getNextNumber(); this.cuas_corr_pairs = (int) gd.getNextNumber();
this.cuas_boost_slow = gd.getNextNumber(); this.cuas_boost_slow = gd.getNextNumber();
this.cuas_boost_accum = gd.getNextNumber();
this.cuas_boost_mstr = gd.getNextNumber(); this.cuas_boost_mstr = gd.getNextNumber();
this.cuas_corr_offset = (int) gd.getNextNumber(); this.cuas_corr_offset = (int) gd.getNextNumber();
this.cuas_gaussian_ra = gd.getNextBoolean(); this.cuas_gaussian_ra = gd.getNextBoolean();
...@@ -4414,6 +4421,7 @@ min_str_neib_fpn 0.35 ...@@ -4414,6 +4421,7 @@ min_str_neib_fpn 0.35
this.cuas_lma_maxk = gd.getNextNumber(); this.cuas_lma_maxk = gd.getNextNumber();
this.cuas_lma_a2a = gd.getNextNumber(); this.cuas_lma_a2a = gd.getNextNumber();
this.cuas_slow_en = gd.getNextBoolean();
this.cuas_slow_ra = gd.getNextNumber(); this.cuas_slow_ra = gd.getNextNumber();
this.cuas_slow_score = gd.getNextNumber(); this.cuas_slow_score = gd.getNextNumber();
...@@ -5641,6 +5649,7 @@ min_str_neib_fpn 0.35 ...@@ -5641,6 +5649,7 @@ min_str_neib_fpn 0.35
properties.setProperty(prefix+"cuas_smooth", this.cuas_smooth+""); // boolean properties.setProperty(prefix+"cuas_smooth", this.cuas_smooth+""); // boolean
properties.setProperty(prefix+"cuas_corr_pairs", this.cuas_corr_pairs+""); // int properties.setProperty(prefix+"cuas_corr_pairs", this.cuas_corr_pairs+""); // int
properties.setProperty(prefix+"cuas_boost_slow", this.cuas_boost_slow+""); // double properties.setProperty(prefix+"cuas_boost_slow", this.cuas_boost_slow+""); // double
properties.setProperty(prefix+"cuas_boost_accum", this.cuas_boost_accum+""); // double
properties.setProperty(prefix+"cuas_boost_mstr", this.cuas_boost_mstr+""); // double properties.setProperty(prefix+"cuas_boost_mstr", this.cuas_boost_mstr+""); // double
properties.setProperty(prefix+"cuas_corr_offset", this.cuas_corr_offset+""); // int properties.setProperty(prefix+"cuas_corr_offset", this.cuas_corr_offset+""); // int
properties.setProperty(prefix+"cuas_gaussian_ra", this.cuas_gaussian_ra+""); // boolean properties.setProperty(prefix+"cuas_gaussian_ra", this.cuas_gaussian_ra+""); // boolean
...@@ -5709,6 +5718,7 @@ min_str_neib_fpn 0.35 ...@@ -5709,6 +5718,7 @@ min_str_neib_fpn 0.35
properties.setProperty(prefix+"cuas_lma_maxk", this.cuas_lma_maxk+""); // double properties.setProperty(prefix+"cuas_lma_maxk", this.cuas_lma_maxk+""); // double
properties.setProperty(prefix+"cuas_lma_a2a", this.cuas_lma_a2a+""); // double properties.setProperty(prefix+"cuas_lma_a2a", this.cuas_lma_a2a+""); // double
properties.setProperty(prefix+"cuas_slow_en", this.cuas_slow_en+""); // boolean
properties.setProperty(prefix+"cuas_slow_ra", this.cuas_slow_ra+""); // double properties.setProperty(prefix+"cuas_slow_ra", this.cuas_slow_ra+""); // double
properties.setProperty(prefix+"cuas_slow_score", this.cuas_slow_score+""); // double properties.setProperty(prefix+"cuas_slow_score", this.cuas_slow_score+""); // double
...@@ -6874,6 +6884,7 @@ min_str_neib_fpn 0.35 ...@@ -6874,6 +6884,7 @@ min_str_neib_fpn 0.35
if (properties.getProperty(prefix+"cuas_smooth")!=null) this.cuas_smooth=Boolean.parseBoolean(properties.getProperty(prefix+"cuas_smooth")); if (properties.getProperty(prefix+"cuas_smooth")!=null) this.cuas_smooth=Boolean.parseBoolean(properties.getProperty(prefix+"cuas_smooth"));
if (properties.getProperty(prefix+"cuas_corr_pairs")!=null) this.cuas_corr_pairs=Integer.parseInt(properties.getProperty(prefix+"cuas_corr_pairs")); if (properties.getProperty(prefix+"cuas_corr_pairs")!=null) this.cuas_corr_pairs=Integer.parseInt(properties.getProperty(prefix+"cuas_corr_pairs"));
if (properties.getProperty(prefix+"cuas_boost_slow")!=null) this.cuas_boost_slow=Double.parseDouble(properties.getProperty(prefix+"cuas_boost_slow")); if (properties.getProperty(prefix+"cuas_boost_slow")!=null) this.cuas_boost_slow=Double.parseDouble(properties.getProperty(prefix+"cuas_boost_slow"));
if (properties.getProperty(prefix+"cuas_boost_accum")!=null) this.cuas_boost_accum=Double.parseDouble(properties.getProperty(prefix+"cuas_boost_accum"));
if (properties.getProperty(prefix+"cuas_boost_mstr")!=null) this.cuas_boost_mstr=Double.parseDouble(properties.getProperty(prefix+"cuas_boost_mstr")); if (properties.getProperty(prefix+"cuas_boost_mstr")!=null) this.cuas_boost_mstr=Double.parseDouble(properties.getProperty(prefix+"cuas_boost_mstr"));
if (properties.getProperty(prefix+"cuas_corr_offset")!=null) this.cuas_corr_offset=Integer.parseInt(properties.getProperty(prefix+"cuas_corr_offset")); if (properties.getProperty(prefix+"cuas_corr_offset")!=null) this.cuas_corr_offset=Integer.parseInt(properties.getProperty(prefix+"cuas_corr_offset"));
if (properties.getProperty(prefix+"cuas_gaussian_ra")!=null) this.cuas_gaussian_ra=Boolean.parseBoolean(properties.getProperty(prefix+"cuas_gaussian_ra")); if (properties.getProperty(prefix+"cuas_gaussian_ra")!=null) this.cuas_gaussian_ra=Boolean.parseBoolean(properties.getProperty(prefix+"cuas_gaussian_ra"));
...@@ -6946,6 +6957,7 @@ min_str_neib_fpn 0.35 ...@@ -6946,6 +6957,7 @@ min_str_neib_fpn 0.35
if (properties.getProperty(prefix+"cuas_lma_maxk")!=null) this.cuas_lma_maxk=Double.parseDouble(properties.getProperty(prefix+"cuas_lma_maxk")); if (properties.getProperty(prefix+"cuas_lma_maxk")!=null) this.cuas_lma_maxk=Double.parseDouble(properties.getProperty(prefix+"cuas_lma_maxk"));
if (properties.getProperty(prefix+"cuas_lma_a2a")!=null) this.cuas_lma_a2a=Double.parseDouble(properties.getProperty(prefix+"cuas_lma_a2a")); if (properties.getProperty(prefix+"cuas_lma_a2a")!=null) this.cuas_lma_a2a=Double.parseDouble(properties.getProperty(prefix+"cuas_lma_a2a"));
if (properties.getProperty(prefix+"cuas_slow_en")!=null) this.cuas_slow_en=Boolean.parseBoolean(properties.getProperty(prefix+"cuas_slow_en"));
if (properties.getProperty(prefix+"cuas_slow_ra")!=null) this.cuas_slow_ra=Double.parseDouble(properties.getProperty(prefix+"cuas_slow_ra")); if (properties.getProperty(prefix+"cuas_slow_ra")!=null) this.cuas_slow_ra=Double.parseDouble(properties.getProperty(prefix+"cuas_slow_ra"));
if (properties.getProperty(prefix+"cuas_slow_score")!=null) this.cuas_slow_score=Double.parseDouble(properties.getProperty(prefix+"cuas_slow_score")); if (properties.getProperty(prefix+"cuas_slow_score")!=null) this.cuas_slow_score=Double.parseDouble(properties.getProperty(prefix+"cuas_slow_score"));
...@@ -8124,6 +8136,7 @@ min_str_neib_fpn 0.35 ...@@ -8124,6 +8136,7 @@ min_str_neib_fpn 0.35
imp.cuas_smooth = this.cuas_smooth; imp.cuas_smooth = this.cuas_smooth;
imp.cuas_corr_pairs = this.cuas_corr_pairs; imp.cuas_corr_pairs = this.cuas_corr_pairs;
imp.cuas_boost_slow = this.cuas_boost_slow; imp.cuas_boost_slow = this.cuas_boost_slow;
imp.cuas_boost_accum = this.cuas_boost_accum;
imp.cuas_boost_mstr = this.cuas_boost_mstr; imp.cuas_boost_mstr = this.cuas_boost_mstr;
imp.cuas_corr_offset = this.cuas_corr_offset; imp.cuas_corr_offset = this.cuas_corr_offset;
imp.cuas_gaussian_ra = this.cuas_gaussian_ra; imp.cuas_gaussian_ra = this.cuas_gaussian_ra;
...@@ -8194,6 +8207,7 @@ min_str_neib_fpn 0.35 ...@@ -8194,6 +8207,7 @@ min_str_neib_fpn 0.35
imp.cuas_lma_maxk = this.cuas_lma_maxk; imp.cuas_lma_maxk = this.cuas_lma_maxk;
imp.cuas_lma_a2a = this.cuas_lma_a2a; imp.cuas_lma_a2a = this.cuas_lma_a2a;
imp.cuas_slow_en = this.cuas_slow_en;
imp.cuas_slow_ra = this.cuas_slow_ra; imp.cuas_slow_ra = this.cuas_slow_ra;
imp.cuas_slow_score = this.cuas_slow_score; imp.cuas_slow_score = this.cuas_slow_score;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment