MRPT
1.9.9
|
SLAM and PF-localization algorithms.
Back to list of all libraries | See all modules
[New in MRPT 2.0.0]
This library is part of MRPT and can be installed in Debian-based systems with:
sudo apt install libmrpt-slam-dev
See: Using MRPT from your CMake project
Interesting stuff in this library:
See the full list of classes in mrpt::slam. Note that there are many classes in that namespace not in the library mrpt-slam, but in libraries mrpt-slam depends on. However, in you set mrpt-slam as a dependence of your project, you can be safe all mrpt::slam classes will be available to you.
See also: For Graph-SLAM, see the namespace mrpt::graphslam in the library mrpt-graphslam.
Classes | |
class | mrpt::detectors::CDetectorDoorCrossing |
class | mrpt::maps::CRBPFParticleData |
Auxiliary class used in mrpt::maps::CMultiMetricMapPDF. More... | |
class | mrpt::slam::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 | mrpt::slam::CICP |
Several implementations of ICP (Iterative closest point) algorithms for aligning two point maps or a point map wrt a grid map. More... | |
struct | mrpt::slam::map_keyframe_t |
Map keyframe, comprising raw observations and they as a metric map. More... | |
class | mrpt::slam::CIncrementalMapPartitioner |
Finds partitions in metric maps based on N-cut graph partition theory. More... | |
struct | mrpt::slam::TMetricMapAlignmentResult |
Used as base class for other result structures of each particular algorithm in CMetricMapsAlignmentAlgorithm derived classes. More... | |
class | mrpt::slam::CMetricMapsAlignmentAlgorithm |
A base class for any algorithm able of maps alignment. More... | |
class | mrpt::slam::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 | mrpt::slam::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 | mrpt::slam::COccupancyGridMapFeatureExtractor |
A class for detecting features from occupancy grid maps. More... | |
class | mrpt::slam::CRejectionSamplingRangeOnlyLocalization |
An implementation of rejection sampling for generating 2D robot pose from range-only measurements within a landmarks (beacons) map. More... | |
class | mrpt::slam::PF_implementation< PARTICLE_TYPE, MYSELF, STORAGE > |
A set of common data shared by PF implementations for both SLAM and localization. More... | |
class | mrpt::slam::TKLDParams |
Option set for KLD algorithm. More... | |
struct | mrpt::slam::TMonteCarloLocalizationParams |
The struct for passing extra simulation parameters to the prediction stage when running a particle filter. More... | |
Namespaces | |
mrpt::slam | |
Modules | |
Metric SLAM algorithms | |
Data association | |
Typedefs | |
using | mrpt::slam::similarity_func_t = std::function< double(const map_keyframe_t &kf1, const map_keyframe_t &kf2, const mrpt::poses::CPose3D &relPose2wrt1)> |
Type of similarity evaluator for map keyframes. More... | |
Enumerations | |
enum | mrpt::slam::TICPCovarianceMethod { mrpt::slam::icpCovLinealMSE = 0, mrpt::slam::icpCovFiniteDifferences } |
ICP covariance estimation methods, used in mrpt::slam::CICP::options. More... | |
enum | mrpt::slam::similarity_method_t : uint8_t { mrpt::slam::smMETRIC_MAP_MATCHING = 0, mrpt::slam::smOBSERVATION_OVERLAP, mrpt::slam::smCUSTOM_FUNCTION } |
For use in CIncrementalMapPartitioner. More... | |
Functions | |
template<class BINTYPE > | |
bool | mrpt::slam::PF_implementation< PARTICLE_TYPE, MYSELF, STORAGE >::PF_SLAM_implementation_gatherActionsCheckBothActObs (const mrpt::obs::CActionCollection *actions, const mrpt::obs::CSensoryFrame *sf) |
Auxiliary method called by PF implementations: return true if we have both action & observation, otherwise, return false AND accumulate the odometry so when we have an observation we didn't lose a thing. More... | |
Observations overlap functions | |
double | mrpt::slam::observationsOverlap (const mrpt::obs::CObservation *o1, const mrpt::obs::CObservation *o2, const mrpt::poses::CPose3D *pose_o2_wrt_o1=nullptr) |
Estimates the "overlap" or "matching ratio" of two observations (range [0,1]), possibly taking into account their relative positions. More... | |
double | mrpt::slam::observationsOverlap (const mrpt::obs::CObservation::Ptr &o1, const mrpt::obs::CObservation::Ptr &o2, const mrpt::poses::CPose3D *pose_o2_wrt_o1=nullptr) |
Estimates the "overlap" or "matching ratio" of two observations (range [0,1]), possibly taking into account their relative positions. More... | |
double | mrpt::slam::observationsOverlap (const mrpt::obs::CSensoryFrame &sf1, const mrpt::obs::CSensoryFrame &sf2, const mrpt::poses::CPose3D *pose_sf2_wrt_sf1=nullptr) |
Estimates the "overlap" or "matching ratio" of two set of observations (range [0,1]), possibly taking into account their relative positions. More... | |
double | mrpt::slam::observationsOverlap (const mrpt::obs::CSensoryFrame::Ptr &sf1, const mrpt::obs::CSensoryFrame::Ptr &sf2, const mrpt::poses::CPose3D *pose_sf2_wrt_sf1=nullptr) |
Estimates the "overlap" or "matching ratio" of two set of observations (range [0,1]), possibly taking into account their relative positions. More... | |
using mrpt::slam::similarity_func_t = typedef std::function<double( const map_keyframe_t& kf1, const map_keyframe_t& kf2, const mrpt::poses::CPose3D& relPose2wrt1)> |
Type of similarity evaluator for map keyframes.
For use in CIncrementalMapPartitioner
Definition at line 49 of file CIncrementalMapPartitioner.h.
enum mrpt::slam::similarity_method_t : uint8_t |
For use in CIncrementalMapPartitioner.
Enumerator | |
---|---|
smMETRIC_MAP_MATCHING | |
smOBSERVATION_OVERLAP | |
smCUSTOM_FUNCTION |
Definition at line 27 of file CIncrementalMapPartitioner.h.
ICP covariance estimation methods, used in mrpt::slam::CICP::options.
double mrpt::slam::observationsOverlap | ( | const mrpt::obs::CObservation * | o1, |
const mrpt::obs::CObservation * | o2, | ||
const mrpt::poses::CPose3D * | pose_o2_wrt_o1 = nullptr |
||
) |
Estimates the "overlap" or "matching ratio" of two observations (range [0,1]), possibly taking into account their relative positions.
Definition at line 26 of file observations_overlap.cpp.
References mrpt::obs::CObservation2DRangeScan::buildAuxPointsMap(), mrpt::maps::TMatchingExtraResults::correspondencesRatio, IS_CLASS, mrpt::maps::TMatchingParams::maxAngularDistForCorrespondence, and mrpt::maps::TMatchingParams::maxDistForCorrespondence.
Referenced by eval_similarity_observation_overlap(), and mrpt::slam::observationsOverlap().
|
inline |
Estimates the "overlap" or "matching ratio" of two observations (range [0,1]), possibly taking into account their relative positions.
Definition at line 34 of file observations_overlap.h.
References mrpt::slam::observationsOverlap().
double mrpt::slam::observationsOverlap | ( | const mrpt::obs::CSensoryFrame & | sf1, |
const mrpt::obs::CSensoryFrame & | sf2, | ||
const mrpt::poses::CPose3D * | pose_sf2_wrt_sf1 = nullptr |
||
) |
Estimates the "overlap" or "matching ratio" of two set of observations (range [0,1]), possibly taking into account their relative positions.
This method computes the average between each of the observations in each SF.
|
inline |
Estimates the "overlap" or "matching ratio" of two set of observations (range [0,1]), possibly taking into account their relative positions.
This method computes the average between each of the observations in each SF.
Definition at line 58 of file observations_overlap.h.
References mrpt::slam::observationsOverlap().
bool mrpt::slam::PF_implementation< PARTICLE_TYPE, MYSELF, STORAGE >::PF_SLAM_implementation_gatherActionsCheckBothActObs | ( | const mrpt::obs::CActionCollection * | actions, |
const mrpt::obs::CSensoryFrame * | sf | ||
) |
Auxiliary method called by PF implementations: return true if we have both action & observation, otherwise, return false AND accumulate the odometry so when we have an observation we didn't lose a thing.
On return=true, the "m_movementDrawer" member is loaded and ready to draw samples of the increment of pose since last step. This method is smart enough to accumulate CActionRobotMovement2D or CActionRobotMovement3D, whatever comes in.
Definition at line 46 of file PF_implementations.h.
Page generated by Doxygen 1.8.14 for MRPT 1.9.9 Git: c7a3bec24 Sun Mar 29 18:33:13 2020 +0200 at dom mar 29 18:50:38 CEST 2020 |