AUTOMATIC PROCESSING OF MOBILE LASER SCANNER POINT CLOUDS FOR BUILDING FAÇADE DETECTION

Currently, data captured by Mobile Laser Scanners (MLS) is becoming a leading source for the modelling of building façade geometry. Automatic processing of MLS point clouds for feature extraction on building facades is a demanding work. Point cloud segmentation and recognition are the most important steps in this context. In this paper, a new approach for automatic and fast processing of MLS data for the detection of building patches while restricting to segment other features is introduced. After filtering of the point clouds, the building façade extraction takes place. An initial building point cluster detection and roughness based point separation within the cluster itself are the preliminary stages of this process. Thereafter points are segmented into planar patches based on the Random Sample Consensus (RANSAC) technique, as most facades are dominated by planar faces. An intelligent seed point selection method is introduced, and growing rules are applied in order to extract the most significant planar features which represent the building facades. Each segmented plane is afterwards processed to recognize the façade features. A rule based partitioning tree, constructed from the 2D geometric knowledge of building features is used for facade feature recognition. The approach has been tested with several urban data sets, and results demonstrate that the method can be applied in an efficient modelling process.


INTRODUCTION Motivation & Goals
Large scale 3D reconstructions of street scenes, especially 3D building models, are of growing interest in advanced visualization for location-based systems such as vehicle navigation, city planning and tourism industry (Cornelis et al., 2008).Furthermore, new developments in the area of computer graphics, the entertainment industry and virtual reality increase the demand for more complex and realistic models (Becker, 2009).In this sense, polyhedral building models have to be enriched with relevant façade features.An efficient solution, in this regard, is geometric modelling of building facades, explicitly, from 3D point cloud data.A crucial step in the modelling process is the automatic processing of point clouds for the extraction of different façade features on buildings, since the quality of the models is strongly dependent on the performance of feature extraction and recognition process (Rabbani, 2006).Although great progresses have been made in terms of accuracy and speed in order to detect building façades, versatile processing strategies for the automatic detection of such features from heterogeneous urban environments are still required to develop.Currently, the point clouds acquired by MLS is becoming a leading source for the modelling of building façade geometry because MLS is a fast, efficient and cost-effective method to collect accurate 3D geometry of building facades from large urban areas.
In this paper, a new approach to automatic processing of MLS point clouds for the extraction of building façade features is introduced.The main aim of this work is to extract a set of features of building facades by analyzing their planarity and linearity in an efficient manner.Due to the massive amount of points, the direct analysis of unstructured 3D point clouds is cumbersome so that the proposed method relies on a clusterwise processing strategy which further assists to obtain a quality outcome at the end.The first step is the detection of potential building clusters in order to reduce the processing time and to detect reliable and accurate planes depicting building facades.In the following step, a segmentation is performed using a roughness based planar region segmentation method, reducing complexity due to object heterogeneity.Finally, a new method based on general prior knowledge on geometry of façade features, in 2D, is proposed for the recognition of elements of each building façade.
The paper is organized as follows: The first section introduces the rationale of the work.Section two describes the overall method of our approach in detail.Evaluation of the methods and results obtained with of the developed algorithm are shown and discussed in section three.The final section draws some conclusions and gives an outlook on future work.

Related work
The segmentation of point clouds into planar faces on building facades can be considered as a main step in the automatic point cloud processing of MLS data.During the last decade, several algorithms have been developed to extract planar surfaces from laser scanner point clouds using different segmentation methods.The most relevant existing methods for detecting and extracting of features from point clouds data can be categorized into the three groups namely clustering of features (Filin & Pfeifer, 2006, Hofmann et al., 2003), region growing (Dorninger &Nothegger, 2007 andPu &Vosselman, 2006) and model fitting (Boulaassal et al., 2007(Boulaassal et al., , 2008)).Although model fitting is based on decomposition of the data into geometric primitive shapes, both clustering of features and region growing methods are based on pattern recognition for segmenting homogenous regions (Awwad et al., 2010).The advantage of the region growing method is that it is fast, robust in the presence of noise and extracted large connected components straight away.(Pu & Vosselman, 2009) adopt the region growing concept on top of the 3D Hough Transform to extract planar facade features in TLS data.In this method, seed segments are detected by the 3D Hough Transform and extended by adding adjacent points if their distance to the plane is below than some threshold.Once there are no more points to be added for a particular segment, the next seed surface is selected and grown.(Rutzinger et al., 2009(Rutzinger et al., & 2011) ) apply the same segmentation method for the extraction of vertical building walls from MLS data.Their results confirm that this plane estimation method performs well with both TLS and MLS data.However, the Hough Transform may be very sensitive to the segmentation parameters (Tarsha-Kurdi et al., 2007).Instead, RANSAC is increasingly used to segment planar faces.The determination of planar surfaces based on the RANSAC method is studied by (Boulaassal et al., 2007), where an adoption of RANSAC algorithm can be used to improve the quality of plane detection.They assume that the best plane is the one containing the maximum number of points with low standard deviation.Thus, the extended RANSAC algorithm allows them to detect the best plane within a short time.Later on, points, relevant to the derived planes are removed to improve the detection performance further (Boulaassal et al., 2008).
In feature recognition tasks, formal grammars have widely been applied.(Ripperda and Brenner, 2007) introduce a recognition strategy for façade feature recognition using the formal grammar and rjMCMC.They define the grammar which describes the general structure of building facades, the alignment of windows in grids, both regular and irregular.The structural and hierarchical relations are analyzed and then illustrated them in the form of shape grammar by (Becker, 2009) in order to estimate and to refine parts of facades, missed in scanning process.A bottom-up method based on the Knowledge about the semantic meaning of building facades is investigated by (Pu, 2010) to extract building features from TLS data.
Our contribution to the research field of façade point extraction is to utilize synergetic properties of both 2D and 3D environment of point clouds to the processing workflow, which assists for segmenting and extracting the maximum different planar surfaces efficiently, with best fit to reality.Further, this paper focuses in recognizing façade elements from MLS data based on knowledge about the 2D geometry of building facades.

METHODOLOGY
In this section, the methodology used for the processing of unfiltered MLS point clouds for building façade detection is presented.Façade data processing is divided into four main stages (shown in figure 1): Object point detection, clustering and building cluster selection, planar feature extraction and recognition façade features.These steps are fully automated and performed with only few steering parameters.Results of each stage provide the input data for the following stage.The final output of the process is a set of planar patches of each building façade.The following subsections are discussed each step in detail.

Ground point classification
In general, ground points can be defined by points residing on smooth non-vertical lowest surfaces.Various ground modelling methods have been developed for ground based Lidar data.The method, developed in this paper, is similar to the method proposed by (Mass et al., 2008) to generate a TLS based terrain model by analyzing the local height histogram.First, the whole domain is partitioned into finite number of horizontal grids with a lateral dimension of dx x dy.The Z-axis of each grid is split into several bins with a height dz.For each point, the corresponding grid S i , in which the point falls, is calculated, and the histogram bin corresponding to its Z-value within the calculated grid is incremented.In each grid, the height of the bin belonging to the lowest significant peak of the height histogram is selected and assigned as an approximate ground height of the corresponding grid.Nevertheless, the height of a lower histogram bin does not represent the real ground height if an object is occluded by other objects or the building roof points fall into the grid.In this case, the ground height of the grid should be filtered by checking the neighborhood consistency and comparing with the most frequently occurring height value.Although the majority of non-ground points can be eliminated this way, some lowest part of the objects such as lower parts of building facades and poles may erroneously be labeled as ground.A planar surface through the ground points is therefore estimated for each grid and adjusted by adding or removing points determined as inliers or outliers respectively.Once the ground points are selected, these points are segmented into continuous and smooth ground regions by applying a region growing method with respect to the grids.For this, the surface normal and the residuals between the mean ground points of a grid are analyzed.In figure 2, the results of the ground point classification is shown.

Clustering and classification of building points
After ground points are detected, the remaining object points contain buildings, trees, vehicles and other urban features.As the majority of building façades can be described by a set of planar surfaces, the detected object points should be segmented into planar faces to extract building façade features from other urban objects.Processing time may be considerable when extracting planar regions from the whole object point dataset at once.Further more, segmentation of massive point clouds leads to under-and over-segmentation as well.These problems can be reduced by grouping the point clouds into individual building clusters and then extracting planar segments from each group rather than from all the object points.Therefore, the next step of the methodology is the clustering and classification of points respective to each individual building.
In the clustering step, the proximity of points can be considered as the main key factor so that points located close to each other should be assigned to a single object.Since the point cloud has been previously partitioned into grid cells, the connections of grid cells are employed to acquire the proximity of point distribution.Connected grid cells which do not empty are grouped into clusters by utilizing a connected component labelling algorithm.This process considers points inside a grid cell and points within directly connected grid cells i.e. a 26connectivity of each cell.First, 8-connected neighbours are searched on a 2D lattice of 3D grids which is similar to range image segmentation (e.g.Hetzel et al, 2001).Second, vertical searching via an extended Franklin and Landis' Algorithm, as detailed in (Franklin andLandis, 2006 andIsenburg andShewchuk, 2009), is performed.Subsequently, isolated grid cells and grid cells with a number of points less than a predefined threshold are deleted.
With the help of general knowledge on buildings, the following attributes are considered in such a way that individual building point clusters are recognized and obtained.1.The maximum height of the clusters should exceed a predefined threshold.2. Clusters with a number of grid cells less than a predefined threshold are classified as non-building objects.3. Small and elongated clusters, either vertical or horizontal, are assumed to belong to other objects such as poles, wire lines, and so on.
In this way, most of the non-building objects, such as pedestrians, road signs, vehicles, flower beds, small vegetation patches are detected.Remaining clusters, considered as the building clusters, are further analyzed based on the assumption that a building can be described, in 2D space, by line segments.
Possible line segments, passing through the façade planes, are retrieved by horizontal slicing of the laser points at a defined height interval and applying 2D Hough Transform as described in (Tarsha-Kurdi et al., 2007).Simultaneously, points relevant to the detected line segment are removed from the Hough space in order to increase the detection performance.In this way, all the dominant building façade clusters are extracted, as shown in figure 3 (lower left), and also most of the closed vegetation parts connected with building edges are effectively removed.

Segmentation of coplanar points
In this step, each building point cluster obtained from the previous step (i.e.section 2.2) is segmented into groups of coplanar patches.For this, the coherence of point distribution and point proximity are considered.The plane extraction process is carried out in two stages.In the first part, we compute the surface roughness value of each point and in the second step, we select good seed planes based on the surface roughness values and then grown by adding all points close to the planes.

Surface Roughness Estimation
The purpose of this step is to effectively isolate non-building points (e.g.vegetation patches) located close to the building facades from buildings.The criterion used to distinguish building and vegetation is the surface roughness of points, as most of building features are smooth planar faces.A surface roughness value of each point is estimated, as described in (Nalani & Maas, 2012), by fitting an orthogonal regression plane for the direct neighboring points and then computing the standard deviation of the plane fitting residuals, i.e. the sum of the squares of distances from points to the plane.The basic least squares minimization is used to obtain the normal vector of each point.In this sense, the eigenvector corresponding to the smallest eigenvalue of the covariance matrix (where P

Plane Detection
A Surface Roughness based Region Growing method is developed for the detection of planar surfaces.The principle of region growing is to start with a seed segment and then grow it by adding points from the neighbors (Pu & Vosselman, 2009).
In our method, points with a low roughness value and similar normal vectors are selected as potential seed points and a smooth plane is fitted using the RANSAC (Fischler and Bolles, 1981) planar fitting algorithm to define initial seed segment, as described in (Nalani & Maas, 2012).All nearest neighbor points are added to the seed segment if the points have been assigned as building points and the distance from the point to the seed plane is less than some predefined threshold.Since the planar growing process does not take into account points, which have been identified as non-building points (high surface roughness value), a problem arises in building edges.In this case, an additional processing step is introduced for the planar growing process that improves the point selection especially on building edges.The surface roughness value of each neighbor point of a non-building point, which fulfills the distance criteria to the current planar segment, is examined to ensure whether it has been connected to the building points.A point is only attached to the planar segment if it has neighbors with low roughness value and the angle between the normal of the point (n p ) and the normal of the plane (n s ) is smaller than a defined parameter θ: cos -1 (n p. n s ) < θ.Accordingly, each point, which belongs to the building facades, is assigned to a planar segment.Some results of the algorithm are shown in figure 4 and 7.

Façade feature recognition
The final step in this work is the recognition of most important façade features such as walls, windows, doors, roofs and so forth, automatically.In this paper, a rule based partitioning tree is introduced to categorize these façade features, as illustrated in figure 5.
A set of rules, accumulating the hierarchical relations between the facades elements, are defined based on the knowledge of building facades.The geometric patterns of façade elements and the interrelationship among them in 2D space are considered in knowledge description.The common attributes of façade features such as shape, direction, size, position and spatial relationship are employed to illustrate knowledge about building structures in 2D, including characteristics of each façade feature.The recognition is started by dividing the whole planar segments, assigned as the parent-node (i.e.building), into two child-nodes, based on the assumption that a building can be compound with roof parts and wall parts.Then, new child-nodes for each existing child-node are allocated according to the corresponding rules, as described in table 1, until no child's parent node is found.Finally, façade features are extracted as shown in figure 6 and 8.In 2D, all the wall elements are considered as linear while roof parts are not.Angle between normal of the horizontal plane (n h ) and normal of the façade segment (n s ): α = cos -1 (n h .ns ) is tested with a defined threshold.

Wall facades
Long lines with height difference of points should not be less than a predefined threshold.

Intrusions/ Extrusions
The distance between selected wall line and line segment of wall parts should be within a given threshold.

Doors / windows
Ratio between length and point height difference should be within a certain range.
Table 1: Rules for recognizing façade features in 2D

RESULTS & DISCUSSION
The proposed method of automatic laser scanner point cloud processing for building façade feature detection as outlined in section 2 can be applied for both and mobile laser data.The test dataset which have been selected to evaluate the performance of the proposed approach is MLS data acquired by TopScan in Bonn, Germany.The dataset includes various object features such as buildings, trees, terrain surfaces, pedestrians, vehicles and different features of facades.The results of the different stages of the method are demonstrated in figure 3, 4, 6 and 8.
The results of the first stage, i.e. the classification of ground and non-ground points (figure 1) confirm that most objects types such as buildings, trees and poles can be successfully classified as non-ground points.The building point cluster detection algorithm, which has been applied to detect dominant building areas, enhances the efficiency of the subsequent processing steps as it reduces the amount of point clouds drastically.Furthermore, by selecting points solely within the potential clusters for planar segmentation, spurious planar detection of other objects can be reduced.However, the cell size affects to the results of clustering.A large cell size adds other object points, located close to the buildings while small cell size removes some building points.In this case, we used a cell size 0.1m.In addition to that, the extended Franklin and Landis' algorithm is employed for time-efficient clustering as it works with large amount of data set effectively.In planar segmentation, surface roughness of points is assisted for the correct recognition of seed segments.As a result, maximum number of different planar surfaces is extracted correctly, having close solution to the reality.In contrast, the benefit from this process is that trees, located near to facades, can be effectively secluded from buildings as most of the vegetation points have high roughness value.In this case, we used a 0.05m threshold to eliminate vegetation patches during the plane extraction process.On the other hand, this intelligent seed point selection by using roughness helps to find the correct planar patch from RANSAC with a sufficient large set of supporting points usually within a few iterations.Some results of the segmentation process, referring to different data sets acquired by MLS techniques, are presented in figure 4. By visual inspection, we can say that our approach has segmented most of the building façade features correctly with less number of spurious results.
Finally, features of each building facade are progressively partitioned by utilizing a rule based partitioning tree.Figure 6 shows that different facade features such as windows, doors and walls can be clearly identified by our approach.At the moment, the façade feature recognition has been evaluated exclusively by visual examination.Based on the visual comparison of all recognized features, we can conclude that our proposed method is effective and exact.However, there are a few limitations in this method.The first one is its inability to recognize all the windows due to lack of laser points on windows.Another limitation is that the method takes into account only the main features during the recognition.Consequently, additional rules should be constrained in order to identify detailed façade elements accurately.

CONCLUSION & OUTLOOK
In this paper, an approach for automated processing of MLS point clouds for detection of building façade features is outlined.Potential building clusters are recognized effectively from the raw point clouds and planar faces are extracted based on RANSAC and region growing concepts.Based on the surface roughness of the points, an enhanced seed point recognition method is introduced.Thus, quality segments are obtained.The advantage of the proposed algorithm is that the workflow decreases the number of points to be processed by means of a step by step process, which further allows for a better handling of very large MLS point clouds.Our results confirm the feasibility and robustness of the approach for segmenting different types of point clouds.For the recognition of detected segments, we present a rule based partitioning tree which store the façade knowledge of geometry in 2D.At present, it includes rules for recognition only main features of building facades.Though, the experiment proves that the method, introduced is effective visually, further improvements need to be done in order to increase the feature recognition ability in the future.

Figure 1 .
Figure 1.Processing flowchart for building facade feature extraction

Figure 2 .
Figure 2. Ground point classification.Red, green and brown colours denote the road, terrain and objects points respectively centroid of the points) is computed for solving the normal vector.Subsequently, points, whose roughness value is below a defined threshold, are labeled as potential building points (see figure3, lower right).

Figure 3 .
Figure 3. Sample results of initial building point extraction.Upper left: classified ground (green) and object points (red); Upper right: Detected building footprints; Lower left: Detected dominant building clusters (different colors represent individual building clusters); Lower right: Roughness analysis (orange represents building and green represents edges or closed vegetation)

Figure 4 .
Figure 4. Segmentation results -Case 1 (the different features are denoted by different colours)

Figure 7 .
Figure 7. Segmentation results -Case 2 (the different features are denoted by different colours)