platform/upstream/opencv.git
2 years agoMerge pull request #20733 from rogday:argmaxnd
rogday [Sun, 28 Nov 2021 16:17:46 +0000 (19:17 +0300)]
Merge pull request #20733 from rogday:argmaxnd

Implement ArgMax and ArgMin

* add reduceArgMax and reduceArgMin

* fix review comments

* address review concerns

2 years agoMerge pull request #20957 from sturkmen72:update-documentation
Suleyman TURKMEN [Sun, 28 Nov 2021 12:56:28 +0000 (15:56 +0300)]
Merge pull request #20957 from sturkmen72:update-documentation

Update documentation

* Update DNN-based Face Detection And Recognition tutorial

* samples(dnn/face): update face_detect.cpp

* final changes

Co-authored-by: Alexander Alekhin <alexander.a.alekhin@gmail.com>
2 years agoMerge pull request #20933 from shubham-shahh:master
Supernovae [Sun, 28 Nov 2021 12:54:29 +0000 (18:24 +0530)]
Merge pull request #20933 from shubham-shahh:master

Improved overall readability of the code

* grid_nms.cu: minor fix-ups

* Update grid_stride_range.hpp

* Update tf_importer.cpp

2 years agoMerge pull request #21126 from alalek:dnn_test_ie_update_4.x
Alexander Alekhin [Sat, 27 Nov 2021 19:27:59 +0000 (19:27 +0000)]
Merge pull request #21126 from alalek:dnn_test_ie_update_4.x

2 years agodnn(test): update InferenceEngine tests (4.x)
Alexander Alekhin [Thu, 25 Nov 2021 19:56:27 +0000 (19:56 +0000)]
dnn(test): update InferenceEngine tests (4.x)

2 years agoMerge remote-tracking branch 'upstream/3.4' into merge-3.4
Alexander Alekhin [Sat, 27 Nov 2021 13:17:44 +0000 (13:17 +0000)]
Merge remote-tracking branch 'upstream/3.4' into merge-3.4

2 years agoMerge pull request #21134 from alalek:gapi_fix_build_ie_msvs2015
Alexander Alekhin [Sat, 27 Nov 2021 12:59:45 +0000 (12:59 +0000)]
Merge pull request #21134 from alalek:gapi_fix_build_ie_msvs2015

2 years agoMerge pull request #21133 from alalek:dnn_test_ie_update_3.4
Alexander Alekhin [Fri, 26 Nov 2021 20:35:58 +0000 (20:35 +0000)]
Merge pull request #21133 from alalek:dnn_test_ie_update_3.4

2 years agogapi: fix build with MSVS2015 (with IE)
Alexander Alekhin [Fri, 26 Nov 2021 19:34:52 +0000 (19:34 +0000)]
gapi: fix build with MSVS2015 (with IE)

2 years agodnn(test): update InferenceEngine tests
Alexander Alekhin [Thu, 25 Nov 2021 19:56:27 +0000 (19:56 +0000)]
dnn(test): update InferenceEngine tests

2 years agoMerge pull request #21131 from cclauss:codespell
Alexander Alekhin [Fri, 26 Nov 2021 18:32:54 +0000 (18:32 +0000)]
Merge pull request #21131 from cclauss:codespell

2 years agoMerge pull request #21130 from cclauss:print-function
Alexander Alekhin [Fri, 26 Nov 2021 18:31:31 +0000 (18:31 +0000)]
Merge pull request #21130 from cclauss:print-function

2 years agoMerge pull request #21121 from cclauss:patch-2
Christian Clauss [Fri, 26 Nov 2021 18:18:48 +0000 (19:18 +0100)]
Merge pull request #21121 from cclauss:patch-2

* GitHub Action to lint Python code

* Move from automatic events to manual ones

* flake8: Do not look for undefined names

2 years agoMerge pull request #21103 from OrestChura:oc/fix_1D_Mat_RMat_View_issue
Orest Chura [Fri, 26 Nov 2021 16:42:12 +0000 (19:42 +0300)]
Merge pull request #21103 from OrestChura:oc/fix_1D_Mat_RMat_View_issue

[G-API] Fix issue of getting 1D Mat out of RMat::View

* Fix issue of getting 1D Mat out of RMat::View
 - added test
 - fixed for standalone too (removed Assert(dims.empty()))

* Fixed asVeiw() function for standalone

* Put more detailed comment

2 years agoMerge pull request #21083 from OrestChura:oc/fix_coverity_vino_issues
Orest Chura [Fri, 26 Nov 2021 16:40:36 +0000 (19:40 +0300)]
Merge pull request #21083 from OrestChura:oc/fix_coverity_vino_issues

[G-API] Fixed Coverity issues

* Fixed Coverity issues
 - VectorRef&OpaqueRef m_kind = CV_UNKNOWN
 - added same-type overload for saturate()
 - sanitized resize value in ByteMemoryInStream::operator>> (std::string& str)
 - handled throws from ~GStreamingExecutor()

* Catching exception by const ref

* Addressing Sergey's comments

* Applied enable_if semanitcs to saturate(x, round) too

* Removed uncaught_exception, made destructor noexcept back

* Split Fluid ConvertTo to multiple functions to avoid ifs; added CV_ALWAYS_INLINE

* Added FIXME to address throwings from stop()

* Fix standalone

* Addressing comments

* Guarded SIMD optimizations properly

* Removed excess parameter from simd_impl functions

2 years agoMerge pull request #21106 from mpashchenkov:mp/ocv-gapi-clean-samples
Maxim Pashchenkov [Fri, 26 Nov 2021 11:31:15 +0000 (14:31 +0300)]
Merge pull request #21106 from mpashchenkov:mp/ocv-gapi-clean-samples

G-API: Cleaning samples

* parseSSD + removed render details from gcpukernel

* self-rev

* Applying comment

* Added operators

* warnings

2 years agoFix typos discovered by codespell
Christian Clauss [Fri, 26 Nov 2021 11:29:56 +0000 (12:29 +0100)]
Fix typos discovered by codespell

2 years agoMerge pull request #21128 from cclauss:patch-3
Alexander Alekhin [Fri, 26 Nov 2021 11:11:58 +0000 (11:11 +0000)]
Merge pull request #21128 from cclauss:patch-3

2 years agoUse print() function in both Python 2 and Python 3
Christian Clauss [Fri, 26 Nov 2021 10:57:54 +0000 (11:57 +0100)]
Use print() function in both Python 2 and Python 3

2 years agoCMakeLists.txt: Fix typo discovered by codespell
Christian Clauss [Fri, 26 Nov 2021 10:07:14 +0000 (11:07 +0100)]
CMakeLists.txt: Fix typo discovered by codespell

https://pypi.org/project/codespell/

2 years agoMerge pull request #21123 from cclauss:patch-3
Alexander Alekhin [Thu, 25 Nov 2021 18:06:33 +0000 (18:06 +0000)]
Merge pull request #21123 from cclauss:patch-3

2 years agoUse ==/!= to compare constant literals (str, bytes, int, float, tuple)
Christian Clauss [Thu, 25 Nov 2021 11:44:21 +0000 (12:44 +0100)]
Use ==/!= to compare constant literals (str, bytes, int, float, tuple)

Avoid `SyntaxWarning` on Python >= 3.8
```
>>> "convolutional" == "convolutional"
True
>>> "convolutional" is "convolutional"
<stdin>:1: SyntaxWarning: "is" with a literal. Did you mean "=="?
True
```
Related to #21121

2 years agoMerge pull request #21108 from ShuangLiu1992:patch-1
Alexander Alekhin [Wed, 24 Nov 2021 20:10:37 +0000 (20:10 +0000)]
Merge pull request #21108 from ShuangLiu1992:patch-1

2 years agoMerge pull request #21110 from alalek:update_libjpeg-turbo
Alexander Alekhin [Wed, 24 Nov 2021 20:08:27 +0000 (20:08 +0000)]
Merge pull request #21110 from alalek:update_libjpeg-turbo

2 years ago3rdparty: libjpeg-turbo 2.1.0 => 2.1.2
Alexander Alekhin [Wed, 24 Nov 2021 03:43:55 +0000 (03:43 +0000)]
3rdparty: libjpeg-turbo 2.1.0 => 2.1.2

https://github.com/libjpeg-turbo/libjpeg-turbo/releases/tag/2.1.2

2 years agoMerge pull request #20978 from cudawarped:videocapture_read_raw_enchancement
cudawarped [Tue, 23 Nov 2021 21:18:55 +0000 (21:18 +0000)]
Merge pull request #20978 from cudawarped:videocapture_read_raw_enchancement

Add capacity to Videocapture to return the extraData from FFmpeg when required

* Update rawMode to append any extra data recieved during the initial negotiation of an RTSP stream or during the parsing of an MPEG4 file header.
For h264[5] RTSP streams this ensures the parameter sets if available are always returned on the first call to grab()/read() and has two purposes:
1) To ensure the parameter sets are available even if they are not transmitted in band.  This is common for axis ip camera's.
2) To allow callers of VideoCapture::grab()[read()] to write to split the raw stream over multiple files by appending the parameter sets to the begining of any new files.
For (1) there is no alternative, for (2) if the parameter sets were provided in band it would be possible to parse the raw bit stream and search for the parameter sets however that would be a lot of work when that information is already provided by FFMPEG.
For MPEG4 files this information is only suplied in the header and is required for decoding.

Two properties are also required to enable the raw encoded bitstream to be written to multiple files, these are;
1) an indicator as to whether the last frame was a key frame or not - each new file needs to start at a key frame to avoid storing unusable frame diffs,
2) the length in bytes of the paramater sets contained in the last frame - required to split the paramater sets from the frame without having to parse the stream.  Any call to VideoCapture::get(CAP_PROP_LF_PARAM_SET_LEN) returning a number greater than zero indicates the presense of a parameter set at the begining of the raw bitstream.

* Adjust test data to account for extraData

* Address warning.

* Change added property names and remove paramater set start code check.

* Output extra data on calls to retrieve instead of appending to the first packet.

* Reverted old test case and added new one to evaluate new functionality.

* Add missing definition.

* Remove flag from legacy api.
Add property to determine if returning extra data is supported.
Always allow extra data to be returned on calls to cap.retrieve()
Update test case.

* Update condition which indicates CAP_PROP_CODEC_EXTRADATA_INDEX is not supported in test case.

* Include compatibility for windows dll if not updated.
Enforce existing return status convention.

* Fix return error and missing test constraints.

2 years agoMerge pull request #20406 from MarkGHX:gsoc_2021_webnn
Hanxi Guo [Tue, 23 Nov 2021 21:15:31 +0000 (05:15 +0800)]
Merge pull request #20406 from MarkGHX:gsoc_2021_webnn

[GSoC] OpenCV.js: Accelerate OpenCV.js DNN via WebNN

* Add WebNN backend for OpenCV DNN Module

Update dnn.cpp

Update dnn.cpp

Update dnn.cpp

Update dnn.cpp

Add WebNN head files into OpenCV 3rd partiy files

Create webnn.hpp

update cmake

Complete README and add OpenCVDetectWebNN.cmake file

add webnn.cpp

Modify webnn.cpp

Can successfully compile the codes for creating a MLContext

Update webnn.cpp

Update README.md

Update README.md

Update README.md

Update README.md

Update cmake files and

update README.md

Update OpenCVDetectWebNN.cmake and README.md

Update OpenCVDetectWebNN.cmake

Fix OpenCVDetectWebNN.cmake and update README.md

Add source webnn_cpp.cpp and libary libwebnn_proc.so

Update dnn.cpp

Update dnn.cpp

Update dnn.cpp

Update dnn.cpp

update dnn.cpp

update op_webnn

update op_webnn

Update op_webnn.hpp

update op_webnn.cpp & hpp

Update op_webnn.hpp

Update op_webnn

update the skeleton

Update op_webnn.cpp

Update op_webnn

Update op_webnn.cpp

Update op_webnn.cpp

Update op_webnn.hpp

update op_webnn

update op_webnn

Solved the problems of released variables.

Fixed the bugs in op_webnn.cpp

Implement op_webnn

Implement Relu by WebNN API

Update dnn.cpp for better test

Update elementwise_layers.cpp

Implement ReLU6

Update elementwise_layers.cpp

Implement SoftMax using WebNN API

Implement Reshape by WebNN API

Implement PermuteLayer by WebNN API

Implement PoolingLayer using WebNN API

Update pooling_layer.cpp

Update pooling_layer.cpp

Update pooling_layer.cpp

Update pooling_layer.cpp

Update pooling_layer.cpp

Update pooling_layer.cpp

Implement poolingLayer by WebNN API and add more detailed logs

Update dnn.cpp

Update dnn.cpp

Remove redundant codes and add more logs for poolingLayer

Add more logs in the pooling layer implementation

Fix the indent issue and resolve the compiling issue

Fix the build problems

Fix the build issue

FIx the build issue

Update dnn.cpp

Update dnn.cpp

* Fix the build issue

* Implement BatchNorm Layer by WebNN API

* Update convolution_layer.cpp

This is a temporary file for Conv2d layer implementation

* Integrate some general functions into op_webnn.cpp&hpp

* Update const_layer.cpp

* Update convolution_layer.cpp

Still have some bugs that should be fixed.

* Update conv2d layer and fc layer

still have some problems to be fixed.

* update constLayer, conv layer, fc layer

There are still some bugs to be fixed.

* Fix the build issue

* Update concat_layer.cpp

Still have some bugs to be fixed.

* Update conv2d layer, fully connected layer and const layer

* Update convolution_layer.cpp

* Add OpenCV.js DNN module WebNN Backend (both using webnn-polyfill and electron)

* Delete bib19450.aux

* Add WebNN backend for OpenCV DNN Module

Update dnn.cpp

Update dnn.cpp

Update dnn.cpp

Update dnn.cpp

Add WebNN head files into OpenCV 3rd partiy files

Create webnn.hpp

update cmake

Complete README and add OpenCVDetectWebNN.cmake file

add webnn.cpp

Modify webnn.cpp

Can successfully compile the codes for creating a MLContext

Update webnn.cpp

Update README.md

Update README.md

Update README.md

Update README.md

Update cmake files and

update README.md

Update OpenCVDetectWebNN.cmake and README.md

Update OpenCVDetectWebNN.cmake

Fix OpenCVDetectWebNN.cmake and update README.md

Add source webnn_cpp.cpp and libary libwebnn_proc.so

Update dnn.cpp

Update dnn.cpp

Update dnn.cpp

Update dnn.cpp

update dnn.cpp

update op_webnn

update op_webnn

Update op_webnn.hpp

update op_webnn.cpp & hpp

Update op_webnn.hpp

Update op_webnn

update the skeleton

Update op_webnn.cpp

Update op_webnn

Update op_webnn.cpp

Update op_webnn.cpp

Update op_webnn.hpp

update op_webnn

update op_webnn

Solved the problems of released variables.

Fixed the bugs in op_webnn.cpp

Implement op_webnn

Implement Relu by WebNN API

Update dnn.cpp for better test

Update elementwise_layers.cpp

Implement ReLU6

Update elementwise_layers.cpp

Implement SoftMax using WebNN API

Implement Reshape by WebNN API

Implement PermuteLayer by WebNN API

Implement PoolingLayer using WebNN API

Update pooling_layer.cpp

Update pooling_layer.cpp

Update pooling_layer.cpp

Update pooling_layer.cpp

Update pooling_layer.cpp

Update pooling_layer.cpp

Implement poolingLayer by WebNN API and add more detailed logs

Update dnn.cpp

Update dnn.cpp

Remove redundant codes and add more logs for poolingLayer

Add more logs in the pooling layer implementation

Fix the indent issue and resolve the compiling issue

Fix the build problems

Fix the build issue

FIx the build issue

Update dnn.cpp

Update dnn.cpp

* Fix the build issue

* Implement BatchNorm Layer by WebNN API

* Update convolution_layer.cpp

This is a temporary file for Conv2d layer implementation

* Integrate some general functions into op_webnn.cpp&hpp

* Update const_layer.cpp

* Update convolution_layer.cpp

Still have some bugs that should be fixed.

* Update conv2d layer and fc layer

still have some problems to be fixed.

* update constLayer, conv layer, fc layer

There are still some bugs to be fixed.

* Update conv2d layer, fully connected layer and const layer

* Update convolution_layer.cpp

* Add OpenCV.js DNN module WebNN Backend (both using webnn-polyfill and electron)

* Update dnn.cpp

* Fix Error in dnn.cpp

* Resolve duplication in conditions in convolution_layer.cpp

* Fixed the issues in the comments

* Fix building issue

* Update tutorial

* Fixed comments

* Address the comments

* Update CMakeLists.txt

* Offer more accurate perf test on native

* Add better perf tests for both native and web

* Modify per tests for better results

* Use more latest version of Electron

* Support latest WebNN Clamp op

* Add definition of HAVE_WEBNN macro

* Support group convolution

* Implement Scale_layer using WebNN

* Add Softmax option for native classification example

* Fix comments

* Fix comments

2 years agoMerge pull request #21032 from alalek:js_tracker_mil
Alexander Alekhin [Tue, 23 Nov 2021 19:57:38 +0000 (19:57 +0000)]
Merge pull request #21032 from alalek:js_tracker_mil

2 years agoUpdate cap_android_camera.cpp
ShuangLiu1992 [Tue, 23 Nov 2021 15:03:18 +0000 (15:03 +0000)]
Update cap_android_camera.cpp

since u and v Pixel ptr have been swapped the compare condition should be updated too

2 years agoMerge pull request #21092 from alalek:core_logger_show_timestamp
Alexander Alekhin [Mon, 22 Nov 2021 22:44:31 +0000 (22:44 +0000)]
Merge pull request #21092 from alalek:core_logger_show_timestamp

2 years agoMerge pull request #21094 from Ryyyc:patch-2
Ruan [Mon, 22 Nov 2021 18:52:08 +0000 (02:52 +0800)]
Merge pull request #21094 from Ryyyc:patch-2

* Update how_to_use_OpenCV_parallel_for_new.markdown

Fix an incorrect jump link in the tutorial how_to_use_OpenCV_parallel_for_new.

* Update how_to_use_OpenCV_parallel_for_new.markdown

Update the URL of the tutorial code.

2 years agoMerge pull request #21022 from sivanov-work:async_mfp_demux
Sergey Ivanov [Mon, 22 Nov 2021 11:53:38 +0000 (14:53 +0300)]
Merge pull request #21022 from sivanov-work:async_mfp_demux

G-API: oneVPL Implement asynchronous MFP demux data provider

* Add dummy dmux

* Initial commit for draft versionn

* Demux for low res file works

* Add media source resolver to work over incorrect MIME

* Add MFP Demux logger

* stash changes

* Extend IDataProvider with CodecId, Add troubleshooting info

* Add IDapaProvider dispatcher

* Add ComPtrGuard wrappers

* Add new unit test scope for MFP demux & Add minor changes

* Enhance UTs

* Remove ATL header

* Remove ATL another one

* Fix build

* Add static for some methods

* Initial commit

* Add async demuxing

* Apply tdd idea

* Intro IDataProvider changes: +fetch_bitstream, -fetch_data

* Fix UTs

* Remove IDataProvider::CodecId & Fix EOF hang

* Remove sync demux

* Remove mfp async dependencies

* Remove VPL dependencies from IDataProvider declaration

* Apply comments

* Fix compilation

* Suppress unused warning

* Apply some comments

* Apply some comments

* Apply comments

2 years agocore(logger): dump timestamp information with message
Alexander Alekhin [Sat, 20 Nov 2021 15:34:23 +0000 (15:34 +0000)]
core(logger): dump timestamp information with message

2 years agoMerge remote-tracking branch 'upstream/3.4' into merge-3.4
Alexander Alekhin [Sat, 20 Nov 2021 04:42:58 +0000 (04:42 +0000)]
Merge remote-tracking branch 'upstream/3.4' into merge-3.4

2 years agoMerge pull request #21063 from vrabaud:3.4_h_clamping
Alexander Alekhin [Fri, 19 Nov 2021 20:28:25 +0000 (20:28 +0000)]
Merge pull request #21063 from vrabaud:3.4_h_clamping

2 years agoMerge pull request #20987 from zcx-xxx:master
zcx [Fri, 19 Nov 2021 15:57:07 +0000 (23:57 +0800)]
Merge pull request #20987 from zcx-xxx:master

* Update drawing.cpp

optimize FillEdgeCollection function

* Update drawing.cpp

optimize FillEdgeCollection,remove sort_flag

2 years agoFix H clamping for very small negative values.
Vincent Rabaud [Mon, 15 Nov 2021 12:09:02 +0000 (13:09 +0100)]
Fix H clamping for very small negative values.

In case of very small negative h (e.g. -1e-40), with the current implementation,
you will go through the first condition and end up with h = 6.f, and will miss
the second condition.

2 years agoMerge pull request #21067 from NickJackolson:nickjackolson/imread-warning
Alexander Alekhin [Thu, 18 Nov 2021 22:48:40 +0000 (22:48 +0000)]
Merge pull request #21067 from NickJackolson:nickjackolson/imread-warning

2 years agoadd !empty assertion in seamlessClone()
nickjackolson [Wed, 17 Nov 2021 20:56:55 +0000 (21:56 +0100)]
add !empty assertion in seamlessClone()

issue #20617 addresses lack of warnings on
seamlessClone() function when src is None.
This commit adds source check using CV_Assert
therefore debugging would be easier.

Signed-off-by: nickjackolson <metedurlu@gmail.com>
2 years agoAdd warning message to imread()
nickjackolson [Sun, 14 Nov 2021 19:43:50 +0000 (20:43 +0100)]
Add warning message to imread()

Add a warning message using CV_LOG__WARNING().
This way api behaviour is preserved. Outputs are
the same but user gets an extra warning in case
fopen() fails to access image file for some reason.
This would help new users and also debugging
complex apps which use imread()

Signed-off-by: nickjackolson <metedurlu@gmail.com>
2 years agoMerge pull request #21077 from alalek:js_test_pin_cli_table
Alexander Alekhin [Thu, 18 Nov 2021 18:34:44 +0000 (18:34 +0000)]
Merge pull request #21077 from alalek:js_test_pin_cli_table

2 years agoMerge pull request #21081 from alalek:issue_17261
Alexander Alekhin [Thu, 18 Nov 2021 18:22:59 +0000 (18:22 +0000)]
Merge pull request #21081 from alalek:issue_17261

2 years agocore: avoid using of 'check' identifier
Alexander Alekhin [Thu, 18 Nov 2021 16:02:59 +0000 (16:02 +0000)]
core: avoid using of 'check' identifier

2 years agojs: add TrackerMIL
Alexander Alekhin [Wed, 10 Nov 2021 02:25:17 +0000 (02:25 +0000)]
js: add TrackerMIL

2 years agojs(test): pin cli-table dependency
Alexander Alekhin [Thu, 18 Nov 2021 05:40:16 +0000 (05:40 +0000)]
js(test): pin cli-table dependency

2 years agoMerge pull request #21024 from anna-khakimova:ak/simd_mul
Alexander Alekhin [Wed, 17 Nov 2021 18:41:52 +0000 (18:41 +0000)]
Merge pull request #21024 from anna-khakimova:ak/simd_mul

2 years agoFluid: SIMD multiply kernel
Anna Khakimova [Tue, 9 Nov 2021 09:44:11 +0000 (12:44 +0300)]
Fluid: SIMD multiply kernel

2 years agoMerge pull request #21064 from alalek:doc_videoio_api_preference_3.4
Alexander Alekhin [Tue, 16 Nov 2021 20:05:59 +0000 (20:05 +0000)]
Merge pull request #21064 from alalek:doc_videoio_api_preference_3.4

2 years agoMerge pull request #20995 from mpashchenkov:mp/ocv-gapi-tdp-skip
Maxim Pashchenkov [Tue, 16 Nov 2021 18:27:42 +0000 (21:27 +0300)]
Merge pull request #20995 from mpashchenkov:mp/ocv-gapi-tdp-skip

G-API: Removing G-API test code that is a reflection of ts module

* gapi: don't hijack testing infrastructure

* Removed initDataPath functionality (ts module exists)

* Removed false for ocv_extra data from findDataFile

Co-authored-by: Alexander Alekhin <alexander.a.alekhin@gmail.com>
2 years agodoc(videoio): fix apiPreference note, replace DSHOW(deprecated)->MSMF
Alexander Alekhin [Tue, 16 Nov 2021 17:07:27 +0000 (17:07 +0000)]
doc(videoio): fix apiPreference note, replace DSHOW(deprecated)->MSMF

2 years agoMerge pull request #20925 from TolyaTalamanov:at/enable-2d-inputs-giebackend
Anatoliy Talamanov [Tue, 16 Nov 2021 12:52:42 +0000 (15:52 +0300)]
Merge pull request #20925 from TolyaTalamanov:at/enable-2d-inputs-giebackend

[G-API] Enable 2D inputs for GIEBackend

* Enable 2D inputs

* Fix typo

2 years agoMerge pull request #20914 from anna-khakimova:ak/simd_div
Anna Khakimova [Mon, 15 Nov 2021 17:16:25 +0000 (20:16 +0300)]
Merge pull request #20914 from anna-khakimova:ak/simd_div

GAPI Fluid: SIMD Div kernel.

* HAL implementation for Div kernel

* Removed dbg lines

* Applied comments.

* Reworked

* Final version

2 years agoMerge pull request #17889 from ZhengQiushi:my_3.4
Qiushi Zheng [Mon, 15 Nov 2021 17:15:39 +0000 (01:15 +0800)]
Merge pull request #17889 from ZhengQiushi:my_3.4

QR code (encoding process)

* add qrcode encoder

* qr encoder fixes

* qr encoder: fix api and realization

* fixed qr encoder, added eci and kanji modes

* trigger CI

* qr encoder constructor fixes

Co-authored-by: APrigarina <ann73617@gmail.com>
2 years agoMerge pull request #20918 from TolyaTalamanov:at/fix-empty-map-importNetwork
Anatoliy Talamanov [Mon, 15 Nov 2021 17:11:53 +0000 (20:11 +0300)]
Merge pull request #20918 from TolyaTalamanov:at/fix-empty-map-importNetwork

[G-API] Fix bugs in GIEBackend

* Remove inputs/outputs map from IEUnit

* Add test

* Add NV12 test

* Reorganize setBlob function

* Check that backend don't overwrite blob precision

* Stop setting config to global IE::Core

* Replace mutable to const_cast

* Update modules/gapi/test/infer/gapi_infer_ie_test.cpp

* Update modules/gapi/test/infer/gapi_infer_ie_test.cpp

* Make blob parameter as const ref

* Cosmetic fixes

* Fix failed test on inferROI

* Removed double ref for ii

* Disable tests

* Skip tests if device not available

* Use Sync prim under shared_ptr to avoid issue on MAC

* Apply WA for IE::Core

* Apply WA for MAC build

* Try to apply another WA

* Not release IE::Core for apple

* Put comment

* Support PreprocInfo for

* InferROI
* InferList
* InferList2

* Remove empty line

* Fix alignment

Co-authored-by: Maxim Pashchenkov <maxim.pashchenkov@intel.com>
2 years agoMerge remote-tracking branch 'upstream/3.4' into merge-3.4
Alexander Alekhin [Sat, 13 Nov 2021 15:11:30 +0000 (15:11 +0000)]
Merge remote-tracking branch 'upstream/3.4' into merge-3.4

2 years agoMerge pull request #21039 from SegaraRai:use-pragma-message
Alexander Alekhin [Fri, 12 Nov 2021 14:31:03 +0000 (14:31 +0000)]
Merge pull request #21039 from SegaraRai:use-pragma-message

2 years agoMerge pull request #20857 from alexgiving:atrutnev/move_API_samples
Trutnev Aleksei [Fri, 12 Nov 2021 14:17:21 +0000 (17:17 +0300)]
Merge pull request #20857 from alexgiving:atrutnev/move_API_samples

Move API sample code to tutorial_code location

2 years agoMerge pull request #21048 from ffontaine:4.x
Alexander Alekhin [Fri, 12 Nov 2021 12:28:28 +0000 (12:28 +0000)]
Merge pull request #21048 from ffontaine:4.x

2 years agomodules/videoio/src/cap_ffmpeg_impl.hpp: fix build with gcc 4.8
Fabrice Fontaine [Fri, 12 Nov 2021 08:50:17 +0000 (09:50 +0100)]
modules/videoio/src/cap_ffmpeg_impl.hpp: fix build with gcc 4.8

Fix the following build failure with gcc 4.8:

In file included from /home/buildroot/autobuild/instance-3/output-1/build/opencv4-4.5.4/modules/videoio/src/cap_ffmpeg_impl.hpp:100:0,
                 from /home/buildroot/autobuild/instance-3/output-1/build/opencv4-4.5.4/modules/videoio/src/cap_ffmpeg.cpp:50:
/home/buildroot/autobuild/instance-3/output-1/build/opencv4-4.5.4/modules/videoio/src/cap_ffmpeg_hw.hpp: In constructor 'HWAccelIterator::HWAccelIterator(cv::VideoAccelerationType, bool, AVDictionary*)':
/home/buildroot/autobuild/instance-3/output-1/build/opencv4-4.5.4/modules/videoio/src/cap_ffmpeg_hw.hpp:939:23: error: use of deleted function 'std::basic_istringstream<char>& std::basic_istringstream<char>::operator=(const std::basic_istringstream<char>&)'
             s_stream_ = std::istringstream(accel_list);
                       ^
In file included from /home/buildroot/autobuild/instance-3/output-1/host/opt/ext-toolchain/arm-none-linux-gnueabi/include/c++/4.8.3/complex:45:0,
                 from /home/buildroot/autobuild/instance-3/output-1/build/opencv4-4.5.4/modules/core/include/opencv2/core/cvstd.inl.hpp:47,
                 from /home/buildroot/autobuild/instance-3/output-1/build/opencv4-4.5.4/modules/core/include/opencv2/core.hpp:3306,
                 from /home/buildroot/autobuild/instance-3/output-1/build/opencv4-4.5.4/modules/videoio/include/opencv2/videoio.hpp:46,
                 from /home/buildroot/autobuild/instance-3/output-1/build/opencv4-4.5.4/modules/videoio/src/precomp.hpp:57,
                 from /home/buildroot/autobuild/instance-3/output-1/build/opencv4-4.5.4/modules/videoio/src/cap_ffmpeg.cpp:42:
/home/buildroot/autobuild/instance-3/output-1/host/opt/ext-toolchain/arm-none-linux-gnueabi/include/c++/4.8.3/sstream:272:11: note: 'std::basic_istringstream<char>& std::basic_istringstream<char>::operator=(const std::basic_istringstream<char>&)' is implicitly deleted because the default definition would be ill-formed:
     class basic_istringstream : public basic_istream<_CharT, _Traits>
           ^
/home/buildroot/autobuild/instance-3/output-1/host/opt/ext-toolchain/arm-none-linux-gnueabi/include/c++/4.8.3/sstream:272:11: error: use of deleted function 'std::basic_istream<char>& std::basic_istream<char>::operator=(const std::basic_istream<char>&)'

Fixes:
 - http://autobuild.buildroot.org/results/60f8846b435dafda0ced412d59ffe15bdff0810d

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
2 years agoMerge pull request #21025 from alalek:issue_21004
Alexander Alekhin [Thu, 11 Nov 2021 22:54:07 +0000 (01:54 +0300)]
Merge pull request #21025 from alalek:issue_21004

* dnn(ocl4dnn): fix LRN layer accuracy problems

- FP16 intermediate computation is not accurate and may provide NaN values

* dnn(test): update tolerance for FP16

2 years agoMerge pull request #21028 from AleksandrPanov:fix_markers_parse_in_gen_pattern.py
Alexander Alekhin [Thu, 11 Nov 2021 22:11:33 +0000 (22:11 +0000)]
Merge pull request #21028 from AleksandrPanov:fix_markers_parse_in_gen_pattern.py

2 years agoMerge pull request #20977 from JulieBar:remap_overflow
Alexander Alekhin [Thu, 11 Nov 2021 22:06:15 +0000 (22:06 +0000)]
Merge pull request #20977 from JulieBar:remap_overflow

2 years agoMerge pull request #21040 from alexgiving:atrutnev/rename_RMatAdapter
Trutnev Aleksei [Thu, 11 Nov 2021 11:52:38 +0000 (14:52 +0300)]
Merge pull request #21040 from alexgiving:atrutnev/rename_RMatAdapter

GAPI: Rename MatAdapter to RMatOnMat

2 years agoMerge pull request #21030 from tv3141:fix_seg_fault_houghlinespointset
tv3141 [Wed, 10 Nov 2021 19:15:38 +0000 (20:15 +0100)]
Merge pull request #21030 from tv3141:fix_seg_fault_houghlinespointset

Fix seg fault houghlinespointset

* Clarify parameter doc for HoughLinesPointSet

* Fix seg fault.

* Add regression test.

* Fix latex typo

2 years agouse `#pragma message` instead of `#warning` for non-GCC compilers
SegaraRai [Wed, 10 Nov 2021 18:14:19 +0000 (03:14 +0900)]
use `#pragma message` instead of `#warning` for non-GCC compilers

2 years agoMerge pull request #20870 from pkubaj:master
Alexander Alekhin [Wed, 10 Nov 2021 16:08:20 +0000 (16:08 +0000)]
Merge pull request #20870 from pkubaj:master

2 years agoAdd support for runtime CPU feature check on POWER on FreeBSD.
Piotr Kubaj [Wed, 13 Oct 2021 16:19:57 +0000 (18:19 +0200)]
Add support for runtime CPU feature check on POWER on FreeBSD.

1. Code uses PPC_FEATURE_HAS_VSX, but it's not checked similarly to
PPC_FEATURE2_ARCH_3_00 and PPC_FEATURE2_ARCH_3_00 for availability. FreeBSD has
those macros in machine/cpu.h, but I went with the way chosen for
PPC_FEATURE2_ARCH_3_00 and PPC_FEATURE2_ARCH_3_00. Other than that, FreeBSD also
has sys/auxv.h and that's where elf_aux_info() is defined.
2. getauxval() is actually Linux-only, but code checked for __unix__. It won't
work on all UNIX, so change it back to __linux__. Add another code variant
strictly for FreeBSD.
3. Update comment. This commit adds code for FreeBSD, but recently there
appeared support for powerpc64 in OpenBSD.

2 years agoMerge pull request #20901 from sivanov-work:merge_source_unite_perf_mod
Sergey Ivanov [Wed, 10 Nov 2021 13:21:51 +0000 (16:21 +0300)]
Merge pull request #20901 from sivanov-work:merge_source_unite_perf_mod

 G-API: oneVPL - Performance: Add async decode pipeline & add cached pool

* Add async decode pipeline & intro cached pool

* Fix performacne test with checking OPENCV_EXTRA

* Add sip perf test with no VPL

* Fix misprint

* Remove empty line..

* Apply some comments

* Apply some comments

* Make perf test fail if no OPENCV_TEST_DATA_PATH declared

2 years agoMerge pull request #20664 from anna-khakimova:ak/resize_simd
Anna Khakimova [Wed, 10 Nov 2021 13:19:52 +0000 (16:19 +0300)]
Merge pull request #20664 from anna-khakimova:ak/resize_simd

Fluid: SIMD for Resize Linear 8UC3

* SIMD for fluid::Resize 8U3C

* Rework horizontal pass + add 8U4C case

* Reproduce stackoverflow test

* StackOverflow test

* SSE42 impl

* SSE42 impl improvement

* GAPI:SSE42 simd opt for Resize 8UC3. Final version

* Fix tests

* Conditional compilation fix

* Applied comments

* Applied comments. Step2

* Applied comments. Step2

2 years agoMerge pull request #20998 from alalek:update_protobuf_3.19.1
Alexander Alekhin [Wed, 10 Nov 2021 12:03:45 +0000 (15:03 +0300)]
Merge pull request #20998 from alalek:update_protobuf_3.19.1

3rdparty(protobuf): upgrade 3.5.2 => 3.19.1

* 3rdparty(protobuf): upgrade 3.5.2 => 3.19.1

* dnn: update protobuf files (3.19.1)

* 3rdparty(protobuf): re-apply OpenCV patch for custom fields (3.19.1)

* protobuf: suppress new build warnings

* protobuf: remove unused files

2 years agofix markers parse in gen_pattern.py
AleksandrPanov [Wed, 10 Nov 2021 08:14:06 +0000 (11:14 +0300)]
fix markers parse in gen_pattern.py

2 years agoMerge pull request #20904 from Crayon-new:fix_bug_in_maxLayer
ZaKiiiiiiiii [Tue, 9 Nov 2021 16:24:04 +0000 (00:24 +0800)]
Merge pull request #20904 from Crayon-new:fix_bug_in_maxLayer

fix bug: wrong output dimension when "keep_dims" is false in pooling layer.

* fix bug in max layer

* code align

* delete permute layer and add test case

* add name assert

* check other cases

* remove c++11 features

* style:add "const" remove assert

* style:sanitize file names

2 years agoMerge pull request #21027 from anonymouss:4.x
Alexander Alekhin [Tue, 9 Nov 2021 15:12:35 +0000 (15:12 +0000)]
Merge pull request #21027 from anonymouss:4.x

2 years agovideoio: drop unnecessary offset for accessing video output buffer
jcong [Tue, 9 Nov 2021 09:23:34 +0000 (17:23 +0800)]
videoio: drop unnecessary offset for accessing video output buffer

Fix: #21021

NDK API AMediaCodec_getOutputBuffer() returns MediaCodecBuffer::data()
which is actually ABuffer::data(). The returned buffer address is already
adjusted by offset.

More info:
    ABuffer::base() returns base address without offset
    ABuffer::data() returns base + offset

Change-Id: I2936339ce4fa9acf657a5a7d92adc1275d7b28a1

2 years agoMerge pull request #21020 from lukasalexanderweber:squash
Lukas-Alexander Weber [Mon, 8 Nov 2021 11:54:06 +0000 (12:54 +0100)]
Merge pull request #21020 from lukasalexanderweber:squash

Created Stitching Tool based on stitching_detailed.py

2 years agoMerge pull request #21016 from alalek:issue_21002
Alexander Alekhin [Sat, 6 Nov 2021 22:12:39 +0000 (22:12 +0000)]
Merge pull request #21016 from alalek:issue_21002

2 years agohighgui(win32): fix trackbar setRange
Alexander Alekhin [Sat, 6 Nov 2021 15:16:42 +0000 (18:16 +0300)]
highgui(win32): fix trackbar setRange

2 years agoMerge pull request #21005 from nikpappas:bug-samples-falsecolor-trackbar
Alexander Alekhin [Sat, 6 Nov 2021 14:19:57 +0000 (14:19 +0000)]
Merge pull request #21005 from nikpappas:bug-samples-falsecolor-trackbar

2 years agoFix trackbar in falsecolor cpp sample
Nikolaos Pappas [Wed, 3 Nov 2021 22:13:30 +0000 (22:13 +0000)]
Fix trackbar in falsecolor cpp sample

2 years agoMerge remote-tracking branch 'upstream/3.4' into merge-3.4
Alexander Alekhin [Fri, 5 Nov 2021 09:27:46 +0000 (09:27 +0000)]
Merge remote-tracking branch 'upstream/3.4' into merge-3.4

2 years agoMerge pull request #21011 from vrabaud:3.4
Alexander Alekhin [Fri, 5 Nov 2021 09:25:50 +0000 (09:25 +0000)]
Merge pull request #21011 from vrabaud:3.4

2 years agoOnly use fma functions when CV_FMA3 is set.
Vincent Rabaud [Thu, 4 Nov 2021 21:48:10 +0000 (22:48 +0100)]
Only use fma functions when CV_FMA3 is set.

In practice, processors offering AVX2/AVX512 also FMA, that is why it got unnoticed.

2 years agoMerge pull request #21009 from alalek:dnn_skip_tests_32bit
Alexander Alekhin [Thu, 4 Nov 2021 18:15:50 +0000 (18:15 +0000)]
Merge pull request #21009 from alalek:dnn_skip_tests_32bit

2 years agodnn(test): skip tests with high memory usage
Alexander Alekhin [Thu, 4 Nov 2021 13:26:33 +0000 (13:26 +0000)]
dnn(test): skip tests with high memory usage

- 32-bit configuration may fail due to memory fragmentation

2 years agoMerge pull request #21007 from alalek:cmake_dnn_fix_wrong_tengine_order
Alexander Alekhin [Thu, 4 Nov 2021 12:28:27 +0000 (12:28 +0000)]
Merge pull request #21007 from alalek:cmake_dnn_fix_wrong_tengine_order

2 years agodnn(cmake): don't hijack OpenCL options with Tengine
Alexander Alekhin [Thu, 4 Nov 2021 09:59:19 +0000 (09:59 +0000)]
dnn(cmake): don't hijack OpenCL options with Tengine

2 years agoMerge pull request #21003 from APrigarina:add_test_qrdetect_fix
Alexander Alekhin [Wed, 3 Nov 2021 22:32:00 +0000 (22:32 +0000)]
Merge pull request #21003 from APrigarina:add_test_qrdetect_fix

2 years agoMerge pull request #20882 from flytogcp:flytogcp-patch-1
Alexander Alekhin [Wed, 3 Nov 2021 20:30:24 +0000 (20:30 +0000)]
Merge pull request #20882 from flytogcp:flytogcp-patch-1

2 years agoadd test case for QR detect fix
APrigarina [Wed, 3 Nov 2021 17:04:27 +0000 (20:04 +0300)]
add test case for QR detect fix

2 years agoMerge pull request #20990 from alalek:fix_warnings_msvc_clang_dshow_3.4
Alexander Alekhin [Wed, 3 Nov 2021 19:51:31 +0000 (19:51 +0000)]
Merge pull request #20990 from alalek:fix_warnings_msvc_clang_dshow_3.4

2 years agoUpdate qrcode.cpp
cpengu [Fri, 15 Oct 2021 03:11:35 +0000 (11:11 +0800)]
Update qrcode.cpp

Fixed issue #20880, QRDetect::searchHorizontalLines() boundary condition will skip the matched qrcode near the end

2 years agoMerge pull request #20999 from alalek:dnn_replace_deprecated_calls
Alexander Alekhin [Wed, 3 Nov 2021 15:59:36 +0000 (18:59 +0300)]
Merge pull request #20999 from alalek:dnn_replace_deprecated_calls

dnn(protobuf): replace deprecated calls

* dnn: replace deprecated ByteSize() => ByteSizeLong()

* dnn: replace deprecated calls, use GetRepeatedFieldRef

2 years agoMerge pull request #20970 from s-trinh:update_Bayer_naming
Alexander Alekhin [Tue, 2 Nov 2021 20:41:17 +0000 (20:41 +0000)]
Merge pull request #20970 from s-trinh:update_Bayer_naming

2 years agovideoio(dshow): eliminate build warnings from MSVC-Clang
Alexander Alekhin [Tue, 2 Nov 2021 19:22:47 +0000 (19:22 +0000)]
videoio(dshow): eliminate build warnings from MSVC-Clang

2 years agoAdd conventional Bayer naming.
Souriya Trinh [Thu, 28 Oct 2021 21:46:13 +0000 (23:46 +0200)]
Add conventional Bayer naming.

2 years agoMerge pull request #20836 from alexgiving:atrutnev/rename_Adapter_to_IAdapter
Trutnev Aleksei [Mon, 1 Nov 2021 12:43:27 +0000 (15:43 +0300)]
Merge pull request #20836 from alexgiving:atrutnev/rename_Adapter_to_IAdapter

* Rename RMat::Adapter to RMat::IAdapter

* Add comments

2 years agoMerge remote-tracking branch 'upstream/3.4' into merge-3.4
Alexander Alekhin [Sat, 30 Oct 2021 14:26:17 +0000 (14:26 +0000)]
Merge remote-tracking branch 'upstream/3.4' into merge-3.4

2 years agoMerge pull request #20982 from alalek:highgui_drop_cvGetWindowImageRect_4.x
Alexander Alekhin [Sat, 30 Oct 2021 14:01:33 +0000 (14:01 +0000)]
Merge pull request #20982 from alalek:highgui_drop_cvGetWindowImageRect_4.x

2 years agoMerge pull request #20980 from alalek:highgui_fix_cvGetWindowImageRect_3.4
Alexander Alekhin [Sat, 30 Oct 2021 13:59:08 +0000 (13:59 +0000)]
Merge pull request #20980 from alalek:highgui_fix_cvGetWindowImageRect_3.4

2 years agohighgui: drop invalid cvGetWindowImageRect
Alexander Alekhin [Sat, 30 Oct 2021 10:57:47 +0000 (10:57 +0000)]
highgui: drop invalid cvGetWindowImageRect