diff --git a/modules/gpu/include/opencv2/gpu/device/common.hpp b/modules/gpu/include/opencv2/gpu/device/common.hpp index e44c8442f2..931e4247e9 100644 --- a/modules/gpu/include/opencv2/gpu/device/common.hpp +++ b/modules/gpu/include/opencv2/gpu/device/common.hpp @@ -100,6 +100,9 @@ namespace cv { namespace gpu typedef unsigned char uchar; typedef unsigned short ushort; typedef signed char schar; + #ifdef WIN32 + typedef unsigned int uint; + #endif template inline void bindTexture(const textureReference* tex, const PtrStepSz& img) { diff --git a/modules/gpu/src/cuda/element_operations.cu b/modules/gpu/src/cuda/element_operations.cu index 8faaca8bfe..27fb61ff70 100644 --- a/modules/gpu/src/cuda/element_operations.cu +++ b/modules/gpu/src/cuda/element_operations.cu @@ -1409,7 +1409,7 @@ namespace arithm { S val; - explicit DivInv(double val_) : val(val_) {} + explicit DivInv(S val_) : val(val_) {} __device__ __forceinline__ D operator ()(T a) const { diff --git a/modules/gpu/src/cuda/icf-sc.cu b/modules/gpu/src/cuda/icf-sc.cu index 58d6883e89..aa695372e7 100644 --- a/modules/gpu/src/cuda/icf-sc.cu +++ b/modules/gpu/src/cuda/icf-sc.cu @@ -138,10 +138,10 @@ namespace icf { template __device__ __forceinline__ int fast_angle_bin(const float& dx, const float& dy) { - const float angle_quantum = M_PI / 6.f; + const float angle_quantum = CV_PI / 6.f; float angle = atan2(dx, dy) + (angle_quantum / 2.f); - if (angle < 0) angle += M_PI; + if (angle < 0) angle += CV_PI; const float angle_scaling = 1.f / angle_quantum; return static_cast(angle * angle_scaling) % 6; @@ -175,8 +175,8 @@ namespace icf { { int i = 3; float2 bin_vector_i; - bin_vector_i.x = ::cos(i * (M_PI / 6.f)); - bin_vector_i.y = ::sin(i * (M_PI / 6.f)); + bin_vector_i.x = ::cos(i * (CV_PI / 6.f)); + bin_vector_i.y = ::sin(i * (CV_PI / 6.f)); const float dot_product = fabs(dx * bin_vector_i.x + dy * bin_vector_i.y); if(dot_product > max_dot)