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()
Add undistortImagePoints function
* Add undistortImagePoints function
undistortPoints has unclear interface and additional functionality. New function computes only undistorted image points position
* Add undistortImagePoints test
* Add TermCriteria
* Fix layout
Added workflow for Github Actions to build and test OpenCV on Windows for 3.4 branch
* Added workflow for Github Actions to build and test OpenCV on Windows
* Updated Github Actions for 3.4 branch on Windows using self-hosted runner
* Fixed url for a fork in Windows workflow (3.4 branch)
* opencv_extra fork usage in Github Actions
Added workflow for Github Actions to build and test OpenCV on Linux for 4.x
* Added workflow for Github Actions to build and test OpenCV
* Merged a build and tests jobs into one, split tests by steps, renamed job names
Added workflow for Github Actions to build and test OpenCV on Linux
* Added workflow for Github Actions to build and test OpenCV
* Merged a build and tests in one job, changed naming
* Renamed job names, split workflows by branch, removed and added some cmake flags, save unit tests results as a html file
* Split tests by steps, removed workflows for 4.x and 5.x branches
Add distort/undistort test for fisheye::undistortPoints()
* Add distort/undistort test for fisheye::undistortPoints()
Lack of test has allowed error described in 19138 to be unnoticed.
In addition to random points, four corners and principal center
added to point set
* Add random distortion coefficients set
* Move undistortPoints test to google test, refactor
* Add fisheye::undistortPoints() perf test
* Add negative distortion coefficients to undistortPoints test, increase value
* Move to theRNG()
* Change test check from cvtest::norm(L2) to EXPECT_MAT_NEAR()
* Layout fix
* Add points number parameters, comments