23#include <opencv2/opencv.hpp>
24#include "Base/Headers/Buffer.hpp"
26#include "OrbSLAM/Headers/KeyFrame.h"
41 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
103 void ComputeCentroid(Eigen::Matrix3f &P, Eigen::Matrix3f &Pr, Eigen::Vector3f &C);
105 void ComputeSim3(Eigen::Matrix3f &P1, Eigen::Matrix3f &P2);
134 Eigen::Matrix3f mR12i;
135 Eigen::Vector3f mt12i;
137 Eigen::Matrix4f mT12i;
138 Eigen::Matrix4f mT21i;
146 Eigen::Matrix4f mBestT12;
147 Eigen::Matrix3f mBestRotation;
148 Eigen::Vector3f mBestTranslation;
149 float mBestScale = 0.0f;
152 bool mbFixScale =
false;
162 fltp04 mRansacProb = 0.0f;
165 uint04 mRansacMinInliers = 0;
172 float mSigma2 = 0.0f;
The equivelent of std::vector but with a bit more control.
Abstract interface for geometric camera models (pinhole, fisheye, etc.).
A keyframe in the SLAM map, derived from Frame.
Eigen::Matrix4f iterate(uint04 nIterations, bool &bNoMore, Buffer< bool > &vbInliers, uint04 &nInliers, bool &bConverge)
Runs a fixed number of RANSAC iterations with convergence check.
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 GetEstimatedTransformation()
Returns the estimated transformation matrix.
void setRansacParameters(fltp04 probability=0.99f, uint04 minInliers=6, uint04 maxIterations=300)
Sets RANSAC parameters.
Eigen::Vector3f GetEstimatedTranslation()
Returns the estimated translation vector.
Eigen::Matrix3f GetEstimatedRotation()
Returns the estimated rotation matrix.
Eigen::Matrix4f iterate(uint04 nIterations, bool &bNoMore, Buffer< bool > &vbInliers, uint04 &nInliers)
Runs a fixed number of RANSAC iterations.
float GetEstimatedScale()
Returns the estimated scale factor.
Eigen::Matrix4f find(Buffer< bool > &vbInliers12, uint04 &nInliers)
Finds the best Sim3 transformation using RANSAC.
The primary namespace for the NDEVR SDK.
float fltp04
Defines an alias representing a 4 byte floating-point number Bit layout is as follows: -Sign: 1 bit a...
uint32_t uint04
-Defines an alias representing a 4 byte, unsigned integer -Can represent exact integer values 0 throu...