The Mobile Robot Programming Toolkit (MRPT) is a cross-platform and open source C++ library aimed to help robotics researchers to design and implement algorithms related to Simultaneous Localization and Mapping (SLAM), computer vision and motion planning (obstacle avoidance). Results obtained from this project have appeared in some of the major robotics journals and conferences[1].
Mobile Robot Programming Toolkit (MRPT) | |
---|---|
File:Mrpt icp-slam screenshot.png Building a map from a dataset of 2D laser scans. | |
Developer(s) | The MAPIR group |
Stable release | |
Operating system | Linux, Windows |
Type | Robotics suite |
License | GNU General Public License |
Website | Official Webpage |
MRPT is open source and distributed under the GPL.
Some features included in the project as user-applications:
- Visualization and manipulation of large datasets.
- Off-line SLAM algorithms, using ICP, Extended Kalman filtering, or Rao-Blackwellized particle filter.
- Grabbing datasets from robotic sensors.
Upon a selection of the individual libraries provided by MRPT, users can develop new applications. This is a summary of the topics covered by these libraries:
- mrpt-core: Linear algebra, statistics, SLAM algorithms, 3D geometry, GUI classes for 2D and 3D visualization, serialization, etc.
- mrpt-hwdrivers: Interfaces to robotic sensors: ARIA-compatible robots, GPS, Hokuyo laser scanners, etc.
- mrpt-reactivenav: An implementation of obstacle avoidance.
- mrpt-hmtslam: An implementation of Hybrid Metric-Topological SLAM.
Representation of metric maps
Through polymorphism, several kinds of metric map can be managed in the same way. This allows, for example, inserting laser scans in a grid-map, or a map of points transparently to the user.
The following representations of metric maps are implemented in the last release:
- 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.
See also
- Microsoft Robotics Studio
- Player Project
- Robot software
- openslam.org - A good collection of open source code and explanations of SLAM.
References
- ^ A list of scientific papers in which MRPT has been used for producing the results.
External links
- Project main website.