Alexander Alekhin
d4e3405db2
Merge pull request #13045 from LaurentBerger:kmeansdoc
...
typo in kmeans doc
2018-11-06 20:00:47 +03:00
LaurentBerger
5132102863
typo in kmeans doc
2018-11-04 21:30:31 +01:00
Alexander Alekhin
79dc0ed175
docs: intro formatting update, minor cleanup
2018-11-04 02:36:24 +00:00
Alexander Alekhin
687fa6a8ca
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-11-02 05:33:35 +00:00
Vadim Pisarevsky
0f622206e4
completely new C++ persistence implementation ( #13011 )
...
* integrated the new C++ persistence; removed old persistence; most of OpenCV compiles fine! the tests have not been run yet
* fixed multiple bugs in the new C++ persistence
* fixed raw size of the parsed empty sequences
* [temporarily] excluded obsolete applications traincascade and createsamples from build
* fixed several compiler warnings and multiple test failures
* undo changes in cocoa window rendering (that was fixed in another PR)
* fixed more compile warnings and the remaining test failures (hopefully)
* trying to fix the last little warning
2018-11-02 00:27:06 +03:00
Sayed Adel
93ffebc273
core: reimplement SIMD arithmetic, logic and comparison operations into wide universal intrinsics
...
- initialize arithmetic dispatcher
- add new universal intrinsic v_absdiffs
- add new universal intrinsic v_pack_b
- add accumulate version of universal intrinsic v_round
- fix sse/avx2:uint8 multiplication overflow
- reimplement arithmetic, logic and comparison operations into wide universal intrinsics
with full support for all types
- reimplement IPP arithmetic, logic and comparison operations in a sperate file arithm_ipp.hpp
- avoid scalar multiplication if scaling factor eq 1 and use integer multiplication
- move C arithmetic operations to precomp.hpp and delete [arithm_simd|arithm_core].hpp
- add compatibility with new opencv4 divide policy
2018-10-30 12:48:31 +02:00
LaurentBerger
389aae59ae
add python copyto with mask ( https://github.com/opencv/opencv/issues/10225 )
2018-10-29 09:09:30 +01:00
Alexander Alekhin
e0c888acf7
Merge pull request #12952 from seanm:fix12933
2018-10-26 18:27:27 +00:00
Rostislav Vasilikhin
daff6e6484
_mm256_zeroupper replaced by zeroall
2018-10-26 18:12:07 +03:00
Alexander Alekhin
50bec53afc
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-10-26 17:56:55 +03:00
Sean McBride
828091cfbb
Fixed #12933 : added cast to silence clang -Wcomma warning
2018-10-25 13:27:17 -04:00
Alexander Alekhin
28556f1498
core: move compiler defines from base.hpp into cvdef.h
2018-10-25 14:05:46 +03:00
Maksim Shabunin
0ccd810738
Fixed several issues found by static analysis
2018-10-25 10:45:59 +03:00
Alexander Alekhin
7f608db244
core: move compiler defines from base.hpp into cvdef.h
2018-10-25 03:02:01 +00:00
Alexander Alekhin
e959f449ae
Merge pull request #12894 from alalek:c_api_drop_samples
2018-10-24 15:40:04 +00:00
Alexander Alekhin
2c029aae46
Merge pull request #12914 from seiko2plus:issue12830
2018-10-24 13:15:23 +00: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
71009c9b4d
core: fix merge from 3.4
...
`CV_ErrorNoReturn` should not be used in OpenCV
2018-10-24 14:45:45 +03:00
Sayed Adel
8b26906d6d
core:vsx change behavior of v_round to rounding to nearest even
2018-10-24 06:31:31 +00:00
Alexander Alekhin
329a1fb781
drop C-API sample code
2018-10-23 14:38:20 +03:00
Alexander Alekhin
9c23f2f1a6
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-10-20 11:37:54 +00:00
Mansoo Kim
4d1f0ef2d9
cuda: fix build with CUDA 10.x
2018-10-17 17:35:40 +00: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
5dd46b54c1
Merge pull request #12848 from alalek:issue_12337
2018-10-15 20:09:36 +00:00
Alexander Alekhin
954536073d
core: update solveLP() interface
2018-10-15 18:58:11 +00:00
Alexander Alekhin
cc45c10f3d
ocl: bailout from unsupported types
2018-10-15 18:06:06 +00:00
Alexander Alekhin
f185640eda
Merge pull request #12799 from alalek:update_build_js
...
* js: update build script
- support emscipten 1.38.12 (wasm is ON by default)
- verbose build messages
* js: use builtin Math functions
* js: disable tracing code completelly
2018-10-15 17:35:21 +03:00
Alexander Alekhin
1cc3f7abbb
Merge pull request #12516 from seiko2plus:changeUnvMultiply16
2018-10-15 12:07:40 +00:00
Alexander Alekhin
fd832bb57d
core: follow IEEE 754 rules for floating-point division
2018-10-14 10:47:50 +00:00
Alexander Alekhin
5115e5decb
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-10-13 16:19:05 +00:00
Alexander Alekhin
0f41daeba5
Merge pull request #12641 from dkurt:dnn_samples_args_autofill
2018-10-13 12:28:08 +00:00
Alexander Alekhin
1ed9ff17e1
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-10-12 10:05:55 +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
cc10e6b344
pyrDown and pyrUp SSE2 implementations replaced with wide universal intrinsics implementations
2018-10-10 21:12:47 +03:00
Alexander Alekhin
dada5a422d
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-10-09 21:20:15 +00:00
Alexander Alekhin
68fe37b008
Merge pull request #12755 from alalek:fix_allocSingleton
2018-10-08 15:30:17 +00:00
Alexander Alekhin
18bf91a08b
core: update allocSingleton implementation, valgrind suppression
2018-10-05 18:25:13 +03:00
Alexander Alekhin
c716e374c1
Merge pull request #12744 from alalek:issue_12736
2018-10-05 10:20:13 +00:00
Alexander Alekhin
aeec6e43eb
Merge pull request #12749 from powderluv:fix-clang-cl-tzcnt
2018-10-05 09:28:07 +00:00
Anush Elangovan
630a94b8b7
_tzcnt_u32() is undefined in clang-cl so use alternate impl
...
_tzcnt_u32() is not exported by clang-cl intrin.h so check for
clang-cl and enable an alterate for _tzcnt_u32()
Some discussions:
http://lists.llvm.org/pipermail/cfe-dev/2016-October/051329.html
https://bugs.llvm.org/show_bug.cgi?id=30506
TEST=Build with clang-cl
2018-10-04 14:04:22 -07:00
Rostislav Vasilikhin
da5e0ef461
ocl::KernelArg::Local(): added size argument
2018-10-04 17:19:09 +03:00
Alexander Alekhin
0926a84a45
cmake: define CV_ErrorNoReturn under CV_STATIC_ANALYSIS
...
to avoid build break without `__OPENCV_BUILD`
2018-10-04 14:43:43 +03:00
Alexander Alekhin
690fb0544c
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-10-02 14:31:05 +03:00
Maksim Shabunin
15632c6305
Added support for multi-path configuration parameter (env)
2018-10-01 17:50:47 +03:00
Alexander Alekhin
ae4c72a153
Merge pull request #12668 from alalek:calib3d_chessboardsb_updates
2018-10-01 00:00:01 +03:00
chacha21
9524abcd28
Merge pull request #12658 from chacha21:clr-mutex
...
* hide use of std::mutex from /clr compilation under Visual Studio
C++11 <mutex> is not available when compiling with /clr under Visual Studio, thus opencv cannot be easily included.
It is fixed by making a CEEMutex wrapper class, around an opaque implementation using std::mutex internally
* fixed compilation outside of Visual Studio
fixed compilation outside of Visual Studio by avoiding some macros
* fixed indentation, prepare getting rid of CEEMutex/CEELockGuard
fixed indentation
After discussion, CEEMutex and CEELockGuard can be totally removed, letting the developer in a /clr context to provide his own implementation
* remove CEEMutex/CEELockGuard
2018-09-28 19:19:05 +03:00
Alexander Alekhin
5575171652
Merge pull request #12673 from alalek:fix_build_warnings
...
* fix build warnings
* python: forbid wrapping of functions with "void*" arguments
2018-09-28 16:53:05 +03: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
4b895a4d1f
Merge pull request #12657 from alalek:docs_repair_cuda_section
2018-09-28 09:45:50 +00:00
Rostislav Vasilikhin
be989b3b60
Merge pull request #12637 from savuor:fix/instr_ipp_ocl
...
Fixes for instrumentation of IPP and OCL (#12637 )
* fixed warning about re-declaring variable when both IPP and instrumentation are enabled
* fixed segfault when no funName provided
* compilation fixed when both OCL and instrumentation are enabled
2018-09-27 22:39:06 +03:00
Alexander Alekhin
e4f71994c2
calib3d: findChessboardCornersSB() minor updates
...
- avoid updating of input image during equalizeHist() call
- avoid for() with double variable (use 'int' instead)
- more CV_Check*() macros
- use Mat_<T>, Matx
- static for local variables
2018-09-27 15:38:01 +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
Alexander Alekhin
962dc21f2b
docs: fix CUDA docs section
2018-09-26 15:36:55 +03:00
Dmitry Kurtaev
ad5898224d
Add a file with preprocessing parameters for deep learning networks
2018-09-25 18:28:37 +03:00
Maksim Shabunin
e0f524d3b7
Fixed several incorrect printf format specifiers
2018-09-24 11:31:40 +03:00
Pavel Rojtberg
4d23a5d92d
core: enable printf format warnings for cv::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
5fb0f34e8a
Merge pull request #12570 from alalek:drop_usrtype1
...
* core: drop usage of CV_USRTYPE1 in OpenCV
avoid OpenCV crashes due size change CV_ELEM_SIZE(CV_USRTYPE1): 8 -> 2
* ! fix persistence internal types
2018-09-19 13:55:26 +03:00
Alexander Alekhin
808ba552c5
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-09-14 23:44:35 +00:00
Hamdi Sahloul
5d54def264
Add semicolons after CV_INSTRUMENT
macros
2018-09-14 06:45:31 +09:00
Maksim Shabunin
78c500e97a
Removed unnecessary build-time MediaSDK detection
2018-09-13 13:43:11 +03:00
Alexander Alekhin
b80c978f5d
core: change cv::Ptr DefaultDeleter
2018-09-12 12:20:15 +00:00
Hamdi Sahloul
03b3be0f51
MSVC: Slience external/meaningless warnings
2018-09-12 20:02:13 +09:00
Alexander Alekhin
492ef14550
Merge pull request #12494 from DEEPIR:3.4
2018-09-11 19:38:00 +00:00
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
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
15aee09c7f
core: replace cv::Ptr implementation => std::shared_ptr
2018-09-09 19:30:46 +00: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
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
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
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
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
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
Alexander Alekhin
90f47eb952
Merge pull request #12234 from cv3d:python/cuda/wrapping_functionalities
2018-08-30 20:23:38 +00: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
Hamdi Sahloul
532eace7d6
Extensive wrapping of CUDA functionalities for Python
2018-08-30 22:50:33 +09: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
acfdd0e1fc
core: fix MSVS "unreachable code" warnings
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
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
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
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
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
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
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
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
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
dbf3362c4d
Merge pull request #12056 from seiko2plus:coreExpandTests
2018-07-30 16:23:11 +00: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
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
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
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
7e9b5d9e30
Merge pull request #12006 from mshabunin:static-debug-assert
2018-07-19 09:36:36 +00: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
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
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
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
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
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
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
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
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
Philipp Hasper
577546ccd9
Added Size_::aspectRatio
2018-06-15 14:59:54 +02:00
Alexander Alekhin
d69a327d6d
OpenCV version++
...
OpenCV 3.4.2
2018-06-10 10:20:38 +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
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
Tomoaki Teshima
e2c787884d
fix the test failure of CUDA_Arithm/MeanStdDev
2018-05-20 19:38:02 +09: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
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
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
Alexander Alekhin
083b08742d
Merge pull request #11406 from alalek:core_matsize_dims
2018-04-28 14:38:42 +00: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
exoson
058299cc66
Optimize MultiBandBlender to run faster
2018-04-27 10:48:13 +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
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
4cbec82ac1
build: unreachable code after CV_Error()
2018-04-23 15:45:57 +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
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
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
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