show_mode1,// final int show_mode, //+1 - disparity, +2 - correlations
ranging_verify_use,// final double [][][] ranging_verify,
debugLevel);// final int debugLevel)
if(ranging_verify_use!=null){
}
}
return;
}
...
...
@@ -556,11 +561,14 @@ public class CuasRanging {
sb.append("cuas_rng_um_sigma = "+clt_parameters.imp.cuas_rng_um_sigma+"\n");// unsharp mask sigma for ranging images
sb.append("cuas_rng_um2 = "+clt_parameters.imp.cuas_rng_um2+"\n");// apply UM to images twice
sb.append("cuas_rng_um_weight = "+clt_parameters.imp.cuas_rng_um_weight+"\n");// unsharp mask weight for ranging images
sb.append("cuas_rng_coswnd = "+clt_parameters.imp.cuas_rng_coswnd+"\n");// Use cosine scenes window (false - rectangular)
sb.append("cuas_rng_combine = "+clt_parameters.imp.cuas_rng_combine+"\n");// combine multiple scenes before intrascene correlation
sb.append("cuas_rng_radius0 = "+clt_parameters.imp.cuas_rng_radius0+"\n");// mask out data outside peripheral areas, keep 0.5 at the radius - first iteration
sb.append("cuas_rng_radius = "+clt_parameters.imp.cuas_rng_radius+"\n");// mask out data outside peripheral areas, keep 0.5 at the radius - next iteration
sb.append("cuas_rng_blur = "+clt_parameters.imp.cuas_rng_blur+"\n");// 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
sb.append("cuas_rng_fz = "+clt_parameters.imp.cuas_rng_fz+"\n");// Fat zero in target ranging mode
sb.append("cuas_rng_scale = "+clt_parameters.imp.cuas_rng_scale+"\n");// Scale alt_data to use same strength as for normal ranging because targets
sb.append("cuas_lma_bypass = "+clt_parameters.imp.cuas_lma_bypass+"\n");// Bypass solution tests, OK weak
sb.append("cuas_mcorr_sel = "+clt_parameters.imp.cuas_mcorr_sel+"\n");// all pairs and diagonals (as was for non-cuas ranging)
sb.append("cuas_mcorr_sel_lma = "+clt_parameters.imp.cuas_mcorr_sel_lma+"\n");// all pairs (will use all selected by cuas_mcorr_sel)
sb.append("cuas_max_rel_rms = "+clt_parameters.imp.cuas_max_rel_rms+"\n");// maximal relative (to average max/min amplitude LMA RMS) // May be up to 0.3)
...
...
@@ -570,6 +578,10 @@ public class CuasRanging {
sb.append("cuas_min_min_ac = "+clt_parameters.imp.cuas_min_min_ac+"\n");// LWIR16: 0.007 minimal of a and C coefficients minimum (measures sharpest point)
sb.append("cuas_reset_disparity = "+clt_parameters.imp.cuas_reset_disparity+"\n");// reset target disparities from infinity
sb.append("cuas_infinity = "+clt_parameters.imp.cuas_infinity+"\n");// disparity at infinity for targets
sb.append("cuas_rng_niterate = "+clt_parameters.imp.cuas_rng_niterate+"\n");// number of disparity iterations
sb.append("cuas_rng_diff = "+clt_parameters.imp.cuas_rng_diff+"\n");// exit when disparity difference is smaller
imgdtt_params,// clt_parameters.img_dtt, // final ImageDttParameters imgdtt_params, // Now just extra correlation parameters, later will include, most others
...
...
@@ -1067,16 +1172,41 @@ public class CuasRanging {
}
// Verify tasks are now updated
OpticalFlow.accumulateCorrelations(
window_full[iscene]*(2*half_accum_range+1),// final double weight, // keep same sum as before
// window_full[iscene] * (2 * half_accum_range + 1), // final double weight, // keep same sum as before
window_grp[iscene_grp],// final double weight, // keep same sum as before
accum_weights,// final int [][][] num_acc, // number of accumulated tiles [tilesY][tilesX][pair]
fcorr_td,// final float [][][][] fcorr_td, // [tilesY][tilesX][pair][256] sparse transform domain representation of corr pairs
fcorr_td_acc);// final float [][][][] fcorr_td_acc // [tilesY][tilesX][pair][256] sparse transform domain representation of corr pairs
imgdtt_params.lmas_num_iter,// int num_iter, // 20
debug_level);// imgdtt_params.lma_debug_level1); // 4); // int debug_level) // > 3
if(!lmaSuccess){
if(debug_level>-3){
System.out.println("Still did not help - LMA failed.");
}
}
}
}
if(lmaSuccess){
lma.updateFromVector();
double[][][]dispStrs=lma.lmaDisparityStrengths(//TODO: add parameter to filter out negative minimums ?
imgdtt_params.lmamask_dbg,// false, // boolean bypass_tests, // keep even weak for later analysis. Normally - only in test mode
imgdtt_params.lmamask_bypass||imgdtt_params.lmamask_dbg,// false, // boolean bypass_tests, // keep even weak for later analysis. Normally - only in test mode
imgdtt_params.lmas_min_amp,// minimal ratio of minimal pair correlation amplitude to maximal pair correlation amplitude
imgdtt_params.lmas_min_amp_bg,// minimal ratio of minimal pair correlation amplitude to maximal pair correlation amplitude
imgdtt_params.lmas_max_rel_rms,// maximal relative (to average max/min amplitude LMA RMS) // May be up to 0.3)
@@ -3506,7 +3506,7 @@ public class ImageDtt extends ImageDttCPU {
lma_rms=lma_dual.getRmsTile()[0];
booleandbg_dispStrs=(debug_lma!=null);
double[][][]dispStrs=lma_dual.lmaDisparityStrengths(//TODO: add parameter to filter out negative minimums ?
dbg_dispStrs,// false, // boolean bypass_tests, // keep even weak for later analysis. Normally - only in test mode
imgdtt_params.lmamask_bypass||dbg_dispStrs||debug_print_targets,// false, // boolean bypass_tests, // keep even weak for later analysis. Normally - only in test mode
imgdtt_params.lmas_min_amp,// minimal ratio of minimal pair correlation amplitude to maximal pair correlation amplitude
imgdtt_params.lmas_min_amp_bg,// minimal ratio of minimal pair correlation amplitude to maximal pair correlation amplitude
imgdtt_params.lmas_max_rel_rms,// maximal relative (to average max/min amplitude LMA RMS) // May be up to 0.3)
...
...
@@ -3516,7 +3516,7 @@ public class ImageDtt extends ImageDttCPU {