Commit Graph

112 Commits

Author SHA1 Message Date
Pavel Vlasov
a42789f330 IPP morphology with big images hotfix. 2018-04-23 10:50:20 +03:00
Alexander Alekhin
5d36ee2fe7 imgproc: apply CV_OVERRIDE/CV_FINAL 2018-03-28 17:57:59 +03:00
Maksim Shabunin
8b87c4b96a Fixed several warnings produced by clang 6 and static analyzers 2018-01-16 15:26:28 +03:00
Vadim Pisarevsky
5ce38e516e Merge pull request #10223 from vpisarev:ocl_mac_fixes
* fixed OpenCL functions on Mac, so that the tests pass

* fixed compile warnings; temporarily disabled OCL branch of TV L1 optical flow on mac

* fixed other few warnings on macos
2017-12-05 13:32:28 +03:00
Maksim Shabunin
248e2c7d47 Fixed some issues found by static analysis 2017-09-08 12:22:12 +03:00
Pavel Vlasov
a57718e1ac ICV2017u3 package update;
- Optimizations set change. Now IPP integrations will provide code for SSE42, AVX2 and AVX512 (SKX) CPUs only. For HW below SSE42 IPP code is disabled.
- Performance regressions fixes for IPP code paths;
- cv::boxFilter integration improvement;
- cv::filter2D integration improvement;
2017-08-23 14:24:43 +03:00
Alexander Alekhin
5a54acef4e Merge pull request #9130 from alalek:android_define 2017-07-14 17:17:24 +00:00
Alexander Alekhin
a4a47b538c build: detect Android via '__ANDROID__' macro
https://sourceforge.net/p/predef/wiki/OperatingSystems
2017-07-10 12:43:59 +03:00
Vladislav Sovrasov
42936d3227 imgproc: fix MORPH_HITMISS operation when kernel has no negative values 2017-07-04 11:17:44 +03:00
Pavel Vlasov
35c7216846 IPP for OpenCV 2017u2 initial enabling patch; 2017-04-20 20:26:30 +03:00
Maksim Shabunin
c4c1c4c9bb Replaced several hal:: classes with functions, marked old variants deprecated 2017-02-27 12:13:31 +03:00
Alexander Alekhin
442380bfac Merge pull request #7585 from pengli:morph_filter 2016-11-07 17:11:32 +00:00
Li Peng
35198b84a4 morph ocl kernel for erode and dilate filter
This kernel is for CV_8UC1 format and 3x3 kernel size,
It is about 33% ~ 55% faster than current ocl kernel with below perf test

python ./modules/ts/misc/run.py -t imgproc --gtest_filter=OCL_ErodeFixture*
python ./modules/ts/misc/run.py -t imgproc --gtest_filter=OCL_DilateFixture*

Also add accuracy test cases for this kernel, the test command is

./bin/opencv_test_imgproc --gtest_filter=OCL_Filter/MorphFilter3x3*

Signed-off-by: Li Peng <peng.li@intel.com>
2016-11-04 12:24:24 +08:00
Pavel Vlasov
f07525031b BORDER_ISOLATED support for Laplacian, boxFilter and morphology; 2016-10-27 09:53:19 +03:00
Pavel Vlasov
30a6cee2fe Instrumentation for OpenCV API regions and IPP functions; 2016-08-19 18:10:03 +03:00
Maksim Shabunin
5877debb6f HAL resize, warpAffine, warpPerspective interface
- added HAL documentation support
- added documentation to HAL replacement interface
- updated several HAL functions in imgproc module
2016-04-07 18:47:24 +03:00
Maksim Shabunin
83379695a0 HAL interface for morphology operations 2016-03-21 09:32:06 +03:00
Maksim Shabunin
27abd4d3a3 Filter2D HAL interface 2016-03-03 18:56:12 +03:00
Vadim Pisarevsky
3c31d6add3 Merge pull request #5515 from LorenaGdL:hitAndMiss 2015-11-02 11:49:37 +00:00
Lorena García
7cff60f4f6 Changed src matrix complement computation 2015-10-24 00:33:36 +02:00
Lorena García
fb03330ea3 Fixed CV_Assert 2015-10-24 00:22:50 +02:00
Maksim Shabunin
6e9d0d9a0c Visual Studio 2015 warning and test fixes 2015-10-20 12:48:37 +03:00
Lorena García
33f77774c5 Hit&Miss morphological operation 2015-10-14 14:01:53 +02:00
Pavel Vlasov
89eee6ca99 Fixes for IPP integration:
dotProd_16s - disabled for IPP 9.0.0;
filter2D - fixed kernel preparation;
morphology - conditions fix and disabled FilterMin and FilterMax for IPP 9.0.0;
GaussianBlur - disabled for CV_8UC1 due to buffer overflow;
integral - disabled for IPP 9.0.0;

IppAutoBuffer class was added;
2015-10-12 10:51:28 +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
101607a7d0 Imgproc_Hist_MinMaxVal.accuracy fix;
Some code style corrections;
2015-06-24 13:50:17 +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
Nisarg Thakkar
00094a8792 Fix for Bug4243. Made changes relating to non OpenCL devices 2015-04-16 00:22:08 +05:30
Nisarg Thakkar
a0bc0ab7cb Fix for Bug4243 2015-04-15 23:49:01 +05:30
Ilya Lavrenov
cf4c79ebdd disabled some kernels for Android && NVidia 2015-03-04 14:46:49 +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
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
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
Elena Gvozdeva
8124d10526 fixed Erode and Dilate in case of kernel = Mat() 2014-08-12 12:19:13 +04:00
Alexander Karsakov
6b0e63b652 Enabled IPPMorphReplicate in case BORDER_CONSTANT only for 3x3 kernels. 2014-08-11 15:37:05 +04:00
Alexander Alekhin
55188fe991 world fix 2014-08-05 20:12:35 +04:00
Vadim Pisarevsky
432b7cb235 Merge pull request #3032 from vpisarev:refactor_ml2 2014-08-04 14:51:38 +00:00
Vadim Pisarevsky
222f8a3d5e hopefully fixed test failure on Linux 2014-08-04 01:16:45 +04:00
vbystricky
bd8894002e Fix some problems 2014-07-30 11:56:28 +04:00
vbystricky
878dec65c8 Optimize OpenCL version of morfology and box filters for small filter kernels 2014-07-30 10:32:52 +04:00
Beat Küng
90dce84314 imgproc: fix compiler error for gcc 4.8
this bug was introduced in a73809e6.
2014-07-05 09:27:11 +02:00
Vadim Pisarevsky
fe4bdcd71b Merge pull request #2895 from fradelg:master 2014-07-01 17:16:22 +00:00
Ilya Lavrenov
36db85a94d optimized some operations 2014-06-27 12:52:29 +04:00
Ilya Lavrenov
16ab6ec534 ported changes from PR #2867 2014-06-26 13:52:44 +04:00
Ilya Lavrenov
a3592cd068 added ocl_** function 2014-06-26 13:18:03 +04:00
Ilya Lavrenov
ad9272e836 reverted to original plain C++ code 2014-06-26 13:13:01 +04:00
Fco. Javier Delgado del Hoyo
47e345bcb6 Change comment according to fix 2014-06-25 11:49:26 +02:00
Fco. Javier Delgado del Hoyo
a73809e6fc Fix GCC 4.9 compiler warning 2014-06-25 11:46:05 +02:00