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< PbMap > | previousPbMaps |
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 | |
PbMap & | mPbMap |
SubgraphMatcher | matcher |
std::map< std::string, std::pair< int, double > > | planeRecognitionLUT |
unsigned | bestMap |
std::map< unsigned, unsigned > | bestMatch |
double | score |
mrpt::pbmap::PbMapLocaliser::PbMapLocaliser | ( | PbMap & | mPbM, |
const std::string & | config_file | ||
) |
Constructor.
mrpt::pbmap::PbMapLocaliser::~PbMapLocaliser | ( | ) |
|
private |
Search the 2nd order neighbors.
|
private |
|
private |
Load previous PbMaps to search for previous places.
|
protected |
This executes the PbMapLocaliser's thread
|
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.
|
protected |
PbMapLocaliser's exit thread
pcl::PointCloud<pcl::PointXYZRGBA>::Ptr mrpt::pbmap::PbMapLocaliser::alignedModelPtr |
Point cloud of recognized place.
Definition at line 67 of file PbMapLocaliser.h.
|
private |
Best previous PbMap correspondence.
Definition at line 94 of file PbMapLocaliser.h.
|
private |
Best correspondence between pair of planes.
Definition at line 97 of file PbMapLocaliser.h.
std::map<unsigned, std::vector< std::pair<double,int> > > mrpt::pbmap::PbMapLocaliser::evalColor |
Definition at line 69 of file PbMapLocaliser.h.
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.
|
protected |
PbMapLocaliser's stop var
Definition at line 117 of file PbMapLocaliser.h.
|
protected |
PbMapLocaliser's stop controller
Definition at line 114 of file PbMapLocaliser.h.
|
private |
The matching object.
Definition at line 77 of file PbMapLocaliser.h.
|
private |
The current PbMap.
Definition at line 74 of file PbMapLocaliser.h.
|
protected |
PbMapLocaliser's thread handle
Definition at line 108 of file PbMapLocaliser.h.
|
private |
List of places that have been matched, together with their plane correspondences.
Definition at line 83 of file PbMapLocaliser.h.
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.
std::vector<PbMap> mrpt::pbmap::PbMapLocaliser::previousPbMaps |
Vector of vectors containing previous PbMaps.
Definition at line 52 of file PbMapLocaliser.h.
|
private |
Score of the matched places.
Definition at line 100 of file PbMapLocaliser.h.
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.
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.6 for MRPT 1.4.0 SVN: at Thu Jan 19 22:37:47 UTC 2023 |