From fed7e618798935d54d3dcb0839ca9b1bc43740fd Mon Sep 17 00:00:00 2001 From: Ilya Lavrenov Date: Sun, 1 Dec 2013 01:57:13 +0400 Subject: [PATCH] added cv::repeat to T-API (fix for copyTo -> UMat is needed) --- modules/core/src/arithm.cpp | 7 ++----- modules/core/src/mathfuncs.cpp | 12 +++--------- modules/core/src/ocl.cpp | 2 +- 3 files changed, 6 insertions(+), 15 deletions(-) diff --git a/modules/core/src/arithm.cpp b/modules/core/src/arithm.cpp index f18f74b..c1e2717 100644 --- a/modules/core/src/arithm.cpp +++ b/modules/core/src/arithm.cpp @@ -2626,12 +2626,9 @@ void cv::compare(InputArray _src1, InputArray _src2, OutputArray _dst, int op) CV_Assert( op == CMP_LT || op == CMP_LE || op == CMP_EQ || op == CMP_NE || op == CMP_GE || op == CMP_GT ); - if (ocl::useOpenCL() && _dst.isUMat() /*&& - ocl_compare(_src1, _src2, _dst, op)*/) - { - CV_Assert(ocl_compare(_src1, _src2, _dst, op)); + if (ocl::useOpenCL() && _dst.isUMat() && + ocl_compare(_src1, _src2, _dst, op)) return; - } int kind1 = _src1.kind(), kind2 = _src2.kind(); Mat src1 = _src1.getMat(), src2 = _src2.getMat(); diff --git a/modules/core/src/mathfuncs.cpp b/modules/core/src/mathfuncs.cpp index 540bb87..d75fad1 100644 --- a/modules/core/src/mathfuncs.cpp +++ b/modules/core/src/mathfuncs.cpp @@ -534,12 +534,9 @@ static bool ocl_cartToPolar( InputArray _src1, InputArray _src2, void cartToPolar( InputArray src1, InputArray src2, OutputArray dst1, OutputArray dst2, bool angleInDegrees ) { - if (ocl::useOpenCL() && dst1.isUMat() && dst2.isUMat() /*&& - ocl_cartToPolar(src1, src2, dst1, dst2, angleInDegrees)*/) - { - CV_Assert(ocl_cartToPolar(src1, src2, dst1, dst2, angleInDegrees)); + if (ocl::useOpenCL() && dst1.isUMat() && dst2.isUMat() && + ocl_cartToPolar(src1, src2, dst1, dst2, angleInDegrees)) return; - } Mat X = src1.getMat(), Y = src2.getMat(); int type = X.type(), depth = X.depth(), cn = X.channels(); @@ -2062,11 +2059,8 @@ static bool ocl_pow(InputArray _src, double power, OutputArray _dst) void pow( InputArray _src, double power, OutputArray _dst ) { - if (ocl::useOpenCL() && _dst.isUMat() /*&& ocl_pow(_src, power, _dst)*/) - { - CV_Assert(ocl_pow(_src, power, _dst)); + if (ocl::useOpenCL() && _dst.isUMat() && ocl_pow(_src, power, _dst)) return; - } Mat src = _src.getMat(); int type = src.type(), depth = src.depth(), cn = src.channels(); diff --git a/modules/core/src/ocl.cpp b/modules/core/src/ocl.cpp index 4ef3fda..64460ef 100644 --- a/modules/core/src/ocl.cpp +++ b/modules/core/src/ocl.cpp @@ -1893,7 +1893,7 @@ Context2& Context2::getDefault() // First, try to retrieve existing context of the same type. // In its turn, Platform::getContext() may call Context2::create() // if there is no such context. - ctx.create(Device::TYPE_CPU); + ctx.create(Device::TYPE_ACCELERATOR); if(!ctx.p) ctx.create(Device::TYPE_DGPU); if(!ctx.p) -- 2.7.4