![]() |
NDEVR
API Documentation
|
Computes a Sim3 transformation between two keyframes using RANSAC. More...
Public Member Functions | |
| EIGEN_MAKE_ALIGNED_OPERATOR_NEW | Sim3Solver (KeyFrame *pKF1, KeyFrame *pKF2, const Buffer< MapPoint * > &vpMatched12, const bool bFixScale=true, const Buffer< KeyFrame * > vpKeyFrameMatchedMP=Buffer< KeyFrame * >()) |
| Constructs the Sim3 solver. | |
| Eigen::Matrix4f | find (Buffer< bool > &vbInliers12, uint04 &nInliers) |
| Finds the best Sim3 transformation using RANSAC. | |
| Eigen::Matrix3f | GetEstimatedRotation () |
| Returns the estimated rotation matrix. | |
| float | GetEstimatedScale () |
| Returns the estimated scale factor. | |
| Eigen::Matrix4f | GetEstimatedTransformation () |
| Returns the estimated transformation matrix. | |
| Eigen::Vector3f | GetEstimatedTranslation () |
| Returns the estimated translation vector. | |
| Eigen::Matrix4f | iterate (uint04 nIterations, bool &bNoMore, Buffer< bool > &vbInliers, uint04 &nInliers) |
| Runs a fixed number of RANSAC iterations. | |
| Eigen::Matrix4f | iterate (uint04 nIterations, bool &bNoMore, Buffer< bool > &vbInliers, uint04 &nInliers, bool &bConverge) |
| Runs a fixed number of RANSAC iterations with convergence check. | |
| void | setRansacParameters (fltp04 probability=0.99f, uint04 minInliers=6, uint04 maxIterations=300) |
| Sets RANSAC parameters. | |
Computes a Sim3 transformation between two keyframes using RANSAC.
Used in loop closing to compute the similarity transformation between matched keyframes, handling scale differences in monocular SLAM.
Definition at line 38 of file Sim3Solver.h.
Finds the best Sim3 transformation using RANSAC.
| [out] | vbInliers12 | Inlier flags per match. |
| [out] | nInliers | Number of inliers found. |
| Eigen::Matrix3f Sim3Solver::GetEstimatedRotation | ( | ) |
Returns the estimated rotation matrix.
| float Sim3Solver::GetEstimatedScale | ( | ) |
Returns the estimated scale factor.
| Eigen::Matrix4f Sim3Solver::GetEstimatedTransformation | ( | ) |
Returns the estimated transformation matrix.
| Eigen::Vector3f Sim3Solver::GetEstimatedTranslation | ( | ) |
Returns the estimated translation vector.
| Eigen::Matrix4f Sim3Solver::iterate | ( | uint04 | nIterations, |
| bool & | bNoMore, | ||
| Buffer< bool > & | vbInliers, | ||
| uint04 & | nInliers ) |
Runs a fixed number of RANSAC iterations.
| [in] | nIterations | Number of iterations to run. |
| [out] | bNoMore | True if all iterations have been exhausted. |
| [out] | vbInliers | Inlier flags per match. |
| [out] | nInliers | Number of inliers. |
| Eigen::Matrix4f Sim3Solver::iterate | ( | uint04 | nIterations, |
| bool & | bNoMore, | ||
| Buffer< bool > & | vbInliers, | ||
| uint04 & | nInliers, | ||
| bool & | bConverge ) |
Runs a fixed number of RANSAC iterations with convergence check.
| [in] | nIterations | Number of iterations to run. |
| [out] | bNoMore | True if all iterations have been exhausted. |
| [out] | vbInliers | Inlier flags per match. |
| [out] | nInliers | Number of inliers. |
| [out] | bConverge | True if the solution has converged. |
| void Sim3Solver::setRansacParameters | ( | fltp04 | probability = 0.99f, |
| uint04 | minInliers = 6, | ||
| uint04 | maxIterations = 300 ) |
Sets RANSAC parameters.
| [in] | probability | Success probability. |
| [in] | minInliers | Minimum inlier count. |
| [in] | maxIterations | Maximum RANSAC iterations. |