Next Article in Journal
Performance Evaluation of Carrier-Frequency Offset as a Radiometric Fingerprint in Time-Varying Channels
Previous Article in Journal
Disturbance Estimation and Predefined-Time Control Approach to Formation of Multi-Spacecraft Systems
Previous Article in Special Issue
ReLoki: A Light-Weight Relative Localization System Based on UWB Antenna Arrays
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

RLI-SLAM: Fast Robust Ranging-LiDAR-Inertial Tightly-Coupled Localization and Mapping

1
Department of Information and Communication Engineering, Beijing University of Posts and Telecommunication, Beijing 100874, China
2
Department of Electronic Engineering, Tsinghua University, Beijing 100084, China
*
Author to whom correspondence should be addressed.
Sensors 2024, 24(17), 5672; https://doi.org/10.3390/s24175672 (registering DOI)
Submission received: 9 July 2024 / Revised: 22 August 2024 / Accepted: 23 August 2024 / Published: 31 August 2024

Abstract

:
Simultaneous localization and mapping (SLAM) is an essential component for smart robot operations in unknown confined spaces such as indoors, tunnels and underground. This paper proposes a novel tightly-coupled ranging-LiDAR-inertial simultaneous localization and mapping framework, namely RLI-SLAM, which is designed to be high-accuracy, fast and robust in the long-term fast-motion scenario, and features two key innovations. The first one is tightly fusing the ultra-wideband (UWB) ranging and the inertial sensor to prevent the initial bias and long-term drift of the inertial sensor so that the point cloud distortion of the fast-moving LiDAR can be effectively compensated in real-time. This enables high-accuracy and robust state estimation in the long-term fast-motion scenario, even with a single ranging measurement. The second one is deploying an efficient loop closure detection module by using an incremental smoothing factor graph approach, which seamlessly integrates into the RLI-SLAM system, and enables high-precision mapping in a challenging environment. Extensive benchmark comparisons validate the superior accuracy of the proposed new state estimation and mapping framework over other state-of-the-art systems at a low computational complexity, even with a single ranging measurement and/or in a challenging environment.

1. Introduction

Simultaneous localization and mapping (SLAM) is an essential component for smart robot operations in unknown confined spaces such as indoors, tunnels and underground [1]. A variety of LiDAR-based SLAM systems have been widely employed due to their advantages of high resolution, robustness to low-light environments and dense 3D map ability [2,3,4,5]. Due to the rapid development of lightweight and cost-effective LiDAR technologies, LiDAR-based SLAM systems show great potential applications for small unmanned platforms with limited computation resources [6].
However, high-accuracy, fast and robust LiDAR odometry and mapping are encountered three main practical challenging problems [7]. The first one is the point cloud distortion caused by LiDAR’s fast motion, which introduces severe state error in the long-term scenario. The second one is geometric degeneration in the challenging environment such as strong-light spaces and straight tunnels, which cause mapping distortions. The third one is a large number of point clouds generated in real-time, which causes a processing load on limited onboard computing resources.
Sensor fusion is the most used approach to overcome the first two shortcomings of the LiDAR in the LiDAR-based system. It has been proven that integrating LiDAR and other sensors with complementary properties, such as the inertial sensors and cameras, can improve the state estimation accuracy [8,9]. However, most of these works do not solve the computational complexity problem of the LiDAR sensor. To reduce the computation load, Xu et al. [4] propose a direct method to register the raw points to estimate the state and build the map without extracting features, which achieves higher accuracy at a much lower computation load than other state-of-the-art LiDAR-inertial SLAM systems. However, they assume that the inertial sensor does not have any bias in the initial fusion phase and can compensate for the point cloud distortion of the moving LiDAR. But, once the inertial sensor has a bias, the inertial sensor cannot compensate for the point cloud distortion of the moving LiDAR, and then, inevitably causes the error state estimation. Therefore, when the state estimation is inaccurate, we cannot correct the bias and experience long-term drift and the whole SLAM system diverges. Moreover, they do not apply an effective loop closure detection module, which causes mapping distortion in a challenging environment.
Due to the centimeter-level ranging accuracy, high temporal resolution, and resistance to the multipath effect of the ultra-wideband (UWB) system [10,11], several works involve loosely coupling the position results generated from the UWB system into the LiDAR-based SLAM [12,13,14,15]. However, these works require a large number of UWB anchors as support to calibrate the bias of the system, which may lead to significant errors in position estimation in environments with poor UWB anchor distribution, thereby affecting the state estimation of the entire SLAM system.
In this paper, we propose a novel tightly-coupled ranging-LiDAR-inertial simultaneous localization and mapping framework, namely RLI-SLAM, designed to achieve high accuracy, speed, and robustness in the long-term fast-motion scenarios in sparsely or poorly anchored environments. The main contributions of this paper include the following:
  • We tightly fuse the high-accuracy UWB ranging measurements with the inertial sensor, which can effectively eliminate the initial bias and long-term drift of the inertial sensor. This allows the point cloud distortions of the fast-moving LiDAR to be effectively compensated in real-time, whether in the initial phase or the long-term processing, even with a single anchor’s ranging measurement.
  • We introduce an efficient loop closure detection module at a low computational complexity, utilizing an incremental smoothing factor graph approach. This module seamlessly integrates into our RLI-SLAM system, enabling high-precision mapping in challenging environments.
  • We conduct extensive benchmark comparisons and validate that, compared with other state-of-the-art systems, our approach is highly accurate, robust, flexible, and fast for state estimation and mapping in long-term fast-motion scenarios. Specifically, there is no limitation on the number of tightly-coupled ranging measurements, and we add an efficient loop closure detection module that can be seamlessly integrated into our RLI-SLAM system to improve accuracy. As for flexibility, even without ranging measurement, we can still use tightly-coupled LiDAR and inertial sensors to maintain the high-accuracy state estimation. Additionally, our approach has the same low computational complexity as the fast LiDAR-Inertial odometry (FAST-LIO2) [4] system, which is the fastest LiDAR-based odometry available.

2. Related Works

2.1. UWB-LiDAR-Inertial Odometry

In recent research, many researchers have attempted to incorporate UWB into LiDAR-inertial SLAM systems. For instance, in [13], a loosely coupled sensor fusion method is introduced to diminish LiDAR odometry drift by leveraging positioning data from two relatively independent systems. Conversely, tightly-coupled methods such as those discussed in [14] merge 2D LiDAR ranging with UWB measurements to mitigate cumulative errors in the LiDAR data. Although these approaches are effective, they necessitate a substantial quantity of UWB anchors to create a “coarse” map through ranging measurements that assist LiDAR in constructing a “fine” map. However, when the number of available UWB anchors is restricted, the state estimation and mapping could be inaccurate due to the excessively “coarse” map resulting from a limited number of UWB measurements. In recent research, [16] introduces a tightly-coupled sensor fusion method that utilizes factor graphs to incorporate UWB ranging into the SLAM system. This method can mitigate cumulative drift with only three anchors’ ranging values, yet its intricate computation results in a less significant enhancement of the state estimation in accuracy.

2.2. Loop-Closure Detection

In a SLAM system, the primary goal of the loop closure correction is to identify loops in the robot’s trajectory and rectify them, mitigating the odometry drift caused by noise, environmental variations, and sensor errors. As shown in [17,18,19], the local key points voting method is adopted to carry out sub-linear matching for loop closure detection. Moreover, different from the local key points method, such as multiview 2D projection (M2DP) [20], global key descriptors utilize LiDAR scan points, which are known for their resilience to noisy input. However, these methods encounter challenges during seamless integration into any LiDAR system, which constrains their applicability.

3. System Architecture

As described in Figure 1, the front-end of our RLI-SLAM system takes LiDAR point cloud data, UWB ranging measurements, and the inertial sensor data as input to estimate the prior state. After synchronizing the sensors’ data, the UWB ranging is tightly fused with the inertial sensor to prevent the initial bias and long-term drift of the inertial sensor. This allows the inertial sensor to undergo pre-integration processing and provide a prior state estimation to effectively compensate for the point cloud distortion of the fast-moving LiDAR in real-time. In the back-end, new scan points from the LiDAR are combined with the prior estimation to perform the state estimation through using an iterative error state Kalman filter (IESKF) and registered into an incremental k-d tree (ik-d tree) data structure to efficiently build a dense map. The resulting loop closure detection measurements are combined with the state estimation to provide odometry, and to update the global dense map.

4. Methodology

Our system employs inertial sensor measurements and LiDAR measurements as observations and utilizes IESKF for data fusion. To mitigate the inertial sensor’s initial bias and long-term drift, as well as to compensate for point cloud distortion caused by the high-speed LiDAR, we utilize UWB-ranging data to aid LiDAR motion compensation with minimal computational complexity. Additionally, we have integrated loop closure detection to achieve high-precision mapping in challenging environments, thereby enhancing system robustness and accuracy. Detailed explanations will be provided in the following sections.

4.1. Preliminaries

4.1.1. State Estimates

By utilizing the inertial sensor coordinate system as the body reference coordinate system and defining its initial frame as the global coordinate system, we can derive the kinematic model in the global coordinate system.
x = [ p T , v T , θ T , b α T , b ω T , g T ] T ,
where x represents the state variable that varies over time, p , v , and θ represent the inertial sensor’s displacement, velocity, and the Euler angles, respectively, b ω and b α represent the biases of the inertial sensor’s angular and acceleration, respectively, while g represents the unknown gravity vector in the kinematic model.
We denote the continuous-time accelerations and angular velocities read from the inertial sensor as α ^ and ω ^ , respectively, and express the relationship between the derivatives of the corresponding error state variables and the observations in the continuous kinematic model as
δ p ˙ = δ v , δ b ˙ α = η b α , δ b ˙ ω = η b ω , δ g = 0
δ v ˙ = R ( α ^ b α ) δ θ R δ b α η α + δ g
δ θ ˙ = ( ω ^ b ω ) δ θ δ b ω η ω ,
where ( a ) represents the skew-symmetric matrix of a vector a R 3 , R is the direction cosine matrix of θ , η α and η ω represent the white noise of the inertial sensor-measured acceleration and angular velocity, while b α and b ω represent the bias for acceleration and angular velocity, respectively, which are modeled as Gaussian noise and follow a random walk process characterized by η b α and η b ω . The discrete motion model derived from Equation (2) using the sampling period Δ t of the inertial sensor is
δ p ( t + Δ t ) = δ p ( t ) + δ v Δ t ,   δ b α ( t + Δ t ) = δ b α ( t ) + η b α
δ b ω ( t + Δ t ) = δ b ω ( t ) + η b ω ,   δ g ( t + Δ t ) = δ g ( t )
δ v ( t + Δ t ) = δ v ( t ) + ( R ( α ^ b α ) δ θ R δ b α + δ g ) Δ t η v
δ θ ( t + Δ t ) = e x p ( ( ω ^ b ω ) Δ t ) δ θ ( t ) δ b ω Δ t η θ ,
The discrete-time state of speed is derived from the time derivative part of speed in Equation (2). The rotational part can be obtained using the integral formula of angular velocity. Specifically, by treating the time derivative part of angular velocity in Equation (2) as a differential equation with respect to δ θ and solving it, we can obtain the integral related to the rotational part.

4.1.2. Synchronization

The time synchronization of sensors within the system has been adapted from the time synchronization principles documented in [10], with a focus on LiDAR and IMU. Given the relatively lower frequency of UWB, it often necessitates the interpolation and adaptation of its data using the higher frequency IMU within scanning intervals, as depicted in Figure 2.

4.2. UWB-LiDAR-Inertial Odometry

4.2.1. Motion Compensation

Our system utilizes LiDAR sensor data as observation. To effectively utilize the high frequency of the inertial sensor data, we employ the inertial sensor measurements to estimate the relative pose of each LiDAR point at the end of the scan. This compensation effectively mitigates motion offsets of the LiDAR sensor, ensuring swift and accurate observations for our system’s state propagation and enhancing the system’s robustness.
The estimated rough attitude provided by the inertial sensor allows us to project points from each sampling moment in the LiDAR scan to align with the moment when the scan concludes. As a result, all points from every LiDAR scan are considered as points at the moment when the scan concludes. The process of motion compensation for LiDAR is as follows:
P ˜ L = R L I 1 ( R I 1 ( R I G ( R L I · P L + P L I ) + Δ T I ) P L I ) ,
where P L I and R L I represent the translation and rotation of the rigidly connected LiDAR to the inertial sensor, P L refers to a series of poses of LiDAR in the laser coordinate system before motion compensation, R I G is the rotation matrix from the inertial sensor coordinate system to the global coordinate system (the coordinates of the first frame of the inertial sensor coordinate system), Δ T I is the translation from the position of the inertial sensor in the global coordinate system at the end of the scan to the current inertial sensor point position, R I 1 is the inverse of the rotation matrix from the inertial sensor output, and P ˜ L represents a series of poses of LiDAR in the LiDAR coordinate system after motion compensation and distortion correction.

4.2.2. UWB Constraint and Drift Correction

The key challenge in motion compensation within the LIO (Lidar Inertial Odometry) system lies in accurately projecting lidar points from one scan to the latest pose, which is the attitude after IMU preintegration. This challenge is closely tied to the quality of the corresponding attitudes of lidar points at different measurement times. While the state remains consistent within the IESKF system composed of IMU and LiDAR, short-term propagation should be accurate. However, both vibrations and movements of the body can cause temporary offsets in LiDAR, thereby diminishing the quality of corresponding attitudes at different measurement times and leading to subsequent sustained drift in the system. Hence, we introduce UWB ranging measurements between UWB nodes and anchors to augment and fine-tune the initial attitude estimation derived from the inertial sensor. This serves to strengthen the process of projecting lidar points from one scan to the latest pose, ultimately enhancing the accuracy and robustness of the system. It is worth noting that the world coordinate system in our system aligns with the initial keyframe’s pose. We can obtain the coordinates of the anchors in the anchor coordinate system by measuring the relative distances between the anchors and designating one of the anchors as the origin. By applying a common transformation from the UWB anchor coordinate system to the world coordinate system, we can determine the coordinates of all anchors in the world coordinate system. We represent this transformation as follows:
T U W = ( R U W , p U W ) ,
where R U W and p U W represent the rotation and transformation of the rigidly connected UWB to the world, and this transformation can be easily estimated within the state propagation of the IESKF. The measurement state of UWB at time step j can be described as:
U j i = ( a i , b , t j , d i ) , i = 1 , 2 , 3 , . . . , N ,
where i is index of the UWB anchor points, a i represents the global coordinate system coordinates of the i-th UWB anchor point, b is the offset of the UWB node relative to the body in the body coordinate system, t j is the time of this measurement state in the system, d i is the distance measurement data between the UWB node and the i-th UWB anchor point. At time step j, the distance between the node and UWB anchor point i can be described using the rough pose estimation derived from the inertial sensor:
d ( χ k , δ θ ) = p k ( R U W a i + p U W )
+ R k 1 exp ( δ θ ) e x p ( Δ t 1 Log R k exp ( δ θ ) R k 1 exp ( δ θ ) ) b
1 2 δ v Δ t 2 + η d ,
where Δ t 1 = t j t k 1 t k t k 1 , Δ t 2 = t j t k 1 , χ k represents the rough pose state estimated by the inertial sensor at time step k, δ v and δ θ is the rotational error state of the rough pose estimated by the inertial sensor in (3), p k is the rough coordinate estimated by the inertial sensor, η d is the noise. Therefore, the residual between the distance measurement value of the i-th UWB anchor point at time step k and its estimated value can be expressed as:
r U ( χ k , U k i ) = d ( χ k , δ θ ) d i .
This nonlinear optimization requires extremely low computational resources to quickly and accurately enhance the system’s precision. Furthermore, since it corrects the LiDAR motion compensation module rather than the entire system, only a small number of UWB anchor points are needed to achieve this precision improvement, as confirmed by subsequent benchmark dataset experiments.

4.2.3. Observation Model

To obtain the observation equation, it is necessary to transform the motion-compensated P ˜ L from (4) into the global coordinate system:
G P ˜ L = T L G P ˜ L + η P L ,
where T L G represents the transformation from the LiDAR coordinate system to the global coordinate system, P ˜ L denotes the noise after motion compensation, and the transformed G P L ˜ should ideally lie on a local flat plane (or edge) within the global map. To achieve this, we employ a k-d tree search to find n nearest points G P i for plane fitting. These points are fitted into a plane, and we assume G P i to be the true position of G P L ˜ in the global map. Thus, we can construct the residual:  
r L ( χ k , G P L ˜ ) = u T ( G P L ˜ G P i ) ,
where u represents the normal vector of the fitted plane.
Multiple LiDAR data obtained through motion compensation can be iteratively incorporated into our system to obtain the solution and propagate the state.

4.3. Loop Closure Detection

We aim to utilize backend loop closure detection to correct the robot’s state and its trajectory. The state estimation problem can be formulated as a Maximum A Posteriori (MAP) problem. We employ factor graphs to model this problem, as they are more suitable for inference compared to Bayesian networks. To construct the factor graph, we introduce two types of factors and one variable type. The variable represents the state of the robot at a specific time and is attributed to nodes in the graph. The two types of factors are odometry factors and loop closure factors. When the change in the robot’s pose exceeds a user-defined threshold, a new robot state node x is added to the graph. Utilizing incremental smoothing and mapping (iSAM2), the factor graph is optimized upon the insertion of new nodes (depicted in Figure 3). Consequently, our proposed loop closure detection module can seamlessly integrate into any odometry system. The following sections describe the process of generating these factors.

4.3.1. Odometry Factor

The computational challenge of calculating and adding factors to the graph for every odometry frame is significant. To address this, we employ the concept of keyframe selection, a strategy widely used in the field of visual Simultaneous Localization and Mapping (SLAM). We use a straightforward yet effective heuristic approach, selecting the odometry frame L i as a keyframe when the change in the robot’s pose surpasses a user-defined threshold relative to the previous state x i . The newly stored keyframe L i + 1 is then linked with the new robot state node x i + 1 in the factor graph. Any odometry frames that occur between two keyframes are disregarded. This method of adding keyframes not only strikes a balance between map density and memory usage but also helps to maintain a relatively sparse factor graph, which is conducive to real-time nonlinear optimization. In our research, we have set the thresholds for selecting position and rotation changes for the addition of new keyframes at 1 m and 10 degrees, respectively.
Suppose we wish to add a new state node x i + 1 to the factor graph. The odometry keyframe associated with this state is L i + 1 . To reduce computational complexity, we only input the pose transformation information from the frontend’s keyframe into the node x i + 1 . This yields the relative transformation Δ T i , i + 1 between x i and x i + 1 , i.e., the odometry factor connecting these two pose states:
Δ T i , i + 1 = T i T T i + 1 + δ ,
where T i S E ( 3 ) represents the i-th pose transformation in the world coordinate system, and δ denotes the noise term following a Gaussian distribution.

4.3.2. Loop Closure Factor

Due to the utilization of factor graphs, unlike other laser-based loop closure detections, the closures designed by us can seamlessly integrate into the odometer systems of nearly all the laser scanners. For illustrative purposes, we devised and implemented a straightforward yet effective joint loop closure detection method based on Euclidean distance and the generation of point cloud descriptors refer to Algorithm 1, specifically utilizing the Scan Context descriptor (SCD) [21].
The Euclidean distance-based method does not transform the keyframes from the laser scanner into descriptors as mentioned above. Instead, each newly added keyframe is inserted into a k-d tree. By setting a predefined search radius and time interval, the method searches for the indices of neighboring points within the k-d tree, thus obtaining a set of neighboring points within the radius. This initial estimation is rough and requires subsequent refinement for higher precision localization, such as using the Iterative Closest Point (ICP) algorithm, as summarized in Algorithm 2.
Algorithm 1:  Loop Closure Detection Based on Point Cloud Descriptors
    Input I D c u r : The index of the current keyframe
                L: The set of loop closure frame indices
                d: Loop closure search radius
                T: Loop closure search time difference threshold
Sensors 24 05672 i001
Algorithm 2:  Loop Closure Validity Check
    Input: Index of the current keyframe I D c u r
                Index of the loop closure keyframe I D p r e
                Loop detection similarity threshold S
Sensors 24 05672 i002
    It is noteworthy that in previous k-d tree-based proximity search systems, complete maps or submaps were used for search and matching [5]. In our system, however, lidar scans are employed as matching objects, corresponding to the observed objects in lidar-based state estimation. This approach not only maintains accuracy but also significantly improves matching speed. Although the Euclidean distance-based method is straightforward and effective, it may degrade when dealing with high-dimensional data, uneven data distribution, or significant outliers. Therefore, our system additionally incorporates a point cloud descriptor-based method refer to Algorithm 3). This method describes keyframe point clouds using an innovative spatial descriptor known as the SCD. The process begins by partitioning the raw measurements and using a bird’s-eye view (BEV) to project them into discrete cells. The proximity between two locations is then defined by the similarity score of the corresponding SCDs. If two SCDs are obtained from the same location, the descriptors should contain consistent content within a matrix, although there may be differences in column order.
Algorithm 3:  Loop Closure Detection Based on SCD
    Input:  Index of the current keyframe I D c u r
                 The set of loop closure frame indices L
                 Loop closure search radius d
                 Loop closure search time difference threshold T
Sensors 24 05672 i003
To measure similarity, we use cosine similarity between the two descriptors, which is particularly effective for dynamic objects or in the presence of partial noise. The cosine distance is used to calculate the distance between two column vectors l c j and l p j in the same column. The distance between the two descriptors is as follows:
d ( f p , f c ) = 1 N A j = 1 N A ( 1 l c j · l p j l c j · l p j )
where the subscripts c and p denote the current and past positions, where the descriptor has dimensions f R N R × N A , with N A representing the number of columns and N R representing the number of rows.
Combining these two loop detection methods allows for swift and adaptable correction of system drift in long-distance scenarios while utilizing minimal computational resources. This ultimately enhances system accuracy and robustness.

5. Experiments and Result

5.1. Benchmark Dataset

The dataset we utilize, known as M2DGR [22], was collected within the campus of SJTU and comprises multiple sequences recorded by a ground robot vehicle. This dataset features a Velodyne VLP-32C LiDAR sensor with a frequency of 10 Hz and a Handsfree A9 nine-axis inertial sensor with a frequency of 150 Hz. It encompasses various scenes within the campus environment, including structural buildings, lawns, lakes, and so forth. The second dataset is sourced from NTU’s campus, referred to as NTU VIRAL [23], collected using the Ouster OS1-16 first-generation LiDAR sensor at a scanning rate of 10 Hz. Gyroscope and accelerometer measurements are sampled at 385 Hz using a six-axis VN100 IMU. Data were recorded within the university campus, encompassing both indoor and outdoor locations, with sensor data captured by drones.

5.1.1. UWB Anchors Configuration

Due to the lack of standardized UWB ranging datasets, in M2DGR, we simulated UWB ranging information by adding Gaussian noise with a mean of zero and a standard deviation of 5cm to the ground truth ranging data [24,25]. In our subsequent real-world experiments, the UWB noise is also modeled as Gaussian noise with a mean of zero and a standard deviation of 5 cm. For calculating the coordinates of anchors in the anchor coordinate system, as shown in Figure 4, it only requires setting one anchor as the origin and another anchor on the y-axis. The coordinates of the third anchor in the anchor coordinate system can be calculated based on the relative distances between the three anchors. This design allows for the straightforward calculation of anchor coordinates within the anchor coordinate system. By using the IESKF to estimate the transformation from the world coordinate system to the anchor coordinate system, the coordinates of the anchors in the world coordinate system can be accurately and easily determined.

5.1.2. Accuracy Evaluation

In this section, we compare our system, RLI-SLAM, with other state-of-the-art LiDAR-based inertial odometry and mapping systems, including adaptive LiDAR odometry and mapping (A-LOAM) [3], LiDAR inertial odometry via smoothing and mapping (LIO-SAM) [5], and FAST-LIO2 [4]. In the M2DGR dataset, sequences hall_01 and hall_02 were obtained indoors by ground robots, while door_01 and door_02 depict transitions from indoor to outdoor environments, and street_08 was collected during outdoor navigation. The ATE in the table clearly demonstrates our system’s consistent superiority in accuracy.
For comprehensive experimentation, we included large-scale scene experiments, involving three sequences with long-distance trajectories, namely street_01, street_02, and street_04, as shown in Figure 5.
The data reveal significant drift in the street_01 sequence for LIO-SAM, attributable to back-end factor graph optimization difficulties when handling prolonged and extensive data. Likewise, due to motion compensation drift in FAST-LIO2’s LiDAR, errors in residual estimation between planes and points lead to substantial distortion. In street_04, A-LOAM and FAST-LIO2, which lack loop closure detection modules, both exhibit poor accuracy due to cumulative drift over extended durations. The distorted global map generated by FAST-LIO2 is shown in Figure 6a, while the global map after correction by our system is depicted in Figure 6b. Although LIO-SAM showcases superior accuracy among the three methods for comparison, our system, leveraging both ranging and loop closure constraints concurrently, achieves the highest level of accuracy.
We conducted an assessment of UWB anchor point fusion quantities in RLI-SLAM, and examined how varying the number of fused UWB anchor points affects estimation drift in our system. We limited the number of fused ranging data to 1, 2, and 3 UWB anchor points. Additionally, an evaluation was conducted where the number of UWB anchor points received by the robot for ranging data was randomized between 0 and 3 to simulate real-world scenarios. Table 1 demonstrates that an increase in the number of fused UWB anchor points leads to a gradual improvement in overall accuracy. The result in the table shows that our system maintains high accuracy even with fewer UWB anchor points or randomly selected combinations.
We also conducted ablation experiments for loop closure detection. According to the data, it can be observed that in indoor environments such as hall_01 and hall_02, where there are short-range, irregular movements in a confined space, loop closure detection introduces a certain negative impact on the overall system performance. However, in other scenes, particularly in longer trajectories such as street_01, street_02, and street_04, the removal of loop closure detection significantly affects the accuracy of our system.
In the experiments conducted on the NTU VIRAL dataset, we utilized three UWB anchors from the dataset as constraints, as shown in Table 2. The data are derived from the results presented in the VIRAL-Fusion [26] paper. VIRAL-Fusion employs two LiDARs, one camera, and three UWB anchors as constraints. As can be seen in Table 2, our method demonstrates higher accuracy performance. Additionally, our loop closure detection module further enhances the accuracy. Since VIRAL-Fusion is not open-source, we used FAST-LIO for comparison, as illustrated in Figure 7, it can be observed that our algorithm effectively suppresses drift compared to FAST-LIO2, significantly improving the overall pose accuracy.

5.1.3. Processing Time Evaluation

To evaluate the computational efficiency of our system’s range constraint and loop detection components, we conducted module-specific timing experiments on a PC equipped with an Intel CPU E3-1275 v5.
Table 3 details the time consumption breakdown for scan processing. The data reveal that the UWB optimization section and the loop detection section each require 0.21 ms and 1.71 ms, respectively, constituting a small fraction of the total time. This suggests that these two computations minimally affect the overall computation time, highlighting our system’s high computational efficiency in these areas. Our system maintains a high computational efficiency for real-time localization and map building as a whole.

5.2. Real World Test

5.2.1. Experimental Environment

As shown in Figure 8, the unmanned vehicle used in our experiment is equipped with a six-axis IMU operating at 200Hz and a 16-line Velodyne LiDAR operating at 20 Hz. Additionally, we utilized a UWB module with a ranging accuracy of 5cm and a maximum effective range of 100 m. The experiment was conducted on the second floor of the research building at BUPT. The space, characterized by a variety of textures and long corridor shapes, presented a challenging environment for LIO.

5.2.2. Experimental Analysis

To avoid the influence of loop closure detection on the experiment, we only utilized our UWB calibration module in the real-world test, without activating the loop closure detection function. Additionally, to simplify the optimization of anchor coordinates transformation and further verify the robustness of our system to the number of anchors, only one anchor point was employed as the constraint for LiDAR motion compensation throughout the entire experimental process.
From Figure 9 and Figure 10, it can be observed that FAST-LIO2 exhibits significant map distortion, whereas our system, calibrated solely by a single UWB anchor point, effectively corrected LiDAR motion drift in a timely manner, resulting in overall better performance.
To complement our experiments, we conducted a series of experiments in the underground parking environment as Figure 11. It was observed that while significant drift did not occur without UWB, the narrow and elongated layout caused by vehicles in the parking environment resulted in many minor drifts and overlaps in the map. Our method demonstrated greater robustness and accuracy in comparison.

6. Conclusions

In this paper, we introduce RLI-SLAM, a novel tightly-coupled ranging-LiDAR-inertial SLAM framework. By tightly fusing high-accuracy UWB ranging measurements with inertial sensor data, our framework effectively mitigates the distortion caused by fast-moving LiDAR, even with a single ranging measurement. We incorporate an efficient loop closure detection module using an incremental smoothing factor graph approach, ensuring high-precision mapping in challenging environments. Benchmark comparisons demonstrate the superior accuracy of our framework over state-of-the-art systems at low computational complexity. Our real-world experiments further validate the effectiveness of our system.
Future work will focus on designing signal waveforms to achieve high-accuracy ranging and robust communication, paving the way for a joint communication, localization, and mapping system.

Author Contributions

Conceptualization, R.X. and N.G.; methodology, R.X.; software, R.X.; validation, R.X., N.G. and X.M.; formal analysis, G.L.; investigation, G.L.; resources, Z.F.; data curation, X.M.; writing—original draft preparation, R.X.; writing—review and editing, R.X.; visualization, R.X.; supervision, N.G.; project administration, Z.F.; funding acquisition, Z.F. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the National Narutal Science Foundation of China under Grant 62103226.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Data are contained within the article.

Acknowledgments

The authors would like to thank Beijing University of Posts and Telecommunications for their assistance in providing the testing site.

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Cadena, C.; Carlone, L.; Carrillo, H.; Latif, Y.; Scaramuzza, D.; Neira, J.; Reid, I.; Leonard, J.J. Past, Present, and Future of Simultaneous Localization and Mapping: Toward the Robust-Perception Age. IEEE Trans. Robot. 2016, 32, 1309–1332. [Google Scholar] [CrossRef]
  2. Shan, T.; Englot, B. LeGO-LOAM: Lightweight and Ground-Optimized Lidar Odometry and Mapping on Variable Terrain. In Proceedings of the 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Madrid, Spain, 1–5 October 2018; pp. 4758–4765. [Google Scholar] [CrossRef]
  3. Zhang, J.; Singh, S. Visual-lidar odometry and mapping: Low-drift, robust, and fast. In Proceedings of the 2015 IEEE International Conference on Robotics and Automation (ICRA), Seattle, WA, USA, 26–30 May 2015; pp. 2174–2181. [Google Scholar]
  4. Xu, W.; Cai, Y.; He, D.; Lin, J.; Zhang, F. FAST-LIO2: Fast Direct LiDAR-Inertial Odometry. IEEE Trans. Robot. 2022, 38, 2053–2073. [Google Scholar] [CrossRef]
  5. Shan, T.; Englot, B.; Meyers, D.; Wang, W.; Ratti, C.; Rus, D. LIO-SAM: Tightly-coupled Lidar Inertial Odometry via Smoothing and Mapping. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Las Vegas, NV, USA, 24–30 October 2020; pp. 5135–5142. [Google Scholar] [CrossRef]
  6. Liu, S.; Watterson, M.; Mohta, K.; Sun, K.; Bhattacharya, S.; Taylor, C.J.; Kumar, V. Planning Dynamically Feasible Trajectories for Quadrotors Using Safe Flight Corridors in 3-D Complex Environments. IEEE Robot. Autom. Lett. 2017, 2, 1688–1695. [Google Scholar] [CrossRef]
  7. Zhang, J.; Singh, S. LOAM: Lidar odometry and mapping in real-time. In Proceedings of the Robotics: Science and Systems, Berkeley, CA, USA, 12–16 July 2014; Volume 2, pp. 1–9. [Google Scholar]
  8. Martínez, C.; Campoy, P.; Mondragón, I.; Olivares-Méndez, M.A. Trinocular ground system to control UAVs. In Proceedings of the 2009 IEEE/RSJ International Conference on Intelligent Robots and Systems, St. Louis, MO, USA, 10–15 October 2009; pp. 3361–3367. [Google Scholar] [CrossRef]
  9. Mueller, M.W.; Hamer, M.; D’Andrea, R. Fusing ultra-wideband range measurements with accelerometers and rate gyroscopes for quadrocopter state estimation. In Proceedings of the 2015 IEEE International Conference on Robotics and Automation (ICRA), Seattle, WA, USA, 26–30 May 2015; pp. 1730–1736. [Google Scholar] [CrossRef]
  10. Shi, Q.; Zhao, S.; Cui, X.; Lu, M.; Jia, M. Anchor self-localization algorithm based on UWB ranging and inertial measurements. Tsinghua Sci. Technol. 2019, 24, 728–737. [Google Scholar] [CrossRef]
  11. Zhao, S.; Zhang, X.P.; Cui, X.; Lu, M. A new TOA localization and synchronization system with virtually synchronized periodic asymmetric ranging network. IEEE Internet Things J. 2021, 8, 9030–9044. [Google Scholar] [CrossRef]
  12. Zhen, W.; Scherer, S. Estimating the localizability in tunnel-like en-vironments using LIDAR and UWB. In Proceedings of the 2019 International Conference on Robotics and Automation (ICRA), Montreal, QC, Canada, 20–24 May 2019; pp. 4903–4908. [Google Scholar]
  13. Li, K.; Wang, C.; Huang, S.; Liang, G.; Wu, X.; Liao, Y. Self-positioning for UAV indoor navigation based on 3D laser scanner, UWB and INS. In Proceedings of the 2016 IEEE International Conference on Information and Automation (ICIA), Ningbo, China, 1–3 August 2016; pp. 498–503. [Google Scholar] [CrossRef]
  14. Zhou, H.; Yao, Z.; Zhang, Z.; Liu, P.; Lu, M. An Online Multi-Robot SLAM System Based on Lidar/UWB Fusion. IEEE Sens. J. 2022, 22, 2530–2542. [Google Scholar] [CrossRef]
  15. Ye, H.; Chen, Y.; Liu, M. Tightly coupled 3D LiDAR inertial odometry and mapping. In Proceedings of the 2019 International Conference on Robotics and Automation (ICRA), Montreal, QC, Canada, 20–24 May 2019; pp. 3144–3150. [Google Scholar]
  16. Nguyen, T.-M.; Cao, M.; Yuan, S.; Lyu, Y.; Nguyen, T.H.; Xie, L. LIRO: Tightly Coupled Lidar-Inertia-Ranging Odometry. In Proceedings of the 2021 IEEE International Conference on Robotics and Automation (ICRA), Xi’an, China, 30 May–5 June 2021; pp. 14484–14490. [Google Scholar] [CrossRef]
  17. Steder, B.; Grisetti, G.; Burgard, W. Robust place recognition for 3D range data based on point features. In Proceedings of the 2010 IEEE International Conference on Robotics and Automation, Anchorage, AK, USA, 3–8 May 2010; pp. 1400–1405. [Google Scholar] [CrossRef]
  18. Rusu, R.B.; Bradski, G.; Thibaux, R.; Hsu, J. Fast 3D recognition and pose using the Viewpoint Feature Histogram. In Proceedings of the 2010 IEEE/RSJ International Conference on Intelligent Robots and Systems, Taipei, Taiwan, 18–22 October 2010; pp. 2155–2162. [Google Scholar] [CrossRef]
  19. Bosse, M.; Zlot, R. Place recognition using keypoint voting in large 3D lidar datasets. In Proceedings of the 2013 IEEE International Conference on Robotics and Automation, Karlsruhe, Germany, 6–10 May 2013; pp. 2677–2684. [Google Scholar] [CrossRef]
  20. He, L.; Wang, X.; Zhang, H. M2DP: A novel 3D point cloud descriptor and its application in loop closure detection. In Proceedings of the 2016 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Daejeon, Republica of Korea, 9–14 October 2016; pp. 231–237. [Google Scholar] [CrossRef]
  21. Kim, G.; Kim, A. Scan Context: Egocentric Spatial Descriptor for Place Recognition Within 3D Point Cloud Map. In Proceedings of the 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Madrid, Spain, 1–5 October 2018; pp. 4802–4809. [Google Scholar] [CrossRef]
  22. Yin, J.; Li, A.; Li, T.; Yu, W.; Zou, D. M2DGR: A Multi-Sensor and Multi-Scenario SLAM Dataset for Ground Robots. IEEE Robot. Autom. Lett. 2022, 7, 2266–2273. [Google Scholar] [CrossRef]
  23. Nguyen, T.-M.; Yuan, S.; Cao, M.; Lyu, Y.; Xie, L. NTU VIRAL: A visual-inertial-ranging-lidar dataset, from an aerial vehicle viewpoint. Int. J. Robot. Res. 2022, 41, 270–280. [Google Scholar] [CrossRef]
  24. Malajner, M.; Planinšič, P.; Gleich, D. UWB ranging accuracy. In Proceedings of the 2015 International Conference on Systems, Signals and Image Processing (IWSSIP), London, UK, 10–12 September 2015; pp. 61–64. [Google Scholar] [CrossRef]
  25. Henry, J. Ranging and Positioning with UWB; UWB Technology—New Insights and Developments; IntechOpen: London, UK, 2023. [Google Scholar] [CrossRef]
  26. Nguyen, T.-M.; Cao, M.; Yuan, S.; Lyu, Y.; Nguyen, T.H.; Xie, L. VIRAL-Fusion: A Visual-Inertial-Ranging-Lidar Sensor Fusion Approach. IEEE Trans. Robot. 2022, 38, 958–977. [Google Scholar] [CrossRef]
Figure 1. System overview.
Figure 1. System overview.
Sensors 24 05672 g001
Figure 2. Synchronization among the sensors.
Figure 2. Synchronization among the sensors.
Sensors 24 05672 g002
Figure 3. Loop detection module factor graph.
Figure 3. Loop detection module factor graph.
Sensors 24 05672 g003
Figure 4. Anchor Coordinate Configuration.
Figure 4. Anchor Coordinate Configuration.
Sensors 24 05672 g004
Figure 5. Trajectories of large-scale scene sequences on the map; with red representing the street_01 sequence, green representing the street_02 sequence, and yellow representing the street_04 sequence.
Figure 5. Trajectories of large-scale scene sequences on the map; with red representing the street_01 sequence, green representing the street_02 sequence, and yellow representing the street_04 sequence.
Sensors 24 05672 g005
Figure 6. In the street_04 sequence, (a,c) represent the global map constructed by FAST-LIO2 and the local map of its distorted portion, (b,d) depict the global map constructed by our proposed system and the corrected local map.
Figure 6. In the street_04 sequence, (a,c) represent the global map constructed by FAST-LIO2 and the local map of its distorted portion, (b,d) depict the global map constructed by our proposed system and the corrected local map.
Sensors 24 05672 g006
Figure 7. The result data from the sbs_01 Sequence: (a) represents FAST-LIO2, (b) represents RIL-SLAM. From top to bottom, the figures are the trajectory plot, the individual error plots in the x, y, and z directions, and the combined error plot for x, y, and z.
Figure 7. The result data from the sbs_01 Sequence: (a) represents FAST-LIO2, (b) represents RIL-SLAM. From top to bottom, the figures are the trajectory plot, the individual error plots in the x, y, and z directions, and the combined error plot for x, y, and z.
Sensors 24 05672 g007
Figure 8. (a) Unmanned Vehicle Used in Experiment, (b) UWB Ranging Module, (c) Second Floor of BUPT Research Building with UWB Module Circled in Red.
Figure 8. (a) Unmanned Vehicle Used in Experiment, (b) UWB Ranging Module, (c) Second Floor of BUPT Research Building with UWB Module Circled in Red.
Sensors 24 05672 g008
Figure 9. (a) Map constructed by FAST-LIO2 (b) Map constructed by RLI-SLAM (c) Trajectory plots of both methods.
Figure 9. (a) Map constructed by FAST-LIO2 (b) Map constructed by RLI-SLAM (c) Trajectory plots of both methods.
Sensors 24 05672 g009
Figure 10. XYZ Components of Trajectory Estimation for FAST-LIO2 and RIL-SLAM.The red framed section indicates the part of the drift in FAST-LIO2.
Figure 10. XYZ Components of Trajectory Estimation for FAST-LIO2 and RIL-SLAM.The red framed section indicates the part of the drift in FAST-LIO2.
Sensors 24 05672 g010
Figure 11. Experimental results from the basement.The (a) shows Fast-lio2, and the (b) shows our results.
Figure 11. Experimental results from the basement.The (a) shows Fast-lio2, and the (b) shows our results.
Sensors 24 05672 g011
Table 1. The absolute trajectory error (ATE, meters) for each sequence, where bold represents the optimal result.
Table 1. The absolute trajectory error (ATE, meters) for each sequence, where bold represents the optimal result.
A-LOAMLIO-SAMFAST-LIO2RLI-SLAM
(3 anc)
RLI-SLAM
(2 anc)
RLI-SLAM
(1 anc)
RLI-SLAM
(rand)
RLI-SLAM
(0 anc)
RLI-SLAM
(3 anc w/o LCD)
RLI-SLAM
(2 anc w/o LCD)
RLI-SLAM
(1 anc w/o LCD)
RLI-SLAM
(rand w/o LCD)
hall_010.2040.2050.2190.1070.1620.1720.1540.1720.0920.1610.1700.153
hall_020.2710.3690.5050.1320.3540.3780.3980.4210.1240.3470.3520.312
door_010.2660.2320.3990.1890.2730.2940.2580.3120.2570.2970.3030.293
door_020.2200.1770.3110.1380.2730.2820.1920.2910.1750.3200.3910.298
gata_010.5660.1840.1640.1160.1350.1450.2580.3120.2570.2970.3030.293
gata_020.4200.4940.2760.2740.2790.2810.2920.2910.2850.2980.2760.278
gata_030.1700.1010.2010.0980.1130.1280.1390.1210.1150.1200.1910.198
street_016.35535.790281.4302.8053.4033.22311.72112.3914.7507.37910.1278.912
street_022.6253.0452.2401.5492.8553.2914.4684.8212.0003.1983.2152.986
street_043.1530.8226.0870.1850.3030.2700.3540.7910.2610.3110.3910.397
street_083.1850.5960.5010.1780.3490.3880.3020.3230.2870.4410.5390.571
Note: “anc” stands for the number of UWB anchor points, “rand” indicates a random number of UWB anchor points, and “LCD” indicates loop closure detection.
Table 2. The absolute trajectory error (ATE, meters) for each sequence, where bold represents the optimal result.
Table 2. The absolute trajectory error (ATE, meters) for each sequence, where bold represents the optimal result.
A-LOAMLIO-SAMFAST-LIO2VIRAL-FusionRLI-SLAMRLI-SLAM (w/o LCD)
eee_010.2120.0750.1310.0600.0540.063
eee_020.1990.0690.1240.0580.0470.054
eee_030.1480.1010.1630.0370.0690.082
nya_010.0770.0760.1220.0510.0460.055
nya_020.0910.0900.1420.0430.0580.082
nya_030.0800.1370.1440.0520.0460.052
sbs_010.2030.0890.1420.0480.0470.058
sbs_020.0910.0830.1400.0620.0490.056
sbs_030.3630.0540.1330.0540.0480.056
Note: “LCD” indicates loop closure detection.
Table 3. Breakdown of processing time.
Table 3. Breakdown of processing time.
ModuleTime (ms)
The Inertial Sensor Preprocessing2.62
UWB Optimization0.21
Point Cloud Feature Processing6.93
State Optimization Estimation28.72
Building Point Cloud Maps1.38
Loop Detection1.71
Total Time41.57
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Xin, R.; Guo, N.; Ma, X.; Liu, G.; Feng, Z. RLI-SLAM: Fast Robust Ranging-LiDAR-Inertial Tightly-Coupled Localization and Mapping. Sensors 2024, 24, 5672. https://doi.org/10.3390/s24175672

AMA Style

Xin R, Guo N, Ma X, Liu G, Feng Z. RLI-SLAM: Fast Robust Ranging-LiDAR-Inertial Tightly-Coupled Localization and Mapping. Sensors. 2024; 24(17):5672. https://doi.org/10.3390/s24175672

Chicago/Turabian Style

Xin, Rui, Ningyan Guo, Xingyu Ma, Gang Liu, and Zhiyong Feng. 2024. "RLI-SLAM: Fast Robust Ranging-LiDAR-Inertial Tightly-Coupled Localization and Mapping" Sensors 24, no. 17: 5672. https://doi.org/10.3390/s24175672

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Article metric data becomes available approximately 24 hours after publication online.
Back to TopTop