A RESEARCH ON THE HIERARCHY AND COMPLETENESS OF ROOF TOPOLOGY FOR ROBUST BUILDING RECONSTRUCTION FROM AIRBORNE POINT CLOUD

: In this work, we concentrate on the hierarchy and completeness of roof topology, and the aim is to avoid or correct the errors in roof topology. The hierarchy of topology is expressed by the hierarchical roof topology graph (HRTG) in accord with the definition of CityGML LOD (level of details). We decompose the roof topology graph (RTG) with a progressive approach while maintain the integrality and consistency of the data set simultaneously. Common feathers like collinear ridges or boundaries are calculated integrally to maintain their completeness. The roof items will only detected locally to decrease the error caused by data spare or mutual interference. Finally, a topology completeness test is adopted to detect and correct errors in roof topology, which results in a complete and hierarchical building model. Experiments shows that our methods have obvious improvements to the RTG based reconstruction method, especially for sparse data or roof topology with ambiguous.


INTRODUCTION 1.1 Motivation
Automatic reconstruction of urban 3D models from point clouds has attracted numerous studies during the last two decades (Haala & Kada, 2010;Musialski et al., 2013).Owing to the developments of data acquisition technology, increasingly dense and reliable point clouds can be provided.This provides the possibility to recognize subtle details and complex structure, while also brings huge challenges to current reconstruction methods (Elberink, 2008).Reference (Xiong, Elberink, & Vosselman, 2014) claims that even when only considering planar roof surfaces, the building type complexity can still be a major problem.
A basic step for the reconstruction of complex building roof is to describe the topology relationship between roof planes, where a roof topology graph (RTG) is widely used.However, several challenges have to be confronted for them.Firstly, the RTGs are not always right in the presence of noisy, low point density and resulting errors in pre-processing steps.The reconstruction methods will fail under false RTG (Xiong et al., 2014).Secondly, the stored topological relationships by RTG is rather limited and often not exploited.The scale or hierarchy of roof planes are not considered and the step structures cannot be well expressed.Thirdly, the completeness and correctness of roof topology are not guaranteed.Holes or consistency boundaries might appear in the constructed models.As such, strategies to improve the roof topology and ways to find and correct the errors in roof topology become important.
In this work, we improve the definition of roof topology mainly in two aspects.A hierarchical roof topology graph (HRTG) is proposed instead of the traditional RTG in accord with the definition of building LOD(level of details, see (Gröger, 2008).The main goal is to avoid the errors in roof topology by generating overall solution for common feathers and partial solution for roof items.A major roof surface will be less interrupted by its accessory structure and the search scope when detecting building primitives can also be reduced.Meanwhile, a topology completeness test is adopted to detect errors in the model.Arcs at the roof top are forced to form the half-edge structure (McGuire, 2000), and areas where misrepresentations of step structures or holes in the models exist can be easily detected and then corrected by a hypothesize-and-verify process.

Relate Works
The roof topology graph (RTG) has been widely used for building roof reconstruction from point clouds.The concept of RTG is simple: a vertex in the graph stands for a roof plane and an edge represents the adjacency between two planes.Reference (Elberink & Vosselman, 2009) develops it by adding labels to the edge in graph that considers features like normal orientation, convex/concave, and tilted/horizontal.The local structure in RTG has been used to detect the intersection of multiply planes (minimal close circle analysis)(S.N. Perera, Nalani, & Maas, 2012), simple building primitives, i.e., in (Verma, Kumar, & Hsu, 2006), or outer boundary (outmost circle) in (G. S. N. Perera & Maas, 2014).A graph matching approach is adopted to search more complex primitives in (Elberink & Vosselman, 2009).The RTG are also used to interpret the building structures by some other works, i.e. (Sampath & Shan, 2010;Zhou & Neumann, 2011). However, reference (Xiong et al., 2014) points out that the RTG are not always right and the above reconstruction methods may fail under false RTG.Under such consideration, a graph-to-graph correcting approach based on graph edit dictionary is proposed and about one quarter of erroneous graph is claimed to be corrected.As such, the error in the RTG still remains a major problem in roof reconstruction.
As reference (Boguslawski, Gold, & Ledoux, 2011) argued, the stored topological relationships among model elements is rather limited and often not exploited.Generally, an overall solution that considers relations among roof elements turns to produce better results than totally data-driven methods.Model primitives are widely used for that goal and some highly model-driven methods (Karantzalos & Paragios, 2010;Lafarge, Descombes, Zerubia, & Pierrot-Deseilligny, 2008;Lafarge & Mallet, 2011;Vanegas, Aliaga, & Benes, 2012) impliedly added in topology constraints thus can directly giant topology-correct models.Considering the limit of pre-specified building primitives, reference (Sohn, Huang, & Tao, 2008) reconstruct geometric topology between adjacent linear features by adopting a BSP (Binary Space Partitioning) tree.Reference (Boguslawski et al., 2011) designs a dual data structure in which a vertex stands for a primal cell and an edge is the connection between cells.Then, the Euler-type operators can be adopted on the primitives and maintain their connectivity.However, hierarchy of RTG is rarely considered in those works, thus the connotative messages insider model (i.e.collinear, parallel ridges or inside items) are not exploited.When the building structure is complex or several buildings are adjacent, the RTG will be rather complex.Errors in RTG may be produced in the presence of resulting errors in pre-processing steps or mutual interference between roof elements.Moreover, some step structures (i.e. two planes have both intersected ridge and step edge) are lack of constraints in RTG and the completeness of constructed models are not guaranteed.Our HRTG is constructed to decompose the complex models step by step and make full use the implicit knowledge in the models simultaneously.The topology completeness test is also adopted to detect and correct errors in roof topology.
The remainder of this paper is organized as follows: Section 2 firstly gives the overview of our reconstruction procedure.Then details of the hierarchical roof topology graph (HRTG) and the topology completeness test are introduced.Experimental results are analysed in Section 3, followed by conclusions in Section 4.  , 2014;Verma et al., 2006;Xiong et al., 2014), our reconstruction strategy follows the procedure of segmentation, roof topology construct and feature extraction with the assistance some building primitives.The whole process are summarized in Fig . 1 and our main contribution are marked by dotted boxes, where the HRTG and topology completeness test are proposed.As we mainly focus on the hierarchy and completeness of building topology, no more details about the work flow will be given here.

Hierarchical roof topology graph
The hierarchical or level of details (LOD) of building is an important factor that has been widely discussed by current researches.The concept is important because the following reasons: 1.The roof plans always have large range of scales and different reconstruction strategy needs to be adopted respectively.For major structures, data-driven methods are suggested to produce more accurate results, while model-driven methods need to be used for roof items or sub-structures because of date sparse or incompleteness.2. To be man-made objects, the buildings have many connotative semantic features, such as main direction, symmetry, and parallel/vertical edges.Those features need to be calculated from the main structures or as a whole, and then delivered to sub-structures.3. Decomposing the buildings into several child models or building primaries is necessary for the reconstruction of buildings with complex structure.Some methods need to match parts of the building with pre-constructed primaries library also.
However, the hierarchy of buildings are not easy or convenient enough to be expressed by the roof topology graph (RTG).The RTG only stores the plane-to-plane adjacency between neighbour planes and take all planes the same.What's more, the construction of RTG is mainly based on neighbour analysis of edge points, with few integral constraints.This makes it errorprone under spare data, in the presence of resulting errors in pre-processing steps, or when mutual interferences between roof elements exist.In this work, we attempt to describe the hierarchy of buildings via the level of details.
A hierarchical roof topology graph (HRTG) is progressively constructed that decompose the buildings step by step.The levels in HRTG are in accord with definition of building LOD.A vertex in an upper level will be a child graph in the downer level.The LOD we concerned are from LOD 0-LOD2.Due to limit space, definition about building LOD are not given here, more message can refer to work of (Verdie, Lafarge, & Alliez, 2015).Here, we mainly discuss how the HRTG in each level are constructed and how structure message in building hierarchy are used for more robust reconstruction process.
2.1.1LOD 0 LOD 0 care not the height of point clouds and only need to calculate the overall boundary of the interconnected buildings.

LOD 1
Same as the CityGML LOD1, the rooftops are considered as horizontal in this level, and the major work is to separate the model by step structures.The step edges in RTG are disconnected and then the RTG can be decomposed by searching the connected subgraphs in graphs.Each subgraph is a vertex in the HRTG in this level.Two issues need to be considered in this step: the excluding of ambiguous edges and deciding a proper step wall between two child models.
False or ambiguous edges may exist between two adjacent buildings, especially when two roofs planes have similar height, orientations or in the present of falsely classified roof points.To avoid the problems, an extra test is adopted upon the detected ridges with a simple idea that points from two sides of the ridge should come from different roof surface.The point-plane distance deviation for points in conflict areas is calculated.A intersect ridge will be refused if the new deviation is bigger than both the origin value and a pre-given threshold.
The step structures need to be calculated to avoided holes in model if the data are original connected in 2D.If obvious height different can be detected, step ridge can be directly generated by method in (Oude Elberink, 2010).Sometimes however, step structure may have similar height, different main orientations or irregular plane boundary.Vertical cutting planes (cutting lines in 2D) need to be specially calculated under those situations.The cutting lines are determined by two elements: orientation and position.The orientation is decided by the nearest robust horizontal roof ridge from both sides (two orientations are tested if they are different), and the optimal position is decided by minimization the fitting error between nearby boundary points and cutting lines.The constructed child models are then extended to the vertical cutting planes to keep the connectivity of the whole building.

LOD 2
This level discusses the intersection of multiple roof planes and the calculation of the inside corners or ridge skeletons.Instead of calculate all ridges as a whole in the whole RTG, some extra steps that further decompose the RTG is adopted.The main goal is use the structure features to constraint the identification of roof ridges.The decomposition of RTG can reduce the interrupt from neighbour planes and the influence of inaccurate segmentation results.Three decomposition rules (marked by A, B and C) are defined and used to further divide the models if identified: A) Main horizontal or convex ridges, inspired by work of (Fan, Yao, & Fu, 2014).The main horizontal ridges are always local maxima points which are easily detected and useful for division.The horizontal/convex ridges are guided or verified by initial intersect edges and extended to the boundary of child model if possible.B) Skeletons that divide the whole data into several parts.Based on the close cycle analysis, the intersect ridges can be calculated and then neighbour ridges can be connected to construct the inside skeletons.Some ridges can be extended to the model boundary thus divide the model into several parts.C) Planes-in-plane or planes only connect to a single plane.These plans are always roof items or sub-structures, and are constructed locally.Some simple model primaries are used in this step for planes with small scales.Meanwhile, their points are projected into the major structure to avoid a major roof become broken pieces.
If the above three processes can successfully divide the point clouds into pieces that only contain single plane, proper model can be generated.However, the goal may not be easily under some difficult situation, i.e. improper segmentation results, sparse point clouds or incomplete data.Most current RTG based methods will fail then.An advantage of our method is that we decompose the point clouds when we construct the HRTG.Those problematic areas will be only limited in a small area divided by the skeleton and only contain a small number of planes.For those areas, several additional processes are adopted by turn until the precision of constructed model is accepted.1) If the area is at one side of the main horizontal ridges, use the symmetry and side projection (Rau & Lin, 2011) to produce the major roof and construct the rest objects.
2) Another iteration of the segmentation and reconstruction process is applied locally.
3) Match the data with pre-defined model primaries.

Conclusion
The construction of HRTG is not only a topology combination of roof planes, but also a process of data disaggregation.When decomposing the RTG into different parts, we also divide the dates and maintain their connectivity in 2D simultaneously.The HRTG in each step is in accord with the CityGML thus we can directly general the building model under different levels.

Topology completeness test
As argued in (Xiong et al., 2014), current RTG methods suppose that the RTG is right which may not always true.It frequently occurs that a small plane or roof edges are lost or false distinguished, which final results error in RTG or model.Even if the RTG is right, errors will still occur in constructed models, as step structures are often lack of constraints in RTG and some boundaries are not regularly parallel and vertical.What's more, the dates can also be sparse, occluded or even become broken pieces.In this section, we attempt to improve the definition of roof topology and find ways to detect and even correct the errors in roof topology.The topology completeness test is defined for such goal.

Definition
The test is adopted based on the assumption below: 1) The constructed model should be connected in space if their point clouds are originally connected in 2D.
2) For each edge in the constructed model, two sides need to be found to form the half-edge data structure (Fig. 2).Each side can be one of the following three types: (a) A roof plane; (b) A inside step wall; (c) An outside wall.The detection process firstly mixes the roof plane boundaries with the intersected ridges or step edges which construct the mixed boundaries, and then compare them with the whole model boundary to find the undecided arcs.When errors in the roof topology graphs occurs, only one side can be detected for the arcs (Fig. 3).These undetermined arcs will gather around the error region and compose a close circle (red dotted line) together with the integral model outside boundary.Due to the limit space, only two types of errors are provided and others are the same (four types are given in work of (Xiong et al., 2014)).Our topology correction is adopted upon those close circles.

Errors Correction
Though the error regions can be detected by the undetermined arcs in the front step, approach to correct them may not be easy as the errors type can be various.In our problem, the correct approach is considered as the division of the error regions in 2D, and to find another side for those arcs.Three types of hypothesis with decreasing priorities are considered (Fig .4).
The expansion process (b) is used to test whether the error regions can be included into neighbour planes or the extensible ridges within the plane can be intersected.Some errors caused by neighbour competition in segmentation step can be solved.When we extend the ridges, a special check is adopted to test if the points near the ridge can be smoothly divided into two different parts.Some short ridges or inside step structure are failed to be distinguished because of data sparse, occlusion or improper segmentation results.The corresponding hypotheses are provided in (c).As for (d), if points in this area can be found, a fitted or horizontal plane will be tested.Some simple predefined building primaries will also be matched.

EXPERIMENTS AND EVALUATION
In this section, we experimentally explain the details of the HRTG and the completeness test, and their affects to the reconstruction results.The selected data in our experiments are from the Vaihingen data set (Germany), with an average point density of 4/m 2 .Fig .5 Experiments of HRTG construction.For the point clouds, different colours represent the point clouds to be separated in each step; Key ridges to be calculated are marked in black and the red ones are ridges extracted in previous steps.
Fig. 5 gives a compare experiment of RTG and HRTG based methods.For RTG based methods, several errors occurred in the provided results, including errors caused by inaccurate segmentation or classification (error 1 and 2) and overregulation or errors in irregular boundaries (error 3).In HRTG, each level concentrates on particular property of the models which aims to avoid parts of the above errors.LOD 0 produce the outside boundary of the whole building or connective building blocks (consist of only one vertex here).In LOD 1, the cutting lines are defined and the connected building models are extended to the vertical wall thus errors 3 will be avoided.
LOD 2 discusses relations among roof planes.Unlike current RTG based methods, we divide the construction of roof topology into three sequential processes.In A, we detect the main horizontal and convex ridges which are simple but rather useful processes.In C, the roof sub-structures are detected and their points are projected into the main roof which will greatly reduce the difficulties in B, as the main roofs in B will become integral ones and the extraction of boundaries and ridges can be much easier.As the point clouds are often sparse in C, modern driven methods is adopted and several model primaries are also defined and matched.This is also very important for the understanding and storage of building models, which enhance its potential in other applications.
The difficulties of topology completeness test mainly exist in the hypothesis generation, as the building complexity makes the possible of errors ever-changing.An advantage of our method is that the HRTG divides the model of complex buildings into different parts.Some errors have been avoided and the rest ones always centre in very small regions.In our test, evident improvements are produced by using very simple hypotheses types.Fig. 6 shows some buildings that are error-prone for RTG based methods.In (a), the points of right-down main roof plane is sparse and often lost.In (b), the collinear boundary of the tower and roof may also be neglected.In (c), the left-down roof may also fail to be constructed as the intersect ridge is lost.Our methods produce significant improvements in those situations.
It has to be noted that a correct RTG is not enough to ensure a right roof topology of the constructed model.In Fig. 7, there are both step edge and intersect edge between the two planes.What's more, the improper segmentation results interrupt the distinguishing of step edges.As a result, ambiguity occurs in area A. Similar situations may also occur in the data of Fig . 5. Generally, low point density request looser thresholds to detect the edges or intersect ridges; therefor, while false results will also be easier produced.In our work, this problem is solved by a hypothesis-and-testing process.Take Fig .7(c) and (d) for example, different solutions are all tested and compared on the ambiguous regions to generated the most proper results based on the observed model errors.In Fig. 8, models of several connective buildings with complex structures are also provided.The HRTG shows great advantage under such situations as the buildings have very distinct hierarchy.

CONCLUSION
In this work, we have shown our improvements in the roof topology by taking its hierarchy and completeness into consideration.The topology hierarchy is reliazed by the HRTG in according with the CityGML LOD.It reorganizes the RTG and decompose the whole model data step by step, which can reduce the mutual interference among neighbor planes and make full use of the integral information of the child model.Models under different level of details can be produced simultaneously.The completeness of roof topology is test based on the half-edge data structure.The HRTG restricts the errors in small local regions, and then we correct the errors by a hypothesize-and-verify process.Our methods can reconstruct models under sparse data with imperfect segmentation or feature extraction results.The future works is to enlarge the hypothesis types in the correction process and find more reasonable quantitative standard to verify the hypothesis.

Fig 1 .
Fig 1. Reconstruction workflow Similar to some existing work (Elberink & Vosselman, 2009; G. S. N. Perera & Maas, 2014; Verma et al., 2006; Xiong et al.,  2014), our reconstruction strategy follows the procedure of segmentation, roof topology construct and feature extraction with the assistance some building primitives.The whole process are summarized in Fig .1andour main contribution are marked by dotted boxes, where the HRTG and topology completeness test are proposed.As we mainly focus on the hierarchy and completeness of building topology, no more details about the work flow will be given here.

Fig. 2
Fig.2 The half-edge data structure

Fig. 3
Fig.3 Example of errors that disobey the rules, left: miss a plane; right: miss a ridge (marked by red arrows and arcs).
by methods using HRTG: Image, segmented points clouds, results use RTG and our final results are provided.corrections.(a): Image; (b): error detection of A in (a); (c) and (d): two hypotheses of expansion and resegmentation.