Commit Graph

347 Commits

Author SHA1 Message Date
Dmitry Kurtaev
9e9926a2f0 PriorBox layer with explicit normalized sizes 2018-01-24 14:01:42 +03:00
Dmitry Kurtaev
a3d74704e5 OpenCV face detection network test 2018-01-23 09:27:58 +03:00
Alexander Alekhin
26e0f408f0 Merge pull request #10639 from pengli:dnn 2018-01-19 10:01:41 +00:00
Li Peng
fe494297e4 more update on MVN layer ocl implementation
cut one ocl kernel if normVariance is disabled,
also use native_powr for performance reason.

Signed-off-by: Li Peng <peng.li@intel.com>
2018-01-19 22:54:04 +08:00
Alexander Alekhin
c3569211d5 Merge pull request #10591 from drkoller:master 2018-01-19 09:44:21 +00:00
Li Peng
2124361ff7 ocl support for Deconvolution layer
Signed-off-by: Li Peng <peng.li@intel.com>
2018-01-18 23:40:22 +08:00
David Koller
d1a3b530be Make DNN Crop layer match Caffe default offset behavior
and add parametric unit test for crop layer.
2018-01-17 10:52:36 -05:00
Alexander Alekhin
6728b40ad3 Merge pull request #10602 from pengli:dnn 2018-01-17 08:58:25 +00:00
Li Peng
e77af4ae33 MVN layer ocl implementation
Signed-off-by: Li Peng <peng.li@intel.com>
2018-01-17 17:11:32 +08:00
Li Peng
7bc017601f Power, Tanh and Channels ReLU layer ocl support
Signed-off-by: Li Peng <peng.li@intel.com>
2018-01-17 17:11:27 +08:00
Li Peng
4189214d04 batch_norm layer ocl update
use a batch_norm ocl kernel to do the work

Signed-off-by: Li Peng <peng.li@intel.com>
2018-01-16 19:01:58 +08:00
Alexander Alekhin
4d84999452 dnn: protobuf build warnings 2018-01-15 21:15:23 +00:00
oqtvs
6d4b778303 dnn: Updated protobuf files (3.5.1) 2018-01-15 15:51:38 +00:00
Alexander Alekhin
1255bd8d4b Merge pull request #10585 from dkurt:dnn_weightless_scale 2018-01-15 06:07:50 +00:00
Dmitry Kurtaev
6a395d88ff dnn::blobFromImage with OutputArray 2018-01-13 18:20:24 +03:00
Dmitry Kurtaev
1f4fdfd599 Untrainable version of Scale layer from Caffe 2018-01-13 10:35:29 +03:00
Alexander Alekhin
8533b45ce9 cmake: Java/Android SDK refactoring 2018-01-13 02:12:39 +00:00
Dmitry Kurtaev
64a9e92390 Merge pull request #10466 from dkurt:reduce_umat_try_2
* UMat blobs are wrapped

* Replace getUMat and getMat at OpenCLBackendWrapper
2018-01-10 21:50:54 +03:00
Alexander Alekhin
4d4f291553 Merge pull request #10513 from pengli:dnn 2018-01-09 19:24:28 +00:00
Li Peng
e3b42bf93b batch_norm and blank layer ocl implementation
Signed-off-by: Li Peng <peng.li@intel.com>
2018-01-09 21:58:46 +08:00
Alexander Alekhin
da0904df2d Merge pull request #10550 from dkurt:replace_psroi_pooling_tag 2018-01-08 19:19:00 +00:00
Dmitry Kurtaev
27b55ea761 Replace Caffe's psroi_pooling_param tag from 10001 to 10002 2018-01-08 13:29:20 +03:00
Alexander Alekhin
6674a024fc dnn: add OPENCV_DNN_DISABLE_MEMORY_OPTIMIZATIONS runtime option
replaces REUSE_DNN_MEMORY compile-time option
2018-01-07 18:38:14 +00:00
Arthur Williams
8a67858068 Fixed missing #include "../precomp.hpp" 2018-01-05 15:10:39 +00:00
Li Peng
67f9406cbe add normalize_bbox layer ocl implementation
Signed-off-by: Li Peng <peng.li@intel.com>
2018-01-05 19:38:36 +08:00
Li Peng
f99a135eda add eltwise layer ocl implementation
Signed-off-by: Li Peng <peng.li@intel.com>
2018-01-05 19:38:30 +08:00
Li Peng
34bfd7ef51 add ocl implementation of proposal layer
Signed-off-by: Li Peng <peng.li@intel.com>
2018-01-04 18:40:51 +08:00
Alexander Alekhin
7d67d60fb1 cmake(opt): AVX512_SKX 2017-12-29 07:18:11 +00:00
Alexander Alekhin
8e7af7f089 Merge pull request #10456 from dkurt:dnn_allocate_mem_for_optimized_concat 2017-12-28 16:04:51 +00:00
Alexander Alekhin
a65b5df5da Merge pull request #10416 from fenrus75:avx512 2017-12-28 15:56:56 +00:00
Alexander Alekhin
2b3c140f04
Merge pull request #10436 from alalek:test_threads 2017-12-28 18:29:30 +03:00
Alexander Alekhin
898ca38257 cmake: AVX512 -> AVX_512F 2017-12-28 15:20:27 +00:00
Dmitry Kurtaev
a9807d8f54 Allocate new memory for optimized concat to prevent collisions.
Add a flag to disable memory reusing in dnn module.
2017-12-28 16:45:53 +03:00
Li Peng
00f03c5739 Add ocl version FasterRCNN accuracy test
Signed-off-by: Li Peng <peng.li@intel.com>
2017-12-28 19:15:15 +08:00
Alexander Alekhin
99a9c10b57 Merge pull request #10424 from dkurt:fix_concat_optim 2017-12-28 01:26:14 +00:00
Alexander Alekhin
9b131b5f7e dnn(test): avoid calling of cv::setNumThreads() in tests directly
It is not necessary by default.
Also it breaks test system command-line parameters: --perf_threads / --test_threads
2017-12-27 15:16:41 +00:00
Alexander Alekhin
f3880c60a6 Merge pull request #10428 from pengli:dnn 2017-12-27 13:18:10 +00:00
Arjan van de Ven
2938860b3f Provide a few AVX512 optimized functions for the DNN module
This patch adds AVX512 optimized fastConv as well as the hookups
needed to get these called in the convolution_layer.

AVX512 fastConv is code-identical on a C level to the AVX2 one,
but is measurably faster due to AVX512 having more registers available
to cache results in.

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
2017-12-26 16:00:17 +00:00
Dmitry Kurtaev
70c605a03d Limit Concat layer optimization 2017-12-26 16:49:33 +03:00
Li Peng
84e2fa79a0 dnn(ocl4dnn): update pre-tuned kernel config
Signed-off-by: Li Peng <peng.li@intel.com>
2017-12-26 20:14:41 +08:00
Alexander Alekhin
adf43e7d2a build: fix MSVS2010 build error 2017-12-23 00:06:34 +00:00
Alexander Alekhin
019b7c5a66 Merge pull request #10402 from dkurt:dnn_tf_quantized 2017-12-22 15:58:56 +00:00
Alexander Alekhin
59e825ee02 Merge pull request #10385 from pengli:dnn 2017-12-22 15:48:40 +00:00
Dmitry Kurtaev
bcc669f3f7 TensorFlow weights dequantization 2017-12-22 17:25:10 +03:00
Alexander Alekhin
97af608030 Merge pull request #10397 from mshabunin:fix-incorrect-assert 2017-12-22 14:07:02 +00:00
Li Peng
181b448c4d add one more convolution kernel tuning candidate
Signed-off-by: Li Peng <peng.li@intel.com>
2017-12-22 21:37:00 +08:00
Vadim Pisarevsky
0742e12f0b Merge pull request #10265 from dkurt:nms_for_region_layer 2017-12-22 13:29:37 +00:00
Maksim Shabunin
aa46e31c6d Replaced incorrect CV_Assert calls with CV_Error 2017-12-22 15:20:13 +03:00
Vadim Pisarevsky
325cbd7c84 Merge pull request #10364 from dkurt:dnn_smooth_tf_data_layout 2017-12-22 09:56:45 +00:00
Li Peng
c5fc8e03ff cleanup unnecessary macros in convolution ocl kernel
Signed-off-by: Li Peng <peng.li@intel.com>
2017-12-21 20:32:36 +08:00
Li Peng
0aa5e43a14 refactor candidate generation of convolution auto-tuning
Signed-off-by: Li Peng <peng.li@intel.com>
2017-12-21 23:05:54 +08:00
Dmitry Kurtaev
c67e75b68f Refactor NMS procedure at RegionLayer 2017-12-21 12:21:45 +03:00
Vadim Pisarevsky
eecb64a973 Merge pull request #10331 from arrybn:python_dnn_net 2017-12-20 14:30:27 +00:00
Dmitry Kurtaev
7e48fa58eb Manage TensorFlow's NHWC data layout is smoother 2017-12-20 14:13:40 +03:00
Dmitry Kurtaev
0ed2cbc931 R-FCN models support 2017-12-20 10:43:22 +03:00
Alexander Alekhin
dcdd6af5a8 Merge pull request #10341 from pengli:dnn 2017-12-19 14:04:55 +00:00
Li Peng
3b84acfc48 add ocl accuracy test for tf mobilenet ssd
Signed-off-by: Li Peng <peng.li@intel.com>
2017-12-19 18:38:55 +08:00
Li Peng
436d7e4eaf add depthwise convolution kernel
Signed-off-by: Li Peng <peng.li@intel.com>
2017-12-19 17:59:13 +08:00
Li Peng
910d7dab1f prior box layer ocl implementation
Signed-off-by: Li Peng <peng.li@intel.com>
2017-12-19 17:44:10 +08:00
Dmitry Kurtaev
6aabd6cc7a Remove cv::dnn::Importer 2017-12-18 18:08:28 +03:00
Alexander Rybnikov
19c914db51 Changed wrapping mode for cv::dnn::Net::forward 2017-12-18 15:56:09 +03:00
Dmitry Kurtaev
2b43d4f477 Fix default pooling layer type 2017-12-17 16:46:40 +03:00
Alexander Alekhin
3fddce67c6 experimental version++ 2017-12-16 01:30:36 +03:00
Maksim Shabunin
1033f2b1bd Fixed 3 issues found by static analysis 2017-12-15 17:29:26 +03:00
Vadim Pisarevsky
62359f70ff Merge pull request #10306 from dkurt:faster_rcnn 2017-12-15 12:23:53 +00:00
Dmitry Kurtaev
08112f3821 Faster-RCNN models support 2017-12-15 12:16:21 +03:00
Alexander Alekhin
0da947e6b3 dnn: more debug information 2017-12-14 19:21:17 +03:00
Alexander Alekhin
c231472ad6 Merge pull request #10290 from tomoaki0705:fixVS2012Round 2017-12-13 15:30:21 +00:00
Tomoaki Teshima
ecb6bcf2e0 fix build error on Visual Studio 2012
* round doesn't exists in standard library of Visual Studio 2012
  * apply the correct computation of ROI
2017-12-13 17:40:07 +03: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
eff42f6387 dnn: more debug info 2017-12-12 12:04:10 +03:00
Vadim Pisarevsky
7e680bd9ff Merge pull request #10215 from dkurt:dnn_js 2017-12-11 12:47:52 +00:00
Vadim Pisarevsky
c24f10d647 Merge pull request #10268 from dkurt:fix_scale_layer 2017-12-08 18:46:50 +00:00
Dmitry Kurtaev
f503515082 JavaScript bindings for dnn module 2017-12-08 18:33:48 +03:00
Dmitry Kurtaev
e307065c8e Scale layer in case of 2D inputs 2017-12-08 17:34:59 +03:00
Alexander Alekhin
f2070c9f5d Merge pull request #10255 from dkurt:dnn_roi_pooling 2017-12-08 11:20:07 +00:00
Dmitry Kurtaev
17dcf0e82d ROIPooling layer 2017-12-07 19:04:38 +03:00
Dmitry Kurtaev
ef0650179b Fix conv/deconv/fc layers FLOPS computation 2017-12-07 11:42:04 +03:00
Alexander Alekhin
6074f92d48 Merge pull request #10228 from pengli:dnn_new 2017-12-06 15:50:12 +00:00
Alexander Alekhin
0b688cd23f Merge pull request #10240 from alalek:dnn_perf_ssd 2017-12-06 15:41:18 +00:00
Li Peng
59cbaca4d3 detection_output layer ocl implementation
Signed-off-by: Li Peng <peng.li@intel.com>
2017-12-06 22:35:59 +08:00
Li Peng
66feea6cac region layer ocl implementation
Signed-off-by: Li Peng <peng.li@intel.com>
2017-12-07 02:26:46 +08:00
Li Peng
7707c9bfba reorg layer ocl implementation
Signed-off-by: Li Peng <peng.li@intel.com>
2017-12-07 02:26:46 +08:00
Li Peng
85b1c4060c support axis in concat layer ocl path
Signed-off-by: Li Peng <peng.li@intel.com>
2017-12-07 02:26:46 +08:00
Li Peng
07bec6bdcd reshape layer ocl implementation
Signed-off-by: Li Peng <peng.li@intel.com>
2017-12-07 02:26:40 +08:00
Alexander Alekhin
d8a737b4b0 dnn: SSD performance test 2017-12-06 15:55:18 +03:00
Li Peng
7b7033ac60 permute layer ocl implementation
Signed-off-by: Li Peng <peng.li@intel.com>
2017-12-05 22:10:05 +08:00
Dmitry Kurtaev
bbbec300a6 nn.BatchNormalization and nn.Dropout layers from Torch 2017-12-04 12:57:21 +03:00
Alexander Alekhin
cc2ee923e4 Merge pull request #10164 from pengli:dnn 2017-11-29 12:05:10 +00:00
Wu Zhiwen
1f465a0ef9 dnn(ocl4dnn): fuseLayer() use umat_input/outputBlobs for OpenCL target
Also, fix bug when use OPENCL target but no OpenCL runtime

Signed-off-by: Wu Zhiwen <zhiwen.wu@intel.com>
2017-11-27 22:25:53 +08:00
Li Peng
a47fbd2610 Add ocl accuracy test for a few dnn nets
They are alexnet, mobilenet-ssd, resnet50, squeezeNet_v1_1,
yolo and fast_neural_style.

Signed-off-by: Li Peng <peng.li@intel.com>
2017-11-27 23:33:21 +08:00
Dmitry Kurtaev
99ed085752 Update PriorBox layer 2017-11-27 16:47:20 +03:00
Alexander Alekhin
13f374660f dnn(ocl4dnn): drop unused batch_size_ in pooling 2017-11-23 20:46:56 +00:00
Alexander Alekhin
e34b64c979 dnn(ocl4dnn): refactor pooling OpenCL calls 2017-11-23 20:46:44 +00:00
Alexander Alekhin
f071a48ec7 Merge pull request #10143 from pengli:ocl4dnn 2017-11-23 18:47:14 +00:00
Alexander Alekhin
107582c767 Merge pull request #9996 from dkurt:dnn_multiple_inputs 2017-11-23 18:22:37 +00:00
Li Peng
636d6368ee use OutputArrayOfArrays in net forward interface
It allows umat buffers used in net forward interface

Signed-off-by: Li Peng <peng.li@intel.com>
2017-11-24 02:19:10 +08:00
Wu, Zhiwen
04edc8fe3a cleanup ocl4dnn spatial convolution kernels
remove unused macros and half definition macros,
also remove unused ocl::Queue

Signed-off-by: Li Peng <peng.li@intel.com>
2017-11-24 02:19:10 +08:00
Alexander Alekhin
49a5280198 Merge pull request #10139 from alalek:dnn_rename_caffe_proto_package 2017-11-23 14:10:42 +00:00
Alexander Alekhin
f37f4cf3b4 Merge pull request #9994 from r2d3:dnn_memory_load 2017-11-22 18:15:00 +00:00