documentation

List of all tutorials

Below follows a list of all documentation pages.


It's recommended to start with the ordered table of contents of all tutorials instead.


Graph-SLAM maps


1. Text .graph file format


This file format was (to the best of my knowledge) first used in public software with TORO, and since then has been employed by other libraries and programs published in OpenSLAM.org.

Robotics file format standards in MRPT

The MRPT defines a set of standard file formats with the intention of easing the exchange of robotic raw datasets, and also already built maps, between different programs and C++ classes.


Below can be found the so far well-established file formats:

1. Datasets

  • Typical extension(s): .rawlog

Tutorial 3D Scenes

The main class behind 3D scenes is mrpt::opengl::COpenGLScene, which allows the user to create, load, save, and render 3D scenes using OpenGL primitives.

Particle Filters

The following C++ classes are the base for different PF implementations all across MRPT:

Kalman Filters

Kalman Filter algorithms (EKF,IEKF,UKF) are centralized in one single virtual class, mrpt::bayes::CKalmanFilterCapable. This class contains the system state vector and the system covariance matrix, as well as a generic method to execute one complete iteration of the selected algorithm. In practice, solving a specific problem requires deriving a new class from this virtual class and implementing a few methods such as transforming the state vector through the transition model, or computing the Jacobian of the observation model linearized at some given value of the state space.

The hierarchical model of metric maps



1. About maps in the MRPT

All metric maps have a common interface to ease polymorphism and generic programming. To see these common methods, refer to the C++ class CMetricMap. All the map classes are within the namespace mrpt::slam, which is omitted here for readability.

Example: SwissRanger SR4000 3D camera demo application

SR4000

This example (which can be found in MRPT/samples/swissranger_cam_demo/ since MRPT 0.9.0) illustrates the usage of the cross-plaftform C++ class mrpt::hwdrivers::CSwissRanger3DCamera and how to render the 3D point cloud, intensity images, etc.. in real-time using MRPT's opengl scenes.

Tutorials: Supported sensors and robotic hardware

This page contains a list of supported sensors, along example configuration blocks for those based on the CGenericSensor interface. All hardware and sensor-related classes can be found in the mrpt-hwdrivers library, which contains the mrpt::hwdrivers namespace. See also the rawlog-grabber application.

Unless specifically noted, all devices are supported under both Windows and Linux, with only some (for now) supported on MacOS.

MRPT libraries tree layout

NOTE: This page describes the internal structure of MRPT sources, which is intended for MRPT developers/contributors. More often, users will be interested in writting their own programs that use MRPT, as described here.

NOTE 2: See also the Phyton script MRPT/scripts/bootstrap_new_lib.py which automates the creation of a new library in the MRPT source tree.


Tree overview

Syndicate content

The Mobile Robot Programming Toolkit (MRPT) initiative (C) 2010