Commit Graph

293 Commits

Author SHA1 Message Date
Alexander Karsakov
5aa9ac9a77 Added OCL code for YUV422 -> RGB[A]|BGR[A] color conversion 2014-10-21 17:18:03 +03:00
Alexander Karsakov
c8707b891b Added OCL code for RGB[A]|BGR[A] -> YUV_[YV12|IYUV] color conversion 2014-10-21 17:18:03 +03:00
Alexander Karsakov
1cc17a7186 Added OCL code for YUV2BGR_YV12 and YUV2BGR_IYUV color conversions 2014-10-21 17:18:02 +03:00
Alexander Karsakov
85b60ee3cb Added support for YUV2RGB[A]_NV21 and YUV2BGR[A]_NV21 conversion 2014-10-21 17:18:02 +03:00
Vadim Pisarevsky
397870d7a5 Merge pull request #3279 from akarsakov:ocl_houghlines 2014-10-09 14:56:45 +00:00
Alexander Karsakov
66a8acfd3d Optimization for HoughLinesP 2014-10-07 17:53:33 +04:00
Alexander Alekhin
14d5358982 Merge pull request #3210 from akarsakov:ocl_gftt_opt 2014-10-07 09:06:54 +00:00
Alexander Karsakov
eaf5a163b1 Added HoughLinesP OCL implementation 2014-09-29 16:48:16 +04:00
Alexander Karsakov
3695a31606 Combined counter and corner buffers into one 2014-09-29 11:10:57 +04:00
Vadim Pisarevsky
470f427a95 Merge pull request #3232 from Chuanbo-Weng:master 2014-09-18 11:48:29 +00:00
Chuanbo Weng
c5552788c5 Use vload to read unaligned data instead of dereference operator.
According to opencl 1.2 spec 6.1.5:
    For arguments to a __kernel function declared to be a pointer to a
    data type, the OpenCL compiler can assume that the pointee is always
    appropriately aligned as required by the data type. The behavior of
    an unaligned load or store is undefined, except for the
    vloadn, vload_halfn, vstoren, and vstore_halfn functions defined in
    section 6.12.7.

Original code read data of type T from address not aligned by multiple
of sizeof(T), so the result is incorrect. With this patch, the cases
./opencv_perf_imgproc
--gtest_filter=OCL_ImgSize_TmplSize_Method_MatType_MatchTemplate.MatchTemplate/*
could work well with beignet 0.9.3.

Signed-off-by: Chuanbo Weng <chuanbo.weng@intel.com>
2014-09-17 19:28:07 +08:00
Alexander Karsakov
8c08714b8c Remove two "set" kernel call 2014-09-11 18:11:23 +04:00
vbystricky
b0bf8478e5 Optimization OpenCL version of Filter2D 2014-09-11 12:59:51 +04:00
Alexander Karsakov
39b27a19be Refactoring and optimization 2014-09-05 12:20:29 +04:00
Alexander Karsakov
d59a6fa518 Optimization for getLines 2014-09-05 11:37:16 +04:00
Alexander Karsakov
fee8f29f48 Refactoring, minor optimization 2014-09-04 16:31:30 +04:00
Alexander Karsakov
07d57db91c Fixed calculation of l_stack_size 2014-09-03 17:40:17 +04:00
Alexander Karsakov
214dab39f6 Fixed BORDER_REFLECT and BORDER_REFLECT_101 extrapolation for case x > 2*maxV 2014-09-02 11:53:31 +04:00
Alexander Alekhin
b332152bef Merge pull request #2956 from ilya-lavrenov:tapi_accumulate 2014-08-28 09:08:51 +00:00
Alexander Karsakov
f7aadd07f6 Added getLines, fill_accum_local kernels 2014-08-27 17:57:22 +04:00
Vadim Pisarevsky
d66815978a Merge pull request #3117 from KruchDmitriy:canny_opt 2014-08-27 10:07:55 +00:00
VBystricky
9ee0789174 Fix issues 2014-08-26 14:39:11 +04:00
vbystricky
e75cd74f5a Optimize OpenCL version of Laplacian filter for kernel size great than 3 2014-08-25 17:56:09 +04:00
Alexander Karsakov
038bfb98ec Added fill_accum kernel 2014-08-25 13:55:09 +04:00
Ilya Lavrenov
a350b76738 optimization of cv::accumulate** 2014-08-25 11:25:01 +04:00
Alexander Karsakov
5c1f71de51 Added make_point_list kernel 2014-08-22 16:50:01 +04:00
Vadim Pisarevsky
e7539bd2c8 Merge pull request #3144 from ElenaGvozdeva:ocl_morphSmall 2014-08-22 12:14:06 +00:00
U-KruchininD-ПК\KruchininD
6ed168d3af New optimization for canny
new hysteresis

delete whitespaces

fix problem with mad24

Dynamic work group size

dynamic work group size

Fix problem with warnings

Fix some problems with border

Another one fix

Delete trailing whitespaces

some changes

fix problem with warning
2014-08-22 11:22:15 +04:00
Alexander Karsakov
3d222d313b Fixed range for 'v' channel for 8U images 2014-08-21 17:22:06 +04:00
Elena Gvozdeva
5302e56071 fix for ocl_morphSmall 2014-08-21 16:31:24 +04:00
Vadim Pisarevsky
e9729a9601 multiple yet minor fixes to make most of the tests pass on Mac with Iris graphics 2014-08-16 00:29:10 +04:00
Alexander Karsakov
5898dcae4a Added ROUNDING_EPS for identical rounding after dividing on different platforms 2014-08-12 14:28:48 +04:00
Alexander Alekhin
d0f789dc90 Merge pull request #3044 from akarsakov:fix_ocl_tests 2014-08-07 20:14:17 +00:00
Alexander Karsakov
44fbfb2cf6 Fixed extrapolation in pyrDown 2014-08-07 10:39:25 +04:00
Alexander Karsakov
2a0b39d30a Fixed calculate_histogram kernel 2014-08-07 10:39:24 +04:00
Alexander Karsakov
eb9fdb0164 Fixed rounding in remap INTER_LINEAR mode 2014-08-07 10:39:24 +04:00
Alexander Karsakov
fec21239c8 Revert optimization for warpAffine INTER_NEAREST mode 2014-08-07 10:39:18 +04:00
Vadim Pisarevsky
bab5700a09 Merge pull request #3013 from ElenaGvozdeva:ocl_matchTemplate 2014-08-06 11:26:07 +00:00
Elena Gvozdeva
7999fbf765 fixed ocl_integral 2014-08-05 12:01:28 +04:00
Vadim Pisarevsky
d3cdfefa03 Merge pull request #3027 from vbystricky:cvtColorLuv2RGB 2014-08-02 21:52:24 +00:00
Alexander Alekhin
c595457ea0 Merge pull request #3011 from vbystricky:oclopt_morthosmall 2014-08-01 17:21:59 +00:00
VBystricky
0f9b79ef64 Change min-max to clamp 2014-08-01 19:45:11 +04:00
vbystricky
b724208510 Fix Luv2RGB function 2014-08-01 16:39:12 +04:00
Alexander Alekhin
f8aecb2a32 Merge pull request #3002 from vbystricky:oclopt_pyrdown 2014-07-31 15:43:18 +00:00
vbystricky
878dec65c8 Optimize OpenCL version of morfology and box filters for small filter kernels 2014-07-30 10:32:52 +04:00
Elena Gvozdeva
e7216a5987 Used float instead of int for CV_8U in sumTemplate 2014-07-29 11:34:39 +04:00
Vadim Pisarevsky
603030b005 Merge pull request #2993 from vbystricky:oclopt_warp_affine 2014-07-25 11:26:24 +00:00
vbystricky
e49d148d47 Optimize ocl function pyrDown 2014-07-25 13:39:19 +04:00
Alexander Alekhin
63a8cb594a Merge pull request #2961 from ilya-lavrenov:tapi_corners 2014-07-22 09:38:11 +00:00
vbystricky
716218cac4 Optimize ocl version of warp_affine 2014-07-22 13:22:40 +04:00
Alexander Alekhin
381986d044 Merge pull request #2882 from akarsakov:ocl_pyrDown_opt 2014-07-14 18:48:28 +00:00
Alexander Alekhin
910d8f8e0b Merge pull request #2888 from ilya-lavrenov:tapi_remap 2014-07-11 09:59:27 +00:00
Ilya Lavrenov
fee3d6931b corners 2014-07-10 17:17:24 +04:00
Alexander Alekhin
e6c305cb75 Merge pull request #2897 from vbystricky:oclopt_sepFilter2D 2014-07-03 09:26:05 +00:00
Alexander Alekhin
acbabedac9 Merge pull request #2869 from ilya-lavrenov:tapi_warps 2014-06-30 11:59:13 +00:00
Alexander Alekhin
e0584bb818 Merge pull request #2876 from vbystricky:oclopt_integralsum 2014-06-30 10:06:54 +00:00
Alexander Alekhin
1493160f26 Merge pull request #2899 from ilya-lavrenov:tapi_ex 2014-06-30 10:05:24 +00:00
Alexander Alekhin
667a9328fb Merge pull request #2829 from ilya-lavrenov:tapi_cvtcolor 2014-06-30 10:02:41 +00:00
Alexander Karsakov
d5c99a07b6 Use fma only for Intel devices 2014-06-27 12:59:44 +04:00
Ilya Lavrenov
36db85a94d optimized some operations 2014-06-27 12:52:29 +04:00
vbystricky
1a73aa1f6a Change local size 2014-06-26 15:43:40 +04:00
Ilya Lavrenov
16ab6ec534 ported changes from PR #2867 2014-06-26 13:52:44 +04:00
vbystricky
730ead44fe Optimize OpenCL version of sepFilter2D 2014-06-26 12:46:03 +04:00
Alexander Alekhin
ea2228774d Merge pull request #2881 from mlyashko:moments_opt 2014-06-24 16:19:52 +00:00
Alexander Alekhin
ea1b14ee95 Merge pull request #2786 from ElenaGvozdeva:ocl_matchTemplate 2014-06-24 16:12:42 +00:00
vbystricky
09bcc061dd Change kernel for optimization. Remove restriction to align data
Fix kernel compilation errors on AMD system

Fix licanse information in cl file

Support CV_64F destination type

Change build options of the kernel

Optimize sum of square

Remove separate kernel for integral square

Increase epsilon for perfomance tests

Increase epsilon for perfomance tests

Test double support on AMD devices

Fix some issues

Try to fix problems with AMD device

Try to solve problem with AMD device

Fix error of destination size in kernel

Fix warnings
2014-06-24 18:32:52 +04:00
Ilya Lavrenov
87f4b47a4f optimized INTER_LINEAR mode 2014-06-23 16:25:05 +04:00
Elena Gvozdeva
c23da52564 Fixed core for CCORR and SQDIFF. Used float instead of int for CV_8U. Fixed conditions for call dft. 2014-06-23 11:37:47 +04:00
mlyashko
44ffa42064 replaced factors computation by precomputed values, added kernel for
binary mode
2014-06-23 11:04:39 +04:00
Ilya Lavrenov
007593cab7 cvtColor - optimized index calculations; usage of build-in functions 2014-06-23 02:10:42 +04:00
Alexander Alekhin
6952b90ed0 Merge pull request #2790 from akarsakov:ocl_pyrUp_unroll 2014-06-20 13:49:14 +00:00
Alexander Karsakov
eeddda4701 Optimization of cv::pyrDown for 8UC1. 2014-06-20 16:46:51 +04:00
Alexander Alekhin
6e0d77469a Merge pull request #2864 from ilya-lavrenov:tapi_boxfilter 2014-06-20 08:47:51 +00:00
Alexander Alekhin
7688a18264 Merge pull request #2840 from ilya-lavrenov:tapi_calchist 2014-06-20 08:46:32 +00:00
Ilya Lavrenov
c41a134394 increased number of rows per work-item 2014-06-17 19:24:25 +04:00
Alexander Alekhin
ce5bae1c67 Merge pull request #2871 from vbystricky:oclopt_integral 2014-06-17 18:23:31 +04:00
Alexander Karsakov
06fb5da7c8 Removed storing of zeros in local memory 2014-06-17 17:24:11 +04:00
Elena Gvozdeva
dcaa8735ba used vector data types for CCORR cn==1 2014-06-17 17:09:39 +04:00
Elena Gvozdeva
13db948023 added dft for CCORR 2014-06-17 17:09:38 +04:00
Elena Gvozdeva
82da445a15 changed CCOEFF cn==1 2014-06-17 17:09:38 +04:00
Elena Gvozdeva
a7036d9668 changed support for 3-channels, changed CCOEFF 2014-06-17 17:06:51 +04:00
Alexander Alekhin
04628d770c Merge pull request #2849 from ElenaGvozdeva:ocl_matchTemplate_3cn 2014-06-17 14:37:52 +04:00
Ilya Lavrenov
93712e913a optimization of cv::warpAffine INTER_CUBIC 2014-06-17 00:47:19 +04:00
vbystricky
606df0469a Fix pointer conversion 2014-06-16 18:14:05 +04:00
vbystricky
9bf296eeb0 Small refactoring 2014-06-16 17:17:16 +04:00
Ilya Lavrenov
c424d36041 optimized cv::boxFilter 2014-06-16 17:00:10 +04:00
vbystricky
6550c4f682 Join kernel code for int and float destination types 2014-06-16 15:08:15 +04:00
vbystricky
504bc7634a Remove pre_invalid parameter 2014-06-16 13:07:39 +04:00
Alexander Alekhin
14671e0cd6 Merge pull request #2823 from ilya-lavrenov:tapi_warpaffine 2014-06-11 14:41:29 +04:00
Elena Gvozdeva
feeb386bf3 Added support for 3-channels 2014-06-11 11:49:22 +04:00
Ilya Lavrenov
33239fca70 cv::equalizeHist 2014-06-10 19:32:46 +04:00
Ilya Lavrenov
c9528b3952 optimized histogram merging 2014-06-10 19:32:01 +04:00
Ilya Lavrenov
eeaa4b3665 eliminated convertTo 2014-06-10 19:32:01 +04:00
Ilya Lavrenov
c072c28e28 optimized cv::calcHist 2014-06-10 19:32:00 +04:00
Alexander Alekhin
e430ab1a58 Merge pull request #2785 from akarsakov:ocl_pyrDown_borders 2014-06-06 18:53:14 +04:00
Alexander Alekhin
a42259421c Merge pull request #2794 from mletavin:pullreq/140516-median 2014-06-04 16:36:37 +04:00
Ilya Lavrenov
2cc4cf3644 optimized cv::warpAffine 2014-06-03 13:45:22 +04:00
Alexander Alekhin
a049c16ca7 Merge pull request #2751 from akarsakov:ocl_thresh_opt 2014-06-02 13:54:31 +04:00
mletavin
df9c75b270 Moved new kernels under conditional compilation to disable their build for 3-channel images; added condition to use new kernels only for images that are big enough 2014-05-27 16:16:00 +04:00
Alexander Karsakov
8e54845049 Removed useless multiplication by 4 2014-05-27 10:52:20 +04:00