Namespaces | |
detail | |
Classes | |
class | CGridMapAligner |
A class for aligning two multi-metric maps (with an occupancy grid maps and a points map, at least) based on features extraction and matching. More... | |
class | CICP |
Several implementations of ICP (Iterative closest point) algorithms for aligning two point maps or a point map wrt a grid map. More... | |
class | CIncrementalMapPartitioner |
This class can be used to make partitions on a map/graph build from observations taken at some poses/nodes. More... | |
class | CMetricMapBuilder |
This virtual class is the base for SLAM implementations. More... | |
class | CMetricMapBuilderICP |
A class for very simple 2D SLAM based on ICP. More... | |
class | CMetricMapBuilderRBPF |
This class implements a Rao-Blackwelized Particle Filter (RBPF) approach to map building (SLAM). More... | |
class | CMetricMapsAlignmentAlgorithm |
A base class for any algorithm able of maps alignment. More... | |
class | CMonteCarloLocalization2D |
Declares a class that represents a Probability Density Function (PDF) over a 2D pose (x,y,phi), using a set of weighted samples. More... | |
class | CMonteCarloLocalization3D |
Declares a class that represents a Probability Density Function (PDF) over a 3D pose (x,y,phi,yaw,pitch,roll), using a set of weighted samples. More... | |
class | COccupancyGridMapFeatureExtractor |
A class for detecting features from occupancy grid maps. More... | |
class | CRangeBearingKFSLAM |
An implementation of EKF-based SLAM with range-bearing sensors, odometry, a full 6D robot pose, and 3D landmarks. More... | |
class | CRangeBearingKFSLAM2D |
An implementation of EKF-based SLAM with range-bearing sensors, odometry, and a 2D (+heading) robot pose, and 2D landmarks. More... | |
class | CRejectionSamplingRangeOnlyLocalization |
An implementation of rejection sampling for generating 2D robot pose from range-only measurements within a landmarks (beacons) map. More... | |
class | PF_implementation |
A set of common data shared by PF implementations for both SLAM and localization. More... | |
struct | TAuxDataRecursiveJCBB |
struct | TDataAssociationResults |
The results from mrpt::slam::data_association. More... | |
class | TKLDParams |
Option set for KLD algorithm. More... | |
struct | TMonteCarloLocalizationParams |
The struct for passing extra simulation parameters to the prediction stage when running a particle filter. More... | |
Typedefs | |
typedef mrpt::maps::CMultiMetricMap | CMultiMetricMap |
Backward compatible typedef. More... | |
typedef mrpt::maps::CMultiMetricMapPtr | CMultiMetricMapPtr |
Backward compatible typedef. More... | |
typedef mrpt::maps::CMultiMetricMapPDF | CMultiMetricMapPDF |
Backward compatible typedef. More... | |
typedef mrpt::maps::CMultiMetricMapPDFPtr | CMultiMetricMapPDFPtr |
Backward compatible typedef. More... | |
typedef mrpt::maps::CLandmark | CLandmark |
Backward compatible typedef. More... | |
typedef mrpt::maps::CLandmarkPtr | CLandmarkPtr |
Backward compatible typedef. More... | |
typedef mrpt::maps::CLandmarksMap | CLandmarksMap |
Backward compatible typedef. More... | |
typedef mrpt::maps::CLandmarksMapPtr | CLandmarksMapPtr |
Backward compatible typedef. More... | |
typedef mrpt::obs::CObservationVisualLandmarks | CObservationVisualLandmarks |
Backward compatible typedef. More... | |
typedef mrpt::obs::CObservationVisualLandmarksPtr | CObservationVisualLandmarksPtr |
Backward compatible typedef. More... | |
Enumerations | |
enum | TICPAlgorithm { icpClassic = 0, icpLevenbergMarquardt } |
The ICP algorithm selection, used in mrpt::slam::CICP::options. More... | |
enum | TICPCovarianceMethod { icpCovLinealMSE = 0, icpCovFiniteDifferences } |
ICP covariance estimation methods, used in mrpt::slam::CICP::options. More... | |
Functions | |
::mrpt::utils::CStream & | operator>> (mrpt::utils::CStream &in, CIncrementalMapPartitionerPtr &pObj) |
template<class PARTICLETYPE , class BINTYPE > | |
void | KLF_loadBinFromParticle (BINTYPE &outBin, const TKLDParams &opts, const PARTICLETYPE *currentParticleValue=NULL, const mrpt::math::TPose3D *newPoseToBeInserted=NULL) |
template<> | |
void | KLF_loadBinFromParticle (mrpt::slam::detail::TPoseBin2D &outBin, const TKLDParams &opts, const CMonteCarloLocalization2D::CParticleDataContent *currentParticleValue, const TPose3D *newPoseToBeInserted) |
Fills out a "TPoseBin2D" variable, given a path hypotesis and (if not set to NULL) a new pose appended at the end, using the KLD params in "options". More... | |
template<> | |
void | KLF_loadBinFromParticle (mrpt::slam::detail::TPoseBin3D &outBin, const TKLDParams &opts, const CMonteCarloLocalization3D::CParticleDataContent *currentParticleValue, const TPose3D *newPoseToBeInserted) |
Fills out a "TPoseBin3D" variable, given a path hypotesis and (if not set to NULL) a new pose appended at the end, using the KLD params in "options". More... | |
template<> | |
void | KLF_loadBinFromParticle (detail::TPoseBin2D &outBin, const TKLDParams &opts, const mrpt::maps::CRBPFParticleData *currentParticleValue, const TPose3D *newPoseToBeInserted) |
Fills out a "TPoseBin2D" variable, given a path hypotesis and (if not set to NULL) a new pose appended at the end, using the KLD params in "options". More... | |
template<> | |
void | KLF_loadBinFromParticle (detail::TPathBin2D &outBin, const TKLDParams &opts, const mrpt::maps::CRBPFParticleData *currentParticleValue, const TPose3D *newPoseToBeInserted) |
Fills out a "TPathBin2D" variable, given a path hypotesis and (if not set to NULL) a new pose appended at the end, using the KLD params in "options". More... | |
template<typename T , TDataAssociationMetric METRIC> | |
double | joint_pdf_metric (const CMatrixTemplateNumeric< T > &Z_observations_mean, const CMatrixTemplateNumeric< T > &Y_predictions_mean, const CMatrixTemplateNumeric< T > &Y_predictions_cov, const TAuxDataRecursiveJCBB &info, const TDataAssociationResults &aux_data) |
Computes the joint distance metric (mahalanobis or matching likelihood) between two a set of associations. More... | |
template<TDataAssociationMetric METRIC> | |
bool | isCloser (const double v1, const double v2) |
template<> | |
bool | isCloser< metricMaha > (const double v1, const double v2) |
template<> | |
bool | isCloser< metricML > (const double v1, const double v2) |
template<typename T , TDataAssociationMetric METRIC> | |
void | JCBB_recursive (const mrpt::math::CMatrixTemplateNumeric< T > &Z_observations_mean, const mrpt::math::CMatrixTemplateNumeric< T > &Y_predictions_mean, const mrpt::math::CMatrixTemplateNumeric< T > &Y_predictions_cov, TDataAssociationResults &results, const TAuxDataRecursiveJCBB &info, const observation_index_t curObsIdx) |
Observations overlap functions | |
double SLAM_IMPEXP | observationsOverlap (const mrpt::obs::CObservation *o1, const mrpt::obs::CObservation *o2, const mrpt::poses::CPose3D *pose_o2_wrt_o1=NULL) |
Estimates the "overlap" or "matching ratio" of two observations (range [0,1]), possibly taking into account their relative positions. More... | |
double | observationsOverlap (const mrpt::obs::CObservationPtr &o1, const mrpt::obs::CObservationPtr &o2, const mrpt::poses::CPose3D *pose_o2_wrt_o1=NULL) |
Estimates the "overlap" or "matching ratio" of two observations (range [0,1]), possibly taking into account their relative positions. More... | |
double SLAM_IMPEXP | observationsOverlap (const mrpt::obs::CSensoryFrame &sf1, const mrpt::obs::CSensoryFrame &sf2, const mrpt::poses::CPose3D *pose_sf2_wrt_sf1=NULL) |
Estimates the "overlap" or "matching ratio" of two set of observations (range [0,1]), possibly taking into account their relative positions. More... | |
double | observationsOverlap (const mrpt::obs::CSensoryFramePtr &sf1, const mrpt::obs::CSensoryFramePtr &sf2, const mrpt::poses::CPose3D *pose_sf2_wrt_sf1=NULL) |
Estimates the "overlap" or "matching ratio" of two set of observations (range [0,1]), possibly taking into account their relative positions. More... | |
Data association | |
enum | TDataAssociationMethod { assocNN = 0, assocJCBB } |
Different algorithms for data association, used in mrpt::slam::data_association. More... | |
enum | TDataAssociationMetric { metricMaha = 0, metricML } |
Different metrics for data association, used in mrpt::slam::data_association For a comparison of both methods see paper: More... | |
typedef size_t | observation_index_t |
Used in mrpt::slam::TDataAssociationResults. More... | |
typedef size_t | prediction_index_t |
Used in mrpt::slam::TDataAssociationResults. More... | |
void SLAM_IMPEXP | data_association_full_covariance (const mrpt::math::CMatrixDouble &Z_observations_mean, const mrpt::math::CMatrixDouble &Y_predictions_mean, const mrpt::math::CMatrixDouble &Y_predictions_cov, TDataAssociationResults &results, const TDataAssociationMethod method=assocJCBB, const TDataAssociationMetric metric=metricMaha, const double chi2quantile=0.99, const bool DAT_ASOC_USE_KDTREE=true, const std::vector< prediction_index_t > &predictions_IDs=std::vector< prediction_index_t >(), const TDataAssociationMetric compatibilityTestMetric=metricMaha, const double log_ML_compat_test_threshold=0.0) |
Computes the data-association between the prediction of a set of landmarks and their observations, all of them with covariance matrices - Generic version with prediction full cross-covariances. More... | |
void SLAM_IMPEXP | data_association_independent_predictions (const mrpt::math::CMatrixDouble &Z_observations_mean, const mrpt::math::CMatrixDouble &Y_predictions_mean, const mrpt::math::CMatrixDouble &Y_predictions_cov, TDataAssociationResults &results, const TDataAssociationMethod method=assocJCBB, const TDataAssociationMetric metric=metricMaha, const double chi2quantile=0.99, const bool DAT_ASOC_USE_KDTREE=true, const std::vector< prediction_index_t > &predictions_IDs=std::vector< prediction_index_t >(), const TDataAssociationMetric compatibilityTestMetric=metricMaha, const double log_ML_compat_test_threshold=0.0) |
Computes the data-association between the prediction of a set of landmarks and their observations, all of them with covariance matrices - Generic version with NO prediction cross-covariances. More... | |
Backward compatible typedef.
Definition at line 13 of file slam/CLandmark.h.
typedef mrpt::maps::CLandmarkPtr mrpt::slam::CLandmarkPtr |
Backward compatible typedef.
Definition at line 14 of file slam/CLandmark.h.
Backward compatible typedef.
Definition at line 13 of file slam/CLandmarksMap.h.
typedef mrpt::maps::CLandmarksMapPtr mrpt::slam::CLandmarksMapPtr |
Backward compatible typedef.
Definition at line 14 of file slam/CLandmarksMap.h.
Backward compatible typedef.
Definition at line 13 of file slam/CMultiMetricMap.h.
Backward compatible typedef.
Definition at line 13 of file slam/CMultiMetricMapPDF.h.
typedef mrpt::maps::CMultiMetricMapPDFPtr mrpt::slam::CMultiMetricMapPDFPtr |
Backward compatible typedef.
Definition at line 14 of file slam/CMultiMetricMapPDF.h.
typedef mrpt::maps::CMultiMetricMapPtr mrpt::slam::CMultiMetricMapPtr |
Backward compatible typedef.
Definition at line 14 of file slam/CMultiMetricMap.h.
Backward compatible typedef.
Definition at line 13 of file slam/CObservationVisualLandmarks.h.
typedef mrpt::obs::CObservationVisualLandmarksPtr mrpt::slam::CObservationVisualLandmarksPtr |
Backward compatible typedef.
Definition at line 14 of file slam/CObservationVisualLandmarks.h.
bool mrpt::slam::isCloser | ( | const double | v1, |
const double | v2 | ||
) |
bool mrpt::slam::isCloser< metricMaha > | ( | const double | v1, |
const double | v2 | ||
) |
Definition at line 134 of file data_association.cpp.
bool mrpt::slam::isCloser< metricML > | ( | const double | v1, |
const double | v2 | ||
) |
Definition at line 137 of file data_association.cpp.
void mrpt::slam::JCBB_recursive | ( | const mrpt::math::CMatrixTemplateNumeric< T > & | Z_observations_mean, |
const mrpt::math::CMatrixTemplateNumeric< T > & | Y_predictions_mean, | ||
const mrpt::math::CMatrixTemplateNumeric< T > & | Y_predictions_cov, | ||
TDataAssociationResults & | results, | ||
const TAuxDataRecursiveJCBB & | info, | ||
const observation_index_t | curObsIdx | ||
) |
Definition at line 148 of file data_association.cpp.
References mrpt::slam::TDataAssociationResults::associations, mrpt::slam::TAuxDataRecursiveJCBB::currentAssociation, mrpt::slam::TDataAssociationResults::distance, mrpt::math::CMatrixTemplate< T >::getRowCount(), mrpt::slam::TDataAssociationResults::indiv_compatibility, mrpt::slam::TDataAssociationResults::indiv_compatibility_counts, info, and mrpt::slam::TDataAssociationResults::nNodesExploredInJCBB.
double mrpt::slam::joint_pdf_metric | ( | const CMatrixTemplateNumeric< T > & | Z_observations_mean, |
const CMatrixTemplateNumeric< T > & | Y_predictions_mean, | ||
const CMatrixTemplateNumeric< T > & | Y_predictions_cov, | ||
const TAuxDataRecursiveJCBB & | info, | ||
const TDataAssociationResults & | aux_data | ||
) |
Computes the joint distance metric (mahalanobis or matching likelihood) between two a set of associations.
On "currentAssociation": maps "ID_obs" -> "ID_pred" For each landmark ID in the observations (ID_obs), its association in the predictions, that is: ID_pred = associations[ID_obs]
Definition at line 63 of file data_association.cpp.
References ASSERT_, info, M_2PI, metricMaha, metricML, MRPT_UNUSED_PARAM, and mrpt::math::multiply_HCHt_scalar().
void mrpt::slam::KLF_loadBinFromParticle | ( | BINTYPE & | outBin, |
const TKLDParams & | opts, | ||
const PARTICLETYPE * | currentParticleValue = NULL , |
||
const mrpt::math::TPose3D * | newPoseToBeInserted = NULL |
||
) |
void mrpt::slam::KLF_loadBinFromParticle | ( | mrpt::slam::detail::TPoseBin3D & | outBin, |
const TKLDParams & | opts, | ||
const CMonteCarloLocalization3D::CParticleDataContent * | currentParticleValue, | ||
const TPose3D * | newPoseToBeInserted | ||
) |
Fills out a "TPoseBin3D" variable, given a path hypotesis and (if not set to NULL) a new pose appended at the end, using the KLD params in "options".
Definition at line 36 of file CMonteCarloLocalization3D.cpp.
References ASSERT_, mrpt::slam::TKLDParams::KLD_binSize_PHI, mrpt::slam::TKLDParams::KLD_binSize_XY, mrpt::slam::detail::TPoseBin3D::pitch, mrpt::poses::CPose3D::pitch(), mrpt::math::TPose3D::pitch, mrpt::slam::detail::TPoseBin3D::roll, mrpt::poses::CPose3D::roll(), mrpt::math::TPose3D::roll, mrpt::utils::round(), mrpt::slam::detail::TPoseBin3D::x, mrpt::poses::CPoseOrPoint< DERIVEDCLASS >::x(), mrpt::math::TPose3D::x, mrpt::slam::detail::TPoseBin3D::y, mrpt::poses::CPoseOrPoint< DERIVEDCLASS >::y(), mrpt::math::TPose3D::y, mrpt::slam::detail::TPoseBin3D::yaw, mrpt::poses::CPose3D::yaw(), mrpt::math::TPose3D::yaw, mrpt::slam::detail::TPoseBin3D::z, and mrpt::math::TPose3D::z.
void mrpt::slam::KLF_loadBinFromParticle | ( | mrpt::slam::detail::TPoseBin2D & | outBin, |
const TKLDParams & | opts, | ||
const CMonteCarloLocalization2D::CParticleDataContent * | currentParticleValue, | ||
const TPose3D * | newPoseToBeInserted | ||
) |
Fills out a "TPoseBin2D" variable, given a path hypotesis and (if not set to NULL) a new pose appended at the end, using the KLD params in "options".
Definition at line 42 of file CMonteCarloLocalization2D.cpp.
References ASSERT_, mrpt::slam::TKLDParams::KLD_binSize_PHI, mrpt::slam::TKLDParams::KLD_binSize_XY, mrpt::slam::detail::TPoseBin2D::phi, mrpt::poses::CPose2D::phi(), mrpt::utils::round(), mrpt::slam::detail::TPoseBin2D::x, mrpt::poses::CPoseOrPoint< DERIVEDCLASS >::x(), mrpt::math::TPose3D::x, mrpt::slam::detail::TPoseBin2D::y, mrpt::poses::CPoseOrPoint< DERIVEDCLASS >::y(), mrpt::math::TPose3D::y, and mrpt::math::TPose3D::yaw.
void mrpt::slam::KLF_loadBinFromParticle | ( | detail::TPoseBin2D & | outBin, |
const TKLDParams & | opts, | ||
const mrpt::maps::CRBPFParticleData * | currentParticleValue, | ||
const TPose3D * | newPoseToBeInserted | ||
) |
Fills out a "TPoseBin2D" variable, given a path hypotesis and (if not set to NULL) a new pose appended at the end, using the KLD params in "options".
Definition at line 49 of file CMultiMetricMapPDF_RBPF.cpp.
References ASSERT_, mrpt::slam::TKLDParams::KLD_binSize_PHI, mrpt::slam::TKLDParams::KLD_binSize_XY, mrpt::slam::detail::TPoseBin2D::phi, mrpt::maps::CRBPFParticleData::robotPath, mrpt::utils::round(), mrpt::slam::detail::TPoseBin2D::x, mrpt::math::TPose3D::x, mrpt::slam::detail::TPoseBin2D::y, mrpt::math::TPose3D::y, and mrpt::math::TPose3D::yaw.
void mrpt::slam::KLF_loadBinFromParticle | ( | detail::TPathBin2D & | outBin, |
const TKLDParams & | opts, | ||
const mrpt::maps::CRBPFParticleData * | currentParticleValue, | ||
const TPose3D * | newPoseToBeInserted | ||
) |
Fills out a "TPathBin2D" variable, given a path hypotesis and (if not set to NULL) a new pose appended at the end, using the KLD params in "options".
Definition at line 75 of file CMultiMetricMapPDF_RBPF.cpp.
References mrpt::slam::detail::TPathBin2D::bins, mrpt::slam::TKLDParams::KLD_binSize_PHI, mrpt::slam::TKLDParams::KLD_binSize_XY, mrpt::maps::CRBPFParticleData::robotPath, mrpt::utils::round(), mrpt::math::TPose3D::x, mrpt::math::TPose3D::y, and mrpt::math::TPose3D::yaw.
::mrpt::utils::CStream& mrpt::slam::operator>> | ( | mrpt::utils::CStream & | in, |
CIncrementalMapPartitionerPtr & | pObj | ||
) |
Page generated by Doxygen 1.8.14 for MRPT 1.5.7 Git: 5902e14cc Wed Apr 24 15:04:01 2019 +0200 at lun oct 28 01:39:17 CET 2019 |