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.
 
(73 intermediate revisions by 49 users not shown)
Line 1:
{{Infobox Software |software
| name = Mobile Robot Programming Toolkit (MRPT)
| screenshot = [[Image:SENA_robot_navigation_demo_mlg2007Logo of the MRPT project.jpg|200px]]png
| screenshot size = 150px
| caption = Obstacle avoidance on a robotic wheelchair.
| 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 schematic.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.
 
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.
 
The following representations of metric maps are implemented:
* [[Occupancy_grid_mapping|Occupancy grid maps]].
 
* Point maps.
* [[Occupancy_grid_mapping|Occupancy grid maps]].
* Landmark maps: discrete elements are 3D points sensed through range and bearing; for example, [[Interest point detection|visual landmarks]]
* Point maps.
* LandmarkBeacon maps: discrete elements are also 3D points, but sensed throughby rangemeans andof bearing. For example, [[Interest_point_detection | visualrange-only landmarks]].devices
* Coloured point maps
* Beacon maps: elements are also 3D points, but sensed by means of range-only devices.
* ColouredGas pointconcentration maps.
* A ''multi map'', collections of any of the other maps, behaving as one map
* Gas concentration maps.
 
== 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}}