MRPT  1.9.9
CTopLCDetector_GridMatching.h
Go to the documentation of this file.
1 /* +------------------------------------------------------------------------+
2  | Mobile Robot Programming Toolkit (MRPT) |
3  | http://www.mrpt.org/ |
4  | |
5  | Copyright (c) 2005-2018, Individual contributors, see AUTHORS file |
6  | See: http://www.mrpt.org/Authors - All rights reserved. |
7  | Released under BSD License. See details in http://www.mrpt.org/License |
8  +------------------------------------------------------------------------+ */
9 
10 #ifndef _CTopLCDetector_GridMatching_H
11 #define _CTopLCDetector_GridMatching_H
12 
15 
16 namespace mrpt::hmtslam
17 {
18 /** \ingroup mrpt_hmtslam_grp */
20 {
21  protected:
23 
24  public:
25  /** A class factory, to be implemented in derived classes.
26  */
28  {
29  return static_cast<CTopLCDetectorBase*>(
30  new CTopLCDetector_GridMatching(hmtslam));
31  }
32 
33  /** Destructor */
35 
36  /** This method must compute the topological observation model.
37  * \param out_log_lik The output, a log-likelihood.
38  * \return nullptr, or a PDF of the estimated translation between the two
39  * areas (should be a SOG PDF): it's the pose of "refArea", relative to
40  * "currentArea".
41  */
43  const THypothesisID& hypID, const CHMHMapNode::Ptr& currentArea,
44  const CHMHMapNode::Ptr& refArea, double& out_log_lik);
45 
46  /** Hook method for being warned about the insertion of a new poses into the
47  * maps.
48  * This should be independent of hypothesis IDs.
49  */
50  void OnNewPose(const TPoseID& poseID, const mrpt::obs::CSensoryFrame* SF);
51 
52  /** Options for a TLC-detector of type gridmap-matching, used from CHMTSLAM
53  */
55  {
56  /** Initialization of default params
57  */
58  TOptions();
59 
60  /** Options for the grid-to-grid matching algorithm */
62 
63  void loadFromConfigFile(
65  const std::string& section) override; // See base docs
66  void dumpToTextStream(
67  std::ostream& out) const override; // See base docs
68  };
69 }; // end class
70 }
71 #endif
72 
73 
This is a virtual base class for sets of options than can be loaded from and/or saved to configuratio...
Classes related to the implementation of Hybrid Metric Topological (HMT) SLAM.
The ICP algorithm configuration data.
uint64_t TPoseID
An integer number uniquely identifying each robot pose stored in HMT-SLAM.
mrpt::slam::CGridMapAligner::TConfigParams matchingOptions
Options for the grid-to-grid matching algorithm.
static CTopLCDetectorBase * createNewInstance(CHMTSLAM *hmtslam)
A class factory, to be implemented in derived classes.
An implementation of Hybrid Metric Topological SLAM (HMT-SLAM).
Definition: CHMTSLAM.h:68
This class allows loading and storing values and vectors of different types from a configuration text...
mrpt::poses::CPose3DPDF::Ptr computeTopologicalObservationModel(const THypothesisID &hypID, const CHMHMapNode::Ptr &currentArea, const CHMHMapNode::Ptr &refArea, double &out_log_lik)
This method must compute the topological observation model.
void loadFromConfigFile(const mrpt::config::CConfigFileBase &source, const std::string &section) override
This method load the options from a ".ini"-like file or memory-stored string list.
void dumpToTextStream(std::ostream &out) const override
This method should clearly display all the contents of the structure in textual form, sending it to a std::ostream.
Declares a class for storing a "sensory frame", a set of "observations" taken by the robot approximat...
Definition: CSensoryFrame.h:52
The virtual base class for Topological Loop-closure Detectors; used in HMT-SLAM.
GLsizei const GLchar ** string
Definition: glext.h:4101
int64_t THypothesisID
An integer number uniquely identifying each of the concurrent hypotheses for the robot topological pa...
Options for a TLC-detector of type gridmap-matching, used from CHMTSLAM.
GLsizei GLsizei GLchar * source
Definition: glext.h:4082
void OnNewPose(const TPoseID &poseID, const mrpt::obs::CSensoryFrame *SF)
Hook method for being warned about the insertion of a new poses into the maps.



Page generated by Doxygen 1.8.14 for MRPT 1.9.9 Git: 7d5e6d718 Fri Aug 24 01:51:28 2018 +0200 at lun nov 2 08:35:50 CET 2020