Main MRPT website > C++ reference for MRPT 1.4.0
List of all members | Public Member Functions | Private Attributes
mrpt::pbmap::ConsistencyTest Class Reference

Detailed Description

This class computes the rigid transformation between two sets of matched planes, and provides a measure of their rigid adjustment

Definition at line 33 of file ConsistencyTest.h.

#include <mrpt/pbmap/ConsistencyTest.h>

Public Member Functions

 ConsistencyTest (PbMap &PBM_source, PbMap &PBM_target)
 
double calcAlignmentError (std::map< unsigned, unsigned > &matched_planes, Eigen::Matrix4f &rigidTransf)
 ! Get diamond of points around the center. More...
 
Eigen::Matrix4f initPose (std::map< unsigned, unsigned > &matched_planes)
 
Eigen::Matrix4f estimatePose (std::map< unsigned, unsigned > &matched_planes)
 
bool estimatePoseWithCovariance (std::map< unsigned, unsigned > &matched_planes, Eigen::Matrix4f &rigidTransf, Eigen::Matrix< float, 6, 6 > &covarianceM)
 
Eigen::Matrix4f initPose2D (std::map< unsigned, unsigned > &matched_planes)
 
Eigen::Matrix4f getRTwithModel (std::map< unsigned, unsigned > &matched_planes)
 
Eigen::Matrix4f estimatePoseRANSAC (std::map< unsigned, unsigned > &matched_planes)
 

Private Attributes

PbMapPBMSource
 
PbMapPBMTarget
 
std::map< unsigned, unsigned > matched_planes
 

Constructor & Destructor Documentation

mrpt::pbmap::ConsistencyTest::ConsistencyTest ( PbMap PBM_source,
PbMap PBM_target 
)

Constructor

Member Function Documentation

double mrpt::pbmap::ConsistencyTest::calcAlignmentError ( std::map< unsigned, unsigned > &  matched_planes,
Eigen::Matrix4f &  rigidTransf 
)

! Get diamond of points around the center.

This is used to calculate the adjustment error with a model plane

Calculate the alignment error between two sets of matched planes. The input rigid transformation "se3rigidTransfInv" is used to project the centroids of one set of planes into their matched planes and returns the sum of cuadratic distances

Eigen::Matrix4f mrpt::pbmap::ConsistencyTest::estimatePose ( std::map< unsigned, unsigned > &  matched_planes)
Eigen::Matrix4f mrpt::pbmap::ConsistencyTest::estimatePoseRANSAC ( std::map< unsigned, unsigned > &  matched_planes)
bool mrpt::pbmap::ConsistencyTest::estimatePoseWithCovariance ( std::map< unsigned, unsigned > &  matched_planes,
Eigen::Matrix4f &  rigidTransf,
Eigen::Matrix< float, 6, 6 > &  covarianceM 
)
Eigen::Matrix4f mrpt::pbmap::ConsistencyTest::getRTwithModel ( std::map< unsigned, unsigned > &  matched_planes)

Return the estimated rigid transformation which aligns two matched subgraphs (i.e. neighborhoods of planes). This function iteratively minimizes the alignment error of the matched planes wrt the rigid transformation.

Eigen::Matrix4f mrpt::pbmap::ConsistencyTest::initPose ( std::map< unsigned, unsigned > &  matched_planes)

Return an initial guess for the rigid transformation which aligns two matched places. The translation is calculated from the planes centroids and the rotation from the alignment of the plane's normals.

Eigen::Matrix4f mrpt::pbmap::ConsistencyTest::initPose2D ( std::map< unsigned, unsigned > &  matched_planes)

Return an initial guess for the rigid transformation which aligns two matched places. The translation is calculated from the planes centroids and the rotation from the alignment of the plane's normals. A planar movement is assumed (wheeled robot)

Member Data Documentation

std::map<unsigned, unsigned> mrpt::pbmap::ConsistencyTest::matched_planes
private

List of pairs of matched planes from the PbMaps PBMSource with those from PBMTarget

Definition at line 77 of file ConsistencyTest.h.

PbMap& mrpt::pbmap::ConsistencyTest::PBMSource
private

One of the subgraphs matched by SubgraphMatcher.

Definition at line 71 of file ConsistencyTest.h.

PbMap& mrpt::pbmap::ConsistencyTest::PBMTarget
private

The other subgraph matched by SubgraphMatcher.

Definition at line 74 of file ConsistencyTest.h.




Page generated by Doxygen 1.8.11 for MRPT 1.4.0 SVN:Unversioned directory at Mon Jul 4 10:31:07 UTC 2016