THE USE OF A WIDE FOV LASER SCANNING SYSTEM AND A SLAM ALGORITHM FOR MOBILE APPLICATIONS

: This paper presents the assessment of a wide-angle laser scanner and a simultaneous localisation and mapping (SLAM) algorithm to estimate the trajectory and generate a 3D map of the environment. A backpack platform composed of an OS0-128 Ouster (FoV 90°x360°) laser scanner was used to acquire laser data in an area with urban and forest features. Web SLAM, an online SLAM algorithm implemented by Ouster, Inc., was used to estimate the trajectory and generate a 3D map in a local reference system. Then, the 3D point clouds were transformed into the ground coordinate system with a rigid body transformation. Three datasets were used: (I) the entire trajectory consisting of forwarding and backwards paths, (II) only forward path, and (III) only backward path. Visual analysis showed a double mapping error in the point cloud of dataset I. Therefore, the point cloud registration was performed only for datasets II and III, achieving a centimetric accuracy, which is compatible with the OS0-128 laser scanner accuracy (~ 5cm).


INTRODUCTION
Laser scanning systems provide 3D point clouds of the environment, which can be obtained with different technologies (Vosselman and Maas, 2010). These active systems can be used either in static or mobile modes. Mobile laser scanning (MLS) provides a faster and more efficient 3D data acquisition to map larger areas than stationary terrestrial laser scanners (TLS) (Kukko et a., 2012) and with fewer occluded areas. However, the trajectory of the mobile platform must be known accurately to guarantee a suitable level of accuracy of the point cloud . Different types of mobile platforms integrating a laser scanning system, such as cars, trolleys, boats, and backpacks, can be seen in the literature (Kukko et a., 2012). The use of backpack MLS has increased due to its better mobility compared to wheeled vehicles, which cannot be used in narrow passages or areas with dense vegetation. An example of this kind of system can be seen in Lehtomäki et al. (2019), who used a backpack platform to map power lines in a rural environment, which usually has rough terrain. This mobile mapping system was composed of a Faro Focus 3D 120S laser scanner and a navigation system to track the trajectory. The same approach was also used by (Liang et al., 2014) for mapping forest plots.
Nowadays, lightweight and compact laser systems are available in the market, which has increased their use in portable MLS. Blaser et al. (2019) presented a backpack composed of two Velodyne VLP-16 laser scanners, a Ladybug 5 camera, and an inertial measurement unit (IMU) for 3D data acquisition in underground environments. Shao et al. (2020) also used a Velodyne VLP-16 laser scanner mounted on a backpack to generate a 3D model of the forest environment without using GNSS (global navigation satellite system) and IMU sensors. The Velodyne VLP-16 laser scanner weighs only 830 g, with a field of view (FoV) of 30° in the vertical and 360° in the horizontal. A laser scanning system with wider vertical FoV can be useful in several applications.
A wide FoV enables more features to be mapped in a single scan, reducing the occlusions in point clouds due to different viewpoints illuminating the same object. The increased redundancy of observations with a wider FoV laser scanner provides a better geometry to calculate its trajectory indirectly. A wider FoV sensor is also suitable for forest and agriculture areas for a complete mapping of the trees since corridors are narrow and trees are tall, and many occlusions are likely to occur. In addition, a wide-angle laser scanner system can speed up 3D mapping (Liang et al., 2014). Onda et al. (2018) proposed a method for dynamic obstacle recognition in urban areas and compared the performance of two laser scanning systems: a system composed of three Hokuyo UTM-30LX FEW laser units resulting in an FoV of 97.8° in the vertical and 360° in the horizontal; and the Velodyne HDL-32e, which has an FoV of 40°x360°. The results showed that dynamic objects were better detected with the wider FoV system. However, the use of three laser units increases the system's complexity due to the integration and synchronisation of all laser units to obtain a point cloud.
The solid-state sensors technology made feasible the introduction of laser scanning systems with only a single laser unit and wide FoV. A solid-state laser scanning system consists of an array of laser diodes emitting laser pulses simultaneously, which are reflected by the surface objects and detected by a receiver sensor, such as CMOS (complementary metal-oxide semiconductor). This configuration enables more pulses to be emitted simultaneously, increasing the density and the FoV in a compact unit. The Velodyne VelaDome, Hesai PandarQT, and Ouster OS0 sensors are some examples available in the market, which have 180°, 104.2° and 90° vertical FoV, respectively, all having 360° horizontal FoV. The performance of laser scanners with wide vertical FoV in mobile applications needs to be more explored.
In this paper, it is presented a feasibility study of the combined use of a laser scanning system with wide FoV (OS0-128 -FoV 90°x360°) and processing with a simultaneous localisation and mapping (SLAM) algorithm (Web SLAM) to compute the trajectory and generate the point cloud with no support from GNSS data. A mobile backpack platform composed of an OS0-128 Ouster laser scanner and a portable computer was used to acquire data with Ouster Studio software.

SLAM: OUSTER WEB SLAM
The simultaneous localisation and mapping (SLAM) problem has been a widely discussed subject for robot navigation (Durrant-Whyte and Bailey, 2006). The acronym SLAM was first mentioned by Durrant-White et al. (1996) in a review paper about the localisation of autonomous guided vehicles. SLAM aims to incrementally build a consistent 3D model of an unknown environment while estimating the orientation and position of the mobile platform (Durrant-Whyte and Bailey, 2006). SLAM technique encompasses two steps: (1) Front-end (or local SLAM), in which sequential data is used to estimate the sensor orientation and position, and (2) Back-end (or global SLAM), in which known areas are revisited for the loop closure optimisation, to refine the localisation of trajectory and the generated map of the environment (Candena et al., 2016).
The SLAM technique was first developed for mobile robotic navigation with a laser scanner. Therefore, SLAM with a laser scanning system has been widely investigated (Thrun et al., 2000, Nüchter et al., 2015, Lehtola et al., 2016. Ouster company developed the Web SLAM (OUSTER, 2019), which is an online SLAM solution using data acquired by Ouster's sensors. The trajectory of a moving platform with a wide FoV laser scanner can be estimated with three approaches. In the first one, each complete turn of the sensor generates a panoramic (360°) 3D frame by considering that the pulses are emitted at the same station. Then, the sequentially acquired 360º laser frames can be aligned by finding interest points with a matching technique, and the trajectory is estimated at discrete points ( Figure 1.b). This case can be a good option for a slowmoving platform since it considers that each frame is collected from a static station. In the second option, a further improvement is incorporated, by calculating local trajectory with IMU data (Figure 1.c), which can be external or integrated into the laser scanners, such as the Ouster sensors. The trajectory and the point cloud are estimated continuously with SLAM in the third option. The trajectory is locally modelled by a time-dependent polynomial that models the position and attitude changes during a short period (Figure 1.d). Figure 1 illustrates an example of a mobile laser scanner acquisition using an Ouster laser scanner with 1024 rotational steps in a 360° turn and the three approaches to estimate the trajectory of the mobile platform. Figure 1.a shows a top view simulation, in which the laser scanner acquisition starts in t0 (horizontal angle = 0°), acquiring the object p0. The same object is mapped again in t1000 as p1000. The 360° horizontal turn finish in position t1023 (horizontal angle = 360°), mapping p1023 while the platform moves. Figure 1.b presents the first approach to estimate the trajectory as discrete points, which considers a 360° laser frame as if it was taken from a single station. Since the platform is moving, this simplification causes a displacement (d) in the points. The displacement in the points depends on the platform velocity, the rotation frequency, and the horizontal angle. Considering a backpack platform carried by a person with a velocity of 1 m/s, with a laser rotation frequency of 10 Hz, d will be approximately 10 cm. If the rotation frequency increases to 20 Hz with the same velocity, d will decrease to 5 cm. This simplified approach can be suitable for slow-moving platforms because the displacements d will be more significant for higher velocity, increasing the errors in the point cloud. Figure 1.c shows the improvements when estimating the trajectory considering the correction of 360°laser frames with IMU data. Figure 1.d shows the trajectory estimated continuously with SLAM. The Web SLAM (OUSTER, 2019) uses the third approach. The trajectory is estimated continuously by updating the initial values calculated from the internal IMU data for short sequences based on point correspondences. The trajectory is parameterised as a spline function with the combination of 3 rotations and 3 translations.
Finding corresponding points in laser points clouds is challenging since the points do not exactly correspond to each other. Therefore, points from a physical surface of a point cloud can be used to match with interpolated points of another point cloud, for instance, with the ICP method, which minimises point to plane distances.

OS0-128 OUSTER LASER SCANNING SYSTEM
Ouster's laser scanning systems use vertical-cavity surfaceemitting lasers (VCSEL), a CMOS sensor with single-photon avalanche diodes (SPADs) array, and a set of micro-optics ( Figure 2). The VCSEL emits precise beams of light (multibeam) only where the pulse detector is pointing. The SPAD detects the returned pulse, incorporated in a silicon CMOS sensor, replacing many analogue components (Pacala, 2018).
The set of micro-optics directs the laser light, increasing the detector efficiency. Figure 2 shows the optical module of Ouster sensors composed of a SPAD digital receiver SoC, VCSEL laser array and the micro-optics. In addition, Figure 2 shows the laser scan direction (clockwise) and the rotation centre, which is not coincident with the emission and detection sensor. Therefore, changes in the mathematical model of the laser scanner are required to cope with this translation.
The Ouster sensors operate in 850 nm wavelength (OUSTER, 2020), which is unusual. Generally, laser systems emit laser light at 905, 940, 1550 nm or 530 nm (bathymetric systems) wavelengths. The wavelength of Ouster sensors was chosen due to the lower atmospheric absorption, and it is more sensitive in CMOS sensors. Ouster manufactures three laser scanners with 360° horizontal FoV: OS0 (ultra-wide view), OS1 (mid-range) and OS2 (longrange) sensors. All Ouster sensors have an internal IMU with three-axis gyroscopes and three-axis accelerometers. In this work, we have used OS0 with 128 channels (OS0-128). The OS0-128 laser scanner has uniform beam space in a 90° vertical FoV and emits 128 pulses simultaneously, which are arranged in four columns, as shown in Figure 3. The intrinsic vertical and horizontal angle between each beam varies, respectively, from 45° to -45° and 11° to -11°. These angles are obtained from a calibration file released by the manufacturer. Figure 3 illustrates the multi-beam principle for the OS0-128 sensor. The rotation rate and the horizontal resolution are configured by the operator. The rotation rate can be tuned to 10 or 20 Hz, and the horizontal resolution can be set to 1024 or 2048 ticks (number of rotational steps in a single sensor turn). Figure 4 shows a point cloud obtained in a single turn with OS0-128 with a frequency of 10 Hz and a horizontal resolution of 1024 ticks. Detailed information on the OS0-128 sensor and the internal IMU are presented in Table 1.  The Ouster laser scanners started recently to be mentioned in the literature. A detailed analysis of the Ouster OS1-64 laser scanner was presented by Glennie and Hartzell (2020). The geometric accuracy and systematic error sources of each of the laser scanners were examined concerning the precision of range, incidence angle, the reflectivity of the target surface, and systematic errors. The range accuracy was 5.6 cm, higher than that stated by the manufacturer. This accuracy is suitable for many applications, such as agricultural monitoring. A systematic error was observed, which could be due to a misalignment between the horizontal encoder and the spinning axis.

OS0-128
The Ouster laser scanners have been used in mobile mapping systems. Alsadik and Remondino (2020) used an unmanned aircraft system (UAS), equipped with a laser scanner. Three multi-beam laser scanning systems were, alternatively used, and one of them was an Ouster OS1-16 laser scanner. Tsiourva and Papachristos (2020) presented two mobile platforms with Ouster laser scanners, which were used to evaluate their proposed approach for robotic perception. In their work, they used an Ouster OS1-64 sensor integrated with a ground vehicle and an OS0-128 sensor attached to a flying robot. Regarding a terrestrial mobile mapping system, Alsadik (2020) presented a study about the angular inclination of the Ouster OS1-64 and Hesai Pandar 64 laser scanners for data acquisition in urban environments. The results showed that the ideal inclinations were 35° and 45° for Ouster OS1-64 and Hesai Pandar 64, respectively. Mishra et al. (2020) presented the calibration of a mobile mapping system composed of OS1-64 Ouster and Velodyne VLP-32 laser scanners and two Bastel cameras.
Some techniques for registration of point clouds and extracting features from point clouds obtained with an Ouster laser scanner have been presented by some authors. Streiff et al. (2021) used data collected with Ouster OS1-64 and OS0-128 to evaluate the proposed method of 3D keypoints extraction in point clouds. They proposed the combined use of intensity and range. The OS0-128 laser scanner was used by Bernreiter et al. (2021) to acquire data in an urban environment and assess the method for global registration of 3D point clouds, which does not require point correspondences and initial values. Shan et al. (2020) evaluated their proposed approach for producing high-resolution point clouds based on deep learning, using real data obtained with OS1-64.
These papers have presented the use of the Ouster laser scanners in different mobile platforms (aerial and terrestrial) and techniques for registration and features extraction from the point cloud obtained with Ouster laser scanners. Most of them have used the OS1 laser scanner and only a few works have evaluated the OS0 laser scanner, in which the wide FoV can improve the estimation of the trajectory, by increasing the redundancy of observations. Therefore, the use of the OS0-128 laser scanner with further processing with a SLAM technique needs to be more explored.

Backpack mobile laser scanning system.
The OS0-128 laser scanner was assembled in a backpack mount with a 45° inclination (Figure 5.a) to enable pulses to reach the top of trees and ground, as Alsadik (2020) suggested. The backpack platform was carried by an operator while walking in the environment to be mapped ( Figure 5.b). The laser data was acquired with a 10 Hz frequency and a horizontal resolution of 1024 ticks. A portable computer was used to acquire the laser data with Ouster Studio software. GNSS trajectory data could not be collected due to obstructions from trees. Figure 5 shows (a) the OS0-128 mounted with 45° inclination and (b) the backpack MLS used to acquire the data.

Test area and data acquisition
The experimental data were acquired in an urban forested area with a trajectory length of approximately 80 m ( Figure 6). Three datasets were generated and analysed in this paper: (I) the entire trajectory, which includes the forward and backward paths, with loop closure, and splitting the data in (II) forward and (III) backward paths. Figure 6 shows the test area and the backpack trajectories: in yellow, the forward path and in red, the backward path. Merging both trajectories represent the entire trajectory of dataset I. Figure 6. Location of the test area and the trajectories: the dataset I was acquired with the entire trajectory represented by both lines, and the line in yellow is the forward path (Dataset II) and in red is the backward path (Dataset III).

Reference data
The control points for georeferencing the point clouds were measured in a dense point cloud generated with high-resolution aerial images acquired by a UAV. Due to the trees' cover, GNSS signals were weakened or blocked and thus, it was not feasible to survey ground control points (GCPs). The UAV used to acquire the aerial images was a DJI Phantom 4 Pro. The images were processed with the Agisoft Metashape software. The 3D coordinates of 16 GCPs were surveyed using a GNSS receiver, in which 5 were used as control points and 11 as checkpoints. The dense point cloud was generated in high mode with a GSD of, approximately 3 cm (Figure 7). The reference system of the generated dense point cloud was WGS84, UTM projection, fuse 22S. Then, the 3D coordinates of the points were converted to a geodetic local reference system to avoid UTM distortions. Five GCPs, which could be identified both in the laser and in the reference photogrammetric point cloud, were used to compute rigid body transformation parameters.

Data processing
The datasets were processed in the Ouster Web SLAM online application (OUSTER, 2019), generating point clouds in a local reference system. Then, the point clouds were transformed into the ground coordinate system with 5 GCPs measured (points in yellow in Figure 7) in the generated dense point cloud. The transformation parameters were estimated by the least-squares method (Mikhail and Ackerman, 1976), considering variable weights for the ground points, depending on the identification confidence. A standard deviation of 0.05 m was set for GCPs with 3D known coordinates (yellow triangles). Altimetric points (1D coordinate -yellow circle), were also measured to ensure a better geometric distribution of the points. For the 1D points, the standard deviation was set to 1.5 m for planimetric coordinates (X and Y), and 0.05 m was for Z-coordinate.
The assessment of point cloud accuracy can be performed with different approaches . In this paper, the laser point clouds obtained with OS0-128 and Web SLAM were assessed visually, analysing the reconstruction of some objects, such as a car and a light post. In addition, independent checkpoints (3Dred triangles and 1Dred circles) were used to assess the accuracy of the point cloud after georeferencing to the ground coordinate system. The CloudCompare software was used to visualise the laser and dense point cloud and to measure the control and checkpoints. Figure 7 shows the generate dense point cloud that covers the test area and the localisation of GPCs (yellow) and checkpoint (red). The triangles represent the 3D points and circles the 1D points.

Figure 7.
Top view of the generated dense point cloud that covers the test area and the localisation of GCPs (in yellow) and checkpoints (in red) used in the georeferencing process of datasets II and III.

RESULTS AND DISCUSSIONS
The wide FoV and 45° inclination of the OS0-128 sensor allowed a complete mapping of the environment, including tall trees and light posts. Figure 8 shows the laser point clouds obtained with the dataset (a) I, (b) II and (c) III, and some features (trees, light post, etc.) in each point cloud. Due to the high density, the point clouds were subsampled for better visualisation. Figure 9 shows the reconstruction of a car and a light post in the point cloud obtained from datasets (a) I, (b) II and (c) III. The laser point cloud obtained with dataset I (Figure 9.a) presents a double mapping of some objects, such as a car and a light post. This can be explained by a drift in the estimated trajectory due Figure 8. Point clouds, in a local reference system, generated in Web SLAM with data set (a) I, (b) II and (c) III. The scalar fields represent the coordinate h. In (a) and (b), the scalar field is different from (c) because the beginning of the trajectories for datasets I and II was the same, while dataset III was in opposite direction.
The International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, Volume XLIII-B1-2022 XXIV ISPRS Congress (2022 edition), 6-11 June 2022, Nice, France to a very sharp trajectory turn, which can happen mainly when using only SLAM and IMU data, without GNSS data or external control. The loop closure solution was not enough to achieve an accurate correction, most probably due to insufficient or wrong matches. The double mapping could be avoided with a slower and smoother turn on the trajectory or an external source of control. The car and light post were correctly mapped in the point clouds from dataset II (Figure 9.b) and III (Figure 9.c). The point cloud georeferencing was performed only for datasets II and III. Considering an a priori sigma nought of 0.05 m, the a posteriori values after the least-squares adjustment were 0.045 m and 0.032 m for datasets II and III, respectively. The observations residuals in the adjustment were approximately 5 cm, which is compatible with the range accuracy of the OS0-128 laser scanner. External analysis was performed by measuring checkpoints. A 3D checkpoint and three 1D checkpoints were measured in the georeferenced point cloud from dataset II. RMSE of the 3D point was 5.6 cm. The average RMSE of the 1D points was 7.8 cm. For dataset III, two 3D checkpoints and four 1D checkpoints were used to assess the georeferencing. An average of RMSE of 3.5 cm and 9.5 cm were achieved by 3D and 1D points, respectively.

CONCLUSION
This paper describes the features of a wide-angle laser scanner system and presents an assessment of the point cloud obtained with a SLAM algorithm. A backpack platform composed of the OS0-128 Ouster (FoV 90°x360°) laser scanner was used to acquire the datasets. The trajectory and the point cloud were generated with the Web SLAM algorithm. Three datasets were compared to assess the performance of Web SLAM. In dataset I, some objects had a double mapping. This mapping error can be due to the inaccurate solution of IMU when turning to the backward path and insufficient or wrong matches. Therefore, some improvements in the matching process of the Web SLAM algorithm are required to achieve a consistent point cloud with loop closure. One alternative is including the intensity of returned pulse as a feature in the matching process, as suggested by Streiff et al. (2021).
The georeferencing of point clouds obtained with datasets II and III were performed with 5 ground control points measured in a dense point cloud, achieving a centimetre level accuracy. This accuracy is compatible with the OS0-128 laser scanner features. Therefore, the results showed that this technique can be used for mobile applications, such as forest and urban mapping.
The assessment of a point cloud obtained with other Ouster laser scanners (OS1 and OS2) and Web SLAM is recommended for future works. Furthermore, the three presented methods should be compared and the influence of platform velocity in the generation of a point cloud should be evaluated. Other sensors, such as GNSS receivers, can be embedded on the mobile platform to improve the estimation of the trajectory and to provide a loop closure for SLAM when the GNSS signal is available.