opencv/modules/calib3d
Manolis Lourakis 8d0fbc6a1e
Merge pull request #21702 from mlourakis:4.x
Fixes and optimizations for the SQPnP solver

* Fixes and optimizations

- optimized the calculation of qa_sum by moving equal elements outside the loop
- unrolled copying of the lower triangle of omega
- substituted SVD with eigendecomposition in the factorization of omega (2-3 times faster)
- fixed the initialization of lambda in FOAM
- added a cheirality test that checks a solution on all 3D points rather than on their mean. The old test rejected valid poses in some cases
- fixed some typos & errors in comments

* reverted to SVD

Eigen decomposition seems to yield larger errors in certain tests, reverted to SVD

* nearestRotationMatrixSVD

Added nearestRotationMatrixSVD()
Previous nearestRotationMatrix() renamed to nearestRotationMatrixFOAM() and reverts to nearestRotationMatrixSVD() for singular matrices

* fixed checks order

Fixed the order of checks in PoseSolver::solveInternal()
2022-05-13 18:11:14 +00:00
..
doc Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2021-12-24 16:48:07 +00:00
include/opencv2 Merge pull request #21931 from victor1234:calib3d-add-undistortImagePoints 2022-05-12 08:56:58 +00:00
misc Swift native in/out array handling 2020-09-03 21:31:11 +09:00
perf Merge pull request #21841 from victor1234:calib3d-undistortPoints-tests 2022-04-19 18:07:34 +00:00
src Merge pull request #21702 from mlourakis:4.x 2022-05-13 18:11:14 +00:00
test Merge pull request #21937 from Kumataro:4.x-fix-21911 2022-05-13 17:32:05 +00:00
CMakeLists.txt Merge pull request #17683 from ivashmak:homography 2020-08-14 22:42:26 +00:00