## 2 Related Work
### Modelling of Building Geometry
#### 2.2.2 Modelling of Indoor Environments  
The modelling of building facades from laser scan data was already the subject of many works (e.g., [21; 28; 29]). Our work focus on the modelling of indoor environments from point clouds. It requires other methods and involves more challenges to overcome. Indeed, an indoor space is not limited to the study of the elements belonging to a plane. Moreover, existing buildings can present numerous occlusions which disturb the modelling. A building is usually composed of sub-spaces namely floors and rooms. Several approaches are developed in order to segment or identify these sub-spaces in a building point cloud. [PERSON] et al. [30], [PERSON] and [PERSON] [31] and [PERSON] et al. [32] use an histogram of the repartition of points along \(z\) axis to identify the different floors of a building. The study of the histogram allows determining ground and ceiling altitudes of the building. [PERSON] et al. [33] propose a room segmentation algorithm based on the computation of the probability of each point to belong to a room. This algorithm requires the positions of the scanner as input. [PERSON] and [PERSON] [34] and [PERSON] et al. [35] detect the major planes of a floor and use a cell decomposition in the X-Y plane in order to segment rooms. Lastly other methods of room segmentation are based on shape or structure grammars [31; 36]. Rather than considering a decomposition into sub-spaces, an other approach consists in looking for structural elements of a building and notably walls and slabs. A plane segmentation is usually performed for the identification of planes composing the structural elements. The RANdom SAmple Consensus (RANSAC) paradigm is frequently preferred for this purpose [37; 38; 39; 40] instead of region growing algorithms. Indeed, it is robust and efficient regarding processing time and noise management [41].Two methods are commonly used to segment point clouds of indoor environments. The first one consists in carrying out a plane segmentation and then in identifying groups of planes (gather together) which constitute building elements by exploiting the properties of planes such as their normals or their positions [37; 39; 42]. The second method executes several successive segmentations. [PERSON] and [PERSON] [40] first perform a segmentation into horizontal planes in order to extract planes corresponding to ground and ceiling and then a segmentation into vertical planes to identify wall planes. [PERSON] et al. [38] and [PERSON] et al. [43] also begin their processes by segmenting ceiling and ground. Then, the remaining point cloud is projected onto the X-Y plane and planes corresponding to walls are extracted by considering room boundaries in the 2D plane. Once planes are extracted from point clouds and identified as a part of a wall, a ceiling or a ground, different modelling strategies can be carried out. Wire frame models [19] or surface models composed of planes [43] are obtained by considering intersections between planes. [PERSON] et al. [44] propose a piecewise-planar 3D reconstruction. The reconstructed surface is in this case a polygonal mesh of the scene. Lastly [PERSON] et al. [45] assemble wall planes and create a volumetric model of walls. This type of model is the one that is the closest to Building Information Model since wall objects are described by volumes. A key challenge in the reconstruction of existing buildings is to manage masks in point clouds. Besides adding elements which do not have to be modelled, occluding objects also cause some missing parts of structural elements of a building. Some works deal with the reconstruction of missing parts of walls which is particularly interesting for the identification of openings (doors and windows). [PERSON] et al. [30], [PERSON] et al. [15] and [PERSON] et al. [19] use a ray tracing labelling for that purpose. The ray tracing algorithm exploits the position of scan stations. For a given surface, a voxel space is created for each scan station.