Commit Graph

4330 Commits

Author SHA1 Message Date
Hamdi Sahloul
10ae0c4364 Merge pull request #12486 from cv3d:fix_cpp11
Support MSVC 2013 (#12486)

* Added CV_CONSTEXPR macro

* Utilize CV_NOEXCEPT and CV_CONSTEXPR

* Provides some Ptr<> logical operators
2018-09-11 22:35:03 +03:00
Alexander Alekhin
e73e393c82 Merge pull request #12477 from alalek:drop_legacy_headers 2018-09-11 19:31:16 +00:00
cyy
8f78a1123b fix uninitialized read errors reported by CUDA-INITCHECK 2018-09-11 14:47:39 +08:00
Vitaly Tuzov
0a5bd0ac8b sum() implementation updated to use wide universal intrinsics 2018-09-10 20:16:38 +03:00
Vitaly Tuzov
2f929376ec Fixed meanStdDev() implementation for the case input matrix has more than 4 channels 2018-09-10 20:05:45 +03:00
Vadim Pisarevsky
b01f63835e Merge pull request #12467 from alalek:core_use_shared_ptr 2018-09-10 13:59:14 +00:00
Vadim Pisarevsky
6d7f5871db
added basic support for CV_16F (the new datatype etc.) (#12463)
* added basic support for CV_16F (the new datatype etc.). CV_USRTYPE1 is now equal to CV_16F, which may break some [rarely used] functionality. We'll see

* fixed just introduced bug in norm; reverted errorneous changes in Torch importer (need to find a better solution)

* addressed some issues found during the PR review

* restored the patch to fix some perf test failures
2018-09-10 16:56:29 +03:00
Alexander Alekhin
9097ccf515 drop legacy headers 2018-09-10 08:33:16 +00:00
Alexander Alekhin
dca657a2fd Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-09-10 00:10:21 +03:00
Alexander Alekhin
df8b057b44 avoid Ptr<> == NULL checks 2018-09-09 19:30:46 +00:00
Alexander Alekhin
64b3c1e691 core(test): update cv::Ptr tests 2018-09-09 19:30:46 +00:00
Alexander Alekhin
15aee09c7f core: replace cv::Ptr implementation => std::shared_ptr 2018-09-09 19:30:46 +00:00
Sergey Nuzhny
80610ca054 Merge pull request #12449 from Nuzhny007:master
* Fixed compilation error WITH_OPENMP under Windows

* Move up OpenMP condition
2018-09-08 23:20:14 +03:00
Alexander Alekhin
95dd4b3f27 bindings: add debug helpers for args conversions 2018-09-08 12:23:08 +00:00
cyy
286c2c236b Merge pull request #12458 from DEEPIR:3.4
* may be an typo fix

* remove identical branch,may be paste error

* add parentheses around macro parameter

* simplify if condition

* check malloc fail

* change the condition of branch removed by commit 3041502861
2018-09-07 18:43:47 +03:00
Hamdi Sahloul
a39e0daacf Utilize CV_UNUSED macro 2018-09-07 20:33:52 +09:00
Alexander Alekhin
73bfe68821 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-09-07 12:40:27 +03:00
cyy
8b48c2a10c Merge pull request #12443 from DEEPIR:master
* simplify condition

* dims must > 0 or latter sz[dims-1] will underflow
2018-09-06 23:09:39 +03:00
Alexander Alekhin
f1f15841d7 Merge pull request #11630 from alalek:c_api_eliminate_constructors 2018-09-06 20:07:16 +00:00
Vadim Pisarevsky
80b62a41c6 Merge pull request #12411 from vpisarev:wide_convert
* rewrote Mat::convertTo() and convertScaleAbs() to wide universal intrinsics; added always-available and SIMD-optimized FP16<=>FP32 conversion

* fixed compile warnings

* fix some more compile errors

* slightly relaxed accuracy threshold for int->float conversion (since we now do it using single-precision arithmetics, not double-precision)

* fixed compile errors on iOS, Android and in the baseline C++ version (intrin_cpp.hpp)

* trying to fix ARM-neon builds

* trying to fix ARM-neon builds

* trying to fix ARM-neon builds

* trying to fix ARM-neon builds
2018-09-06 19:36:59 +03:00
Vadim Pisarevsky
54279523a3 Merge pull request #12437 from vpisarev:avx2_fixes
* trying to fix the custom AVX2 builder test failures (false alarms)

* fixed compile error with CPU_BASELINE=AVX2 on x86; raised tolerance thresholds in a couple of tests

* fixed compile error with CPU_BASELINE=AVX2 on x86; raised tolerance thresholds in a couple of tests

* fixed compile error with CPU_BASELINE=AVX2 on x86; raised tolerance thresholds in a couple of tests

* seemingly disabled false alarm warning in surf.cpp; increased tolerance thresholds in the tests for SolvePnP and in DNN/ENet
2018-09-06 18:56:55 +03:00
Alexander Alekhin
8a3c394d6a don't use constructors for C API structures 2018-09-06 14:34:16 +03:00
Alexander Alekhin
ad146e5a6b core: remove constructors from C API structures
POD structures can't have constructors.
2018-09-06 14:34:09 +03:00
woody.chow
07c6b0a8df Replace naive normL2Sqr with hal::normL2Sqr_ for better performance 2018-09-06 17:43:07 +09:00
Alexander Alekhin
43b64140ae Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-09-05 19:54:09 +03:00
Zhenqing Hu
d621a99e73 To fix bug #12389, which is a validation for the potential null pointer.
Signed-off-by: Zhenqing Hu <huzq85@gmail.com>
2018-09-05 19:14:34 +03:00
Alexander Alekhin
d74b98c3d9 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-09-04 18:39:03 +00:00
Alexander Alekhin
acce95f446 backport fixes for static analyzer warnings
Commits:
- 09837928d9
- 10fb88d027

Excluded changes with std::atomic (C++98 requirement)
2018-09-04 16:49:42 +03:00
cyy
10fb88d027 Merge pull request #12391 from DEEPIR:master
fix some errors found by static analyzer. (#12391)

* fix possible divided by zero and by negative values

* only 4 elements are used in these arrays

* fix uninitialized member

* use boolean type for semantic boolean variables

* avoid invalid array index

* to avoid exception and because base64_beg is only used in this block

* use std::atomic<bool> to avoid thread control race condition
2018-09-04 16:39:19 +03:00
Alexander Alekhin
4f9db2c03a Merge pull request #12377 from alalek:inputarray_raw_wrapper_customtype 2018-09-04 11:29:23 +00:00
Alexander Alekhin
00cbb894ec CUDA: drop OPENCV_TRAITS_ENABLE_DEPRECATED requirement 2018-09-03 18:41:48 +00:00
Alexander Alekhin
a0f86479e0 core: wrap custom types via _RawArray (raw() call)
- support passing of `std::vector<KeyPoint>` via InputArray
2018-09-03 18:41:48 +00:00
LaurentBerger
d71812425a Solves issue 12392 2018-09-03 19:30:49 +02:00
cyy
09837928d9 Merge pull request #12357 from DEEPIR:master
* fix some static analyzer warnings

* fix some static analyzer warnings

* fix race condition of workthread control
2018-09-02 16:34:43 +03:00
Alexander Alekhin
70a27c7dd6 core: add solveLP type checks for output
to forbid Mat1f

Checks are not reliable: empty uninitialized `cv::Mat` has `CV_8UC1` type
2018-09-01 14:51:44 +00:00
Alexander Alekhin
dfa8467a08 Merge pull request #12180 from cv3d:cleanup/python_umat 2018-08-31 20:25:30 +00:00
Hamdi Sahloul
669ee0415a Rewrite the UMat Python wrapper 2018-09-01 01:36:10 +09:00
Vitaly Tuzov
0f2b535fcc Bit-exact GaussianBlur reworked to use wide intrinsics (#12073)
* Bit-exact GaussianBlur reworked to use wide intrinsics

* Added v_mul_hi universal intrinsic

* Removed custom SSE2 branch from bit-exact GaussianBlur

* Removed loop unrolling for gaussianBlur horizontal smoothing
2018-08-31 17:04:59 +03:00
Jakub Golinowski
9f1218b00b Merge pull request #11897 from Jakub-Golinowski:hpx_backend
* Add HPX backend for OpenCV implementation
Adds hpx backend for cv::parallel_for_() calls respecting the nstripes chunking parameter. C++ code for the backend is added to modules/core/parallel.cpp. Also, the necessary changes to cmake files are introduced.
Backend can operate in 2 versions (selectable by cmake build option WITH_HPX_STARTSTOP): hpx (runtime always on) and hpx_startstop (start and stop the backend for each cv::parallel_for_() call)

* WIP: Conditionally include hpx_main.hpp to tests in core module
Header hpx_main.hpp is included to both core/perf/perf_main.cpp and core/test/test_main.cpp.
The changes to cmake files for linking hpx library to above mentioned test executalbles are proposed but have issues.

* Add coditional iclusion of hpx_main.hpp to cpp cpu modules

* Remove start/stop version of hpx backend
2018-08-31 16:23:26 +03:00
Vadim Pisarevsky
a08c6e49b3 Merge pull request #12341 from terfendail:countnonzero_wintr 2018-08-31 12:58:25 +00:00
Alexander Alekhin
90f47eb952 Merge pull request #12234 from cv3d:python/cuda/wrapping_functionalities 2018-08-30 20:23:38 +00:00
Vitaly Tuzov
c894fc5bae countNonZero function reworked to use wide universal intrinsics instead of SSE2 intrinsics 2018-08-30 20:43:39 +03:00
Alexander Alekhin
e86287d8ae cleanup: IPP Async (IPP_A)
except header file with conversion routines (will be removed in OpenCV 4.0)
2018-08-30 18:53:07 +03:00
Alexander Alekhin
15e57d28f5 Merge pull request #12293 from alalek:cleanup_stl_string_replacement 2018-08-30 15:43:57 +00:00
Hamdi Sahloul
532eace7d6 Extensive wrapping of CUDA functionalities for Python 2018-08-30 22:50:33 +09:00
Alexander Alekhin
c1db75e0c7 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-08-29 16:24:56 +03:00
Alexander Alekhin
d13db35f31 Merge tag '3.4.3' 2018-08-28 16:03:08 +03:00
Alexander Alekhin
b38c50b3d0 OpenCV 3.4.3 2018-08-28 15:58:21 +03:00
Alexander Alekhin
4e0d2a3e6c Merge pull request #12193 from alalek:fix_vaapi_sample 2018-08-27 20:56:20 +00:00
Alexander Alekhin
acfdd0e1fc core: fix MSVS "unreachable code" warnings 2018-08-27 16:23:25 +03:00
Alexander Alekhin
9fb8f6347f core: don't call std::string(NULL) 2018-08-27 16:23:25 +03:00
Alexander Alekhin
7f73b105ca core: std::string more changes 2018-08-27 15:41:01 +03:00
Vladislav Sovrasov
ae8dcdf40d core: get rid of built-in String type 2018-08-27 14:42:18 +03:00
Alexander Alekhin
335e61dc47 Merge pull request #12269 from cv3d:improvements/binding_python 2018-08-24 19:38:12 +00:00
Hamdi Sahloul
b5eb65e53e Improve Python binding generator with mappable types and phantom headers 2018-08-25 01:58:42 +09:00
Alexander Alekhin
d10a219833 Merge pull request #12298 from berak:java_matofrotatedrect 2018-08-24 15:54:27 +00:00
berak
bd7bf39b4b java: change MatOfRotatedRect to CV_32FC5 2018-08-24 14:20:36 +02:00
Suleyman TURKMEN
d8cd1d8fcc Merge pull request #12246 from sturkmen72:move_enums
* Update core.hpp

* Update imgproc.hpp

* Update ImgprocTest.java

* Update CameraCalibrator.java

* Update OnCameraFrameRender.java

* Update FindContoursDemo.java

* Update IntroductionToSVMDemo.java

* Update NonLinearSVMsDemo.java

* Update IntroductionToPCADemo.java

* Update Smoothing.java

* Update MainActivity.java

* Update CalcBackProjectDemo1.java

* Update CornerSubPixDemo.java

* Update CornerDetectorDemo.java

* Update GoodFeaturesToTrackDemo.java
2018-08-24 11:11:34 +03:00
Alexander Alekhin
ff2eface19 Merge pull request #12126 from alalek:reproducer_12121 2018-08-24 08:08:17 +00:00
Alexander Alekhin
29ce348c4d Merge pull request #12287 from berak:java_matofrotatedrect 2018-08-24 07:03:13 +00:00
berak
1c20a7f008 java: add a MatOfRotatedRect class 2018-08-23 12:01:36 +02:00
Alexander Alekhin
6356403964 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-08-22 17:38:51 +03:00
Alexander Alekhin
2c42361ecd build: fix build with defined CV_STATIC_ANALYSIS 2018-08-22 14:19:21 +03:00
Alexander Alekhin
6acabd1fd8 Merge pull request #12256 from alalek:core_intrin_fp16_fix 2018-08-21 12:47:08 +00:00
Alexander Alekhin
5ac9a2a7d0 Merge pull request #12219 from alalek:fix_assert_messages 2018-08-21 12:46:35 +00:00
Alexander Alekhin
7d4bb9428b Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-08-20 19:30:18 +03:00
Alexander Alekhin
67d46dfc6c core(intrin): restrict FP16 operations
Intrinsics must be effective, so don't declare FP16 type/operations if there is no native support.

- CV_FP16: supports load/store into/from float32
- CV_SIMD_FP16: declares FP16 types and native FP16 operations
2018-08-20 19:24:33 +03:00
Rostislav Vasilikhin
378cf2ab63 fixed filename slash processing 2018-08-20 18:02:49 +03:00
Alexander Alekhin
322c6b1ba4 Merge pull request #12235 from alalek:core_perf_scalar_tests 2018-08-18 20:45:47 +00:00
Alexander Alekhin
73d44c7881 Merge pull request #12172 from alalek:core_move_const_table 2018-08-17 14:03:01 +00:00
Alexander Alekhin
31fef14d76 Merge pull request #12136 from sturkmen72:update_documentation 2018-08-17 14:02:20 +00:00
Suleyman TURKMEN
c61bc3a0cb Update documentation and samples 2018-08-17 14:21:29 +03:00
Alexander Alekhin
b24fc6954d core(perf): fix addScalar test
keep the same type for passed Scalar values
2018-08-16 19:36:28 +03:00
Maksim Shabunin
f84eb3dde6 Fixed core headers installation in world builds 2018-08-16 17:16:02 +03:00
Alexander Alekhin
d2e08a524e core: repair CV_Assert() messages
Multi-argument CV_Assert() is accessible via CV_Assert_N() (with malformed messages).
2018-08-15 17:43:10 +03:00
Alexander Alekhin
94758c18de Merge pull request #12156 from cv3d:master 2018-08-14 14:29:17 +00:00
Alexander Alekhin
c1df9ad456 OpenCV version++
OpenCV 3.4.3
2018-08-14 14:10:37 +03:00
Alexander Alekhin
e76b375a31 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-08-13 18:57:57 +03:00
Alexander Alekhin
4910f16f16 core(libva): support YV12 too
Added to CPU path only.
OpenCL code path still expects NV12 only (according to Intel OpenCL extension)
2018-08-10 16:02:05 +03:00
Alexander Alekhin
5b3ac112fe core: move const tables outside of dispatched code
To avoid duplicates in binaries
2018-08-08 17:54:54 +03:00
Alexander Alekhin
4eb2966559 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-08-07 20:12:10 +03:00
Alexander Alekhin
a56b221559 core: cv::Range() ostream write operator
remove from DNN module headers
2018-08-07 20:03:21 +03:00
Alexander Alekhin
7453a6938a core(test): extra tests/fixes for merge/split (#12171)
* core(test): merge hang test

* core(merge/split): fix intrin optimization
2018-08-07 18:11:05 +03:00
Maksim Shabunin
f0f652f9e9 Merge pull request #12161 from alalek:cache_dump_neighbor_directories_for_cleanup 2018-08-07 12:09:39 +00:00
Hamdi Sahloul
293facbae7 Support Python binding for CUDA functionalities 2018-08-07 15:48:12 +09:00
Alexander Alekhin
5c3880d302 core(intrin): avoid symbols duplication from SIMD128/256 cases
All vx_call() must be wrapped into own simd128/simd256/simd512 namespace

```
namespace CV__SIMD_NAMESPACE {
... vx_call declaration is here ...
}
```
2018-08-06 19:29:46 +00:00
Alexander Alekhin
9eaa583bfb core: dump neighbour cache directories (from old OpenCV versions)
- use '3.4.x' cache name for current maintenance series (there are no serious changes between releases)
- message is shown only once during creation of new cache directory
- use OPENCV_CACHE_SHOW_CLEANUP_MESSAGE=0 to hide this warning
2018-08-06 19:05:35 +03:00
Vadim Pisarevsky
23022f3ffb Merge pull request #12121 from maver1:amatyuko/sse2_convert_with_saturation_fix 2018-08-06 14:26:37 +00:00
Alexander Alekhin
b4cea8d6d1 Merge pull request #12120 from alalek:core_test_intrin_dispatched 2018-08-03 17:07:17 +00:00
Alexander Alekhin
3082ea82f9 core(merge): fix SIMD loop head processing 2018-08-02 17:23:19 +03:00
Alexander Alekhin
f2e1710dd5 core(test): regression test for 12121 2018-08-01 19:42:54 +03:00
amatyuko
3ea2586a5a Fix for SSE2 intrinsics problem in the part of saturation arithmetic processing during 32s->16u packed conversion -
for some big negative values less than -INT_MAX+32767 the sign of the numbers is lost due to overflow that leads to
incorrect saturation to MAX value, instead of zero.
The issue is not reproduced with CV_ENABLED_INTRINSICS=OFF
2018-08-01 16:04:08 +03:00
Alexander Alekhin
3f302cabb8 core(test): intrinsic tests for all dispatched CPU optimizations
- tests for both SIMD128 / SIMD256
- different dispatched + baseline(SIMD128) intrinsics
2018-08-01 13:50:42 +03:00
Alexander Alekhin
82c477c9f7 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-07-31 21:35:00 +03:00
luz.paz
2003eb1b9b Misc. typos
Found via `codespell -q 3 -I ../opencv-whitelist.txt --skip="./3rdparty"`
2018-07-31 18:44:23 +03:00
Alexander Alekhin
7e71b1079e Merge pull request #12103 from alalek:ocl_fix_crash 2018-07-31 14:55:43 +00:00
Sayed Adel
bb82cdc928 core:test Fix fp16 build if AVX2 sets as baseline 2018-07-31 10:02:20 +02:00
Alexander Alekhin
28d0e97c09 Merge pull request #12004 from mshabunin:more-asserts 2018-07-30 16:42:09 +00:00
Alexander Alekhin
5bde800ee3 Merge pull request #12088 from alalek:ocl_callback_catch_exceptions 2018-07-30 16:33:41 +00:00
Alexander Alekhin
dbf3362c4d Merge pull request #12056 from seiko2plus:coreExpandTests 2018-07-30 16:23:11 +00:00
Alexander Alekhin
e90e398e7a core(ocl): do not split refcount operations / compare
- check result from CV_XADD() directly
- decrease urefcount after unmap() call only
2018-07-30 15:42:09 +03:00
miaow1988
2988260107 Fixed the int size overflow bug of cv::Mat.push_back().
Changed the type of variable *r* from int to size_t.
This change makes sure that a valid result of std::max(r + delta,
(r*3+1)/2) can be passed into the reserve function.
2018-07-30 18:36:19 +08:00
Sayed Adel
6499263b41 core:test Expand hal_intrin tests to support SIMD256 2018-07-30 08:50:50 +02:00
Sayed Adel
47202b3349 core:avx2 fix unaligned store for v_store_interleave v_uint32x8-3ch 2018-07-29 18:22:46 +02:00
Alexander Alekhin
89528d7c3a core(ocl): don't expose exceptions from OpenCL callback
to avoid silent crashes of OpenCL worker threads.
2018-07-28 10:29:26 +00:00
Maksim Shabunin
1165fdd0f5 Added more strict checks for empty inputs to compare, meanStdDev and RNG::fill 2018-07-26 18:06:38 +03:00
Maksim Shabunin
597db69151 ts: test case list is printed after cmd line parsing, refactored 2018-07-26 16:43:43 +03:00
Vadim Pisarevsky
43820d89b4
further improvements in split & merge; started using non-temporary store instructions (#12063)
* 1. changed static const __m128/256 to const __m128/256 to avoid wierd instructions and calls inserted by compiler.
2. added universal intrinsics that wrap MOVNTPS and other such (non-temporary or "no cache" store) instructions. v_store_interleave() and v_store() got respective flags/overloaded variants
3. rewrote split & merge to use the "no cache" store instructions. It resulted in dramatic performance improvement when processing big arrays

* hopefully, fixed some test failures where 4-channel v_store_interleave() is used

* added missing implementation of the new universal intrinsics (v_store_aligned_nocache() etc.)

* fixed silly typo in the new intrinsics in intrin_vsx.hpp

* still trying to fix VSX compiler errors

* still trying to fix VSX compiler errors

* still trying to fix VSX compiler errors

* still trying to fix VSX compiler errors
2018-07-26 12:04:28 +03:00
Alexander Alekhin
9787ab598b Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-07-24 22:48:54 +03:00
Alexander Alekhin
5336b9ad19 Merge pull request #12048 from mshabunin:fix-static-2 2018-07-24 19:45:27 +00:00
Vadim Pisarevsky
9c7040802c
converted split() & merge() to wide univ intrinsics (#12044)
* fixed/updated v_load_deinterleave and v_store_interleave intrinsics; modified split() and merge() functions to use those intrinsics

* fixed a few compile errors and bug in v_load_deinterleave(ptr, v_uint32x4& a, v_uint32x4& b)

* fixed few more compile errors
2018-07-24 17:27:56 +03:00
Maksim Shabunin
cbb1e867e5 More issues found by static analysis 2018-07-24 16:04:42 +03:00
Maksim Shabunin
e0603bb45f Fixed several issues found by static analysis tools 2018-07-23 17:22:47 +03:00
Alexander Alekhin
767b31cfbf Merge pull request #12029 from tomoaki0705:fixBuildVS2013BinarySuffix 2018-07-20 11:27:27 +00:00
Tomoaki Teshima
18abe54497 fix build error on Visual Studio 2013
* replace binary literal prefix to hexadecimal literal prefix
2018-07-20 18:09:17 +09:00
Alexander Alekhin
7198b9e461 Merge pull request #12019 from mshabunin:static-debug-assert 2018-07-19 15:50:33 +00:00
Alexander Alekhin
7e9b5d9e30 Merge pull request #12006 from mshabunin:static-debug-assert 2018-07-19 09:36:36 +00:00
Alexander Alekhin
e526c4bfe4 core(test): remove verbose messages 2018-07-18 16:09:27 +03:00
Maksim Shabunin
fe806878be Enable debug assertions for static analysis builds 2018-07-18 15:53:16 +03:00
Tomoaki Teshima
9df7517dea fix build error on Visual Studio 2013 and earlier 2018-07-18 12:56:02 +03:00
Alexander Alekhin
4560909a5e Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-07-17 19:27:48 +03:00
Alexander Alekhin
f3ee07ca11 Merge pull request #11986 from alalek:build_eliminate_gcc8_warnings 2018-07-17 15:41:36 +00:00
Alexander Alekhin
7cc84ce8ab Merge pull request #11984 from mshabunin:fix-static-1 2018-07-17 15:40:48 +00:00
Alexander Alekhin
0a41b3df45 Merge pull request #11990 from alalek:clone_nodiscard_attribute 2018-07-17 15:34:08 +00:00
Maksim Shabunin
c473718bc2 Check for empty Mat in compare, operator= and RNG::fill, fixed related tests 2018-07-17 17:50:50 +03:00
Maksim Shabunin
1da46fe6fb Fixed issues found by static analysis (mostly DBZ) 2018-07-17 16:14:54 +03:00
Pavel Rojtberg
3f65924c45 core: FileStorage - add support for writing vector<String> with bindings (#11883)
* core: FileStorage - add support for writing vector<String> with bindings

* python: extend persistence test for string sequences
2018-07-17 13:38:48 +03:00
Vadim Pisarevsky
f058b5fb1e
Wide univ intrinsics (#11953)
* core:OE-27 prepare universal intrinsics to expand (#11022)

* core:OE-27 prepare universal intrinsics to expand (#11022)

* core: Add universal intrinsics for AVX2

* updated implementation of wide univ. intrinsics; converted several OpenCV HAL functions: sqrt, invsqrt, magnitude, phase, exp to the wide universal intrinsics.

* converted log to universal intrinsics; cleaned up the code a bit; added v_lut_deinterleave intrinsics.

* core: Add universal intrinsics for AVX2

* fixed multiple compile errors

* fixed many more compile errors and hopefully some test failures

* fixed some more compile errors

* temporarily disabled IPP to debug exp & log; hopefully fixed Doxygen complains

* fixed some more compile errors

* fixed v_store(short*, v_float16&) signatures

* trying to fix the test failures on Linux

* fixed some issues found by alalek

* restored IPP optimization after the patch with AVX wide intrinsics has been properly tested

* restored IPP optimization after the patch with AVX wide intrinsics has been properly tested
2018-07-16 18:57:24 +03:00
Alexander Alekhin
481829a81b Merge pull request #11957 from alalek:issue_11956 2018-07-16 15:54:34 +00:00
Alexander Alekhin
b0ee5d9023 core: CV_NODISCARD macro with semantic of [[nodiscard]] attr
[[nodiscard]] is defined in C++17.
There is fallback alias for modern GCC / Clang compilers.
2018-07-16 18:03:32 +03:00
Alexander Alekhin
d5951bc033 build: eliminate GCC8 warnings 2018-07-16 17:24:12 +03:00
Alexander Alekhin
a5e8ae2183 Merge pull request #11969 from alalek:core_Matx_inv_solve_templates 2018-07-16 14:18:12 +00:00
Alexander Alekhin
50751ae6ff Merge pull request #11967 from catree:add_tutorial_ml_java_python 2018-07-16 09:24:32 +00:00
Alexander Alekhin
5e31c82b5b Merge pull request #11980 from berak:core_lda_dataAsRow 2018-07-15 14:32:15 +00:00
berak
4382bdc859 core: remove unused dataAsRow flag from LDA 2018-07-15 11:32:00 +02:00
Kuang Fangjun
2b6aa50b81 avoid negative index. 2018-07-14 16:05:29 +08:00
Alexander Alekhin
3c74fde349 core: eliminate 'if' logic from Matx::inv()/solve()
- 'if' logic is moved into templates.
- removed unnecessary cv::Mat objects creation.
- fixed inv() test (invA * A == eye)
- added more Matx tests to cover all defined template specializations
2018-07-13 20:09:01 +03:00
Alexander Alekhin
23fc96e98f Merge pull request #11955 from terfendail:matx_solve_fix2 2018-07-13 15:15:03 +00:00
catree
4dc7e617a4 Add overloaded cv::PCACompute() that returns also the eigenvalues. Useful for Java and Python OpenCV where PCA is not available. 2018-07-13 15:05:54 +02:00
Alexander Alekhin
5385086fef core: solve(): add check for passed 'method' values 2018-07-13 15:15:48 +03:00
Alexander Alekhin
33b7028be2 core: use "explicit" for Matx() ctor 2018-07-12 19:50:56 +00:00
Vitaly Tuzov
850a8577b2 Fixed unreachable code warnings for Matx::solve() 2018-07-12 19:19:51 +03:00
Vitaly Tuzov
d0a3686812 Merge pull request #11904 from terfendail/matx_solve_fix
Fixed Matx::solve function for non-square matrixes (#11904)
2018-07-11 22:00:57 +03:00
Alexander Alekhin
fa66c6b797 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-07-11 12:35:10 +03:00
catree
d7bd662c95 Add a note in the documentation about Mat::ones and mat::eye. With multi-channels type (e.g. CV_8UC3), only the first channel is treated. 2018-07-10 15:35:46 +02:00
Alexander Alekhin
2da96be217 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-07-09 19:44:51 +03:00
Alexander Alekhin
7ba66a1682 Merge pull request #11703 from alalek:c_api_calib3d_chessboard_detector 2018-07-09 15:37:26 +00:00
Alexander Alekhin
0fd74fa177 Merge pull request #11911 from berak:core_fix_autobuffer_opengl 2018-07-08 13:50:35 +00:00
berak
45677819e8 core: fix autobuffer usage in opengl.cpp 2018-07-08 09:51:06 +02:00
Arnaud Brejeon
43f821afb9 Merge pull request #11899 from arnaudbrejeon:moveable_types
Add missing constructors and operator= (#11899)
2018-07-06 23:36:08 +03:00
Alexander Alekhin
06fc77610b core(hal): eliminate build warnings 2018-07-06 13:00:41 +03:00
Alexander Alekhin
c7fc563dc0 calib3d: chessboard detector - replace OpenCV C API 2018-07-05 13:09:10 +03:00
Alexander Alekhin
b09a4a98d4 opencv: Use cv::AutoBuffer<>::data() 2018-07-04 19:11:29 +03:00
Alexander Alekhin
135ea264ef core: align cv::AutoBuffer API with std::vector/std::array
- added .data() methods
- added operator[] (int i)
- extend checks support to generic and debug-only cases
- deprecate existed operator* ()
2018-07-04 19:10:38 +03:00
Alexander Alekhin
bd8c8e720e Merge tag '3.4.2' 2018-07-04 14:08:11 +03:00
Alexander Alekhin
9e1b1e5389 OpenCV 3.4.2 2018-07-04 14:05:47 +03:00
Vadim Pisarevsky
051b40f956
a part of PR #11364 (extended findNonZero & PSNR) (#11837)
* a part of https://github.com/opencv/opencv/pull/11364 by Tetragramm. Rewritten and extended findNonZero & PSNR to support more types, not just 8u.

* fixed compile & doxygen warnings

* fixed small bug in findNonZero test
2018-06-26 17:10:00 +03:00
Vadim Pisarevsky
46def2fdc1 Merge pull request #11757 from freiling:master 2018-06-25 12:53:07 +00:00
Philipp Hasper
577546ccd9
Added Size_::aspectRatio 2018-06-15 14:59:54 +02:00
Forrest Reiling
e858c21e1f Fix system.cpp includes on Fuchsia. 2018-06-13 12:14:53 -07:00
Alexander Alekhin
0d6518aaa0 Merge remote-tracking branch 'upstream/3.4' into merge-3.4
OpenCV FFmpeg wrapper download links are preserved from ffmpeg/master branch
2018-06-13 19:34:44 +03:00
yuki takehara
4fe648b15c Merge pull request #11706 from take1014:setTo_Nan_10507
* setTo_#10507

* setTo_Nan_10507

* setTo: update check / test for NaNs
2018-06-12 18:05:44 +00:00
Alexander Alekhin
d69a327d6d OpenCV version++
OpenCV 3.4.2
2018-06-10 10:20:38 +03:00
Sayed Adel
e0d28aa893 core:ppc Fix java CoreTest/testMahalanobis (#11677)
* core:ppc Fix java CoreTest/testMahalanobis

* core:ppc Fix warning unused variable on clang
2018-06-07 14:16:48 +03:00
Alexander Alekhin
4091ced5ab core: set default logger level to 'warning' in Release builds
should hide unnecessary 'info' messages
2018-06-05 18:39:47 +03:00
Alexander Alekhin
45dd575ed2 Merge remote-tracking branch 'upstream/3.4' into merge-3.4
Revert "documentation: avoid links to 'master' branch from 3.4 maintenance branch"
This reverts commit 9ba9358ecb.

Revert "documentation: avoid links to 'master' branch from 3.4 maintenance branch (2)"
This reverts commit f185802489.
2018-06-04 19:26:10 +03:00
Vadim Pisarevsky
ccbc0b91ea Merge pull request #11654 from alalek:issue_11648 2018-06-04 10:22:44 +00:00
Paul Jurczak
bd7bad02a0 convertFp16 documentation edit (2)
If this seems too wordy, take into account a new user who tries to find out extent of FP16 support in OpenCV.
2018-06-01 04:15:21 -06:00
Alexander Alekhin
03edddba47 core: drop unnecessary duplicate check 2018-06-01 12:31:48 +03:00
Vadim Pisarevsky
7d19bd6c19 Merge pull request #11634 from vpisarev:empty_mat_with_types_2
fixes handling of empty matrices in some functions (#11634)

* a part of PR #11416 by Yuki Takehara

* moved the empty mat check in Mat::copyTo()

* fixed some test failures
2018-05-31 16:36:39 +00:00
Alexander Alekhin
9ba9358ecb documentation: avoid links to 'master' branch from 3.4 maintenance branch 2018-05-31 16:45:18 +03:00
Alexander Alekhin
5c80763a71 Merge pull request #11601 from alalek:calib3d_replace_findContours 2018-05-30 15:35:49 +00:00
Alexander Alekhin
d70e01b635 calib3d: chess board - replace to cv::findContours() 2018-05-29 14:16:20 +00:00
Alexander Alekhin
549b5df225 build: workaround issues with C compilation mode
- cvdef.h + cvRound (double only)
- highgui_c.h
2018-05-28 18:07:23 +03:00
Alexander Alekhin
0f298a4203 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-05-28 11:22:55 +00:00
Namgoo Lee
79af0bfccf NPP : NppStreamHandler fix 2018-05-23 15:54:39 +09:00
Alexander Alekhin
db88cd1b25 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-05-21 16:20:14 +03:00
Alexander Alekhin
faafb3152a Merge pull request #11550 from tomoaki0705:fixCudaAsync 2018-05-20 20:59:34 +00:00
Tomoaki Teshima
e2c787884d fix the test failure of CUDA_Arithm/MeanStdDev 2018-05-20 19:38:02 +09:00
Alexander Alekhin
45b92aebe5 Merge pull request #11523 from alalek:bigdata_tests 2018-05-17 14:53:19 +00:00
Alexander Alekhin
f42fca9f49 cuda: avoid unnecessary cudaStreamSynchronize() call
resolves #11511
2018-05-15 18:38:22 +03:00
Alexander Alekhin
703f79b757 tests: add "bigdata" tests 2018-05-15 15:56:26 +03:00
Vadim Pisarevsky
e0dbe5cfcc
handle huge matrices correctly (#11505)
* make sure that the matrix with more than INT_MAX elements is marked as non-continuous, and thus all the pixel-wise functions process it correctly (i.e. row-by-row, not as a single row, where integer overflow may occur when computing the total number of elements)
2018-05-14 15:29:14 +03:00
Alexander Alekhin
68c92908d5 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-05-14 15:17:35 +03:00
Alexander Alekhin
8356a6b6ab Merge pull request #11442 from cclauss:print-function 2018-05-11 13:26:04 +00:00
Alexander Alekhin
51e543050c Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-05-10 18:19:56 +03:00
Alexander Alekhin
352510cc19 core: fix ARM intrinsincs
'0' is specific case (make no sence as a standalone operation),
but it can be useful in template-based programming.

reverts commit: a58c9d4d63
2018-05-09 23:31:02 +03:00
Tomoaki Teshima
a58c9d4d63 arm: fix build error of v_rotate_left
* remove meaningless tests
2018-05-08 00:35:18 +09:00
Sayed Adel
ed19da21ab core:ppc Several improvements on VSX(2)
* add v_float64x2 support to v_rotate_*
* treat float vector in v_check_any, vec_any_lt as int vector
* add test case for v_rotate_left
2018-05-04 23:09:38 +00:00
cDc
f2fbfd7a10 fix bug in Matx::inv() 2018-05-05 10:30:58 +03:00
Alexander Alekhin
000a13b6a3 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-05-03 14:30:38 +00:00
cclauss
05c1a3d160 print() is a function in Python 3 2018-05-03 07:12:12 +02:00
Alexander Alekhin
083b08742d Merge pull request #11406 from alalek:core_matsize_dims 2018-04-28 14:38:42 +00:00
yuki takehara
4934f7c5a4 Merge pull request #11285 from take1014:core_6125
* Resolves 6125

* Fix test code

* Delete unnecessary code
2018-04-28 14:14:10 +03:00
Alexander Alekhin
8c349ff8ff core: added MatSize::dims() method
to avoid accessing of 'p[-1]' (static code analysers dislike this)
2018-04-27 16:57:29 +03:00
Alexander Alekhin
8d7ccd29fe Merge pull request #11401 from exoson:livestitch 2018-04-27 13:47:42 +00:00
Alexander Alekhin
856a07711b core: disabled IPP AVX512 normL1(a, b, mask)
for cv::Mat with type=16UC3 and width < 16
2018-04-27 12:57:53 +03:00
exoson
058299cc66 Optimize MultiBandBlender to run faster 2018-04-27 10:48:13 +03:00
Alexander Alekhin
1031dfe4e8 Merge pull request #11402 from alalek:build_warnings 2018-04-26 19:04:37 +00:00
Alexander Alekhin
39e2d64b84 core: fix icc std::exception_ptr detection
std::exception_ptr requires enabled C++11 mode
2018-04-26 17:46:25 +03:00
Alexander Alekhin
f708a11f0f build: fix warnings 2018-04-26 14:13:01 +03:00
Alexander Alekhin
57dad685d1 core: disabled IPP AVX2 normL1(a, b, mask)
for cv::Mat with width < 16
2018-04-26 13:35:25 +03:00
Alexander Alekhin
dfa04a11bb core: norm with mask 16UC3 regression test 2018-04-26 13:35:25 +03:00
Alexander Alekhin
4e83f4c579 core: drop cv::errorNoReturn()
replaced to cv::error()
2018-04-25 15:07:18 +03:00
Alexander Alekhin
cd2b188c9a Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-04-24 18:13:06 +03:00
Alexander Alekhin
84db82a329 build: fix warnings 2018-04-24 16:15:22 +03:00
Alexander Alekhin
6b581c4e51 build: unreachable code after CV_Error() (part 2) 2018-04-24 16:03:40 +03:00
Alexander Alekhin
576d2dbac0 refactor: don't use CV_ErrorNoReturn() internally 2018-04-24 15:38:42 +03:00
Alexander Alekhin
909a25571e Merge pull request #11332 from alalek:v_select_x86 2018-04-24 11:44:33 +00:00
Vadim Pisarevsky
5c57e6bdb0 Merge pull request #11380 from vpisarev:faster_interleave_deinterleave 2018-04-24 11:30:18 +00:00
Alexander Alekhin
4d7d630e92 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-04-23 18:45:02 +03:00
Vadim Pisarevsky
4001e310f5 improved performance of v_load_deinterleave(8uC3) & v_store_interleave(8uC3) intrinsics when using SSSE3 instructions. 2018-04-23 18:06:06 +03:00
Alexander Alekhin
e82af627ed Merge pull request #11376 from alalek:cv_error_set_terminate 2018-04-23 14:51:55 +00:00
Alexander Alekhin
4cbec82ac1 build: unreachable code after CV_Error() 2018-04-23 15:45:57 +03:00
Alexander Alekhin
10c9227136 core: CV_Error with set_terminate() on Windows
To dump contents of the last OpenCV error
2018-04-23 15:09:41 +03:00
Alexander Alekhin
65726e4244 core(hal): improve v_select() SSE4.1+
v_select 'mask' is restricted to these values only: 0 or ~0 (0xff/0xffff/etc)
mask in accuracy test is updated.
2018-04-23 13:17:53 +03:00
Vadim Pisarevsky
a312380367 Merge pull request #11357 from alalek:disable_errors_dump 2018-04-23 10:06:43 +00:00
berak
d89fb163c6 core: add a check for empty input in inRange() 2018-04-21 12:54:52 +02:00
Ryan Wong
6f675ae75b Merge pull request #11304 from kinchungwong:issue_11242_intrin_cv34x_nocpp11
* Issue 11242 intrinsics v_extract, v_rotate improvement, branch 3.4, without C++11 (remove type restrictions for SSE2, use PALIGNR on SSSE3, compile to no-op when imm is 0 or nlanes).

* fix whitespace

* Fix #11242 (NEON intrinsics v_rotate...) branch 3.4
Separate macro expansion OPENCV_HAL_IMPL_NEON_SHIFT_OP for bitwise shifts for integers, from macro expansion OPENCV_HAL_IMPL_NEON_ROTATE for lane rotations. Bitwise shifts do not apply to floats, but lane-rotations can apply to both.

* fix whitespace

* Fix #11242 compile error (VSX intrinsics v_rotate(a)) branch 3.4 no-c++11
2018-04-20 18:43:47 +03:00
Alexander Alekhin
52172e6f92 Merge pull request #11361 from alalek:ocl_use_host_mem_ptr_workaround 2018-04-20 14:49:37 +00:00
Simon Que
705464258e Merge pull request #11353 from eecsninja:3.4
* Fix CV_Asserts with negation of strings

{!"string"} causes some compilers to throw a warning.

The value of the string is not that important -- it's only for printing
the assertion message.

Replace these calls with:

  CV_Error(Error::StsError, "string")

to suppress the warning.

* remove unnecessary 'break' after CV_Error()
2018-04-20 15:31:47 +03:00
Alexander Alekhin
d76b41b50e ocl: CL_MEM_USE_HOST_PTR workaround test 2018-04-20 14:58:42 +03:00
Alexander Alekhin
2f9cbc2e57 core: disable errors dump
Error messages are available via exceptions
2018-04-20 12:33:20 +03:00
Alexander Alekhin
12e8e33144 build: enable -Wimplicit-fallthrough warning for OpenCV modules 2018-04-19 19:54:03 +03:00
Alexander Alekhin
647eb243ae core: CV_Error is marked as 'noreturn' 2018-04-19 18:04:12 +03:00
Alexander Alekhin
fa3cb03f62 core(hal): v_min()/v_max() use SSE4.1 intrinsics 2018-04-18 19:43:20 +03:00
Alexander Alekhin
97882d03cc core: fix FP16 conversion with CV_DISABLE_OPTIMIZATION option
Reproducer:
    cmake -DCPU_BASELINE=AVX2 -DCV_DISABLE_OPTIMIZATION=ON ...
2018-04-18 14:13:03 +03:00
Alexander Alekhin
59b413c8a1 imgproc(ipp): disable parallel GaussianBlur 2018-04-16 13:31:52 +03:00
Alexander Alekhin
4b2d1aaeea Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-04-16 12:41:47 +03:00
Alexander Alekhin
225c75e4a1 Merge pull request #11306 from alalek:opencl_trace_messages 2018-04-14 11:36:19 +00:00
Alexander Alekhin
cfaca4327b Merge pull request #11169 from tomoaki0705:universalRemap 2018-04-13 13:24:06 +00:00
Tomoaki Teshima
a82e70cd40 remove raw SSE2/NEON implementation from imgwarp.cpp
* use universal intrinsic instead of raw intrinsic
  * add 2 channels de-interleave on x86 platform
  * add v_int32x4 version of v_muladd
  * add accumulate version of v_dotprod based on the commit from seiko2plus on bf1852d
  * remove some verify check in performance test
  * avoid the out of boundary access and keep the performance
2018-04-13 21:19:16 +09:00
Alexander Alekhin
670ef403b0 ocl: improve trace messages of OpenCL calls 2018-04-13 14:54:27 +03:00
Alexander Alekhin
2129db6e91 Merge pull request #11297 from seiko2plus:VSXImprovements_1 2018-04-12 10:57:39 +00:00
Sayed Adel
56ec10bfa2 core:ppc Several improvements on VSX(1)
* remove unnecessary defines from vsx_utils
 * fix v_load_expand, load lower 64bit
 * use vec_ld, vec_st with alignment load/store on all types except 64bit
 * map v_extract to v_rotate_right
 * update license header
 * enable VSX by default on clang since #11167
2018-04-11 19:21:22 +00:00
Vadim Pisarevsky
59221296c0 Merge pull request #10978 from alalek:cv_check_macros 2018-04-11 15:17:27 +00:00
Tomoaki Teshima
779a42678d fix CUDA build crash
* add --std=c++11 flag to nvcc definition
  * remove not used abs functions
2018-04-11 17:19:09 +09:00
Alexander Alekhin
c917be2189 next(core): use C++11 classes for cv::Mutex/cv::AutoLock 2018-04-10 18:09:54 +03:00
Alexander Alekhin
250941bd47 next: drop WITH_CSTRIPES 2018-04-10 18:09:54 +03:00
Alexander Alekhin
5b17a60dde next: drop HAVE_TEGRA_OPTIMIZATION/TADP 2018-04-10 18:09:54 +03:00
Alexander Alekhin
e567135ed3 next: force C++11 features unconditionally: CV_CXX_MOVE_SEMANTICS/CV_CXX_STD_ARRAY 2018-04-10 18:09:54 +03:00
Alexander Alekhin
98c8584b88 next: drop CV_CXX11 conditions
define itself is still here for compatibility
2018-04-10 18:09:54 +03:00
Alexander Alekhin
2b2fa58f97 next: drop DISABLE_OPENCV_24_COMPATIBILITY 2018-04-10 18:09:53 +03:00
Alexander Alekhin
2d54fed3cc next: OPENCV_ABI_COMPATIBILITY
drop change:
    template<typename _Tp2> operator Vec<_Tp2, 3>() const;
because it break builds due ambiguous errors
2018-04-10 18:09:53 +03:00
Alexander Alekhin
964a4d75b4 next: version.hpp 2018-04-10 18:09:53 +03:00
Alexander Alekhin
fa4b9e80e2 Merge pull request #11275 from alalek:issue_11274 2018-04-10 11:28:21 +00:00
Alexander Alekhin
567ae61e78 core: add "check" macros 2018-04-09 21:24:02 +03:00
Alexander Alekhin
b76ce0e0a4 Merge pull request #11253 from mshabunin:decrease-tbb-dependency 2018-04-09 16:03:34 +00:00
Alexander Alekhin
b82bec88d9 Merge pull request #11271 from alalek:tbb_build_warning 2018-04-09 15:53:26 +00:00
Alexander Alekhin
7dc162cb42 core: fix mm_pause() for non-SSE i386 builds
replaced to safe binary compatible 'rep; nop' asm instruction
2018-04-09 18:37:35 +03:00
Vadim Pisarevsky
474a23bda5 Merge pull request #11170 from alalek:test_fixed_type 2018-04-09 14:53:43 +00:00
Vadim Pisarevsky
fa5a6bfa02 Merge pull request #11251 from mshabunin:add-runtime-version 2018-04-09 13:24:29 +00:00
Vadim Pisarevsky
20334e3f09 Merge pull request #11264 from K-Shinotsuka:issue39 2018-04-09 13:20:48 +00:00
Alexander Alekhin
854ab48de0 tbb: fix build warnings -Wshadow 2018-04-09 12:58:09 +03:00
Alexander Alekhin
8dacbe7584 android: std::exception_ptr is not available on some platforms (even with enabled C++11) 2018-04-09 12:54:57 +03:00
Vadim Pisarevsky
4617758053 Merge pull request #11247 from lopespt:fix_issue_10506 2018-04-09 09:39:17 +00:00
Maksim Shabunin
d2cff38db6 Added interface to check library version during runtime 2018-04-09 12:30:39 +03:00
k-shinotsuka
fbdcc0e8e4 add universal intrinsics for HSV2RGB_f 2018-04-08 01:47:22 +09:00
Dmitry Kurtaev
73ca194313 Fix convertFp16 in JavaScript build 2018-04-07 09:44:43 +03:00
Alexander Alekhin
23d866ad40 Merge pull request #11237 from alalek:cuda_refactor_memorypool 2018-04-06 15:37:37 +00:00
Maksim Shabunin
b88609a921 Reduced direct TBB dependencies 2018-04-06 14:21:15 +03:00
lopespt
c17ce1a0af Solves issue #10506 2018-04-05 20:25:32 -03:00
Alexander Alekhin
a87a5dfdb3 Merge pull request #11192 from terfendail:setto_fix 2018-04-05 20:25:34 +00:00
Alexander Alekhin
e20fb7f429 Merge pull request #11197 from alalek:parallel_propagate_exception 2018-04-05 20:24:22 +00:00
Alexander Alekhin
7818071ba2 cuda: eliminate part of build warnings 2018-04-05 17:53:22 +03:00
Alexander Alekhin
82ba3ac894 cuda: refactor MemoryPool
- make non-copyable (aligns inner mutex semantic to std::mutex)
- getMemoryPool() returns reference instead of pointer (NULL is not expected here)
2018-04-05 16:04:37 +03:00
Alexander Alekhin
c2fb4debc5 Merge pull request #11224 from alalek:fix_core_min_avx2 2018-04-05 10:37:31 +00:00
Alexander Alekhin
8f7e7cd343 Merge pull request #11071 from alalek:issue_11061_fix_error_message 2018-04-05 10:15:04 +00:00
yuki takehara
d57e5c31c0 Merge pull request #11214 from take1014:core_9720
* fix #9720

* Add regression test

* Fix calculation method for scale
2018-04-04 18:36:02 +03:00
Alexander Alekhin
45a69ebec8 core: fix AVX2 min implementation 2018-04-04 17:38:58 +03:00
Vitaly Tuzov
ccd16f107d Fixed IPP based implementation of setTo() for infinity value 2018-04-04 16:05:22 +03:00
Alexander Alekhin
6f69800d0c core: propagate parallel_for() exceptions 2018-03-30 16:24:31 +03:00
Alexander Alekhin
2fb4812f6d Merge pull request #11194 from ltqusst:fix_10557 2018-03-30 09:30:43 +00:00
ltqusst
0d646490f5 Fix #10557
Fix overflow bugs in conversion from NV12 VA-surface/D3D11texture2D to OpenCL UMat
2018-03-30 16:32:15 +08:00
Alexander Alekhin
8c4b5b6a70 core(test): parallel_for test with exception 2018-03-29 16:59:51 +03:00
Alexander Alekhin
87498bc6d4 cmake: workaround CPATH ipp_iw issue
CPATH entries are processed before any -isystem:
https://gcc.gnu.org/onlinedocs/cpp/Environment-Variables.html
2018-03-28 18:43:28 +03:00
Alexander Alekhin
9111538bfb core: apply CV_OVERRIDE/CV_FINAL 2018-03-28 17:57:59 +03:00
Alexander Alekhin
84980741a8 core: add CV_OVERRIDE/CV_FINAL macros 2018-03-28 17:57:58 +03:00
Alexander Alekhin
167034fb04 Merge pull request #11098 from dkurt:dnn_native_inf_engine 2018-03-28 14:52:08 +00:00
Dmitry Kurtaev
2f3a9ba1d4 Update OpenCVDetectInferenceEngine.cmake 2018-03-28 16:34:37 +03:00
Vadim Pisarevsky
1097d0e810 Merge pull request #11072 from alalek:explicit_autobuffer 2018-03-28 12:57:25 +00:00
Vadim Pisarevsky
6b041c8aeb Merge pull request #11137 from alalek:core_fix_mat_ctor 2018-03-28 12:39:49 +00:00
LaurentBerger
03eb463f1c Solves #11156 (#11160)
* Solves #11156

* Check file size for all file format. Disable APPEND if file is empty

* Add test for APPEND mode
2018-03-28 15:35:38 +03:00
Collen Jones
687ccdf8db Fix link to Hershey fonts 2018-03-27 20:11:48 -07:00
Alexander Alekhin
7d8f1dde26 core(persistence): disable checks for base64 streams 2018-03-27 17:02:04 +03:00
Alexander Alekhin
f4c4b01455 core: added checks and "fixit" items for persistence parsers
To raise errors with proper messages of the problems.
2018-03-27 16:19:43 +03:00
Alexander Alekhin
9e0dee1259 Merge pull request #11112 from alalek:cmake_src_include_fix 2018-03-27 13:06:48 +00:00
Alexander Alekhin
d1311518a3 core: test-sample for FIXED_TYPE demonstration
with implementation of functions with multiple output formats
2018-03-27 15:41:41 +03:00
Vadim Pisarevsky
6e13ffe162 Merge pull request #11159 from alalek:samples_avoid_legacy_api 2018-03-27 10:05:35 +00:00
Alexander Alekhin
7f9253ea0a samples: avoid using of legacy C-like API
- CV_RGB() macro is moved into opencv2/imgproc.hpp from imgproc_c.h
- samples/cpp/filestorage_base64.cpp is dropped
2018-03-26 13:42:35 +03:00
Namgoo Lee
a8f86af633 Update GpuMat, GpuMat::download, GpuMat::upload documentation 2018-03-26 10:59:05 +09:00
Alexander Alekhin
4378e8fcc0 core: fix cv::Mat constructor 2018-03-22 15:35:54 +03:00
Tomoaki Teshima
6c25351049 make the asynchronous call to NPP safe
* Stop calling nppSetStream
2018-03-22 21:33:51 +09:00
Alexander Alekhin
fed22f2f5c Merge pull request #11074 from alalek:android_log_messages 2018-03-20 20:40:54 +00:00
Alexander Alekhin
6c051a55e5 cmake: don't add include <module>/src directory to avoid conflicts
during opencv_world builds
2018-03-19 11:14:15 +03:00
Aleksandr Tischenko
22ecdd16ef Merge pull request #11101 from lamantine:fix_11100
* fixed bug #11100 Integer overflow in kmeans

* fixed integer overflow in other divUp-s in kmeans code
fixed warning about size_t to double conversion
2018-03-18 15:11:42 +03:00
Alexander Alekhin
ab110c0ad1 Merge pull request #10979 from dkurt:unite_dnn_samples 2018-03-14 14:33:49 +00:00
Alexander Alekhin
8781ee971c core: write log messages via __android_log_print (logcat) too 2018-03-14 17:24:29 +03:00
miqlas
f3a9f13cb4 Merge pull request #10984 from extrowerk:advanced_haiku_patches
* Haiku supporting patches

* Revert uneeded changes

* Whitespace cleanup
2018-03-14 17:09:10 +03:00
Alexander Alekhin
ee1ac1140d core: use explicit for cv::AutoBuffer
To avoid compilation of this code:
- buf = 0;

This code can be received after refactoring of 1D cv::Mat to cv::AutoBuffer.
- "cv_mat = 0" calls setTo().
- cv::AutoBuffer calls "allocate(0)" - this is wrong.
2018-03-14 14:17:52 +03:00
Dmitry Kurtaev
538fd42363 Add test for Scalar arguments at CommandLineParser 2018-03-13 11:01:07 +03:00
yuki takehara
0792ef8789 Merge pull request #11049 from take1014:#10948
* Fix #10948

* Add test code

* Fixed build error

* Add value zero

* eigen: test cleanup
2018-03-12 21:49:10 +03:00
Dmitry Kurtaev
130546e1d9 Semantic segmentation sample. 2018-03-08 11:02:26 +03:00
Maksim Shabunin
7bbe002a2f Add install component for 3rdparty libraries licenses 2018-03-06 16:32:30 +03:00
native-api
dc1d9ae973 Include error code description into the message (#10982) 2018-03-06 09:58:19 +03:00
Namgoo Lee
c219f97f48 SSE2 : use _mm_cvtpd_epi32 when converting from CV_64F to CV_32S (#10987)
* SSE2 : use _mm_cvtpd_epi32 when converting from CV_64F to CV_32S

* No need to define a new universal intrinsic
2018-03-06 09:50:53 +03:00
Suleyman TURKMEN
5e1a656bbb Update core.hpp 2018-03-04 23:02:47 +03:00
Alexander Alekhin
0d2cee45e8 Merge pull request #10971 from alalek:ocl_error_code_string 2018-03-02 11:41:01 +00:00
Alexander Alekhin
90ff900387 Merge pull request #10926 from tomoaki0705:fixTinkerBoardOpenCL 2018-03-02 11:32:51 +00:00
Alexander Alekhin
b1fc7d46a5 ocl: update getOpenCLErrorString() code 2018-03-01 13:52:43 +03:00
Tomoaki Teshima
8fd1bbde76 fix test error on Tinker Board (OpenCL on Arm platform)
* loosen some test threshold mainly for integer types
  * use relative error for floating points result
  * avoid division by zero by following the comment
  * fix the indentation
2018-02-26 22:55:06 +09:00
Alexander Alekhin
24bed38c2b Merge tag '3.4.1' 2018-02-25 16:56:57 +00:00
Alexander Alekhin
6ffc48769a OpenCV version++
OpenCV 3.4.1
2018-02-23 11:38:33 +03:00
Maksim Shabunin
3fd2384b81 Fixed mingw compilation on Windows 2018-02-22 17:11:18 +03:00
Alexander Alekhin
48b8aa51cd core: eliminate redundant cv::format() declarations
Existed includes sequence:
- utility.hpp -> core.hpp -> operations.hpp
2018-02-21 14:22:16 +03:00
Vadim Pisarevsky
53661d55ae Merge pull request #10406 from seiko2plus:coreUnvintrinCopy 2018-02-20 14:50:17 +00:00
Vadim Pisarevsky
7da6e9086c Merge pull request #10893 from alalek:fix_cpu_disable_flags 2018-02-19 14:11:11 +00:00
Alexander Alekhin
857007372d Merge pull request #10895 from tomoaki0705:fixBuildVS2013sprintf 2018-02-18 07:45:01 +00:00
Tomoaki Teshima
6a661e1e28 fix test error on VS2013 2018-02-18 09:29:38 +09:00
Alexander Alekhin
cc5a6f3b86 core: remove '-' from separators list of disabled CPU flags
To allow runtime disabling of AVX512-SKX via 'OPENCV_CPU_DISABLE' parameter
2018-02-18 00:03:04 +00:00
Alexander Alekhin
73a8369631 Merge pull request #10890 from Reputeless:patch-1 2018-02-17 12:02:48 +00:00
Alexander Alekhin
eb94dfb442 Merge pull request #10885 from alalek:issue_10881 2018-02-17 11:58:51 +00:00
Patrik Huber
7be0c78533 Merge pull request #10589 from patrikhuber:patch-1
* Make <array> #ifdef true for MSVC

I think MSVC had `std::array` for quite a while (possibly going back as far as VS 2012, but it's definitely there in 2015 and 2017. So I think `_MSC_VER` `1900` is a safe bet. Probably `1800` and maybe even `1700` could work as well but I can't test that locally.

* fix test
2018-02-17 14:53:30 +03:00
Ryo Suzuki
97d9ea00fe
Fix typo in core/base.hpp 2018-02-17 19:35:25 +09:00
Alexander Alekhin
491502a349 core: fix parallel_for data race 2018-02-16 21:13:48 +03:00
Alexander Alekhin
c020a7bb67 build: portable integer types 2018-02-15 23:43:02 +03:00
Vadim Pisarevsky
b4ddf3d8c5 Merge pull request #10678 from terfendail:OutputArray_recreate 2018-02-14 11:36:51 +00:00
Vadim Pisarevsky
42b25d747b Merge pull request #10856 from tomoaki0705:fixVisualStudioFixedWidthInt 2018-02-14 11:33:15 +00:00
Alexander Alekhin
252e871a8b Merge pull request #10846 from luzpaz:misc-modules-typos-cont 2018-02-13 16:12:28 +00:00
Alexander Alekhin
a91a11e533 Merge pull request #10818 from mshabunin:install-samples-src 2018-02-13 14:37:38 +00:00
Alexander Alekhin
eb54e5c55c core: generalize and fix x86 'cpuid' calls 2018-02-13 15:35:04 +03:00
Tomoaki Teshima
94253e8b83 fix build error on Visual Studio 2013 and earlier 2018-02-13 18:30:02 +09:00
Maksim Shabunin
8393d755f6 Fixed OpenGL-specific compilation warning (unused function) 2018-02-12 18:42:36 +03:00
luz.paz
e805a55a5b Misc. modules/ typos (cont.)
Found via `codespell`
2018-02-12 10:15:36 -05:00
Alexander Alekhin
17233c687e Merge pull request #10797 from mshabunin:split-convert 2018-02-12 13:49:53 +00:00
Alexander Alekhin
57cbde3393 Merge pull request #10798 from mshabunin:split-stat 2018-02-12 13:49:41 +00:00
Maksim Shabunin
221342fb25 Split convert.cpp into smaller pieces 2018-02-12 15:17:19 +03:00
luz.paz
5718d09e39 Misc. modules/ typos
Found via `codespell`
2018-02-12 07:09:43 -05:00
Alexander Alekhin
5a791e6e06 cmake: update reporting of excluded dispatching files (#10711)
* cmake: add ocv_get_smart_file_name() macro

* cmake: avoid adding files for unavailable dispatch modes
2018-02-12 14:48:20 +03:00
Namgoo Lee
61e76e767d Update BufferReader documentation with some example code (#10803)
* Update BufferReader documentation with some example code

* Add warning to BufferPool doc regarding deallocation of StackAllocator

* Added a sample code that satisfies LIFO rule for StackAllocator
2018-02-12 14:41:23 +03:00
yuki takehara
379ea15d16 Add new Mat constructor (#10808)
* Add new Mat constructor

* Fix build error

* Fix build error

* Fixed the code about 4 comments

* Fixed three comments

* delete previous local declaration

* fix build error
2018-02-12 14:36:54 +03:00
Maksim Shabunin
4437e0c3b9 Split stat.cpp into smaller pieces 2018-02-12 14:14:08 +03:00
Alexander Alekhin
42e1fe301c ocl: allow recursive UMatData lock() calls with the same objects
OpenCLAllocator::copy() may call upload()/download() methods
2018-02-09 14:19:10 +03:00
Alexander Alekhin
44d7435a48 build: eliminate calls of removed functionality from C++17
Most part is deprecated since C++11
2018-02-07 12:00:33 +03:00
Alexander Alekhin
914f57f28d core(parallel_for): fix data race 2018-02-06 18:19:50 +03:00
Vitaly Tuzov
3267fb90c6 Updated check on OutputArray to allow recreation of fixed_size for 1-d sizes array 2018-02-06 17:07:36 +03:00
Alexander Alekhin
b10fedde56 core(parallel_for): cleanup
remove 'dont_wait' (can be replaced with has_wake_signal)
2018-02-06 16:10:41 +03:00
Alexander Alekhin
2a1f46c42d Merge pull request #9770 from alalek:refactor_test_files 2018-02-06 09:33:58 +00:00
Maksim Shabunin
e225850cc6 Split persistence.cpp into smaller pieces (#10788)
* Extracted base64 persistence functionality

* Extracted YML persistence functionality

* Extracted JSON persistence functionality

* Extracted XML persistence functionality

* Extracted public C and C++ interfaces implementation in persistence

* Persistence: cleanup and fixes

* fixup! Persistence: cleanup and fixes
2018-02-06 11:59:32 +03:00
Dmitry Kurtaev
10e1de74d2 Intel Inference Engine deep learning backend (#10608)
* Intel Inference Engine deep learning backend.

* OpenFace network using Inference Engine backend
2018-02-06 11:57:35 +03:00
Maksim Shabunin
904640c9ae Split matrix.cpp into smaller pieces 2018-02-05 19:16:33 +03:00
Alexander Alekhin
0d01b97b75 cuda: don't use std::numeric_limits
CUDA code uses own implementation in cuda/limits.hpp
2018-02-03 19:43:05 +00:00
Alexander Alekhin
4a297a2443 ts: refactor OpenCV tests
- removed tr1 usage (dropped in C++17)
- moved includes of vector/map/iostream/limits into ts.hpp
- require opencv_test + anonymous namespace (added compile check)
- fixed norm() usage (must be from cvtest::norm for checks) and other conflict functions
- added missing license headers
2018-02-03 19:39:47 +00:00
Vadim Pisarevsky
83761d5f8e Merge pull request #10761 from seiko2plus:issue10753 2018-02-02 11:27:26 +00:00
Alexander Alekhin
ecbd5b0574 Merge pull request #10751 from nglee:dev 2018-02-02 10:48:50 +00:00
Sayed Adel
534dcbe017 core:ppc Fix compile issue with Eigen 2018-02-02 03:31:25 +00:00
Alexander Alekhin
bbfa239036 Merge pull request #10706 from alalek:exception_opencv_version 2018-02-01 18:32:13 +00:00
Alexander Alekhin
c96630c9f0 Merge pull request #10705 from alalek:opencv_version_update 2018-02-01 18:31:52 +00:00
Vadim Pisarevsky
8436dac090 Merge pull request #10742 from alalek:fix_winrt_fs_build 2018-02-01 13:23:49 +00:00
Aditya Rohan
ccea0a831a Merge pull request #10732 from Riyuzakii:10598
* Introduces error throw for line drawn with THICKNESS=0
2018-02-01 15:21:00 +03:00
Namgoo Lee
3cf535926a cuda_stream: do not allocate GPU memory by default (fixes #8725) 2018-02-01 03:55:52 +09:00
Alexander Alekhin
2e45095e8d winrt: fix build 2018-01-31 15:00:45 +03:00
Sayed Adel
4e1d396ce1 core:ppc Add yield support 2018-01-31 04:03:35 +00:00
Alexander Alekhin
f57630d92b Merge pull request #10691 from alalek:parallel_for_2018 2018-01-30 14:13:29 +00:00
Vadim Pisarevsky
1389fd67ab Merge pull request #10721 from alalek:ocl_force_clBuildProgram 2018-01-30 09:20:58 +00:00
Alexander Alekhin
ebdb0eb0c1 ocl: force clBuildProgram() call after clCreateProgramWithBinary() 2018-01-29 15:51:07 +03:00
Ali Sentas
4d80419f29 Fix cv::CommandLineParser::check() documentation 2018-01-29 15:14:21 +03:00
Alexander Alekhin
c8930cc279 opencv_version: dump detected HW features 2018-01-27 17:08:29 +00:00
Alexander Alekhin
01f4a173ab opencv_version: dump OpenCL information via opencv_version
fix missing "opencv2/core/opencl" headers from core module (updated install list)
2018-01-27 17:08:28 +00:00
Alexander Alekhin
f6fd3abd31 core: add OpenCV version information into Exception messages 2018-01-27 13:51:16 +00:00
Woody Chow
f1c52e426b Merge pull request #10697 from woodychow:tbb_task_arena
* Use Intel TBB's task arena if possible
2018-01-27 08:46:54 +03:00
Alexander Alekhin
c49d5d5252 core: fix pthreads performance
OpenCV pthreads-based implementation changes:
- rework worker threads pool, allow to execute job by the main thread too
- rework synchronization scheme (wait for job completion, threads 'pong' answer is not required)
- allow "active wait" (spin) by worker threads and by the main thread
- use _mm_pause() during active wait (support for Hyper-Threading technology)
- use sched_yield() to avoid preemption of still working other workers
- don't use getTickCount()
- optional builtin thread pool profiler (disabled by compilation flag)
2018-01-26 04:09:11 +00:00
Alexander Alekhin
27cddfb8e9 Merge pull request #10661 from alalek:parallel_kmeans 2018-01-25 10:18:37 +00:00
Alexander Alekhin
81c5fae56f core(lapack): fix build issues related to 'extern "C"' 2018-01-24 14:53:04 +03:00
Vadim Pisarevsky
a1d2258ac3 Merge pull request #10635 from csukuangfj:doc-checkVector 2018-01-23 10:42:05 +00:00
Vadim Pisarevsky
8f04c8b16c Merge pull request #10644 from csukuangfj:doc-fundamental-matrix 2018-01-23 10:38:14 +00:00
Pavel Rojtberg
2d674fc151 persistence: replace arbitrary limit of cn to 4 by CV_CN_MAX (#10636)
* persistence: replace arbitrary limit of cn to 4 by CV_CN_MAX

* python: added persistence test, remove temp files

* fixup! python: added persistence test, remove temp files

* fixup! python: added persistence test, remove temp files
2018-01-23 13:36:30 +03:00
Alexander Alekhin
90aac764dd core: kmeans refactoring
- reduce scope of i,k,j variables
- use cv::AutoBuffer
- template<bool onlyDistance> class KMeansDistanceComputer
- eliminate manual unrolling: CV_ENABLE_UNROLLED
2018-01-22 14:26:41 +03:00
Alexander Alekhin
46470d92a0 core: fix kmeans multi-threaded performance 2018-01-22 14:26:41 +03:00
Alexander Alekhin
a5cd62f7bf core(perf): refactor kmeans test
- don't use RNG for "task size" parameters (N, K, dims)
- add "good" kmeans test data (without singularities: K > unique points)
2018-01-22 14:25:29 +03:00
Fangjun Kuang
eb2901bd69 Improve the doc for fundamental matrix. 2018-01-19 13:41:47 +01:00
Fangjun Kuang
8efe7bafaa Improve the doc for cv::Mat::checkVector. 2018-01-18 16:48:59 +01:00
Alexander Alekhin
0def2dbb73 Merge pull request #10605 from alalek:ocl_fix_deadlock 2018-01-18 13:39:36 +00:00
Alexander Alekhin
f056e713c3 Merge pull request #10512 from sturkmen72:update_documentation 2018-01-18 04:44:59 +00:00
csukuangfj
decf6cab5e Improve the documentation for cv::completeSymm and cv::RANSACUpdateNumIters. 2018-01-17 08:05:39 +01:00
Alexander Alekhin
4dc788ff84 Merge pull request #10606 from alalek:update_copyright_2018 2018-01-16 17:47:30 +00:00
Alexander Alekhin
cec700525c core(ocl): fix deadlock in UMatDataAutoLock
UMatData locks are not mapped on real locks (they are mapped to some "pre-initialized" pool).

Concurrent execution of these statements may lead to deadlock:
- a.copyTo(b) from thread 1
- c.copyTo(d) from thread 2
where:
- 'a' and 'd' are mapped to single lock "A".
- 'b' and 'c' are mapped to single lock "B".

Workaround is to process locks with strict order.
2018-01-16 17:33:06 +03:00
Maksim Shabunin
8b87c4b96a Fixed several warnings produced by clang 6 and static analyzers 2018-01-16 15:26:28 +03:00
Alexander Alekhin
e6ed853905 copyright: 2018 2018-01-16 13:55:42 +03:00
Alexander Alekhin
8533b45ce9 cmake: Java/Android SDK refactoring 2018-01-13 02:12:39 +00:00
Suleyman TURKMEN
dcd4f8f5db Update documentation 2018-01-12 22:21:14 +03:00
Maksim Shabunin
594a93316c Fixed concurrent OpenCL cache folder name generation 2018-01-12 19:03:16 +03:00
SarenT
c6d9ce8fd3 Merge pull request #10489 from SarenT:offset-mat_put
Adding capability to parse subsections of a byte array in Java bindings (#10489)

* Adding capability to parse subsections of a byte array in Java bindings. (Because Java lacks pointers. Therefore, reading images within a subsection of a byte array is impossible by Java's nature and limitations. Because of this, many IO functions in Java require additional parameters offset and length to define, which section of an array to be read.)

* Corrected according to the review. Previous interfaces were restored, instead internal interfaces were modified to provide subsampling of java byte arrays.

* Adding tests and test related files.

* Adding missing files for the test.

* Simplified the test

* Check was corrected according to discussion. An OutOfRangeException will be thrown instead of returning.

* java: update MatOfByte implementation checks / tests
2018-01-12 18:00:58 +03:00
Alexander Alekhin
18edd917e3 Merge pull request #10391 from ElenaGvozdeva:HAL_minMaxIdx 2018-01-11 14:15:40 +00:00
Alexander Alekhin
6113dc1b99 core: fix unresolved symbols from utils::fs 2018-01-09 19:29:50 +00:00
Fangjun Kuang
a2869109f0 Improve the documentation for cv::Affine3. 2018-01-05 19:35:38 +01:00
Alexander Alekhin
7d67d60fb1 cmake(opt): AVX512_SKX 2017-12-29 07:18:11 +00:00
Alexander Alekhin
a65b5df5da Merge pull request #10416 from fenrus75:avx512 2017-12-28 15:56:56 +00:00
Alexander Alekhin
898ca38257 cmake: AVX512 -> AVX_512F 2017-12-28 15:20:27 +00:00
Arthur Williams
d8d4ea857a
Fixed #10433 2017-12-27 14:09:25 +00:00
Jun Zhao
0369431ebd opencl/cvtclr_dx: fix not compile-time constants issue.
fix the "initializing global variables with values that are not
compile-time constants" issue in Intel SDK for OpenCL. The root cause
is when initializing global variables with value, the variable need is
compile-time constants.

Thanks Zheng, Yang <yang.zheng@intel.com>,
Chodor, Jaroslaw <jaroslaw.chodor@intel.com> give a help.

Signed-off-by: Liu,Kaixuan <kaixuan.liu@intel.com>
Signed-off-by: Jun Zhao <jun.zhao@intel.com>
2017-12-26 13:44:37 +08:00
Sayed Adel
fd0ac962fb core: replace raw intrinsics with universal intrinsics in copy.cpp
- use universal intrinsic instead of raw intrinsic
- add performance check for Mat::copyTo/setTo with mask
2017-12-26 05:30:32 +02:00
Arjan van de Ven
fc8e848a54 Add basic plumbing for AVX512 support
The opencv infrastructure mostly has the basics for supporting avx512 math functions,
but it wasn't hooked up (likely due to lack of users)

In order to compile the DNN functions for AVX512, a few things need to be hooked up
and this patch does that

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
2017-12-25 21:06:52 +00:00
Alexander Alekhin
047764f476 Merge tag '3.4.0' 2017-12-22 23:22:50 +00:00
Alexander Alekhin
6d4f66472e OpenCV version++
3.4.0
2017-12-22 19:46:21 +00:00
Alexander Alekhin
534645a12f ocl: workaround option to disable usage of buffer "Rect" operations 2017-12-22 13:05:03 +03:00
elenagvo
cd1c8693d8 HAL for minMaxIdx 2017-12-22 12:56:52 +03:00
Vadim Pisarevsky
ae8bb718cd Merge pull request #10340 from alalek:log_level_option 2017-12-21 08:33:18 +00:00
Alexander Alekhin
b450811e4b core(logger): add log level configuration option 2017-12-19 22:57:07 +00:00
Jiri Horner
3dbf392d48 fix build with intrinsics enabled
* since #10231 opencv with instrumentation does not build
2017-12-17 20:23:15 +01:00
Alexander Alekhin
cac4a7e5b5 OpenCV version++
OpenCV 3.4.0-rc
2017-12-16 01:30:43 +03:00
Rostislav Vasilikhin
bab86d65cb Merge pull request #10258 from savuor:fix/kmeans_channels
* kmeans: number of channels in _centers fixed

* fixedType() is checked now
2017-12-15 21:48:48 +03:00
Sayed Adel
1b8acd662f core:ppc Fix several issues for VSX (#10303)
- fix conversion intrinsics compatibility with xlc
- implement odd-elements 2 to 4 conversion intrinsics
- improve implementation of universal intrinsic v_popcount
- rename FORCE_INLINE to VSX_FINLINE in vsx_utils.hpp
2017-12-15 14:03:46 +03:00
Vadim Pisarevsky
84535a60f2 Merge pull request #10307 from savuor:fix/expect_softfloat 2017-12-14 21:00:46 +00:00
Tomoaki Teshima
ca1a0a1108 core: remove raw SSE2/NEON implementation from convert.cpp (#9831)
* remove raw SSE2/NEON implementation from convert.cpp
  * remove raw implementation from Cvt_SIMD
  * remove raw implementation from cvtScale_SIMD
  * remove raw implementation from cvtScaleAbs_SIMD
  * remove duplicated implementation cvt_<float, short>
  * remove duplicated implementation cvtScale_<short, short, float>
  * add "from double" version of Cvt_SIMD
  * modify the condition of test ConvertScaleAbs

* Update convert.cpp

fixed crash in cvtScaleAbs(8s=>8u)

* fixed compile error on Win32

* fixed several test failures because of accuracy loss in cvtScale(int=>int)

* fixed NEON implementation of v_cvt_f64(int=>double) intrinsic

* another attempt to fix test failures

* keep trying to fix the test failures and just introduced compile warnings

* fixed one remaining test (subtractScalar)
2017-12-15 00:00:35 +03:00
Rostislav Vasilikhin
7d18f49a49 SoftFloat tests: assert => expect 2017-12-14 21:03:25 +03:00
Vadim Pisarevsky
d0d2faf551 Merge pull request #10294 from alalek:fix_copyToMask_dst_initialization 2017-12-14 11:05:09 +00:00
Vadim Pisarevsky
7b701fee60 Merge pull request #10302 from alalek:issue_10254 2017-12-13 17:31:40 +00:00
Vadim Pisarevsky
99183e98d3 Merge pull request #10293 from alalek:fix_persistence_with_deprecated_traits 2017-12-13 17:30:23 +00:00
Alexander Alekhin
9930076dc5 core(test): avoid filename duplicates in tests 2017-12-13 18:21:55 +03:00
Vadim Pisarevsky
84ee4d701a Merge pull request #10297 from tomoaki0705:suppressOclWarning 2017-12-13 07:56:35 +00:00
Tomoaki Teshima
267c5a747b suppress warnings on OpenCL build
* stop re-enabling the warning C4127
  * disabling is done in CMakeLists.txt
2017-12-13 15:07:51 +09:00
Alexander Alekhin
62ed6cdc74 core: fix copyTo(with mask) dst initialization 2017-12-12 18:40:13 +03:00
Alexander Alekhin
ce20efb8e7 Merge pull request #9804 from woodychow:optimize_cveigen 2017-12-12 14:58:04 +00:00
Alexander Alekhin
825b14278e core: fix persistence with deprecated traits 2017-12-12 17:07:36 +03:00
Alexander Alekhin
c0b6061a5e core(test): Core_Eigen.vector_32 use relative norm 2017-12-12 15:07:31 +03:00
Alexander Alekhin
2324674dfb core(test): update eps in testEigen<float>: 1e-6 => 1e-4 2017-12-12 15:07:31 +03:00
Alexander Alekhin
53b5afbba9 core(test): refactor Java Eigenvalues/PCA tests 2017-12-12 15:07:31 +03:00
Alexander Alekhin
d48d2d7fe2 core(test): refactor PCA test
- CV_L2 -> relative NORM_L2
- eigenEps: 1e-6 ==> 1e-4
- evalEps: 1e-6 ==> 1e-5
- evecEps: 1e-3 ==> 5e-3
- RNG seed: 12345
- drop non-informative legacy test code (ts->printf, etc)
2017-12-12 15:07:27 +03:00
Alexander Alekhin
e49febb70f Merge pull request #10269 from terfendail:softdouble_round 2017-12-11 12:48:03 +00:00
Vadim Pisarevsky
9fa505027a Merge pull request #10263 from mshabunin:embedded-build 2017-12-11 12:42:45 +00:00
Vadim Pisarevsky
558b17dede Merge pull request #10231 from alalek:ocl_refactor_program_api 2017-12-11 12:34:22 +00:00
Vitaly Tuzov
86b128dbb3 Added implementation of softdouble rounding to int64_t 2017-12-11 14:29:32 +03:00
Maksim Shabunin
7349b8f5ce Build for embedded systems 2017-12-11 13:27:37 +03:00
Pavel Rojtberg
6fb9d42c3f Hid symbols in static builds, added LTO flags, removed exports from ts 2017-12-07 10:26:48 +03:00
Alexander Alekhin
15b909e80b ocl: add SPIR Program loading test
SPIR kernels are located in opencv_extra
2017-12-05 22:25:14 +03:00
Alexander Alekhin
a82d2363f4 ocl: refactor Program API
- don't store ProgramSource in compiled Programs (resolved problem with "source" buffers lifetime)
- completelly remove Program::read/write methods implementation:
  - replaced with method to query RAW OpenCL binary without any "custom" data
- deprecate Program::getPrefix() methods
2017-12-05 22:25:14 +03:00
Alexander Alekhin
13c4a02157 ocl: low-level API to support OpenCL binary programs 2017-12-05 22:25:14 +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
woody.chow
611cf8d86f Use Eigen::SelfAdjointEigenSolver in cv::eigen 2017-12-05 02:40:55 +03:00
Alexander Alekhin
0595ab3eef ocl: fix usage of invalid OpenCL cache on mixed 64/32-bit platforms
Observed during launch of 32/64-bit applications on Windows.
Added '32-bit' prefix for 32-bit OpenCL devices. No prefix on 64-bit configurations.
2017-12-01 14:20:18 +03:00
Alexander Alekhin
0105518422 Merge pull request #10190 from seiko2plus:issue10189 2017-11-30 07:16:12 +00:00
Vadim Pisarevsky
f5dba12762 Merge pull request #10180 from alalek:ocl_avoid_unnecessary_initialization 2017-11-29 11:42:22 +00:00
Vadim Pisarevsky
86ff4a1ccf Merge pull request #10182 from romanc:fix/divByZeroSimdDouble 2017-11-29 10:01:58 +00:00
Vadim Pisarevsky
614e254331 Merge pull request #10170 from LaurentBerger:Issue10166 2017-11-29 09:51:20 +00:00
Sayed Adel
6fe6436162 core:ppc Fixed compilation with xlc, clang.
- Use EXPECT_TRUE instead of EXPECT_EQ for comparing NULL in xlc
- Added support for int64 to vec_promote in xlc, clang
- Fixed v_rotate_right in xlc
2017-11-29 07:48:26 +00:00
Vadim Pisarevsky
2a8344f75b Merge pull request #10149 from mshabunin:fix-saturate-intrin 2017-11-28 13:17:10 +00:00
Roman Cattaneo
d381e499ea Fixes Issue #10181
This PR fixes incorrect division by zero handling in template
specialization of `Div_SIMD` for type `double`.
2017-11-28 13:48:40 +01:00
Alexander Alekhin
0ed3209b00 ocl: avoid unnecessary loading/initializing OpenCL subsystem
If there are no OpenCL/UMat methods calls from application.

OpenCL subsystem is initialized:
- haveOpenCL() is called from application
- useOpenCL() is called from application
- access to OpenCL allocator: UMat is created (empty UMat is ignored) or UMat <-> Mat conversions are called

Don't call OpenCL functions if OPENCV_OPENCL_RUNTIME=disabled
(independent from OpenCL linkage type)
2017-11-28 14:02:42 +03:00
Alexander Alekhin
abad8977b6 Merge pull request #9247 from paroj:wrap_alog_rw 2017-11-28 10:35:33 +00:00