Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/MRPT/mrpt

:zap: The Mobile Robot Programming Toolkit (MRPT)
https://github.com/MRPT/mrpt

autonomous-driving c-plus-plus computer-vision maps mobile-robotics mobile-robots mrpt particle-filter robot-framework robot-motion-estimate robot-programming robotics slam

Last synced: 16 days ago
JSON representation

:zap: The Mobile Robot Programming Toolkit (MRPT)

Awesome Lists containing this project

README

        

The MRPT project






[![CI Check clang-format](https://github.com/MRPT/mrpt/actions/workflows/check-clang-format.yml/badge.svg)](https://github.com/MRPT/mrpt/actions/workflows/check-clang-format.yml)



DOI

## 1. Introduction

Mobile Robot Programming Toolkit (MRPT) provides C++ libraries aimed at researchers
in mobile robotics and computer vision. Libraries include [SLAM solutions](https://www.mrpt.org/List_of_SLAM_algorithms), [2D and 3D spatial transformations](https://www.mrpt.org/tutorials/programming/maths-and-geometry/2d_3d_geometry/), [SE(2)/SE(3) Lie groups](https://ingmec.ual.es/~jlblanco/papers/jlblanco2010geometry3D_techrep.pdf),
[probability density functions (pdfs)](https://docs.mrpt.org/reference/latest/class_mrpt_math_CProbabilityDensityFunction.html) over points, landmarks, poses and maps,
Bayesian inference ([Kalman filters](https://www.mrpt.org/Kalman_Filters), [particle filters](https://www.mrpt.org/tutorials/programming/statistics-and-bayes-filtering/particle_filters/)), [image processing](https://www.mrpt.org/tutorials/programming/images-image-processing-camera-models/), [obstacle avoidance](https://www.mrpt.org/Obstacle_avoidance), [etc](https://docs.mrpt.org/reference/latest/modules.html).
MRPT also provides GUI apps for [camera calibration](https://docs.mrpt.org/reference/latest/app_camera-calib.html), [dataset inspection](https://docs.mrpt.org/reference/latest/app_RawLogViewer.html),
and [much more](https://docs.mrpt.org/reference/latest/applications.html).

## 2. Resources
* Download the latest unstable code with: `git clone https://github.com/MRPT/mrpt.git --recursive`
* Ask questions at [stackoverflow](https://stackoverflow.com/search?q=mrpt) (use the tag `mrpt`)
* [Main project website](https://www.mrpt.org/), including [sources and Windows installer downloads](https://www.mrpt.org/download-mrpt/)
* [C++ API reference](https://docs.mrpt.org/reference/)
* [ROS packages](https://docs.mrpt.org/reference/latest/wrappers.html#mrpt-ros-packages)
* [Bindings documentation](https://github.com/MRPT/mrpt/wiki) (Python, Matlab)
* Source code for [dozens of examples](https://docs.mrpt.org/reference/latest/examples.html)
* Example configuration files for MRPT applications can be found at:
[MRPT/share/mrpt/config_files](https://github.com/MRPT/mrpt/tree/master/share/mrpt/config_files)
* Some sample datasets are stored in:
[MRPT/share/mrpt/datasets](https://github.com/MRPT/mrpt/tree/master/share/mrpt/datasets).
A more complete dataset repository is [available online](https://www.mrpt.org/robotics_datasets).
* [How to contribute](https://github.com/MRPT/mrpt/blob/master/.github/CONTRIBUTING.md) with your code for new feaures, bug fixes, etc.
* MRPT is used in the [MOLA modular SLAM framework](https://github.com/MOLAorg/mola/).

## 3. Install

### 3.1. Ubuntu/Debian

Install simply with `sudo apt install libmrpt-dev mrpt-apps`, but check first what MRPT version exists in your [Ubuntu](https://packages.ubuntu.com/search?keywords=mrpt&searchon=sourcenames) or [Debian](https://qa.debian.org/madison.php?package=mrpt) ([tracker](https://tracker.debian.org/pkg/mrpt)) distribution.

If you want a more recent version, check out [this PPA](https://launchpad.net/~joseluisblancoc/+archive/ubuntu/mrpt) for nightly builds from the `develop` branch, or [this one](https://launchpad.net/~joseluisblancoc/+archive/ubuntu/mrpt-stable) for stable releases.

sudo add-apt-repository ppa:joseluisblancoc/mrpt # develop branch
#sudo add-apt-repository ppa:joseluisblancoc/mrpt-stable # master (stable releases) branch
sudo apt install libmrpt-dev mrpt-apps

Supported distributions:
* Ubuntu 18.04 LTS (Bionic), Ubuntu 20.04 LTS (Focal), or newer.

### 3.2. Build from sources

See [build documentation](https://docs.mrpt.org/reference/latest/compiling.html) ([source](doc/source/compiling.rst)).

### 3.3. Windows precompiled versions

Executables (`.exe`s and `.dll`s) and development libraries (`.h`s and `.lib`s) included:

[Nightly built Windows installer](https://github.com/MRPT/mrpt/releases/tag/Windows-nightly-builds)

### 3.4. As a ROS package

MRPT is also shipped as ROS packages.

For ROS 1:
```bash
# (ROS 1 only!)
sudo apt install ros-$ROS_DISTRO-mrpt2
```

For ROS 2, see instructions and available versions: https://github.com/MRPT/mrpt_ros

## 4. License
MRPT is released under the [new BSD license](http://www.mrpt.org/License/).

**Contributors**



## 5. Versions in repositories

![Repology](https://repology.org/badge/vertical-allrepos/mrpt.svg)