Commit Graph

69 Commits

Author SHA1 Message Date
Vitaly Tuzov
e8f3469096 Added OpenVX based processing to Sobel 2016-11-29 15:29:00 +03:00
Li Peng
6cb73356b1 laplacian ocl kernel optimization
This ocl kernel is 46%~171% faster than current laplacian 3x3
ocl kernel in the perf test, with image format "CV_8UC1".

Signed-off-by: Li Peng <peng.li@intel.com>
2016-11-17 12:01:02 +08:00
Li Peng
8d4a7d3dcc sobel and scharr ocl kernel optimization
It improves 108%~230% performance in the perf test
with image format "CV_8UC1" and kernel size 3.

Signed-off-by: Li Peng <peng.li@intel.com>
2016-11-14 15:34:59 +08:00
Pavel Vlasov
f07525031b BORDER_ISOLATED support for Laplacian, boxFilter and morphology; 2016-10-27 09:53:19 +03:00
matze
d9f6a06773 Adding check for IPP if UMat and OpenCL is available in Sobel and Scharr. 2016-10-09 15:37:22 +02:00
Vitaly Tuzov
48f132f35f Fix Sobel evaluation for image ROI without isolated border. 2016-09-16 16:08:37 +03:00
Pavel Vlasov
30a6cee2fe Instrumentation for OpenCV API regions and IPP functions; 2016-08-19 18:10:03 +03:00
Pavel Vlasov
680ca88ce0 Outdated ICV restrictions were removed; 2016-08-19 15:08:39 +03:00
Maksim Shabunin
27abd4d3a3 Filter2D HAL interface 2016-03-03 18:56:12 +03:00
Alexander Alekhin
1305962af7 fixes #5066: laplacian: "y" may contain negative values 2015-12-14 18:13:57 +03:00
Pavel Vlasov
9acf93b7c6 IPP Sobel getBufferSize wrong func fix; 2015-11-19 18:38:47 +03:00
Maksim Shabunin
6e9d0d9a0c Visual Studio 2015 warning and test fixes 2015-10-20 12:48:37 +03:00
Pavel Vlasov
e837d69f8f IPPInitSingelton was added to contain IPP related global variables;
OPENCV_IPP env var now allows to select IPP architecture level for IPP9+;
IPP initialization logic was unified across modules;
2015-10-01 09:58:48 +03:00
Pavel Vlasov
62854dcc0d Enables support of IPP 9.0.0;
HAVE_IPP_ICV_ONLY will be undefined if OpenCV was linked against ICV packet from IPP9 or greater. ICV9+ packets will be aligned with IPP in OpenCV APIs
This will ease code management between IPP and ICV
2015-09-29 17:27:13 +03:00
Pavel Vlasov
14b006e808 IPP_VERSION_X100 was changed to:
IPP_VERSION_MAJOR * 100 + IPP_VERSION_MINOR*10 + IPP_VERSION_UPDATE
to manage changes between updates more easily.

IPP_DISABLE_BLOCK was added to ease tracking of disabled IPP functions;
2015-09-25 17:50:15 +03:00
Pavel Vlasov
2177c7c5a8 Some IPP functions were encapsulated;
Minor changes to IPP implementations;
2015-09-25 17:30:26 +03:00
Dmitry Budnikov
a5a21019b2 ipp_countNonZero build fix;
Removed IPP port for tiny arithm.cpp functions

Additional warnings fix on various platforms.

Build without OPENCL and GCC warnings fixed

Fixed warnings, trailing spaces and removed unused secure_cpy.

IPP code refactored.

IPP code path  implemented as separate static functions to simplify future work with IPP code and make it more readable.
2015-06-18 12:47:07 +03:00
Vladislav Vinogradov
cda6fed41f move tegra namespace out of cv to prevent conflicts 2015-02-27 12:52:11 +03:00
Vladislav Vinogradov
44e41baffe use new functions before all tegra:: calls 2015-02-26 19:34:58 +03:00
Pavel Vlasov
45958eaabc Implementation detector and selector for IPP and OpenCL;
IPP can be switched on and off on runtime;

Optional implementation collector was added (switched off by default in CMake). Gathers data of implementation used in functions and report this info through performance TS;

TS modifications for implementations control;
2014-10-15 14:24:41 +04:00
Alexander Karsakov
07d57db91c Fixed calculation of l_stack_size 2014-09-03 17:40:17 +04:00
Alexander Karsakov
a48c1c8248 Added workaround for Nvidia: take into account that 3-channel vector type takes 4*elem_size in local memory. 2014-09-02 12:38:02 +04: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
Adil Ibragimov
8a4a1bb018 Several type of formal refactoring:
1. someMatrix.data -> someMatrix.prt()
2. someMatrix.data + someMatrix.step * lineIndex -> someMatrix.ptr( lineIndex )
3. (SomeType*) someMatrix.data -> someMatrix.ptr<SomeType>()
4. someMatrix.data -> !someMatrix.empty() ( or !someMatrix.data -> someMatrix.empty() ) in logical expressions
2014-08-13 15:21:35 +04:00
Alexander Alekhin
55188fe991 world fix 2014-08-05 20:12:35 +04:00
Ilya Lavrenov
e8f5c2fcf6 OpenCL before IPP 2014-07-08 18:51:27 +04:00
Alexander Alekhin
e8d3ebecc7 fix IPPDerivSobel condition 2014-04-29 15:36:45 +04:00
Alexander Alekhin
b62e59aac0 icv: enable functions 2014-04-29 15:36:43 +04:00
Alexander Alekhin
5658ba0002 icv: update package 2014-04-29 15:35:27 +04:00
vbystricky
d9ef5bb5a7 Fix compile warnings 2014-04-21 15:02:38 +04:00
vbystricky
f52126725f Disable scharr in icv only configuration 2014-04-21 14:43:56 +04:00
vbystricky
d97f7da7a9 Fix setIppErrorStatus placement 2014-04-21 14:19:25 +04:00
vbystricky
650762419c Add setIppErrorStatus() 2014-04-18 15:13:34 +04:00
vbystricky
d17f40dc1f Fix error in code 2014-04-18 15:04:46 +04:00
vbystricky
32394df42d Add constant border fix call ipp function 2014-04-18 15:04:46 +04:00
vbystricky
79384beb60 Fix warning 2014-04-18 15:04:45 +04:00
vbystricky
160c964e4b Fix error 2014-04-18 15:04:45 +04:00
vbystricky
baa6ab1967 Change Scharr filter to new ipp functions 2014-04-18 15:04:45 +04:00
Ilya Lavrenov
6f9ca3d77c fixed some errors 2014-04-17 11:08:02 +04:00
Ilya Lavrenov
ce0941160e added status check 2014-04-17 11:08:02 +04:00
Ilya Lavrenov
884b706b3a fixed warning 2014-04-14 14:40:40 +04:00
Ilya Lavrenov
ad7f2311c0 cv::Laplacian 2014-04-14 14:34:28 +04:00
Alexander Alekhin
0d477ffea1 ipp: some functions are not available in the ICV package 2014-04-09 18:20:49 +04:00
Ilya Lavrenov
e090aa07db disabled some IPP funcs 2014-04-08 22:30:18 +04:00
vbystricky
38913bf5f6 Change all 'ippStsNoErr==' to '0<=', and all 'ippStsNoErr!=' to '0>' 2014-04-07 14:31:34 +04:00
vbystricky
1b3651d8ee Undo changes ipp to ippicv prefix of function names 2014-04-07 14:30:03 +04:00
vbystricky
06434bedfd Change deprecated function ippicviMulC_32f_C1IR to ippicviMulC_32f_C1R. Check results of ipp function, if error was return run opencv branch of code 2014-04-07 14:26:45 +04:00
vbystricky
01a66a2938 Prepare codes for ippicv library 2014-04-07 14:24:05 +04:00
Ilya Lavrenov
e1efed1914 added support of ksize >= 5 to cv::Laplacian 2014-03-31 13:17:58 +04:00