Next Article in Journal
Methodological Ambiguity and Inconsistency Constrain Unmanned Aerial Vehicles as A Silver Bullet for Monitoring Ecological Restoration
Previous Article in Journal
The Need for a Standardized Methodology for Quantitative Assessment of Natural and Anthropogenic Land Subsidence: The Agosta (Italy) Gas Field Case
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

An Improved Ball Pivot Algorithm-Based Ground Filtering Mechanism for LiDAR Data

1
College of Civil and Transportation Engineering, Shenzhen University, Shenzhen 518060, China
2
Shenzhen Key Laboratory of Spatial Smart Sensing and Services, Shenzhen University, Shenzhen 518060, China
3
Key Laboratory for Geo-Environment Monitoring of Coastal Zone of the National Administration of Surveying, Mapping and GeoInformation, Shenzhen University, Shenzhen 518060, China
*
Author to whom correspondence should be addressed.
Remote Sens. 2019, 11(10), 1179; https://doi.org/10.3390/rs11101179
Submission received: 10 April 2019 / Revised: 11 May 2019 / Accepted: 16 May 2019 / Published: 17 May 2019

Abstract

:
Automatic ground filtering is an essential step for Digital Elevation Model (DEM) generation, which has significant application value. However, extraction and classification of ground points from the Light Detection and Ranging (LiDAR) data, especially in multitudinous terrain situations, is a challenging task because it is difficult to determine the set of optimal parameters for removing various non-ground features. In this paper, a new ground filtering technique based on an improved Ball Pivot Algorithm (BPA) is proposed. At the beginning, the LiDAR point cloud dataset was divided into different subsets based on the 2D regular grid. The lowest point in each grid was selected as the seed point to build a single-layer surface. After that, the improved BPA was executed to remove points on the higher location. Then, the rest of the points were calculated and selected as a new seed point according to the spatial relationship with the initial surface. Finally, non-ground points were filtered by means of improved BPA traversing all the grids. Our experimental results on the Benchmark dataset provided by the International Society for Photogrammetry and Remote Sensing (ISPRS) Working Group III/3 showed high accuracy (with a mean kappa coefficient over 80%) in terms of completeness, correctness, and quality for DEM generation. The experimental results demonstrated the proposed method is robust to various terrain situations, as it is more effective and feasible for ground filtering.

Graphical Abstract

1. Introduction

Digital Elevation Model (DEM) generation is an important research problem in the remote sensing area, with good application prospects in the fields of smart city, 3D mapping, and virtual reality. Compared with traditional photogrammetric methods, Light Detection and Ranging (LiDAR) shows its advantages, especially in height change detection, so that it is gradually being adopted as the primary technique to produce DEM. The laser-scanned three-dimensional cloud of points not only includes bare ground, but also contains buildings, vehicles, trees, etc. DEM generation requires a filtering step, which separates the points that belong to the ground from the ones that do not. Therefore, the quality of the ground filtering algorithm will substantially impact the accuracy and visual effects of the DEM.
Nowadays, increasingly more researchers have focused on ground filtering issues for DEM generation [1,2,3]. In fact, the methods used to solve this problem vary from machine-learning-based filters and Triangulated Irregular Networks (TIN) ones to filters that rely on morphological properties. In addition, the integration of LiDAR data and other data sources for land cover classification has gained popularity [4]. However, most of the existing works either require a large number of samples for model training or need to set inexplicit parameters that vary with different terrain type and point density. Furthermore, the ground filtering methods are commonly applied to large areas, which include densely forested areas, urban areas, sharp ridges, discontinuous terrains, and so forth. It is still a challenging task to set limited parameters for the purpose of removing a variety of non-ground features in all terrain situations [5].
With the rise of deep learning, more scholars are applying neural networks to solve ground filtering problems [6,7,8]. Chen developed a Multi-resolution Hierarchical Classification (MHC) algorithm, which was designed to directly and iteratively identify ground points from the LiDAR point cloud in three levels of hierarchy [9]. However, this method also suffered from difficulties in classifying ground points in steep slope areas and discontinuities with complex landscapes. Hu proposed a method for ground point extraction by using convolutional neural networks (CNN). In this method, the classification of a point with spatial context has been treated as the classification of an image [10]. Moreover, other deep learning architectures (e.g., generative adversarial networks and recurrent neural networks) have also been proven to be efficient for feature learning and classification in high-dimensional data, such as Hyperspectral Image Classification (HIS) [11,12]. In general, the deep learning structural designs are able to extract high-level, hierarchical, and abstract features. Nevertheless, these algorithms need enough sample data for model training, which will be not only impractical but also laborious.
The Triangulated Irregular Network (TIN)-based filter method has two representative works, which are the Adaptive TIN Models (ATM) method [13,14] and progressive TIN densification (PTD) [15]. Based on the updated ground points of each iterative process, some studies make adaptive thresholds rather than a global one [16,17]. To overcome detection failures of the terrain points on break lines and step edges, Lin proposed a segmentation-based filtering (SBF) approach, which combines a point cloud segmentation method and the classic PTD framework [18]. To counteract the lack of using the relationship between the adjacent terrain and the points to be judged in the point cloud filtering, a filtering algorithm based on adjacent triangles in TIN was proposed by Quan [19]. In addition, Zeng presented a filtering method for near-infrared laser scanning data that exploits the principle of entropy maximization as the optimization objective [20]. However, the TIN-based filters cost a lot of time in establishing the TIN structure because of the large number of points. Moreover, they rely heavily on threshold options that change with different situations.
The morphological filters are based on the idea of mathematical morphology [21], which has difficulty in removing different sizes of objects with a fixed window size [22]. Nowadays, a growing trend has been focused on the design of innovative morphological operators. For instance, Li et al. [23] proposed an improved Top-Hat filter and Susaki [24] offered an adaptive morphological operator. Moreover, a progressively employed strategy is the mixed algorithms, combining the morphological filter and other filter methods. Mongus and Zalik use data decomposition alone. In their work, differential attribute profiles and a new mapping schema for the estimation of standard deviations were used, whilst the proposed method is based on differential morphological profiles (DMPs) [25,26]. Hui combines the progressive morphological filtering and multi-level interpolation filtering algorithm to improve the applicability of morphology-based filtering [27]. However, the morphology-based filtering may be ineffective or unreliable in terrains with a variety of non-ground objects.
Surface approximation filters first applied linear prediction for filtering LiDAR data to iteratively approximate the terrain surface with weighted linear least squares interpolation [28]. However, the implementation of this method requires a priori knowledge of a number of parameters, such as the delay factor, the adaptation parameter, and the filter order. An iterative multiscale algorithm called multiscale curvature classification (MCC) is presented by Evans and Hudak to classify LiDAR measurements [29]. To overcome the problem of application failure on a terrain with steep slopes and large variability, Lee and Younan developed a combined modified linear prediction and an adaptive processing method [30]. Recently, Zhang et al. brought a cloth simulation filter (CSF) into DTM generation for dealing with sharply changing terrain by using a few easy-to-set integer and Boolean parameters [31]. Some true three-dimension methods have been presented and applied recently. Based on a reconstructed binary voxel-based data (BVD) model, Wan developed a 3D ground filtering (V3GF) model for separating ground points from non-ground ones, by selecting the lowest voxels with a value of 1 as ground seeds and then labeling them and their 3D-connected set as ground voxels [32]. The surface-based filters were widely used in DEM generation. Nonetheless, the surface method tends to fail in preserving terrain details and small non-ground object classification. Overall, these new methods have proved their competency in building reliable DEMs, even under various challenging terrains. However, limitations still exist. The ground filtering methods are usually applied to large and diverse areas. Most of the approaches proposed require proper parameters or thresholds for deriving DEMs under different terrain situations. Their utility is rather diminished in DEM generation by the complexity of the parameter adjustment.
Our goal in this paper is to develop a ground filtering model based on 3D alpha shapes (α-shape) with fixed and robust parameters to apply to different environments and conditions, which will significantly reduce labor cost and increase practicability. The Ball Pivot Algorithm (BPA) and TIN construction are two main ways to implement the α-shape, which has been widely used to find the outline of an unorganized set of data points [33,34,35,36]. Recently, the TIN construction method has been popular in LiDAR data processing and ground filtering. Demir use the α-shape algorithm to vectorize the roof outlines based on LiDAR data [37]. Paavo produced an alternative TIN model for stone detection [38]. However, there are still limits. On the one hand, it is difficult to find a perfect value of alpha to exclude the points that reflect the detailed surface. For this problem, Wu proposed an adaptive α-shape algorithm [39]. However, the algorithm can only consider a 2D profile, which loses the 3D spatial information. On the other hand, even if the alpha shape radius is chosen suitably, it is still hard for the TIN construction method to divide the ground part from the 3D point clouds due to the hollow formed by TIN construction in bare ground regions, which severely impedes the application of the α-shape algorithm in 3D space.
In this paper, a novel filtering method is proposed to enhance the efficiency and accuracy of ground filtering under varied terrain conditions, which combines the BPA and spatial sorting methods. The BPA is further improved so that only the bottom points are considered in the calculation as the ground points and no 3D TIN construction is required. The proposed method not only effectively reduces the computation, but also avoids the loophole caused by the single-layer point cloud inability to construct the tetrahedron in 3D TIN. The applicability of the method is proved in the Benchmark dataset provided by the ISPRS Working Group III/3, and results show a moderate performance in terms of the average total error. Our contribution in this paper can be summarized as follows:
(1) A novel automatic method for ground filtering is proposed, which does not rely on the model training or complex parameters adjustment. Once verified by standard data, the proposed method can keep working in a relatively stable manner, even when the environment changes, as it is more effective and feasible for ground filtering.
(2) An improved BPA is designed in the proposed filtering model, which directly extracts bottom boundary points without the process of constructing a 3D TIN model, and effectively solves the problem of output loss in bare ground regions.
The organization of this paper is as follows. Section 2 introduces the details of the main method and the limitations of BPA. The area of interest and data set is covered in Section 3. Section 4 reports the experimental setup and discusses the experimental results. In Section 5, the conclusions and future work are presented.

2. Methods

2.1. Overview

The main idea of the proposed method is identifying bottom points directly based on the improved BPA. Firstly, the raw point cloud was divided into different sub datasets by using 2D regular grids, and a pre-operation was designed to remove outlier points. Then, the boundary points were extracted by improved BPA. The details of the proposed filtering algorithm are illustrated in Figure 1.
Firstly, the raw point cloud dataset was divided into different sub datasets by 2D regular grids according to the horizontal position of each point. Then, the points in a same grid are sorted by elevation in ascending order. Once the outlier points are removed, the lowest point in each grid is collected to build a single-layer surface (initial surface) by using the strategy of 2D TIN. By improving the BPA in a relatively large scale, a point cloud at a higher location can be excluded from the surface. Meanwhile, the initial surface is adjusted according to the deletion of relative higher points, and the distance between each point and its nearest facet is calculated. Then, points with small distances from the initial surface are selected as the new seed point. The improved BPA is applied to search ground points from those starting points iteratively. Finally, non-ground points are filtered by traversing all the grids.

2.2. BPA and Its Limitation for Point Cloud Filtering

The BPA is one of important ways to implement alpha-shape, which treated as a linear approximation of the original shape was designed for shape reconstruction from an unorganized finite set of points [34]. The main idea of BPA is putting a circle on the point set and rolling it along the outside of the points in 2D space. If two points in dataset are tangential to the circle and no other points in the circle, the two points are considered as boundary points. In 3D space, the circle is replaced by a ball and the two points become three.
In terms of its definition, α-shape ( ) is the boundary shape consisting of selected points from the original point set ( S ). The resulting boundary shape is determined by a positive parameter ( α ). The formula can be described as follows.
= F ( S , α )
where α is the reciprocal of the planimetric Euclidean distance between the current point and its next neighbor.
α = 1 d i s t ( S i , S j )
where d i s t ( S i , S j ) is a function to calculate the planimetric Euclidean distance between S i and S j [35]. The BPA starts by putting a ball in contact with three points (forming thus a seed triangle). The ball with a radius of r is rotated around two of these three points; it remains in contact with the two points and rotates around the axis they form until it touches another point to form another seed triangle [40]. The alpha-shape algorithm works properly in searching the surface anchor points for relative even point clouds, but it is difficult to find a perfect alpha value α (or a ball with a certain radius r ) that does not exclude too many surface points that reflect the detailed surface. Besides, the alpha adaptive shape without qualified seed ground points will consume a lot of computation to adapt the size of the ball repeatedly [39]. Therefore, the alpha shape algorithms for ground point identification and segmentation in 3D space are limited by the computational complexity. Even if the alpha shape radius is chosen properly, it is still hard for the traditional algorithm to realize ground filtering from the 3D point clouds because of the hollow problem in the bare ground area, such as the hollow formed by TIN construction in the bare ground region (Figure 2b).

2.3. Improved Ball Pivoting Algorithm Based on Spatial Sorting

In the 3D scene, the BPA is usually used to reconstruct the 3D surface of the stereo object represented by point clouds. The failure becomes more likely as the damage of the 3D TIN construction due to unachievable tetrahedron establishment in the bare-ground region (Figure 2b). To solve this problem, an improved ball-pivoting algorithm based on spatial sorting was proposed. In this algorithm, we consider three basic types of point, each of which defines a characteristic: seed point, auxiliary point, and candidate points (shown in Figure 3). We now explain these basic types: (1) Seed point is the original ground point for searching nearby points and also the important reference for determining the other points type; (2) candidate point refers to a point which that be selected as a ground point if a certain spatial relationship with a seed point is satisfied; (3) auxiliary point is the third point of the spatial triangle to support the 3-D sphere, which has a minimum distance and the minimum vertical angle relative to the seed point. As shown in Figure 4, the ground points searching strategy can be described as the following steps. The specific implementation procedure is described in Algorithm 1.
Algorithm 1: the improved ball-pivoting algorithm for ground point filtering
Input: A set of points Q .
Output: ground points G and none-ground points E .
While Q is not empty:
(1)
Identify the lowest point or select points with less distance than a threshold φ to a base surface in the set Q , add these points to the initial points collection G .
(2)
For iterations G i G , initialize a set N :
  Select nearby points by 3D distance of 2 r , then add to the set N .
(3)
  If N is empty, continue the iteration Step(2).
  Else If N is not empty:
(4)
    Sort points n i N in ascending order.
(5)
    For iterations m i in the sorted N as an auxiliary point, and temporarily exclude m i from N :
(6)
      Sort N by the following three quantifications in ascending order. Define a BOOL flag _hasFind_ with default value 0.
(7)
      For iterations p i in the resorted N as a candidate point:
(8)
        Build a triangle ϑ by G i , m i , and p i in 3D space;
(9)
        Check the validities of ϑ .
(10)
        If validities==1:
(11)
          Set the value of _hasFind_ with 1. Remove p i from N , and add m i and p i to the set G , replace m i with p i , and continue the iteration Step(7).
(12)
        End If
(13)
      If _hasFind_== 0
(14)
        Return m i to the set N . continue the iteration Step(5).
(15)
      End If
(16)
  End If
(17)
Reture G and E .
A point is chosen as the searching seed in the point dataset. This seed point is the lowest point or with less distance than threshold φ to the base surface. Once no further seed point is searched from the primary seed point, this primary seed will be excluded from the ground.
The nearby points are selected by a 3D distance 2 r from the seed point (or by the quantity n ). If the nearby points are selected successfully, they will be sorted in ascending order by the following two quantifications (Step (4)): (a) The distance d between the seed point and nearby points; (b) the profile angle v between the vertical direction and the direction of the seed point towards nearby points.
The auxiliary point is detected by the minimum distance and the minimum vertical angle. Meanwhile, a candidate points list is sorted by the following three quantifications in ascending order (Step (6)): (a) The horizontal angle h between the direction of the seed point towards the auxiliary point and the direction of the seed point towards nearby points; (b) the distance d between the seed point and nearby points; (c) the profile angle v between the vertical direction and the direction of the seed point towards nearby points.
The spatial triangle is built by the seed point, auxiliary point, and candidate point, and is returned by the iterator to the sorted list. The validity of the spatial triangle can be checked, including (Step (9)): (a) The non-collinearity of the three points; (b) the profile angle θ between the predefined vector and the upward normal vector S of the spatial triangle facet must be less than a given limitation, for instance 55°; (c) all other nearby points could be checked if the points are located under the 3D triangle facet inside of the ball; d) no points should be in the half bottom of the ball that was cut in half.
Once the candidate point passes all these validity checks, it will be considered as a new auxiliary point, and this process will return to Step (5). When the process goes through the whole list, all the selected points can be treated as the new seed points and become Step (2) iteratively, until there is no more new seed points.
All these processes and parameters can be represented by this formula:
g = F s ( S , r , φ , θ )
where F s is the whole algorithm, including the two filtering stages. The result g is the final ground points set. In this algorithm, θ are usually set as constant values. The parameter of r is determined by the largest object above ground in the study area and in terms of double average point-spacing. The parameter of φ is dynamic for different terrain environments.
The seed point is selected according to whether its distance to the initial surface is lesser or equal to the threshold φ , unless there is no initial surface yet. The profile angle can be calculated from the normal direction of one facet in the initial surface, as shown in Figure 3. The spatial triangle consists of the seed point, auxiliary point, and candidate point. Under the spatial triangle, if the dark region formed by 3D spheres and triangles contains no other points, all three points of the spatial triangle are considered ground points, and serve as the seed point for the next search.

3. Area of Interest and Data Set

The performance of the underside reconstruction filtering was tested by using the Benchmark dataset provided by the International Society for Photogrammetry and Remote Sensing (ISPRS) Working Group III/3 to quantitatively evaluate the performance of different filters and identify developing directions for further research [16]. These samples are located in the Vaihingen/Enz test field in south Germany and Stuttgart city center. They cover diverse feature objects and contain 15 samples, with average point-spacing of 1.0–1.5 m in urban areas (from sample 11 to sample 42) and 2.0–3.5 m in rural areas (from sample 51 to sample 71) [41]. As shown in Table 1, the main terrain characteristics of those samples can be summarized by two groups, named A and B.
The outputs, points classified as bare-earth, and object type after the classification process were compared with the true primary classes. All points were labelled as correct bare-earth, type I error, type II error, or correct object. For comparison with other methods, four accuracy indicators for classification algorithms, namely omission error, commission error, total error, and kappa coefficient, were still adopted to access the filtering performance of the proposed method in this paper [9].

4. Experimental Results and Discussion

4.1. Experimental Results

The aforementioned filtering algorithm has been implemented using Visual C++ programming language and all the parameters can be specified by the user on the command line. The sample dataset was divided into two groups in terms of the average point-spacing, as the dense group included samples from sample 11 to sample 42 and the sparse group included samples from sample 51 to sample 71.
The BPA is executed twice in the proposed method. The first time we have filtered the large buildings and objects on the ground. The value of r 1 is set according to the approximate size of the largest non-ground object in the experimental area ( r 1 = 20   m , 30   m , 40   m ). The second time we have filtered the details on the ground. So, the value of r 2 is set based on the average point distance of the raw point dataset. In samples 11–42, the average point distance is 1 to 1.5 m. Thus, the value of r 2 is twice the middle value of the distance ( r 2 = 2.5   m ). In a similar way, r 2 is equal to 5   m in samples 51–71, whose average point distance is 2 to 3.5 m. With limited prior knowledge of terrain features for all of these samples, the θ is determined by the maximum angle of topographic inclination ( θ = 60 ° ) and the constant parameters are fixed as φ = 0.5   m (half a meter). The results from this setting are shown in Table 2.
From the results in the Table 2 we can see that when we set r 1 = 30   m , the algorithm had the biggest average Kappa coefficient (78.10%) and the lowest average total error (6.94%).
In order to test the parameter of φ , the parameters of φ from 0.2 to 1.7 with intervals of 0.3 were used to run the proposed filtering process for those samples, and the results of Kappa coefficients and Total errors, in Table 3 and Table 4, were employed to demonstrate the effect of φ for the algorithm.
As shown in Figure 5, the total means of the Kappa coefficient had a slower increase, while the parameter φ was set to be larger and reach its climax after 1.1 m increase of φ . Similarly, Group B, which consisted of rough terrain samples, had the same trend in terms of average Kappa coefficient, nevertheless, obtained relative lower accuracies than total accuracies. The difference between total accuracy and the accuracy of Group B could be diminished by increasing the parameter φ . On the other hand, Group A, composed of relatively flat samples, with a tiny peak at 0.8   m in terms of accuracy, however, received stable accuracies for all the values of φ .
The trend of mean Kappa coefficients for corresponding φ is illustrated by a line chart with a blue line, which is represented as a slower increase for Kappa coefficient with a larger parameter of φ . The average Kappa coefficients of Group A and Group B are linked by the green line and the red line, respectively.
The detail accuracy information was organized into Table 5, with the parameter combination as r 1 = 30   m , φ = 1.1   m , and θ = 60 ° . The errors and the Kappa coefficients are shown in Table 5.
The six samples named 12, 21, 31, 42, 51, and 54 in Group A have an average Kappa coefficient near 90% (89.91%) and an average total error of less than 5% (4.38%). Other samples belonging to Group B had an average kappa coefficient over 70% (73.71%) and the average total error was 7.45%.

4.2. Discussion

The distribution of error points derived from the proposed algorithm is illustrated in Figure 6. The blue points represent type I error (omission error: a ground point is misjudged to be a non-ground point.), which there were obviously more of than the red points that represent type II error (commission error; a real ground point is misjudged to be a non-ground point.). As shown in Figure 7, the results in Sample 12, Sample 42, and Sample 71 indicate the high accuracy of our method. In each picture the darker the green, the higher the relative elevation.
In the last decade, several researchers have proposed their new filtering algorithms and used the 15 samples published by ISPRS to evaluate the performances. The average total errors of these filtering algorithms are summarized in Table 6. Without setting intricate thresholds and with no training samples required, the average total error of the proposed method is 6.22%, which is approximately the same as the error in previous studies [23,42], and is 3.48% higher than the lowest one (4.11%).
Due to the interference of water area, the lowest points from each grid cell may be clustered and isolated by rivers or lakes. The fundamental step of the improved BPA is spatial searching. If the searching distance is shorter than the size of a river it could miss those low points in other clusters isolated by water. Therefore, to obtain a certain amount of low points in clusters as searching starts in the next step, the lowest points in each grid cell are roughly filtered by improved BPA with a relatively large searching distance. The radius of the pivoting ball is fixed as the average of the width and height of the dataset extent. At this stage, the reference direction for calculating the profile angle was determined as the absolute upward direction with the unit vector V ( 0 , 0 , 1 ) . However, in the following stages, this directional vector was specified as the normal vector of the spatial triangle facet constructed in the last stage, which was closest to the relative seed point.
The set of the lowest point in the grid cell may contain those points that are actually building points or vegetation canopy points. Accordingly, the improved BPA based on spatial sorting is applied, beginning with filtered points in stage one, to remove those relatively high points representing building or vegetation at a larger scale. If the estimated length of the largest object in a study area is 1 m , the parameter of the ball radius r 1 in this process would be set as 1 m ( r 1 = 1 m ) . Ground points are selected through the extraction process from the selected seed points in stage one, and then to build the initial TIN surface. For this and the next stage, the profile angle threshold was halved to limit the searching of spatial triangle facets involved with non-ground points.
Another parameter of distance threshold φ is used to find seed points with a smaller distance to the nearest facet in the initial surface than the threshold φ , or equal to the distance. In one cell, the second improved BPA process is conducted on a relatively small scale. Therefore, the last parameter is introduced as the second ball radius r 2 for the small scale process. The parameter of r 2 is suggested to be set with a value of two or three times the average point-spacing and must be smaller than r 1 . On the woodland, points reflected by ground would be more scattered than non-vegetation areas, thus the parameter r 2 in the condition of dense vegetation would be larger than in non-vegetation environments. Similarly, the parameter of φ would be greater under the same conditions. An underlying parameter, which can be determined as two times r 2 , is the size of regular cells with the same width and height. To solve the problem of possible failure of querying no facets in the margin of dataset extent, the reference direction which served as the base direction for searching facets was specified as the unit vector V ( 0 , 0 , 1 ) in those cells which lie at the edge of grid net.
The results in Table 5 showed that the proposed algorithm has a moderate performance in terms of the average total error. In line with the majority algorithms, performances of relatively flat samples received higher accuracy than those in relatively rough or deep areas. While the distance threshold φ was increased, relatively flat samples showed tiny difference of performance compared with relatively rough samples. The subtle different trends between the two types of terrain environment may originate from the slope of the ground surface. Owing to those validity rules, above ground points fail to be included into the ground point set beginning with the new selected seed points, which are actually non-ground points, due to a larger distance threshold. Furthermore, a robust performance of total accuracy could be derived from a bigger distance threshold than 0.8 m.
With other unadjusted parameters, the best accuracy of the proposed algorithm occurred at the setting of r 1 = 30   m . This optimal value for the parameter r 1 coincided with the manually measured size of the largest buildings or trees in the studyied area. It is suggested that the application of this proposed algorithm requires the prior acknowledgement of the size of the above-ground objects.
As is the case with any filtering algorithm, there were also some poor results in our experiment. The worst outcomes among Group A and Group B were in Sample 11 and Sample 24 (Figure 7). From these results, we can see that error points tend to occur around steep cliffs.

5. Conclusions and Future Work

In this study, a novel filtering method based on the improved ball-pivoting algorithm and spatial sorting is proposed. Compared to previous filtering algorithms, the parameters are easier to comprehend and set. An improved BPA extracted bottom boundary points directly without the process of 3D TIN model construction and effectively solved the problem of output loss in the bare ground region. Furthermore, the performance of this algorithm tends to be stable based on the simple parameter selection method. The experimental results show that this method features reliable performance and robustness. The interpolation error or uncertainty can be effectively avoided on account of this characteristic. In the future work, we will enhance the filtering method and further reduce the count of parameters in this algorithm. Some optimizations for algorithmic logic can be adopted to improve the efficiency and the performance of this method as well.

Author Contributions

W.M. conceived and designed the study, performed the experiments, and wrote the paper. Q.L. supervised the work and revised the paper.

Funding

Please add: This research was funded by National Key R&D Program of China (2016YFB0502203), National Natural Science Foundation of China (41701519), Natural Science Foundation of Guangdong Province (2017A030310544), Shenzhen Scientific Research and Development Funding Program (JCYJ20180305125058727), Nature Science Foundation of Shenzhen University (2019094).

Acknowledgments

The authors would like to thank the editors and anonymous reviewers for their careful reading and helpful suggestions. And thanks for Zheng Chen’s valuable advice and help in the paper writing process.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Sheng, N.; Cheng, W.; Dong, P.; Xi, X.; Luo, S.; Qin, H. A revised progressive TIN densification for filtering airborne LiDAR data. Measurement 2017, 104, 70–77. [Google Scholar]
  2. Zhang, J.; Lin, X. Filtering airborne LiDAR data by embedding smoothness-constrained segmentation in progressive TIN densification. ISPRS J. Photogramm. Remote Sens. 2013, 81, 44–59. [Google Scholar] [CrossRef]
  3. Hu, H.; Ding, Y.; Zhu, Q.; Wu, B.; Lin, H.; Du, Z.; Zhang, Y.; Zhang, Y. An adaptive surface filter for airborne laser scanning point clouds by means of regularization and bending energy. ISPRS J. Photogramm. Remote Sens. 2014, 92, 98–111. [Google Scholar] [CrossRef]
  4. Chen, Y.; Jiang, H.; Li, C.; Jia, X.; Ghamisi, P. Deep Feature Extraction and Classification of Hyperspectral Images Based on Convolutional Neural Networks. IEEE Trans. Geosci. Remote Sens. 2016, 54, 6232–6251. [Google Scholar] [CrossRef]
  5. Chen, Z.; Gao, B.; Devereux, B. State-of-the-Art: DTM Generation Using Airborne LIDAR Data. Sensors 2017, 17, 150. [Google Scholar] [CrossRef]
  6. Mou, L.; Bruzzone, L.; Xiao, X.Z. Learning Spectral-Spatial-Temporal Features via a Recurrent Convolutional Neural Network for Change Detection in Multispectral Imagery. IEEE Trans. Geosci. Remote Sens. 2018, 57, 1–12. [Google Scholar] [CrossRef]
  7. Ghamisi, P.; Chen, Y.; Xiao, X.Z. A Self-Improving Convolution Neural Network for the Classification of Hyperspectral Data. IEEE Geosci. Remote Sens. Lett. 2017, 13, 1537–1541. [Google Scholar] [CrossRef]
  8. Hughes, L.H.; Schmitt, M.; Mou, L.C.; Wang, Y.; Zhu, X. Identifying Corresponding Patches in SAR and Optical Images with a Pseudo-Siamese CNN. IEEE Geosci. Remote Sens. Lett. 2017, 15, 1–5. [Google Scholar] [CrossRef]
  9. Chen, C.; Li, Y.; Wei, L.; Dai, H. A multiresolution hierarchical classification algorithm for filtering airborne LiDAR data. ISPRS J. Photogramm. Remote Sens. 2013, 82, 1–9. [Google Scholar] [CrossRef]
  10. Hu, X.; Yuan, Y. Deep-Learning-Based Classification for DTM Extraction from ALS Point Cloud. Remote Sens. 2016, 8, 730. [Google Scholar] [CrossRef]
  11. Mou, L.; Ghamisi, P.; Zhu, X. Unsupervised Spectral-Spatial Feature Learning via Deep Residual Conv-Deconv Network for Hyperspectral Image Classification. IEEE Trans. Geosci. Remote Sens. 2018, 56, 1–16. [Google Scholar] [CrossRef]
  12. Lin, Z.; Chen, Y.; Ghamisi, P.; Benediktsson, J.A. Generative Adversarial Networks for Hyperspectral Image Classification. IEEE Trans. Geosci. Remote Sens. 2018, 56, 1–18. [Google Scholar]
  13. Axelsson, P. DEM Generation from Laser Scanner Data Using Adaptive TIN Models. Int. Arch. Photogramm. Remote Sens. Spatial Inf. Sci. 2000, 33, 110–117. [Google Scholar]
  14. Zhao, X.; Guo, Q.; Su, Y.; Xue, B. Improved progressive TIN densification filtering algorithm for airborne LiDAR data in forested areas. ISPRS J. Photogramm. Remote Sens. 2016, 117, 79–91. [Google Scholar] [CrossRef] [Green Version]
  15. Sohn, G.; Dowman, I. Terrain surface reconstruction by the use of tetrahedron model with the MDL criterion. Int. Arch. Photogramm. Remote Sens. Spatial Inf. Sci. 2002, 34, 336–344. [Google Scholar]
  16. Sithole, G.; Vosselman, G. Experimental comparison of filter algorithms for bare-Earth extraction from airborne laser scanning point clouds ☆. ISPRS J. Photogramm. Remote Sens. 2004, 59, 85–101. [Google Scholar] [CrossRef]
  17. Axelsson, P. Processing of laser scanner data—algorithms and applications. ISPRS J. Photogramm. Remote Sens. 1999, 54, 138–147. [Google Scholar] [CrossRef]
  18. Lin, X.; Zhang, J. Segmentation-Based Filtering of Airborne LiDAR Point Clouds by Progressive Densification of Terrain Segments. Remote Sens. 2014, 6, 1294–1326. [Google Scholar] [CrossRef] [Green Version]
  19. Quan, Y.; Song, J.; Xue, G.; Miao, Q.; Yun, Y. Filtering LiDAR data based on adjacent triangle of triangulated irregular network. Multimed. Tools Appl. 2016, 76, 1–13. [Google Scholar] [CrossRef]
  20. Zhe, Z.; Wan, J.; Hui, L. An entropy-based filtering approach for airborne laser scanning data. Infrared Phys. Technol. 2016, 75, 87–92. [Google Scholar]
  21. Kilian, J.; Haala, N.; Englich, M. Capture and evaluation of airborne laser scanner data. ISPRS Photogramm. Remote Sens. Spatial Inf. Sci. 1996, 31, 383–388. [Google Scholar]
  22. Zhang, K.; Whitman, D. Comparison of Three Algorithms for Filtering Airborne Lidar Data. Photogramm. Eng. Remote Sens. 2005, 71, 313–324. [Google Scholar] [CrossRef]
  23. Yong, L.; Yong, B.; Wu, H.; Ru, A.; Xu, H. An Improved Top-Hat Filter with Sloped Brim for Extracting Ground Points from Airborne Lidar Point Clouds. Remote Sens. 2014, 6, 12885–12908. [Google Scholar] [Green Version]
  24. Susaki, J. Adaptive Slope Filtering of Airborne LiDAR Data in Urban Areas for Digital Terrain Model (DTM) Generation. Remote Sens. 2012, 4, 1804–1819. [Google Scholar] [CrossRef] [Green Version]
  25. Mongus, D.; Žalik, B. Parameter-free ground filtering of LiDAR data for automatic DTM generation. ISPRS J. Photogramm. Remote Sens. 2012, 67, 1–12. [Google Scholar] [CrossRef]
  26. Mongus, D.; Lukač, N.; Žalik, B. Ground and building extraction from LiDAR data based on differential morphological profiles and locally fitted surfaces. ISPRS J. Photogramm. Remote Sens. 2014, 93, 145–156. [Google Scholar] [CrossRef]
  27. Hui, Z.; Hu, Y.; Yao, Z.Y.; Yu, X. An Improved Morphological Algorithm for Filtering Airborne LiDAR Point Cloud Based on Multi-Level Kriging Interpolation. Remote Sens. 2016, 8, 35. [Google Scholar] [CrossRef]
  28. Qi, C.; Peng, G.; Baldocchi, D.; Xie, G. Filtering Airborne Laser Scanning Data with Morphological Methods. Photogramm. Eng. Remote Sens. 2007, 73, 175–185. [Google Scholar]
  29. Evans, J.S.; Hudak, A.T. A multiscale curvature algorithm for classifying discrete return LiDAR in forested environments. IEEE Trans. Geosci. Remote Sens. 2007, 45, 1029–1038. [Google Scholar] [CrossRef]
  30. Lee, H.S.; Younan, N.H. DTM extraction of LiDAR returns via adaptive processing. IEEE Trans. Geosci. Remote Sens. 2003, 41, 2063–2069. [Google Scholar] [CrossRef]
  31. Zhang, W.; Qi, J.; Peng, W.; Wang, H.; Xie, D.; Wang, X.; Yan, G. An Easy-to-Use Airborne LiDAR Data Filtering Method Based on Cloth Simulation. Remote Sens. 2016, 8, 501. [Google Scholar] [CrossRef]
  32. Wang, L.; Xu, Y.; Li, Y. Aerial Lidar Point Cloud Voxelization with its 3D Ground Filtering Application. Photogramm. Eng. Remote Sens. 2017, 83, 95–107. [Google Scholar] [CrossRef]
  33. Edelsbrunner, H.; Kirkpatrick, D.; Seidel, R. On the Shape of a Set of Points in the Plane. IEEE Trans. Inf. Theory 1983, 29, 551–559. [Google Scholar] [CrossRef]
  34. Edelsbrunner, H.; Mücke, E.P. Three-dimensional Alpha Shapes. Acm Trans. Graph. 1994, 13, 43–72. [Google Scholar] [CrossRef]
  35. Bernardini, F.M.J.; Rushmeier, H. The ball-pivoting algorithm for surface reconstruction. IEEE Trans. Vis. Comput. Graph. 2002, 5, 349–359. [Google Scholar] [CrossRef]
  36. Edelsbrunner, H. Tessellations in the Sciences; Virtues, Techniques and Applications of Geometric Tilings. In Alpha Shapes—A Survey; Springer: Heidelberg, Germany, 2010. [Google Scholar]
  37. Demir, N. Use of Airborne Laser Scanning Data and Image-based Three-dimensional (3-D) Edges for Automated Planar Roof Reconstruction. Lasers Eng. (Old City Publ.) 2015, 32, 173–205. [Google Scholar]
  38. Paavo, N.; Maarit, M.; Raimo, S.; Jukka, H.; Tapio, P. Detecting Terrain Stoniness From Airborne Laser Scanning Data. Remote Sens. 2016, 8, 720. [Google Scholar] [CrossRef]
  39. Wu, B.; Yu, B.; Chang, H.; Wu, Q.; Wu, J. Automated extraction of ground surface along urban roads from mobile laser scanning point clouds. Remote Sens. Lett. 2016, 7, 170–179. [Google Scholar] [CrossRef]
  40. Digne, J. An Analysis and Implementation of a Parallel Ball Pivoting Algorithm. Image Process. Line 2014, 4, 149–168. [Google Scholar] [CrossRef] [Green Version]
  41. Dong, C.; Zhang, L.Q.; Zhen, W.; Hao, D. A mathematical morphology-based multi-level filter of LiDAR data for generating DTMs. Sci. China Inf. Sci. 2013, 56, 1–14. [Google Scholar]
  42. Yong, L.; Wu, H.; Xu, H.; Ru, A.; Jia, X.; He, Q. A gradient-constrained morphological filtering algorithm for airborne LiDAR. Opt. Laser Technol. 2013, 54, 288–296. [Google Scholar]
  43. Jahromi, A.B.; Zoej, M.J.V.; Mohammadzadeh, A.; Sadeghian, S. A Novel Filtering Algorithm for Bare-Earth Extraction from Airborne Laser Scanning Data Using an Artificial Neural Network. IEEE J. Sel. Top. Appl. Earth Obs. Remote Sens. 2011, 4, 836–843. [Google Scholar] [CrossRef]
  44. Pingel, T.J.; Clarke, K.C.; Mcbride, W.A. An improved simple morphological filter for the terrain classification of airborne LIDAR data. ISPRS J. Photogramm. Remote Sens. 2013, 77, 21–30. [Google Scholar] [CrossRef]
Figure 1. The process of 3D alpha shape-based ground filtering.
Figure 1. The process of 3D alpha shape-based ground filtering.
Remotesensing 11 01179 g001
Figure 2. A raw point cloud and resulting shape of the 3D TIN structure. (a) Prime raw point cloud demonstrated by its class, ground (brownness points), or non-ground (white points). (b) The resulting shape of the 3D TIN construction by using a traditional 3D alpha shape (α = 3).
Figure 2. A raw point cloud and resulting shape of the 3D TIN structure. (a) Prime raw point cloud demonstrated by its class, ground (brownness points), or non-ground (white points). (b) The resulting shape of the 3D TIN construction by using a traditional 3D alpha shape (α = 3).
Remotesensing 11 01179 g002
Figure 3. The spatial demonstration of the improved ball-pivoting algorithm based on spatial sorting.
Figure 3. The spatial demonstration of the improved ball-pivoting algorithm based on spatial sorting.
Remotesensing 11 01179 g003
Figure 4. The flow-process of the ground points searching strategy.
Figure 4. The flow-process of the ground points searching strategy.
Remotesensing 11 01179 g004
Figure 5. Accuracy plot for groups A, B, and Total.
Figure 5. Accuracy plot for groups A, B, and Total.
Remotesensing 11 01179 g005
Figure 6. The error points were shown in the hill-shade maps. In these maps, blue points represented type I (omission error) points, and red points represented type II (commission error) points. (a) Error points in sample 12; (b) error points in sample 71; (c) error points in sample 42.
Figure 6. The error points were shown in the hill-shade maps. In these maps, blue points represented type I (omission error) points, and red points represented type II (commission error) points. (a) Error points in sample 12; (b) error points in sample 71; (c) error points in sample 42.
Remotesensing 11 01179 g006
Figure 7. The error points were shown in the hill-shade maps. In these maps, blue points represented type I (omission error) points, and red points represented type II (commission error) points. (a) Error points in sample 11; (b) error points in sample 24.
Figure 7. The error points were shown in the hill-shade maps. In these maps, blue points represented type I (omission error) points, and red points represented type II (commission error) points. (a) Error points in sample 11; (b) error points in sample 24.
Remotesensing 11 01179 g007
Table 1. Main terrain features of the samples.
Table 1. Main terrain features of the samples.
GroupFeatureSamples
AFlat terrain or gentle slope, few steep slopes12,21,31,42,51,54
BWith steep or terraced slopes
(e.g., river bank, ditch, terrace, pit, cliff)
11,22,23,24,41,52,53,61,71
Table 2. Errors and Kappa coefficients for all samples ( φ = 0.5 m, θ = 60°).
Table 2. Errors and Kappa coefficients for all samples ( φ = 0.5 m, θ = 60°).
r 2 Sample r 1 = 20 r 1 = 30 r 1 = 40
Total Errors(%)Kappa(%)Total Errors(%)Kappa(%)Total Errors(%)Kappa(%)
2.51113.9672.0813.9572.1214.6670.81
124.4391.144.5790.864.4891.04
214.3287.834.2987.984.3087.92
2213.5367.878.5080.967.4183.37
2311.1377.8210.2979.4910.1879.72
2410.2675.6610.7774.9110.8974.61
315.9587.944.2391.443.5292.89
418.5282.958.2583.499.0381.94
424.0490.382.7493.372.7893.26
5513.4189.623.2890.003.3889.71
526.6468.996.3870.356.5869.46
5310.9134.7811.6833.2013.0730.30
546.2887.446.1087.816.3387.35
614.2758.184.5856.224.7955.22
714.5978.134.4479.354.7478.61
Mean7.4876.726.9478.107.0877.75
Min3.4134.782.7433.202.7830.30
Max13.9691.1413.9593.3714.6693.26
Std3.5014.683.3215.383.5816.18
Table 3. Kappa coefficients for all samples ( r 1 = 30 m, θ = 60°).
Table 3. Kappa coefficients for all samples ( r 1 = 30 m, θ = 60°).
r 2 Sampleφ = 0.2 Kappa(%)φ = 0.5 Kappa(%)φ = 0.8 Kappa(%)φ = 1.1 Kappa(%)φ = 1.4 Kappa(%)φ = 1.7 Kappa(%)
2.51167.4572.1274.0874.7374.8674.21
1287.9190.8691. 0691.0290.3890.16
2184.5487.9889.5089.1088.6388.37
2277.4780.9681.8282.7783.2683.44
2375.9079.4981.4982.4483.4983.93
2472.3774.9174.8674.8875.1075.25
3191.0291.4490.2889.1088.3687.42
4181.0683.4984.9186.8287.3587.44
4291.6193.3793.8893.5092.8192.15
55187.6990.0089.9789.7889.4388.92
5264.4970.3572.4773.7974.3174.18
5329.3833.2035.7637.4939.0240.26
5487.4787.8187.6386.9386.4786.16
6150.3556.2261.7664.9966.9868.05
7170.2679.3584.6185.4785.3285.63
Mean 74.6078.1079.6180.1980.3880.37
Min 29.3833.2035.7637.4939.0240.26
Max 91.6193.3793.8893.5092.8192.15
Std 16.4015.3814.4313.7313.1212.70
Table 4. Total errors for all samples ( r 1 = 30 m, θ = 60°).
Table 4. Total errors for all samples ( r 1 = 30 m, θ = 60°).
r 2 Sampleφ = 0.2 Total Errors(%)φ = 0.5 Total Errors(%)φ = 0.8 Total Errors(%)φ = 1.1 Total Errors(%)φ = 1.4 Total Errors(%)φ = 1.7 Total Errors(%)
2.51117.7313.9513.3312.5012.3812.66
126.054.574.694.494.814.93
215.654.293.673.793.944.03
2210.688.508.267.547.317.11
2313.9710.2910.288.798.868.51
2412.0910.7710.6910.5010.3310.17
314.974.234.895.385.776.21
4110.048.257.726.596.496.45
423.432.742.542.723.013.30
5515.183.283.273.323.864.04
528.166.385.595.355.245.15
5314.4511.6810.969.759.469.00
546.246.106.186.556.576.73
616.194.583.963.203.122.92
717.004.443.112.872.852.76
Mean8.796.946.616.226.276.26
Min3.432.742.542.723.013.30
Max17.7313.9513.3312.5012.9212.92
Std4.193.323.402.952.912.86
Table 5. Errors and Kappa coefficients for all samples ( φ = 1.1 m, r 1 = 30 m, θ = 60°).
Table 5. Errors and Kappa coefficients for all samples ( φ = 1.1 m, r 1 = 30 m, θ = 60°).
r 2 SampleType I(%)Type II(%)Total Errors(%)Kappa(%)
2.51114.1710.2612.5074.73
123.815.204.4991.02
212.717.583.7989.10
227.078.577.5482.77
2311.745.508.7982.44
2410.2511.1810.5074.88
317.2010.825.3889.10
419.623.576.5986.82
423.052.582.7293.50
5510.3014.153.3289.78
524.1315.755.3573.79
539.5315.059.7537.49
541.1011.246.5586.93
613.057.553.2064.99
711.3914.462.8785.47
Mean5.949.566.2280.19
Min0.302.582.7237.49
Max14.1715.7512.5093.50
Std4.164.082.9513.73
Table 6. Comparison of average total errors of the proposed method and eleven other filtering algorithms proposed in the last decade.
Table 6. Comparison of average total errors of the proposed method and eleven other filtering algorithms proposed in the last decade.
AuthorTotal Errors(%)
Chen et al. (2007) [28]7.23
Jahromi et al. (2011) [43]7.7
Mongus and Žalik (2012) [25]5.62
Susaki(2012) [24]7.39
Chen et al. (2013) [9]4.11
Pingel et al. (2013) [44]4.4
Li et al. (2013) [42]6.19
Li et al. (2014) [23]6.58
Hui et al. (2016) [27]5.33
Wang et al. (2017) [32]5.13
Proposed algorithm6.22

Share and Cite

MDPI and ACS Style

Ma, W.; Li, Q. An Improved Ball Pivot Algorithm-Based Ground Filtering Mechanism for LiDAR Data. Remote Sens. 2019, 11, 1179. https://doi.org/10.3390/rs11101179

AMA Style

Ma W, Li Q. An Improved Ball Pivot Algorithm-Based Ground Filtering Mechanism for LiDAR Data. Remote Sensing. 2019; 11(10):1179. https://doi.org/10.3390/rs11101179

Chicago/Turabian Style

Ma, Wei, and Qingquan Li. 2019. "An Improved Ball Pivot Algorithm-Based Ground Filtering Mechanism for LiDAR Data" Remote Sensing 11, no. 10: 1179. https://doi.org/10.3390/rs11101179

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop