From 2d545819711f87204a057465966d85b6e5c9d291 Mon Sep 17 00:00:00 2001 From: vbystricky Date: Mon, 7 Apr 2014 16:45:35 +0400 Subject: [PATCH 1/4] Fix ifdef for IPP version greater 8.1 --- modules/core/src/stat.cpp | 7 ++++--- modules/imgproc/src/color.cpp | 4 ++-- modules/imgproc/src/morph.cpp | 4 ++-- modules/imgproc/src/smooth.cpp | 2 +- 4 files changed, 9 insertions(+), 8 deletions(-) diff --git a/modules/core/src/stat.cpp b/modules/core/src/stat.cpp index b7e5d3422..8015c3c58 100644 --- a/modules/core/src/stat.cpp +++ b/modules/core/src/stat.cpp @@ -43,6 +43,7 @@ #include "precomp.hpp" #include "opencl_kernels.hpp" #include +#include namespace cv { @@ -971,7 +972,7 @@ void cv::meanStdDev( InputArray _src, OutputArray _mean, OutputArray _sdv, Input ippiMeanStdDevFuncC1 ippFuncC1 = type == CV_8UC1 ? (ippiMeanStdDevFuncC1)ippiMean_StdDev_8u_C1R : type == CV_16UC1 ? (ippiMeanStdDevFuncC1)ippiMean_StdDev_16u_C1R : -#if (IPP_VERSION_MAJOR >= 8) && (IPP_VERSION_MINOR >= 1) +#if ((IPP_VERSION_MAJOR >= 8) && (IPP_VERSION_MINOR >= 1)) || (IPP_VERSION_MAJOR > 8) type == CV_32FC1 ? (ippiMeanStdDevFuncC1)ippiMean_StdDev_32f_C1R ://Aug 2013: bug in IPP 7.1, 8.0 #endif 0; @@ -2112,7 +2113,7 @@ double cv::norm( InputArray _src, int normType, InputArray _mask ) type == CV_16UC3 ? (ippiNormFuncNoHint)ippiNorm_Inf_16u_C3R : type == CV_16UC4 ? (ippiNormFuncNoHint)ippiNorm_Inf_16u_C4R : type == CV_16SC1 ? (ippiNormFuncNoHint)ippiNorm_Inf_16s_C1R : -#if (IPP_VERSION_MAJOR >= 8) && (IPP_VERSION_MINOR >= 1) +#if ((IPP_VERSION_MAJOR >= 8) && (IPP_VERSION_MINOR >= 1)) || (IPP_VERSION_MAJOR > 8) type == CV_16SC3 ? (ippiNormFuncNoHint)ippiNorm_Inf_16s_C3R : //Aug 2013: problem in IPP 7.1, 8.0 : -32768 type == CV_16SC4 ? (ippiNormFuncNoHint)ippiNorm_Inf_16s_C4R : //Aug 2013: problem in IPP 7.1, 8.0 : -32768 #endif @@ -2544,7 +2545,7 @@ double cv::norm( InputArray _src1, InputArray _src2, int normType, InputArray _m type == CV_16UC3 ? (ippiNormDiffFuncNoHint)ippiNormDiff_Inf_16u_C3R : type == CV_16UC4 ? (ippiNormDiffFuncNoHint)ippiNormDiff_Inf_16u_C4R : type == CV_16SC1 ? (ippiNormDiffFuncNoHint)ippiNormDiff_Inf_16s_C1R : -#if (IPP_VERSION_MAJOR >= 8) && (IPP_VERSION_MINOR >= 1) +#if ((IPP_VERSION_MAJOR >= 8) && (IPP_VERSION_MINOR >= 1)) || (IPP_VERSION_MAJOR > 8) type == CV_16SC3 ? (ippiNormDiffFuncNoHint)ippiNormDiff_Inf_16s_C3R : //Aug 2013: problem in IPP 7.1, 8.0 : -32768 type == CV_16SC4 ? (ippiNormDiffFuncNoHint)ippiNormDiff_Inf_16s_C4R : //Aug 2013: problem in IPP 7.1, 8.0 : -32768 #endif diff --git a/modules/imgproc/src/color.cpp b/modules/imgproc/src/color.cpp index 30b04c238..3a0972b04 100644 --- a/modules/imgproc/src/color.cpp +++ b/modules/imgproc/src/color.cpp @@ -298,7 +298,7 @@ static ippiReorderFunc ippiSwapChannelsC3RTab[] = 0, (ippiReorderFunc)ippiSwapChannels_32f_C3R, 0, 0 }; -#if (IPP_VERSION_MAJOR >= 8) && (IPP_VERSION_MINOR >= 1) +#if ((IPP_VERSION_MAJOR >= 8) && (IPP_VERSION_MINOR >= 1)) || (IPP_VERSION_MAJOR > 8) static ippiReorderFunc ippiSwapChannelsC4RTab[] = { (ippiReorderFunc)ippiSwapChannels_8u_C4R, 0, (ippiReorderFunc)ippiSwapChannels_16u_C4R, 0, @@ -3254,7 +3254,7 @@ void cv::cvtColor( InputArray _src, OutputArray _dst, int code, int dcn ) if( CvtColorIPPLoopCopy(src, dst, IPPReorderFunctor(ippiSwapChannelsC3RTab[depth], 2, 1, 0)) ) return; } -#if (IPP_VERSION_MAJOR >= 8) && (IPP_VERSION_MINOR >= 1) +#if ((IPP_VERSION_MAJOR >= 8) && (IPP_VERSION_MINOR >= 1)) || (IPP_VERSION_MAJOR > 8) else if( code == CV_RGBA2BGRA ) { if( CvtColorIPPLoopCopy(src, dst, IPPReorderFunctor(ippiSwapChannelsC4RTab[depth], 2, 1, 0)) ) diff --git a/modules/imgproc/src/morph.cpp b/modules/imgproc/src/morph.cpp index b3433549d..df055c83b 100644 --- a/modules/imgproc/src/morph.cpp +++ b/modules/imgproc/src/morph.cpp @@ -1136,7 +1136,7 @@ private: Scalar borderValue; }; -#if defined (HAVE_IPP) && (IPP_VERSION_MAJOR >= 8) && (IPP_VERSION_MINOR >= 1) +#if defined (HAVE_IPP) && (((IPP_VERSION_MAJOR >= 8) && (IPP_VERSION_MINOR >= 1)) || (IPP_VERSION_MAJOR > 8)) static bool IPPMorphReplicate(int op, const Mat &src, Mat &dst, const Mat &kernel, const Size& ksize, const Point &anchor, bool rectKernel) { @@ -1459,7 +1459,7 @@ static void morphOp( int op, InputArray _src, OutputArray _dst, Size ksize = kernel.data ? kernel.size() : Size(3,3); anchor = normalizeAnchor(anchor, ksize); -#if defined (HAVE_IPP) && (IPP_VERSION_MAJOR >= 8) && (IPP_VERSION_MINOR >= 1) +#if defined (HAVE_IPP) && (((IPP_VERSION_MAJOR >= 8) && (IPP_VERSION_MINOR >= 1)) || (IPP_VERSION_MAJOR > 8)) if( IPPMorphOp(op, _src, _dst, kernel, anchor, iterations, borderType, borderValue) ) return; #endif diff --git a/modules/imgproc/src/smooth.cpp b/modules/imgproc/src/smooth.cpp index 7499e2468..65d2dce4f 100644 --- a/modules/imgproc/src/smooth.cpp +++ b/modules/imgproc/src/smooth.cpp @@ -1109,7 +1109,7 @@ void cv::GaussianBlur( InputArray _src, OutputArray _dst, Size ksize, return; #endif -#if defined (HAVE_IPP) && (IPP_VERSION_MAJOR >= 8) && (IPP_VERSION_MINOR >= 1) +#if defined (HAVE_IPP) && (((IPP_VERSION_MAJOR >= 8) && (IPP_VERSION_MINOR >= 1)) || (IPP_VERSION_MAJOR > 8)) if( type == CV_32FC1 && sigma1 == sigma2 && ksize.width == ksize.height && sigma1 != 0.0 ) { Mat src = _src.getMat(), dst = _dst.getMat(); From 7badc85b60e7d1c655f4cfc99d4a3955009f40e0 Mon Sep 17 00:00:00 2001 From: vbystricky Date: Mon, 7 Apr 2014 17:06:02 +0400 Subject: [PATCH 2/4] Fix for pullrequest comment --- modules/core/src/stat.cpp | 6 +++--- modules/imgproc/src/color.cpp | 4 ++-- modules/imgproc/src/morph.cpp | 4 ++-- modules/imgproc/src/smooth.cpp | 2 +- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/modules/core/src/stat.cpp b/modules/core/src/stat.cpp index 8015c3c58..01211f0d8 100644 --- a/modules/core/src/stat.cpp +++ b/modules/core/src/stat.cpp @@ -972,7 +972,7 @@ void cv::meanStdDev( InputArray _src, OutputArray _mean, OutputArray _sdv, Input ippiMeanStdDevFuncC1 ippFuncC1 = type == CV_8UC1 ? (ippiMeanStdDevFuncC1)ippiMean_StdDev_8u_C1R : type == CV_16UC1 ? (ippiMeanStdDevFuncC1)ippiMean_StdDev_16u_C1R : -#if ((IPP_VERSION_MAJOR >= 8) && (IPP_VERSION_MINOR >= 1)) || (IPP_VERSION_MAJOR > 8) +#if (IPP_VERSION_MAJOR * 10 + IPP_VERSION_MINOR >= 81) type == CV_32FC1 ? (ippiMeanStdDevFuncC1)ippiMean_StdDev_32f_C1R ://Aug 2013: bug in IPP 7.1, 8.0 #endif 0; @@ -2113,7 +2113,7 @@ double cv::norm( InputArray _src, int normType, InputArray _mask ) type == CV_16UC3 ? (ippiNormFuncNoHint)ippiNorm_Inf_16u_C3R : type == CV_16UC4 ? (ippiNormFuncNoHint)ippiNorm_Inf_16u_C4R : type == CV_16SC1 ? (ippiNormFuncNoHint)ippiNorm_Inf_16s_C1R : -#if ((IPP_VERSION_MAJOR >= 8) && (IPP_VERSION_MINOR >= 1)) || (IPP_VERSION_MAJOR > 8) +#if (IPP_VERSION_MAJOR * 10 + IPP_VERSION_MINOR >= 81) type == CV_16SC3 ? (ippiNormFuncNoHint)ippiNorm_Inf_16s_C3R : //Aug 2013: problem in IPP 7.1, 8.0 : -32768 type == CV_16SC4 ? (ippiNormFuncNoHint)ippiNorm_Inf_16s_C4R : //Aug 2013: problem in IPP 7.1, 8.0 : -32768 #endif @@ -2545,7 +2545,7 @@ double cv::norm( InputArray _src1, InputArray _src2, int normType, InputArray _m type == CV_16UC3 ? (ippiNormDiffFuncNoHint)ippiNormDiff_Inf_16u_C3R : type == CV_16UC4 ? (ippiNormDiffFuncNoHint)ippiNormDiff_Inf_16u_C4R : type == CV_16SC1 ? (ippiNormDiffFuncNoHint)ippiNormDiff_Inf_16s_C1R : -#if ((IPP_VERSION_MAJOR >= 8) && (IPP_VERSION_MINOR >= 1)) || (IPP_VERSION_MAJOR > 8) +#if (IPP_VERSION_MAJOR * 10 + IPP_VERSION_MINOR >= 81) type == CV_16SC3 ? (ippiNormDiffFuncNoHint)ippiNormDiff_Inf_16s_C3R : //Aug 2013: problem in IPP 7.1, 8.0 : -32768 type == CV_16SC4 ? (ippiNormDiffFuncNoHint)ippiNormDiff_Inf_16s_C4R : //Aug 2013: problem in IPP 7.1, 8.0 : -32768 #endif diff --git a/modules/imgproc/src/color.cpp b/modules/imgproc/src/color.cpp index 3a0972b04..95f4eb445 100644 --- a/modules/imgproc/src/color.cpp +++ b/modules/imgproc/src/color.cpp @@ -298,7 +298,7 @@ static ippiReorderFunc ippiSwapChannelsC3RTab[] = 0, (ippiReorderFunc)ippiSwapChannels_32f_C3R, 0, 0 }; -#if ((IPP_VERSION_MAJOR >= 8) && (IPP_VERSION_MINOR >= 1)) || (IPP_VERSION_MAJOR > 8) +#if (IPP_VERSION_MAJOR * 10 + IPP_VERSION_MINOR >= 81) static ippiReorderFunc ippiSwapChannelsC4RTab[] = { (ippiReorderFunc)ippiSwapChannels_8u_C4R, 0, (ippiReorderFunc)ippiSwapChannels_16u_C4R, 0, @@ -3254,7 +3254,7 @@ void cv::cvtColor( InputArray _src, OutputArray _dst, int code, int dcn ) if( CvtColorIPPLoopCopy(src, dst, IPPReorderFunctor(ippiSwapChannelsC3RTab[depth], 2, 1, 0)) ) return; } -#if ((IPP_VERSION_MAJOR >= 8) && (IPP_VERSION_MINOR >= 1)) || (IPP_VERSION_MAJOR > 8) +#if (IPP_VERSION_MAJOR * 10 + IPP_VERSION_MINOR >= 81) else if( code == CV_RGBA2BGRA ) { if( CvtColorIPPLoopCopy(src, dst, IPPReorderFunctor(ippiSwapChannelsC4RTab[depth], 2, 1, 0)) ) diff --git a/modules/imgproc/src/morph.cpp b/modules/imgproc/src/morph.cpp index df055c83b..1fd93f862 100644 --- a/modules/imgproc/src/morph.cpp +++ b/modules/imgproc/src/morph.cpp @@ -1136,7 +1136,7 @@ private: Scalar borderValue; }; -#if defined (HAVE_IPP) && (((IPP_VERSION_MAJOR >= 8) && (IPP_VERSION_MINOR >= 1)) || (IPP_VERSION_MAJOR > 8)) +#if defined (HAVE_IPP) && (IPP_VERSION_MAJOR * 10 + IPP_VERSION_MINOR >= 81) static bool IPPMorphReplicate(int op, const Mat &src, Mat &dst, const Mat &kernel, const Size& ksize, const Point &anchor, bool rectKernel) { @@ -1459,7 +1459,7 @@ static void morphOp( int op, InputArray _src, OutputArray _dst, Size ksize = kernel.data ? kernel.size() : Size(3,3); anchor = normalizeAnchor(anchor, ksize); -#if defined (HAVE_IPP) && (((IPP_VERSION_MAJOR >= 8) && (IPP_VERSION_MINOR >= 1)) || (IPP_VERSION_MAJOR > 8)) +#if defined (HAVE_IPP) && (IPP_VERSION_MAJOR * 10 + IPP_VERSION_MINOR >= 81) if( IPPMorphOp(op, _src, _dst, kernel, anchor, iterations, borderType, borderValue) ) return; #endif diff --git a/modules/imgproc/src/smooth.cpp b/modules/imgproc/src/smooth.cpp index 65d2dce4f..629d66825 100644 --- a/modules/imgproc/src/smooth.cpp +++ b/modules/imgproc/src/smooth.cpp @@ -1109,7 +1109,7 @@ void cv::GaussianBlur( InputArray _src, OutputArray _dst, Size ksize, return; #endif -#if defined (HAVE_IPP) && (((IPP_VERSION_MAJOR >= 8) && (IPP_VERSION_MINOR >= 1)) || (IPP_VERSION_MAJOR > 8)) +#if defined (HAVE_IPP) && (IPP_VERSION_MAJOR * 10 + IPP_VERSION_MINOR >= 81) if( type == CV_32FC1 && sigma1 == sigma2 && ksize.width == ksize.height && sigma1 != 0.0 ) { Mat src = _src.getMat(), dst = _dst.getMat(); From f23134ce01cb9c38e9ac13f3d5c0afcbc1502bc2 Mon Sep 17 00:00:00 2001 From: vbystricky Date: Tue, 8 Apr 2014 12:43:57 +0400 Subject: [PATCH 3/4] Add IPP_VERSION_X100 define --- modules/core/include/opencv2/core/private.hpp | 3 +++ modules/core/src/dxt.cpp | 2 +- modules/core/src/stat.cpp | 6 +++--- modules/imgproc/src/color.cpp | 4 ++-- modules/imgproc/src/filter.cpp | 2 +- modules/imgproc/src/imgwarp.cpp | 6 +++--- modules/imgproc/src/morph.cpp | 4 ++-- modules/imgproc/src/smooth.cpp | 2 +- 8 files changed, 16 insertions(+), 13 deletions(-) diff --git a/modules/core/include/opencv2/core/private.hpp b/modules/core/include/opencv2/core/private.hpp index 561499219..45351d1a8 100644 --- a/modules/core/include/opencv2/core/private.hpp +++ b/modules/core/include/opencv2/core/private.hpp @@ -216,12 +216,15 @@ CV_EXPORTS void scalarToRawData(const cv::Scalar& s, void* buf, int type, int un # else # include "ipp.h" # endif +# define IPP_VERSION_X100 (IPP_VERSION_MAJOR * 100 + IPP_VERSION_MINOR) static inline IppiSize ippiSize(int width, int height) { IppiSize size = { width, height }; return size; } +#else +# define IPP_VERSION_X100 0 #endif #ifndef IPPI_CALL diff --git a/modules/core/src/dxt.cpp b/modules/core/src/dxt.cpp index 4cdb6a16d..0f2cbd98b 100644 --- a/modules/core/src/dxt.cpp +++ b/modules/core/src/dxt.cpp @@ -53,7 +53,7 @@ namespace cv # pragma warning(disable: 4748) #endif -#if defined HAVE_IPP && IPP_VERSION_MAJOR*100 + IPP_VERSION_MINOR >= 701 +#if defined HAVE_IPP && IPP_VERSION_X100 >= 701 #define USE_IPP_DFT 1 #else #undef USE_IPP_DFT diff --git a/modules/core/src/stat.cpp b/modules/core/src/stat.cpp index 01211f0d8..adc24119e 100644 --- a/modules/core/src/stat.cpp +++ b/modules/core/src/stat.cpp @@ -972,7 +972,7 @@ void cv::meanStdDev( InputArray _src, OutputArray _mean, OutputArray _sdv, Input ippiMeanStdDevFuncC1 ippFuncC1 = type == CV_8UC1 ? (ippiMeanStdDevFuncC1)ippiMean_StdDev_8u_C1R : type == CV_16UC1 ? (ippiMeanStdDevFuncC1)ippiMean_StdDev_16u_C1R : -#if (IPP_VERSION_MAJOR * 10 + IPP_VERSION_MINOR >= 81) +#if (IPP_VERSION_X100 >= 801) type == CV_32FC1 ? (ippiMeanStdDevFuncC1)ippiMean_StdDev_32f_C1R ://Aug 2013: bug in IPP 7.1, 8.0 #endif 0; @@ -2113,7 +2113,7 @@ double cv::norm( InputArray _src, int normType, InputArray _mask ) type == CV_16UC3 ? (ippiNormFuncNoHint)ippiNorm_Inf_16u_C3R : type == CV_16UC4 ? (ippiNormFuncNoHint)ippiNorm_Inf_16u_C4R : type == CV_16SC1 ? (ippiNormFuncNoHint)ippiNorm_Inf_16s_C1R : -#if (IPP_VERSION_MAJOR * 10 + IPP_VERSION_MINOR >= 81) +#if (IPP_VERSION_X100 >= 801) type == CV_16SC3 ? (ippiNormFuncNoHint)ippiNorm_Inf_16s_C3R : //Aug 2013: problem in IPP 7.1, 8.0 : -32768 type == CV_16SC4 ? (ippiNormFuncNoHint)ippiNorm_Inf_16s_C4R : //Aug 2013: problem in IPP 7.1, 8.0 : -32768 #endif @@ -2545,7 +2545,7 @@ double cv::norm( InputArray _src1, InputArray _src2, int normType, InputArray _m type == CV_16UC3 ? (ippiNormDiffFuncNoHint)ippiNormDiff_Inf_16u_C3R : type == CV_16UC4 ? (ippiNormDiffFuncNoHint)ippiNormDiff_Inf_16u_C4R : type == CV_16SC1 ? (ippiNormDiffFuncNoHint)ippiNormDiff_Inf_16s_C1R : -#if (IPP_VERSION_MAJOR * 10 + IPP_VERSION_MINOR >= 81) +#if (IPP_VERSION_X100 >= 801) type == CV_16SC3 ? (ippiNormDiffFuncNoHint)ippiNormDiff_Inf_16s_C3R : //Aug 2013: problem in IPP 7.1, 8.0 : -32768 type == CV_16SC4 ? (ippiNormDiffFuncNoHint)ippiNormDiff_Inf_16s_C4R : //Aug 2013: problem in IPP 7.1, 8.0 : -32768 #endif diff --git a/modules/imgproc/src/color.cpp b/modules/imgproc/src/color.cpp index 95f4eb445..8ab7e4929 100644 --- a/modules/imgproc/src/color.cpp +++ b/modules/imgproc/src/color.cpp @@ -298,7 +298,7 @@ static ippiReorderFunc ippiSwapChannelsC3RTab[] = 0, (ippiReorderFunc)ippiSwapChannels_32f_C3R, 0, 0 }; -#if (IPP_VERSION_MAJOR * 10 + IPP_VERSION_MINOR >= 81) +#if (IPP_VERSION_X100 >= 801) static ippiReorderFunc ippiSwapChannelsC4RTab[] = { (ippiReorderFunc)ippiSwapChannels_8u_C4R, 0, (ippiReorderFunc)ippiSwapChannels_16u_C4R, 0, @@ -3254,7 +3254,7 @@ void cv::cvtColor( InputArray _src, OutputArray _dst, int code, int dcn ) if( CvtColorIPPLoopCopy(src, dst, IPPReorderFunctor(ippiSwapChannelsC3RTab[depth], 2, 1, 0)) ) return; } -#if (IPP_VERSION_MAJOR * 10 + IPP_VERSION_MINOR >= 81) +#if (IPP_VERSION_X100 >= 801) else if( code == CV_RGBA2BGRA ) { if( CvtColorIPPLoopCopy(src, dst, IPPReorderFunctor(ippiSwapChannelsC4RTab[depth], 2, 1, 0)) ) diff --git a/modules/imgproc/src/filter.cpp b/modules/imgproc/src/filter.cpp index d23f87ef4..921df1874 100644 --- a/modules/imgproc/src/filter.cpp +++ b/modules/imgproc/src/filter.cpp @@ -47,7 +47,7 @@ Base Image Filter \****************************************************************************************/ -#if defined HAVE_IPP && IPP_VERSION_MAJOR*100 + IPP_VERSION_MINOR >= 701 +#if defined HAVE_IPP && IPP_VERSION_X100 >= 701 #define USE_IPP_SEP_FILTERS 1 #else #undef USE_IPP_SEP_FILTERS diff --git a/modules/imgproc/src/imgwarp.cpp b/modules/imgproc/src/imgwarp.cpp index 9e5540a7b..7dcd44229 100644 --- a/modules/imgproc/src/imgwarp.cpp +++ b/modules/imgproc/src/imgwarp.cpp @@ -55,7 +55,7 @@ static IppStatus sts = ippInit(); namespace cv { -#if defined (HAVE_IPP) && (IPP_VERSION_MAJOR*100 + IPP_VERSION_MINOR >= 701) +#if defined (HAVE_IPP) && (IPP_VERSION_X100 >= 701) typedef IppStatus (CV_STDCALL* ippiResizeFunc)(const void*, int, const void*, int, IppiPoint, IppiSize, IppiBorderType, void*, void*, Ipp8u*); typedef IppStatus (CV_STDCALL* ippiResizeGetBufferSize)(void*, IppiSize, Ipp32u, int*); typedef IppStatus (CV_STDCALL* ippiResizeGetSrcOffset)(void*, IppiPoint, IppiPoint*); @@ -1912,7 +1912,7 @@ static int computeResizeAreaTab( int ssize, int dsize, int cn, double scale, Dec getBufferSizeFunc = (ippiResizeGetBufferSize)ippiResizeGetBufferSize_##TYPE;\ getSrcOffsetFunc = (ippiResizeGetSrcOffset)ippiResizeGetSrcOffset_##TYPE; -#if defined (HAVE_IPP) && (IPP_VERSION_MAJOR*100 + IPP_VERSION_MINOR >= 701) +#if defined (HAVE_IPP) && (IPP_VERSION_X100 >= 701) class IPPresizeInvoker : public ParallelLoopBody { @@ -2384,7 +2384,7 @@ void cv::resize( InputArray _src, OutputArray _dst, Size dsize, double scale_x = 1./inv_scale_x, scale_y = 1./inv_scale_y; int k, sx, sy, dx, dy; -#if defined (HAVE_IPP) && (IPP_VERSION_MAJOR*100 + IPP_VERSION_MINOR >= 701) +#if defined (HAVE_IPP) && (IPP_VERSION_X100 >= 701) #define IPP_RESIZE_EPS 1.e-10 double ex = fabs((double)dsize.width/src.cols - inv_scale_x)/inv_scale_x; diff --git a/modules/imgproc/src/morph.cpp b/modules/imgproc/src/morph.cpp index 1fd93f862..efac0182b 100644 --- a/modules/imgproc/src/morph.cpp +++ b/modules/imgproc/src/morph.cpp @@ -1136,7 +1136,7 @@ private: Scalar borderValue; }; -#if defined (HAVE_IPP) && (IPP_VERSION_MAJOR * 10 + IPP_VERSION_MINOR >= 81) +#if defined (HAVE_IPP) && (IPP_VERSION_X100 >= 801) static bool IPPMorphReplicate(int op, const Mat &src, Mat &dst, const Mat &kernel, const Size& ksize, const Point &anchor, bool rectKernel) { @@ -1459,7 +1459,7 @@ static void morphOp( int op, InputArray _src, OutputArray _dst, Size ksize = kernel.data ? kernel.size() : Size(3,3); anchor = normalizeAnchor(anchor, ksize); -#if defined (HAVE_IPP) && (IPP_VERSION_MAJOR * 10 + IPP_VERSION_MINOR >= 81) +#if defined (HAVE_IPP) && (IPP_VERSION_X100 >= 801) if( IPPMorphOp(op, _src, _dst, kernel, anchor, iterations, borderType, borderValue) ) return; #endif diff --git a/modules/imgproc/src/smooth.cpp b/modules/imgproc/src/smooth.cpp index 629d66825..7e61dc7b0 100644 --- a/modules/imgproc/src/smooth.cpp +++ b/modules/imgproc/src/smooth.cpp @@ -1109,7 +1109,7 @@ void cv::GaussianBlur( InputArray _src, OutputArray _dst, Size ksize, return; #endif -#if defined (HAVE_IPP) && (IPP_VERSION_MAJOR * 10 + IPP_VERSION_MINOR >= 81) +#if defined (HAVE_IPP) && (IPP_VERSION_X100 >= 801) if( type == CV_32FC1 && sigma1 == sigma2 && ksize.width == ksize.height && sigma1 != 0.0 ) { Mat src = _src.getMat(), dst = _dst.getMat(); From 9828cd6086c5492794e46d65f68d701fdf86bcc9 Mon Sep 17 00:00:00 2001 From: vbystricky Date: Tue, 8 Apr 2014 13:05:23 +0400 Subject: [PATCH 4/4] Remove defined(HAVE_IPP) --- modules/core/src/dxt.cpp | 2 +- modules/imgproc/src/filter.cpp | 2 +- modules/imgproc/src/imgwarp.cpp | 6 +++--- modules/imgproc/src/morph.cpp | 4 ++-- modules/imgproc/src/smooth.cpp | 2 +- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/modules/core/src/dxt.cpp b/modules/core/src/dxt.cpp index 0f2cbd98b..c5a44e7ef 100644 --- a/modules/core/src/dxt.cpp +++ b/modules/core/src/dxt.cpp @@ -53,7 +53,7 @@ namespace cv # pragma warning(disable: 4748) #endif -#if defined HAVE_IPP && IPP_VERSION_X100 >= 701 +#if IPP_VERSION_X100 >= 701 #define USE_IPP_DFT 1 #else #undef USE_IPP_DFT diff --git a/modules/imgproc/src/filter.cpp b/modules/imgproc/src/filter.cpp index 921df1874..8b337f645 100644 --- a/modules/imgproc/src/filter.cpp +++ b/modules/imgproc/src/filter.cpp @@ -47,7 +47,7 @@ Base Image Filter \****************************************************************************************/ -#if defined HAVE_IPP && IPP_VERSION_X100 >= 701 +#if IPP_VERSION_X100 >= 701 #define USE_IPP_SEP_FILTERS 1 #else #undef USE_IPP_SEP_FILTERS diff --git a/modules/imgproc/src/imgwarp.cpp b/modules/imgproc/src/imgwarp.cpp index 7dcd44229..0c7aafc7b 100644 --- a/modules/imgproc/src/imgwarp.cpp +++ b/modules/imgproc/src/imgwarp.cpp @@ -55,7 +55,7 @@ static IppStatus sts = ippInit(); namespace cv { -#if defined (HAVE_IPP) && (IPP_VERSION_X100 >= 701) +#if IPP_VERSION_X100 >= 701 typedef IppStatus (CV_STDCALL* ippiResizeFunc)(const void*, int, const void*, int, IppiPoint, IppiSize, IppiBorderType, void*, void*, Ipp8u*); typedef IppStatus (CV_STDCALL* ippiResizeGetBufferSize)(void*, IppiSize, Ipp32u, int*); typedef IppStatus (CV_STDCALL* ippiResizeGetSrcOffset)(void*, IppiPoint, IppiPoint*); @@ -1912,7 +1912,7 @@ static int computeResizeAreaTab( int ssize, int dsize, int cn, double scale, Dec getBufferSizeFunc = (ippiResizeGetBufferSize)ippiResizeGetBufferSize_##TYPE;\ getSrcOffsetFunc = (ippiResizeGetSrcOffset)ippiResizeGetSrcOffset_##TYPE; -#if defined (HAVE_IPP) && (IPP_VERSION_X100 >= 701) +#if IPP_VERSION_X100 >= 701 class IPPresizeInvoker : public ParallelLoopBody { @@ -2384,7 +2384,7 @@ void cv::resize( InputArray _src, OutputArray _dst, Size dsize, double scale_x = 1./inv_scale_x, scale_y = 1./inv_scale_y; int k, sx, sy, dx, dy; -#if defined (HAVE_IPP) && (IPP_VERSION_X100 >= 701) +#if IPP_VERSION_X100 >= 701 #define IPP_RESIZE_EPS 1.e-10 double ex = fabs((double)dsize.width/src.cols - inv_scale_x)/inv_scale_x; diff --git a/modules/imgproc/src/morph.cpp b/modules/imgproc/src/morph.cpp index efac0182b..07aa4c5dd 100644 --- a/modules/imgproc/src/morph.cpp +++ b/modules/imgproc/src/morph.cpp @@ -1136,7 +1136,7 @@ private: Scalar borderValue; }; -#if defined (HAVE_IPP) && (IPP_VERSION_X100 >= 801) +#if IPP_VERSION_X100 >= 801 static bool IPPMorphReplicate(int op, const Mat &src, Mat &dst, const Mat &kernel, const Size& ksize, const Point &anchor, bool rectKernel) { @@ -1459,7 +1459,7 @@ static void morphOp( int op, InputArray _src, OutputArray _dst, Size ksize = kernel.data ? kernel.size() : Size(3,3); anchor = normalizeAnchor(anchor, ksize); -#if defined (HAVE_IPP) && (IPP_VERSION_X100 >= 801) +#if IPP_VERSION_X100 >= 801 if( IPPMorphOp(op, _src, _dst, kernel, anchor, iterations, borderType, borderValue) ) return; #endif diff --git a/modules/imgproc/src/smooth.cpp b/modules/imgproc/src/smooth.cpp index 7e61dc7b0..84570bd2c 100644 --- a/modules/imgproc/src/smooth.cpp +++ b/modules/imgproc/src/smooth.cpp @@ -1109,7 +1109,7 @@ void cv::GaussianBlur( InputArray _src, OutputArray _dst, Size ksize, return; #endif -#if defined (HAVE_IPP) && (IPP_VERSION_X100 >= 801) +#if IPP_VERSION_X100 >= 801 if( type == CV_32FC1 && sigma1 == sigma2 && ksize.width == ksize.height && sigma1 != 0.0 ) { Mat src = _src.getMat(), dst = _dst.getMat();