A true three-dimensional navigation space data model for indoor buildings
By designing the data model of indoor real three-dimensional navigation space of buildings, the problem of difficulty in modeling and navigation of indoor real three-dimensional space in existing technologies is solved, efficient indoor modeling and navigation is achieved, the application of three-dimensional space is expanded, and applications in smart cities are supported.
Patent Information
- Application Number
- CN202111100708.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2021-05-25
- Filing Date
- 2021-09-18
- Publication Date
- 2025-05-16
- Estimated Expiration
- 2041-09-18
AI Technical Summary
The existing three-dimensional spatial data model of buildings is difficult to effectively model and navigate the true three-dimensional accessible space in the building room, and cannot make full use of highly refined data, which limits the application of spatial information systems such as 3D-GIS.
A real three-dimensional navigation space data model for indoor buildings is designed, including semantic models, geometric structure models based on boundary expression, octree expression and segmentation methods, as well as indoor three-dimensional connectivity network construction and path planning algorithms.
It realizes efficient modeling and navigation of the indoor space of buildings, expands the expression model and application algorithm of three-dimensional space, supports the core data model of spatial information systems such as three-dimensional geographic information systems, and promotes and applies to smart cities, disaster relief and other fields.
Smart Images

Figure CN114169037B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of geographic information science and technology, in particular to a three-dimensional spatial data model of a building. Background Art
[0002] Three-Dimensional Geographic Information System (3D-GIS) related technologies and systems have become the information infrastructure of various industries, including "smart cities", integrated indoor and outdoor navigation, emergency rescue, disaster prevention and mitigation, and other cross-domains. The three-dimensional spatial data model is the core theory and technical method foundation of 3D-GIS, and is also one of the key cores that determine the function and efficiency of the 3D-GIS system. The in-depth application of 3D-GIS in the above fields requires support at the level of three-dimensional spatial data models and algorithms. In the field of three-dimensional spatial data models of buildings, most of the current three-dimensional spatial data models of buildings can only meet the needs of three-dimensional visualization and relatively simple three-dimensional spatial analysis. The data acquisition methods such as laser point cloud, three-dimensional cadastral, and high-precision building information models provide more and more refined data. In order to carry and fully utilize such high-precision data in spatial information systems such as 3D-GIS and serve the above application fields, there is an urgent need for a true three-dimensional navigation spatial data model for indoor buildings that can efficiently model and navigate the indoor structure of buildings and the three-dimensional accessible space they enclose. Summary of the invention
[0003] The technical problem to be solved by the present invention is to provide a true three-dimensional indoor navigation space data model of a building, as well as an indoor navigation network and path discovery algorithm, to promote their application in 3D-GIS technology and systems.
[0004] In order to solve the above technical problems, the present invention provides a true three-dimensional navigation space data model for indoor buildings, including the following model and algorithm steps:
[0005] (1) Abstract and define the three-dimensional component expression of the building and the indoor navigable space, incorporate the indoor true three-dimensional navigable space of the building into the indoor true three-dimensional navigation space data model of the building, and design the semantic model of the indoor true three-dimensional navigation space data model of the building;
[0006] (2) Design a spatial geometric structure model based on the boundary representation (B-Rep) method for the geometric expression of the true three-dimensional spatial structure of the building interior;
[0007] (3) Design an octree representation and partitioning method for the true three-dimensional accessible space of a building interior;
[0008] (4) Develop methods for constructing indoor three-dimensional connected networks and planning accessible space paths.
[0009] Preferably, in step (1), the three-dimensional component expression of the building and the indoor navigable space are abstracted and defined, the indoor true three-dimensional navigable space of the building is incorporated into the indoor true three-dimensional navigation space data model of the building, and the semantic model of the indoor true three-dimensional navigation space data model of the building is designed, which specifically includes the following steps:
[0010] (11) Based on geometric expression and semantic attributes, design various architectural structure semantic classes and relationship classes covered by the building space. The abstract classes include: outer surface (_OuterSurface) class, boundary surface (_BoundarySurface) class, inner surface (_InnerSurface) class, opening (_Opening class); the implementation classes include: building (Building) Class, Storey class, InnerBuildingInstallation class, BuildingExtension class, Room class, Roof class, Stairs class, StairFlight class, Window class, Door class, Furniture class, ClosureSurface class, InnerWall class, InnerCeiling class, InnerFloor class, OuterWall class, OuterGround class, OuterCeiling class, OuterFloor class, RoofSurface class, RelOpeningSurface class; establish relationships between the above classes.
[0011] (12) Incorporate the accessible three-dimensional space into the room and design navigation-related classes and their relationships. The designed classes include the abstract space (_Space) class, and the implementation classes include: transition space (TransitionSpace) class, connection space (ConnectionSpace) class, general space (GeneralSpace) class, bounding box (BoundingBox) class, octree (Octree) class; establish the relationships between the above classes.
[0012] Preferably, in step (2), according to the semantic model of the indoor true three-dimensional navigation of the building defined in step (1), for the geometric expression of the indoor true three-dimensional spatial structure of the building, designing a spatial geometric structure model based on the boundary expression (B-Rep) method specifically includes the following steps:
[0013] (21) Using B-Rep expression, define geometric abstract classes and their attributes and methods, including: geometry (_Geometry) abstract class, geometry element (_GeometryPrimitive) abstract class;
[0014] (22) Using the B-Rep expression method, with the abstract class as the parent class, define the geometric feature class and its attributes and methods, including: solid class, multisurface class, surface class, polygon class, ring class, and point class; establish the relationship between the above classes.
[0015] Preferably, in step (3), for the true three-dimensional reachable space of the building interior, designing an octree expression and partitioning method specifically comprises the following steps:
[0016] (31) Use Morton code combined with Z-ordered space filling curve to linearly encode the octree and express the octree of the partitioned result, design the octree node structure and the algorithm for constructing the octree based on volume space, and the algorithm for converting the octree node coordinates to Morton code;
[0017] (32) Design an octree difference calculation method;
[0018] (33) Design an octree query algorithm.
[0019] Preferably, in step (4), based on the semantic model, spatial geometric structure model, geometric expression and spatial partitioning method in claims (2), (3) and (4), a method for constructing an indoor three-dimensional connected network is developed, and the accessible space path planning method specifically includes the following steps:
[0020] (41) For Room, Door, and Stairs classes, Poincare duality is used to construct and optimize their node sets, and a network node connection method is designed. Through a multi-layer space model, the accessible space networks on the same floor and on different floors are combined into a whole;
[0021] (42) Using the algorithm in claim (3), perform octree partitioning and calculation on the spaces expressed by the three classes GeneralSpace, TransitionSpace, and ConnectionSpace, and use the 26-adjacency matrix of the octree in combination with the Dijkstra algorithm to calculate the shortest path from the starting position to the ending position;
[0022] (43) According to the logical relationship between semantic classes and topological connectivity of the navigation space data model in claim (2), first find the path at the semantic level, obtain the connection relationship between indoor accessible spaces of different navigation classes, and combine it with the network connectivity and space segmentation methods described in (41) (42) to obtain the path planning of the entire target space.
[0023] The beneficial effects of the present invention are as follows: the present invention can combine the building entity components of the building indoor space with the three-dimensional accessible space enclosed by them, combine the geometric and semantic representation of the indoor space with the navigation application, expand the expression model and application algorithm of the indoor true three-dimensional space, and provide theoretical and methodological support for the research on the indoor true three-dimensional modeling of the building and the application of three-dimensional space analysis. The model can be used as the core data model of spatial information systems such as three-dimensional geographic information systems, and promoted and applied in the fields of smart cities, disaster relief, emergency evacuation, etc. BRIEF DESCRIPTION OF THE DRAWINGS
[0024] Figure 1 It is a schematic diagram of the model and method flow of the present invention;
[0025] Figure 2 It is a UML diagram of the semantic model of indoor true three-dimensional navigation space data of a building of the present invention;
[0026] Figure 3 A UML diagram of the indoor navigable space class of a building of the present invention;
[0027] Figure 4 It is a UML-like diagram of the building indoor space geometric data structure of the present invention. DETAILED DESCRIPTION
[0028] In order to deepen the recognition and understanding of the present invention, the technical solution is described in detail below in conjunction with embodiments.
[0029] Example 1: Figure 1 As shown, a true three-dimensional navigation space data model for indoor buildings includes the following models and algorithm steps:
[0030] S1: Design and define semantic classes, aiming to model and express building components while incorporating the modeling expression of the true three-dimensional space surrounded by building components, define the relationship between classes, and design the semantic model of the building indoor true three-dimensional navigation space data model. It includes the following steps and contents:
[0031] S11: Design abstract classes and implementation classes for building components, where:
[0032] The design and definition of abstract classes are as follows:
[0033] (1)_BoundarySurface: Boundary surface class, semantically defined as the boundary surface of a three-dimensional building component or space, and its spatial geometry can be expressed by a MultiSurface class;
[0034] (2)_OuterSurface: external surface class, semantically defined as the surface located outside the building, derived from the _BoundarySurface class;
[0035] (3)_InnerSurface: inner surface class, semantically defined as the surface located inside the building, derived from the _BoundarySurface class;
[0036] (4)_Opening: Opening class, semantically defined as an opening located on the wall of a building, and its spatial geometric structure can be expressed by a MultiSurface class.
[0037] The design and definition of the implementation class are as follows:
[0038] (1) Building: Building class, semantically defined as an independent building. A building object consists of multiple floors, may include internal facilities and extensions, has a roof, may have 0 or more stairs, has external walls, etc. Its spatial geometry can be expressed by a MultiSurface class;
[0039] (2) Storey: Storey class, semantically defined as the floor of a building, which may contain multiple rooms, supporting columns, internal facilities of the building, and accessible space on the floor. Its spatial geometry is composed of the geometry of the above parts;
[0040] (3) InnerBuildingInstallation: The class of internal facilities of a building, which is semantically defined as the internal structure facilities of a building. It can exist on one floor or on multiple floors throughout the entire building. Its spatial geometry can be expressed by the MultiSurface class.
[0041] (4) BuildingExtension: Building extension class, semantically defined as various building extension facilities. The space corresponding to this facility is not navigable, and its spatial geometry can be expressed by the Solid class;
[0042] (5) Room: Room class, semantically defined as a single room on a floor, with a door, 0 or more windows, and may contain furniture or internal facilities of the building. Its spatial geometry can be expressed by _BoundarySurface;
[0043] (6) Roof: Roof class, semantically defined as the roof of a building, composed of the RoofSurface class, and its spatial geometry can be expressed by the MultiSurface class;
[0044] (7) Stairs: Stairs class, whose semantic definition is stairs connecting two floors, consisting of stair flights;
[0045] (8) StairFlight: Stair flight class, whose semantics is defined as a flight of stairs with stair treads, and whose spatial geometry is represented by the MultiSurface class;
[0046] (9) Window: Window class, whose semantics is defined as an opening embedded in the wall, and its spatial geometry is expressed by the MultiSurface class;
[0047] (10) Door: Door class, whose semantics is defined as the entrance and exit of a room or floor, and its spatial geometry is expressed by the MultiS class;
[0048] (11) BuildingFurniture: Furniture class, whose semantics is defined as furniture placed in a building, and its spatial geometry can be expressed by the _Geometry class;
[0049] (12) ClosureSurface: a virtual surface class whose semantics is defined as a virtual surface without the middle hole. It is mainly used to seal the holes of doors and windows when generating a three-dimensional navigation space to ensure the airtightness of polyhedron navigation. Its spatial geometric structure can be expressed by the MultiSurface class.
[0050] (13) InnerWall: Inner wall class, semantically defined as the interior wall of a building, whose spatial geometry can be expressed by the MultiSurface class;
[0051] (14) InnerCeiling: inner ceiling class, semantically defined as the indoor ceiling of a building, whose spatial geometry can be expressed by the MultiSurface class;
[0052] (15) InnerFloor: inner floor class, semantically defined as the floor inside the building, whose spatial geometry can be expressed by the MultiSurface class;
[0053] (16) OuterWall: The outer wall class is semantically defined as the outer wall surface of a building, and its spatial geometry can be expressed by the MultiSurface class;
[0054] (17) OuterGround: External ground surface class, semantically defined as the bottom surface of the building's exterior wall, whose spatial geometry can be expressed by the MultiSurface class;
[0055] (18) OuterCeiling: External ceiling class, semantically defined as the external ceiling of a building, whose spatial geometry can be expressed by the MultiSurface class;
[0056] (19) OuterFloor: External floor class, semantically defined as the external floor of a building, whose spatial geometry can be expressed by the MultiSurface class;
[0057] (20) RoofSurface: building top surface class, semantically defined as the external top surface of a building, and its spatial geometry can be expressed by the MultiSurface class;
[0058] (21)RelOpeningSurface: opening relationship class, which represents the relationship between the building opening and the surface on which it is located. It is a relationship class;
[0059] The UML diagram of the above classes and their relationships is shown in Figure 2 .
[0060] S12: Design building interior space navigation category, including:
[0061] The design and definition of abstract classes are as follows:
[0062] _Space: 3D space class, whose semantics is defined as divisible 3D space, and the space type is defined by its specific implementation class;
[0063] The design and definition of the implementation class are as follows:
[0064] (1) TransitionSpace: Transition space class, whose semantics is defined as the navigable space corresponding to the stairs between two floors. Its spatial geometry is expressed by a bounding box class and an octree class.
[0065] (2) ConnectionSpace: Connection space class, whose semantics is defined as the navigable space corresponding to the gate, and whose spatial geometry is represented by a bounding box class and an octree class;
[0066] (3) GeneralSpace: general space class, whose semantics is defined as the navigable space corresponding to rooms and floors, and whose spatial geometry is expressed by a bounding box class and an octree class;
[0067] (4) BoundingBox: Bounding box class, which is defined as a rectangular bounding box of the navigable space and is used to retrieve the navigable space;
[0068] (5) Octree: Octree class, which is defined as a three-dimensional partitioning structure of a navigable space and is used to perform octree partitioning of a three-dimensional navigable space;
[0069] The UML diagram of the above classes and their relationships is shown in Figure 3 .
[0070] S2: Design a spatial geometric structure model based on the B-Rep method. This includes the following steps and contents:
[0071] S21: Using B-Rep expression, define and design the geometric abstract class as follows:
[0072] (1)_Geometry: Geometry class, defined as the base class of spatial geometric structure elements, whose type is specified by the specific implementation class derived from it;
[0073] (2) _Geometry: Geometry feature class, defined as a spatial geometry feature, derived from the _Geometry class, and its type is specified by the specific implementation class derived from it;
[0074] S22: This step uses B-Rep expression, and the definition and design implementation class are as follows:
[0075] (1) Solid: a body class, defined as a three-dimensional body whose three-dimensional space is not navigable and whose three-dimensional boundary is composed of the MultiSurface class;
[0076] (2) MultiSurface: A multi-surface class, defined as multiple planes aggregated together, consisting of multiple Surface feature classes;
[0077] (3) Surface: a surface class, defined as a plane with boundaries, consisting of multiple Polygon feature classes;
[0078] (4) Polygon: A polygon class, defined as a planar polygon that can contain holes and is composed of Ring feature classes. Rings cannot intersect each other.
[0079] (5) Ring: Ring class, defined as a ring on a plane, consisting of three or more vertex elements;
[0080] (6) Point: Point class, defined as a point in three-dimensional space, consisting of three-dimensional coordinates;
[0081] The UML diagram of the above classes and their relationships is shown in Figure 4 .
[0082] S3: Design an octree expression and partitioning method for the true three-dimensional accessible space of a building interior, including the following steps and contents:
[0083] S31: Use Morton code combined with Z-ordered space filling curve to linearly encode the octree and express the octree of the partitioned result, design the octree node structure and the algorithm for constructing the octree based on volume space, and the algorithm for converting the octree node coordinates to Morton code. Among them,
[0084] The method of dividing the navigable space is as follows:
[0085] (1) constructing an octree according to the obtained specific position of the navigable space and the adjacency relationship of the octree nodes 26;
[0086] (2) The navigable space is used as the root node of an octree, and its eight child nodes are converted into Morton codes in the order of the Z filling curve;
[0087] (3) performing the above partitioning on each octree node in turn until the navigable space does not pass through the child node or the partitioning reaches the specified number of layers;
[0088] S32: In this step, in order to calculate the reachable space of different three-dimensional spaces, the octree difference calculation method is designed as follows:
[0089] (1) First, determine whether the main octree and the subtracted octree intersect. If they do not intersect, the main octree does not need to be processed, which is the final result. If they intersect, the subsequent difference operation is performed;
[0090] (2) Calculate the eight vertices of the leaf node Octant1 whose attribute values are 0 or 1 in the main octree and store them in vector <point>In the structure of Points;
[0091] (3) For the leaf node Octant2 of the octree being reduced, determine whether there is a vertex in Octant2 in the Points set. If yes, assign the attribute value of Octant1 to which the corresponding vertex belongs to -1, and remove all nodes of Octant1 from the Points set; if no, do nothing.
[0092] (4) Traverse all Octant2s and execute (2). Finally, the updated main octree is obtained, which is the desired result.
[0093] S33: In this step, by obtaining the Morton code values represented by the lower left corner and the upper right corner of the query area, all the Morton code values in the bounding box are calculated, and then it is determined whether there are vertex Morton code values of spatial entity objects in the bounding box to obtain a rough query range; then it is determined whether the spatial object intersects with the bounding box to obtain an accurate object query result.
[0094] S4: Based on the semantic models, spatial geometric structure models, and octree spatial partitioning and expression methods in S1, S2, and S3, this step designs a method for constructing a three-dimensional connected network of indoor navigable space and performs accessible space path planning, including the following steps and contents:
[0095] S41: In this step, for Room, Door, and Stairs classes, the Poincare duality is used to construct and optimize their node sets, and the network node connection method is designed. Through the multi-layer space model, the accessible space networks on the same floor and different floors are combined into a whole. Among them, the network node connection method is as follows:
[0096] (1) For Room and Door classes, directly take their spatial midpoints as network nodes;
[0097] (2) For the Stairs class, first obtain the MultiSurface data in the Stairs class, calculate the normal direction of each face, retain the step plane whose normal direction is perpendicular to the XY plane, and calculate the approximate area threshold of the step plane based on the semantic information of RiserHeight and TreadLength in the StairsFlight class. Remove the surface data whose normals meet the requirements but are not steps, and take the center points of all planes that meet the requirements as the stair node set.
[0098] (3) Perform spatial replacement and optimization on the above point set.
[0099] (4) Link the same-attribute nodes and cross-attribute nodes of the optimized point set to generate connecting edges.
[0100] (5) A multi-layer spatial model is used to link networks on different floors to form a three-dimensional indoor connected network for the entire building.
[0101] S42: In this step, the algorithm in step S3 is used to perform octree partitioning and calculation on the three types of navigable spaces, namely GeneralSpace, TransitionSpace and ConnectionSpace, according to the starting point and end point of the planned path, and the shortest path is calculated in combination with the Dijkstra algorithm. The method for calculating the shortest path is as follows:
[0102] (1) Perform octree partitioning and difference operations on the three types of spaces, namely GeneralSpace, TransitionSpace, and ConnectionSpace, corresponding to rooms, corridors, doors, and stairs, to obtain their respective navigable spaces;
[0103] (2) According to the Morton code values of the starting point and the end point of the planned path, the adjacency relationship of each octree child node is calculated according to the 26-adjacency relationship;
[0104] (3) Use Dijkstra algorithm to obtain the shortest path from the initial point to the destination point.
[0105] It should be noted that the above embodiments are merely preferred embodiments of the present invention and are not intended to limit the protection scope of the present invention. Equivalent replacements or substitutions made on the basis of the above technical solutions all fall within the protection scope of the present invention.< / point>
Claims
1. A true three-dimensional navigation space data model for indoor buildings, characterized in that: Includes the following models and algorithm steps: (1) Abstract and define the expression of building 3D components and indoor navigable space, incorporate the indoor true 3D navigable space of the building into the indoor true 3D navigation space data model of the building, and design the semantic model of the indoor true 3D navigation space data model of the building; (2) Design a spatial geometric structure model based on the boundary representation (B-Rep) method for the geometric expression of the true three-dimensional spatial structure of the building interior; (3) Design an octree representation and partitioning method for the true three-dimensional accessible space of a building interior; (4) Develop a method for constructing indoor three-dimensional connected networks to achieve a path planning method for accessible spaces.
2. The building indoor true three-dimensional navigation space data model according to claim 1, characterized in that: In step (1), the three-dimensional component expression of the building and the indoor navigable space are abstracted and defined, and the indoor true three-dimensional navigable space of the building is incorporated into the indoor true three-dimensional navigation space data model of the building. The semantic model of the indoor true three-dimensional navigation space data model of the building is designed, which specifically includes the following steps: (11) Based on geometric expression and semantic attributes, design various semantic classes and relationship classes of architectural structures covered by building space. The abstract classes include: outer surface (_OuterSurface) class, boundary surface (_BoundarySurface) class, inner surface (_InnerSurface) class, opening (_Opening) class; the implementation classes include: building (Building) class, storey (Storey) class, inner building installation (InnerBuildingInstallation) class, building extension (BuildingExtension) class, room (Room) class, roof (Roof) class, stairs (Stairs) class, stair section (Stairs) class. airFlight class, Window class, Door class, BuildingFurniture class, ClosureSurface class, InnerWall class, InnerCeiling class, InnerFloor class, OuterWall class, OuterGround class, OuterCeiling class, OuterFloor class, RoofSurface class, and RelOpeningSurface class; establish relationships between the above classes; (12) Incorporate the accessible three-dimensional space indoors and design navigation-related classes and the relationships between them. The designed classes include the abstract space (_Space) class, and the implementation classes include: transition space (TransitionSpace) class, connection space (ConnectionSpace) class, general space (GeneralSpace) class, bounding box (BoundingBox) class, and octree (Octree) class; establish the relationships between the above classes.
3. The building indoor true three-dimensional navigation space data model as claimed in claim 2, characterized in that: In step (2), for the geometric expression of the true three-dimensional indoor spatial structure of the building, designing a spatial geometric structure model based on the boundary expression (B-Rep) method specifically includes the following steps: (21) Using B-Rep expression, define geometric abstract classes and their attributes and methods, including: geometry (_Geometry) abstract class, geometry element (_GeometryPrimitive) abstract class; (22) Using the B-Rep expression method, with the abstract class as the parent class, define the geometric feature class and its attributes and methods, including: Solid class, Surface class, MultiSurface class, Polygon class, Ring class, Point class; establish the relationship between the above classes.
4. The building indoor true three-dimensional navigation space data model as claimed in claim 3, characterized in that: In step (3), for the true three-dimensional reachable space of the building interior, the design of the octree expression and partitioning method specifically includes the following steps: (31) Use Morton code combined with Z-ordered space filling curve to linearly encode the octree and express the octree of the partitioned result, design the octree node structure and the algorithm for constructing the octree based on volume space, and the algorithm for converting the octree node coordinates to Morton code; (32) Design an octree difference calculation method; (33)Design an octree query algorithm.
5. The building indoor true three-dimensional navigation space data model as claimed in claim 4, characterized in that: In step (4), a method for constructing an indoor three-dimensional connected network is developed to realize a reachable space path planning method, which specifically includes the following steps: (41) For Room, Door, and Stairs classes, the Poincare duality is used to construct and optimize their node point sets, and a network node connection method is designed. Through a multi-layer space model, the accessible space networks on the same floor and on different floors are combined into a whole. (42) Perform octree partitioning and calculation on the spaces expressed by the three classes GeneralSpace, TransitionSpace, and ConnectionSpace. Use the 26-adjacency matrix of the octree and the Dijkstra algorithm to calculate the shortest path from the starting position to the ending position. (43) According to the logical relationship and topological connectivity between the semantic classes of the navigation space data model, the path at the semantic level is first found to obtain the connection relationship between the indoor accessible spaces of different navigation classes. This is then combined with the network connectivity and space partitioning methods described in (41) and (42) to obtain the path planning for the entire target space.
Citation Information
Patent Citations
Indoor and outdoor integrated three-dimensional navigation path planning method
CN108759840A
Indoor position service-oriented navigation network construction method
CN110543721A