Don't allocate blurbuffer when blur is disabled, #5075
This commit is contained in:
@@ -178,9 +178,11 @@ BENCHFUN
|
|||||||
JaggedArray<float> blend(W, H);
|
JaggedArray<float> blend(W, H);
|
||||||
float contrast = sharpenParam.contrast / 100.f;
|
float contrast = sharpenParam.contrast / 100.f;
|
||||||
buildBlendMask(luminance, blend, W, H, contrast, sharpenParam.deconvamount / 100.f);
|
buildBlendMask(luminance, blend, W, H, contrast, sharpenParam.deconvamount / 100.f);
|
||||||
JaggedArray<float> blur(W, H);
|
JaggedArray<float>* blurbuffer = nullptr;
|
||||||
|
|
||||||
if (sharpenParam.blurradius >= 0.25f) {
|
if (sharpenParam.blurradius >= 0.25f) {
|
||||||
|
blurbuffer = new JaggedArray<float>(W, H);
|
||||||
|
JaggedArray<float> &blur = *blurbuffer;
|
||||||
#ifdef _OPENMP
|
#ifdef _OPENMP
|
||||||
#pragma omp parallel
|
#pragma omp parallel
|
||||||
#endif
|
#endif
|
||||||
@@ -227,6 +229,7 @@ BENCHFUN
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (sharpenParam.blurradius >= 0.25f) {
|
if (sharpenParam.blurradius >= 0.25f) {
|
||||||
|
JaggedArray<float> &blur = *blurbuffer;
|
||||||
#ifdef _OPENMP
|
#ifdef _OPENMP
|
||||||
#pragma omp for
|
#pragma omp for
|
||||||
#endif
|
#endif
|
||||||
@@ -237,6 +240,7 @@ BENCHFUN
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
} // end parallel
|
} // end parallel
|
||||||
|
delete blurbuffer;
|
||||||
}
|
}
|
||||||
|
|
||||||
void ImProcFunctions::sharpening (LabImage* lab, const SharpeningParams &sharpenParam, bool showMask)
|
void ImProcFunctions::sharpening (LabImage* lab, const SharpeningParams &sharpenParam, bool showMask)
|
||||||
|
Reference in New Issue
Block a user