Skeleton guide point cloud segmentation method for building structure identification

By using the ROSA rotational symmetry axis extraction method, a point cloud skeleton is generated and decomposed into multiple branches, which solves the shortcomings of existing point cloud segmentation methods in the recognition of topological and rotational symmetry structures, and achieves high-precision building structure recognition and segmentation.

CN120976230APending Publication Date: 2025-11-18YUNNAN MINZU UNIV
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511060532.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-07-30
Publication Date
2025-11-18

AI Technical Summary

Technical Problem

Existing point cloud segmentation methods struggle to accurately reflect the actual shape and semantic region of targets when dealing with topological or rotationally symmetric structures. Furthermore, skeleton extraction methods suffer from insufficient accuracy and poor robustness in 3D point clouds, impacting point cloud structure understanding and segmentation performance.

Method used

The ROSA rotational symmetry axis extraction method is adopted. By estimating the normal of the point cloud data of the target building structure, the rotational symmetry axis points in the oriented point cloud are calculated, the point cloud skeleton is generated and stored as an undirected graph, decomposed into multiple branches, and the points in the point cloud are assigned to each branch to form a subspace to achieve building structure recognition.

Benefits of technology

It improves the ability to recognize complex-shaped targets, enhances the ability to understand the structure of segments, has the ability to adaptively recognize locally symmetrical structures, and improves the robustness and accuracy of segments, especially in the case of irregular or missing data scenarios, it can still stably extract skeletons.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120976230A_ABST
    Figure CN120976230A_ABST
Patent Text Reader

Abstract

The invention discloses a skeleton guide point cloud segmentation method for building structure identification. The method comprises the following steps: carrying out normal estimation on point cloud data of a target building structure to obtain a point cloud with a direction, calculating rotary symmetry axis points in the point cloud with the direction, generating a point cloud skeleton by utilizing all the rotary symmetry axis points, and storing the point cloud skeleton as an undirected graph; the point cloud skeleton is decomposed into a plurality of branches, each branch comprises a group of edges in the undirected graph, and the edges in one branch have similar directions; points in the point cloud with the directions are distributed to all the branches, corresponding subspaces are formed, and the subspaces corresponding to all the branches form a building structure recognition result. According to the embodiment of the invention, the ROSA rotational symmetry axis extraction method is utilized, the skeleton line reflecting the geometric morphology of the target can be stably extracted from the complex point cloud, and global structure guidance is provided for subsequent segmentation; consistent mapping of the spatial structure and the semantic structure is achieved, the structure understanding ability of segmentation is enhanced, and the overall segmentation robustness is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of point cloud segmentation technology, and in particular to a skeleton-guided point cloud segmentation method and system for building structure recognition. Background Technology

[0002] With the development of 3D sensing technology, point clouds, as discrete sets of points sampled from the surface of objects in 3D space, have been widely used in various fields such as autonomous driving, robot perception, 3D reconstruction, smart cities, and cultural relic protection. In point cloud data processing tasks, point cloud segmentation is one of the fundamental tasks, the goal of which is to divide the original point cloud into several regions with similar geometric or semantic attributes for subsequent identification, modeling, and analysis.

[0003] Traditional point cloud segmentation methods mainly include the following categories: 1. Geometric feature-based segmentation methods: such as region growing, clustering, or cutting based on metrics like normal vector consistency, curvature, and plane fitting. These methods are sensitive to noise, density variations, and topological complexity in point clouds.

[0004] 2. Cluster-based unsupervised methods: such as K-means, DBSCAN, Mean Shift, etc. These methods rely on the distance or density between points for clustering, but the segmentation effect is often not ideal in scenarios with complex structures or diverse semantics.

[0005] 3. Graph theory or supervoxel-based segmentation methods: such as Supervoxel partitioning and optimization strategies based on minimum cut graphs (GraphCut). These methods introduce certain structural modeling capabilities, but have high computational complexity and still lack an understanding of the global geometric structure.

[0006] 4. Deep learning-based segmentation methods: such as PointNet, PointCNN, KPConv, etc. These methods can extract deep semantic features for semantic segmentation, but their modeling of structural information is still relatively indirect and requires a large amount of labeled data for training.

[0007] Among the methods described above, the ability to structurally model point clouds remains insufficient, especially when dealing with topological structures (such as tree branches, pipes, and building skeletons) or rotationally symmetric structures (such as mechanical parts and rod-shaped objects). The segmentation results often fail to accurately reflect the actual shape and semantic region of the target. Therefore, the introduction of skeleton-based structural guidance has gradually become a research hotspot. A skeleton can abstractly describe the central shape and topological structure of a point cloud object, providing structural priors for segmentation. However, existing skeleton extraction methods still suffer from insufficient accuracy, poor robustness, and structural distortion in 3D point clouds, becoming a key bottleneck affecting point cloud structure understanding and segmentation performance.

[0008] Therefore, it is necessary to improve one or more of the problems existing in the above-mentioned related technical solutions.

[0009] It should be noted that this section is intended to provide background or context for the technical solutions of this disclosure as set forth in the claims. The description herein does not constitute an admission that it is prior art simply because it is included in this section. Summary of the Invention

[0010] The purpose of this disclosure is to provide a skeleton-guided point cloud segmentation method and system for building structure identification, thereby overcoming, to at least to some extent, one or more problems caused by the limitations and defects of related technologies.

[0011] This disclosure first provides a skeleton-guided point cloud segmentation method for building structure recognition, including: Normal estimation is performed on the point cloud data of the target building structure to obtain a oriented point cloud. The rotational symmetry axis points in the oriented point cloud are calculated. A point cloud skeleton is generated using all rotational symmetry axis points. The point cloud skeleton is stored as an undirected graph. The point cloud skeleton is decomposed into multiple branches, each branch contains a set of edges in the undirected graph, and the edges in a branch have similar directions. Points in the oriented point cloud are assigned to each branch to form a corresponding subspace. The subspaces corresponding to all branches constitute the building structure recognition result.

[0012] In one embodiment of this disclosure, the step of calculating the rotational symmetry axis points in the oriented point cloud includes: The initial direction of the rotational symmetry axis point is iteratively optimized to obtain its final direction; The position of the rotational symmetry axis is determined by minimizing the sum of squared distances from the point to the extension of the normal to the neighborhood.

[0013] In one embodiment of this disclosure, the undirected graph includes: multiple vertices and multiple edges, the vertices including all rotational symmetry axis points, and the step of decomposing the point cloud skeleton into multiple branches includes: Vertices with a degree not equal to 2 in the undirected graph are taken as joints. Each joint and its adjacent vertices are traversed using a depth-first search method. Joints with a deviation between edge direction and direction angle less than a threshold are taken as branches.

[0014] In one embodiment of this disclosure, the step of assigning points in the oriented point cloud to each branch to form corresponding subspaces includes: The edges in each branch of the point cloud skeleton are discretized into directed points, and the direction of the directed point is the direction of the edge it is located on. Multiple planes are determined based on the directed points. For each plane, the points in the point cloud located on the plane are queried, and the points located on the plane are assigned to the corresponding branches. All points assigned to the same branch constitute the subspace corresponding to that branch.

[0015] This disclosure further provides a skeleton-guided point cloud segmentation system for building structure recognition, comprising: The point cloud skeleton generation module is used to estimate the normal of the point cloud data of the target building structure to obtain a oriented point cloud, calculate the rotational symmetry axis points in the oriented point cloud, generate a point cloud skeleton using all rotational symmetry axis points, and store the point cloud skeleton as an undirected graph. The branch generation module is used to decompose the point cloud skeleton into multiple branches, each branch containing a set of edges in the undirected graph, and the edges in a branch have similar directions. The subspace generation module is used to assign points in the oriented point cloud to each branch to form corresponding subspaces. The subspaces corresponding to all branches constitute the building structure recognition result.

[0016] In one embodiment of this disclosure, the point cloud skeleton generation module includes: An iterative optimization unit is used to iteratively optimize the initial direction of the rotational symmetry axis point and take the optimization result as the final direction of the rotational symmetry axis point. The position calculation unit is used to calculate the sum of squared distances from the point to the extension of the normal to the neighborhood, and to use it as the position of the rotational symmetry axis point.

[0017] In one embodiment of this disclosure, the subspace generation module includes: Edge discretization unit, used to discretize the edges in each branch of the point cloud skeleton into directed points, the direction of the directed point being the direction of the edge it belongs to; The point query and allocation unit is used to determine multiple planes based on the directed points, and for each plane, query the points in the point cloud located on the plane and allocate the points located on the plane to the corresponding branches; The subspace determination unit is used to form the subspace corresponding to the branch by assigning all points to the same branch.

[0018] This disclosure also provides an electronic device, including: Processor; and Memory for storing the executable instructions of the processor; The processor is configured to perform the steps of the skeleton-guided point cloud segmentation method for building structure identification as described in any of the above embodiments by executing the executable instructions.

[0019] This disclosure also provides a computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the steps of the skeleton-guided point cloud segmentation method for building structure recognition described in any of the above embodiments.

[0020] The technical solutions provided by the embodiments of this disclosure may include the following beneficial effects: The skeleton-guided point cloud segmentation method and system for building structure recognition disclosed in this embodiment utilizes the ROSA rotational symmetry axis extraction method to stably extract skeleton lines reflecting the geometric shape of the target from complex point clouds, providing global structural guidance for subsequent segmentation. A central axis network structure of the target is constructed based on the ROSA skeleton, achieving a consistent mapping between spatial and semantic structures, enhancing the structural understanding capability of the segmentation. The skeleton axes extracted by this invention have symmetry constraints and spatial coherence, effectively guiding the point cloud segmentation process and improving the recognition capability for complex-shaped targets. It possesses adaptive recognition capability for local symmetrical structures, and can still stably extract the skeleton in irregular or missing data scenarios, improving the overall segmentation robustness. Attached Figure Description

[0021] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this disclosure and, together with the description, serve to explain the principles of this disclosure. It is obvious that the drawings described below are merely some embodiments of this disclosure, and those skilled in the art can obtain other drawings based on these drawings without any inventive effort.

[0022] Figure 1 A flowchart illustrating a skeleton-guided point cloud segmentation method for building structure recognition in an exemplary embodiment of this disclosure is shown. Figure 2 This diagram illustrates a skeleton decomposition algorithm in an exemplary embodiment of this disclosure. Figure 3 An example diagram illustrating the depth-first search algorithm in an exemplary embodiment of this disclosure is shown; Figure 4 The diagram shows the test results in an exemplary embodiment of this disclosure; Figure 5 This diagram illustrates a structural block diagram of a skeleton-guided point cloud segmentation system for building structure recognition in an exemplary embodiment of this disclosure. Figure 6 This diagram illustrates the structural block diagram of the point cloud skeleton generation module in an exemplary embodiment of this disclosure; Figure 7 This diagram illustrates the structural block diagram of the subspace generation module in an exemplary embodiment of this disclosure. Figure 8 This diagram illustrates the structure of an electronic device according to an exemplary embodiment of the present disclosure. Figure 9 This diagram illustrates the structure of a program product for implementing a skeleton-guided point cloud segmentation method for building structure recognition, as shown in an exemplary embodiment of this disclosure. Detailed Implementation

[0023] Exemplary embodiments will now be described more fully with reference to the accompanying drawings. However, these exemplary embodiments can be implemented in many forms and should not be construed as limited to the examples set forth herein; rather, they are provided so that this disclosure will be more comprehensive and complete, and will fully convey the concept of the exemplary embodiments to those skilled in the art. The described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.

[0024] Furthermore, the accompanying drawings are merely illustrative diagrams of embodiments of this disclosure and are not necessarily drawn to scale. The same reference numerals in the drawings denote the same or similar parts, and therefore repeated descriptions of them will be omitted. Some block diagrams shown in the drawings are functional entities and do not necessarily correspond to physically or logically independent entities.

[0025] This example implementation first provides a skeleton-guided point cloud segmentation method for building structure recognition. Please refer to [reference needed]. Figure 1 The method may include: S101-S103. Specifically as follows: S101, normal estimation is performed on the point cloud data of the target building structure to obtain a oriented point cloud, rotational symmetry axis points in the oriented point cloud are calculated, a point cloud skeleton is generated using all rotational symmetry axis points, and the point cloud skeleton is stored as an undirected graph.

[0026] S102, the point cloud skeleton is decomposed into multiple branches, each branch contains a set of edges in the undirected graph, and the edges in a branch have similar directions.

[0027] S103 assigns points in the oriented point cloud to each branch to form corresponding subspaces. The subspaces corresponding to all branches constitute the building structure recognition result.

[0028] In this embodiment, the ROSA rotational symmetry axis extraction method can stably extract skeleton lines reflecting the geometric shape of the target from complex point clouds, providing global structural guidance for subsequent segmentation. A central axis network structure of the target is constructed based on the ROSA skeleton, achieving a consistent mapping between spatial and semantic structures, enhancing the structural understanding capability of segmentation. The skeleton axes extracted by this invention have symmetry constraints and spatial coherence, effectively guiding the point cloud partitioning process and improving the ability to recognize targets with complex shapes. It also possesses adaptive recognition capabilities for local symmetric structures, enabling stable skeleton extraction even in irregular or missing data scenarios, thus improving overall segmentation robustness.

[0029] The specific process of each step in the above embodiments will be described below.

[0030] S101 mainly involves the skeleton extraction process. First, the input point cloud data is used to obtain oriented point clouds through normal estimation. and to Downsampling was performed to obtain , yes The downsampled version is used to efficiently generate skeleton key points, i.e., ROSA points.

[0031] Then, the rotational symmetry axis points are calculated, including the following process: S201, the initial direction of the rotational symmetry axis point is iteratively optimized to obtain its final direction. Specifically, Points in The ROSA point (i.e., the axis of rotational symmetry) is used express, = ( , ).in, Represents the axis of rotational symmetry. The direction is obtained through the following iterative optimization process: (1) S202, minimizing the point-to-domain ratio The sum of the squares of the distances of the extensions of the normals is used as the position of the axis of rotational symmetry. Represents the axis of rotational symmetry. The position is calculated using the following formula: (2) in, Representation of domain Normal extension line, express The point normal.

[0032] Finally, a one-dimensional moving least squares method is used to generate a point cloud skeleton from all ROSA points. The point cloud skeleton is then stored as an undirected graph. , where the vertex Includes all ROSA points, It represents all edges and can represent the connection relationships of all ROSA points.

[0033] Next, in S102, the point cloud skeleton is decomposed into multiple branches, each containing an undirected graph. A set of edges, the branch set consisting of all branches is used This is an explanation. For a detailed explanation of the skeleton decomposition process, please refer to [reference needed]. Figure 2 The algorithm shown is executed. The second line of this algorithm determines... On the joints , It is a node whose degree (order) is not equal to 2, that is This includes nodes with a degree of 1 (endpoints) and nodes with a degree greater than 2 (branching points). A branch typically begins at a keypoint and ends at a keypoint or a leaf vertex (degree equal to 1). To obtain branches that meet these requirements, this application develops a depth-first search (DFS)-like procedure in lines 3-14 to traverse the keypoints. In lines 16-26, this application decomposes branches with large orientation changes into simpler branches to ensure that each branch is as simple and easy to cover as possible, making the edges within each branch have similar orientations.

[0034] The algorithms used for skeleton decomposition are explained below.

[0035] Input line: The input is an undirected graph. This refers to the skeleton diagram; δ is the threshold for angle variation, used to control the "straightness" of the branches.

[0036] Output lines: The output is the set of branches after skeleton decomposition. .

[0037] Line 1: Definition: Keypoint Set The currently constructed branch Current node and the next node .

[0038] Line 2: FindJoint It is used to find all "joints" (points with a degree not equal to 2) in a skeleton diagram.

[0039] Lines 3-4: For each joint point traverse each of its adjacent points .

[0040] Lines 5-6: Clear the current branch ,by Starting from its adjacent point, add an edge to the next point.

[0041] Line 7: If the current node It is a "linear midpoint" with a degree of 2.

[0042] Line 8: Find its other adjacent point besides the previous point. .

[0043] Line 9: will Update to the current point, The point in the middle is used as the next point to continue the extension.

[0044] Line 10: Add a new edge to the current branch. .

[0045] Lines 11-12: Repeat until a node with a degree ≠ 2 is encountered, indicating that the branch has ended. This will construct the branch. Add to the total collection middle.

[0046] Line 15: Define a temporary branch set and the reference direction angle σ.

[0047] Lines 16-17: Traverse each branch b, initializing a new branch from the first edge. And calculate its direction angle σ.

[0048] Lines 18-20: For each remaining edge in branch b, if the deviation of the edge's direction from σ is less than the threshold δ, it indicates that the edge is a line segment "in the same direction" and can be added to the current branch. middle.

[0049] Lines 21-23: Otherwise, it indicates a sudden change in direction (such as a corner): [The current direction will be changed]. join in Clear Then, using the current edge as the new starting point, update the direction angle σ. Repeat until the entire branch has been traversed.

[0050] Lines 24-27: Finally, combine the original branch sets. Replace with a finely divided set of branches .

[0051] Please refer to Figure 3 Depth-first search algorithm is from Figure 3Starting from a vertex in the graph, visit that vertex, and then perform a depth-first traversal of the graph from its unvisited neighbors until all vertices connected to that vertex by a path have been visited. If at this point... Figure 3 If there are still unvisited vertices, then select another one. Figure 3 Starting from an unvisited vertex, repeat the above process until all vertices have been visited. This sequential traversal is equivalent to traversing numbers 1 to 11 in numerical order.

[0052] S103 involves assigning points from the oriented point cloud to various branches, forming corresponding subspaces. S103 includes the following specific steps: S301, Discretize the edges in each branch of the point cloud skeleton into directed points, where the direction of a directed point is the direction of the edge it is located on.

[0053] S302, Based on the directed points, multiple planes are determined. For each plane, the points in the point cloud located on the plane are retrieved, and the points located on the plane are assigned to the corresponding branches. S303, all points assigned to the same branch constitute the subspace corresponding to that branch. Finally, the subspaces corresponding to all branches constitute the building structure recognition result.

[0054] Please refer to Figure 4 , Figure 4 The uppermost image is the original drawing of the building structure, while the lowermost image is a point cloud spatial diagram of the building structure identified using the segmentation method described in this application. Figure 4 As can be seen, this skeleton point cloud spatial map has excellent effects, accurately delineates the direction of the component centerline, restores the topological connection nodes, and the data is concise and clear. Its high-precision geometric and topological expression provides an ideal foundation for building structure analysis and modeling.

[0055] This application also provides a skeleton-guided point cloud segmentation system for building structure recognition; please refer to [reference needed]. Figure 5 The system includes: a point cloud skeleton generation module 101, a branch generation module 102, and a subspace generation module 103.

[0056] Specifically, the point cloud skeleton generation module 101 is used to estimate the normal of the point cloud data of the target building structure to obtain a oriented point cloud, calculate the rotational symmetry axis points in the oriented point cloud, generate a point cloud skeleton using all rotational symmetry axis points, and store the point cloud skeleton as an undirected graph. The branch generation module 102 is used to decompose the point cloud skeleton into multiple branches, each branch containing a set of edges in the undirected graph, and the edges in a branch have similar directions. The subspace generation module 103 is used to assign points in the oriented point cloud to each branch to form corresponding subspaces. The subspaces corresponding to all branches constitute the building structure recognition result.

[0057] Please refer to the following: Figure 6 The point cloud skeleton generation module 101 includes: The iterative optimization unit 1011 is used to iteratively optimize the initial direction of the rotational symmetry axis point and take the optimization result as the final direction of the rotational symmetry axis point. The position calculation unit 1012 is used to calculate the sum of squared distances from the point to the extension of the normal to the neighborhood, and use it as the position of the rotational symmetry axis point.

[0058] Please refer to Figure 7 The subspace generation module 103 includes: Edge discretization unit 1031 is used to discretize the edges in each branch of the point cloud skeleton into directed points, the direction of the directed point being the direction of the edge it belongs to. The point query and allocation unit 1032 is used to determine multiple planes based on the directed points, and for each plane, query the points in the point cloud located on the plane and allocate the points located on the plane to the corresponding branches; The subspace determination unit 1033 is used to form the subspace corresponding to the branch by assigning all points to the same branch.

[0059] The beneficial effects of the skeleton-guided point cloud segmentation system for building structure recognition in this application are the same as those of the segmentation methods in the above embodiments, and will not be repeated here.

[0060] In summary, the segmentation method and system of the present invention have the following beneficial effects: 1. Structure-driven segmentation mechanism: Unlike traditional segmentation methods based on local geometric features or density clustering, this invention establishes a direct mapping between points and structures with the global skeleton as the center, which enhances the understanding of the target topology.

[0061] 2. Adaptive modeling capability for complex structures: The ROSA method demonstrates strong stability and adaptability for rotationally symmetric bodies, rod-shaped objects, and branching shapes, improving its versatility in various scenarios such as architecture, machinery, and plants.

[0062] 3. Strong noise resistance and robustness to missing data: The skeleton extraction process relies on local symmetry and directional consistency, not on global density distribution. Therefore, it can still ensure extraction accuracy when the point cloud is sparse, occluded, or contains holes.

[0063] 4. No training required, easy deployment: Compared with deep learning methods, it avoids the dependence on a large amount of labeled data, has a simple process, fewer parameters, low computational cost, and is easy to deploy and apply on resource-constrained devices.

[0064] Furthermore, the point cloud obtained in this application can be constructed as a connected graph, and its minimum spanning tree can be calculated as an approximation of the skeleton. Subsequently, branch decomposition and point projection assignment can be performed on it. This scheme can achieve certain results when the structure is simple and the point cloud is dense, but it is easily affected by point order and noise. The skeleton stability and orientation consistency are worse than the ROSA method.

[0065] Regarding the apparatus in the above embodiments, the specific manner in which each module performs its operation has been described in detail in the embodiments related to the method, and will not be elaborated upon here.

[0066] It should be noted that although several modules of the system for executing actions are mentioned in the detailed description above, this division is not mandatory. In fact, according to embodiments of the present invention, the features and functions of two or more modules described above can be embodied in one module. Conversely, the features and functions of one module described above can be further divided into multiple modules for embodiment. Components shown as modules may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of the present invention according to actual needs. Those skilled in the art can understand and implement this without any inventive effort.

[0067] See Figure 8 The present invention also provides an electronic device 300, which includes at least one memory 310, at least one processor 320, and a bus 330 connecting different platform systems.

[0068] The memory 310 may include a readable medium in the form of volatile memory, such as random access memory (RAM) 311 and / or cache memory 312, and may further include read-only memory (ROM) 313.

[0069] The memory 310 also stores a computer program, which can be executed by the processor 320, causing the processor 320 to perform the steps of the skeleton-guided point cloud segmentation method for building structure recognition in any embodiment of the present invention. The specific implementation method is consistent with the implementation method and the technical effect achieved in the above-described embodiments of the skeleton-guided point cloud segmentation method for building structure recognition, and some contents will not be repeated.

[0070] The memory 310 may also include a utility 314 having at least one program module 315, such program module 315 including but not limited to: an operating system, one or more application programs, other program modules, and program data, each or some combination of these examples may include an implementation of a network environment.

[0071] Accordingly, processor 320 can execute the aforementioned computer program, and can also execute utility 314.

[0072] Bus 330 can represent one or more of several types of bus structures, including a memory bus or memory controller, peripheral bus, graphics acceleration port, processor, or a local bus using any of the various bus structures.

[0073] Electronic device 300 can also communicate with one or more external devices 340, such as keyboards, pointing devices, Bluetooth devices, etc., and with one or more devices capable of interacting with it, and / or with any device that enables it to communicate with one or more other computing devices (e.g., routers, modems, etc.). This communication can be performed via input / output interface 350. Furthermore, electronic device 300 can communicate with one or more networks (e.g., local area networks (LANs), wide area networks (WANs), and / or public networks, such as the Internet) via network adapter 360. Network adapter 360 can communicate with other modules of electronic device 300 via bus 330. It should be understood that, although not shown in the figures, other hardware and / or software modules can be used in conjunction with electronic device 300, including but not limited to: microcode, device drivers, redundant processors, external disk drive arrays, RAID systems, tape drives, and data backup storage platforms.

[0074] This invention also provides a computer-readable storage medium for storing a computer program. When the computer program is executed, it implements the steps of the skeleton-guided point cloud segmentation method for building structure recognition in this invention. The specific implementation method is consistent with the implementation method and the technical effects achieved in the above-described embodiments of the skeleton-guided point cloud segmentation method for building structure recognition, and some details will not be repeated.

[0075] Figure 9The illustration shows a program product 400 for implementing the skeleton-guided point cloud segmentation method for building structure recognition described above. This product can be a portable compact disc read-only memory (CD-ROM) and includes program code, and can run on a terminal device, such as a personal computer. However, the program product 400 of the present invention is not limited thereto. In this invention, the readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. The program product 400 can employ any combination of one or more readable media. A readable medium can be a readable signal medium or a readable storage medium. A readable storage medium can be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of readable storage media (a non-exhaustive list) include: an electrical connection having one or more wires, a portable disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disc read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof.

[0076] Computer-readable storage media may include data signals propagated in baseband or as part of a carrier wave, carrying readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. The readable storage medium may also be any readable medium capable of sending, propagating, or transmitting a program for use by or in conjunction with an instruction execution system, apparatus, or device. The program code contained on the readable storage medium may be transmitted using any suitable medium, including but not limited to wireless, wired, optical fiber, RF, or any suitable combination thereof. Program code for performing the operations of this invention may be written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Java and C++, as well as conventional procedural programming languages ​​such as C or similar programming languages. The program code may be executed entirely on a user computing device, partially on a user device, as a standalone software package, partially on a user computing device and partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing devices can be connected to user computing devices via any type of network, including local area networks (LANs) or wide area networks (WANs), or they can be connected to external computing devices (e.g., via the Internet using an Internet service provider).

[0077] The embodiments of the present invention have been described above with reference to the accompanying drawings. However, the present invention is not limited to the specific embodiments described above. The specific embodiments described above are merely illustrative and not restrictive. Those skilled in the art can make many other forms under the guidance of the present invention without departing from the spirit and scope of the claims. All of these forms are within the protection scope of the present invention.

Claims

1. A skeleton-guided point cloud segmentation method for building structure recognition, characterized in that, include: Normal estimation is performed on the point cloud data of the target building structure to obtain a oriented point cloud. The rotational symmetry axis points in the oriented point cloud are calculated. A point cloud skeleton is generated using all rotational symmetry axis points. The point cloud skeleton is stored as an undirected graph. The point cloud skeleton is decomposed into multiple branches, each branch contains a set of edges in the undirected graph, and the edges in a branch have similar directions. Points in the oriented point cloud are assigned to each branch to form a corresponding subspace. The subspaces corresponding to all branches constitute the building structure recognition result.

2. The skeleton-guided point cloud segmentation method for building structure recognition according to claim 1, characterized in that, The steps for calculating the rotational symmetry axis points in the point cloud with orientation include: The initial direction of the rotational symmetry axis point is iteratively optimized to obtain its final direction; The position of the rotational symmetry axis is determined by minimizing the sum of squared distances from the point to the extension of the normal to the neighborhood.

3. The skeleton-guided point cloud segmentation method for building structure recognition according to claim 1, characterized in that, The undirected graph includes multiple vertices and multiple edges, wherein the vertices include all rotational symmetry axis points, and the step of decomposing the point cloud skeleton into multiple branches includes: Vertices with a degree not equal to 2 in the undirected graph are taken as joints. Each joint and its adjacent vertices are traversed using a depth-first search method. Joints with a deviation between edge direction and direction angle less than a threshold are taken as branches.

4. The skeleton-guided point cloud segmentation method for building structure recognition according to claim 1, characterized in that, The step of assigning points in the oriented point cloud to each branch to form corresponding subspaces includes: The edges in each branch of the point cloud skeleton are discretized into directed points, and the direction of the directed point is the direction of the edge it is located on. Multiple planes are determined based on the directed points. For each plane, the points in the point cloud located on the plane are queried, and the points located on the plane are assigned to the corresponding branches. All points assigned to the same branch constitute the subspace corresponding to that branch.

5. A skeleton-guided point cloud segmentation system for building structure recognition, characterized in that, include: The point cloud skeleton generation module is used to estimate the normal of the point cloud data of the target building structure to obtain a oriented point cloud, calculate the rotational symmetry axis points in the oriented point cloud, generate a point cloud skeleton using all rotational symmetry axis points, and store the point cloud skeleton as an undirected graph. The branch generation module is used to decompose the point cloud skeleton into multiple branches, each branch containing a set of edges in the undirected graph, and the edges in a branch have similar directions. The subspace generation module is used to assign points in the oriented point cloud to each branch to form a corresponding subspace. The subspaces corresponding to all branches constitute the building structure recognition result.

6. The skeleton-guided point cloud segmentation system for building structure recognition according to claim 5, characterized in that, The point cloud skeleton generation module includes: An iterative optimization unit is used to iteratively optimize the initial direction of the rotational symmetry axis point and take the optimization result as the final direction of the rotational symmetry axis point. The position calculation unit is used to calculate the sum of squared distances from the point to the extension of the normal to the neighborhood, and to use it as the position of the rotational symmetry axis point.

7. The skeleton-guided point cloud segmentation system for building structure recognition according to claim 6, characterized in that, The subspace generation module includes: Edge discretization unit, used to discretize the edges in each branch of the point cloud skeleton into directed points, the direction of the directed point being the direction of the edge it belongs to; The point query and allocation unit is used to determine multiple planes based on the directed points, and for each plane, query the points in the point cloud located on the plane and allocate the points located on the plane to the corresponding branches; The subspace determination unit is used to form the subspace corresponding to the branch by assigning all points to the same branch.

8. An electronic device, characterized in that, include: processor; as well as Memory for storing the executable instructions of the processor; The processor is configured to perform the steps of the skeleton-guided point cloud segmentation method for building structure identification according to any one of claims 1 to 4 by executing the executable instructions.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When executed by a processor, the program implements the steps of the skeleton-guided point cloud segmentation method for building structure identification as described in any one of claims 1 to 4.