Commit Graph

451 Commits

Author SHA1 Message Date
Vadim Pisarevsky
678371be39 Merge pull request #925 from pengx17:2.4_canny_tmp_fix 2013-05-30 12:01:09 +04:00
Vadim Pisarevsky
c176131a67 Merge pull request #927 from bitwangyaoyao:2.4_perf 2013-05-30 12:00:47 +04:00
yao
7ed9c0e87a Fix brute_force_matcher's hung on some Intel CPU OCL 2013-05-30 14:57:15 +08:00
peng xiao
fd7ba355ee Add non-stump based ocl Haar cascade classifier support.
For example, haarcascade_frontalface_alt2.xml is now supported.
Note that classifier's pattern of a cascade file must be consistent,
i.e., all trees must either have two nodes or one node, otherwise
unexpected results will occur.

Other fixes:
Test cases are updated.
Some unused codes are removed.
Fix some problems of haar when using OclCascadeClassifierBuf.
2013-05-30 14:01:19 +08:00
peng xiao
006e4242b2 Merge branch '2.4' of https://github.com/Itseez/opencv into 2.4_oclgfft 2013-05-29 17:57:14 +08:00
yao
a9b7ff41bd adjust test cases 2013-05-29 15:48:56 +08:00
peng xiao
d015fa76fa Fix 2.4 ocl Canny.
This fix is a workaround for current 2.4 branch without introducing an
additional oclMat buffer into CannyBuf object.
Test case is cleaned up.
Volatile keywords in kernels are removed for performance concern.
2013-05-29 14:15:26 +08:00
Vadim Pisarevsky
2ccdf56119 Merge pull request #913 from janm399:2.4 2013-05-28 22:05:14 +04:00
Vadim Pisarevsky
24ca620c32 Merge pull request #916 from bitwangyaoyao:2.4_fixPyrLK 2013-05-28 22:04:37 +04:00
yao
d81c145fa9 fix memory leak 2013-05-28 18:07:41 +08:00
yao
14bd6402be revise perf 2013-05-28 17:53:06 +08:00
peng xiao
1d0c283508 Fix a bug when pushing pointers of arguments into std::vector.
When argument pointers pushed into an vector and the pointers point to
address on stack, we need to make sure they are valid until kernels are
successfully flushed onto the queue.
2013-05-28 17:27:55 +08:00
peng xiao
6fae02c05d Fix some OpenCL kernel file build errors on Mac. 2013-05-28 11:12:05 +08:00
Roman Donchenko
5ac3b8d5d8 Merge remote-tracking branch 'origin/2.4' into merge-2.4
Pull requests:
	#904 from ograycode:2.4
	#905 from bitwangyaoyao:2.4_TVL1
	#902 from apavlenko:fix_run_py
	#882 from pengx17:2.4_rewrite_query_info

Conflicts:
	modules/nonfree/src/surf.ocl.cpp
	modules/ocl/include/opencv2/ocl/private/util.hpp
	modules/ocl/src/hog.cpp
	modules/ocl/src/pyrlk.cpp
	modules/ocl/src/tvl1flow.cpp
2013-05-27 16:58:04 +04:00
yao
c58e0d5d73 fix hog 2013-05-24 13:46:21 +08:00
yao
d45f9ef866 fix Linux build errors 2013-05-23 17:58:50 +08:00
yao
a223b5624f fix pyrLK's mismatch on Intel GPUs 2013-05-23 10:55:08 +08:00
Roman Donchenko
5e0e1fac87 Merge commit 'b51a1a7d' (PR #895 from 2.4)
Conflicts:
	modules/ocl/CMakeLists.txt
	modules/ocl/perf/perf_color.cpp
	modules/ocl/perf/perf_match_template.cpp
	modules/ocl/perf/precomp.cpp
	modules/ocl/perf/precomp.hpp
2013-05-22 18:28:28 +04:00
Jan Machacek
46b770f255 Fixed include name in OpenCL on OS X 2013-05-22 13:22:16 +01:00
Roman Donchenko
519ee72f6f Merge pull request #905 from bitwangyaoyao:2.4_TVL1 2013-05-22 12:08:16 +04:00
peng xiao
b4a4a05bdc Add ocl's good features to track implementation.
Additional notes with this commit:
1. Add cornerHarris_dxdy and cornerMinEigenVal_dxdy to get
the interim dx and dy output of Sobel operator;
2. Add minMax_buf to allow user to reuse buffers in minMax;
3. Fix an error when either min or max pointer fed into minMax is NULL;
4. Corner sorter temporarily uses C++ STL's quick sort. A parallel
 selection sort in OpneCL is contained in the implementation but disabled
due to poor performance at the moment.
5. Accuracy test for ocl gfft.
2013-05-22 13:46:42 +08:00
Roman Donchenko
029fce10c9 Merge remote-tracking branch 'origin/2.4'
Conflicts:
	3rdparty/libjasper/CMakeLists.txt
	cmake/OpenCVDetectOpenCL.cmake
	modules/calib3d/doc/camera_calibration_and_3d_reconstruction.rst
	modules/imgproc/src/floodfill.cpp
	modules/ocl/include/opencv2/ocl/ocl.hpp
	modules/ocl/src/arithm.cpp
	modules/ocl/src/haar.cpp
	modules/ocl/src/imgproc.cpp
	modules/ocl/src/initialization.cpp
	modules/ocl/src/matrix_operations.cpp
	modules/ocl/src/mcwutil.cpp
	modules/ocl/src/opencl/arithm_bitwise_and_mask.cl
	modules/ocl/src/opencl/arithm_bitwise_and_scalar_mask.cl
	modules/ocl/src/opencl/arithm_bitwise_binary_mask.cl
	modules/ocl/src/opencl/arithm_bitwise_binary_scalar.cl
	modules/ocl/src/opencl/arithm_bitwise_binary_scalar_mask.cl
	modules/ocl/src/opencl/arithm_bitwise_or.cl
	modules/ocl/src/opencl/arithm_bitwise_or_scalar.cl
	modules/ocl/src/opencl/arithm_bitwise_or_scalar_mask.cl
	modules/ocl/src/opencl/arithm_bitwise_xor.cl
	modules/ocl/src/opencl/arithm_bitwise_xor_mask.cl
	modules/ocl/src/opencl/arithm_bitwise_xor_scalar.cl
	modules/ocl/src/stereobm.cpp
	modules/ocl/test/precomp.hpp
	modules/python/src2/api
	modules/ts/src/ts_func.cpp
	samples/gpu/bgfg_segm.cpp
2013-05-21 17:19:23 +04:00
Vadim Pisarevsky
cbbc82a789 Merge pull request #882 from pengx17:2.4_rewrite_query_info 2013-05-20 14:01:03 +04:00
Vadim Pisarevsky
b51a1a7d15 Merge pull request #895 from bitwangyaoyao:2.4_perf 2013-05-20 14:00:47 +04:00
yao
d8b192c84d Fix the mismatch on NV GPUs 2013-05-20 14:46:17 +08:00
yao
04399a27d0 fix a warning 2013-05-17 15:44:22 +08:00
yao
4162ebfad3 add OpticalFlowDual_TVL1_OCL function 2013-05-17 15:34:22 +08:00
yao
03c55db4fb fix the waring in gemm test 2013-05-17 13:19:09 +08:00
yao
5f20fce6fd add accuracy tests while running perf 2013-05-17 13:18:46 +08:00
Vadim Pisarevsky
7d9041460a Merge pull request #885 from pengx17:2.4_bfmatcher_ocl 2013-05-15 14:21:50 +04:00
peng xiao
d053f2165d Add BFMatcher_OCL class alias for BruteForceMatcher_OCL.
This adds a similar interface with pure-cpp and gpu versions.
2013-05-15 10:47:17 +08:00
peng xiao
3f93c3cc4e Clean up spaces in ocl.hpp 2013-05-15 10:43:47 +08:00
peng xiao
1ecc765903 Merge branch '2.4' of https://github.com/Itseez/opencv into 2.4_pyrup_fix 2013-05-15 08:55:43 +08:00
peng xiao
df3997b108 Fix ocl::pyrUp
Use predefined OpenCL function to convert integers to floating points.
This is more accurate than before as it enables:
1. saturate cast
2. customized rounding
2013-05-15 08:51:21 +08:00
Vadim Pisarevsky
25e6902a43 Merge pull request #818 from bitwangyaoyao:2.4_optBlur 2013-05-14 15:56:56 +04:00
Vadim Pisarevsky
bd1d7cd208 Merge pull request #839 from pengx17:2.4_ocl_csbp 2013-05-14 15:56:07 +04:00
Vadim Pisarevsky
87765c0f16 Merge pull request #883 from bitwangyaoyao:2.4_fixMoments 2013-05-14 15:55:38 +04:00
yao
1d1d28baf2 fix black screen when input Mat is large 2013-05-14 18:02:53 +08:00
peng xiao
ac21cabda2 Copy ocl::queryDeviceInfo interface from master to 2.4.
Affected functions surf.ocl, pyrlk.ocl and hog.ocl are updated with the change.
2013-05-14 17:50:38 +08:00
Vadim Pisarevsky
d79c05fec9 Merge pull request #872 from pengx17:2.4_create2dimage_fix 2013-05-13 23:12:25 +04:00
Vadim Pisarevsky
6eb5a95a59 Merge pull request #871 from bitwangyaoyao:2.4_acry 2013-05-13 23:04:11 +04:00
Vadim Pisarevsky
14c50d2fce Merge pull request #874 from pengx17:master_queryDeviceInfo_rewrite 2013-05-13 23:03:24 +04:00
Vadim Pisarevsky
fd83f2f5ca Merge pull request #819 from bitwangyaoyao:2.4_haarBuf 2013-05-13 22:36:10 +04:00
Andrey Kamaev
2665c39a0d Fix build warnings from gcc 4.8 2013-05-13 17:07:30 +04:00
yao
e23884a238 fix the warnings in fft tests 2013-05-13 15:04:23 +08:00
Vadim Pisarevsky
9cce8ca4b6 Merge pull request #864 from pengx17:2.4_stereobm 2013-05-12 22:16:03 +04:00
yao
ada8f92cc7 fix warnings, unify test names 2013-05-09 17:57:13 +08:00
peng xiao
e5ea018185 Let surf.ocl use the new queryDeviceInfo interface. 2013-05-09 17:19:51 +08:00
peng xiao
bfa0f02303 Rewrite queryDeviceInfo interface.
Previously the function may cause some unsafe issue. It is fixed now by introducing a template parameter.
2013-05-09 17:15:26 +08:00
peng xiao
e14acabb3d Fix ocl moudle build with latest Intel OpenCL SDK.
We found that cl.h file provided in latest Intel SDK muted deprecated interfaces.
2013-05-09 14:00:36 +08:00
peng xiao
69e6d0016e Optimize stereobm a bit.
Speedup about 30% on 6730M GPU.
2013-05-08 17:29:24 +08:00
peng xiao
861de8a6e9 CL_PLATFORM_VENDOR should be CL_PLATFORM_NAME. 2013-05-08 17:19:34 +08:00
yao
b6313951dc use clean EXPECT_MAT_NEAR (no string output) 2013-05-08 17:07:44 +08:00
yao
35c6860f06 further simplify the logics in filter tests 2013-05-08 16:08:33 +08:00
yao
1a53e2cfb2 remove interpolation.hpp 2013-05-08 15:27:35 +08:00
yao
3928c1ee26 add copyrights 2013-05-08 15:21:53 +08:00
yao
e4d3378230 simplify logics in filter tests, remove redundant code in arithm tests 2013-05-08 15:12:12 +08:00
yao
52dbbae82c some cleanup, remove some commented codes 2013-05-07 16:14:50 +08:00
peng xiao
d34e7eca60 Suppress warning when compiling deprecated OpenCL function on GNU compilers. 2013-05-06 17:16:45 +08:00
peng xiao
ed2199a497 Fix build 2013-05-03 09:54:11 +08:00
peng xiao
1eca49f40b ocl: Enable backward binary portability for setTo function. 2013-05-03 09:45:56 +08:00
peng xiao
168c0b0385 Optimize ocl::stereobm.
1. Use macro defines for some parameters(radius).
2. Reduce local memory usage.
3. Fix accuracy problem on Intel GPU.
2013-05-02 16:14:28 +08:00
peng xiao
355bc691fc Add OpenCL version 1.2 query into ocl::Context::supportsFeature().
Add backwards portability for OpenCL 1.1 when OpenCV executables
are compiled with OpenCL 1.2 profile support.
2013-05-02 14:44:59 +08:00
Vadim Pisarevsky
2068c4582c Merge pull request #844 from bitwangyaoyao:2.4_integral 2013-04-28 00:37:40 +04:00
peng xiao
bb4b410512 Add ocl::PlatformName to ocl::Info. 2013-04-25 15:00:50 +08:00
yao
f788d010f7 fix a crash on CPU OCL for some specified image sizes 2013-04-24 14:12:41 +08:00
peng xiao
9cfa24e515 Fix thread sync for csbp. 2013-04-23 17:35:40 +08:00
yao
b386ea72aa use float when sum overflow 2013-04-23 17:23:05 +08:00
peng xiao
3282aaa1f5 Fix a bug found on Intel OpenCL SDK. 2013-04-23 15:34:40 +08:00
Peng Xiao
c701d54281 Fix build errors 2013-04-21 11:19:37 +08:00
Peng Xiao
7b08d5ec69 Add OpenCL stereo CSBP implementation 2013-04-20 00:34:37 +08:00
Andrey Kamaev
28aefc4f5a Merge pull request #817 from pengx17:2.4_ocl_bitwise_cleanup 2013-04-17 15:45:38 +04:00
Vladislav Vinogradov
54e7c76d99 fixed compilation errors 2013-04-17 15:24:53 +04:00
Andrey Kamaev
8fdab9f631 Merge branch '2.4' 2013-04-17 12:07:17 +04:00
Andrey Kamaev
f6848b66d6 Merge pull request #826 from pengx17:2.4_canny_clampfix 2013-04-17 11:09:49 +04:00
Andrey Kamaev
bf551df4cf Merge pull request #825 from pengx17:2.4_query_cpu_wavesize 2013-04-17 11:09:37 +04:00
peng xiao
0f7d7100e5 Add clamping for y dimension. 2013-04-16 15:49:15 +08:00
peng xiao
6f63a5d8d5 Let wave_size=1 on CPU. 2013-04-16 14:41:30 +08:00
Andrey Kamaev
96b008cd29 Eliminate the need of ::testsing::ValuesIn() for CV_ENUM
Also cv::, cv::gpu:: and cv::ocl:: namespace prefixes can be safely omitted
inside CV_ENUM and CV_FLAGS
2013-04-15 19:39:49 +04:00
yao
69a0b5dde5 Add OclCascadeClassifierBuf interface 2013-04-15 17:24:30 +08:00
yao
dec6a3b080 make boxfilter kernel compile on Mac GPU OCL 2013-04-15 16:46:25 +08:00
Andrey Kamaev
f7641be434 Merge pull request #812 from bitwangyaoyao:master_uhp 2013-04-15 12:12:46 +04:00
peng xiao
06a4bad809 Merge ocl and/or/xor operators into one kernel each. 2013-04-15 10:36:03 +08:00
Andrey Kamaev
6168bf0062 Merge pull request #813 from bitwangyaoyao:master_fix 2013-04-13 16:34:07 +04:00
Andrey Kamaev
a54a307386 Merge pull request #810 from pengx17:master_fix_ocl_tmflag 2013-04-13 16:33:53 +04:00
yao
2f781a53a9 Fix arithm's substract mismatch caused by incomplete merge 2013-04-13 15:57:12 +08:00
yao
40d0e0eda0 use host data when DEVICE_MEM_UHP is set (the risk of vary align size is owned by users) 2013-04-13 14:58:49 +08:00
Peng Xiao
6dd6013546 Use a faster way to count 1's (used by Hamming) 2013-04-13 14:34:30 +08:00
Peng Xiao
6b6b1c9cbf Allow more query/train types for ocl::bfmatcher 2013-04-13 14:08:58 +08:00
Peng Xiao
1db20099a9 Enable runtime type definition in kernels 2013-04-13 12:50:17 +08:00
Peng Xiao
fd1528795e Pass query type T into kernel 2013-04-13 11:39:13 +08:00
Peng Xiao
63813e83ae Untabify 2013-04-13 11:22:22 +08:00
Peng Xiao
6a40383aee Add HammingDist test case 2013-04-13 11:07:26 +08:00
Andrey Kamaev
3b364330ad Merge branch '2.4' 2013-04-12 15:35:38 +04:00
Andrey Kamaev
b0933dd473 Merge pull request #803 from taka-no-me:split_c_cpp3 2013-04-12 15:01:48 +04:00
Andrey Kamaev
36028bd8ad Merge pull request #808 from bitwangyaoyao:2.4_mac 2013-04-12 14:59:45 +04:00
Andrey Kamaev
8406312571 Remove C API from OpenCL module 2013-04-12 14:37:02 +04:00
Vadim Pisarevsky
03e2a52e2c Merge pull request #807 from pengx17:2.4_ocl_bfm_opt 2013-04-12 13:46:55 +04:00
Vadim Pisarevsky
c019d06de3 Merge pull request #805 from pengx17:master_canny_fix 2013-04-12 13:46:07 +04:00
Vadim Pisarevsky
5a2c5227f4 Merge pull request #798 from pengx17:master_ocl_mleak 2013-04-12 13:45:44 +04:00
Vadim Pisarevsky
a770d04e78 Merge pull request #781 from bitwangyaoyao:2.4_fixerr 2013-04-12 13:44:59 +04:00
yao
719e8674ad fix the compile errors on Mac 2013-04-12 17:38:59 +08:00
peng xiao
2338a895f5 Capitalize macro namings. 2013-04-12 16:56:49 +08:00
peng xiao
1bea9ee26c Rename test case category and code clean up. 2013-04-12 16:54:06 +08:00
peng xiao
c9d8eb7a84 Fix build error on linux. 2013-04-12 16:52:21 +08:00
peng xiao
6eefd276cf Further optimize bfmatcher by passing macros. 2013-04-12 16:51:36 +08:00
peng xiao
113b7584e0 Optimize bfmatcher by passing macros. 2013-04-12 16:50:30 +08:00
peng xiao
1e49c00f4b Replace create with ensureSizeIsEnough thus buffer objects can be reused. 2013-04-12 16:47:44 +08:00
peng xiao
5eb551b340 Remove my test codes. 2013-04-12 16:21:52 +08:00
peng xiao
4f328d8388 Fix a potential bug of ocl::CannyBuf.
The program would crash if release is called twice.
2013-04-12 15:43:33 +08:00
peng xiao
7586145235 Remove unused kernels. 2013-04-12 14:32:13 +08:00
peng xiao
33361929fe Fix a compilation error when HAVE_CLAMDFFT is on. 2013-04-12 11:36:17 +08:00
peng xiao
aec7a67d0f Fix a bug of ocl::Canny when src/dst using the same buffer. 2013-04-12 11:10:47 +08:00
peng xiao
242955ce22 Format ocl::Canny header 2013-04-12 11:01:56 +08:00
peng xiao
6c2079b778 Test code clean up. 2013-04-12 10:59:15 +08:00
peng xiao
22ca7e44d6 Change ocl::Canny test case category 2013-04-12 10:58:42 +08:00
Andrey Kamaev
e5a33723fc Move C API of opencv_calib3d to separate file 2013-04-11 21:00:17 +04:00
peng xiao
a2f4b301f3 Fix an incorrect type cast. 2013-04-11 16:59:32 +08:00
Andrey Kamaev
9ba25e9d09 Merge pull request #742 from bitwangyaoyao:2.4_fix 2013-04-11 11:33:45 +04:00
Andrey Kamaev
c98c246fc2 Move border type constants and Moments class to core module 2013-04-10 19:14:24 +04:00
Andrey Kamaev
913e6833d5 Merge pull request #785 from taka-no-me:split_c_cpp2 2013-04-09 08:53:50 +04:00
Andrey Kamaev
0738ea7d0f Make highgui.hpp independent from C API 2013-04-08 15:47:29 +04:00
Andrey Kamaev
288a0634c2 Make imgproc.hpp independent from C API 2013-04-08 15:47:28 +04:00
peng xiao
143f8f69d6 Add some documentation on ocl::convolve 2013-04-08 17:15:52 +08:00
peng xiao
3fea2620e6 Fix some compilation errors and warnings. 2013-04-08 16:22:20 +08:00
peng xiao
77501f3ed0 ocl: Add dft based convolve implementation.
Match template in ocl module now can be utilized with dft based
convolve. Note this feature needs OpenCV to be built with clAmdFft
library.
2013-04-08 15:19:44 +08:00
yao
7726e273a9 merge add and sub into one set of kernels 2013-04-06 13:37:36 +08:00
Andrey Kamaev
67073daf19 Merge branch '2.4' 2013-04-05 21:11:59 +04:00
yao
bee970ab94 remove the C3 kernels in arithm, as the oclMat will never store 3 channels data 2013-04-05 21:29:29 +08:00
Andrey Kamaev
72e49dc790 Merge pull request #777 from taka-no-me:ocl_win_hang 2013-04-05 13:00:03 +04:00
Andrey Kamaev
a2d27429e4 Merge pull request #775 from bitwangyaoyao:2.4_fixerr 2013-04-05 12:59:45 +04:00
Andrey Kamaev
3400d83778 Workaround hanging of ocl module when ocl API in not really used 2013-04-05 11:01:28 +04:00
yao
8cc5b98051 Fix the problem of device selection on hybrid video systems. 2013-04-05 09:19:59 +08:00
yao
5022bc8c25 move the "cpu device checking" from supportsFeatures() to queryDeviceInfo() 2013-04-05 09:17:14 +08:00
yao
bcc086baa9 fix all redefine build errors on some Intel OCL 2013-04-05 08:15:05 +08:00
Andrey Kamaev
d4bb421ce2 Fix findEssentialMat function
Also remove all usages of std::complex from OpenCV modules
2013-04-03 17:25:00 +04:00
peng xiao
917138f565 Fix compilation errors. 2013-04-03 17:36:05 +08:00
peng xiao
7758322fd3 Fix some build errors. 2013-04-03 16:42:44 +08:00
peng xiao
ecea583afd Add ocl::stereobp function.
OpenCL StereoBeliefPropagation, ported from GPU implementation.
2013-04-03 15:57:26 +08:00
yao
d5aaea2749 fix some mismatch on cpu device running OCL 2013-04-03 14:24:55 +08:00
yao
cb63bbf001 fix hog on some CPU device running ocl 2013-04-03 13:58:44 +08:00
yao
fd4a6f0af0 make the sparse method give correct results on CPU ocl
Add CL_CPU to supportsFeature check
simplify the logic of pyrlk
2013-04-03 13:23:04 +08:00
Andrey Kamaev
656594ad4f Merge pull request #736 from bitwangyaoyao:2.4_clflush 2013-04-02 15:25:19 +04:00
yao
f3254b28f2 use clflush replaces clfinish 2013-04-02 14:41:02 +08:00
yao
10f6ebfdf7 fix the crash when calling dft 2013-04-02 11:35:40 +08:00
Andrey Kamaev
517062039e Make core/internal.hpp a private header 2013-04-01 17:29:10 +04:00
Andrey Kamaev
71e43852ce Fix MSVC build issues 2013-04-01 15:24:34 +04:00
Andrey Kamaev
2a1cf23fab Merge pull request #713 from bitwangyaoyao:2.4_perf 2013-04-01 15:16:48 +04:00
Andrey Kamaev
f77a375354 Merge branch '2.4' 2013-03-29 19:38:35 +04:00
Andrey Kamaev
56d62118d5 Merge pull request #707 from pengx17:2.4_surf 2013-03-29 18:20:45 +04:00