Mobile Robot Programming Toolkit
The Mobile Robot Programming Toolkit (MRPT) is a cross-platform software C++ library for helping robotics researchers design and implement algorithms related to simultaneous localization and mapping (SLAM), computer vision, and motion planning (obstacle avoidance). Different research groups have employed MRPT to implement projects reported in some of the major robotics journals and conferences.
MRPT is free and open-source software released under the BSD 3-clause license; pre-1.0.0 versions were released under the GNU General Public License (GPL).
Some features included in the project as user-applications:
- Visualization and manipulation of large datasets.
- SLAM algorithms: incremental mapping with ICP, Extended Kalman filtering, Rao-Blackwellized particle filters and GraphSLAM.
- Grabbing datasets from robotic sensors.
Upon a selection of the individual libraries provided by MRPT, users can develop new applications.
MRPT participated in Google Summer of Code in 2016–2018.
Representation of metric maps
Through polymorphism in the design of metric-map classes, observations (such as a laser scans) can be inserted into a grid-map or a map of points, or both simultaneously, transparently to the user.
The following representations of metric maps are implemented:
- Occupancy grid maps
- Point maps
- Landmark maps: discrete elements are 3D points sensed through range and bearing; for example, visual landmarks
- Beacon maps: elements are also 3D points, but sensed by means of range-only devices
- Coloured point maps
- Gas concentration maps
- A multi map, collections of any of the other maps, behaving as one map
See also
- Webots - professional commercial mobile robot simulator
- Microsoft Robotics Studio
- Player Project
- Robot software
- Arduino