Three-dimensional point cloud discontinuous surface identification method, system, device and medium
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- CHINA RAILWAY SIYUAN SURVEY & DESIGN GRP CO LTD
- Filing Date
- 2026-02-05
- Publication Date
- 2026-06-23
AI Technical Summary
Existing technologies suffer from low accuracy and poor integrity in identifying rock mass structural planes. Traditional methods tend to erroneously merge structural planes that are spatially adjacent but have different attitudes, and it is difficult to restore the true scale and continuous morphology of the structural planes.
A method based on directional constraint clustering and iterative merging is adopted. Macroscopic directional clustering is performed by calculating the point cloud normal vectors to establish directional constraints. Spatial clustering is then performed within each directional subset. Iterative merging is then performed by combining coplanarity and proximity criteria to identify and reconstruct discontinuous surfaces.
It significantly improves the accuracy and completeness of discontinuity identification, ensures that the identification results are highly consistent with the actual geological conditions, and provides more reliable support for rock mass engineering stability analysis.
Smart Images

Figure CN122265686A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of three-dimensional data processing technology, specifically to a method and system for automatically and accurately identifying and extracting information from discontinuous surfaces (such as joints, fissures, bedding planes, faults, etc.) of engineering geological bodies such as rock masses, slopes, and tunnel faces using high-density three-dimensional point cloud data acquired by technologies such as LiDAR and ground three-dimensional scanning. Background Technology
[0002] In geotechnical engineering, geological disaster monitoring, and other fields, the accurate identification and parameter acquisition of rock mass structural surfaces are crucial. Traditional manual on-site measurement methods are inefficient, dangerous, and struggle to obtain complete information. In recent years, the widespread adoption of 3D laser scanning technology has made it possible to rapidly acquire high-precision point cloud data of rock mass surfaces. Therefore, how to automatically and accurately identify and quantify discontinuities from massive, discrete point cloud data has become a research hotspot.
[0003] In existing technologies, common methods involve directly segmenting point clouds in 3D space based on region growing or clustering algorithms (such as DBSCAN). However, these methods have the following significant drawbacks:
[0004] (1) Low accuracy: Due to the lack of effective use of the orientation (direction) information of the structural surface, traditional spatial clustering algorithms are prone to mistakenly merging structural surfaces that are spatially close but have different orientations (such as two sets of intersecting joints) into the same cluster, resulting in serious distortion of the identification results.
[0005] (2) Poor integrity: Due to the noise, density unevenness and small undulations of the object surface in point cloud data, density-based clustering algorithms often over-divide a large-scale structural surface that should be complete into a large number of discrete and small fragmented surfaces, which cannot restore the true scale and continuous shape of the structural surface and is difficult to meet the needs of engineering stability analysis.
[0006] Therefore, there is an urgent need for an automated method that can simultaneously improve the accuracy and completeness of discontinuity surface recognition. Summary of the Invention
[0007] This application aims to overcome the aforementioned deficiencies of the prior art and provide a method, system, device, and medium for identifying discontinuities in 3D point clouds based on directional constraint clustering and iterative merging, thereby significantly improving the accuracy, completeness, and automation of discontinuity identification. To achieve the above objective, this application adopts the following technical solution.
[0008] In a first aspect, embodiments of this application provide a method for identifying discontinuous surfaces in a three-dimensional point cloud, including:
[0009] Acquire 3D point cloud data of the target area and perform preprocessing;
[0010] The preprocessed point cloud data is grouped by macroscopic direction to identify several dominant direction groups in the point cloud in order to establish directional constraints.
[0011] Based on the aforementioned directional constraints, the point cloud data is divided into multiple directional subsets, and spatial clustering is performed within each directional subset to obtain preliminary candidate discontinuous surface clusters.
[0012] The initial candidate discontinuous surface clusters are iteratively merged based on the coplanarity criterion and the proximity criterion until they can no longer be merged, thus obtaining a complete discontinuous surface cluster.
[0013] Geological parameters are calculated and characterized for the complete discontinuous surface cluster, and the results are output.
[0014] Furthermore, the preprocessed point cloud data is macroscopically oriented to identify several dominant directional groups in the point cloud, thereby establishing directional constraints, including:
[0015] Calculate the local normal vector of each point in the point cloud;
[0016] Valid normal vectors located in the neighborhood of an approximate plane are selected based on the coplanarity coefficient.
[0017] The effective normal vectors are clustered by direction to obtain the several dominant direction groups.
[0018] Furthermore, the directional clustering employs the K-Means++ algorithm, and the optimal number of clusters is automatically determined using the silhouette coefficient method.
[0019] Furthermore, the spatial clustering employs the density-based DBSCAN clustering algorithm;
[0020] The method of applying the directional constraints includes: assigning the normal vector of each point to the dominant direction group with the smallest angle with it, thereby dividing the original point cloud into multiple directional subsets, and then independently executing the DBSCAN clustering algorithm in each directional subset.
[0021] Furthermore, the coplanarity criterion includes: the angle between the global best-fit plane normals of two candidate surface clusters to be merged is less than a preset angle threshold;
[0022] The proximity criterion includes: the bidirectional asymmetric face cluster distance between two candidate face clusters to be merged is less than a preset distance threshold.
[0023] Furthermore, the specific process of the iterative merging process includes:
[0024] Add all preliminary candidate discontinuous surface clusters to the candidate list;
[0025] Perform an iterative loop, traversing the face cluster pairs in the candidate list in each iteration;
[0026] If a pair of face clusters that simultaneously satisfy both the coplanarity criterion and the proximity criterion is found, they are merged into a new face cluster, and the candidate list is updated.
[0027] Repeat the iterative process until no more face clusters can be merged in a complete traversal.
[0028] Furthermore, the preprocessing includes:
[0029] An adaptive voxel lattice downsampling method is used to downsample the original point cloud, and a statistical outlier removal algorithm is used for noise reduction. The adaptive voxel lattice downsampling dynamically adjusts the voxel lattice side length according to the initial size of the input point cloud.
[0030] Secondly, embodiments of this application provide a system capable of implementing the three-dimensional point cloud discontinuity surface recognition method described in any of the foregoing claims, comprising:
[0031] The data preprocessing module is used to acquire and preprocess the 3D point cloud data of the target area;
[0032] The macro-directional grouping module is used to perform macro-directional grouping on the preprocessed point cloud data and identify several dominant directional groups to establish directional constraints.
[0033] The orientation constraint spatial clustering module is used to divide the point cloud into multiple orientation subsets based on the orientation constraints, and to perform spatial clustering within each orientation subset to obtain preliminary candidate discontinuous surface clusters.
[0034] The iterative merging optimization module is used to perform iterative merging processing on the preliminary candidate discontinuous surface clusters based on the coplanarity criterion and the proximity criterion to obtain complete discontinuous surface clusters;
[0035] The result characterization output module is used to calculate and characterize the geological parameters of the complete discontinuous surface cluster and output the results.
[0036] Thirdly, embodiments of this application provide an electronic device, including: one or more processors;
[0037] A memory for storing one or more programs; when the one or more programs are executed by the one or more processors, the one or more processors are able to implement the steps in the three-dimensional point cloud discontinuity surface recognition method described in any of the preceding claims.
[0038] Fourthly, embodiments of this application provide a computer-readable medium storing a computer program, which, when executed by a processor, can implement the steps in the three-dimensional point cloud discontinuity surface recognition method described in any of the preceding claims.
[0039] This application discloses a method for identifying discontinuities in three-dimensional point clouds. First, the method calculates the point cloud normal vectors and performs macroscopic directional clustering to identify dominant directional groups and establish directional constraints. Second, based on these directional constraints, the point cloud is divided into subsets of each direction and spatially clustered separately. This design utilizes directional information to pre-constrain spatial relationships, avoiding the erroneous merging of spatially adjacent but differently occurring structural surfaces, thus improving the accuracy of initial identification. Finally, to address the fragmented results that may arise from the initial clustering, an iterative merging mechanism based on coplanarity and proximity criteria is introduced. Through cyclic detection and intelligent stitching, discretely identified surfaces belonging to the same physical structure are reconstructed into complete surfaces, greatly improving the completeness of the identification results. This method solves the dual problems of low accuracy and poor completeness in identifying geological discontinuities using traditional point cloud segmentation methods, providing more reliable technical support for rock mass engineering stability evaluation. Attached Figure Description
[0040] Figure 1 A core flowchart of a 3D point cloud discontinuity surface recognition method based on orientation constraint clustering and iterative merging provided in this application embodiment;
[0041] Figure 2 A flowchart illustrating a method for identifying discontinuous surfaces in 3D point clouds based on directional constraint clustering and iterative merging, provided for an embodiment of this application;
[0042] Figure 3 The structural surface identified by the three-dimensional point cloud discontinuity surface identification method based on orientation constraint clustering and iterative merging provided in this application embodiment;
[0043] Figure 4 A schematic diagram of the module structure of a 3D point cloud discontinuity surface recognition system based on orientation constraint clustering and iterative merging provided for embodiments of this application;
[0044] Figure 5 This is a structural block diagram of an electronic device provided in an embodiment of this application. Detailed Implementation
[0045] To enable those skilled in the art to better understand the technical solutions of this application, exemplary embodiments of this application are described below with reference to the accompanying drawings, including various details of the embodiments of this application to aid understanding. These should be considered merely exemplary. Therefore, those skilled in the art should recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of this application. Similarly, for clarity and conciseness, descriptions of well-known functions and structures are omitted in the following description. Unless otherwise specified, the various embodiments of this application and the features within those embodiments can be combined with each other.
[0046] As used herein, the term "and / or" includes any and all combinations of one or more of the associated enumerated entries. The terminology used herein is for describing particular embodiments only and is not intended to limit the application. As used herein, the singular forms "a" and "the" are also intended to include the plural forms, unless the context clearly indicates otherwise. It should also be understood that when the terms "comprising" and / or "made of" are used herein, the presence of the stated feature, integral, step, operation, element, and / or component is specified, but the presence or addition of one or more other features, integrals, steps, operations, elements, components, and / or groups thereof is not excluded. Terms such as "connected" or "linked" are not limited to physical or mechanical connections but can include electrical connections, whether direct or indirect.
[0047] Unless otherwise specified, all terms used in this application (including technical and scientific terms) have the same meaning as commonly understood by one of ordinary skill in the art. It should also be understood that terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with their meaning in the context of the relevant art and this application, and will not be interpreted as having an idealized or overly formal meaning, unless expressly so defined in this application.
[0048] refer to Figures 1-3 One embodiment of this application proposes a method for identifying discontinuous surfaces in 3D point clouds based on directional constraint clustering and iterative merging. The method specifically includes the following 5 steps.
[0049] Step 1: Acquire and preprocess the 3D point cloud data of the target area. This involves acquiring the 3D point cloud data of the target area using technologies such as LiDAR or photogrammetry. To improve the efficiency of subsequent calculations and ensure data quality, the raw point cloud needs to be preprocessed, specifically including:
[0050] (1) Adaptive Voxel Grid Downsampling: The adaptive voxel grid downsampling method divides the point cloud data into a uniform three-dimensional voxel grid and uses the centroid (or approximate point) of all points in each voxel grid to replace all points in that grid. This significantly reduces the data volume while maintaining the original spatial distribution uniformity of the point cloud to the maximum extent, avoiding the problem of uneven local density of the point cloud that may be caused by random sampling. The key parameter in this step is the voxel grid side length. If the voxel grid side length is set too small, the downsampling effect will not be obvious, and the computational burden will still be large; if the voxel grid side length is set too large, too much surface detail will be lost, thus affecting the accuracy of subsequent structural surface recognition. The voxel grid side length is not a fixed value, but is adaptively adjusted according to the initial size of the input point cloud. For example, for ultra-large-scale point clouds with more than 5 million points, indicating very high original density or extremely large scanning range, a larger voxel side length (e.g., 0.5 m) should be set to prioritize computational efficiency. Conversely, for medium-sized point clouds with 100,000 to 500,000 points, a smaller voxel side length (e.g., 0.1 m) should be set to achieve the optimal balance between computational efficiency and detail preservation. This adaptive strategy ensures that the proposed method has good robustness to point cloud data from different sources and with different densities.
[0051] (2) Statistical outlier removal: The downsampled point cloud may still contain sparse noise points caused by scanning errors or environmental occlusion. Therefore, a statistical outlier removal algorithm can be used for denoising. The principle of this algorithm is to first traverse each point in the point cloud and calculate the average distance d between it and its K nearest neighbors. mean Then, assume d for all points mean The values form a Gaussian distribution; calculate the global mean μ of this distribution. global and standard deviation σ global Finally, iterate through all points again and set d... mean Value greater than μ global +μ*σ global Points are identified as outliers and removed. The key parameters in this step are the number of nearest neighbors K and the standard deviation factor μ. The value of K reflects the size of the neighborhood for local statistical analysis. K should be set large enough to provide stable local distance statistics, but not too large to avoid obscuring different neighboring structures. In this embodiment, K=20, which ensures the reliability of the statistics and matches the neighborhood size required for subsequent normal vector calculation. The value of μ is the threshold for the strictness of denoising; the smaller the μ value, the stricter the denoising. The setting of this value needs to be analyzed in conjunction with the results of the downsampling in the previous step: if the voxel side length used for downsampling is small (the point cloud is dense), a stricter μ=1.5 can be set; if the voxel side length is large (the point cloud is sparse), a more lenient μ=2.0 or 2.5 should be set to prevent the algorithm from misclassifying sparse but valid structural points as noise.
[0052] Step 2: Perform macroscopic directional grouping on the preprocessed point cloud data to identify several dominant directional groups in the point cloud in order to establish directional constraints.
[0053] This step aims to identify the main structural surface attitude groups (dominant orientation groups) from the global point cloud and use them as strong constraints for subsequent spatial clustering.
[0054] First, calculate and filter the local normal vectors of valid points in the point cloud. For any point p in the preprocessed point cloud... i K-Nearest Neighbors search is performed using data structures such as Kd-Tree to construct its local neighborhood N. i The selection of the value of K is fundamental to the calculation of the normal vector. If the value of K is too small (e.g., K < 10), the number of neighborhood points is too small, and the calculated normal vector will be very sensitive to local noise, causing drastic fluctuations in the normal vector direction. If the value of K is too large (e.g., K > 40), the neighborhood range is too large, which can lead to smooth transitions at sharp corners, boundaries, or high curvature regions of the structural surface, thereby masking the true planar features. In this embodiment, the value of K is typically selected between 15 and 30 to achieve a balance between noise resistance and detail preservation. The neighborhood N is determined. i Then, the covariance matrix of the neighborhood is calculated using PCA (Principal Component Analysis), yielding the three eigenvalues λ of the neighborhood point set covariance matrix. max , λ mid and λ min The coplanarity coefficient η is calculated using the following formula:
[0055] η=λ min / (λ max +λ mid +λ min )
[0056] η reflects the planarity of the neighborhood point set. Geometrically, the closer η is to 0, the smaller the variance of the neighborhood along the normal vector direction, and the closer the neighborhood is to an ideal plane. When η is less than a preset threshold η th At that time, point p i Only the normal vectors of η are considered valid and used in subsequent clustering. th The value of η needs to be adjusted based on the quality of the point cloud data. For high-quality, low-noise point clouds, a stricter threshold can be set, such as η. th The empirical value range for η can be from 0.05 to 0.2. For low-noise data acquired by laser scanning, η can be set... th =0.05; For point clouds generated by photogrammetry with slightly higher noise levels, the threshold needs to be relaxed, and η should be set to 0.05. th =0.2, to retain more effective planar information.
[0057] Secondly, directional clustering is performed on the effective normal vectors. The K-Means++ clustering algorithm is used to cluster the unit normal vectors. K-Means++ avoids the problem of traditional K-Means algorithms easily getting trapped in local optima due to random initialization through an optimized initial centroid selection strategy, resulting in more stable and reliable clustering results. The number of clusters K (i.e., the number of macroscopic directional groups) directly affects the accuracy of grouping. This embodiment determines the optimal K value using the silhouette coefficient method: trying K from 2 to N. max For each value of K, the average profile coefficient of all normal vector samples is calculated. The average profile coefficient comprehensively reflects the compactness within clusters and the separation between clusters. The K value corresponding to the point with the largest coefficient value is considered the optimal number of clusters K. In practical applications, the automatically selected K value can be manually fine-tuned by combining prior geological knowledge of the engineering area (such as known regional tectonic stress fields or main fault directions) to finally obtain K dominant direction groups (main directions), denoted as K0. .
[0058] Step 3: Based on the directional constraints, the point cloud data is divided into multiple directional subsets, and spatial clustering is performed in each directional subset to obtain preliminary candidate discontinuous surface clusters.
[0059] For each valid normal vector n selected in step 2 i Assign it to the principal direction P with the smallest included angle. j The allocation conditions are:
[0060]
[0061]
[0062] In the above formula, θ assign Set the maximum allowed angle (e.g., 15°). Through this step, the entire point cloud is divided into K sub-point cloud sets with consistent orientations.
[0063] Subsequently, within each directional subset, spatial clustering algorithms such as DBSCAN (Density-Based Spatial Clustering of Applications with Noise) are performed independently to identify preliminary discontinuous surface clusters that are spatially adjacent and have consistent orientations. This algorithm relies on two core parameters: neighborhood radius (Eps) and minimum number of points (MinPts). Eps defines the spatial proximity range. In this embodiment, the Eps parameter can be set according to the average point density of the point cloud after the previous preprocessing step, typically set to 3 to 5 times the average point distance. Too small an Eps parameter will cause a complete plane to be fragmented, while too large an Eps parameter may incorrectly merge neighboring parallel small planes.
[0064] MinPts is used to filter sparse noise points and defines the minimum number of neighborhood points required to form a core point. In this embodiment, the MinPts parameter can be set according to the minimum number of points expected to be included in an effective structural surface, typically 10 to 50 points. This setting can effectively filter out scattered noise points that do not belong to any plane. Traditional methods directly perform DBSCAN spatial clustering on the entire point cloud, which can easily lead to the incorrect merging of spatially adjacent structural surfaces with completely different attitudes (normal vector directions) (e.g., two intersecting surfaces) into a single cluster. This embodiment ensures that the spatial clustering process is always strongly constrained by macroscopic directions by independently performing DBSCAN spatial clustering within subsets with consistent orientations. This effectively prevents structural surfaces with different attitudes from being incorrectly merged, ensuring that points from different orientation groups are not incorrectly merged in spatial clustering, greatly improving the accuracy of the initial clustering results.
[0065] Step 4: For the preliminary candidate discontinuous surface clusters, perform iterative merging based on the coplanarity criterion and the proximity criterion until merging is no longer possible, and obtain the complete discontinuous surface clusters.
[0066] This step introduces a crucial iterative merging mechanism to address the over-segmentation problem in step 3 caused by point cloud noise, density inhomogeneity, or minor fluctuations (i.e., a real large-scale structural surface A may be initially identified as multiple discrete surface clusters A1, A2, A3). The iterative merging mechanism reconstructs the surface using the following criteria:
[0067] For any two preliminary surface clusters C i and C j If both of the following conditions are met (coplanarity and proximity), then they are merged:
[0068] (1) Coplanarity condition: arccos(N) i .N j )≤θ merge .
[0069] The macroscopic attitudes of the two facets must be consistent. To obtain the macroscopic attitude of the facets, firstly, the candidate facet C... i Perform PCA on all points within the surface family, calculate their covariance matrix, and take the eigenvector corresponding to the smallest eigenvalue to obtain the global best-fit plane normal vector N for the surface family. i Similarly, C can be calculated. j normal vector N j Two normal vectors N i and N j The included angle between them must be less than the preset angle merging threshold θ mergeThis threshold is typically set between 3° and 10°. Smaller thresholds (such as 3°) are suitable for rock masses with very good planarity, while larger thresholds (such as 10°) are suitable for situations with large surface undulations or a lot of data noise, in order to ensure the fault tolerance of the merge.
[0070] (2) Proximity condition: Dist(C i C j )≤D merge .
[0071] Two surface families must be sufficiently close in space. To accurately define two surface families C... i and C j Spatial distance between Dist(C) i C j This embodiment employs a bidirectional asymmetric surface cluster distance metric method: First, the surface cluster C is calculated. i All points to surface cluster C j The average projected distance d of the best-fit plane i→j Then, the surface family C is calculated in reverse. j All points to surface cluster C i The average projected distance d of the best-fit plane j→i Finally, the maximum of these two average distances is taken as the final distance between the two face clusters, i.e., Dist(C i C j )=max(d i→j d j→i This definition ensures that two face sets are considered neighboring only when they are close to each other's planes, thus avoiding one-way misjudgments caused by projection. Dist(C) i C j The distance must be less than a preset distance merging threshold D. merge The threshold should be set according to the overall size of the point cloud and the typical spacing between structural surfaces. It is generally set to 0.5% to 2% of the overall size of the point cloud, or an absolute value (such as 0.1 m to 0.3 m) can be set based on geological prior knowledge.
[0072] This merging process will be executed iteratively until the system converges. The specific process is as follows:
[0073] a) Initialization: Place all face clusters obtained from the initial clustering by DBSCAN into a candidate list L.
[0074] b) Loop: In each iteration, traverse all face cluster pairs (C1, C2, C3) in the candidate list L. i C j ).
[0075] c) Judgment and Merging: Find all face cluster pairs that simultaneously satisfy the coplanarity and proximity conditions, and select Dist(C) from them. i C j Merge the most recent pair. The resulting new face cluster C will be formed. new Add to candidate list L, and replace the old C j Remove from the list.
[0076] d) Termination: Repeat steps 2 and 3 until no pair of candidate face clusters can be merged in a complete traversal. At this point, the remaining faces in the candidate list L constitute the final, complete set of discontinuous structural faces.
[0077] This iterative merging mechanism automates the process entirely without human intervention. Merging decisions are based on strict coplanarity and proximity geometric constraints, ensuring accuracy and avoiding subjective judgment. Through iterative iteration, fragmented surface clusters caused by noise, occlusion, or uneven point cloud density can be automatically stitched together and reconstructed, thereby maximizing the restoration of the true scale and integrity of the structural surfaces.
[0078] Step 5: Calculate and characterize the geological parameters of the complete discontinuous surface cluster, and output the results.
[0079] After the above steps, the final result is an optimized and reconstructed complete set of discontinuous surface clusters, C. final This embodiment performs automated calculation and characterization of geological parameters for each discontinuity in the set, and for each final surface cluster C... final The optimal plane equation Ax + By + Cz + D = 0 is fitted using PCA. PCA is performed on all points within the cluster, and the eigenvector corresponding to the smallest eigenvalue is the normal vector N = (A, B, C) of the plane. Subsequently, the centroids of all points within the cluster are calculated. Then the D term of the plane equation can be derived from... Confirmed. The attitude is calculated based on the plane's normal vector. First, the normal vector N=(A,B,C) is normalized, ensuring it points towards the upper hemisphere, resulting in n=(n x ,n y ,n z Assume a 3D point cloud coordinate system with the X-axis pointing east, the Y-axis pointing north, and the Z-axis pointing vertically upward. The tilt angle (α) is the maximum angle between the discontinuity surface and the horizontal plane (XY plane), and its value is equal to the angle between the normal vector n and the vertical Z-axis. The calculation formula is: Dip(α) = arccos(n) z (Unit: radians). The dip (β) is the azimuth angle of the discontinuous surface tilting downwards, i.e., the projection (n) of the normal vector n onto the horizontal plane (XY plane). x ,n y The azimuth angle of Dip. The calculation formula is: DipDirection (β)=arctan2(n x ,n y (Unit: radians) To convert the results to geological compass azimuth from 0° to 360°, radians need to be converted to degrees and negative values need to be processed.
[0080] To characterize the scale of the structural surface, this embodiment calculates its area and groups the surface cluster C. final All points are projected onto the best-fit plane. These coplanar 3D projected points are then mapped to a 2D point set using the first two principal components of PCA as new 2D reference axes through coordinate transformation, and the convex hull of this 2D point set is calculated. The area of the polygon enclosed by this convex hull is considered the representative area of the structural surface.
[0081] Finally, a parameter table containing information such as occurrence, area, and spatial location will be output, and its three-dimensional traces can be further extracted to provide data support for rock mass stability analysis and engineering design.
[0082] refer to Figure 4 Based on the same inventive concept as the aforementioned embodiments of the 3D point cloud discontinuity surface recognition method, this application also provides a 3D point cloud discontinuity surface recognition system, which can be implemented on a computing device through software programming. The system specifically includes:
[0083] (1) Data preprocessing module: used to perform step 1 to achieve adaptive downsampling and noise reduction of point cloud data.
[0084] (2) Macro-directional grouping module: used to execute step 2, realize normal vector calculation, screening and directional clustering, and output the dominant directional group.
[0085] (3) Orientation Constraint Space Clustering Module: This module is used to execute step 3, receive the orientation grouping results, divide the point cloud into each orientation subset, and perform DBSCAN clustering on each subset.
[0086] (4) Iterative merging optimization module: used to execute step 4, receive the preliminary clustering results, and perform iterative merging based on coplanarity and proximity criteria.
[0087] (5) Result characterization output module: used to execute step 5, calculate parameters for the final surface cluster and generate a report.
[0088] The above modules are connected in sequence and work together to form a complete automated processing pipeline from raw data input to geological parameter output.
[0089] Overall, the advantages of this application compared to the prior art include:
[0090] 1. Significantly improves the accuracy of discontinuity identification: Traditional methods, when directly performing spatial clustering, easily merge spatially adjacent but differently occurring structural surfaces (such as two intersecting sets of joints) due to the lack of directional guidance. This application innovatively adopts a two-step method of "first macroscopic directional grouping, then intra-group spatial clustering." Through the pre-emptive directional constraint, it ensures that the subsequent spatial proximity search is only conducted within the set of points with similar attitudes, thereby fundamentally eliminating confusion between structural surfaces with different attitudes and making the identification results highly consistent with the actual geological situation.
[0091] 2. Significantly Enhances the Integrity of Discontinuous Surface Recognition: Traditional clustering algorithms are sensitive to noise and density inhomogeneity, often excessively segmenting a complete structural surface into numerous discrete fragments. This application introduces an iterative merging mechanism based on dual geometric criteria (coplanarity and proximity). This mechanism, like a "smart jigsaw puzzle," automatically detects, judges, and assembles fragmented surfaces belonging to the same physical plane but separated for various reasons, effectively restoring the true macroscopic scale and continuous morphology of the structural surface and solving the core problem of fragmented recognition results.
[0092] 3. High Adaptability and Full-Process Intelligence: This application demonstrates high adaptability from parameter setting to process control. For example, the optimal number of orientation groups (K value) is automatically determined using the contour coefficient method, eliminating the need for manual prior specification; adaptive voxel downsampling is employed in the preprocessing stage to handle point clouds of different scales. The entire process, from establishing orientation constraints and spatial clustering to iterative merging termination, requires no manual intervention and exhibits good robustness to point cloud data from different sources and of different qualities, facilitating large-scale engineering applications.
[0093] 4. Provides an efficient and reliable data preprocessing foundation: For massive, noisy raw point clouds, this application integrates a preprocessing combination of adaptive voxel downsampling and statistical outlier removal. This combination can significantly reduce the amount of data and effectively filter out noise while preserving key geometric features, providing computationally efficient and reliable input data for subsequent core algorithms. This is an important guarantee for the efficient and stable operation of the entire method.
[0094] 5. Output results directly serve engineering analysis and decision-making: This application not only outputs the spatial location of discontinuities, but also accurately calculates the geological attitude (dip / dip angle) of each structural surface and quantifies its representative area through an automated process. These parameters are key inputs for rock mass stability analysis (such as calculating slip direction and scale), enabling the technical results to be seamlessly integrated with subsequent engineering design and safety assessment, demonstrating high practical value.
[0095] In summary, this application systematically addresses the shortcomings of existing technologies in terms of low accuracy and poor integrity through two core innovations: "directional constraint" and "iterative merging," providing an automated, high-precision, and highly complete solution for the recognition of discontinuous surfaces in 3D point clouds.
[0096] The embodiments of the method for identifying discontinuous surfaces in 3D point clouds and the embodiments of the system for identifying discontinuous surfaces in 3D point clouds are the same or related in terms of technical concept. They can be referred to and learned from each other in terms of technical details and technical effects, which will not be repeated here.
[0097] Based on the same inventive concept, embodiments of this application also provide an electronic device. Figure 5 This is a structural block diagram of an electronic device provided in an embodiment of this application. Figure 5 As shown in the embodiments of this application, an electronic device includes: one or more processors 101, a memory 102, and one or more I / O interfaces 103. The memory 102 stores one or more programs, which, when executed by the one or more processors, enable the one or more processors to implement any of the three-dimensional point cloud discontinuity surface recognition methods described in the above embodiments; the one or more I / O interfaces 103 are connected between the processor and the memory, configured to enable information interaction between the processor and the memory.
[0098] The processor 101 is a device with data processing capabilities, including but not limited to a central processing unit (CPU); the memory 102 is a device with data storage capabilities, including but not limited to random access memory (RAM, more specifically SDRAM, DDR, etc.), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), and flash memory (FLASH); the I / O interface (read / write interface) 103 is connected between the processor 101 and the memory 102, and can realize information interaction between the processor 101 and the memory 102, including but not limited to a data bus (Bus).
[0099] In some embodiments, the processor 101, memory 102, and I / O interface 103 are interconnected via bus 104, and thus connected to other components of the computing device.
[0100] In some embodiments, the one or more processors 101 include a field-programmable gate array.
[0101] This application also provides a computer-readable medium. The computer-readable medium stores a computer program, which, when executed by a processor, implements the steps in any of the three-dimensional point cloud discontinuity surface recognition methods described in the above embodiments. The computer-readable storage medium can be volatile or non-volatile.
[0102] This application also provides a computer program product, including computer-readable code, or a non-volatile computer-readable storage medium carrying computer-readable code. When the computer-readable code is run in the processor of an electronic device, the processor in the electronic device executes the above-described three-dimensional point cloud discontinuity surface recognition method.
[0103] Those skilled in the art will understand that all or some of the steps, systems, and apparatuses disclosed above, and their functional modules / units, can be implemented as software, firmware, hardware, or suitable combinations thereof. In hardware implementations, the division between functional modules / units mentioned above does not necessarily correspond to the division of physical components; for example, a physical component may have multiple functions, or a function or step may be performed collaboratively by several physical components. Some or all physical components may be implemented as software executed by a processor, such as a central processing unit, digital signal processor, or microprocessor, or as hardware, or as an integrated circuit, such as an application-specific integrated circuit (ASIC). Such software can be distributed on a computer-readable storage medium, which may include computer storage media (or non-transitory media) and communication media (or transient media).
[0104] As is known to those skilled in the art, the term computer storage medium includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information, such as computer-readable program instructions, data structures, program modules, or other data. Computer storage media includes, but is not limited to, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), static random access memory (SRAM), flash memory or other memory technologies, portable compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical disc storage, magnetic cartridges, magnetic tape, disk storage or other magnetic storage devices, or any other medium that can be used to store desired information and is accessible to a computer. Furthermore, it is known to those skilled in the art that communication media typically contain computer-readable program instructions, data structures, program modules, or other data in modulated data signals such as carrier waves or other transmission mechanisms, and may include any information delivery medium.
[0105] The computer-readable program instructions described herein can be downloaded from computer-readable storage media to various computing / processing devices, or downloaded via a network, such as the Internet, local area network, wide area network, and / or wireless network, to an external computer or external storage device. The network may include copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards them to the computer-readable storage media in the respective computing / processing device.
[0106] The computer program instructions used to perform the operations of this application may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, status setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages such as Smalltalk, C++, etc., and conventional procedural programming languages such as the "C" language or similar programming languages. The computer-readable program instructions may be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving a remote computer, the remote computer may be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or may be connected to an external computer (e.g., via the Internet using an Internet service provider). In some embodiments, electronic circuits, such as programmable logic circuits, field-programmable gate arrays (FPGAs), or programmable logic arrays (PLAs), are personalized by utilizing the status information of the computer-readable program instructions. These electronic circuits can execute the computer-readable program instructions to implement various aspects of this application.
[0107] The computer program product described herein can be implemented specifically through hardware, software, or a combination thereof. In one alternative embodiment, the computer program product is specifically embodied in a computer storage medium; in another alternative embodiment, the computer program product is specifically embodied in a software product, such as a software development kit (SDK), etc.
[0108] Various aspects of this application are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions.
[0109] These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that, when executed by the processor of the computer or other programmable data processing apparatus, they create means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium that causes a computer, programmable data processing apparatus, and / or other device to operate in a particular manner; thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.
[0110] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to perform the functions / actions specified in one or more boxes of a flowchart and / or block diagram.
[0111] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of an instruction containing one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions marked in the blocks may occur in a different order than those marked in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.
[0112] Exemplary embodiments have been disclosed in this application, and while specific terminology has been used, it is used only and should be interpreted in a general illustrative sense and is not intended to be limiting. In some embodiments, it will be apparent to those skilled in the art that features, characteristics, and / or elements described in conjunction with particular embodiments may be used alone, or in combination with features, characteristics, and / or elements described in conjunction with other embodiments, unless otherwise expressly indicated. Therefore, those skilled in the art will understand that various changes in form and detail may be made without departing from the scope of this application as set forth by the appended claims.
Claims
1. A method for identifying discontinuous surfaces in a 3D point cloud, characterized in that, include: Acquire 3D point cloud data of the target area and perform preprocessing; The preprocessed point cloud data is grouped by macroscopic direction to identify several dominant direction groups in the point cloud in order to establish directional constraints. Based on the aforementioned directional constraints, the point cloud data is divided into multiple directional subsets, and spatial clustering is performed within each directional subset to obtain preliminary candidate discontinuous surface clusters. The initial candidate discontinuous surface clusters are iteratively merged based on the coplanarity criterion and the proximity criterion until they can no longer be merged, thus obtaining a complete discontinuous surface cluster. Geological parameters are calculated and characterized for the complete discontinuous surface cluster, and the results are output.
2. The method for identifying discontinuous surfaces in a three-dimensional point cloud according to claim 1, characterized in that, The preprocessed point cloud data is grouped macroscopically to identify several dominant direction groups in the point cloud, thereby establishing directional constraints, including: Calculate the local normal vector of each point in the point cloud; Valid normal vectors located in the neighborhood of an approximate plane are selected based on the coplanarity coefficient. The effective normal vectors are clustered by direction to obtain the several dominant direction groups.
3. The method for identifying discontinuous surfaces in a three-dimensional point cloud according to claim 2, characterized in that, The directional clustering uses the K-Means++ algorithm, and the optimal number of clusters is automatically determined by the silhouette coefficient method.
4. The method for identifying discontinuous surfaces in a three-dimensional point cloud according to claim 1, characterized in that, The spatial clustering uses the density-based DBSCAN clustering algorithm; The method of applying the directional constraints includes: assigning the normal vector of each point to the dominant direction group with the smallest angle with it, thereby dividing the original point cloud into multiple directional subsets, and then independently executing the DBSCAN clustering algorithm in each directional subset.
5. The method for identifying discontinuous surfaces in a three-dimensional point cloud according to claim 1, characterized in that, The coplanarity criterion includes: the angle between the global best-fit plane normal vectors of two candidate surface clusters to be merged is less than a preset angle threshold. The proximity criterion includes: the bidirectional asymmetric face cluster distance between two candidate face clusters to be merged is less than a preset distance threshold.
6. The method for identifying discontinuous surfaces in a three-dimensional point cloud according to claim 5, characterized in that, The specific process of the iterative merging process includes: Add all preliminary candidate discontinuous surface clusters to the candidate list; Perform an iterative loop, traversing the face cluster pairs in the candidate list in each iteration; If a pair of face clusters that simultaneously satisfy both the coplanarity criterion and the proximity criterion is found, they are merged into a new face cluster, and the candidate list is updated. Repeat the iterative process until no more face clusters can be merged in a complete traversal.
7. The method for identifying discontinuous surfaces in a three-dimensional point cloud according to claim 1, characterized in that, Preprocessing includes: An adaptive voxel lattice downsampling method is used to downsample the original point cloud, and a statistical outlier removal algorithm is used for noise reduction. The adaptive voxel lattice downsampling dynamically adjusts the voxel lattice side length according to the initial size of the input point cloud.
8. A system capable of implementing the three-dimensional point cloud discontinuity surface recognition method according to any one of claims 1-7, characterized in that, include: The data preprocessing module is used to acquire and preprocess the 3D point cloud data of the target area; The macro-directional grouping module is used to perform macro-directional grouping on the preprocessed point cloud data and identify several dominant directional groups to establish directional constraints. The orientation constraint spatial clustering module is used to divide the point cloud into multiple orientation subsets based on the orientation constraints, and to perform spatial clustering within each orientation subset to obtain preliminary candidate discontinuous surface clusters. The iterative merging optimization module is used to perform iterative merging processing on the preliminary candidate discontinuous surface clusters based on the coplanarity criterion and the proximity criterion to obtain complete discontinuous surface clusters; The result characterization output module is used to calculate and characterize the geological parameters of the complete discontinuous surface cluster and output the results.
9. An electronic device, characterized in that, include: One or more processors; Memory, used to store one or more programs; When the one or more programs are executed by the one or more processors, the one or more processors are enabled to implement the steps in the three-dimensional point cloud discontinuity surface recognition method as described in any one of claims 1 to 7.
10. A computer-readable medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it can implement the steps in the three-dimensional point cloud discontinuity surface recognition method as described in any one of claims 1 to 7.