typedef std::tr1::tuple<Size, MatType, NormType> NormParams;
typedef TestBaseWithParam<NormParams> NormFixture;
+OCL_PERF_TEST_P(NormFixture, Norm1Arg,
+ ::testing::Combine(OCL_PERF_ENUM(OCL_SIZE_1, OCL_SIZE_2, OCL_SIZE_3),
+ OCL_TEST_TYPES_134, NormType::all()))
+{
+ const NormParams params = GetParam();
+ const Size srcSize = get<0>(params);
+ const int type = get<1>(params);
+ const int normType = get<2>(params);
+
+ checkDeviceMaxMemoryAllocSize(srcSize, type);
+
+ UMat src1(srcSize, type);
+ double res;
+ declare.in(src1, WARMUP_RNG);
+
+ OCL_TEST_CYCLE() res = cv::norm(src1, normType);
+
+ SANITY_CHECK(res, 1e-5, ERROR_RELATIVE);
+}
+
OCL_PERF_TEST_P(NormFixture, Norm,
::testing::Combine(OCL_PERF_ENUM(OCL_SIZE_1, OCL_SIZE_2, OCL_SIZE_3),
OCL_TEST_TYPES_134, NormType::all()))
SANITY_CHECK(dst, 5e-2);
}
+OCL_PERF_TEST_P(NormalizeFixture, NormalizeWithMask,
+ ::testing::Combine(OCL_TEST_SIZES, OCL_PERF_ENUM(CV_8UC1, CV_32FC1),
+ NormalizeModes::all()))
+{
+ const NormalizeParams params = GetParam();
+ const Size srcSize = get<0>(params);
+ const int type = get<1>(params), mode = get<2>(params);
+
+ checkDeviceMaxMemoryAllocSize(srcSize, type);
+
+ UMat src(srcSize, type), mask(srcSize, CV_8UC1), dst(srcSize, type);
+ declare.in(src, mask, WARMUP_RNG).out(dst);
+
+ OCL_TEST_CYCLE() cv::normalize(src, dst, 10, 110, mode, -1, mask);
+
+ SANITY_CHECK(dst, 5e-2);
+}
+
///////////// ConvertScaleAbs ////////////////////////
typedef Size_MatType ConvertScaleAbsFixture;