From b0166f3f68323add5d405b10b8468441b8ab0df9 Mon Sep 17 00:00:00 2001 From: Tomas Farago Date: Wed, 31 Jul 2019 17:54:31 +0200 Subject: NLM: use fmax (0.0f, value) only at the end --- src/kernels/nlm.cl | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/kernels/nlm.cl b/src/kernels/nlm.cl index d2f6b0f..a094f34 100644 --- a/src/kernels/nlm.cl +++ b/src/kernels/nlm.cl @@ -44,16 +44,14 @@ compute_dist (read_only image2d_t input, tmp = read_imagef (input, sampler, (float2) ((p.x + i) / width, (p.y + j) / height)).x - read_imagef (input, sampler, (float2) ((q.x + i) / width, (q.y + j) / height)).x; if (window_coeffs) { - /* Use gaussian window. - * Cutoff negative numbers which would cause large weights. */ - dist += fmax (0.0f, window_coeffs[(j + radius) * wsize + (i + radius)] * (tmp * tmp - 2 * variance)); + dist += window_coeffs[(j + radius) * wsize + (i + radius)] * (tmp * tmp - 2 * variance); } else { - dist += fmax (0.0f, tmp * tmp - 2 * variance); + dist += tmp * tmp - 2 * variance; } } } - return dist * coeff; + return fmax (0.0f, dist) * coeff; } kernel void -- cgit v1.2.1