CAE-RLSM: Consistent and Efficient Redundant Line Segment Merging for Online Feature Map Building

01/07/2019 ∙ by Jian Wen, et al. ∙ Nankai University 0

In order to obtain a compact line segment-based map representation for localization and planning of mobile robots, it is necessary to merge redundant line segments which physically represent the same part of the environment in different scans. In this paper, a consistent and efficient redundant line segment merging approach (CAE-RLSM) is proposed for online feature map building. The proposed CAE-RLSM is composed of two newly proposed modules: one-to-many incremental line segment merging (OTM-ILSM) and multi-processing global map adjustment (MP-GMA). Different from state-of-the-art offline merging approaches, the proposed CAE-RLSM can achieve real-time mapping performance, which not only reduces the redundancy of incremental merging with high efficiency, but also solves the problem of global map adjustment after loop closing to guarantee global consistency. Furthermore, a new correlation-based evaluation metric is proposed for the quality evaluation of line segment maps. This evaluation metric does not require manual measurement of the environmental metric information, instead it makes full use of globally consistent laser scans obtained by simultaneous localization and mapping (SLAM) systems to compare the performance of different line segment-based mapping approaches in an objective and fair manner. Comparative experimental results with respect to a mean shift-based offline redundant line segment merging approach (MS-RLSM) and an offline version of one-to-one incremental line segment merging approach (OTO-ILSM) on both public data sets and self-recorded data set are presented to show the superior performance of CAE-RLSM in terms of efficiency and map quality in different scenarios.

READ FULL TEXT VIEW PDF
POST COMMENT

Comments

There are no comments yet.

Authors

page 1

page 3

page 6

page 10

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

I Introduction

MAP building is a key module for autonomous mobile robots since both localization and planning usually depend on the map information of the environment [1, 21]. One typical map representation is the grid map [3, 16]

, wherein the value of each cell represents the probability of being occupied by obstacles. However, the required memory of the grid map grows rapidly with the increase of the environmental size. Therefore, the representation of the environment by features such as line segments becomes a popular alternative to the grid map

[5, 9, 10, 25]. Compared with the grid map, the line segment map is more compact, consuming less memory and scaling better with the environmental size. Furthermore, the line segment map does not split the environment into grids and thus it does not suffer from discretization problems [26].

The simplest way to build a line segment map is to transform all original line segments into the world coordinate system and pile them up. However, because of errors in localization or perception, those line segments which physically represent the same part of the environment are not perfectly overlapped between successive laser scans in both local and global maps. This situation is called redundancy and inconsistency of map information, which makes it difficult to fulfill subsequent tasks such as localization and planning. Therefore, it is necessary to merge redundant line segments in the original line segment map to obtain a redundancy-free and globally consistent map. Existing redundant line segment approaches can be classified into two categories: offline approaches

[5, 12, 13] and online approaches [9, 18]. Offline approaches collect all laser scans and register them in advance so that they are globally consistent. Then a variety of clustering algorithms are adopted to classify these line segments extracted from the registered laser scans and merge them. The redundancy of line segment maps obtained by offline approaches is usually low, but the post-processing mechanism makes them essentially impossible to apply to the real-time systems, such as a feature-based graph SLAM system. In contrast, online approaches receive laser scans in real time and correct robot poses by scan matching. Then line segments extracted from the current scan are updated to the global map by incremental merging. This incremental processing mechanism can ensure the real-time performance, but it is difficult to handle the problem of global map adjustment after loop closing [11]. In summary, the primary challenge in design of a redundant line segment merging approach is to simultaneously ensure high efficiency and global consistency.

Furthermore, how to evaluate the quality of line segment maps is a key issue. The fairest way is to compare the obtained maps with the actual environmental metric information. However, manual measurement of the environmental metric information usually requires a lot of labor and it is almost impractical in some cases. Therefore, most of past researches only judge if the obtained line segment maps are redundant or not by visual inspection [9, 10, 12, 13, 24, 25]. Some researchers suggest using the reduction rate of the number of line segments after merging to evaluate the performance of redundant line segment merging approaches [4, 5]. However, it is not that the lower the rate, the better the map. The low reduction rate may also mean the serious loss of map information, since some physically different line segments are merged together by mistake. Besides, the reduction rate can not directly reflect the redundancy of line segment maps, because even the low reduction date can not ensure that there are no redundant line segments in the map. Therefore, how to objectively and fairly evaluate the quality of line segment maps is yet to be studied further.

Motivated by these challenges, a consistent and efficient redundant line segment merging approach called CAE-RLSM is newly proposed. The proposed CAE-RLSM is composed of two newly proposed modules: one-to-many incremental line segment merging (OTM-ILSM) and multi-processing global map adjustment (MP-GMA). The final line segment map is regarded as a global set and each line segment in the final map is regarded as a subset. Each subset contains all original line segments that make up the final line segment corresponding to this subset. The correspondence between the original line segments and their corresponding final line segment is recorded during incremental merging, and all original line segments are retained after merging. These original line segments are extracted from raw laser scans by a seeded region growing-based line segment extraction algorithm [17] and associated with their corresponding robot poses. After loop closing, all original line segments are updated to the world coordinate system according to the optimized poses. Finally, all original line segments in each subset are re-merged into a new line segment to update the final map. This step reuses the previous recorded correspondence between the original and final line segments instead of executing incremental merging from scratch, which significantly improves efficiency while guaranteeing global consistency. The relationship between the above components can be seen in Figure 1. It should be noted that CAE-RLSM is independent of loop closure detection and pose optimization. Therefore, it can be embedded as a stand-alone module in standard graph-based SLAM systems.

Fig. 1: Relationship between the final line segment map (orange), line segments in the final map (green), subsets of original line segments (blue) which make up the corresponding final line segments and robot poses (purple).

Furthermore, a new correlation-based evaluation metric is proposed to evaluate the quality of line segment maps. Globally consistent laser scans obtained by SLAM systems are regarded as the ground truth, which are collected and rasterized using a Gaussian kernel to construct a lookup table. Each line segment in the final map is discretized into pixels using Bresenham’s line algorithm. And then these pixels are projected to match the corresponding value in the lookup table. The quality of the final map is computed by adding up the scores of all line segment pixels. To the best of our knowledge, we are the first to propose such correlation-based evaluation metric for quality evaluation of line segment maps.

The main contributions of this paper can be summarized as follows:

(1) A novel redundant line segment merging approach called CAE-RLSM is proposed for online feature map building, which consists of two new modules OTM-ILSM and MP-GMA. Different from existing online and offline approaches, CAE-RLSM not only reduces the redundancy of incremental merging, but also solves the problem of global map adjustment after loop closing. In other words, CAE-RLSM ensures both high efficiency and global consistency to obtain a compact line segment-based map.

(2) A new evaluation metric based on correlation is proposed for quality evaluation of line segment maps. This evaluation metric does not require manual measurement of the environmental metric information, but makes full use of globally consistent laser scans obtained by SLAM systems to objectively and fairly compare the performance of different line segment-based mapping approaches.

We begin this paper with a brief review of related work in Section II. The proposed CAE-RLSM is detailed in Section III. Section IV describes the correlation-based evaluation metric and Section V presents the comparative experimental results and analysis. Finally, this paper is concluded in Section VI.

Ii Related Work

Map building has received much research attention in recent years due to its value in many applications, such as localization [6, 21]

or pose estimation

[7, 15]. In [16], Kim et al. propose a noble method of building continuous occupancy maps and reconstructing surfaces in a single framework for both navigation and visualization. Because of the compact representation and low memory, line segment feature has been widely used in mobile robots localization, mapping and navigation [22, 23, 24, 25, 27]. In order to obtain a compact and efficient map representation based on line segments, it is necessary to merge redundant line segments which physically represent the same part of the environment such as a long wall. In [12], Amigoni et al. propose a greedy offline approach for redundant line segment merging. In this work [12], they first consider the longest line segment in the whole map and then define a strip centered this longest line segment with width . Other line segments whose endpoints fall within the strip are merged together with this longest line segment. In [5], Sarkar et al. propose an offline redundant line segment merging approach based on mean shift clustering algorithm (MS-RLSM). In this work [5], all original line segments are first clustered into angular clusters according to their direction; then, line segments belonging to the same angular cluster are further clustered into spatial clusters based on their spatial proximity; finally, the line segments belonging to the same spatial cluster are merged together. Although above offline approaches can significantly reduce the redundancy of final maps, they have poor running time performance, which makes it difficult to apply to real-time mapping systems.

In [18], Kuo et al. propose the naive one-to-one incremental line segment merging approach (OTO-ILSM), which is applied in a Rao-Blackwellized Particle Filters (RBPF) based SLAM system. In this work [18], for each line segment extracted from the current scan, a complete search through the global map is performed. Once the closest match is found, they regard the two line segments belonging to the same part of the environment and merge them together. However, OTO-ILSM has limitations in both redundancy reduction and global consistency. Firstly, when there is more than one line segment in the global map matched with the current scan line segment, only one of them will be merged, resulting that other redundant line segments are still left in the global map. In particular, when a robot wraps around a large circle and returns to the starting position, using OTO-ILSM can not merge the line segments extracted at the beginning and ending position in a single loop together with the current scan line segment, since the current scan line segment will be only merged with one of them. Secondly, it is essentially impossible for this incremental processing mechanism to adjust global line segment map according to the optimized poses after loop closing, since robot poses are only associated with original line segments extracted from raw laser scans while line segments in the global map are not associated with robot poses. The simplest way to address this problem is to execute incremental merging from scratch after loop closing. However, this in turn reduces the efficiency of incremental merging.

In order to obtain redundancy-free and globally consistent line segment maps in real-time, in this paper a novel redundant line segment merging approach called CAE-RLSM is proposed. To reduce the redundancy of incremental merging, an one-to-many incremental line segment merging module (OTM-ILSM) is design. The correspondence between the original line segments extracted from raw laser scans and the final line segments in the global map is recorded during incremental merging, and all original line segments are retained after merging. This correspondence is reused for global map adjustment after loop closing instead of executing incremental merging from scratch, which significantly improves efficiency while guaranteeing global consistency.

Furthermore, it is necessary to evaluate the quality of line segment maps to compare the performance of different line segment-based mapping approaches. Since the ground truth is not always available, some researchers turn to define several evaluation metrics to quantitatively evaluate line segment maps [4, 5, 20]. In [5], Sarkar et al. use the number and length of line segments in the final map to evaluate the quality of obtained maps. They believe that the fewer the number of line segments in the final map, the more compact the line segment map. Similarly, Amigoni et al. propose the reduction rate of the number of line segments after merging to compare the efficiency of different redundant line segment merging approaches [4]. But in fact, the few line segments in the final map or the low reduction rate may also mean the serious loss of map information, since some physically different line segments are merged together by mistake. Therefore, it is not objective and fair to evaluate the quality of line segment maps only by the number of line segments in the final map.

In this work, we borrow the idea of correlative scan matching algorithm (CSM) [19] and propose a new correlation-based evaluation metric for quality evaluation of line segment maps. Globally consistent laser scans obtained by SLAM systems are regarded as the ground truth and rasterized using a Gaussian kernel to construct a lookup table. This lookup table can be regarded as the environmental model. Each line segments in the final map is discretized into pixels using Bresenham’s line algorithm. Finally, these pixels are projected and matched with the corresponding value in the lookup table to evaluate the quality of obtained maps.

Iii Cae-Rlsm

This section introduces the framework and detailed procedures of CAE-RLSM, as shown in Figure 2.

Fig. 2: System framework. The proposed CAE-RLSM is composed of one-to-many incremental line segment merging (OTM-ILSM) and multi-processing global map adjustment (MP-GMA).

A line segment is represented by its two endpoints

. The heading of the line segment is defined as the direction vector of the start point to the end point and is normalized into the range of

. and represent the line segment expressed in the global and local coordinate system, respectively. denotes the set of line segments extracted from -th laser scan. and represent the set of line segments expressed in the global and local coordinate system, respectively. Global line segment maps obtained after -th and -th merging processing are denoted by and , respectively.

Iii-a Fusion conditions and fusion algorithm

According to [11], a general framework of redundant line segment merging approaches is usually structured with fusion conditions and a fusion algorithm. Fusion conditions are used to detect several line segments which physically represent the same part of the environment, and these line segments are merged into a new line segment through the fusion algorithm. Furthermore, each line segment in the final map is usually assigned with a weight according to its length or the number of times it is updated. In this paper the latter is used.

In [5], the concept of spatial proximity based on lateral separation and longitudinal overlap is proposed. This spatial proximity is suitable for offline approaches because the weight of all original line segments extracted from raw laser scans is equal. But for online approaches, the weight of line segments from should be larger than the weight of line segments from since those line segments from have been updated many times. Therefore, it is not appropriate to treat such line segments as equal in this situation. In this paper, the following three measurements are considered to determine whether two line segments and , one from and the other from , are spatially close or not:

  1. Heading deviation, : the difference between the headings of and .

  2. Vertical distance, d: the maximum distance of the endpoints of to .

  3. Horizontal overlap, p: the length of the overlap between and the projection of to .

If and only if the following three conditions are all satisfied, and are considered to be spatially close to each other:

(1)
(2)
(3)

where and denote the headings of and , respectively. denotes the line parameters of , and and denote the endpoints of . and are the endpoints of the overlap between and the projection of to , and , and are three adaptive threshold parameters. Since the angles are not Euclidean, the function is used to re-normalize them after every subtraction. The diagram of above three measurements is shown in Figure 3.

After obtaining the set of line segments , which physically represent the same part of the environment, the following equations are used to merge these line segments into a new line segment :

(4)
{(¯x

_1,¯y_1 ),( ¯x_2,¯y_2 ) } = argmax_i ∈N,j ∈N { (x_i^e1 - x_j^e2 )^2 + (y_i^e1 - y_j^e2 )^2 }, where denotes the barycenter of , and the barycenter of is represented by . is the weight of the line segment, which corresponds to the number of times the line segment is updated. The projections of the endpoints of to are denoted by and , and the two farthest projections form the new endpoints of , which are represented by and .

Fig. 3: The heading deviation, vertical distance and horizontal overlap between the line segment extracted from the current scan (AB) and the line segment from the global map (CD) are represented by , d and p, respectively. The projections of the endpoints of AB to CD are denoted by X and Y.

Iii-B Data structure

CAE-RLSM is based on a tree-like data structure, as shown in Figure 1. The root node contains the final line segment map, and each of its child nodes contains a final line segment marked with a unique ID. Furthermore, the children of each child node contain the original line segments that make up the corresponding line segment in the final map after merging. These original line segments are extracted from raw laser scans and marked with the indices of corresponding robot poses. And these original line segments are also regarded as leaf nodes in the tree-like data structure. During the incremental merging, the child nodes of the root node may be pruned, but these leaf nodes will be retained to record the information of all original line segments. Based on this tree-like data structure, the correspondence between the original line segments and the corresponding line segment in the final map is recorded, and each original line segment is also associated with its corresponding robot pose, facilitating global line segment map adjustment after loop closing.

Iii-C One-to-many incremental line segment merging

Incremental line segment merging updates the global line segment map through merging with . As mentioned in Section II, OTO-ILSM has limitations in both redundancy reduction and global consistency. Therefore, we propose the OTM-ILSM (Algorithm 1).

1:, , , and lastIndex
2: and
3:for ,  do
4:     A
5:     B
6:     for  do
7:         if  and satisfy the fusion conditions then
8:              add into A.
9:              add the ID of into B.
10:              erase from .
11:         end if
12:     end for
13:     m the minimum number in B.
14:     merge all line segments in A together with into L.
15:     for ,  do
16:         if  then
17:              move all line segments in to .
18:              erase from .
19:         end if
20:     end for
21:     insert L into with ID m.
22:     erase from .
23:     erase from .
24:end for
25:for ,  do
26:     insert into with ID lastIndex.
27:     create a new subset in with ID lastIndex.
28:     add into the new subset.
29:     lastIndex lastIndex + 1.
30:end for
31:
32:
Algorithm 1 One-to-many incremental line segment merging

In Algorithm 1, for each current scan line segment in , a complete search through is performed (Algorithm 1: lines ). Line segments in which satisfy the fusion conditions are regarded as the associated line segments of the current scan line segment and moved from to a temporary set (Algorithm 1: lines ). And then these associated line segments are merged together with the current scan line segment to generate a new line segment using the fusion algorithm (Algorithm 1: lines ). The new line segment is inserted into with the minimum ID of these associated line segments (Algorithm 1: lines ). Finally, those current scan line segments in which are not associated with line segments in are directly inserted into to update to (Algorithm 1: lines ).

On the other hand, in order to record the correspondence between the original line segments and the corresponding line segment in the final map, the tree-like data structure detailed in the previous subsection is used. The root node is represented by and its child nodes are denoted by . During the complete search through , whenever a current scan line segment merged together with its associated line segments, the child nodes corresponding to these associated line segments are removed from , and their leaf nodes are linked to the child node whose ID is the minimum ID of these associated line segments (Algorithm 1: lines ). Finally, for each current scan line segment in which is not associated with line segments in , we create a new child node in and link the current scan line segment with the new child node (Algorithm 1: lines ).

Compared with OTO-ILSM, the advantages of OTM-ILSM can be summarized as follows. Firstly, when there is more than one line segment in the global map matched with the current scan line segment, the current scan line segment will be merged together with all of them, reducing the redundancy of incremental merging. In particular, when the robot wraps around a large circle and returns to the starting position, using OTM-ILSM can merge the line segments extracted at the beginning and ending position in a single loop together with the current scan line segment. Secondly, all original line segments are retained after incremental merging, and the correspondence between the original line segments and the corresponding line segment in the final map is recorded. This correspondence is reused for global map adjustment after loop closing instead of executing incremental merging from scratch, which significantly improves efficiency.

Iii-D Multi-processing global map adjustment

After loop closing, the line segments in the global map need to be adjusted accordingly (Algorithm 2). Since all original line segments are marked with the indices of corresponding robot poses, they can be easily re-transformed into the world coordinate system according to the optimized poses (Algorithm 2: lines ). Furthermore, each line segment in the global map is updated by re-merging its corresponding original line segments, which reuses the previous recorded correspondence (Algorithm 2: lines ). Since the update process for line segments in the global map is independent of each other, we use multi-threaded parallel processing mechanism to speed up map updates. Finally, the current scan line segments are merged with the adjusted global map using OTM-ILSM.

1: and
2:
3:for ,  do
4:     A
5:     for  do
6:         update according to the optimized pose.
7:         add into A.
8:     end for
9:     merge all line segments in A together into L.
10:     replace with L.
11:end for
Algorithm 2 Multi-processing global map adjustment

Iv Metrics

In this section, we detail the newly proposed correlation-based metric for quality evaluation of line segment maps. Furthermore, a simplified error metric based on the quality metric proposed in [4] is introduced. In summary, we will use the above two metrics to evaluate line segment maps in a comprehensive way.

Iv-1 Lookup table

In order to quantitatively evaluate line segment maps, in this paper we borrow the idea of correlative scan matching [19] and propose a correlation-based evaluation metric. Firstly, scan matching and loop closing are used to correct robot poses. The output pose trajectory is regarded as quasi ground truth. Secondly, all laser scan points are transformed to the world coordinate system according to the corresponding robot poses and then scaled to the grid coordinate system. Finally, a probabilistic grid map named lookup table is constructed by using a Gaussian kernel with every laser scan point. The value of each cell in the lookup table represents the probability of observing obstacles at that position. The example of the lookup table can be visualized as an image, as shown in Figure 4.

Fig. 4: (a) registered laser scan points; (b) schematic image of lookup table. Bright regions represent high probability of been occupied.

Iv-2 Correlation-based metric

Since the lookup table can be considered as a discrete function, we need to discretize each line segment in the final map to pixels and then project these pixels and find the corresponding scores in the lookup table. These final line segments are first scaled to the grid coordinate system and then discretized to pixels by Bresenham’s line algorithm. Furthermore, in order to consider the situation where there are redundant line segments in the final map, each line segment pixel is accompanied with direction information obtained by converting continuous version of heading of line segments into discrete. Once there are multiple pixels with the same position and direction information, which means that there are redundant line segments in the corresponding part of the final map, the proposed metric will punish the map quality accordingly. Finally, the quality metric of the final map is calculated as follow:

(5)

where denotes the discrete line segment pixel, is the total number of line segment pixels and is the number of redundant line segment pixels. is the penalty factor, and function is the lookup table which takes a pixel and returns a probability of observing obstacles at that position.

The physical meaning of the proposed correlation-based evaluation metric can be summarized as follows. Firstly, the globally consistent laser scans are regarded as ground truth to describe the environment. The matching degree between the line segments in the final map and these laser scans is regarded as the degree of conformity between the obtained map and the real environment. Secondly, in order to describe the environment more objectively and realistically, each laser scan point is smeared with a Gaussian kernel to take into account the sensor noise. The final lookup table can be regarded as the environment model, which is used as the reference model for evaluation. Thirdly, line segments in the final map are discretized to directed pixels and projected to match the reference model, which implicitly considers the situation where redundant line segments exist in the final map.

It should be emphasized that both redundant line segment merging and lookup table construction require the precise robot poses. In order to make the comparison between different redundant line segment merging approaches more fair, in this paper we use a unified 2D laser SLAM system with unified system parameters to get the precise robot poses. Therefore, the objectivity and fairness of the proposed evaluation metric are not affected by the factor of pose correction.

Iv-3 Error metric

In addition to the proposed evaluation metric, we also use a simplified error metric based on the quality metric proposed in [4]. Since each line segment in the final map has its corresponding original line segments before merging, we calculate the average distance of the barycenters of these original line segments to their corresponding final line segment to define the error metric:

(6)

where denotes the line parameters of the final line segment, denotes the barycenter of the original line segment, is the number of line segments in the final map and is the number of the corresponding original line segments of each final line segment. This error metric represents the average deviation of original line segments to the final map, which evaluates the loss of information deriving from redundant line segment merging.

V Experiment

In this section, the experimental setup and results of the comparative experiments with respect to MS-RLSM [5] and OTO-ILSM [18] are detailed. We first introduce the public data sets and self-recorded data set used in the experiments. And then the comparative experimental results and qualitative and quantitative analysis are presented to show the superior performance of CAE-RLSM in terms of efficiency and map quality in different scenarios.

V-a Data sets

Fig. 5: Partial experimental results in dataset (c). (a) registered laser scan points; (b) partial line segment map produced by MS-RLSM with default parameters; (c) partial line segment map produced by MS-RLSM with optimized parameters.

In the comparative experiments, the following three public data sets obtained from RADISH [14] and one data set recorded in our lab are considered:

  1. department_diiga: this data set is recorded in the Department of DIIGA at Engeneering University in Ancona. The data set is collected by using a mobile robot equipped with a SICK LMS 200 laser range finder with 1.0 angular resolution. The area of the environment is approximately and the number of scans acquired by the robot is 8540.

  2. intel_oregon: this data set is recorded in the part of the Intel Lab in Hillsboro, Oregon. The data set is collected by using a mobile robot equipped with a SICK LMS 200 laser range finder with 1.0 angular resolution. The area of the environment is approximately and the number of scans acquired by the robot is 8030.

  3. seattle: this data set is relative to University of Washington in Seattle, Washington. The data set is collected by using a mobile robot equipped with a SICK LMS 200 laser range finder with 0.5 angular resolution. The area of the environment is approximately and the number of scans acquired by the robot is 241.

  4. floor_4: this data set is collected in a long hallway with a perfect loop in our laboratory by using a mobile robot equipped with a SICK LMS 100 laser range finder. The area of the environment is approximately and the number of scans acquired by the robot is 20384.

The original laser scans in dataset (c) have been already pre-registered, so the tests on this data set do not require pose correction, which demonstrates that CAE-RLSM is independent of loop closure detection and pose optimization.

There are many algorithms designed for extracting line segments from discrete and ordered laser scan points [8]. In this paper, we broadly follow the open-source line segment extraction algorithm111https://github.com/ghm0819/laser-line-segment [17], which borrows the idea of seed region growing in the field of image processing. This algorithm has been verified by experiments to achieve better performance than Iterative End Point Fit algorithm [8] in terms of efficiency, correctness and precision. For dataset (a), (b) and (c), the minimum length of the line segment extraction algorithm is set to 600.0 millimeters. For the dataset (d), the minimum length is set to 1000.0 millimeters since the environment is a long hallway. Furthermore, we use the open-source 2D laser SLAM system Karto-SLAM222https://github.com/ros-perception/slam_karto to complete the task of pose correction for both redundant line segment merging and lookup table construction. Whenever the robot moves more that 0.2 meters or rotates more than 10 degrees, the new incoming laser scan is processed. It should be emphasized again that using the same line segment extraction algorithm and pose correction approach makes the comparison between different redundant line segment merging approaches more objective and fair.

In TABLE I we enumerate a few quantitative statistics of the above four data sets. Column 2 indicates the numbers of scans which have been processed for line segment extraction. The average translation and rotation between two consecutive laser scans are indicated in column 3 and column 4, respectively. Column 5 indicates the number of original line segments extracted from raw laser scans, and the next three columns indicate the minimum length, maximum length and average length of these original line segments, respectively.

V-B Experimental setup

# Scan proc. Avg. Avg. # Scan line Shortest line Longest line Average length
(mm) segments segment (mm) segment (mm) (mm)
Dataset (a) 1413 176.8 4.40 4432 600.0 11447.0 2129.8
Dataset (b) 1192 197.2 4.16 3649 600.0 7937.5 1767.2
Dataset (c) 240 794.8 11.94 1167 600.0 5793.0 1700.8
Dataset (d) 1138 216.8 1.02 4058 1000.7 11809.8 3113.3
TABLE I: Quantitative statistics of the raw data sets and the original line segment maps before merging
# Map line Shortest line Longest line Average length Quality
segments segment (mm) segment (mm) (mm)
Default parameters 15 751.4 11761.6 5497.3 66.94%
Optimized parameters 39 669.1 8959.8 2066.9 96.51%
TABLE II: Quantitative statistics of partial line segment maps produced by MS-RLSM with default and optimized parameters in dataset (c)
# Map line Shortest line Longest line Average Quality Error Per-frame Total offline
segments segment (mm) segment (mm) length (mm) (mm) runtime (ms) runtime (ms)
Dataset (a) MS-RLSM 125 671.9 19668.3 2945.9 92.12% 10.25 25145.5
OTO-ILSM 130 671.2 19593.3 2832.8 91.86% 10.44 0.061 58.2
CAE-RLSM 126 672.1 19724.6 2923.1 94.26% 8.34 0.076 45.6
Dataset (b) MS-RLSM 128 753.9 14692.6 2138.7 95.07% 7.62 16322.2
OTO-ILSM 131 741.6 14695.9 2081.8 86.30% 8.06 0.055 65.8
CAE-RLSM 130 718.7 14717.5 2134.0 95.70% 7.49 0.082 90.0
Dataset (c) MS-RLSM 94 669.1 8959.8 1916.5 93.15% 11.17 2055.6
OTO-ILSM 96 669.5 8958.8 1869.6 87.71% 4.69 0.086 20.7
CAE-RLSM 93 668.5 8960.8 1909.4 95.15% 3.81 0.083 28.7
Dataset (d) MS-RLSM 109 1094.5 13603.6 4120.8 96.79% 9.04 19335.7
OTO-ILSM 114 1101.3 13568.8 4051.5 75.71% 13.70 0.070 79.4
CAE-RLSM 110 1095.5 13604.6 4088.3 97.25% 8.76 0.082 57.7
TABLE III: Quantitative statistics of line segment maps produced by MS-RLSM, OTO-ILSM and CAE-RLSM

Both MS-RLSM, OTO-ILSM and CAE-RLSM are programmed in C/C++ and have been run on a laptop with an Intel core i5-3230M processor and 4 GB memory. In the following comparative experiments, we do not use the default parameters of MS-RLSM in its original paper, i.e. the lateral separation is set to 400 millimeters and the longitudinal overlap is set to -100 millimeters, since the performance with these default parameters is very poor. We set the optimized parameters for MS-RLSM, OTO-ILSM and CAE-RLSM as follows through extensive experimental tests to achieve the best performance for all of them. For dataset (a), (b) and (d), both the lateral separation of MS-RLSM and the vertical distance of CAE-RLSM are set to 100 millimeters, and both the longitudinal overlap of MS-RLSM and the horizontal overlap of CAE-RLSM are set to -100 millimeters. The heading deviation of CAE-RLSM is set to 4 degrees. For dataset (c), both the lateral separation and the vertical distance are set to 50 millimeters, and both the longitudinal overlap and the horizontal overlap are set to -50 millimeters. The heading deviation of CAE-RLSM is set to 2 degrees. Finally, the parameters of OTO-ILSM are set as the same as CAE-RLSM.

V-C Comparative evaluation

V-C1 Validation of the proposed metric

First of all, the partial line segment maps produced by MS-RLSM with default and optimized parameters in dataset (c) are used to demonstrate the rationality of the proposed evaluation metric, as shown in Figure 5. TABLE II enumerates a few attributes of these line segment maps. In this example, if we use the number or the length of line segments in the final map to evaluate the quality of line segment maps [4, 5], we will get the conclusion that the quality of the map produced by MS-RLSM with default parameters is better than using optimized parameters. But intuitively, the map produced using optimized parameters is closer to the real environment. The reason for the wrong conclusion is that the rationality of the evaluation metrics based on the number or the length of line segments in the final map are based on the premise that the redundant line segments are correctly merged. Once physically different line segments are merged together by mistake, using these metrics will lead to wrong evaluation conclusions. On the contrary, the proposed correlation-based evaluation metric essentially evaluates the conformity of the line segment map to the real environment, as shown in Figure 5 and TABLE II. Therefore, evaluation results based on the proposed metric are consistent with the visual inspection, which demonstrates the effectiveness of the proposed metric.

Fig. 6: Line segment maps obtained by piling up all original line segments extracted from raw laser scans (left) and final maps produced by CAE-RLSM (right) in dataset (a) and (b). The red and green dots represent the starting and ending points of line segments, respectively. These images are all vector graphics. Readers are advised to refer to the electronic version of this article to see the endpoints of line segments more clearly by zooming in on these images.
Fig. 7: Experimental results in dataset (c). (a) final map produced by MS-RLSM; (b) final map produced by CAE-RLSM. The green dots represent the registered laser scan points and the blue and red line segments form the final maps. The comparative details of the matching degree between the final maps and the registered laser scans are circled with black rectangle borders, which demonstrates that CAE-RLSM can achieve superior performance in terms of map quality.

V-C2 Validation of the proposed approach

Final line segment maps produced by CAE-RLSM in four data sets are shown in Figure 6, 7 and 9. To the best of our knowledge, it is the first time to clearly provide the information of line segments and their endpoints in such an intuitive way. TABLE III enumerates a few attributes of these line segment maps. Column 7 indicates the quality of line segment maps based on the correlation-based metric, and column 8 indicates the map quality based on the error metric. It can be seen that the quality of the maps produced by CAE-RLSM is all above 94%. In particular, the quality is above 97% for dataset (d). On the other hand, the errors i.e. the average deviations of original line segments to final maps introduced by CAE-RLSM are all below 10 millimeters, which demonstrates that CAE-RLSM can achieve good performance in terms of map quality.

V-C3 Quantitative and qualitative comparison on map quality

(a) MS-RLSM vs. CAE-RLSM: TABLE III enumerates a few attributes of the final line segment maps produced by MS-RLSM. Compared with MS-RLSM, the map quality of CAE-RLSM increases by an average of 1.4%, and the errors reduce by 2.42 millimeters on average. To qualitatively compare these two approaches in an intuitive manner, we show the point cloud map generated by Karto-SLAM after loop closing as the ground truth in Figure 7, and we also overlap the line segment map generated by MS-RLSM and CAE-RLSM in Figure 7(a) and Figure 7(b), respectively. Compared with MS-RLSM, it is shown that the final map produced by CAE-RLSM is closer to the real environment.

(b) OTO-ILSM vs. CAE-RLSM: It should be noted that OTO-ILSM can be run in an online manner frame by frame. However, in this case, this approach is not able to adjust the merged line segments in the stage of loop closing, and thus the online OTO-ILSM presents poor performance, as shown in Figure 9(b), especially at the beginning and ending parts of a moving loop. Different from OTO-ILSM, the proposed CAE-RLSM records all the line segments in different frames and maintains a subset for each physically same line segment, and thus the global map adjustment can be conducted by adjusting all the elements in the same subset according to the optimized pose graph following by a re-merging process. Therefore, it is seen that the proposed CAE-RLSM presents superior performance than online OTO-ILSM.

To overcome this issue of online OTO-ILSM, we design an offline version of OTO-ILSM for global map adjustment after loop closing, called OTO-ILSM. Firstly, Karto-SLAM is used to obtain the globally consistent laser scans, and the original line segments extracted from raw laser scans are orderly recorded according to the order of laser scans. These line segments are represented in the world coordinate system according to the optimized poses. Secondly, the original line segments are processed by OTO-ILSM according to the order of laser scans. Based on the above scheme, OTO-ILSM and CAE-RLSM can be compared fairly after loop closing.

TABLE III enumerates a few attributes of the final line segment maps produced by OTO-ILSM. Compared with OTO-ILSM, the map quality of CAE-RLSM increases by an average of 12.6%, and errors reduce by 2.12 millimeters on average. The final line segment maps produced by OTO-ILSM and CAE-RLSM in dataset (d) are used to intuitively compare the performance of these two approach. As shown in the Figure 9(c) and Figure 9(d), there are still redundant line segments in the final map produced by OTO-ILSM, while using CAE-RLSM can obtain a redundancy-free line segment map. Furthermore, the low map quality of OTO-ILSM is consistent with the redundancy of the obtained map, which demonstrates that the proposed evaluation metric can directly reflect the redundancy of line segment maps.

V-C4 Efficiency comparison

Finally, the real-time mapping performance of CAE-RLSM is visualized with the aid of Robot Operating System (ROS) visualization tools (RViz), as shown in Figure 8. While the post-processing mechanism makes MS-RLSM essentially impossible to achieve real-time mapping performance. The runtime results are indicated in column 9 and column 10 of TABLE III. The per-frame runtime of CAE-RLSM is approximatively 0.08 milliseconds on average, which demonstrates that CAE-RLSM can ensure high efficiency. And we also design an offline version for CAE-RLSM like OTO-ILSM to compare the total runtime results with respect to MS-RLSM and OTO-ILSM, as shown in column 10 of TABLE III. For dataset (a), (b), (d), the total runtime results of MS-RLSM are all exceed 16 seconds, while the total runtime results of OTO-ILSM and CAE-RLSM are all less than 100 milliseconds. As can be seen, the difference of runtime results between MS-RLSM and CAE-RLSM is three orders of magnitude, while the runtime results of OTO-ILSM and CAE-RLSM are the same order of magnitude.

Fig. 8: Screenshot of the real-time mapping performance of CAE-RLSM in dataset (b). The red line segments represent the global map, and the grid map is obtained by Karto-SLAM.
Fig. 9: Experimental results in dataset (d). (a) original line segment map obtained by piling up all original line segments extracted from raw laser scans; (b) final map produced by online OTO-ILSM; (c) final map produced by OTO-ILSM; (d) final map produced by CAE-RLSM. The red and green dots represent the starting and ending points of line segments, respectively. The redundancy of the final map produced by OTO-ILSM is circled with black rectangle borders, while using CAE-RLSM can obtain a redundancy-free line segment map. These images are all vector graphics. Readers are advised to refer to the electronic version of this article to see the endpoints of line segments more clearly by zooming in on these images.

Vi Conclusion

This paper has proposed a consistent and efficient redundant line segment merging approach called CAE-RLSM for online feature map building, which is composed of one-to-many incremental line segment merging (OTM-ILSM) and multi-processing global map adjustment (MP-GMA). The proposed CAE-RLSM not only reduces the redundancy of incremental merging, but also solves the problem of global map adjustment after loop closing, simultaneously ensuring efficiency and global consistency. Furthermore, a new correlation-based evaluation metric is proposed for quality evaluation of line segment maps. Comparative experimental results demonstrate that CAE-RLSM can achieve superior performance in terms of efficiency and map quality in different scenarios.

Vii Acknowledgments

The public data sets used in the experiments are obtained from the Robotics Data Set Repository (Radish) [14]

. The authors gratefully thank Gian Maria Pelusi, Maxim Batalin and Dirk Haehnel for providing the Department of DIIGA, the Intel Lab in Oregon and the Seattle data sets. The self-recorded data set is collected on the fourth floor of the College of Artificial Intelligence, Nankai University. Thanks go to Lei Zhou and Meng Liu for providing this data set.

References

  • [1] C. Cadena, L. Carlone, H. Carrillo, et al, “Past, present, and future of simultaneous localization and mapping: Toward the robust-perception age,” IEEE Transactions on Robotics, vol. 32, no. 6, pp. 1309-1332, 2016.
  • [2] X. Zhang, J. Wang, Y. Fang, J. Yuan, “Multilevel humanlike motion planning for mobile robots in complex indoor environments,” IEEE Transactions on Automation Science and Engineering, accepted.
  • [3] W. Hess, D. Kohler, H. Rapp, D. Andor, “Real-time loop closure in 2D LIDAR SLAM,” in IEEE International Conference on Robotics and Automation, 2016, pp. 1271-1278.
  • [4] F. Amigoni, A. Q. Li, “Comparing methods for merging redundant line segments in maps,” Robotics and Autonomous Systems, vol. 99, pp. 135-147, 2018.
  • [5] B. Sarkar, P. K. Pal, D. Sarkar, “Building maps of indoor environments by merging line segments extracted from registered laser range scans,” Robotics and Autonomous Systems, vol. 62, no. 4, pp. 603-615, 2014.
  • [6] D. Tick, A. C. Satici, J. Shen, N. Gans, “Tracking control of mobile robots localized via chained fusion of discrete and continuous epipolar geometry, IMU and odometry,” IEEE Transactions on Cybernetics, vol. 43, no. 4, pp. 1237-1250, 2013.
  • [7] A. Assa, F. Janabi-Sharifi, “A robust vision-based sensor fusion approach for real-time pose estimation,” IEEE Transactions on Cybernetics, vol. 44, no. 2, pp. 217-227, 2014.
  • [8] V. Nguyen, S. Gachter, A. Martinelli, N. Tomatis, R. Siegwart, “A comparison of line extraction algorithms using 2D range data for indoor mobile robotics,” Autonomous Robots, vol. 23, no. 2, pp. 97-111, 2007.
  • [9] L. Zhang, B. K. Ghosh, “Line segment based map building and localization using 2D laser rangefinder,” in IEEE International Conference on Robotics and Automation, 2000, pp. 2538-2543.
  • [10] J. Elseberg, R. T. Creed, R. Lakaemper, “A line segment based system for 2D global mapping,” in IEEE International Conference on Robotics and Automation, 2010, pp. 3924-3931.
  • [11] F. Amigoni, S. Gasparini, “Analysis of methods for reducing line segments in maps: Towards a general approach,” in IEEE/RSJ International Conference on Intelligent Robots and Systems, 2008, pp. 2896-2901.
  • [12] F. Amigoni, M. Vailati, “A method for reducing redundant line segments in maps,” in European Conference on Mobile Robots, 2009, pp. 61-66.
  • [13] R. Lakaemper, “Simultaneous multi-line-segment merging for robot mapping using mean shift clustering,” in IEEE/RSJ International Conference on Intelligent Robots and Systems, 2009, pp. 1654-1660.
  • [14] A. Howard, N. Roy, “The robotics data set repository (RADISH),” 2003. Available: http://radish.sourceforge.net/.
  • [15] L. Li, Y. Liu, K. Wang, M. Fang, “Estimating position of mobile robots from omnidirectional vision using an adaptive algorithm,” IEEE Transactions on Cybernetics, vol. 45, no. 8, pp. 1633-1646, 2015.
  • [16] S. Kim, J. Kim, “Occupancy mapping and surface reconstruction using local gaussian processes with Kinect sensors,” IEEE Transactions on Cybernetics, vol. 43, no. 5, pp. 1335-1346, 2013.
  • [17] H. Gao, X. Zhang, Y. Fang, J. Yuan, “A line segment extraction algorithm using laser data based on seeded region growing,” International Journal of Advanced Robotic Systems, vol. 15, no. 1, pp. 1-10, 2018.
  • [18] W. J. Kuo, S. H. Tseng, J. Y. Yu, L. C. Fu, “A hybrid approach to RBPF based SLAM with grid mapping enhanced by line matching,” in IEEE/RSJ International Conference on Intelligent Robots and Systems, 2009, pp. 1523-1528.
  • [19] E. B. Olson, “Real-time correlative scan matching,” in IEEE International Conference on Robotics and Automation, 2009, pp. 4387-4393.
  • [20] R. Lakaemper, “A confidence measure for segment based maps,” in Workshop on Performance Metrics for Intelligent Systems, 2009, pp. 211-216.
  • [21] T. Botterill, S. Mills, R. Green, “Correcting scale drift by object recognition in single-camera SLAM,” IEEE Transactions on Cybernetics, vol. 43, no. 6, pp. 1767-1780, 2013.
  • [22] M. Mazuran, F. Amigoni, “Matching line segment scans with mutual compatibility constraints,” in IEEE International Conference on Robotics and Automation, 2014, pp. 4298-4303.
  • [23] V. Nguyen, A. Harati, A. Martinelli, R. Siegwart, N. Tomatis, “Orthogonal SLAM: A step toward lightweight indoor autonomous navigation,” in IEEE International Conference on Robotics and Automation, 2006, pp. 5007-5012.
  • [24] F. Amigoni, S. Gasparini, M. Gini, “Building segment-based maps without pose information,” in Proceedings of the IEEE, 2006, pp. 1340-1359.
  • [25] F. Amigoni, G. Fontana, F. Garigiola, “A method for building small-size segment-based maps,” Distributed Autonomous Robotic Systems, vol. 7, pp. 11-20, 2006.
  • [26] D. Sack, W. Burgard, “A comparison of methods in for line extraction from range data,” in Proceeding of IFAC Symposium on Intelligent Autonomous Vehicles, vol. 37, no. 8, pp. 728-733, 2004.
  • [27] J. Li, R. Zhong, Q. Hu, M. Ai, “Feature-based laser scan matching and its application for indoor mapping,” Sensors, vol. 16, no. 8, 2016.