# Automatic detection of doors and windows using point clouds in the context of as-built BIM

Saad Boudarbala, Rafika Hajji, Camille Gourguechon, Hélène Macher, Tania Landes

<figure><img src="image_1.png" /></figure>

## To cite this version:

Saad Boudarbala, Rafika Hajji, Camille Gourguechon, Hélène Macher, Tania Landes. Automatic detection of doors and windows using point clouds in the context of as-built BIM. 8th International ISPRS Workshop LowCost 3D - Sensors, Algorithms, Applications, Dec 2024, Brescia, Italy. pp.37 - 44, 10.5194/isprs-archives-xlviii-2-w8-2024-37-2024. [https://hal.science/hal-04988876v1](https://hal.science/hal-04988876v1)

HAL Id: hal-04988876

[https://hal.science/hal-04988876v1](https://hal.science/hal-04988876v1)

Submitted on 13 Mar 2025

HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d'enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

<figure><img src="image_2.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
# Automatic detection of doors and windows using point clouds in the context of as-built BIM

Saad Boudarbala<fnref n="1" />,<fnref n="2" />, Rafika Hajji<fnref n="1" />, Camille Gourguechon<fnref n="2" />, Hélène Macher<fnref n="2" />, Tania Landes<fnref n="2" />

**Keywords:** Point cloud, opening detection, as-built BIM

**Abstract:**

The automation of 3D modelling from point clouds has emerged as a highly intriguing research area, offering significant potential value in the context of scan-to-BIM (Building Information Modelling) process. 3D modelling from point clouds is often performed manually, which is time-consuming and prone to errors. Most methodologies employed for the processing of building point clouds data rely on geometric information to extract objects, thereby ignoring radiometric information, which could provide a highly valuable addition to object detection. Emerging approaches integrate both geometric and radiometric data to enhance the robustness of the algorithms. The objective of this study is to develop an automatic method for the extraction and 3D modelling of building openings (doors and windows). The process makes use of both geometric and radiometric information, applied to both indoor and outdoor environments. The resulting workflow enhances the accurate detection of openings, facilitating the creation of BIM objects for integration into a 3D model. Evaluation results are promising, demonstrating the effectiveness of combining geometry and radiometry in point cloud analysis.

## 1. Introduction

Research on automating building modeling from point clouds began in the 1990s, initially targeting city modeling to streamline 3D urban representations. This effort transitioned from using aerial photogrammetry to the more precise LiDAR (Light Detection And Ranging) technology, which enabled detailed 3D data collection through high-density point clouds. Laser scanning now provides detailed, but unstructured point clouds that require conversion into structured models, especially for BIM.

Despite the research advancements in this area, the automation of scan-to-BIM process remains challenging, particularly for accurately detecting architectural features like doors and windows. Current software requires significant manual operations, which is time-consuming and prone to error, especially with complex geometries and cluttered scenes. This work aims to automate the detection of doors and windows from point cloud and their integration in 3D models, providing an efficient solution for creating BIM models for existing buildings.

The paper is organized as follows: section 1 presents a state of the art in detecting openings from point clouds. Section 2 resumes the methodological workflow of our developed approach. While the third section highlights the obtained results and discusses the finding. The paper ends with a conclusion presenting the research perspectives.

## 2. Related work

The automatic detection of architectural openings, such as doors and windows, is a complex task due to the intricacies of indoor environments, data noise, and the need to accurately capture detailed structural elements. Numerous studies have

sought to address this challenge, each proposing different methods that vary primarily based on the data types used to extract essential information for defining these openings. These methods can be categorized into three main approaches: those based on the geometric characteristics of the point cloud, those that incorporate its radiometric properties, and those that rely on deep learning techniques.

### 2.1 Opening detection based on the geometry of the point cloud

These methods are based on the principle that openings appear as "gaps" in the point cloud and are treated as empty spaces. Among the earliest approaches explored in this context is the method proposed by (Pu and Vosselman, 2007), which interprets the absence of points on wall planes as an indication of the presence of openings. This method extracts openings by generating a TIN (Triangulated Irregular Network) and identifying opening boundaries based on the edge lengths of the triangles in the TIN. (Budroni and Böhm, 2010) adopt a similar approach by identifying areas without laser measurements in the 3D point cloud and then refining the 3D model of each detected object. The method proposed by (Adan and Huber, 2011) and (Nikoohemat et al., 2017) relies on ray-tracing to reconstruct the acquisition rays. Using these rays, they label the voxels into three categories: empty, occluded, and occupied. The detection of openings is then performed using an algorithm that leverages these labels, along with depth edges identified by the Canny and Hough-Transformation algorithms, to train a SVM (Support Vector Machine) model based on the size, shape, and location of the openings. (Tuttas and Stilla, 2013) adopted a similar approach, but instead used point distribution histograms and binary maps generated with vertical and horizontal masks, followed by a Fourier transform to identify the openings.

<footnote n="1">¹ College of Geomatic Sciences and Surveying Engineering, IAV Hassan II Rabat, Rabat 6202, Morocco; (boudarbalasaad, r.hajji)@iav.ac.ma</footnote>

<footnote n="2">² Université de Strasbourg, INSA Strasbourg, ICube Laboratory, Photogrammetry and Geomatics Group, 67000, France (saad.boudarbala, camille.gourguechon, helene.macher, tania.landes)@insa-strasbourg.fr</footnote>
(Pexman et al., 2021) and (Cui et al., 2019) address wall openings differently by detecting gaps through the identification of points located between two parallel facades of a wall. The points within this space are analyzed using a point density histogram in both horizontal and vertical directions, with points grouped based on empty intervals in the histogram.

Other methods rely on segmentation and geometric shape analysis in point clouds to identify typical opening features, such as straight edges, closed contours, and standard door and window dimensions, using precise geometric criteria to distinguish openings from other architectural elements for easier extraction and integration into the BIM model. Several object extraction methods from point clouds are based on techniques that utilize 2D images generated from the projection of these 3D point clouds. For example, (Jung et al., 2018) project the wall points onto an inverse binary map, where the contours of the openings are analyzed to check if they are rectangular by using the perimeter-to-area ratio (P²/S). The segmentation is then refined using the Douglas-Peucker algorithm. (Ambrus et al., 2017) incorporate the rectangularity criterion in identifying potential openings. The issue of occlusions on walls, especially in indoor environments, is crucial to consider. (Michailidis and Pajarola, 2017) propose an approach that combines contour extraction on a binary image with the reconstruction of occluded areas on the wall. Projection onto a binary map can result in the loss of depth information when detecting openings. Therefore, (Wang et al., 2011) recommend using the point cloud directly by converting it into voxels to maintain three-dimensional analysis. The extraction of borders is performed by analyzing the neighborhood relationships between each point and its neighbors. To precisely locate openings, the method uses a combination of projection and the Plane-Sweep Principle (Mesolongitis and Stamos, 2012). Similarly, (Boulaassal et al., 2010) and (Wang et al., 2011) begin opening detection by identifying façade planes using the RANSAC algorithm, then extract contours with Delaunay triangulation, decompose them into straight segments and arcs, and generate connection points from segment intersections to create an accurate geometric model of the façade contours.

## 2.2 Opening detection by adding radiometric component of point cloud

Traditionally, opening detection primarily relies on the geometric characteristics of points, such as their X, Y, and Z coordinates. However, windows and doors in walls can have distinct colors and materials compared to the wall, leading to intensity variations, that can be exploited to identify openings more accurately. The use of radiometric data can help overcome the limitations of purely geometric detection, especially when the geometry of the opening is very similar (without gaps or recesses). Radiometric information typically includes intensity and color of the points, with some researchers even utilizing the thermal spectrum (Jarząbek-Rychard and Maas, 2023), which can significantly improve the accuracy of opening detection results. One of the first radiometry-based point cloud segmentation methods is that of (Zhan et al., 2009), which relies on region growing and region merging algorithms.

(Macher et al., 2021) separately utilize intensity and color for segmentation. First, to exploit intensity, they analyze the intensity histogram to identify peaks using a density estimation curve, then iteratively extract points corresponding to maxima (walls) and minima (openings). To add robustness to detection, geometry is not completely abandoned; instead, the mean plane of the façade is used as a filter, retaining only the points

corresponding to openings. Second, to exploit colorimetry, the approach uses the region-growing algorithm to group dense regions by calculating Euclidean distances for each point in a 3D color space (RGB). This space is expanded into a 6th dimension by adding geometry (XYZ), thus incorporating XYZ information into the calculation of Euclidean distances between points. This combination of geometry and color is also adopted by (K. Ait El Kadi et al., 2014) by refining RANSAC-generated plane segments with a region-growing algorithm and color similarity criteria, resulting in homogeneous surfaces in terms of coplanarity and radiometric similarity.

In some cases, radiometric information may not be directly integrated into the point cloud but instead added using ortho-images where each pixel contains both radiometric and depth information. (Adán et al., 2020) combine this information with labeled voxels of the wall (Adan and Huber, 2011). Their method is based on analyzing discontinuities in the 4D RGB-D space (Red, Green, Blue, and Depth) and utilizing knowledge of the visible regions of the wall, with color and depth components processed separately and combined sequentially.

## 2.3 Deep Learning approaches

The use of deep learning in automatic object detection from point clouds, particularly in indoor environments, has significantly evolved in recent years. By combining advanced neural networks with segmentation and classification techniques, it becomes possible to automatically extract both structured and unstructured elements, while reducing errors caused by noise and occluded areas. The approaches of point cloud processing can be classified into three categories: Voxel-Based approaches, Point-Based approaches, and Image-Based approaches.

Voxel-Based approaches transform the space into voxels to create 3D tensors, which are then used for applying CNNs (Convolutional Neural Network), particularly for object classification (Hackel et al., 2017). 3D ShapeNets is one of the most widely used methods in this context. It involves reconstructing 3D-shaped objects using a CNN applied to a 3D voxel grid (Wu et al., 2015). This approach learns the distribution of complex shapes from raw CAD models, automatically discovering a hierarchical representation of object parts, and supports object recognition, shape completion from 2.5D depth maps, and active recognition through optimal view planning. VoxNets is also used as a voxel-based deep learning model (Maturana and Scherer, 2015). The system relies on two main components: a volumetric grid representing the estimated spatial occupancy of the segment and a 3D CNN that directly predicts the object's class from this occupancy grid.

Unlike Voxel-Based approaches, the Point-Based methods work directly with point cloud data using architectures that include only fully connected layers and pooling layers, rather than convolutional layers. PointNet classifies point clouds in their entirety or performs semantic segmentation of a 3D scene (Qi et al., 2017). For object classification, the point cloud is sampled from a shape or pre-segmented from a scene, and the deep neural network generates scores for each candidate class. For semantic segmentation, the model processes individual objects or sub-volumes of a 3D scene, assigning scores to points for the corresponding semantic sub-
categories. The PointNet model has led to the development of several variants tailored for specific segmentation objectives, including models like PCT, PointASNL, RandLA-Net, and SCF-Net, which are considered highly effective for the automation of opening reconstruction. (Qi et al., 2017) enhanced the PointNet model with PointNet++, which incorporates hierarchical point grouping and optimized layers to capture local contexts.

A third category of methods, known as image-based or multi-view approaches, applies neural networks to 2D tensors created from selected scene views. In shape retrieval tasks, the multi-view approach captures various images of the 3D mesh to perform classification through neural networks. (Boulch et al., 2018) propose a model called SnapNet that generates snapshots of the 3D scene to use as inputs for a 2D CNN. This model performs dense labeling on the images, followed by projecting the semantic segmentation results back onto the original point cloud.

### 3. Methodology

After reviewing various methods in the state of the art, it was established that a deep learning approach would not be suitable due to the limited availability of training data, particularly for the detection of openings. Instead, a combination of geometric and radiometric techniques could significantly enhance the detection and modelling of openings. This section outlines the methodology developed to achieve this goal. It focuses first on the criteria for extracting information from point clouds to build hypotheses for the subsequent steps. Then, it presents the design of an automatic approach for detecting openings, followed by a semi-automated method for integrating detection results into a digital model.

#### 3.1 Data acquisition

The Faro Focus Premium 150 scanner was used for data acquisition. It offers high-speed, high-resolution captures and advanced features like Hybrid Reality Capture™ for fully colorized 3D data. The scan site comprises sections of the INSA building, including the north and west facades and specific interior areas, selected for their architectural complexity and the diverse types of openings present across indoor and outdoor environments. The post-processing and adjustment of the point cloud are performed using the Faro Scene software (Figure 1). It is important to note that our opening detection method relies on the assumption that wall segments are already identified and modeled.

The geometric characteristics of the point cloud play a crucial role in characterizing and analyzing the structures, particularly for automatic opening detection. This information varies between indoor and outdoor environments, as illustrated in Table 1. The geometry of the exterior facade point cloud is relatively simple, with clear visibility of elements and unobstructed openings, making detection easier. In contrast, interior walls are more complex geometrically due to occlusions and obstructions, which affect point distribution and quality, complicating structure identification. Additionally, the similarity in geometry and color between certain objects and openings can create ambiguities, leading to eventual misidentification of objects as openings

<figure><img src="image_3.png" /><figcaption>Figure 1. Point cloud data; (a) Exterior view (b) Interior view</figcaption></figure>

<table><caption>Table 1. Advantages and disadvantages of point cloud geometry for outdoor and indoor walls</caption><thead><tr><th></th><th>Outdoor</th><th>Indoor</th></tr></thead><tbody><tr><td>+</td><td>-Simple façade geometry<br/>- No occlusion<br/>- Unobstructed openings</td><td>- Replaces the lack of points due to outdoor oblique acquisition</td></tr><tr><td>-</td><td>- Lack of points due to oblique scanner acquisition</td><td>- Occlusion<br/>- Details with the same shape and colour</td></tr></tbody></table>

The intensity of points in a laser point cloud is strongly influenced by the reflective properties of the scanned materials. The recorded intensity depends on factors such as color, texture, and composition, with darker or rougher surfaces absorbing more light and resulting in lower intensity values, while lighter or reflective surfaces, like metal, reflect more light, producing higher intensity values. Other factors, such as the angle of incidence of the laser beam and the distance between the scanner and the object, also affect intensity values. We found that a perpendicular angle and shorter distance generally resulting in higher intensity, as observed in the point cloud. A near-normal incidence angle (perpendicular to the surface) and a short scanner-target distance generally led to higher intensity, and vice versa. These phenomena are clearly noticeable as illustrated in Figure 1.

For the colorimetry, in outdoor environments, lighting conditions are generally favorable, ensuring good visibility and better data quality. In contrast, indoor environments may have less optimal lighting, leading to heterogeneous color values. This variability is often caused by uneven sun exposure, creating shaded areas in some regions and very bright areas in others, complicating surface analysis. These lighting variations must be considered when interpreting the acquired data to ensure optimal accuracy. The HDR (High Dynamic Range) mode reduces lighting discrepancies, particularly indoors, by capturing a wider range of brightness, preserving details in
bright areas and illuminating shadows, leading to more accurate color representation and better surface analysis.

<figure><img src="image_4.png" /><figcaption>Figure 2. Influence of scanner position on intensity value; (a) Exterior wall, (b) Interior wall, (c) Portion of exterior façade. Intensity increases from blue to red.</figcaption></figure>

## 3.2 Assumptions

This method, based on point clouds geometry, is improved with additional radiometric data. During the processing and selection of attributes for point cloud analysis, we found that the radiometry of the point cloud is significantly affected by acquisition conditions, such as ambient lighting, scanner-to-target distance, and angle of incidence, as described in section 3.1. We managed to reduce the impact on color by using a laser scanner equipped with a camera with HDR mode. But intensity values remained highly influenced by these conditions. The required corrections for intensity proved to be too complex and time-consuming, leading us to abandon its use, despite its potential benefits if properly corrected and to focus on the contribution of color. Two scenarios have been considered: One deals with the openings that has contrast with their wall host. A second one aims to search for openings that have the same color as their wall host. It's not a fixed rule, but generally speaking the first situation occurs mostly indoors and the second occurs outdoors.

## 3.3 Automatic detection of openings from point clouds

Our work involves processing point clouds through a filtering process that isolates and retains only boundary points of openings (Figure 3). These boundary points are crucial for accurately defining the dimensions of openings, which are necessary for their integration into the 3D BIM model. The first step is to extract only points that match the color of the openings (opening leaf and/or casing) using color-based extraction. The GMM (Gaussian Mixture Model) is used as an unsupervised learning algorithm in this initial extraction. Throughout each subsequent step, it is important to bear in mind that our objective is to progressively reduce noise and focus solely on isolating the openings. By "noise" we refer to all remaining points at each processing stage that are considered details other than the openings. Secondly, the resulting point cloud undergoes geometric processing, starting with plane extraction using the RANSAC (RANdom SAmple Consensus) algorithm, followed by boundary extraction with Alpha-Shape algorithm. After extracting the contour points, we apply the DBSCAN (Density-Based Spatial Clustering) algorithm for clustering dense regions.

This process yields clusters representing windows and residual noise. The DBSCAN clustering is designed to facilitate the individual treatment of these clusters in subsequent steps.

Thirdly, the points of each contour line are clustered by using a RANSAC line extraction algorithm. Looking for rectangular openings, two vertical lines and two horizontal lines are sought. For each point cloud forming a line, we calculate the median coordinates of points, resulting in a set of coordinates $(x_i, y_i, z_i)$ for each line.

Horizontal Lines are divided into two sub-categories:

* Upper Line: This is the horizontal line with the highest median z-coordinate ($Z_{max}$).

* Lower Line: This is the horizontal line with the lowest median z-coordinate ($Z_{min}$).

For vertical lines, the endpoints are defined by the coordinates $(x_i, y_i, z_{min})$.

The coordinates of these points allow us to extract the geometric parameters of the vertical contours of the opening, as described in Table 2.

<figure><img src="image_5.png" /><figcaption>Figure 3. Methodological workflow for automatic detection of openings</figcaption></figure>

<table><caption>Table 2. Structural parameters of openings</caption><thead><tr><th>Parameter</th><th>Formula</th></tr></thead><tbody><tr><td>Height H</td><td>H = Z<sub>max</sub> - Z<sub>min</sub></td></tr><tr><td>Width E</td><td>E = &radic;((x<sub>2</sub> - x<sub>1</sub>)<sup>2</sup> + (y<sub>2</sub> - y<sub>1</sub>)<sup>2</sup>)</td></tr><tr><td>Insertion point<br>(Centre of lower<br>horizontal<br>segment; Revit) X</td><td>X = (<sup>x<sub>1</sub> + x<sub>2</sub></sup>&frasl;<sub>2</sub>, <sup>y<sub>1</sub> + y<sub>2</sub></sup>&frasl;<sub>2</sub>, <sup>z<sub>1min</sub> + z<sub>2min</sub></sup>&frasl;<sub>2</sub>)</td></tr></tbody></table>
At this stage, we can clearly identify openings in the walls and determine their dimensions and insertion points based on the detected lines. With shape constraints, only clusters with reasonable dimensions are retained to avoid preserving details that may look like openings but have unreasonable dimensions. This ensures that only the clusters corresponding to actual openings are kept.

## 3.4 Semi-automatic modeling of the detected openings

The openings are automatically integrated in the BIM model created in Revit thanks to Dynamo, a visual programming tool. The parameters of openings are exported to csv files. A Dynamo script developed by C. Gourguechon was adapted to implement a processing chain for automatically positioning windows in the digital model. It reads the csv file and uses the information from each entry (dimensions and insertion points) to generate and accurately place the corresponding objects, such as doors and windows, into the 3D model. The families of openings used are created in such a way that they can be adapted according to the dimensions reported in the csv file.

<figure><img src="image_6.png" /><figcaption>Figure 4. Flowchart of the stages involved in inserting openings into the digital mode</figcaption></figure>

## 4. Results and discussion

In this section, results obtained at each stage of the developed methodology are analyzed, from the automatic detection of openings to their semi-automatic insertion into a BIM model. Additionally, an evaluation of the approach has been conducted.

### 4.1 Automatic detection of openings from point

The detection of openings in our approach relies on three key steps: (1) extraction based on colorimetry, (2) extraction of principal planes, (3) contour detection and classification into straight segments. This processing sequence is designed to eliminate points not belonging to the opening class at each stage, retaining only the points that define the contours of the openings. The processing results with and without the colorimetry-based extraction step clearly demonstrate that, in indoor environments, color extraction is crucial. As illustrated in Figure 5, without this step, the RANSAC algorithm often struggles to correctly identify the main plane containing openings, due to occlusions and numerous wall details. Color-based segmentation significantly reduces unnecessary details, making the algorithm's task easier and enhancing its overall performance. The residuals, which share the same color as the openings, still pose a challenge. To remove this noise and address issues related to the lack of points, whether due to occlusions or variations in lighting conditions, we introduce the

geometric component in the processing step of our approach.

The second step involves extracting plane segments using the RANSAC algorithm to obtain the main planes of a facade. Since we have chosen to use radiometric information for the initial extraction, the point cloud input to our RANSAC algorithm will be derived from this extraction based on colorimetry. For exterior facades, we found that applying the RANSAC algorithm directly to the facade point cloud produces nearly identical results to using the GMM extraction Figure 6. This is due to the simple geometry and lack of clutter on exterior facades. Therefore, we can skip the initial color-based extraction and use the original point cloud directly as input for the RANSAC algorithm.

In the next stage of the method, contours were extracted from the RANSAC planes of the openings using the alpha-shape algorithm, which retains only the points on the edges of the openings. An additional analysis is required to identify only the straight-line segments that define the outer rectangular edges of the openings, assuming all openings are rectangular. In our approach, we use the DBSCAN algorithm to group dense regions into clusters, allowing us to analyze the specific parametric characteristics of each opening. Thus, the position and dimension parameters of each opening can be calculated. The results show a significant elimination of noise at each step of the process. Furthermore, as we progress through the processing chain, we are able to detect openings with increasing precision. This is particularly evident in the stages of contour extraction and object dimensioning. A visual comparison between reality and the detected openings shows that all openings are accurately detected without errors in an outdoor point cloud of a simple façade. The same is true for tests carried out on indoor wall point clouds with many hidden areas. The detection results are very satisfactory (Figure 7), and the precision and accuracy of this detection will be evaluated in section 4.4.

<figure><img src="image_7.png" /><figcaption>Figure 5. Plane extraction by RANSAC from a raw point cloud without extraction based on colorimetry (3 RANSAC planes of an interior wall).</figcaption></figure>

<figure><img src="image_8.png" /><figcaption>Figure 6. Extraction of a plane by RANSAC (exterior façade)</figcaption></figure>
<figure><img src="image_9.png" /><figcaption>Figure 7. Automatic detection of openings from wall point cloud</figcaption></figure>

## 4.2 Limits of opening detection

After this detection stage, it is appropriate to emphasize the limits encountered. In order to analyze each opening separately and subsequently determine its specific parametric features, we opted to cluster the dense regions using the DBSCAN algorithm. This approach is essential to our methodology, but it has a limitation when dealing with adjacent and tightly spaced openings. Moreover, the principle of using RANSAC for extracting the opening plane implicitly assumes that all openings on a facade belong to the same plane, which is not always the case. These two aspects were observed on one of the exterior facades in our point cloud. The application of our approach on that point cloud fails to extract the openings. Therefore, specific modifications were introduced (Figure 8):

- Adjacent openings are considered as a single opening. In the automatic insertion into the BIM model, a family of openings consisting of 4 sub-openings is defined.

- The extraction of the main plane using RANSAC does not directly provide the plane that contains the openings. Therefore, we list all possible planes and select the one that we consider to be holding the openings.

<figure><img src="image_10.png" /><figcaption>Figure 8. Proposed solution for detection on a complex exterior façade: (a) point cloud, (b) selected RANSAC plane, (c) contour extraction, (d) clustering by DBSCAN, (e) classification of straight segments.</figcaption></figure>

## 4.3 Semi-automatic modeling of detected detection openings

To ensure semi-automatic insertion of detected openings into a BIM model of structural entities (walls and ceilings) created manually, a Dynamo script was used. This script takes a CSV file containing the parameters of our detected openings as input and inserts them into the corresponding walls. Instead of defining fixed families for windows and doors, we adopted adaptable families based on dimensions (height, width) defined in the CSV file for each object. As a result, two main families (generic door and window) were created, along with a specific window family for four adjacent openings, tailored to our building's particular case. Ultimately, all openings were successfully inserted into the digital model, along with structural elements.

<figure><img src="image_11.png" /><figcaption>Figure 9. Result of semi-automatic insertion of openings in the digital model: (a) point cloud of the north facade of the building, (b) BIM model with openings, (c) point cloud of the west facade.</figcaption></figure>

## 4.4 Assessment of the detection and insertion results

Our methodology is tested on a point cloud containing 119 openings, including doors and windows, between the indoor and outdoor environments, and is subsequently evaluated to determine its performance level. Some algorithms used in the geometric part of our method require the definition of precise parameters. Therefore, it is crucial to consider a sufficient density of the point cloud to ensure efficient processing. A spatial sampling of 1 cm is applied from the outset before using the method. The parameters used in the selected algorithms are listed in Table 3.

<table><caption>Table 3. Threshold values adopted at a sampling value of 1cm for this project</caption><thead><tr><th>Parameters</th><th></th><th>Value (m)</th></tr></thead><tbody><tr><td>Sampling threshold</td><td></td><td>0.01</td></tr><tr><td>Plan segmentation threshold</td><td>RANSAC</td><td>0.005</td></tr><tr><td>Edge extraction threshold</td><td>α-SHAPE</td><td>0.05</td></tr><tr><td>Dense region separator</td><td>DBSCAN</td><td>0.10</td></tr><tr><td>Line segmentation threshold</td><td>RANSAC</td><td>0.02</td></tr></tbody></table>

The developed method faces various challenges in extracting the contours of openings and calculating their parameters. However, by utilizing criteria that characterize openings in walls, we were able to devise an approach that overcomes these difficulties. As a result, more than 97% of the 119 openings were successfully detected, whether extracted from the exterior or interior point clouds. Table 4 details the result of detection for openings between indoor and outdoor environments.
<table><caption>Table 4. Results of detections for openings</caption><thead><tr><th></th><th>Existing openings</th><th>Detected openings</th><th>Windows Detected</th><th>Doors Detected</th></tr></thead><tbody><tr><th>Outdoor</th><td>89</td><td>100%</td><td>88</td><td>1</td></tr><tr><th>Indoor</th><td>30</td><td>90%</td><td>17</td><td>10</td></tr></tbody></table>

Two windows were not detected because they are adjacent to other openings of the same color and partially obscured by objects in the interior environment. Additionally, our method failed to identify a door whose point cloud was heavily obscured and whose color was altered by shadows as shown in Figure 10.

<figure><img src="image_12.png" /><figcaption>Figure 10. Door detection error in an indoor environment</figcaption></figure>

To evaluate the results, we will rely on the coordinates of insertion points and the automatically calculated dimensions of openings:

### Comparison between indoor and outdoor

In our evaluation data, we have 7 openings that are detected from both indoor and outdoor point clouds. By superimposing the two extracted point clouds, indoors and outdoors, on the same reference frame, it is observed that the difference between their coordinates occurs mainly along the Z axis (Figure 11). This may be due to a narrowing of the opening in depth between the interior and exterior. Table 5 summarizes the deviations obtained on Z coordinate.

<table><caption>Table 5. Results of the Z differences between the detection of the indoor and the outdoor point cloud</caption><thead><tr><th colspan="6">Deviation between indoors and outdoors</th></tr><tr><th>Z</th><th>Average deviation</th><th>Standard deviation</th><th>Mode (mm)</th><th>Min (mm)</th><th>Max (mm)</th></tr></thead><tbody><tr><th>Windows</th><td>1 cm</td><td>3mm</td><td>7</td><td>5</td><td>11</td></tr></tbody></table>

<figure><img src="image_13.png" /><figcaption>Figure 11. Superimposition of the detected edges from indoor and outdoor point clouds</figcaption></figure>

### Comparison with manually extracted data

To evaluate the automatic detection of all windows and doors, they were manually integrated into the BIM model using the

point clouds as a reference. One may note that manual insertion of openings into the model is prone to errors, as this process can vary from one modeler to another. This variability can lead to differences in how openings are positioned, depending on the operator. The comparison between automatic and manual insertions is conducted, keeping in mind that manual positioning in Revit has an accuracy margin of several centimeters relative to real-world measurements. We note that we have excluded the windows from the previously identified edge case in section 4.2, as the proposed solution does not accurately reflect the true nature of the openings. The openings used for comparison are therefore 24 exterior windows and 10 interior doors.

<table><caption>Table 6. Results of Z differences between automatic and manual insertion</caption><thead><tr><th rowspan="2">Z</th><th colspan="5">Deviation between manually and automatically extraction</th></tr><tr><th>Average deviation</th><th>Standard deviation</th><th>Mode (cm)</th><th>Min (cm)</th><th>Max (cm)</th></tr></thead><tbody><tr><th>Windows (outdoor)</th><td>3 cm</td><td>4cm</td><td>3</td><td>1</td><td>4</td></tr><tr><th>Doors (indoor)</th><td>4 cm</td><td>5cm</td><td>2</td><td>1</td><td>6</td></tr></tbody></table>

The average difference of 3 cm across all openings indicates highly satisfactory detection and insertion results. A maximum discrepancy of 6 cm for doors can be attributed to occlusions in the interior point cloud. This comparison leads us to validate our automatic detection method for openings, as well as their semi-automatic insertion into the 3D model with Dynamo.

## 4.5 Discussion

The developed method for extracting openings from point clouds has yielded highly satisfactory results in both indoor and outdoor environments, as demonstrated by the qualitative and quantitative evaluations. The approach achieved a 97% detection rate for 119 openings, though the accuracy of the opening dimensions is influenced by the complexity and occlusions in the point cloud data. Challenges related to occlusions were successfully addressed through the integration of various algorithms. The use of radiometry proved crucial for indoor openings detection, but issues with noise in the point cloud were mitigated by incorporating geometric components. The algorithm parameters depend on the specific point cloud being analyzed and may need adjustment or refinement based on the environment. While some cases, like the north facade of the INSA building, posed challenges in detecting individual openings, these issues can be managed with careful attention during the semi-automatic insertion stage

## 5. Conclusion

In conclusion, a method for the automatic detection of openings from point clouds and the integration of openings into a BIM model was developed. The approach, which combines geometric and radiometric data, achieves a high detection rate and demonstrates good precision in detecting openings, with minimal deviation from manual identification. Although some challenges, such as the detection of adjacent openings and the need for user intervention in complex point clouds, were encountered, the method provides a solid foundation for semi-
automated BIM modeling. This work contributes to improving
the efficiency and accuracy of the BIM process in the context
of structural modeling. Looking ahead, there are several
opportunities for further improvement. Increasing the level of
automation in detection could help reduce reliance on user
intervention, particularly in complex structures, by integrating
deep learning methods. For example, training a model for
colorimetric classification could enhance the accuracy of the
extraction based on colorimetry at the first step of the approach.
Additionally, generalizing the approach to handle all types of
point clouds, independent of their specific characteristics,
would enhance its versatility. Finally, achieving full automation
of the BIM model insertion process, eliminating the need for
manual steps in Dynamo, would further streamline the
 workflow and improve the overall efficiency of the automation.

References

Adan, A & Huber, D. 2011. 3D reconstruction of interior wall surfaces under occlusion and clutter. In: *Proceedings - 2011 International Conference on 3D Imaging, Modeling, Processing, Visualization and Transmission, 3DIMPVT 2011*. doi.org/10.1109/3DIMPVT.2011.42

Adán, A, Quintana, B, Prieto, SA & Bosché, F. 2020. An autonomous robotic platform for automatic extraction of detailed semantic models of buildings. *Automation in Construction*. 109. doi.org/10.1016/j.autcon.2019.102963

Ambrus, R, Claici, S & Wendt, A. 2017. Automatic Room Segmentation from Unstructured 3-D Data of Indoor Environments. *IEEE Robotics and Automation Letters*. 2(2). doi.org/10.1109/LRA.2017.2651939

Boulaassal, H, Chevrier, C & Landes, T. 2010. From laser data to parametric models: Towards an automatic method for building façade modelling. In: *Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)*. V. 6436 LNCS. doi.org/10.1007/978-3-642-16873-4_4

Boulch, A, Guerry, J, Le Saux, B & Audebert, N. 2018. SnapNet: 3D point cloud semantic labeling with 2D deep segmentation networks. *Computers and Graphics* (*Pergamon*). 71. doi.org/10.1016/j.cag.2017.11.010

Budroni, A & Böhm, J. 2010. Automatic 3D modelling of indoor Manhattan-world scenes from laser data. In: *International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences - ISPRS Archives*. V. 38.

Cui, Y, Li, Q, Yang, B, Xiao, W, Chen, C & Dong, Z. 2019. Automatic 3-D Reconstruction of Indoor Environment with Mobile Laser Scanning Point Clouds. *IEEE Journal of Selected Topics in Applied Earth Observations and Remote Sensing*. 12(8). doi.org/10.1109/JSTARS.2019.2918937

Jarząbek-Rychard, M & Maas, HG. 2023. Modeling of 3D geometry uncertainty in Scan-to-BIM automatic indoor reconstruction. *Automation in Construction*. 154. doi.org/10.1016/j.autcon.2023.105002

Jung, J, Stachniss, C, Ju, S & Heo, J. 2018. Automated 3D volumetric reconstruction of multiple-room building interiors for as-built BIM. *Advanced Engineering Informatics*. 38. doi.org/10.1016/j.aei.2018.10.007

Macher, H, Roy, L & Landes, T. 2021. Automation of windows detection from geometric and radiometric information of point clouds in a scan-to-bim process. In: *International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences - ISPRS Archives*. V. 43. doi.org/10.5194/isprs-archives-XLIII-B2-2021-193-2021.

Mesolongitis, A & Stamos, I. 2012. Detection of windows in point clouds of urban scenes. In: *IEEE Computer Society Conference on Computer Vision and Pattern Recognition Workshops*. doi.org/10.1109/CVPRW.2012.6238910

Michailidis, GT & Pajarola, R. 2017. Bayesian graph-cut optimization for wall surfaces reconstruction in indoor environments. *Visual Computer*. 33(10). doi.org/10.1007/s00371-016-1230-3

Nikoohemat, S, Peter, M, Oude Elberink, S & Vosselman, G. 2017. EXPLOITING INDOOR MOBILE LASER SCANNER TRAJECTORIES for SEMANTIC INTERPRETATION of POINT CLOUDS. In: *ISPRS Annals of the Photogrammetry, Remote Sensing and Spatial Information Sciences*. V. 4. doi.org/10.5194/isprs-annals-IV-2-W4-355-2017

Pexman, K, Lichti, DD & Dawson, P. 2021. Automated storey separation and door and window extraction for building models from complete laser scans. *Remote Sensing*. 13(17). doi.org/10.3390/rs13173384

Pu, S & Vosselman, G. 2007. Extracting windows from terrestrial laser scanning. *Intl Archives of Photogrammetry, Remote Sensing and Spatial Information Sciences*. 36

Qi, CR, Su, H, Mo, K & Guibas, LJ. 2017. PointNet: Deep learning on point sets for 3D classification and segmentation. In: *Proceedings - 30th IEEE Conference on Computer Vision and Pattern Recognition, CVPR 2017*. V. 2017-January. doi.org/10.1109/CVPR.2017.16

Tuttas, S & Stilla, U. 2013. WINDOW DETECTION IN SPARSE POINT CLOUDS USING INDOOR POINTS. *The International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences*. XXXVIII-3/W22. doi.org/10.5194/isprsarchives-xxxviii-3-w22-131-2011

Wang, R, Bach, J & Ferrie, FP. 2011. Window detection from mobile LiDAR data. In: *2011 IEEE Workshop on Applications of Computer Vision, WACV 2011*. 2011. doi.org/10.1109/WACV.2011.5711484

Zhan, Q, Yubin, L & Xiao, Y. 2009. Color-Based Segmentation of Point Clouds. *Laser scanning 2009, IAPRS*. XXXVIII, P.