MRPT logo

mrpt::slam::CMetricMapsAlignmentAlgorithm Class Reference

A base class for any algorithm able of maps alignment. More...

#include <mrpt/slam/CMetricMapsAlignmentAlgorithm.h>

Inheritance diagram for mrpt::slam::CMetricMapsAlignmentAlgorithm:

mrpt::utils::CDebugOutputCapable mrpt::slam::CGridMapAligner mrpt::slam::CICP

List of all members.

Public Member Functions

virtual ~CMetricMapsAlignmentAlgorithm ()
 Destructor.
CPosePDFPtr Align (const CMetricMap *m1, const CMetricMap *m2, const CPose2D &grossEst, float *runningTime=NULL, void *info=NULL)
 The method for aligning a pair of metric maps.
virtual CPosePDFPtr AlignPDF (const CMetricMap *m1, const CMetricMap *m2, const CPosePDFGaussian &initialEstimationPDF, float *runningTime=NULL, void *info=NULL)=0
 The virtual method for aligning a pair of metric maps.


Detailed Description

A base class for any algorithm able of maps alignment.

There are two methods depending on an PDF or a single 2D Pose value is available as initial guess for the methods.

See also:
CPointsMap, utils::CDebugOutputCapable

Definition at line 47 of file CMetricMapsAlignmentAlgorithm.h.


Constructor & Destructor Documentation

virtual mrpt::slam::CMetricMapsAlignmentAlgorithm::~CMetricMapsAlignmentAlgorithm (  )  [inline, virtual]

Destructor.

Definition at line 52 of file CMetricMapsAlignmentAlgorithm.h.


Member Function Documentation

CPosePDFPtr mrpt::slam::CMetricMapsAlignmentAlgorithm::Align ( const CMetricMap m1,
const CMetricMap m2,
const CPose2D grossEst,
float *  runningTime = NULL,
void *  info = NULL 
)

The method for aligning a pair of metric maps.

The meaning of some parameters and the kind of the maps to be aligned are implementation dependant, so look into the derived classes for instructions. The target is to find a PDF for the pose displacement between maps, thus the pose of m2 relative to m1. This pose is returned as a PDF rather than a single value.

Parameters:
m1 [IN] The first map
m2 [IN] The second map. The pose of this map respect to m1 is to be estimated.
grossEst [IN] An initial gross estimation for the displacement. If a given algorithm doesn't need it, set to CPose2D(0,0,0) for example.
runningTime [OUT] A pointer to a container for obtaining the algorithm running time in seconds, or NULL if you don't need it.
info [OUT] See derived classes for details, or NULL if it isn't needed.
Returns:
A smart pointer to the output estimated pose PDF.
See also:
CICP

virtual CPosePDFPtr mrpt::slam::CMetricMapsAlignmentAlgorithm::AlignPDF ( const CMetricMap m1,
const CMetricMap m2,
const CPosePDFGaussian initialEstimationPDF,
float *  runningTime = NULL,
void *  info = NULL 
) [pure virtual]

The virtual method for aligning a pair of metric maps.

The meaning of some parameters are implementation dependant, so look at the derived classes for more details. The goal is to find a PDF for the pose displacement between maps, that is, the pose of m2 relative to m1. This pose is returned as a PDF rather than a single value.

Note:
This method can be configurated with a "options" structure in the implementation classes.
Parameters:
m1 [IN] The first map (MUST BE A COccupancyGridMap2D derived class)
m2 [IN] The second map. (MUST BE A CPointsMap derived class) The pose of this map respect to m1 is to be estimated.
initialEstimationPDF [IN] An initial gross estimation for the displacement.
runningTime [OUT] A pointer to a container for obtaining the algorithm running time in seconds, or NULL if you don't need it.
info [OUT] See derived classes for details, or NULL if it isn't needed.
Returns:
A smart pointer to the output estimated pose PDF.
See also:
CICP

Implemented in mrpt::slam::CGridMapAligner, and mrpt::slam::CICP.




Page generated by Doxygen 1.5.8 for MRPT 0.6.5 SVN:exported at Mon Jan 12 13:00:16 UTC 2009