Commit Graph

19007 Commits

Author SHA1 Message Date
Alexander Alekhin
d66aa2e0ff Merge pull request #15848 from alalek:backport_test_15842 2019-11-07 16:48:41 +00:00
Dimitri Gerin
7c4158d8c2 Fix dnn::getLayerInputs 2019-11-07 08:13:33 +03:00
czgdp1807
07ef08e966 removed typo 2019-11-06 17:15:31 +05:30
Alexander Alekhin
54d9597522 Merge pull request #15814 from i-murzov:3.4-ocl-cleanup 2019-11-06 09:54:29 +00:00
Alexander Alekhin
f3e788b8ab Merge pull request #15813 from i-murzov:3.4-ocl-empty-platform 2019-11-06 08:12:40 +00:00
Igor Murzov
cdbfdcc363 Fix OpenCL device detection when some OpenCL platform has no devices
It's not an error if some OpenCL platform has no devices. This makes
OpenCL device detection work correctly in the following scenario:

$ OPENCV_OPENCL_DEVICE=:GPU: ./opencv_test_dnn

OpenCV version: 4.1.2-dev
OpenCV VCS version: 4.1.2-80-g467748ee98-dirty
Build type: Debug
Compiler: /usr/bin/g++  (ver 7.4.0)
Parallel framework: pthreads
CPU features: SSE SSE2 SSE3 *SSE4.1 *SSE4.2 *FP16 *AVX *AVX2 *AVX512-SKX?
Intel(R) IPP version: ippIP AVX2 (l9) 2019.0.0 Gold (-) Jul 24 2018
OpenCL Platforms:
    AMD Accelerated Parallel Processing
    Portable Computing Language
        CPU: pthread-AMD Ryzen 7 2700X Eight-Core Processor (OpenCL 1.2 pocl HSTR: pthread-x86_64-pc-linux-gnu-znver1)
    NVIDIA CUDA
        dGPU: GeForce GTX 1080 (OpenCL 1.2 CUDA)
Current OpenCL device:
    Type = dGPU
    Name = GeForce GTX 1080
    Version = OpenCL 1.2 CUDA
    Driver version = 430.26
2019-11-05 20:02:39 +03:00
Chip Kerchner
2112aa31e6 Merge pull request #15828 from ChipKerchner:momentsToHal
* Convert moments in tile algorithms to HAL (1.3x faster for VSX).

* Adding NEON code back in for non 64-bit platforms.

* Remove floats from post processing.
2019-11-05 18:52:35 +03:00
TH3CHARLie
2c2716de0f core(test): add test for YAML parse multiple documents
- added removal of temporary file
2019-11-05 18:39:07 +03:00
Igor Murzov
6d5b900324 Simplify OpenCL info dumping code:
* Reduce code nesting
* Drop redundant .c_str() calls
2019-11-05 14:49:49 +03:00
Oleg Alexandrov
53139e6ebe Merge pull request #15838 from oleg-alexandrov:patch-2
Correct stereoRectify documentation
2019-11-03 16:37:25 +03:00
Alexander Alekhin
a893969ec9 core(simd): v_setall template 2019-11-03 12:49:25 +00:00
Alexander Alekhin
d5bbb16066 Merge pull request #15834 from berak:python_fix_type_error 2019-11-02 18:50:46 +00:00
berak
b7c8e9e874 python: fix type error msg 2019-11-02 08:17:07 +01:00
Gael Colas
e65b51ca3c Merge pull request #15821 from ColasGael:colasg-viz-color
Fix wrong definition of viz::Color::navy()
2019-11-01 22:37:34 +03:00
Oleg Alexandrov
d56535afce Merge pull request #15820 from oleg-alexandrov:patch-1
Clarify stereoRectify() doc

The function stereoRectify() takes as input a coordinate transform between two cameras. It is ambiguous how it goes. I clarified that it goes from the second camera to the first.
2019-11-01 22:34:11 +03:00
yuriyluxriot
4e156a162f Merge pull request #15812 from yuriyluxriot:fls_replaces_tls
* Use FlsAlloc/FlsFree/FlsGetValue/FlsSetValue instead of TlsAlloc/TlsFree/TlsGetValue/TlsSetValue to implment TLS value cleanup when thread has been terminated on Windows Vista and above

* Fix 32-bit build

* Fixed calling convention of cleanup callback

* WINAPI changed to NTAPI

* Use proper guard macro
2019-11-01 22:33:12 +03:00
Chip Kerchner
ed7e4273cd Merge pull request #15555 from ChipKerchner:flipVectorize
* Vectorize flipHoriz and flipVert functions.

* Change v_load_mirror_1 to use vec_revb for VSX

* Only use vec_revb in ISA3.0

* Removing vec_revb code since some of the older compilers don't fully support it.

* Use new v_reverse intrinsic and cleanup code.

* Ensure there are no alignment issues with copies
2019-11-01 22:30:48 +03:00
Alexander Alekhin
657c17bb8c cmake: fix ITT define condition 2019-11-01 15:07:49 +03:00
Alexander Alekhin
cec7cc037b Merge pull request #15819 from alalek:ts_unblock_reporting_of_disabled_tests 2019-10-31 20:39:41 +00:00
Alexander Alekhin
5c12bafe80 Merge pull request #15805 from i-murzov:3.4 2019-10-31 20:39:16 +00:00
Ciprian Alexandru Pitis
d2e02779c4 Merge pull request #15799 from Cpitis:feature/parallelization
Parallelize pyrDown & calcSharrDeriv

* ::pyrDown has been parallelized

* CalcSharrDeriv parallelized

* Fixed whitespace

* Set granularity based on amount of threads enabled

* Granularity changed to cv::getNumThreads, now each thread should receive 1/n sized stripes

* imgproc: move PyrDownInvoker<CastOp>::operator() implementation

* imgproc(pyramid): remove syloopboundary()

* video: SharrDerivInvoker replace 'Mat*' => 'Mat&' fields
2019-10-31 23:38:49 +03:00
Oleg Alexandrov
af433d0352 Merge pull request #15780 from oleg-alexandrov:master
* Doc bugfix

The documentation page StereoBinaryBM and StereoBinarySGBM says that it returns a disparity that is scaled multiplied by 16. This scaling must be undone before calling reprojectImageTo3D, otherwise the results are wrong. The function reprojectImageTo3D() could do this scaling internally, maybe, but at least the documentation must explain that this has to be done.

* calib3d: update reprojectImageTo3D documentation

* calib3d: add StereoBM/StereoSGBM into notes list
2019-10-31 22:28:01 +03:00
Alexander Alekhin
ee044771a7 Merge pull request #15478 from terfendail:wintr_stereosgbm 2019-10-31 19:24:06 +00:00
Dizhenin Vlad
edc5518f68 Merge pull request #15608 from SimpleVlad:3.4
* Add flags for build js

* Add poi.json

* Rebase whitelist into JSON file

* Rework generator of white_list

* Fix small typos

* Transfer opencv_js.josn in opencv_js.config.py

* Edit OPENCV_JS_WHITELIST

* Write comment

* Add description

* Fix typos in desc

* flag's append deleeted

* Fix whitespace

* variable deleted

* fix comment on lines 229 and 235
2019-10-31 22:09:33 +03:00
Alexander Alekhin
79f792ad05 ts: do not block reporting of launched "DISABLED_" tests
If tests are run through GTest option `--gtest_also_run_disabled_tests`
2019-10-31 15:13:50 +03:00
Igor Murzov
a9d23a6479 Fix wording in some tutorials 2019-10-30 13:27:17 +03:00
Alexander Alekhin
bad4e5c3eb Merge pull request #15692 from alalek:core_tls_handle_thread_termination 2019-10-29 20:40:35 +00:00
Alexander Alekhin
e86c888a92 Merge pull request #15791 from alalek:android_camera2_issue_14915 2019-10-29 19:10:00 +00:00
Chip Kerchner
a71ff50130 Merge pull request #15623 from ChipKerchner:optimizeHOGpipeline
* Use circular lut hustory buffer in computeGradient of HOG

* Initialize prefetch data outside main loop.  Avoid code duplication.
2019-10-29 13:42:20 +03:00
Alexander Alekhin
80c4cedd25 android: use .getRowStride() in JavaCamera2View 2019-10-28 18:45:56 +00:00
André Lippok
86a8ff6129 Fixed typo in assertion 2019-10-27 17:43:31 +01:00
Alexander Alekhin
d8ab83600b Merge pull request #15761 from alalek:core_trace_itt_parameter 2019-10-26 21:39:08 +00:00
Alexander Alekhin
6ec5ae0215 core(trace): add ITT control parameter
- OPENCV_TRACE_ITT_ENABLE
2019-10-26 15:03:51 +00:00
Alexander Alekhin
7cf1054d36 Merge pull request #15764 from ChipKerchner:demosaicingToHal 2019-10-25 13:49:46 +00:00
Vitaly Tuzov
42b1d04999 StereoSGBM algorithm updated to use wide universal intrinsics 2019-10-25 16:34:16 +03:00
Vitaly Tuzov
1ce5a724c7 Fixed StereoBM uniqueness check 2019-10-24 17:54:49 +03:00
Alexander Alekhin
d65fead337 Merge pull request #15752 from dkurt:fix_15750 2019-10-24 07:06:32 +00:00
Alexander Alekhin
17e2bf5717 core(tls): implement releasing of TLS on thread termination
- move TLS & instrumentation code out of core/utility.hpp
- (*) TLSData lost .gather() method (to dispose thread data on thread termination)
- use TLSDataAccumulator for reliable collecting of thread data
- prefer using of .detachData() + .cleanupDetachedData() instead of .gather() method

(*) API is broken: replace TLSData => TLSDataAccumulator if gather required
(objects disposal on threads termination is not available in accumulator mode)
2019-10-24 06:36:18 +00:00
ChipKerchner
c46f119e0e Convert demosaic functions to HAL 2019-10-23 10:47:07 -05:00
Chip Kerchner
5a6a49405d Merge pull request #15738 from ChipKerchner:bugInt64x2Comparison
Fixing bug with comparison of v_int64x2 or v_uint64x2

* Casting v_uint64x2 to v_float64x2 and comparing does NOT work in all cases.  Rewrite using epi64 instructions - faster too.

* Fix bad merge.

* Fix equal comparsion for non-SSE4.1. Add test cases for v_int64x2 comparisons.

* Try to fix merge conflict.

* Only test v_int64x2 comparisons if CV_SIMD_64F

* Fix compiler warning.
2019-10-22 16:37:20 +03:00
Alexander Alekhin
1864b64f64 Merge pull request #15739 from dkurt:darknet_shortcut_asymm 2019-10-22 12:52:13 +00:00
Dmitry Kurtaev
dfe0368835 Fix custom IE layers in case of no MKLDNN plugin 2019-10-21 19:09:44 +03:00
Steve Nicholson
acb3b3bd4d Add documentation and example program for intersectConvexConvex 2019-10-19 22:08:07 -07:00
Dmitry Kurtaev
af61a15839 Fix Darknet eltwise 2019-10-19 12:54:15 +03:00
Alexander Alekhin
938d8dce06 Merge pull request #15685 from pmur:cnz64f-simd 2019-10-18 20:19:40 +00:00
Dmitry Kurtaev
adbd613660 Enable Eltwise layer with different numbers of inputs channels 2019-10-18 18:51:52 +03:00
Alexander Alekhin
24ebca5c59 core(simd): v_reverse() for MSA backend 2019-10-18 16:43:03 +03:00
Alexander Alekhin
ead7d6d80f Merge pull request #15716 from alalek:javadoc_fix 2019-10-17 22:35:14 +00:00
Alexander Alekhin
34df28db2b Merge pull request #15180 from terfendail:wintr_stereobm 2019-10-17 20:18:30 +00:00
Alexander Alekhin
a2b3cd9a2c Merge pull request #15709 from alalek:js_simd_reverse 2019-10-17 13:14:50 +00:00
Alexander Alekhin
d31da08d43 Merge pull request #15708 from alalek:js_simd_support_1.38.48 2019-10-17 13:14:34 +00:00
Alexander Alekhin
17e9fde75a Merge pull request #15718 from alalek:pylint_warnings 2019-10-17 10:46:03 +00:00
jasjuang
4c7db02925 document CC_STAT_MAX in ConnectedComponentsTypes 2019-10-16 17:22:25 -07:00
Alexander Alekhin
0e40c8a031 fix pylint warnings
pylint 1.8.3
2019-10-16 18:49:33 +03:00
Alexander Alekhin
86e7d82418 javadoc: fix generation with OpenJDK 11 2019-10-16 18:14:07 +03:00
Adam Rankin
3b070517ad
COMP: Enabling build with recent VTK version
VTK_MAJOR_VERSION not found unless header is included
2019-10-16 10:04:41 -04:00
Alexander Alekhin
ad5d14ec0e Merge pull request #15701 from alalek:issue_15691 2019-10-16 11:13:07 +00:00
Alexander Alekhin
bce653117f Merge pull request #15700 from alalek:issue_12943 2019-10-16 11:12:49 +00:00
Alexander Alekhin
ad172726c0 js(simd): v_reverse implementation 2019-10-15 18:46:08 +03:00
Alexander Alekhin
b1a8de0901 js(simd): support Emscripten 1.38.48-upstream 2019-10-15 15:39:22 +03:00
Alexander Alekhin
823884b064 core(alloc): force initialization of memalign flag
- before main() launch
2019-10-15 13:07:11 +03:00
Alexander Alekhin
6a7d1c15d3 core(ipp): skip huge input in flip()
- IPP/SSE4.2 works well
2019-10-14 18:26:19 +03:00
Chip Kerchner
027769bf5d Merge pull request #15662 from ChipKerchner:addVReverseIntrinsic
* New v_reverse HAL intrinsic for reversing the ordering of a vector

* Fix conflict.

* Try to resolve conflict again.

* Try one more time.

* Add _MM_SHUFFLE. Remove non-vectorize code in SSE2. Fix copy and paste issue with NEON.

* Change v_uint16x8 SSE2 version to use shuffles
2019-10-11 18:34:17 +03:00
Everton Constantino
9ca9249992 Merge pull request #15527 from everton1984:faster_acc
* Adding support for vectorized masking for uchar/ushort.

* Fixing bug where mask was zeroing the dst. Improved the way to calculate
the mask and tweaked for further performance improvements.

* Fixing mask comparison test.

* Restricting to one channel.

* Adding support for 3 channels, switch old approach to start using HAL's
v_select.
2019-10-11 18:32:59 +03:00
Paul E. Murphy
ec91a3d59d core: vectorize countNonZero64f
Improves performance a bit. 2.2x on P9 and 2 - 3x on coffee lake
x86-64.
2019-10-11 09:02:46 -05:00
Alexander Alekhin
dd4f591d54 Merge tag '3.4.8' 2019-10-09 18:33:35 +03:00
Alexander Alekhin
6bdb9ca725 OpenCV release (3.4.8)
OpenCV 3.4.8
2019-10-09 14:42:29 +03:00
Maksim Shabunin
1ca74c3c03 Merge pull request #15544 from mshabunin:disable_posix_memalign
* Disable posix_memalign by default

* core: fix memalign parameter handling
2019-10-09 14:06:12 +03:00
Alexander Smorkalov
c3a588037a Merge pull request #15666 from seanm:Wnewline 2019-10-09 11:04:44 +00:00
Marcin Tolysz
3fd36c1be1 Merge pull request #15658 from tolysz:patch-1
* Cuda + OpenGL on ARM

There might be multiple ways of getting OpenCV compile on Tegra (NVIDIA Jetson) platform, but mainly they modify CUDA(8,9,10...) source code, this one fixes it for all installations. 
( https://devtalk.nvidia.com/default/topic/1007290/jetson-tx2/building-opencv-with-opengl-support-/post/5141945/#5141945 et al.).
This way is exactly the same as the one proposed but the code change happens in OpenCV.

* Updated,
The link provided mentions: cuda8 + 9, I have cuda 10 + 10.1 (and can confirm it is still defined this way).
NVIDIA is probably using some other "secret" backend with Jetson.
2019-10-09 11:38:10 +03:00
Sean McBride
24effe8cd6 Fixed clang -Wnewline-eof warning by adding newline to end of file 2019-10-09 10:12:09 +03:00
Alexander Alekhin
6efdfee3f0 build: eliminate CUDA warnings 2019-10-08 15:30:02 +03:00
Alexander Alekhin
4748aca61f
Merge pull request #15642 from alalek:issue_15597 2019-10-08 00:33:20 +03:00
Sayed Adel
f2fe6f40c2 Merge pull request #15510 from seiko2plus:issue15506
* core: rework and optimize SIMD implementation of dotProd

  - add new universal intrinsics v_dotprod[int32], v_dotprod_expand[u&int8, u&int16, int32], v_cvt_f64(int64)
  - add a boolean param for all v_dotprod&_expand intrinsics that change the behavior of addition order between
    pairs in some platforms in order to reach the maximum optimization when the sum among all lanes is what only matters
  - fix clang build on ppc64le
  - support wide universal intrinsics for dotProd_32s
  - remove raw SIMD and activate universal intrinsics for dotProd_8
  - implement SIMD optimization for dotProd_s16&u16
  - extend performance test data types of dotprod
  - fix GCC VSX workaround of vec_mule and vec_mulo (in little-endian it must be swapped)
  - optimize v_mul_expand(int32) on VSX

* core: remove boolean param from v_dotprod&_expand and implement v_dotprod_fast&v_dotprod_expand_fast

  this changes made depend on "terfendail" review
2019-10-07 22:01:35 +03:00
Alexander Alekhin
7837ae0e19 Merge pull request #15654 from sturkmen72:patch-3 2019-10-07 16:15:04 +00:00
Alexander Alekhin
a007220c52 imgproc: update histogram test 2019-10-07 15:06:43 +03:00
Marcin Tolysz
53400d86e2 Fix compiler warnings for latest cuda npp which defines this itself as:
```
#define NPP_VER_MAJOR 10
#define NPP_VER_MINOR 2
#define NPP_VER_PATCH 0
#define NPP_VER_BUILD 243

#define NPP_VERSION (NPP_VER_MAJOR * 1000 +     \
                     NPP_VER_MINOR *  100 +     \
                     NPP_VER_PATCH)
2019-10-07 11:45:26 +01:00
Suleyman TURKMEN
c0489963bb
Update copy.cpp 2019-10-07 11:59:52 +03:00
Alexander Alekhin
98fc098216 Merge pull request #15646 from alalek:fix_avx512_detection 2019-10-05 15:30:09 +00:00
Alexander Alekhin
6d811f9879 Merge pull request #15641 from alalek:dnn_pytest_update_3.4 2019-10-05 15:28:52 +00:00
Alexander Alekhin
22d0c57a1c Merge pull request #15602 from alalek:core_softfloat_ubsan_shift 2019-10-05 15:27:35 +00:00
Alexander Alekhin
bdc097495a fix avx512 detection
- renamed Cascade Lake AVX512_CEL => AVX512_CLX (align with Intel SDE tool)
- fixed CLX instruction sets (no IFMA/VBMI)
- added flag to bypass CPU baseline check: OPENCV_SKIP_CPU_BASELINE_CHECK
2019-10-05 11:03:57 +00:00
Alexander Alekhin
feff8bf972 Merge pull request #15626 from alalek:dnn_openvino_2019r3 2019-10-04 19:45:37 +00:00
Alexander Alekhin
f301f17b61 imgproc: accurate histogram value thresholding 2019-10-04 19:56:25 +03:00
Alexander Alekhin
c13a5ce229 Merge pull request #15622 from dkurt:enet_ie_cpu 2019-10-04 16:31:05 +00:00
Alexander Alekhin
ab5252c18e dnn(pytest): backport changes from master, update test setUp() 2019-10-04 18:43:35 +03:00
Dmitry Kurtaev
e35fd463e7 Enable ENet with Inference Engine backend on CPU 2019-10-04 18:10:11 +03:00
Alexander Alekhin
fd11e3a81d dnn: update IE tests 2019-10-04 17:49:10 +03:00
Alexander Alekhin
22d86116ee Merge pull request #15634 from alalek:issue_15083_4903 2019-10-04 11:54:54 +00:00
APrigarina
c99db2b9db bug fix 2019-10-04 13:02:54 +03:00
Alexander Alekhin
c69245da1f imgproc: fix fitLine() implementation
- update optimal solutions on each iteration
2019-10-03 21:23:52 +00:00
Alexander Alekhin
2b66495a9d dnn: use OpenVINO 2019R3 defines 2019-10-02 18:47:01 +03:00
Alexander Alekhin
23bd1866ca Merge pull request #15620 from alalek:issue_14727 2019-10-02 14:29:56 +00:00
Alexander Alekhin
59c182ed2b Merge pull request #15467 from elmsfu:dshow/add_save_graph_file 2019-10-02 14:27:56 +00:00
Alexander Alekhin
c06115cb3f Merge pull request #15619 from alalek:dnn_eltwise_sum_ie_ocl 2019-10-01 18:02:45 +00:00
Elms
8b483a91bc dshow: Add ability to save direct show graph 2019-10-01 09:46:07 -07:00
Alexander Alekhin
8814645c8d dnn(test): skip IE/OCL test for "sum" 2019-10-01 18:29:47 +03:00
Alexander Alekhin
77346d7286 core: workaround transform() inplace calls 2019-10-01 16:52:14 +03:00
Alexander Alekhin
440a937d24 dnn: increase async test timeout 2019-10-01 13:31:57 +03:00
Alexander Alekhin
ba0b3983c6 Merge pull request #15609 from sturkmen72:update_loadsave_cpp 2019-09-30 18:37:21 +00:00
Sebastián Gurin
a3144cbadc Merge pull request #15480 from cancerberoSgx:estimateAffine2D
js - cv.estimateAffine2D, cv.warpPolar
2019-09-30 21:35:26 +03:00
ann
5c9a624a85 Merge pull request #15356 from APrigarina:3.4_version2
QR-Code detection: accuracy improvement

* first commit

* resize improvement

* resize improvement

* dummy commit

* warnings fix

* warnings fix

* warnings fix

* test added

* resize fix

* resize fix

* tests changed

* tests changed
2019-09-30 21:33:58 +03:00
Suleyman TURKMEN
d88d1c9935
Update loadsave.cpp 2019-09-28 23:24:17 +03:00
Alexander Alekhin
ed9bca969c core: fix UBSAN in softfloat 2019-09-27 16:29:50 +03:00
Alexander Alekhin
aa61e79615 Merge pull request #15600 from alalek:imgproc_pyramid_fix_indexing 2019-09-27 10:21:52 +00:00
Brandon
25dee8383c Merge pull request #15595 from frastlin:rodrigues
* Added Rodrigues to the JS embindgen.py and a unittest in test_calib3d.js on 3.4 base
2019-09-27 13:06:07 +03:00
Alexander Alekhin
f81e401cd0 imgproc: fix indexing issue in pyramids
UBSAN violation expression: 'tab = tabR - x;'
2019-09-26 18:09:47 +03:00
Alexander Alekhin
7ce9428e96 Merge pull request #15580 from smbz:dnn-lstm-reverse 2019-09-25 15:54:06 +00:00
Alexander Alekhin
677b94c92e Merge pull request #15579 from alalek:ocl_use_host_mem_ptr_flag 2019-09-25 15:12:59 +00:00
Andrew Ryrie
b88435fdc2 dnn: Allow LSTM layer to operate in reverse direction
This is useful for bidirectional LSTMs.
2019-09-25 14:12:43 +01:00
Alexander Alekhin
790927bb55 Merge pull request #15582 from terfendail:pyrdown_oob 2019-09-25 12:37:31 +00:00
Lubov Batanina
e923712d81 Merge pull request #15572 from l-bat:deconv3d
Fix computation of internal shapes in Deconvolution layer

* Fix computation of internal shapes

* Refactoring
2019-09-25 15:35:04 +03:00
Alexander Alekhin
eacadf0e73 core(ocl): add flag OPENCV_OPENCL_ENABLE_MEM_USE_HOST_PTR
to control CL_MEM_USE_HOST_PTR usage
2019-09-25 15:12:36 +03:00
Vitaly Tuzov
0a1b957331 StereoBM algorithm updated to use wide universal intrinsics 2019-09-25 14:37:12 +03:00
Vitaly Tuzov
1c17b3281a Fixed OOB reading in pyrDown 2019-09-25 13:24:17 +03:00
Alexander Alekhin
d2cacac07a Merge pull request #15573 from alalek:build_cxx11_warnings 2019-09-24 22:08:55 +00:00
Wenzhao Xiang
c2096771cb Merge pull request #15371 from Wenzhao-Xiang:gsoc_2019
[GSoC 2019] Improve the performance of JavaScript version of OpenCV (OpenCV.js)

* [GSoC 2019]

Improve the performance of JavaScript version of OpenCV (OpenCV.js):
1. Create the base of OpenCV.js performance test:
     This perf test is based on benchmark.js(https://benchmarkjs.com). And first add `cvtColor`, `Resize`, `Threshold` into it.
2. Optimize the OpenCV.js performance by WASM threads:
     This optimization is based on Web Worker API and SharedArrayBuffer, so it can be only used in browser.
3. Optimize the OpenCV.js performance by WASM SIMD:
     Add WASM SIMD backend for OpenCV Universal Intrinsics. It's experimental as WASM SIMD is still in development.

* [GSoC2019] 

1. use short license header
2. fix documentation node issue
3. remove the unused `hasSIMD128()` api

* [GSoC2019]

1. fix emscripten define
2. use fallback function for f16

* [GSoC2019]

Fix rebase issue
2019-09-24 16:30:42 +03:00
Alexander Alekhin
3cf9185159 Merge pull request #15538 from terfendail:wui_checkany 2019-09-23 15:52:24 +00:00
Maksim Shabunin
c8abf2ad14 backport: fixed warnings produced by clang-9.0.0
ea3dc78986
83fc27cb99
2019-09-23 18:36:18 +03:00
Alexander Alekhin
c4d2e3c0b3 Merge pull request #15566 from alalek:issue_15558 2019-09-23 09:22:06 +00:00
Alexander Alekhin
b40fd6de32 Merge pull request #15565 from alalek:issue_15561 2019-09-23 09:21:49 +00:00
Alexander Alekhin
fcc69d5a60 core(test): fix check conditions 2019-09-22 11:28:41 +00:00
Alexander Alekhin
fef7fc343e ml: add checks of empty train data 2019-09-22 11:12:19 +00:00
Alexander Alekhin
ad2854c8b3 imgcodecs: add check image.empty() in imwrite()/imencode() 2019-09-22 10:45:00 +00:00
mipsopen-fwu
b1ea91d8bd Merge pull request #15422 from mipsopen-fwu:msa-dev
* Added MSA implementations for mips platforms. Intrinsics for MSA and build scripts for MIPS platforms are added.

Signed-off-by: Fei Wu <fwu@wavecomp.com>

* Removed some unused code in mips.toolchain.cmake.

Signed-off-by: Fei Wu <fwu@wavecomp.com>

* Added comments for mips toolchain configuration and disabled compiling warnings for libpng.

Signed-off-by: Fei Wu <fwu@wavecomp.com>

* Fixed the build error of unsupported opcode 'pause' when mips isa_rev is less than 2.

Signed-off-by: Fei Wu <fwu@wavecomp.com>

* 1. Removed FP16 related item in MSA option defines in OpenCVCompilerOptimizations.cmake.
2. Use CV_CPU_COMPILE_MSA instead of __mips_msa for MSA feature check in cv_cpu_dispatch.h.
3. Removed hasSIMD128() in intrin_msa.hpp.
4. Define CPU_MSA as 150.
Signed-off-by: Fei Wu <fwu@wavecomp.com>

* 1. Removed unnecessary CV_SIMD128_64F guarding in intrin_msa.hpp.
2. Removed unnecessary CV_MSA related code block in dotProd_8u().

Signed-off-by: Fei Wu <fwu@wavecomp.com>

* 1. Defined CPU_MSA_FLAGS_ON as "-mmsa".
2. Removed CV_SIMD128_64F guardings in intrin_msa.hpp.

Signed-off-by: Fei Wu <fwu@wavecomp.com>

* Removed unused msa_mlal_u16() and msa_mlal_s16 from msa_macros.h.

Signed-off-by: Fei Wu <fwu@wavecomp.com>
2019-09-20 19:52:48 +03:00
Vitaly Tuzov
66842f5a18 Extended v_check_any/v_check_all universal intrinsics to support 64-bit integer 2019-09-19 18:31:31 +03:00
Alexander Alekhin
46fd112f9b Merge pull request #15399 from terfendail:perf_stereobm 2019-09-17 14:26:43 +00:00
Daniel Kapusi
d2872afce0 Merge pull request #15341 from DiebBlue:is5769
* issue 5769 fixed: cv::stereoRectify fails if given inliers mask of type vector<uchar>

* issue5769 fix using reshape and add regression test

* regression test with outlier detection, testing vector and mat data

* Size comparision of wrong vector within CV_Assert in regression test corrected

* cleanup test code
2019-09-17 00:04:05 +03:00
Alexander Alekhin
70c88a2087 Merge pull request #15517 from mshabunin:fix-osx-avfoundation-auth 2019-09-16 15:28:34 +00:00
Alexander Alekhin
7770ba1f10 Merge pull request #15491 from terfendail:undistort_fix 2019-09-16 15:24:29 +00:00
Vitaly Tuzov
7b3a752012 Fixed universal intrinsic undistort() implementation 2019-09-16 17:16:38 +03:00
Alexander Alekhin
03c4c67dad Merge pull request #15518 from mshabunin:fix-osx-qt 2019-09-13 17:06:00 +00:00
Alexander Alekhin
48fa39f675 Merge pull request #15487 from dkurt:fix_ie_2019r1 2019-09-13 16:57:34 +00:00
Maksim Shabunin
5c0502b470 Fixed OSX build with Qt 2019-09-13 15:23:59 +03:00
Maksim Shabunin
f10fce9ab4 AVFoundation: backported runtime authorization check from master 2019-09-13 13:20:29 +03:00
Maksim Shabunin
aaad238c6e AVFoundation: fix authorization request not being shown 2019-09-13 13:11:35 +03:00
Dmitry Kurtaev
0428f60d66 Fix OpenVINO 2019R1 compilation 2019-09-13 09:22:34 +03:00
Paul E. Murphy
b465c82696 core: workaround old gcc vec_mul{e,o} (Issue #15506)
ISA 2.07 (aka POWER8) effectively extended the expanding multiply
operation to word types. The altivec intrinsics prior to gcc 8 did
not get the update.

Workaround this deficiency similar to other fixes.

This was exposed by commit 33fb253a66
which leverages the int -> dword expanding multiply.

This fixes Issue #15506
2019-09-12 09:54:02 -05:00
Vitaly Tuzov
bf8b5ffeb1 Added performance test for StereoBM algorithm 2019-09-09 16:37:06 +03:00
Alexander Alekhin
b3a0507546 Merge pull request #15475 from alalek:build_eliminate_warning_array_bounds 2019-09-06 15:57:52 +00:00
Alexander Alekhin
bdf23ce855 ts: eliminate -Warray-bounds warning 2019-09-06 18:06:02 +03:00
Alexander Alekhin
e7b6753a10 imgproc: avoid manual memory allocation in connectedcomponents.cpp 2019-09-05 16:20:08 +03:00
Jaime
fafada28eb Merge pull request #14872 from AhiyaHiya:feature/topmost_window
* Added mechanism to set/toggle NORMAL window to TOPMOST window.

* highgui: remove unnecessary/legacy code
2019-09-05 13:55:17 +03:00
Alexander Alekhin
0a13633411 Merge pull request #15444 from alalek:ocl_fix_fft_kernel 2019-09-04 16:25:34 +00:00
Everton Constantino
76e403cf25 Merge pull request #15440 from everton1984:new_integral_tests
* Adding all possible data type interactions to the perf tests since some
use SIMD acceleration and others do not.

* Disabling full tests by default.

* Giving proper names, removing magic numbers and sanity checks of new
performance tests for the integral function.

* Giving proper names, making array static.
2019-09-04 19:14:00 +03:00
Dmitry Kurtaev
ba703157cf Merge pull request #15063 from dkurt:dnn_ie_ocv_layers
* Wrap unsupported by IE layers as custom layers

* Replace pointers to layers blobs to their shapes

* Enable Faster R-CNN with IE backend on CPU
2019-09-03 18:58:57 +03:00
Alexander Alekhin
8bd2720c28 core(ocl): fix fft kernel compilation
- error: variables in the local address space can only be declared in the outermost scope of a kernel function
2019-09-03 15:46:53 +03:00
Alexander Alekhin
7e46766c8d Merge pull request #15437 from devnexen:fbsd_opencl_build_fix 2019-09-03 12:21:02 +00:00
Alexander Alekhin
9ef5373776 Merge pull request #15435 from alalek:update_version_3.4.8-pre 2019-09-03 12:04:23 +00:00
Alexander Alekhin
abd7d63b74 Merge pull request #15424 from mshabunin:add-cmake-docs 2019-09-03 10:50:45 +00:00
David Carlier
6769ee3748 OpenCL: FreeBSD build fix 2019-09-02 18:30:53 +01:00
Alexander Alekhin
0fda243a05 pre: OpenCV 3.4.8 (version++) 2019-09-02 14:20:49 +03:00
Alexander Alekhin
70dfae31a2 experimental version++ 2019-09-02 14:17:36 +03:00
Alexander Alekhin
048ddbf9ee Merge pull request #15339 from pmur:dotprod-32s-vsx 2019-08-31 11:16:04 +00:00
Alexander Alekhin
2a6527e751 Merge pull request #15402 from ChipKerchner:normUnroll 2019-08-31 11:10:05 +00:00
Chip Kerchner
26228e6b4d Merge pull request #15358 from ChipKerchner:imgwarpToHal
* Convert ImgWarp from SSE SIMD to HAL - 2.8x faster on Power (VSX) and 15% speedup on x86

* Change compile flag from CV_SIMD128 to CV_SIMD128_64F for use of v_float64x2 type

* Changing WarpPerspectiveLine from class functions and dispatching to static functions.

* Re-add dynamic runtime and dispatch execution.

* RRestore SSE4_1 optimizations inside opt_SSE4_1 namespace
2019-08-31 13:47:58 +03:00
Maksim Shabunin
f3aab47f94 Assorted documentation fixes
* removed private flann documentation
* common tutorial images moved to doc/images
* grouping issues
2019-08-31 01:50:11 +03:00
Alexander Alekhin
f224d740a3 Merge pull request #15414 from kuzi117:instr 2019-08-30 12:03:19 +00:00
Alexander Alekhin
e319340253 Merge pull request #15417 from alalek:ts_fix_callback_signature 2019-08-29 18:40:19 +00:00
Braedy Kuzma
9bf8b496d6 Use commonly supported instruction mnemonic. 2019-08-29 10:00:40 -06:00
Braedy Kuzma
d4120dd2fe Disambiguate vecpopcnt for (u)dword2. 2019-08-29 09:54:56 -06:00
Alexander Alekhin
654d0c29ad ts: fix callback function signature
detected by UBSAN
2019-08-29 15:09:32 +03:00
Alexander Alekhin
8d0b3dad5c Merge pull request #15357 from ChipKerchner:fastCorner 2019-08-29 08:26:31 +00:00
Lubov Batanina
90eb529bc4 Merge pull request #15395 from l-bat:fully_connected
* Fix IE FullyConnected layer

* Fix MyriadX
2019-08-29 10:52:02 +03:00
Alexander Alekhin
6506c19ac3 Merge pull request #15407 from terfendail:test_check_any 2019-08-28 16:39:01 +00:00
Chip Kerchner
30a60d396b Merge pull request #15274 from ChipKerchner:lkpyramidToHal
* Convert lkpyramid from SSE SIMD to HAL - 90% faster on Power (VSX).

* Replace stores with reduce_sum.  Rework to handle endianess correctly.

* Fix compiler warnings by casting values explicitly to shorts

* Switch to CV_SIMD128 compiler definition.  Unroll loop to 8 elements since we've already loaded the data.
2019-08-28 18:56:48 +03:00
Vitaly Tuzov
d134ec54c5 Extend tests for v_check_any and v_check_all intrinsics 2019-08-28 14:53:31 +03:00
Alexander Alekhin
ca7640e10f Merge pull request #15401 from ChipKerchner:vectorReduceInt8Bug 2019-08-27 19:59:39 +00:00
ChipKerchner
288e6f9c07 –Improve vectorization in the 'norm' functions 2019-08-27 12:15:19 -05:00
ChipKerchner
70b883cfeb Fix macro bug with v_reduce_min and v_reduce_max for chars in VSX 2019-08-27 11:38:53 -05:00
Vitaly Tuzov
1b40528e1a Fix for AVX2 implementation of v_check_any(), v_check_all() intrinsics 2019-08-27 14:31:23 +03:00
atinfinity
824465ea27 Merge pull request #15388 from atinfinity:impl-turbo-colormap
Implementation of colormap "Turbo" (#15388)

* implemented turbo colormap

* add colormap image

* changed float value to avoid cast

* sorted flag check alphabetically
2019-08-26 17:55:10 +03:00
Dmitry Kurtaev
57676cf64d Fix https://github.com/opencv/opencv/issues/15141 2019-08-24 23:14:26 +03:00
Alexander Alekhin
114674c3d9 Merge pull request #15383 from alalek:fix_15379 2019-08-23 16:19:36 +00:00
Alexander Alekhin
c05595e482 Merge pull request #15382 from alalek:fix_15287 2019-08-23 16:09:13 +00:00
Alexander Alekhin
d7409604b5 core: handle empty Mat in Mat_ assignment operators 2019-08-23 16:54:24 +03:00
Alexander Alekhin
29dbeb253c build: fix build with ICC 2019-08-23 16:36:32 +03:00
Alexander Alekhin
5a497077f1 objdetect: add input check in HOG detector 2019-08-23 16:14:53 +03:00
Alexander Alekhin
56e832ee43 Merge pull request #15372 from alalek:core_stat_fix_intrin 2019-08-22 20:52:54 +00:00
Alexander Alekhin
601096f360 Merge pull request #15370 from alalek:core_fastmath_hpp_update 2019-08-22 17:05:38 +00:00
Alexander Alekhin
8a0b93bc4d core: update fastmath.hpp 2019-08-22 16:43:07 +03:00
Alexander Alekhin
8b1fe8f6e0 core: fix stat SIMD code 2019-08-22 16:37:26 +03:00
Alexander Alekhin
7243eda2ff Merge pull request #15316 from sturkmen72:update_seamless_cloning_cpp 2019-08-22 11:37:38 +00:00
Alexander Alekhin
84b8a2fb05 Merge pull request #15303 from dkurt:fix_15296 2019-08-21 16:59:20 +00:00
Zyrin
869ea22f34 Use std::move in Mat_<T> move constructors 2019-08-21 11:12:00 +02:00
Zyrin
8ef8088686 Fix stack overflow on gcc with c++17 (#15343) 2019-08-21 10:57:03 +02:00
Paul E. Murphy
33fb253a66 core: vectorize dotProd_32s
Use 4x FMA chains to sum on SIMD 128 FP64 targets. On
x86 this showed about 1.4x improvement.

For PPC, do a full multiply (32x32->64b), convert to DP
then accumulate. This may be slightly less precise for
some inputs. But is 1.5x faster than the above which
is about 1.5x than the FMA above for ~2.5x speedup.
2019-08-20 15:28:36 -05:00
ChipKerchner
51ceabb2eb Change fast corner flags in HAL version from char array to single int 2019-08-20 13:25:35 -05:00
Suleyman TURKMEN
a1e96a7deb Update seamless_cloning.cpp 2019-08-16 17:35:22 +03:00
luz.paz
fcc7d8dd4e Fix modules/ typos
Found using `codespell -q 3 -S ./3rdparty -L activ,amin,ang,atleast,childs,dof,endwhile,halfs,hist,iff,nd,od,uint`

backporting of commit: ec43292e1e
2019-08-16 17:34:29 +03:00
Alexander Alekhin
13ecd5bb25 Merge pull request #15122 from pmur:fast-math-improvements 2019-08-14 19:28:05 +00:00
Alexander Alekhin
a703b9ed84 Merge pull request #15101 from alalek:cmake_initialization 2019-08-14 19:17:07 +00:00
Dmitry Kurtaev
e4a80aee09 Fix #15296 2019-08-14 19:44:05 +03:00
Alexander Alekhin
32772a5436 3.4: backported changes from 'master' branch 2019-08-14 16:36:08 +03:00
Alexander Alekhin
7c96857c02 Merge pull request #15292 from alalek:build_warnings_xcode_10_3 2019-08-13 14:18:48 +00:00
Alexander Alekhin
15b8a8d935 build: eliminate warnings with Xcode 10.3 2019-08-13 15:06:13 +03:00
Alexander Alekhin
e0cb01e2cf Merge pull request #15249 from dkurt:dnn_ie_tests_2019r2 2019-08-12 16:32:38 +00:00
Hugo Lindström
935067ee05 Merge pull request #15265 from hugolm84:wince-armv7-supports-neon
* WINCE 8.0 requires ARMv7 Thumb2 and thus have NEON instructions

* Only add NEON if on _ARM_
2019-08-09 18:01:37 +03:00
Chip Kerchner
d513fb4c8e Merge pull request #15199 from ChipKerchner:hogToHal
Convert HOG from SSE SIMD to HAL - 35-45% faster on Power (VSX) (#15199)

* Convert SSE SIMD to HAL. 35-45% improvement for Power (VSX)

* Remove CV_NEON code. Use v_floor instead of 3 lines of code.

* Invert comparison logic to simplify code.

* Change initialization from v_load to constructor type.
2019-08-08 18:57:03 +03:00
Alexander Alekhin
596b8a5d06 Merge pull request #15263 from alalek:videoio_skip_msmf_tests3 2019-08-08 15:47:08 +00:00