Improve denoise equalizer wavelet levels

This commit is contained in:
Desmis
2020-05-17 14:07:54 +02:00
parent 1d66bdc002
commit 90180a7d1f
2 changed files with 7 additions and 7 deletions

View File

@@ -2214,7 +2214,7 @@ bool ImProcFunctions::WaveletDenoiseAll_BiShrinkL(const wavelet_decomposition &W
int maxlvl = min(WaveletCoeffs_L.maxlevel(), 5);
const float eps = 0.01f;
if (edge == 1 || edge == 3 || edge == 4) {
if (edge == 1 || edge == 3 || edge == 4 || edge == 5) {
maxlvl = 4; //for refine denoise edge wavelet
}
@@ -2286,7 +2286,7 @@ bool ImProcFunctions::WaveletDenoiseAll_BiShrinkL(const wavelet_decomposition &W
for (int i = 0; i < Hlvl_L * Wlvl_L; ++i) {
nvl[i] = 0.f;
}
if ((edge == 1 || edge == 2 || edge == 3) && vari) {
if ((edge == 1 || edge == 2 || edge == 3 || edge == 5) && vari) {
// nvl = blurBuffer; // we need one buffer, but fortunately we don't have to allocate a new one because we can use blurBuffer
if ((edge == 1 || edge == 3)) {
for (int i = 0; i < Hlvl_L * Wlvl_L; ++i) {
@@ -2294,7 +2294,7 @@ bool ImProcFunctions::WaveletDenoiseAll_BiShrinkL(const wavelet_decomposition &W
}
}
if (edge == 2 || edge == 4) {
if (edge == 2 || edge == 4 || edge == 5) {
for (int i = 0; i < Hlvl_L * Wlvl_L; ++i) {
nvl[i] = vari[lvl] * SQR(noisevarlum[i]);
}
@@ -2569,7 +2569,7 @@ bool ImProcFunctions::WaveletDenoiseAllL(const wavelet_decomposition &WaveletCoe
int maxlvl = min(WaveletCoeffs_L.maxlevel(), 5);
if (edge == 1 || edge == 3) {
if (edge == 1 || edge == 3 || edge == 5) {
maxlvl = 4; //for refine denoise edge wavelet
}
@@ -2713,7 +2713,7 @@ void ImProcFunctions::ShrinkAllL(const wavelet_decomposition &WaveletCoeffs_L, f
nvl[i] = 0.f;
}
if ((edge == 1 || edge == 2 || edge == 3) && vari) {
if ((edge == 1 || edge == 2 || edge == 3 || edge == 5) && vari) {
// nvl = blurBuffer; // we need one buffer, but fortunately we don't have to allocate a new one because we can use blurBuffer
if ((edge == 1 || edge == 3)) {
for (int i = 0; i < W_L * H_L; ++i) {
@@ -2721,7 +2721,7 @@ void ImProcFunctions::ShrinkAllL(const wavelet_decomposition &WaveletCoeffs_L, f
}
}
if (edge == 2 || edge == 4) {
if (edge == 2 || edge == 4 || edge == 5) {
for (int i = 0; i < W_L * H_L; ++i) {
nvl[i] = vari[level] * SQR(noisevarlum[i]);
}