Commit Graph

23339 Commits

Author SHA1 Message Date
Alexander Smorkalov
1ab259df9a
Merge pull request #23005 from alalek:objdetect_cleanup_aruco_ptr_filestorage
aruco(cleanup): don't use Ptr<FileStorage>
2022-12-21 16:45:14 +03:00
augustinmanecy
0bd54a60e9
Merge pull request #20367 from augustinmanecy:features2d-rw
**Merge with contrib**: https://github.com/opencv/opencv_contrib/pull/3003

### Pull Request Readiness Checklist

See details at https://github.com/opencv/opencv/wiki/How_to_contribute#making-a-good-pull-request

- [x] I agree to contribute to the project under Apache 2 License.
- [x] To the best of my knowledge, the proposed patch is not based on a code under GPL or other license that is incompatible with OpenCV
- [x] The PR is proposed to proper branch
- [ ] There is reference to original bug report and related work
- [x] There is accuracy test, performance test and test data in opencv_extra repository, if applicable
      Patch to opencv_extra has the same branch name.
- [ ] The feature is well documented and sample code can be built with the project CMake
2022-12-21 16:03:00 +03:00
Alexander Smorkalov
63b6b24cd0
Merge pull request #22967 from stopmosk:usac-maxiters-bugfix
Fix maxIter parameter in usac findEssentialMat
2022-12-21 15:58:44 +03:00
Alexander Alekhin
c6a15e1835 aruco(cleanup): don't use Ptr<FileStorage> 2022-12-21 10:52:43 +00:00
Alexander Smorkalov
91ac790249
Merge pull request #23001 from alalek:videoio_init_vars
videoio(v4l): initialize variables
2022-12-21 09:56:55 +03:00
Sergei Shutov
3cfe737581 Fix hardcoded maxIters 2022-12-21 09:51:59 +03:00
Yuantao Feng
a2b3acfc6e
dnn: add the CANN backend (#22634)
* cann backend impl v1

* cann backend impl v2: use opencv parsers to build models for cann

* adjust fc according to the new transA and transB

* put cann net in cann backend node and reuse forwardLayer

* use fork() to create a child process and compile cann model

* remove legacy code

* remove debug code

* fall bcak to CPU backend if there is one layer not supoorted by CANN backend

* fix netInput forward
2022-12-21 09:04:41 +03:00
Alexander Alekhin
f4b23de9dd videoio(v4l): initialize variables 2022-12-21 03:28:09 +00:00
Alexander Alekhin
a08c98cdfb Merge pull request #22995 from alalek:dnn_fix_opencl_matmul 2022-12-20 14:52:35 +00:00
Alexander Smorkalov
279e2be56b
Merge pull request #22963 from cudawarped:replace_texture_ref_with_texture_obj
Replace all instances of CUDA texture references with texture objects
2022-12-20 15:07:10 +03:00
Alexander Alekhin
cdbb893b27 dnn: disable OpenCL code path in MatMul processing
- this mode is not supported by 22828
2022-12-20 09:46:48 +00:00
Alexander Alekhin
3f7ec99166 build: eliminate build warnings on Ubuntu 20.04/16.04 2022-12-20 06:46:30 +00:00
Alexander Alekhin
1102b7eff8 dnn: fix gather layer implementation
- support FP16 data
2022-12-20 06:09:34 +00:00
Alexander Alekhin
da43778c1f Merge pull request #22981 from alalek:core_freeze_cache_dir_prefix_4.x 2022-12-19 17:29:57 +00:00
cudawarped
9aa5ab7557 cv::cuda: Replace all instances of texture references/objects with texture objects using the existing updated cv::cudev::Texture class.
Fixes bugs in cv::cuda::demosaicing, cv::cuda::resize and cv::cuda::HoughSegmentDetector.
2022-12-19 19:28:15 +02:00
Vincent Rabaud
7463e9b8bb Even faster CV_PAUSE on SkyLake and above.
No need to loop as RDTSC is 3/4 times faster than _mm_pause.
2022-12-19 14:15:34 +01:00
Alexander Smorkalov
9f201a8ebe
Merge pull request #22979 from alalek:fix_videio_test_limit_threads
videoio(test): reduce number of test threads
2022-12-19 10:01:43 +03:00
Alexander Alekhin
91998d6424
Merge pull request #22935 from alalek:gapi_error
G-API: replace GAPI_Assert() with 'false' and '0' to GAPI_Error()

* gapi: GAPI_Error() macro

* gapi: replace GAPI_Assert() with 'false' and '0' to GAPI_Error()

* build: eliminate 'unreachable code' after CV_Error() (MSVC 2015)

* build: eliminate 'unreachable code' warning for MSVS 2015/2017

- observed in constructors stubs with throwing exception
2022-12-19 06:05:15 +00:00
Alexander Alekhin
420db56ffd Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2022-12-18 02:17:17 +00:00
Alexander Alekhin
4824ce300f core: freeze cache directory prefix - "4.x" 2022-12-18 00:24:52 +00:00
Alexander Alekhin
cdaf4c7321 videoio(test): reduce number of test threads 2022-12-18 00:02:07 +00:00
Alexander Alekhin
eace6adb6d Merge pull request #22934 from alalek:fix_filestorage_binding 2022-12-17 03:28:13 +00:00
Alexander Panov
b4b35cff15
Merge pull request #22368 from AleksandrPanov:move_contrib_aruco_to_main_objdetect
Megre together with https://github.com/opencv/opencv_contrib/pull/3325

1. Move aruco_detector, aruco_board, aruco_dictionary, aruco_utils to objdetect
1.1 add virtual Board::draw(), virtual ~Board()
1.2 move `testCharucoCornersCollinear` to Board classes (and rename to `checkCharucoCornersCollinear`)
1.3 add wrappers to keep the old api working
3. Reduce inludes
4. Fix java tests (add objdetect import)
5. Refactoring

### Pull Request Readiness Checklist

See details at https://github.com/opencv/opencv/wiki/How_to_contribute#making-a-good-pull-request

- [x] I agree to contribute to the project under Apache 2 License.
- [x] To the best of my knowledge, the proposed patch is not based on a code under GPL or another license that is incompatible with OpenCV
- [x] The PR is proposed to the proper branch
- [x] There is a reference to the original bug report and related work
- [x] There is accuracy test, performance test and test data in opencv_extra repository, if applicable
      Patch to opencv_extra has the same branch name.
- [x] The feature is well documented and sample code can be built with the project CMake

```
**WIP**
force_builders=linux,win64,docs,Linux x64 Debug,Custom
Xbuild_contrib:Docs=OFF

build_image:Custom=ubuntu:22.04
build_worker:Custom=linux-1
```
2022-12-16 12:28:47 +03:00
hzc
47fb79bd8c
Merge pull request #22936 from hzcyf:orbbec_new_cam_support
videoio: add Orbbec Gemini 2 and Astra 2 camera support

### Test Result

| OS | Compiler | Camera | Result |
|-----|-----------|---------|--------|
|Windows11| (VS2022)MSVC17.3|Orbbec Gemini 2|Pass|
|Windows11| (VS2022)MSVC17.3|Orbbec Astra 2|Pass|
|Ubuntu22.04|GCC9.2|Orbbec Gemini 2|Pass|
|Ubuntu22.04|GCC9.2|Orbbec Astra 2|Pass|

### Pull Request Readiness Checklist
- [x] I agree to contribute to the project under Apache 2 License.
- [x] To the best of my knowledge, the proposed patch is not based on a code under GPL or another license that is incompatible with OpenCV
- [x] The PR is proposed to the proper branch
- [x] The feature is well documented and sample code can be built with the project CMake
2022-12-16 12:23:12 +03:00
Alexander Alekhin
6e3700593f compatibility: keep Ptr<FileStorage> stubs till OpenCV 5.0 2022-12-16 00:47:44 +00:00
Alexander Alekhin
6a8c5a1d27 python: resolve Ptr<FileStorage> requirement issue 2022-12-16 00:47:44 +00:00
Vincent Rabaud
b7b08fa0c3 Fix slower CV_PAUSE on SkyLake and above.
This is fixing https://github.com/opencv/opencv/issues/22852
2022-12-15 14:18:57 +01:00
Alexander Smorkalov
ac6fb17784
Merge pull request #22828 from WanliZhong:improve_matmul
DNN: make MatMul support 3D or 4D with broadcast
2022-12-15 13:36:22 +03:00
Alexander Smorkalov
3f22f4727c
Merge pull request #22919 from asmorkalov:as/gstreamer_read_timeout
Address https://github.com/opencv/opencv/issues/22868
Used the same defaults as it's done for FFmpeg

### Pull Request Readiness Checklist

See details at https://github.com/opencv/opencv/wiki/How_to_contribute#making-a-good-pull-request

- [x] I agree to contribute to the project under Apache 2 License.
- [x] To the best of my knowledge, the proposed patch is not based on a code under GPL or another license that is incompatible with OpenCV
- [x] The PR is proposed to the proper branch
- [x] There is a reference to the original bug report and related work
- [ ] There is accuracy test, performance test and test data in opencv_extra repository, if applicable
      Patch to opencv_extra has the same branch name.
- [ ] The feature is well documented and sample code can be built with the project CMake


```
force_builders=Custom
build_image:Custom=gstreamer:16.04
buildworker:Custom=linux-1
```
2022-12-15 12:53:22 +03:00
Alexander Smorkalov
0153e796cc
Merge pull request #22891 from AleksandrPanov:qr_add_alignment
Use QR code alignment markers
2022-12-15 09:39:58 +03:00
zoom
4891818114 make MatMul support 3D or 4D with broadcast 2022-12-15 10:36:08 +08:00
Alexander Alekhin
db4a557187 Merge pull request #22951 from zihaomu:update_nanotrack_comment 2022-12-14 21:21:49 +00:00
Alexander Alekhin
04c3a534af Merge pull request #22958 from asmorkalov:as/ffmpeg_missing_include 2022-12-14 21:16:07 +00:00
AleksandrPanov
a32143003d add alignment detect 2022-12-14 23:56:57 +03:00
Sergei Shutov
8bd17163c7
Merge pull request #22939 from stopmosk:21826-python-bindings-for-videocapturewaitany
Add Python bindings for VideoCapture::waitAny #21826

### Pull Request Readiness Checklist

See details at https://github.com/opencv/opencv/wiki/How_to_contribute#making-a-good-pull-request

- [x] I agree to contribute to the project under Apache 2 License.
- [x] To the best of my knowledge, the proposed patch is not based on a code under GPL or another license that is incompatible with OpenCV
- [x] The PR is proposed to the proper branch
- [x] There is a reference to the original bug report and related work
- [x] There is accuracy test, performance test and test data in opencv_extra repository, if applicable
      Patch to opencv_extra has the same branch name.
- [x] The feature is well documented and sample code can be built with the project CMake
2022-12-14 22:15:02 +03:00
Alexander Smorkalov
189e1b228d Fix missing FFmpeg include needed for av_get_pix_fmt_name 2022-12-14 13:09:37 +03:00
Alexander Smorkalov
52709c7771
Merge pull request #22954 from VadimLevin:dev/vlevin/fix-merge-artifacts-in-python-misc-tests
fix: remove function duplicates in test_misc.py
2022-12-14 09:42:43 +03:00
zihaomu
7dbb125a34 add nanotrack v2 at regression test. 2022-12-14 14:41:49 +08:00
Vadim Levin
3f5f09e730 fix: add _ suffix to properties having reserved keyword names 2022-12-13 20:56:39 +03:00
Vadim Levin
253a4c113e fix: remove function duplicates in test_misc.py 2022-12-13 19:14:52 +03:00
Alexander Smorkalov
1788c93aea
Merge pull request #22924 from alalek:logger_strip_base_dir
core(logger): strip opencv's modules base path
2022-12-13 15:28:10 +03:00
Alexander Alekhin
4203c903f8 Merge pull request #22928 from alalek:riscv_toolchains 2022-12-13 06:32:16 +00:00
Vadim Levin
727feda935 fix: AVFoundation inconsistent camera indices 2022-12-12 17:15:46 +03:00
Alexander Alekhin
39087fecdc
Merge pull request #22942 from alalek:videoio_test_update_hw_checks
* videoio(test): update PSNR check for H264/265

* videoio(test): reduce size for ffmpeg tests on 32-bit platforms
2022-12-12 12:38:14 +00:00
Alexander Alekhin
c725771e11 build(riscv): suppress massive -Wignored-attributes warnings 2022-12-11 17:10:00 +00:00
Alexander Alekhin
be326ff752 build: fix/eliminate MSVC warnings 2022-12-10 12:19:31 +00:00
Alexander Smorkalov
423bc515e5 Integer underflow fix for morphologyEx in Carotene (arm). 2022-12-09 18:08:22 +03:00
Alexander Alekhin
941d89e06d cmake: fix RISC-V toolchains
- RVV options are moved to configuration scripts instead of toolchains
2022-12-09 12:02:28 +00:00
Alexander Alekhin
281b790618 Merge pull request #22922 from alalek:fix_riscv_intrin_rvv 2022-12-08 22:07:46 +00:00
Alexander Alekhin
93c4bca04d Merge pull request #22933 from alalek:fixup_22894 2022-12-08 22:07:04 +00:00
Alexander Alekhin
24d7eb0ca5 videoio(test): test skip due to non-updated FFmpeg wrapper 2022-12-08 17:18:29 +00:00
Alexander Alekhin
8ba44e7d55 Merge pull request #22882 from zihaomu:gemm_first_const 2022-12-08 14:18:33 +00:00
Alexander Alekhin
49f539cb46 Merge pull request #22894 from mshabunin:ffmpeg-16bit 2022-12-08 14:12:51 +00:00
Zihao Mu
0a650b573b
Merge pull request #22840 from zihaomu:optimze_conv_memory_usage
DNN: reduce the memory used in convolution layer

* reduce the memory in winograd and disabel the test when usage memory is larger than 2gb.

* remove VERY_LOG tag
2022-12-08 12:57:13 +00:00
Alexander Alekhin
7e3c53b9d3 core(logger): strip path prefix 2022-12-07 23:58:36 +00:00
Alexander Smorkalov
ab912329b6
Merge pull request #22885 from asmorkalov:as/new_qt_icons
Switch QT UI to icons with Google Material Design
2022-12-07 14:25:31 +03:00
Maksim Shabunin
6ad216576d videoio/FFmpeg: added CV_16UC1 read/write support 2022-12-07 12:12:31 +03:00
Alexander Alekhin
c5a4df30c6 risc-v: fix RVV backend on clang with undefined CV_RVV_SCALABLE
- v_interleave_quads
- v_pack_triplets
- v_signmask
2022-12-06 13:49:05 +00:00
Zihao Mu
cb8f1dca3b
Merge pull request #22808 from zihaomu:nanotrack
[teset data in opencv_extra](https://github.com/opencv/opencv_extra/pull/1016)

NanoTrack is an extremely lightweight and fast object-tracking model. 
The total size is **1.1 MB**.
And the FPS on M1 chip is **150**, on Raspberry Pi 4 is about **30**. (Float32 CPU only)

With this model, many users can run object tracking on the edge device.

The author of NanoTrack is @HonglinChu.
The original repo is https://github.com/HonglinChu/NanoTrack.

### Pull Request Readiness Checklist

See details at https://github.com/opencv/opencv/wiki/How_to_contribute#making-a-good-pull-request

- [x] I agree to contribute to the project under Apache 2 License.
- [x] To the best of my knowledge, the proposed patch is not based on a code under GPL or another license that is incompatible with OpenCV
- [x] The PR is proposed to the proper branch
- [ ] There is a reference to the original bug report and related work
- [ ] There is accuracy test, performance test and test data in opencv_extra repository, if applicable
      Patch to opencv_extra has the same branch name.
- [ ] The feature is well documented and sample code can be built with the project CMake
2022-12-06 08:54:32 +03:00
Tomasz Ożański
d1ff87d94d Bugfix for solvePnPRansac with SOLVEPNP_ITERATIVE
The current implementation overwrites the result rotation and translation in every iteration.
If SOLVEPNP_ITERATIVE was run as a refinement it will start from the incorrect initial
transformation thus  degrading the final outcome.
2022-12-03 16:46:03 +01:00
Alexander Alekhin
b16f76eede Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2022-12-03 12:39:41 +00:00
Christine Poerschke
4792837f2e
Merge pull request #22865 from cpoerschke:3.4-issue-22860
ocl_minMaxIdx to call minmaxloc.cl for OpenCL 1.2+ only
2022-12-03 05:29:04 +00:00
Alexander Alekhin
416830fb59 Merge pull request #22888 from alalek:dnn_ov_fix_custom_layers 2022-12-03 05:24:28 +00:00
Alexander Alekhin
d16b3b2487 dnn(test): restore openvino tests with 'Cannot get memory' message 2022-12-03 01:34:48 +00:00
Alexander Alekhin
74d0b4cc78 dnn(openvino): fix custom layers BlockingDesc 2022-12-03 01:34:10 +00:00
Alexander Smorkalov
c55613ccf7 Switch QT UI to icons with Google Material Design. 2022-12-02 11:21:02 +03:00
Maksim Shabunin
5862b50217 videoio: fixed FFmpeg plugin build 2022-12-01 20:26:08 +03:00
Alexander Smorkalov
5696629b13
Merge pull request #22594 from ZhaoChuyang:pr_test_for_22253
add test for PR #22253
2022-12-01 13:47:32 +03:00
Vadim Levin
3a15152be5 refactor: rework test to be more specific 2022-11-30 18:31:03 +03:00
赵楚洋
f1055a7e91 add test 2022-11-30 18:31:03 +03:00
Alexander Smorkalov
1192779d05
Merge pull request #22792 from tailsu:sd/avfoundation-orientation-meta
Add support for CAP_PROP_ORIENTATION_AUTO to AVFoundation backend
2022-11-30 14:25:09 +03:00
Alexander Smorkalov
e14ca39fd7
Merge pull request #22857 from fengyuentau:batched_nms
dnn: add batched nms
2022-11-30 12:37:49 +03:00
Alexander Smorkalov
421ba8730a
Merge pull request #22809 from fengyuentau:tile
dnn: support ONNX Tile
2022-11-29 14:42:28 +03:00
zihaomu
0d56524b72 gemm support transA and transB, and first input is constance. 2022-11-29 17:13:36 +08:00
fengyuentau
9fded9ca53 batched nms impl 2022-11-29 15:32:34 +08:00
fengyuentau
441624a5fb tile impl 2022-11-29 11:15:38 +08:00
Alexander Alekhin
25ac77e010 Merge pull request #22873 from WanliZhong:issue22859 2022-11-28 19:10:51 +00:00
Alexander Alekhin
77d887898d Merge pull request #22875 from asmorkalov:as/cl_error_code_fix 2022-11-28 19:05:59 +00:00
HAN Liutong
a32f2cd24a
Merge pull request #22520 from hanliutong:hsv
Modify the SIMD loop in color_hsv.

* Modify the SIMD loops in color_hsv.

* Add FP supporting in bit logic.

* Add temporary compatibility code.

* Use max_nlanes instead of vlanes for array declaration.

* Use "CV_SIMD || CV_SIMD_SCALABLE".

* Revert the modify of the Universal Intrinsic API

* Fix warnings.

* Use v_select instead of bits manipulation.
2022-11-28 18:28:14 +00:00
Alexander Smorkalov
eb68de9268
Merge pull request #22695 from AleksandrPanov:qr_improve_version_detect
Improve QR code version estimation
2022-11-28 19:50:02 +03:00
AleksandrPanov
ed3810f7a5 add getNumModules(), add decode version 2022-11-28 17:45:09 +03:00
Alexander Smorkalov
1c3e287d32 More fixes for OpenCL error reporting. 2022-11-28 09:47:51 +03:00
zoom
5044af69d1 let MatMul can work when both two inputs are const 2022-11-27 17:32:41 +08:00
Stefan Dragnev
a462f49b99 add support for CAP_PROP_ORIENTATION_AUTO to AVFoundation backend
* extract rotateFrame as free function, rename to applyMetadataRotation
* LegacyCapture::get() always return 0, if cap is null
2022-11-25 17:25:13 +01:00
Alexander Smorkalov
7622fbf895 Fixed OpenGL errors formatting. 2022-11-25 16:46:12 +03:00
Amir Hassan
3f371fe2dd
Merge pull request #22855 from kallaballa:print_cl_status_on_fail
Print CL status code on error in opengl interop functions
2022-11-25 09:13:57 +03:00
Alexander Smorkalov
6ca205a029
Merge pull request #22478 from WanliZhong:nary_eltwise_cuda
DNN: Let part of the operators in nary_eltwise support CUDA
2022-11-22 16:15:50 +03:00
Dan Mašek
aba2167d9c
Merge pull request #22838 from dan-masek:fix_issue_22837
Fix issue 22837: No more blank buttons on toolbar after resizing the window
2022-11-22 13:47:27 +03:00
Alexander Smorkalov
5db4f1f7df
Merge pull request #22830 from alalek:issue_22752
imgcodecs: ensure parameters are key-value pairs, fix HDR encoder
2022-11-22 12:50:02 +03:00
Alexander Alekhin
a0a8d2160d Merge pull request #22775 from WanliZhong:issue22713 2022-11-21 19:55:48 +00:00
Alexander Alekhin
2a5da50902 Merge pull request #22806 from dan-masek:fix_issue_22767 2022-11-21 19:53:34 +00:00
fwcd
90b144cf0a Cocoa/highgui: Set activateIgnoringOtherApps 2022-11-21 12:49:08 +03:00
Alexander Smorkalov
529bd0425e
Merge pull request #22737 from fwcd:activate-cocoa-window-on-top
Cocoa/highgui: Set `[NSApp activateIgnoringOtherApps]` to spawn window on top
2022-11-21 12:28:00 +03:00
Zhuo Zhang
c63a6c472d fix typo: Gausssian to Gaussian 2022-11-21 10:44:12 +08:00
Dan Mašek
e5bea2bde4 Fix #22766: Corrected off-by one error causing inconsistent row spacing. (rebased to 3.4) 2022-11-20 21:48:23 +01:00
Dan Mašek
e9d64e0a8c Fix #22767: Ensure that the buttons are spaced to the size of the toolbar window, which is always visible. (rebased to 3.x) 2022-11-20 20:53:23 +01:00
Alexander Alekhin
f0df78b7e7 imgcodecs: ensure parameters are key-value pairs, fix HDR encoder 2022-11-20 13:08:46 +00:00
Maksim Shabunin
e93d976d00 gapi: fix InferWithReshape test crash when data is not found 2022-11-19 01:56:45 +03:00
Anatoliy Talamanov
64aad34cb4
Merge pull request #22735 from TolyaTalamanov:at/expose-all-imgproc-to-python
G-API Expose all imgproc operations to python

* Expose imgproc operations

* Fix alignment
2022-11-18 15:25:51 +00:00
Alexander Smorkalov
7592d58f0c
Merge pull request #22771 from kallaballa:opencl_hls_and_hsv_conversions_bug
define the number of dstChannels for HLS and HSV conversion as well
2022-11-17 13:36:18 +03:00