Merge remote-tracking branch 'origin/2.4'
Original pull requests: #996 from jet47:gpu-nvcuvid-libraries #995 from jet47:fix-bug-2985 #999 from snosov1:unreliable-results-fix #1005 from alekcac:doc_fix #1004 from jet47:fix-bug-3068 #987 from jet47:bug-3085-fix #969 from pengx17:2.4_binary_cache #929 from dominikrose:mingw-libdc1394-2-windows #1000 from ivan-korolev:fix_sift_bug_2892 #1001 from ivan-korolev:fix_stitching_bug_2405 #998 from asmorkalov:android_cmake_mips_fix #993 from ivan-korolev:fix_videostab_bug_3023 #988 from snosov1:3071-fix #986 from pengx17:2.4_initiated_context #982 from pengx17:2.4_fix_two_bugs #981 from SeninAndrew:ximea_camera_support_fix #991 from asmorkalov:android_javadoc_fix #972 from jet47:mog2-params-bug-2168 #980 from SpecLad:include-config #973 from pengx17:2.4_oclclahe #903 from aks2:2.4 #968 from asmorkalov:android_na_cproj_fix #971 from SpecLad:matchers-ctor #970 from asmorkalov:dshow_valid_check_fix #965 from apavlenko:fix_java_empty_mats Conflicts: cmake/OpenCVModule.cmake modules/core/src/matmul.cpp modules/gpu/CMakeLists.txt modules/ocl/include/opencv2/ocl/ocl.hpp modules/ocl/perf/perf_imgproc.cpp modules/ocl/src/imgproc.cpp modules/ocl/src/initialization.cpp modules/stitching/src/matchers.cpp modules/video/src/video_init.cpp modules/videostab/src/global_motion.cpp
This commit is contained in:
@@ -922,3 +922,50 @@ PERFTEST(remap)
|
||||
|
||||
}
|
||||
}
|
||||
///////////// CLAHE ////////////////////////
|
||||
PERFTEST(CLAHE)
|
||||
{
|
||||
Mat src, dst, ocl_dst;
|
||||
cv::ocl::oclMat d_src, d_dst;
|
||||
int all_type[] = {CV_8UC1};
|
||||
std::string type_name[] = {"CV_8UC1"};
|
||||
|
||||
double clipLimit = 40.0;
|
||||
|
||||
cv::Ptr<cv::CLAHE> clahe = cv::createCLAHE(clipLimit);
|
||||
cv::Ptr<cv::ocl::CLAHE> d_clahe = cv::ocl::createCLAHE(clipLimit);
|
||||
|
||||
for (int size = Min_Size; size <= Max_Size; size *= Multiple)
|
||||
{
|
||||
for (size_t j = 0; j < sizeof(all_type) / sizeof(int); j++)
|
||||
{
|
||||
SUBTEST << size << 'x' << size << "; " << type_name[j] ;
|
||||
|
||||
gen(src, size, size, all_type[j], 0, 256);
|
||||
|
||||
CPU_ON;
|
||||
clahe->apply(src, dst);
|
||||
CPU_OFF;
|
||||
|
||||
d_src.upload(src);
|
||||
|
||||
WARMUP_ON;
|
||||
d_clahe->apply(d_src, d_dst);
|
||||
WARMUP_OFF;
|
||||
|
||||
ocl_dst = d_dst;
|
||||
|
||||
TestSystem::instance().ExpectedMatNear(dst, ocl_dst, 1.0);
|
||||
|
||||
GPU_ON;
|
||||
d_clahe->apply(d_src, d_dst);
|
||||
GPU_OFF;
|
||||
|
||||
GPU_FULL_ON;
|
||||
d_src.upload(src);
|
||||
d_clahe->apply(d_src, d_dst);
|
||||
d_dst.download(dst);
|
||||
GPU_FULL_OFF;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user