Alexander Alekhin
fa4871b013
dnn: don't require setInput in .dump()
2020-02-05 21:28:07 +00: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
2638c5e9b7
dnn: dump layer's blobs on getMemoryShapes() error
2020-01-16 14:59:47 +03:00
Dmitry Kurtaev
d92a883de1
Different way to reset Myriad device
2020-01-15 18:52:37 +03:00
Julien
4e2ef8c8f5
Merge pull request #16218 from JulienMaille:cuda-dnn-for-older-gpus
...
Enable cuda4dnn on hardware without support for __half
* Enable cuda4dnn on hardware without support for half (ie. compute capability < 5.3)
Update CMakeLists.txt
Lowered minimum CC to 3.0
* UPD: added ifdef on new copy kernel
* added fp16 support detection at runtime
* Clarified #if condition on atomicAdd definition
* More explicit CMake error message
2020-01-15 18:28:37 +03:00
Alexander Alekhin
4cb9faf6c9
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2020-01-14 17:04:22 +03:00
Dmitry Kurtaev
8f1e36f7c1
Disable some tests for Myriad target of nGraph
...
Add lightweight IE hardware targets checks
nGraph: Concat with paddings
Enable more nGraph tests
Restore FP32->FP16 for GPU plugin of IE
try to fix buildbot
Use lightweight IE targets check only starts from R4
2020-01-13 15:35:47 +03: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
4342657762
Merge pull request #16034 from Quantizs:irLoadFromBuffer
2019-12-19 10:00:07 +00:00
antalzsiroscandid
aa80f754f4
dnn: reading IR models from buffer
2019-12-18 15:31:08 +01:00
Yashas Samaga B L
17c485eb03
Merge pull request #16092 from YashasSamaga:cuda4dnn-conv-act-fuse
...
cuda4dnn: fuse activations with convolutions
* fuse ReLU, ReLU6, TanH, Sigmoid with conv
* fix OpenCL errors
* improve ReLU, add power, swish and mish
* fix missing fusion entries
* fix handling of unsetAttached
* remove whole file indentation
* optimize power = 1.0, use IDENTITY instead of NONE
* handle edge case: change backend and then clear
2019-12-14 22:26:58 +03:00
Alexander Alekhin
92b9888837
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-12-12 13:02:19 +03:00
Alexander Alekhin
b1b505f783
dnn: clarify error message from getMemoryShapes()
2019-12-08 22:17:24 +00:00
Dmitry Kurtaev
134094a442
Backport fix for autodetection of input shapes
2019-12-05 19:25:51 +03:00
Alexander Alekhin
8108fb0575
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-12-05 18:27:45 +03:00
Alexander Alekhin
986c5084a4
Merge pull request #16036 from dkurt:dnn_backport_15203
2019-12-05 09:56:00 +00:00
Dmitry Kurtaev
d8e10f3a8d
Enable MaxPooling with indices in Inference Engine
2019-12-04 19:14:55 +03:00
Dmitry Kurtaev
ca1ba7a53d
Backport for dnn input shape estimation
2019-12-02 16:28:59 +03:00
Alexander Alekhin
4b0132ed7a
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-12-02 16:26:52 +03:00
Lubov Batanina
7523c777c5
Merge pull request #15537 from l-bat:ngraph
...
* Support nGraph
* Fix resize
2019-12-02 16:16:06 +03:00
Alexander Alekhin
b6a58818bb
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-11-11 20:25:42 +00:00
Dimitri Gerin
7c4158d8c2
Fix dnn::getLayerInputs
2019-11-07 08:13:33 +03:00
Alexander Alekhin
055ffc0425
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-10-24 18:21:19 +00:00
Dmitry Kurtaev
dfe0368835
Fix custom IE layers in case of no MKLDNN plugin
2019-10-21 19:09:44 +03:00
Yashas Samaga B L
613c12e590
Merge pull request #14827 from YashasSamaga:cuda4dnn-csl-low
...
CUDA backend for the DNN module
* stub cuda4dnn design
* minor fixes for tests and doxygen
* add csl public api directory to module headers
* add low-level CSL components
* add high-level CSL components
* integrate csl::Tensor into backbone code
* switch to CPU iff unsupported; otherwise, fail on error
* add fully connected layer
* add softmax layer
* add activation layers
* support arbitary rank TensorDescriptor
* pass input wrappers to `initCUDA()`
* add 1d/2d/3d-convolution
* add pooling layer
* reorganize and refactor code
* fixes for gcc, clang and doxygen; remove cxx14/17 code
* add blank_layer
* add LRN layer
* add rounding modes for pooling layer
* split tensor.hpp into tensor.hpp and tensor_ops.hpp
* add concat layer
* add scale layer
* add batch normalization layer
* split math.cu into activations.cu and math.hpp
* add eltwise layer
* add flatten layer
* add tensor transform api
* add asymmetric padding support for convolution layer
* add reshape layer
* fix rebase issues
* add permute layer
* add padding support for concat layer
* refactor and reorganize code
* add normalize layer
* optimize bias addition in scale layer
* add prior box layer
* fix and optimize normalize layer
* add asymmetric padding support for pooling layer
* add event API
* improve pooling performance for some padding scenarios
* avoid over-allocation of compute resources to kernels
* improve prior box performance
* enable layer fusion
* add const layer
* add resize layer
* add slice layer
* add padding layer
* add deconvolution layer
* fix channelwise ReLU initialization
* add vector traits
* add vectorized versions of relu, clipped_relu, power
* add vectorized concat kernels
* improve concat_with_offsets performance
* vectorize scale and bias kernels
* add support for multi-billion element tensors
* vectorize prior box kernels
* fix address alignment check
* improve bias addition performance of conv/deconv/fc layers
* restructure code for supporting multiple targets
* add DNN_TARGET_CUDA_FP64
* add DNN_TARGET_FP16
* improve vectorization
* add region layer
* improve tensor API, add dynamic ranks
1. use ManagedPtr instead of a Tensor in backend wrapper
2. add new methods to tensor classes
- size_range: computes the combined size of for a given axis range
- tensor span/view can be constructed from a raw pointer and shape
3. the tensor classes can change their rank at runtime (previously rank was fixed at compile-time)
4. remove device code from tensor classes (as they are unused)
5. enforce strict conditions on tensor class APIs to improve debugging ability
* fix parametric relu activation
* add squeeze/unsqueeze tensor API
* add reorg layer
* optimize permute and enable 2d permute
* enable 1d and 2d slice
* add split layer
* add shuffle channel layer
* allow tensors of different ranks in reshape primitive
* patch SliceOp to allow Crop Layer
* allow extra shape inputs in reshape layer
* use `std::move_backward` instead of `std::move` for insert in resizable_static_array
* improve workspace management
* add spatial LRN
* add nms (cpu) to region layer
* add max pooling with argmax ( and a fix to limits.hpp)
* add max unpooling layer
* rename DNN_TARGET_CUDA_FP32 to DNN_TARGET_CUDA
* update supportBackend to be more rigorous
* remove stray include from preventing non-cuda build
* include op_cuda.hpp outside condition #if
* refactoring, fixes and many optimizations
* drop DNN_TARGET_CUDA_FP64
* fix gcc errors
* increase max. tensor rank limit to six
* add Interp layer
* drop custom layers; use BackendNode
* vectorize activation kernels
* fixes for gcc
* remove wrong assertion
* fix broken assertion in unpooling primitive
* fix build errors in non-CUDA build
* completely remove workspace from public API
* fix permute layer
* enable accuracy and perf. tests for DNN_TARGET_CUDA
* add asynchronous forward
* vectorize eltwise ops
* vectorize fill kernel
* fixes for gcc
* remove CSL headers from public API
* remove csl header source group from cmake
* update min. cudnn version in cmake
* add numerically stable FP32 log1pexp
* refactor code
* add FP16 specialization to cudnn based tensor addition
* vectorize scale1 and bias1 + minor refactoring
* fix doxygen build
* fix invalid alignment assertion
* clear backend wrappers before allocateLayers
* ignore memory lock failures
* do not allocate internal blobs
* integrate NVTX
* add numerically stable half precision log1pexp
* fix indentation, following coding style, improve docs
* remove accidental modification of IE code
* Revert "add asynchronous forward"
This reverts commit 1154b9da9da07e9b52f8a81bdcea48cf31c56f70.
* [cmake] throw error for unsupported CC versions
* fix rebase issues
* add more docs, refactor code, fix bugs
* minor refactoring and fixes
* resolve warnings/errors from clang
* remove haveCUDA() checks from supportBackend()
* remove NVTX integration
* changes based on review comments
* avoid exception when no CUDA device is present
* add color code for CUDA in Net::dump
2019-10-21 14:28:00 +03:00
Dmitry Kurtaev
fba9fdfd27
Fix autodetection of input size for dnn networks
2019-09-30 16:05:15 +03:00
Alexander Alekhin
e2a5a6a05c
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-09-25 18:32:44 +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
b4c5b50a3e
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-09-13 17:15:45 +00:00
Dmitry Kurtaev
0428f60d66
Fix OpenVINO 2019R1 compilation
2019-09-13 09:22:34 +03:00
Alexander Alekhin
bea2c75452
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-09-05 14:29:22 +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
2ad0487cec
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-08-13 18:32:29 +00:00
Lubov Batanina
f1ea9d86b9
Merge pull request #15203 from l-bat:determine_inp_shape
...
* Determine input shapes
* Add test
* Remove getInputShapes
* Fix model
* Fix constructors
* Add Caffe test
* Fix predict
2019-08-09 19:51:42 +03:00
Lubov Batanina
0e1ef8f8e1
Merge pull request #15184 from l-bat:IE_R2
...
Support new IE API (#15184 )
* Add support OpenVINO R2 for layers
* Add Core API
* Fix tests
* Fix expectNoFallbacksFromIE for ONNX nets
* Remove deprecated API
* Remove td
* Remove TargetDevice
* Fix Async
* Add test
* Fix detectMyriadX
* Fix test
* Fix warning
2019-08-06 22:20:26 +03:00
Alexander Alekhin
426482e05b
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-07-21 18:06:04 +00:00
Lubov Batanina
781f4d439e
Merge pull request #15032 from l-bat:reduce_mean
...
* Added support for the ONNX "ReduceMean" Layer. (as this is the same as the GlobalAveragePool)
* Add ReduceMean test
* Fix ONNX importer
* Fix ReduceMean
* Add assert
* Split test
* Fix split test
2019-07-19 19:18:34 +03:00
Alexander Alekhin
199ddff13b
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-07-18 20:25:25 +00:00
Lubov Batanina
12fdaf895e
Merge pull request #15057 from l-bat:fix_vizualizer
...
* Fix dumpToFile
* Add test
* Fix test
2019-07-18 18:41:08 +03:00
Alexander Alekhin
66d7956e67
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-06-15 16:25:11 +00:00
Dmitry Kurtaev
eba696a41e
Merge pull request #14792 from dkurt:dnn_ie_min_version_r5
...
* Remove Inference Engine 2018R3 and 2018R4
* Fix 2018R5
2019-06-14 18:17:02 +03: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
6d916c5bb4
Merge pull request #14440 from alalek:async_array
2019-06-08 20:57:15 +00:00
Alexander Alekhin
43467a2ac7
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-05-28 18:29:48 +00:00
Lubov Batanina
61d3222a22
Merge pull request #14537 from l-bat:fix_network_vizualizer
...
Fix dnn visualizer (#14537 )
* Fixed print layer params
* Fix print
2019-05-27 19:17:07 +03:00
Alexander Alekhin
132253c9f3
dnn: use AsyncArray
2019-05-18 19:32:23 +00:00
Alexander Alekhin
e21262deba
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-05-16 04:40:39 +00:00
Dmitry Kurtaev
c3b0a68a2b
Async mode for dnn's object detection sample
2019-05-14 09:58:47 +03:00
Alexander Alekhin
e28e3c9491
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-05-01 08:27:45 +00:00
Lubov Batanina
77fa59c3da
Merge pull request #14301 from l-bat:conv3d
...
Support Convolution3D layer on IE backend (#14301 )
* Add Convolution3D layer
* Disable CXX11
* Fixed tests
* Add Pooling3D layer
* Merge Conv2d with Conv3d and Pool2d with Pool3d layers
* Split pads
* Add Deconvolution layer
* Refactoring
* Deduplication
* Refactoring
* Add utils for Convolution and Pooling layers
2019-04-30 17:08:17 +03:00
Alexander Alekhin
d0032b0717
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-04-22 18:17:28 +00:00
Dmitry Kurtaev
a5c92c2029
Merge pull request #13694 from dkurt:dnn_ie_async
...
Asynchronous API from Intel's Inference Engine (#13694 )
* Add forwardAsync for asynchronous mode from Intel's Inference Engine
* Python test for forwardAsync
* Replace Future_Mat to AsyncMat
* Shadow AsyncMat
* Isolate InferRequest callback
* Manage exceptions in Async API of IE
2019-04-19 21:01:19 +03:00
Alexander Alekhin
4635356435
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-04-13 20:00:54 +00:00
Lubov Batanina
60a841c797
Merge pull request #14255 from l-bat:networks_visualization
...
* Add networks visualization
* Disable CXX11
* Fixed multy inputs support
* Added output shapes
* Added color for DLIE/CPU
* Fixed graph colors
2019-04-12 19:31:07 +03:00
Dmitry Kurtaev
a2bbfa1db5
Enable some tests for Inference Engine 2019R1
2019-04-12 15:21:42 +03: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
c300070b8a
Merge pull request #14241 from alalek:openvino_2019R1
2019-04-03 19:26:46 +00:00
103yiran
4bb6edf176
Merge pull request #14117 from 103yiran:103yiran-patch-dnn
...
* Postpone variable definitions
* dnn: reduce scope of 'Mat image' variable
2019-04-03 22:13:11 +03:00
Alexander Alekhin
8483801eab
dnn: use OpenVINO 2019R1 defines
2019-04-03 15:39:47 +03:00
Alexander Alekhin
7442100caa
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-03-29 19:29:36 +00:00
Lubov Batanina
7d3d6bc4e2
Merge pull request #13932 from l-bat:MyriadX_master_dldt
...
* Fix precision in tests for MyriadX
* Fix ONNX tests
* Add output range in ONNX tests
* Skip tests on Myriad OpenVINO 2018R5
* Add detect MyriadX
* Add detect MyriadX on OpenVINO R5
* Skip tests on Myriad next version of OpenVINO
* dnn(ie): VPU type from environment variable
* dnn(test): validate VPU type
* dnn(test): update DLIE test skip conditions
2019-03-29 16:42:58 +03:00
Alexander Alekhin
8bde6aea4b
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-02-19 19:49:13 +00:00
Dmitry Kurtaev
ca5976e3d4
Fix IE backend considering future changes.
2019-02-18 19:26:04 +03:00
Alexander Alekhin
dfef04b325
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-02-12 17:54:40 +03:00
Dmitry Kurtaev
0711dab09d
Fix Intel's Inference Engine backend from future. Second try.
2019-02-11 19:47:57 +03:00
Alexander Alekhin
665408e57f
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-02-01 13:17:32 +03:00
Alexander Alekhin
3585522b24
Merge pull request #13692 from dkurt:dnn_do_not_crash_myriad_in_tests
2019-01-28 18:34:20 +00:00
Dmitry Kurtaev
3c3c5ef2b6
Fix a dnn bug with retrieving all the output blobs
2019-01-28 18:48:56 +03:00
Dmitry Kurtaev
ff775b2e54
Remove ASSERT_ANY_THROW checks fpr Myriad plugin and FP32 networks
2019-01-25 20:09:54 +03:00
Alexander Nesterov
97c3bcb1b7
Added fix for other size
2019-01-24 12:51:16 -01:00
Alexander Alekhin
631b246881
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-01-22 18:00:34 +00:00
Dmitry Kurtaev
f0ddf302b2
Move Inference Engine to new API
2019-01-17 14:28:48 +03:00
WuZhiwen
3d44e9ad92
Merge pull request #13520 from wzw-intel:hang
...
* dnn/Vulkan: fix GPU hang for heavy convolution tasks
Intel i915 driver will declare GPU hang if the compute shader
takes too long to complete. See
https://bugs.freedesktop.org/show_bug.cgi?id=108947 for details.
The idea in this commit is to divide heavy task into several light
ones and run compute shader multiple times to make each run take
short time enough.
TODO: Add more efficient compute shader
Signed-off-by: Wu Zhiwen <zhiwen.wu@intel.com>
* dnn/Vulkan: add a more efficient conv shader
2018-12-27 15:06:44 +03:00
Wu Zhiwen
be6a837e15
dnn: add Vulkan device check for BackendRegistry
2018-12-24 10:41:58 +08:00
Alexander Alekhin
e82e672a93
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-12-06 07:06:58 +00:00
Alexander Alekhin
9ff1c39daa
dnn: fixup available backends/targets
2018-12-05 19:19:17 +03:00
Maksim Shabunin
fe459c82e5
Merge pull request #13332 from mshabunin:dnn-backends
...
DNN backends registry (#13332 )
* Added dnn backends registry
* dnn: process DLIE/FPGA target
2018-12-05 18:11:45 +03:00
WuZhiwen
02cc1cd6e6
Merge pull request #13244 from wzw-intel:init_vulkan
...
* dnn/Vulkan: don't init Vulkan runtime if using other backend/target
Don't need to explictly call a init API but will automatically
init Vulkan environment the first time to use an VkCom object.
Signed-off-by: Wu Zhiwen <zhiwen.wu@intel.com>
* dnn/Vulkan: depress compilier warning for "-Wsign-promo"
Signed-off-by: Wu Zhiwen <zhiwen.wu@intel.com>
2018-11-22 19:46:30 +03:00
Alexander Alekhin
7fa7fa0226
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-11-21 08:33:39 +00:00
Dmitry Kurtaev
0d117312c9
DNN_TARGET_FPGA using Intel's Inference Engine
2018-11-19 11:41:43 +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
f2bec05e6d
Merge pull request #12913 from dkurt:dnn_fix_ie_hyperparams
2018-11-16 18:36:12 +00:00
Dmitry Kurtaev
b5c54e447c
Extra hyperparameters for Intel's Inference Engine layers
2018-11-15 20:06:37 +03:00
Alexander Alekhin
96c71dd3d2
dnn: reduce set of ignored warnings
2018-11-15 13:15:59 +03:00
Alexander Alekhin
8409aa9eba
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-11-14 19:41:09 +00:00
Dmitry Kurtaev
80265a0815
Fix a bug with OpenVINO backend
2018-11-14 13:42:06 +03: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
801c943009
fix coverity reports
2018-11-11 13:51:47 +00: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
0c261acf3a
Merge pull request #13065 from dkurt:dnn_update_tf_faster_rcnn
2018-11-08 16:31:39 +00:00
Dmitry Kurtaev
dc9e6d3af8
Update a script to generate text graphs for Faster-RCNN networks from TensorFlow
2018-11-07 18:33:01 +03:00
catree
eebf0dd7c9
Fix integer overflow when accumulating timing values.
2018-11-07 13:04:48 +01:00
Wu Zhiwen
33c9d57c6f
dnn/Vulkan: skip heavy convolution task
...
This is a workaround for GPU hang on heavy convolution workload (> 10 GFLOPS).
e.g. ResNet101_DUC_HDC
For the long time task, vkWaitForFences() return without error but next call on
vkQueueSubmit() return -4, i.e. "VK_ERROR_DEVICE_LOST" and driver reports GPU hang.
Need more investigation on root cause of GPU hang and need to optimize convolution shader
to reduce process time.
2018-11-07 16:38:36 +08:00
Wu Zhiwen
3914c17b0d
dnn/Vulkan: Refine error handle mechanism
...
Fallback to OPENCV backend and CPU target if catch exception from
vkcom backend.
Signed-off-by: Wu Zhiwen <zhiwen.wu@intel.com>
2018-10-31 09:47:33 +08: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
edacd91a27
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-10-15 20:15:42 +00:00
Dmitry Kurtaev
dc3406eed9
Fix Pooling and Convolution layers from Intel's Inference Engine
2018-10-15 16:40:28 +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
26ba4f3c1d
Merge pull request #12754 from alalek:dnn_ocl4dnn_async_expressions
2018-10-08 15:22:24 +00:00
Alexander Alekhin
634dd656d5
dnn: don't use Mat expressions with async UMat functions
2018-10-05 17:09:50 +03:00
Alexander Alekhin
9d02d42afe
dnn(ocl4dnn): don't use getUMat()
...
especially in CPU only processing
2018-10-05 15:24:51 +03:00
Alexander Alekhin
a8b0db4e5d
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-09-28 14:14:47 +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
Dmitry Kurtaev
f8398d80bc
add Net::getUnconnectedOutLayersNames method
2018-09-25 18:10:45 +03:00
Maksim Shabunin
e0f524d3b7
Fixed several incorrect printf format specifiers
2018-09-24 11:31:40 +03:00
Alexander Alekhin
808ba552c5
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-09-14 23:44:35 +00:00
Lubov Batanina
0c8590027f
Merge pull request #12071 from l-bat/l-bat:onnx_parser
...
* Add Squeezenet support in ONNX
* Add AlexNet support in ONNX
* Add Googlenet support in ONNX
* Add CaffeNet and RCNN support in ONNX
* Add VGG16 and VGG16 with batch normalization support in ONNX
* Add RCNN, ZFNet, ResNet18v1 and ResNet50v1 support in ONNX
* Add ResNet101_DUC_HDC
* Add Tiny Yolov2
* Add CNN_MNIST, MobileNetv2 and LResNet100 support in ONNX
* Add ONNX models for emotion recognition
* Add DenseNet121 support in ONNX
* Add Inception v1 support in ONNX
* Refactoring
* Fix tests
* Fix tests
* Skip unstable test
* Modify Reshape operation
2018-09-10 21:07:51 +03:00
Alexander Alekhin
dca657a2fd
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-09-10 00:10:21 +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
Dmitry Kurtaev
d486204a0d
Merge pull request #12264 from dkurt:dnn_remove_forward_method
...
* Remove a forward method in dnn::Layer
* Add a test
* Fix tests
* Mark multiple dnn::Layer::finalize methods as deprecated
* Replace back dnn's inputBlobs to vector of pointers
* Remove Layer::forward_fallback from CV_OCL_RUN scopes
2018-09-06 13:26:47 +03:00
Alexander Alekhin
d74b98c3d9
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-09-04 18:39:03 +00:00
Dmitry Kurtaev
27a6be8763
Fix #12407
2018-09-04 17:48:52 +03:00
Alexander Alekhin
f10fd64630
dnn: update "guard" inline namespace
...
- differ from 3.4 branch
2018-09-03 20:46:57 +00:00
Dmitry Kurtaev
50bceea038
Include preprocessing nodes to object detection TensorFlow networks ( #12211 )
...
* Include preprocessing nodes to object detection TensorFlow networks
* Enable more fusion
* faster_rcnn_resnet50_coco_2018_01_28 test
2018-08-31 15:41:56 +03:00
Alexander Alekhin
15e57d28f5
Merge pull request #12293 from alalek:cleanup_stl_string_replacement
2018-08-30 15:43:57 +00:00
Dmitry Kurtaev
3e027df583
Enable more deep learning tests using Intel's Inference Engine backend
2018-08-27 18:37:35 +03:00
Alexander Alekhin
7f73b105ca
core: std::string more changes
2018-08-27 15:41:01 +03:00
Alexander Alekhin
096366738b
dnn(build): fix CV_Assert() usage
2018-08-22 16:04:40 +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
Vadim Pisarevsky
70b893333d
Merge pull request #12130 from dkurt:dnn_ie_mvn
2018-08-06 14:37:46 +00:00
Dmitry Kurtaev
be08730cd6
MVN layer using Intel's Inference Engine backend
2018-08-02 17:49:03 +03:00
Dmitry Kurtaev
8e034053af
Faster-RCNN from TensorFlow on CPU with Intel's Inference Engine backend
2018-08-01 11:29:58 +03:00
Alexander Alekhin
9137e2d635
Merge pull request #12060 from alalek:dnn_debug_layers
2018-07-26 15:14:32 +00:00
Dmitry Kurtaev
faa6c4e1e1
Faster-RCNN anf RFCN models on CPU using Intel's Inference Engine backend.
...
Enable Torch layers tests with Intel's Inference Engine backend.
2018-07-25 19:04:55 +03:00
Alexander Alekhin
45b5b3c13a
dnn: check layer output for NaN/Inf
2018-07-25 16:25:18 +03:00
Dmitry Kurtaev
070393dfda
uint8 inputs for deep learning networks
2018-07-19 14:37:33 +03:00
Alexander Alekhin
6c4f618db5
Merge pull request #11104 from asciian:reading_from_stream
2018-07-17 16:24:06 +00:00
Li Peng
f0cadaa6e3
enable concat layer fuse for OCL target
...
Signed-off-by: Li Peng <peng.li@intel.com>
2018-07-17 12:46:16 +08:00
Dmitry Kurtaev
8b5f061dae
Replace std::vector<char> to std::vector<uchar> for Java bindings of dnn importers
2018-07-11 18:58:56 +03:00
Dmitry Kurtaev
d57e5406f0
Add readNet* functions which parse models from byte arrays
2018-07-10 11:12:01 +03:00
Dmitry Kurtaev
362d4f5395
Replace convertFp16 from dnn::Net::setInput()
2018-07-09 14:35:54 +03:00
Vadim Pisarevsky
523b6f32ba
Merge pull request #11867 from dkurt:dnn_ie_layers
2018-07-06 13:13:20 +00:00
Dmitry Kurtaev
019c2f2115
Enable more deep learning tests
2018-07-05 14:23:15 +03:00
Dmitry Kurtaev
f25a01bb5a
Disable fusion to output layers
2018-07-04 15:53:47 +03:00
Alexander Alekhin
f40231af5d
Merge pull request #11851 from pengli:3.4
2018-06-29 15:01:20 +00:00
Li Peng
145eae321e
pooling ocl kernel optimization
...
set global size with real output size, also optimize
max pooling index computation if necessary.
Signed-off-by: Li Peng <peng.li@intel.com>
2018-06-29 15:22:49 +08:00
Dmitry Kurtaev
346871e27f
Set output layers names and types for models in DLDT's intermediate representation
2018-06-28 10:21:45 +03:00
Dmitry Kurtaev
40b85c1cd9
Remove undocumented feature to retreive layers outputs by indices
2018-06-20 14:44:21 +03:00
Alexander Alekhin
5fd7cfbcad
dnn: add runtime parameter OPENCV_DNN_BACKEND_DEFAULT
...
to control DNN_BACKEND_DEFAULT enumeration value behavior
2018-06-13 19:00:04 +03:00
Dmitry Kurtaev
f3a6ae5f00
Wrap Inference Engine init to try-catch
2018-06-07 12:55:52 +03:00
Vadim Pisarevsky
3cbd2e2764
Merge pull request #11650 from dkurt:dnn_default_backend
2018-06-06 09:30:39 +00:00
Dmitry Kurtaev
b781ac7346
Make Intel's Inference Engine backend is default if no preferable backend is specified.
2018-06-04 18:31:46 +03:00
Kuang Fangjun
9ae28415ec
fix doc.
2018-06-03 17:44:24 +08:00
Dmitry Kurtaev
32bab45f81
Fix Inference Engine graphs with fused output layers
2018-05-31 16:21:08 +03:00
Dmitry Kurtaev
f96f934426
Update Intel's Inference Engine deep learning backend ( #11587 )
...
* Update Intel's Inference Engine deep learning backend
* Remove cpu_extension dependency
* Update Darknet accuracy tests
2018-05-31 14:05:21 +03:00
Alexander Alekhin
471c17321f
improve code quality
...
- eliminate rand() calls
- non initialized members/ variables
- unused return values
- missing/useless NULL checks
2018-05-22 17:08:31 +03:00
Alexander Alekhin
d6279bfff8
fix build warnings
2018-05-17 18:29:21 +03:00
Li Peng
329abb5b64
dnn fp16 support
...
Signed-off-by: Li Peng <peng.li@intel.com>
2018-05-16 22:44:39 +08:00
Tomoaki Teshima
3f5347dd7a
work around of the test failure of opencv_test_dnn
...
* let OpenCL kernel run only on Intel GPU
* brush up the workaround based on 9a2b028 from alalek
2018-05-16 19:23:19 +09:00