Alexander Alekhin
50bec53afc
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-10-26 17:56:55 +03:00
maver1
e397434cb6
Merge pull request #12877 from maver1:3.4
...
* Updated ICV packages and IPP integration
* core(test): minMaxIdx IPP regression test
* core(ipp): workaround minMaxIdx problem
* core(ipp): workaround meanStdDev() CV_32FC3 buffer overrun
* Returned semicolon after CV_INSTRUMENT_REGION_IPP()
2018-10-24 15:02:53 +03:00
Alexander Alekhin
9c23f2f1a6
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-10-20 11:37:54 +00:00
Michał Janiszewski
c8e6ce304f
Catch exceptions by const-reference
...
Exceptions caught by value incur needless cost in C++, most of them can
be caught by const-reference, especially as nearly none are actually
used. This could allow compiler generate a slightly more efficient code.
2018-10-16 22:43:54 +02:00
Alexander Alekhin
edacd91a27
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-10-15 20:15:42 +00:00
Alexander Alekhin
954536073d
core: update solveLP() interface
2018-10-15 18:58:11 +00:00
Alexander Alekhin
72eccb7694
Merge pull request #12825 from alalek:issue_8413_3.4
2018-10-15 14:23:21 +00:00
Alexander Alekhin
1cc3f7abbb
Merge pull request #12516 from seiko2plus:changeUnvMultiply16
2018-10-15 12:07:40 +00:00
Alexander Alekhin
09cb329d73
core(test): zero values divide test (4.0+)
2018-10-14 03:46:29 +00:00
Alexander Alekhin
4a9291fd89
Merge branch 'issue_8413_3.4'
2018-10-14 03:46:01 +00:00
Alexander Alekhin
5677a683a5
core(test): zero values divide test (3.x)
2018-10-14 02:23:17 +00:00
Sayed Adel
5771fd693d
Change behaviour of 16-bit multiply operator
...
- redefine 16-bit multiply operator to perform saturating multiply
instead of non-saturating multiply
- implement 8-bit multiply operator to perform saturating multiply
- implement v_mul_wrap() for 8-bit, 16-bit non-saturating multiply
- improve performance of v_mul_hi() for VSX
- update intrin tests with new changes
- replace unv 16-bit multiplication operator with v_mul_wrap due behavior changes
- Several improvements depend on vpisarev review
* initial forward declarations for universal intrinsics
* move emulating SSE intrinsics into separate file
* implement v_mul_expand for 8-bit
* reimplement saturating multiply using v_mul_expand + v_pack
* map v_expand, v_load_expand, v_load_expand_q to sse4.1
* fix overflow avx2::v_pack(uint32)
* implement two universal intrinsics v_expand_low and v_expand_high
2018-10-11 04:35:39 +02:00
Vitaly Tuzov
1ff11c84ab
Fixed meanStdDev() implementation for the case input matrix has more than 4 channels
2018-10-11 04:30:33 +02:00
Alexander Alekhin
a8b0db4e5d
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-09-28 14:14:47 +03:00
Alexander Alekhin
48e8e76a34
fix build warnings
2018-09-27 16:31:31 +03:00
Dmitry Kurtaev
24ab751547
Merge pull request #12565 from dkurt:dnn_non_intel_gpu
...
* Remove isIntel check from deep learning layers
* Remove fp16->fp32 fallbacks where it's not necessary
* Fix Kernel::run to prevent localsize > globalsize
2018-09-26 16:27:00 +03:00
Maksim Shabunin
e0f524d3b7
Fixed several incorrect printf format specifiers
2018-09-24 11:31:40 +03:00
Pavel Rojtberg
d1c842cf29
core: fix printf warnings by using c++11 format
2018-09-24 11:31:40 +03:00
Hamdi Sahloul
ef5579dc86
Merge pull request #12310 from cv3d:chunks/enum_interface
...
* Cleanup macros and enable expansion of `__VA_ARGS__` for Visual Studio
* Macros for enum-arguments backwards compatibility
* Convert struct Param to enum struct
* Enabled ParamType.type for enum types
* Enabled `cv.read` and `cv.write` for enum types
* Rename unnamed enum to AAKAZE.DescriptorType
* Rename unnamed enum to AccessFlag
* Rename unnamed enum to AgastFeatureDetector.DetectorType
* Convert struct DrawMatchesFlags to enum struct
* Rename unnamed enum to FastFeatureDetector.DetectorType
* Rename unnamed enum to Formatter.FormatType
* Rename unnamed enum to HOGDescriptor.HistogramNormType
* Rename unnamed enum to DescriptorMatcher.MatcherType
* Rename unnamed enum to KAZE.DiffusivityType
* Rename unnamed enum to ORB.ScoreType
* Rename unnamed enum to UMatData.MemoryFlag
* Rename unnamed enum to _InputArray.KindFlag
* Rename unnamed enum to _OutputArray.DepthMask
* Convert normType enums to static const NormTypes
* Avoid conflicts with ElemType
* Rename unnamed enum to DescriptorStorageFormat
2018-09-21 18:12:35 +03:00
Alexander Alekhin
808ba552c5
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-09-14 23:44:35 +00:00
Alexander Alekhin
b80c978f5d
core: change cv::Ptr DefaultDeleter
2018-09-12 12:20:15 +00: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
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
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
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
Alexander Alekhin
8a3c394d6a
don't use constructors for C API structures
2018-09-06 14:34:16 +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
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
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
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
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
c1db75e0c7
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-08-29 16:24:56 +03:00
Alexander Alekhin
ff2eface19
Merge pull request #12126 from alalek:reproducer_12121
2018-08-24 08:08:17 +00: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
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
Alexander Alekhin
4eb2966559
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-08-07 20:12:10 +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
Alexander Alekhin
f2e1710dd5
core(test): regression test for 12121
2018-08-01 19:42:54 +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
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
Sayed Adel
6499263b41
core:test Expand hal_intrin tests to support SIMD256
2018-07-30 08:50:50 +02: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