opencv/modules/calib3d/src
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
..
opencl
usac Merge pull request #21166 from rayonnant14:issue_21105 2021-12-13 17:12:49 +00:00
ap3p.cpp Merge pull request #20392 from fpetrogalli:aarch64-semihosting 2021-07-21 18:46:05 +03:00
ap3p.h
calib3d_c_api.h
calibinit.cpp Merge pull request #21937 from Kumataro:4.x-fix-21911 2022-05-13 17:32:05 +00:00
calibration_handeye.cpp
calibration.cpp Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2021-12-03 12:32:49 +00:00
checkchessboard.cpp Merge pull request #19565 from cyyever:minor_fix 2021-03-05 15:04:51 +00:00
chessboard.cpp build: eliminate build warnings 2021-08-29 09:18:21 +00:00
chessboard.hpp
circlesgrid.cpp Merge pull request #19565 from cyyever:minor_fix 2021-03-05 15:04:51 +00:00
circlesgrid.hpp
compat_ptsetreg.cpp Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2021-12-03 12:32:49 +00:00
distortion_model.hpp
dls.cpp Merge pull request #21405 from h6197627:3.4 2022-01-10 14:51:07 +03:00
dls.h Merge pull request #21405 from h6197627:3.4 2022-01-10 14:51:07 +03:00
epnp.cpp
epnp.h
fisheye.cpp Merge pull request #21834 from victor1234:issue-19138_add_termcriteria_to_fisheye_undistortpoints 2022-04-16 17:59:53 +00:00
fisheye.hpp
five-point.cpp Merge pull request #20636 from thezane:recoverPoseFromDifferentCameras 2021-09-25 17:42:12 +00:00
fundam.cpp Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2021-04-08 11:23:24 +00:00
homography_decomp.cpp
ippe.cpp
ippe.hpp
levmarq.cpp
main.cpp
p3p.cpp
p3p.h
polynom_solver.cpp Merge pull request #19583 from theroyalpekka:patch-1 2021-03-05 13:55:52 +00:00
polynom_solver.h
posit.cpp
precomp.hpp
ptsetreg.cpp add estimateAffine3D overload that implements Umeyama's algorithm 2021-04-28 11:33:48 +02:00
quadsubpix.cpp
rho.cpp
rho.h
solvepnp.cpp Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2022-01-12 13:26:10 +00:00
sqpnp.cpp Merge pull request #21702 from mlourakis:4.x 2022-05-13 18:11:14 +00:00
sqpnp.hpp Merge pull request #21702 from mlourakis:4.x 2022-05-13 18:11:14 +00:00
stereobm.cpp Merge pull request #19685 from danbey:setting_stereoBMImpl_in_init_list 2021-03-07 20:06:08 +03:00
stereosgbm.cpp Init params (StereoSGBMParams) in StereoSGBMImpl constructor initialization list 2021-03-10 13:05:35 -05:00
triangulate.cpp
undistort.dispatch.cpp Merge pull request #21931 from victor1234:calib3d-add-undistortImagePoints 2022-05-12 08:56:58 +00:00
undistort.simd.hpp
upnp.cpp
upnp.h
usac.hpp Merge pull request #21166 from rayonnant14:issue_21105 2021-12-13 17:12:49 +00:00