Commit Graph

27809 Commits

Author SHA1 Message Date
Alexander Alekhin
44bd849697 build: reduce usage of constexpr
some compilers has lack of proper support for that
2019-04-22 15:41:27 +03:00
Vitaly Tuzov
4a54aa3fbd Cleared up deprecated intrinsics for FP16 2019-04-22 10:35:37 +03:00
Suleyman TURKMEN
3f9343e238 Update imgproc.hpp 2019-04-22 00:48:11 +03:00
Ryan Wong
8af96248bf Merge pull request #13909 from kinchungwong:logging_20190220
OE-11 Logging revamp (#13909)

* Initial commit for log tag support.

Part of #11003, incomplete. Should pass build.

Moved LogLevel enum to logger.defines.hpp

LogTag struct used to convey both name and log level threshold as
one argument to the new logging macro. See logtag.hpp file, and
CV_LOG_WITH_TAG macro.

Global log level is now associated with a global log tag, when a
logging statement doesn't specify any log tag. See getLogLevel and
getGlobalLogTag functions.

A macro CV_LOGTAG_FALLBACK is allowed to be re-defined by other modules
or compilation units, internally, so that logging statements inside
that unit that specify NULL as tag will fall back to the re-defined tag.

Line-of-code information (file name, line number, function name),
together with tag name, are passed into the new log message sink.
See writeLogMessageEx function.

Fixed old incorrect CV_LOG_VERBOSE usage in ocl4dnn_conv_spatial.cpp.

* Implemented tag-based log filtering

Added LogTagManager. This is an initial version, using standard C++
approach as much as possible, to allow easier code review. Will
optimize later.

A workaround for all static dynamic initialization issues is
implemented. Refer to code comments.

* Added LogTagConfigParser.

Note: new code does not fully handle old log config parsing behavior.

* Fix log tag config vs registering ordering issue.

* Started testing LogTagConfigParser, incomplete.

The intention of this commit is to illustrate the capabilities of
the current design of LogTagConfigParser.

The test contained in this commit is not complete. Also, design changes
may require throwing away this commit and rewriting test code from
scratch.

Does not test whitespace segmentation (multiple tags on the config);
will do in next commit.

* Added CV_LOGTAG_EXPAND_NAME macro

This macro allows to be re-defined locally in other compilation units
to apply a prefix to whatever argument is passed as the "tag" argument
into CV_LOG_WITH_TAG. The default definition in logger.hpp does not
modify the argument. It is recommended to include the address-of
operator (ampersand) when re-defined locally.

* Added a few tests for LogTagManager, some fail.

See test_logtagmanager.cpp
Failed tests are: non-global ("something"), setting level by name-part
(first part or any part) has no effect at all.

* LogTagManagerTests substring non-confusion tests

* Fix major bugs in LogTagManager

The code change is intended to approximate the spec documented in
https://gist.github.com/kinchungwong/ec25bc1eba99142e0be4509b0f67d0c6

Refer to test suite in test_logtagmanager.cpp

Filter test result in "opencv_test_core" ...
with gtest_filter "LogTagManager*"

To see the test code that finds the bugs, refer to original commits
(before rebase; might be gone)

.. f3451208 (2019-03-03T19:45:17Z)
.... LogTagManagerTests substring non-confusion tests

.. 1b848f5f (2019-03-03T01:55:18Z)
.... Added a few tests for LogTagManager, some fail.

* Added LogTagManagerNamePartNonConfusionTest.

See test_logtagmanager.cpp in modules/core/test.

* Added LogTagAuto for auto registration in ctor

* Rewritten LogTagManager to resolve issues.

* Resolves code review issues around 2019-04-10

LogTagConfigParser::parseLogLevel - as part of resolving code review
issues, this function is rewritten to simplify control flow and to
improve conformance with legacy usage (for string values "OFF",
"DISABLED", and "WARNINGS").
2019-04-22 00:01:10 +03:00
Alexander Alekhin
f7856a0f35 imgcodecs(tiff): update tile size checks
backporting of commit: 25247b9f6e
2019-04-21 18:36:39 +00:00
Alexander Alekhin
f439fc4306 Merge pull request #14373 from alalek:oss_fuzz_14185_14321 2019-04-20 20:53:07 +00:00
Alexander Alekhin
25247b9f6e imgcodecs(tiff): update tile size checks
oss-fuzz: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=14185
oss-fuzz: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=14321
2019-04-20 20:13:47 +00:00
Alexander Alekhin
5c0a98cfb6 Merge pull request #14369 from ManthanKeim:patch-1 2019-04-20 19:30:54 +00:00
Manthan Keim
269c28e69e Update py_svm_opencv.markdown
Fixes a broken link for histograms of Oriented Gradients.
2019-04-20 18:52:13 +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
c024edb9a8 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-04-19 15:43:58 +03:00
Alexander Alekhin
3abae3c511 Merge pull request #14366 from alalek:win32_fix_pdb 2019-04-19 12:42:16 +00:00
Alexander Alekhin
2e4d771005 cmake: fix PDB handling 2019-04-19 14:53:35 +03:00
Alexander Alekhin
4f764b812e Merge pull request #14315 from dkurt:tf_squeeze_and_slim_softmax_v2 2019-04-18 16:01:24 +00:00
Alexander Alekhin
f7b6e30156 Merge pull request #14354 from alalek:workaround_apple_dyld_bug 2019-04-17 19:09:15 +00:00
Alexander Alekhin
9dccfe2a96 Merge pull request #13917 from sturkmen72:removed_c_api 2019-04-17 19:04:33 +00:00
Alexander Alekhin
2b84039a16 Merge pull request #14313 from alalek:cmake_pch_fix_defines_from_interface_targets 2019-04-17 19:02:28 +00:00
Alexander Alekhin
96610c7ee1 Merge pull request #14332 from LaurentBerger:loadknearest 2019-04-17 19:00:42 +00:00
Ruslan Garnov
1f517b8a02 Merge pull request #13943 from rgarnov:export_headers_for_backend_development
G-API external backend development (#13943)

* Moved HostCtor and ConstVal from gapi_priv.hpp to objref.hpp

* Added gmodel_priv.hpp, added export of symbols from gmodel.hpp

* Added export of binInArg and bindOutArg

* Renamed gapi_priv.*pp -> gorigin.*pp

* Added a fixme on collecting exports inside one class
2019-04-17 21:54:47 +03:00
Alexander Alekhin
52f16e0f55 tests: workaround for DYLD_LIBRARY_PATH on Apple MacOSX 2019-04-17 15:19:33 +03:00
Alexander Alekhin
dedd966002 Merge pull request #14345 from dkurt:fix_dnn_ie_mac 2019-04-16 19:18:49 +00:00
Alexander Alekhin
6d3ae8d4ca Merge pull request #14341 from alalek:cmake_fix_pkgconfig_libs 2019-04-16 19:04:07 +00:00
Alexander Alekhin
c667de9b68 dnn: force visibility(default) for IE headers 2019-04-16 18:18:31 +03:00
LaurentBerger
621e3eaed8 Add Ptr KNearest::load and python binding 2019-04-16 16:32:37 +02:00
Alexander Alekhin
3ef046b6c9 Merge pull request #14338 from alalek:fix_13849 2019-04-16 13:42:27 +00:00
Alexander Alekhin
74d5cdb6d8 Merge pull request #14343 from alalek:dnn_static_scans_namespace 2019-04-16 13:11:23 +00:00
Alexander Alekhin
7ad5d21900 Merge pull request #14339 from alalek:cmake_fix_std_cxx11 2019-04-16 13:10:24 +00:00
Alexander Alekhin
ebe13a9613 Merge pull request #14337 from alalek:ts_flush_stdout 2019-04-16 13:08:40 +00:00
Alexander Alekhin
7c1d9fea8b Merge pull request #14308 from m000:master 2019-04-16 11:58:21 +00:00
Alexander Alekhin
59e4f85898 Merge pull request #14347 from dkurt:dnn_samples 2019-04-16 11:50:46 +00:00
Dmitry Kurtaev
a304069687 Remove preprocessing parameters from README 2019-04-16 13:29:33 +03:00
Dmitry Kurtaev
62d079fa69 Fix Normalize layer for Mac 2019-04-16 12:39:04 +03:00
Alexander Alekhin
3902694075 static scans: preserve namespace name 2019-04-16 06:49:47 +00:00
vdgussem
00861b668a Changed the way Images are converted into rgba Mats so that JavaCamera2View also shows correct colors when the Image contains I420 or YV12 data 2019-04-16 01:38:59 +02:00
Alexander Alekhin
0d747daf47 cmake: use absolute library paths from 'pkgconfig'
- drop legacy check_module() macro
- drop 'ALIASOF_'
2019-04-15 22:11:49 +00:00
Alexander Alekhin
78384d8923 build: avoid highgui dependency 2019-04-15 18:59:51 +00:00
Alexander Alekhin
a56c12278e cmake: fix C++11 flags (ENABLE_CXX11 is not required) 2019-04-15 20:00:55 +03:00
Alexander Alekhin
c9a76ede94 Merge pull request #14328 from lainy:3.4 2019-04-15 11:03:37 +00:00
lain
246733382f Fix OpenCVConfig.cmake for Arch Linux. 2019-04-14 12:22:57 -07:00
Alexander Alekhin
d1387b25eb Merge pull request #14318 from dkurt:fix_ie_github 2019-04-14 17:33:11 +00:00
Allan Rodriguez
86561fef90 Added C++ version of digits.py. 2019-04-13 22:29:30 -07:00
Alexander Alekhin
64fd1c95a5 ts: flush stdout/stderr before test launch 2019-04-13 21:08:06 +00:00
Alexander Alekhin
4635356435 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-04-13 20:00:54 +00:00
Manolis Stamatogiannakis
ef16e4203e Fix compile error with external TBB and -DBUILD_SHARED_LIBS=OFF.
Adds IMPORTED for the TBB::tbb alias target as otherwise cmake produces
the following error:

CMake Error: install(EXPORT "OpenCVModules" ...) includes target "opencv_core" which requires target "tbb" that is not in the export set.

This problem occurs with the defaults used by homebrew on macOS, which
compiles both static and shared versions of TBB and OpenCV.
2019-04-13 21:53:04 +02:00
Dmitry Kurtaev
92cbec6fb1 Fix dnn with IE from GitHub 2019-04-13 19:02:03 +03:00
Dmitry Kurtaev
0cfd95c097 Fix TensorFlow's Squeeze and a new fusion for SoftMax from slim backend 2019-04-13 17:04:31 +03:00
Nick Yang
169dc9c311 Merge pull request #14297 from shxuy:patch-1
fix just a typo of the word 'word' (#14297)
2019-04-12 19:32:08 +03: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
michal-kowalczyk
a246d8d8e9 Merge pull request #13709 from michal-kowalczyk:flush-processed-samples-number
* Add flushing to printing number of processed positive/negative samples so that user is informed of updates quickly.

* use flush C api instead of C++ api
2019-04-12 18:51:35 +03:00
Alexander Alekhin
64629cb94e Merge pull request #12783 from alalek:test_tag 2019-04-12 15:35:41 +00:00