diff --git a/rtdata/profiles/Pixel Shift/PS ISO Low.pp3 b/rtdata/profiles/Pixel Shift/PS ISO Low.pp3 index afd3b762c..5587b19e0 100644 --- a/rtdata/profiles/Pixel Shift/PS ISO Low.pp3 +++ b/rtdata/profiles/Pixel Shift/PS ISO Low.pp3 @@ -12,7 +12,7 @@ Enabled=true Contrast=15 Matrix=false Strength=20 -Uniformity=50 +Uniformity=5 [RAW] CA=true diff --git a/rtdata/profiles/Pixel Shift/PS No Motion.pp3 b/rtdata/profiles/Pixel Shift/PS No Motion.pp3 index af624912e..f1d889f97 100644 --- a/rtdata/profiles/Pixel Shift/PS No Motion.pp3 +++ b/rtdata/profiles/Pixel Shift/PS No Motion.pp3 @@ -12,7 +12,7 @@ Enabled=true Contrast=15 Matrix=false Strength=20 -Uniformity=50 +Uniformity=5 [RAW] CA=true diff --git a/rtengine/ipsharpen.cc b/rtengine/ipsharpen.cc index 8437fae47..84068ced9 100644 --- a/rtengine/ipsharpen.cc +++ b/rtengine/ipsharpen.cc @@ -643,7 +643,7 @@ BENCHFUN const int k = params->sharpenMicro.matrix ? 1 : 2; // k=2 matrix 5x5 k=1 matrix 3x3 const int width = W, height = H; - const int unif = params->sharpenMicro.uniformity / 10.0f; //put unif between 0 to 10 + const int unif = params->sharpenMicro.uniformity; const float amount = (k == 1 ? 2.7f : 1.f) * params->sharpenMicro.amount / 1500.0f; //amount 2000.0 quasi no artifacts ==> 1500 = maximum, after artifacts, 25/9 if 3x3 if (settings->verbose) { diff --git a/rtengine/procparams.cc b/rtengine/procparams.cc index 5c4596745..fe4512691 100644 --- a/rtengine/procparams.cc +++ b/rtengine/procparams.cc @@ -1149,7 +1149,7 @@ SharpenMicroParams::SharpenMicroParams() : matrix(false), amount(20.0), contrast(20.0), - uniformity(50.0) + uniformity(5) { } @@ -3962,7 +3962,13 @@ int ProcParams::load(const Glib::ustring& fname, ParamsEdited* pedited) pedited->sharpenMicro.contrast = true; } } - assignFromKeyfile(keyFile, "SharpenMicro", "Uniformity", pedited, sharpenMicro.uniformity, pedited->sharpenMicro.uniformity); + if (ppVersion >= 346) { + assignFromKeyfile(keyFile, "SharpenMicro", "Uniformity", pedited, sharpenMicro.uniformity, pedited->sharpenMicro.uniformity); + } else { + double temp; + assignFromKeyfile(keyFile, "SharpenMicro", "Uniformity", pedited, temp, pedited->sharpenMicro.uniformity); + sharpenMicro.uniformity = temp / 10; + } } if (keyFile.has_group("Vibrance")) { diff --git a/rtengine/procparams.h b/rtengine/procparams.h index d1b70b9c2..50e77d32e 100644 --- a/rtengine/procparams.h +++ b/rtengine/procparams.h @@ -531,7 +531,7 @@ struct SharpenMicroParams { bool matrix; double amount; double contrast; - double uniformity; + int uniformity; SharpenMicroParams(); diff --git a/rtgui/ppversion.h b/rtgui/ppversion.h index 91a9633c0..89f93ed44 100644 --- a/rtgui/ppversion.h +++ b/rtgui/ppversion.h @@ -1,11 +1,13 @@ #pragma once // This number has to be incremented whenever the PP3 file format is modified or the behaviour of a tool changes -#define PPVERSION 345 +#define PPVERSION 346 #define PPVERSION_AEXP 301 //value of PPVERSION when auto exposure algorithm was modified /* Log of version changes + 346 2019-01-01 + changed microcontrast uniformity 345 2018-10-21 dual demosaic auto contrast threshold 344 2018-10-04 diff --git a/rtgui/sharpenmicro.cc b/rtgui/sharpenmicro.cc index 7e981db96..8686b747b 100644 --- a/rtgui/sharpenmicro.cc +++ b/rtgui/sharpenmicro.cc @@ -40,7 +40,7 @@ SharpenMicro::SharpenMicro () : FoldableToolPanel(this, "sharpenmicro", M("TP_SH amount->setAdjusterListener (this); amount->show(); - uniformity = Gtk::manage(new Adjuster (M("TP_SHARPENMICRO_UNIFORMITY"), 0, 100, 10, 50)); + uniformity = Gtk::manage(new Adjuster (M("TP_SHARPENMICRO_UNIFORMITY"), 0, 10, 1, 5)); uniformity->setAdjusterListener (this); uniformity->show();