{
gen(src, size, size, all_type[j], 0, 256);
- for (int ksize = 3; ksize <= 15; ksize = 2*ksize+1)
- {
- SUBTEST << "ksize = " << ksize << "; " << size << 'x' << size << "; " << type_name[j] ;
+ const int ksize = 3;
- Mat kernel;
- gen(kernel, ksize, ksize, CV_32FC1, 0.0, 1.0);
+ SUBTEST << "ksize = " << ksize << "; " << size << 'x' << size << "; " << type_name[j] ;
- Mat dst, ocl_dst;
+ Mat kernel;
+ gen(kernel, ksize, ksize, CV_32SC1, -3.0, 3.0);
- cv::filter2D(src, dst, -1, kernel);
+ Mat dst, ocl_dst;
- CPU_ON;
- cv::filter2D(src, dst, -1, kernel);
- CPU_OFF;
+ cv::filter2D(src, dst, -1, kernel);
- ocl::oclMat d_src(src), d_dst;
+ CPU_ON;
+ cv::filter2D(src, dst, -1, kernel);
+ CPU_OFF;
+
+ ocl::oclMat d_src(src), d_dst;
- WARMUP_ON;
- ocl::filter2D(d_src, d_dst, -1, kernel);
- WARMUP_OFF;
+ WARMUP_ON;
+ ocl::filter2D(d_src, d_dst, -1, kernel);
+ WARMUP_OFF;
- GPU_ON;
- ocl::filter2D(d_src, d_dst, -1, kernel);
- GPU_OFF;
+ GPU_ON;
+ ocl::filter2D(d_src, d_dst, -1, kernel);
+ GPU_OFF;
- GPU_FULL_ON;
- d_src.upload(src);
- ocl::filter2D(d_src, d_dst, -1, kernel);
- d_dst.download(ocl_dst);
- GPU_FULL_OFF;
+ GPU_FULL_ON;
+ d_src.upload(src);
+ ocl::filter2D(d_src, d_dst, -1, kernel);
+ d_dst.download(ocl_dst);
+ GPU_FULL_OFF;
- TestSystem::instance().ExpectedMatNear(ocl_dst, dst, 1e-5);
- }
+ TestSystem::instance().ExpectedMatNear(ocl_dst, dst, 1e-5);
}