Flexible building primitives for 3D building modeling
Introduction
Buildings form the dominant type of man-made objects in urban scenes. The building models are necessary to visualize and analyze the urban environment (Brook et al., 2011). Possible applications include video games, augmented reality, 3D navigation, solar potential analysis, micro-scale environment modeling and 3D Geographic Information Systems. During past decades methodologies have been developed to automatically reconstruct building models from digital surface models or airborne laser scanning data (Haala and Kada, 2010, Vanegas et al., 2010, Wang, 2013). Although research has progressed significantly, the reconstruction problem still presents many challenges. An urban scene can be represented as a Digital Surface Model (DSM) or a TIN mesh which is derived from laser scanning systems (Frueh and Zakhor, 2003) or stereo imagery (Hirschmuller, 2008). Such data contain outliers and have spatially heterogeneous point distributions. Meanwhile, this representation demands a lot of storage space. Researchers propose mesh simplification procedures to reduce the amount of data while preserving sharp features and inhibiting noise (Fleishman et al., 2005, Zhou and Neumann, 2010). However, sharp features are detected by local points and are therefore inaccurate. Buildings are reconstructed without applying shape constraints and are therefore imprecise. Furthermore, semantic information is lost as a roof patch can be split into several triangles with different normal.
The above-mentioned methods are usually called data-driven; other methods are model-driven methods (Dorninger and Pfeifer, 2008, Huang et al., 2011, Karantzalos and Paragios, 2010, Oude Elberink and Vosselman, 2009, Verma et al., 2006, Zebedin et al., 2008). Model-driven methods reconstruct buildings with incomplete data and reconstruct all roofs at the same time. However, the usage of model-driven methods is limited because they require a library of prior defined models. Furthermore, many buildings still cannot be represented because of the high complexity of building structures. Verma et al. (2006) describe how a building can be represented as a group of assembled building primitives by analyzing the roof topology graphs. They define primitive shapes as I-shaped, L-shaped and U-shaped, and search for these using a roof topology graph. Primitive shapes are limited so only relative simple buildings can be described. Oude Elberink and Vosselman (2009) expand the topological primitive library to include gable, hip, gambrel, etc. The primitive shapes defined by Oude Elberink are finer in granularity than those defined by Verma and are, therefore, more flexible. However there are still many building shapes are not described in the library. A lot of other studies also use building primitives to integrate building structures (Hammoudi and Dornaika, 2010, Huang et al., 2011, Kada and McKinley, 2009, Lafarge et al., 2010).
This paper goes further and thoroughly divides buildings into basic elements of the topology graph: loose nodes, loose edges and minimum cycles. As any roof topology graph can be decomposed into such basic elements, buildings with a planar structure can be assembled according to the primitive shapes defined. Ameri and Fritsch (2000) also found that roof structures can be modeled in a generic manner based solely on the 3D intersection of adjacent roof segments. Perera et al. (2012) noted that graph cycles represent 3D roof corners. We precisely define the 3D corners as minimum cycles in the roof topology graph, and provide detailed proof of its formation mechanism. On the other hand, minimizing the size of building primitives decreases their robustness. In cases in which little information can be inferred from the data, it remains difficult to determine new primitives properly. However, nowadays increasing point densities allow the robust identification of smaller primitives.
Another weak point of model-driven methods is that these models demand strict regularity, which cannot always be satisfied by all buildings. The strict constraints prevent the reconstructed roof patch from exactly meeting the regularity requirements. Inspired by Brenner (2004), constraints used in this paper are much looser in comparison with typical model-driven methods. We propose a method for automatically checking data to determine whether constraints should be enforced. The constraints are subsequently used to simultaneously adjust all roof parameters. Several methods globally find surface constraints which are iteratively learned and enforced through constraint optimization (Li et al., 2011, Rottensteiner, 2006, Zhou and Neumann, 2012). Angle constraints and alignment constraints are enforced separately. As constraints are not independent, the iteration strategy will achieve one constraint while losing another, especially when considering concurrent relationships between several planes. We use a constraint least-squares fitting algorithm to simultaneously enforce all constraints while minimizing the residual of fitting points to planes.
Outer boundaries of building models are usually constructed based on boundary points. However, because points are discrete, the boundary directly derived from them zigzags. Many researchers try to improve the outer boundaries by introducing constraints, such as parallel and orthogonal ones, or building principal directions (Matei et al., 2008, Sampath and Shan, 2010, Vosselman et al., 2005, Zhou and Neumann, 2008). Typically, they obtain all outer boundaries for one building at the same time. Boundary points are detected by α-shape or convex hull algorithms. They subsequently detect and refine boundary lines of all roofs simultaneously. This solution leaves two unanswered questions. Firstly, many roofs are inside the building footprint polygon, so their boundaries cannot be detected. Secondly, not all roof polygons follow the principal direction. In this paper, we detect and refine outer boundaries facet by facet, so we detect all boundaries and achieve a greater precision.
We propose an algorithm that provides solutions that address the above-mentioned problems. The workflow of our method is shown in Fig. 1. Building points are detected and segmented, followed by intersection line detection. A roof topology graph is constructed by grouping roof faces (graph nodes) and intersection lines (graph edges). A building is decomposed into a group of building part, whose structures are predefined in the new library of building primitives. Structure knowledge is inferred and employed to determine constraints in order to simultaneously adjust all roofs. Inner boundaries and vertexes are found and refined according to the building primitives searched. Outer boundaries are hypothesized by inferring the available context boundaries. A complete building model is subsequently achieved by grouping all building parts.
The contributions of this paper can be summarized as follows:
- (1)
Flexible building primitives. The building primitives are defined according to basic elements in roof topology graphs. This means that all buildings with arbitrary complex structures can be assembled by using such building primitives. This definition facilitates the use of model-driven methods for all kinds of buildings.
- (2)
Adaptive constraints. The buildings are decomposed into building primitives, which introduced constraints for guiding reconstruction. We do not make all constraints obligatory. A decision is taken as to which constraints are necessary and which constraints could be left aside based on both inferred building primitives and input data.
- (3)
Minimum enclosing polygon. Outer boundaries are created by intersecting roof planes with the hypothesized vertical or horizontal planes. Roof polygons are subsequently closed by inferring all detected boundary lines.
The remainder of this paper is organized as follows: in Section 2 we discuss basic elements of the topology graph and their physical meaning in representing surface structures. Based on Section 2, in Section 3 we give a definition of a building primitive library and introduce an algorithm that searches for building primitives. The building primitives supply geometry regularities, which are applied to improve the quality of the model. In Section 4 we give a definition of geometry regularities, the inferring method, and the algorithm for applying constraints. In Section 5 we demonstrate how to obtain enclosed roof polygons by grouping the inner corners and inner boundaries, and the inferred outer corners and outer boundaries. As the whole algorithm is dependent upon the roof topology graph, any error in the roof topology graph would seriously affect the quality of the model. In Section 6 we give an automatic method and a manual method of correcting any errors in the roof topology graphs. In Section 7 we discuss the results of our method as applied to a dataset of Vaihingen (Germany) and Enschede (The Netherlands), including lidar point cloud and photogrammetric point cloud. The article ends in Section 8 with concluding remarks, a discussion of open questions and suggestions for further work.
Section snippets
Topology graphs
Topology graphs are a precise way of representing structures between objects and their parts, without considering their geometric positions. We have observed that each topology graph has a minimum subgraph basis, composed by a maximum group of linear independent subgraphs which have physical meanings. In this section, we give a definition of the minimum subgraph basis, indicate its physical meaning, and provide a method for searching for the minimum subgraph basis. This section provides the
Building primitive library
Arbitrarily complex topology graphs can be decomposed into minimum subgraphs. To allow the largest possible flexibility, we created a building primitive library where the graph of every primitive corresponds to the minimum subgraphs. The building primitives are also used to introduce geometric constraints to improve the model quality in the reconstruction process. In this section, we show the construction of a roof topology graph, provide a definition of the building primitive library, and
Geometry regularities
Architectures have strong geometric regularities. These regularities, which are also called structure knowledge, are fully used when the human brain interprets the observed world. However, we still do not know which regularity plays what role in that interpretation, and we do not know how human brains identify specific regularities (Bear et al., 2006). One reason for this is that there are too many regularities. Here we have carefully chosen knowledge that can be satisfied by most cases and
Roof polygons
The roof polygons are obtained by sequentially ordering all inner ridges, inner corners, outer boundaries and outer corners for each roof plane. The inner ridges and inner corners are already obtained by intersecting the roof planes. Outer corners are computed by assuming one auxiliary plane, which may be horizontal or vertical, and intersecting it with the two adjacency roof planes. Meanwhile, their intersection lines are determined. The new intersection lines and ridge lines still only
Correction of roof topology graphs
The roof topology graph is essential in the proposed building reconstruction algorithm based on the new library of building primitives. However, errors in the topology graph are inevitable and will affect building reconstruction negatively. Because of outliers and occlusion, as well as inevitable defects in the pre-processing steps, such as classification, segmentation and intersection detection, the topology graph will always have errors, which limits correct construction. This section
Results of the new building reconstruction method
A dataset of Enschede is selected to fully test the new building reconstruction method. The city is characterized by residential buildings with diverse structures on the outskirts and a small number of commercial buildings in the city center. The laser scanning data has been acquired by the FLI-MAP system of Fugro Aerial Mapping B.V. at a flight height of 275 m and with a 30% strip overlap. The point density is on average about 20 points/m2. We selected 3 test sites with a total of about 500
Conclusion
This paper presents an algorithm for the reconstruction of 3D building models. The main innovation of this work is the definition of flexible building primitives which enables the representation of any complex building with planar surfaces. The problem of reconstructing complex roofs is reduced to the problem of detecting and reconstructing building primitives. We have demonstrated that a small but effective vocabulary of simple parametric shapes is capable of expressing extremely complex roof
References (40)
- et al.
CC-Modeler: a topology generator for 3-D city models
ISPRS J. Photogramm. Remote Sens.
(1998) - et al.
An update on automatic 3D building reconstruction
ISPRS J. Photogramm. Remote Sens.
(2010) - et al.
Results of the ISPRS benchmark on urban object detection and 3D building reconstruction
ISPRS J. Photogramm. Remote Sens.
(2014) - et al.
The utilisation of airborne laser scanning for mapping
Int. J. Appl. Earth Obs. Geoinf.
(2005) - et al.
Object reconstruction by incorporating geometric constraints in reverse engineering
Comput. Aided Des.
(1999) - et al.
A graph edit dictionary for correcting errors in roof topology graphs reconstructed from point clouds
ISPRS J. Photogramm. Remote Sens.
(2014) - Ameri, B., Fritsch, D., 2000. Automatic 3D building reconstruction using plane-roof structures. In: ASPRS Annual...
- et al.
Neuroscience: Exploring the Brain
(2006) - et al.
Minimum cycle bases for network graphs
Algorithmica
(2004) Modelling 3D objects using weak CSG primitives
Int. Arch. Photogramm., Remote Sens. Spatial Inform. Sci.
(2004)
Modelling and monitoring urban built environment via multi-source integrated and fused remote sensing data
Int. J. Image Data Fusion
A comprehensive automated 3D approach for building extraction, reconstruction, and regularization from airborne laser scanning point clouds
Sensors
Nonlinear Programming: Sequential Unconstrained Minimization Techniques
Robust moving least-squares fitting with sharp features
ACM Trans. Graph. (TOG)
Practical Methods of Optimization
Constructing 3d city models by merging ground-based and airborne views
IEEE Comput Vision Pattern Recognit.
A featureless approach to 3D polyhedral building modeling from aerial images
Sensors
Stereo processing by semiglobal matching and mutual information
IEEE Trans. Pattern Anal. Mach. Intell.
Cited by (93)
Automatic building footprint extraction from photogrammetric and LiDAR point clouds using a novel improved-Octree approach
2024, Journal of Building EngineeringA novel Building Section Skeleton for compact 3D reconstruction from point clouds: A study of high-density urban scenes
2024, ISPRS Journal of Photogrammetry and Remote SensingReconstructing compact building models from point clouds using deep implicit fields
2022, ISPRS Journal of Photogrammetry and Remote SensingPoint2Roof: End-to-end 3D building roof modeling from airborne LiDAR point clouds
2022, ISPRS Journal of Photogrammetry and Remote SensingCitation Excerpt :In general, we can divide these methods into three categories: model-driven, data-driven, and deep learning-based methods. Model-driven methods (Haala and Brenner, 1999; Verma et al., 2006; Milde and Brenner, 2009; Henn et al., 2013; Huang et al., 2013; Xiong et al., 2015; Song et al., 2020; Zhang et al., 2021; Li and Shan, 2022), known as top-down methods, usually assume that the structure of buildings can be approximated by the combination of several predefined simple parametric shapes. The key issues of model-driven methods are how to define and combine the appropriate basic roof shapes and how to estimate the optimal parameters of roof shapes for buildings.
RANSAC-based multi primitive building reconstruction from 3D point clouds
2022, ISPRS Journal of Photogrammetry and Remote SensingSelf-adaptive Modelling Method for Chinese Ancient Timber Architecture Based on Digital Structure Metamodel
2024, Nexus Network Journal