Research
Breaking the Static Assumption: A Dynamic-Aware LIO Framework Via Spatio-Temporal Normal Analysis
Overview Research area: Robotics — LiDAR-Inertial Odometry (SLAM/localization) in dynamic environments. Technical level: Advanced. The paper builds on 4D spatio-temporal surface normals, Jacobian/eige

- arXiv
- 2510.22313
- Published
- 2025-10-25
- Authors
- Chen Zhiqiang, Le Gentil Cedric, Lin Fuling, Lu Minghao, Qiao Qiyuan, Xu Bowen, Qi Yuhua, Lu Peng
AI summary
Overview
- Research area: Robotics — LiDAR-Inertial Odometry (SLAM/localization) in dynamic environments.
- Technical level: Advanced. The paper builds on 4D spatio-temporal surface normals, Jacobian/eigen-decomposition-based hyperplane fitting, an Iterated Extended Kalman Filter (IEKF), IMU preintegration, and point-to-plane ICP error minimization.
- Scope (one sentence): The paper proposes a LiDAR-inertial odometry framework that detects dynamic objects inside the point cloud registration loop itself, then validates it on public benchmarks plus a new self-collected dataset covering geometrically rich, geometrically degenerate, and dynamic-object-dominated scenes.
What This Paper Is About
Conventional LiDAR-inertial odometry assumes the world is static, so when pedestrians or vehicles fill the sensor's field of view, the registration algorithm (e.g., ICP) treats moving points as fixed references and the pose estimate drifts or fails outright. The authors argue that existing fixes are stuck in a circular dependency: you need a good pose to detect dynamic objects, but you need to remove dynamic objects to get a good pose. Their goal is to break that loop by making dynamic awareness part of the registration process rather than a pre-processing step before it.
Key Contributions
- A dynamic-aware ICP algorithm for point cloud registration in dynamic environments that resolves the circular dependency between localization and dynamic object detection.
- Empirical demonstration in genuinely hard conditions, including geometrically degenerate scenes (featureless tunnels) and scenes dominated by dynamic objects — not just the geometrically rich urban driving data used in most prior evaluations.
- A computationally efficient spatial consistency verification method (upsampling, DBSCAN clustering, bounding-box filtering, and overlap checks against a short-term sliding voxel map) that improves static map construction by removing false positives.
- Open-source release of the code and a new dataset of challenging dynamic environments, available at https://github.com/thisparticle/btsa.
Main Findings
- Geometrically rich (GR) scenes show no clear winner: On sequences D_1, D_2, E_1–E_3, U_1, U_2, Table II reports FAST-LIO2 at 2.15 / ✗ / 1.97 / 1.60 / 1.16 / 4.11 / 1.13, iG-LIO at 1.98 / ✗ / 1.61 / ✗ / 1.18 / 3.91 / 0.92, Dynamic-LIO at – / – / 4.80 / 1.06 / 1.27 / 4.18 / 1.91, TRLO at 3.37 / 0.54 / 8.82 / 1.23 / 1.21 / 11.96 / 0.94, and the proposed method at 3.65 / 0.64 / 1.98 / 1.47 / 0.89 / 3.43 / 0.91 (RMSE in meters). The authors conclude that abundant static structure provides enough constraints that dynamic handling confers little advantage, and that evaluations limited to such environments understate the problem.
- Geometrically degenerate (GD) scenes separate the methods: In the sequences shown in Fig. 6 (Promenade03, Bridge01, Urban_tunnel03), the authors report that FAST-LIO2's estimates can become immobilized while iG-LIO's trajectory gets distorted by dynamic objects. They attribute the failures of Dynamic-LIO and TRLO to their separation of detection from registration, and state that their approach successfully estimated the trajectory across all sequences.
- Dynamic-object-dominated (DOD) scenes: In Table III, FAST-LIO records 12.40 / 28.33 / 16.99 m on D_4 / D_5 / D_6, iG-LIO records 0.74 / ✗ / ✗, Dynamic-LIO is marked "–" for all three (data not suitable for the algorithm), TRLO records 0.80 / 1.91 / 2.82, and the proposed method records 0.79 / 1.83 / 3.04. The authors note that methods without dynamic handling maintained localization only in the simpler D_4 scenario and failed on D_5 and D_6.
- Static map building across four LiDAR types: Evaluated with ground-truth poses on nine sequences of the Helimos dataset using the pointwise protocol, with Static Accuracy (SA), Dynamic Accuracy (DA), and their harmonic mean (HA). The method achieves the best HA among online methods on the Aeva sensor (82.50, versus 74.12 for Beautymap, 84.57 for DUFOMap, 74.21 for MCDOD, 75.81 for Dynablox, and 54.26 for OTD), and second-best online performance on the other sensors. On the Avia sensor its HA is 75.87; on Ouster 81.80; on Velodyne 57.79.
- The ablation supports integration over separation: On the GD sequence P_3, disabling dynamic detection produces 35.84 m RMSE, sequential detection produces 0.60 m, and the full method produces 0.46 m. On DOD sequence D_4 the values are 6.14 / 1.01 / 0.79. On GR sequence D_2 the ordering reverses slightly, with sequential detection best at 0.59 versus 0.64 for the full method.
- Real-time performance: On Promenade03 the full pipeline averages 49.69 ms per LiDAR scan against a typical 100 ms scan interval, with 37.38 ms attributed to dynamic-aware state estimation (including all normal vector computations) and 6.08 ms of overhead from the spatial consistency check.
Methodology in Plain English
The core idea is to give every LiDAR point a time stamp and treat the world as four-dimensional (three spatial axes plus time). For each point, the system fits a local hyperplane to its neighbours from a short sliding window of recent scans — the temporal sliding window map holds roughly two seconds of recent point cloud — and extracts a 4D normal vector. The fourth component of that normal, d, captures how the surface is moving through time. For a static surface it is zero; for a moving object it is not. Points whose |d| exceeds a threshold derived from an angle of θ_thr = 5.7° (corresponding to |d| ≈ 0.1) are marked "unstable," which covers both genuine dynamic objects and freshly observed regions.
The crucial twist is when this test happens. Rather than filter the cloud first and register afterwards, the check runs inside every ICP iteration, using a dual-map architecture: a temporally dense sliding-window map for the spatio-temporal normals, and a long-term voxel map holding only static planar surfaces for the point-to-plane registration against the global structure. The pose and the stable/unstable classification are therefore refined together, resolving the chicken-and-egg problem.
For map building, the system cleans up false positives using spatial consistency: unstable points are upsampled by nearest-neighbour search, clustered with DBSCAN, enclosed in bounding boxes, and checked for volumetric overlap with a short-term sliding voxel map of nearby static areas. A cluster with minimal overlap is a genuine moving object; one that overlaps heavily with known static space is a newly observed static region misclassified as dynamic. Oversized clusters are discarded as outliers.
The underlying estimator follows the FAST-LIO2-style formulation: an Iterated Extended Kalman Filter estimating pose, velocity, and IMU biases, minimizing IMU preintegration residuals together with point-to-plane distances. Evaluation used RMSE against ground truth after alignment with the evo package, averaged over five independent runs per sequence, on hardware consisting of an Intel i5-12490 CPU with 32 GB RAM running Ubuntu 22.04.
Why This Matters
Impact on research: The paper challenges both the static-world assumption of mainstream LIO and, more pointedly, the evaluation culture around it. The authors argue explicitly that prior dynamic-LIO benchmarks drawn from geometrically rich urban driving datasets "understate the true challenges" because static features dominate. By contributing a dataset of dynamic-object-dominated and geometrically degenerate scenes, the work shifts the measurement bar toward the cases where dynamic handling actually matters.
Real-world applications:
- Autonomous vehicles operating in congested city streets, parking structures, or tunnels where pedestrians and other vehicles fill the sensor view while static structure is scarce.
- Indoor service and logistics robots navigating corridors, lobbies, or warehouses crowded with people.
- Aerial robots and drones flying low through urban canyons or parks where moving objects frequently occlude landmarks.
- Surveying and mapping in busy public spaces (the paper's Promenade and MountainTopPark sequences), where a clean static map is the deliverable.
Industry relevance: The 49.69 ms per scan runtime against a 100 ms scan interval means the method is framed as deployable on standard CPU hardware without GPUs, which matters for cost- and power-constrained mobile platforms. Support across spinning (HDL-32E, VLP-16) and solid-state (Livox Mid-360) Lidars, plus testing on Avia, AEVA, VLP16, and Ouster128 in the mapping evaluation, signals intent for sensor-agnostic adoption. The open-source code and dataset release lowers the barrier for integrators to reproduce and extend the results.
Future Directions
- Handling sparse point distributions: The authors observe that sensors with sparse point distributions undermine the local uniformity assumption needed for accurate normal vector estimation, raising false positive rates. Reducing this sensor-dependent fragility is an open problem.
- Detecting unclustered dynamic points: The spatial consistency check relies on dynamic points clustering together; sparse dynamic points that fail to form clear clusters may remain undetected, which the authors link to lower dynamic accuracy on some sensor configurations.
- Balancing static versus dynamic accuracy: The paper identifies a trade-off between static and dynamic point classification, with the proposed method improving static accuracy over MCDOD while trailing on dynamic accuracy in some configurations. Resolving that trade-off rather than trading one for the other is unresolved.
- Deployment beyond the tested setup: All odometry experiments were run on a single desktop configuration, and the static map evaluation used ground-truth poses for fair comparison. How the pipeline behaves with estimated poses and more varied motion profiles is not established here. The paper does not include an explicit future work section.
Target Audience
Robotics and SLAM researchers working on state estimation, point cloud registration, and dynamic environment handling; engineers integrating LiDAR-inertial odometry into autonomous vehicles, mobile robots, or aerial platforms; and benchmark or dataset designers interested in moving evaluation away from geometrically rich driving scenes. Readers need comfort with ICP registration, Kalman filtering, and covariance/hyperplane mathematics to follow the derivation of the spatio-temporal normal in full, though the high-level framework and the experimental tables are accessible to practitioners with general SLAM background.
Authors’ abstract
This paper addresses the challenge of Lidar-Inertial Odometry (LIO) in dynamic environments, where conventional methods often fail due to their static-world assumptions. Traditional LIO algorithms perform poorly when dynamic objects dominate the scenes, particularly in geometrically sparse environments. Current approaches to dynamic LIO face a fundamental challenge: accurate localization requires a reliable identification of static features, yet distinguishing dynamic objects necessitates precise pose estimation. Our solution breaks this circular dependency by integrating dynamic awareness directly into the point cloud registration process. We introduce a novel dynamic-aware iterative closest point algorithm that leverages spatio-temporal normal analysis, complemented by an efficient spatial consistency verification method to enhance static map construction. Experimental evaluations demonstrate significant performance improvements over state-of-the-art LIO systems in challenging dynamic environments with limited geometric structure. The code and dataset are available at https://github.com/thisparticle/btsa.