Improvment to Soft radius

This commit is contained in:
Desmis 2019-03-24 13:59:38 +01:00
parent 71cfb520a0
commit 3d62375623
5 changed files with 33 additions and 11 deletions

View File

@ -786,7 +786,7 @@ HISTORY_MSG_WAVMERGEL;Merge L
HISTORY_MSG_WAVMERGEC;Merge C
HISTORY_MSG_WAVSOFTRAD;Soft radius clarity
HISTORY_MSG_WAVSOFTRADEND;Soft radius final
HISTORY_MSG_WAVSHOWMASK;Show mask
HISTORY_MSG_WAVSHOWMASK;Show wavelet mask
HISTORY_NEWSNAPSHOT;Add
HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b>
HISTORY_SNAPSHOT;Snapshot
@ -2271,7 +2271,7 @@ TP_WAVELET_USHARP;Clarity method
TP_WAVELET_USH;None
TP_WAVELET_USH_TOOLTIP;If you select Sharp-mask, wavelet settings will be automatically positioned :\nBackground=black, Process=below, level=3...you can change level\nIf you select Clarity, wavelet settings will be automatically positioned :\nBackground=residual, Process=above, level=7..you can change level and wavelet levels.
TP_WAVELET_SHA;Sharp mask
TP_WAVELET_SHOWMASK;Show mask
TP_WAVELET_SHOWMASK;Show wavelet 'mask'
TP_WAVELET_CLA;Clarity
TP_WAVELET_USHARP;Sharp method
TP_WAVELET_USHARP_TOOLTIP;Origin : the source file is the file before Wavelet.\nWavelet : the source file is the file including wavelet threatment

View File

@ -1066,9 +1066,14 @@ void Crop::update(int todo)
ble[ir][jr] = (labnCrop->L[ir][jr] - provradius->L[ir][jr]) / 32768.f;
guid[ir][jr] = provradius->L[ir][jr] / 32768.f;
}
double epsilmax = 0.001;
double epsilmin = 0.0001;
double aepsil = (epsilmax - epsilmin) / 90.f;
double bepsil = epsilmax - 100.f * aepsil;
double epsil = aepsil * WaveParams.softrad + bepsil;
float blur = 10.f / skip * (0.01f + 0.8f * WaveParams.softrad);
rtengine::guidedFilter(guid, ble, ble, blur, 0.0005, false);
float blur = 10.f / skip * (0.001f + 0.8f * WaveParams.softrad);
rtengine::guidedFilter(guid, ble, ble, blur, epsil, false);

View File

@ -939,10 +939,15 @@ void ImProcCoordinator::updatePreviewImage(int todo, bool panningRelatedChange)
ble[ir][jr] = (nprevl->L[ir][jr] - provradius->L[ir][jr]) / 32768.f;
guid[ir][jr] = provradius->L[ir][jr] / 32768.f;
}
double epsilmax = 0.001;
double epsilmin = 0.0001;
double aepsil = (epsilmax - epsilmin) / 90.f;
double bepsil = epsilmax - 100.f * aepsil;
double epsil = aepsil * WaveParams.softrad + bepsil;
float blur = 10.f / scale * (0.01f + 0.8f * WaveParams.softrad);
float blur = 10.f / scale * (0.001f + 0.8f * WaveParams.softrad);
// rtengine::guidedFilter(guid, ble, ble, blur, 0.001, multiTh);
rtengine::guidedFilter(guid, ble, ble, blur, 0.0005, false);
rtengine::guidedFilter(guid, ble, ble, blur, epsil, false);

View File

@ -1286,9 +1286,16 @@ void ImProcFunctions::ip_wavelet(LabImage * lab, LabImage * dst, int kall, const
guid[ir][jr] = provradius->L[ir][jr] / 32768.f;
}
float blur = 10.f / skip * (0.1f + 0.1f * waparams.softradend);
// float blur = 10.f / skip * (0.1f + 0.1f * waparams.softradend);
double epsilmax = 0.001;
double epsilmin = 0.0001;
double aepsil = (epsilmax - epsilmin) / 90.f;
double bepsil = epsilmax - 100.f * aepsil;
double epsil = aepsil * waparams.softradend + bepsil;
rtengine::guidedFilter(guid, ble, ble, blur, 0.001, multiTh);
float blur = 10.f / scale * (0.001f + 0.8f * waparams.softradend);
rtengine::guidedFilter(guid, ble, ble, blur, epsil, multiTh);

View File

@ -1210,10 +1210,15 @@ private:
ble[ir][jr] = (labView->L[ir][jr] - provradius->L[ir][jr]) / 32768.f;
guid[ir][jr] = provradius->L[ir][jr] / 32768.f;
}
double epsilmax = 0.001;
double epsilmin = 0.0001;
double aepsil = (epsilmax - epsilmin) / 90.f;
double bepsil = epsilmax - 100.f * aepsil;
double epsil = aepsil * WaveParams.softrad + bepsil;
float blur = 10.f / 1 * (0.01f + 0.8f * WaveParams.softrad);
float blur = 10.f / 1 * (0.001f + 0.8f * WaveParams.softrad);
// rtengine::guidedFilter(guid, ble, ble, blur, 0.001, multiTh);
rtengine::guidedFilter(guid, ble, ble, blur, 0.0005, false);
rtengine::guidedFilter(guid, ble, ble, blur, epsil, false);