INDOOR 3D MODELING AND FLEXIBLE SPACE SUBDIVISION FROM POINT CLOUDS

: Indoor navigation can be a tedious process in a complex and unknown environment. It gets more critical when the first responders try to intervene in a big building after a disaster has occurred. For such cases, an accurate map of the building is among the best supports possible. Unfortunately, such a map is not always available, or generally outdated and imprecise, leading to error prone decisions. Thanks to advances in the laser scanning, accurate 3D maps can be built in relatively small amount of time using all sort of laser scanners (stationary, mobile, drone), although the information they provide is generally an unstructured point cloud. While most of the existing approaches try to extensively process the point cloud in order to produce an accurate architectural model of the scanned building, similar to a Building Information Model (BIM), we have adopted a space-focused approach. This paper presents our framework that starts from point-clouds of complex indoor environments, performs advanced processes to identify the 3D structures critical to navigation and path planning, and provides fine-grained navigation networks that account for obstacles and spatial accessibility of the navigating agents. The method involves generating a volumetric-wall vector model from the point cloud, identifying the obstacles and extracting the navigable 3D spaces. Our work contributes a new approach for space subdivision without the need of using laser scanner positions or viewpoints. Unlike 2D cell decomposition or a binary space partitioning, this work introduces a space enclosure method to deal with 3D space extraction and non-Manhattan World architecture. The results show more than 90% of spaces are correctly extracted. The approach is tested on several real buildings and relies on the latest advances in indoor navigation


INTRODUCTION
Large buildings such as shopping malls, airports and hospitals suffer from the lack of up-to-date 3D models.During a disaster, having a digital twin of the building which reflects the emergency exits and indoor spaces is crucial for the first responders.Because of the complexity of the indoor environment, it is not trivial to keep the 3D models of buildings up-to-date.Therefore, most of the Building Information Models (BIM) or 2D floor plans are asdesigned and do not reflect the as-constructed or as-is state.Thanks to the recent improvements in the field of Mobile Laser Scanning (MLS) and Wearable Laser Scanners (WLS) (Karam et al., 2018;Lehtola et al., 2017), nowadays it is possible to scan a large complex in few hours just by walking inside the building.The output data from the mobile laser scanners are point clouds and images that represent the current status of building.Such output is a valuable source of information for first responders when it is enriched with semantics such as space subdivisions and navigable spaces.However, enriching the raw data of complex environments to valuable information for users (e.g.firefighters) needs the development of a smart pipeline.Such a pipeline should be able to distinguish the clutter (e.g.furniture and humans) in the point clouds from the permanent structure (walls, floor, ceiling and stairs).Additionally, the final output should have higher level of semantics such as the room layout and location of furniture which could be treated as obstacles during the disaster.In addition to a correct 3D model that reflects the current status of building, smart algorithms need to be developed to generate flexible paths based on the agent's constraints.The agent is the actor who should be guided during the disaster.Recent literature addresses the problem of indoor 3D reconstruction from point clouds in a different pipeline than navigation, mainly for BIM applications (Ikehata et al., 2015;Mura et al., 2016;Nikoohemat et al., 2018;Ochmann et al., 2016).On the other hand, there are some related work focusing on the problem of path finding and navigation inside the buildings using already existing models (Diakité and Zlatanova, 2018;Nagel, 2014;Wang and Zipf, 2017).Our pipeline addresses problems from indoor 3D modelling of point clouds to the extraction of advanced navigation networks.We tested our algorithms on complex indoor environments using the data from various mobile laser scanning systems.Our work contributes a new approach for space subdivision without the need of using laser scanner positions or viewpoints.Unlike other space subdivision methods which are based on a 2D cell decomposition or a binary space partitioning, this work introduces a space enclosure method to deal with 3D space extraction and non-Manhattan World architecture.Furthermore, the 3D presentation of spaces as occupied, functional and the remaining free space, provides the 3D access for various agents for pathfinding in disaster situations.
The structure of our work is as follows: in chapter 2 the related work is reviewed.In chapter 3, the problem of modelling from point clouds is tackled.The represented method is built on the pipeline suggested by (Nikoohemat et al., 2018).Chapter 4 explains how to generate a Flexible Space Subdivision (FSS) (Diakité and Zlatanova, 2018) from the 3D model generated in chapter 3.Such subdivisions can be exploited to generate flexible navigation paths accounting for the spatial constraints of the agents.In chapter 5, we show the results which is followed by the conclusion and future work in chapter 6.

RELATED WORK
We devote the related work to two major problems that are addressed in our pipeline.First, the topic of indoor 3D reconstruction from point clouds is briefly reviewed.Second, the literature in the field of indoor navigation and indoor space subdivision are explored.

Indoor 3D Modelling from Point Clouds
Recently, there has been a progress towards reconstruction of indoor models from point clouds, although most of these works are limited to clutter-free environments or Manhattan-World structures (Becker et al., 2015;Khoshelham and Diaz-Vilarino, 2014).Other works reduce the complexity of the structure assuming walls are always vertical or ceilings are at the same height which generates a 2.5D model (Ikehata et al., 2015;Tran H. et al., 2019;Turner et al., 2015).Few works deal with arbitrary wall layout and slanted walls (Li et al., 2018;Mura et al., 2016;Nikoohemat et al., 2018).The process of 3D modelling from the point clouds is not limited to the detection of the permanent structures but also reconstruction of a watertight model.To this end, some researchers reconstruct the walls in a piecewise-planar approach (Mura et al., 2016;Xiao and Furukawa, 2014) while others generate volumetric walls (Bassier et al., 2018;Macher et al., 2017;Ochmann et al., 2016).Our method reconstructs the walls as a volumetric object after detecting the planes in the point clouds.Additionally, we validate all the walls are topologically correct and connected.
Openings such as doors are necessary elements in a correct 3D model and for navigation.Detection of the doors from the point clouds using the trajectory of the mobile laser scanners is suggested by (Elseicy et al., 2018;Nikoohemat et al., 2017).Occlusion reasoning is used in some other works (Xiong et al., 2013) to identify openings.Structure grammar is applied by (Ikehata et al., 2015) for detecting doors.Machine learning and deep learning algorithms are used in some works for detection of indoor objects such as walls, windows and doors (Boulch et al., 2018;Qi et al., 2016).In this work, the adjacency graph developed by (Nikoohemat et al., 2018) is used for detection of the permanent structure and the trajectory of the mobile laser scanners is exploited for identifying the doors.

Space Subdivision and Indoor Navigation
A 3D model should represent the correct layout of the interiors such as space subdivisions and rooms.To generate a valid navigation graph, the topology of the indoor spaces and the connections (e.g.doorways) must be correct.Researches in indoor navigation traditionally rely on 2D floor plans of the environment (Goetz and Zipf, 2011;Yang and Worboys, 2015).And the few ones that use 3D models consider empty buildings (Khan and Kolbe, 2013) and are mostly 2.5D rather than real 3D.Recent works have drawn the attention to the advantages of 3D models and the need of refining the spatial subdivision of the models in order to provide more advanced navigation networks and systems (Liu and Zlatanova, 2011;Zlatanova et al., 2014).This has been also considered in the OGC standard for indoor navigation, IndoorGML (Lee et al., 2014).
Space subdivision for navigation is a concept more familiar to the robotics domain.Approaches in that field require highly refined spatial models to have a better control of the movement of robots or track them with more precision.A common method is based on the occupancy grid supported by morphological algorithms (Ambruş et al., 2017;Nikoohemat et al., 2018;Werner, 2018).Using occupancy grid for robot operations is a logical choice while for human agents, the concern is more about being able to anticipate considerable obstacles, e.g. for disabled people or consider the occupancy induced by the functions of the indoor objects.Furthermore, most of the recent literature which investigates the space subdivision for indoor navigation rely on vector models (Diakité and Zlatanova, 2018;Taneja et al., 2016), leaving no solution for buildings without BIM or 2D CAD models.The few ones dealing with point cloud focus on the semantic enrichment of the acquired data (Fichtner et al., 2018;Staats et al., 2018).In this work, we use cluttered point clouds acquired from complex buildings and make a pipeline that generates space subdivisions using the FSS framework and produces the navigation graph.Therefore, in our 3D model obstacles are included from the point clouds to build a versatile environment for our tests.

3D MODELLING FROM POINT CLOUDS
In this section the algorithms for reconstruction of a 3D model from point clouds are explained.Our method uses the adjacency graph suggested by (Nikoohemat et al., 2018) for detection of permanent structures.The output of the adjacency graph is labelled point clouds which we use to model the walls, floors and ceiling.A method is developed to make a watertight, topologically valid model out of the labelled point clouds by extending the walls and reconstructing the gaps.Finally, doors are detected using the trajectory of the mobile laser scanner.

Detection of the Walls, Floors and Ceilings
The typical solution in the literature for detecting the walls is based on the assumption that walls are always vertical, and they form a regular grid structure.In our pipeline, navigation in complex structures for disaster management is the goal.Therefore, we need a method that can deal with an arbitrary wall layout and cluttered point clouds.We generate an adjacency graph from planar segments to further analyse it for the detection of the walls.Before proceeding with creating the adjacency graph, neighbouring segments with the same orientation should be merged into one segment by comparing the normal of their planes.A new plane is calculated for merged segments.

Adjacency Graph
The point clouds are segmented to planar patches using a surface growing algorithm (Vosselman et al., 2004).An adjacency graph is generated from the planar segments where each segment represents the node in the graph and each edge is connecting two adjacent segments.Before proceeding by labelling the nodes and edges in the graph, we classify the segments to almost-vertical and almost-horizontal categories using a threshold of 45 degrees.By observing the logical structure in an indoor environment, we can learn that there is a topology relation among ceiling, wall and floor.A ceiling is connected to the wall and the centre of the ceiling is above the centre of the wall candidate (wall-ceiling edge).Respectively, the wall is connected to the floor and the centre of the wall is above the floor centre (wall-floor edge).Two walls can be connected to each other if both of them are almost vertical and adjacent (wallwall edge).The algorithm checks each edge and assigns one of the three labels wall-wall, wall-ceiling or wall-floor to the edge otherwise the edge remains unlabelled (Figure 1).

Semantic Labelling
In this step, the nodes which represent the segments will be assigned one of the permanent structure labels: wall, floor or ceiling.To do this, each node is examined individually, for example if a node has at least one wall-ceiling edge and its segment is almost-vertical then it is labelled as wall.If the segment is almost-horizontal and has more than one wallceiling edge then it is a ceiling and if it has more than one wallfloor edge, it is a floor.Additionally, some soft rules will be applied to differentiate floor and ceiling from some false positives.For example, segments labelled as ceiling should not have overlap with each other, otherwise the upper segment is selected as the ceiling.Floor and ceiling nodes should not have a common edge in the graph and should have a distance more than 1.5 meter.Nodes with fewer than 500 supporting points per segment are not included in the graph.For more details and special cases refer to (Nikoohemat et al., 2018).The output of the adjacency graph is planar segments with their semantic labels.However, because of the occlusion and complexity of the indoor environment some of the segments are misclassified or remain unknown.Before starting with the modelling, we should make sure that the labels are correct by visual inspection.
Visual Inspection and Correction Labelled segments are visualized by a separate colour per class.The correction is just changing the label of a segment to a correct class.For example, in some cases a clutter segment is labelled as a permanent structure which should be sorted to the unknown class (see the blue dotted circle in Figure 2).Note that for this work, furniture is classified as unknown (clutter).To simplify the visual inspection, each level of the building is inspected independently and for each level the ceiling is corrected separately.The process of visual inspection is fast and it takes few minutes to an amateur user for a building with approximately 20 rooms.
After semantic labelling and visual correction, the segments are ready for 3D model reconstruction.One step towards 3D modelling is the space subdivision or in other words extraction of the room layout.To achieve this goal, the walls should be modelled and should be topologically correct.In next section, we explain how the disjoint segments are tackled for modelling.

Generate a Watertight 3D Model
Generating a watertight model involves modelling the permanent structures such that indoor spaces topologically closed by their bounding elements are well reproduced.Labelled segments from previous step may not be connected to each other because of gaps in the data (not scanned area) or missing data during the segmentation and labelling process.Note that although an adjacency graph is reconstructed based on the proximity of the segments, these latter are partially connected.Part of the segments that are not connected should be extended to each other to form a watertight model.To achieve this goal, an oriented enclosing rectangle is generated per segment and the best fitting plane of the rectangle is calculated from the point clouds associated to the segment.Therefore, for each segment an oriented rectangle and its corresponding plane is used for further processing.
Automatic Topology Correction Each wall should be connected to the neighbouring walls, floor and ceiling.We call this issue an undershoot problem which means two objects are not connected.Because of undershoot problem the production of an enclosed space, i.e. a room, is problematic.Rectangles which represent the permanent structures (walls, floors and ceilings) are used to check the consistency of the space.For all rectangles, each two nearby rectangles are selected, and their planes are intersected.If the intersection line is within a distance of the edges of two rectangles, then two rectangles are extended to meet each other at the intersection line (Figure 3a, b).The threshold for intersection should be less than a narrow corridor width (e.g.1.2 meter), because the walls on two sides of the corridor should not meet each other.Openings caused by doorways could be closed by this approach and later be replaced by a door object in the 3D model.The automatic topology correction is done for each pair of adjacent rectangles.Note that this approach is not limited to Manhattan-World and vertical walls assumptions and it can handle any arbitrary room layout.In the next step, rectangles of two faces of a wall are merged into one wall object to reconstruct a volumetric wall.
Modelling Volumetric Walls A volumetric wall is a parametric object that is represented by the wall thickness (w), the normal of the wall plane (n), the extension of the wall extracted from the oriented rectangle (h * l) and the centre of the wall (c) calculated from the associated point clouds.Each volumetric wall is stored and visualized by an oriented bounding box.In contrast to the floor and the ceiling, walls are the objects that could be measured from both sides.However, sometimes both faces of a wall are not present in the data either because it is a façade, or it is not reachable from the other side (e.g.occlusion).Here, a method to model a volumetric wall even if it is partially measured or labelled is explained.The same rules apply for the ceiling and floor reconstruction.The only difference for the floor and ceiling is that the thickness (w) is user defined.In multi-storey buildings it is possible to model the ceiling of the lower level with the floor of the upper floor.However, we limit the scope of this work to a user defined parameter for the floor and ceiling thickness.To model walls, all rectangles which represent wall segments are sorted based on their area.Sorted rectangles are compared two by two and parallel rectangles with a distance less than a threshold are merged.The new attributes for the merged rectangle are recalculated.At each merge, the plane of the rectangle is modified considering the rectangle's area as the weight.The thickness of the wall is calculated based on the Euclidean distance of the planes of two rectangles.The distance is measured from the centroid of the smaller rectangle to the plane of larger rectangle.The extent (h * l) and the centre (c) are acquired from the bigger rectangle.Therefore, in the cases that one side of the wall is complete and the other side is partially measured, we hypothesize that the extent of the wall is given by the bigger rectangle.All the wall attributes are stored in the oriented bounding box object as the volumetric wall.Walls which are not merged will be assigned an oriented bounding box with a user defined thickness.Other attributes such as the normal and the centre can be calculated from the box.Since our algorithm generates the parametric walls, we can convert them to other standard 3D formats or an IFC wall format for further improvements.The bounding boxes and their parameters are exported as a standard format such as a Wavefront file (obj) or an Object File Format (OFF) to be used for space extraction and indoor navigation.
Adding Doors and Furniture Doors are detected using a method from (Nikoohemat et al., 2018).For the extraction of the doors, the trajectory of the mobile laser scanner is required.Using this method, doors which are crossed by the trajectory are identified.This includes closed and open doors.A door is appeared in the data as closed, when the scanner operator passes the opening and the door is closed before or after the scanner crosses it but yet visible.The centre of the door is pinpointed by using three criteria: 1. a trajectory should be close to the candidate door centre; 2. there should be some points on top of the door centre; and 3. in the neighbourhood of the door centre there should not be points, which implies that there is an opening.When doors are identified, an oriented bounding box indicating the extent, orientation and the location of the door is generated.The width of the door is user defined.
Semantically identifying the permanent structures allows us to isolate the clutters resulting from the scanning.Among them, objects corresponding to actual indoor furniture such as tables and chairs are manually selected, and the rest is removed to clean the model.The identified furnishing elements are represented as the oriented bounding box (OBB) of the objects.The purpose is to add details to the 3D model for navigation applications using the FSS framework, which steps are described in the following section.

FSS ON THE VOLUMETRIC MODEL FROM THE POINT CLOUD
In this section we discuss the application of the Flexible Space Subdivision (FSS) framework (Diakité and Zlatanova, 2018) from the 3D vector output of the previous section.Flexible in this context implies that a space can be changed based on the dynamic objects such as furniture and obstacles.Accordingly, the remaining space for the navigation should change.The purpose of the framework is to subdivide the indoor environment into three main categories: the occupied (O-Spaces), the functional (F-Spaces) and the remaining free spaces (R-Spaces).This subdivision comes in a context of fine-grained indoor navigation.By subdividing the environment on the basis of the objects that occupy it and their functions, the FSS makes it possible to account for advanced constraints during navigation, while ensuring enough granularity for precise location.
Although the original framework was described mainly for BIM models, in this paper we start from a point cloud in order to benefit from all the advantages that it provides (rapid acquisition, up-to-date representation, etc.).However, there are several features required for applications like path planning and indoor navigation that a BIM model would directly provide, while they are missing from a point cloud input.Therefore, they have to be retrieved.The process in the previous section has allowed to recover the permanent structures of the model up to a level that is geometrically comparable to a BIM model.Now we have to retrieve the most critical feature for the FSS, which is the shape of the indoor space, and from there we can generate the other subspaces of the framework, and then the navigation network.

Recovering the Indoor Spaces as Explicit 3D Features
The indoor space features are implicitly present in the watertight 3D model.Similarly to BIM models, they are the result of the configuration of the common permanent structures (walls, floors, ceilings, etc.) (Diakité and Zlatanova, 2016).Figure 4 illustrates the layout of the interior of a model after it is processed from point clouds.It is visible that the orientation of the volumes (e.g. the walls) is not always straight as it should.While this may be a serious esthetical issue, it is not a limitation in the scope of this work, as the priority is to provide a quick and precise enough insight of the navigable spaces in the building.
Figure 4: Walls and floor obtained after the reconstruction of the Fire brigade building using point clouds.This is an intermediate result which after the space subdivision generates correct spaces.
The indoor space structures can be retrieved directly from the point cloud (Nikoohemat et al., 2017).However, the roughness of the volumes resulting from such process does not make them suitable for the operations on which the FSS is relying (Diakité and Zlatanova, 2018).Thus, smoother spaces are needed to provide them with a BIM-like vector structure.
Figure 5: Smooth space reconstruction from Boolean operations.
Starting from the wall, floor and ceiling volumes, our approach reconstructs the space volumes.The goal is to simply extracting the closure of the interior of the model using Boolean operations.This operation is known as the regularization of a closed set in ℝ n (Tilove and Requicha, 1980).As it says, this method deals only with closed volumes, therefore only indoor spaces with full closure can be reconstructed.Figure 5 illustrates the resulting spaces.The geometry of the space volumes is closer to the BIM paradigm, and they do not purposely consider the indoor obstacles yet.Furthermore, we can also see that one room is missing due to their lack of closure.With the spaces that could be reconstructed, we can now proceed to the rest of the FSS process.

Identification of the Occupied Spaces (O-Spaces)
The consideration of the indoor objects that populates the space is critical for indoor navigation applications.While they generally make the 3D reconstruction trickier, they remain as valuable information in the scope of the FSS.The framework does not require a very precise geometric description of the indoor features to perform the subdivision.Thus, the simplification method adopted in the end of the previous section fits to the purpose, and the furniture is represented as oriented bounding boxes.Furthermore, furnishing elements that are close to each other are automatically aggregated under the same OBB, which respects the conditions required by the FSS in such configurations.Therefore, the OBBs of the furniture are considered as the O-Spaces and the identification of the free space will rely on them.

F-Spaces and R-Spaces
F-Spaces correspond to the spaces that are induced by the explicit and implicit function of an object and allow to account for such parameters in the navigation.From a more technical point of view, F-Spaces allows to produce proper position nodes for agents with respect to the function of indoor object.For example, in a context of emergency response, F-Spaces of objects such as extinguishers would allow to navigate the agent up to where the object would be accessible.Similarly, an F-Space of a highly flammable object would stand as a space to avoid during the navigation.
However, the semantic level of our model does not allow to get enough information about the function of the furnishing elements.For this reason, F-Spaces are skipped in the process.

R-Spaces
They correspond to the actual free space that remains once the O-Spaces and the F-Spaces are subtracted from the spaces.The process to obtain them is to simply apply a Boolean difference between each space (which generally correspond to a room) and the O-Spaces (and F-Spaces if any) that it contains.Figure 6 gives an illustration of the R-Spaces generated from the model in Fig. 4. One volume is displayed in wireframe for illustration purpose.With those extracted subspaces, we can now generate an advanced 3D navigation graph.

Advanced Navigation Network
Most existing navigation systems rely on simplified networks to provide navigation services.Simple building topology is used to determine for example which room is connected to which corridor, through a given opening.This then leads to a connectivity graph that provides a very limited insight of the reality of the indoor environment.In contrast, our navigation networks, while providing all the advantages of a basic connectivity graph, also provides the accessible areas in 3D, allowing agents with any locomotion type to plan for an obstacle free path.Figure 7 (top) shows a simple network that connects the extracted rooms through their shared doors.As the image shows, this network would not allow to anticipate the indoor configuration to plan for special bulky tools.
Figure 7: Top: extraction of a basic navigation graph using spaces and door (green).Bottom: Advanced navigation graph accounting for obstacles and 3D accessibility.This graph can be utilized for navigation planning.
The advanced network illustrated in Figure 7 (bottom) shows a more elaborated network that goes around the obstacles and depict all the accessible spaces.The nodes of such graph are derived specifically from the R-Spaces, which guarantee the availability of free space, but also from F-Spaces that are of interest to the agent.No node is provided for the O-Spaces.Additionally, the R-Spaces are subdivided into sets of convex pieces, to ensure that the provided nodes lie inside them.

EVALUATION
Our methods are tested on two datasets.One dataset is one floor of a large Fire Brigade building (Fb1) and the other is a two-floorbuilding of another Fire Brigade building (Fb2).Both datasets are acquired using mobile laser scanner devices.The details are in the Table 1.The original point clouds are subsampled while keeping the average point distance of 0.05 m.
Parameter Selection Our pipeline starts with the planar surface growing segmentation.The smoothness threshold is crucial parameter for surface growing which depends on the noise in the data.In our datasets a value between 8 and 10 cm is appropriate.
The next important value is the adjacency threshold (dadj) which explains whether two segments are close enough to be considered adjacent.We use the same parameters suggested in the original work for the adjacency graph (dadj < 10 cm) (Nikoohemat et al., 2018).
For creating volumetric walls from two opposite faces of each wall, their plane's distance should be less than 0.8 m and their normal angle should deviate less than 10 degrees.In merging the second floor of Fb2, a lower angle threshold (θ < 5 degrees) should be used; otherwise the neighbouring wall segments constructing the curved wall will be merged (Figure 8, Fb2-2).Another important threshold is the extension distance for the topology correction of the adjacent walls.The extension distance (d undershoot) should not be more than the distance between the two closest walls in the data.For example, in the congested structures, the distance between walls could be an indicator for the selection of d undershoot.In our experiment, we used a value between 0.8 and 1.0 meter.

Visual Inspection and Correction
After labelling the permanent structures (walls, floor and ceiling), an amateur user looks at the data, and corrects the label of segments where needed.For our datasets, this process took less than 5 minutes per dataset and in total less than 6% of the total number of segments (see Table 1) are relabelled.Most of the corrections happen for the clutter near the wall and the ceiling, where the clutter could be misclassified as the permanent structure.

Results
The results are shown in Figure 8. Comparing the results with the ground truth shows that more than 90% of the rooms are correctly reconstructed, but some are over-segmented (Table1, Fb2).Moreover, we do not count the small rooms in the rest rooms as a separate room.However, our model subdivides them to separate rooms.The visual comparison of the results with the professionally generated BIM model for Fb2 indicates that the thickness of the walls in most cases is close to the real data.Spaces which do not have a door can be easily identified during the production of the navigation graph.More than 75% of the doors are detected in our pipeline.The number of doors in the Fb2-1 is high and the trajectory does not cross all the doorways.Therefore our algorithm in Fb2-1 does not detect the closed doors which are not traversed by the trajectory.Further investigation is required to detect and add missing doors to the model.Our final models are true 3D models and not just the extrusion of the 2D walls.At some spaces the height of the ceiling is changing (fire brigade's truck hall) and this is modelled correctly in our result.Moreover, our algorithms handle any arbitrary building structure such as slanted walls, although the curved wall is represented by smaller planar segments (Figure 8, Fb2-2).
Furthermore, the generated 3D vector models make the point clouds suitable for the FSS approach.The produced watertight structural volumes and the simplified furniture give the right environment to proceed to the spatial subdivision based on the space occupancy.
Limitations Modelling walls with a lot of intrusions and extrusions (e.g.windows frame, heating system and curtain) could be challenging.In such cases, normally, we fit a plane to the dominant wall segment and extract the thickness of the wall from faces of two sides of the wall if exist.Hence, the reconstructed volumetric wall does not reflect the details of the wall.Also, places such as cabinets in the kitchen or shelves built in the wall can be classified and modelled as part of the wall when they are connected to the ceiling.Our method does not enforce any perpendicularity, vertical or horizontal constrains for the reconstruction of permanent structures.Some walls with adjacent clutter could lead to under-segmentation.As a consequence, some of the walls are skewed or inclined incorrectly.However, this limitation does not jeopardize the purpose of indoor navigation and space subdivision.

CONCLUSIONS AND FUTURE WORK
We presented a reconstruction pipeline of indoor 3D models that allows to produce an advanced navigation network from point clouds of complex indoor environments.The processes are designed to be suitable for emergency responses where critical information has to be identified as fast as possible to increase the chance of a successful intervention.In this context, point clouds are more valuable than 2D floor plans that are often outdated.The first step of our process consists of identifying the permanent structures of building model from the point cloud before providing it with semantic information.A volumetric-wall vector model is produced from the point clouds and is handed to the navigation part which starts by reconstructing the space subdivisions.This process including the visual inspection takes less than 10 mins for Fb2-1 with almost 20 rooms.The visual inspection improves the result by 10%, and it is not meant to achieve the total correctness of the model.The operator only checks obvious mistakes such as a mislabelled clutter.According to our experiments, the process on the point clouds such as segmentation, generalization of the segments and reconstructing the adjacency graph take the most computational time.Rest of the process on the rectangles and generating the spaces takes one or two minutes.The FSS framework is then applied, taking into account the occupied spaces in the building.The resulting subdivision allows to generate an advanced navigation network that encapsulate the 3D accessibility of the indoor environment.This can support path planning for pedestrian, robot and even flying objects such as drones.With minor modifications our pipeline can also be applied to other applications such as scan-to-BIM, as-built models and energy minimization in large buildings.
Our approach allows the reconstruction of indoor complexes from point clouds and using it for a high level space subdivision.The topology correction method assures the enclosure of the spaces.The suggested method for volumetric wall creation is robust to cluttered environments and missing data.Since we generate a watertight model based on the space enclosure, the extraction of spaces is not limited to a priori knowledge such as the number of scans per room.Proposed algorithms in this work can be extended to include more rules to model the details of the walls and to add stairs.Future work would be devoted to the creation of the navigation graph for a multi-storey building and to test the graph based on the various agents and the function of the space.

Figure 1 :
Figure 1: (a) shows the segmented point clouds and the adjacency graph.(b) The adjacency graph and (c) detected walls in yellow, floor in orange and ceiling in red colour.Other colours represent the clutter (e.g.furniture).

Figure 2 :
Figure 2: The figure shows the top view of several rooms.Detected walls are in orange, and the red circles show the missing walls, which after visual inspection, their label changed to the wall.The blue circle shows a false positive wall, which should be classified as a clutter.

Figure 3 :
Figure 3: (a) and (b) show before and after the topology correction.Extension of the rectangles for unconnected walls.(c) and (d) show two faces of walls are merged to create volumetric walls.

Figure 6 :
Figure 6: O-Spaces (colourful boxes) and extracted R-Spaces (yellow volumes).The image shows the spaces from below, because otherwise the obstacles (colourful boxes) are covered with free space from a top view.Walls are not included in this model.

Figure 8 :
Figure 8 : The result from Fb2 dataset.For each floor in order, we represent the segmented point clouds, the space subdivisions with walls, the occupied spaces (red boxes) and the remaining spaces (R-spaces in white) and finally the ground truth.The first row is the second floor of the Fb2 dataset.

Table 1 :
Details of the datasets, and the number of detected rooms and doors.The sixth column indicates the number of planar segments with supporting points more than 500 and in the brackets number of permanent structure and clutter segments.The last column shows how many of the segments are visually identified and corrected.