Commit Graph

1669 Commits

Author SHA1 Message Date
Alexander Alekhin
4fa4bef41d cmake: fix licenses install rules 2019-04-02 19:24:14 +03:00
Alexander Alekhin
3d7a3a51a7 cmake: don't add tests dirs as include directories
- use relative paths for includes
- fix PCH generation with GCC (dummy file has been used)
2019-04-02 13:46:25 +03:00
Alexander Alekhin
2a2d195240 cmake: don't add tests dirs as include directories
- use relative paths for includes
- fix PCH generation with GCC (dummy file has been used)
2019-04-02 12:28:25 +03: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
8c25a8eb7b Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-03-22 19:31:31 +03:00
Alexander Alekhin
65fc863d86 cmake: support OpenVINO env variable: INTEL_OPENVINO_DIR 2019-03-22 00:03:03 +03:00
Sayed Adel
0df607e5dd cmake:vsx Fix compilation fail on aligned runtime test when c++11 enabled 2019-03-21 11:21:00 +02:00
Sayed Adel
f41359688b core:vsx Add support for VSX3 half precision conversions 2019-03-20 10:19:42 +02:00
Alexander Alekhin
fdf6323942 Merge pull request #14026 from Palmitoxico:android-ndk 2019-03-18 15:40:03 +00:00
Augusto Fraga Giachero
032e458085 Avoid unexpected line breaks in version_string.inc
The Android NDK 16b has a bug that sets the ANDROID_NDK_REVISION
variable incorrectly, generating an unexpected line break in the
middle of the string. This breaks the build as the generated
version_string.inc presents an invalid C string.

Remove leading and trailing line breaks, warns for line breaks in the
middle of 'msg' and escape them before appending to
OPENCV_BUILD_INFO_STR.
2019-03-18 11:57:05 -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
ccbc16f3a9 cmake: clean unreferenced functions from OpenCV modules too 2019-03-15 18:54:08 +03:00
Sayed Adel
872e7894b4 core:vsx working around gcc aligned memory access bug
- allow cmake to check sanity of vsx aligned ld/st
 - force universal intrinsics v_load_aligned/v_store_aligned
   to failback to unaligned ld/st if cmake runtime vsx aligned test fail
2019-03-14 01:55:40 +02:00
Alexander Alekhin
332c37f332 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-03-06 11:43:16 +03:00
Alexander Alekhin
8ee1be7d09 cmake: support MSVS 2019 2019-03-05 13:38:47 +03:00
Alexander Alekhin
9a6f2630b2 cmake: +opencv_videoio_plugins virtual target
- support comma-separated list in VIDEOIO_PLUGIN_LIST
- opencv tests/samples depend on plugins virtual target
2019-03-02 09:19:08 +00:00
Alexander Alekhin
c3cf35ab63 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-02-26 17:34:42 +03:00
Maksim Shabunin
8c1e0537ec Merge pull request #13889 from mshabunin:enable-narrowing-warning
* Enabled -Wnarrowing warning

* Fixed type narrowing issues

* Cast python constants

* Use long long for python constants

* Use int for python constants with fallback to long

* Update cv2.cpp
2019-02-26 13:15:59 +03:00
Maksim Shabunin
73959fed45 Merge pull request #13422 from mshabunin:split-videoio-cmake
* Split videoio dependencies search into pieces, removed obsolete backends
2018-12-26 15:50:20 +03:00
Alexander Alekhin
1dee705074 Merge branch '3.4' into merge-3.4 2018-12-22 05:40:15 +00:00
Alexander Alekhin
578ea4bae9 Merge pull request #13386 from alalek:android_gradle 2018-12-21 13:56:03 +00:00
Alexander Alekhin
832217907f Merge pull request #13435 from alalek:issue_13434 2018-12-21 11:01:04 +00:00
Alexander Alekhin
bbdc987fc6 dnn: add OpenVINO 2018R5 defines
https://software.intel.com/en-us/openvino-toolkit
2018-12-21 05:52:27 +00:00
Alexander Alekhin
2b35c1708b android: gradle-based package and samples
- drop hello-android sample
2018-12-19 14:59:48 +03:00
Alexander Alekhin
7fb70e1701 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-12-18 19:07:43 +00:00
Alexander Alekhin
b0a08cced9 Merge pull request #13466 from pstieber:AddTuringCudaGeneration 2018-12-18 18:35:47 +00:00
Peter J. Stieber
50ef9830e2 Added Turing to the _generations list. 2018-12-18 08:52:15 -08:00
Alexander Alekhin
bb8c19aad3 cmake: fix python install paths 2018-12-17 14:32:29 +03:00
Alexander Alekhin
8d907d2e32 cmake(java): add OPENCV_JAVA_SOURCE_VERSION/OPENCV_JAVA_TARGET_VERSION 2018-12-14 00:15:57 +00:00
Alexander Alekhin
0c16d8f6c3 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-12-13 15:12:26 +03:00
Alexander Alekhin
b7bb79c7c8 videoio(MSMF): backport WITH_MSMF_DXVA flag 2018-12-13 14:56:20 +03:00
Alexander Alekhin
aa666dfa9c Merge pull request #13430 from tomoaki0705:fixCudaJetsonTX2file 2018-12-13 09:14:26 +00:00
Tomoaki Teshima
3e710d8eec use correct CC value for Jetson Xavier 2018-12-13 13:35:19 +09:00
Alexander Alekhin
6fa23f330f cmake: fix compiler flags filtering 2018-12-12 13:35:43 +03:00
Alexander Alekhin
ea64e860de Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-12-09 13:21:58 +00:00
Alexander Alekhin
e5f298cca5 Merge pull request #13385 from alalek:cmake_cleanup_build_junk_dir 2018-12-08 17:51:09 +00:00
Alexander Alekhin
85b1750660 Merge pull request #13316 from alalek:cmake_fix_baseline_detect 2018-12-08 17:50:03 +00:00
Maksim Shabunin
05131af8da Merge pull request #13367 from mshabunin:cmake-verify
* Added dependency verification mechanism for cmake
2018-12-07 15:57:25 +03:00
Alexander Alekhin
d77612fe70 cmake: hide 'junk' dir from the root of build directory
moved to CMakeFiles (no conflicts are expected)
2018-12-07 05:14:08 +00:00
Kartik Mohta
80a3d7bffa
Fix comment marker in OpenCVDetectCudaArch.cu 2018-12-04 11:47:28 -08:00
Alexander Alekhin
487f631243 Merge pull request #13320 from alalek:api_checks_4.0.0 2018-11-28 19:51:29 +00:00
Alexander Alekhin
59fa477edb opencv4: fix abi-checker (to enable API/source checks only) 2018-11-28 18:42:19 +03:00
Alexander Alekhin
fab0eb0d75 cmake: fix compiler flags (CPU_BASELINE_REQUIRED=xxx + CPU_BASELINE=DETECT) 2018-11-28 14:04:03 +03:00
Alexander Alekhin
8f4e5c2fb8 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-11-26 15:37:45 +03:00
Alexander Alekhin
c0016d7fe9
Merge pull request #13253 from alalek:fix_13201
* cmake: install 'legacy/constants_c.h' files

* samples: add compatibility test code
2018-11-23 20:02:46 +03:00
Alexander Alekhin
adf2013052 Merge pull request #13209 from alalek:issue_12865 2018-11-21 14:30:32 +00:00
Alexander Alekhin
7fa7fa0226 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-11-21 08:33:39 +00:00
Sayed Adel
474a0dac49 core: several improves and fixes on ppc64le infrastructure
- add infrastructure support for Power9/VSX3
  - fix missing VSX flags on GCC4.9 and CLANG4(#13210, #13222)
  - fix disable VSX optimzation on GCC by using flag ENABLE_VSX
  - flag ENABLE_VSX is deprecated now, use CPU_BASELINE, CPU_DISPATCH instead
  - add VSX3 to arithmetic dispatchable flags
2018-11-20 15:28:46 +00:00
Alexander Alekhin
1317c3d178 cmake: don't generate dllmain for cudev module 2018-11-19 19:11:52 +03:00
Alexander Alekhin
22dbcf98c5 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-11-17 14:17:35 +00:00
Alexander Alekhin
53af811530 cmake: emit warnings about unsupported options if turned ON only 2018-11-16 20:24:31 +00:00
Alexander Alekhin
a4b21d9e2e
Merge pull request #13177 from alalek:update_win32_scripts 2018-11-16 22:45:57 +03:00
Alexander Alekhin
b321851e53
Merge pull request #12977 from alalek:python_package 2018-11-16 22:45:33 +03:00
Alexander Alekhin
ce6acd3ecd python: bindings loader package
Configures and loads OpenCV bindings extension including 3rdparty dependencies

Based on running Python specify:
- configure PYTHON_PATH (via "sys.path")
- configure LD_LIBRARY_PATH / PATH
2018-11-16 00:51:16 +00:00
Alexander Alekhin
8792bddb0a win32: update setupvars.cmd
- drop EnableDelayedExpansion
- pause on failed commands (non-interactive mode)
2018-11-15 23:36:26 +00:00
Dmitry Kurtaev
b5c54e447c Extra hyperparameters for Intel's Inference Engine layers 2018-11-15 20:06:37 +03:00
Alexander Alekhin
5f2074d757
Merge pull request #13140 from alalek:opencv3_opencv4 2018-11-12 22:34:10 +03:00
Alexander Alekhin
fc3fc6005e
Merge pull request #13126 from mshabunin:remove_libv4l 2018-11-12 22:10:49 +03:00
Alexander Alekhin
27fd913c86 build: fix version 3->4 2018-11-12 19:05:58 +00:00
Alexander Alekhin
e0e828ef5c videoio: remove using of HAVE_CAMV4L 2018-11-12 18:53:19 +00:00
Alexander Alekhin
f5b212a9d4 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-11-12 17:58:45 +03:00
Alexander Alekhin
c54676d625 cmake: fix supporting of legacy flags 2018-11-12 14:11:57 +03:00
Pavel Rojtberg
0d65397ae7 videoio: remove cap_libv4l in favour of cap_v4l
cap_libv4l depends on an external library (libv4l) yet is still larger
(1966 loc vs 1822 loc).
It was initially introduced copy pasting cap_v4l in order to offload
various color conversions to libv4l.
However nowadays we handle most of the needed color conversions inside
OpenCV. Our own implementation is better tested and (probably) also
better performing. (as it can optionally leverage IPP/ OpenCL)

Currently cap_v4l is better maintained and generally the code is in
better shape. There is however an API
difference in getting unconverted frames:
* on cap_libv4l one need to set `CV_CAP_MODE_GRAY=1` or
`CV_CAP_MODE_YUYV=1`
* on cap_v4l one needs to set `CV_CAP_PROP_CONVERT_RGB=0`

the latter is more flexible though as it also allows accessing undecoded
JPEG images.

fixes #4563
2018-11-12 13:38:59 +03:00
Alexander Alekhin
1913482cf5 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-11-10 20:50:26 +00:00
Alexander Alekhin
ebc8015638
Merge pull request #13074 from alalek:cleanup_videoio 2018-11-08 19:09:32 +03:00
Alexander Alekhin
467eb4d240 Merge pull request #12901 from alalek:cmake_unsupported_option_warning 2018-11-08 12:21:38 +00:00
Alexander Alekhin
5869415a57 videoio: drop obsolete backends
- VFW
- QuickTime/QtKit
- Unicap - GPL, no active support: https://github.com/unicap/unicap
- DC1394 (1st version) / CMU1394
2018-11-07 19:49:09 +03:00
Alexander Alekhin
b059a361dd highgui: drop obsolete Carbon API
https://en.wikipedia.org/wiki/Carbon_(API)

In 2012, with the release of OS X 10.8 Mountain Lion, most Carbon APIs were considered deprecated.
2018-11-07 19:21:33 +03:00
Alexander Alekhin
d9be552bbc
Merge pull request #13006 from alalek:cmake_setup_vars
cmake: introduce setup_vars scripts
2018-11-06 23:52:00 +03:00
Alexander Alekhin
2c6f1ab57d Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-11-06 20:04:31 +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
36d00f0200 Merge pull request #13003 from native-api:cross_cutting_frameworks 2018-11-01 16:46:11 +00:00
Ivan Pozdeev
dbc6fe3a0f Detect cross-cutting frameworks before libraries so the latter can use them 2018-11-01 18:16:41 +03:00
Alexander Alekhin
fbe41703e4 cmake: introduce setup_vars scripts
- CMake install COMPONENT: "scripts"
2018-11-01 17:38:40 +03:00
Alexander Alekhin
98a73de526 cmake: eliminate GCC4.x warnings 2018-10-31 16:04:55 +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
Alexander Alekhin
7e2c65ce3c Merge pull request #12925 from alalek:fix_cmake_conditions 2018-10-25 11:52:39 +00:00
Alexander Alekhin
465ae048a0 Merge pull request #12887 from alalek:fix_cmake_conditions 2018-10-24 13:17:54 +00:00
Alexander Alekhin
2933b58a2f Merge pull request #12909 from alalek:cmake_fix_baseline_detect_flags 2018-10-24 13:05:14 +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
0f07edded6 cmake: don't change baseline compiler flags in 'detection' mode 2018-10-24 03:54:31 +00:00
Alexander Alekhin
971c4ca10b cmake: don't undefine passed options 2018-10-23 14:46:26 +03:00
Alexander Alekhin
d6a8e08acc cmake: fix variable expand in CMake conditions 2018-10-21 15:02:40 +00:00
Alexander Alekhin
9c23f2f1a6 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-10-20 11:37:54 +00:00
Alexander Alekhin
a2e754c136 build: eliminate warnings 2018-10-17 08:43:18 +00:00
jasjuang
a66fd527b0 add support for latest Turing gpu and cuda 10 2018-10-15 10:40:24 -07: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
1be75437b7 Merge pull request #12802 from alalek:cmake_pdb 2018-10-13 12:25:36 +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
be76b451cb Merge pull request #12791 from alalek:win32_dllmain_detect_termination 2018-10-11 19:28:29 +00:00
Alexander Alekhin
7b9b876726 cmake: improve PDB support 2018-10-11 10:54:37 +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 Alekhin
f731515628 cmake: fix Python detection for standalone bindings 2018-10-10 22:59:42 +03:00
Alexander Alekhin
404893810c cmake: fix Python detection for standalone bindings 2018-10-10 16:58:23 +00:00
Alexander Nesterov
53ec8f286b Added QR code decoding. 2018-10-10 15:27:00 +00:00
Alexander Alekhin
70f2ee917e cmake: add DllMain() into each OpenCV DLL
to detect process termination after ExitProcess() call
2018-10-10 11:00:59 +00: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
913c4151bf
Merge pull request #12725 from alalek:cmake_python_win32
* cmake: don't ignore Python from PATH environment variable

- this breaks selection between 32/64-bit Python
- this breaks Anaconda/Conda environments
- it is not the CMake default behavior, expected by many projects

* cmake: add Python version check, fallback path on CMake 3.12+

* cmake: drop Python 2.6, allow version selection for Python 3.x
2018-10-08 17:45:50 +03:00