Mobile Robot Programming Toolkit: Difference between revisions

Content deleted Content added
Jose278 (talk | contribs)
No edit summary
Template:Infobox software, WP:REFerence WP:CITation parameters: cut whitespace characters to standardize, aid work on small screens, add, fill, author > last + first, reorder, needless underscores > spaces, update-standardize-conform. WP:LINKs: update-standardize, adds, needless WP:PIPE > WP:NOPIPE. Nonlead-word proper + nonproper noun MOS:CAPS > WP:LOWERCASE sentence case. Small WP:COPYEDITs WP:EoS: WP:TERSE, cut needless word repeats.
 
(79 intermediate revisions by 49 users not shown)
Line 1:
{{Infobox Software |software
| name = Mobile Robot Programming Toolkit (MRPT)
| screenshot = [[Image:mrpt_icp-slam_screenshotLogo of the MRPT project.png|200px]]
| screenshot size = 150px
| caption = Building a map from a dataset of 2D laser scans.
| latest_release_versioncaption = MRPT 0.6.1logo
| developer = [https://w3.ual.es/~jlblanco/ José Luis Blanco Claraco], [https://github.com/MRPT/mrpt/blob/master/AUTHORS contributors]
| latest_release_date = [[August 27]], [[2008]]
| genre = [[Robotics suite]]
| developer = The [http://babel.isa.uma.es/mapir/ MAPIR] group
| license = [[BSD licenses#3-clause|BSD 3-clause]]
| operating_system = [[Linux]], [[Windows]]
| latest release version = 2.11.5
| genre = [[Robotics suite]]
| latest release date = {{Start date and age|2023|12|21}}<ref>{{cite web |url=https://github.com/MRPT/mrpt |title=Releases: MRPT |website=[[GitHub]].com |access-date=2024-01-13}}</ref>
| license = [[GNU General Public License]]
| operating system = [[Linux]], [[Microsoft Windows|Windows]], [[macOS]]
| website = [http://mrpt.sourceforge.net/ Official Webpage]
| programming language = [[C++]]
| platform = [[Cross-platform]]
| repo = {{URL|https://github.com/MRPT/mrpt}}
| website = {{URL|www.mrpt.org}}
}}
 
The '''Mobile Robot Programming Toolkit''' ('''MRPT)''') is a [[cross-platform and open sourcesoftware]] [[C++]] [[Library (computing)|library]] aimedfor to helphelping [[robotics]] researchers to design and implement algorithms[[algorithm]]s related to [[Simultaneous_localization_and_mapping|Simultaneoussimultaneous Localizationlocalization and Mappingmapping]] (SLAM), [[Computer_vision|computer vision]], and [[Motion_planning|motion planning]] (obstacle avoidance). ResultsDifferent obtainedresearch fromgroups thishave projectemployed haveMRPT to implement projects appearedreported in some of the major robotics journals and conferences.<ref>[http:{{cite conference |citeseerx=10.1.1.127.3097 |title=Consistent observation grouping for generating metric-topological maps that improves robot localization |last1=Blanco |first1=J. L. |last2=Gonzalez |first2=J. |last3=Fernández-Madrigal |first3=J. and J.A. |year=2006 |book-title=IEEE International Conference on Robotics and Automation (ICRA) |pages=818–823 |doi=10.1109/ROBOT.2006.1641810}}</babelref><ref>{{cite conference |title=Survey of popular robotics simulators, frameworks, and toolkits |last1=Harris |first1=A.isa |last2=Conrad |first2=J.umaM.es |date=March 2011 |book-title=Proceedings of IEEE Southeastcon |pages=243–249 |doi=10.1109/mrptSECON.2011.5752942}}</indexref><ref>{{cite journal |last1=Ryde |first1=J. |last2=Hu |first2=H. |year=2010 |title=3D mapping with multi-resolution occupied voxel lists |journal=Autonomous Robots |volume=28 |issue=2 |pages=169–185 |publisher=Springer |doi=10.1007/s10514-009-9158-3 |citeseerx=10.1.1.153.5916 |s2cid=6659876}}</ref><ref>{{cite conference |last1=Tuza |first1=Z. |last2=Rudan |first2=J. |last3=Szederkényi |first3=G |date=October 2010 |chapter=Developing an integrated software environment for mobile robot navigation and control |title=International Conference on Indoor Positioning and Indoor Navigation |pages=1–6 |doi=10.1109/IPIN.2010.5647506}}</ref><ref>[http://www.mrpt.phporg/Papers A list of scientific papers] in which MRPT has been used for producing the results.</ref>.
 
MRPT is [[free and open-source software]] released under the [[BSD licenses#3-clause|BSD 3-clause]] license; pre-1.0.0 versions were released under the [[GNU General Public License]] (GPL).
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 [[Simultaneous_localization_and_mapping|SLAM]] algorithms,: usingincremental mapping with [[Iterative_Closest_PointIterative Closest Point|ICP]], Extended [[Kalman_filter|Kalman filteringfilter]]ing, or [[Rao-Blackwellized particle filterfilters and [[GraphSLAM]].
* 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:
 
<center>
[[Image:mrpt_libs.png]]
</center>
 
* ''mrpt-core'': [[Linear algebra]], statistics, SLAM algorithms, 3D geometry, GUI classes for 2D and 3D visualization, [[Serialization_(computing)|serialization]], etc.
* ''mrpt-hwdrivers'': Interfaces to robotic sensors: [http://robots.mobilerobots.com/ARIA/ ARIA]-compatible robots, GPS, Hokuyo [[LIDAR|laser scanners]], etc.
* ''mrpt-reactivenav'': An implementation of [[Motion_planning|obstacle avoidance]].
* ''mrpt-hmtslam'': An implementation of Hybrid Metric-Topological SLAM.
 
Upon a selection of the individual libraries provided by MRPT,<ref>{{cite web |author=MRPT.org |url=http://www.mrpt.org/Libraries |title=List of MRPT libraries |date=2013-10-08 |access-date=2014-04-19}}</ref> users can develop new applications.
 
MRPT participated in [[Google Summer of Code]] in 2016–2018.<ref>{{cite web |author=GSOC |url=https://summerofcode.withgoogle.com/archive/2016/organizations/5644101080842240/ |title=MRPT page in GSOC 2016 |date=2018-08-07 |access-date=2018-08-07 |archive-date=2020-10-26 |archive-url=https://web.archive.org/web/20201026071254/https://summerofcode.withgoogle.com/archive/2016/organizations/5644101080842240/ |url-status=dead}}</ref><ref>{{cite web |author=GSOC |url=https://summerofcode.withgoogle.com/archive/2017/organizations/5289044053327872/ |title=MRPT page in GSOC 2017|date=2018-08-07 |access-date=2018-08-07}}</ref>
 
== Representation of metric maps ==
Through [[Polymorphism (computer science)|polymorphism]] in the design of metric-map classes, observations (such as a laser scans) can be inserted into a [[Occupancy grid mapping|grid-map]] or a map of points, or both simultaneously, transparently to the user.
 
The following representations of metric maps are implemented in the last release:
Through polymorphism, several kinds of metric map can be managed in the same way. This allows, for example, inserting laser scans in a [[Occupancy_grid_mapping|grid-map]], or a map of points transparently to the user.
* Occupancy grid maps.
 
* Point maps.
The following representations of metric maps are implemented in the last release:
* Landmark maps: discrete elements are 3D points sensed through range and bearing.; Forfor example, [[Interest_point_detectionInterest |point detection|visual landmarks]].
* Occupancy grid maps.
* Beacon maps: elements are also 3D points, but sensed by means of range-only devices.
* Point maps.
* Coloured point maps
* Landmark maps: discrete elements are 3D points sensed through range and bearing. For example, [[Interest_point_detection | visual landmarks]].
* Gas concentration maps
* Beacon maps: elements are also 3D points, but sensed by means of range-only devices.
* A ''multi map'', collections of any of the other maps, behaving as one map
 
== See also ==
{{portalPortal|Free software|Freeand Softwareopen-source Portal Logo.svgsoftware}}
* [[Webots]] - professional commercial mobile robot simulator
 
* [[Microsoft Robotics Studio]]
* [[Player Project]]
* [[Robot software]]
* [[Arduino]]
* [http://openslam.org/ openslam.org] - A good collection of open source code and explanations of SLAM.
 
==References==
{{Reflist}}
<references/>
 
==External links==
* {{Official website|www.mrpt.org}}
* Project [http://mrpt.sourceforge.net main website].
 
[[Category:FreeC++ softwarelibraries]]
[[Category:Robotics suites]]
[[Category:Software that uses wxWidgets]]
 
[[Category:Software using the BSD license]]
{{free-software-stub}}
{{robot-stub}}