---
kind: concept
slug: simultaneous-localization-and-mapping
title: Simultaneous localization and mapping (SLAM)
summary: >-
  SLAM estimates where a robot or camera is while it maps its surroundings. Sixteen cards cover lidar, visual, lidar-visual-inertial, monocular and RGB-D systems, scene-graph and open-set semantic mapping, object-level and neural-SDF mapping, two datasets, three surveys and a navigation paper. Numbers are author-reported and rarely comparable.
tags: [slam, localization, mapping, lidar, visual-slam, rgb-d, neural-mapping, object-slam, sensor-fusion, benchmark, semantic-mapping, scene-graph, open-vocabulary]
papers: ["1807.06757", "1906.05797", "2101.06894", "2104.10831", "2105.11320", "2109.07982", "2112.13659", "2202.07008", "2204.02296", "2210.13641", "2302.07241", "2303.07308", "2312.02126", "2401.03890", "2404.06229", "2603.27781"]
related: [lidar-inertial-odometry, visual-inertial-odometry, error-state-kalman-filter, robot-simulation, gaussian-splatting, neural-radiance-field, differentiable-rendering, neural-implicit-surface, implicit-neural-representation, euclidean-equivariant-network, semantic-segmentation, iterative-closest-point, sim-to-real-transfer, model-predictive-control, imitation-learning, surfel-mapping, 3d-scene-graph, open-vocabulary-segmentation, pose-graph-optimization]
status: draft
updated_at: 2026-11-01
---

## Overview

The sixteen cards use SLAM, or the closely related task of building a map while
moving, in different ways. LVI-SAM fuses a lidar, a monocular camera and an IMU
in one factor graph, with loop closure [arxiv:2104.10831 §2.1] [arxiv:2104.10831 §2.2.4].
The racing survey lists SLAM as one way to localise
a car, next to Monte Carlo (AMCL) localisation [arxiv:2202.07008 §2.1]. The
benchmark card evaluates SLAM systems directly. GS3LAM and SplaTAM are full
RGB-D SLAM methods: each estimates camera poses and a map at the same time.
GS3LAM also builds a semantic map [arxiv:2603.27781 §3.4] [arxiv:2312.02126 §3].
NeRF-SLAM is monocular: a dense SLAM tracker supplies poses and depth, and a
radiance field is fitted to them in parallel [arxiv:2210.13641 §3.3].
NeuSE is an object-level SLAM pipeline: it adds
object-level pose constraints to a pose graph, and the graph's inter-frame
edges can come from NeuSE or from another source [arxiv:2303.07308 §4.1]. iSDF maps with poses supplied by
an external tracker, and says it does not do full SLAM [arxiv:2204.02296 §4].
The navigation paper does not evaluate SLAM at all, but its evaluation rules
apply to any agent that explores a map before it is tested
[arxiv:1807.06757 §3]. Replica is a simulated indoor dataset, not a method. Its
own capture pipeline used an in-house SLAM system to estimate camera poses
[arxiv:1906.05797 §3].
SuMa++ is a lidar-only surfel SLAM system with semantic labels from a neural
segmenter. It uses the labels to find moving objects in the map and to weight
the scan alignment [arxiv:2105.11320 §III-E] [arxiv:2105.11320 §III-F].
Kimera runs visual-inertial odometry online and builds a labelled mesh as it
goes. It parses a five-layer 3D scene graph after the run [arxiv:2101.06894 §2]
[arxiv:2101.06894 §3]. R3LIVE builds its map geometry from a lidar-inertial
step, and colours that map with a camera step [arxiv:2109.07982 §II].
ConceptFusion is a mapping method rather than a SLAM one: it takes posed RGB-D
frames and fuses per-pixel features into a 3D map, which it can then query by
text, image, click or audio [arxiv:2302.07241 §3.1] [arxiv:2302.07241 §3.3].

The benchmark card describes the gap it fills. Most public SLAM datasets are
built for driving or aerial robots, and the few for ground robots lack either
a rich sensor set or hard scenes such as lifts and darkness
[arxiv:2112.13659 §1] [arxiv:2112.13659 §2.2].

For the SLAM systems, the shared invariant is how trajectories are judged.
Each estimated trajectory is scored against a reference trajectory from motion
capture, a laser tracker or an RTK/INS system [arxiv:2112.13659 §4]
[arxiv:2112.13659 tab. 3]. LVI-SAM scores against a GPS receiver, as RMSE, and
also reports end-to-end translation and rotation errors [arxiv:2104.10831 §3]
[arxiv:2104.10831 tab. 2]. GS3LAM also reports ATE RMSE, on Replica and on
ScanNet [arxiv:2603.27781 tab. 3] [arxiv:2603.27781 app. C.3]. SplaTAM reports
ATE RMSE on Replica, TUM-RGBD, ScanNet and ScanNet++ [arxiv:2312.02126 tab. 1].
NeuSE reports
ATE RMSE against a reference from Vicon or the simulator
[arxiv:2303.07308 §7.1] [arxiv:2303.07308 §7.2]. iSDF scores its
map instead, as SDF error against a ground-truth grid built from the mesh
[arxiv:2204.02296 §5.1] [arxiv:2204.02296 §5.3]. The navigation paper uses a
different score, based on whether the agent stops at the goal and on its path
length [arxiv:1807.06757 §4], so the families of numbers measure different
things. R3LIVE measures drift at the start point of each loop, against an ArUco
board, and relative pose error against RTK [arxiv:2109.07982 §VI-C]
[arxiv:2109.07982 tab. II] [arxiv:2109.07982 tab. III]. Kimera scores EuRoC
trajectories with ground truth after SE(3) alignment, and scores its mesh by
RMSE [arxiv:2101.06894 §4.2] [arxiv:2101.06894 tab. 3]. ConceptFusion reports
3D mIoU for query results, not a trajectory [arxiv:2302.07241 tab. 1].

Coverage is still thin. M2DGR and LVI-SAM each compare several visual, LiDAR
or fused systems on their own recorded sequences [arxiv:2112.13659 §4]
[arxiv:2104.10831 §3]. The RGB-D methods compare against several
dense and feature-based baselines, but on simulated and handheld data, and
some baseline numbers are taken from other papers: SplaTAM takes its Replica,
TUM-RGBD and ScanNet baselines from Point-SLAM [arxiv:2312.02126 §4]. NeuSE and
iSDF report their own systems against a few baselines. The Gaussian-splatting
survey repeats SLAM numbers from the original papers, under settings that
differ between them [arxiv:2401.03890 tab. S4] [arxiv:2401.03890 §6]. The
racing survey, the small-scale car survey and the navigation paper cover
SLAM-related work without running any SLAM system. Kimera's real-world
evidence is qualitative, and its numbers come from simulated humans and the
EuRoC sequences [arxiv:2101.06894 §4.1] [arxiv:2101.06894 §4.10]. R3LIVE's
results come from the authors' own rig, against baselines the authors ran
[arxiv:2109.07982 §VI-A] [arxiv:2109.07982 §VI-D]. ConceptFusion's robot tests
are qualitative, with no success rates [arxiv:2302.07241 §4.3]. NeRF-SLAM
compares against iMAP, Nice-SLAM and two fusion baselines, all on simulated
Replica scenes, and reports depth error and PSNR on rendered views rather than
trajectory error [arxiv:2210.13641 §4.2] [arxiv:2210.13641 tab. 1].

## Variants

### Visual SLAM

ORB-SLAM3 in monocular mode without an IMU, with pinhole, fish-eye and thermal
cameras. Also CubemapSLAM and VINS-Mono. Multicol-SLAM is named in the text but
has no numbers [arxiv:2112.13659 §4] [arxiv:2112.13659 tab. 5].
Card: [M2DGR](/papers/2112.13659).

### LiDAR SLAM

A-LOAM, LeGO-LOAM, LINS and LIO-SAM [arxiv:2112.13659 §4]. Card:
[M2DGR](/papers/2112.13659). For the LiDAR-inertial case with a card, see
[lidar-inertial-odometry](/concepts/lidar-inertial-odometry).

### Lidar-visual-inertial SLAM

LVI-SAM runs a visual-inertial sub-system and a lidar-inertial sub-system. Each
gives the other a starting point and can flag its own failure. Both feed one
iSAM2 factor graph with IMU, visual-odometry, lidar-odometry and loop-closure
constraints [arxiv:2104.10831 §2.1] [arxiv:2104.10831 §2.3]. Loop candidates
come from DBoW2 on the camera side and are checked by scan matching on the lidar
side [arxiv:2104.10831 §2.2.4] [arxiv:2104.10831 §2.3]. It needs a 3D lidar,
one monocular camera and one IMU, with known extrinsics; the paper does not
describe how to calibrate them [arxiv:2104.10831 §2.1]. Author-reported, one run
per method: on Jackal, RMSE against GPS of 0.67 m with loop closure; on
Handheld, where the lidar baselines fail, 0.83 m with loop closure and 7.87 m
without [arxiv:2104.10831 tab. 2] [arxiv:2104.10831 §3.2] [arxiv:2104.10831 §3.3].
In its Urban ablation, lidar depth on visual features lowers translation error
from 45.42 m to 32.18 m without loop closure, and raises rotation error from
6.41° to 7.66° [arxiv:2104.10831 tab. 1]. Card:
[LVI-SAM](/papers/2104.10831).

### Colourised lidar-inertial-visual mapping

R3LIVE splits the work in two. A lidar-inertial step runs an error-state
iterated Kalman filter on point-to-plane residuals, and builds the geometry of
one global map [arxiv:2109.07982 §II] [arxiv:2109.07982 §IV]. A visual-inertial
step then tracks map points with Lucas-Kanade optical flow. It refines the state
with a reprojection residual, and then with a photometric residual against the
stored colours [arxiv:2109.07982 §V-A] [arxiv:2109.07982 §V-B1]. Each map point
keeps a colour and its variance, and each observation is fused into them by a
Bayesian update [arxiv:2109.07982 §V-C]. The one texture-poor test is a narrow
passage with bare white walls, where drift at the end is 1.62 degrees and 4.57
cm [arxiv:2109.07982 §VI-B]. It needs a 3D lidar, a global-shutter camera and
an IMU. The state also estimates the camera intrinsics, the camera-IMU extrinsic
and their time offset online [arxiv:2109.07982 §III-A] [arxiv:2109.07982 §VI-A].
The paper does not say whether the visual step can run without the lidar map,
which supplies its depth [arxiv:2109.07982 §II] [arxiv:2109.07982 §V].
Author-reported: on four campus trajectories of 1191 to 1524 m, drift at the
start point is 0.093 to 0.164 m in translation and 0.285 to 3.925 degrees in
rotation. Each loop closes without a loop-closure step [arxiv:2109.07982 tab. II]
[arxiv:2109.07982 §VI-C]. On a seaport sequence with pedestrians, the 50 m
relative pose error is 0.99 degrees and 2.25% for R3LIVE-HiRes, against 2.11
degrees and 13.73% for LVI-SAM, which the authors ran with a modified lidar
front end [arxiv:2109.07982 tab. III] [arxiv:2109.07982 §VI-D]. The visual step
takes 13.63 ms per frame on a desktop and 33.38 ms on the onboard computer of a
drone, at 1280 x 1024 and 0.10 m point spacing. At 0.01 m spacing the onboard
time is 166.08 ms [arxiv:2109.07982 tab. IV]. Meshing is offline and not
real-time [arxiv:2109.07982 §VII-A]. The released code is GPL-2.0; see the
card's Paper vs code section before reusing anything from it.
Card: [R3LIVE](/papers/2109.07982).

### Metric-semantic mesh and scene-graph SLAM

Kimera runs visual-inertial odometry online, with fixed-lag smoothing in GTSAM.
It builds a semantic mesh as it goes [arxiv:2101.06894 §3.1]
[arxiv:2101.06894 §3.2] [arxiv:2101.06894 §3.3]. Loop closures pass a
pairwise-consistency test, and the optimised deformation graph then corrects
the mesh [arxiv:2101.06894 §3.4]. Objects, places, rooms and the building are
parsed from the mesh after the run. Incremental parsing is listed as future work
[arxiv:2101.06894 §3] [arxiv:2101.06894 §8]. Humans are tracked with pose graphs
built from GraphCMR estimates [arxiv:2101.06894 §3.5]. It needs a stereo or RGB-D
camera, an IMU, and 2-D semantic labels per keyframe. On real data the labels
come from Mask R-CNN [arxiv:2101.06894 §3] [arxiv:2101.06894 §4.1].
Author-reported: on EuRoC V1_1, Kimera-VIO's ATE is 0.05 m, against 0.09 m for
OKVIS and 0.34 m for MSCKF. With loop closure, Kimera-PGMO gives 0.05 m on V1_1
and 0.09 m on MH_1 [arxiv:2101.06894 tab. 1]. Mesh RMSE with 60 simulated humans
and ground-truth poses is 0.19 m without dynamic masking and 0.06 m with it
[arxiv:2101.06894 tab. 5]. Hierarchical A* planning in a scaled office, with one
to six buildings, takes 0.340 s to 1.244 s, against 420 s to 21,389 s with A* on
the ESDF [arxiv:2101.06894 §6.3] [arxiv:2101.06894 tab. 9]. Keyframe processing
takes 51 ms, the per-frame mesh under 7 ms, and building the Subway scene graph
about 30 minutes [arxiv:2101.06894 §4.8]. The paper gives no CPU model for those
timings [arxiv:2101.06894 §4.8]. The EuRoC trajectories are aligned with SE(3),
not Sim(3), which the paper says would lower the error [arxiv:2101.06894 §4.2].
Its two Kimera-Semantics voxel sizes differ, 0.05 m in §3.6 and 0.1 m for the
TX2 setup [arxiv:2101.06894 §3.6] [arxiv:2101.06894 §4.9]. The repository at the
linked commit holds only documentation, so no module code has been checked; see
the card's Paper vs code section.
Card: [Kimera](/papers/2101.06894).

### Semantic surfel LiDAR SLAM

SuMa++ keeps the surfel map of SuMa and gives each surfel a semantic label
and a stability value [arxiv:2105.11320 §III-B] [arxiv:2105.11320 §III-C]. A
segmenter labels each lidar point, and the label image is cleaned before use
[arxiv:2105.11320 §III-C] [arxiv:2105.11320 §III-D] [alg. 1]. A surfel whose
label conflicts with a movable class, such as a car or a person, loses
stability. The paper removes such surfels after several observations
[arxiv:2105.11320 §III-E] [eq. 1]. Vegetation and other static classes are not
penalised [arxiv:2105.11320 §IV-C]. The same labels down-weight residuals in
the scan alignment [arxiv:2105.11320 §III-F] [eq. 6].
Author-reported: average relative translation error on KITTI odometry
training sequences 00–10 falls from 0.83% for SuMa to 0.70% for SuMa++
[arxiv:2105.11320 tab. II]. On road sequence 35, a highway with many moving
cars, it falls from 26.8% to 1.11% [arxiv:2105.11320 tab. I]. Deleting every
movable-class surfel (SuMa_nomovable) is also a baseline: it reaches 1.22% on
sequence 35 but 9.24% on the odometry training average [arxiv:2105.11320 tab. I]
[arxiv:2105.11320 tab. II]. The segmenter is trained on sequences 00–10 except
08, so Table II is in-sample; the only held-out number is the server test
result, 1.06% against SuMa's 1.39% [arxiv:2105.11320 §IV] [arxiv:2105.11320 §IV-B].
It needs a labelled lidar training set and a trained segmenter. Reported
timings are about 75 ms for the segmenter and about 48 ms for surfel mapping
per scan, on one Quadro P4000 [arxiv:2105.11320 §IV]. Card:
[SuMa++](/papers/2105.11320).

### Monocular dense SLAM with a radiance field

NeRF-SLAM runs two threads in parallel. The tracker is DROID-SLAM, which
gives keyframe poses, dense depth maps and their marginal covariances
[arxiv:2210.13641 §3.1] [arxiv:2210.13641 §3.3]. The mapper fits an Instant-NGP
radiance field to the keyframes it receives [arxiv:2210.13641 §3.2]
[arxiv:2210.13641 §3.4]. The depth term of its loss is weighted by the depth
covariance, so uncertain depths count for less [arxiv:2210.13641 eq. 4]
[arxiv:2210.13641 §3.2]. The poses are refined jointly with the field
[arxiv:2210.13641 eq. 3]. The mapper uses every keyframe it has received, with
no sliding window [arxiv:2210.13641 §3.3]. It needs only a monocular camera,
with no depth sensor. Author-reported on Replica, its PSNR is the highest in
all eight scenes, and its average depth error, 4.49 cm, is above the 4.08 cm of
Nice-SLAM with ground-truth depth [arxiv:2210.13641 tab. 1]. The headline gains
of up to 179% in PSNR and 86% in depth error are against the Nice-SLAM row
without depth [arxiv:2210.13641 §4.3] [arxiv:2210.13641 tab. 1]. In an
ablation on a synthetic scene, raw monocular depth lowers depth error but
makes PSNR about 3 dB worse than using no depth; weighting by covariance
avoids that [arxiv:2210.13641 §4.4]. Speed is about 10 fps on 640 × 480 images
on one RTX 2080 Ti with 11 GB of memory [arxiv:2210.13641 §4.5]
[arxiv:2210.13641 §3.4]. The authors name dense correlation volumes and
hierarchical grids as the memory cost [arxiv:2210.13641 §5].
Card: [NeRF-SLAM](/papers/2210.13641).

### RGB-D Gaussian-splatting SLAM

Both methods here keep the scene as 3D Gaussians and track each new frame
against that map. They differ in what each Gaussian holds and in what input
they need.

GS3LAM represents the scene as a set of 3D Gaussians, each with a semantic
feature that a learned layer decodes to class scores [arxiv:2603.27781 §3.2].
Tracking optimises only the camera pose, with the field frozen. Mapping then
refines the field on the current frame and on keyframes drawn at random
[arxiv:2603.27781 §3.4] [arxiv:2603.27781 §3.3.3]. It needs one semantic label
map per frame, from the dataset or from a segmentation model
[arxiv:2603.27781 §3.3.4]. Author-reported: rendering PSNR 36.26 over eight
Replica scenes [arxiv:2603.27781 tab. 2], and tracking ATE 0.37 cm on Replica
against SplaTAM's 0.36 cm [arxiv:2603.27781 tab. 3]. Its released rasterizer
carries a non-commercial licence; see the card's Paper vs code section.
Card: [GS3LAM](/papers/2603.27781).

SplaTAM keeps a simpler map: each Gaussian has a colour, a centre, a radius
and an opacity, with no semantic feature and a view-independent colour
[arxiv:2312.02126 §3 Gaussian Map Representation]. For each frame it fits the
camera pose with the map held fixed, adds Gaussians where the map is sparse or
misses geometry, then refines all Gaussians over a window of keyframes
[arxiv:2312.02126 §3 SLAM System]. It assumes one unposed RGB-D camera, with
known intrinsics and dense depth [arxiv:2312.02126 §1] [arxiv:2312.02126 §5
Limitations]. Author-reported: ATE RMSE of 0.36 cm on Replica, 5.48 cm on
TUM-RGBD, 11.88 cm on ScanNet and 1.2 cm on ScanNet++, where ORB-SLAM3 scores
158.2 cm and Point-SLAM 343.8 cm [arxiv:2312.02126 tab. 1]. Its training-view
rendering on Replica is below Point-SLAM's, at 34.11 dB against 35.17 dB
[arxiv:2312.02126 tab. 2]. Per frame on Replica R0 on one RTX 3080 Ti, tracking
takes 1.00 s and mapping 1.44 s [arxiv:2312.02126 tab. 6]. Card:
[SplaTAM](/papers/2312.02126).

A survey of 3D Gaussian splatting repeats SLAM numbers for these methods
rather than running them. On Replica, its table gives SplaTAM 0.36 cm ATE
against Point-SLAM 0.52 cm and NICE-SLAM 1.06 cm, and gives Gaussian-SLAM
3.27 cm [arxiv:2401.03890 tab. S4]. The survey says it compiles results from
the original works, which use different settings [arxiv:2401.03890 §6]. Card:
[A Survey on 3D Gaussian Splatting](/papers/2401.03890).

### Neural SDF mapping with given poses

iSDF trains a small MLP online on posed depth images, so that it approximates
a signed distance field. It uses the nearest measured surface point in each
batch as the supervision bound [arxiv:2204.02296 §4.3]. The paper assumes an
external tracker supplies the camera poses [arxiv:2204.02296 §4]. Author-reported:
SDF error below 6 cm at the end of each of six main sequences [arxiv:2204.02296
§6.2] [arxiv:2204.02296 fig. 8], and about 33 ms per training iteration on
an i7-8700K with an RTX 2080 [arxiv:2204.02296 §5.2] [arxiv:2204.02296 §6.3].
Card: [iSDF](/papers/2204.02296).

### Object-level SLAM with learned codes

NeuSE gives each object a latent code, learned from a partial point cloud. The
code is SE(3)- and scale-equivariant, so the relative pose of two views of an
object is read from their codes with a closed-form Horn fit, not by rendering
and optimising [arxiv:2303.07308 §1] [arxiv:2303.07308 §3.2]. The codes drive
four things: data association, pose constraints in a pose graph, a sliding
window of ten keyframes, and change detection in the object map
[arxiv:2303.07308 §4.1] [arxiv:2303.07308 §4.2] [arxiv:2303.07308 §4.3]
[arxiv:2303.07308 §8]. In the real experiments the baseline and base system is
ORB-SLAM3 [arxiv:2303.07308 §7.2]. Each object category needs its own trained
model [arxiv:2303.07308 app. A1], and the models are trained on simulated data
only [arxiv:2303.07308 §5.1].
Card: [NeuSE](/papers/2303.07308).

### Open-set feature mapping

ConceptFusion stores a language-aligned feature vector in each map point. It
fuses these with the same confidence-weighted average used for depth and colour.
The confidence falls off with distance from the camera [arxiv:2302.07241 §3.1]
[arxiv:2302.07241 eq. 1] [arxiv:2302.07241 eq. 2]. Each pixel's feature is built
without training. A CLIP-style embedding of the whole frame is mixed with
embeddings of the boxes around class-agnostic masks, and the mix is weighted by
similarity and by a uniqueness term [arxiv:2302.07241 §3.2]
[arxiv:2302.07241 eq. 3] [arxiv:2302.07241 eq. 6]. A query, given as text, an
image, a clicked point or audio, is scored against each map point by cosine
similarity [arxiv:2302.07241 §3.3].
It needs posed RGB-D frames and a mask proposer: Mask2Former with 100 proposals
per image, or SAM [arxiv:2302.07241 §3] [arxiv:2302.07241 app. A4]. Feature
extraction is the slow step, at 10 to 15 s per image on an RTX 3090, and the
authors give 15 Hz for odometry and mapping [arxiv:2302.07241 §3]. Outdoors the
paper uses LeGO-LOAM for odometry [arxiv:2302.07241 app. A3].
Author-reported, on UnCoCo, a tabletop set with 78 household objects. With
structured text queries the 3D mIoU is 0.446, against 0.289 for supervised
OpenSeg-3D, 0.128 for supervised LSeg-3D and 0.091 for zero-shot MaskCLIP-3D
[arxiv:2302.07241 tab. 1]. With long free-form text it is 0.378, against 0.153
for OpenSeg-3D [arxiv:2302.07241 tab. 2]. With image queries it is 0.331,
against 0.134 for LSeg-3D [arxiv:2302.07241 tab. 3]. Audio queries reach 64.29%
accuracy on one set, against 7.14% for chance and 23.81% for AudioCLIP given
privileged boxes [arxiv:2302.07241 tab. 4]. In 2-D it trails supervised LSeg on
ScanNet, with mAcc 0.63 against 0.70 [arxiv:2302.07241 tab. 5]. Removing the
uniqueness term lowers ScanNet mAcc to 0.55 [arxiv:2302.07241 tab. 6]. On
Replica, SAM masks give 31.53 mAcc, against 24.16 for Mask2Former
[arxiv:2302.07241 tab. 8]. Spatial queries such as distance go through an
LLM parser, and the paper reports 84% for distance queries on 100 spatial
queries [arxiv:2302.07241 tab. 7] [arxiv:2302.07241 app. A8].
Caveats. The abstract's "more than 40% margin" is not defined, and the table
gives a 0.157 mIoU gap [arxiv:2302.07241 §1] [arxiv:2302.07241 tab. 1]. The
pixel features are centred on foreground objects, and the paper says they do
not handle negation [arxiv:2302.07241 §6]. The released extraction script uses
SAM and drops the uniqueness term, and the LLM parser is not in the repository;
see the card's Paper vs code section.
Card: [ConceptFusion](/papers/2302.07241).

### Datasets for SLAM and mapping

Two cards describe data rather than a method. M2DGR is a ground-robot SLAM
dataset with trajectory references, described under the visual and LiDAR
variants above. Replica is a set of 18 indoor scene reconstructions with dense
meshes, HDR textures and semantic labels, built with an RGB-D rig and an
in-house SLAM system [arxiv:1906.05797 §3] [arxiv:1906.05797 §4]. The paper
reports no SLAM benchmark on it [arxiv:1906.05797 §Results]. Its repository
licence is for non-commercial research and education only, which is stricter
than the paper's CC BY 4.0 licence [arxiv:1906.05797 §Pitfalls]. Card:
[Replica](/papers/1906.05797).

### GNSS reference

RTKLIB is evaluated as a GNSS baseline, not as SLAM [arxiv:2112.13659 tab. 5].

### Localisation in racing

The survey names localisation methods for racing cars, with errors it reports
from other papers: AMCL on LiDAR, NDT, extended Kalman or H-infinity filters
that fuse odometry, IMU and GPS, and graph-SLAM with cone detection on
Formula Student cars. It also names Google Cartographer and GMapping, adapted
to large outdoor racetracks [arxiv:2202.07008 §2.1]. Card:
[Autonomous Vehicles on the Edge](/papers/2202.07008).

### Localisation on small-scale research cars

This is a survey, not a SLAM method. It lists localisation and mapping as one
perception task for small robot cars, and compares the methods used for it in
a table of check and cross marks, with no measured values
[arxiv:2404.06229 §4.1.1] [arxiv:2404.06229 tab. IV]. Central localisation,
such as motion capture or markers, is described as expensive and hard to move,
which matters for outdoor use [arxiv:2404.06229 §3.5] [arxiv:2404.06229 §4.3.5].
The survey's own baseline pipeline calls SLAM to update the map, but the paper
does not test that pipeline [arxiv:2404.06229 §4.5]. Card:
[Autonomous Driving Small-Scale Cars](/papers/2404.06229).

### Map and exploration in navigation evaluation

This is not a SLAM method. The navigation paper asks that the prior
exploration of the test environment be stated, because it changes what a score
measures. It names three regimes: no prior exploration; pre-recorded
exploration supplied with the benchmark; and exploration by the agent under a
time budget. In the last regime, the paper suggests reporting performance as a
function of the budget, and gives 500 m, 1,000 m and 2,000 m as examples
[arxiv:1807.06757 §3]. It also asks that any perfect odometry or GPS
assumption be stated [arxiv:1807.06757 §2], and it asks for research on the
internal representation an agent builds while it moves, without recommending
a form for it [arxiv:1807.06757 §7]. Card:
[On Evaluation of Embodied Navigation Agents](/papers/1807.06757).

## When to use which

The first rows follow the M2DGR scenes, then the method rows, then the
navigation row. Results are author-reported, per sequence or per scene, and
not comparable across platforms.

| Situation | Use | Why |
|---|---|---|
| Large outdoor scene | LiDAR SLAM | Authors say LiDAR methods generally beat vision in large outdoor scenes [arxiv:2112.13659 §4]. On Street06 the LiDAR results are 0.417–1.742 m, and the best visual result is 5.845 m [arxiv:2112.13659 tab. 5]. |
| Darkness | Thermal camera with visual SLAM, or LiDAR SLAM | ORB-SLAM3 fails on Roomdark06 with pinhole and fish-eye cameras, but gives 0.404 m with the thermal camera. Three LiDAR methods give 0.314–0.373 m on that sequence; LINS gives 2.205 m [arxiv:2112.13659 tab. 5] [arxiv:2112.13659 §4]. Some scenes look texture-less in thermal [arxiv:2112.13659 §4]. |
| Lift, changing floors | No tested method is reliable here | None of the tested systems tracks the whole Lift04 trajectory or builds a complete map. LIO-SAM drifts badly after the robot enters the lift, with ATE of 1247.153 m [arxiv:2112.13659 §4] [arxiv:2112.13659 tab. 5]. |
| Door transitions, GNSS weak | LiDAR SLAM | On Door01 the LiDAR results are 0.253–0.274 m, the lowest in the row. The text says GNSS signals degrade near the door [arxiv:2112.13659 tab. 5] [arxiv:2112.13659 §4]. |
| Visual only, outdoor | Measure before relying on it | On Street02 the best visual result is 24.157 m (VINS-Mono). The best LiDAR result is 4.063 m (LIO-SAM) [arxiv:2112.13659 tab. 5]. |
| Lidar, camera and IMU all available; one sensor may degrade | Lidar-visual-inertial SLAM (LVI-SAM) | On Handheld, the lidar baselines fail, and LVI-SAM gives 0.83 m RMSE against GPS with loop closure [arxiv:2104.10831 tab. 2]. Needs all three sensors with known extrinsics, and no timing or memory figures are given [arxiv:2104.10831 §2.1] [arxiv:2104.10831 §3]. |
| Lidar only, many moving objects in view, labelled lidar data available | Semantic surfel LiDAR SLAM (SuMa++) | On highway sequence 35, author-reported relative translation error is 1.11%, against 26.8% for SuMa and 1.22% for the variant that deletes all movable surfels [arxiv:2105.11320 tab. I]. Needs a trained segmenter and about 75 ms per scan for it on the paper's GPU [arxiv:2105.11320 §IV]. The released code differs from the paper in the penalty term; see the card's Paper vs code section. |
| Monocular video only, no depth sensor, photometrically accurate dense map needed | Monocular dense SLAM with a radiance field (NeRF-SLAM) | Author-reported PSNR of 34.90 to 53.44 dB across the eight Replica scenes, with the highest value in every scene [arxiv:2210.13641 tab. 1]. Needs a GPU with about 11 GB [arxiv:2210.13641 §5]. Author-reported speed is about 10 fps on the authors' GPU [arxiv:2210.13641 §4.5]. Depth must be covariance-weighted; raw depth lowers PSNR below the no-depth case [arxiv:2210.13641 §4.4]. |
| One RGB-D stream, pose and semantic map needed together | RGB-D Gaussian-splatting SLAM (GS3LAM) | Author-reported ATE of 0.37 cm on Replica, and mIoU of 96.63% over four Replica scenes [arxiv:2603.27781 tab. 3] [arxiv:2603.27781 tab. 4]. Per frame, mapping takes 4.29 s and tracking 3.01 s on Office 0, so the 109 FPS figure is rendering speed, not a live loop rate [arxiv:2603.27781 app. C.2]. Needs a GPU and a label map per frame [arxiv:2603.27781 §3.3.4]. |
| One RGB-D stream, pose and colour map needed, no semantic labels | RGB-D Gaussian-splatting SLAM (SplaTAM) | Author-reported ATE of 0.36 cm on Replica and 11.88 cm on ScanNet [arxiv:2312.02126 tab. 1]. Needs known intrinsics and dense depth [arxiv:2312.02126 §5 Limitations]. Per frame on Replica R0 it takes 1.00 s to track and 1.44 s to map, so the reported timings do not describe a real-time loop on that setup [arxiv:2312.02126 tab. 6]. |
| Long-term map; objects move between visits; object categories are known | Object-level SLAM with learned codes | On the 4-Round loop, adding NeuSE to ORB-SLAM3 lowers full ATE from 0.128 m to 0.093 m, and on Triple-Infinity from 0.275 m to 0.132 m with the piecewise base [arxiv:2303.07308 tab. 5]. Change detection on 4-Round reaches 100% precision and recall, against 87.5% recall for the baseline [arxiv:2303.07308 tab. 7]. Needs a trained model per category and object segmentation with semantic labels [arxiv:2303.07308 app. A1] [arxiv:2303.07308 §9]. No official code [arxiv:2303.07308 §Paper vs code]. |
| Poses already come from a tracker; need a continuous SDF for planning | Neural SDF mapping | iSDF assumes external poses [arxiv:2204.02296 §4]. On its six main sequences the collision-cost error is the lowest of the three methods compared, with Voxblox slightly worse. These values appear only in a figure [arxiv:2204.02296 §6.2] [arxiv:2204.02296 fig. 8]. |
| Need indoor RGB-D scenes for SLAM tests in simulation | Replica scenes, for research only | 18 scenes with HDR textures and semantic labels [arxiv:1906.05797 tab. 1]. The data may be used for non-commercial research and education only [arxiv:1906.05797 §Pitfalls]. |
| High-speed racing | Expect error to grow with speed | Survey-reported lateral error with Massa et al. 2020 rises from 0.1 m at 60 km/h to 1.48 m at 200 km/h [arxiv:2202.07008 §2.1]. |
| Want a quick map of Gaussian-splatting SLAM numbers, not a method | Survey, then the original paper for each value | The 3DGS survey lists SLAM results from several methods on Replica, with the numbers copied from their papers [arxiv:2401.03890 tab. S4] [arxiv:2401.03890 §6]. It proposes no new method and leaves learning rates and other training values as "not stated" [arxiv:2401.03890 §3.2]. |
| Choosing a small research car, and a localisation method for it | Survey tables as a starting list, then the original papers | The platform prices and runtimes are as printed and undated, and the method comparisons are qualitative [arxiv:2404.06229 tab. II] [arxiv:2404.06229 tab. IV]. Central motion-capture localisation is costly and hard to move [arxiv:2404.06229 §3.5] [arxiv:2404.06229 §4.3.5]. |
| Lidar, camera and IMU on one rig; a coloured dense map is needed; surfaces may be bare or plain | Colourised lidar-inertial-visual mapping (R3LIVE) | Author-reported 50 m relative pose error of 0.99 degrees and 2.25% on a seaport sequence, against 2.11 degrees and 13.73% for LVI-SAM with a modified front end [arxiv:2109.07982 tab. III]. The visual step takes 33.38 ms per frame on the drone's computer at 0.10 m point spacing, and 166.08 ms at 0.01 m [arxiv:2109.07982 tab. IV]. Needs the lidar map for depth [arxiv:2109.07982 §V]. Its released code is GPL-2.0; see the card's Paper vs code section. |
| Need objects, rooms and the building above a metric mesh, for planning | Metric-semantic mesh and scene-graph SLAM (Kimera) | Author-reported ATE of 0.05 m on EuRoC V1_1, against 0.09 m for OKVIS [arxiv:2101.06894 tab. 1]. Upper layers are parsed after the run, and the Subway scene takes about 30 minutes [arxiv:2101.06894 §3] [arxiv:2101.06894 §4.8]. Hierarchical planning in its scaled office takes 0.34 s to 1.24 s, against 420 s to 21,389 s on the ESDF [arxiv:2101.06894 tab. 9]. Needs stereo or RGB-D, an IMU and 2-D labels. Real-life results are qualitative [arxiv:2101.06894 §4.10]. |
| Query a 3D map by text, image or click, with no training per concept | Open-set feature mapping (ConceptFusion) | On structured text queries over UnCoCo, 3D mIoU 0.446, against 0.289 for supervised OpenSeg-3D [arxiv:2302.07241 tab. 1]. Feature extraction takes 10 to 15 s per image on an RTX 3090, so it is an offline step [arxiv:2302.07241 §3]. On ScanNet 2-D segmentation it is below supervised LSeg [arxiv:2302.07241 tab. 5]. Robot tests are qualitative [arxiv:2302.07241 §4.3]. |
| Navigation agent with a map or exploration phase | State the exploration regime with every number | Results from different exploration regimes are not directly comparable [arxiv:1807.06757 §3]. Also state any perfect odometry or GPS input [arxiv:1807.06757 §2]. |

## Implementation sketch

The benchmark cards do not give the internal steps of the SLAM systems they
evaluate. For GS3LAM's per-frame loop, read its card. For SplaTAM's per-frame
loop, read its card under Method. For NeuSE's data association order, read its
card under Method. For LVI-SAM's update cycle, read its card under Method. For R3LIVE's per-scan
and per-image steps, Kimera's online pipeline, ConceptFusion's per-pixel
features and NeRF-SLAM's two threads, read their cards under Method. This
sketch shows only the evaluation core that the
benchmark uses to score one run.

```pseudocode
# ATE evaluation of one run  [arxiv:2112.13659 §4]
# Input:  estimated poses and reference poses, with timestamps
# Output: one ATE value in metres for the sequence

def evaluate_run(estimated, reference):
    # Pair poses that share a timestamp; the paper does not say how  [§4]
    pairs = match_by_timestamp(estimated, reference)
    # Align the estimate to the reference before scoring  [§4]
    aligned = align_with_evo(pairs.estimated, pairs.reference)
    # Combine the per-pose errors into one number; not spelled out  [§4]
    return ate(aligned, pairs.reference)
```

## Contradictions

- **LiDAR versus vision.** The authors say LiDAR-based methods generally beat
  vision-based methods [arxiv:2112.13659 §4]. On Hall05, VINS-Mono gives 0.646 m,
  which is below every LiDAR value there (1.010–1.065 m) [arxiv:2112.13659 tab. 5].
- **LVI-SAM across two papers.** R3LIVE reports LVI-SAM at 2.11 degrees and
  13.73% at 50 m on seaport sequence (a), with a modified lidar front end
  [arxiv:2109.07982 tab. III]. The LVI-SAM paper reports RMSE against GPS of 0.67 m
  and 0.83 m on two of its own datasets, with loop closure [arxiv:2104.10831 tab. 2].
  The metric, data and LVI-SAM version differ, so the two sets of numbers cannot
  be compared, and this page does not reconcile them.
- **Tracking accuracy in GS3LAM.** The paper calls its tracking competitive, but
  its own tables do not show it as the best. On Replica, SplaTAM's ATE is 0.36 cm
  against GS3LAM's 0.37 cm [arxiv:2603.27781 tab. 3]. On ScanNet, NICE-SLAM's
  ATE is 10.70 cm against GS3LAM's 11.24 cm [arxiv:2603.27781 app. C.3].
- **Replica versus ScanNet in SplaTAM.** SplaTAM's ATE on Replica (0.36 cm) is the
  lowest in its table, against DROID-SLAM at 0.38 cm. On ScanNet it is higher than
  NICE-SLAM, at 11.88 cm against 10.70 cm [arxiv:2312.02126 tab. 1]. GS3LAM's
  appendix gives the same two ScanNet values [arxiv:2603.27781 app. C.3].
- **NeuSE improvement figure.** The text gives a 65% ATE improvement on the lower
  half of one trajectory [arxiv:2303.07308 §7.1]. Table 3 gives reductions against
  the point-cloud baseline for the full trajectory of about 58% (planar) and 66%
  (non-planar) [arxiv:2303.07308 tab. 3]. The two figures measure different
  things, so cite the table values.
- **Speed claims.** GS3LAM's 109 FPS is a rendering rate [arxiv:2603.27781 app. C.2].
  iSDF's 33 ms is one training iteration, and the paper does not evaluate frame
  rate or tracking [arxiv:2204.02296 §5.2] [arxiv:2204.02296 §6.3]. NeuSE's
  about 4 fps is a full localization run in a crowded setting, with sequential
  processing and no software optimisation [arxiv:2303.07308 §7]. None of these is
  a comparable SLAM loop rate, and they should not be compared as if they were.
- **LVI-SAM degeneracy rule.** The paper says the lidar-odometry factor is not
  added when a scan match is degenerate [arxiv:2104.10831 §2.3.2]. The released
  code keeps the factor and projects out the degenerate directions; see the
  LVI-SAM card's Paper vs code section.
- **LVI-SAM depth ablation.** The text says lidar depth reduces error
  [arxiv:2104.10831 §3.1.1]. In the same ablation, rotation error rises from
  6.41° to 7.66° [arxiv:2104.10831 tab. 1]. Both are reported as they stand.
- **SplaTAM improvement over Point-SLAM.** The 3DGS survey's text says
  SplaTAM cuts error by "~50%" from 0.52 cm to 0.36 cm [arxiv:2401.03890 §6.1].
  Its own table gives those values, and (0.52 − 0.36) / 0.52 is about 31%
  [arxiv:2401.03890 tab. S4]. Cite the table value.
- **NeRF-SLAM frame rate.** The paper gives about 12 fps in one sentence and
  10 fps overall, with tracking at about 15 fps and mapping at about 10 fps
  [arxiv:2210.13641 §4.5]. Quote the lower figure unless you measure your own
  setup.
- **Different metrics.** The survey reports lateral and longitudinal errors and
  RMSE for racing cars [arxiv:2202.07008 §2.1]. M2DGR, GS3LAM, SplaTAM and NeuSE
  report ATE for trajectories [arxiv:2112.13659 §4] [arxiv:2603.27781 tab. 3]
  [arxiv:2312.02126 tab. 1] [arxiv:2303.07308 tab. 5]. NeRF-SLAM reports depth
  L1 and PSNR on rendered views [arxiv:2210.13641 tab. 1]. LVI-SAM reports RMSE against GPS [arxiv:2104.10831 tab. 2]. SuMa++ reports KITTI relative translation error as a percentage of distance travelled [arxiv:2105.11320 tab. I]. iSDF reports SDF error and collision-cost error for a
  map [arxiv:2204.02296 §5.3]. The navigation paper scores success and path length,
  not ATE [arxiv:1807.06757 §4]. R3LIVE reports drift and relative pose error,
  Kimera reports ATE and mesh RMSE, and ConceptFusion reports 3D mIoU
  [arxiv:2109.07982 tab. II] [arxiv:2101.06894 tab. 3] [arxiv:2302.07241 tab. 1].
  These measure different things and should not be
  compared directly.

## Papers

- [M2DGR: A Multi-sensor and Multi-scenario SLAM Dataset for Ground Robots](/papers/2112.13659): a 36-sequence dataset with a rich sensor suite, and an evaluation of visual and LiDAR SLAM on seven sequences.
- [LVI-SAM: Tightly-coupled Lidar-Visual-Inertial Odometry via Smoothing and Mapping](/papers/2104.10831): a factor-graph system that fuses a lidar, a camera and an IMU with loop closure; author-reported RMSE against GPS on three self-gathered datasets.
- [SuMa++: Efficient LiDAR-based Semantic SLAM](/papers/2105.11320): surfel lidar SLAM with semantic labels that remove moving objects from the map and weight the scan alignment; author-reported KITTI results.
- [Replica: A Digital Replica of Indoor Spaces](/papers/1906.05797): 18 indoor scene reconstructions with HDR textures and semantic labels, built with an in-house SLAM system; no SLAM benchmark is reported.
- [GS3LAM: Gaussian Semantic Splatting SLAM](/papers/2603.27781): RGB-D SLAM that jointly estimates camera poses and a semantic Gaussian field, with author-reported results on Replica and ScanNet.
- [SplaTAM: Splat, Track & Map 3D Gaussians for Dense RGB-D SLAM](/papers/2312.02126): dense RGB-D SLAM on 3D Gaussians, with author-reported ATE on Replica, TUM-RGBD, ScanNet and ScanNet++.
- [NeuSE: Neural SE(3)-Equivariant Embedding for Long-Term Object-Based Simultaneous Localization and Mapping](/papers/2303.07308): latent object codes that add pose constraints and change detection to an existing SLAM system, with author-reported gains on simulated and real sequences.
- [Autonomous Driving Small-Scale Cars: A Survey of Recent Development](/papers/2404.06229): a survey of small robot-car platforms, with compiled hardware tables and qualitative localisation and mapping comparisons; no experiments.
- [A Survey on 3D Gaussian Splatting](/papers/2401.03890): a survey of 3DGS that compiles author-reported SLAM, dynamic-scene and avatar results from other papers; it proposes no method of its own.
- [Kimera: from SLAM to Spatial Perception with 3D Dynamic Scene Graphs](/papers/2101.06894): a visual-inertial mesh SLAM system with object, human, place, room and building layers; author-reported EuRoC accuracy, mesh error and planning times.
- [R3LIVE: a Robust, Real-time, RGB-colored, LiDAR-Inertial-Visual state estimation and mapping package](/papers/2109.07982): lidar-inertial odometry with a visual step that colours the map by photometric error; author-reported drift on four campus trajectories and relative errors on a seaport sequence.
- [NeRF-SLAM: Real-Time Dense Monocular SLAM with Neural Radiance Fields](/papers/2210.13641): dense monocular SLAM whose depth covariances weight a radiance-field mapper; author-reported PSNR and depth error on Replica, at about 10 fps.
- [ConceptFusion: Open-set Multimodal 3D Mapping](/papers/2302.07241): per-point CLIP-aligned features in a 3D map, queried by text, image, click or audio; author-reported UnCoCo results, with no training.
- [iSDF: Real-Time Neural Signed Distance Fields for Robot Perception](/papers/2204.02296): online neural SDF mapping from posed depth images, with the poses supplied by an external tracker.
- [Autonomous Vehicles on the Edge: A Survey on Autonomous Vehicle Racing](/papers/2202.07008): a survey of racing software and hardware, with the localisation errors it reports from other work.
- [On Evaluation of Embodied Navigation Agents](/papers/1807.06757): recommendations for navigation benchmarks, with no experiments of its own. Cited here for its exploration-regime and odometry-statement requests, not for SLAM results.
