Point clouds to BIM. Methods for building parts fitting in laser scan data. Christian Tonn and Oliver Bringmann

Similar documents
With FARO PointSense for Revit. Jörg Braunes Platform Owner Software Chris Palmer Sales Engineer 1

HIGH PRECISION SURVEY AND ALIGNMENT OF LARGE LINEAR COLLIDERS - HORIZONTAL ALIGNMENT -

Selective Space Structures Manual

Measurements using three-dimensional product imaging

Three-Dimensional Laser Scanner. Field Evaluation Specifications

Decomposing and Sketching 3D Objects by Curve Skeleton Processing

Chapter 3 Image Registration. Chapter 3 Image Registration

Automatic urbanity cluster detection in street vector databases with a raster-based algorithm

3DReshaper Help DReshaper Beginner's Guide. Surveying

Fourier analysis of low-resolution satellite images of cloud

Licom Systems Ltd., Training Course Notes. 3D Surface Creation

SINGLE IMAGE ORIENTATION USING LINEAR FEATURES AUTOMATICALLY EXTRACTED FROM DIGITAL IMAGES

SUPPLEMENTARY FILE S1: 3D AIRWAY TUBE RECONSTRUCTION AND CELL-BASED MECHANICAL MODEL. RELATED TO FIGURE 1, FIGURE 7, AND STAR METHODS.

A New Online Clustering Approach for Data in Arbitrary Shaped Clusters

Topic 6 Representation and Description

Digital Image Processing Fundamentals

AUTOMATIC EXTRACTION OF BUILDING ROOFS FROM PICTOMETRY S ORTHOGONAL AND OBLIQUE IMAGES

09/11/2017. Morphological image processing. Morphological image processing. Morphological image processing. Morphological image processing (binary)

ELEC Dr Reji Mathew Electrical Engineering UNSW

Image representation. 1. Introduction

Range Imaging Through Triangulation. Range Imaging Through Triangulation. Range Imaging Through Triangulation. Range Imaging Through Triangulation

Available online at ScienceDirect. Energy Procedia 69 (2015 )

Lecture 18 Representation and description I. 2. Boundary descriptors

Chapter 3. Sukhwinder Singh

A DATA DRIVEN METHOD FOR FLAT ROOF BUILDING RECONSTRUCTION FROM LiDAR POINT CLOUDS

CSC Computer Graphics

Q3 Thin-walled Cross Section. FRILO Software GmbH As of 01/03/2017 Version 2/2016

3D ModelingChapter1: Chapter. Objectives

Morphological track 1

EzyRings. Table of Contents

Section 7.2 Volume: The Disk Method

Insight: Measurement Tool. User Guide

Tutorial 3: Constructive Editing (2D-CAD)

11.2 RECTANGULAR COORDINATES IN THREE DIMENSIONS

1 In the Mini Window Editor, double-click phase 1 (GF-Wall-External) to make it current:

Cell Decomposition for Building Model Generation at Different Scales

Texture based algorithm for analysing defects and fibre orientation of fibre reinforced plastics

Lecture 6: GIS Spatial Analysis. GE 118: INTRODUCTION TO GIS Engr. Meriam M. Santillan Caraga State University

Acknowledgement INTRODUCTION

EE368 Project: Visual Code Marker Detection

DETECTION AND ROBUST ESTIMATION OF CYLINDER FEATURES IN POINT CLOUDS INTRODUCTION

BIM. The Fastest Way to Quickly & Easily Insert and Modify Elements that are used in Revit project

Parametric Urban Patterns

Object-Based Classification & ecognition. Zutao Ouyang 11/17/2015

Analog Clock. High School Math Alignment. Level 2 CSTA Alignment. Description

Computer Graphics: 8-Hidden Surface Removal

Grammar Rule Extraction and Transfer in Buildings

VERO UK TRAINING MATERIAL

ArchiCAD 11 manual Chapter 1

In this assignment, we investigated the use of neural networks for supervised classification

INSPECTION OF THE TURBINE BLADES USING SCANNING TECHNIQUES

Ruukki Toolbox for Revit & AutoCAD. Installation, registration and basic usage

Comparative Study of ROI Extraction of Palmprint

DIGITAL SURFACE MODELS OF CITY AREAS BY VERY HIGH RESOLUTION SPACE IMAGERY

Semi-Automatic Techniques for Generating BIM Façade Models of Historic Buildings

HOUGH TRANSFORM CS 6350 C V

Identify parallel lines, skew lines and perpendicular lines.

FARO As-Built for AutoCAD Software Versatile Reality to CAD Solutions

Manipulating the Boundary Mesh

NATIONWIDE POINT CLOUDS AND 3D GEO- INFORMATION: CREATION AND MAINTENANCE GEORGE VOSSELMAN

EXAMINATIONS 2017 TRIMESTER 2

Abstract We proved in this paper that 14 triangles are necessary to triangulate a square with every angle no more than 72, answering an unsolved probl

Computational Fluid Dynamics as an advanced module of ESP-r Part 1: The numerical grid - defining resources and accuracy. Jordan A.

FEATURE-BASED REGISTRATION OF RANGE IMAGES IN DOMESTIC ENVIRONMENTS

MobileScan3D. MobileScan3D PlugIn for Geomagic. By Steintek GmbH

nora rubber fl oorings LIBRARY ELEMENT FOR ARCHICAD 17+

Tekla Structures Analysis Guide. Product version 21.0 March Tekla Corporation

Chapter 24. Creating Surfaces for Displaying and Reporting Data

Chapter 8: Implementation- Clipping and Rasterization

Lesson 5: Definition of Rotation and Basic Properties

Boardworks Ltd KS3 Mathematics. S1 Lines and Angles

Lecture 17: Recursive Ray Tracing. Where is the way where light dwelleth? Job 38:19

HOUGH TRANSFORM. Plan for today. Introduction to HT. An image with linear structures. INF 4300 Digital Image Analysis

COMPUTATIONAL GEOMETRY

VECTORIZATION, EDGE PRESERVING SMOOTHING AND DIMENSIONING OF PROFILES IN LASER SCANNER POINT CLOUDS

Determination of 6D-workspaces of Gough-type parallel. manipulator and comparison between different geometries. J-P. Merlet

Piping Design. Site Map Preface Getting Started Basic Tasks Advanced Tasks Customizing Workbench Description Index

Light: Geometric Optics

Density estimation. In density estimation problems, we are given a random from an unknown density. Our objective is to estimate

Fingerprint Classification Using Orientation Field Flow Curves

9.1. K-means Clustering

The principles of CCTV design in VideoCAD

/5 Stacks. Displays the slice that follows the currently displayed slice. As a shortcut, press the > key.

Mapping Environments Project 4 Modern Maps

Digital Image Processing Chapter 11: Image Description and Representation

Gregory Walsh, Ph.D. San Ramon, CA January 25, 2011

Properties of a Circle Diagram Source:

Activity 21 OBJECTIVE. MATERIAL REQUIRED Cardboard, white paper, adhesive, pens, geometry box, eraser, wires, paper arrow heads.

Segmentation Using Region Merging with Edges

A COMPETITION BASED ROOF DETECTION ALGORITHM FROM AIRBORNE LIDAR DATA

General Pyramids. General Cone. Right Circular Cone = "Cone"

The interfacing software named PSG Slice has been developed using the. computer programming language C. Since, the software has a mouse driven

Proceedings of the 5th WSEAS International Conference on Telecommunications and Informatics, Istanbul, Turkey, May 27-29, 2006 (pp )

Lesson 2: Wireframe Creation

ASSETS DATA INVENTORY BASED ON BUILDING INFORMATION MODELLING

Mathematical Analysis of Tetrahedron (solid angle subtended by any tetrahedron at its vertex)

THE DNA INEQUALITY POWER ROUND

Algorithms and Data Structures

Biomedical Image Analysis. Point, Edge and Line Detection

ROBUST BUILDING DETECTION IN AERIAL IMAGES

Transcription:

Point clouds to BIM Methods for building parts fitting in laser scan data Christian Tonn and Oliver Bringmann Kubit GmbH {christian.tonn, oliver.bringmann}@kubit.de Abstract. New construction within existing buildings requires documentation of the existing buildings, in a form that one is familiar with from new construction or architectural design. Laser scanning is a powerful tool to survey the built reality. It provides a replica of the existing building in the form of a point cloud. The difficulty is to analyse the resulting amounts of data that has been generated and being able to interpret it as a Building Information Model (BIM). This article proposes a new generic approach for pattern recognition of architectural objects. The procedure is introduced through the use of two examples - polygon fitting, which is important for the generation of new building element classes and wall detection. The second part describes how individual components can be automatically connected to consistent networks. BIM systems walls should be aligned, within predefined limits of accuracy, either perpendicular to or in line with each other. Keywords:point cloud, BIM, pattern recognition, components, wall alignment. 1 Fully automated versus semi-automated pattern recognition Obviously every user wants automatic and error free pattern recognition of components in point clouds. But in the real world of architecture, fully automated procedures come very quickly on their limits. The subsequent time required for fault detection and correction exceeds the initial advantage of the automated procedure. Workflows are required, that leave control with the user, but at the same time, significantly improve the manual modelling. As has already been explained in [1], fully automated methods are inadequate in practice for the following reasons: Interference objects in point clouds such as furniture, panelling and room plants inhibit automated pattern recognition as they are not capable of being modelled or singled out in the target system. Real objects are not as abstract as they are modelled in the BIM system. Instead, in reality there are many more details (see Fig. 1) and characteristics than can currently be simulated in the computer. Gabriela Celani, David M. Sperling and Juarez M.S. Franco (Eds.): The Next City: 16 th International Conference CAAD Futures 2015, pp. 358-369, 2015. Biblioteca Central Cesar Lattes 2015.

Christian Tonn and Oliver Bringmann 359 Point clouds are partly incomplete because of shadows, which the computer should invent, to create a correct model. Fig. 1. A high definition point cloud of a ground floor with façades Semi-automated procedures involving the user, have a clear advantage in this situation, because they can utilise the user's expertise and experience for modelling and pattern recognition as well as make the whole procedure more accurate and quicker than by just simply tracing over it manually. 2 Polygon Fitting The task of 2D-polygon fitting is, after a very roughly estimate of the polygon to be defined, to determine its optimum location within the point cloud. The best degree of quality is when the sum of the distances of all polygon segments to the densest points in the point cloud is at a minimum. To enable a complex search (e.g. by using simulated annealing [3]), an extremely fast computable and at the same time a very clear measure of quality is introduced. Especially with many independent parameters, such as when fitting a polygon, efficiency becomes important.

360 Point clouds to BIM - Methods for building parts fitting in laser scan data Fig. 2. Section through the point cloud (black) with the initial polygon (red) used for fitting Figure 2 shows an initial polygon (red), used as the starting position, over a section through the point cloud (black). Now polygon parameters are now optimised by using an iterative process. In this example, the parameter set consists of the point coordinates of the polygon corners. This set of parameters is varied in all possible combinations by an ever decreasing epsilon value.an error function calculates the measure of quality of the new parameter set and uses this new parameter set for the polygon, if its measure of quality is better (simulated annealing procedure). Here the main loop as pseudo code: Repeat until the measure of quality is satisfactory. Select a parameter at random. Slightly modify the parameter. Calculate the measure of quality. Accept or reject parameter variation. The main problem with this approach lies in the effort required for the calculation of the measure of quality, which must be determined many times, especially with a lot of parameters.

Christian Tonn and Oliver Bringmann 361 Fig. 3. Equidistant points along the polygon (red) on a distance transformed point cloud For this the following approach [4] is suggested: 1. The error function is smoothed out in a look-up image, in which the section through the point cloud is distance-transformed and filtered into a so called "Potential Profile" (see Fig. 3). 2. The polygon is divided equally by polygon segment points. 3. Now the smallest distance of each polygon segment point to the point cloud can be quickly determined. This is achieved by simply reading the pixel value in the "Potential Profile". The sum of these values read from the look up values results in the measure of quality for the current polygon fit. Through this preliminary computation approach of the "Potential Profile" it is possible to very quickly optimise of the polygon fitting and to adapt the topologically and diagrammatically defined polygon to the point cloud. Calculate the Potential Profile. Repeat until the measure of quality is satisfactory. Select a parameter at random. Slightly modify the parameter. Very quickly calculate the measure of quality. Accept or reject the varied parameter. 3 Wall Fitting In the current BIM system you must first select the wall type together with the appropriate wall thickness before creating a wall. Then select the precise start and end points of the wall axis.

362 Point clouds to BIM - Methods for building parts fitting in laser scan data Fig. 4. Point cloud slice as a floor plan point density image with threshold When fitting the walls the information to wall type and wall thickness together with the correct wall axis should be derived from the point cloud. The problem to be solved is, with just two mouse clicks anywhere inside of the wall, to determine the position and type of the wall and insert the wall entity. The procedure first reduces the three-dimensional point data of the floor level to be analysed to a grey scale image (floor plan point density image with threshold, see Fig. 4). It is assumed the wall is vertical and straight. The approximate height of the wall is also given. This allows the problem to be reduced to a 2D analysis. The relevant section of the image (see Fig. 6) is converted, by using a customised distance transformation, into a second image, which shows the shortest distance of each image point to the next densest point cloud cell (see Fig. 7). In contrast to the previously discussed polygon fitting procedure to create the "Potential Profile", in this use case, a grey scale image (floor plan point density image with threshold) is converted in to the "Potential Profile". This approach also takes into account the point density information in the point cloud. The grey scale image is simply split into 8 luminous intensity segments, which in turn can be considered as a distance transformed black and white image. These 8 distance transformed images are then weighted again according to their original luminous intensity values and combined into a "Potential Profile". Furthermore, the "Potential Profile" is split into two separate fields. The boundary is the initial line clicked by the user. Based on this border two separate fields are formed, an upper and a lower field, where the point cloud density images can be, independently of each other, converted into a "Potential Profile". Thereby one avoids the possibility that point cloud points on one side of the line initially clicked can influence the line fitting results of the opposite side.

d1 d2 α Clicked points Christian Tonn and Oliver Bringmann 363 These distance images allow a local minimisation of two parallel lines which can be performed extremely quickly. These lines represent the inner and outer surfaces of a straight, vertical standing wall. Fig. 5. Diagram of wall fitting The three optimising parameters to be determined for this wall fitting function are: 1. the angle of rotation α of the wall axis to the initially clicked line, 2. the "upper" distance d1 of the wall surface and 3. the "lower" distance d2 of the wall surface to the rotated click line (see Fig. 5). In contrast to a fully automated procedure the user can here additionally use corrective intervention, if the wrong line segment (e.g. of a window etc.) was found for the local optimum of the wall surface. After a first quick optimisations iteration, the user has the option to click on up to 4 correction points in the image, which will have a corrective effect on the start position of the two line segments. After entering a correction point a new optimisations iteration is carried out in order to adapt the inner and outer sides of the wall onto the point cloud. Fig. 6. The wall fitting optimisation procedure - find two parallel lines

364 Point clouds to BIM - Methods for building parts fitting in laser scan data Fig. 7. A distance image with red lines detected on the local minimum Fig. 8. Detected wall thickness and location - showing the pre-sorted wall type catalogue After the wall thickness information has been obtained, the user can select the appropriate wall type from the pre-sorted BIM catalogue of all wall types (see Fig. 8) and draw it, or the precise wall thickness measurement can be appropriately rounded to a meaningful value and continued to be used. 4 Align Walls In the next step the fitted walls, all of which have precisely the measured values from the point cloud, will be adapted to meet the requirements of a generalised BIM model [2]. These requirements include:perpendicularity, parallelism, continuous alignment with changing wall thicknesses and automated trimming/extending of wall segments (see Fig. 9). The core problem is to form the optimal wall disjoint clusters. Within a cluster, the requirements are enforced to minimise the deviation from the point cloud.

Christian Tonn and Oliver Bringmann 365 Fig. 9. Wall segments of a floor plan before and after the "Align Walls" function. The walls in a reference system are aligned perpendicular to, parallel and in-line with each other. Fig. 10. Align Walls in PointSense for Revit: The automatically detected reference systems are shown in colour. The algorithm for this purpose can be roughly divided into three steps, which are processed in sequence (see fig. 11): 1. Rotate Each wall segment is rotated so that it lies within its "maximum deviation for reference systems", and that parallel clusters are created. A reference system consists of a main direction angle and an increment angle (usually 90 ) in the XY ground plane. Such a reference system will be assigned to each of the walls (see Fig. 10). 2. Axial alignment It is checked to see whether all parallel walls within their "maximum deviation for wall axis alignment" can be moved onto a common axis. This axis can lie on either the inside or the outside of the wall. The side having the smallest deviation from the fitted start position of the wall is chosen. Once again clusters are formed for creating the wall axes.

366 Point clouds to BIM - Methods for building parts fitting in laser scan data 3. Wall Trimming Within a specified search radius, all the ends of the wall segments are automatically trimmed or extended to create a closed floor plan. Original Step 1 - after rotate Step 2 - after axial alignment Step 3 - after wall trimming Fig. 11. The three steps of the algorithm Below the algorithm is semi-formally explained in more detail: Rotate 1. The total number of walls is W = {w } 2. Generate user-defined reference systems URS = {urs } by the combining of: a. If applicable: a single one for North (with main direction angle 0 ) b. If applicable: for each reference direction manually created by the user There are so many clusters formed C = {c...}, as there are entries in the URS Each cluster has access to its main direction c.direction 3. Try to assign all walls w, to the best fitting cluster c, i.e. w is an element of c, precisely for all c' (c' not equal to c) where: angle(w.direction, c.direction + n * increment angle) < angle(w.direction, c.direction + n * increment angle) AND angle(w.direction, c.direction + n * direction angle) < angular tolerance with natural number n with natural number n, that leads to a minimum angle In exceptions some walls are left over. 4. Generate, by automated clustering the possible directions ARS = {ars...} of the remaining walls AW := W - (union of all walls c). There are minimum 0 maximum AW clusters AC = {ac } formed. 5. Arrange all items from AW in an ac analogous to rule (3) above. 6. C := C + AC 7. Rotate all walls of a cluster c on the c.direction n * increment angle with natural number n, that leads to a minimum angle This should always be possible for a cluster.

Christian Tonn and Oliver Bringmann 367 Axial Alignment 8. Create by automated clustering of possible axes A = (a...) for all subsets of parallel walls. The axis of an axially aligned cluster fc is fc.a 9. Move all of the walls of a cluster fc to fc.a, if permitted by the "maximum deviation for wall axis alignment", if more than one is applicable use the best one. This should always be possible for a cluster. Wall Trimming 10. Now considered the wall segment ends. All nearby intersection points in the XY-plane are joined to neighbouring wall segments, which lie within the search radius. These intersections will be formed from the respective wall segment ends that are being considered. 11. Now the wall segment end is extended or shortened to its most remote intersection point with the adjoining segments. 12. The wall in the BIM system being used is defined by its mean centre line. Given that the wall axes are now topologically and geometrically correctly joined, the BIM system being used takes over the precise detailed modelling of the wall connections. Below is described how "automated clustering" works, when used for both rotating and axial alignment. The described algorithm is adopted from the k-nearest neighbour algorithm [5]. The differenceis, that in our case the number of clusters has to be computed to meet the user defined deviation parameters. First, the rotation should be considered: 1. Generate for each wall a separate reference system, that does not already exist for this main direction angle. At this point the error (i.e. the "maximum deviation for reference systems") should still be zero. 2. If the error is below the given tolerance, proceed as follows: a. Reduce the number of reference systems by the one whose sum of the squares of all of the errors results in the smallest increase in error. Also check all reference systems for possible "omission". b. Add the walls belonging to the removed reference system to the most suitable reference system still remaining. c. Calculate the resulting maximum error. If it exceeds the "maximum deviation for reference systems" immediately exit the loop or otherwise continue from "Point a.". In this way the necessary number of reference systems together with their main direction angle are automatically determined, to keep them within a certain maximum deviation. The same procedure is employed for the automated clustering for axial alignment. Start with all of the walls in a single "axial alignment" group and then remove the group with the smallest error as long as you are still within the user-defined tolerance.

368 Point clouds to BIM - Methods for building parts fitting in laser scan data Fig. 12. "Align walls" - Coloured wall axes in a three storied building. This approach obviously is an algorithm involving mean square time complexity in relation to the number of walls. The approach can be speeded up by heuristics, where the group of the walls to be examined has been previously subdivided. So, for example, in wall groups that could never be aligned with each other because of the set error tolerance. Because the individual calculation and error evaluation steps themselves are not so time consuming, the procedure can be applied to entire buildings in a reasonable amount of time. The three floors of the building shown (see Fig. 12) required around 3 seconds for the computation of "Align walls" on a commercially available desktop PC (Core i5-3570; 3.4 GHz). 5 Outlook The "Fitting" method presented in the article should also be used for fitting other BIM component types. It is worth mentioning here that they would assist in the detection of

Christian Tonn and Oliver Bringmann 369 windows, doors and openings as well as beams and pipes. Similarly alignment, axial alignment and trimming should also be extended to other BIM component types. The semi-automated workflows presented, together with their own algorithms facilitate an efficient work process. There is a wide range of potential applications for pattern recognition in point clouds. References 1. Braunes, J.:, Von der Punktwolke zum Building Information Model (BIM) - Konsequenzen und Wege für die Bestandserfassung, in VDVmagazin 2/14, 132-136 (2014) 2. Bringmann, O.: Vom Bauaufmaß zum konsistenten Bauwerksmodell,in Nutzerorientierte Bausanierung, Verlag der Bauhaus-Universität Weimar, Weimar, 21 26(2010) 3. Lengauer, T.: Combinatorial Algorithms for Integrated Circuit Layout, B. G.Teubner, Stuttgart (1990) 4. Rosenfeld, A. and Pfalz, J.: Distance Functions in Digital Pictures, Pattern Recognition Vol. 1, 33-61 (1968) 5. Altman, N. S.: An introduction to kernel and nearest-neighbor nonparametric regression, in The American Statistician46 (3), 175 185 (1992)