Beam body structure point cloud data extraction method and extraction device
By performing Z-axis cutting, XY-plane slicing, and stretching on the point cloud data of beam structures, and combining it with a deep learning semantic model, the problem of accuracy in extracting beam point clouds in complex environments was solved, achieving efficient and reliable beam structure recognition.
Patent Information
- Application Number
- CN202511198096.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-08-26
- Publication Date
- 2026-02-03
- Estimated Expiration
- 2045-08-26
AI Technical Summary
Existing technologies for extracting point cloud data of beam structures in complex environments are easily affected by obstacles such as scaffolding, the ground, and surrounding buildings, leading to a decrease in extraction efficiency and accuracy.
The target curve of the beam is determined by cutting the original point cloud along the Z-axis, and then sliced and stretched in the XY plane along the Z-axis. Combined with a pre-trained semantic segmentation and recognition model, the key parts of the beam are extracted.
The system effectively removes noise data in complex occlusion environments, improving the accuracy and reliability of beam point cloud extraction and ensuring the integrity and continuity of the extraction.
Smart Images

Figure CN121095264B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of point cloud processing, and particularly relates to a method and device for extracting point cloud data of a beam structure. BACKGROUND
[0002] With the rapid development of the construction industry and the increasing complexity of the construction environment, the point cloud data generated on the construction site is often disturbed by various factors during acquisition and processing, especially during the construction process of the beam structure.
[0003] In the point cloud data processing of buildings and bridge structures, the extraction of the beam body is particularly crucial. Accurate extraction of the beam body is not only the basis for structural analysis, construction quality monitoring and post-maintenance, but also has important significance for accurate spatial modeling and virtual reality modeling.
[0004] Currently, in the point cloud processing of beam structures, especially in construction scenes with complex environmental occlusions, scaffolding, ground, surrounding buildings and other obstacles can affect the quality and accuracy of point cloud data extraction. However, current methods mainly rely on manual calibration or segmentation based on specific algorithms to extract the beam body, but these methods are disturbed by other data in complex environments, resulting in low extraction efficiency and accuracy. SUMMARY
[0005] The embodiments of the present application provide a method and device for extracting point cloud data of a beam structure to solve the problem that the current extraction method is easily disturbed by other data in a complex environment, resulting in inaccurate extraction.
[0006] In a first aspect, the embodiments of the present application provide a method for extracting point cloud data of a beam structure, comprising:
[0007] obtaining an original point cloud set to be extracted;
[0008] cutting the original point cloud set along the Z-axis direction to obtain a point cloud slice set within a preset height range along the Z-axis direction;
[0009] determining a target curve of the beam body based on the projection of the point cloud slice set on the XY plane, the radius of curvature of the beam body and the opening direction of the circular arc of the beam body;
[0010] performing slice segmentation processing on the target curve in the XY plane, and performing stretching processing on each cutting surface obtained after the slice segmentation processing in the Z-axis direction to obtain a plurality of three-dimensional basic regions;
[0011] inputting the plurality of three-dimensional basic regions into a pre-trained semantic segmentation and recognition model to extract the key parts of the beam body.
[0012] In one possible implementation, the target curve of the beam is determined based on the projection of the point cloud slice set onto the XY plane, the radius of curvature of the beam, and the opening direction of the beam's circular arc, including:
[0013] The fitting curve is determined based on the radius of curvature of the beam and the projection of the point cloud slice set onto the XY plane;
[0014] Based on the center of the fitted curve, the center point of the arc of the fitted curve, and the density analysis of the beam, the target curve of the beam is determined.
[0015] In one possible implementation, the fitted curve is determined based on the radius of curvature of the beam and the projection of the point cloud slice set onto the XY plane, including:
[0016] Based on the nonlinear least squares method, the radius of curvature of the beam, and the coordinates of the projection of the point cloud slice set onto the XY plane, the fitted curve and the center of the fitted curve are determined.
[0017] In one possible implementation, the target curve of the beam is determined based on the center of the fitted curve, the center point of the arc of the fitted curve, and the density analysis of the beam, including:
[0018] Density analysis is performed along the line connecting the center of the fitted curve and the center point of the arc of the fitted curve, and the center point of the region with a density of 0 is determined as the first center point.
[0019] Rotate the fitted curve 180 degrees around the first center point to obtain a suspected curve.
[0020] Calculate the distances between the intersection points of the fitted curve and the suspected curve and the point cloud slice set, and determine the curve with the larger distance as the target curve.
[0021] In one possible implementation, the distances between the intersection points of the fitted curve and the suspected curve and the point cloud slice set are calculated, and the curve with the larger distance is determined as the target curve, including:
[0022] Determine the two ends of the arc of the fitted curve and the two intersection points of the point cloud slice set, and determine the Euclidean distance between these two intersection points as the first distance;
[0023] Determine the two intersection points between the two ends of the suspected curve's arc and the point cloud slice set, and determine the Euclidean distance between these two intersection points as the second distance;
[0024] When the first distance is greater than the second distance, the fitted curve is determined as the target curve;
[0025] When the first distance is less than the second distance, the fitted curve is determined as the target curve.
[0026] In one possible implementation, the target curve is sliced in the XY plane, and the resulting slices are stretched along the Z-axis to obtain multiple three-dimensional basic regions, including:
[0027] On the XY plane, the arc of the target curve is divided into a predetermined number of arc segments, and the endpoints of each arc segment are connected to the center of the target curve to obtain multiple cutting surfaces;
[0028] Each cut surface is stretched along the Z-axis to obtain multiple three-dimensional basic regions.
[0029] In one possible implementation, each cut surface is stretched along the Z-axis to obtain multiple three-dimensional basic regions, including:
[0030] The stretching length is determined based on the difference between the maximum and minimum coordinate values of each point cloud in the original point cloud set along the Z-axis.
[0031] Based on the stretching length, each cut surface is stretched in the Z-axis direction to obtain multiple three-dimensional basic regions.
[0032] In one possible implementation, after obtaining multiple three-dimensional basic regions, the following is also included:
[0033] Multiple three-dimensional basic regions are merged to obtain multiple merged regions; wherein the Nth merged region and the (N-1)th merged region contain at least one of the same three-dimensional basic regions, and N is an integer greater than 1.
[0034] In one possible implementation, multiple three-dimensional basic regions are input into a pre-trained semantic segmentation and recognition model to extract key parts of the beam, including:
[0035] Multiple merged regions are input into a pre-trained semantic segmentation and recognition model to extract the key parts of the beam.
[0036] Secondly, embodiments of the present invention provide a device for extracting point cloud data of a beam structure, comprising:
[0037] The point cloud acquisition module is used to acquire the original point cloud set to be extracted;
[0038] The cutting module is used to cut the original point cloud set along the Z-axis direction to obtain a point cloud slice set within a preset height range along the Z-axis direction;
[0039] The curve determination module is used to determine the target curve of the beam based on the projection of the point cloud slice set onto the XY plane, the radius of curvature of the beam, and the opening direction of the arc of the beam.
[0040] The stretching module is used to slice the target curve in the XY plane and stretch each cut surface obtained after slicing in the Z-axis direction to obtain multiple three-dimensional basic regions.
[0041] The extraction module is used to input multiple three-dimensional basic regions into a pre-trained semantic segmentation and recognition model to extract the key parts of the beam.
[0042] Thirdly, embodiments of the present invention provide an extraction device, including a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the method described in the first aspect or any possible implementation of the first aspect.
[0043] In this embodiment of the invention, firstly, the acquired original point cloud set is cut along the Z-axis to obtain a point cloud slice set within a preset height range along the Z-axis. Next, based on the projection of the point cloud slice set onto the XY plane, the radius of curvature of the beam, and the opening direction of the beam's arc, the target curve of the beam is determined. Then, the target curve is sliced on the XY plane, and each sliced surface is stretched along the Z-axis to obtain multiple three-dimensional basic regions. Finally, these multiple three-dimensional basic regions are input into a pre-trained semantic segmentation and recognition model to extract the key parts of the beam. This invention extracts the key parts of the beam by first determining the target curve of the beam's cross-section, then segmenting and stretching the target curve, and finally inputting the stretched three-dimensional basic regions into a pre-trained semantic segmentation and recognition model. By combining the beam's curvature with deep learning semantic model segmentation, the structure of beams in complex environments can be more accurately identified and extracted. Especially in complex occlusion environments, it can effectively remove noise data, ensuring that the extracted beam point cloud has high accuracy and reliability. Attached Figure Description
[0044] Figure 1 This is a flowchart illustrating the implementation of the point cloud data extraction method for beam structures provided in this embodiment of the invention.
[0045] Figure 2 This is a schematic diagram of a point cloud slice set after Z-axis cutting provided in an embodiment of the present invention;
[0046] Figure 3 This is a schematic diagram of density detection performed when determining a target curve, provided in an embodiment of the present invention;
[0047] Figure 4 This is a schematic diagram of the constructed density curve provided in an embodiment of the present invention;
[0048] Figure 5This is a schematic diagram of the target curve determination process provided in an embodiment of the present invention;
[0049] Figure 6 This is a schematic diagram of the target curve being sliced and segmented on the XY plane according to an embodiment of the present invention;
[0050] Figure 7 This is a schematic diagram of the stretching treatment of each cut surface in the Z-axis direction provided in the embodiment of the present invention;
[0051] Figure 8 This is a schematic diagram of the H-H3DNet network structure provided in an embodiment of the present invention;
[0052] Figure 9 This is a schematic diagram illustrating the position optimization of an initially generated 3D bounding box provided in an embodiment of the present invention;
[0053] Figure 10 This is a schematic diagram of the device for extracting point cloud data of beam structures provided in an embodiment of the present invention. Detailed Implementation
[0054] The embodiments of the present invention will now be described in detail with reference to the accompanying drawings.
[0055] In point cloud data processing, especially for point cloud data of buildings and bridge structures, the extraction of beams is particularly crucial. When processing beam point clouds, scaffolding, the ground, surrounding buildings, and other obstacles often affect the quality and accuracy of the extracted point cloud data. Therefore, improving the accuracy of beam structure extraction from point cloud data has become an urgent technical problem to be solved.
[0056] See Figure 1 The flowchart illustrating the point cloud data extraction method for beam structures provided in this embodiment of the invention is described in detail below:
[0057] S110. Obtain the original point cloud set to be extracted.
[0058] Three-dimensional point clouds can be obtained through radar scanning or three-dimensional laser scanning, thus acquiring the original point cloud set containing the beam structure. In addition to the beam's point cloud, the original point cloud set will also include point clouds of scaffolding, the ground, surrounding buildings, and other obstacles.
[0059] S120. Cut the original point cloud set along the Z-axis to obtain a point cloud slice set within a preset height range along the Z-axis.
[0060] After obtaining the original point cloud, in order to obtain the cross-section of the beam in the XY plane, the original point cloud can be cut along the Z-axis to obtain a point cloud slice set within a preset height range along the Z-axis.
[0061] For example, a point cloud slice with a height of 5mm can be taken along the Z-axis to obtain a point cloud slice set, such as... Figure 2 The point cloud slice set shown includes point clouds of scaffolding, ground, surrounding buildings and other obstacles. The cluttered point clouds at the edges are all interference point clouds.
[0062] S130. Based on the projection of the point cloud slice set onto the XY plane, the radius of curvature of the beam, and the opening direction of the arc of the beam, determine the target curve of the beam.
[0063] Because the point cloud slice set is affected by the complex environment, it is impossible to directly determine the curve of the beam section based on the point cloud slice set. Therefore, it is necessary to determine it based on the curvature characteristics of the beam.
[0064] In some embodiments, the curve of the beam can be obtained by fitting using the least squares method with a fixed radius of curvature. First, the fitted curve is determined based on the radius of curvature of the beam and the projection of the point cloud slice set onto the XY plane. Then, the target curve of the beam is determined based on the center of the fitted curve, the center point of the arc of the fitted curve, and the density analysis of the beam.
[0065] In this embodiment, the fitted curve and the center of the fitted curve can be determined based on the nonlinear least squares method, the radius of curvature of the beam, and the coordinates of the projection of the point cloud slice set onto the XY plane.
[0066] Specifically, this can be solved using the nonlinear least squares method. The optimization objective is to minimize the sum of the deviations between the squared distance from each point to the center of the circle and the square of the fixed radius. The fitted circle is then constructed by projecting the point cloud slices onto the XY plane, ensuring that the fitted circle passes through the point cloud within the projection plane as much as possible.
[0067] The defined objective function is:
[0068]
[0069] Among them, (x i -a) 2 +(y i -b) 2 Representing point (x) i ,y i The square Euclidean distance R from the center (a, b) to the circle is given by R. 2 Given the square of a fixed radius, (x) i -a) 2 +(y i -b)2 -R 2 The residual for each point represents the actual squared distance from the expected value R. 2 The deviation conforms to the principle of least squares method.
[0070] Therefore, the optimization problem is:
[0071]
[0072] In some embodiments, after determining the fitted curve and the center of the fitted curve, the final curve may not necessarily be obtained. In the actual calculation process, there may be a situation where the actual beam shape is completely opposite to the arc, and the obtained fitted curve is not the curve of the beam. Therefore, it is also necessary to determine the target curve of the beam based on the opening direction of the arc of the beam.
[0073] In this embodiment, density analysis can first be performed along the line connecting the center of the fitted curve and the center point of the arc of the fitted curve, and the center point of the region with a density of 0 can be determined as the first center point.
[0074] Then, the fitted curve is rotated 180 degrees around the first center point to obtain a suspected curve.
[0075] Finally, the distances between the intersection points of the fitted curve and the suspected curve and the point cloud slice set are calculated, and the curve with the larger distance is determined as the target curve.
[0076] In this embodiment, we can first determine the two intersection points of the two ends of the arc of the fitted curve with the two point cloud slice sets, and determine the Euclidean distance between these two intersection points as the first distance.
[0077] Then, the two ends of the suspected curve's arc intersect with two points in the point cloud slice set, and the Euclidean distance between these two intersection points is determined as the second distance.
[0078] Finally, when the first distance is greater than the second distance, the fitted curve is determined as the target curve. When the first distance is less than the second distance, the fitted curve is determined as the target curve.
[0079] Specifically, to determine the final target curve, the center point of the arc of the fitted curve can be used as the starting reference for the analysis. Subsequently, an investigation is conducted within a 10-meter range along the direction of the line connecting the center of the arc and the center of the circle of the fitted curve. Point cloud data is retrieved along this direction using a neighborhood radius of 50 centimeters to construct a density variation curve along the connecting line. Due to the inherent characteristics of the beam structure, density gaps exist within it. To detect these gaps, density analysis is performed along the direction of the line connecting the center of the arc and the center of the circle (a, b), as follows... Figure 3 The area density detection map shown is given. The direction vector is... Within a distance range of [140, 160] meters, move in steps of 0.1 meters and calculate the center point at each location:
[0080]
[0081] For each c k Count the number of points within a neighborhood radius r = 0.5 meters:
[0082]
[0083] Therefore, it is possible to generate, such as Figure 4 The density curve shown {(d k ,n k )}, between the start and end segments of the point cloud distribution, identify n k The center of the region where 0 = 0 is taken as the first center point:
[0084]
[0085] Z is the set of indices for zero-density regions. Using this first center point as the rotation center, the fitted curve is rotated 180 degrees around it to obtain a pseudo-curve, and this transformation result is retained. For example... Figure 5 As shown, Figure 5 The target curve in the diagram is the fitted curve, and the non-target curve is what we call the suspected curve.
[0086] After obtaining the suspected curve through rotation, it is necessary to determine the distances between the intersection points of the fitted curve and the suspected curve with the point cloud slice set, and to identify which curve is the final target curve. For each curve, determine its two intersection points with the point cloud slice set at both ends, and calculate the Euclidean distance between these two intersection points. Since the target curve and the beam's arc height are similar, their two intersection points are expected to be located in the front area of the beam, while the intersection points of the non-target curve with the point cloud slice set are located in the back area of the beam. (Continuing with...) Figure 5 Let's take an example to illustrate. Figure 5 The Euclidean distance between the target curve (the fitted curve mentioned above) and the two intersection points of the point cloud slice set is L1, and the Euclidean distance between the non-target curve (the suspected curve mentioned above) and the two intersection points of the point cloud slice set is L2. Since L1 is greater than L2, therefore... Figure 5 Non-target curves, or suspected curves, are eliminated, and the fitted curve is determined as the final target curve. It should be noted that... Figure 2 , 3 The two green curves in Figure 5 represent the outline point cloud of the beam, while the points around them represent the interference point cloud.
[0087] S140. The target curve is sliced on the XY plane, and the resulting cut surfaces are stretched in the Z-axis direction to obtain multiple three-dimensional basic regions.
[0088] After determining the target curve, it is necessary to further slice and segment the original point set of the beam according to the target curve.
[0089] In some embodiments, the arc of the target curve can first be divided into a predetermined number of arc segments on the XY plane, and the endpoint of each arc segment can be connected to the center of the target curve to obtain multiple cutting surfaces. For example... Figure 6 As shown, multiple two-dimensional cutting surfaces are obtained.
[0090] Then, each cut surface is stretched along the Z-axis to obtain multiple three-dimensional basic regions. For example... Figure 7 The multiple three-dimensional basic regions shown.
[0091] In this embodiment, the stretching length can be determined based on the difference between the maximum and minimum coordinate values of each point cloud in the original point cloud set along the Z-axis. Then, based on the stretching length, each cutting surface is stretched along the Z-axis to obtain multiple three-dimensional basic regions.
[0092] Specifically, the target curve's arc can first be divided into multiple equal parts. The number of parts can be determined based on the beam's dimensions. For example, if the beam is a 30m steel-concrete composite curved beam bridge, it can be divided into 25 parts. The purpose is to ensure that each segment's point cloud contains a complete splicing point. Then, the endpoints of the segmented sections are found, and the arc endpoints are connected to the center of the circle, resulting in 25 cutting surfaces in a two-dimensional plane. Next, the cutting surfaces are used to construct a three-dimensional basic region through dimensional expansion. The specific method for determining the three-dimensional basic region is to calculate the z-axis coordinates of the original input point cloud, take the difference between the two z-axis coordinate values with the largest difference to obtain the length of the cutting surface in the vertical direction of the z-axis, and then stretch the two-dimensional plane in the z-axis direction to form a three-dimensional basic region. This achieves the spatial division of the original beam's point cloud. Finally, the entire beam is uniformly divided into several three-dimensional basic regions.
[0093] Furthermore, in some embodiments, directly employing a cutting strategy based on the target curve may lead to the loss of key geometric feature points. To mitigate this problem, the present invention also introduces a merging strategy. Multiple three-dimensional basic regions are merged to obtain multiple merged regions; wherein the Nth merged region includes at least one identical three-dimensional basic region as the (N-1)th merged region, where N is an integer greater than 1.
[0094] For example, all the basic 3D regions are numbered sequentially as 1, 2, 3, 4...30. Groups 1, 2, and 3 are combined; 2, 3, and 4 are combined; 3, 4, and 5 are combined; 4, 5, and 6 are combined, and so on. This process will not be elaborated further. By performing this merging process, the spatial structure hierarchy can be maintained while effectively preserving detailed feature information, significantly improving the integrity and accuracy of region extraction, and ensuring the continuity of the overall structure of the point cloud data.
[0095] S150. Input multiple three-dimensional basic regions into a pre-trained semantic segmentation and recognition model to extract the key parts of the beam.
[0096] Before performing this extraction step, a semantic segmentation and recognition model needs to be built and trained. This is done by adding semantic labels to the ground, scaffolding, beam surfaces at splicing points, bridge deck at the top of the beam, and the front of the beam, thereby training the model.
[0097] In some embodiments, the semantic segmentation and recognition model is the H-H3DNet model.
[0098] In this embodiment, such as Figure 8 As shown, the H-H3DNet model consists of four modules: semantic segmentation, geometric primitives, proposal generation, and classification and refinement. First, the original scanned point cloud is input, and the H-beams are extracted. Next, proposals are generated, and finally, object refinement is performed. Its core idea is to predict and integrate a supercomplete set of geometric primitives, namely the center, face center, and edge center of the bounding box (BB).
[0099] The semantic segmentation module takes raw on-site scan point cloud data as input and extends the PointNet++ backbone network of H3DNet, integrating HyperEdge (hyperedge attention mechanism) and InvResMLP (inverse residual multilayer perceptron) modules to enhance the semantic parsing capability of complex component structures. Specifically, the module first extracts local features through a Set Abstraction (SA) layer; then, the HyperEdge module generates hyperedge structures for each point by constructing a hypergraph and establishes connections based on the distance relationships between point sets. Within each hyperedge, the module uses a self-attention mechanism to assign differentiated weights to relevant points, highlighting the contribution of key points, and updates the feature representation of the center point through weighted aggregation. The SA layer and...
[0100] The HyperEdge modules are stacked alternately to achieve joint modeling of multi-scale local geometric features and high-order structural dependencies. Finally, by using skip connections between the Feature Propagation (FP) layer and the encoder layer, local detail information and global contextual semantics are fused, thereby improving segmentation performance.
[0101] The geometric basic unit module receives the component point cloud extracted from the semantic segmentation stage as input and predicts the positions of the bounding box center, face center, and edge center corresponding to each component using the Hough voting strategy. Specifically, the module integrates a sub-network for extracting dense point feature descriptors and several sub-modules for predicting the displacement vectors between points and their corresponding center points. Cluster analysis is performed on the set of these displacement vectors to extract the final geometric basic units. Each predicted primitive not only contains its spatial location information but also carries a set of latent feature representations, which will serve as intermediate representations in subsequent modules for object detection and classification tasks.
[0102] The proposal generation module uses the predicted geometric primitives as input to generate initial candidate proposals for the target object. In this method, candidate objects are defined as local minima of the distance function. This approach has several advantages: First, it can flexibly fuse multiple redundant geometric primitives, each of which can be considered as an energy term in the objective function; second, the method uses a robust norm to mitigate interference from outliers or erroneous predictions; finally, it iteratively refines the proposals through continuous optimization, thereby reducing the dependence on the quality of the initial proposals and improving the robustness and accuracy of target detection.
[0103] The classification and refinement module, as the terminal module of H-H3DNet, is responsible for classifying each candidate proposal, determining whether it corresponds to a real-world target, and further refining the center position, size, and orientation of the predicted bounding box. Furthermore, this module is responsible for assigning semantic category labels to each detected target. Its core mechanism is feature aggregation, which involves fusing features from other primitives that are geographically adjacent to each candidate proposal. The high-order semantic information carried by these aggregated features is typically difficult to obtain from the independent features of a single geometric primitive, thus significantly improving the accuracy and robustness of the target recognition and refinement process.
[0104] In some embodiments, after extracting the 3D envelope of the point cloud using H-H3DNet, to further improve the fit of the envelope to the actual component pose, such as... Figure 9 As shown, taking the upper flange plate in the assembly process as an example, the position of the initially generated three-dimensional bounding box also needs to be optimized.
[0105] In this embodiment, the principal direction vector and normal vector of the plane containing the upper flange are first calculated, and the principal direction vector and normal vector of the plane containing the centroid of the envelope are also extracted. Based on this, the parallel relationship between the principal direction vectors is constrained, and the corresponding normal vectors are further made to be consistent, thereby achieving the alignment of the envelope posture with the posture of the local components of the actual beam.
[0106] Considering the inherent randomness of point cloud data during scanning and the inherent ambiguity of geometric dimensions derived from a small number of point clouds, introducing more geometric dimension information from point cloud fitting can help improve the accuracy of component size estimation. Therefore, the next step involves multi-angle slicing of the point cloud data within the envelope. Specifically, the point cloud is divided into several thin slices along both the width and length of the envelope, and the point cloud within each slice is projected onto its slicing plane. Subsequently, a minimum area bounding rectangle (MABR) is generated for each projected point set, thereby constructing a cuboid envelope that more closely fits the point cloud contour.
[0107] To reduce the impact of point cloud noise and non-uniform distribution, the boundary of the MABR (Magnetic Boundary Frame) is further optimized. Specifically, within a predefined neighborhood, the point cloud density distribution passing through the MABR boundary is retrieved, and the edge with the most points is selected as the new boundary line. This enhances the adaptability of the envelope boundary to the actual component shape. The length and width of the optimized MABR boundary reflect the length and thickness of the flange, respectively. The same method is used to process the web region, extracting its height and thickness. Finally, statistical analysis of the extracted dimensions from all slices is performed, removing the highest and lowest 10% outliers, and then averaging the data within the intermediate range to obtain a more stable and reliable estimate of the component's true dimensions.
[0108] The method for extracting point cloud data of beam structures provided by this invention first involves cutting the acquired original point cloud set along the Z-axis to obtain a point cloud slice set within a preset height range along the Z-axis. Next, based on the projection of the point cloud slice set onto the XY plane, the radius of curvature of the beam, and the opening direction of the beam's arc, a target curve of the beam is determined. Then, the target curve is sliced on the XY plane, and each sliced surface is stretched along the Z-axis to obtain multiple three-dimensional basic regions. Finally, these multiple three-dimensional basic regions are input into a pre-trained semantic segmentation and recognition model to extract the key parts of the beam. This invention extracts the key parts of the beam by first determining the target curve of the beam's cross-section, then segmenting and stretching the target curve, and finally inputting the multiple stretched three-dimensional basic regions into a pre-trained semantic segmentation and recognition model. By combining the curvature of the beam with the segmentation of the semantic model of deep learning, the structure of the beam in complex environments can be identified and extracted more accurately. Especially in complex occlusion environments, it can effectively remove noise data and ensure that the extracted beam point cloud has high accuracy and reliability.
[0109] It should be understood that the sequence number of each step in the above embodiments does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present invention.
[0110] The following are device embodiments of the present invention. For details not described in detail, please refer to the corresponding method embodiments described above.
[0111] Figure 10 A schematic diagram of a point cloud data extraction device for beam structures provided in an embodiment of the present invention is shown. For ease of explanation, only the parts related to the embodiment of the present invention are shown, and are described in detail below:
[0112] like Figure 10 As shown, the point cloud data extraction device 1000 for beam structures includes:
[0113] Point cloud acquisition module 1010 is used to acquire the original point cloud set to be extracted;
[0114] The cutting module 1020 is used to cut the original point cloud set along the Z-axis direction to obtain a point cloud slice set within a preset height range along the Z-axis direction.
[0115] The curve determination module 1030 is used to determine the target curve of the beam based on the projection of the point cloud slice set on the XY plane, the radius of curvature of the beam, and the opening direction of the beam's arc.
[0116] The stretching module 1040 is used to slice the target curve on the XY plane and stretch each cut surface obtained after slicing on the Z-axis to obtain multiple three-dimensional basic regions.
[0117] The extraction module 1050 is used to input multiple three-dimensional basic regions into a pre-trained semantic segmentation and recognition model to extract the key parts of the beam.
[0118] In one possible implementation, the curve determination module 1030 is used to determine the fitted curve based on the curvature radius of the beam and the projection of the point cloud slice set onto the XY plane.
[0119] Based on the center of the fitted curve, the center point of the arc of the fitted curve, and the density analysis of the beam, the target curve of the beam is determined.
[0120] In one possible implementation, the curve determination module 1030 is used to determine the fitted curve and the center of the fitted curve based on the nonlinear least squares method, the radius of curvature of the beam, and the coordinate values of the projection of the point cloud slice set onto the XY plane.
[0121] In one possible implementation, the curve determination module 1030 is used to perform density analysis along the line connecting the center of the fitted curve and the center point of the arc of the fitted curve, and to determine the center point of the region with a density of 0 as the first center point.
[0122] Rotate the fitted curve 180 degrees around the first center point to obtain a suspected curve.
[0123] Calculate the distances between the intersection points of the fitted curve and the suspected curve and the point cloud slice set, and determine the curve with the larger distance as the target curve.
[0124] In one possible implementation, the curve determination module 1030 is used to determine the two intersection points of the two ends of the arc of the fitted curve with the two point cloud slice sets, and to determine the Euclidean distance between the two intersection points as the first distance;
[0125] Determine the two intersection points between the two ends of the suspected curve's arc and the point cloud slice set, and determine the Euclidean distance between these two intersection points as the second distance;
[0126] When the first distance is greater than the second distance, the fitted curve is determined as the target curve;
[0127] When the first distance is less than the second distance, the fitted curve is determined as the target curve.
[0128] In one possible implementation, the stretching module 1040 is used to divide the arc of the target curve into a preset number of arc segments on the XY plane, and connect the endpoint of each arc segment to the center of the target curve to obtain multiple cutting surfaces.
[0129] Each cut surface is stretched along the Z-axis to obtain multiple three-dimensional basic regions.
[0130] In one possible implementation, the stretching module 1040 is used to determine the stretching length based on the difference between the maximum and minimum coordinate values of each point cloud in the original point cloud set in the Z-axis direction.
[0131] Based on the stretching length, each cut surface is stretched in the Z-axis direction to obtain multiple three-dimensional basic regions.
[0132] In one possible implementation, the stretching module 1040 is used to merge multiple three-dimensional basic regions to obtain multiple merged regions; wherein the Nth merged region includes at least one of the same three-dimensional basic regions as the (N-1)th merged region, and N is an integer greater than 1.
[0133] In one possible implementation, the extraction module 1050 is used to input multiple merged regions into a pre-trained semantic segmentation and recognition model to extract the key parts of the beam.
[0134] The point cloud data extraction device for beam structures provided by this invention first cuts the acquired original point cloud set along the Z-axis to obtain a point cloud slice set within a preset height range along the Z-axis. Next, based on the projection of the point cloud slice set onto the XY plane, the radius of curvature of the beam, and the opening direction of the beam's arc, a target curve of the beam is determined. Then, the target curve is sliced on the XY plane, and each sliced surface is stretched along the Z-axis to obtain multiple three-dimensional basic regions. Finally, these multiple three-dimensional basic regions are input into a pre-trained semantic segmentation and recognition model to extract the key parts of the beam. This invention extracts the key parts of the beam by first determining the target curve of the beam's cross-section, then segmenting and stretching the target curve, and finally inputting the stretched three-dimensional basic regions into a pre-trained semantic segmentation and recognition model. By combining the curvature of the beam with the segmentation of the semantic model of deep learning, the structure of the beam in complex environments can be identified and extracted more accurately. Especially in complex occlusion environments, it can effectively remove noise data and ensure that the extracted beam point cloud has high accuracy and reliability.
[0135] This invention also provides an extraction device, including a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the method described in the above method embodiments.
[0136] In the above embodiments, the descriptions of each embodiment have their own emphasis. Parts not detailed or described in a particular embodiment can be referred to in the relevant descriptions of other embodiments. Unless otherwise specified or in conflict with logic, the terminology and / or descriptions between different embodiments are consistent and can be referenced interchangeably. Technical features in different embodiments can be combined to form new embodiments based on their inherent logical relationships.
[0137] The above-described embodiments are only used to illustrate the technical solutions of the present invention, and are not intended to limit it. Although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention, and should all be included within the protection scope of the present invention.
Claims
1. A method for extracting point cloud data of a beam structure, characterized in that, include: Obtain the set of original points to be extracted; The original point cloud set is cut along the Z-axis to obtain a point cloud slice set within a preset height range along the Z-axis. Based on the projection of the point cloud slice set onto the XY plane, the radius of curvature of the beam, and the opening direction of the arc of the beam, the target curve of the beam is determined; The target curve is sliced in the XY plane, and each cut surface obtained after slicing is stretched in the Z-axis direction to obtain multiple three-dimensional basic regions. Multiple three-dimensional basic regions are input into a pre-trained semantic segmentation and recognition model to extract the key parts of the beam. The step of determining the target curve of the beam based on the projection of the point cloud slice set onto the XY plane, the radius of curvature of the beam, and the opening direction of the arc of the beam includes: Based on the nonlinear least squares method, the radius of curvature of the beam, and the coordinates of the projection of the point cloud slice set onto the XY plane, the fitting curve and the center of the fitting curve are determined. Density analysis is performed along the line connecting the center of the fitted curve and the center point of the arc of the fitted curve, and the center point of the region with a density of 0 is determined as the first center point. Rotate the fitted curve 180 degrees around the first center point to obtain a suspected curve. Calculate the distances between the intersection points of the fitted curve and the suspected curve and the point cloud slice set, and determine the curve with the larger distance as the target curve.
2. The method for extracting point cloud data of a beam structure according to claim 1, characterized in that, The step of calculating the distances between the intersection points of the fitted curve and the suspected curve and the point cloud slice set, and determining the curve with the larger distance as the target curve, includes: Determine the two ends of the arc of the fitted curve and the two intersection points of the point cloud slice set, and determine the Euclidean distance between these two intersection points as the first distance; The two ends of the arc of the suspected curve are respectively intersected with two points of the point cloud slice set, and the Euclidean distance between these two intersection points is determined as the second distance; When the first distance is greater than the second distance, the fitted curve is determined as the target curve; When the first distance is less than the second distance, the suspected curve is determined as the target curve.
3. The method for extracting point cloud data of a beam structure according to claim 1, characterized in that, The target curve is sliced in the XY plane, and the resulting slices are stretched along the Z-axis to obtain multiple three-dimensional basic regions, including: On the XY plane, the arc of the target curve is divided into a predetermined number of arc segments, and the endpoint of each arc segment is connected to the center of the target curve to obtain multiple cutting surfaces; Each cut surface is stretched along the Z-axis to obtain multiple three-dimensional basic regions.
4. The method for extracting point cloud data of a beam structure according to claim 3, characterized in that, The process of stretching each cut surface along the Z-axis yields multiple three-dimensional basic regions, including: The stretching length is determined based on the difference between the maximum and minimum coordinate values of each point cloud in the original point cloud set along the Z-axis. Based on the stretching length, each cut surface is stretched in the Z-axis direction to obtain multiple three-dimensional basic regions.
5. The method for extracting point cloud data of a beam structure according to claim 1, characterized in that, After obtaining multiple three-dimensional basic regions, the process also includes: The multiple three-dimensional basic regions are merged to obtain multiple merged regions; wherein the Nth merged region and the (N-1)th merged region include at least one of the same three-dimensional basic regions, and N is an integer greater than 1.
6. The method for extracting point cloud data of a beam structure according to claim 5, characterized in that, The process of inputting multiple three-dimensional basic regions into a pre-trained semantic segmentation and recognition model to extract the key parts of the beam includes: The multiple merged regions are input into a pre-trained semantic segmentation and recognition model to extract the key parts of the beam.
7. An extraction device, characterized in that, It includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to implement the method as described in any one of claims 1 to 6.
Citation Information
Patent Citations
A method and a device for locating wood cutting points based on log curvature
CN109215019A
Rotator ancient building component model reconstruction method based on least square method
CN120493352A