diff --git a/modules/dnn/src/opencl/activations.cl b/modules/dnn/src/opencl/activations.cl index 040ee20d8ae0f09f6f45eae2fa4bb59ce079a4b2..3e99f1857041efdcee7f14b1b081765788fc0e49 100644 --- a/modules/dnn/src/opencl/activations.cl +++ b/modules/dnn/src/opencl/activations.cl @@ -278,7 +278,7 @@ __kernel void CeluForward(const int n, __global T* in, __global T* out, { int index = get_global_id(0); if(index < n) - out[index] = max(0.f, in[index]) + min(0.f, alpha * expm1(in[index] / alpha)); + out[index] = max((T)0.f, in[index]) + (T)min(0.f, alpha * expm1(in[index] / alpha)); } __kernel void HardSigmoidForward(const int n, __global T* in, __global T* out, @@ -287,7 +287,7 @@ __kernel void HardSigmoidForward(const int n, __global T* in, __global T* out, { int index = get_global_id(0); if(index < n) - out[index] = max(0.f, min(1.f, alpha * in[index] + beta)); + out[index] = max((T)0.f, (T)min(1.f, alpha * in[index] + beta)); } __kernel void SeluForward(const int n, __global T* in, __global T* out,