platform/upstream/opencv.git
2 years agoMerge pull request #21036 from fengyuentau:timvx_backend_support
Zihao Mu [Thu, 31 Mar 2022 21:42:11 +0000 (05:42 +0800)]
Merge pull request #21036 from fengyuentau:timvx_backend_support

dnn: TIM-VX NPU backend support

* Add TimVX NPU backend for DNN module.

* use official branch from tim-vx repo; fix detecting viv sdk

Co-authored-by: fytao <yuantao.feng@outlook.com>
2 years agoMerge pull request #21782 from TolyaTalamanov:at/fix-1d-mat-problems
Anatoliy Talamanov [Thu, 31 Mar 2022 21:00:45 +0000 (00:00 +0300)]
Merge pull request #21782 from TolyaTalamanov:at/fix-1d-mat-problems

[G-API] Fix problems with 1D cv::Mat as graph output

* Fix issues with 1D cv::Mat

* Fix cv::Mat::create

* Fix standalone build

* Add test on 1d mat

* Fix warning

* Add additional condition

* Add more tests

2 years agoMerge pull request #21796 from alalek:dnn_reduce_fixup_21601
Alexander Alekhin [Wed, 30 Mar 2022 22:26:28 +0000 (22:26 +0000)]
Merge pull request #21796 from alalek:dnn_reduce_fixup_21601

2 years agoMerge pull request #21351 from hanliutong:rvv-clang
HAN Liutong [Wed, 30 Mar 2022 20:04:34 +0000 (04:04 +0800)]
Merge pull request #21351 from hanliutong:rvv-clang

* Update universal intrinsics of RVV back-end.

* Use array instead of malloc.

2 years agodnn: fix ReduceLayer implementation, update OpenVINO tests
Alexander Alekhin [Wed, 30 Mar 2022 11:06:18 +0000 (11:06 +0000)]
dnn: fix ReduceLayer implementation, update OpenVINO tests

2 years agoMerge pull request #21777 from anna-khakimova:ak/convertto_simd
Anna Khakimova [Tue, 29 Mar 2022 21:14:01 +0000 (00:14 +0300)]
Merge pull request #21777 from anna-khakimova:ak/convertto_simd

GAPI Fluid: SIMD for ConvertTo.

* GAPI Fluid: SIMD for convertto.

* Applied comments

2 years agoMerge pull request #21781 from VadimLevin:dev/vlevin/skip-inline-namespaces
Alexander Alekhin [Sat, 26 Mar 2022 21:40:45 +0000 (21:40 +0000)]
Merge pull request #21781 from VadimLevin:dev/vlevin/skip-inline-namespaces

2 years agoMerge remote-tracking branch 'upstream/3.4' into merge-3.4
Alexander Alekhin [Sat, 26 Mar 2022 16:00:11 +0000 (16:00 +0000)]
Merge remote-tracking branch 'upstream/3.4' into merge-3.4

2 years agoMerge pull request #21601 from zihaomu:add_reduceLayer
Alexander Alekhin [Sat, 26 Mar 2022 10:20:10 +0000 (10:20 +0000)]
Merge pull request #21601 from zihaomu:add_reduceLayer

2 years agoMerge pull request #21750 from alalek:dnn_fix_index_access
Alexander Alekhin [Fri, 25 Mar 2022 18:26:10 +0000 (18:26 +0000)]
Merge pull request #21750 from alalek:dnn_fix_index_access

2 years agoMerge pull request #21728 from anna-khakimova:ak/resize_f32c1_avx_simd
Anna Khakimova [Fri, 25 Mar 2022 15:11:01 +0000 (18:11 +0300)]
Merge pull request #21728 from anna-khakimova:ak/resize_f32c1_avx_simd

GAPI Fluid: SIMD AVX2 Resize F32C1.

* GAPI Fluid: Resize F32C1 scalar.

* Final version

* GAPI Fluid: SIMD AVX2 for Resize F32C1.

* Applied comments.

* Deleted warning suppression.

* Applied comments.

2 years agofix: inline namespace handling in header parser
Vadim Levin [Fri, 25 Mar 2022 12:36:31 +0000 (15:36 +0300)]
fix: inline namespace handling in header parser

`inline namespace` should be skipped in header parser namespaces list.
Example:
```cpp
namespace cv {
inline namespace inlined {
namespace inner {
// content
} // namespace inner
} // namespace inlined
} // namespace cv
```
Before fix `inner` is registered as `cv..inner`
After fix: `cv.inner`

2 years agoMerge pull request #21719 from TolyaTalamanov:at/pipeline_modeling_tool-skip-frames...
Anatoliy Talamanov [Fri, 25 Mar 2022 08:22:45 +0000 (11:22 +0300)]
Merge pull request #21719 from TolyaTalamanov:at/pipeline_modeling_tool-skip-frames-for-nodes

[G-API] Pipeline modeling tool: Skip frames

* Add skip feature

* Refactoring

* Fix warning

* Put more comments

* Fix comments to review

* Agregate common params into structure

* Fix warning

* Clean up & add test

* Add assert

* Fix warning on Mac

* Update modules/gapi/samples/pipeline_modeling_tool.cpp

Co-authored-by: Dmitry Matveev <dmitry.matveev@intel.com>
2 years agoMerge pull request #21660 from TolyaTalamanov:at/handle-exception-in-streamingexecutor
Anatoliy Talamanov [Fri, 25 Mar 2022 08:19:53 +0000 (11:19 +0300)]
Merge pull request #21660 from TolyaTalamanov:at/handle-exception-in-streamingexecutor

[G-API] Handle exceptions in streaming executor

* Handle exceptions in streaming executor

* Rethrow exception in non-streaming executor

* Clean up

* Put more tests

* Handle exceptions in IE backend

* Handle exception in IE callbacks

* Handle exception in GExecutor

* Handle all exceptions in IE backend

* Not only (std::exception& e)

* Fix comments to review

* Handle input exception in generic way

* Fix comment

* Clean up

* Apply review comments

* Put more comments
* Fix alignment
* Move test outside of HAVE_NGRAPH

* Fix compilation

2 years agoMerge pull request #21772 from luzpaz:typo/dnn
Alexander Alekhin [Thu, 24 Mar 2022 16:32:46 +0000 (16:32 +0000)]
Merge pull request #21772 from luzpaz:typo/dnn

2 years agodnn: fix various dnn related typos
luz paz [Fri, 18 Mar 2022 21:15:14 +0000 (17:15 -0400)]
dnn: fix various dnn related typos

Fixes source comments and documentation related to dnn code.

2 years agoMerge pull request #21743 from luzpaz:typos
Alexander Alekhin [Wed, 23 Mar 2022 19:14:02 +0000 (19:14 +0000)]
Merge pull request #21743 from luzpaz:typos

2 years agoMerge pull request #21759 from pkubaj:patch-1
Alexander Alekhin [Wed, 23 Mar 2022 19:13:12 +0000 (19:13 +0000)]
Merge pull request #21759 from pkubaj:patch-1

2 years agoMerge pull request #21764 from alexanderconner:fixes/CameraBridgeViewBase-error-message
Alexander Alekhin [Wed, 23 Mar 2022 19:11:30 +0000 (19:11 +0000)]
Merge pull request #21764 from alexanderconner:fixes/CameraBridgeViewBase-error-message

2 years agoMerge pull request #21768 from stal12:4.x
Alexander Alekhin [Wed, 23 Mar 2022 19:10:19 +0000 (19:10 +0000)]
Merge pull request #21768 from stal12:4.x

2 years agoFix VideoCapture::open() brief description
Stefano Allegretti [Wed, 23 Mar 2022 14:55:30 +0000 (15:55 +0100)]
Fix VideoCapture::open() brief description

2 years agoUpdate CameraBridgeViewBase error message
Alexander Conner [Tue, 22 Mar 2022 19:40:23 +0000 (15:40 -0400)]
Update CameraBridgeViewBase error message

Update CameraBridgeViewBase error message - Change "you device does" to "your device does"

2 years agoMerge pull request #21756 from komakai:fix-pow
Alexander Alekhin [Tue, 22 Mar 2022 13:45:35 +0000 (13:45 +0000)]
Merge pull request #21756 from komakai:fix-pow

2 years agoMerge pull request #21746 from anna-khakimova:ak/dynamic_dispatch_sub
Alexander Alekhin [Mon, 21 Mar 2022 17:10:40 +0000 (17:10 +0000)]
Merge pull request #21746 from anna-khakimova:ak/dynamic_dispatch_sub

2 years agoMerge pull request #21739 from mshabunin:fix-cart-polar
Alexander Alekhin [Mon, 21 Mar 2022 17:10:11 +0000 (17:10 +0000)]
Merge pull request #21739 from mshabunin:fix-cart-polar

2 years agocartToPolar/polarToCart: disable inplace mode
Maksim Shabunin [Thu, 17 Mar 2022 13:14:38 +0000 (16:14 +0300)]
cartToPolar/polarToCart: disable inplace mode

2 years agots: fix some EXPECT_MAT macros
Maksim Shabunin [Mon, 21 Mar 2022 13:04:33 +0000 (16:04 +0300)]
ts: fix some EXPECT_MAT macros

2 years agoFix build with LLVM 13 on ppc64le
pkubaj [Mon, 21 Mar 2022 02:05:05 +0000 (02:05 +0000)]
Fix build with LLVM 13 on ppc64le

/wrkdirs/usr/ports/graphics/opencv/work/opencv-4.5.5/modules/core/include/opencv2/core/vsx_utils.hpp:352:12: warning: 'vec_permi' macro redefined [-Wmacro-redefined]
#   define vec_permi(a, b, c) vec_xxpermdi(b, a, (3 ^ (((c) & 1) << 1 | (c) >> 1)))
           ^
/usr/lib/clang/13.0.0/include/altivec.h:13077:9: note: previous definition is here
#define vec_permi(__a, __b, __c)                                               \
        ^
/wrkdirs/usr/ports/graphics/opencv/work/opencv-4.5.5/modules/core/include/opencv2/core/vsx_utils.hpp:370:25: error: redefinition of 'vec_promote'
VSX_FINLINE(vec_dword2) vec_promote(long long a, int b)
                        ^
/usr/lib/clang/13.0.0/include/altivec.h:14604:1: note: previous definition is here
vec_promote(signed long long __a, int __b) {
^
/wrkdirs/usr/ports/graphics/opencv/work/opencv-4.5.5/modules/core/include/opencv2/core/vsx_utils.hpp:377:26: error: redefinition of 'vec_promote'
VSX_FINLINE(vec_udword2) vec_promote(unsigned long long a, int b)
                         ^
/usr/lib/clang/13.0.0/include/altivec.h:14611:1: note: previous definition is here
vec_promote(unsigned long long __a, int __b) {
^
/wrkdirs/usr/ports/graphics/opencv/work/opencv-4.5.5/modules/core/include/opencv2/core/hal/intrin_vsx.hpp:1045:22: error: call to 'vec_rsqrt' is ambiguous
{ return v_float32x4(vec_rsqrt(x.val)); }
                     ^~~~~~~~~
/usr/lib/clang/13.0.0/include/altivec.h:8472:34: note: candidate function
static vector float __ATTRS_o_ai vec_rsqrt(vector float __a) {
                                 ^
/wrkdirs/usr/ports/graphics/opencv/work/opencv-4.5.5/modules/core/include/opencv2/core/vsx_utils.hpp:362:29: note: candidate function
    VSX_FINLINE(vec_float4) vec_rsqrt(const vec_float4& a)
                            ^
/wrkdirs/usr/ports/graphics/opencv/work/opencv-4.5.5/modules/core/include/opencv2/core/hal/intrin_vsx.hpp:1047:22: error: call to 'vec_rsqrt' is ambiguous
{ return v_float64x2(vec_rsqrt(x.val)); }
                     ^~~~~~~~~
/usr/lib/clang/13.0.0/include/altivec.h:8477:35: note: candidate function
static vector double __ATTRS_o_ai vec_rsqrt(vector double __a) {
                                  ^
/wrkdirs/usr/ports/graphics/opencv/work/opencv-4.5.5/modules/core/include/opencv2/core/vsx_utils.hpp:365:30: note: candidate function
    VSX_FINLINE(vec_double2) vec_rsqrt(const vec_double2& a)
                             ^
1 warning and 4 errors generated.

The specific functions were added to altivec.h in LLVM's 1ff93618e58df210def48d26878c20a1b414d900c3da07d216dd20fbdb7302fd085c0a59e189ae3d and 10cc5bcd868c433f9a781aef82178b04e98bd098.

2 years agoObjective-C wrapper header fix-ups to avoid clashes with system macros
Giles Payne [Sun, 20 Mar 2022 09:47:26 +0000 (18:47 +0900)]
Objective-C wrapper header fix-ups to avoid clashes with system macros

2 years agodnn: fix index access
Alexander Alekhin [Sat, 19 Mar 2022 06:52:47 +0000 (06:52 +0000)]
dnn: fix index access

2 years agoMerge pull request #21531 from fengyuentau:add_3rdparty_mirrors
Yuantao Feng [Fri, 18 Mar 2022 09:50:21 +0000 (17:50 +0800)]
Merge pull request #21531 from fengyuentau:add_3rdparty_mirrors

Support downloading 3rdparty resources from Gitcode & Gitlab-style mirrors

* replace github.com with gitcode.net for ocv_download

* replace raw.githubusercontent.com with gitcode.net for ocv_download

* rename funtions and remove some comments

* add options for custom mirrors, which simply replace domain github.com & githubusercontent.com

* run ocv_init_download once; replace DL_URL with mirrored one when calling ocv_download

* fix for empty download links when not using mirror

* fix bugs: set(.. .. PARENT_SCOPE) for ocv_init_download; correct macro names for replace github archives and raw githubusercontent

* adjusted mirror swapping impl: replace with mirrored link before each ocv_download; update md5sum for archives

* fix a bug: macro invoked with incorrect arguments by non-set vars

* enclose if statement

* workable impl

* shorten the var names of two key options

* scalable implementation of downloading from mirror and using custom mirror

* improve ocv_init_download help message

* fix the different extracted directory name in case of ADE & TBB which are downloaded from release page

* improve help message printing

* Download ADE & TBB using commit ids instead of from release pages

* support custom mirrors on downloading archives

* improve hints

* add missing parentheses

* reset ocv_download calls

* mirror support implementation using ocv_cmake_hook & ocv_cmake_hook_append

* move ocv_init_download into cmake/OpenCVDownload.cmake

* move ocv_cmake_hook before checking CMake cache

* improve hints when not fetching as git repo

* add WORKING_DIRECTORY  in execute_process in ocv_init_download

* use OPENCV_DOWNLOAD_MIRROR_ID

* add custom.cmake for custom mirror

* detect github origin

* fix broken var name

* download from github by default if custom tbb is set

* add checksum checks for gitcode.cmake before replacing urls and checksums

* add checksum checks for custom.cmake before replacing urls and checkusms

* use description specify instead of set for messages in custom.cmake; use warning message for warnings

* updates and fixes

2 years agoGAPI Fluid: Enable dynamic dispatching for the Sub kernel.
Anna Khakimova [Thu, 17 Mar 2022 18:33:50 +0000 (21:33 +0300)]
GAPI Fluid: Enable dynamic dispatching for the Sub kernel.

2 years agoSupport for some reduce layers for onnx
Zihao Mu [Fri, 18 Mar 2022 02:19:13 +0000 (10:19 +0800)]
Support for some reduce layers for onnx

2 years agoFix typos in tutorials within docs/
luz paz [Thu, 17 Mar 2022 20:06:54 +0000 (16:06 -0400)]
Fix typos in tutorials within docs/

Fix various typos found within tutorial documentation

2 years agoMerge pull request #21678 from anna-khakimova:ak/resize_f32c1_scalar
Anna Khakimova [Thu, 17 Mar 2022 16:45:14 +0000 (19:45 +0300)]
Merge pull request #21678 from anna-khakimova:ak/resize_f32c1_scalar

GAPI Fluid: Resize F32C1 scalar version.

* GAPI Fluid: Resize F32C1 scalar.

* Final version

* Applied comments

2 years agoMerge pull request #21662 from alalek:dnn_split
Alexander Alekhin [Thu, 17 Mar 2022 16:09:17 +0000 (16:09 +0000)]
Merge pull request #21662 from alalek:dnn_split

2 years agoMerge pull request #21677 from chacha21:rectangle_intersection
Pierre Chatelier [Wed, 16 Mar 2022 14:46:11 +0000 (15:46 +0100)]
Merge pull request #21677 from chacha21:rectangle_intersection

* better accuracy of _rotatedRectangleIntersection

instead of just migrating to double-precision (which would work), some computations are scaled by a factor that depends on the length of the smallest vectors.
There is a better accuracy even with floats, so this is certainly better for very sensitive cases

* Update intersection.cpp

use L2SQR norm to tune the numeric scale

* Update intersection.cpp

adapt samePointEps with L2 norm

* Update intersection.cpp

move comment

* Update intersection.cpp

fix wrong numericalScalingFactor usage

* added tests

* fixed warnings returned by buildbot

* modifications suggested by reviewer

renaming numericalScaleFctor to normalizationScale
refactor some computations
more "const"

* modifications as suggested by reviewer

2 years agoMerge pull request #21722 from mshabunin:fix-va-link
Alexander Alekhin [Wed, 16 Mar 2022 09:45:35 +0000 (09:45 +0000)]
Merge pull request #21722 from mshabunin:fix-va-link

2 years agoFix libva dynamic loading
Maksim Shabunin [Tue, 15 Mar 2022 16:00:52 +0000 (19:00 +0300)]
Fix libva dynamic loading

2 years agoMerge pull request #21686 from anna-khakimova:ak/dynamic_disp_add_kernel
Alexander Alekhin [Tue, 15 Mar 2022 15:28:48 +0000 (15:28 +0000)]
Merge pull request #21686 from anna-khakimova:ak/dynamic_disp_add_kernel

2 years agoMerge pull request #21636 from TolyaTalamanov:at/gapi_modeling_tool_drop_frames
Anatoliy Talamanov [Tue, 15 Mar 2022 15:27:39 +0000 (18:27 +0300)]
Merge pull request #21636 from TolyaTalamanov:at/gapi_modeling_tool_drop_frames

[G-API] Pipeline modeling tool - support frame dropping for source

* Implement drop frames functionality for dummy src

* Reconsider frame dropping

* Fix comments

2 years agoMerge pull request #21687 from sivanov-work:vpp_pp_integr
Sergey Ivanov [Tue, 15 Mar 2022 08:01:03 +0000 (11:01 +0300)]
Merge pull request #21687 from sivanov-work:vpp_pp_integr

G-API: Add VPP preproc CPU/GPU dispatcher

* Add VPP preproc acceleration dispatcher & UTs

* Fix compilation

* Apply some comments

2 years agoMerge pull request #21522 from rogday:lstm
rogday [Tue, 15 Mar 2022 06:14:05 +0000 (09:14 +0300)]
Merge pull request #21522 from rogday:lstm

Fix LSTM support in ONNX

* fix LSTM and add peephole support

* disable old tests

* turn lambdas into functions

* more hacks for  c++98

* add assertions

* slice fixes

* backport of cuda-related fixes

* address review comments

2 years agoMerge pull request #21703 from rogday:transpose
rogday [Mon, 14 Mar 2022 13:10:04 +0000 (16:10 +0300)]
Merge pull request #21703 from rogday:transpose

Add n-dimensional transpose to core

* add n-dimensional transpose to core

* add performance test, write sequentially and address review comments

2 years agoMerge pull request #21715 from ilyachur:change_type_info_creation
Alexander Alekhin [Mon, 14 Mar 2022 09:18:58 +0000 (09:18 +0000)]
Merge pull request #21715 from ilyachur:change_type_info_creation

2 years agoChanged call of NodeTypeInfo constructor
Ilya Churaev [Mon, 14 Mar 2022 05:28:43 +0000 (08:28 +0300)]
Changed call of NodeTypeInfo constructor

2 years agoMerge pull request #21710 from alalek:fix_21696
Alexander Alekhin [Sun, 13 Mar 2022 13:59:03 +0000 (13:59 +0000)]
Merge pull request #21710 from alalek:fix_21696

2 years agovideoio(ffmpeg): fix memory leak
Alexander Alekhin [Sun, 13 Mar 2022 04:08:51 +0000 (04:08 +0000)]
videoio(ffmpeg): fix memory leak

2 years agoMerge pull request #21701 from chacha21:tiff_10_12_14
Pierre Chatelier [Fri, 11 Mar 2022 18:07:12 +0000 (19:07 +0100)]
Merge pull request #21701 from chacha21:tiff_10_12_14

Add 10-12-14bit (integer) TIFF decoding support

* Add 12bit (integer) TIFF decoding support

An (slow) unpacking step is inserted when the native bpp is not equal to the dst_bpp

Currently, I do not know if there can be several packing flavours in TIFF data.

* added tests

* move sample files to opencv_extra

* added 10b and 14b unpacking

* fix compilation for non MSVC compilers by using more standard typedefs

* yet another typdef usage change to fix buildbot Mac compilation

* fixed unpacking of partial packets

* fixed warnings returned by buildbot

* modifications as suggested by reviewer

2 years agoMerge pull request #21684 from vrabaud:34_vec
Alexander Alekhin [Fri, 11 Mar 2022 18:03:35 +0000 (18:03 +0000)]
Merge pull request #21684 from vrabaud:34_vec

2 years agoMerge pull request #21669 from rgarnov:rg/cpu_backend_reshape
Alexander Alekhin [Wed, 9 Mar 2022 17:25:43 +0000 (17:25 +0000)]
Merge pull request #21669 from rgarnov:rg/cpu_backend_reshape

2 years agodnn: add dnn.cpp file with information about git commits history
Alexander Alekhin [Mon, 28 Feb 2022 09:42:38 +0000 (09:42 +0000)]
dnn: add dnn.cpp file with information about git commits history

2 years agodnn: split dnn.cpp code
Alexander Alekhin [Wed, 16 Feb 2022 21:55:56 +0000 (21:55 +0000)]
dnn: split dnn.cpp code

base commit: 19926e2979ef049a89dd029e2231555db40c2776
original dnn.cpp content: https://github.com/opencv/opencv/blame/19926e2979ef049a89dd029e2231555db40c2776/modules/dnn/src/dnn.cpp

2 years agoMerge pull request #21692 from UnaNancyOwen:add_softmax
Tsukasa Sugiura [Mon, 7 Mar 2022 20:26:15 +0000 (05:26 +0900)]
Merge pull request #21692 from UnaNancyOwen:add_softmax

* add apply softmax option to ClassificationModel

* remove default arguments of ClassificationModel::setSoftMax()

* fix build for python

* fix docs warning for setSoftMax()

* add impl for ClassficationModel()

* fix failed build for docs by trailing whitespace

* move to implement classify() to ClassificationModel_Impl

* move to implement softmax() to ClassificationModel_Impl

* remove softmax from public method in ClassificationModel

2 years agoMerge remote-tracking branch 'upstream/3.4' into merge-3.4
Alexander Alekhin [Sat, 5 Mar 2022 19:41:20 +0000 (19:41 +0000)]
Merge remote-tracking branch 'upstream/3.4' into merge-3.4

2 years agoAdded reshape() functionality to CPU backend
Ruslan Garnov [Tue, 1 Mar 2022 12:09:05 +0000 (15:09 +0300)]
Added reshape() functionality to CPU backend

2 years agoMerge pull request #21658 from sivanov-work:vpp_core_add_roi
Sergey Ivanov [Sat, 5 Mar 2022 10:50:40 +0000 (13:50 +0300)]
Merge pull request #21658 from sivanov-work:vpp_core_add_roi

 G-API: Add ROI processing in VPP preproc

* Add ROI in VPP prepro

* Apply comments

2 years agoGAPI Fluid: Dynamic dispatching for Add kernel.
Anna Khakimova [Fri, 4 Mar 2022 18:57:49 +0000 (21:57 +0300)]
GAPI Fluid: Dynamic dispatching for Add kernel.

2 years agoAllow Matx static function to work with Vec.
Vincent Rabaud [Fri, 4 Mar 2022 10:57:14 +0000 (11:57 +0100)]
Allow Matx static function to work with Vec.

2 years agoMerge pull request #21674 from jeremyephron:patch-1
Alexander Alekhin [Fri, 4 Mar 2022 09:50:29 +0000 (09:50 +0000)]
Merge pull request #21674 from jeremyephron:patch-1

2 years agoMerge pull request #21676 from masa-iwm:fix-convertFromD3D11Texture2D
Alexander Alekhin [Thu, 3 Mar 2022 08:46:46 +0000 (08:46 +0000)]
Merge pull request #21676 from masa-iwm:fix-convertFromD3D11Texture2D

2 years agobugfix convertFromD3D11Texture2D
masa-iwm [Wed, 2 Mar 2022 22:21:53 +0000 (07:21 +0900)]
bugfix convertFromD3D11Texture2D

2 years agoUpdate stitching_detailed.py
Jeremy Ephron [Wed, 2 Mar 2022 19:01:53 +0000 (11:01 -0800)]
Update stitching_detailed.py

###  Critical bugs fixed:
- `seam_finder.find()` returns None and overwrites `masks_warped`
- `indices` is only 1-dimensional

### Nice-to-have bugs fixed:
- avoid invalid value in sqrt and subsequent runtime warning
- avoid printing help string on each run (use argparse builtin behavior)

### New features:
- added graphcut seam finder support

### Test Summary:
Tested on Ubuntu 20.04 with python 3.8.10 and opencv-python-contrib 4.5.5.62

2 years agoMerge pull request #21488 from VadimLevin:dev/vlevin/scope-for-classes
Alexander Alekhin [Wed, 2 Mar 2022 18:44:00 +0000 (18:44 +0000)]
Merge pull request #21488 from VadimLevin:dev/vlevin/scope-for-classes

2 years agoMerge pull request #21530 from anna-khakimova:ak/simd_divrc
Anna Khakimova [Wed, 2 Mar 2022 13:36:16 +0000 (16:36 +0300)]
Merge pull request #21530 from anna-khakimova:ak/simd_divrc

* GAPI Fluid: SIMD for DivRC kernel.

* Fluid: Div kernel's SIMD refactoring

* SIMD for DivRC 3 channel case

* Applied comments

2 years agofeature: submodule or a class scope for exported classes
Vadim Levin [Thu, 20 Jan 2022 12:21:47 +0000 (15:21 +0300)]
feature: submodule or a class scope for exported classes

All classes are registered in the scope that corresponds to C++
namespace or exported class.

Example:
`cv::ml::Boost` is exported as `cv.ml.Boost`
`cv::SimpleBlobDetector::Params` is exported as
`cv.SimpleBlobDetector.Params`

For backward compatibility all classes are registered in the global
module with their mangling name containing scope information.
Example:
`cv::ml::Boost` has `cv.ml_Boost` alias to `cv.ml.Boost` type

2 years agoMerge pull request #21645 from chacha21:applyColorMap_8UC1_optimized
Pierre Chatelier [Tue, 1 Mar 2022 16:55:00 +0000 (17:55 +0100)]
Merge pull request #21645 from chacha21:applyColorMap_8UC1_optimized

Optimize cv::applyColorMap() for simple case

* Optimize cv::applyColorMap() for simple case

PR for 21640
For regular cv::Mat CV_8UC1 src, applying the colormap is simpler than calling the cv::LUT() mechanism.

* add support for src as CV_8UC3

src as CV_8UC3 is handled with a BGR2GRAY conversion, the same optimized code being used afterwards

* code style

rely on cv::Mat.ptr() to index data

* Move new implementation to ColorMap::operator()

Changes as suggested by reviewer

* style

improvements suggsted by reviewer

* typo

* tune parallel work

* better usage of parallel_for_

use nstripes parameter of parallel_for_
assume _lut is continuous to bring faster pixel indexing
optimize src/dst access by contiguous rows of pixels
do not locally copy the LUT any more, it is no more relevant with the new optimizations

2 years agoMerge pull request #21542 from rogday:split_expand
Alexander Alekhin [Mon, 28 Feb 2022 22:38:24 +0000 (22:38 +0000)]
Merge pull request #21542 from rogday:split_expand

2 years agoMerge pull request #21458 from SinM9:speech_recognition_cpp
Sinitsina Maria [Mon, 28 Feb 2022 15:23:00 +0000 (18:23 +0300)]
Merge pull request #21458 from SinM9:speech_recognition_cpp

AudioIO: add dnn speech recognition sample on C++

* add speech recognition cpp

* fix warnings

* fixes

* fix warning

* microphone fix

2 years agofix slice and expand
Egor Smirnov [Thu, 17 Feb 2022 17:30:44 +0000 (20:30 +0300)]
fix slice and expand

2 years agoMerge pull request #21630 from shibayan:arm64-msvc-neon
Tatsuro Shibamura [Sat, 26 Feb 2022 17:35:03 +0000 (02:35 +0900)]
Merge pull request #21630 from shibayan:arm64-msvc-neon

* Added NEON support in builds for Windows on ARM

* Fixed `HAVE_CPU_NEON_SUPPORT` display broken during compiler test

* Fixed a build error prior to Visual Studio 2022

2 years agoMerge pull request #21553 from VadimLevin:dev/vlevin/scope-for-classes-4x-port
Vadim Levin [Thu, 24 Feb 2022 22:17:43 +0000 (01:17 +0300)]
Merge pull request #21553 from VadimLevin:dev/vlevin/scope-for-classes-4x-port

4.x: submodule or a class scope for exported classes

* feature: submodule or a class scope for exported classes

All classes are registered in the scope that corresponds to C++
namespace or exported class.

Example:
`cv::ml::Boost` is exported as `cv.ml.Boost`
`cv::SimpleBlobDetector::Params` is exported as
`cv.SimpleBlobDetector.Params`

For backward compatibility all classes are registered in the global
module with their mangling name containing scope information.
Example:
`cv::ml::Boost` has `cv.ml_Boost` alias to `cv.ml.Boost` type

* refactor: remove redundant GAPI aliases

* fix: use explicit string literals in CVPY_TYPE macro

* fix: add handling for class aliases

2 years agoMerge pull request #21625 from hanliutong:rvv1p0
Alexander Alekhin [Thu, 24 Feb 2022 12:08:55 +0000 (12:08 +0000)]
Merge pull request #21625 from hanliutong:rvv1p0

2 years agoMerge pull request #21618 from sivanov-work:vpp_preproc_core
Sergey Ivanov [Thu, 24 Feb 2022 10:35:52 +0000 (13:35 +0300)]
Merge pull request #21618 from sivanov-work:vpp_preproc_core

G-API: Add VPL/VPP preproc core module

* Add BaseMediAdapter for VPL

* Add PreprocSession & PreprocEngine interface part

* Implement preproc UT, Fix base path

* Add common PP interface, add common pp_params

* Rough decoupling VPL & Preproc

* Add syntax sugar for PP interface

* Integrate VPP preproc in GIEbackend

* Add PP bypass

* Add perf tests for PP

* Fix warning in vpl core UT

* Add inner preproc resolution Unit Test

* Remove VPP preproc description from single ROI sample

* Apply SetROIBlob for diferent Infer operations

* Eliminate extra branch-lines for cfg_param_parser & transcode_engine

* Fix UT warning &PreprocSession compile

* Fix compilation & warnings

* Reduce Session&Engine code amount

* Apply some comments

* Revert IE changes, rename preproc

* Fix for DX11 infer for OV: turn off texture array

* Remove dependency PP on IE

* Change fixture tests params

* Apply other comments & turn off ROI for GPU

* Fix compilation: remove forgotten INFER define

* Apply debt comments

* Fix PP UTs: add FrameInfo value comparator

* Fix style

* Remove standalone map for preproc frames storage

* Add other comments

2 years agoMerge pull request #21613 from YusukeKameda:patch-1
Alexander Alekhin [Tue, 22 Feb 2022 19:23:32 +0000 (19:23 +0000)]
Merge pull request #21613 from YusukeKameda:patch-1

2 years agoMerge pull request #21534 from alexgiving:atrutnev/simd_for_merge4
Alexander Alekhin [Mon, 21 Feb 2022 22:17:16 +0000 (22:17 +0000)]
Merge pull request #21534 from alexgiving:atrutnev/simd_for_merge4

2 years agoenable dynamic dispatching for merge4
Aleksei Trutnev [Mon, 7 Feb 2022 09:54:50 +0000 (12:54 +0300)]
enable dynamic dispatching for merge4

2 years agoMerge pull request #21646 from zchrissirhcz:seamless_cloning-remove-const
Alexander Alekhin [Mon, 21 Feb 2022 16:34:10 +0000 (16:34 +0000)]
Merge pull request #21646 from zchrissirhcz:seamless_cloning-remove-const

2 years agoMerge pull request #21607 from fengyuentau:fix_FaceDetectorYN_dynamic_shape
Yuantao Feng [Mon, 21 Feb 2022 13:49:07 +0000 (21:49 +0800)]
Merge pull request #21607 from fengyuentau:fix_FaceDetectorYN_dynamic_shape

Use YuNet of fixed input shape to fix not-supported-dynamic-zero-shape for FaceDetectorYN

* use yunet with input of fixed shape

* update yunet used in face recognition regression

2 years agoremove const in seamless_cloding APIs for better semantics
Zhuo Zhang [Mon, 21 Feb 2022 12:39:41 +0000 (20:39 +0800)]
remove const in seamless_cloding APIs for better semantics

2 years agoMerge remote-tracking branch 'upstream/3.4' into merge-3.4
Alexander Alekhin [Sat, 19 Feb 2022 21:04:35 +0000 (21:04 +0000)]
Merge remote-tracking branch 'upstream/3.4' into merge-3.4

2 years agoMerge pull request #21639 from georgthegreat:patch-1
Alexander Alekhin [Sat, 19 Feb 2022 20:58:57 +0000 (20:58 +0000)]
Merge pull request #21639 from georgthegreat:patch-1

2 years agoMerge pull request #21598 from KaurkerDevourer:patch-1
Alexander Alekhin [Sat, 19 Feb 2022 20:58:35 +0000 (20:58 +0000)]
Merge pull request #21598 from KaurkerDevourer:patch-1

2 years agoFix DpSeamFinder::hasOnlyOneNeighbor
KaurkerDevourer [Fri, 11 Feb 2022 11:38:48 +0000 (14:38 +0300)]
Fix DpSeamFinder::hasOnlyOneNeighbor

std::lower_bound is linear for set
https://en.cppreference.com/w/cpp/algorithm/lower_bound

2 years agoMerge pull request #21635 from DumDereDum:issue_21595_3.4
Artem Saratovtsev [Fri, 18 Feb 2022 14:58:58 +0000 (17:58 +0300)]
Merge pull request #21635 from DumDereDum:issue_21595_3.4

Issue 21595 fix 3.4 branch

* bug fix; add test

* rewrite tests avoiding vector in tests

2 years agoАix -Winvalid-noreturn under clang-cl
Yuriy Chernyshov [Fri, 18 Feb 2022 14:57:46 +0000 (17:57 +0300)]
Аix -Winvalid-noreturn under clang-cl

2 years agoMerge pull request #21628 from anna-khakimova:ak/resize_fix_32bit_builds
Alexander Alekhin [Thu, 17 Feb 2022 12:16:06 +0000 (12:16 +0000)]
Merge pull request #21628 from anna-khakimova:ak/resize_fix_32bit_builds

2 years agoGAPI Fluid: Fix for 32bit build issue.
Anna Khakimova [Wed, 16 Feb 2022 13:29:17 +0000 (16:29 +0300)]
GAPI Fluid: Fix for 32bit build issue.

2 years agoMerge pull request #21602 from paroj:hidpi
Alexander Alekhin [Wed, 16 Feb 2022 18:37:15 +0000 (18:37 +0000)]
Merge pull request #21602 from paroj:hidpi

2 years agoMerge pull request #21626 from anna-khakimova:ak/workaround_for_16s
Alexander Alekhin [Wed, 16 Feb 2022 17:47:48 +0000 (17:47 +0000)]
Merge pull request #21626 from anna-khakimova:ak/workaround_for_16s

2 years agoMerge pull request #21529 from alexgiving:atrutnev/simd_for_merge3
Alexander Alekhin [Wed, 16 Feb 2022 17:45:19 +0000 (17:45 +0000)]
Merge pull request #21529 from alexgiving:atrutnev/simd_for_merge3

2 years agoGAPI Perf Tests:Workaround for the OpenCV's issue.
Anna Khakimova [Wed, 16 Feb 2022 11:21:14 +0000 (14:21 +0300)]
GAPI Perf Tests:Workaround for the OpenCV's issue.

2 years agoMerge pull request #21612 from seanm:tsan-call-once
Alexander Alekhin [Wed, 16 Feb 2022 09:57:25 +0000 (09:57 +0000)]
Merge pull request #21612 from seanm:tsan-call-once

2 years ago Update clang toolchain for RVV.
HAN Liutong [Wed, 16 Feb 2022 08:01:38 +0000 (16:01 +0800)]
 Update clang toolchain for RVV.

2 years agoReplaced incorrect double checked locking with a static
Sean McBride [Mon, 14 Feb 2022 21:33:04 +0000 (16:33 -0500)]
Replaced incorrect double checked locking with a static

Thread Sanitizer identified an incorrect implementation of double checked locking.

Replaced it with a static, which therefore can only be created once.

2 years agoMerge pull request #21622 from alalek:imgcodecs_checks_3.4
Alexander Alekhin [Tue, 15 Feb 2022 18:19:51 +0000 (18:19 +0000)]
Merge pull request #21622 from alalek:imgcodecs_checks_3.4

2 years agoimgcodecs: add runtime checks to validate input
Alexander Alekhin [Tue, 15 Feb 2022 11:48:09 +0000 (11:48 +0000)]
imgcodecs: add runtime checks to validate input

backport of commit: f9b1dbe2ac3da4ed87647ea27d9060879acc20fe

2 years agoMerge pull request #21620 from alalek:imgcodecs_checks
Alexander Alekhin [Tue, 15 Feb 2022 16:30:47 +0000 (16:30 +0000)]
Merge pull request #21620 from alalek:imgcodecs_checks

2 years agoMerge pull request #21614 from alalek:fix_build_power8_vec_absd
Alexander Alekhin [Tue, 15 Feb 2022 15:31:23 +0000 (15:31 +0000)]
Merge pull request #21614 from alalek:fix_build_power8_vec_absd

2 years agoMerge pull request #21617 from mshabunin:disable-onnx-tests-34
Alexander Alekhin [Tue, 15 Feb 2022 13:11:59 +0000 (13:11 +0000)]
Merge pull request #21617 from mshabunin:disable-onnx-tests-34