Mobile Robot Programming Toolkit

Mobile Robot Programming Toolkit
Mobile Robot Programming Toolkit (MRPT)
SENA robot navigation demo mlg2007.jpg
Obstacle avoidance on a robotic wheelchair.
Developer(s) The MAPIR group
Stable release MRPT 0.9.4 / June 4, 2011
Written in C++
Operating system Linux, Windows
Type Robotics suite
License GNU General Public License
Website mrpt.org

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). Different research groups have applied it to implement projects reported in some of the major robotics journals and conferences [1] [2] [3] [4] [5].

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 a Rao-Blackwellized particle filter.
  • Grabbing datasets from robotic sensors.

Upon a selection of the individual libraries provided by MRPT,[6] users can develop new applications.

Contents

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 a single map.

See also

References

  1. ^ J.L. Blanco, J. Gonzalez, J. and J.A. Fernández-Madrigal (2006). "Consistent observation grouping for generating metric-topological maps that improves robot localizatio". IEEE International Conference on Robotics and Automation (ICRA). pp. 818-823. http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.127.3097&rep=rep1&type=pdf. 
  2. ^ A. Harris, J.M. Conrad (March 2011). "Survey of popular robotics simulators, frameworks, and toolkits". Proceedings of IEEE Southeastcon. pp. 243-249. 10.1109/SECON.2011.5752942. http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=5752942. 
  3. ^ Ryde, J.; Hu, H. (2010). "3D mapping with multi-resolution occupied voxel lists". Autonomous Robots (Springer) 28 (2): 169–185. doi:10.1007/s10514-009-9158-3. http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.153.5916&rep=rep1&type=pdf. Retrieved September 14, 2011. 
  4. ^ Tuza, Z. and Rudan, J. and Szederkényi, G (Oct, 2010). [http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=5647506 "Developing an integrated software environment for mobile robot navigation and control"]. International Conference on Indoor Positioning and Indoor Navigation. pp. 1-6. http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=5647506. 
  5. ^ A list of scientific papers in which MRPT has been used for producing the results.
  6. ^ http://www.mrpt.org/Libraries

External links