Source-linked AI summary
Odometer-Agnostic Drift Correction Using OpenStreetMap Lane Geometry
Joaquin Caballero, Emilio Garcia-Fidalgo, Alberto Ortiz, Jarno Ralli
TL;DR
Long-term odometry drift remains a problem in large-scale or loop-free environments, while existing map-assisted corrections often depend on dense maps, sensor-specific processing, or complex matching. This paper directly aligns recent odometry segments with sparse OSM lane centerlines using a lightweight, odometry-agnostic pipeline. Across LiDAR and visual backends, it reports consistent improvements, including large reductions under severe drift, while lane association remains a limitation in ambiguous settings.
Problem
Long-term drift limits incremental LiDAR and visual odometry, while existing map-assisted methods often require dense priors, specialized processing, or complex matching pipelines.
Method
The method performs continuous direct alignment of short odometry segments with sparse OSM lane centerlines using a lightweight, odometry-agnostic pipeline.
Results
The method reduces mean APE-2D for every evaluated odometry backend on KITTI and KITTI-360, including LiODOM from 334.33 m to 19.24 m and KISS-ICP from 82.73 m to 12.17 m on KITTI-360.
Takeaways & Limitations
Consistent improvements across LiDAR and visual odometry indicate that OSM lane-centerline correction can remain competitive with recent OSM-assisted correctors while using a simpler alignment strategy.
Takeaways & Limitations
Lane association can become inaccurate during frequent lane changes, aggressive driving, or overlapping road structures such as bridges and tunnels.
Abstract
from arXiv · showhide
Despite significant progress in odometry estimation, long-term drift remains a fundamental limitation of incremental pose integration, especially in large-scale or loop-free environments. Existing map-assisted methods can reduce drift, but often depend on dense maps, sensor-specific processing, or complex matching pipelines. We propose a lightweight open-source, odometry-agnostic correction method that aligns short trajectory segments to OpenStreetMap (OSM) lane centerlines. By formulating drift correction as a direct alignment between recent odometry and sparse lane geometry, the method enables efficient online operation without dense priors or expensive preprocessing. Experiments with LiDAR and visual odometry backends demonstrate consistent improvements, with particularly strong gains under severe drift.
I. INTRODUCTION
Long-term odometry drift is difficult to control in large-scale or loop-sparse environments, motivating a lightweight correction method based on sparse OSM lane geometry rather than dense maps or complex matching.
- Long-term drift accumulates in LiDAR and visual odometry, especially when trajectories are large and loop closures or global positioning are unreliable.
- OSM offers globally scalable road and lane structure, but its lower precision raises the question of whether it can constrain drift without HD-map complexity and cost.
- The proposed framework directly aligns short trajectory segments with sparse OSM lane centerlines instead of using dense maps or global graph matching.
- The pipeline is lightweight, open-source, odometry-agnostic, and designed for minimal preprocessing and real-time operation under substantial accumulated drift.
- Evaluations cover multiple sensing modalities and compare the method with recent OSM-assisted approaches using LiDAR and visual odometry backends.
- The approach is presented as competitive with more specialized OSM-based localization and drift-correction pipelines.
II. RELATED WORK
Prior map-assisted methods constrain drift through shape, descriptor, lane, or road-geometry matching, but often require specialized sensing, dense structure, or complex inference. The proposed method instead performs continuous alignment of recent odometry segments to OSM lane centerlines with a compact, odometry-agnostic pipeline.
- Map-assisted methods use prior geometry to constrain drift and improve global consistency, primarily through shape or descriptor matching versus lane or road-geometry matching.
- A. Shape and Descriptor Matching Approaches: Shape-based approaches commonly match LiDAR observations against buildings, boundaries, or semantic descriptors using representations and registration pipelines with substantial complexity.
- A. Shape and Descriptor Matching Approaches: Building-dependent methods may be less applicable in rural, suburban, or open environments and can require LiDAR-specific processing, semantic segmentation, or dense registration.
- B. Lane and Road-Geometry Matching Approaches: Lane-based methods use road layout as a geometric prior, but existing approaches include probabilistic localization, graph constraints, sensor models, and graph-based inference.
- B. Lane and Road-Geometry Matching Approaches: TOM-Odometry uses road-shape matching and online associations, but requires sufficiently low initial drift and can associate with incorrect road segments under large drift or dense networks.
- B. Lane and Road-Geometry Matching Approaches: The proposed pipeline continuously aligns recent odometry to OSM lane centerlines without dense maps, semantic processing, global road-graph search, or a dedicated initialization stage.
III. METHOD
The method represents OSM lane geometry as lightweight geometric landmarks and aligns variable-length odometry segments to lane centerlines in SE(2). It addresses map inaccuracies, ambiguous lane matches, large drift, and large search regions through compact representation and efficient filtering.
- The method corrects drift by registering variable-length estimated-trajectory segments to OSM lane centerline points with incremental rigid transforms in SE(2).
- The framework explicitly addresses inaccurate or incomplete lanes, parallel-lane and intersection ambiguities, large odometry drift, and large map regions requiring efficient queries.
- OSM provides globally available road-level geometry that is noisier than HD maps but sufficient to act as a global geometric prior for reducing long-term drift.
- Raw OSM is converted into lane-level data through a lightweight preprocessing pipeline before matching.
- Lane-level data are extracted from raw OSM through filtering, Lanelet2 conversion, local UTM projection, centerline precomputation, and a 3 m minimum point-spacing filter.The spacing filter reduces redundant points and KD-tree candidates while trading computational cost against preservation of curved-road geometry.
- The lane map is stored as centerline segments in a 2D KD-tree, with normalized segment directions used to reject candidates inconsistent with vehicle motion.
B. Lane Correspondence Matching
Lane correspondence matching combines nearest-neighbor candidate retrieval with normal projection and directional consistency constraints. Valid matches are selected from projected intersections, with the first candidate satisfying both geometric tests retained.
- Naive closest-point matching is insufficient because sparse centerlines, intersections, and local map inaccuracies can create outliers.
- Trajectory poses are projected normally onto nearby lane segments, and only intersections within the segment bounds are treated as valid correspondences.The projection produces candidate intersections between the pose normal and segments defined by consecutive lane points.
- The KITTI ground-truth and OSM-derived lane centerlines can be visibly misaligned, motivating geometric validation beyond raw proximity.
- Trajectory and lane directions disambiguate multiple projected candidates by retaining lane segments aligned with the vehicle’s direction of travel.
- The first candidate satisfying both projection and direction constraints is selected; poses without such a candidate receive no correspondence.In the illustrated example, point C is selected as the final match.
C. Sliding-Window Trajectory Correction with Trimmed ICP
The correction pipeline incrementally aligns corrected poses within a bounded sliding window, using lane correspondences and trimmed ICP to estimate robust SE(2) updates. It accepts reliable alignments, rejects poor ones, and restarts after persistent failures.
- Each incoming pose is corrected with the accumulated SE(2) transform, appended to the sliding window, and used for local geometric alignment.
- Alignment starts only after the window meets minimum pose-count and trajectory-length requirements, while exceeding the maximum size removes the oldest pose.This prevents overly long segments from degrading alignment quality and maintains bounded computational cost.
- LANEMATCH associates window poses with nearby lane segments using normal-projection and directional constraints.
- Trimmed ICP estimates a 2D rigid transform after discarding a fraction of the largest residuals, and alignment is rejected when valid correspondences or error criteria are insufficient.
- Rejected corrections shorten the window and increment a failure counter, while exceeding Emax triggers a restart using the most recent poses.The restart mechanism supports recovery from persistent mismatches, temporary map inconsistencies, or severe drift.
- The sliding-window strategy provides continuous correction while emphasizing local motion consistency, noise robustness, and bounded computational complexity.
IV. EXPERIMENTAL SETUP
The experiments evaluate the OSM lane-based correction method across multiple odometry backends and compare it with recent OSM-assisted drift-correction methods on KITTI Odometry.
- The evaluation applies the correction method to multiple baseline odometry backends to test independence from the underlying odometry source.
- The method is compared against recent OSM-assisted drift-correction methods on KITTI Odometry using published results for common baselines.
A. Baseline Odometry Estimation
The evaluation uses multiple LiDAR and visual odometry backends on KITTI benchmarks, with a common online correction algorithm configured for each backend.
- Baseline backends: Four odometry backends cover LiDAR and visual modalities, including KISS-ICP and ORB-SLAM3.The backends are evaluated using publicly available implementations and default configurations.
- Datasets: KITTI Odometry provides synchronized multimodal sensor data and ground-truth poses across suburban, highway, and urban driving sequences.Sequence 3 is excluded because GPS data required for OSM initialization and alignment is missing.
- Correction procedure: The online algorithm maintains a sliding window, matches recent poses to lane segments, and applies trimmed ICP when correspondence and error thresholds are satisfied.Failed alignments remove unreliable window starts and can trigger a shorter-window reset after repeated failures.
- Datasets: KITTI-360 supplies longer, larger-scale urban trajectories, including loop-free segments with pronounced drift.Sequence 8 is excluded because it lacks valid GPS data for OSM initialization and alignment.
C. Comparison Methodology
The comparison evaluates the proposed correction against three OSM-assisted methods using shared odometry baselines and common KITTI sequences where prior results are available.
- Baselines: Three OSM-assisted correction or localization methods are used as comparators: two LiDAR–OSM methods and TOM-Odometry.KISS-ICP is the common baseline for the two LiDAR methods, while ORB-SLAM3 is used for TOM-Odometry.
- Evaluation protocol: Evaluation uses sequences common to all compared methods and reports per-sequence and mean APE-2D.This accommodates the fact that prior methods publish results for selected KITTI sequences.
D. Evaluation Metric
Trajectory accuracy is measured with no-alignment global errors, emphasizing horizontal-plane absolute pose error because the correction operates in SE(2) on xy motion.
- Primary metric: APE-2D is the primary metric: mean absolute pose error in the horizontal plane under evo-style no-alignment evaluation.The no-alignment setting evaluates drift directly in the map or ground-truth frame.
- Metric definition: The APE-2D equation averages horizontal absolute pose differences over the K evaluated poses.K denotes the number of evaluated poses.
- Additional metrics: Translational RMSE, lateral RMSE, and heading error are additionally reported under the same no-alignment setting.Relative Pose Error is not the main metric because discrete sliding-window rigid updates may create local discontinuities despite improved global consistency.
- Configuration: Hyperparameters are selected through bounded sweeps for each backend, including window sizes, lane-candidate count, ICP threshold, and reset threshold.The trimming ratio is fixed at ρ = 0.1 and the correspondence ratio threshold at η = 0.5.
F. Implementation
Experiments compare the method with prior OSM-assisted correctors and across odometry sources, using APE-2D tables and reporting a sequence-dependent limitation.
- Implementation: The correction module is implemented in Python with KD-tree lane indexing and NumPy/SciPy trimmed ICP, without GPU acceleration.Experiments run on a Linux desktop with an Intel Core i7-14650HX processor and 32 GB of RAM.
- OSM-assisted comparisons: On KITTI sequence 01, the proposed method improves KISS-ICP from 2.97 m to 2.81 m APE-2D but does not outperform Kurda et al.Long straight segments, lane changes, parallel lanes, and OSM or georeferencing offsets weaken or ambiguate lane matching.
- OSM-assisted comparisons: Table I reports APE-2D comparisons against two KISS-ICP-based LiDAR–OSM methods, with lower values indicating better performance.The proposed method achieves the best mean over all evaluated sequences and the lowest mean on the subset reported by Li et al.
- Visual-odometry comparison: Table II compares APE-2D with TOM-Odometry using ORB-SLAM3 on selected KITTI sequences, where lower is better.The comparison is restricted to the five sequences reported by TOM-Odometry.
- Visual-odometry comparison: The proposed method improves ORB-SLAM3 on all five selected sequences and achieves a lower mean APE-2D than TOM-Odometry.It avoids road-graph initialization, topological matching, and Kalman filter-based map fusion.
B. Results Across Odometry Backends
Across LiDAR and visual odometry backends, the proposed OSM lane-centerline correction consistently reduces drift on KITTI and KITTI-360. It operates online at 51 Hz on average, while challenging sequences illustrate recovery from severe global displacement.
- Mean APE-2D decreases for every evaluated odometry backend on both KITTI and KITTI-360.The largest gains occur on KITTI-360, where longer trajectories produce stronger accumulated drift.
- 334.33 m to 19.24 m: LiODOM’s mean APE-2D decreases on KITTI-360 after correction.
- 82.73 m to 12.17 m: KISS-ICP’s mean APE-2D decreases on KITTI-360 after correction.
- Visual odometry also improves, with both Basalt and ORB-SLAM3 showing gains on KITTI and KITTI-360.
- In KITTI-360 examples, lane geometry repeatedly pulls severely drifting LiODOM trajectories toward the road layout and restores global consistency for displaced Basalt trajectories.Local trajectory shape often preserves enough road-geometry information for alignment despite global drift.
- 19.5 ms per pose (51 Hz): average correction runtime across all dataset–backend configurations.Lane matching takes 19.1 ms and trimmed ICP 0.33 ms; total runtime ranges from 14.2–27.7 ms (36–70 Hz).