Hostname: page-component-74656f9884-rdgjk Total loading time: 0 Render date: 2026-11-07T00:28:20.888Z Has data issue: false hasContentIssue false

A 2D-LiDAR-based localization method for indoor mobile robots using correlative scan matching

Published online by Cambridge University Press:  04 December 2024

Song Du
Affiliation:
State Key Laboratory of Fluid Power and Mechatronic Systems, School of Mechanical Engineering, Zhejiang University, Hangzhou, China Key Laboratory of Advanced Manufacturing Technology of Zhejiang Province, School of Mechanical Engineering, Zhejiang University, Hangzhou, China
Tao Chen
Affiliation:
State Key Laboratory of Fluid Power and Mechatronic Systems, School of Mechanical Engineering, Zhejiang University, Hangzhou, China Key Laboratory of Advanced Manufacturing Technology of Zhejiang Province, School of Mechanical Engineering, Zhejiang University, Hangzhou, China
Zhonghui Lou
Affiliation:
State Key Laboratory of Fluid Power and Mechatronic Systems, School of Mechanical Engineering, Zhejiang University, Hangzhou, China Key Laboratory of Advanced Manufacturing Technology of Zhejiang Province, School of Mechanical Engineering, Zhejiang University, Hangzhou, China
Yijie Wu*
Affiliation:
State Key Laboratory of Fluid Power and Mechatronic Systems, School of Mechanical Engineering, Zhejiang University, Hangzhou, China Key Laboratory of Advanced Manufacturing Technology of Zhejiang Province, School of Mechanical Engineering, Zhejiang University, Hangzhou, China
*
Corresponding author: Yijie Wu; Email: wyj1116@zju.edu.cn
Rights & Permissions [Opens in a new window]

Abstract

Precise pose estimation is crucial to various robots. In this paper, we present a localization method using correlative scan matching (CSM) technique for indoor mobile robots equipped with 2D-LiDAR to provide precise and fast pose estimation based on the common occupancy map. A pose tracking module and a global localization module are included in our method. On the one hand, the pose tracking module corrects accumulated odometry errors by CSM in the classical Bayesian filtering framework. A low-pass filter associating the predictive pose from odometer with the corrected pose by CSM is applied to improve precision and smoothness of the pose tracking module. On the other hand, our localization method can autonomously detect localization failures with several designed trigger criteria. Once a localization failure occurs, the global localization module can recover correct robot pose quickly by leveraging branch-and-bound method that can minimize the volume of CSM-evaluated candidates. Our localization method has been validated extensively in simulated, public dataset-based, and real environments. The experimental results reveal that the proposed method achieves high-precision, real-time pose estimation, and quick pose retrieve and outperforms other compared methods.

Information

Type
Research Article
Copyright
© The Author(s), 2024. Published by Cambridge University Press
Figure 0

Figure 1. Block diagram of our localization method. The dotted arrow indicates that global localization is only triggered when necessary.

Figure 1

Figure 2. Probability distribution of CSM candidates for a certain θ.

Figure 2

Figure 3. Although both the shortest distances of the LiDAR point to obstacle are d when the LiDAR locates at candidate pose x1 and x2, likelihood fields model over the visible space assumes that p(zj | x1, m) represents higher probability than p(zj | x2, m).

Figure 3

Figure 4. (a) Occupancy map of a corridor. (b) Likelihood fields model over the visible space of (a). Brighter value indicates larger probability. (c) A raw LiDAR scan (red). (d) The LiDAR scan after outliers removing (yellow).

Figure 4

Figure 5. Fusion of xm and its neighbor candidates.

Figure 5

Figure 6. (a)–(d): Precomputed grids corresponding to height of 0, 2, 4, 6 respectively. Brighter value indicates larger probability.

Figure 6

Table 1. Parameters for coarse-to-fine scheme.

Figure 7

Figure 7. There is a large area of unknown regions (gray) in the occupancy map. The red squares represent subregions covered by nodes at a certain height.

Figure 8

Figure 8. (a) The raw LiDAR scan (red) when the robot encounters a localization failure. (b) The remaining LiDAR points (yellow) after outliers removing. The measurement probability p(zt | xm, m) is 0.6368 that is greater than csm_lowest_score. So just relying on p(zt | xm, m) is not enough to trigger global localization in time. Nevertheless, the removal ratio Rp is 0.66 which is greater than csm_highest_ourliers_remove_ratio. Therefore, global localization will be triggered providing Rp is considered. (c) Two people are examining data beside the robot and block a large portion of LiDAR scan. (d) The raw LiDAR scan (red) in (c) scenario. (e) The remaining LiDAR points (yellow) after outliers removing. Although the robot has been properly located, global localization is still triggered due to a Rp of 0.79.

Figure 9

Figure 9. (a) Localization failure results in a large Rp, and a small overlap_ratio is obtained that will trigger global localization. (b) The robot has been properly located and dynamic obstacles result in a large Rp. However, there is a large overlap_ratio so that global localization will not be triggered.

Figure 10

Table 2. Key parameters for the compared methods.

Figure 11

Table 3. Localization errors in simulation experiments.

Figure 12

Figure 10. (a) The factory workshop created in Gazebo. (b) The robot movement path in original factory workshop whose total length is about 392 m. The blue star and black star represent start point and end point, respectively. (c) The changed factory workshop and the red circles highlight some changes. (d) The robot’s movement path in changed environment whose total length is about 367 m.

Figure 13

Table 4. Runtime comparison in simulation experiments (ms).

Figure 14

Figure 11. Ten arbitrary positions (1-10) in (a) original environment and (b) changed environment. Position 0 represents map origin. (c) LiDAR scan (red) at position 1 in original environment is mapped to the occupancy map by mistake before global localization. (d) Correct pose of position 1 has been recovered successfully by the proposed global localization method.

Figure 15

Table 5. Global localization errors in simulation experiments (m, m, deg).

Figure 16

Table 6. Time spent on global localization with the proposed method in simulation experiments (s).

Figure 17

Figure 12. (a) The Intel Research Lab. (b) The ACES Building. For each dataset, the red line represents movement path of the mobile robot. Total distance the mobile robot has traveled is about 656 m in the Intel Research Lab and 331 m in the ACES Building.

Figure 18

Table 7. Localization errors in experiments on public datasets.

Figure 19

Table 8. Runtime comparison in experiments on public datasets (ms).

Figure 20

Table 9. Time spent on global localization with the proposed method in experiments on public datasets (s).

Figure 21

Figure 13. Ten arbitrary positions (1-10) in (a) the Intel Research Lab and (b) The ACES Building. Position 0 represents map origin.

Figure 22

Figure 14. (a) The mobile robot we used in the experiments. (b) The red cross from laser pointer aligns with the green cross landmark on the floor indicating that the robot has reached this target position. Occupancy maps generated in (c)-(d) a sitting room, (e)-(f) a long corridor, and (g)-(h) a workshop. For each scenario, the red line represents movement path of the mobile robot. Position 0-3 stands for four target positions. Total distance the mobile robot has traveled is about 264 m in the sitting room, 1175m in the corridor, and 650 m in the workshop.

Figure 23

Figure 15. localization results of the proposed method at four target positions in the sitting room.

Figure 24

Table 10. Repeated localization precision in real experiments.

Figure 25

Table 11. Runtime comparison in real experiments (ms).

Figure 26

Figure 16. Trajectories in (a) the sitting room, (b) the long corridor, and (c) the workshop.

Figure 27

Figure 17. Four arbitrary positions before and after global localization with our method in A1-A8 the sitting room, B1-B8 the corridor, and C1-C8 the workshop.

Figure 28

Table 12. Time spent on global localization in real environments (s).

Figure 29

Figure 18. Time spent on global localization in each scenario using different max heights hm.

Figure 30

Table 13. Evaluated node number at each height using different max heights at position 10 in original simulation factory.

Figure 31

Algorithm 1. Precompute likelihood fields model over the visible space

Figure 32

Algorithm 2. Computing 2D slices method for CSM acceleration

Figure 33

Fig. C. Generating process of the precomputed grid based on likelihood_fields. Assume h = 2, each node at this height combines up to 22 × 22 candidates. A sliding window (red squares) covering a subregion of 22 × 22 grids slides on likelihood_fields along X and Y direction in sequence to obtain the maxima in each subregion as the corresponding grid value in $M^{2}_{precomp}$. Note that size of $M^{2}_{precomp}$ is 22 – 1 grids larger than likelihood_fields in both X and Y dimensions.

Figure 34

Algorithm 3. Detect localization failure