A building point cloud extraction algorithm based on a complex scene

CN118485679BActive Publication Date: 2026-10-27XIHUA UNIV
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410604215.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-05-15
Publication Date
2026-10-27
Estimated Expiration
2044-05-15

AI Technical Summary

Technical Problem

虽然基于单一数据源的方法不需要考虑多源数据融合时可能出现的难题,但提取建筑物的精度相对较低

Benefits of technology

[0010]针对复杂场景下建筑物与植被粘连密切,难以精确提取建筑物特征的难题,提出了一种仅基于点的三维坐标信息的高精度建筑物点云提取方法。本发明通过将AlphaShape算法与邻域扩充方法相结合,弥补了区域生长算法在分割中的不足,从而获得更完整的建筑物点云数据。此外,在获取距离地面点较近的立面数据时,本文基于原始数据进行掩膜多边形提取以解决布料模拟滤波算法可能将距离地面较近的立面数据归属于地面数据的问题。与基于布料模拟滤波算法提取的数据相比,本文提出的方法能够获得更完整的建筑物立面点云数据,从而提高了立面数据的准确性和完整性。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118485679B_ABST
    Figure CN118485679B_ABST
Patent Text Reader

Abstract

The application is a kind of building point cloud extraction algorithm based on complex scene. The application uses cloth simulation filtering algorithm to separate non-ground points from original point cloud data, and uses region growing algorithm to perform rough extraction of buildings on non-ground points. Then, combined with two parts of data extracted based on mask polygon, complete building point cloud is obtained: facade data close to the ground and building point cloud data. For the obtained building point cloud, the application uses region growing algorithm and Euclidean clustering algorithm to process it to obtain optimized building point cloud. Finally, the optimized building point cloud is combined with the facade data close to the ground, and radius filtering algorithm is used for filtering, so that complete building point cloud is obtained. The segmentation of facade points and roof points is realized by the threshold of Z direction normal vector. The application can obtain more complete building facade point cloud data, thereby improving the accuracy and integrity of the facade data.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of 3D point cloud segmentation and relates to an algorithm for extracting building point clouds in complex scenes. Background Technology

[0002] Buildings, as the most important components of a city, have seen their 3D reconstruction become a crucial part of "digital cities," finding widespread application in urban planning, environmental simulation, and cultural heritage preservation. The 3D reconstruction and visualization of urban buildings is one of the key tasks and challenges in constructing 3D city models. Therefore, efficiently acquiring 3D building information is of great significance for 3D city modeling and the establishment of digital cities. The development of laser scanning and aerial remote sensing technologies has made it easier to acquire point cloud data of large-scale, complex scenes, providing an important foundation for the digital representation of buildings. 3D point cloud data provides the 3D coordinate information of object surfaces, enabling a more detailed representation of the object's 3D features.

[0003] Building point cloud extraction methods can be categorized into two types based on the data source: single-source data-based methods and multi-source data-based methods. Single-source data-based methods typically utilize the geometric properties of building point clouds, such as elevation, shape, and area, to extract buildings. Multi-source data-based methods, on the other hand, integrate auxiliary data such as LiDAR, aerial imagery, multispectral data, and ground planning maps to extract buildings. Multi-source data-based methods generally include traditional building extraction methods and deep learning-based building extraction methods. Traditional methods utilize the geometric properties and spectral characteristics of point cloud data to extract building points. Deep learning-based methods use neural network models to automatically learn feature representations of buildings from input multi-source data and optimize network parameters during training to achieve accurate building identification and extraction. In cases where buildings are closely intertwined with vegetation, combining point cloud data with remote sensing images can significantly improve the accuracy of building extraction. However, multi-source data acquisition and processing typically require more cost and resources, including LiDAR equipment and high-resolution imagery. Furthermore, multi-source data fusion algorithms are generally more complex than those based on a single data source, requiring advanced data processing and computational methods. Deep learning algorithms rely on large amounts of training sample data to obtain high-precision building feature information. While methods based on a single data source do not need to consider the challenges of multi-source data fusion, their accuracy in extracting buildings is relatively low. Therefore, designing a high-precision method to accurately extract building data in tree-occluded scenarios has become a key issue in building point cloud extraction. Summary of the Invention

[0004] In order to accurately extract building planes from complex scenes, this invention proposes a high-precision building point cloud extraction method based solely on the three-dimensional coordinate information of points.

[0005] The technical solution adopted in this invention is: a building point cloud extraction algorithm based on complex scenes, characterized by the following steps:

[0006] Step 1: Use the cloth simulation filtering algorithm to divide the original point cloud data into ground points and non-ground points, and use the region growing algorithm to coarsely extract buildings from the non-ground points.

[0007] Step 2: Use the Alpha Shape algorithm and neighborhood expansion to obtain the corresponding mask polygons. Then, extract the mask polygons based on the original data to obtain the facade data that is close to the ground, and extract the mask polygons based on the non-ground point data to obtain the building point cloud data.

[0008] Step 3: Use region growing algorithm and Euclidean clustering algorithm to process the obtained building point cloud data to filter out some discrete tree points, thereby obtaining optimized building point cloud data.

[0009] Step 4: Combine the optimized building point cloud data with facade data that is close to the ground, remove duplicate data, and use a radius filtering algorithm to filter discrete points to obtain complete building point cloud data. The separation of facade points and roof points is achieved by thresholding the normal vector in the Z direction.

[0010] To address the challenge of accurately extracting building features in complex scenes where buildings are closely intertwined with vegetation, this paper proposes a high-precision building point cloud extraction method based solely on the 3D coordinate information of points. This invention combines the AlphaShape algorithm with a neighborhood expansion method to overcome the shortcomings of region growing algorithms in segmentation, thereby obtaining more complete building point cloud data. Furthermore, when acquiring facade data close to ground points, this paper performs mask polygon extraction based on the original data to solve the problem that cloth simulation filtering algorithms may classify facade data close to the ground as ground data. Compared with data extracted based on cloth simulation filtering algorithms, the proposed method can obtain more complete building facade point cloud data, thus improving the accuracy and completeness of facade data. Attached Figure Description

[0011] Figure 1 This is a flowchart of an embodiment of the present invention;

[0012] Figure 2 This is a schematic diagram of the mask polygon in an embodiment of the present invention;

[0013] Figure 3This is a schematic diagram of the radius filtering algorithm according to an embodiment of the present invention;

[0014] Figure 4 This is the original point cloud of Urban-LiDAR in this embodiment of the invention;

[0015] Figure 5 This is the original point cloud of Vaihi-1 in this embodiment of the invention;

[0016] Figure 6 This is the original point cloud of Vaihi-2 in this embodiment of the invention;

[0017] Figure 7 This is a diagram showing the extraction results of Urban-LiDAR data in an embodiment of the present invention;

[0018] Figure 8 This is a diagram showing the extraction results of Vaihi-1 data in an embodiment of the present invention;

[0019] Figure 9 This is a diagram showing the extraction results of Vaihi-2 data in an embodiment of the present invention. Detailed Implementation

[0020] The present invention will now be described in further detail with reference to the accompanying drawings. The examples described are intended to facilitate understanding of the present invention and are not intended to limit the present invention.

[0021] Please see Figure 1 This invention provides a point cloud extraction algorithm for buildings in complex scenes. The specific steps of this invention are as follows:

[0022] 1. Coarse extraction of building point clouds

[0023] The cloth-based filtering algorithm inverts the point cloud and uses a "spring-mass" cloth model to simulate the filtering process. Region growing is a segmentation algorithm based on spatial proximity and homogeneity. This invention uses a cloth-based filtering algorithm to separate ground point data from non-ground point data, and then uses a region growing algorithm to coarsely extract building point clouds from the non-ground point data. The region growing algorithm is a segmentation method based on spatial proximity and homogeneity. Its core idea is to first select the point with the smallest curvature as the initial seed point. If a new point meets the following conditions, namely, the angle between its normal vector and the normal vector of the current seed point is less than a set threshold and its curvature value is within a specific threshold range, then this point is regarded as a new seed point, and the region growing operation continues until all seed points have been processed.

[0024] The specific process of the region growing algorithm is as follows: (1) Calculate the normal vector of all data points and estimate their curvature values ​​simultaneously using the local surface fitting method. (2) Input all data points into an empty queue in ascending order of their local curvature values, and take the point with the smallest curvature from the queue and add it to the seed point set. (3) Search for the nearest neighbors of the current seed point. If the angle between the normal of the nearest neighbor point and the normal of the current seed point is less than a set threshold, and the curvature values ​​of these nearest neighbors are also less than the set threshold, then these nearest neighbors will be added to the seed point sequence. Then the current seed point will be removed, and the growing process will continue for new seed points. (4) Repeat the above process until all seed points have been processed.

[0025] 2. Fine extraction of building point clouds

[0026] After coarsely extracting the building point cloud, this invention utilizes the Alpha Shape algorithm combined with neighborhood expansion to obtain the corresponding mask polygons. Considering that region growing algorithms may result in missing building boundary points in the coarse extraction, and that cloth simulation filtering algorithms may misidentify facade points closer to the ground as ground points, this paper combines two parts of data extracted based on mask polygons to obtain the complete building point cloud: building point cloud data and facade data closer to the ground. Since the obtained building data may include some tree point cloud data, this invention uses region growing and Euclidean clustering algorithms to filter out some discrete tree points, thereby obtaining optimized building point cloud data. Finally, the optimized building point cloud data is combined with the facade data closer to the ground, removing duplicate data, and a radius filtering algorithm is used to filter discrete points to obtain the complete building point cloud data. The segmentation of facade points and roof points is achieved by thresholding the normal vector in the Z direction.

[0027] The main process for obtaining the mask polygon is as follows: First, the coarsely extracted building point cloud data is projected onto the XOY plane. Next, the Alpha Shape algorithm is used to extract edge points from the projected data, and these extracted edge points are then enlarged by a corresponding factor using a neighborhood expansion method based on that factor, thus obtaining the final mask polygon (e.g., ...). Figure 2The specific implementation process is as follows: 1) Calculate the center coordinates: From the point set S projected onto the XOY plane, arbitrarily select two points P1(x1,y1) and P2(x2,y2), and calculate the center point P3(x3,y3) whose distance from P1 and P2 is equal to α. 2) Determine the internal and external relationship: For each point in the point set S, calculate its distance d to the center P3(x3,y3). If d is less than α, then the point is inside the circle; otherwise, it is outside the circle. 3) Define the edge points: If there are points P1 and P2 such that there are no other points inside the circle, then define points P1 and P2 as edge points, and define line segment P1P2 as boundary line segment. 4) Repeat step (1) until all points in the point set S have been determined, thereby obtaining the edge point data. 5) Expand the contour range: Expand the range of the extracted edge point data to the corresponding multiple to obtain the building point cloud data within the contour to make up for the missing boundary point data. 6) Construct boundary lines: Sort edge points based on the polar angle between adjacent points, and connect these points to form a closed path to extract data within the boundary.

[0028] After obtaining the mask polygons, for the acquisition of facade data closer to the ground, mask polygon extraction is performed based on the original data rather than non-ground point data, and the Z-axis value is appropriately set to obtain facade data closer to the ground. For the acquisition of building point cloud data, mask polygon extraction is performed based on non-ground point data to compensate for the lack of building boundary point data that may be coarsely extracted by the region growing algorithm, thus obtaining building point cloud data. The optimized building point cloud data is combined with the facade data closer to the ground, duplicate data is removed, and a radius filtering algorithm (such as...) is used. Figure 3 ) Filter the discrete points to obtain complete building point cloud data. Figure 4 , Figure 5 and Figure 6 These are the original point cloud data. Figure 7 , Figure 8 and Figure 9 The extraction results of the present invention are as follows.

[0029] The above description is only one embodiment of the present invention, and not all or the only embodiment. Any equivalent modifications made by those skilled in the art to the technical solution of the present invention without departing from the scope of protection of the claims of the present invention shall fall within the protection scope of the present invention. The scope of protection of the present invention shall be determined by the appended claims.

Claims

1. An algorithm for extracting building point clouds in complex scenes, characterized in that, Includes the following steps: Step 1: Use the cloth simulation filtering algorithm to divide the original point cloud data into ground points and non-ground points, and use the region growing algorithm to coarsely extract the building point cloud from the non-ground points to obtain coarsely extracted building point cloud data. Step 2: Project the coarsely extracted building point cloud data onto the XOY plane, and extract edge points from the projected data using the Alpha Shape algorithm. The edge points are determined by selecting two points from the point set S projected onto the XOY plane. and , determine and , The center point of the circle whose distance is equal to α , should be When there are no other points inside the circle with center α and radius α, and Identify the edge point and the line segment The edge points are identified as boundary line segments; the range of the extracted edge point data is expanded by a corresponding multiple using the neighborhood expansion method, and the edge points are sorted based on the polar angle between adjacent points. The edge points are then connected to form a closed path to obtain a mask polygon. Step 3: Use the mask polygons to extract the original point cloud data and non-ground point data respectively. Specifically, mask polygon extraction is performed based on the original point cloud data to obtain the facade data that is closer to the ground; mask polygon extraction is performed based on the non-ground point data to compensate for the lack of building boundary point data that may be caused by the region growing algorithm, so as to obtain the building point cloud data. Step 4: Process the building point cloud data using the region growing algorithm and Euclidean clustering algorithm to filter out discrete tree points and obtain optimized building point cloud data; Step 5: Combine the optimized building point cloud data with the facade data that is closer to the ground, remove duplicate data, and use a radius filtering algorithm to filter discrete points to obtain complete building point cloud data. The facade points and roof points in the complete building point cloud data are separated by using the Z-direction normal vector threshold.

2. The building point cloud extraction algorithm based on complex scenes according to claim 1, characterized in that, Step 1 further includes: A cloth-based simulated filtering algorithm is used to separate non-ground point data from the original point cloud data. This algorithm reverses the point cloud and uses a "spring-mass" cloth model to simulate the filtering process. After separating the ground point data and non-ground point data, a region growing algorithm is used to coarsely extract building point clouds from the non-ground point data. The region growing algorithm first selects the point with the smallest curvature as the initial seed point. When the angle between the normal vector of a new point and the normal vector of the current seed point is less than a set threshold and its curvature value is within the set threshold range, the point is used as the new seed point to continue performing region growing until all seed points have been processed, thereby completing the segmentation of the point cloud data.

3. The building point cloud extraction algorithm based on complex scenes according to claim 1, characterized in that, Step 2, which uses the Alpha Shape algorithm to extract edge points, further includes: for each point in the point set S, calculating the distance d from it to the center point P3 of the circle; if d is less than α, the point is determined to be inside the circle; otherwise, the point is determined to be outside the circle; the points in the point set S are judged according to the edge point judgment method until all points in the point set S are judged, and the edge point data is obtained.

4. The building point cloud extraction algorithm based on complex scenes according to claim 1, characterized in that, Step 4 of the Euclidean clustering further includes: finding the K nearest neighbors of any point P in the space using the KD-Tree nearest neighbor search algorithm; calculating the Euclidean distance between the K nearest neighbors and point P respectively; when there is a point among the K nearest neighbors whose Euclidean distance to point P is less than a set threshold, clustering that point into set Q; ending the clustering when the number of elements in set Q no longer increases; otherwise, selecting points other than point P from set Q and repeating the above process until the number of elements in set Q no longer increases.

5. The building point cloud extraction algorithm based on complex scenes according to claim 1, characterized in that, The radius filtering in step 5 further includes: for each point in the point cloud, searching for its nearest neighbors within a specified radius neighborhood; when the number of nearest neighbors contained in the specified radius neighborhood reaches a preset number, the point is retained as a valid point; when the number of nearest neighbors does not reach the preset number, the point is identified as a noise point and removed.