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:
Roman Donchenko
2013-06-17 16:57:31 +04:00
52 changed files with 1405 additions and 378 deletions

View File

@@ -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;
}
}
}