16 #ifndef __SUBGRAPHMATCHER_H
17 #define __SUBGRAPHMATCHER_H
19 #include <mrpt/config.h>
44 bool useStructure =
false);
47 bool useStructure =
false);
50 bool useStructure =
false);
53 bool useStructure =
false);
68 std::set<unsigned>& evalRef, std::set<unsigned>& evalCheck,
69 std::map<unsigned, unsigned>& matched);
71 std::set<unsigned>& evalRef, std::set<unsigned>& evalCheck,
72 std::map<unsigned, unsigned>& matched);
83 const int option = 0);
A class used to store a Plane-based Map (PbMap).
A class used to store a planar feature (Plane for short).
std::vector< std::vector< int8_t > > hashUnaryConstraints
std::map< unsigned, unsigned > winnerMatch
float calcAreaMatched(std::map< unsigned, unsigned > &matched_planes)
void setSourceSubgraph(Subgraph &subgSrc)
bool evalBinaryConstraints(Plane &plane1, Plane &plane2, Plane &planeA, Plane &planeB)
! Compares the relation between Ref-neigRef with the relation between Check-neigCheck.
bool evalUnaryConstraints(Plane &plane1, Plane &plane2, PbMap &trgPbMap, bool useStructure=false)
! Check if the two input planes could be the same
void exploreSubgraphTreeR(std::set< unsigned > &evalRef, std::set< unsigned > &evalCheck, std::map< unsigned, unsigned > &matched)
! Recursive function that checks all the relations (direct and crossed) in the neighborhood of a plan...
float calcAreaUnmatched(std::set< unsigned > &unmatched_planes)
bool evalUnaryConstraints2D(Plane &plane1, Plane &plane2, PbMap &trgPbMap, bool useStructure=false)
bool evalBinaryConstraintsOdometry(Plane &plane1, Plane &plane2, Plane &planeA, Plane &planeB)
std::vector< std::map< unsigned, unsigned > > alreadyExplored
std::map< unsigned, unsigned > compareSubgraphs(Subgraph &subgraphSource, Subgraph &subgraphTarget, const int option=0)
void setTargetSubgraph(Subgraph &subgTrg)
void exploreSubgraphTreeR_Area(std::set< unsigned > &evalRef, std::set< unsigned > &evalCheck, std::map< unsigned, unsigned > &matched)
bool evalUnaryConstraintsOdometry2D(Plane &plane1, Plane &plane2, PbMap &trgPbMap, bool useStructure=false)
bool evalUnaryConstraintsOdometry(Plane &plane1, Plane &plane2, PbMap &trgPbMap, bool useStructure=false)
config_heuristics configLocaliser
A class used to define the heuristic parameters and thresholds used to match sets of planes.