-
-
Notifications
You must be signed in to change notification settings - Fork 56.2k
(5.x) Merge 4.x #24070
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
(5.x) Merge 4.x #24070
Conversation
Added final constrants check to solveLP to filter out flating-point numeric issues
backport to 3.4: Fixed FPS computation on some videos for FFmpeg backend
…rflow Fixed potential buffer overflow of user file name in create_samples_app
…e_23156 build(ios): disable workaround for CMake 3.25.1+
Mark `resize` and `calcHist` arguments as optional regardless of their C++ API optionality
- Re-export native submodules of cv2 package level. - Re-export manually registered symbols like cv2.mat_wrapper.Mat
Enum names exist only during type checking. During runtime they should be denoted as named integral types
Update USAC opencv#23078 ### 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] 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
[opencv 3.x] back-ported tbb support ubuntu 22.04
…ping-module fix: typing module enums references
Keep inliers for linear remap with BORDER_TRANSPARENT opencv#23754 Address opencv#23562 ### Pull Request Readiness Checklist resolves opencv#23562 I do think that this is a bug because with `INTER_CUBIC + BORDER_TRANSPARENT` the last column and row are preserved. So same should be done for `INTER_LINEAR` 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
Build Java without ANT opencv#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**: opencv/opencv_contrib#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
…stubs-submodules feat: re-export symbols to cv2 level
…-caps-enum-constants Export enums ALL_CAPS version to typing stub files opencv#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: opencv#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 L 10000 icense. - [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
Fixed barcode to be built without DNN
…_imports Force mat_wrapper import to satisfy dependencies for MatLike alias
Fix distransform to work with large images opencv#22798 This attempts to fix the following bug which was caused by storing squares of large integers into 32-bit floating point variables: opencv#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
Remove unused features in USAC in 4.x
fix compilation error on Windows ARM, use vaddq_f32 instead of +=
This patch enables passing GpuMat as an in/out argument in several functions.
…_disable Disable waring C5054 in VS2022 c++20
…pu-mat-to-big-types feat: add cuda_GpuMat to big types
…tml-execution-provider G-API: Support DirectML Execution Provider for ONNXRT Backend opencv#24045 ### 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
Manually add typing stubs for functions defined in `cv2_highgui.hpp`: - `createTrackbar` ```python def createTrackbar(trackbarName: str, windowName: str, value: int, count: int, onChange: Callable[[int], None]) -> None: ... ``` - `createButton` ```python def createButton(buttonName: str, onChange: Callable[[tuple[int] | tuple[int, Any]], None], userData: Any | None = ..., buttonType: int = ..., initialButtonState: int = ...) -> None: ... ``` - `setMouseCallback` ```python def setMouseCallback( windowName: str, onMouse: Callback[[int, int, int, int, Any | None], None], param: Any | None = ... ) -> None: ... ```
Fix harmless ASAN error. opencv#24042 For an empty radius, &v[0] would be accessed (though the called functions would not use it due to v.size() being 0). Also add checks for emptyness and fix the first element checks, in case we get INT_MAX to compare to. ### 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
…ing-highgui-refinement feat: add highgui functions to typing stubs
[Build] popcnt is not supported on windows ARM
Python interface for `redirectError`: ```python def redirectError( onError: Callable[[int, str, str, str, int], None] | None ) -> None: ... ```
…ing-redirect-error feat: add typing stub for redirectError
…ing-register-dnn-layer Python typing refinement for dnn_registerLayer/dnn_unregisterLayer functions opencv#24066 This patch introduces typings generation for `dnn_registerLayer`/`dnn_unregisterLayer` manually defined in [`cv2/modules/dnn/misc/python/pyopencv_dnn.hpp`](https://github.com/opencv/opencv/blob/4.x/modules/dnn/misc/python/pyopencv_dnn.hpp) Updates: - Add `LayerProtocol` to `cv2/dnn/__init__.pyi`: ```python class LayerProtocol(Protocol): def __init__( self, params: dict[str, DictValue], blobs: typing.Sequence[cv2.typing.MatLike] ) -> None: ... def getMemoryShapes( self, inputs: typing.Sequence[typing.Sequence[int]] ) -> typing.Sequence[typing.Sequence[int]]: ... def forward( self, inputs: typing.Sequence[cv2.typing.MatLike] ) -> typing.Sequence[cv2.typing.MatLike]: ... ``` - Add `dnn_registerLayer` function to `cv2/__init__.pyi`: ```python def dnn_registerLayer(layerTypeName: str, layerClass: typing.Type[LayerProtocol]) -> None: ... ``` - Add `dnn_unregisterLayer` function to `cv2/__init__.pyi`: ```python def dnn_unregisterLayer(layerTypeName: str) -> None: ... ``` ### 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. - [x] The feature is well documented and sample code can be built with the project CMake
Numeric truncation at `tif_dirread.c:4386`
Update opencv dnn to support cann version >=6.3 opencv#23936 1.modify the search path of "libopsproto.so" in OpenCVFindCANN.cmake 2.add the search path of "libgraph_base.so" in OpenCVFindCANN.cmake 3.automatic check Ascend socVersion,and test on Ascend310/Ascend310B/Ascend910B well
PReLU with element-wise scales opencv#24056 ### Pull Request Readiness Checklist resolves opencv#24051 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
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
PR 22371 is not propagated here to 5.x, so it should be properly noted in the description with PRs list like:
#23971 from asmorkalov:as/ci-ubuntu-2204
and added label "port to 5.x is needed"
for such PR.
satysfying
typo is not ported from #23900
To avoid such mistakes 3 steps strategy "merge partially", "force manual merge", "merge to accept manual changes" should be done in a short period of time (to avoid intermediate PRs). Current pipeline has 6 weeks timeline gap.
Following changes in CI: opencv/ci-gha-workflow#110 |
@opencv-alalek I fixed missing typos. Ubuntu 22.04 pipelines are ready. I'll add them to Actions, when the PR is merged. |
0e22d08
to
47188b7
Compare
😮💨 Look like I'm late with the MSVC warning fix: #24087 🙂 |
Extra: opencv/opencv_extra#1079
Conrib: opencv/opencv_contrib#3538
#18498 from firebladed:patch-1
#22798 from lamm45:distransform-large
#23540 from cudawarped:add_CAP_PROP_CODEC_FOURCC
#23647 from AleksandrPanov:fix_charuco_board_detect
#23664 from asmorkalov:as/solveLP_infeasible
#23692 from asmorkalov:as/ffmpeg_fps_3.4
#23702 from dkurt:py_rotated_rect
#23724 from dkurt:java_without_ant
#23729 from asmorkalov:as/create_samples_overflow
#23754 from dkurt:remap_linear_transparent
#23768 from opencv-pushbot:gitee/alalek/issue_23156
#23796 from TolyaTalamanov:at/align-ie-backend-with-latest-openvino
#23799 from TolyaTalamanov:at/ov20-backend-implement-missing-kernels
#23801 from VadimLevin:dev/vlevin/python-stubs-api-refinement
#23809 from VadimLevin:dev/vlevin/re-export-stubs-submodules
#23812 from dizcza:tbb
#23813 from VadimLevin:dev/vlevin/runtime-typing-module
#23815 from LaurentBerger:CAP_IMAGES
#23816 from VadimLevin:dev/vlevin/export-all-caps-enum-constants
#23819 from asmorkalov:as/objdetect_no_dnn
#23821 from asmorkalov:as/python_types_extra_imports
#23825 from ulvido:4.x
#23829 from fengyuentau:fixes4orbbec
#23831 from asmorkalov:update_version_3.4.20-pre
#23832 from asmorkalov:as/reshape_docs
#23833 from asmorkalov:update_version_4.8.0-pre
#23835 from VadimLevin:dev/vlevin/fix-ast-nodes-required-usage-imports
#23838 from VadimLevin:dev/vlevin/numpy-array-typing
#23841 from asmorkalov:as/ffmpeg_update_3.4
#23842 from opencv-pushbot:gitee/alalek/fix_static_build_with_gapi_openvino
#23843 from TolyaTalamanov:at/fix-missing-opaque-kind-for-kernel
#23846 from asmorkalov:as/ffmpeg_update_4.x
#23848 from AleksandrPanov:fix_detectDiamonds_api
#23853 from fengyuentau:disable_fp16_warning
#23855 from thekpaul:3.4_patched
#23859 from TolyaTalamanov:at/ov-backend-core-wa
#23860 from fengyuentau:fix_overflow_sigmoid_v3.4
#23863 from asmorkalov:as/calibrate_py_rework
#23881 from asmorkalov:as/fast_math_nan
#23884 from TolyaTalamanov:at/fix-async-infer-ov-backend
#23885 from hanliutong:UniversalIntrinsicRewriter
#23892 from vrabaud:compile_fix
#23896 from mshabunin:test-cap-images
#23900 from kai-waang:fixing-typo
#23901 from kai-waang:remove-duplicated
#23909 from asmorkalov:as/exclude_3.4
#23914 from AleksandrPanov:update_aruco_byteList_docs
#23918 from kallaballa:custom_package_name
#23920 from loongson-zn:4.x
#23922 from vrabaud:imgwarp
#23924 from ocpalo:patch-2
#23927 from Avasam:partially-unknown-mat
#23928 from Avasam:Add-missing-properties-to-error-class
#23931 from asmorkalov:as/drawing_overflow
#23936 from SaltFish-T:4.x
#23938 from mshabunin/fix-warnings-gcc
#23940 from mshabunin:fix-cap-images
#23943 from vrabaud:avif_tsan
#23944 from mshabunin:test-v4l2
#23952 from zihaomu:fix_depth_conv_5x5
#23954 from VadimLevin:dev/vlevin/matrix-type-constants-stubs
#23955 from VadimLevin:dev/vlevin/overload-presence-check-fix
#23956 from VadimLevin:dev/vlevin/recursive-re-export-submodules
#23958 from VadimLevin:dev/vlevin/friendly-wrong-npy-type-message
#23963 from opencv-pushbot:gitee/alalek/fixup_23842
#23966 from hanliutong:popcount
#23967 from YusukeKameda:4.x
#23968 from mshabunin:doc-env
#23969 from asmorkalov:as/python2_test_fix
#23970 from mshabunin:fix-v4l-test
#23972 from Avasam:partially-unknown-mat
#23973 from mshabunin:riscv-unaligned-access
#23986 from headshog:fix-numtrunc
#23991 from buyuer:4.x
#23999 from asmorkalov:as/opencv_logging
#24001 from legrosbuffle:legrosbuffle-cvround-intrinsic
#24003 from cudawarped:cuda_fix_skip_test_exception
#24004 from dkurt:tflite_new_layers
#24008 from iarspider:patch-1
#24022 from VadimLevin:dev/vlevin/python-typing-cuda
#24023 from VadimLevin:dev/vlevin/python-typing-magic-constants
#24024 from TolyaTalamanov:at/add-onnx-openvino-execution-provider
#24026 from VadimLevin:dev/vlevin/python-numpy-writeable-flag-check
#24028 from VadimLevin:dev/vlevin/fix-flann-python-bindings
#24029 from VadimLevin:dev/vlevin/python-add-cuda-stream-to-simple-types
#24032 from vrabaud:ubsan
#24040 from asmorkalov:as/cuda_dnn_eps_fix
#24042 from vrabaud:circle
#24043 from zixianweei:use-vaddq_f32-on-arm64
#24045 from TolyaTalamanov:at/add-onnx-directml-execution-provider
#24046 from VadimLevin:dev/vlevin/add-cuda-gpu-mat-to-big-types
#24054 from mwangistan:4.x
#24055 from asmorkalov:as/msvc_cxx20_warning_disable
#24056 from dkurt:eltwise_prelu
#24061 from VadimLevin:dev/vlevin/python-typing-highgui-refinement
#24062 from VadimLevin:dev/vlevin/python-typing-redirect-error
#24066 from VadimLevin:dev/vlevin/python-typing-register-dnn-layer
#23971 from asmorkalov:as/ci-ubuntu-2204Previous "Merge 4.x": #23979