ORB-SLAM
More actions
| ORB-SLAM | |
|---|---|
| Information | |
| Type | SLAM library |
| Industry | Robotics, computer vision |
| Developer | University of Zaragoza (Raúl Mur-Artal, J. M. M. Montiel, Juan D. Tardós; ORB-SLAM3: Carlos Campos, Richard Elvira, Juan J. Gómez Rodríguez, José M. M. Montiel, Juan D. Tardós) |
| Written In | C++ |
| Operating System | Linux (tested on Ubuntu 12.04, 14.04, 16.04 and 18.04) |
| License | GPLv3 (closed-source commercial licence available from the authors) |
| Supported Devices | Monocular, stereo and RGB-D cameras; inertial measurement units (ORB-SLAM3); pinhole and fisheye lenses (ORB-SLAM3) |
| Release Date | March 3, 2015 (ORB-SLAM 1.0.0); January 2016 (ORB-SLAM2); December 22, 2021 (ORB-SLAM3 V1.0) |
| Website | https://github.com/UZ-SLAMLab/ORB_SLAM3 |
ORB-SLAM is a family of open-source, feature-based visual SLAM (simultaneous localization and mapping) systems developed at the University of Zaragoza in Spain. The systems estimate the motion of a camera in real time while building a sparse 3D map of the scene, and they use the same ORB image features for tracking, mapping, relocalization and loop closing.[1] There are three main versions. The original ORB-SLAM (2015) works with a single camera. ORB-SLAM2 (2017) added stereo and RGB-D cameras.[2] ORB-SLAM3 (2021) combined visual-inertial SLAM, multiple maps and fisheye lens support in one open-source library.[3] All three are released under the GPLv3 licence, and the authors offer a closed-source version for commercial use on request.[4][5]
The 2015 ORB-SLAM paper received the IEEE Transactions on Robotics King-Sun Fu Memorial Best Paper Award.[6] The ORB-SLAM2 paper reports real-time operation on standard CPUs, without GPU processing.[7] For virtual reality and augmented reality, the ORB-SLAM3 authors describe fast hand-held motion in a room as "a setting representative of AR/VR scenarios".[8] ORB-SLAM3 was one of three tracking back ends integrated into the open-source OpenXR runtime Monado, and the authors of a 2025 headset tracking dataset call it "a widely established SLAM system".[9][10]
History
Origins
ORB-SLAM was written by Raúl Mur-Artal, J. M. M. Montiel and Juan D. Tardós at the Instituto de Investigación en Ingeniería de Aragón (I3A) of the University of Zaragoza.[1] The project page lists two 2014 precursors by Mur-Artal and Tardós: "Fast Relocalisation and Loop Closing in Keyframe-Based SLAM" at the IEEE International Conference on Robotics and Automation (ICRA) in Hong Kong, and "ORB-SLAM: Tracking and Mapping Recognizable Features", an oral presentation at a Robotics: Science and Systems workshop in Berkeley.[11] Place recognition in all versions relies on DBoW2, a bag-of-binary-words library by Dorian Gálvez-López and Tardós, which is credited in the code repositories.[4][11]
The authors designed the system around the keyframe-based approach of PTAM (Parallel Tracking and Mapping), which they describe as the first system to split tracking and mapping into parallel threads and to work for real-time augmented reality in small environments. They noted that PTAM's map points were only useful for tracking, not for place recognition, so PTAM could not detect large loops.[1]
ORB-SLAM (2015)
The monocular ORB-SLAM paper was posted to arXiv in February 2015 and published in the October 2015 issue of IEEE Transactions on Robotics.[12][1] Version 1.0.0 of the code appeared on GitHub on March 3, 2015, as a ROS package, and version 1.0.1 followed on January 18, 2016. That update removed the SuiteSparse and CHOLMOD dependencies by switching the g2o solver to Eigen.[13][4] The paper won the IEEE Transactions on Robotics King-Sun Fu Memorial Best Paper Award; the IEEE Robotics and Automation Society lists it under 2016, the year after publication, while the authors call it the "2015 IEEE Transactions on Robotics Best Paper Award".[6][4]
ORB-SLAM2 (2016-2017)
ORB-SLAM2, for monocular, stereo and RGB-D cameras, was published on GitHub in January 2016, according to the project page, which records an update in October 2016.[11] The paper by Mur-Artal and Tardós was posted to arXiv on October 20, 2016 and appeared in IEEE Transactions on Robotics in October 2017.[7][2] The repository added an augmented reality demo on December 22, 2016 and support for OpenCV 3 and Eigen 3.3 on January 13, 2017.[14] The accepted version of the paper states that Mur-Artal was at the University of Zaragoza until January 2017 and then joined Oculus Research in Redmond, Washington.[7]
In 2017 Mur-Artal and Tardós also published "Visual-Inertial Monocular SLAM with Map Reuse" in IEEE Robotics and Automation Letters. It described a tightly coupled visual-inertial version of ORB-SLAM that can close loops and reuse its map, with an IMU initialization that estimates scale, gravity direction, velocity and gyroscope and accelerometer biases within a few seconds. On the 11 sequences of the EuRoC micro aerial vehicle dataset they reported a typical scale error of 1% and centimetre precision.[15] The ORB-SLAM3 paper calls this system ORB-SLAM VI and lists it as one of the bases of ORB-SLAM3.[8]
ORB-SLAM3 (2020-2021)
ORB-SLAM3 was developed by Carlos Campos, Richard Elvira, Juan J. Gómez Rodríguez, José M. M. Montiel and Juan D. Tardós at the University of Zaragoza. The paper was posted to arXiv on July 23, 2020 and published in the December 2021 issue of IEEE Transactions on Robotics.[8][3] It built on two earlier papers from the group: "ORBSLAM-Atlas: a robust and accurate multi-map system" by Elvira, Tardós and Montiel at IROS 2019,[16] and "Inertial-Only Optimization for Visual-Inertial Initialization" by Campos, Montiel and Tardós at ICRA 2020. On the EuRoC dataset that initialization method took less than 4 seconds at almost any point of the trajectory, with an average scale error of 5.3%.[17]
The code was released in beta versions in 2020 and 2021, and V1.0 followed on December 22, 2021 (see ORB-SLAM3 below).[18]
Architecture
The design below is described in the 2015 paper. ORB-SLAM2 and ORB-SLAM3 keep the same core and extend it.[1][2][3]
Features
ORB-SLAM uses ORB features, which the authors describe as "oriented multi-scale FAST corners with a 256 bits descriptor associated". They chose ORB because features had to be extracted in much less than 33 ms per image, which ruled out SIFT (about 300 ms), SURF (about 300 ms) and A-KAZE (about 100 ms), and because place recognition needed rotation invariance, which ruled out plain BRIEF.[12] FAST corners are extracted at 8 scale levels with a scale factor of 1.2. The paper used 1,000 corners per image for resolutions from 512 x 384 to 752 x 480 pixels and 2,000 corners for the 1241 x 376 images of the KITTI dataset, spread over a grid so that features cover the whole image.[12] The same features are used for all tasks: tracking, mapping, relocalization and loop closing. Mur-Artal and colleagues contrasted this with PTAM, whose patch-correlation points could not be used for place recognition.[1] (See Feature detection for the general technique.)
Three threads
The system runs three threads in parallel:[12]
| Thread | Role (per the ORB-SLAM paper) |
|---|---|
| Tracking | Localizes the camera in every frame and decides when to insert a new keyframe. It first matches features with the previous frame and optimizes the pose with motion-only bundle adjustment, then searches for matches with a local map selected through the covisibility graph. If tracking is lost, the place recognition module performs global relocalization. |
| Local mapping | Processes new keyframes, triangulates new map points, runs local bundle adjustment over nearby keyframes, and removes redundant keyframes and poor map points. |
| Loop closing | Searches for loops with every new keyframe. When a loop is found, it computes a similarity transformation, fuses duplicated points and corrects the accumulated error with a pose-graph optimization. |
All optimizations use the Levenberg-Marquardt algorithm in the g2o library.[12] The authors call their keyframe policy "survival of the fittest": keyframes and map points are created generously and culled strictly. A keyframe is discarded when 90% of its map points have been seen in at least three other keyframes at the same or finer scale. As a result, the map grows only when the scene content changes, which the paper presents as the basis for "lifelong operation" in the same environment.[12]
Covisibility graph and Essential Graph
ORB-SLAM stores the relationships between keyframes in a covisibility graph. Each node is a keyframe, and two keyframes are connected when they observe at least 15 of the same map points, with the number of shared points as the edge weight. Tracking and local mapping operate on the covisible area around the camera. This keeps their cost independent of the total map size.[12] For loop correction the system uses a sparser "Essential Graph". It contains a spanning tree that links each keyframe to the keyframe sharing most observations, covisibility edges with at least 100 shared points, and loop closure edges.[12]
Place recognition and loop closing
A bag-of-words place recognition module based on DBoW2 handles both loop detection and relocalization. The visual vocabulary is built offline from ORB descriptors extracted from a large set of images, and an inverted index records the keyframes in which each visual word was seen, so queries are fast. ORB-SLAM groups query results using covisibility rather than time.[12] (See Bag of visual words.) A loop candidate is accepted only after three consecutive consistent detections.[12]
With a single camera, the map can drift in seven degrees of freedom: three translations, three rotations and scale. The loop closing thread therefore estimates a similarity transformation between the current keyframe and the loop keyframe, which also serves as a geometric check of the loop. It then fuses duplicated map points and runs a pose-graph optimization over the Essential Graph that spreads the loop error along the graph and corrects scale drift.[12] Relocalization in ORB-SLAM uses a Perspective-n-Point solver based on the EPnP algorithm, which assumes a calibrated pinhole camera; ORB-SLAM3 replaced it with the Maximum Likelihood PnP (MLPnP) algorithm, which works with any camera model.[12][8]
Initialization
Monocular SLAM cannot recover depth from a single image, so ORB-SLAM builds its first map from two frames. It computes a homography (suited to planar scenes) and a fundamental matrix (suited to general scenes) in parallel and selects between them with a scoring heuristic. If the geometry is ambiguous, the system waits rather than initializing with a possibly wrong solution.[12]
Versions
| Version | Paper | Cameras and sensors | Main additions |
|---|---|---|---|
| ORB-SLAM | IEEE T-RO, vol. 31, no. 5, 2015[1] | Monocular | ORB features for all tasks; three-thread design; covisibility graph and Essential Graph; automatic initialization; 7-DoF loop closing |
| ORB-SLAM2 | IEEE T-RO, vol. 33, no. 5, 2017[2] | Monocular, stereo, RGB-D | Close and far stereo points; full bundle adjustment after loop closure in a fourth thread; localization mode with mapping disabled |
| ORB-SLAM VI | IEEE RA-L, vol. 2, no. 2, 2017[15] | Monocular plus IMU | Tightly coupled visual-inertial SLAM with map reuse and IMU initialization |
| ORB-SLAM3 | IEEE T-RO, vol. 37, no. 6, 2021[3] | Monocular, stereo, RGB-D; with or without IMU; pinhole and fisheye | Maximum-a-posteriori visual-inertial SLAM; improved-recall place recognition; Atlas multi-map system; camera-model abstraction |
ORB-SLAM (monocular)
The original paper evaluated the system on 27 sequences: the 2.2 km NewCollege robot sequence, 16 hand-held indoor sequences of the TUM RGB-D benchmark and 10 car sequences from the KITTI dataset. All ran on an Intel Core i7-4700MQ laptop processor with 8 GB of RAM at the frame rate of the recordings.[12] On the TUM RGB-D sequences, the authors reported that PTAM and LSD-SLAM lost track in eight and three sequences respectively. On one planar sequence with two possible interpretations, ORB-SLAM detected the ambiguity and refused to initialize.[12]
ORB-SLAM2
ORB-SLAM2 extends the monocular system to stereo and RGB-D input. The tracking thread pre-processes stereo or RGB-D images into keypoints, so the rest of the system works the same way for every sensor.[7] Following earlier work by Paz and colleagues, it treats points differently depending on their distance. Points closer than about 40 times the stereo baseline are "close" and can be triangulated reliably from one frame, and more distant points mainly constrain orientation.[7] Because depth makes scale observable, loop validation and pose-graph optimization use rigid-body transformations instead of similarities. After the pose-graph step, a full bundle adjustment runs in a separate fourth thread so that mapping and loop detection can continue.[7]
The paper describes ORB-SLAM2 as "the first open-source SLAM system for monocular, stereo and RGB-D cameras, including loop closing, relocalization and map reuse". It was evaluated on 29 sequences from KITTI, EuRoC and TUM RGB-D on an Intel Core i7-4790 desktop with 16 GB of RAM.[7] The code adds a lightweight "Localization Mode", selectable in the viewer, in which local mapping and loop closing are switched off and the camera is localized in a fixed map.[14] The repository also contains a monocular augmented reality ROS demo, "MonoAR", in which the user inserts virtual cubes on planar regions of the scene. The paper presents this example as a way "to show the potential of our solution".[14][7] ORB-SLAM2 depends on Pangolin, OpenCV and Eigen3, ships modified copies of DBoW2 and g2o, and can be built without ROS.[14]
ORB-SLAM3
ORB-SLAM3 is built on ORB-SLAM2 and ORB-SLAM VI. Its paper lists four main additions:[8]
- A monocular and stereo visual-inertial SLAM system that relies fully on maximum-a-posteriori (MAP) estimation, including during IMU initialization.
- A new place recognition method. DBoW2's temporal check required three consecutive keyframes to match the same area; ORB-SLAM3 checks geometric consistency first and then local consistency with three covisible keyframes, which increases recall at a slightly higher computational cost.
- "ORB-SLAM Atlas", a multi-map system. When tracking is lost, it starts a new map and later merges it with earlier maps when it recognizes a common area, which also allows multi-session mapping.
- An abstract camera model, with implementations for the pinhole model and the Kannala-Brandt fisheye model, so that fisheye images do not have to be rectified.
The authors report that ORB-SLAM3 is as robust as the best systems in the literature in all sensor configurations and significantly more accurate. In stereo-inertial mode it reached 9 mm accuracy under quick hand-held motion in the room sequences of the TUM-VI dataset, which they call "a setting representative of AR/VR scenarios".[8] All of the paper's experiments ran on an Intel Core i7-7700 CPU at 3.6 GHz with 32 GB of memory, using only the CPU.[8]
The project changelog lists these releases:[18]
| Version | Date (per changelog) | Changes |
|---|---|---|
| V0.2 (beta) | August 7, 2020 | Initial release: multiple maps with merging, inertial sensor support, fisheye cameras in monocular and stereo |
| V0.3 (beta) | September 4, 2020 | RGB-D, KITTI, TUM and ROS examples adapted to the new version; configuration file parser |
| V0.4 (beta) | April 21, 2021 | Static matrices for speed; timing of system threads; OpenCV 4.0 compatibility |
| V1.0 | December 22, 2021 | OpenCV matrices replaced with Eigen (16% faster tracking and 19% faster mapping on average than the times in the paper); new calibration file format; map load and save; live examples for Intel RealSense cameras |
The README says the library was tested on Ubuntu 16.04 and 18.04 and provides examples for the EuRoC and TUM-VI datasets, optional ROS nodes tested with ROS Melodic, and live demos for the Intel RealSense T265 and D435i cameras.[5]
Licensing and code status
ORB-SLAM, ORB-SLAM2 and ORB-SLAM3 are released under the GPLv3 licence. Each README directs commercial users who need a closed-source version to contact the authors at the University of Zaragoza.[4][14][5] The bundled DBoW2 and g2o code is BSD licensed. ORB-SLAM2's dependency list also notes that its ORB extractor is a modified version of OpenCV's BSD-licensed orb.cpp.[19]
The code is no longer actively developed. As of October 12, 2026, the last commit on the ORB-SLAM2 master branch dates from October 11, 2017.[20] In the ORB-SLAM3 repository, V1.0 (December 22, 2021) is the latest tagged release. The last master commit is dated February 10, 2022, and a separate "c++14_comp" branch received C++14 compatibility changes in September 2022.[21][22]
Use in VR and AR
OpenXR tracking in Monado
In April 2022, Collabora announced 6DoF visual-inertial inside-out tracking for Monado. Mateo de Mayo wrote that "three free and open source SLAM/VIO solutions were integrated and adapted to work on XR: Kimera-VIO, ORB-SLAM3, and Basalt", and that Monado's RealSense and Windows Mixed Reality (Linux only) drivers had been extended for it.[9] He judged ORB-SLAM3 "good too, but its strong points seemed to be on the processing of pre-recorded datasets", described Basalt as fast and well suited to real-time XR use, and used Basalt as the tracking back end in the demonstration video. He also noted that ORB-SLAM3 is GPL-3.0 licensed, while a permissive licence "would have been preferred".[9]
Headset and glasses benchmarks
ORB-SLAM3 is a standard baseline in datasets recorded with head-worn devices:
| Benchmark | Devices | Reported ORB-SLAM3 results |
|---|---|---|
| Monado SLAM dataset (de Mayo, Cremers and Pire; accepted to IROS 2025)[10] | Valve Index, HP Reverb G2 and Samsung Odyssey+ headsets | One of five systems run in a real-time (causal) setup. OKVIS2 had the lowest median error, followed by Basalt. ORB-SLAM3 estimated all frames but crashed on 2% of runs. Run non-causally, it reached a median absolute trajectory error of 2.5 cm, which the authors note is not a reasonable mode for real-time use.[10] |
| LaMAria city-scale benchmark (Krishnan et al., ICCV 2025)[23] | Project Aria glasses | ORB-SLAM3 scored best among the mono-inertial systems, but monocular ORB-SLAM3 "easily" lost track under fast, complex motion. All academic systems were far behind the commercial SLAM used by Aria, which runs non-causally with online calibration and full visual-inertial bundle adjustment.[23] |
The Monado dataset authors wrote that state-of-the-art VIO and SLAM systems are "still unable to gracefully handle many of the challenging settings" of head-mounted use, and that scenarios such as high-intensity motion, dynamic occlusions, long sessions and low-textured areas are poorly covered by existing datasets.[10]
Mobile and edge computing
Ali J. Ben Ali and colleagues built Edge-SLAM on ORB-SLAM2 to run visual SLAM on mobile devices with limited resources. Tracking stays on the device, and local mapping and loop closing move to an edge server. The authors reported that this kept computation and memory use on the device constant without affecting accuracy. Their paper opens by noting that localization is used in tools such as ARCore and ARKit.[24]
See also
References
- ↑ 1.0 1.1 1.2 1.3 1.4 1.5 1.6 Raúl Mur-Artal, J. M. M. Montiel, Juan D. Tardós (2015-10). "ORB-SLAM: A Versatile and Accurate Monocular SLAM System". IEEE Transactions on Robotics, vol. 31, no. 5, pp. 1147-1163. https://doi.org/10.1109/TRO.2015.2463671. Retrieved 2026-10-12.
- ↑ 2.0 2.1 2.2 2.3 Raúl Mur-Artal, Juan D. Tardós (2017-10). "ORB-SLAM2: An Open-Source SLAM System for Monocular, Stereo, and RGB-D Cameras". IEEE Transactions on Robotics, vol. 33, no. 5, pp. 1255-1262. https://doi.org/10.1109/TRO.2017.2705103. Retrieved 2026-10-12.
- ↑ 3.0 3.1 3.2 3.3 Carlos Campos, Richard Elvira, Juan J. Gómez Rodríguez, José M. M. Montiel, Juan D. Tardós (2021-12). "ORB-SLAM3: An Accurate Open-Source Library for Visual, Visual-Inertial, and Multimap SLAM". IEEE Transactions on Robotics, vol. 37, no. 6, pp. 1874-1890. https://doi.org/10.1109/TRO.2021.3075644. Retrieved 2026-10-12.
- ↑ 4.0 4.1 4.2 4.3 4.4 "ORB-SLAM Monocular (README)". GitHub. raulmur. https://github.com/raulmur/ORB_SLAM. Retrieved 2026-10-12.
- ↑ 5.0 5.1 5.2 "ORB-SLAM3 (README)". GitHub. UZ-SLAMLab. https://github.com/UZ-SLAMLab/ORB_SLAM3. Retrieved 2026-10-12.
- ↑ 6.0 6.1 "IEEE Transactions on Robotics King-Sun Fu Memorial Best Paper Award". IEEE Robotics and Automation Society. https://www.ieee-ras.org/awards-recognition/publications-awards/ieee-transactions-on-robotics-king-sun-fu-memorial-best-paper-award/. Retrieved 2026-10-12.
- ↑ 7.0 7.1 7.2 7.3 7.4 7.5 7.6 7.7 Raúl Mur-Artal, Juan D. Tardós (2016-10-20). "ORB-SLAM2: an Open-Source SLAM System for Monocular, Stereo and RGB-D Cameras (arXiv preprint)". arXiv. https://arxiv.org/abs/1610.06475. Retrieved 2026-10-12.
- ↑ 8.0 8.1 8.2 8.3 8.4 8.5 8.6 Carlos Campos, Richard Elvira, Juan J. Gómez Rodríguez, José M. M. Montiel, Juan D. Tardós (2020-07-23). "ORB-SLAM3: An Accurate Open-Source Library for Visual, Visual-Inertial and Multi-Map SLAM (arXiv preprint)". arXiv. https://arxiv.org/abs/2007.11898. Retrieved 2026-10-12.
- ↑ 9.0 9.1 9.2 Mateo de Mayo (2022-04-05). "Visual-inertial tracking support for Monado OpenXR". Collabora. https://www.collabora.com/news-and-blog/blog/2022/04/05/visual-inertial-tracking-support-for-monado-openxr/. Retrieved 2026-10-12.
- ↑ 10.0 10.1 10.2 10.3 Mateo de Mayo, Daniel Cremers, Taihú Pire (2025-07-31). "The Monado SLAM Dataset for Egocentric Visual-Inertial Tracking". arXiv (accepted to IROS 2025). https://arxiv.org/abs/2508.00088. Retrieved 2026-10-12.
- ↑ 11.0 11.1 11.2 "ORB-SLAM Project Webpage". Universidad de Zaragoza. http://webdiis.unizar.es/~raulmur/orbslam/. Retrieved 2026-10-12.
- ↑ 12.00 12.01 12.02 12.03 12.04 12.05 12.06 12.07 12.08 12.09 12.10 12.11 12.12 12.13 12.14 Raúl Mur-Artal, J. M. M. Montiel, Juan D. Tardós (2015-02-03). "ORB-SLAM: a Versatile and Accurate Monocular SLAM System (arXiv preprint)". arXiv. https://arxiv.org/abs/1502.00956. Retrieved 2026-10-12.
- ↑ "Changelog of ORB-SLAM Monocular". GitHub. raulmur. https://github.com/raulmur/ORB_SLAM/blob/master/Changelog.md. Retrieved 2026-10-12.
- ↑ 14.0 14.1 14.2 14.3 14.4 "ORB-SLAM2 (README)". GitHub. raulmur. https://github.com/raulmur/ORB_SLAM2. Retrieved 2026-10-12.
- ↑ 15.0 15.1 Raúl Mur-Artal, Juan D. Tardós (2017-04). "Visual-Inertial Monocular SLAM With Map Reuse". IEEE Robotics and Automation Letters, vol. 2, no. 2, pp. 796-803. https://doi.org/10.1109/LRA.2017.2653359. Retrieved 2026-10-12.
- ↑ Richard Elvira, Juan D. Tardós, J. M. M. Montiel (2019-11). "ORBSLAM-Atlas: a robust and accurate multi-map system". 2019 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS). https://doi.org/10.1109/IROS40897.2019.8967572. Retrieved 2026-10-12.
- ↑ Carlos Campos, José M. M. Montiel, Juan D. Tardós (2020-03-12). "Inertial-Only Optimization for Visual-Inertial Initialization". 2020 IEEE International Conference on Robotics and Automation (ICRA), arXiv preprint. https://arxiv.org/abs/2003.05766. Retrieved 2026-10-12.
- ↑ 18.0 18.1 "ORB-SLAM3 Changelog". GitHub. UZ-SLAMLab. https://github.com/UZ-SLAMLab/ORB_SLAM3/blob/master/Changelog.md. Retrieved 2026-10-12.
- ↑ "ORB-SLAM2 Dependencies". GitHub. raulmur. https://github.com/raulmur/ORB_SLAM2/blob/master/Dependencies.md. Retrieved 2026-10-12.
- ↑ "Commits - raulmur/ORB_SLAM2". GitHub. https://github.com/raulmur/ORB_SLAM2/commits/master. Retrieved 2026-10-12.
- ↑ "Releases - UZ-SLAMLab/ORB_SLAM3". GitHub. https://github.com/UZ-SLAMLab/ORB_SLAM3/releases. Retrieved 2026-10-12.
- ↑ "Commits - UZ-SLAMLab/ORB_SLAM3". GitHub. https://github.com/UZ-SLAMLab/ORB_SLAM3/commits/master. Retrieved 2026-10-12.
- ↑ 23.0 23.1 Anusha Krishnan, Shaohui Liu, Paul-Edouard Sarlin, Oscar Gentilhomme, David Caruso, Maurizio Monge, Richard Newcombe, Jakob Engel, Marc Pollefeys (2025-09-30). "Benchmarking Egocentric Visual-Inertial SLAM at City Scale". arXiv (ICCV 2025). https://arxiv.org/abs/2509.26639. Retrieved 2026-10-12.
- ↑ Ali J. Ben Ali, Marziye Kouroshli, Sofiya Semenova, Zakieh Sadat Hashemifar, Steven Y. Ko, Karthik Dantu (2022-10-29). "Edge-SLAM: Edge-Assisted Visual Simultaneous Localization and Mapping". ACM Transactions on Embedded Computing Systems, vol. 22, no. 1. https://doi.org/10.1145/3561972. Retrieved 2026-10-12.