A LASER-SLAM ALGORITHM FOR INDOOR MOBILE MAPPING

A novel Laser-SLAM algorithm is presented for real indoor environment mobile mapping. SLAM algorithm can be divided into two classes, Bayes filter-based and graph optimization-based. The former is often difficult to guarantee consistency and accuracy in largescale environment mapping because of the accumulative error during incremental mapping. Graph optimization-based SLAM method often assume predetermined landmarks, which is difficult to be got in unknown environment mapping. And there most likely has large difference between the optimize result and the real data, because the constraints are too few. This paper designed a kind of sub-map method, which could map more accurately without predetermined landmarks and avoid the already-drawn map impact on agent’s location. The tree structure of sub-map can be indexed quickly and reduce the amount of memory consuming when mapping. The algorithm combined Bayes-based and graph optimization-based SLAM algorithm. It created virtual landmarks automatically by associating data of sub-maps for graph optimization. Then graph optimization guaranteed consistency and accuracy in large-scale environment mapping and improved the reasonability and reliability of the optimize results. Experimental results are presented with a laser sensor (UTM 30LX) in official buildings and shopping centres, which prove that the proposed algorithm can obtain 2D maps within 10cm precision in indoor environment range from several hundreds to 12000 square meter.


INTRODUCTION 1.1 Laser-SLAM
In recent years, the technology of simultaneous localization and mapping (SLAM) has been applied in the surveying and mapping domain.In Many places, especially in the indoor environment, there is no GPS signal, SLAM is one of the solution to this problem.Laser scanners are often used in high precision surveying and mapping, Laser range finder is extensively used to acquire 2D information from environment for its high abilities of prevent interference and low influence of light, and many laser-SLAM algorithm have been applied to the robot, but most algorithms are only suitable for small scale and low precision mapping, the new problem with it is that how to draw high precision large-scale map.About research into SLAM algorithm, the earliest can be traced back to the 80's, Stanford University, Smith [1], who published a seminal article on the issue of SLAM.In this paper, the concept of random map is proposed, which is based on the description of spatial uncertainty and the representation of transformation.By 1991, Leonard proposed the concept of SLAM, Durrant summarized the early research methods of this problem, and discussed the structure and convergence of the SLAM problem.SLAM algorithm is essentially a system state estimation problem.In this way, the solving method can be roughly divided into three categories, which are based on Kalman filter, particle filter and based on graph theory.Kalman filter and particle filter based on the recursive Bayesian state estimation theory, under the condition of the known observation information and control information from the initial state to the current state, estimate the posterior probability of the system.According to the different method of posterior probability representation, a variety of Kalman filtering methods are proposed, like EKF-SLAM algorithm, UKF-SLAM algorithm.Based on the Kalman filter method, it can get a satisfactory result when the Gauss distribution hypothesis and small non-linearity, and the particle filter does not have such a limit.Rao-Blackwellized particle filters (RBPF) is one of the most representative SLAM algorithm based on particle filter.Base on RBPF, Montemerlo provides FastSLAM algorithm, and propose FastSLAM 2.0 by further optimization.
With the deep study of SLAM, its application has been gradually developed from a small scale to a large scale environment.SLAM algorithm based on graph theory, due to the use of the global optimization of the processing method, can get a better mapping result.

Particle Filters for Localization and Mapping
In controlling theory, SLAM is a typical dynamic system state estimation problem.The system transfer from a given initial state x0 and map m0 to the states x1:t = x1,…,xt from start to from t moment.In a work by Murphy, Rao-Blackwellized particle filters (RBPF) have been introduced as an effective approach to solve the SLAM problem, this approach is to estimate the posterior p(x1:t, m | z1:t, u1:t-1) about the map m and the trajectory x1:t.This estimation is performed given the observations z1:t = z1,…, zt and the odometer measurements u1:t-1 = u1,…,ut-1.Without the odometer measurements, the Rao-Blackwellized particle filter for SLAM make use of the following factorization 1: 1: The SLAM problem is decomposed into two independent posterior probability：The posterior over maps p(m | x1:t, z1:t) and the posterior over potential trajectories p(x1:t | z1:t), which can be estimated by particle filter.This factorization allows us to first estimate only the trajectory and then to compute the map given that trajectory.Main process of the RBPF for SLAM is as follows: 1) Sampling: In accordance with Sampling from the proposal distribution q(x1:t i | z1:t), the next generation of particle {xt i } i=1,…,N.
where N represents the numbers of the particles.
2) Calculating Importance Weighting: Calculating the importance weight {wt i }i=1,…,N of each particle according to the importance sampling principle to remedy the gap between the proposal distribution and the posterior over trajectories.

1:
1: 3) Resampling: Particles are drawn with the updated importance weight.This step is based on Monte Carlo Method, only a finite number of particles is used to approximate a continuous distribution.
4) Map Updating: For each particle, the corresponding map estimate p(m i | x1:t i , z1:t) is computed based on the trajectory x1:t i of that sample and the history of observation z1:t.In this paper, the particle filter is used in the 2.1.1 section, and a map representation and updating method is described in detail.

Graph Optimization for Localization and Mapping
SLAM problem can also been seen as A problem that inputting the motion model and observation and estimating the maximum posterior probability of the position of robot and landmarks.
Based on the graph theory, the SLAM problem is regarded as the least square optimization problem.

New Framework
This section shows a new framework (Sub-maps framework) which combines SLAM Algorithm based on the use of particle filters with graph optimization algorithm.Most SLAM algorithms based on the use of particle filters attempt to maintain a single map with multiple states, and the map is created by the accumulation of observations of the environment and estimates of states (PIC), but the observations are compared against an incomplete and possibly incorrect map, identified with the particle.This approach will inevitably lead to the introduction of cumulative errors.In Sub-maps framework, a single map is divided into many small sub-maps.Each sub-map is just composed of adjacent observations.This can greatly decrease the effect of cumulative errors, and each sub-map has relatively rich topological construction and outstanding features, The relationship among sub-maps can be calculated separately by matching their detail information, than non-consistency of relationships and trajectories of sub-maps make a graph optimization problem, thus the SLAM problem of A single map is translated into several independent SLAM problem of submaps and a graph optimization problem (PIC).

Sub-maps:
In the sub-maps frameworks, the whole original SLAM task is decomposed to many task of small map, we call such a small map a sub-map.The purpose of this is to avoid the cumulative error generated in a large scale map and improve the parallel efficiency of the algorithm.
Since the laser scanning data for each frame reflects less information, it is difficult to extract and match features in nonadjacent frames with overlapping area, so the traditional SLAM is easy to produce errors, and with the increasing of time, the cumulative error will be increasing.When the map is segmented into sub-maps of reasonable size, there is no cumulative error between sub-maps, and each sub-map has relatively rich topological construction and outstanding feature.Sub-maps are estimated by using A Particle Filters SLAM like DP-SLAM, we use grid occupied state to describe and update sub-maps.A sub-map is decomposed into grid.In one time scan, the position of the end of the laser scanning line is more likely an obstruction, and the position on the laser scanning line is more likely no obstructions, the rest position is not sure whether it is an obstruction.Assuming that their probabilities are Oo, Of and Ou.
For any grid point s, o is occupied.The potential trajectories is x1:t = x1,…,xt, and the observations is z1:t = z1,…, zt, After t scans, the probability that the grid s is occupied is: Where co and cf represent the number of times the grid is occupied and free.So, we can make a probabilistic analytic formula of the occupied state of grid s to calculate the posterior over maps p(m | x1:t, z1:t) in the equations () like this: 1: When estimating the posterior over potential trajectories p(x1:t | z1:t), each observation should be compared with the current incomplete map, so this map have to be kept in memory, and memory consumption will increase with the expansion of the map.In the Sub-maps framework, sub-map calculation is independent of each other, so several sub-maps can be computed simultaneously.We can set the number of sub-maps for parallel computing and the size of sub-map to control the consumption of memory and maintain constant memory consumption.

Virtual landmark:
Landmarks are features which can easily be re-observed and distinguished from the environment, Landmarks can be easily set arbitrarily in the simulation of SLAM algorithm.In a real-world environment, we must place a real target, but it is not desirable in real applications.DP-SLAM avoid the data association problem by storing multiple detailed maps instead of sparse landmarks, thereby subsuming association with localization, therefore, the authors claim that DP-slam makes no landmark assumptions.This, in turn, can create landmarks through localization of multiple detailed maps, and we call these landmarks Virtual landmarks, because it does not need to set specific landmark in the real scene or extract the features of landmarks.According to the probabilistic analytic formula of the grid occupied map (), a point in the map most likely to be an obstacle is chosen as a virtual landmark, which may not even be distinguishable in visual features.Create a virtual landmark in order to describe the relationship between the sub-maps, so we only need to be concerned with the relationship between the virtual landmark and the corresponding sub-maps, but not need to care about the absolute position of this virtual landmark itself.The calculation of the virtual landmark, in essence, is to calculate the relationship, which is to calculate the relationship between the virtual landmark and the trajectories of the corresponding sub-map.The calculation steps of virtual landmark l: 1) Setting the virtual landmark l, l is the most likely to be the grid point of obstacles in the sub-map.

1:
1: 2) Calculate the relationship zij between the landmark lj and the track point xi, lj is the landmark of the sub-map j, xi is the track point in the adjacent sub-maps.It is clear that the relationship between landmark and track point is independent and does not guarantee consistency, and this problem will be solved by graph theory optimization in section 1.3.Figure 1.Automatic landmarks.The circles is four automatic landmarks

Optimization strategy:
In order to ensure the correctness of the result, we designed two sets of optimization strategies for automatic optimization and manual optimization.Two optimization strategies are used in the same graph theory, but landmark selection is different.The automatic optimization strategy adopts the landmark setting described in section 2.12.
The manual optimization strategy is to make up the deficiency of the automatic optimization strategy in large scale complex terrain.
The manual optimization strategy allows the landmark selection of the corresponding points in several different sub-maps by the way of feature matching or manual selection, than calculate the relations between the points and the locus of map.Manual optimization can be repeated iteratively until the corresponding points can not be found.

Dynamic Indexing Map
Another problem of large-scale map SLAM algorithm is the problem of map indexing and memory consumption.In order to quickly retrieve the map grid value, we want to remember the values of each grid in map.But before the implementation of the algorithm, we do not know how large the map may be.In order to ensure that our map structure can be adapted to all the different sizes of map, a dynamic index map is designed.In this map structure, we divide the grid map into larger grids, and each larger grid represents a map block.In the initialization stage, there is only one map block in the map structure.With the implementation of the SLAM algorithm, the map data is beyond the existing map blocks, we create a new map block in the corresponding location of the new map data and record the grid number of the map block.When we need to retrieve a grid value, first calculate the map block of this grid, and then retrieve the grid value in this map block.In this way, we can dynamically allocate memory according to the size of the actual map, and can quickly retrieve the value of the grid.

Platform Description
The platform used is entirely independent research and development of our company.This platform is a set of equipment like a cart.There is a powerful computer engineering, two mutually perpendicular laser sensors and a high resolution panoramic camera, e.g.

Result and Discussion
We compared the results of using a single map and the results of our sub-maps framework.We tested the office buildings, shopping malls, pedestrian street and parking lots, these scenes represent the different size and complexity environment, Figure 6.The scale represents 100 meters

CONCLUSION
This article, we show a framework of sub-maps.In this framework, we skilfully combine the state estimation method and the graph theory method with the sub-maps and the virtual landmark.We elaborate in detail the calculation method of the sub map, and the selection principle of the landmarks, and how to optimize the map through the relationship between the landmarks and the locus point.Finally, through the experiment proved that SLAM algorithm based on our sub-maps frameworks in dealing with large scale environment is more effective than ordinary single map particle filter SLAM algorithm, and a dynamic index map structure is designed.tosolve the contradiction between the memory and the retrieval speed.

，
Under the assumption of Gauss distribution, log on the formula (4) both sides:

Figure 2 .
Figure 2.Manual landmarks.The circles is a pair manual landmarks Figure 4

Figure 4 .
Figure 4. Indoor mobile measuring vehicle This equipment is power by the lithium batteries( 12 V ) of 36 Ah, The fastest speed of 3 m/s implementation.The laser sensors used are two Hokuyo URG-30LX.It is connected to a USB port.