A FAST AND ROBUST ALGORITHM FOR ROAD EDGES EXTRACTION FROM LIDAR DATA

Fast mapping of roads plays an important role in many geospatial applications, such as infrastructure planning, traffic monitoring, and driver assistance. How to extract various road edges fast and robustly is a challenging task. In this paper, we present a fast and robust algorithm for the automatic road edges extraction from terrestrial mobile LiDAR data. The algorithm is based on a key observation: most roads around edges have difference in elevation and road edges with pavement are seen in two different planes. In our algorithm, we firstly extract a rough plane based on RANSAC algorithm, and then multiple refined planes which only contains pavement are extracted from the rough plane. The road edges are extracted based on these refined planes. In practice, there is a serious problem that the rough and refined planes usually extracted badly due to rough roads and different density of point cloud. To eliminate the influence of rough roads, the technology which is similar with the difference of DSM (digital surface model) and DTM (digital terrain model) is used, and we also propose a method which adjust the point clouds to a similar density to eliminate the influence of different density. Experiments show the validities of the proposed method with multiple datasets (e.g. urban road, highway, and some rural road). We use the same parameters through the experiments and our algorithm can achieve real-time processing speeds.


INTRODUCTION
In recent years, laser terrestrial Mobile Mapping Systems (MMS) have been developed for the digital mapping.The applicability of MMS are various (road control, urban security, virtual world, entertainment, etc.) due to its performance, contactless, high precision and cost efficient 3D data acquisition capability.Laser scanners onboard terrestrial based moving vehicles are an important part of MMS, and widely used in collecting high quality 3D data.The 3D data can assist road authorities in effective management of road networks and ensure maximum safe driving condition for road users.Extracting road from the 3D data is a key step to implement these applications.Obviously, the road edge is a fundamental feature and its efficient extraction is a challenging research topic due to various road and its boundaries (e.g. Figure 1).

BACKGROUND
Road extraction have been examined by many studies from airborne and terrestrial LiDAR data.The methods are mostly based on the identification of planar or smooth surfaces and their attributes, e.g.height differences, surface normal vector variations, and intensities.Clode et al. (2004) presented a hierarchical classification technique to classify the LIDAR points into road or non-road from airborne laser scanner data.The algorithm dealt with using as much of the recorded laser information as possible including height and intensity.Yuan et al. (2008) proposed a road-surface abstraction algorithm which used fuzzy cluster method to cluster points and abstracted straight lines by their location and slope angle.A current referenced horizontal could be acquired by comparing several continuous scan lines and then the algorithm abstracted obstacles on roadsurface area.Lam et al. (2010) achieved road extraction in 3D by modelling the road as a dynamic system of connected planes, computed by plane fitting of local point clouds.Smadja et al. (2010) presented a two-step method, which was based on the local road shape.Different uses of the RANSAC algorithm were employed, for road sides rough estimation in the first place, then for unlikely candidates elimination.Zhang (2010) proposed a LIDAR-based road and road-edge detection method.The road candidate region was identified by filtering techniques, and the candidate region was determined by pattern recognition techniques.The identified 3D road edge points were then projected on a ground plane to estimate the road kerbs.McElhinney et al. (2010) detailed a LIDAR based road edge extraction algorithm which is applicable to both urban and rural road sections with geospatial data.Ibrahim and Lichti (2012) presented an approach to the detection and extraction of the road curb and the street floor from unorganized 3D point clouds captured by Mobile terrestrial laser scanners.The pipeline consisted of a sequence of five steps: organizing the input irregular 3D point cloud and nearest neighbour search; density based segmentation to extract the ground segment; morphological analysis to refine the ground segment; derivative of Gaussian to detect the curb; solving the travelling salesman problem to form a closed polygon of the curb and point-inpolygon test to extract the street floor.Kumar et al. (2013) presented an algorithm to extract left and right road edges from terrestrial mobile LiDAR data.The algorithm was based on a combination of two modified versions of the parametric active contour or snake model.However, most of the above road extraction approaches have been developed for urban road environments, and these methods fail to provide an efficient and robust solution due to poor performance and parameter-sensitivity.In the next section, we describe our road edge extraction algorithm which attempts to address the limitations of these approaches.

ROAD EDGE EXTRACTION ALGORITHM
The proposed method consists of a sequence of steps.The framework of this method is illustrated in Figure 2.There are four key steps: Partitioning point clouds into cross sections according to the GPS time of points and vehicle trajectory; Pre-processing point clouds to denoise and eliminate the influence of rough roads; Extracting candidate road edge points by detecting different plane using RANSAC algorithm; Refining road edge by global consistency.The following sections describe the steps in details.

Pre-processing
Terrestrial LiDAR point clouds may contain too much points, which affect performance.These points include outlier points and non-uniform density points.We adopt the method proposed by Rusu et al. (2008), which uses point neighbourhood statistics to filter outlier data.Further, the algorithm of down-sampling is used to adjust the point clouds to a similar density to eliminate the influence of different density.

Candidate Road Edge Points Extracting
Smadja et al. ( 2010) assumed that there exists a main polynomial corresponding to the road, and the RANSAC algorithm with two thresholds is used to approximate the road by two parabolas.The first parabola indicates the expected outliers rate in the points set, which is directly related to the iterations number, and the second one specifies the distance above which a point is considered as an outlier.To our knowledge, the road may be flat or not, and so two thresholds are insufficient to deal with variety of road conditions.We improved the method and the proposed method has three key steps:  The set of inliers is called rough plane.Secondly, multiple refined planes Πi are extracted from rough plane using the same method with different thresholds βi.Thirdly, rough road edge points could be extracted by combination of rough plane and each refined plane.We search inliers near an outlier.If there exist an inlier, and then the outlier is considered to be a road edge point.Therefore, we can get multiple rough road edges due to multiple refined planes.At last, the best candidate road edge points are extracted by comparing the energy Εs about smoothness for different rough road edge points.The energy can be described as where σ = variance ei = candidate road edge point ti = nearest trajectory point to ei The segmentation are presented on figures 5(b), 5(c), 5(d) and 5(e).It can be seen that the road edge points are well extracted, although some points could be wrong classified.The proposed method is quite robust and almost no additional assumptions.

Refined Road Edge Extracting
The detected candidate road edge points are discontinuous and do not contain topology.It is necessary to track and refine these points.The proposed method uses the geometric patterns of road to refine the road edge points, which has two key steps: (2) Ri is the nearest point to Pi.The distance between Li and Ri is considered to be a temporary road width.Lastly, the largest number of the temporary road width is the actual road width, and the corresponding points are road edge points.The results are presented on figure 6.

Refining by Road Continuity:
We construct an equation to refine candidate road edge points based on road continuity.The equation is described as where  = threshold (  ,  +1 ) = slope of continuous two points ( 0,   ) = the sum of the Euclidean distances of all consecutive points We have four steps to solve the equation.Firstly, the candidate road edge points are classified into segments by cluster extraction based on the Euclidean distance.Secondly, we fit multiple line segments in each candidate road edge segments.Thirdly, the line segments can be connected based on direction and position.Lastly, the longest line segments after connecting is considered to be the best road edges, and the corresponding points are the best road edge points.The results are presented on figure 7.

Datasets
We selected four types of road, which covered highway, urban, rural and national primary roads.The processed data was acquired using Leador's MMS.As shown in figure 8, the road consisted of grass-soil edges, kerb edges and fence edges.The scene contains many low fences and cars that are geometrically similar to curbs.Furthermore, the scene contains numerous grass strips, trees, poles, buildings and electric wires, which make the road extraction and delineation more complicated.

Parameters
We selected these road sections to demonstrate the ability of our algorithm to extract distinct road edges with fixed parameters.To extract rough plane the parameter α is 0.5m, and to extract refined plane the parameter βi is 0.01m, 0.02m, 0.03m, 0.04m, 0.05m, 0.06m, 0.07m and 0.08m respectively.

Results and discussion
In order to validate the quality of the proposed road edges extraction algorithm, we computed the completeness and correctness quality measures, which are widely used for the evaluation of road extraction algorithms (e.g.Heipke et al., 1997;Clode et al., 2004;Kumar et al., 2013): Buffer zones around the manually digitised left and right edges, which are considered as ground truth in each road section and then the automated extracted left and right edges are labelled as inside or outside the buffer zone (Heipke et al., 1997;Zhou and Vosselman, 2012;Kumar et al., 2013).The buffer width parameter was set to 0.2m for application.The completeness and correctness values were calculated for the automated extracted road edges in each test data as shown in The proposed algorithm was able to successfully extract the left and right road edges in these datasets.In the case of urban 3, the completeness values is less than 70%.The primary reason for this was that too many vehicles parked by the roadside as shown in figure 9.In the case of national primary, the completeness values is less than 90%.This was due to almost no height differences at some road edges as shown in figure 10.We also collect the computation time.The single-threaded average performance is about 150 milliseconds per meters on our platform (3.60Ghz Core i7 CPU, 16.0GB of RAM, C++ implementation), and multithreaded parallel processing could improve the performance.

CONCLUSIONS
We have proposed an efficient method to extract road edges from the dense and huge volume point clouds.Our algorithm was based on the assumption that the LiDAR data elevation can be used to distinguish the road surface from the road edges.The successful extraction of road edges from the multiple types of road validates our proposed algorithm.
Although the proposed method can extracts 3D road edges from the test datasets, the road conditions are critical for the performance of the proposed method.Particularly, obscure road edges and too many obstructions by roadside have an effect on the detection of road edges, and it is difficult for the proposed method to deal with these situations.

Figure 1 .
Figure 1.Various road and its boundaries We present a fast and robust algorithm which has been developed for extracting road edges in multiple road environments from terrestrial mobile light detection and ranging (LiDAR) data.Section 2 describes the research background and previous road edges extraction methods from LiDAR data.Section 3 describes

Figure 2 .
Figure 2. Framework of extracting road edge

Figure 3 .
Figure 3. Partitioning terrestrial LiDAR point clouds into overlapping sequential sections


Eliminating the influence of rough road Approximating the road by a flat instead of parabola  Using RANSAC algorithm for multiple thresholds instead of two 3.3.1 Eliminating the influence of rough road: To eliminate the influence of rough roads, a technology which is similar with the difference of Digital Surface Model (DSM) and Digital Terrain Model (DTM) is used.The technology has three key steps:  Divide the point clouds into small grid  Calculate the minimum value along z-axis for each grid  Each point clouds in grid minus the minimum z value Figure 4 shows results of eliminating rough road.

Figure 4 .
Figure 4. Eliminating the influence of rough road based on road width: We construct an equation to refine candidate road edge points based on road width.The equation is described as { max (  )   (  ,   ) =   (3) where   ,   = left and right candidate point   = road width (  ,   ) = the Euclidean distance (  ) = the number of point We have three steps to solve the equation.Firstly, the candidate road edge points could been divided into two parts by vehicle trajectory, namely, the left set SL and right set SR. Secondly, each point Li in SL could find a nearest trajectory point Pi.Thirdly, we find a point Ri in SR, which must satisfy two conditions: (1) distance of Ri to line LiPi is less than a threshold; Figure 5. Rough segmentation

Figure 9 .
Figure 9. Cars parked at the roadside

Table 1 .
Completeness and correctness values were calculated for the automated extracted road edges