Commit Graph

844 Commits

Author SHA1 Message Date
catree
eebf0dd7c9 Fix integer overflow when accumulating timing values. 2018-11-07 13:04:48 +01:00
Dmitry Kurtaev
a6f9170f10 Add ONNX's padding import 2018-10-31 18:24:05 +03:00
Antonio Borondo
7a3cb2280b Recognize ConvolutionDepthwise as Convolution 2018-10-24 08:37:51 +01:00
Dmitry Kurtaev
e7015f6ae8 Fix ENet test 2018-10-19 17:43:26 +03:00
Dmitry Kurtaev
365451dab0 Implement getBatchSize for Intel's Inference Engine networks 2018-10-17 14:02:37 +03:00
Alexander Alekhin
113793fee7 Merge pull request #12837 from dkurt:dnn_fix_ie 2018-10-15 19:17:18 +00:00
Alexander Alekhin
f8a27d2603 Merge pull request #12775 from radomsak:radomsak_dnn_fix_caffe_importer_reused_layers 2018-10-15 14:44:23 +00:00
Dmitry Kurtaev
dc3406eed9 Fix Pooling and Convolution layers from Intel's Inference Engine 2018-10-15 16:40:28 +03:00
Adam Radomski
70177143a7 Added test caffe importer layers sharing weights 2018-10-15 11:42:26 +02:00
tompollok
0b77600718 change area() emptiness checks to empty() 2018-10-13 21:35:10 +02:00
Adam Radomski
cc3ec5d453 Fix dnn caffe importer extract blobs from reused layers 2018-10-10 10:44:56 +02:00
Lubov Batanina
50811e04f2 Merge pull request #12596 from l-bat:l-bat/shufflenet_onnx
* Add Shufflenet support in ONNX

* Add test for transpose layer
2018-10-08 22:18:41 +03: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
eec468fa13 dnn(ocl4dnn): calculate activation expression once
- to avoid multiple conditional calls via sub_group() functions
2018-10-02 21:23:41 +00:00
Alexander Alekhin
0f031b6680 dnn(ocl4dnn): drop weights_buf
- avoid memory access violation during "prefetch" stage
2018-09-30 20:35:41 +00:00
Alexander Alekhin
fae329a0ca
Merge pull request #12650 from alalek:dnn_ocl4dnn_verification_test
* dnn(ocl4dnn): update kernel checks

* dnn: workaround for IDLF kernels on Intel iGPU

* dnn(test): remove "skip" check for unstable cases
2018-09-27 12:54:23 +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
c8f3579f93 Fix #12542 (#12603)
* Fix #12542

* Remove ignore of non-virtual-dtor error
2018-09-26 16:08:51 +03:00
Dmitry Kurtaev
f8398d80bc add Net::getUnconnectedOutLayersNames method 2018-09-25 18:10:45 +03:00
Alexander Alekhin
e0a5824028 dnn(test): test at least CPU code path 2018-09-19 13:56:59 +03:00
Dmitry Kurtaev
8ac7b21716 Enable Myriad device for OpenVINO models test 2018-09-18 13:49:24 +03:00
Alexander Alekhin
27a4e370f9 Merge pull request #12559 from dkurt:dnn_remove_usrtype1 2018-09-17 18:13:29 +00:00
Lubov Batanina
43f889ae1f Merge pull request #12519 from l-bat:l-bat/onnx_parser
Support asymmetric padding in pooling layer (#12519)

* Add Inception_V1 support in ONNX

* Add asymmetric padding in OpenCL and Inference engine

* Refactoring
2018-09-17 20:26:17 +03:00
Dmitry Kurtaev
7d75526373 Use TorchType enum 2018-09-17 18:55:05 +03:00
Vadim Pisarevsky
2113818f19 Merge pull request #12364 from dkurt:dnn_change_blob_from_image 2018-09-17 12:04:41 +00:00
Alexander Alekhin
29bee6f07e cmake: move Matlab scripts to opencv_contrib (#12541)
* matlab: move to opencv_contrib

* cmake: preserve variables scope for processing modules

- use macro instead of function to avoid scope resets
2018-09-17 14:55:42 +03:00
Dmitry Kurtaev
a7b3d2581f Replace CV_USRTYPE1 for int64 to CV_32SC2 in Torch importer 2018-09-17 12:31:09 +03:00
Alexander Alekhin
dbfeb8892d Merge pull request #12403 from dkurt:dnn_replace_darknet_reorg 2018-09-13 20:58:11 +00:00
Alexander Alekhin
fdaeb20253 dnn(test): run DL IE tests on Intel OpenCL devices only 2018-09-13 15:45:51 +00:00
Alexander Alekhin
e51d7cb3d8 Merge pull request #12502 from alalek:fix_dnn_tests_32bit 2018-09-13 14:20:42 +00:00
Alexander Alekhin
b7b82c1cef dnn(tensorflow): re-generate files using protoc 2018-09-12 21:33:45 +03:00
George Mironov
cb5da8983f Rename tensorflow namespace 2018-09-12 21:33:11 +03:00
Dmitry Kurtaev
58ac3e09da Change default value of crop argument of blobFromImage from true to false 2018-09-12 19:02:58 +03:00
Dmitry Kurtaev
09fa758725 Replace Darknet's Reorg to permute layer 2018-09-12 18:13:39 +03:00
Alexander Alekhin
6fc855865f dnn(test): fix failures of 32-bit builders 2018-09-12 13:06:16 +00:00
Vadim Pisarevsky
f4b9acb4db Merge pull request #12497 from tomoaki0705:removeRawSSE 2018-09-12 11:59:44 +00:00
Marat K
38f8fc6c82 Merge pull request #12249 from kopytjuk:feature/region-layer-batch-mode
Feature/region layer batch mode (#12249)

* Add batch mode for Darknet networks.

Swap variables in test_darknet.

Adapt reorg layer to batch mode.

Adapt region layer.

Add OpenCL implementation.

Remove trailing whitespace.

Bugifx reorg opencl implementation.

Fix bug in OpenCL reorg.

Fix modulo bug.

Fix bug.

Reorg openCL.

Restore reorg layer opencl code.

OpenCl fix.

Work on openCL reorg.

Remove whitespace.

Fix openCL region layer implementation.

Fix bug.

Fix softmax region opencl bug.

Fix opencl bug.

Fix openCL bug.

Update aff_trans.cpp

When the fullAffine parameter is set to false, the estimateRigidTransform function maybe return empty, then the _localAffineEstimate function will be called, but the bug in it will result in incorrect results.

core(libva): support YV12 too

Added to CPU path only.
OpenCL code path still expects NV12 only (according to Intel OpenCL extension)

cmake: allow to specify own libva paths

via CMake:
- `-DVA_LIBRARIES=/opt/intel/mediasdk/lib64/libva.so.2\;/opt/intel/mediasdk/lib64/libva-drm.so.2`

android: NDK17 support

tested with NDK 17b (17.1.4828580)

Enable more deep learning tests using Intel's Inference Engine backend

ts: don't pass NULL for std::string() constructor

openvino: use 2018R3 defines

experimental version++

OpenCV version++

OpenCV 3.4.3

OpenCV version '-openvino'

openvino: use 2018R3 defines

Fixed windows build with InferenceEngine

dnn: fix variance setting bug for PriorBoxLayer

- The size of second channel should be size[2] of output tensor,
- The Scalar should be {variance[0], variance[0], variance[0], variance[0]}
  for _variance.size() == 1 case.

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

Fix lifetime of networks which are loaded from Model Optimizer IRs

Adds a small note describing BUILD_opencv_world (#12332)

* Added a mall note describing BUILD_opencv_world cmake option to the Installation in Windows tutorial.

* Made slight changes in BUILD_opencv_world documentation.

* Update windows_install.markdown

improved grammar

Update opengl_interop.cpp

resolves #12307

java: fix LIST_GET macro

fix typo

Added option to fail on missing testdata

Fixed that object_detection.py does not work in python3.

cleanup: IPP Async (IPP_A)

except header file with conversion routines (will be removed in OpenCV 4.0)

imgcodecs: add null pointer check

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

countNonZero function reworked to use wide universal intrinsics instead of SSE2 intrinsics

resolve #5788

imgcodecs(webp): multiple fixes

- don't reallocate passed 'img' (test fixed - must use IMREAD_UNCHANGED / IMREAD_ANYCOLOR)
- avoid memory DDOS
- avoid reading of whole file during header processing
- avoid data access after allocated buffer during header processing (missing checks)
- use WebPFree() to free allocated buffers (libwebp >= 0.5.0)
- drop unused & undefined `.close()` method
- added checks for channels >= 5 in encoder

ml: fix adjusting K in KNearest (#12358)

dnn(perf): fix and merge Convolution tests

- OpenCL tests didn't run any OpenCL kernels
- use real configuration from existed models (the first 100 cases)
- batch size = 1

dnn(test): use dnnBackendsAndTargets() param generator

Bit-exact resize reworked to use wide intrinsics (#12038)

* Bit-exact resize reworked to use wide intrinsics

* Reworked bit-exact resize row data loading

* Added bit-exact resize row data loaders for SIMD256 and SIMD512

* Fixed type punned pointer dereferencing warning

* Reworked loading of source data for SIMD256 and SIMD512 bit-exact resize

Bit-exact GaussianBlur reworked to use wide intrinsics (#12073)

* Bit-exact GaussianBlur reworked to use wide intrinsics

* Added v_mul_hi universal intrinsic

* Removed custom SSE2 branch from bit-exact GaussianBlur

* Removed loop unrolling for gaussianBlur horizontal smoothing

doc: fix English gramma in tutorial out-of-focus-deblur filter (#12214)

* doc: fix English gramma in tutorial out-of-focus-deblur filter

* Update out_of_focus_deblur_filter.markdown

slightly modified one sentence

doc: add new tutorial motion deblur filter (#12215)

* doc: add new tutorial motion deblur filter

* Update motion_deblur_filter.markdown

a few minor changes

Replace Slice layer to Crop in Faster-RCNN networks from Caffe

js: use generated list of OpenCV headers

- replaces hand-written list

imgcodecs(webp): use safe cast to size_t on Win32

* Put Version status back to -dev.

follow the common codestyle

Exclude some target engines.

Refactor formulas.

Refactor code.

* Remove unused variable.

* Remove inference engine check for yolov2.

* Alter darknet batch tests to test with two different images.

* Add yolov3 second image GT.

* Fix bug.

* Fix bug.

* Add second test.

* Remove comment.

* Add NMS on network level.

* Add helper files to dev.

* syntax fix.

* Fix OD sample.

Fix sample dnn object detection.

Fix NMS boxes bug.

remove trailing whitespace.

Remove debug function.

Change thresholds for opencl tests.

* Adapt score diff and iou diff.

* Alter iouDiffs.

* Add debug messages.

* Adapt iouDiff.

* Fix tests
2018-09-12 13:29:43 +03:00
Tomoaki Teshima
88b04c3cd4 remove raw SSE2 implementation 2018-09-11 21:28:18 +09: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
Hamdi Sahloul
a39e0daacf Utilize CV_UNUSED macro 2018-09-07 20:33:52 +09:00
Vadim Pisarevsky
54279523a3 Merge pull request #12437 from vpisarev:avx2_fixes
* trying to fix the custom AVX2 builder test failures (false alarms)

* fixed compile error with CPU_BASELINE=AVX2 on x86; raised tolerance thresholds in a couple of tests

* fixed compile error with CPU_BASELINE=AVX2 on x86; raised tolerance thresholds in a couple of tests

* fixed compile error with CPU_BASELINE=AVX2 on x86; raised tolerance thresholds in a couple of tests

* seemingly disabled false alarm warning in surf.cpp; increased tolerance thresholds in the tests for SolvePnP and in DNN/ENet
2018-09-06 18:56:55 +03:00
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
8a328e393d Merge pull request #12408 from dkurt:dnn_myriad_batch_tests 2018-09-05 10:04:04 +00:00
Dmitry Kurtaev
6ec230480d Enable Myriad tests with batch size > 1 2018-09-05 10:45:09 +03:00
Dmitry Kurtaev
27a6be8763 Fix #12407 2018-09-04 17:48:52 +03:00
Alexander Alekhin
2cf34c0fe5 dnn: fix tests build with disabled OpenCL 2018-09-03 23:11:25 +00:00
Dmitry Kurtaev
c7cf8fb35c Import SSDs from TensorFlow by training config (#12188)
* Remove TensorFlow and protobuf dependencies from object detection scripts

* Create text graphs for TensorFlow object detection networks from sample
2018-09-03 17:08:40 +03:00
Wu Zhiwen
a11d944f51 dnn: Remove a duplicated code snippet for flatten layer
Signed-off-by: Wu Zhiwen <zhiwen.wu@intel.com>
2018-09-03 10:57:33 +08:00
Vadim Pisarevsky
f9c8bb40b1 Merge pull request #12350 from dkurt:dnn_ie_caffe_faster_rcnn 2018-08-31 14:57:14 +00:00
Alexander Alekhin
f33cbe94dd Merge pull request #12142 from alalek:dnn_ocl_fix_convolution_perf_tests 2018-08-31 13:27:14 +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
c557193b8c dnn(test): use dnnBackendsAndTargets() param generator 2018-08-31 15:11:58 +03:00
Alexander Alekhin
3e6b3a6856 dnn(perf): fix and merge Convolution tests
- OpenCL tests didn't run any OpenCL kernels
- use real configuration from existed models (the first 100 cases)
- batch size = 1
2018-08-31 15:02:19 +03:00
Dmitry Kurtaev
ea43e28a37 Replace Slice layer to Crop in Faster-RCNN networks from Caffe 2018-08-30 17:57:08 +03:00
Alexander Alekhin
7845f6d95c Merge pull request #12345 from berak:fix_java_list_string 2018-08-30 13:04:19 +00:00
Alexander Alekhin
596a0125ed Merge pull request #12336 from dkurt:dnn_ie_fix_net_lifetime 2018-08-30 11:09:18 +00:00
berak
72f422c7dc java: fix LIST_GET macro 2018-08-30 13:06:02 +02:00
Wu Zhiwen
ca51bbb7ff dnn: fix variance setting bug for PriorBoxLayer
- The size of second channel should be size[2] of output tensor,
- The Scalar should be {variance[0], variance[0], variance[0], variance[0]}
  for _variance.size() == 1 case.

Signed-off-by: Wu Zhiwen <zhiwen.wu@intel.com>
2018-08-30 11:05:38 +08:00
Dmitry Kurtaev
4062ef5fcb Fix lifetime of networks which are loaded from Model Optimizer IRs 2018-08-29 13:34:26 +03:00
Alexander Alekhin
b38c50b3d0 OpenCV 3.4.3 2018-08-28 15:58:21 +03: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
6477262e63 Merge pull request #12306 from berak:python_nmsboxes 2018-08-25 16:35:00 +00:00
berak
21f3987d53 python: add support for NMSBoxes 2018-08-25 08:44:45 +02:00
Dmitry Kurtaev
472b71ecef Merge pull request #12243 from dkurt:dnn_tf_mask_rcnn
* Support Mask-RCNN from TensorFlow

* Fix a sample
2018-08-24 14:47:32 +03:00
Alexander Alekhin
096366738b dnn(build): fix CV_Assert() usage 2018-08-22 16:04:40 +03:00
Alexander Alekhin
f25450791b dnn(test): mark unstable OpenCL tests 2018-08-21 16:31:41 +03:00
Alexander Alekhin
c9faa09d55 Merge pull request #12266 from mshabunin:fix-windows-ie-build 2018-08-21 13:07:44 +00:00
Alexander Alekhin
5ac9a2a7d0 Merge pull request #12219 from alalek:fix_assert_messages 2018-08-21 12:46:35 +00:00
Maksim Shabunin
808c89adc1 Fixed windows build with InferenceEngine 2018-08-21 14:59:13 +03:00
Alexander Alekhin
31fef14d76 Merge pull request #12136 from sturkmen72:update_documentation 2018-08-17 14:02:20 +00:00
Suleyman TURKMEN
c61bc3a0cb Update documentation and samples 2018-08-17 14:21:29 +03:00
Alexander Alekhin
d2e08a524e core: repair CV_Assert() messages
Multi-argument CV_Assert() is accessible via CV_Assert_N() (with malformed messages).
2018-08-15 17:43:10 +03:00
Alexander Alekhin
781721ca50 experimental version++ 2018-08-14 14:10:37 +03:00
Alexander Alekhin
b9b66ca437 Merge pull request #12205 from dkurt:dnn_update_tf_face_detection 2018-08-14 10:53:12 +00:00
Dmitry Kurtaev
f056c0f137 UINT8 face detection network using Intel's Inference Engine backend 2018-08-13 18:38:47 +03:00
Alexander Alekhin
615883977f Merge pull request #12128 from dkurt:dnn_fix_12066 2018-08-10 14:14:16 +00:00
Alexander Alekhin
a56b221559 core: cv::Range() ostream write operator
remove from DNN module headers
2018-08-07 20:03:21 +03:00
Vadim Pisarevsky
7c8ab271fc Merge pull request #12125 from dkurt:dnn_mobilenet_ppn 2018-08-06 14:40:50 +00:00
Vadim Pisarevsky
70b893333d Merge pull request #12130 from dkurt:dnn_ie_mvn 2018-08-06 14:37:46 +00:00
Dmitry Kurtaev
449696f1e5 Enable reshape-as-shape layer from TensorFlow 2018-08-06 17:35:06 +03:00
Vadim Pisarevsky
e0c93bcf6c Merge pull request #12082 from dkurt:dnn_ie_faster_rcnn 2018-08-06 14:28:58 +00:00
Alexander Alekhin
ac4a6aad15 Merge pull request #12050 from alalek:dnn_ocl_avoid_memory_access_violation 2018-08-05 14:47:01 +00:00
Dmitry Kurtaev
be08730cd6 MVN layer using Intel's Inference Engine backend 2018-08-02 17:49:03 +03:00
Dmitry Kurtaev
4fb086d6c3 MobileNet-SSD v1 from TensorFlow with shared convolution weights 2018-08-01 16:16:48 +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
814ebe39ae Merge pull request #12113 from dkurt:dnn_fix_ssd_on_myriad 2018-07-31 14:55:18 +00:00
Maksim Shabunin
7cf52de47e dnn: modified IE search, R2 compatibility fixed 2018-07-31 14:48:06 +03:00
Dmitry Kurtaev
ed0e79cb61 Add missing parameter to DetectionOutput layer from Intel's Inference Engine 2018-07-31 11:37:45 +03:00
Maksim Shabunin
fb1f12021b Fixed build with latest IE version 2018-07-27 19:56:35 +03:00
Alexander Alekhin
b597c87bed dnn(ocl): avoid memory access violation 2018-07-27 15:35:11 +03:00
Alexander Alekhin
2f0fc920dd Merge pull request #12061 from alalek:dnn_test_skip_checks_only 2018-07-26 15:15:32 +00:00
Alexander Alekhin
9137e2d635 Merge pull request #12060 from alalek:dnn_debug_layers 2018-07-26 15:14:32 +00:00
Alexander Alekhin
c37d1a53b5 Merge pull request #12025 from Triplesalt:tfimport-relu 2018-07-26 15:08:05 +00:00
Triplesalt
9eb79926df Allow a different input order for Mul+Maximum.
Squashed : ReLU operand order tests.
2018-07-26 14:19:11 +02:00
Vadim Pisarevsky
fa466b022d Merge pull request #12052 from dkurt:dnn_ie_torch_tests 2018-07-26 09:09:35 +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
dd8701c1a0 dnn(test): skip checks only for unstable tests
but execute tested functions in Layer_Test_Halide/Convolution.Accuracy
2018-07-25 16:55:21 +03:00
Alexander Alekhin
74cf48b5d7 dnn(test): use Backend/Target enums
instead of 'int'
2018-07-25 16:55:21 +03:00
Alexander Alekhin
45b5b3c13a dnn: check layer output for NaN/Inf 2018-07-25 16:25:18 +03:00
Maksim Shabunin
cbb1e867e5 More issues found by static analysis 2018-07-24 16:04:42 +03:00
Alexander Alekhin
8de08e0463 Merge pull request #12021 from dkurt:dnn_ie_tf_ssd 2018-07-24 13:03:41 +00:00
Alexander Alekhin
236f383969 Merge pull request #12037 from dkurt:test_openvino_models 2018-07-24 12:34:04 +00:00
Alexander Alekhin
4283309daa dnn: update tests for OpenVINO models 2018-07-24 09:41:14 +03:00
Dmitry Kurtaev
28e08ae0bd Add a sample which tests OpenVINO models 2018-07-23 19:08:51 +03:00
Maksim Shabunin
e0603bb45f Fixed several issues found by static analysis tools 2018-07-23 17:22:47 +03:00
Alexander Alekhin
ee743afebe dnn(ocl): don't use getUMat() for long live objects 2018-07-20 17:53:55 +03:00
Maksim Shabunin
a4060e15a4 dnn, IE backend: updated to match new interface 2018-07-19 19:22:23 +03:00
Dmitry Kurtaev
c213a3823e Run entire SSDs from TensorFlow using Intel's Inference Engine 2018-07-19 17:05:56 +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
Maksim Shabunin
1da46fe6fb Fixed issues found by static analysis (mostly DBZ) 2018-07-17 16:14:54 +03:00
Alexander Alekhin
78d07e841d Merge pull request #11959 from pengli:3.4 2018-07-17 11:20:02 +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
Alexander Alekhin
c9439476da Merge pull request #11970 from dkurt:dnn_enable_tf_tests 2018-07-16 15:51:27 +00:00
Alexander Alekhin
d6c669f5cf Merge pull request #11963 from dkurt:dnn_cl_fix_matmul 2018-07-16 11:10:32 +00:00
Dmitry Kurtaev
6eb8faea85 Enable TensorFlow networks tests for different backends and targets 2018-07-13 19:58:56 +03:00
Dmitry Kurtaev
de6f0a537d Fix fully-connected layer in case of number of rows less than 4 2018-07-13 16:35:37 +03:00
Dmitry Kurtaev
dcc1beb1f8 Clip kernel for OpenCL PriorBox layer 2018-07-13 14:49:13 +03:00
Alexander Alekhin
2508f7f971 dnn(ocl): fix wrong usage of stalled .getMat() pointers
Temporary object lifetime must be greater than pointer usage.
2018-07-11 19:11:36 +03: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
Alexander Alekhin
999aba3807 Merge pull request #11936 from berak:dnn_shufflelayer_name 2018-07-11 12:01:31 +00:00
Alexander Alekhin
82c7ab0231 Merge pull request #11927 from pengli:3.4 2018-07-11 09:33:24 +00:00
Li Peng
4c5a86828a Fix gemmlike convolution input reading
use vload3 for half3 or float3 input vector reading,
also check read position to see if it exceed input width

Signed-off-by: Li Peng <peng.li@intel.com>
2018-07-11 15:25:21 +08:00
berak
a7b502f04a dnn: preserve name, type strings for ShuffleLayer 2018-07-11 08:19:23 +02:00
Alexander Alekhin
452fa3011c dnn(test): drop CV_ENUM for DNNBackend / DNNTarget 2018-07-10 15:12:01 +03:00
Dmitry Kurtaev
d57e5406f0 Add readNet* functions which parse models from byte arrays 2018-07-10 11:12:01 +03:00
Alexander Alekhin
7fe0727930 Merge pull request #11924 from alalek:dnn_ocl_fix_max_pool_forward 2018-07-09 16:25:34 +00:00
Alexander Alekhin
529d38613b Merge pull request #11923 from alalek:dnn_external_protobuf 2018-07-09 16:07:42 +00:00
Alexander Alekhin
88d56dc700 Merge pull request #11922 from alalek:dnn_test_myriad_check 2018-07-09 16:07:18 +00:00
Alexander Alekhin
b6255ab9e7 dnn(ocl4dnn): fix args for 'max_pool_forward' kernel 2018-07-09 18:02:20 +03:00
Alexander Alekhin
e2b5d11290 dnn: allow to use external protobuf
"custom layers" feature will not work properly in these builds.
2018-07-09 17:28:45 +03:00
Alexander Alekhin
52b151dceb dnn(test): use checkMyriadTarget() in Test_Caffe_layers.Conv_Elu test 2018-07-09 16:20:46 +03:00
Dmitry Kurtaev
362d4f5395 Replace convertFp16 from dnn::Net::setInput() 2018-07-09 14:35:54 +03:00
asciian
61d8719b8d Reading net from std::ifstream
Remove some assertions

Replace std::ifstream to std::istream

Add test for new importer

Remove constructor to load file

Rename cfgStream and darknetModelStream to ifile

Add error notification to inform pathname to user

Use FileStorage instead of std::istream

Use FileNode instead of FileStorage

Fix typo
2018-07-09 10:02:05 +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
Alexander Alekhin
0bb2c115aa Merge pull request #11719 from alalek:update_autobuffer_api 2018-07-05 10:01:15 +00:00
Alexander Alekhin
ccd2370bb7 Merge pull request #11890 from dkurt:keras_resize_nearest 2018-07-05 09:57:24 +00:00
Alexander Alekhin
c0d0cf5e74 Merge pull request #11893 from dkurt:fix_11884 2018-07-05 09:56:50 +00:00
Alexander Alekhin
b09a4a98d4 opencv: Use cv::AutoBuffer<>::data() 2018-07-04 19:11:29 +03:00
Dmitry Kurtaev
f25a01bb5a Disable fusion to output layers 2018-07-04 15:53:47 +03:00
Alexander Alekhin
9e1b1e5389 OpenCV 3.4.2 2018-07-04 14:05:47 +03:00
Dmitry Kurtaev
36288eebe7 Nearest neighbor resize from Keras 2018-07-04 11:53:24 +03:00
Dmitry Kurtaev
7ed5d85f25 Add Reshape layer tests 2018-07-03 08:26:43 +03:00
Alexander Alekhin
9be3f7d41a Merge pull request #11854 from dkurt:dnn_tf_data_layouts_v2 2018-06-29 15:02:22 +00: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
d971678add Add a planar data layout tracking for TensorFlow importer 2018-06-29 09:50:14 +03: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
Vadim Pisarevsky
5dc0e51682 Merge pull request #11839 from dkurt:dnn_ie_r2 2018-06-27 09:56:02 +00:00
Dmitry Kurtaev
dbeb4a11be Parse strides and convolution kernel shapes considering data layout 2018-06-26 16:18:21 +03:00
Dmitry Kurtaev
b11e22c25b Update Inference Engine tests 2018-06-26 15:38:08 +03:00
Vadim Pisarevsky
e87425f047 Merge pull request #11835 from dkurt:dnn_tf_two_inputs 2018-06-26 12:12:24 +00:00
Dmitry Kurtaev
9510551c63 Multiple inputs for TensorFlow models 2018-06-26 14:03:59 +03:00
Vadim Pisarevsky
b80c7bca0d Merge pull request #11826 from dkurt:dnn_tf_data_layouts 2018-06-26 06:36:27 +00:00
Vadim Pisarevsky
dc27d52221
temporarily disabled OpenCL use in DNN module on Mac (#11828)
* temporarily disabled OpenCL use in DNN module on Mac, since some of the tests fail

* disable OpenCL in DNN on Mac at CMake level, not source level (thanks to alalek for the advice)
2018-06-26 09:35:18 +03:00
Dmitry Kurtaev
715f40a48d Use layers consumers to predict data layout 2018-06-25 18:25:40 +03:00
Li, Peng
ab8022f74e update convolution opencl kernels in dnn module (#11762)
* optimize ocl kernel enqueue in fc layer

Signed-off-by: Li Peng <peng.li@intel.com>

* use CV_LOG_INFO in convolution auto tuning

Signed-off-by: Li Peng <peng.li@intel.com>

* update convolution IDLF kernel

extend parameter tuning range, also cleanup
ocl kernel implementation

Signed-off-by: Li Peng <peng.li@intel.com>

* update in-memory convolution cache config

fp16 and fp32 cache config are stored separately

Signed-off-by: Li Peng <peng.li@intel.com>
2018-06-25 17:06:18 +03:00
Dmitry Kurtaev
e8e9d1d021 Implement Interp layer using Resize layer 2018-06-22 19:26:47 +03:00
Alexander Alekhin
1894f1a37f Merge pull request #11773 from alalek:dnn_ocl_update_force_tuning_flag 2018-06-22 05:23:55 +00:00
Alexander Alekhin
50c607d206 dnn(ocl): fix external / predefined builtin configuration behavior
OPENCV_OCL4DNN_FORCE_AUTO_TUNING should ignore existed configuration from:
- builtin predefined configurations (for Intel OpenCL iGPUs)
- external configuration (via OPENCV_OCL4DNN_CONFIG_PATH)

Prefer external configuration over builtin.
2018-06-21 20:59:03 +03:00
Dmitry Kurtaev
4626246087 Add ShuffleChannel layer 2018-06-21 19:10:42 +03:00
Dmitry Kurtaev
40b85c1cd9 Remove undocumented feature to retreive layers outputs by indices 2018-06-20 14:44:21 +03:00
Alexander Alekhin
30d4e0261a Merge pull request #11766 from dkurt:dnn_darknet_avgpool_softmax 2018-06-14 13:18:30 +00:00
Dmitry Kurtaev
bd87eb6e66 Import average pooling and softmax layers from Darknet 2018-06-14 15:22:08 +03:00
Dmitry Kurtaev
693a7663e7 Import ClipByValue from Keras 2018-06-14 13:30:30 +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
Alexander Alekhin
f040282bf8 Merge pull request #11739 from dkurt:more_ie_models 2018-06-13 13:26:50 +00:00
Alexander Alekhin
ab11b17d4b experimental version++ 2018-06-10 10:20:38 +03:00
Dmitry Kurtaev
7d727ac2fb Fuse top layers to batch normalization 2018-06-09 18:06:53 +03:00
Dmitry Kurtaev
2c291bc2fb Enable FastNeuralStyle and OpenFace networks with IE backend 2018-06-09 15:57:12 +03:00
Dmitry Kurtaev
40765c5f8d Enable SSD models from TensorFlow with OpenCL plugin of Intel's Inference Engine 2018-06-08 16:55:21 +03:00
rockzhan
1187a7fa34 Merge pull request #11649 from rockzhan:dnn_dw_prelu
dnn: Fix output mismatch when forward dnn model contain [depthwise conv(group=1) + bn + prelu]  (#11649)

* this can make sure [depthwise conv(group=1) + bn + prelu] output not shift

* add TEST to show the output mismatch in [DWconv+Prelu]

* fix typo

* change loading image to init cvMat directly

* build runtime model, without loading external model

* remove whitespace

* change way to create a cvmat

* add bias_term, add target output

* fix [dwconv + prelu] value mismatch when no optimizations

* fix Test error when change output channels

* add parametric test

* change num_output to group value

* change conv code and change test back
2018-06-07 13:45:54 +00:00
David
7175f257b5 Added ResizeBilinear op for tf (#11050)
* Added ResizeBilinear op for tf

Combined ResizeNearestNeighbor and ResizeBilinear layers into Resize (with an interpolation param).

Minor changes to tf_importer and resize layer to save some code lines

Minor changes in init.cpp

Minor changes in tf_importer.cpp

* Replaced implementation of a custom ResizeBilinear layer to all layers

* Use Mat::ptr. Replace interpolation flags
2018-06-07 16:29: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
Alexander Alekhin
6816495bee dnn(test): reuse test/test_common.hpp, eliminate dead code warning 2018-06-05 12:52:53 +03: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
Alexander Alekhin
04802e41e9 gtest: support parameters with types from anonymous namespace 2018-06-04 13:30:24 +03:00
Vadim Pisarevsky
3030594665 Merge pull request #11644 from alalek:docs_avoid_master_links_in_3.4-2 2018-06-04 10:19:44 +00:00
Vadim Pisarevsky
055f33ec46 Merge pull request #11657 from dkurt:dnn_ie_multiple_networks 2018-06-04 10:12:46 +00:00
Kuang Fangjun
9ae28415ec fix doc. 2018-06-03 17:44:24 +08:00
Dmitry Kurtaev
ab389142af Fix multiple networks with Intel's Inference Engine backend 2018-06-01 14:10:32 +03:00
Alexander Alekhin
da75e463a8
Merge pull request #11639 from alalek:fix_precomp_hpp 2018-05-31 16:35:21 +00:00
Alexander Alekhin
f185802489 documentation: avoid links to 'master' branch from 3.4 maintenance branch (2)
Other links:
- https://raw.githubusercontent.com/opencv/opencv/master
- https://github.com/opencv/opencv/blob/master
2018-05-31 19:30:56 +03:00
Alexander Alekhin
799b4f48e7 fix missing precomp.hpp 2018-05-31 16:53:44 +03:00
Dmitry Kurtaev
32bab45f81 Fix Inference Engine graphs with fused output layers 2018-05-31 16:21:08 +03:00
Vadim Pisarevsky
c58cc4c2ff Merge pull request #11255 from dkurt:dnn_tf_faster_rcnn 2018-05-31 11:07:39 +00: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
Dmitry Kurtaev
bf87a43185 Faster-RCNN object detection models from TensorFlow 2018-05-30 17:12:36 +03:00
Alexander Alekhin
44572fac44 Merge pull request #11557 from tomoaki0705:relaxIntelOnlyOCL4DNN 2018-05-29 15:25:22 +00:00
Tomoaki Teshima
2e9e71ab9e make ocl4dnn available to run on other platform than Intel GPU 2018-05-29 19:18:10 +09:00
Dmitry Kurtaev
085be6a445 Fix dilated convolution from Keras 2018-05-29 12:15:47 +03:00
Dmitry Kurtaev
2c3c59d018 Remove Shift deep learning layer 2018-05-28 18:18:56 +03:00
Alexander Alekhin
3654fb10d7 Merge pull request #11567 from alalek:code_quality 2018-05-23 15:47:11 +00:00
Maksim Shabunin
895e10c317 dnn: fixed IE support on Windows 2018-05-23 12:46:14 +03:00
Alexander Alekhin
2fc713bb94 Merge pull request #11566 from mshabunin:allow-ie-force 2018-05-22 14:12:32 +00: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
Maksim Shabunin
53a68783a5 dnn: support later IE versions 2018-05-22 15:18:18 +03:00
Maksim Shabunin
020ad1ac76 dnn: allow setting IE paths via command line 2018-05-22 14:40:03 +03:00
Alexander Alekhin
58c8aefe03 dnn(text): update check threshols
- make green Linux debug/Linux32/Win32 builders
2018-05-22 13:29:31 +03:00
Alexander Alekhin
085b27fc3d Merge pull request #11390 from dkurt:east_text_detection 2018-05-21 13:02:29 +00:00
Dmitry Kurtaev
07dc6d2b45 Return a convex hull from rotatedRectangleIntersection 2018-05-18 14:20:17 +03:00
Alexander Alekhin
d6279bfff8 fix build warnings 2018-05-17 18:29:21 +03:00
Li Peng
1b517a45ae add fp16 accuracy and perf test
Signed-off-by: Li Peng <peng.li@intel.com>
2018-05-16 22:45:07 +08:00
Li Peng
ba5e8befa9 fp16 ocl support for more layers
Signed-off-by: Li Peng <peng.li@intel.com>
2018-05-16 22:45:04 +08:00
Li Peng
3dd916882a fp16 ocl support for googlenet
Signed-off-by: Li Peng <peng.li@intel.com>
2018-05-16 22:45:02 +08:00
Li Peng
329abb5b64 dnn fp16 support
Signed-off-by: Li Peng <peng.li@intel.com>
2018-05-16 22:44:39 +08:00
Alexander Alekhin
bb8ff2c463 Merge pull request #11494 from tomoaki0705:fixOpenCLDnn 2018-05-16 14:11:36 +00: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
Alexander Alekhin
78f205ffa5 python: better Python 3 support 2018-05-11 17:32:04 +03:00
Alexander Alekhin
df02fe0615 Merge pull request #11445 from cclauss:file-long-raw_input-xrange 2018-05-11 13:28:53 +00:00
Alexander Alekhin
8356a6b6ab Merge pull request #11442 from cclauss:print-function 2018-05-11 13:26:04 +00:00
Dmitry Kurtaev
8488f2e265 EAST: An Efficient and Accurate Scene Text Detector (https://arxiv.org/abs/1704.03155v2) 2018-05-11 14:55:42 +03:00
Dmitry Kurtaev
c99c3e761e Fuse multipliers but not convolution layers weights 2018-05-10 19:24:38 +03:00
Dmitry Kurtaev
777d77848c Free Convolution and MatMul weights after TensorFlow layers import 2018-05-04 11:20:14 +03:00
Dmitry Kurtaev
9ffe4694db Reduce memory consumption at Caffe importer 2018-05-04 09:24:13 +03:00
zuoshaobo
4ff6a1bc7b Merge pull request #11425 from zuoshaobo:relu_negative_slope
* FIX INF_ENGINE RELU ERROR

* set slope to variable

* tab in indentwq
2018-05-03 13:36:49 +03:00
cclauss
8a79b167b8 Define execfile, file, long, raw_input, xrange for Python 3 2018-05-03 09:19:05 +02:00
cclauss
05c1a3d160 print() is a function in Python 3 2018-05-03 07:12:12 +02:00
Alexander Alekhin
083b08742d Merge pull request #11406 from alalek:core_matsize_dims 2018-04-28 14:38:42 +00:00
Alexander Alekhin
65b0b319eb eliminate MSVS2017 build warning
modules\dnn\src\layers\prior_box_layer.cpp(208): warning C4834: discarding return value of function with 'nodiscard' attribute
2018-04-28 15:14:41 +03:00
Alexander Alekhin
8c349ff8ff core: added MatSize::dims() method
to avoid accessing of 'p[-1]' (static code analysers dislike this)
2018-04-27 16:57:29 +03:00
Dmitry Kurtaev
d5b9563263 Custom deep learning layers in Python 2018-04-26 09:25:18 +03:00
Alexander Alekhin
6b581c4e51 build: unreachable code after CV_Error() (part 2) 2018-04-24 16:03:40 +03:00
Alexander Alekhin
576d2dbac0 refactor: don't use CV_ErrorNoReturn() internally 2018-04-24 15:38:42 +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
29b4fd2774 Merge pull request #11351 from dkurt:dnn_enable_inf_engine_tests 2018-04-23 09:16:39 +00:00
Dmitry Kurtaev
d959d7b9f0 Fuse deconvolution layer subgraphs from Keras 2018-04-20 16:51:38 +03:00
Dmitry Kurtaev
bd77d100e1 Enable some tests for clDNN plugin from Intel's Inference Engine 2018-04-20 10:47:46 +03:00
Dmitry Kurtaev
3b4a292ca9 Let switch CPU/OpenCL targets for models from Intel's Model Optimizer 2018-04-19 10:23:57 +03:00
Vadim Pisarevsky
b290bdafb9 Merge pull request #11322 from dkurt:dnn_yolov3 2018-04-18 12:11:13 +00:00
Dmitry Kurtaev
66ce8cd7ea Fix bugs found by valgrind 2018-04-17 17:53:51 +03:00
Dmitry Kurtaev
97fec07d96 Support YOLOv3 model from Darknet 2018-04-16 18:44:12 +03:00
Alexander Alekhin
ee90a6cbde dnn(test): update error tolerance for RCNN/RFCN tests 2018-04-16 14:24:41 +03:00
Alexander Alekhin
a2d6ee2d31 Merge pull request #11305 from tomoaki0705:typoNVIDIA 2018-04-13 12:56:42 +00:00
Tomoaki Teshima
a40354d16f use correct name for NVIDIA
* remove NVidia and Nvidia
  * replace Cuda with CUDA
  * keep the letters for API
2018-04-13 20:33:19 +09:00
Dmitry Kurtaev
b92c3182ab Blank and L2-normalization layers from Intel's Inference Engine 2018-04-12 15:21:08 +03:00
Vadim Pisarevsky
0b9d075958 Merge pull request #11295 from dkurt:dnn_repeated_conv_params 2018-04-11 15:25:24 +00:00
Vadim Pisarevsky
533bb89800 Merge pull request #11236 from dkurt:dnn_fuse_l2_norm 2018-04-11 15:09:55 +00:00
Vadim Pisarevsky
30175594e9 Merge pull request #11062 from dkurt:dnn_inf_engine_cldnn 2018-04-11 15:06:18 +00:00
Dmitry Kurtaev
512632e574 Parse repeated values of ConvolutionParameter 2018-04-11 14:38:05 +03:00
Dmitry Kurtaev
4ef6c91583 Fix multiple inputs for models from Intel's Model Optimizer 2018-04-11 13:28:07 +03:00
Dmitry Kurtaev
1ba72ca0d3 Fuse tf.nn.l2_normalize layer 2018-04-10 10:12:44 +03:00
Dmitry Kurtaev
709cf5d038 OpenCL GPU target for Inference Engine deep learning backend
Enable FP16 GPU target for DL Inference Engine backend.
2018-04-09 17:21:35 +03:00
Vladislav Sovrasov
0d9c63744e Add CPU default extensions loading in IE dnn backend (#11252)
* Add CPU default extensions loading in IE dnn backend

* Load cpu_extensions for the future Intel's Inference Engine
2018-04-09 16:22:19 +03:00
Dmitry Kurtaev
ef1aaf12c9 Fix Proposal deep learning layer 2018-04-04 14:48:29 +03:00
Alexander Alekhin
7bc980edaf Merge pull request #10983 from dkurt:dnn_face_detection_uint8 2018-04-03 18:19:43 +00:00