Commit Graph

36388 Commits

Author SHA1 Message Date
Ismail Abou Zeid
d1da626502 Merge pull request #28023 from ismailabouzeidx:feat/estimate-translation2d-5x
[3d] Port estimateTranslation2D into 5.x #28023

Merge with opencv_extra PR: opencv/opencv_extra#1290

This PR ports the newly added function `estimateTranslation2D` that was merged into 4.x under this PR: opencv/opencv#27950

The implementation is now adapted to the 5.x branch and integrates cleanly with the updated refinement API.
Specifically, this 5.x version makes use of the improved LevMarq interface to support optional non-linear refinement of the translation parameters.

Functionality, tests, and documentation follow the same design and behavior as the original 4.x PR.
Further details can be found in the linked PR above.

### 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
- [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
2025-11-17 08:51:58 +03:00
Abhishek Gola
b8c9c070ea Merge pull request #27894 from abhishek-gola:affine_layer_add
Added affine grid layer to new DNN engine #27894

### 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
2025-11-11 16:36:08 +03:00
Abhishek Gola
21b2c91814 Merge pull request #27941 from abhishek-gola:dft_layer_add
Added DFT layer to new DNN engine #27941

### 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
2025-11-11 13:28:24 +03:00
Alexander Smorkalov
1d7411e0f0 Merge branch 4.x 2025-11-05 14:58:16 +03:00
abhijeetraj10-web
2f22bdf477 Merge pull request #27959 from abhijeetraj10-web:fix-patchNaNs-doc
Clarified supported types in cv::patchNaNs() documentation #27959

### 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

Updated the docs for cv::patchNaNs() to specify that both CV_32F and CV_64F types are supported. Fixes incomplete information.
2025-11-05 14:42:12 +03:00
Alexander Smorkalov
d3d247f1e3 Merge pull request #27962 from Tuchis:fix-fisheye-documentation
Remove mention of 'tangential lens distortion' from fisheye documentation.
2025-11-05 12:22:45 +03:00
Alexander Smorkalov
ec60a98ac6 Merge pull request #27963 from vrabaud:js
Fix generation when returned class and function are in a namespace
2025-11-05 11:10:36 +03:00
Vincent Rabaud
f984d3bdc7 Fix generation when returned class and function are in a namespace
This is to fix js generation at HEAD with ximgproc.
2025-11-04 11:17:29 +01:00
Vladyslav Humennyy
f692304c29 Remove mention of 'tangential lens distortion' from fisheye documentation.
In `fisheye::initUndistortRectifyMap` states, that the function 'compensate radial and tangential lens distortion'. But in fact, fisheye camera model in OpenCV does not uses tangential distortion. It uses only radial distortions, with 4 distortion k_1, k_2, k_3, k_4, which all are radial. In the code of the function all of those koeficients indeed are used as radial lens distortion coefficients. Possible reason of that issue is similar documentation of pinhole camera, that as first four coefficients uses 2 radial and 2 tangential lens distortion coefficients - k_1, k_2, p_1, p_2.
2025-11-04 11:16:59 +02:00
Alexander Smorkalov
01f9bdae4c Merge pull request #27723 from fanchenkong1:fastconv-wasm-scalar-opt
DNN: Add large scalar fastconv kernel for WASM/no-SIMD build
2025-10-31 22:50:41 +03:00
Alexander Smorkalov
5c73895cba Merge pull request #27949 from cudawarped:fix_cudart_dependency
[cuda] Add cudart target to all modules which use CUDA
2025-10-31 22:43:45 +03:00
Abhishek Gola
e9298fb73e Merge pull request #27902 from abhishek-gola:onehot_layer_add
Added Onehot layer support to new DNN engine #27902

### 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
2025-10-30 22:21:14 +03:00
Alexander Smorkalov
3516c57c81 Merge pull request #27944 from DDmytro:ecc-sanity-update
perf(video): add sanity checks and update ECC baselines for grayscale and color inputs.
2025-10-30 22:16:27 +03:00
Mahi Dhiman
c8eafa3ee4 Merge pull request #27937 from mahidhiman12:5.x
Update documentation for Mat_ constructor to clarify vector behavior #27937

This PR updates the documentation comment for the constructor:

`explicit Mat_(const std::vector<_Tp>& vec, bool copyData=false);`
The original docstring stated that this constructor creates a matrix with a single column. However, in OpenCV version 5.x, this constructor now creates a matrix with a single row and the number of columns equal to the size of the vector.

This change clarifies the behavior for users migrating to or working with OpenCV 5.x and reduces confusion due to the discrepancy between documented and actual matrix shape.

This PR addresses GitHub issue #27862.

### 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
- [ ] 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
2025-10-30 16:15:28 +03:00
Alexander Smorkalov
27ac5f0cc6 Merge pull request #27942 from abhishek-gola:extended_gridsample_layer
Extended gridsample layer
2025-10-30 16:13:21 +03:00
Alexander Smorkalov
0c10aecacd Merge pull request #27945 from MaximSmolskiy:add_comments_for_undistortPoints
Add comments for undistortPoints
2025-10-30 16:11:11 +03:00
Alexander Smorkalov
c69e20a495 Merge pull request #27948 from vrabaud:c_headers
Get code to compile without FFmpeg's libavdevice
2025-10-30 16:10:13 +03:00
cudawarped
6adb985679 [cuda] Add cudart to all modules which use it 2025-10-28 17:26:13 +02:00
Alexander Smorkalov
d7f6201219 Merge pull request #27939 from Kumataro:fix27938
openexr: suppress -Wnontrivial-memcall warnings
2025-10-28 13:31:03 +03:00
Vincent Rabaud
3a4a88c116 Get code to compile without FFMPEG's libavdevice 2025-10-28 10:46:47 +01:00
MaximSmolskiy
2faff661c6 Add comments for undistortPoints 2025-10-28 03:13:16 +03:00
Dmytro Dadyka
37497fa2e3 perf(video): add sanity checks and update ECC baselines for grayscale and color inputs 2025-10-28 01:35:26 +02:00
Abhishek Gola
473c250831 Extended gridsample layer 2025-10-27 18:35:59 +05:30
Kumataro
f836f67203 openexr: suppress -Wnontrivial-memcall warnings 2025-10-26 10:01:40 +09:00
Alexander Smorkalov
52393156c8 Merge pull request #27524 from DDmytro:multichannel_ecc
Extend findTransformECC and computeECC to support multichannel input (1 or 3 channels)
2025-10-24 11:24:15 +03:00
Stefan Dragnev
12b64b0e2a Merge pull request #27927 from tailsu:tailsu/tiff-error-handler
tiff: use a per-TIFF error handler #27927

libtiff 4.5 introduced [per-TIFF error handlers](https://libtiff.gitlab.io/libtiff/functions/TIFFOpenOptions.html). This PR removes the global OpenCV error handlers and uses per-handle error handlers. This reduces any risks associated with modifying global state, e.g. if another library also tries to set the global error handlers and OpenCV clobbers them.

### 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
2025-10-23 13:38:10 +03:00
Alexander Smorkalov
14eb474a75 Merge pull request #27932 from asmorkalov:as/pylint_fix
Pylint warnings fix in the new visualization sample.
2025-10-23 12:34:07 +03:00
Alexander Smorkalov
82fe39760a Pylint warnings fix in the new visualization sample. 2025-10-23 10:22:46 +03:00
Alexander Smorkalov
98bf72b319 Merge branch 4.x 2025-10-23 08:11:04 +03:00
Alexander Smorkalov
09c893477e Merge pull request #27443 from ritamelo06:gapi-feature
feat: G-API: Custom stream sources in Python (#27276)
2025-10-21 12:59:06 +03:00
WU Jia
90a73210fc Merge pull request #26382 from kaingwade:annoy_build_parallel
Build Annoy index in parallel #26382

#26287 raised the C++ standard, and Annoy's multi-threaded index building can be enabled now.
2025-10-21 12:37:13 +03:00
Jay Pol
47d71530a7 Merge pull request #27866 from JayPol559:4.x
Fix HDR tutorial result mismatch by adding gamma note #27866

This PR fixes #22219 by clarifying the gamma correction value in the HDR tutorial.

The function cv.createTonemap() has a default gamma value of 1.0. To match the tutorial example results, gamma should be explicitly set to 2.2. This note has been added to the Tonemap HDR image section of the tutorial.
2025-10-21 12:30:58 +03:00
Alexander Smorkalov
543e9ed010 Merge pull request #27926 from MaximSmolskiy:add_comments_for_fisheye_undistortPoints
Add comments for fisheye::undistortPoints
2025-10-21 08:16:38 +03:00
MaximSmolskiy
b65d66e797 Add comments for fisheye::undistortPoints 2025-10-21 04:56:22 +03:00
Alexander Smorkalov
50cd7b8b4b Merge pull request #27923 from cudawarped:move_throw_no_cuda_to_stub
[core][cuda] Move throw_no_cuda to it an independant stub
2025-10-20 19:54:28 +03:00
Alexander Smorkalov
53a96cdc0b Merge pull request #27922 from Kumataro:fix27921
imgcodecs: GDAL: show GDAL version at OpenCV configuration
2025-10-20 16:18:58 +03:00
Alexander Smorkalov
fa276bba3d Merge pull request #27919 from Kumataro:fix27830
imgcodecs: Workaround for image flipping bug in older GDAL FITS drivers
2025-10-20 15:18:25 +03:00
cudawarped
ff216e8796 [core][cuda] Move throw_no_cuda to it an independant stub so it is not included in the same file that requires cudart 2025-10-20 13:10:23 +03:00
Kumataro
346308124a imgcodecs: GDAL: show GDAL version at OpenCV configuration 2025-10-20 18:37:04 +09:00
Alexander Smorkalov
11422da957 Merge pull request #27920 from MaximSmolskiy:support_qr_decomposition_for_stereoCalibrate
Support QR decomposition for stereoCalibrate
2025-10-20 09:49:12 +03:00
Skreg
0fb49827c1 Merge pull request #27627 from shyama7004:multicamVis
Visualization script for one or more cameras calibration with calibration.cpp #27627

* It reads one or more YAML files produced by `calibration.cpp`.
* displays an interactive 3D scene of the calibration setup with camera frustums and board meshes.
* Supports both **camera-centric** and **board-centric** views.
* exports the entire scene as a `.obj/.mtl` for use in meshlab.
* also includes an error bar plot and frustum highlighting for single-camera setups.

calibration results generated by `calibration.cpp`: https://drive.google.com/drive/folders/13NvZHaxTFdAB-bzlNve8kKSMIg9gAu6K

Results Uploaded at: https://drive.google.com/drive/folders/1fkFyoBRGcNY4UCQhGgadO6uKlAkrzjTe
### 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
2025-10-20 08:42:06 +03:00
Alexander Smorkalov
70d69d07c8 Merge pull request #27914 from MaximSmolskiy:refactor_minEnclosingCircle
Refactor minEnclosingCircle
2025-10-20 08:40:28 +03:00
Kumataro
879218500d Merge pull request #27918 from Kumataro:fix26899_5.x
core: support 16 bit LUT for 5.x #27918

Porting from https://github.com/opencv/opencv/pull/27890
Porting from https://github.com/opencv/opencv/pull/27911 

And support new OpenCV5 types for 16 bit LUT.

### 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
2025-10-20 08:30:28 +03:00
MaximSmolskiy
455720aae8 Support QR decomposition for stereoCalibrate 2025-10-19 19:34:13 +03:00
Kumataro
75f738b3d1 imgcodecs: Workaround for image flipping bug in older GDAL FITS drivers 2025-10-19 15:38:00 +09:00
Alexander Smorkalov
cb8f398a87 Merge pull request #27915 from MaximSmolskiy:fix_ml_kdtree_findNearest
Fix ml::KDTree::findNearest
2025-10-17 12:01:12 +03:00
Dmitry Kurtaev
f1a99760ad Merge pull request #27841 from dkurt:ffmpeg_camera
Open camera device by index through FFmpeg #27841

### Pull Request Readiness Checklist

resolves https://github.com/opencv/opencv/issues/26812

Example of explicit backend option (similar to `-f v4l2` from command line)
```
export OPENCV_FFMPEG_CAPTURE_OPTIONS="f;v4l2"
```
see https://trac.ffmpeg.org/wiki/Capture/Webcam for available options

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
2025-10-17 10:23:24 +03:00
MaximSmolskiy
98a12515fe Fix ml::KDTree::findNearest 2025-10-16 22:58:55 +03:00
MaximSmolskiy
e45d07e95b Refactor minEnclosingCircle 2025-10-16 22:18:39 +03:00
Alexander Smorkalov
cc400acefe Merge pull request #27912 from asmorkalov:as/save_board_size
Save board size in multiview calibration report for further visualization.
2025-10-16 19:21:23 +03:00