Commit Graph

160 Commits

Author SHA1 Message Date
Tomoaki Teshima
e187219699 use universal intrinsic in arithm.cpp
* remove raw NEON/SSE2 implementation as much as possible
  * replace them to universal intrinsic in InRange/Compare/AddWeighted
2017-09-29 08:33:15 +09:00
Deric Crago
a0d7cf89f2 Fixed 'boundary' spelling 2017-09-26 23:42:48 -04:00
Vladislav Sovrasov
35a1ecef2a core: fix infinite recursion in compare 2017-06-28 15:00:52 +03:00
Vadim Pisarevsky
7c3577f7ae Merge pull request #8779 from vpisarev:empty_cmp_fix 2017-05-23 19:06:57 +00:00
Vadim Pisarevsky
4eda8efd42 resolves https://github.com/opencv/opencv/issues/7792 2017-05-23 18:16:40 +03:00
Maksim Shabunin
b04ed5956e Fixed several issues found by static analysis in core module 2017-05-23 12:35:31 +03:00
Alexander Alekhin
4c7aa8645a ocl: validate arguments in KernelArgs constructor
- don't use undefined flag=0. It should be CONSTANT instead.
- don't allow 'UMat* m=NULL' argument (except LOCAL/CONSTANT flags).
  This case is not handled well to provide NULL __global pointers.
  It is better to use '-D' macro defines instead (at least for performance)
2017-02-14 16:10:32 +03:00
Pavel Vlasov
30a6cee2fe Instrumentation for OpenCV API regions and IPP functions; 2016-08-19 18:10:03 +03:00
Ilya Lavrenov
71cbd6f02e fixed bug #5775 2016-07-20 11:38:15 +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
84f37d352f HAL moved back to core 2015-12-17 12:33:23 +03:00
Maksim Shabunin
b4bcdd10a1 HAL: improvements
- added new functions from core module: split, merge, add, sub, mul, div, ...
- added function replacement mechanism
- added example of HAL replacement library
2015-12-03 14:43:37 +03:00
Maksim Shabunin
6e9d0d9a0c Visual Studio 2015 warning and test fixes 2015-10-20 12:48:37 +03:00
Pavel Vlasov
33e659786f Fix for cmp16s condition during IPP compare type convert; 2015-09-21 18:11:20 +03:00
Vadim Pisarevsky
9fbd1d68ad refactored div & pow funcs; added tests for special cases in pow() function.
fixed http://code.opencv.org/issues/3935
possibly fixed http://code.opencv.org/issues/3594
2015-05-01 21:49:11 +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
Vadim Pisarevsky
03fc3d1ceb Merge pull request #3591 from ilya-lavrenov:sse_avx 2015-01-21 10:46:23 +00:00
Vadim Pisarevsky
5e92a777ef Merge pull request #3569 from ilya-lavrenov:sse_mul 2015-01-19 13:42:36 +00:00
Ilya Lavrenov
6bce6ee34a checks 2015-01-12 10:59:31 +03:00
Ilya Lavrenov
ef29b15c9a reciprocal 2015-01-12 10:59:30 +03:00
Ilya Lavrenov
44d89638fd divide 2015-01-12 10:59:30 +03:00
Ilya Lavrenov
f2cd65cf1e fixes 2015-01-12 10:59:30 +03:00
Ilya Lavrenov
25e99c453f avx2 in arithm 2015-01-12 10:59:30 +03:00
Ilya Lavrenov
fc0869735d used popcnt 2015-01-12 10:59:30 +03:00
Ilya Lavrenov
a2a8ba17fc compare 2015-01-12 10:59:28 +03:00
Ilya Lavrenov
68962adc54 SSE mul 2014-12-31 17:58:54 +03:00
Ilya Lavrenov
60f2f7898a SSE4.1 addWeighted fo 16u 2014-12-31 17:55:30 +03:00
Ilya Lavrenov
f6b3bc01e5 addWeighted 2014-12-29 22:01:53 +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
Ilya Lavrenov
4babecf3b0 fixes for cv::addWeighted and cv::Mat::dot 2014-10-09 12:55:52 +00:00
Ilya Lavrenov
a3e56114d1 cv::multiply 2014-09-30 14:20:22 +00:00
Ilya Lavrenov
74e60e44ad cv::compare 2014-09-28 02:41:08 -07:00
Ilya Lavrenov
857a2d5bfd cv::addWeighted 2014-09-28 01:11:07 -07:00
Vadim Pisarevsky
5f590ebed0 Merge pull request #3094 from Adil-Ibragimov:minor_fixes_in_Mat-data 2014-08-13 18:28:51 +00:00
Vadim Pisarevsky
d97f9fc477 now the tests pass with loop_times==30 2014-08-13 16:32:01 +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
Vadim Pisarevsky
9ef373f6a5 Merge pull request #3038 from yury-gorbachev:core_arithm_neon 2014-08-10 20:20:04 +00:00
Yury Gorbachev
9a233999a9 Fixed review comment from Vadim Pisarevsky 2014-08-09 13:37:53 +04:00
Alexander Alekhin
55188fe991 world fix 2014-08-05 20:12:35 +04:00
Vadim Pisarevsky
a05ce00a65 Merge pull request #2879 from alalek:ocl_runtime_flags 2014-08-04 16:43:01 +00:00
Yury Gorbachev
61423a2d47 ARM NEON accelerated implementation of cv::addWeighted, cv::inRange and cv::compare functions.
NOT verified on target platform, compilation passes with and without NEON.
2014-08-04 16:44:51 +04:00
Vadim Pisarevsky
5267ed46c7 1. disabled OpenCL acceleration for cv::multiply() (CV_32F), cv::divide (CV_32F), cv::convertScaleAbs (CV_32F) and cv::reduce (SUM, CV_32F), cv::reduce (MIN & MAX), cv::flip (3-channel case).
2. changed the number of test loops from 1 to 30 (except for cv::pow() test, which fails for yet unknown reason)
3. disabled IPP acceleration for 3-channel norms.
4. modified relativeNorm test function to handle very small values
2014-07-30 18:19:47 +04:00
Adrian Stratulat
a98ce86ca3 Add NEON intrinsics to core/src/arithm.cpp 2014-07-24 19:45:32 +00:00
Ilya Lavrenov
e04c39b089 SSE2 optimization of cv::inRange 2014-07-04 10:11:18 +04:00
Alexander Alekhin
b304868d91 Merge pull request #2886 from ilya-lavrenov:tapi_inrange 2014-06-30 10:04:04 +00:00
Alexander Alekhin
2d81595ed4 Merge pull request #2852 from ilya-lavrenov:tapi_abs 2014-06-27 08:21:06 +00:00
Ilya Lavrenov
e89cee35e5 optimized cv::inRange 2014-06-23 13:12:08 +04:00
Ilya Lavrenov
0528d2e2b3 added 32s to 32u conversion 2014-06-23 13:09:54 +04:00
Alexander Alekhin
d9daa0cbaa ocl: added runtime flags for debugging 2014-06-19 17:52:46 +04:00