MRPT  2.0.0
List of all members | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes
mrpt::hmtslam::CTopLCDetectorBase Class Referenceabstract

Detailed Description

The virtual base class for Topological Loop-closure Detectors; used in HMT-SLAM.

See also
mrpt::slam::CHMTSLAM

Definition at line 23 of file CTopLCDetectorBase.h.

#include <mrpt/hmtslam/CTopLCDetectorBase.h>

Inheritance diagram for mrpt::hmtslam::CTopLCDetectorBase:

Public Types

using Ptr = std::shared_ptr< CTopLCDetectorBase >
 

Public Member Functions

virtual ~CTopLCDetectorBase ()=default
 A class factory, to be implemented in derived classes. More...
 
virtual void reset ()
 Reset the internal state of the TLCD, if any. More...
 
virtual mrpt::poses::CPose3DPDF::Ptr computeTopologicalObservationModel (const THypothesisID &hypID, const CHMHMapNode::Ptr &currentArea, const CHMHMapNode::Ptr &refArea, double &out_log_lik)=0
 This method must compute the topological observation model. More...
 
virtual bool computeSSOBetweenObservations ([[maybe_unused]] const THypothesisID &hypID, [[maybe_unused]] const TPoseID &poseID1, [[maybe_unused]] const TPoseID &poseID2, [[maybe_unused]] double &out_SSO)
 If implemented, this method provides the evaluation of an additional term to be added to the SSO between each pair of observations. More...
 
virtual void OnNewPose ([[maybe_unused]] const TPoseID &poseID, [[maybe_unused]] const mrpt::obs::CSensoryFrame *SF)
 Hook method for being warned about the insertion of a new poses into the maps. More...
 

Protected Member Functions

 CTopLCDetectorBase (CHMTSLAM *htmslam_obj)
 Instances can be generated through a class factory only. More...
 

Protected Attributes

CHMTSLAMm_hmtslam
 

Member Typedef Documentation

◆ Ptr

Definition at line 79 of file CTopLCDetectorBase.h.

Constructor & Destructor Documentation

◆ CTopLCDetectorBase()

mrpt::hmtslam::CTopLCDetectorBase::CTopLCDetectorBase ( CHMTSLAM htmslam_obj)
inlineprotected

Instances can be generated through a class factory only.

Definition at line 29 of file CTopLCDetectorBase.h.

◆ ~CTopLCDetectorBase()

virtual mrpt::hmtslam::CTopLCDetectorBase::~CTopLCDetectorBase ( )
virtualdefault

A class factory, to be implemented in derived classes.

Destructor

Member Function Documentation

◆ computeSSOBetweenObservations()

virtual bool mrpt::hmtslam::CTopLCDetectorBase::computeSSOBetweenObservations ( [[maybe_unused] ] const THypothesisID hypID,
[[maybe_unused] ] const TPoseID poseID1,
[[maybe_unused] ] const TPoseID poseID2,
[[maybe_unused] ] double &  out_SSO 
)
inlinevirtual

If implemented, this method provides the evaluation of an additional term to be added to the SSO between each pair of observations.

Parameters
out_SSOThe output, in the range [0,1].
Returns
true if computed SSO is meaningful. The default virtual method returns false.

Definition at line 61 of file CTopLCDetectorBase.h.

◆ computeTopologicalObservationModel()

virtual mrpt::poses::CPose3DPDF::Ptr mrpt::hmtslam::CTopLCDetectorBase::computeTopologicalObservationModel ( const THypothesisID hypID,
const CHMHMapNode::Ptr currentArea,
const CHMHMapNode::Ptr refArea,
double &  out_log_lik 
)
pure virtual

This method must compute the topological observation model.

Parameters
out_log_likThe output, a log-likelihood.
Returns
nullptr (an empty smart pointer), or a PDF of the estimated translation between the two areas (can be a multi-modal PDF).

Implemented in mrpt::hmtslam::CTopLCDetector_GridMatching, and mrpt::hmtslam::CTopLCDetector_FabMap.

◆ OnNewPose()

virtual void mrpt::hmtslam::CTopLCDetectorBase::OnNewPose ( [[maybe_unused] ] const TPoseID poseID,
[[maybe_unused] ] const mrpt::obs::CSensoryFrame SF 
)
inlinevirtual

Hook method for being warned about the insertion of a new poses into the maps.

This should be independent of hypothesis IDs.

Definition at line 74 of file CTopLCDetectorBase.h.

◆ reset()

virtual void mrpt::hmtslam::CTopLCDetectorBase::reset ( )
inlinevirtual

Reset the internal state of the TLCD, if any.

This is needed since the objects are created while loading HMT-SLAM options, but the algorithm may be re-started after that at any time.

Definition at line 41 of file CTopLCDetectorBase.h.

Member Data Documentation

◆ m_hmtslam

CHMTSLAM* mrpt::hmtslam::CTopLCDetectorBase::m_hmtslam
protected



Page generated by Doxygen 1.8.14 for MRPT 2.0.0 Git: b38439d21 Tue Mar 31 19:58:06 2020 +0200 at miƩ abr 1 00:50:30 CEST 2020