gd.addNumericField("Terrain-only iterations",terr_only_series,0,3,"","Last LMA series in terrain-only mode, -1 - to last available in the sequence below.");
gd.addNumericField("Terrain-only iterations",terr_only_series,0,3,"","Last LMA series in terrain-only mode, -1 - to last available in the sequence below.");
gd.addStringField("Maximal iterations",intsToString(terr_only_num_iters),40,"Maximal number of LMA iterations per series, 1 or several values.");
gd.addStringField("Maximal iterations",intsToString(terr_only_num_iters),40,"Maximal number of LMA iterations per series, 1 or several values.");
/// if (properties.getProperty(prefix+"terr_only_special")!= null) terr_only_special=Boolean.parseBoolean(properties.getProperty(prefix+"terr_only_special"));
this.fits_disable[TVAO_TERR_ELEV]|=!(this.fits_disable[TVAO_TERR_ELEV_PIX]&&fits[TVAO_TERR_ELEV_PIX]);// can not be enabled simultaneously
this.fits_disable[TVAO_TERR_ELEV]|=!(this.fits_disable[TVAO_TERR_ELEV_PIX]&&fits[TVAO_TERR_ELEV_PIX]);// can not be enabled simultaneously
if(this.fits_disable_terronly!=null){
this.fits_disable_terronly[TVAO_TERR_ELEV]|=!(this.fits_disable_terronly[TVAO_TERR_ELEV_PIX]&&fits[TVAO_TERR_ELEV_PIX]);// can not be enabled simultaneously
}
this.reg_weights=reg_weights;// fraction of the total weight used for regularization
this.reg_weights=reg_weights;// fraction of the total weight used for regularization
this.alpha_loss=alpha_loss;
this.alpha_loss=alpha_loss;
this.alpha_loss_lin=alpha_loss_lin;
this.alpha_loss_lin=alpha_loss_lin;
...
@@ -978,8 +984,8 @@ public class VegetationLMA {
...
@@ -978,8 +984,8 @@ public class VegetationLMA {
this.ttop_rel_rad=ttop_rel_rad;
this.ttop_rel_rad=ttop_rel_rad;
this.ttop_frac=ttop_frac;
this.ttop_frac=ttop_frac;
this.ttop_rem_rad=ttop_rem_rad;
this.ttop_rem_rad=ttop_rem_rad;
this.terr_only_special=terr_only_special;
/// this.terr_only_special = terr_only_special;
this.terr_only_pix=terr_only_pix;
/// this.terr_only_pix = terr_only_pix;
this.boost_parallax=boost_parallax;
this.boost_parallax=boost_parallax;
this.max_parallax=max_parallax;// parallax limit when evaluating boost parallax
this.max_parallax=max_parallax;// parallax limit when evaluating boost parallax
this.max_warp=max_warp;
this.max_warp=max_warp;
...
@@ -1109,10 +1115,21 @@ public class VegetationLMA {
...
@@ -1109,10 +1115,21 @@ public class VegetationLMA {
getProperty(imp_pars,disable_names,fits_disable),// final boolean [] fit_disable,
getProperty(imp_pars,disable_names,fits_disable),// final boolean [] fit_disable,
null,// fits_disable_terronly,// final boolean [] fits_disable_terronly,
getProperty(imp_pars,"REG_WEIGHTS",reg_weights),// final double reg_weights, // fraction of the total weight used for regularization
getProperty(imp_pars,"REG_WEIGHTS",reg_weights),// final double reg_weights, // fraction of the total weight used for regularization
getProperty(imp_pars,"ALPHA_LOSS",alpha_loss),// final double alpha_loss, // alpha quadratic growing loss for when out of [0,1] range
getProperty(imp_pars,"ALPHA_LOSS",alpha_loss),// final double alpha_loss, // alpha quadratic growing loss for when out of [0,1] range
getProperty(imp_pars,"ALPHA_LOSS_LIN",alpha_loss_lin),// final double alpha_loss_lin, // alpha linear growing loss for when out of [0,1] range and below minimal vegetation alpha
getProperty(imp_pars,"ALPHA_LOSS_LIN",alpha_loss_lin),// final double alpha_loss_lin, // alpha linear growing loss for when out of [0,1] range and below minimal vegetation alpha
...
@@ -6143,8 +6187,8 @@ public class VegetationLMA {
...
@@ -6143,8 +6187,8 @@ public class VegetationLMA {
getProperty(imp_pars,"TTOP_REL_RAD",ttop_rel_rad),// final double ttop_rel_rad,
getProperty(imp_pars,"TTOP_REL_RAD",ttop_rel_rad),// final double ttop_rel_rad,
getProperty(imp_pars,"TTOP_FRAC",ttop_frac),// final double ttop_frac,
getProperty(imp_pars,"TTOP_FRAC",ttop_frac),// final double ttop_frac,
getProperty(imp_pars,"TTOP_REM_RAD",ttop_rem_rad),// final double ttop_rem_rad,
getProperty(imp_pars,"TTOP_REM_RAD",ttop_rem_rad),// final double ttop_rem_rad,
getProperty(imp_pars,"TERR_ONLY_SPECIAL",terr_only_special),// final boolean terr_only_special,//true; // special sequences for terrain-only tiles
/// getProperty(imp_pars, "TERR_ONLY_SPECIAL", terr_only_special), // final boolean terr_only_special,//true; // special sequences for terrain-only tiles
getProperty(imp_pars,"TERR_ONLY_PIX",terr_only_pix),// final boolean terr_only_pix, //true; // force per-pixel terrain elevation in terrain-only mode, overwrite fits_disable[TVAO_TERR_ELEV_PIX]
/// getProperty(imp_pars, "TERR_ONLY_PIX", terr_only_pix), // final boolean terr_only_pix, //true; // force per-pixel terrain elevation in terrain-only mode, overwrite fits_disable[TVAO_TERR_ELEV_PIX]
getProperty(imp_pars,"BOOST_PARALLAX",boost_parallax),// final double boost_parallax, // increase weight of scene with maximal parallax relative to the reference scene
getProperty(imp_pars,"BOOST_PARALLAX",boost_parallax),// final double boost_parallax, // increase weight of scene with maximal parallax relative to the reference scene
getProperty(imp_pars,"MAX_PARALLAX",max_parallax),// final double max_parallax, // do not consider maximal parallax above this (consider it a glitch)
getProperty(imp_pars,"MAX_PARALLAX",max_parallax),// final double max_parallax, // do not consider maximal parallax above this (consider it a glitch)
booleanterr_only_special=clt_parameters.imp.terr_only_special;// true; // special sequences for terrain-only tiles
/// boolean terr_only_special = clt_parameters.imp.terr_only_special; // true; // special sequences for terrain-only tiles
booleanterr_only_pix=clt_parameters.imp.terr_only_pix;// true; // force per-pixel terrain elevation in terrain-only mode, overwrite fits_disable[TVAO_TERR_ELEV_PIX]
/// boolean terr_only_pix = clt_parameters.imp.terr_only_pix; // true; // force per-pixel terrain elevation in terrain-only mode, overwrite fits_disable[TVAO_TERR_ELEV_PIX]
intterr_only_series=clt_parameters.imp.terr_only_series;// -1; // similar to terr_last_series but for terrain-only mode (<0 - length of terr_only_num_iters)
intterr_only_series=clt_parameters.imp.terr_only_series;// -1; // similar to terr_last_series but for terrain-only mode (<0 - length of terr_only_num_iters)
int[]terr_only_num_iters=clt_parameters.imp.terr_only_num_iters;// {25}; // number of iterations
int[]terr_only_num_iters=clt_parameters.imp.terr_only_num_iters;// {25}; // number of iterations
@@ -2143,7 +2143,8 @@ public class VegetationModel {
...
@@ -2143,7 +2143,8 @@ public class VegetationModel {
fit_elevations,// final boolean adjust_elevations,
fit_elevations,// final boolean adjust_elevations,
fit_terr_elev,// final boolean fit_terr_elev,
fit_terr_elev,// final boolean fit_terr_elev,
fit_terr_elev_pix,// final boolean fit_terr_elev_pix,
fit_terr_elev_pix,// final boolean fit_terr_elev_pix,
thisOrLast(step_restore,fits_disable),// fits_disables[0], // final boolean [] fit_disable,
thisOrLast(step_restore,fits_disable),// fits_disables[0], // final boolean [] fit_disable,
thisOrLast(step_restore,fits_disable_terronly),// final boolean [] fits_disable_terronly,
reg_weights,// final double reg_weights, // fraction of the total weight used for regularization
reg_weights,// final double reg_weights, // fraction of the total weight used for regularization
alpha_loss,// final double alpha_loss, // alpha quadratic growing loss for when out of [0,1] range
alpha_loss,// final double alpha_loss, // alpha quadratic growing loss for when out of [0,1] range
alpha_loss_lin,// final double alpha_loss_lin, // alpha linear growing loss for when out of [0,1] range and below minimal vegetation alpha
alpha_loss_lin,// final double alpha_loss_lin, // alpha linear growing loss for when out of [0,1] range and below minimal vegetation alpha
...
@@ -2190,8 +2191,8 @@ public class VegetationModel {
...
@@ -2190,8 +2191,8 @@ public class VegetationModel {
ttop_rel_rad,// final double ttop_rel_rad, // 0.25; // Relative (to the top height) sample ring radius
ttop_rel_rad,// final double ttop_rel_rad, // 0.25; // Relative (to the top height) sample ring radius
ttop_frac,// final double ttop_frac, // 0.5; // Minimal fraction of the ring pixels below sample level
ttop_frac,// final double ttop_frac, // 0.5; // Minimal fraction of the ring pixels below sample level
ttop_rem_rad,// final double ttop_rem_rad, // 0.25; // Relative (to the top height) remove transparency radius
ttop_rem_rad,// final double ttop_rem_rad, // 0.25; // Relative (to the top height) remove transparency radius
terr_only_special,// final boolean terr_only_special,//true; // special sequences for terrain-only tiles
/// terr_only_special,// final boolean terr_only_special,//true; // special sequences for terrain-only tiles
terr_only_pix,// final boolean terr_only_pix, //true; // force per-pixel terrain elevation in terrain-only mode, overwrite fits_disable[TVAO_TERR_ELEV_PIX]
/// terr_only_pix, // final boolean terr_only_pix, //true; // force per-pixel terrain elevation in terrain-only mode, overwrite fits_disable[TVAO_TERR_ELEV_PIX]
boost_parallax,// final double boost_parallax, // increase weight of scene with maximal parallax relative to the reference scene
boost_parallax,// final double boost_parallax, // increase weight of scene with maximal parallax relative to the reference scene
max_parallax,//final double max_parallax, // do not consider maximal parallax above this (consider it a glitch)
max_parallax,//final double max_parallax, // do not consider maximal parallax above this (consider it a glitch)
debugLevel,// final int debugLevel);
debugLevel,// final int debugLevel);
...
@@ -2204,7 +2205,7 @@ public class VegetationModel {
...
@@ -2204,7 +2205,7 @@ public class VegetationModel {