Integration and evaluation of SLAM-based backpack mobile mapping system

. Mobile mapping is an efficient technology to acquire spatial data of the environment. As a supplement of vehicle-borne and air-borne methods, Backpack mobile mapping system (MMS) has a wide application prospect in indoor and underground space. High-precision positioning and attitude determination are the key to MMS. Usually, GNSS/INS integrated navigation system provides reliable pose information. However, in the GNSS-denied environments, there is no effective long-term positioning method. With the development of simultaneous localization and mapping (SLAM) algorithm, it provides a new solution for indoor mobile mapping. This paper develops a portable backpack mobile mapping system, which integrates multi-sensor such as LiDAR, IMU, GNSS and panoramic camera. The 3D laser SLAM algorithm is applied to the mobile mapping to realize the acquisition of geographic information data in various complex environments. The experimental results in typical indoor and outdoor scenes show that the system can achieve high-precision and efficient acquisition of 3D information, and the relative precision of point cloud is 2~4cm, which meets the requirements of scene mapping and reconstruction.


Introduction
Mobile mapping technology is an advanced and efficient way to survey 3D information in space. The mobile mapping system(MMS) integrates multi-sensor such as global navigation satellite system (GNSS) receiver, inertial measurement unit (IMU), laser scanner, CCD camera. And MMS comprehensively applies various technologies including integrated navigation, time synchronization, sensor calibration, and multi-source data fusion. vehicle-borne and air-borne mobile mapping system has been widely used in urban high-precision 3D mapping [1]. However, with the development of geographic information and the construction of smart cities [2], the demand for 3D information acquisition in indoor and underground Spaces is increasing rapidly. The highly integrated backpack mapping system is portable and flexible, which is suitable for indoor and outdoor mobile mapping. The main difficulty is that in the GNSSdenied environment, the backpack system lacks long-term high-precision positioning information. The extrapolation error of IMU accumulates over time, it is a challenge to limit the error accumulation and maintain the consistency of the map. In addition, compared with the vehicle and airborne platform, the periodic swaying when a person walks leads to continuous change of the backpack state, which puts forward higher requirements for positioning, attitude determination and time synchronization [3].
Simultaneous Localization and Mapping (SLAM) originated from the field of robots, which is proposed to solve the problem of environment perception, positioning and navigation in unknown environment. The robot uses sensor measurements to build maps incrementally. At the same time, the robot calculates the real-time pose according to odometer, IMU and point cloud scanning matching [4]. Loop detection and pose optimization are used to correct the drift caused by the accumulation of long-term matching errors, so as to obtain a map with good global consistency. SLAM is an autonomous navigation and mapping method, which is independent of GNSS signals [5,6]. It is suitable for indoor and underground space and has broad prospects in MMS.
Based on the laser SLAM algorithm, we designed and integrated a backpack mobile mapping system. This paper mainly introduces the key technologies and methods involved in the system, including high-precision time synchronization, sensors spatial relationship calibration based on planar features, scan matching and pose graph optimization in SLAM algorithm. Finally, we do some experiments in indoor and outdoor scenes to verify the feasibility of applying laser SLAM algorithm to backpack mobile mapping system. Compared with the results obtained by other measurement methods, it shows that the 3D point cloud results acquired by backpack mobile mapping system have high accuracy.

System overview
The system is equipped with two LiDARs, GNSS antenna, IMU, OEM7700 board, Panoramic camera, Industrial Panel PC, lithium battery and other components. The main sensors and parts are fixed on the rigid frame. The structure of the backpack system is shown in the Fig. 1.
And Table 1 lists the performance indicators of the main sensors.
LiDAR is the main sensor for measuring 3D environment information. Due to the limited field of view (FOV) of VLP-16 and the occlusion of the carrier, it is difficult to cover the whole scene with a single LiDAR. Taking the indoor corridor as an example, the horizontal VLP-16 can measure the vertical wall, and the tilt VLP-16 can not only supplement the observation of ceiling and ground, but also increase the density of point cloud [7]. In order to meet the requirements of high-precision positioning in indoor and outdoor scenes, the system is equipped with GNSS receiver, high-precision MEMS inertial navigation STIM300 and OEM7700 board for processing GNSS/IMU integrated navigation data. In the indoor scene, the LiDAR/IMU combination provides navigation information. In the outdoor scene, GNSS observation is added as a constraint to improve the positioning accuracy.
The system uses the topic publishing and subscription mechanism of ROS to realize data transmission. Before the multi-source data fusion processing, the data is converted to the same time and space benchmark by time synchronization and calibration. Finally, SLAM algorithm is used to realize the fusion of multi-source data to achieve simultaneous positioning and map construction.

Time synchronization
When using multi-sensor to acquire data, the pose of the backpack changes over time. To build maps using range data, the pose of the corresponding instantaneous moment must be given. However, each sensor in the backpack has different starting time, measurement time, output frequency and time accuracy, so high-precision time synchronization is very important. A common way in MMS is to use GPS time as a high-precision time benchmark. Fig.2 shows the process of multi-sensor time synchronization There is no clock inside the IMU, and it needs to be provided externally with a stable, high-precision time reference. The inertial measurement data is transmitted from the IMU to the GPS OEM7700 receiver through the serial port, and the receiver is connected to the GPS antenna to track the GPS signal. After processing, the position and attitude information with high-precision time stamps can be output at a high frequency rate, and the IMU measurement data can be synchronized with GPS time.
The interface box of VLP-16 provides an interface to receive GPS time information. Connect with GPS receiver can provide accurate GPS time and location information for LiDAR. The sensors can synchronize their data with precision, GPS-supplied time pulses. Synchronizing to the GPS pulse-per-second (PPS) signal provides user the ability to compute the exact firing time of each data point.
We use a NTP (Network Time Protocol) server, which is connected with a GPS time service terminal, receives high-precision UTC time and provides it to the computer controller. The computer adjusts the local clock according to the time deviation to achieve time synchronization between the computer and GPS.

Sensor calibration
To accurately fuse data from the two 3D LiDAR, their coordinate systems must be registered to a common reference system. The coordinate system involved in the backpack and its transformation are shown in Fig.3. This requires the estimation of the relative pose of the VLP-16s with respect to each other. Then, according to the spatial relationship between LiDAR and IMU and the real-time pose of the carrier, the mobile mapping data is unified into the global coordinate system. The relative positional relationship between sensors can be represented by a rotation matrix R and a translation vector T. The key to spatial synchronization of multi-sensor data is accurate calibration of rotation and translation parameters.

Dual-LiDAR calibration
The calibration method is based on planar features [8].
Make two LiDAR scan the same plane at the same time, then extract the point cloud of the common plane from the observation data, and use RANSAC algorithm to fit the plane parameters, and construct the constraint equations for the plane parameters. Assuming that the parameters of the common plane in the horizontal VLP-16 and tilt VLP-16 coordinate systems are �n, d� and �n , d � respectively, then the plane constraint model can be expressed as Repeat the observation by moving the plane or the carrier. When there are at least three sets of plane observations, the above equation can be solved.

LiDAR-IMU calibration
Select a suitable planar surfaces in the artificial scene, use the total station to measure the true coordinates of the control points located on the plane to determine the control plane equation. Then extract the corresponding plane from the point cloud measured by the backpack system and substitute it into the control plane equation. The point cloud data contains the system's placement angle error and translation vector error. The calibration model based on the control plane is: Where, L � is the adjustment value of the observation value L, V is the correction number of L, X � is the initial value of the calibration parameter, and x � is the correction value of the calibration parameter. �X � , Y � , Z � � is the coordinates of the laser point in the WGS-84 coordinate system, and ��, �, �, d�is the plane parameter.

Graph-based 3D laser SLAM
The SLAM algorithm used in the backpack system is based on graph optimization. As shown in Fig. 4, the core of the algorithm framework is divided into two parts: front end and back end. In the front end of SLAM, the point cloud acquired by LiDAR is mainly registered by scan matching algorithm to construct a local map. In the backend, constraints are constructed by closed-loop detection and other methods to eliminate the cumulative errors generated during motion and estimation [9]. Pose graph are used to optimize the trajectory of the carrier to obtain a globally consistent map.

Front-end scan matching
Point cloud registration is a process of solving the rotation and translation relations between point clouds and transforming them into the same coordinate system. To solve the transformation parameters, the velocity, position and attitude provided by IMU are taken as the initial values of the transformation. Then, the point clouds are accurately registered by the correlation scan matching (CSM) algorithm. CSM is based on a probability grid map. We assume that the 2D grid map has been established at the current time as M, and a total of n laser points are input in the current frame, where the k laser point coordinate is S � , and the map probability value of the corresponding position is M�S � �. Then the CSM can be described as: finding an optimal rigid transformation �� � , T � �, which makes the probability value of the position of the transformed laser point S � � closest to 1. The cost function is defined as: The large amount of data in the point cloud will affect the speed of point cloud stitching and scan matching, so the voxel filtering is processed before the scan matching.
Finally, the point cloud is inserted into the map by matching the point cloud with the submap in each frame, and a certain number of scans form a submap.

Graph optimization
In the graph based SLAM algorithm, the trajectory information including position and attitude is used to construct pose graph. Every node in the pose graph corresponds to a pose of the backpack during mapping. Every edge between two nodes corresponds to a spatial measurement between them. To reduce the amount of nodes, only some specific pose is saved to construct the pose map.
Due to the influence of various errors, the nodes do not satisfy the edge constraints, and the resulting residual error is ��N � , N � , E �� � . According to the optimization criterion that minimizes the sum of residuals, the cost function of the optimal pose P � � �N � � , N � � , ⋯ , N � � � can be written as: Where, n is the number of nodes in the pose graph. When there are no edges between nodes, the residual is set to zero. The cost function is a nonlinear function, which can be solved using the Gauss-Newton method or the Levenberg-Marquardt (L-M) method. Build the graph and find a node configuration that minimize the pose error. Then improve the accuracy of the map based on the optimized trajectory.

Experiment and analysis
In order to verify the effect of our SLAM-based backpack mobile mapping system and evaluate the accuracy of the results. We conducted experiments in three different scenes on campus (Fig. 5), respectively: (1). J6 Teaching building: a large indoor scene with structured features such as corridors and stairs. Collect data in the corridors on the second and fourth floors of the building, and go back to the starting position through the stairs.
(2). 3D Comprehensive Laboratory and surrounding roads: a complex large-scale indoor and outdoor combined scene. At the beginning, the data was collected inside the 3D Laboratory, then get out from the gate, and walked along the road around the 3D laboratory and back to the gate.
(3). Taishan Square. an open outdoor scene, lack of structural features. The trajectory is to first walk along the road outside Taishan Square, then enter the square, move around the circular parterre and finally back to the original position.
The SLAM algorithm of the system is based on Google Cartographer. IMU/LiDAR sensors are used for positioning and mapping in indoor scenes, while GNSS/IMU/LiDAR are used outdoors.

Experimental result
We used a backpack system to acquire data in the above three scenarios, each experiment took 10-20 minutes, and obtained a point cloud with a data volume of up to 100G. The system realizes 3D mapping of large indoor and outdoor environments, and 3D mapping point cloud results are shown in Fig.6~8. The results show that it is feasible to apply the SLAM algorithm to a backpack mobile mapping system, which can achieve seamless and efficient 3D information acquisition. Whether in well-constrained indoor scenes or in open outdoor scenes, even in challenging large-scale complex scenes, it can still achieve better mapping effects.

Quality evaluation for 3D point cloud
To evaluate the quality of the acquired point cloud, objects with obvious structural features are selected for the evaluation of relative accuracy. For indoor and outdoor scenes, we selected corridors, doors, windows, parterre, curbstone, stone pillars and other objects. Use steel ruler and total station to measure its geometric information (W, L, H represent the length, width and height of the object) as a reference value. Extract the corresponding object from the point cloud, calculate the measured value and compare with the reference value [10]. The results are listed in Table 2 and Table 3. It can be seen that the relative accuracy indoors is 0.022m, and the relative accuracy outdoor is 0.037m. This is because the accumulation of errors is difficult to completely eliminate, resulting in a significant increase in the thickness of the wall point cloud when multiple measurements are superimposed together. The accuracy of indoor is higher than that of outdoor. This is because the indoor structured environment can provide more comprehensive constraint information, so that when the map is constructed, the data matching is more accurate, and the pose estimation is also more accurate.

Conclusions
The backpack mobile mapping system based on laser SLAM proposed in this paper has the characteristics of portability, high integration and automatic data processing. The system can efficiently and accurately measure 3D information of indoor and outdoor scenes. Application of SLAM algorithm can achieve reliable positioning and attitude determination in the GNSSdenied environment, and effectively limit the cumulative error. But how to construct a multi-sensor tightly coupled model needs further study. In addition, based on the visual SLAM, adding visual information to the system requires continuous exploration.