Simultaneous localization and mapping

(Redirected fromVSLAM)

Simultaneous localization and mapping(SLAM) is the computational problem of constructing or updating a map of an unknown environment while simultaneously keeping track of anagent's location within it. While this initially appears to be achicken or the eggproblem, there are severalalgorithmsknown to solve it in, at least approximately, tractable time for certain environments. Popular approximate solution methods include theparticle filter,extendedKalman filter,covariance intersection, and GraphSLAM. SLAM algorithms are based on concepts incomputational geometryandcomputer vision,and are used inrobot navigation,robotic mappingandodometryforvirtual realityoraugmented reality.

2005 DARPA Grand Challenge winner Stanleyperformed SLAM as part of its autonomous driving system.
A map generated by a SLAM Robot

SLAM algorithms are tailored to the available resources and are not aimed at perfection but at operational compliance. Published approaches are employed inself-driving cars,unmanned aerial vehicles,autonomous underwater vehicles,planetary rovers,newerdomestic robotsand even inside the human body.

Mathematical description of the problem

edit

Given a series of controlsand sensor observationsover discrete time steps,the SLAM problem is to compute an estimate of the agent's stateand a map of the environment.All quantities are usually probabilistic, so the objective is to compute[1]

ApplyingBayes' rulegives a framework for sequentially updating the location posteriors, given a map and a transition function,

Similarly the map can be updated sequentially by

Like many inference problems, the solutions to inferring the two variables together can be found, to a local optimum solution, by alternating updates of the two beliefs in a form of anexpectation–maximization algorithm.

Algorithms

edit

Statistical techniques used to approximate the above equations includeKalman filtersandparticle filters(the algorithm behind Monte Carlo Localization). They provide an estimation of theposterior probability distributionfor the pose of the robot and for the parameters of the map. Methods which conservatively approximate the above model usingcovariance intersectionare able to avoid reliance on statistical independence assumptions to reduce algorithmic complexity for large-scale applications.[2]Other approximation methods achieve improved computational efficiency by using simple bounded-region representations of uncertainty.[3]

Set-membership techniquesare mainly based oninterval constraint propagation.[4][5] They provide a set which encloses the pose of the robot and a set approximation of the map.Bundle adjustment,and more generallymaximum a posteriori estimation(MAP), is another popular technique for SLAM using image data, which jointly estimates poses and landmark positions, increasing map fidelity, and is used in commercialized SLAM systems such as Google's ARCore which replaces their prior augmented reality computing platform named Tango, formerlyProject Tango.MAP estimators compute the most likely explanation of the robot poses and the map given the sensor data, rather than trying to estimate the entire posterior probability.

New SLAM algorithms remain an active research area,[6]and are often driven by differing requirements and assumptions about the types of maps, sensors and models as detailed below. Many SLAM systems can be viewed as combinations of choices from each of these aspects.

Mapping

edit

Topological maps are a method of environment representation which capture the connectivity (i.e., topology) of the environment rather than creating a geometrically accurate map. Topological SLAM approaches have been used to enforce global consistency in metric SLAM algorithms.[7]

In contrast, grid maps use arrays (typically square or hexagonal) of discretized cells to represent a topological world, and make inferences about which cells are occupied. Typically the cells are assumed to be statistically independent to simplify computation. Under such assumption,are set to 1 if the new map's cells are consistent with the observationat locationand 0 if inconsistent.

Modern self driving cars mostly simplify the mapping problem to almost nothing, by making extensive use of highly detailed map data collected in advance. This can include map annotations to the level of marking locations of individual white line segments and curbs on the road. Location-tagged visual data such as Google's StreetView may also be used as part of maps. Essentially such systems simplify the SLAM problem to a simpler localization only task, perhaps allowing for moving objects such as cars and people only to be updated in the map at runtime.

Sensing

edit
Accumulated registered point cloud fromlidarSLAM

SLAM will always use several different types of sensors, and the powers and limits of various sensor types have been a major driver of new algorithms.[8]Statistical independence is the mandatory requirement to cope with metric bias and with noise in measurements. Different types of sensors give rise to different SLAM algorithms which assumptions are most appropriate to the sensors. At one extreme, laser scans or visual features provide details of many points within an area, sometimes rendering SLAM inference unnecessary because shapes in these point clouds can be easily and unambiguously aligned at each step viaimage registration.At the opposite extreme,tactile sensorsare extremely sparse as they contain only information about points very close to the agent, so they require strong prior models to compensate in purely tactile SLAM. Most practical SLAM tasks fall somewhere between these visual and tactile extremes.

Sensor models divide broadly into landmark-based and raw-data approaches. Landmarks are uniquely identifiable objects in the world which location can be estimated by a sensor, such asWi-Fiaccess points or radio beacons. Raw-data approaches make no assumption that landmarks can be identified, and instead modeldirectly as a function of the location.

Optical sensors may be one-dimensional (single beam) or 2D- (sweeping)laser rangefinders,3D high definition light detection and ranging (lidar), 3D flash lidar, 2D or 3Dsonarsensors, and one or more 2Dcameras.[8]Since the invention of local features, such asSIFT,there has been intense research into visual SLAM (VSLAM) using primarily visual (camera) sensors, because of the increasing ubiquity of cameras such as those in mobile devices.[9] Follow up research includes.[10]Both visual andlidarsensors are informative enough to allow for landmark extraction in many cases. Other recent forms of SLAM include tactile SLAM[11](sensing by local touch only), radar SLAM,[12]acoustic SLAM,[13]and Wi-Fi-SLAM (sensing by strengths of nearby Wi-Fi access points).[14]Recent approaches apply quasi-opticalwirelessranging formulti-lateration(real-time locating system(RTLS)) ormulti-angulationin conjunction with SLAM as a tribute to erratic wireless measures. A kind of SLAM for human pedestrians uses a shoe mountedinertial measurement unitas the main sensor and relies on the fact that pedestrians are able to avoid walls to automatically build floor plans of buildings by anindoor positioning system.[15]

For some outdoor applications, the need for SLAM has been almost entirely removed due to high precision differentialGPSsensors. From a SLAM perspective, these may be viewed as location sensors which likelihoods are so sharp that they completely dominate the inference. However, GPS sensors may occasionally decline or go down entirely, e.g. during times of military conflict, which are of particular interest to some robotics applications.

Kinematics modeling

edit

Theterm represents the kinematics of the model, which usually include information about action commands given to a robot. As a part of the model, thekinematics of the robotis included, to improve estimates of sensing under conditions of inherent and ambient noise. The dynamic model balances the contributions from various sensors, various partial error models and finally comprises in a sharp virtual depiction as a map with the location and heading of the robot as some cloud of probability. Mapping is the final depicting of such model, the map is either such depiction or the abstract term for the model.

For 2D robots, the kinematics are usually given by a mixture of rotation and "move forward" commands, which are implemented with additional motor noise. Unfortunately the distribution formed by independent noise in angular and linear directions is non-Gaussian, but is often approximated by a Gaussian. An alternative approach is to ignore the kinematic term and read odometry data from robot wheels after each command—such data may then be treated as one of the sensors rather than as kinematics.

Moving objects

edit

Non-static environments, such as those containing other vehicles or pedestrians, continue to present research challenges.[16][17]SLAM with DATMO is a model which tracks moving objects in a similar way to the agent itself.[18]

Loop closure

edit

Loop closure is the problem of recognizing a previously-visited location and updating beliefs accordingly. This can be a problem because model or algorithm errors can assign low priors to the location. Typical loop closure methods apply a second algorithm to compute some type of sensor measure similarity, and reset the location priors when a match is detected. For example, this can be done by storing and comparingbag of wordsvectors ofscale-invariant feature transform(SIFT) features from each previously visited location.

Exploration

edit

Active SLAMstudies the combined problem of SLAM with deciding where to move next to build the map as efficiently as possible. The need for active exploration is especially pronounced in sparse sensing regimes such as tactile SLAM. Active SLAM is generally performed by approximating theentropyof the map under hypothetical actions. "Multi agent SLAM" extends this problem to the case of multiple robots coordinating themselves to explore optimally.

Biological inspiration

edit

In neuroscience, thehippocampusappears to be involved in SLAM-like computations,[19][20][21]giving rise toplace cells,and has formed the basis for bio-inspired SLAM systems such as RatSLAM.

Collaborative SLAM

edit

Collaborative SLAMcombines sensors from multiple robots or users to generate 3D maps.[22]This capability was demonstrated by a number of teams in the2021 DARPA Subterranean Challenge.

Specialized SLAM methods

edit

Acoustic SLAM

edit

An extension of the common SLAM problem has been applied to the acoustic domain, where environments are represented by the three-dimensional (3D) position of sound sources, termed aSLAM (AcousticSimultaneousLocalization andMapping).[23]Early implementations of this technique have used direction-of-arrival (DoA) estimates of the sound source location, and rely on principal techniques ofsound localizationto determine source locations. An observer, or robot must be equipped with amicrophone arrayto enable use of Acoustic SLAM, so that DoA features are properly estimated. Acoustic SLAM has paved foundations for further studies in acoustic scene mapping, and can play an important role in human-robot interaction through speech. To map multiple, and occasionally intermittent sound sources, an acoustic SLAM system uses foundations in random finite set theory to handle the varying presence of acoustic landmarks.[24]However, the nature of acoustically derived features leaves Acoustic SLAM susceptible to problems of reverberation, inactivity, and noise within an environment.

Audiovisual SLAM

edit

Originally designed for human–robot interaction, Audio-Visual SLAM is a framework that provides the fusion of landmark features obtained from both the acoustic and visual modalities within an environment.[25]Human interaction is characterized by features perceived in not only the visual modality, but the acoustic modality as well; as such, SLAM algorithms for human-centered robots and machines must account for both sets of features. An Audio-Visual framework estimates and maps positions of human landmarks through use of visual features like human pose, and audio features like human speech, and fuses the beliefs for a more robust map of the environment. For applications in mobile robotics (ex. drones, service robots), it is valuable to use low-power, lightweight equipment such as monocular cameras, or microelectronic microphone arrays. Audio-Visual SLAM can also allow for complimentary function of such sensors, by compensating the narrow field-of-view, feature occlusions, and optical degradations common to lightweight visual sensors with the full field-of-view, and unobstructed feature representations inherent to audio sensors. The susceptibility of audio sensors to reverberation, sound source inactivity, and noise can also be accordingly compensated through fusion of landmark beliefs from the visual modality. Complimentary function between the audio and visual modalities in an environment can prove valuable for the creation of robotics and machines that fully interact with human speech and human movement.

Implementation methods

edit

Various SLAM algorithms are implemented in theopen-source softwareRobot Operating System(ROS) libraries, often used together with thePoint Cloud Libraryfor 3D maps or visual features fromOpenCV.

EKF SLAM

edit

Inrobotics,EKF SLAMis a class of algorithms which uses theextended Kalman filter(EKF) for SLAM. Typically, EKF SLAM algorithms are feature based, and use the maximum likelihood algorithm for data association. In the 1990s and 2000s, EKF SLAM had been the de facto method for SLAM, until the introduction ofFastSLAM.[26]

Associated with the EKF is the gaussian noise assumption, which significantly impairs EKF SLAM's ability to deal with uncertainty. With greater amount of uncertainty in the posterior, the linearization in the EKF fails.[27]

GraphSLAM

edit

Inrobotics,GraphSLAMis a SLAM algorithm which uses sparse information matrices produced by generating afactor graphof observation interdependencies (two observations are related if they contain data about the same landmark).[27]It is based on optimization algorithms.

History

edit

A seminal work in SLAM is the research of R.C. Smith and P. Cheeseman on the representation and estimation of spatial uncertainty in 1986.[28][29]Other pioneering work in this field was conducted by the research group ofHugh F. Durrant-Whytein the early 1990s.[30]which showed that solutions to SLAM exist in the infinite data limit. This finding motivates the search for algorithms which are computationally tractable and approximate the solution. The acronym SLAM was coined within the paper, "Localization of Autonomous Guided Vehicles" which first appeared inISRin 1995.[31]

The self-driving STANLEY and JUNIOR cars, led bySebastian Thrun,won the DARPA Grand Challenge and came second in the DARPA Urban Challenge in the 2000s, and included SLAM systems, bringing SLAM to worldwide attention. Mass-market SLAM implementations can now be found in consumer robot vacuum cleaners[32]andvirtual reality headsetssuch as theMeta Quest 2andPICO 4for markerless inside-out tracking.

See also

edit

References

edit
  1. ^Thrun, Sebastian;Burgard, Wolfram;Fox, Dieter.Probabalistic Robotics.The MIT Press. p. 309.
  2. ^Julier, S.; Uhlmann, J. (2001).Building a Million-Beacon Map.Proceedings of ISAM Conference on Intelligent Systems for Manufacturing.doi:10.1117/12.444158.
  3. ^Csorba, M.; Uhlmann, J. (1997).A Suboptimal Algorithm for Automatic Map Building.Proceedings of the 1997 American Control Conference.doi:10.1109/ACC.1997.611857.
  4. ^ Jaulin, L. (2009)."A nonlinear set-membership approach for the localization and map building of an underwater robot using interval constraint propagation"(PDF).IEEE Transactions on Robotics.25:88–98.doi:10.1109/TRO.2008.2010358.S2CID15474613.
  5. ^ Jaulin, L. (2011)."Range-only SLAM with occupancy maps; A set-membership approach"(PDF).IEEE Transactions on Robotics.27(5): 1004–1010.doi:10.1109/TRO.2011.2147110.S2CID52801599.
  6. ^Cadena, Cesar; Carlone, Luca; Carrillo, Henry; Latif, Yasir; Scaramuzza, Davide; Neira, Jose; Reid, Ian; Leonard, John J. (2016). "Past, Present, and Future of Simultaneous Localization and Mapping: Toward the Robust-Perception Age".IEEE Transactions on Robotics.32(6): 1309–1332.arXiv:1606.05830.Bibcode:2016arXiv160605830C.doi:10.1109/tro.2016.2624754.hdl:2440/107554.ISSN1552-3098.S2CID2596787.
  7. ^ Cummins, Mark; Newman, Paul (June 2008)."FAB-MAP: Probabilistic localization and mapping in the space of appearance"(PDF).The International Journal of Robotics Research.27(6): 647–665.doi:10.1177/0278364908090961.S2CID17969052.Retrieved23 July2014.
  8. ^abMagnabosco, M.; Breckon, T.P. (February 2013)."Cross-Spectral Visual Simultaneous Localization And Mapping (SLAM) with Sensor Handover"(PDF).Robotics and Autonomous Systems.63(2): 195–208.doi:10.1016/j.robot.2012.09.023.Retrieved5 November2013.
  9. ^ Se, Stephen; et al. (James J. Little;David Lowe) (2001).Vision-based mobile robot localization and mapping using scale-invariant features.Int. Conf. on Robotics and Automation (ICRA).doi:10.1109/ROBOT.2001.932909.
  10. ^Karlsson, N.; et al. (Di Bernardo, E.; Ostrowski, J; Goncalves, L.; Pirjanian, P.; Munich, M.) (2005).The vSLAM Algorithm for Robust Localization and Mapping.Int. Conf. on Robotics and Automation (ICRA).doi:10.1109/ROBOT.2005.1570091.
  11. ^Fox, C.; Evans, M.; Pearson, M.; Prescott, T. (2012).Tactile SLAM with a biomimetic whiskered robot(PDF).Proc. IEEE Int. Conf. on Robotics and Automation (ICRA).
  12. ^Marck, J.W.; Mohamoud, A.; v.d. Houwen, E.; van Heijster, R. (2013).Indoor radar SLAM A radar application for vision and GPS denied environments(PDF).Radar Conference (EuRAD), 2013 European.
  13. ^Evers, Christine, Alastair H. Moore, and Patrick A. Naylor. "Acoustic simultaneous localization and mapping (a-SLAM) of a moving microphone array and its surrounding speakers."2016 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP). IEEE, 2016.
  14. ^Ferris, Brian, Dieter Fox, and Neil D. Lawrence. "Wi-Fi-slam using gaussian process latent variable modelsArchived2022-12-24 at theWayback Machine."IJCAI. Vol. 7. No. 1. 2007.
  15. ^Robertson, P.; Angermann, M.; Krach, B. (2009).Simultaneous Localization and Mapping for Pedestrians using only Foot-Mounted Inertial Sensors(PDF).Ubicomp 2009. Orlando, Florida, USA: ACM.doi:10.1145/1620545.1620560.Archived fromthe original(PDF)on 2010-08-16.
  16. ^Perera, Samunda; Pasqual, Ajith (2011). "Towards Realtime Handheld MonoSLAM in Dynamic Environments". In Bebis, George; Boyle, Richard; Parvin, Bahram; Koracin, Darko; Wang, Song; Kyungnam, Kim; Benes, Bedrich; Moreland, Kenneth; Borst, Christoph (eds.).Advances in Visual Computing.Lecture Notes in Computer Science. Vol. 6938. Springer Berlin Heidelberg. pp. 313–324.doi:10.1007/978-3-642-24028-7_29.ISBN9783642240287.
  17. ^Perera, Samunda; Barnes, Dr.Nick; Zelinsky, Dr.Alexander (2014), Ikeuchi, Katsushi (ed.), "Exploration: Simultaneous Localization and Mapping (SLAM)",Computer Vision: A Reference Guide,Springer US, pp. 268–275,doi:10.1007/978-0-387-31439-6_280,ISBN9780387314396,S2CID34686200
  18. ^Wang, Chieh-Chih; Thorpe, Charles; Thrun, Sebastian; Hebert, Martial; Durrant-Whyte, Hugh (2007)."Simultaneous Localization, Mapping and Moving Object Tracking"(PDF).Int. J. Robot. Res.26(9): 889–916.doi:10.1177/0278364907081229.S2CID14526806.
  19. ^Howard, MW; Fotedar, MS; Datey, AV; Hasselmo, ME (2005)."The temporal context model in spatial navigation and relational learning: toward a common explanation of medial temporal lobe function across domains".Psychological Review.112(1): 75–116.doi:10.1037/0033-295X.112.1.75.PMC1421376.PMID15631589.
  20. ^Fox, C; Prescott, T (2010). "Hippocampus as unitary coherent particle filter".The 2010 International Joint Conference on Neural Networks (IJCNN)(PDF).pp. 1–8.doi:10.1109/IJCNN.2010.5596681.ISBN978-1-4244-6916-1.S2CID10838879.
  21. ^Milford, MJ; Wyeth, GF; Prasser, D (2004). "RatSLAM: A hippocampal model for simultaneous localization and mapping".IEEE International Conference on Robotics and Automation, 2004. Proceedings. ICRA '04. 2004(PDF).pp. 403–408 Vol.1.doi:10.1109/ROBOT.2004.1307183.ISBN0-7803-8232-3.S2CID7139556.
  22. ^Zou, Danping, and Ping Tan. "Coslam: Collaborative visual slam in dynamic environments."IEEE transactions on pattern analysis and machine intelligence 35.2 (2012): 354–366.
  23. ^Evers, Christine; Naylor, Patrick A. (September 2018)."Acoustic SLAM"(PDF).IEEE/ACM Transactions on Audio, Speech, and Language Processing.26(9): 1484–1498.doi:10.1109/TASLP.2018.2828321.ISSN2329-9290.
  24. ^Mahler, R.P.S. (October 2003). "Multitarget bayes filtering via first-order multitarget moments".IEEE Transactions on Aerospace and Electronic Systems.39(4): 1152–1178.Bibcode:2003ITAES..39.1152M.doi:10.1109/TAES.2003.1261119.ISSN0018-9251.
  25. ^Chau, Aaron; Sekiguchi, Kouhei; Nugraha, Aditya Arie; Yoshii, Kazuyoshi; Funakoshi, Kotaro (October 2019). "Audio-Visual SLAM towards Human Tracking and Human-Robot Interaction in Indoor Environments".2019 28th IEEE International Conference on Robot and Human Interactive Communication (RO-MAN).New Delhi, India: IEEE. pp. 1–8.doi:10.1109/RO-MAN46459.2019.8956321.ISBN978-1-7281-2622-7.S2CID210697281.
  26. ^Montemerlo, M.; Thrun, S.; Koller, D.; Wegbreit, B. (2002)."FastSLAM: A factored solution to the simultaneous localization and mapping problem"(PDF).Proceedings of the AAAI National Conference on Artificial Intelligence.pp. 593–598.
  27. ^abThrun, S.; Burgard, W.; Fox, D. (2005).Probabilistic Robotics.Cambridge: The MIT Press.ISBN0-262-20162-3.
  28. ^Smith, R.C.; Cheeseman, P. (1986)."On the Representation and Estimation of Spatial Uncertainty"(PDF).The International Journal of Robotics Research.5(4): 56–68.doi:10.1177/027836498600500404.S2CID60110448.Retrieved2008-04-08.
  29. ^Smith, R.C.; Self, M.; Cheeseman, P. (1986)."Estimating Uncertain Spatial Relationships in Robotics"(PDF).Proceedings of the Second Annual Conference on Uncertainty in Artificial Intelligence.UAI '86. University of Pennsylvania, Philadelphia, PA, USA: Elsevier. pp. 435–461. Archived fromthe original(PDF)on 2010-07-02.
  30. ^Leonard, J.J.; Durrant-whyte, H.F. (1991). "Simultaneous map building and localization for an autonomous mobile robot".Proceedings IROS '91:IEEE/RSJ International Workshop on Intelligent Robots and Systems '91.pp. 1442–1447.doi:10.1109/IROS.1991.174711.ISBN978-0-7803-0067-5.S2CID206935019.
  31. ^Durrant-Whyte, H.; Bailey, T. (June 2006)."Simultaneous localization and mapping: part I".IEEE Robotics Automation Magazine.13(2): 99–110.doi:10.1109/MRA.2006.1638022.ISSN1558-223X.S2CID8061430.
  32. ^Knight, Will (September 16, 2015)."With a Roomba Capable of Navigation, iRobot Eyes Advanced Home Robots".MIT Technology Review.Retrieved2018-04-25.
edit