Real scene three-dimensional point cloud AI automatic extraction method and system

By collecting and preprocessing point cloud data from LiDAR, combined with plane segmentation and boundary extraction algorithms, the problem of automatically distinguishing between parapets and main exterior walls in real-life 3D point clouds was solved, achieving efficient and accurate parapet point cloud extraction and improving model accuracy and detail richness.

CN120689629AActive Publication Date: 2025-09-23BEIJING TAIYUE LEADING TECHNOLOGY CO LTD +1

Patent Information

Application Number
CN202510794879.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-06-14
Publication Date
2025-09-23
Estimated Expiration
2045-06-14

AI Technical Summary

Technical Problem

Existing technologies have difficulty automatically distinguishing and extracting building details, such as parapets and main exterior walls, from real-life 3D point clouds, especially due to misclassification and missed detection problems caused by their geometric similarities.

Method used

The point cloud data is collected by LiDAR and preprocessed. Then, plane segmentation and boundary extraction algorithms are used in combination with height analysis to identify the roof edge and the top surface boundary of the parapet, determine the outer boundary line, and automatically extract the parapet point set.

Benefits of technology

It achieves efficient identification and extraction of detailed components such as parapets from complex point clouds without human intervention, improves processing efficiency and model accuracy, and enriches the geometric foundation of building information models.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120689629A_ABST
    Figure CN120689629A_ABST
Patent Text Reader

Abstract

The invention belongs to the technical field of three-dimensional point cloud processing, and discloses a live-action three-dimensional point cloud AI automatic extraction method and system, and the method comprises the steps: carrying out the scanning through a laser radar, collecting the point cloud data of an external vertical face and a roof of a building, and obtaining an original point cloud; preprocessing the original point cloud to obtain a preprocessed point cloud; based on the preprocessed point cloud, extracting a plane segment set and a vertical plane set; based on the plane section set, extracting a roof edge line, a top surface outer boundary of the parapet wall and a top surface inner boundary of the parapet wall; calculating a roof edge height based on the roof edge line; and based on the roof edge height, the top surface outer boundary and the vertical plane set, determining an outer boundary line of the parapet wall, and obtaining a parapet wall point set after analysis. According to the method, the key technical challenge on parapet wall extraction in building point cloud refined segmentation is overcome, and a solid technical guarantee is provided for high-precision three-dimensional reconstruction and digital management.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of three-dimensional point cloud processing technology, and more specifically, to a method and system for automatically extracting real-scene three-dimensional point clouds using AI. Background Art

[0002] In the automatic extraction method of real-life 3D point clouds, automatic differentiation and extraction of the semantic parts of buildings (such as main walls, load-bearing columns, parapets, roof structures, etc.) is the key to improving model accuracy and application breadth.

[0003] With the development of deep learning, networks specialized for processing point clouds, such as PointNet, PointNet++, KPConv, and RandLA-Net, can learn deep features and perform semantic segmentation. However, existing research has focused on scene-level segmentation (e.g., distinguishing between buildings, vehicles, and pedestrians) or coarse-grained segmentation of buildings (e.g., walls, roofs, and floors). There has been limited research on the refined and automated identification of internal building components (e.g., parapets, dormer windows, and load-bearing columns).

[0004] By introducing more detailed geometric analysis and deep semantic segmentation techniques, it is possible to accurately identify the characteristics of individual components in complex point clouds, thereby constructing more sophisticated Building Information Models (BIM). Such methods not only facilitate the precise reconstruction and digital management of building structures, but also provide targeted structural analysis for urban planning, historical building preservation, disaster assessment, and other fields.

[0005] Especially the main exterior wall and the parapet close to the roof edge, which often appear as vertical planes with similar geometric shapes. Their automatic distinction is a key test of the accuracy of point cloud semantic segmentation.

[0006] In view of this, the present invention proposes an AI automatic extraction system for real-scene 3D point clouds to solve the above problems. Summary of the Invention

[0007] In order to overcome the above-mentioned defects of the prior art and achieve the above-mentioned objectives, the present invention provides the following technical solutions: a method for automatic AI extraction of real-scene 3D point clouds, comprising:

[0008] Scanning with LiDAR collects point cloud data of the building's facade and roof to obtain the original point cloud;

[0009] Preprocess the original point cloud to obtain a preprocessed point cloud;

[0010] Extract plane segment sets and vertical plane sets based on preprocessed point clouds;

[0011] Based on the plane segment set, extract the roof edge line, the outer boundary of the parapet top surface, and the inner boundary of the parapet top surface;

[0012] Calculate the roof edge height based on the roof edge line; determine the outer boundary line of the parapet based on the roof edge height, the top surface outer boundary and the vertical plane set;

[0013] Points belonging to the parapet in the preprocessed point cloud are extracted according to the roof edge height, top surface outer boundary, top surface inner boundary, outer dividing line and roof edge line to obtain the parapet point set.

[0014] Furthermore, the original point cloud is a point set of three-dimensional coordinates, each point in the point set has an X-axis component, a Y-axis component and a Z-axis component, and the Z-axis is set as a vertical direction.

[0015] Furthermore, the preprocessing method of the original point cloud includes: removing outliers and noise points caused by measurement errors or environmental factors, unifying the coordinates into the same coordinate system, separating and removing the ground point cloud, calculating the normal vector of each point, and obtaining a set containing the coordinates of each point in the original point cloud and the normal vector corresponding to each point, which is marked as a preprocessed point cloud.

[0016] Furthermore, the method for extracting the plane segment set and the vertical plane set includes: applying a plane segmentation algorithm to the preprocessed point cloud to segment all plane segments in the preprocessed point cloud; the plane segment is a set of points in the point cloud that are coplanar or approximately coplanar, and the angle between the normal vectors of the approximately coplanar points is less than a set threshold;

[0017] For each plane segment, calculate the average value of the normal vector of each point in the plane segment to obtain the average normal vector of the plane segment; calculate the absolute value of the Z-axis component of each average normal vector to obtain the horizontality score;

[0018] If the horizontality score is less than or equal to the preset threshold, the corresponding plane segment is marked as a vertical plane segment; all plane segments constitute a plane segment set, and all vertical plane segments constitute a vertical plane set.

[0019] Furthermore, the method for extracting the roof edge line, the top surface outer boundary, and the top surface inner boundary includes: screening out plane segments with horizontality scores greater than a preset threshold from the plane segment set; for each pair of X-axis component and Y-axis component combination, retaining only the plane segment where the point with the largest Z-axis component is located, and the remaining plane segments constitute the non-vertical plane segment set;

[0020] Use the Alpha Shape concave hull algorithm to calculate the outer and inner boundary polygons of each plane segment in the set of non-vertical plane segments, and mark them all as boundary polygons. Use the shoelace formula to calculate the area of ​​all boundary polygons. Sort the boundary polygons by area from largest to smallest, and take the top three boundary polygons by area and mark them as outer polygons.

[0021] Calculate the average Z-axis component of each vertex of the peripheral polygons to obtain three average elevations; sort the peripheral polygons from large to small according to the average elevation; mark the peripheral polygon with the smallest average elevation as the roof edge line, mark the peripheral polygon with the largest area as the outer boundary of the top surface, and mark the third peripheral polygon as the inner boundary of the top surface.

[0022] Furthermore, the method for calculating the roof edge height includes: calculating an average Z-axis component of each vertex of the roof edge line to obtain the roof edge height.

[0023] Furthermore, the method for determining the outer boundary line includes: projecting all points of each vertical plane segment in the vertical plane set onto the XY plane to obtain a projection point set; the projection of the outer boundary of the top surface on the XY plane is marked as a projection polygon;

[0024] Calculate the minimum value of the distance from the point in the projected point set to the edge of the projected polygon to obtain the closest distance between each point in the projected point set and the projected polygon; extract the vertical plane segments corresponding to the points in the projected point set whose closest distance is less than a preset small amount to form an outer plane segment set;

[0025] The points in each vertical plane segment of the outer plane segment set where the difference between the Z-axis component and the roof edge height is less than a preset gap are extracted to form an outer boundary point set; curve fitting is performed on the points in the outer boundary point set to obtain the outer boundary line.

[0026] Furthermore, the method for determining the value of the preset small amount includes: if the parapet in the scene does not contain a protruding top cover, the preset small amount is determined by the accuracy, and the preset small amount is taken as t times the accuracy; if the parapet in the scene contains a protruding top cover, the protrusion of the protruding top cover in the horizontal direction relative to the outside of the parapet is considered, and the preset small amount is taken as k times the accuracy plus the protrusion; the preset small amount is smaller than the difference between the wall thickness of the parapet and t times the accuracy.

[0027] Furthermore, the parapet point set extraction method includes: removing points whose Z-axis components are less than the roof edge height in the preprocessed point cloud to obtain a temporary point cloud 1; calculating the average Z-axis component of each vertex on the outer boundary of the top surface to obtain the top surface height; calculating the average of the top surface height and the roof edge height to obtain the intermediate height;

[0028] Temporary point cloud 2 is composed of points in temporary point cloud 1 whose Z axis component is greater than the middle height, and temporary point cloud 3 is composed of points in temporary point cloud 1 whose Z axis component is less than or equal to the middle height.

[0029] Project all points in temporary point cloud 2 onto the XY plane to obtain temporary point set 1; project all points in temporary point cloud 3 onto the XY plane to obtain temporary point set 2; the projections of the top surface outer boundary, top surface inner boundary, outer dividing line and roof edge line on the XY plane are marked as top surface outer projection, top surface inner projection, outer dividing line projection and roof edge projection respectively;

[0030] In the temporary point set 1, the points inside the inner projection of the top surface and the points outside the outer projection of the top surface are removed to obtain the upper half point set; in the temporary point set 2, the points inside the roof edge projection and the points outside the outer boundary projection are removed to obtain the lower half point set; the corresponding points of the upper half point set and the lower half point set in the preprocessed point cloud constitute the parapet point set.

[0031] A real-scene 3D point cloud AI automatic extraction system, which implements the real-scene 3D point cloud AI automatic extraction method, includes:

[0032] The data acquisition module uses lidar to scan and collect point cloud data of the building's facade and roof to obtain the original point cloud;

[0033] The preprocessing module preprocesses the original point cloud to obtain the preprocessed point cloud;

[0034] The vertical plane module extracts the plane segment set and the vertical plane set based on the preprocessed point cloud;

[0035] The roof perimeter module extracts the roof edge line, the outer boundary of the parapet top surface, and the inner boundary of the parapet top surface based on the plane segment set;

[0036] The boundary line module calculates the roof edge height based on the roof edge line; determines the outer boundary line of the parapet based on the roof edge height, the top surface outer boundary and the vertical plane set;

[0037] The parapet extraction module extracts the points belonging to the parapet in the preprocessed point cloud according to the roof edge height, top surface outer boundary, top surface inner boundary, outer dividing line and roof edge line to obtain the parapet point set.

[0038] Beneficial effects of the AI ​​automatic extraction method and system of real-scene 3D point cloud of the present invention:

[0039] Leveraging geometric methods such as plane segmentation, boundary extraction, and height analysis, we built a modular, parameterizable processing chain that can automatically identify and extract detailed components like parapets from complex real-world 3D point clouds without manual intervention, improving processing efficiency and stability.

[0040] Given the high geometric similarity between parapets and main exterior walls, the system effectively separates the two by extracting the roof edge line, defining the parapet top boundary, and determining the outer dividing line based on the roof edge height. This solves the problems of misclassification and missed detection commonly encountered in traditional methods.

[0041] High-precision point cloud extraction of tiny components such as parapets not only enriches the point cloud details, but also provides a more accurate geometric foundation for subsequent building information modeling (BIM) construction, greatly improving the realism and measurement accuracy of the model. BRIEF DESCRIPTION OF THE DRAWINGS

[0042] Figure 1 This is a schematic diagram of an AI automatic extraction system for real-scene 3D point clouds according to the present invention;

[0043] Figure 2 This is a flow chart of the AI ​​automatic extraction method for real-scene 3D point cloud of the present invention;

[0044] Figure 3 This is a schematic diagram of the actual view of the parapet of the present invention. DETAILED DESCRIPTION

[0045] The following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of the present invention.

[0046] Example 1

[0047] See Figure 1 The real-scene three-dimensional point cloud AI automatic extraction system described in this embodiment includes: a data acquisition module, a preprocessing module, a vertical plane module, a roof perimeter module, a dividing line module, and a parapet extraction module.

[0048] A parapet is a low wall built around the roof of a building (e.g. Figure 3 As shown, this embodiment only considers the ideal parapet under flat roof conditions. The parapet comprises an upper surface, an inner wall, and an outer wall, labeled as the parapet top, inner parapet, and outer parapet, respectively. The intersection of the inner parapet and the roof plane forms the roof edge line; the line on the outer parapet at the same height as the roof edge line marks the boundary between the parapet and the main exterior wall of the building.

[0049] The data acquisition module uses a laser radar to scan and collect point cloud data of the building's facade and roof to obtain an original point cloud; the original point cloud is a point set of three-dimensional coordinates, and each point in the point set has an X-axis component, a Y-axis component, and a Z-axis component, with the Z-axis set as the vertical direction.

[0050] The method for collecting point cloud data includes: selecting scanning technology, planning scanning scheme, setting scanning parameters, executing scanning, obtaining a set of three-dimensional coordinate points, marked as the original point cloud; denoted as A = {a}, where a is the three-dimensional coordinate of the point.

[0051] LiDAR scanning technologies include terrestrial laser scanning (TLS), mobile laser scanning (MLS), and aerial laser scanning (ALS). Aerial laser scanning includes laser scanning performed by unmanned aerial vehicles (UAV LiDAR).

[0052] The planned scanning plan should ensure complete coverage of the building facade, especially focusing on the main exterior walls, roof edges and potential parapet areas; it is necessary to ensure sufficient overlap between the scanned areas for subsequent splicing.

[0053] The point cloud density is recommended to be no less than 100 points / square meter, and the accuracy (the average distance between the real coordinates of the reference points and the coordinates of the corresponding points in the point cloud data) must reach the centimeter level (within 2 cm of error) to ensure that the typical thickness of the parapet (such as more than 0.2 meters) can be distinguished and the position of the roof edge can be accurately determined.

[0054] The method for collecting point cloud data is an existing technology and will not be described in detail here.

[0055] The preprocessing module preprocesses the original point cloud to obtain the preprocessed point cloud.

[0056] The preprocessing method of the original point cloud includes: removing outliers and noise points caused by measurement errors or environmental factors, unifying the coordinates to the same coordinate system, separating and removing the ground point cloud, calculating the normal vector of each point (unit vector), and obtaining a set containing the coordinates of each point in the original point cloud and the normal vector corresponding to each point, which is marked as the preprocessed point cloud; denoted as B = {(a, τ a )}, a belongs to A, τ a is the normal vector at point a.

[0057] Methods for removing outliers and noise points include using statistical filtering or radius filtering. Methods for separating and removing ground point clouds include using cloth simulation filtering (CSF) or height threshold-based methods to focus on the building itself. Methods for calculating the normal vector of a point include using its k-nearest neighbors or points within a radius neighborhood, estimating the local surface normal through principal component analysis (PCA), and comparing it with the viewpoint direction to unify the direction of the normal vector so that the normal vector consistently points to the outside of the surface. It is worth noting that in edge and corner areas, the accuracy of the normal vector is generally reduced due to the unevenness of the local surface. Point cloud processing libraries (such as PCL and Open3D) provide the function of directly calculating the normal vector.

[0058] The vertical plane module extracts a set of plane segments and a set of vertical planes based on the preprocessed point cloud.

[0059] The method for extracting the plane segment set and the vertical plane set includes: applying a plane segmentation algorithm to the preprocessed point cloud to segment all the plane segments in the preprocessed point cloud, denoted as C i , i is the index of the plane segment (i.e., the numbering order is arbitrary); the plane segment is a set of points in the point cloud that are coplanar or approximately coplanar, and "approximately coplanar" means that the angle between the normal vectors of the points is less than a set threshold (e.g., 10°);

[0060] For each plane segment, calculate the average value of the normal vectors of each point in the plane segment to obtain the average normal vector of the plane segment (which is a unit vector); calculate the absolute value of the Z-axis component (i.e., the direction of gravity) of each average normal vector to obtain the horizontality score;

[0061] If the horizontality score is less than or equal to the preset threshold (meaning the corresponding plane segment is vertical or nearly vertical), the corresponding plane segment is marked as a vertical plane segment, denoted by D j , j is the index of the vertical plane segment; all plane segments constitute a plane segment set, and all vertical plane segments constitute a vertical plane set.

[0062] Plane segmentation algorithms include RANSAC (Random Sample Consensus) or region growing algorithms based on normal similarity. Plane segmentation algorithms are used to identify all significant planar regions. For example, a region growing algorithm starts with a seed point and gradually merges points based on the similarity of geometric properties between neighboring points (such as the angle between normal vectors and the distance between points and planes). This algorithm stops when the region cannot be expanded further or when the maximum number of iterations is reached, resulting in a plane segment. The region growing algorithm should note that the minimum region size, a key parameter, needs to be estimated based on the minimum parapet size and point cloud density to be detected. For example, if a parapet with a minimum size of 0.5 meters by 0.5 meters is to be detected and the point cloud density is 100 points per square meter, the minimum region size should be set to slightly less than 0.5 × 0.5 × 100 = 25 points, such as 15 or 20 points, to filter out noise. A value that is too small will cause point cloud noise and small uneven surfaces to be identified as planes, while a value that is too large will miss small parapets.

[0063] The RANSAC algorithm and the region growing algorithm are existing technologies and will not be described in detail here.

[0064] A preset threshold is used to distinguish the degree of tilt of a plane segment. A horizontal plane's normal vector is vertical, and its Z-axis component is 1; a vertical plane's normal vector is horizontal, and its Z-axis component is 0. When using the "horizontality score less than or equal to the preset threshold" rule to identify vertical plane segments, the preset threshold must be small enough to exclude all non-vertical roof planes. If there is significant noise or surface irregularities, the threshold may need to be slightly relaxed (for example, from 0.15 to 0.2 or 0.25) to avoid incorrectly excluding walls that are generally vertical but have fluctuating local normal vectors. The preset threshold should ensure that desired vertical walls (especially small parapets) are not incorrectly excluded, while undesirable tilted surfaces (such as roofs and ramps) are not incorrectly retained. It is recommended to initially set the preset threshold to around 0.15, so that the angle between the normal vector and the horizontal plane is approximately 8.6 degrees. Through repeated adjustments and testing, a value that strikes the optimal balance between including all desired vertical surfaces and excluding non-vertical tilted surfaces can be found.

[0065] The roof perimeter module extracts the roof edge line, the outer boundary of the parapet top surface, and the inner boundary of the parapet top surface based on the plane segment set.

[0066] The method for extracting the roof edge line, top surface outer boundary, and top surface inner boundary includes: screening out plane segments with horizontality scores greater than a preset threshold in the plane segment set (i.e., excluding vertical plane segments); for each pair of X-axis component and Y-axis component combination, only the plane segment containing the point with the largest Z-axis component is retained (i.e., only the plane segment at the top of the building is retained); the remaining plane segments constitute the non-vertical plane segment set;

[0067] Use the Alpha Shape concave hull algorithm to calculate the outer and inner boundary polygons of each plane segment in the set of non-vertical plane segments, and mark them all as boundary polygons. Use the shoelace formula to calculate the area of ​​all boundary polygons. Sort the boundary polygons by area from largest to smallest, and take the top three boundary polygons by area and mark them as outer polygons.

[0068] Calculate the average Z-axis component of each vertex of the peripheral polygons to obtain three average elevations; sort the peripheral polygons from large to small according to the average elevation; mark the peripheral polygon with the smallest average elevation as the roof edge line, mark the peripheral polygon with the largest area as the outer boundary of the top surface, and mark the third peripheral polygon as the inner boundary of the top surface.

[0069] The two-dimensional projections of the points in the plane segment onto the best-fitting plane of the plane segment constitute the projection point set; the AlphaShape concave hull algorithm can be understood as imagining a disk of fixed radius rolling outside the projection point set, and the points that the disk can touch are connected to form the outer boundary polygon; for holes in the projection point set, the disk rolls inside the hole to form the inner boundary polygon. The outer boundary polygon and the inner boundary polygon accurately depict the range occupied by the plane segment on the best-fitting plane. The Alpha Shape concave hull algorithm can be used in Python using the alphashape library, in Matlab using the built-in alphaShape object, and in the PCL library using the pcl::ConcaveHull class. The Alpha Shape concave hull algorithm is a prior art and will not be described in detail here. The shoelace formula for calculating the area of ​​a polygon is also a prior art and will not be described in detail here.

[0070] The dividing line module calculates the roof edge height based on the roof edge line; and determines the outer dividing line of the parapet based on the roof edge height, the outer boundary of the top surface and the set of vertical planes.

[0071] The method for calculating the roof edge height includes: calculating an average Z-axis component of each vertex of the roof edge line to obtain the roof edge height.

[0072] The method for determining the outer boundary line includes: projecting all points of each vertical plane segment in the vertical plane set onto the XY plane to obtain a projection point set; the projection of the outer boundary of the top surface on the XY plane is marked as a projection polygon;

[0073] Calculate the minimum value of the distance from the point in the projected point set to the edge of the projected polygon to obtain the closest distance between each point in the projected point set and the projected polygon; extract the vertical plane segments corresponding to the points in the projected point set whose closest distance is less than a preset small amount to form an outer plane segment set;

[0074] Extract points in each vertical plane segment of the outer plane segment set whose difference between the Z-axis component and the roof edge height is less than a preset gap (considering that the point cloud is a discrete point set in three-dimensional space, there may be no points with the same height as the roof edge in the vertical plane segments of the outer plane segment set; therefore, a preset gap needs to be set) to form an outer boundary point set; perform curve fitting on the points in the outer boundary point set to obtain the outer boundary line.

[0075] To determine the outer boundary line, first project all vertical plane segments onto the XY plane, then exclude the points of the vertical plane segments that are far away from the projected polygon. The remaining vertical plane segments are in the same vertical direction as the outer side of the parapet; then, the outer boundary line of the parapet can be determined by the height of the roof edge.

[0076] The method for determining the value of the preset minimum includes: if the parapet in the scene does not contain a protruding top cover, the preset minimum is determined by the accuracy (such as 2 cm), and the preset minimum is taken as t times the accuracy (for example, when the accuracy is 2 cm and t=2, the preset minimum can be 4 cm; t times is used to amplify the error to ensure that most of the exterior wall point clouds that deviate from the precise position due to the error are covered); if the parapet in the scene contains a protruding top cover, the protrusion of the protruding top cover in the horizontal direction relative to the outside of the parapet must also be considered, and the preset minimum is taken as k times the accuracy plus the protrusion (for example, when the accuracy is 2 cm, k=2, and the protrusion is 7 cm, the preset minimum can be 11 cm); the preset minimum should be able to be used to exclude vertical plane segments such as the inner side of the parapet that are close to the outer side of the parapet. Therefore, the preset minimum should be less than the difference between the wall thickness of the parapet and t times the accuracy (for example, when the accuracy is 2 cm, t=2, and the wall thickness is 20 cm, the preset minimum is less than 16 cm).

[0077] The value of the preset gap is determined by the point cloud density, ensuring that in the vertical plane segments of the outer plane segment set, a point can be found whose Z-axis component and the roof edge height difference is less than the preset gap. If the point cloud density is x points per square meter, the preset gap can be taken as centimeters (for example, when the point cloud density is 100 points per square meter, the preset gap can be 5 centimeters; when the point cloud density is 400 points per square meter, the preset gap can be 2.5 centimeters).

[0078] The parapet extraction module extracts the points belonging to the parapet in the preprocessed point cloud according to the roof edge height, top surface outer boundary, top surface inner boundary, outer dividing line and roof edge line to obtain the parapet point set.

[0079] The parapet point set extraction method includes: removing points whose Z-axis components are less than the roof edge height in the preprocessed point cloud to obtain a temporary point cloud 1; calculating the average Z-axis component of each vertex on the outer boundary of the top surface to obtain the top surface height; calculating the average of the top surface height and the roof edge height to obtain the middle height;

[0080] Temporary point cloud 2 is composed of points in temporary point cloud 1 whose Z-axis component is greater than the middle height, and temporary point cloud 3 is composed of points in temporary point cloud 1 whose Z-axis component is less than or equal to the middle height; all points in temporary point cloud 2 are projected onto the XY plane to obtain temporary point set 1; all points in temporary point cloud 3 are projected onto the XY plane to obtain temporary point set 2; the projections of the top surface outer boundary, top surface inner boundary, outer dividing line and roof edge line on the XY plane are marked as top surface outer projection, top surface inner projection, outer dividing line projection and roof edge projection respectively;

[0081] In the temporary point set 1, the points inside the inner projection of the top surface and the points outside the outer projection of the top surface are removed to obtain the upper half point set (the ray method is used to determine whether a point is inside or outside the polygon, that is, a ray is emitted from the point to be measured in any fixed direction, and the number of intersections between the ray and each side of the polygon is counted; if the number of intersections is odd, the point to be measured is inside the polygon; if it is even, the point to be measured is outside the polygon; the ray method is a prior art); in the temporary point set 2, the points inside the projection of the roof edge and the points outside the projection of the outer boundary are removed to obtain the lower half point set; the corresponding points of the upper half point set and the lower half point set in the preprocessed point cloud constitute the parapet point set.

[0082] This embodiment proposes an AI automatic extraction system for real-scene three-dimensional point clouds, which effectively solves the problem in the existing technology that when processing lidar point clouds, the parapet close to the roof edge is difficult to automatically distinguish from the main exterior wall of the building.

[0083] Specifically, this system is implemented through the following methods: first, vertical plane segments are extracted from the preprocessed point cloud, and the non-vertical planes at the top of the building are analyzed to determine the roof edge line and the inner and outer boundaries of the parapet top; then, the roof edge height and the identified vertical plane are combined to calculate the precise dividing line between the parapet facade and the main wall below; finally, all the determined boundary lines and height information are comprehensively utilized, and the complete parapet point set is screened and extracted by constraining the horizontal position of the point cloud within different height ranges.

[0084] Compared with existing technologies, this system has significant advantages:

[0085] By combining geometric analysis (plane segmentation, boundary extraction, height analysis, etc.) and specific processing procedures, the point cloud data of the parapet can be automatically identified and extracted from the complex real-life 3D point cloud.

[0086] In order to address the difficulty of the geometric similarity between the parapet and the main exterior wall, by analyzing the roof edge, the boundary of the parapet top surface, and using the roof edge height to determine the dividing line, the outer side of the parapet can be effectively distinguished from the main exterior wall, thus solving this technical problem.

[0087] By accurately extracting detailed components such as parapets, the accuracy and detail richness of the final generated three-dimensional model (such as BIM) can be significantly improved.

[0088] In summary, this system overcomes the difficulties of existing technologies in fine-grained segmentation of building point clouds, especially in distinguishing and extracting parapets, through a set of innovative processing procedures, thereby improving model accuracy.

[0089] Example 2

[0090] See Figure 2 As shown, this embodiment provides an AI automatic extraction method for real-scene 3D point clouds, including:

[0091] Scanning with LiDAR collects point cloud data of the building's facade and roof to obtain the original point cloud;

[0092] Preprocess the original point cloud to obtain a preprocessed point cloud;

[0093] Extract plane segment sets and vertical plane sets based on preprocessed point clouds;

[0094] Based on the plane segment set, extract the roof edge line, the outer boundary of the parapet top surface, and the inner boundary of the parapet top surface;

[0095] Calculate the roof edge height based on the roof edge line; determine the outer boundary line of the parapet based on the roof edge height, the top surface outer boundary and the vertical plane set;

[0096] Points belonging to the parapet in the preprocessed point cloud are extracted according to the roof edge height, top surface outer boundary, top surface inner boundary, outer dividing line and roof edge line to obtain the parapet point set.

[0097] Anything not described in this application can be achieved by adopting or drawing on existing technologies.

[0098] The various embodiments in this specification are described in a progressive manner, and the same or similar parts between the various embodiments can be referred to each other. Each embodiment focuses on the differences from other embodiments.

[0099] The above are merely embodiments of the present application and are not intended to limit the present application. For those skilled in the art, the present application may have various changes and variations. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present application should all be included within the scope of the claims of the present application.

Claims

1. A method for automatic AI extraction of real-scene 3D point clouds, characterized in that: include: Scanning with LiDAR collects point cloud data of the building's facade and roof to obtain the original point cloud; Preprocess the original point cloud to obtain a preprocessed point cloud; Extract plane segment sets and vertical plane sets based on preprocessed point clouds; Based on the plane segment set, extract the roof edge line, the outer boundary of the parapet top surface, and the inner boundary of the parapet top surface; Calculate the roof edge height based on the roof edge line; determine the outer boundary line of the parapet based on the roof edge height, the top surface outer boundary and the vertical plane set; Points belonging to the parapet in the preprocessed point cloud are extracted according to the roof edge height, top surface outer boundary, top surface inner boundary, outer dividing line and roof edge line to obtain the parapet point set.

2. The AI ​​automatic extraction method for real-scene 3D point cloud according to claim 1, characterized in that: The original point cloud is a point set of three-dimensional coordinates, and each point in the point set has an X-axis component, a Y-axis component, and a Z-axis component, and the Z-axis is set as the vertical direction.

3. The AI ​​automatic extraction method of real-scene 3D point cloud according to claim 1, characterized in that: The preprocessing method of the original point cloud includes: removing outliers and noise points caused by measurement errors or environmental factors, unifying the coordinates into the same coordinate system, separating and removing the ground point cloud, calculating the normal vector of each point, and obtaining a set containing the coordinates of each point in the original point cloud and the normal vector corresponding to each point, which is marked as the preprocessed point cloud.

4. The AI ​​automatic extraction method for real-scene 3D point cloud according to claim 1, characterized in that: The method for extracting a set of plane segments and a set of perpendicular planes comprises: applying a plane segmentation algorithm to a preprocessed point cloud to segment all plane segments in the preprocessed point cloud; the plane segment is a set of coplanar or approximately coplanar points in the point cloud, wherein the angle between the normal vectors of the approximately coplanar points is less than a set threshold; For each plane segment, calculate the average value of the normal vector of each point in the plane segment to obtain the average normal vector of the plane segment; calculate the absolute value of the Z-axis component of each average normal vector to obtain the horizontality score; If the horizontality score is less than or equal to the preset threshold, the corresponding plane segment is marked as a vertical plane segment; all plane segments constitute a plane segment set, and all vertical plane segments constitute a vertical plane set.

5. The AI ​​automatic extraction method for real-scene 3D point cloud according to claim 1, characterized in that: The method for extracting the roof edge line, top surface outer boundary, and top surface inner boundary includes: selecting plane segments with horizontality scores greater than a preset threshold from the plane segment set; for each pair of X-axis component and Y-axis component combination, only the plane segment containing the point with the largest Z-axis component is retained, and the remaining plane segments constitute the non-vertical plane segment set; Use the Alpha Shape concave hull algorithm to calculate the outer and inner boundary polygons of each plane segment in the set of non-vertical plane segments, and mark them all as boundary polygons. Use the shoelace formula to calculate the area of ​​all boundary polygons. Sort the boundary polygons by area from largest to smallest, and take the top three boundary polygons by area and mark them as outer polygons. Calculate the average Z-axis component of each vertex of the peripheral polygons to obtain three average elevations; sort the peripheral polygons from large to small according to the average elevation; mark the peripheral polygon with the smallest average elevation as the roof edge line, mark the peripheral polygon with the largest area as the outer boundary of the top surface, and mark the third peripheral polygon as the inner boundary of the top surface.

6. The AI ​​automatic extraction method for real-scene 3D point cloud according to claim 1, characterized in that: The method for calculating the roof edge height includes: calculating an average Z-axis component of each vertex of the roof edge line to obtain the roof edge height.

7. The AI ​​automatic extraction method for real-scene 3D point cloud according to claim 1, characterized in that: The method for determining the outer boundary line includes: projecting all points of each vertical plane segment in the vertical plane set onto the XY plane to obtain a projection point set; the projection of the outer boundary of the top surface on the XY plane is marked as a projection polygon; Calculate the minimum value of the distance from the point in the projected point set to the edge of the projected polygon to obtain the closest distance between each point in the projected point set and the projected polygon; extract the vertical plane segments corresponding to the points in the projected point set whose closest distance is less than a preset small amount to form an outer plane segment set; The points in each vertical plane segment of the outer plane segment set where the difference between the Z-axis component and the roof edge height is less than a preset gap are extracted to form an outer boundary point set; curve fitting is performed on the points in the outer boundary point set to obtain the outer boundary line.

8. The AI ​​automatic extraction method for real-scene 3D point cloud according to claim 7, characterized in that: Methods for determining the preset minimum amount include: if the parapet in the scene does not contain a protruding top cover, the preset minimum amount is determined by the accuracy, and the preset minimum amount is taken as t times the accuracy; if the parapet in the scene contains a protruding top cover, the protrusion of the protruding top cover relative to the outside of the parapet in the horizontal direction is considered, and the preset minimum amount is taken as k times the accuracy plus the protrusion; the preset minimum amount is smaller than the difference between the wall thickness of the parapet and t times the accuracy.

9. The AI ​​automatic extraction method for real-scene 3D point cloud according to claim 1, characterized in that: The parapet point set extraction method includes: removing points whose Z-axis components are less than the roof edge height in the preprocessed point cloud to obtain a temporary point cloud 1; calculating the average Z-axis component of each vertex on the outer boundary of the top surface to obtain the top surface height; calculating the average of the top surface height and the roof edge height to obtain the middle height; Temporary point cloud 2 is composed of points in temporary point cloud 1 whose Z axis component is greater than the middle height, and temporary point cloud 3 is composed of points in temporary point cloud 1 whose Z axis component is less than or equal to the middle height; Project all points in temporary point cloud 2 onto the XY plane to obtain temporary point set 1; project all points in temporary point cloud 3 onto the XY plane to obtain temporary point set 2; the projections of the top surface outer boundary, top surface inner boundary, outer dividing line and roof edge line on the XY plane are marked as top surface outer projection, top surface inner projection, outer dividing line projection and roof edge projection respectively; In the temporary point set 1, the points inside the inner projection of the top surface and the points outside the outer projection of the top surface are removed to obtain the upper half point set; in the temporary point set 2, the points inside the roof edge projection and the points outside the outer boundary projection are removed to obtain the lower half point set; the corresponding points of the upper half point set and the lower half point set in the preprocessed point cloud constitute the parapet point set.

10. A real-scene 3D point cloud AI automatic extraction system, characterized by: A system for implementing the AI ​​automatic extraction method of real-scene three-dimensional point clouds according to any one of claims 1 to 9 includes: The data acquisition module uses lidar to scan and collect point cloud data of the building's facade and roof to obtain the original point cloud; The preprocessing module preprocesses the original point cloud to obtain the preprocessed point cloud; The vertical plane module extracts the plane segment set and the vertical plane set based on the preprocessed point cloud; The roof perimeter module extracts the roof edge line, the outer boundary of the parapet top surface, and the inner boundary of the parapet top surface based on the plane segment set; The boundary line module calculates the roof edge height based on the roof edge line; determines the outer boundary line of the parapet based on the roof edge height, the top surface outer boundary and the vertical plane set; The parapet extraction module extracts the points belonging to the parapet in the preprocessed point cloud according to the roof edge height, top surface outer boundary, top surface inner boundary, outer dividing line and roof edge line to obtain the parapet point set.

Citation Information

Patent Citations

  • Building intelligent three-dimensional mapping method based on multi-source remote sensing data

    CN112489212A

  • Building contour line automatic extraction method and device, terminal equipment and storage medium

    CN114419085A

  • LOD2 + building model construction method based on image segmentation network

    CN118470255A

  • Window component point cloud segmentation method suitable for building group outer wall surface

    CN118691829A

  • Learning Synthetic Models for Roof Style Classification Using Point Clouds

    US20150006117A1

Cited By

  • Artificial intelligence AI auxiliary space checking structure extraction method and system

    CN121686225A