165 Commits

Author SHA1 Message Date
Tom Stellard
42b1bd56cc ocl: Move static oclMat variables into FarnebackOpticalFlow class
Move some static functions into the FarnebackOpticalFlow class as well,
so they can access these new class variables.

oclMat objects cannot be declared statically, because their destructor
depends on the statically defined __module variable from cl_context.cpp.
Since statically defined variables in separate compilation units have
an undefined destruction order there is always the possibility the
__module will be destructed before an oclMat object, which results
in a segfault.
2014-11-13 11:16:10 -05:00
Alexander Alekhin
d2f19a3a0d Merge pull request #3418 from tstellarAMD:2.4-hog-crash-fix 2014-11-13 01:49:06 +00:00
Ilya Lavrenov
d8ca61b01b attemp to fix dox warning 2014-11-12 19:18:45 +03:00
Tom Stellard
ec335b7398 ocl: Fix crash during destruction of gauss_w_lut object in hog.cpp
gauss_w_lut is a statically defined variable of type oclMat.  The oclMat
destructor calls openCLFree() which via getInitializationMutex() accesses
the __module variable which has been statically defined in cl_context.cpp

Since the destruction order of statically defined variables in different
compilation units is undefined, it is possible that __module will
be destructed before gauss_w_lut, which would result in a segfault when
getInitializationMutex() is called while destructing gauss_w_lut.

In order to avoid this issue, we need to make gauss_w_lut a private
member of the HOGDescriptors class so we know it will be destroyed
before __module.
2014-11-12 10:07:07 -05:00
Alexander Alekhin
b1ac35e14a ocl: fix mac and superres test 2014-07-02 11:54:20 +04:00
Andrey Pavlenko
e6e817e613 Revert "Merge pull request #1779 from perping:integral_2.4"
This reverts commit 54ea5bbac77a9dbd10f314ee1ee2b10e3b6c44fa, reversing
changes made to 28e0d3d771d9db9d03ea55f8d0504558e17139b2.
2014-03-28 16:05:04 +04:00
Ilya Lavrenov
6b9ebcbf3d deleted extra semicolons 2014-01-07 02:52:30 +04:00
Andrey Pavlenko
0cea828a10 Merge pull request #2006 from krodyush:pullreq/2.4-opt-131120-gfft 2013-12-19 13:48:40 +04:00
krodyush
dfe7c98090 optimize separable filter by
Added "sep_filter_singlepass" kernel that performs separable filtering in one kernel call
Added appropriate host part - sepFilter2D_SinglePass function and SingleStepSeparableFilterEngine_GPU class
Changed function declarations to enable their usage
2013-12-17 14:09:06 +04:00
krodyush
a63576e76d HOST side optimization for GFFT 2013-12-17 14:02:57 +04:00
Matthias Bady
b7c97f6e30 fixed init of clCxt 2013-12-15 22:41:07 +01:00
Alexander Alekhin
17ca7f9545 ocl: add support for initialization from user-provided OpenCL handles 2013-12-12 19:59:22 +04:00
Peter Andreas Entschev
def17f2baa Removing ocl::oclMat::ptr() method.
The method ocl::oclMat::ptr() is being removed because it returns a pointer to a row of oclMat::data. The data attribute is a cl_mem structure and cannot be iterated outside an OpenCL kernel.
2013-12-06 09:31:18 -02:00
Alexander Smorkalov
8fe4ab280b Build error fix for binary-complience-checker tool. 2013-11-26 17:39:40 +04:00
perping
dee584ee15 fix haar 2013-11-12 17:54:03 +08:00
perping
50579d2524 Make Integral sum support cv_32f, sqsum support cv_64f. 2013-11-11 14:31:02 +08:00
Roman Donchenko
800d53f76b Merge pull request #1759 from ilya-lavrenov:ocl_distanceToCenters 2013-11-08 12:39:14 +04:00
Roman Donchenko
0be2752366 Merge pull request #1755 from KonstantinMatskevich:dump_info 2013-11-08 12:31:04 +04:00
Konstantin Matskevich
e9edfd1c54 update 2013-11-07 17:21:56 +04:00
Ilya Lavrenov
56d943388d speeded up ocl::distanceToCenters 2013-11-06 20:02:31 +04:00
Harris Gasparakis
a1de91a4fd Cleaned up adaptive bilateral filtering, added support for gaussian interpolation, updated sample and docs 2013-11-06 16:48:50 +04:00
Konstantin Matskevich
5304e9f259 extending openCL info dump 2013-11-06 15:20:05 +04:00
Andrey Pavlenko
43c9157220 Merge pull request #1750 from alalek:ocl_update_documentation 2013-11-06 13:32:00 +04:00
Andrey Pavlenko
95767676b7 Merge pull request #1739 from pengx17:2.4_ocl_overload_haar 2013-11-06 13:31:11 +04:00
Alexander Alekhin
3952a0df44 ocl: update comments in ocl.hpp 2013-11-05 23:53:52 +04:00
Ilya Lavrenov
2df53d97c5 added ocl::repeat 2013-11-05 12:23:20 +04:00
peng xiao
8c1eb5bf0e Overload detectMultiScale API for ocl::haar. 2013-11-04 14:59:28 +08:00
Andrey Pavlenko
e80f5bed2d Merge pull request #1710 from melody-rain:2.4_moments_ocl 2013-10-31 13:54:46 +04:00
Alexander Alekhin
7b0f018a74 ocl: adjust worksize for filter2D and boxFilter 2013-10-30 15:30:47 +04:00
Roman Donchenko
d11921f1a4 Merge pull request #1675 from krodyush:opencl-optimization 2013-10-30 12:28:31 +04:00
Jin Ma
b6b190df5c Rewrote moments of opencl version. 2013-10-29 18:05:29 +08:00
Alexander Alekhin
0f95f0d8b3 ocl: rewrite filter2D 2013-10-28 20:09:49 +04:00
Alexander Alekhin
0bf9ece998 ocl: rewrite boxFilter 2013-10-28 20:09:49 +04:00
Andrey Pavlenko
d3c0b36cd0 Merge pull request #1701 from alalek:ocl_fix_canny 2013-10-28 19:01:13 +04:00
Roman Donchenko
d3bcf609f1 Merge pull request #1657 from KonstantinMatskevich:ocldistanceToCenters 2013-10-28 13:46:32 +04:00
Alexander Alekhin
9e527fc9f4 ocl: Canny: replace unsafe buffer to oclMat 2013-10-27 18:55:42 +04:00
Andrey Pavlenko
2b6fca68bf fixing typo 2013-10-25 18:00:46 +04:00
peng xiao
68a8a11161 Rewrite distanceToCenters.
It supports NORM_L1 distance types now and can
use user provided indices.
Also fixed a bug of kmeans where distance pointers should be float instead
 of double.

NORM_L2 changed to NORM_L2SQR, Accuracy and Perf tests are added

added ROI support in accuracy test of distanceToCenters
2013-10-25 15:02:00 +04:00
konstantin
2f62940a0e Added few opencl optimizations (as Intel platform codepath):
1. HaarDetetctor: repack nodes to reduce memory footprint
2. cornerMinEigVal: 4 ocl kernels are fused into 1 for sobel calculation
2013-10-23 20:38:11 +04:00
Alexander Alekhin
fd4e705b14 ocl: update autogenerated code 2013-10-18 15:47:11 +04:00
Alexander Alekhin
6344da9ac3 ocl: force to use Khronos OpenCL headers 2013-10-18 15:47:11 +04:00
Andrey Pavlenko
97dfd65007 Merge pull request #1626 from ilya-lavrenov:ocl_filters 2013-10-18 13:44:41 +04:00
Ilya Lavrenov
da3b7c79b8 refactored filters in the ocl module; added an accuracy tests for ocl::medianFilter 2013-10-17 12:23:56 +04:00
Andrey Pavlenko
7f15ec9d54 Merge pull request #1617 from ilya-lavrenov:ocl_info 2013-10-14 19:27:01 +04:00
Ilya Lavrenov
ca26028415 demonstrative device info output 2013-10-14 17:18:25 +04:00
Alexander Alekhin
f617c0d4a2 ocl: fix for get string info from OpenCL 2013-10-12 16:56:21 +04:00
Andrey Pavlenko
9f5cda799f Merge pull request #1602 from alalek:ocl_test_dump_info 2013-10-12 16:08:24 +04:00
Alexander Alekhin
1980aad8d7 ocl: dump device info in tests 2013-10-11 18:24:59 +04:00
Alexander Alekhin
3b0823db7e ocl: fix CV_EXPORTS usage (misplaced in functions declarations) 2013-10-11 18:07:38 +04:00
Alexander Alekhin
ce1177151e ocl: fix cleanup in static builds 2013-10-11 18:07:38 +04:00