Map representations for localization and SLAM.

Library mrpt-maps

This library is part of MRPT and can be installed in Debian-based systems with:

sudo apt install libmrpt-maps-dev

Read also how to import MRPT into your CMake scripts.

This library includes (almost) all the maps usable for localization or mapping in the rest of MRPT classes.

Interesting starting points:

mrpt::maps::CMultiMetricMap provides a versatile container for multiple metric maps, that behaves as if they were a single metric map. This includes updating the map contents from observations, fusing the information from all maps while evaluating an observation likelihood, etc.

Library contents

// structs

template <typename TCELL>
struct mrpt::maps::CLogOddsGridMap2D;

template <typename TCELL>
struct mrpt::maps::CLogOddsGridMap3D;

template <typename TCELL>
struct mrpt::maps::CLogOddsGridMapLUT;

struct mrpt::maps::OccGridCellTraits;
struct mrpt::maps::TRandomFieldCell;
struct mrpt::maps::TRandomFieldVoxel;

// classes

class mrpt::opengl::CAngularObservationMesh;
class mrpt::maps::CBeacon;
class mrpt::maps::CBeaconMap;
class mrpt::maps::CColouredOctoMap;
class mrpt::maps::CColouredPointsMap;
class mrpt::maps::CGasConcentrationGridMap2D;
class mrpt::maps::CHeightGridMap2D;
class mrpt::maps::CHeightGridMap2D_Base;
class mrpt::maps::CHeightGridMap2D_MRF;
class mrpt::maps::CMultiMetricMap;
class mrpt::obs::CObservationPointCloud;
class mrpt::maps::COccupancyGridMap2D;
class mrpt::maps::COccupancyGridMap3D;
class mrpt::maps::COctoMap;

template <class octree_t, class octree_node_t>
class mrpt::maps::COctoMapBase;

class mrpt::opengl::CPlanarLaserScan;
class mrpt::maps::CPointCloudFilterBase;
class mrpt::maps::CPointCloudFilterByDistance;
class mrpt::maps::CPointsMap;
class mrpt::maps::CPointsMapXYZI;
class mrpt::maps::CRandomFieldGridMap2D;
class mrpt::maps::CRandomFieldGridMap3D;
class mrpt::maps::CReflectivityGridMap2D;
class mrpt::maps::CSimplePointsMap;
class mrpt::maps::CVoxelMap;

template <typename node_t>
class mrpt::maps::CVoxelMapBase;

template <typename voxel_node_t, typename occupancy_t = int8_t>
class mrpt::maps::CVoxelMapOccupancyBase;

class mrpt::maps::CVoxelMapRGB;
class mrpt::maps::CWeightedPointsMap;
class mrpt::maps::CWirelessPowerGridMap2D;

// global functions

void mrpt::maps::registerAllClasses_mrpt_maps();

Global Functions

void mrpt::maps::registerAllClasses_mrpt_maps()

Forces manual RTTI registration of all serializable classes in this namespace.

Should never be required to be explicitly called by users, except if building MRPT as a static library.