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

Detailed Description

This class is used to explore the PbMap (or other previously acquired PbMaps) to find places observed previously (it has uses in e.g. place recognition or relocalization). PbMapLocaliser run its own thread, which is created at initialization.

Definition at line 40 of file PbMapLocaliser.h.

#include <mrpt/pbmap/PbMapLocaliser.h>

Public Member Functions

 PbMapLocaliser (PbMap &mPbM, const std::string &config_file)
 
 ~PbMapLocaliser ()
 

Public Attributes

std::vector< std::string > previousPbMapNames
 
std::vector< PbMappreviousPbMaps
 
size_t totalPrevPlanes
 
std::vector< unsigned > vQueueObservedPlanes
 
std::map< std::string, pcl::PointXYZ > foundPlaces
 
pcl::PointCloud< pcl::PointXYZRGBA >::Ptr alignedModelPtr
 
std::map< unsigned, std::vector< std::pair< double, int > > > evalColor
 

Protected Member Functions

void run ()
 
bool stop_pbMapLocaliser ()
 

Protected Attributes

mrpt::system::TThreadHandle pbMapLocaliser_hd
 
bool m_pbMapLocaliser_must_stop
 
bool m_pbMapLocaliser_finished
 

Private Member Functions

void LoadPreviousPbMaps (std::string fileMaps)
 
bool searchPlaneContext (Plane &searchPlane)
 
void compareSubgraphNeighbors (SubgraphMatcher &matcher)
 
double getAreaMatch ()
 

Private Attributes

PbMapmPbMap
 
SubgraphMatcher matcher
 
std::map< std::string, std::pair< int, double > > planeRecognitionLUT
 
unsigned bestMap
 
std::map< unsigned, unsigned > bestMatch
 
double score
 

Constructor & Destructor Documentation

◆ PbMapLocaliser()

mrpt::pbmap::PbMapLocaliser::PbMapLocaliser ( PbMap mPbM,
const std::string &  config_file 
)

Constructor.

◆ ~PbMapLocaliser()

mrpt::pbmap::PbMapLocaliser::~PbMapLocaliser ( )

Member Function Documentation

◆ compareSubgraphNeighbors()

void mrpt::pbmap::PbMapLocaliser::compareSubgraphNeighbors ( SubgraphMatcher matcher)
private

Search the 2nd order neighbors.

◆ getAreaMatch()

double mrpt::pbmap::PbMapLocaliser::getAreaMatch ( )
private

◆ LoadPreviousPbMaps()

void mrpt::pbmap::PbMapLocaliser::LoadPreviousPbMaps ( std::string  fileMaps)
private

Load previous PbMaps to search for previous places.

◆ run()

void mrpt::pbmap::PbMapLocaliser::run ( )
protected

This executes the PbMapLocaliser's thread

◆ searchPlaneContext()

bool mrpt::pbmap::PbMapLocaliser::searchPlaneContext ( Plane searchPlane)
private

Search the subgraph defined by a plane (neighborhood of 1-connected planes) in the rest of the PbMap or PbMaps aquired till the moment.

◆ stop_pbMapLocaliser()

bool mrpt::pbmap::PbMapLocaliser::stop_pbMapLocaliser ( )
protected

PbMapLocaliser's exit thread

Member Data Documentation

◆ alignedModelPtr

pcl::PointCloud<pcl::PointXYZRGBA>::Ptr mrpt::pbmap::PbMapLocaliser::alignedModelPtr

Point cloud of recognized place.

Definition at line 67 of file PbMapLocaliser.h.

◆ bestMap

unsigned mrpt::pbmap::PbMapLocaliser::bestMap
private

Best previous PbMap correspondence.

Definition at line 94 of file PbMapLocaliser.h.

◆ bestMatch

std::map<unsigned, unsigned> mrpt::pbmap::PbMapLocaliser::bestMatch
private

Best correspondence between pair of planes.

Definition at line 97 of file PbMapLocaliser.h.

◆ evalColor

std::map<unsigned, std::vector< std::pair<double,int> > > mrpt::pbmap::PbMapLocaliser::evalColor

Definition at line 69 of file PbMapLocaliser.h.

◆ foundPlaces

std::map<std::string, pcl::PointXYZ> mrpt::pbmap::PbMapLocaliser::foundPlaces

List of places where the system has been localised, keeping also the associated point cloud corresponding to the PbMap.

Definition at line 64 of file PbMapLocaliser.h.

◆ m_pbMapLocaliser_finished

bool mrpt::pbmap::PbMapLocaliser::m_pbMapLocaliser_finished
protected

PbMapLocaliser's stop var

Definition at line 117 of file PbMapLocaliser.h.

◆ m_pbMapLocaliser_must_stop

bool mrpt::pbmap::PbMapLocaliser::m_pbMapLocaliser_must_stop
protected

PbMapLocaliser's stop controller

Definition at line 114 of file PbMapLocaliser.h.

◆ matcher

SubgraphMatcher mrpt::pbmap::PbMapLocaliser::matcher
private

The matching object.

Definition at line 77 of file PbMapLocaliser.h.

◆ mPbMap

PbMap& mrpt::pbmap::PbMapLocaliser::mPbMap
private

The current PbMap.

Definition at line 74 of file PbMapLocaliser.h.

◆ pbMapLocaliser_hd

mrpt::system::TThreadHandle mrpt::pbmap::PbMapLocaliser::pbMapLocaliser_hd
protected

PbMapLocaliser's thread handle

Definition at line 108 of file PbMapLocaliser.h.

◆ planeRecognitionLUT

std::map<std::string, std::pair<int,double> > mrpt::pbmap::PbMapLocaliser::planeRecognitionLUT
private

List of places that have been matched, together with their plane correspondences.

Definition at line 83 of file PbMapLocaliser.h.

◆ previousPbMapNames

std::vector<std::string> mrpt::pbmap::PbMapLocaliser::previousPbMapNames

Vector to store the name of previous PbMaps (previous places).

Definition at line 49 of file PbMapLocaliser.h.

◆ previousPbMaps

std::vector<PbMap> mrpt::pbmap::PbMapLocaliser::previousPbMaps

Vector of vectors containing previous PbMaps.

Definition at line 52 of file PbMapLocaliser.h.

◆ score

double mrpt::pbmap::PbMapLocaliser::score
private

Score of the matched places.

Definition at line 100 of file PbMapLocaliser.h.

◆ totalPrevPlanes

size_t mrpt::pbmap::PbMapLocaliser::totalPrevPlanes

Vector to store the index of the floor plane for the previous PbMaps (-1 indicates that the floor was not detected).*‍/ // Mover a la clase PbMapLocaliser y montarlo en un define std::vector<int> vFloors;

/*!Number of planes of our search space.

Definition at line 58 of file PbMapLocaliser.h.

◆ vQueueObservedPlanes

std::vector<unsigned> mrpt::pbmap::PbMapLocaliser::vQueueObservedPlanes

observedPlanes is a list containing the current observed planes.

Definition at line 61 of file PbMapLocaliser.h.




Page generated by Doxygen 1.9.7 for MRPT 1.4.0 SVN: at Tue Jun 13 13:45:58 UTC 2023