Uploaded by i_want_a_wife

A Density-Based Clustering Method for the Segmentation of Individual building

advertisement
Journal of the Indian Society of Remote Sensing (June 2019) 47(6):907–921
https://doi.org/10.1007/s12524-018-0911-y
(0123456789().,-volV)(0123456789().,-volV)
RESEARCH ARTICLE
A Density-Based Clustering Method for the Segmentation of Individual
Buildings from Filtered Airborne LiDAR Point Clouds
Xiaoping Huang1 • Rujun Cao2
•
Yanyan Cao3
Received: 4 May 2018 / Accepted: 9 November 2018 / Published online: 29 November 2018
Ó Indian Society of Remote Sensing 2018
Abstract
Individual building segmentation is a prerequisite for building reconstruction. When building points or building regions are
classified from raw LiDAR (Light Detection and Ranging) point clouds, the dataset usually contains numerous individual
buildings as well as outliers. However, the applications to segment individual buildings from large datasets require the
algorithms working with the minimal requirements of domain knowledge to determine the input parameters, working well
on datasets with outliers and having good efficiency on big data. To meet these requirements, this paper presents a new
segmentation method relying on a density-based clustering technique that is designed to separate individual buildings in
dense built-up areas and is robust to outliers. As implemented in a spatial database, the algorithm benefits from the spatial
index and the parallel computation capability offered by the system. The experimental results show that the proposed
method is significantly more effective in segmenting individual buildings than the well-known moving window algorithm
and the new boundary identification and tracing algorithm, and processes large volumes of data with good efficiency.
Compared with the moving window algorithm, the proposed method (parallelized) consumed only 17.8% time and the
quality improved from 88.8 to 94.8% on the Vaihingen dataset.
Keywords LiDAR point cloud Individual building segmentation Density-based clustering Spatial database Parallelism
Introduction
Automatic building reconstruction is of great interest in
remote sensing community. Various applications, such as
geographic information systems (GIS), three-dimensional
(3D) city modeling, disaster management and cultural
heritage conservation, benefit from the availability of 3D
& Rujun Cao
newlong@whu.edu.cn
Xiaoping Huang
hxp_cy@163.com
Yanyan Cao
caoyy15@lzu.edu.cn
1
School of Information Science and Technology, Zhejiang
Sci-Tech University, Hangzhou, China
2
Present Address: Hangzhou CAS Skyvitech Co. Ltd,
Hangzhou, China
3
School of Mathematics and Statistics, Lanzhou University,
Lanzhou, China
building models (Bláha et al. 2016; Rouhani et al. 2017;
Xiao et al. 2018). The data acquired by Light Detection and
Ranging (LiDAR) systems are accurate and geo-referenced
in 3D (Leberl et al. 2010; Toth and Jóźków 2016), and they
are the natural choice for the reconstruction of 3D building
models (Haala and Kada 2010; Rottensteiner et al. 2014).
Another data sources for 3D reconstruction include fullwaveform data (Słota 2015) and point clouds from dense
image matching (Zhu et al. 2017).
To reconstruct 3D building models from LiDAR data,
building points or building regions need to be extracted
from the raw point dataset at the first place and then be
segmented into individual buildings. Building footprints
extraction from LiDAR point clouds commonly involves
the steps of filtering and segmentation. Filtering differentiates ground points from non-ground points. A number of
established filtering algorithms are available, such as
morphological filter (Chen et al. 2007; Pingel et al. 2013),
progressive TIN densification filter (Axelsson 2000) and
multi-directional ground filtering (Meng et al. 2009), and
123
908
the readers may refer to (Meng et al. 2010; Sithole and
Vosselman 2004) for more detail on this topic. In the
segmentation step, non-ground points are further classified
based on shape measures or roughness of the point clouds.
Region growing (Zhang et al. 2006), density-based segmentation (Filin and Pfeifer 2006) or eigenvalue analysis
of local covariance matrix (Awrangjeb and Fraser 2014;
Sampath and Shan 2010; Verma et al. 2006) can be used
for this purpose. Building points can also be classified
directly from the raw point clouds based on the semantic or
contextual information (Vosselman et al. 2017; Zhu et al.
2017).
When a set of building points has been classified automatically (or semi-automatically), the dataset generally
contains hundreds of buildings. To reconstruct building
models from this dataset successfully and efficiently, a
critical step is separating it into groups that each group
contains only one building. Methods of individual building
segmentation from a building point cloud fall into two
major categories, namely, cluster based and boundary
identify based. There are various cluster models (connectivity models, centroid models, distribution models, density
models, etc.) and dozens of clustering algorithms (EstivillCastro 2002), such as hierarchical clustering (Sibson 1973;
Zhang et al. 2013), k-means (MacQueen 1967), fuzzy cmeans (Bezdek 1981) and expectation maximization
(Dempster et al. 1977). Sampath and Shan (2007) proposed
a method based on a region-growing algorithm to group
similar points into the same building by iteratively collecting points within a moving window. In Sampath and
Shan (2010), the fuzzy c-means (fuzzy k-means) algorithm
was used to cluster individual planar roof segments to
reconstruct building models. As the k-means and fuzzy cmeans algorithms can only cluster convex shapes, they are
rarely utilized directly to segment individual buildings. In
Awrangjeb and Fraser (2014), individual buildings are
clustered in the building masks by verifying their coplanarity and neighborhood relationships. The other category
of methods is based on boundary identification or tracing
techniques. For instance, in Kwak and Habib (2014), Lari
and Habib (2014), the authors derived individual building
hypotheses with traced boundaries using the modified
convex hull algorithm (Sampath and Shan 2007). Similarly, Awrangjeb (2016) grouped individual building sets
based on a boundary identification technique which gradually replaces the outside edges of the Delaunay triangulation with the inside edges. Unfortunately, the above
methods continue to suffer from the following limitations:
(1) are sensitive to thresholds such as distance and neighborhood parameters and (2) are usually sensitive to
outliers.
On the other hand, automatic segmentation for individual buildings from LiDAR point clouds is still challenging
123
Journal of the Indian Society of Remote Sensing (June 2019) 47(6):907–921
in dense built-up areas (for instance, medieval villages), in
which buildings are generally packed densely to each other.
In these areas, it is hard to separate point clouds into
individual buildings (Susaki 2013). A feasible solution to
this problem is to incorporate planning maps or aerial
(satellite) images with LiDAR points in the segmentation
process. Information about individual building boundaries
provided by planning maps (Brenner 2005; Haala and
Claus 1999; Vosselman and Dijkman 2001), or derived
from image segmentation (Awrangjeb et al. 2013; Cheng
et al. 2011; Sohn and Dowman 2007; Zhou and Zhou
2014), can be utilized as an effective supplement to
improve individual building segmentation results. Nevertheless, integration of these auxiliary data has the following
limitations: (1) for planning maps or cadastral maps, which
usually contain building basements (Elberink 2008), they
are not always consistent with eaves or overhangs and can
lead to over-segmentation (Haala and Kada 2010); (2) for
aerial images, shadows cast by vicinities or occlusions are
unavoidable (Awrangjeb et al. 2013), which may also
cause segmentation errors; (3) the registration of different
data sources (e.g., imagery and point cloud data) with
accuracy and high quality is still a difficult task (Rottensteiner et al. 2007). Furthermore, maps or images are not
always available or up to date. Therefore, it is often necessary to segment individual buildings using LiDAR data
alone.
The investigation reported in this paper focuses on the
process of the segmentation of individual buildings from
filtered airborne LiDAR point clouds which contain only
building regions. A newly implemented density-based
clustering method (DBCS) is utilized in the automatic
individual building segmentation process. Although the
method was developed on a density-based spatial clustering algorithm (DBSCAN, Ester et al. 1996), it is the first
application in the subject of individual building segmentation from filtered point clouds. The other contribution of
this paper is that the parallelized segmentation of individual buildings from a series of subsets of a big dataset is
completely new. A brief introduction of the basic idea of
DBCS was reported in Cao et al. (2017), and this work
extends it to process massive point clouds and to detect
outliers.
Methodology
In this section, the principal steps of the proposed densitybased clustering approach for the segmentation of individual buildings from LiDAR point clouds are depicted in
Sect. 2.1. Some detailed analyses of the algorithm are
addressed in Sect. 2.2. In Sect. 2.3, the parallelism of
DBCS is discussed to process big data. The algorithm is
Journal of the Indian Society of Remote Sensing (June 2019) 47(6):907–921
implemented in a spatial database, PostGIS, which extends
PostgreSQL with robust spatial database management
capabilities.
The Vaihingen dataset (Cramer 2010) has been selected
to fully test the DBCS method. The airborne LiDAR point
cloud was acquired using a Leica ALS50 laser scanning
system, and the accuracy is about 10 cm in planarity and
vertical (Rottensteiner et al. 2014). The median point
density is 6.7 points/m2, and the average strip overlap is
30%. Point density varies considerably over the entire
block depending on the overlap. The average point density
inside an individual strip is 4 points/m2. The mean point
spacing in one strip is 0.45 m for the along scan direction
and 0.55 m for the across scan direction, respectively. The
filtered point clouds were provided by Zhao et al. (2016), in
which connected operators were utilized to extract building
footprints, and the overall quality of the results is 85% on
the pixel level evaluations of the ISPRS building extraction
benchmarks. For convenience, the building extraction
result of Area 3 is noted as Sample 1 in this paper.
Density-Based Clustering for Individual Building
Segmentation
When the raw dataset has been classified to contain only
building regions, the task for individual building segmentation is to group LiDAR points into different clusters
thereby each cluster of points represents only one building.
Obviously, each point belongs to only one cluster. Cluster
analysis or clustering is the technique suitable for the
purpose (Definition 1). In a density-based clustering procedure (Kriegel et al. 2011), clusters are defined as areas of
higher density spread in the data space over a contiguous
region than the remainder of the dataset (Definition 2).
Objects in these low-density areas (that points are not
closely packed together and are required to separate clusters) are usually regarded as outliers.
Definition 1: (proximity) Given a set of d-dimensional
real-valued continuous variables from a given data space
D , S = Rd, proximities between individuals are quantified by dissimilarity measures or distance measures dis:
S 9 S ? R?
0 , where the dissimilarity measure, dij, satisfies
the metric (triangular) inequality, dij ? dim C djm, for pairs
of individuals ij, im and jm.
Definition 2: (density-based clustering) Given a dataset
D , Rd that is a sample from some unknown probability
density p(x), clusters are high-density areas of this density
p(x), i.e., given some density threshold k, the set {x |
p(x) [ k} of all high-density objects is called the density
level set of S at k.
909
In this paper, a density-based cluster algorithm,
DBSCAN (Ester et al. 1996), is independently implemented in a spatial database to separate building point
clouds into individual buildings. As a density-based clustering method, DBSCAN characterizes a well-defined
‘‘density reachability’’ cluster model by connecting points
that satisfy a density criterion as defined as a minimum
number of objects within a certain neighborhood. In contrast to k-means method that can only find convex clusters,
DBSCAN can form a cluster of an arbitrary shape (EstivillCastro 2002). Moreover, based on spatial databases, it
benefits from the spatial index offered by the system and
achieves performance improvements. The algorithm is
implemented as follows, and the flowchart is shown in
Fig. 1.
(1)
(2)
(3)
(4)
Start with an arbitrary point P0 (not visited) that has
at least minPts (a minimum number of points)
neighbor points within its e-neighborhood (core
point), or else, the point is labeled as an outlier.
Add P0’s e-neighborhood points to the cluster, if
their own e-neighborhoods are also dense.
Repeat until the density-connected cluster is completely found.
A new unvisited point is retrieved and processed,
finding a further cluster or outlier.
The parameters of a distance threshold e and a density
threshold minPts together define a density level. The distance function determines the shape of a neighborhood, and
an appropriate metric can be chosen for a given application, e.g., a Chebyshev distance in two-dimensional (2D)
space defines a squared neighborhood. Note that even
though a point marked as an outlier at the first place, it may
later be found in a sufficiently sized e-neighborhood of a
different point (dense connected) and hence be made a part
of a cluster (as a border point).
In the above procedure, spatial indices based on Generalized Search Tree (GiST) (Hellerstein et al. 1995) or
B-Tree for the point clouds offer improvements on eneighborhood retrievals. After the above operations, all the
isolated outliers are removed, and all the building points
are grouped into particular buildings.
Analysis of DBCS
DBCS visits each point in the dataset as well as other
methods do. When implemented in a spatial database, the
spatial index can provide an e-neighborhood retrieving
with an O(log n) time complexity, and therefore, an overall
average runtime complexity of O(n log n) is expected.
Some points (e.g., as candidates for different clusters) may
be visited several times, but the time complexity remains
unchanged. In fact, the time complexity is mostly governed
123
910
Journal of the Indian Society of Remote Sensing (June 2019) 47(6):907–921
Fig. 1 Flowchart of the
proposed density-based
individual building
segmentation method
Building point clouds
Are all points visited?
No
Select an arbitrary
unvisited point p
No
Label as noise
Yes
Yes
END
Add p to a new cluster C
Query p’ s adjacent points
within unvisited or noise
Repeat until a density-connected
cluster is completely found
For each neighbor, label it as a
core point or a border point
An individual
building cluster
by the number of e-neighborhood retrieving invocations. In
the worst case, such as without the use of an accelerating
index structure (applying a sequential search), or on a
degenerated dataset (e.g., all points within a distance less
than e), the overall runtime complexity remains O(n2).
Furthermore, the time complexity for creating spatial index
structures (e.g., GiST or R*-tree) is usually in O(n log
n) and, as a result, this does not affect the total time
complexity.
Although some border points may be firstly marked as
outliers and be clustered later, they are not added to the
seeds list and unnecessary neighborhood retrieval avoided
because they are not core points. On the other hand, a
border point may be shared by two closely distributed
clusters. In this case, the algorithm will group the shared
point into the first discovered cluster. An improvement on
this situation is to group it into the cluster that its nearest
core point belongs. Except from these cases, the result is
insensitive to the processing order of the points. Additionally, if treating border points as outliers, the algorithm
is deterministic.
The algorithm tries to discover a cluster that is formalized as a maximally connected component of the set of
points. Points that are not a part of any clusters are outliers.
Obviously, a cluster with respect to (w.r.t.) e and minPts
contains at least minPts points. However, in an extreme
case, a cluster may only contain one core point and the
border points in its neighborhood. Whether it is a valid
cluster or noise depends on the applications. An introduction of a minimum number of core points per cluster can
reduce the number of ‘‘false’’ clusters.
Parallelization for the Algorithm
As mentioned before, the average runtime complexity of
DBCS is O(n log n). This is a better result, but it still needs
a long time to process massive LiDAR point clouds.
Considering the nature of the distribution of buildings,
segmenting numerous individual buildings simultaneously
is a natural choice, i.e., the algorithm can be parallelized to
123
Is p a core point
w.r.t. ε and minPts?
reduce the time of execution. The steps of parallelizing
generally include decomposition, assignment and execution. In the decomposition step, the input point dataset S is
partitioned into m subsets satisfying the following
conditions:
i[
¼m
Si ¼ S and Si \ Sj ¼ u;
for i 6¼ j; 1 i; j m:
ð1Þ
i¼1
These sub-datasets can be assigned to different tasks and
processed concurrently.
As the design of a high efficient parallelized algorithm is
context dependent, we briefly depict the dataset partitioning rules used in this paper. Firstly, the bounding box
(projection on a horizontal plane) of a big dataset is divided
uniformly into rectangles; then, if the number of points
within a particular rectangle exceeds a threshold, the
rectangle is subdivided (with the limitation of the number
of tasks). In some cases, an individual building may be
divided into different subsets and needs to be further
merged into the same group by their spatial proximity.
Another solution to this problem is to determine the border
of the sub-datasets automatically to avoid incorrect division of individual buildings. Limiting the seed points
within the border regions, DBCS can be utilized to identify
these buildings. Figure 2 illustrates this partitioning process. Note that the buildings intersecting with the splitting
line have been segmented in this step (Fig. 2c, d).
In practice, the spatial database can be used feasibly to
partition the dataset into subsets and thus can process
multiple subsets at one time. Implemented in a spatial
database, the parallelized algorithm can utilize the capabilities of task parallelism of the system and get a high
performance. Although the runtime complexity remains
unchanged, the processing time span is significantly
reduced. For the sample dataset (Sample 1, Fig. 2a, 27,734
points), the runtime was 5.76 s, including 2.07 s for data
partitioning and 3.68 s for clustering in sub-datasets (3.45 s
for the upper dataset and 3.65 s for the lower dataset,
Fig. 2d), while the sequential execution took 9.80 s.
(NOTE: In a degenerated case, all the buildings
Journal of the Indian Society of Remote Sensing (June 2019) 47(6):907–921
911
Fig. 2 Dataset partitioning
(Sample 1): a raw building
regions with splitting line (red
colored), b seed points within
the border regions w.r.t. e (blue
dots), c segmented individual
buildings intersecting with the
splitting line and d partitioning
results (subsets are colored
differently, and the gray-colored
subset needs no further
processing) (color figure online)
intersecting with the splitting line, the algorithm is not
parallelized. Another special case is the majority of the
points are divided into a particular subset. The average
time complexity of the parallelized algorithm is O(n0 log
n) ? max(O(ni log ni)), where n is the number of building
points, n0 is the number of points intersecting with the
splitting line, and ni is the number of elements of subset i,
and n0 ? R ni = n.)
123
912
Results
The filtered Vaihingen dataset (Cramer 2010) was selected
to fully test DBCS. Besides the automatic classification
results from (Zhao et al. 2016), some building points were
extracted manually.
Effectiveness Tests
To evaluate the effectiveness of DBCS, we compared it
with the moving window (MW) algorithm (Sampath and
Shan 2007). For Sample 1 (Figs. 2, 3), there are 43
buildings segmented manually. Seen from Table 1, the
quality of DBCS (97.7%) is higher than that of MW
(79.1%). The comparison was also described more
specifically using dataset Sample 2 (Fig. 3a). For Sample 2
(Fig. 4a, b, 4700 points), there are six gable-roofed houses
with differing shapes; the two buildings on the right are
very close to each other. (The distance between the two
nearest points is 0.85 m in 2D and 0.86 m in 3D.) The
distance threshold was set to 0.9 m for both the approaches, which is slightly less than twice the average point
resolution. As can be seen from Fig. 4c, DBCS segmented
all the six buildings correctly (colored differently), while
MW cannot differentiate the right two clusters (Fig. 4d,
light blue colored). Furthermore, DBCS detected the border points from all the clusters (Fig. 5, purple-colored
Fig. 3 Individual building
segmentation (Sample 1,
building regions in the blue
polygon; 2D Euclidean distance,
e = 0.9 and minPts = 5):
a reference image, b enlarged
part of the dashed rectangle in
(a), and c erroneously
segmented buildings: oversegmentation error for DBCS
and MW (red rectangle), and
under-segmentation errors for
the MW (dash circled) (color
figure online)
123
Journal of the Indian Society of Remote Sensing (June 2019) 47(6):907–921
dots). Instead, the MW method has no explicit notion of
border or outlier points.
The comparison between DBCS and the boundary
identification and tracing (BIT) method (Awrangjeb 2016)
was conducted. The basic idea of BIT is, firstly, detecting
approximate boundaries of the point cloud based on the
fact that every boundary line segment candidate is associated with only one triangle inside the Delaunay triangulation and then iteratively removing the edges connecting
non-neighboring points by verifying the length threshold
(Td) derived from the maximum point-to-point distance
(dmax). Figure 6b–d briefly illustrates the process of BIT,
and its details can be referenced to Awrangjeb (2016). The
segmentation results of the sample dataset (Fig. 4a) are
shown in Fig. 6a, where Td = 2dmax = 2.0 m, and the right
two buildings and the bottom-left two buildings were not
segmented correctly.
The sample dataset (Sample 2, Fig. 4a) was also used to
evaluate the efficiency of the three methods. The runtime
of MW, DBCS (serial mode) and BIT were 1.47 s, 1.61 s
and 17.75 s, respectively. As expected, MW is the fastest
method for its simplicity, while BIT is the most timeconsuming method as it is designed to trace boundaries.
DBCS consumed a slightly more time than MW, but it is
the most robust method.
Journal of the Indian Society of Remote Sensing (June 2019) 47(6):907–921
Table 1 Individual building
segmentation results of Sample
1
913
Segmented correctly
Under segmentation
Over-segmentation
Quality (%)
The proposed method
42
0
1
97.7
Moving window
34
4
1
79.1
Fig. 4 Individual building
segmentation (Sample dataset
2): a raw building points,
b reference image,
c segmentation results of the
DBCS method w.r.t. e = 0.9 and
minPts = 5, 2D Euclidean
distance and d segmentation
results of the MW method,
e = 0.9, 2D Euclidean distance
(the two buildings on the right
are erroneously grouped in one
cluster)
Detection of Outliers
In addition to the segmentation of individual building
regions, DBCS can be used to detect outliers as well.
Figure 7 shows an example of the results of building segmentation and outlier detection. (The raw points and the
reference image are presented in Fig. 4a, b, respectively.)
The distance measure used in this example was 3D
Euclidean distance, and the parameters of e and minPts
were set to 1.1 m and 6, respectively. The clustered
buildings are differently colored, and the detected outliers
are red colored (Fig. 7a). Seen from Fig. 7b, power line or
power-pole points (marked as P), antenna points (A), multipath points (M) and a chimney point (C) were all discovered as well as ground or wall points (near the boundary
regions and not marked).
Selection of Initial Seed Points
We also evaluated the influence of the selection of initial
points on the convergence of the algorithm. As an iterative
routine, it is obvious that the selection of the initial cluster
point affects the number of neighborhood query invocations. In general, a larger number of neighbors of a core
123
914
Journal of the Indian Society of Remote Sensing (June 2019) 47(6):907–921
Fig. 5 Border points (purple
colored) are identified during
the clustering process (e = 0.9,
minPts = 5, 2D Euclidean
distance): a segmentation
results and b enlarged part of
the rectangle in (a)
Fig. 6 Using BIT to segment individual buildings (the point dataset
and the reference image are presented in Fig. 4): a segmentation
results: the two buildings on bottom-left (light green colored) and the
two buildings on the right (blue colored) are erroneously grouped in
same clusters; b Delaunay triangulation of the points of the right two
buildings; c an intermediate result of the removal of long boundary
edges (pink colored); and d boundary identification result (red
colored) (color figure online)
point, the less invocations of the query for a segment. We
tested three strategies for the selection of the initial point
applied in the clustering process, i.e., entry sequenced,
multiple neighbored and random selection. Figure 8 illustrates the clustering process with core points queried by
different strategies. The total of the neighborhood retrieving invocations for the three strategies is summarized in
Table 2.
In each invocation of clustering, multiple core points
that are newly added in the previous invocation are processed simultaneously, while the outlier points are processed one by one.
In fact, except from an initial point with multiple
neighbors, the two other strategies may query several times
to get a core point before clustering starts. Note that, based
on the spatial database, the neighborhood retrievals of
multiple core points are processed simultaneously.
Although the runtime complexity of all the three strategies
remains the same, the smaller the number of the neighborhood query invocations for a segment means a better
performance. As implemented in a spatial database, we can
intentionally select the initial point by analyzing the
number of adjacencies of a point within its e-neighborhood.
123
Efficiency Evaluations
To test the efficiency of DBCS, the dataset captured over
Vaihingen was used (strip 3, 5 and 9, Fig. 9a). The test area
is consisted of the downtown area consisting of historic
buildings having rather complex shapes and suburban area
Journal of the Indian Society of Remote Sensing (June 2019) 47(6):907–921
915
Fig. 7 Outliers (red colored) are
detected during the clustering
process (e = 1.1, minPts = 6,
3D Euclidean distance):
a detection results (red dots) and
segmentation results (colored
differently), b enlarged part for
the rectangle in (a) and
c reference image of (b) (color
figure online)
which is characterized by detached buildings with various
structures. The building regions were extracted semi-automatically, i.e., besides the automatically derived building
regions from (Zhao et al. 2016), some missed buildings
were extracted manually.
There are 1021 extracted buildings containing 1,467,974
LiDAR points, and the area of the buildings varies from
2.33 to 14,464.71 m2 (Fig. 9a). The number of points
within a rectangle was 500,000, and the number of tasks
was set to 8 in the dataset partitioning process. After the
dataset was divided into three subsets S0, S1 and S2, S1 and
S2 were partitioned simultaneously. Four individual building segmentation tasks (density-based clustering on each
sub-dataset) were executed in parallel mode. The parallelized algorithm consumed 1744 s in segmenting all the
building regions (Fig. 9b). Compared with the sequential
execution (15,497 s) and MW (9773 s), the efficiency of
the parallelized method improved significantly (Table 3).
The segmentation results of both methods are shown in
Table 4.
Discussion
In this section, we discuss some implementation details of
DBCS such as the selection of the thresholds and the distance measure.
When separating individual building point sets using the
density-based spatial clustering algorithm, two parameters,
the distance e and the minimum number of points minPts,
are required. Whether a point is a valid candidate depends
on its e-neighborhood containing sufficiently minPts
points. In practice, the value of e is given by the problem to
solve, and minPts is the desired minimum cluster size. The
smaller e, the less points of the dataset will be clustered,
whereas for a too high value of e, clusters tend to merge the
majority of the points and be in the same cluster (Fig. 10a).
As to airborne LiDAR data, the lower bound of e is the
larger value of the average spacing in along and across
scanning directions. Furthermore, a minimum number of
point minPts can be derived from the spatial dimension
D of the dataset, and as a rule of thumb, minPts is larger
than or equal to D ? 1. A larger value of minPts will yield
a better result for a dataset with outliers (Fig. 10b). Considering the nature of data acquisition from airborne laser
scanning sensors, the upper bound of minPts is generally
no more than 9 (for a point has 8 neighbors within its
specific e-neighborhood). Moreover, given a minPts, e can
be estimated by the sorted k-distance graph (Ester et al.
1996).
Additionally, the distance measure is tightly coupled
with the choice of e and minPts, and as aforementioned, a
physical distance, rectangular or circular neighborhood,
was tested in this paper (Fig. 10c). Actually, these distance
metrics can be generalized by Minkowski distance. The
Minkowski distance of order p between two points x and y
2 Rn is defined as:
!1=p
n
X
p
jxi yi j
:
ð2Þ
i¼1
123
916
Journal of the Indian Society of Remote Sensing (June 2019) 47(6):907–921
Fig. 8 Selection of the initial cluster point affects the convergence
speed of the algorithm (e = 1.1, minPts = 6, 3D Euclidean distance;
red-colored points are clustered after the iteration): a clustering with
an entry sequentially selected core point, b clustering with a multineighbored (core) point and c clustering with a randomly selected
core point (color figure online)
Table 2 Summary for the clustering process with different initial point selection strategies
Strategy for the selection of initial
point
Invocations before core point
selected
Invocations for
clustering
Invocations for the rest
points
Total
invocations
Entry sequenced
30
18
27
75
Multi-neighbored
0
15
45
60
Random selection
2
16
43
61
The typically used p is 1, 2 or !, corresponding to
Manhattan distance, Euclidean distance and Chebyshev
distance, respectively. As can be seen from Fig. 11d, the
unit circle of larger order of p contains the smaller, i.e., for
a given e, the region determined by the Chebyshev distance
is the largest and may contain more points within it than
the others may.
We used the 2D Euclidean distance to segment individual buildings, while using the 3D Euclidean distance is
123
prone to over-segmentation (Fig. 7a), especially for the
buildings with considerably different regions in height.
Generally, for densely built-up areas, a small value of e and
a larger value of minPts are preferable. The e was set to
0.9 m in this paper, which is as a slightly less than the
twice of the average point spacing and 5 for minPts, which
is taken as the consideration of the fact that the point
clouds have been classified to contain only building
regions. The average point spacing is available as an input
Journal of the Indian Society of Remote Sensing (June 2019) 47(6):907–921
Fig. 9 Performance improvements via parallelism: a the test dataset
(building regions are lavender-colored); and b execution time line of
the parallelised algorithm (the number of points of each dataset and
the execution time in seconds are marked in each node, the mid row
917
and the third row, respectively). The clustering processes in the
partitioning procedure (the left part) are gray-colored and four
clustering tasks (the right part) executed concurrently (color
figure online)
Table 3 Runtime (seconds) of individual building segmentation (the Vaihingen dataset)
Number of the points
Moving window
1,467,974
9773
The proposed method (serial mode)
The proposed method (parallel mode)
15,497
1744
Ò
Ò
All the tests run on the same platform, a Lenovo T4900d-00 PC with 4 GB RAM, Intel
ST1000DM003 disk, Windows7 64-bit, PostgreSQL 9.4, and PostGIS 2.2
Table 4 Summary of individual
building segmentation (the
Vaihingen dataset, 1021
buildings)
Core(TM)-i7-3770 CPU @3.4 GHz, ATA
Segmented correctly
Under segmentation
Over-Segmentation
Quality (%)
The proposed method
968
20
13
94.8
Moving window
907
52
10
88.8
from the data vendor, and if not, it can be estimated using
the following equation (for airborne LiDAR data):
Mean point spacing ¼ sqrtðArea of the convex hull
/ Number of pointsÞ;
ð3Þ
where the convex hull is the 2D convex hull of the points
ortho-projected on a horizontal plane. The 3D distance
measure is used to identify outliers for building roof
reconstruction, and the topic of reconstruction is beyond
the scope of this paper.
The authors recommend the random strategy for the
initial point selection during the clustering process. In
contrast to the multi-neighbored strategy, it does not need
to query the number of neighbors of a particular point
within its e-neighborhood; its average performance outweighs the two other strategies (Table 2). Furthermore, a
border point may be visited by two closely distributed
clusters (density reachable from two different clusters) and
be erroneously grouped in the first discovered cluster
(Fig. 5b, red circled). This is a rare case and can be fixed
by verifying the conformance of its nearest core point
belonging.
Another issue is that only the Vaihingen dataset has
been used to evaluate DBCS in this paper. For a given
dataset, choosing a meaningful distance threshold e and a
minimum number of neighboring points minPts requires a
well understanding of the data and scale. However, these
parameters can be easily estimated by the point density
and, therefore, DBCS will work well on other point clouds
if their densities are not varied largely.
123
918
Fig. 10 Distance functions and parameter settings affect segmentation results (border points are purple colored and outlier points are red
colored): a the effect of e, b the effect of minPts, and c different
123
Journal of the Indian Society of Remote Sensing (June 2019) 47(6):907–921
distance measures. (Note: For clarity, the border points are not
marked in the over-segmented results, a col. 1, b col. 4 and c col. 2)
(color figure online)
Journal of the Indian Society of Remote Sensing (June 2019) 47(6):907–921
919
Fig. 11 Unit circles of the
Minkowski distance with
various p: a p = 1, b p = 2,
c p = ! and d all the three
overlapped
p=1
p=2
p=∞
p = 1, 2, ∞
(a)
(b)
(c)
(d)
Conclusions and Future Works
References
This paper proposed a novel method, DBCS, to segment
individual buildings from building point sets extracted
from airborne LiDAR point clouds. The only requirement
for the domain knowledge of the input data is the point
resolution, which is provided by the data vendor, or can be
easily derived from the data itself. The algorithm is based
on a density-based spatial clustering technique, using the
spatial index to improve performance. The results of our
experiments demonstrate that DBCS (1) works well on
datasets acquired from densely built-up areas; (2) is robust
to outliers; and (3) processes massive point clouds efficiently. DBCS is more effective and efficient than the
moving window algorithm (which can be regarded as a
special case of the proposed method, where minPts is less
than or equal to 2) and the new boundary identification and
tracing algorithm. As implemented in a spatial database,
DBCS calculates large datasets with good efficiency since
the system offers robust spatial data management and real
parallel computation capabilities.
Future research will consider the following issues.
Firstly, since the data acquired by LiDAR systems are
usually non-uniformly distributed, the average point spacing in along and across scan directions is not equal,
neighborhood retrieving within an ellipse or a rectangle
where its axes conform to the scanning direction may be
preferable. Secondly, some buildings are connected to (or
are very close to, e.g., less than the point spacing) each
other that cannot be differentiated from LiDAR data only,
and planning maps, cadastral maps, images or human–
computer interaction should be incorporated.
Awrangjeb, M. (2016). Using point cloud data to identify, trace, and
regularize the outlines of buildings. International Journal of
Remote Sensing, 37(3), 551–579. https://doi.org/10.1080/
01431161.2015.1131868.
Awrangjeb, M., & Fraser, C. (2014). Automatic segmentation of raw
LIDAR data for extraction of building roofs. Remote Sensing,
6(5), 3716–3751. https://doi.org/10.3390/rs6053716.
Awrangjeb, M., Zhang, C., & Fraser, C. S. (2013). Automatic
extraction of building roofs using LIDAR data and multispectral
imagery. ISPRS Journal of Photogrammetry and Remote Sensing, 83, 1–18. https://doi.org/10.1016/j.isprsjprs.2013.05.006.
Axelsson, P. (2000). DEM Generation from laser scanner data using
TIN adaptive models. In Proceedings of XIX ISPRS Congress
(pp. 110–117). Amsterdam.
Bezdek, J. (1981). Pattern recognition with fuzzy objective function
algorithms. New York: Plenum Press.
Bláha, M., Vogel, C., Richard, A., Wegner, J. D., Pock, T., &
Schindler, K. (2016). Large-scale semantic 3D Reconstruction:
an adaptive multi-resolution model for multi-class volumetric
labeling. In 2016 IEEE conference on computer vision and
pattern recognition (CVPR) (pp. 3176–3184) Las Vegas, NV,
USA. https://doi.org/10.1109/cvpr.2016.346.
Brenner, C. (2005). Building reconstruction from images and laser
scanning. International Journal of Applied Earth Observation
and Geoinformation, 6(3–4), 187–198. https://doi.org/10.1016/j.
jag.2004.10.006.
Cao, R., Zhang, Y., Liu, X., & Zhao, Z. (2017). 3D building roof
reconstruction from airborne LiDAR point clouds: A framework
based on a spatial database. International Journal of Geographical Information Science, 31(7), 1359–1380. https://doi.org/10.
1080/13658816.2017.1301456.
Chen, Q., Gong, P., Baldocchi, D., & Xie, G. (2007). Filtering
airborne laser scanning data with morphological methods.
Photogrammetric Engineering & Remote Sensing, 73(2),
175–185.
Cheng, L., Gong, J., Li, M., & Liu, Y. (2011). 3D building model
reconstruction from multi-view aerial imagery and lidar data.
Photogrammetric Engineering & Remote Sensing, 77(2),
125–139.
Cramer, M. (2010). The DGPF test on digital aerial camera
evaluation—overview and test design. Photogrammetrie –
Fernerkundung – Geoinformation, 2010(2), 73–82. https://doi.
org/10.1127/1432-8364/2010/0041.
Dempster, A. P., Laird, N. M., & Rubin, D. B. (1977). Maximum
likelihood from incomplete data via the EM algorithm. Journal
of the Royal Statistical Society: Series B, 39(1), 1–38.
Elberink, S. O. (2008). Problems in automated building reconstruction
based on dense airborne laser scanning data. In ISRPS 2008
Beijing (pp. 93–98). Beijing.
Ester, M., Kriegel, H., Sander, J., & Xu, X. (1996). A density-based
algorithm for discovering clusters in large spatial databases with
Acknowledgements The Vaihingen dataset was provided by the
German Society for Photogrammetry, Remote Sensing and Geoinformation (DGPF) (Cramer 2010): http://www.ifp.uni-stuttgart.de/
dgpf/DKEP-Allg.html (in German).
Compliance with ethical standards
Conflict of interest No potential conflict of interest was reported by
the authors.
123
920
noise. In Proceedings of the second international conference on
knowledge discovery and data mining (KDD-96) (pp. 226–231).
Portland.
Estivill-Castro, V. (2002). Why so many clustering algorithms: a
position paper. ACM SIGKDD Explorations Newsletter, 4(1),
65–75. https://doi.org/10.1145/568574.568575.
Filin, S., & Pfeifer, N. (2006). Segmentation of airborne laser
scanning data using a slope adaptive neighborhood. ISPRS
Journal of Photogrammetry and Remote Sensing, 60(2), 71–80.
https://doi.org/10.1016/j.isprsjprs.2005.10.005.
Haala, N., & Claus, B. (1999). Extraction of buildings and trees in
urban environments. ISPRS Journal of Photogrammetry and
Remote Sensing, 54(2), 130–137. https://doi.org/10.1016/S09242716(99)00010-6.
Haala, N., & Kada, M. (2010). An update on automatic 3D building
reconstruction. ISPRS Journal of Photogrammetry and Remote
Sensing, 65(6), 570–580. https://doi.org/10.1016/j.isprsjprs.
2010.09.006.
Hellerstein, J. M., Naughton, J. F., & Pfeffer, A. (1995) Generalized
search trees for database systems. In Proceedings of the 21th
international conference on very large data bases (pp. 562–573).
Zurich.
Kriegel, H., Kröger, P., Sander, J., & Zimek, A. (2011). Densitybased clustering. WIREs Data Mining and Knowledge Discovery, 1(3), 231–240. https://doi.org/10.1002/widm.30.
Kwak, E., & Habib, A. (2014). Automatic representation and
reconstruction of DBM from LiDAR data using recursive
minimum bounding rectangle. ISPRS Journal of Photogrammetry and Remote Sensing, 93(7), 171–191. https://doi.org/10.1016/
j.isprsjprs.2013.10.003.
Lari, Z., & Habib, A. (2014). An adaptive approach for the
segmentation and extraction of planar and linear/cylindrical
features from laser scanning data. ISPRS Journal of Photogrammetry and Remote Sensing, 93(7), 192–212. https://doi.org/10.
1016/j.isprsjprs.2013.12.001.
Leberl, F., Irschara, A., Pock, T., Meixner, P., Gruber, M., Scholz, S.,
et al. (2010). Point clouds: Lidar versus 3D Vision. Photogrammetric Engineering & Remote Sensing, 76(10), 1123–1134.
MacQueen, J. (1967). Some methods for classification and analysis of
multivariate observations. In L. M. Le Cam, & J. Neyman (Eds.),
Proceedings of the fifth Berkeley symposium on mathematical
statistics and probability, Volume 1: Statistics (pp. 281–297).
CA: University of California Press.
Meng, X., Currit, N., & Zhao, K. (2010). Ground filtering algorithms
for airborne LiDAR data: A review of critical issues. Remote
Sensing, 2(3), 833–860. https://doi.org/10.3390/rs2030833.
Meng, X., Wang, L., Silván-Cárdenas, J. L., & Currit, N. (2009). A
multi-directional ground filtering algorithm for airborne LIDAR.
ISPRS Journal of Photogrammetry and Remote Sensing, 64(1),
117–124. https://doi.org/10.1016/j.isprsjprs.2008.09.001.
Pingel, T. J., Clarke, K. C., & McBride, W. A. (2013). An improved
simple morphological filter for the terrain classification of
airborne LIDAR data. ISPRS Journal of Photogrammetry and
Remote Sensing, 77, 21–30. https://doi.org/10.1016/j.isprsjprs.
2012.12.002.
Rottensteiner, F., Sohn, G., Gerke, M., Wegner, J. D., Breitkopf, U.,
& Jung, J. (2014). Results of the ISPRS benchmark on urban
object detection and 3D building reconstruction. ISPRS Journal
of Photogrammetry and Remote Sensing, 93(7), 256–271. https://
doi.org/10.1016/j.isprsjprs.2013.10.004.
Rottensteiner, F., Trinder, J., Clode, S., & Kubik, K. (2007). Building
detection by fusion of airborne laser scanner data and multispectral images: Performance evaluation and sensitivity analysis.
ISPRS Journal of Photogrammetry and Remote Sensing, 62(2),
135–149. https://doi.org/10.1016/j.isprsjprs.2007.03.001.
123
Journal of the Indian Society of Remote Sensing (June 2019) 47(6):907–921
Rouhani, M., Lafarge, F., & Alliez, P. (2017). Semantic segmentation
of 3D textured meshes for urban scene analysis. ISPRS Journal
of Photogrammetry and Remote Sensing, 123, 124–139. https://
doi.org/10.1016/j.isprsjprs.2016.12.001.
Sampath, A., & Shan, J. (2007). Building boundary tracing and
regularization from airborne lidar point clouds. Photogrammetric Engineering & Remote Sensing, 73(7), 805–812. https://doi.
org/10.14358/PERS.73.7.805.
Sampath, A., & Shan, J. (2010). Segmentation and reconstruction of
polyhedral building roofs from aerial lidar point clouds. IEEE
Transactions on Geoscience and Remote Sensing, 48(3),
1554–1567. https://doi.org/10.1109/TGRS.2009.2030180.
Sibson, R. (1973). SLINK: An optimally efficient algorithm for the
single-link cluster method. The Computer Journal, 16(1), 30–34.
https://doi.org/10.1093/comjnl/16.1.30.
Sithole, G., & Vosselman, G. (2004). Experimental comparison of
filter algorithms for bare-Earth extraction from airborne laser
scanning point clouds. ISPRS Journal of Photogrammetry and
Remote Sensing, 59(1–2), 85–101. https://doi.org/10.1016/j.
isprsjprs.2004.05.004.
Słota, M. (2015). Full-waveform data for building roof step edge
localization. ISPRS Journal of Photogrammetry and Remote
Sensing, 106, 129–144. https://doi.org/10.1016/j.isprsjprs.2015.
05.008.
Sohn, G., & Dowman, I. (2007). Data fusion of high-resolution
satellite imagery and LiDAR data for automatic building
extraction. ISPRS Journal of Photogrammetry and Remote
Sensing, 62(1), 43–63. https://doi.org/10.1016/j.isprsjprs.2007.
01.001.
Susaki, J. (2013). Knowledge-based modeling of buildings in dense
urban areas by combining airborne LiDAR Data and Aerial
Images. Remote Sensing, 5(11), 5944–5968. https://doi.org/10.
3390/rs5115944.
Toth, C., & Jóźków, G. (2016). Remote sensing platforms and
sensors: A survey. ISPRS Journal of Photogrammetry and
Remote Sensing, 115, 22–36. https://doi.org/10.1016/j.isprsjprs.
2015.10.004.
Verma, V., R. Kumar and S. Hsu. (2006). 3D building detection and
modeling from aerial LIDAR Data. In 2006 IEEE computer
society conference on computer vision and pattern recognition
(pp. 2213–2220) New York. https://doi.org/10.1109/cvpr.2006.
12.
Vosselman, G., Coenen, M., & Rottensteiner, F. (2017). Contextual
segment-based classification of airborne laser scanner data.
ISPRS Journal of Photogrammetry and Remote Sensing, 128,
354–371. https://doi.org/10.1016/j.isprsjprs.2017.03.010.
Vosselman, G., & Dijkman, E. (2001). 3D building model reconstruction from point clouds and ground plans. International
Archives of Photogrammetry and Remote Sensing, XXXIV-3/W4,
37–43.
Xiao, W., Mills, J., Guidi, G., Rodrı́guez-Gonzálvez, P., Barsanti, S.
G., & González-Aguilera, D. (2018) Geoinformatics for the
conservation and promotion of cultural heritage in support of the
UN Sustainable Development Goals. In ISPRS Journal of
Photogrammetry and Remote Sensing. https://doi.org/10.1016/j.
isprsjprs.2018.01.001. (in press).
Zhang, K., Yan, J., & Chen, S. C. (2006). Automatic construction of
building footprints from airborne LIDAR data. IEEE Transactions on Geoscience and Remote Sensing, 44(9), 2523–2533.
https://doi.org/10.1109/TGRS.2006.874137.
Zhang, W., Zhao, D., & Wang, X. (2013). Agglomerative clustering
via maximum incremental path integral. Pattern Recognition,
46(11), 3056–3065. https://doi.org/10.1016/j.patcog.2013.04.
013.
Zhao, Z., Duan, Y., Zhang, Y., & Cao, R. (2016). Extracting buildings
from and regularizing boundaries in airborne lidar data using
Journal of the Indian Society of Remote Sensing (June 2019) 47(6):907–921
connected operators. International Journal of Remote Sensing,
37(4),
889–912.
https://doi.org/10.1080/01431161.2015.
1137647.
Zhou, G., & Zhou, X. (2014). Seamless fusion of LiDAR and aerial
imagery for building extraction. IEEE Transactions on Geoscience and Remote Sensing, 52(11), 7393–7407. https://doi.org/
10.1109/TGRS.2014.2311991.
921
Zhu, Q., Li, Y., Hu, H., & Wu, B. (2017). Robust point cloud
classification based on multi-level semantic relationships for
urban scenes. ISPRS Journal of Photogrammetry and Remote
Sensing, 129, 86–102. https://doi.org/10.1016/j.isprsjprs.2017.
04.022.
123
Download