Extrinsic Calibration of 2D Laser Rangefinders Using an Existing Cuboid-Shaped Corridor as the Reference

Laser rangefinders (LRFs) are widely used in autonomous systems for indoor positioning and mobile mapping through the simultaneous localization and mapping (SLAM) approach. The extrinsic parameters of multiple LRFs need to be determined, and they are one of the key factors impacting system performance. This study presents an extrinsic calibration method of multiple LRFs that requires neither extra calibration sensors nor special artificial reference landmarks. Instead, it uses a naturally existing cuboid-shaped corridor as the calibration reference, and it hence needs no additional cost. The present method takes advantage of two types of geometric constraints for the calibration, which can be found in a common cuboid-shaped corridor. First, the corresponding point cloud is scanned by the set of LRFs. Second, the lines that are scanned on the corridor surfaces are extracted from the point cloud. Then, the lines within the same surface and the lines within two adjacent surfaces satisfy the coplanarity constraint and the orthogonality constraint, respectively. As such, the calibration problem is converted into a nonlinear optimization problem with the constraints. Simulation experiments and experiments based on real data verified the feasibility and stability of the proposed method.


Introduction
A 2D laser rangefinder (LRF) can provide an accurate range with high angular resolution over long distances [1]. As it has lower power consumption, smaller size, and lower cost compared to general 3D laser scanners, it is widely used in autonomous systems such as robot positioning [2], navigation [3], and mobile mapping [4,5] through the simultaneous localization and mapping (SLAM) technique [6]. Many systems, such as the light detection and ranging (LiDAR)-based SLAM system [7,8], employ several 2D LRFs simultaneously to perform sensor fusion, which reinforces the concern of extrinsic calibration for fusing all the LiDAR point cloud into a global reference frame. Moreover, the performances of mapping and SLAM are sensitive to calibration errors, especially when they have a long working range, so that small rotation errors can produce significant distortions in the map [9].
The calibration of the sensors is generally divided into intrinsic parameter calibration and extrinsic parameter calibration. The intrinsic parameters relate to the acquisition process and involve issues that are both temporal and geometric [10,11]. The extrinsic parameters determine the pose transformation relationship among multiple sensors or between one sensor and a reference coordinate system [12].
The work of this paper focuses on the extrinsic calibration of multiple 2D LRFs, assuming that the intrinsic calibration has been done.
The extrinsic calibration of multiple 2D LRFs is more difficult than the extrinsic calibration of multiple 3D laser scanners [13,14], multiple depth cameras [15], or even the extrinsic calibration between one LRF and one camera [16][17][18]. The latter can be done by placing retroreflective targets or using features that are easily recognized in 3D scenes, whereas it is hard to find discriminative features in a 2D LRF point cloud. Although multiple LRFs can be indirectly calibrated by doing the calibration between each LRF and another type of sensor, such as a camera, not all LRFs have enough of a common field of view with the camera, and the propagation of error can also affect the final calibration accuracy.
Some applications may only be concerned with three degrees of freedom (DOF) of external reference calibration on the horizontal scanning plane. For example, in References [19,20], the three-DOF extrinsic calibration of multiple LRFs on the scanning plane was achieved by matching the target motion trajectories in the overlapping scanning region of the LRFs. However, for many applications, such as 3D mapping applications, there may be large angles between scanning planes [8,12], and then a six-DOF extrinsic calibration needs to be done. The authors of Reference [12] made a special facility based on the scanning planes of multiple LRFs to ensure all the LRFs were able to scan the small V-shaped targets mounted on the facility, and then they used the centers of the targets as control points for the extrinsic calibration. Obviously, this method required manual targets to be made based on pre-measured installation configurations, and this method did not automatically solve the problem of finding distinguishing features on multiple LRF scan planes.
However, although it is difficult to directly find corresponding discriminative features in LRF point clouds, some geometric characters can be used to indirectly estimate the control points located outside the scanning planes of LRFs. As well as using spherical targets to do an extrinsic calibration of multiple Kinect sensors [21], the 2D LRF can obtain a circular arc when scanning a spherical target, the position of the spherical center outside of the scanning plane can be derived according to the known radius of the target, and then the extrinsic calibration between multiple LRFs can be performed using the corresponding target centers in all the frame data [22,23]. In Reference [24], the extrinsic calibration between a single LRF and a fixed 3D reference frame was done by designed targets using the inherent geometrical characteristics formed by a cone and a pyramid. Additionally, the authors in Reference [25] used conic targets to perform an extrinsic calibration between a 3D laser scanner and a 2D LRF. In References [26][27][28], geometric-based methods were used in the extrinsic calibration between a single LRF and a camera. Reference [26] used a scene corner to form a line-to-plane and a point-to-plane constraint, Reference [27] used a simple folding pattern to form a rotation constraint and a point-to-plane constraint, and Reference [28] used a V-shaped pattern to form a point-to-plane constraint. All these geometric constraints can convert the calibration problem to an error minimization problem so as to achieve extrinsic calibration.
In Reference [29], the authors used the geometric constraints formed by static objects (buildings) to achieve the extrinsic calibration between a 3D laser scanner and an inertial measurement unit (IMU) sensor. In References [30][31][32], the calibration between a 2D LRF and an IMU, and a GNSS and a body reference frame of the multisensor system, was deployed by using differently orientated georeferenced planar surfaces. With the linking component from a 3D scanner, the calibration could be done by minimizing distance between the pointwise-observed referenced surfaces and their nominal position. If this method were used for calibrating the 2D LRFs, however, multiple line segments could be gotten instead of line-plane pairs, so the problem would be totally different.
According to the literature surveyed, in recent years some research works have directly calibrated the extrinsic parameters of multiple LRFs based on geometric constraints, and because the geometric constraints they used could be found in daily life, the man-made scanning target was omitted. References [33,34] used a coplanarity constraint and an orthogonality constraint formed by a pair of perpendicular planes for the extrinsic calibration of LRFs. Generally, this geometric pattern can be found in daily life, such as the corner portion of a vertical wall outside a building. The author of Reference [35] used two kinds of coplanarity constraints formed by a large plane to do the extrinsic calibration of LRFs. This method requires a flat surface that is large enough and flat enough, such as a playground floor. It requires at least three LRFs. According to our practical experience, for the methods in References [33,34], it is difficult to find a corner that is large enough, free of obstacles, and not made of reflective or light-transmissive glass in our modern living environment. This paper proposes a method using the same geometric constraints but choosing a common cuboid-shaped corridor as the georeferenced target. That is, the method does not need extra sensors or artificial landmarks, and it utilizes a coplanarity constraint and an orthogonality constraint formed by a corridor, rotating the multiple LRFs with different orientations to perform the extrinsic calibration.
The rest of the paper is organized as follows: Section 2 introduces the basic calibration principle of this method; Section 3 describes the detail of the calibration methodology; Section 4 shows the simulation experiments and the experiments based on real data; and Sections 5 and 6 are the discussion and the conclusion of this work.

Calibration Principle
This section explains the objective of an extrinsic calibration, the reason why a cuboid-shaped corridor can be used to do the calibration, and the calibration procedures.

Objective
An indoor mapping device was taken as an example, as shown in Figure 1. It is a laser-based backpack and trolley device. Three 2D LRFs and one inertial measurement unit (IMU) were installed on the device, and their own coordinate frames are shown in Figure 1b. For the device, the extrinsic parameters of the four sensors needed to be calibrated, but only the calibration of the three LRFs is discussed here: It was also planned to be the premise of the IMU extrinsic calibration. Thus, the objective of the extrinsic calibration was to obtain the relative rotation and translation parameters between the three LRFs.
The three LRFs are denoted as LRF 1 , LRF 2 , and LRF 3 from top to down, and the coordinate frames of them are denoted as S 1 , S 2 , and S 3 . Let [R 1 |T 1 ], [R 2 |T 2 ], [R 3 |T 3 ]∈ 3 be the LRF poses with respect to a common reference frame. For the hardware system, the frame of the IMU may be used as a device frame and also as a reference frame, but for the convenience of calibration, S 1 is taken as the reference frame. calibration of LRFs. This method requires a flat surface that is large enough and flat enough, such as a playground floor. It requires at least three LRFs. According to our practical experience, for the methods in References [33,34], it is difficult to find a corner that is large enough, free of obstacles, and not made of reflective or light-transmissive glass in our modern living environment. This paper proposes a method using the same geometric constraints but choosing a common cuboid-shaped corridor as the georeferenced target. That is, the method does not need extra sensors or artificial landmarks, and it utilizes a coplanarity constraint and an orthogonality constraint formed by a corridor, rotating the multiple LRFs with different orientations to perform the extrinsic calibration. The rest of the paper is organized as follows: Section 2 introduces the basic calibration principle of this method; Section 3 describes the detail of the calibration methodology; Section 4 shows the simulation experiments and the experiments based on real data; and Sections 5 and 6 are the discussion and the conclusion of this work.

Calibration Principle
This section explains the objective of an extrinsic calibration, the reason why a cuboid-shaped corridor can be used to do the calibration, and the calibration procedures.

Objective
An indoor mapping device was taken as an example, as shown in Figure 1. It is a laser-based backpack and trolley device. Three 2D LRFs and one inertial measurement unit (IMU) were installed on the device, and their own coordinate frames are shown in Figure 1b. For the device, the extrinsic parameters of the four sensors needed to be calibrated, but only the calibration of the three LRFs is discussed here: It was also planned to be the premise of the IMU extrinsic calibration. Thus, the objective of the extrinsic calibration was to obtain the relative rotation and translation parameters between the three LRFs.
The three LRFs are denoted as LRF1, LRF2, and LRF3 from top to down, and the coordinate frames of them are denoted as S1, S2, and S3.

 
be the LRF poses with respect to a common reference frame. For the hardware system, the frame of the IMU may be used as a device frame and also as a reference frame, but for the convenience of calibration, S1 is taken as the reference

Geometric Constraints
The scanning plane of each LRF is a 2D plane in the 3D real word. Ideally, when it is used to scan a cuboid-shaped corridor, a parallelogram is gotten, as shown in Figure 2a (the 90 • dead zone of the LRF should be noted, and the z axis is behind the 2D figure, actually, according to the right-hand rule).
When scanning the cuboid-shaped corridor using multi-LRFs, multiple parallelograms can be gotten, and all the sides of the parallelograms are on the surfaces of the corridor. As shown in Figure 2b, C a i and I a i are the center points and the line vectors of the lines scanned by LRF i (i = 1, 2, 3; a = 1, 2, 3, 4) on the surface a. After converting these scanned 2D lines into 3D space, there are two types of geometric constraints, the coplanarity constraint and the orthogonality constraint.
The coplanarity constraint means that the lines scanned by LRFs, which lie on the same surface, should be on the same 3D plane. That is, the distance between the two coplanar lines should be zero. Thus, the coplanarity constraint is expressed as follows: where a denotes the surface the lines are on. The first-half part of the left item of the equation can represent the distance vector between them, and then the left item of the equation equals the distance value.

Geometric Constraints
The scanning plane of each LRF is a 2D plane in the 3D real word. Ideally, when it is used to scan a cuboid-shaped corridor, a parallelogram is gotten, as shown in Figure 2a (the 90° dead zone of the LRF should be noted, and the z axis is behind the 2D figure, actually, according to the right-hand rule).
When scanning the cuboid-shaped corridor using multi-LRFs, multiple parallelograms can be gotten, and all the sides of the parallelograms are on the surfaces of the corridor. As shown in Figure  2b, a i C and a i I are the center points and the line vectors of the lines scanned by LRFi (i = 1, 2, 3; a = 1, 2, 3, 4) on the surface a. After converting these scanned 2D lines into 3D space, there are two types of geometric constraints, the coplanarity constraint and the orthogonality constraint.
The coplanarity constraint means that the lines scanned by LRFs, which lie on the same surface, should be on the same 3D plane. That is, the distance between the two coplanar lines should be zero. Thus, the coplanarity constraint is expressed as follows: where denotes the surface the lines are on. The first-half part of the left item of the equation can represent the distance vector between them, and then the left item of the equation equals the distance value. The orthogonality constraint means that two adjacent corridor surfaces should be perpendicular to each other, whereas the normal vector of the surface can be expressed by the cross product of the line vectors. Thus, the orthogonality constraint is expressed as follows: where and denote two adjacent surfaces of the corridor. Generally, the cross product of vectors of two lines can be taken as the normal vector of the plane they are on. Then the perpendicular relationship of the two planes means that the dot product of their normal vectors should be zero. The geometric constraints are the key point of the calibration, and the initial poses of LRFs are given at first. Because they deviate from the correct poses, the scanned lines do not satisfy the coplanarity constraint and orthogonality constraint. The calibrated poses can be gotten by finally minimizing this deviation.
However, obviously, the extrinsic calibration of a LRF is a nonlinear problem with six DOFs, whereas just one corridor observation cannot provide full six DOF constraints. As shown in Figure  2b, assume the calibration is done with all the lines meeting the geometric constraints using just one observation, and the translation parameter along the y axis is still uncertain. Therefore, in order to provide sufficient constraints by the corridor observations, the device must be required to gather data The orthogonality constraint means that two adjacent corridor surfaces should be perpendicular to each other, whereas the normal vector of the surface can be expressed by the cross product of the line vectors. Thus, the orthogonality constraint is expressed as follows: where a and b denote two adjacent surfaces of the corridor. Generally, the cross product of vectors of two lines can be taken as the normal vector of the plane they are on. Then the perpendicular relationship of the two planes means that the dot product of their normal vectors should be zero. The geometric constraints are the key point of the calibration, and the initial poses of LRFs are given at first. Because they deviate from the correct poses, the scanned lines do not satisfy the coplanarity constraint and orthogonality constraint. The calibrated poses can be gotten by finally minimizing this deviation.
However, obviously, the extrinsic calibration of a LRF is a nonlinear problem with six DOFs, whereas just one corridor observation cannot provide full six DOF constraints. As shown in Figure 2b, assume the calibration is done with all the lines meeting the geometric constraints using just one observation, and the translation parameter along the y axis is still uncertain. Therefore, in order to provide sufficient constraints by the corridor observations, the device must be required to gather data while rotating inside the corridor with different orientations. The specific rotating operation will be stated and discussed in Sections 4.1 and 5.

Calibration Procedure
The entire calibration solution consists of three key points: (1) Line detection; (2) the acquiring of coplanar line pairs and orthogonality line pairs with respect to the coplanarity constraint and the orthogonality constraint, respectively; (3) solving the calibration problem with these line pairs as input.
After the scanned lines are detected from the raw LRF data, it is still unknown which lines lie on the same corridor surface as well as which coplanar line pairs lie on two neighboring corridor surfaces, even when the initial poses of LRFs are given at first. In fact, the problem of getting these line pairs means finding the correct corridor observation based on each group of data. Hence, the line sorting method, the generating of all corridor observation candidates, and the method of finding correct corridor observations were designed to solve this problem. The whole calibration procedure is shown in Figure 3. The detailed explanation of these processes is carried out in Section 3. while rotating inside the corridor with different orientations. The specific rotating operation will be stated and discussed in Sections 4.1 and 5.

Calibration Procedure
The entire calibration solution consists of three key points: (1) Line detection; (2) the acquiring of coplanar line pairs and orthogonality line pairs with respect to the coplanarity constraint and the orthogonality constraint, respectively; (3) solving the calibration problem with these line pairs as input.
After the scanned lines are detected from the raw LRF data, it is still unknown which lines lie on the same corridor surface as well as which coplanar line pairs lie on two neighboring corridor surfaces, even when the initial poses of LRFs are given at first. In fact, the problem of getting these line pairs means finding the correct corridor observation based on each group of data. Hence, the line sorting method, the generating of all corridor observation candidates, and the method of finding correct corridor observations were designed to solve this problem. The whole calibration procedure is shown in Figure 3. The detailed explanation of these processes is carried out in Section 3.

Gathering LRFs data
Line detection using RANSAC Line sorting with a certain order for each LRF in each group of data

Line Detection
A random sample consensus (RANSAC) [36] is used to detect the lines in the 2D points scanned by LRFs. As can be seen in Figure 2a, there exists a discontinued line (line "A-D") due to the dead view zone of LRFs (or due to other reasons such as reflection), and this can be clustered as the same line by RANSAC.
In order to enhance the robustness of detecting lines using RANSAC, some modifications were made on the basis of traditional algorithms: (1) The nearest available distance threshold was added. If a person is holding a device to rotate a device equipped with LRFs during the experiment, it is possible to scan a portion of the human body that is closer to the distance, and the nearest available distance threshold according to the calibration scene can filter out such interference.

Line Detection
A random sample consensus (RANSAC) [36] is used to detect the lines in the 2D points scanned by LRFs. As can be seen in Figure 2a, there exists a discontinued line (line "A-D") due to the dead view zone of LRFs (or due to other reasons such as reflection), and this can be clustered as the same line by RANSAC.
In order to enhance the robustness of detecting lines using RANSAC, some modifications were made on the basis of traditional algorithms: (1) The nearest available distance threshold was added. If a person is holding a device to rotate a device equipped with LRFs during the experiment, it is possible to scan a portion of the human body that is closer to the distance, and the nearest available distance threshold according to the calibration scene can filter out such interference. (2) The farthest available distance threshold was added. First, the common LRF sensors can scan to a distance of tens of meters. If the calibrated scene has only a limited distance or the further scene is too messy, then it is necessary to add the farthest available distance threshold to avoid impact from the further scene. Second, considering the issue of balance (related to the methods in Section 3.4), the detected lines are not allowed to be too long.
(3) The minimum limit of the distance between two sampled points was added. Assuming that the two sampled points are on the same line, the greater the distance between them, the closer the line is to the actual line. On the other hand, it is also considered that when the LRF scans a close-range target, the point density is relatively large due to the fixed angular resolution, and even a short line may have many inliers, so this limitation also limits the interference of the near object to the line detection to some extent.
(4) Traditional RANSAC saves the model whenever it finds enough inliers. However, considering multiple lines should be detected, and inliers are not shared between them, an inner loop with a fixed number of repetitions is added to ensure that lines with more inliers have a higher extracted priority.
The line detection algorithm is shown in Algorithm 1.
Algorithm 1. Line detection based on modified random sample consensus (RANSAC).

Input:
2D points: The number of lines: nL All the lines: Ls The inliers for each line: Inliers Procedure: (1) SC ← Remove the points that are too near (using NVD) or too far (using FVD) from P; (2) Repeat sampling two points p 1 and p 2 from SC within FILT times until the distance between p 1 and p 2 is bigger than SLL; (3) Generate a 2D line model based on p 1 and p 2 : {A, B, C} Ax + By + C = 0, A 2 + B 2 = 1 ; (4) Get the number of points to satisfy |Ax + By + C| < ε (inliers) in SC;

Line Sorting
The lines detected by the method based on modified RANSAC are unordered with respect to the real physical corridor surfaces. The purpose of line sorting is to sort these lines with respect to the thee-surfaces order and to reduce the complexity of finding the correct corridor observation (details are in lines, then one of them is chosen to be the first line, and other lines are set an index between 2 and 4 with respect to the physical order.
The line sorting method is applied as follows: (1) compute the center points of each line; (2) sort the lines by the angle between the vector from zero point to the center point and the vector of the positive x axis direction (as shown in Figure 4); (3) set the line index of the first line as "1st", and infer whether the line with the next index is an opposite line or the previous adjacent line or next adjacent line, and repeat this until each line is set an index.
In the third step, the relationship between two lines is inferred by the vector of the line and the vector from zero point to its center point for each line. Assume v 1 and v 2 are the two vectors of line l 1 and line l 2 , whose line indexes are i 1 and i 2 . If |v 1 × v 2 | ≈ 0, then the two lines are on two opposite surfaces, which means |i 1 − i 2 | = 2, else they are on two adjacent surfaces. Then, if l 1 and l 2 are on two adjacent surfaces, assume u 1 and u 2 are the two vectors from zero point to the center points of l 1 and l 2 . If (u 1 × u 2 )·Z > 0 (Z is the vector of the positive direction of the z axis), then i 2 = mod(i 1 , 4) + 1, otherwise, i 1 = mod(i 2 , 4) + 1. The line sorting method is applied as follows: (1) compute the center points of each line; (2) sort the lines by the angle between the vector from zero point to the center point and the vector of the positive x axis direction (as shown in Figure 4); (3) set the line index of the first line as "1st", and infer whether the line with the next index is an opposite line or the previous adjacent line or next adjacent line, and repeat this until each line is set an index.
In the third step, the relationship between two lines is inferred by the vector of the line and the vector from zero point to its center point for each line. Assume 1 and 2 are the two vectors of line 2 = ( 1 , 4) + 1, otherwise, 1 = ( 2 , 4) + 1.

Generating All Corridor Observation Candidates in Each Group of Data
After the line sorting process, a sorted line set is gotten in each group of data: where is the number of LRFs, and is the subsorted line set, which comes from the sorted lines of LRFi, where denotes the sorted line with an index of in the lines from LRFi. Each LRF can get up to 4 lines in each group of data, which is based on the fact that each LRF can get at most 1 line on each surface of the corridor. Thus, the number of elements in is between 0 and 4. It should be noted that the index of the lines may be not continuous. For example, if there are only two lines detected from LRF2, and they lie on opposite corridor surfaces, then 2 = { 2 1 , 2 3 }, according to Section 3.2.
It is still unknown which line pairs are on the same surface as well as which coplanar line pairs lie on two neighboring corridor surfaces after the above processing. The corridor observation is used to describe this problem.
A corridor observation can be taken as a line container. Specifically, because the corridor has four surfaces, one corridor observation consists of four line sets, where ( = 1,2,3,4) denotes the line set with respect to corridor surface :

Generating All Corridor Observation Candidates in Each Group of Data
After the line sorting process, a sorted line set is gotten in each group of data: where n LRFs is the number of LRFs, and SSL i is the subsorted line set, which comes from the sorted lines of LRF i , where L j i denotes the sorted line with an index of j in the lines from LRF i . Each LRF can get up to 4 lines in each group of data, which is based on the fact that each LRF can get at most 1 line on each surface of the corridor. Thus, the number of elements in SSL i is between 0 and 4. It should be noted that the index of the lines may be not continuous. For example, if there are only two lines detected from LRF 2 , and they lie on opposite corridor surfaces, then SSL 2 = L 1 2 , L 3 2 , according to Section 3.2. It is still unknown which line pairs are on the same surface as well as which coplanar line pairs lie on two neighboring corridor surfaces after the above processing. The corridor observation is used to describe this problem.
A corridor observation can be taken as a line container. Specifically, because the corridor has four surfaces, one corridor observation consists of four line sets, where S a (a = 1, 2, 3, 4) denotes the line set with respect to corridor surface a: In order to get CO, all the lines in SL need to be arranged in the four line containers of the CO. By comparing Equation (4) with Equation (6), it is found that the essence of the problem is how to convert L j i into L a i . In other words, it is how to convert the line index into the corridor surface index with the interval of indexes staying the same. In this way, the lines with the same surface index are coplanar line pairs, and the lines with adjacent surface indexes are on two surfaces that are perpendicular to each other.
Suppose that there are 3 lines from LRF 1 , 2 lines from LRF 2 , and 4 lines from LRF 3 . If the line sequence in each LRF is not being considered, then the number of all the corridor observation candidates is A 3 4 × A 2 4 × A 4 4 = 6912 (it is an arrangement problem, where each LRF can get at most 1 line in each surface of the corridor). However, when the line sequence is considered, and assuming the two lines in LRF 2 lie on two opposite corridor surfaces, then the generating of all corridor observation candidates can be described as putting the lines into the four surfaces (line containers), which is shown in Figure 5.
To get all the corridor observation candidates, the surface indexes of the lines for each LRF should be moved together. If there are no adjacent lines in one LRF, such as LRF 2 here, then the line sequence should be fixed. Otherwise, the line sequence should be double (such as LRF 3 , and the opposite sequence is L 4 , L 3 , L 2 , L 1 ). However, regardless of the double sequences, the direction of movement must be fixed. Thus, there are (1 × 4) × (2 × 4) = 32 (where "1" and "2" stand for a fixed sequence and double sequence, respectively) corridor observation candidates. If there exist adjacent lines of LRF 2 , the number doubles.
In order to get , all the lines in need to be arranged in the four line containers of the . By comparing Equation (4) with Equation (6), it is found that the essence of the problem is how to convert into . In other words, it is how to convert the line index into the corridor surface index with the interval of indexes staying the same. In this way, the lines with the same surface index are coplanar line pairs, and the lines with adjacent surface indexes are on two surfaces that are perpendicular to each other.
Suppose that there are 3 lines from LRF1, 2 lines from LRF2, and 4 lines from LRF3. If the line sequence in each LRF is not being considered, then the number of all the corridor observation candidates is (it is an arrangement problem, where each LRF can get at most 1 line in each surface of the corridor). However, when the line sequence is considered, and assuming the two lines in LRF2 lie on two opposite corridor surfaces, then the generating of all corridor observation candidates can be described as putting the lines into the four surfaces (line containers), which is shown in Figure 5.
To get all the corridor observation candidates, the surface indexes of the lines for each LRF should be moved together. If there are no adjacent lines in one LRF, such as LRF2 here, then the line sequence should be fixed. Otherwise, the line sequence should be double (such as LRF3, and the opposite sequence is L4, L3, L2, L1). However, regardless of the double sequences, the direction of movement must be fixed. Thus, there are (1 × 4) × (2 × 4) = 32 (where "1" and "2" stand for a fixed sequence and double sequence, respectively) corridor observation candidates. If there exist adjacent lines of LRF2, the number doubles. If there is a special case where no lines are detected in the point cloud of one of the LRFs, then this observation is abandoned. Otherwise, finally, the total number of all possible observations is as seen in Equation (7): where ℵ ( = 1,2,3) is related to whether the lines from LRF2 and LRF3 need to be moved in a double sequence. If there is one line or two opposite lines detected in LRFi, then ℵ = 0. Otherwise, ℵ = 1.
In addition, although the calibration is working with pairs of LRFs, considering all the lines from three LRFs into the generation makes the assessment of the corridor observation more stable.

Finding the Correct Corridor Observation in Each Group of Data
Among all the corridor observation candidates generated, a corridor observation assessment method based on a coplanarity assessment method is used to assess them, and the corridor observation with lowest error is taken as the correct corridor observation.
In Reference [33], the authors did the calibration by scanning perpendicular planes, which generated all the two possible corner observations for each pair of LRFs (each LRF gets two lines If there is a special case where no lines are detected in the point cloud of one of the LRFs, then this observation is abandoned. Otherwise, finally, the total number of all possible observations is as seen in Equation (7): where ℵ i (i = 1, 2, 3) is related to whether the lines from LRF 2 and LRF 3 need to be moved in a double sequence. If there is one line or two opposite lines detected in LRF i , then ℵ i = 0. Otherwise, ℵ i = 1. In addition, although the calibration is working with pairs of LRFs, considering all the lines from three LRFs into the generation makes the assessment of the corridor observation more stable.

Finding the Correct Corridor Observation in Each Group of Data
Among all the corridor observation candidates generated, a corridor observation assessment method based on a coplanarity assessment method is used to assess them, and the corridor observation with lowest error is taken as the correct corridor observation.
In Reference [33], the authors did the calibration by scanning perpendicular planes, which generated all the two possible corner observations for each pair of LRFs (each LRF gets two lines totally on the corner), and then they used RANSAC to filter out the incorrect corner observations based on the initialized relative poses of LRFs. This meant that at least half of the observations were totally incorrect from the original input observations, and the inliers were different at each calibration experiment even with the same data and the same parameters due to the corner observation selection method, which led to an unstable calibration result. In this method, with the line sorting result and the generating of all corridor observation candidates above, the correct corridor observation, which means all the coplanar line pairs and the neighboring surface pairs are all correct, can be gotten by using the corridor observation assessment method, which is also based on the coplanarity assessment method.

Coplanarity Assessment Method
The line detection procedure generates the inliers of the lines, so it is easy to get the two end points of each line. The volume of the tetrahedron, whose vertices are the four end points of the two lines, is used to assess the coplanarity of the two lines. The two lines are more inclined to be a coplanar line pair if their tetrahedron is small, as shown in Figure 6 (the box has no relation to the method, and it is to make the figure be more like a 3D one). totally on the corner), and then they used RANSAC to filter out the incorrect corner observations based on the initialized relative poses of LRFs. This meant that at least half of the observations were totally incorrect from the original input observations, and the inliers were different at each calibration experiment even with the same data and the same parameters due to the corner observation selection method, which led to an unstable calibration result. In this method, with the line sorting result and the generating of all corridor observation candidates above, the correct corridor observation, which means all the coplanar line pairs and the neighboring surface pairs are all correct, can be gotten by using the corridor observation assessment method, which is also based on the coplanarity assessment method.

Coplanarity Assessment Method
The line detection procedure generates the inliers of the lines, so it is easy to get the two end points of each line. The volume of the tetrahedron, whose vertices are the four end points of the two lines, is used to assess the coplanarity of the two lines. The two lines are more inclined to be a coplanar line pair if their tetrahedron is small, as shown in Figure 6 (the box has no relation to the method, and it is to make the figure be more like a 3D one). Assume a , b , and c are the three vectors from one vertex to the other three vertices in one tetrahedron, and then the volume of the tetrahedron can be computed easily by the below equation with very little computation: Considering the endpoints of the lines are the points scanned by LRFs, they may not lie on the detected lines, which can produce a small error. Thus, the endpoints in the inliers are replaced by the projection of them onto the line.

Corridor Observation Assessment Method
With all possible corridor observations generated by the method in the previous section, each of them can be assessed by the sum of all the volume of tetrahedrons in all the four corridor surfaces: Considering the endpoints of the lines are the points scanned by LRFs, they may not lie on the detected lines, which can produce a small error. Thus, the endpoints in the inliers are replaced by the projection of them onto the line.

Corridor Observation Assessment Method
With all possible corridor observations generated by the method in the previous section, each of them can be assessed by the sum of all the volume of tetrahedrons in all the four corridor surfaces: where n w denotes the number of lines in the corridor surface w, the function Φ represents the sum of the volumes of the tetrahedrons formed by all the line segment pairs that can be formed by lines from l 1 to l n w , and V CO is the final assessment score of the corridor observation. The coplanarity assessment score represents the error formed by the condition that the two lines are taken as a coplanar line pair, and the corridor assessment score represents the error formed by the condition that the line sets in CO are taken as a corridor observation. Thus, the corridor observation with the smallest sum volume of tetrahedrons is taken as the correct observation finally.

Calibration Using All Correct Corridor Observations
One correct corridor observation can be gotten after the assessment process based on one frame of data from all LRFs. The input of the calibration solution is a frame sequence with different poses, so many corridor observations with correct coplanar line pairs and correct perpendicular corridor surface pairs can be gotten. Finally, the calibration can be converted into a nonlinear optimization problem based on the coplanarity constraint and orthogonality constraint, which is expressed as: where N is the number of corridor observations, j is the index of the LRF to be calibrated, k is the index of the LRF to be referenced, a indicates the surface index of the corridor, and ω x i (the superindex x stands for a or {a , a + 1}) is the weight of the corresponding residual from CO i , which is computed through linearization from a first-order Taylor approximation of the error functions.
The resulting nonlinear least squares problem is solved iteratively using Levenberg-Marquardt: where m is the number of the LRFs, k is the index of the iteration, µ k j (j = 2, . . . m) stands for the rotation increment represented by the exponential map e u j R j , ∆T k m stands for the translation increment, λ is the Levenberg-Marquardt damping factor, H is the Hessian matrix (a symmetric matrix of dimension 6(m − 1)), and g is the gradient (a column vector of dimension 6(m − 1)) of the cost function. As for the specific calculation of H, g, and ω x i , please refer to Reference [33]. After the solving using Levenberg-Marquardt, the rotation matrix is updated using the update exponential map [37] as from an initial guess for the relative poses of LRFs, which may be obtained from a rough measurement of the rig.

Simulation
Simulation experiments were based on the LRF scanning geometry model and the corridor geometry model. By setting the initial poses for LRFs and the rotational motion trajectory time series of the device as the input of the simulation, the calibration result could be gotten. The true LRF poses were set in the scanning geometry, so they could be taken as the true values in evaluating the calibration accuracy.
The scanning model of LRFs is based on HOKUYO UTM-30LX 2D LRF, whose characteristics are shown in Table 1. In order to make the simulated observation data close to the actual data, Gauss noise with σ = 0.03 m [38] was added to the simulated data. Rotation operation is important for the calibration because it is directly related to whether the collected data has sufficient geometric constraints. Considering that some devices may be heavy rather than very convenient for rotating in actual use, Table 2 lists several sets of rotations that can be simulated and applied in almost all situations. The device pose in operation F (random pose) at each moment in the simulation system was random, but it could be used as a random rotation operation in reality. In addition, the rotation sequence of the Euler angles was "z-x-y" (yaw-pitch-roll), and the start pose of the device was the same as the world reference pose in Figure 2b. Table 2. List of rotation operations under simulation: "sin()" is the sine function, and "rand(m,n)" is a function to generate an m-by-n matrix with numbers within [0, 1]. The geometric model of the corridor was set to a simple rectangular tubular structure with an infinite length. First, the width and height of the corridor were set to 2 m. The simulated true poses of LRF 2  Each operation gathered 360 frames of data, which was taken as the input of the calibration process. After 10 repeated calibrations (the simulated data was regenerated at each repeat), the error distribution of the calibrated three Euler angles and three translation values of LRF 2 based on operations B, C, D, E, and F were calculated and are shown in Figure 7, but not the results based on operation A. Rotation operation is important for the calibration because it is directly related to whether the collected data has sufficient geometric constraints. Considering that some devices may be heavy rather than very convenient for rotating in actual use, Table 2 lists several sets of rotations that can be simulated and applied in almost all situations. The device pose in operation F (random pose) at each moment in the simulation system was random, but it could be used as a random rotation operation in reality. In addition, the rotation sequence of the Euler angles was "z-x-y" (yaw-pitchroll), and the start pose of the device was the same as the world reference pose in Figure 2b. Table 2. List of rotation operations under simulation: "sin()" is the sine function, and "rand(m,n)" is a function to generate an m-by-n matrix with numbers within [0,1]. The geometric model of the corridor was set to a simple rectangular tubular structure with an infinite length.  Since operation A was only the rotation of the device in the yaw angle and without pitch angle or roll angle, the data of each frame of LRF1 could only scan the wall on the left and right sides, so At the same time, the calibration results based on the operations B, C, D, E, and F were very close to the true value. Although the accuracy based on the five operations appeared to be lightly different from Figure 7, in fact the ease of the operation could be considered more. For example, operation C and operation D were too complicated, so they are not recommended in general. However, if the device is too large or inconvenient to rotate 360 • , operation E can be considered. Of course, the actual operation is not limited to these, as long as it is capable of providing sufficient constraints.

Operation Name t Sequence Pitch Sequence (°) Roll Sequence (°) Yaw Sequence (°)
The error distribution of 10 repeated simulation experiments with different numbers of observations are shown in Figure 8. Based on operation B, frame sample intervals of 1, 5, 10, and 40 were set to get 360, 72, 36, and 9 observations, respectively, from the original generated 360 frames of simulated data. As can be seen from the figure, in general, the greater the number of observations, the higher the accuracy of the calibration results were. , which deviated from the set true roll angle by more than 4° and deviated from the set true z translation by more than 15 mm. At the same time, the calibration results based on the operations B, C, D, E, and F were very close to the true value. Although the accuracy based on the five operations appeared to be lightly different from Figure 7, in fact the ease of the operation could be considered more. For example, operation C and operation D were too complicated, so they are not recommended in general. However, if the device is too large or inconvenient to rotate 360°, operation E can be considered. Of course, the actual operation is not limited to these, as long as it is capable of providing sufficient constraints.
The error distribution of 10 repeated simulation experiments with different numbers of observations are shown in Figure 8. Based on operation B, frame sample intervals of 1, 5, 10, and 40 were set to get 360, 72, 36, and 9 observations, respectively, from the original generated 360 frames of simulated data. As can be seen from the figure, in general, the greater the number of observations, the higher the accuracy of the calibration results were.
In order to verify that the method was applicable to corridors of different dimensions, the corridor dimensions with width to height ratios of 1:1, 2:1, and 1:2 were each set under the simulation experiment. The simulated corridor width and height corresponding to these ratios were [2 m, 2 m], [4 m, 2 m], and [2 m, 4 m]. Similarly, the error distribution after 10 repeated times based on operation B and a 5-frame sample interval is shown in Figure 9. Therefore, the different aspect ratios of the corridor had little effect on the calibration.  In order to verify that the method was applicable to corridors of different dimensions, the corridor dimensions with width to height ratios of 1:1, 2:1, and 1:2 were each set under the simulation experiment. The simulated corridor width and height corresponding to these ratios were [2 m, 2 m], [4 m, 2 m], and [2 m, 4 m]. Similarly, the error distribution after 10 repeated times based on operation B and a 5-frame sample interval is shown in Figure 9. Therefore, the different aspect ratios of the corridor had little effect on the calibration. Sensors 2018, 18, x FOR PEER REVIEW 13 of 22

Real Data
The 3D indoor mapping device shown in Figure 1 was taken as the calibration device. The device was placed on a trolley to easily do the rotation movements. Figure 10 shows the experiment environment, which is easy to find in many buildings, such as an office building. The device employed three HOKUYO UTM-30LXes (the characteristics of the LRF are shown in Table 1), and the extrinsic calibration of LRF1 and LRF2, and LRF1 and LRF3, were done automatically after the gathering of data.  Figure 11 shows an example of the line detection result and the correct corridor observation selection result. The color of the lines should be noted. The method in Section 3.2 was used to sort the lines detected in each LRF, and they are displayed in red, green, blue, and magenta in order. It is apparent from the right-down figure in Figure 11 that the line segments scanned by the three LRFs could not be perfectly overlapped into a rectangle based on the initial extrinsic parameters.

Real Data
The 3D indoor mapping device shown in Figure 1 was taken as the calibration device. The device was placed on a trolley to easily do the rotation movements. Figure 10 shows the experiment environment, which is easy to find in many buildings, such as an office building. The device employed three HOKUYO UTM-30LXes (the characteristics of the LRF are shown in Table 1), and the extrinsic calibration of LRF 1 and LRF 2 , and LRF 1 and LRF 3 , were done automatically after the gathering of data.

Real Data
The 3D indoor mapping device shown in Figure 1 was taken as the calibration device. The device was placed on a trolley to easily do the rotation movements. Figure 10 shows the experiment environment, which is easy to find in many buildings, such as an office building. The device employed three HOKUYO UTM-30LXes (the characteristics of the LRF are shown in Table 1), and the extrinsic calibration of LRF1 and LRF2, and LRF1 and LRF3, were done automatically after the gathering of data.  Figure 11 shows an example of the line detection result and the correct corridor observation selection result. The color of the lines should be noted. The method in Section 3.2 was used to sort the lines detected in each LRF, and they are displayed in red, green, blue, and magenta in order. It is apparent from the right-down figure in Figure 11 that the line segments scanned by the three LRFs could not be perfectly overlapped into a rectangle based on the initial extrinsic parameters.  Figure 11 shows an example of the line detection result and the correct corridor observation selection result. The color of the lines should be noted. The method in Section 3.2 was used to sort the lines detected in each LRF, and they are displayed in red, green, blue, and magenta in order. It is apparent from the right-down figure in Figure 11 that the line segments scanned by the three LRFs could not be perfectly overlapped into a rectangle based on the initial extrinsic parameters.  Figure 12 shows the contrast between an incorrect corridor observation and a correct corridor observation with the same group of data and the same initial poses of LRFs. When the observation was not the correct one, which means that the "coplanar lines" were not in fact on the same surfaces, the sum of the volumes of all the tetrahedrons was greatly larger than the correct one. Hence, with this assessment method, the inputted correct coplanar line pairs and neighboring surface pairs could be ensured to be correct as long as the initial poses were not far from the true poses.
The  Figure 13 shows the update trajectories of the three Euler angles and the three translations of LRF2 during calibration. The magnitude of the parameter update gradually decreased and gradually approached the target solution as the iteration progressed.
The purpose of the extrinsic calibration was to fusion all the point clouds from multiple LRFs into a global reference frame. Because the corridor was cuboid-shaped, if the calibration result was accurate, then projecting the fused point cloud onto a plane perpendicular to the corridor was a rectangle formed by a plurality of 3D line segments overlapping together. Figure 14 shows the comparison before and after calibration in this case. Therefore, after the calibration, the point clouds from three LRFs could be well merged into a cuboid-shaped corridor, so that the accuracy of the calibration result could be visually verified. Figure 11. The line detection results and the selected correct corridor observations. Left-top, right-top, and left-bottom are the line detection results of LRF 1 , LRF 2 , and LRF 3 , respectively, and the sequence of the lines are plotted by red, green, blue, and magenta. Right-bottom is the corresponding correct corridor observation based on the initial poses (from the view of the corridor direction). The lines at the same surface are plotted by the same color, and the order of colors is still red, green, blue, and magenta. Figure 12 shows the contrast between an incorrect corridor observation and a correct corridor observation with the same group of data and the same initial poses of LRFs. When the observation was not the correct one, which means that the "coplanar lines" were not in fact on the same surfaces, the sum of the volumes of all the tetrahedrons was greatly larger than the correct one. Hence, with this assessment method, the inputted correct coplanar line pairs and neighboring surface pairs could be ensured to be correct as long as the initial poses were not far from the true poses.
The initial poses of LRF 2 Figure 13 shows the update trajectories of the three Euler angles and the three translations of LRF 2 during calibration. The magnitude of the parameter update gradually decreased and gradually approached the target solution as the iteration progressed.
The purpose of the extrinsic calibration was to fusion all the point clouds from multiple LRFs into a global reference frame. Because the corridor was cuboid-shaped, if the calibration result was accurate, then projecting the fused point cloud onto a plane perpendicular to the corridor was a rectangle formed by a plurality of 3D line segments overlapping together. Figure 14 shows the comparison before and after calibration in this case. Therefore, after the calibration, the point clouds from three LRFs could be well merged into a cuboid-shaped corridor, so that the accuracy of the calibration result could be visually verified.  To verify the repeatability of the method, more experimental results are shown in Tables 3 and  4. Among them, Table 3 is the calibration result based on the device in Figure 1 and experiment scene A, and a total of three sets of data with each set of data was repeatedly calibrated 10 times to obtain the average value and standard deviation of the results. Considering that some devices are large like the device in Reference [39], they may be inconvenient to rotate in small scenes like scene A. Therefore, the configuration of the three LRFs was reconfigured and then recalibrated in scene B ( Figure 15). The width and height of the corridor in scene A were 1.7 m and 2.4 m, respectively. Because the corridor was long enough, the three datasets in Table 3 were gathered based on operations B, C, and F. The length of the corridor in scene B was only 6.4 m, and its width and height were 2.2 m and 2.3 m, respectively. Thus, the three datasets in Table 4 were gathered based on operation E.  To verify the repeatability of the method, more experimental results are shown in Tables 3 and  4. Among them, Table 3 is the calibration result based on the device in Figure 1 and experiment scene A, and a total of three sets of data with each set of data was repeatedly calibrated 10 times to obtain the average value and standard deviation of the results. Considering that some devices are large like the device in Reference [39], they may be inconvenient to rotate in small scenes like scene A. Therefore, the configuration of the three LRFs was reconfigured and then recalibrated in scene B ( Figure 15). The width and height of the corridor in scene A were 1.7 m and 2.4 m, respectively. Because the corridor was long enough, the three datasets in Table 3 were gathered based on operations B, C, and F. The length of the corridor in scene B was only 6.4 m, and its width and height were 2.2 m and 2.3 m, respectively. Thus, the three datasets in Table 4 were gathered based on operation E. To verify the repeatability of the method, more experimental results are shown in Tables 3 and 4. Among them, Table 3 is the calibration result based on the device in Figure 1 and experiment scene A, and a total of three sets of data with each set of data was repeatedly calibrated 10 times to obtain the average value and standard deviation of the results. Considering that some devices are large like the device in Reference [39], they may be inconvenient to rotate in small scenes like scene A. Therefore, the configuration of the three LRFs was reconfigured and then recalibrated in scene B (Figure 15). The width and height of the corridor in scene A were 1.7 m and 2.4 m, respectively. Because the corridor was long enough, the three datasets in Table 3 were gathered based on operations B, C, and F. The length of the corridor in scene B was only 6.4 m, and its width and height were 2.2 m and 2.3 m, respectively. Thus, the three datasets in Table 4 were gathered based on operation E.      The initial poses of the LRFs in Table 3 were the same as above, and the initial poses of LRF 2 and LRF 3 in Table 4 Tables 3 and 4, the deviation of the calibration result was kept substantially within 1 • and 10 mm. In addition, it could be found that the deviation of the pitch angle was larger than the deviation of the roll angle and the yaw angle, and the deviation of the translation in the x direction was larger than the deviation of the translation in the x direction and the translation in the z direction. This phenomenon was normal for Table 3 because it was the same as the error distribution based on operation B, C, and F (simulation results in Figure 7). But for Table 4, it was because it was difficult to provide a relatively large pitch angle for the device in actual operation, so that the constraint in the y direction was weak, and the constraint in the pitch angle was also weak. Thus, the error distribution was more like the error distribution based on operation B.
To further prove the stability of the method, two batches of calibration experiments were implemented based on the first dataset in Table 3. First, almost all the conditions of the mismeasurement by hand for the initial poses of LRFs were taken into consideration. Assuming that each of the initial Euler angles had three possibilities with deviations of −10 • , 0, and +10 • , and each of the initial translations had three possibilities with deviations of −100 mm, 0 mm, 100 mm, then there were 3 6 = 729 combinations of all considered deviation possibilities. Taking the calibration of LRF 2 as an example, the referenced accurate pose could be gotten from Table 3, and the result distribution of the 729 times of calibration is shown in Figure 16. There were only 19 outliers among all the results, with most of them centered on a small range. In addition, from a practical point of view, the 10 • and 100 mm error could be avoided by a manual measurement.
Furthermore, another 729 times of calibration were implemented without deviations, which meant all the initial extrinsic parameters came from the centered results in Figure 16. As shown in Figure 17, the calibration results were all stably distributed around an accurate result. Hence, the calibration method was stable under multiple tests.

Discussion
The proposed extrinsic calibration method of 2D LRFs uses a common cuboid-shaped corridor as the experiment environment, which is very common in indoor buildings. The method in Reference [33] was not very suitable for indoor devices due to corners that can meet the requirement being scarce in most of cities, especially in indoor environments. Whether it is a corner or a corridor, it should be of sufficient length and have no material that reflects light or transmits light on its surfaces. Obviously, this method is more suitable under indoor conditions.
Although the method of solving nonlinear optimization problems and the geometric constraints used are the same as the method in Reference [33], the calibration scene used and the processes from the acquiring of the data to the finding of corridor observations are different. First, as for the calibration scenes, the authors in Reference [35] made two extrinsic calibration solutions, one of them based on scanning a flat plane and another one based on scanning perpendicular planes. The former one needed at least three LRFs, and the latter one needed two or three perpendicular planes. The method in this paper is based on scanning a cuboid-shaped corridor, which is with four planes. Second, the line detection in this method was modified based on traditional RANSAC as well as the coplanarity assessment method, and the corridor assessment method was proposed to make sure the inputted observations for the nonlinear solver are correct, resulting in a stable calibration result. These methods can also be extended to other application scenarios.
It should be noted that the device cannot be rotated too fast in actual operation. Since the 2D LRF ranges based on the rotation of a laser beam, each laser point on the scanning plane is not obtained at the same time as other laser points. Thus, if the device moves or rotates fast, the gathered points in each frame are not the same 3D plane (it is the same time in simulation). This is one of the sources of the calibration error, actually. If it moves or rotates too slowly, the amount of data collected is very large, and then frame sampling is required when the calibration is performed, or otherwise the processing time is long. Therefore, the speed of the rotating should not be fast, but it does not need to be too slow.
Future work may focus on reducing the method's requirements for accuracy of the initial poses. In general, manual measurement errors are generally guaranteed to be within 10 cm because the three translation parameters are independent of each other. However, since the three Euler angles are not independent of each other, even the different Euler angle combinations can generate the same orientation matrix, so if the method of manually measuring the pose angles is inappropriate, it is likely to cause the initial angles to deviate more than 10 • .
Moreover, devices equipped with multiple LRFs are often equipped with an IMU, just like the one shown in Figure 1, and the extrinsic calibration of the IMU is often necessary. After the extrinsic calibration of LRFs, the relative pose relationship between them is determined so that they can be considered as a rigid sensor, meaning that they can be used as a 3D laser scanner together. Thus, the calibration of the extrinsic parameters between the IMU and the LRFs is easier than the calibration of the extrinsic parameters of the IMU and a single LRF.

Conclusions
An extrinsic calibration method for multiple 2D LRFs by using an existing cuboid-shaped corridor as the reference is proposed. It does not need special artificial targets in the environment and does not need supervised data association. Its only requirement is rotating the LRFs to scan a common indoor cuboid-shaped corridor.
The coplanarity constraint and the orthogonality constraint from an indoor corridor are used for finding the accurate relative poses of LRFs. In order to provide the nonlinear solver correct input, a modified RANSAC algorithm, the line sorting method, the coplanarity assessment method, as well as the corridor assessment method are proposed to improve the stability of the finding of the correct corridor observation. Among them, the modified RANSAC algorithm and the coplanarity assessment method may also be useful for other applications. The following work may focus on improving the robustness of the initial pose deviation. This may be done by adding other useful geometric constraints. At the same time, based on this work and based on the result of this calibration, the extrinsic calibration of the IMU will also be a future research plan.
Author Contributions: D.Y. designed and implemented the calibration solution and wrote this paper; J.L. put forward many suggestions for the experimental scheme and helped to modify the paper; T.W. provided a lot of theoretical and code debugging help; K.L. helped do the calibration experiment; J.H. and R.C. helped to proofread and checked the paper.

Conflicts of Interest:
The authors declare no conflicts of interest.