Commit Graph

443 Commits

Author SHA1 Message Date
peng xiao
e5c396bb24 Add ocl::gftt performance test. 2013-07-15 16:27:27 +08:00
yao
cdd9234fae fix hog mismatch on cpu ocl 2013-07-15 15:13:09 +08:00
Andrey Pavlenko
d1fe1a62c3 Merge pull request #1106 from pengx17:2.4_gftt_rename 2013-07-11 11:41:37 +04:00
Roman Donchenko
241e2d2360 Merge pull request #1077 from bitwangyaoyao:2.4_kmeans 2013-07-10 18:32:14 +04:00
Roman Donchenko
ac39bfb4cc Remove HAVE_CVCONFIG_H - it's always defined. 2013-07-10 16:02:07 +04:00
peng xiao
5032240c9d Fix ocl gftt file name typo. 2013-07-10 14:51:40 +08:00
Andrey Pavlenko
fcb4c0e51c fixing working with test data and a small fix for init code
- set init value for `numsdev` to prevent use of uninitialized value
- stop use of 'workdir' and files from samples
- forcing use of 'opencv_extra' instead
Note: set OPENCV_TEST_DATA_PATH to full path to 'opencv_extra/testdata' (gitolite@code.opencv.org:opencv_extra.git) before running the test!
2013-07-09 13:25:21 +04:00
yao
88ed74a7ec fix the function name 2013-07-05 08:59:21 +08:00
Roman Donchenko
a2d576c1bb Merge pull request #1085 from bitwangyaoyao:2.4_optBP 2013-07-04 17:24:21 +04:00
Jin Ma
97e620b8f3 Fix oclMat constructor when roi is provided. 2013-07-04 16:14:55 +08:00
yao
f2333e90f6 optimize stereoBP kernel 2013-07-04 14:46:38 +08:00
yao
c23510785b remove the redundant function 2013-07-04 08:59:42 +08:00
yao
8d8dc29ced add kmeans 2013-07-03 13:13:04 +08:00
Roman Donchenko
6bf8f474fa Merge pull request #1051 from pengx17:2.4_fback_ocl 2013-07-01 13:45:43 +04:00
Roman Donchenko
c8cd2cf601 Merge pull request #1061 from bitwangyaoyao:2.4_fix2 2013-07-01 13:21:12 +04:00
Roman Donchenko
087bab6ceb Merge pull request #1060 from pengx17:2.4_setbinary_fix 2013-07-01 13:20:51 +04:00
Roman Donchenko
38cf0a692e Merge pull request #1055 from pengx17:2.4_ocl_hang_workaround 2013-07-01 13:20:04 +04:00
yao
c66e27d49e stereoBM fix an error on Linux when running full performance test 2013-06-28 17:45:39 +08:00
yao
c1a59b8d80 more fix to HOG 2013-06-28 13:38:58 +08:00
yao
f1d9680ba8 format the ocl's samples name 2013-06-28 11:44:43 +08:00
yao
587fb4940d some accuracy fix of HOG 2013-06-28 11:43:43 +08:00
peng xiao
a5383b8627 Move function definition from header to cpp. 2013-06-28 10:52:39 +08:00
peng xiao
e858a6c347 Renew function logic. 2013-06-28 10:39:09 +08:00
peng xiao
14dd345cdf Fix ocl::setBinaryDiskCache
Previously the function requires Info::Impl implicitly. A call will create
new Context this function which is not intended.
The properties are now moved to global scope to fix this issue.
2013-06-28 10:12:18 +08:00
Roman Donchenko
f477696cc5 Merge pull request #1050 from pengx17:2.4_clach_mod 2013-06-27 12:22:01 +04:00
peng xiao
b2da1cdcc2 Temporarily disable command queue release as it causes program hang at exit 2013-06-27 10:20:21 +08:00
peng xiao
fc64faa22e Remove empty cv::ocl::CLAHE class. 2013-06-27 10:06:37 +08:00
peng xiao
dcc4766129 Fix white-spacing 2013-06-27 09:57:42 +08:00
Roman Donchenko
bf6b119a3f Merge pull request #1045 from bitwangyaoyao:2.4_fix 2013-06-26 16:55:06 +04:00
Roman Donchenko
5b2b76763e Fix miscellaneous warnings from compiling with MinGW.
Note that MinGW defines NOMINMAX by default.
2013-06-26 14:59:00 +04:00
peng xiao
9270205947 Fix build errors 2013-06-26 17:24:09 +08:00
yao
2ec1140b25 fix pyrlk 2013-06-26 16:58:20 +08:00
peng xiao
132b885b24 Add opencl implementation of Farnback optical flow. 2013-06-26 16:35:19 +08:00
peng xiao
cc3fb3d182 Let CLAHE_OCL reuse cv::CLAHE abstract class. 2013-06-26 10:50:51 +08:00
yao
1227e00f3d fix moments 2013-06-25 16:26:33 +08:00
yao
dbdeff2069 fix stereobm crash on some cpu ocl 2013-06-25 14:12:02 +08:00
yao
6db776f957 add "-c" for cpu ocl mode in perf tests 2013-06-25 14:11:28 +08:00
Roman Donchenko
3bab7391d0 Merge pull request #1028 from SpecLad:ocl-clahe-dtor 2013-06-24 13:18:28 +04:00
Roman Donchenko
171a56fe82 Merge pull request #1034 from pengx17:2.4_oclmat_inoutarray 2013-06-24 12:27:26 +04:00
Roman Donchenko
7cb047e2d9 Merge pull request #1031 from pengx17:2.4_fix_converTo 2013-06-24 12:25:48 +04:00
Roman Donchenko
4ed3d33dd7 Merge pull request #1025 from bitwangyaoyao:2.4_tests 2013-06-24 12:11:04 +04:00
peng xiao
290c8db0a8 Revise naming for getOclMat function. 2013-06-21 14:51:23 +08:00
peng xiao
e129638263 Add a workaround to interpolate between oclMat and Input/OutputArray. 2013-06-21 14:05:29 +08:00
peng xiao
c1f4fe1637 Fix a bug of convertTo.
The bug was found that all 3-channel oclMat's were converted to
4-channel oclMat's after using convertTo function.
2013-06-20 11:26:22 +08:00
Roman Donchenko
1ed5fb937d Give cv::ocl::CLAHE a virtual destructor, for the usual reasons. 2013-06-19 15:39:11 +04:00
yao
2c198f6cd6 revise accuracy and perf tests 2013-06-19 13:03:35 +08:00
yao
26c246140a optimize hog 2013-06-19 11:20:45 +08:00
Roman Donchenko
47ea0614dc Merge pull request #969 from pengx17:2.4_binary_cache 2013-06-14 15:47:23 +04:00
peng xiao
e6b18fc492 Fix a bug caused by NDEBUG macro; it is now removed.
Revise some descriptions of the enums.
2013-06-14 16:37:00 +08:00
Roman Donchenko
b725cbf73f Merge pull request #986 from pengx17:2.4_initiated_context 2013-06-13 16:55:56 +04:00
peng xiao
5fd724b54a Add a function to query if global OpenCL context is initialized. 2013-06-13 10:46:12 +08:00
Peng Xiao
d9ab22e4ed Fix two bugs related to opencl context.
1. As getDevice will implicitly call setDevice, in getContext we should not need to call it again.
2. Fix an incorrect type casting.
2013-06-12 13:55:20 +08:00
Peng Xiao
c8398c9fdc Use anonymous enumerations instead of constants 2013-06-11 20:32:55 +08:00
Peng Xiao
1d8cd3a717 Add ocl CLACH implementation.
Test cases (accuracy and performance) are provided.
2013-06-10 18:37:48 +08:00
Peng Xiao
e77abeef16 Add a new global function to control ocl binary storage
Previously the feature is controlled by setBinpath implicitly.
We add the function to cope with setBinpath and setBinpath is only
useful when setBinaryDiskCache is set.
Refer to the header to see more info.
2013-06-10 16:38:22 +08:00
peng xiao
429f84e59e Fix a bug of cornerHarris and cornerMinEigenVal.
The bug is a buffer overrun when border type is reflect101.
It is found that gfft crashed with input of size 100x100 on Intel CPU.
2013-06-06 11:44:35 +08:00
Vadim Pisarevsky
119b7a298d Merge pull request #933 from pengx17:2.4_macfix_cont 2013-06-04 13:34:53 +04:00
Vadim Pisarevsky
2d88f20c1e Merge pull request #935 from pengx17:2.4_filter2d_fix 2013-06-04 13:34:40 +04:00
Vadim Pisarevsky
0cb1644825 Merge pull request #936 from bitwangyaoyao:2.4_perf 2013-06-04 13:34:25 +04:00
Vadim Pisarevsky
e0c2daadbf Merge pull request #937 from bitwangyaoyao:2.4_fixPyrLK 2013-06-04 13:34:09 +04:00
peng xiao
a7a94de74a Fix a bug of gfft.
When user provided corners buffer is big enough to be copied to from
tmpCorners_, we allow the buffer to be reused other than allocate a new
cl_mem object.
2013-06-04 15:55:33 +08:00
yao
dc937c10f9 change a test image of pyrlk 2013-06-04 11:31:54 +08:00
peng xiao
97b86aa259 Initialize OpenCL context at the end of getDevice call.
Added for better compatibility with the current samples/test cases.
User now will be able to initialize OpenCL context explicitly with
ocl::getDevice api.
This may be obsoleted in future releases.
2013-05-31 16:48:40 +08:00
yao
15a213d3fc fix a crash on Linux 2013-05-31 15:35:54 +08:00
yao
abefcc6061 Adjust perf_filters, as this function only supports 3x3 kernel 2013-05-31 15:16:03 +08:00
peng xiao
b1c248fcc9 Fix ocl::filter2D.
In current implementation, this function only works when anchor point is
in the kernel center and kernel size supported is either 3x3 or 5x5.
2013-05-31 10:53:52 +08:00
peng xiao
fdc133d8c9 Fix ocl::pyrup kernel build on Mac. 2013-05-30 16:34:20 +08:00
Vadim Pisarevsky
37091b086c Merge pull request #932 from bitwangyaoyao:2.4_fixBFM 2013-05-30 12:21:27 +04:00
yao
5b598f8a0e a few fixes of ocl::perf test cases 2013-05-30 16:20:31 +08:00
Vadim Pisarevsky
5a4efe8bcf Merge pull request #924 from pengx17:2.4_arithm_fix 2013-05-30 12:01:25 +04:00
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
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
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
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
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
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
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
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
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
peng xiao
06a4bad809 Merge ocl and/or/xor operators into one kernel each. 2013-04-15 10:36:03 +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
36028bd8ad Merge pull request #808 from bitwangyaoyao:2.4_mac 2013-04-12 14:59:45 +04:00
Vadim Pisarevsky
03e2a52e2c Merge pull request #807 from pengx17:2.4_ocl_bfm_opt 2013-04-12 13:46:55 +04:00