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.
Definition at line 28 of file CMetricMapsAlignmentAlgorithm.h.
#include <mrpt/slam/CMetricMapsAlignmentAlgorithm.h>
Public Member Functions | |
CMetricMapsAlignmentAlgorithm () | |
virtual | ~CMetricMapsAlignmentAlgorithm () |
Dtor. More... | |
mrpt::poses::CPosePDFPtr | Align (const mrpt::maps::CMetricMap *m1, const mrpt::maps::CMetricMap *m2, const mrpt::poses::CPose2D &grossEst, float *runningTime=NULL, void *info=NULL) |
The method for aligning a pair of metric maps, aligning only 2D + orientation. More... | |
virtual mrpt::poses::CPosePDFPtr | AlignPDF (const mrpt::maps::CMetricMap *m1, const mrpt::maps::CMetricMap *m2, const mrpt::poses::CPosePDFGaussian &initialEstimationPDF, float *runningTime=NULL, void *info=NULL)=0 |
The virtual method for aligning a pair of metric maps, aligning only 2D + orientation. More... | |
mrpt::poses::CPose3DPDFPtr | Align3D (const mrpt::maps::CMetricMap *m1, const mrpt::maps::CMetricMap *m2, const mrpt::poses::CPose3D &grossEst, float *runningTime=NULL, void *info=NULL) |
The method for aligning a pair of metric maps, aligning the full 6D pose. More... | |
virtual mrpt::poses::CPose3DPDFPtr | Align3DPDF (const mrpt::maps::CMetricMap *m1, const mrpt::maps::CMetricMap *m2, const mrpt::poses::CPose3DPDFGaussian &initialEstimationPDF, float *runningTime=NULL, void *info=NULL)=0 |
The virtual method for aligning a pair of metric maps, aligning the full 6D pose. More... | |
|
inline |
Definition at line 31 of file CMetricMapsAlignmentAlgorithm.h.
|
inlinevirtual |
Dtor.
Definition at line 33 of file CMetricMapsAlignmentAlgorithm.h.
CPosePDFPtr CMetricMapsAlignmentAlgorithm::Align | ( | const mrpt::maps::CMetricMap * | m1, |
const mrpt::maps::CMetricMap * | m2, | ||
const mrpt::poses::CPose2D & | grossEst, | ||
float * | runningTime = NULL , |
||
void * | info = NULL |
||
) |
The method for aligning a pair of metric maps, aligning only 2D + orientation.
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.
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. |
Definition at line 26 of file CMetricMapsAlignmentAlgorithm.cpp.
References info.
Referenced by ICPTests::align2scans(), mrpt::slam::CGridMapAligner::AlignPDF_robustMatch(), mrpt::hmtslam::CTopLCDetector_GridMatching::computeTopologicalObservationModel(), mrpt::maps::CMultiMetricMapPDF::prediction_and_update_pfOptimalProposal(), mrpt::hmtslam::CLSLAM_RBPF_2DLASER::prediction_and_update_pfOptimalProposal(), and mrpt::slam::CMetricMapBuilderICP::processObservation().
CPose3DPDFPtr CMetricMapsAlignmentAlgorithm::Align3D | ( | const mrpt::maps::CMetricMap * | m1, |
const mrpt::maps::CMetricMap * | m2, | ||
const mrpt::poses::CPose3D & | grossEst, | ||
float * | runningTime = NULL , |
||
void * | info = NULL |
||
) |
The method for aligning a pair of metric maps, aligning the full 6D pose.
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.
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 CPose3D(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. |
Definition at line 40 of file CMetricMapsAlignmentAlgorithm.cpp.
References info, and mrpt::poses::CPose3DPDFGaussian::mean.
Referenced by TEST_F().
|
pure virtual |
The virtual method for aligning a pair of metric maps, aligning the full 6D pose.
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.
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. \return A smart pointer to the output estimated pose PDF. \sa CICP |
Implemented in mrpt::slam::CGridMapAligner, and mrpt::slam::CICP.
|
pure virtual |
The virtual method for aligning a pair of metric maps, aligning only 2D + orientation.
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.
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. \return A smart pointer to the output estimated pose PDF. \sa CICP |
Implemented in mrpt::slam::CGridMapAligner, and mrpt::slam::CICP.
Page generated by Doxygen 1.8.14 for MRPT 1.5.9 Git: 690a4699f Wed Apr 15 19:29:53 2020 +0200 at miƩ abr 15 19:30:12 CEST 2020 |