Commit Graph

33112 Commits

Author SHA1 Message Date
Stefan Dragnev
9b5a719d80 build fixes for emscripten 3.1.45 2023-09-18 15:38:31 +02:00
Alexander Smorkalov
f9a59f2592 Release OpenCV 4.8.0 2023-06-28 14:53:33 +03:00
Anatoliy Talamanov
b8b8c7c9e5
Merge pull request #23884 from TolyaTalamanov:at/fix-async-infer-ov-backend
G-API: Fix async inference for OpenVINO backend #23884

### Pull Request Readiness Checklist

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

- [ ] I agree to contribute to the project under Apache 2 License.
- [ ] 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
- [ ] 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
2023-06-28 14:52:15 +03:00
Alexander Smorkalov
c982be3924
Merge pull request #23863 from asmorkalov:as/calibrate_py_rework
Reworked calibrate.py
2023-06-25 12:10:10 +03:00
Alexander Smorkalov
85ea247cc6 Reworked calibrate.py
- Fixed width and height swap in board size
- Fixed defaults in command line hint
- Fixed board visualization for Charuco case
- Used matchImagePoints method to handle partially detected Charuco boards
2023-06-23 22:19:08 +03:00
Alexander Smorkalov
bf06bc92aa Merge branch '3.4' into merge-3.4 2023-06-23 20:12:58 +03:00
Yuantao Feng
aff420329c
Merge pull request #23853 from fengyuentau:disable_fp16_warning
dnn: disable warning when loading a fp16 model #23853

### 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
2023-06-23 19:52:04 +03:00
Alexander Smorkalov
21d79abb1f
Merge pull request #23859 from TolyaTalamanov:at/ov-backend-core-wa
G-API: Apply ov::Core lifetime WA for OpenVINO Backend
2023-06-23 19:49:06 +03:00
Alexander Smorkalov
d9a5603fa3
Merge pull request #23860 from fengyuentau:fix_overflow_sigmoid_v3.4
dnn: fix overflow in sigmoid layer for 3.4
2023-06-23 19:47:42 +03:00
Alexander Smorkalov
ee97dd5211
Merge pull request #23806 from asmorkalov:as/usac_drop_mat_ptr
Get rid of unsafe raw pointers to Mat object in USAC
2023-06-23 16:23:03 +03:00
fengyuentau
29388f80a5 fix overflow 2023-06-23 21:22:21 +08:00
Alexander Panov
e7501b69ea
Merge pull request #23647 from AleksandrPanov:fix_charuco_board_detect
Add charuco board check #23647

Added charuco board checking to avoid detection of incorrect board.
Fixes #23517

### 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
2023-06-23 16:16:22 +03:00
TolyaTalamanov
c0fda696f3 Apply ov::Core WA 2023-06-23 12:16:21 +00:00
Alexander Smorkalov
d4f81c6d24
Merge pull request #23855 from thekpaul:3.4_patched
Add `pthread.h` Inclusion if `HAVE_PTHREADS_PF` is defined
2023-06-23 13:07:45 +03:00
Paul Kim (김형준)
3b264d5877
Add pthread.h Inclusion if HAVE_PTHREADS_PF is defined
Single-case tested with success on Windows 11 with MinGW-w64 Standalone GCC v13.1.0 while building OpenCV 4.7.0
2023-06-23 17:53:03 +09:00
Alexander Smorkalov
0866a135c6 Git rid of unsafe raw pointers to Mat object. 2023-06-23 09:20:24 +03:00
Alexander Smorkalov
2849a774e3
Merge pull request #23846 from asmorkalov:as/ffmpeg_update_4.x
FFmpeg/4.x: update FFmpeg wrapper 2023.6
2023-06-22 21:00:06 +03:00
Alexander Panov
affc69bf1f
Merge pull request #23848 from AleksandrPanov:fix_detectDiamonds_api
Fix detect diamonds api #23848

`detectDiamonds` cannot be called from python, reproducer:

```
import numpy as np
import cv2 as cv

detector = cv.aruco.CharucoDetector(
    cv.aruco.CharucoBoard(
        (3, 3), 200.0, 100.0,
        cv.aruco.getPredefinedDictionary(cv.aruco.DICT_4X4_250)
    )
)
image = np.zeros((640, 480, 1), dtype=np.uint8)
res = detector.detectDiamonds(image)
print(res)
```

The error in `detectDiamonds` API fixed by replacing `InputOutputArrayOfArrays markerIds` with `InputOutputArray markerIds`.


### 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.
- [ ] The feature is well documented and sample code can be built with the project CMake
2023-06-22 17:30:44 +03:00
Dmitry Kurtaev
22b747eae2
Merge pull request #23702 from dkurt:py_rotated_rect
Python binding for RotatedRect #23702

### Pull Request Readiness Checklist

related: https://github.com/opencv/opencv/issues/23546#issuecomment-1562894602

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
2023-06-22 15:09:53 +03:00
Alexander Smorkalov
426b088754 FFmpeg/4.x: update FFmpeg wrapper 2023.6 2023-06-22 13:58:58 +03:00
Anatoliy Talamanov
60848519b5
Merge pull request #23843 from TolyaTalamanov:at/fix-missing-opaque-kind-for-kernel
G-API: Fix incorrect OpaqueKind for Kernel outputs #23843

### Pull Request Readiness Checklist

#### Overview
The PR is going to fix several problems:
1. Major: `GKernel` doesn't hold `kind` for its outputs. Since `GModelBuilder` traverse graph from outputs to inputs once it reaches any output of the operation it will use its `kind` to create  `Data` meta for all operation outputs. Since it essential for `python` to know `GTypeInfo` (which is `shape` and `kind`) it will be confused.

Consider this operation:
```
 @cv.gapi.op('custom.square_mean', in_types=[cv.GArray.Int], out_types=[cv.GOpaque.Float, cv.GArray.Int])
    class GSquareMean:
        @staticmethod
        def outMeta(desc):
            return cv.empty_gopaque_desc(), cv.empty_array_desc()
```
Even though `GOpaque` is `Float`, corresponding metadata might have `Int` kind because it might be taken from `cv.GArray.Int`
so it will be a problem if one of the outputs of these operation is graph output because python will cast it to the wrong type based on `Data` meta.

2. Minor: Some of the OpenVINO `IR`'s doesn't any layout information for input. It's usually true only for `IRv10` but since `OpenVINO 2.0` need this information to correctly configure resize we need to put default layout if there no such assigned in `ov::Model`. 

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

- [ ] I agree to contribute to the project under Apache 2 License.
- [ ] 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
- [ ] 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
2023-06-22 12:46:25 +03:00
Alexander Smorkalov
61d48dd0f8
Merge pull request #23540 from cudawarped:add_CAP_PROP_CODEC_FOURCC
`VideoCapture`: change `CAP_PROP_FOURCC` to fix #22876
2023-06-22 12:21:59 +03:00
Alexander Smorkalov
eba8450995
Merge pull request #23842 from opencv-pushbot:gitee/alalek/fix_static_build_with_gapi_openvino
G-API: fix static build with OpenVINO
2023-06-21 22:42:28 +03:00
Alexander Alekhin
1656e7573e gapi: fix static build with openvino 2023-06-21 14:17:44 +00:00
Alexander Smorkalov
b7947d861c
Merge pull request #23841 from asmorkalov:as/ffmpeg_update_3.4
FFmpeg/3.4: update FFmpeg wrapper 2023.6
2023-06-21 16:09:54 +03:00
Yuantao Feng
1db1422fbd
Merge pull request #23829 from fengyuentau:fixes4orbbec
Fix broken links and outdated information for documentation of Orbbec camera #23829

Resolves the documentation issue from https://github.com/opencv/opencv/issues/23579.

Orbbec is moving to support UVC directly so they do not provide the old `install.sh` for OpenNI SDK >= 2.3.0.86. Also in their new release of OpenNI SDK, paths of include headers and libraries are changed. Changing our cmake script for this change does not make sense since we cannot make this kind of change everytime they update. So just added a subsection providing `install.sh` for users as a workaround on our side.

@Lecrapouille You may also take a look at this pull request.

### 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
2023-06-21 13:11:39 +03:00
Alexander Smorkalov
fc810434de
Merge pull request #23801 from VadimLevin:dev/vlevin/python-stubs-api-refinement
feat: manual refinement for Python API definition
2023-06-21 10:44:36 +03:00
Alexander Smorkalov
fe93724d3f FFmpeg wrapper update to FFmpeg version 3.4.13. 2023-06-21 09:22:26 +03:00
Alexander Smorkalov
65b957a5b3
Merge pull request #23832 from asmorkalov:as/reshape_docs
Document parameters of multi-dimentional reshape
2023-06-21 09:04:17 +03:00
Alexander Smorkalov
9eaa7bd566 Document parameters of multi-dimentional reshape. 2023-06-20 21:54:49 +03:00
Alexander Smorkalov
94211fb8b0
Merge pull request #23838 from VadimLevin:dev/vlevin/numpy-array-typing
fix: conditionally define generic NumPy NDArray alias
2023-06-20 21:16:50 +03:00
Vadim Levin
f20edba925 fix: conditionally define generic NumPy NDArray alias 2023-06-20 20:05:58 +03:00
Alexander Smorkalov
fe4f5b539e
Merge pull request #23835 from VadimLevin:dev/vlevin/fix-ast-nodes-required-usage-imports
fix: AST nodes required usage imports
2023-06-20 18:34:07 +03:00
Alexander Smorkalov
4e31bc5cf5
Merge pull request #23833 from asmorkalov:update_version_4.8.0-pre
pre: OpenCV 4.8.0 (version++)
2023-06-20 17:23:00 +03:00
Vadim Levin
06b40aef91 fix: AST nodes required usage imports 2023-06-20 16:31:55 +03:00
Alexander Smorkalov
c97c22b7cf
Merge pull request #23831 from asmorkalov:update_version_3.4.20-pre
pre: OpenCV 3.4.20 (version++)
2023-06-20 16:25:55 +03:00
Alexander Smorkalov
51702ffd92 pre: OpenCV 4.8.0 (version++) 2023-06-20 15:52:57 +03:00
Alexander Smorkalov
805946baaf pre: OpenCV 3.4.20 (version++) 2023-06-20 14:10:08 +03:00
Alexander Smorkalov
726ba0210e
Merge pull request #23825 from ulvido:4.x
if browser supports wasm but only asm.js path provided use asm.js as fallback
2023-06-20 13:35:18 +03:00
Anatoliy Talamanov
71790e12ad
Merge pull request #23799 from TolyaTalamanov:at/ov20-backend-implement-missing-kernels
G-API: Implement InferROI, InferList, InferList2 for OpenVINO backend #23799

### Pull Request Readiness Checklist

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

- [ ] I agree to contribute to the project under Apache 2 License.
- [ ] 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
- [ ] 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
2023-06-20 13:29:23 +03:00
Anatoliy Talamanov
0cf45b89ec
Merge pull request #23796 from TolyaTalamanov:at/align-ie-backend-with-latest-openvino
G-API: Align IE Backend with the latest OpenVINO version #23796

### Pull Request Readiness Checklist

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

- [ ] I agree to contribute to the project under Apache 2 License.
- [ ] 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
- [ ] 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
2023-06-20 12:33:08 +03:00
Alexander Smorkalov
004801f1c5 Merge remote-tracking branch 'origin/3.4' into merge-3.4 2023-06-20 09:56:57 +03:00
lamm45
ddcbd2cc26
Merge pull request #22798 from lamm45:distransform-large
Fix distransform to work with large images #22798

This attempts to fix the following bug which was caused by storing squares of large integers into 32-bit floating point variables:
https://github.com/opencv/opencv/issues/22732


### 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.
- [ ] The feature is well documented and sample code can be built with the project CMake
2023-06-19 15:11:01 +03:00
Ulvi YELEN
d6d15c136a
if browser supports wasm but only asm.js path provided use asm.js as fallback 2023-06-17 09:38:57 +03:00
Alexander Smorkalov
f2f00259da
Merge pull request #23821 from asmorkalov:as/python_types_extra_imports
Force mat_wrapper import to satisfy dependencies for MatLike alias
2023-06-16 22:27:47 +03:00
Alexander Smorkalov
a4a739b99e Force mat_wrapper import to satisfy dependencies for MatLike alias. 2023-06-16 21:51:17 +03:00
Alexander Smorkalov
c0d4e16833
Merge pull request #23819 from asmorkalov:as/objdetect_no_dnn
Fixed barcode to be built without DNN
2023-06-16 20:03:45 +03:00
Vadim Levin
94703fc5b0
Merge pull request #23816 from VadimLevin:dev/vlevin/export-all-caps-enum-constants
Export enums ALL_CAPS version to typing stub files #23816

- Export ALL_CAPS versions alongside from normal names for enum constants, since both versions are available in runtime
- Change enum names entries comments to documentary strings

Before patch
```python
RMat_Access_R: int
RMat_Access_W: int
RMat_Access = int  # One of [R, W]
```
After patch
```python
RMat_Access_R: int
RMAT_ACCESS_R: int
RMat_Access_W: int
RMAT_ACCESS_W: int
RMat_Access = int
"""One of [RMat_Access_R, RMAT_ACCESS_R, RMat_Access_W, RMAT_ACCESS_W]"""
```

Resolves: #23776

### 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
2023-06-16 20:03:19 +03:00
Alexander Smorkalov
496474392e
Merge pull request #23809 from VadimLevin:dev/vlevin/re-export-stubs-submodules
feat: re-export symbols to cv2 level
2023-06-16 20:01:24 +03:00
Dmitry Kurtaev
433c364456
Merge pull request #23724 from dkurt:java_without_ant
Build Java without ANT #23724

### Pull Request Readiness Checklist

Enables a path of building Java bindings without ANT

* Able to build OpenCV JAR and Docs without ANT
  ```
  --   Java:
  --     ant:                         NO
  --     JNI:                         /usr/lib/jvm/default-java/include /usr/lib/jvm/default-java/include/linux /usr/lib/jvm/default-java/include
  --     Java wrappers:               YES
  --     Java tests:                  NO
  ```
* Possible to build OpenCV JAR without ANT but tests still require ANT

**Merge with**: https://github.com/opencv/opencv_contrib/pull/3502

Notes:
- Use `OPENCV_JAVA_IGNORE_ANT=1` to force "Java" flow for building Java bindings
- Java tests still require Apache ANT
- JAR doesn't include `.java` source code files.


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
- [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
2023-06-16 19:58:20 +03:00