Commit Graph

807 Commits

Author SHA1 Message Date
Alexander Alekhin
21e28adb87 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2020-05-22 19:50:14 +00:00
Nesterov Alexander
735c31bb4a Resolve type conflict 2020-05-20 18:05:27 +03:00
Nesterov Alexander
b7253e3280 Update version quirc 2020-05-20 17:55:14 +03:00
Alexander Alekhin
c722625f28 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2020-04-28 16:53:19 +00:00
Alexander Alekhin
288fa70ed9 dnn(protobuf): backport AllowUnknownField(), SetRecursionLimit()
- limit recursion in SkipField*() calls
2020-04-25 20:45:43 +00:00
Alexander Alekhin
ca9756f6a1 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2020-04-13 20:00:12 +00:00
Alexander Alekhin
49a75079f2 Merge pull request #17047 from alalek:fix_permissions 2020-04-13 12:34:08 +00:00
Alexander Alekhin
f0ffc52435 fix files permissions 2020-04-13 04:29:55 +00:00
Conrad Poelman
b77fe9d624 Remove std::binary_function as it's invalid C++
std::binary_function was deprecated with C++11 and removed in C++17. It provided just two typedefs which in this case were unused.
2020-04-10 16:16:52 +03:00
Alexander Alekhin
ef395c3866 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2020-03-24 11:12:11 +00:00
Alexander Alekhin
f44a0960df Merge pull request #16894 from alalek:update_tbb 2020-03-24 08:40:46 +00:00
Alexander Alekhin
b1ed003d08
Merge pull request #16893 from alalek:update_libwebp
* 3rdparty: update libwebp 1.0.3 => 1.1.0

- https://github.com/webmproject/libwebp/releases/tag/v1.1.0

* 3rdparty(libwebp): re-apply OpenCV patches
2020-03-24 08:40:18 +00:00
Alexander Alekhin
22d930998b Merge pull request #16892 from alalek:update_libtiff 2020-03-24 08:39:39 +00:00
Alexander Alekhin
fa002bde01 3rdparty: update TBB 2020.0 => 2020.1 2020-03-23 20:37:08 +00:00
Alexander Alekhin
13c4dc0e69 3rdparty: update libtiff 4.0.10 => 4.1.0
- https://gitlab.com/libtiff/libtiff/-/tags/v4.1.0
2020-03-23 18:43:45 +00:00
Alexander Alekhin
ad4e5dbd3d 3rdparty: libjpeg-turbo 2.0.2 => 2.0.4
- https://github.com/libjpeg-turbo/libjpeg-turbo/releases/tag/2.0.4
2020-03-23 18:26:18 +00:00
Alexander Alekhin
4cdb4652cf Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2020-03-20 21:41:15 +00:00
NesQl
bf224e61a9
Merge pull request #16832 from liqi-c:3.4-tengine-android
* Add android support for tengine

* modify tengine download use commit id

* Del some invalid log in Tengine

* Test. default enable tengine

* ndk version judegment

* Close test . set Tengine default OFF

* Logic problem

* test .Android NDK judgement .

* Cmake error modify.

* cmake: cleanup tengine scripts

* cmake: use tengine target name

* cmake: disable testing of BUILD_ANDROID_PROJECTS=OFF

* Close test .
2020-03-20 10:10:39 +00:00
Alexander Alekhin
11b08b5ff3 ffmpeg/4.x: update FFmpeg plugin 2020-03-11 10:57:47 +00:00
Alexander Alekhin
155b751a75 ffmpeg/3.4: update FFmpeg wrapper
- FFmpeg 3.4.7
2020-03-10 19:05:50 +00:00
Alexander Alekhin
9b3be01b83 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2020-03-09 20:27:34 +00:00
NesQl
0bcdf7d03e
Merge pull request #16724 from liqi-c:3.4-tengine
* Add Tengine support .

* Modify printf to CV_LOG_WARNING

* a few minor fixes in the code

* Renew Tengine version

* Add header file for CV_LOG_WARNING

* Add #ifdef HAVE_TENGINE in tengine_graph_convolution.cpp

* remove trailing whitespace

* Remove trailing whitespace

* Modify for compile problem

* Modify some code style error

* remove whitespace

* Move some code style problem

* test

* add ios limit and build problem

* Modified as alalek suggested

* Add cmake 2.8 support

* modify cmake 3.5.1 problem

* test and set BUILD_ANDROID_PROJECTS OFF

* remove some compile error

* remove some extra code in tengine

* close test.

* Test again

* disable android.

* delete ndk version judgement

* Remove setenv() call . and add License information

* Set tengine default OFF. Close test .

Co-authored-by: Vadim Pisarevsky <vadim.pisarevsky@gmail.com>
2020-03-09 14:59:23 +00:00
Alexander Alekhin
45d073f889 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2020-02-26 20:09:03 +03:00
Ivan Galanin
f9bd025722
Merge pull request #16639 from iigalanin:patch-1
* Update to new ICV packages

MacOS ia32 ICV package is no longer built.

* cmake(ippicv): add Apple 32-bit check

* Updated commit hash
2020-02-25 22:04:11 +03:00
Alexander Alekhin
b29512032a 3rdparty(openexr): fix compilation with MSVS2019 2020-02-21 17:48:28 +03:00
Alexander Alekhin
560f85f8e5 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2020-01-28 14:26:57 +03:00
Alexander Alekhin
ffaf15d0d9 cmake: reuse OpenCV NEON detection in carotene
- use carotene if NEON available only
2020-01-24 16:42:56 +03:00
Alexander Alekhin
3d14dd4e39 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2020-01-22 16:58:30 +03:00
Alexander Alekhin
f429cee5d1 Merge pull request #16369 from kraj:gcc10 2020-01-17 08:58:20 +00:00
Khem Raj
2bd9488475 carotene: Replace ipcp-unit-growth with ipa-cp-unit-growth on gcc >= 10
gcc 10+ has renamed this option, therefore check for gcc version before
deciding which name to use for opt parameter

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-01-16 11:02:25 -08:00
Alexander Alekhin
4c86fc13cb Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-12-19 15:09:05 +03:00
Alexander Alekhin
28a5f7d66b 3rdparty: TBB version 2019u8 => 2020.0 2019-12-18 23:14:38 +00:00
Alexander Alekhin
c6c8783c60 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-12-16 21:30:30 +00:00
Tatsuro Shibamura
971ae00942 Merge pull request #16027 from shibayan:arm64-windows10
* Support ARM64 Windows 10 platform

* Fixed detection issue for ARM64 Windows 10

* Try enabling ARM NEON intrin

* build: disable NEON with MSVC compiler

* samples(directx): gdi32 dependency
2019-12-17 00:23:30 +03:00
Alexander Alekhin
ba7b0f4c54 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-12-15 11:23:46 +00:00
Alexander Alekhin
60f81032bb
Merge pull request #16157 from alalek:update_libwebp_1.0.3
* 3rdparty: update libwebp 1.0.2 => 1.0.3

https://github.com/webmproject/libwebp/releases/tag/v1.0.3

* 3rdparty(libwebp): re-apply patches
2019-12-13 17:54:42 +03:00
Alexander Alekhin
a45928045a
Merge pull request #16150 from alalek:cmake_avoid_deprecated_link_private
* cmake: avoid deprecated LINK_PRIVATE/LINK_PUBLIC

see CMP0023 (CMake 2.8.12+)

* cmake: fix 3rdparty list

- don't include OpenCV modules
2019-12-13 17:52:40 +03:00
Alexander Alekhin
744798aadd ffmpeg/4.x: update FFmpeg plugin 2019-11-19 22:04:44 +00:00
Alexander Alekhin
d00eb451bf ffmpeg/3.4: update FFmpeg wrapper 2019-11-18 19:13:45 +00:00
Alexander Alekhin
fc41c18c6f Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-11-18 13:56:24 +03:00
Alexander Alekhin
7ecdcf6ca6 build: GCC9 compilation 2019-11-12 18:49:34 +03:00
Alexander Alekhin
a74fe2ec01 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-09-20 21:11:49 +00:00
Alexander Alekhin
eabbe38001
Merge pull request #15554 from alalek:pr15422_patch_files
* 3rdparty: libpng v1.6.37 MSA patch (pr15422)

original files: https://github.com/glennrp/libpng/tree/v1.6.37/mips

* 3rdparty: libwebp MSA asm patch (pr15422)
2019-09-21 00:07:24 +03: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
Alexander Alekhin
95a55250a7 ffmpeg/4.x: update FFmpeg plugin
ffmpeg: 4.1.3 -> 4.2.1
libvpx: 1.8.0 -> 1.8.1
2019-09-10 03:13:21 +00:00
Alexander Alekhin
6a49887695 ffmpeg/3.4: update FFmpeg wrapper 2019-09-05 21:36:06 +00:00
Alexander Alekhin
a7b954f655 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-08-23 19:24:37 +03:00
Alexander Alekhin
6bf6d1dc6b Merge pull request #15373 from pmur:libpng-vsx-fix 2019-08-22 20:54:34 +00:00
Paul E. Murphy
8aca1934ff libpng: update check for VSX enablement
The deprecated flag ENABLE_VSX should not be used to enable this
feature. Instead, use the baseline cpu feature set to determine.
2019-08-22 10:08:01 -05:00
Rosen Penev
58ca013b90 Merge pull request #15279 from neheb:patch-1
* jas_stream: Add definition for L_tmpnam if missing

uClibc-ng for some reason does not provide a definition when some
deprecated APIs are disabled. Value taken from the musl libc.

* 3rdparty: move uClibc-ng workaround into config file
2019-08-21 12:59:09 +03:00
Alexander Alekhin
19a4b51371 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-08-16 18:48:08 +03:00
Alexander Alekhin
5ef548a985 cmake: update initialization 2019-08-08 15:23:16 +03:00
Alexander Alekhin
174b4ce29d Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-08-05 18:11:43 +00:00
Alexander Alekhin
d2c64b566b Merge pull request #15227 from tomoaki0705:fixFallThroughCarotene 2019-08-05 12:44:00 +00:00
Tomoaki Teshima
d6ba235655 fix fall through warning 2019-08-05 17:42:48 +09:00
Alexander Alekhin
0cf479dd5c Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-07-25 19:21:47 +00:00
Hugo Lindström
2ee00e7f7d Merge pull request #15059 from hugolm84:improved-support-for-wince
* Improve support for Windows Embedded Compact

* Remove redundant set(WINCE true) and format CMake
2019-07-24 23:12:09 +03:00
Alexander Alekhin
43eba3d750 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-07-04 18:44:13 +03:00
Alexander Alekhin
ca022fdb4c 3rdparty(itt): support AARCH64 2019-07-03 18:35:43 +03:00
Alexander Alekhin
097d81363b Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-07-02 21:17:45 +00:00
Alexander Alekhin
43e457c883 3rdparty: TBB version 2018u1 => 2019u8
- make it configurable via OPENCV_TBB_RELEASE + OPENCV_TBB_RELEASE_MD5
- remove legacy support
2019-06-29 11:16:49 +00:00
Alexander Alekhin
26dfa5e77c ffmpeg: win32 wrapper update 2019-06-16 16:20:40 +00:00
Alexander Alekhin
6aab6a251c ffmpeg: update 3.4.6
libvpx: 1.8.0
2019-06-12 16:54:47 +00:00
Alexander Alekhin
11b020b9f9 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-06-10 19:05:28 +00:00
Alexander Alekhin
878af7ada8
Merge pull request #14725 from alalek:update_openexr_2.3.0
3rdparty: update OpenEXR 2.3.0 (#14725)

* openexr 2.2.1

* openexr 2.3.0

* openexr: build fixes

* openexr: build dwa tables on-demand
2019-06-10 20:04:23 +03:00
Alexander Alekhin
f3de2b4be7 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-06-05 19:11:52 +03:00
Alexander Alekhin
1febb12942 3rdparty: apply protobuf v3.5.1..v3.5.2 patch
https://github.com/protocolbuffers/protobuf/compare/v3.5.1..v3.5.2
2019-06-04 12:57:34 +03:00
Alexander Alekhin
9802b4e123 Merge pull request #14707 from alalek:update_libwebp_1.0.2 2019-06-04 09:21:35 +00:00
Alexander Alekhin
e1ef7a2288 Merge pull request #14705 from alalek:update_libjpeg_9c 2019-06-04 09:21:17 +00:00
Alexander Alekhin
f768f89803 Merge pull request #14704 from alalek:fix_missing_files_libjpeg_turbo_2.0.2 2019-06-04 09:19:58 +00:00
Alexander Alekhin
f1b6228d4f 3rdparty(webp): enable -std=c99 2019-06-03 22:23:34 +00:00
Alexander Alekhin
d58f9ae824 3rdparty: update libwebp 1.0.0 => 1.0.2
https://github.com/webmproject/libwebp/releases/tag/v1.0.2
2019-06-03 22:23:34 +00:00
Alexander Alekhin
0ec72cbd10 3rdparty: update libjpeg 9c
https://www.ijg.org/
2019-06-03 16:21:02 +03:00
Alexander Alekhin
68e220e7bb 3rdparty: fix missing files from libjpeg-turbo 2.0.2 2019-06-03 15:42:51 +03:00
Alexander Alekhin
143b3d2b5b 3rdparty(libpng): re-apply OpenCV patches 2019-06-03 15:04:51 +03:00
Alexander Alekhin
e96c94c4e4 3rdparty: update libpng 1.6.37
http://www.libpng.org/pub/png/libpng.html
https://github.com/glennrp/libpng/releases
2019-06-03 14:49:44 +03:00
Alexander Alekhin
43de95eb19 3rdparty(libpng): fix leak in png_handle_eXIf
backporting of commit: 419a6d51b3
2019-05-29 20:15:55 +00:00
Alexander Alekhin
419a6d51b3 3rdparty(libpng): fix leak in png_handle_eXIf
oss-fuzz: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13314
ported commit: a142b7a543
2019-05-29 18:51:52 +00:00
Alexander Alekhin
dfb9832a25 cmake(protobuf): ensure using of own headers 2019-04-15 22:28:33 +00:00
Alexander Alekhin
4001346a30 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-04-03 19:33:52 +00:00
Alexander Alekhin
d8b8c3b145 Merge pull request #14233 from alalek:cmake_fix_license_install 2019-04-03 19:30:47 +00:00
Alexander Alekhin
4fa4bef41d cmake: fix licenses install rules 2019-04-02 19:24:14 +03:00
Alexander Alekhin
97548b01c7 FFmpeg: try to download wrapper with elevated privileges 2019-04-02 16:40:11 +03:00
Alexander Alekhin
10ce935823 3rdparty(zlib): prevent uninitialized use of state->check
backporting of commit: 8afb2f0cb7
2019-03-30 20:26:49 +00:00
Alexander Alekhin
8afb2f0cb7 3rdparty(zlib): prevent uninitialized use of state->check
ozz-fuzz: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13317
PR: https://github.com/opencv/opencv/pull/14193
zlib upstream bug: madler/zlib#245
Ported fix: ee376c65ab
2019-03-30 18:46:10 +00:00
Alexander Alekhin
90df5e00b4 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-03-26 18:56:54 +00:00
iPanda
097fc1a271 Merge pull request #13972 from Mainvooid:add_cuda_support_for_D3D11_interop
* Add CUDA support for D3D11 interop. #13888

color_detail.hpp: fixed build error : dynamic initialization is not supported for a __constant__ variable.
directx.cpp: Add CUDA support(cl_nv_d3d11_sharing) for D3D11 interop.  #13888

Update directx.cpp

Format adjustment.

Update directx.cpp

fix error.

Update directx.cpp

Format adjustment

Update directx.cpp

fix trailing whitespace.

fix format errors

convert indentation to spaces .
Trim trailing whitespace.
Add information about source of cl_d3d11_ext.h
Avoid unrelated changes.

Increase compile-time conditional judgment.

Increase the judgment of whether the OCL device has the required extensions at compile time.

Add compilation option  `HAVE_CLNVEXT`.Check CL support in runtime.

Check result of `clGetExtensionFunctionAddressForPlatform` for KHR is invalid.It always can get the address(from OpenCL.dll),So I check NV support(from nvopencl64.dll) before KHR when `HAVE_CLNVEXT` is enabled.

Delete cl_d3d11_ext.h

Modified parameter list

fix "cannot open include file: 'CL/cl_d3d11_ext.h'"

 remove not referenced var

fix C2143: syntax error

Improve compile-time judgment.

dlrectx.cpp Modify the detection order.
initializeContextFromD3D11Device:
```
    // try with NV(Need to check it first)
    // try with KHR
```

fix warnig C4100

Revert "fix warnig C4100"

This reverts commit 76e5becb67780071d0cbde61cc4f5f807ad7c5ac.

fix warning C4100

fix warning C4505

Format alignment

Format adjustment and automatically detect header files.

Automatically detect header files when users are not configured or configuration errors occur.

avoid unrelated changes.

Update .cmake

Update .cmake

* fix build errors

* fix warning:defined but not used

* Revert "fix warning:defined but not used"

This reverts commit 7ab3537cd0.

* fix warning:defined but not used

* fix build error for mac

* fix build error for win

* optimizing branch judgment

* Revert "optimizing branch judgment"

This reverts commit 88b72b870e.

* fix warning C4702: unreachable code

* remove unused code

* Fix problems that may lead to undefined behavior

* Add status check

* fix error C2664,C2665 : cannot convert argument

* Format adjustment

VSCODE will automatically format the indentation to 4 spaces in some situation.

* fix error C2440

* fix error C2440

* add cl_d3d11_ext.h

* Format adjustment

* remove unnecessary checks
2019-03-24 18:34:09 +03:00
Alexander Alekhin
26087e28ad Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-03-15 22:42:57 +00:00
Alexander Alekhin
40dd96e83a 3rdparty: fix libtiff build
Keep `_FILE_OFFSET_BITS` undefined in Android builds.
2019-03-14 19:35:02 +00:00
Alexander Alekhin
c3cf35ab63 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-02-26 17:34:42 +03:00
Alexander Alekhin
d5a3ad5b64 3rdparty: update libjpeg-turbo/CMakeLists.txt 2019-02-26 12:30:46 +03:00
Juha Reunanen
30cf5e0164 Update libjpeg-turbo from 1.5.3 to 2.0.2 2019-02-26 12:30:46 +03:00
Alexander Alekhin
8bde6aea4b Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-02-19 19:49:13 +00:00
Alexander Alekhin
bd00471a89 Merge pull request #13808 from tailsu:sd/libtiff-4.0.10 2019-02-14 09:36:10 +00:00
Stefan Dragnev
ff1ec6ccc6 update to libtiff-4.0.10 2019-02-14 09:28:14 +01:00
Stefan Dragnev
094615b2c5 update libpng to 1.6.36
* re-enabled NEON routines for arm64
2019-02-13 14:54:18 +01:00
Alexander Alekhin
40959fcc61 Merge pull request #13637 from berak:fix_openvx 2019-01-18 14:56:31 +00:00
berak
53c2ebf7f6 fix openvx wrappers 2019-01-16 12:10:22 +01:00
Alexander Alekhin
7e2ebecd52 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-01-10 12:29:41 +03:00
Thomas Peters
e8ac3ea9ea fix implicit fallthrough warning. 2019-01-08 09:49:45 -05:00
Alexander Alekhin
cbf80117af eliminate build warnings 2018-12-19 15:42:38 +03:00
Maksim Shabunin
26cb154f40 Fixed NEON detection in Carotene build 2018-11-26 11:33:18 +03:00
Maksim Shabunin
fb6929ac3d Fixed NEON detection in Carotene build 2018-11-26 11:30:20 +03:00
Alexander Alekhin
bea312bd65
Merge pull request #13183 from tomoaki0705:fixCaroteneColorConvert2Gray 2018-11-16 23:35:51 +03:00
Tomoaki Teshima
3bbc4e44c3 fix test failure of ColorCvtRGB2Gray
- update parameter in carotene
2018-11-16 23:31:01 +09:00
Alexander Alekhin
d4f038dfcc ffmpeg: update 4.1 (OpenCV 4.x branch)
ffmpeg 4.0.2 -> 4.1
2018-11-07 15:15:04 +03:00
Alexander Alekhin
2007e1d8a3 ffmpeg: update 3.4.5 (OpenCV 3.4 branch)
ffmpeg 3.4.2 -> 3.4.5
2018-11-03 03:10:10 +00:00
Alexander Alekhin
687fa6a8ca Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-11-02 05:33:35 +00:00
Alexander Alekhin
8cb8ba7caf 3rdparty: update libpng 1.6.35
http://www.libpng.org/pub/png/libpng.html
2018-10-30 19:03:14 +03:00
WuZhiwen
6e3ea8b49d Merge pull request #12703 from wzw-intel:vkcom
* dnn: Add a Vulkan based backend

This commit adds a new backend "DNN_BACKEND_VKCOM" and a
new target "DNN_TARGET_VULKAN". VKCOM means vulkan based
computation library.

This backend uses Vulkan API and SPIR-V shaders to do
the inference computation for layers. The layer types
that implemented in DNN_BACKEND_VKCOM include:
Conv, Concat, ReLU, LRN, PriorBox, Softmax, MaxPooling,
AvePooling, Permute

This is just a beginning work for Vulkan in OpenCV DNN,
more layer types will be supported and performance
tuning is on the way.

Signed-off-by: Wu Zhiwen <zhiwen.wu@intel.com>

* dnn/vulkan: Add FindVulkan.cmake to detect Vulkan SDK

In order to build dnn with Vulkan support, need installing
Vulkan SDK and setting environment variable "VULKAN_SDK" and
add "-DWITH_VULKAN=ON" to cmake command.

You can download Vulkan SDK from:
https://vulkan.lunarg.com/sdk/home#linux

For how to install, see
https://vulkan.lunarg.com/doc/sdk/latest/linux/getting_started.html
https://vulkan.lunarg.com/doc/sdk/latest/windows/getting_started.html
https://vulkan.lunarg.com/doc/sdk/latest/mac/getting_started.html
respectively for linux, windows and mac.

To run the vulkan backend, also need installing mesa driver.
On Ubuntu, use this command 'sudo apt-get install mesa-vulkan-drivers'

To test, use command '$BUILD_DIR/bin/opencv_test_dnn --gtest_filter=*VkCom*'

Signed-off-by: Wu Zhiwen <zhiwen.wu@intel.com>

* dnn/Vulkan: dynamically load Vulkan runtime

No compile-time dependency on Vulkan library.
If Vulkan runtime is unavailable, fallback to CPU path.

Use environment "OPENCL_VULKAN_RUNTIME" to specify path to your
own vulkan runtime library.

Signed-off-by: Wu Zhiwen <zhiwen.wu@intel.com>

* dnn/Vulkan: Add a python script to compile GLSL shaders to SPIR-V shaders

The SPIR-V shaders are in format of text-based 32-bit hexadecimal
numbers, and inserted into .cpp files as unsigned int32 array.

* dnn/Vulkan: Put Vulkan headers into 3rdparty directory and some other fixes

Vulkan header files are copied from
https://github.com/KhronosGroup/Vulkan-Docs/tree/master/include/vulkan
to 3rdparty/include

Fix the Copyright declaration issue.

Refine OpenCVDetectVulkan.cmake

* dnn/Vulkan: Add vulkan backend tests into existing ones.

Also fixed some test failures.

- Don't use bool variable as uniform for shader
- Fix dispathed group number beyond max issue
- Bypass "group > 1" convolution. This should be support in future.

* dnn/Vulkan: Fix multiple initialization in one thread.
2018-10-29 17:51:26 +03:00
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
fd832bb57d core: follow IEEE 754 rules for floating-point division 2018-10-14 10:47:50 +00:00
Alexander Alekhin
1ed9ff17e1 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-10-12 10:05:55 +00:00
Alexander Alekhin
2b3c7490d5
Merge pull request #12521 from allnes:detect_qr_code
Objdetect: QRCode detect + decode
2018-10-11 12:42:05 +03:00
Alexander Nesterov
53ec8f286b Added QR code decoding. 2018-10-10 15:27:00 +00:00
Alexander Alekhin
dada5a422d Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-10-09 21:20:15 +00:00
Maksim Shabunin
09ef4c9cff FFmpeg: correct licenses install location 2018-10-05 17:10:42 +03:00
Alexander Alekhin
690fb0544c Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-10-02 14:31:05 +03:00
Loic Devulder
ac9ec55b37 3rdparty/protobuf: fix compilation issue on s390
This commit fixes an issue while trying to compile
on s390x architecture.

This is simply a backport of a fixe already applied
in official protobuf code:
- https://github.com/protocolbuffers/protobuf/pull/3955
2018-09-30 21:33:34 +02:00
Alexander Alekhin
8b661cde15 ffmpeg: update 4.0 (master)
- ffmpeg 4.0.2
- openh264 1.8.0
2018-09-17 21:36:52 +00:00
CJ Smith
da41ac9e60 Merge pull request #12106 from CJSmith-0141:warpPerspective_typofix
* Fixes typo in function name hal::warpPerspective.

* Fixes remaining typos in word Perspective (was Perspectve).
2018-08-01 14:41:20 +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
d5951bc033 build: eliminate GCC8 warnings 2018-07-16 17:24:12 +03:00
Alexander Alekhin
b39cd06249 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-06-25 22:03:17 +03:00
Alexander Alekhin
8b5e29c234 Merge pull request #11808 from tomoaki0705:caroteneSuppressWarnings 2018-06-23 08:46:29 +00:00
Tomoaki Teshima
e324d2e534 suppress warning on Arm platform 2018-06-22 20:17:22 +09: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
Alexander Alekhin
8221f57c26 Merge pull request #11729 from alalek:ffmpeg_update_3.4 2018-06-09 12:25:23 +00:00
Alexander Alekhin
390f0a5dcd cmake: generate and install ffmpeg-download.ps1
64-bit only
2018-06-09 13:19:48 +03:00
Alexander Alekhin
d3696f3ad2 ffmpeg: update OpenCV FFmpeg wrapper (3.4) 2018-06-08 18:47:00 +03:00
Peter Rekdal Sunde
9492f46d77 3rdparty: update libwebp 0.6.1 => 1.0.0
Commit: 698b8844e3
Tag: https://github.com/webmproject/libwebp/releases/tag/v1.0.0
2018-06-05 13:17:20 +03:00
Pavel Vlasov
eaf70c7bb3 Hotfix packages with several fixes in IW code including:
__STDCALL macro change to support IPP 2018u3+ external packages
    Memory leak fix in Gaussian filter
    Improved checkers for OpenMP supported features
    Improved declarations for atomic operations.

ICV binary and package version are the same.
2018-05-18 12:52:27 +03:00
Alexander Alekhin
f3e166c58b Merge pull request #11528 from tomoaki0705:fixTabSpaceLibTiff 2018-05-16 12:15:39 +00:00
Tomoaki Teshima
85668cf5a4 remove Tab 2018-05-16 18:56:23 +09:00
Alexander Alekhin
f8252702a8 3rdparty: integrate libjpeg-turbo build scripts into OpenCV 2018-05-11 18:29:57 +03:00
Alexander Alekhin
777953923e 3rdparty: added libjpeg-turbo source code (1.5.3)
Repo: https://github.com/libjpeg-turbo/libjpeg-turbo.git
Tag: 1.5.3

excluded libjpeg-turbo files:
- bmp.c
- bmp.h
- cderror.h
- cdjpeg.c
- cdjpeg.h
- cjpeg.c
- djpeg.c
- example.c
- jcstest.c
- jdatadst-tj.c
- jdatasrc-tj.c
- jpegtran.c
- rdbmp.c
- rdcolmap.c
- rdgif.c
- rdjpgcom.c
- rdppm.c
- rdrle.c
- rdswitch.c
- rdtarga.c
- tjbench.c
- tjunittest.c
- tjutil.c
- tjutil.h
- transupp.c
- transupp.h
- turbojpeg-jni.c
- turbojpeg.c
- turbojpeg.h
- wrbmp.c
- wrgif.c
- wrjpgcom.c
- wrppm.c
- wrrle.c
- wrtarga.c
2018-05-11 17:43:50 +03:00
Dmitry Kurtaev
4ec456f0a0 Custom layers for deep learning networks (#11129)
* Custom deep learning layers support

* Stack custom deep learning layers
2018-04-24 14:59:59 +03:00
Alexander Alekhin
c8b515ea69 Merge pull request #11315 from tomoaki0705:featureComparePixelCount 2018-04-20 14:50:40 +00:00
Alexander Alekhin
12e8e33144 build: enable -Wimplicit-fallthrough warning for OpenCV modules 2018-04-19 19:54:03 +03:00
Tomoaki Teshima
98d9369a38 add new comparison to tolerate with rounding error
* restore resize of carotene
  * clean up the source code
  * remove unused member function (Near)
  * add strict test on the border
2018-04-19 17:31:42 +09:00
Alexander Alekhin
784c8436fd cmake: update PDB installation 2018-04-09 18:50:58 +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
0587f92d96 cmake: disable override warnings in 3rdparty code and viz 2018-03-28 17:57:59 +03:00
Alexander Alekhin
6bd80ba71b cmake: use SYSTEM include directories 2018-03-28 17:57:58 +03:00
Alexander Alekhin
08941b7890 cmake: avoid amending of CMAKE_COMPILER_IS_[GNUCXX|CLANGCXX|CCACHE] vars
- Recommended compiler checks:
  - GCC: CV_GCC
  - Clang: CV_CLANG
- fixed problem with CMAKE_CXX_COMPILER_ID=Clang/AppleClang mess on MacOSX
  Details: cmake --help-policy CMP0025
- do not declare Clang as GCC compiler
2018-03-27 16:16:59 +03:00
Tomoaki Teshima
06babf90a5 let the test OCL_ImgprocWarp/Resize.Mat pass on ARM/Aarch64
* disable carotenete when calling resize on ARM/Aarch64
  * loosen eps on Aarch64
2018-03-22 21:35:34 +09:00
Maksim Shabunin
7bbe002a2f Add install component for 3rdparty libraries licenses 2018-03-06 16:32:30 +03:00
Alexander Alekhin
586625f8ba 3rdparty: fix protobuf version in README file 2018-02-27 15:48:19 +03:00
Alexander Alekhin
f7aa2e0d44 ffmpeg: update wrapper
FFmpeg: 3.3.4 -> 3.4.2
LibVPX: 1.6.1 -> 1.7.0
OpenH264: 1.6.0 -> 1.7.0
2018-02-22 15:04:06 +03:00
Maksim Shabunin
e56d6054aa Do not build protobuf without dnn (#10689)
* Do not build protobuf if dnn is disabled

* Added BUILD_LIST cmake option to the cache

* Moved protobuf to the top level

* Fixed static build

* Fixed world build

* fixup! Fixed world build
2018-02-01 16:30:23 +03:00
Dmitry Kurtaev
ec8d39d059 Re-apply protobuf fix for JavaScript builds
original commit: f503515082
JavaScript bindings for dnn module
2018-01-17 20:20:00 +00:00
Maksim Shabunin
8b87c4b96a Fixed several warnings produced by clang 6 and static analyzers 2018-01-16 15:26:28 +03:00
Alexander Alekhin
22816a4c43 protobuf: drop unused files 2018-01-15 21:15:23 +00:00
Alexander Alekhin
4d84999452 dnn: protobuf build warnings 2018-01-15 21:15:23 +00:00
oqtvs
df0b83332d Updated protobuf version to 3.5.1 2018-01-15 13:51:37 -02:00
Alexander Alekhin
c608c232a2 3rdparty(libtiff): fix build with Android NDK 16
Compiler message:
tif_unix.c:170:12: error: call to 'mmap' declared with attribute error:
mmap is not available with _FILE_OFFSET_BITS=64 when using GCC until android-21.
Either raise your minSdkVersion, disable _FILE_OFFSET_BITS=64, or switch to Clang.
2018-01-05 04:52:17 +00:00
Alexander Alekhin
b76a691bcf 3rdparty(protobuf): fix build with Android NDK 16 2018-01-05 04:52:17 +00:00
Alexander Alekhin
05b259fe2e Merge pull request #10344 from tomoaki0705:fixBuildLibtiff 2017-12-18 17:00:45 +00:00
Tomoaki Teshima
c057d29192 fix compilation error on Visual Studio 2013 and earlier
- fix compilation error about "inline"
  - fix linker error about "_TIFF_snprintf_f"
2017-12-18 21:51:33 +09:00
Vadim Pisarevsky
e29de5dd2b Merge pull request #10343 from tomoaki0705:suppressWarningEncoding 2017-12-18 10:53:24 +00:00
Tomoaki Teshima
65f502bc99 suppress warning on Visual Studio
* remove non ASCII character from the comment
2017-12-18 15:32:06 +09:00
Alexander Alekhin
8ed1a274e1 cmake: fix missed include in libtiff 2017-12-15 23:28:09 +03:00
Alexander Alekhin
50365b7741 cmake: update CMAKE_POSITION_INDEPENDENT_CODE 2017-12-15 15:56:19 +03:00
Sayed Adel
a8ae9cab08 3rdparty:libpng[1.6.34] Add missing support for PowerPC/VSX 2017-12-15 03:00:07 +00:00
Alexander Alekhin
cd4176104d 3rdparty: update libwebp 0.6.1 2017-12-14 14:49:31 +03:00
Alexander Alekhin
5c709f4aaa 3rdparty: update libtiff 4.0.9 2017-12-14 14:49:31 +03:00
Alexander Alekhin
ae5e1f8ece 3rdparty: eliminate jasper build warning 2017-12-14 14:49:31 +03:00
Suleyman TURKMEN
83b5b86f7d 3rdparty: update libjpeg 9b 2017-12-14 14:49:31 +03:00
Alexander Alekhin
ca46171246 3rdparty: libpng patch 2017-12-14 14:49:31 +03:00
Suleyman TURKMEN
d4e2e6279c 3rdparty: update libpng 1.6.34 2017-12-14 14:49:30 +03:00
Suleyman TURKMEN
197078e331 3rdparty: update zlib 1.2.11 2017-12-14 14:49:30 +03:00
Alexander Alekhin
0fcc6f5d60 Merge pull request #10282 from alalek:cmake_tbb_version 2017-12-13 13:50:24 +00:00
Vitaly Tuzov
51cb56ef2c Implementation of bit-exact resize. Internal calls to linear resize updated to use bit-exact version. (#9468) 2017-12-13 15:00:38 +03:00
Alexander Alekhin
8d4777c81d cmake: generate tbb version file 2017-12-12 16:12:32 +03:00
Dmitry Kurtaev
f503515082 JavaScript bindings for dnn module 2017-12-08 18:33:48 +03:00
Alexander Alekhin
f7913e2c84 build: eliminate Xcode 9.1 warnings
- 3rdparty/libjasper/jas_getopt.c:129:25: warning: this function declaration is not a prototype [-Wstrict-prototypes]
- clang: warning: optimization flag '-fomit-frame-pointer' is not supported for target 'armv7' [-Wignored-optimization-argument]
2017-11-28 17:48:40 +03:00
Maksim Shabunin
184daa155f Fixed minor issues reported by GCC 7.2 2017-11-03 18:06:39 +03:00
Maksim Shabunin
223830a5ee Updated TBB package to 2018.1 2017-10-20 12:16:06 +03:00
Alexander Alekhin
face2ea612 3rdparty: suppress warnings 2017-10-18 13:08:01 +03:00
Maksim Shabunin
556768ead1 Merge pull request #9805 from alalek:ffmpeg_update 2017-10-10 09:02:02 +00:00
Maksim Shabunin
ef332dc550 Fixed and suppressed warnings produced by GCC 6.3.0 2017-10-09 13:52:07 +03:00
Alexander Alekhin
cb5bc1832b ffmpeg: update 3.3.4 2017-10-09 13:42:09 +03:00
Khem Raj
2c7a123ed8 Do not enable asm with clang
clang pretends to be gcc 4.2.0 which means we will
use inline asm for no reason, instead of builtins
on clang when possible.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2017-09-19 18:09:30 -07:00
Maksim Shabunin
248e2c7d47 Fixed some issues found by static analysis 2017-09-08 12:22:12 +03:00
Alexander Alekhin
9c14a2f0aa Merge pull request #9395 from lupustr3:pvlasov/icv2017u3_update 2017-08-24 11:48:53 +00:00
Alexander Alekhin
97aaaf50b8 carotene: removed unnecessary 'register' specifier 2017-08-23 18:57:00 +03:00
Alexander Alekhin
c5f2170ce8 carotene: don't use __asm__ with aarch64 2017-08-23 18:56:53 +03:00
Pavel Vlasov
a57718e1ac ICV2017u3 package update;
- Optimizations set change. Now IPP integrations will provide code for SSE42, AVX2 and AVX512 (SKX) CPUs only. For HW below SSE42 IPP code is disabled.
- Performance regressions fixes for IPP code paths;
- cv::boxFilter integration improvement;
- cv::filter2D integration improvement;
2017-08-23 14:24:43 +03:00
Alexander Alekhin
f694192878 cmake: use CMAKE_CXX_COMPILER_VERSION (CMake 2.8.8+)
- '-fvisibility' flag was updated
- PVAPI library detection was changed
2017-08-21 18:06:40 +03:00
Alexander Alekhin
7f1114d935 cmake: disable HAVE_POSIX_SEMAPHORES on Apple platform 2017-08-14 17:19:51 +03:00
Alexander Alekhin
6ff9fc67bb build: HAVE_LIBPTHREAD, HAVE_PTHREAD(S) => HAVE_PTHREAD 2017-08-14 10:59:38 +03:00
Alexander Alekhin
402a77e7f7 Merge pull request #9237 from alalek:fix_winrt_build 2017-07-26 10:42:49 +00:00
Alexander Alekhin
602f047fe8 build: replace WIN32 => _WIN32 2017-07-25 13:30:48 +03:00
Alexander Alekhin
e45d5446f2 cleanup unused 3rdparty files 2017-07-21 15:20:13 +03:00
Alexander Alekhin
49e1f6b161 Merge pull request #9091 from alalek:update_ffmpeg 2017-07-14 17:25:35 +00:00
Alexander Alekhin
5f4c7372c0 Merge pull request #9159 from alalek:cmake_target_rename 2017-07-14 17:19:26 +00:00
Alexander Alekhin
19c9174543 cmake: rename cpufeatures target
It is configurable via OPENCV_CPUFEATURES_TARGET_NAME variable
2017-07-13 19:24:10 +03:00
Alexander Alekhin
a4a47b538c build: detect Android via '__ANDROID__' macro
https://sourceforge.net/p/predef/wiki/OperatingSystems
2017-07-10 12:43:59 +03:00
Alexander Alekhin
359bd21bd7 ffmpeg: update 3.3.2
- ffmpeg 3.3 -> 3.3.2
- added VERSIONINFO
2017-07-04 18:49:30 +03:00