Mobile Robot Programming Toolkit (MRPT) provides C++ libraries aimed at researchers in mobile robotics and computer vision. Libraries include SLAM solutions, 3D(6D) geometry, SE(2)/SE(3) Lie groups, probability density functions (pdfs) over points, landmarks, poses and maps, Bayesian inference (Kalman filters, particle filters), image processing, obstacle avoidance, etc. MRPT also provides GUI apps for Stereo camera calibration, dataset inspection, and much more.
- Download the latest unstable code with:
git clone https://github.com/MRPT/mrpt.git --depth 1
- Ask questions at: this Google group or at stackoverflow (please, use the tag
mrpt
!) - Main project website, including sources and Windows installer downloads
- C++ API reference
- ROS packages:
mrpt_navigation
,mrpt_slam
- Bindings documentation (Python, Matlab)
- Source code for dozens of examples
- Example configuration files for MRPT applications can be found at: MRPT/share/mrpt/config_files
- Some sample datasets are stored in: MRPT/share/mrpt/datasets. A more complete dataset repository is available online.
- How to contribute with your code for new feaures, bug fixes, etc.
- MRPT is used in the MOLA modular SLAM framework.
See this PPA for nightly builds from the develop
branch, or this one 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 update # Only required for Ubuntu 16.04
sudo apt install libmrpt-dev mrpt-apps
Supported distributions:
- Ubuntu 20.04 LTS (Focal), Ubuntu 18.04 LTS (Bionic), 18.10 (Cosmic), 19.10 (Eoan)
- Ubuntu 16.04 LTS Xenial (EOL: April 2021)
-
Using 16.04 requires installing gcc-7 due to some bugs in gcc-5:
add-apt-repository ppa:ubuntu-toolchain-r/test apt-get update apt-get install -y g++-7
-
Minimum compiler requisites:
- gcc-7 or newer.
- Ubuntu 16.04LTS Xenial: Instructions for installing gcc-7 in this version of Ubuntu.
- Ubuntu 18.04 or newer: default gcc version is ok.
- clang-4 or newer.
- Windows: Visual Studio 2017 version 15.3 or newer.
- cmake >= 3.3 required (>=3.4 for Windows).
- Eigen >= 3.3 required.
To build in Debian/Ubuntu follow the steps below. See full build docs online for Windows instructions or to learn all the details.
- Install minimum recommended dependencies:
sudo apt install build-essential pkg-config cmake libwxgtk3.0-dev libwxgtk3.0-gtk3-dev \
libopencv-dev libeigen3-dev libgtest-dev
MRPT builds against OpenCV 2.4.x, 3.x, 4.x, but it is recommended to use 3.0 or later.
- Recommended: Install additional dependencies to enable most MRPT features (except ROS bridges):
sudo apt install libftdi-dev freeglut3-dev zlib1g-dev libusb-1.0-0-dev \
libudev-dev libfreenect-dev libdc1394-22-dev libavformat-dev libswscale-dev \
libassimp-dev libjpeg-dev libsuitesparse-dev libpcap-dev liboctomap-dev \
libglfw3-dev
- Install additional dependencies for
ros1bridge
using official Ubuntu repositories. If you already have a ROS distribution installed, doingsource /opt/ros/xxx/setup.bash
is enough, no further packages must be installed.
sudo apt install libcv-bridge-dev libgeometry-msgs-dev libnav-msgs-dev librosbag-storage-dev libroscpp-dev libsensor-msgs-dev libstd-srvs-dev libstereo-msgs-dev libtf2-dev libtf2-msgs-dev libbz2-dev
- Build with
cmake
as usual:
mkdir build && cd build
cmake ..
make
Executables (.exe
s and .dll
s) and development libraries (.h
s and .lib
s) included:
Nightly built Windows installer
MRPT is released under the new BSD license.