A point cloud-based rock mass trace automatic extraction method and system
By combining multi-scale surface change indicators with machine learning, rock mass traces can be automatically extracted, solving the problems of low efficiency, insufficient accuracy and safety risks of traditional methods, and achieving efficient and accurate rock mass data acquisition.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-02
- Publication Date
- 2026-03-03
AI Technical Summary
Traditional rock mass trace measurement methods are inefficient, inaccurate, and pose safety risks, failing to meet the large-scale data acquisition needs of modern rock mass engineering. Furthermore, improper selection of threshold values for existing point cloud data leads to uncertainties in feature point extraction results.
A method combining multi-scale surface change indicators with machine learning is adopted. By acquiring regular volume and rock mass point cloud data, a trace feature point extraction model is trained using induced transfer learning to perform coarse and fine extraction. Combined with the L1 median skeleton extraction algorithm and trace merging processing based on distance and collinearity, the automatic extraction of rock mass traces is achieved.
It improves the accuracy and efficiency of rock mass trace extraction, avoids the uncertainty of threshold selection, adapts to the differences in point cloud density of different rock masses, and ensures the accuracy and security of data.
Smart Images

Figure CN119169304B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of geotechnical engineering / data processing technology, and in particular to a method and system for automatic extraction of rock mass traces based on point clouds. Background Technology
[0002] In recent years, the country has steadily advanced engineering construction, continuously increasing investment in fields such as water conservancy and hydropower, coal mining, and transportation, resulting in a sustained increase in the number of various rock mass engineering projects. Engineering safety is a core issue, and the safety factor of rock mass engineering is largely influenced by the mechanical properties of the rock mass. Rock mass traces are one of the important factors affecting the mechanical properties of rock mass, and the International Society for Rock Mechanics (ISRM, 1978) recommends using trace length as one of the parameters for describing rock mass structural surfaces. Therefore, rapid and accurate identification of trace information is of great significance for rock mass stability analysis. Traditional methods typically employ contact-based manual field measurement methods to collect rock mass data, such as measurement methods using tape measures and geological compasses, scanning line methods, or window sampling methods. These methods have several problems. First, they are inefficient, requiring significant time and manpower to complete the measurement tasks. Second, the measurement results are prone to large deviations, making it impossible to guarantee data accuracy. Furthermore, during field measurements, surveyors must work in complex and hazardous environments, greatly increasing operational risks. Finally, these methods have limited measurement range, failing to cover large areas of rock mass and thus unable to meet the needs of modern rock mass engineering for large-scale data collection. Therefore, the application of traditional methods in modern rock engineering has been greatly restricted, and there is an urgent need to find more efficient, safe and accurate alternatives.
[0003] With the development of LiDAR (Light Detection and Ranging) and photogrammetry technologies, high-precision 3D point clouds of rock masses have become the primary data source for extracting geometric parameters of rock masses. Currently, in rock mass point cloud trace extraction techniques, a common approach is to initially extract feature points (coarse extraction) by setting thresholds in the color space and / or geometric space of the point cloud, followed by fine extraction and connection of these feature points to obtain traces. However, the point cloud data density of different rock masses typically varies significantly. Using a uniform threshold for feature point extraction often results in insufficient accuracy, failing to meet practical application requirements. Some techniques address this by setting thresholds separately for different rock mass point clouds, which to some extent solves the accuracy problem caused by inappropriate threshold selection. However, on the one hand, since there is no unified method for threshold selection, even for the same point cloud data, the threshold selection results obtained using different methods still have considerable uncertainty, making it difficult to guarantee the effectiveness of feature point extraction. On the other hand, searching for suitable thresholds for different point cloud data undoubtedly increases the workload considerably.
[0004] Therefore, there is a need to provide an improved technical solution that addresses the shortcomings of the existing technology. Summary of the Invention
[0005] The purpose of this application is to provide an automatic method and system for extracting rock mass traces based on point clouds, so as to solve or alleviate the problems existing in the above-mentioned prior art.
[0006] To achieve the above objectives, this application provides the following technical solution:
[0007] Firstly, this application provides an automatic method for extracting rock mass traces based on point clouds, including:
[0008] Acquire regular volume point cloud data and rock mass point cloud data, and extract a set of sample points from the regular volume point cloud data, wherein each sample point in the set of sample points contains label information;
[0009] Calculate the multi-scale surface change index of each sample point in the sample point set to obtain the first feature set of the sample point set; calculate the multi-scale surface change index of all points in the rock mass point cloud data to obtain the second feature set of the rock mass point cloud data; wherein, the total number of features in the first feature set and the total number of features in the second feature set are both equal to the scale n, the i-th feature in the first feature set represents the surface change index value of each sample point in the sample point set at the i-th scale; the i-th feature in the second feature set represents the surface change index value of all points in the rock mass point cloud data at the i-th scale.
[0010] Using the first feature set as input features, and combining the label information contained in each sample point in the sample point set, a training dataset is constructed; and using the training dataset, based on the idea of induced transfer learning, an artificial neural network (ANN) is used to train a general trace feature point extraction model, and then the second feature set is input into the trained trace feature point extraction model to coarsely extract the trace feature points of the rock mass point cloud, thereby obtaining a coarsely extracted feature point set.
[0011] Based on the coarsely extracted feature point set, the rock mass trace feature points are extracted in detail, the feature points are connected, and the traces are merged in sequence to obtain the final rock mass trace.
[0012] In conjunction with the first aspect, in some possible implementations, the regular volume point cloud data or the rock mass point cloud data is used as the input point cloud P, and any sample point in the sample point set or any point in the rock mass point cloud data is used as the current point p; then the calculation steps for the multi-scale surface change index of the current point p are as follows:
[0013] Among all points in the input point cloud P, search for the k nearest points to the current point p, and form a nearest neighbor set N. k (p);
[0014] Calculate the nearest neighbor set N k (p) Any point p i Find the Euclidean distance to the current point p, and determine the set of nearest neighbors N. k The maximum distance d from all points in (p) to the current point p. k (p);
[0015] With d k (p) is the lower limit of the search radius, and the upper limit of the search radius is the maximum acquisition range of the input point cloud P. Multiple breakpoints are determined within the upper and lower limits of the search radius to form a multi-scale search radius set, wherein the number of radii contained in the multi-scale search radius set is equal to the scale n.
[0016] Using the current point p as the center, and taking the value of each radius in the multi-scale search radius set as the search radius, we search to obtain the set of nearest neighbor points of the current point p at each scale.
[0017] Based on the nearest neighbor set of the current point p at each scale, the surface change index values of the current point p at each scale are calculated.
[0018] In conjunction with the first aspect, in some possible implementations, based on the nearest neighbor set of the current point p at each scale, the surface change index values of the current point p at each scale are calculated, specifically as follows:
[0019] For the nearest neighbor set of the current point p at each scale, construct the nearest neighbor matrix of the current point p at each scale. The number of rows in the nearest neighbor matrix of the current point p at each scale is equal to the number of points contained in the nearest neighbor set of the current point p at that scale. The nearest neighbor matrix includes three columns, namely x coordinate, y coordinate and z coordinate.
[0020] Based on the nearest neighbor matrix of the current point p at each scale, the covariance matrix C of the current point p at each scale is calculated.
[0021] Principal component analysis is used to perform eigenvalue decomposition on the covariance matrix C of the current point p at each scale, and the generated eigenvalues are arranged in descending order to determine the maximum eigenvalue and the top 3 eigenvalues of the current point p at each scale.
[0022] The surface change index of the current point p at each scale is obtained by calculating the ratio of the maximum eigenvalue of the current point p to the sum of the top 3 eigenvalues at each scale.
[0023] In some possible implementations, the maximum acquisition range is determined by the following formula:
[0024]
[0025] In the formula, r max Indicates the maximum acquisition range, d bb |N| represents the diagonal length of the bounding box of the input point cloud P, and |N| represents the number of points in the input point cloud P.
[0026] In some possible implementations, d k (p) represents the lower limit of the search radius, and the upper limit of the search radius is the maximum acquisition range of the input point cloud P. Multiple breakpoints are determined within the upper and lower limits of the search radius to form a multi-scale search radius set, including:
[0027] With d k (p) is the lower limit of the search radius, and the upper limit of the search radius is the maximum acquisition range of the input point cloud P. A fixed step size is used to set n equally spaced breakpoints within the upper and lower limits of the search radius, which form the multi-scale search radius set.
[0028] or,
[0029] With d k (p) represents the lower limit of the search radius. An adaptive iterative method is used to obtain n breakpoints within the upper and lower limits of the search radius, which form the multi-scale search radius set.
[0030] Adaptive iteration includes:
[0031] Let d k (p) is the starting radius r0 of the iteration, and the set of nearest neighbors N from the current point p. k The mean of the Euclidean distances between all points in (p) is taken as the step size Δr0 of the first iteration. Then, the radius value r1 generated in the first iteration is:
[0032] r1 = r0 + Δr0,
[0033] Calculate the adaptive step size for the k1th iteration and the breakpoint value for each iteration:
[0034] r k1+1 =r k1 +Δr k1 ,
[0035] Δr k1 =Δr0·tanh(I(R*r) k1 ))),
[0036]
[0037] I(R(rk1 ))=-log P(R(r k1 )),
[0038] In the formula, k1 is the current iteration number, and r k1+1 r k1 These are the breakpoint values at the (k1+1)th and (k1)th iterations, respectively, Δr k1 R(r) is the step size of the k1th iteration. k1 ) is the normalization function, I(R(r) k1 )) represents the normalized r k1 Information content, P(R(r) k1 R(r) k1 The probability distribution of ).
[0039] Among some possible implementations, fine extraction of rock mass trace feature points includes:
[0040] The feature points in the coarsely extracted feature point set are separated from the rock mass point cloud data to obtain the trace feature point cloud set.
[0041] Random sampling techniques are used to randomly sample the feature point cloud set of the trace, resulting in a set of sampling points.
[0042] Based on the trace feature point cloud set and the sampling point set, an optimization objective equation is constructed using the L1 median skeleton extraction algorithm. The expression of the optimization objective equation is as follows:
[0043]
[0044] In the formula, x i p is the i-th point in the set of sampling points. j Let I be the j-th point in the trace feature point cloud set, and let J be the number of points in the sampling point set and the trace feature point cloud set, respectively. Let θ be the weight function and γ be the weight function. i It is the balance coefficient, x i′ It is the i′-th point in the set of sampling points, and i′≠i, σ i It is point x i The degree of linearity of its location;
[0045] The optimization objective equation is solved iteratively to obtain the refined rock mass trace feature points.
[0046] In some possible implementations, connecting the feature points of the rock mass trace includes the following steps:
[0047] The extracted rock mass trace feature points are then removed from the outer points.
[0048] Randomly select a sub-point p0 as the center point from the refined rock mass trace feature points, and calculate the nearest neighbor set of point p0;
[0049] For each nearest neighbor in the nearest neighbor set of point p0, calculate its weight;
[0050] Based on the calculated weight results, the point with the largest weight is selected as the new seed point, and the new seed point is connected to the center point;
[0051] Using the new seed point as the new center point, find the set of nearest neighbors of the center point and calculate the weight of each nearest neighbor point. Repeat the above steps until the trace is connected and the connected trace is obtained.
[0052] In some possible implementations, the rock mass trace merging process specifically employs a trace merging method driven by distance and collinearity, including the following steps:
[0053] The connected traces are smoothed using B-spline interpolation to obtain smoothed traces.
[0054] Collect all endpoints of the smoothed trace and construct an endpoint set;
[0055] Choose any point from the set of endpoints as the current center point p i Perform the following steps:
[0056] Search for the nearest neighbors of the center point to obtain the set of nearest neighbors of the center point.
[0057] Define center point p i The vector to the j-th nearest neighbor in its nearest neighbor set is Center point p i The vector pointing to the adjacent points on its trace is Define vector and The angle between them is θ j According to the center point p i The Euclidean distance and the included angle between the j-th nearest neighbor and the j-th nearest neighbor are θ. j Calculate the distance from the endpoints of adjacent traces to the current center point p. i The Euclidean distance d of the trajectory tt ;
[0058] If the included angle is θ j Less than the preset included angle threshold, and the distance d tt If the distance is less than the preset distance threshold, the j-th nearest neighbor is assigned to the candidate point set, and the weight of the j-th nearest neighbor is calculated.
[0059] The point with the highest weight in the candidate point set is selected as the connection point, and it is connected to the center point p. i connect;
[0060] Repeat the above steps until all endpoints in the endpoint set have been calculated.
[0061] In some possible implementations, the weight of the j-th nearest neighbor is expressed as follows:
[0062]
[0063] In the formula, ω j λ0, λ1, and λ2 are the weights of the j-th nearest neighbor, and λ0, λ1, and λ2 are the values of the center point p. i eigenvalues, d pp It is the center point p i The Euclidean distance d to its j-th nearest neighbor tt It is the distance from the endpoint of the adjacent trace to the current center point p. i The Euclidean distance of the track.
[0064] Secondly, this embodiment provides an automatic rock mass trace extraction system based on point clouds, including:
[0065] The data acquisition module is configured to acquire regular volume point cloud data and rock mass point cloud data, and extract a set of sample points from the regular volume point cloud data, wherein each sample point in the set of sample points contains label information;
[0066] The calculation module is configured to calculate the multi-scale surface change index of each sample point in the sample point set to obtain a first feature set of the sample point set; and to calculate the multi-scale surface change index of all points in the rock mass point cloud data to obtain a second feature set of the rock mass point cloud data. The total number of features in both the first and second feature sets is equal to the scale n. The i-th feature in the first feature set represents the surface change index value of each sample point in the sample point set at the i-th scale; the i-th feature in the second feature set represents the surface change index value of all points in the rock mass point cloud data at the i-th scale.
[0067] The coarse extraction module is configured to use the first feature set as input features, combine the label information contained in each sample point in the sample point set to construct a training dataset; and use the training dataset, combined with the induced transfer learning idea, to train a general trace feature point extraction model using artificial neural network technology (ANN), and then input the second feature set into the trained trace feature point extraction model to coarsely extract the trace feature points of the rock mass point cloud to obtain a coarsely extracted feature point set.
[0068] The post-processing module is configured to perform fine extraction of rock mass trace feature points, connection of feature points, and merging of traces sequentially based on the coarsely extracted feature point set to obtain the final rock mass trace.
[0069] The technical solution of this application embodiment has the following beneficial effects:
[0070] In this embodiment, regular volume point cloud data and rock mass point cloud data are acquired, and a set of sample points is extracted from the regular volume point cloud data. Multi-scale surface change indices are calculated for each sample point in the sample point set and all points in the rock mass point cloud data, resulting in a first feature set and a second feature set for the sample point set. Then, using the first feature set as input features and combining it with the label information contained in each sample point in the sample point set, a training dataset is constructed. Using this training dataset, based on the induced transfer learning concept, an artificial neural network (ANN) is used to train a general trace feature point extraction model. The second feature set is then input into the trained trace feature point extraction model to coarsely extract the trace feature points from the rock mass point cloud, resulting in a coarsely extracted feature point set. Based on this coarsely extracted feature point set, fine extraction of rock mass trace feature points, feature point connection, and trace merging are performed sequentially to obtain the final rock mass trace. This method addresses the difficulty in selecting thresholds due to varying data densities in different rock masses. It fully considers the density differences in point clouds of different rock masses and proposes a trace feature point extraction (coarse extraction) method that combines multi-scale surface variation index (MsSVI) with machine learning. This method eliminates the need to set thresholds in the point cloud to extract feature points, thus improving the accuracy and efficiency of trace extraction. Attached Figure Description
[0071] Figure 1 This is a flowchart illustrating an automatic rock mass trace extraction method based on point cloud, according to some embodiments of this application.
[0072] Figure 2 This is a schematic diagram of the structure of an automatic rock mass trace extraction system based on point cloud provided according to some embodiments of this application. Detailed Implementation
[0073] The terms "first," "second," "third," and "fourth," etc., used in the specification, claims, and accompanying drawings of this application are used to distinguish different objects, not to describe a specific order. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or apparatus that includes a series of steps or units is not limited to the listed steps or units, but may optionally include steps or units not listed, or may optionally include other steps or units inherent to these processes, methods, products, or apparatuses.
[0074] In this document, the term "embodiment" means that a particular feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of this application. The appearance of this phrase in various places throughout the specification does not necessarily refer to the same embodiment, nor is it a separate or alternative embodiment mutually exclusive with other embodiments. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.
[0075] "Multiple" refers to two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone. The character " / " generally indicates that the preceding and following related objects have an "or" relationship.
[0076] The embodiments of this application will now be described with reference to the accompanying drawings.
[0077] Method Implementation Examples
[0078] LiDAR technology acquires high-precision 3D terrain data by emitting laser beams and measuring reflection time. It not only provides extremely high spatial resolution but also penetrates vegetation cover to obtain information about the rock mass beneath the surface. Photogrammetry, on the other hand, generates high-precision digital models of the rock mass through 3D reconstruction of multi-view photographs. These technologies far surpass traditional contact measurement methods in terms of data acquisition accuracy. Furthermore, LiDAR and photogrammetry offer significant advantages in safety. As non-contact measurement technologies, operators do not need to conduct on-site measurements in hazardous rock environments, greatly reducing personal risk. These technologies are also not limited by complex terrain or harsh weather conditions, allowing measurements to be taken in a wider range of environments, providing continuous and comprehensive rock mass data. In summary, the application of LiDAR and photogrammetry technologies not only improves the efficiency and accuracy of rock mass data acquisition but also significantly enhances safety and applicability, becoming indispensable tools in modern rock engineering. With continuous technological advancements and wider adoption, these advanced measurement methods will play an increasingly important role in the field of rock engineering.
[0079] Therefore, to address the limitations of traditional trace measurement methods, this embodiment proposes an automatic rock mass trace extraction method based on point cloud acquisition using LiDAR technology. This method can be executed by electronic devices such as personal computers, servers, and tablets. Figure 1 As shown, the method includes:
[0080] Step S101: Obtain regular volume point cloud data and rock mass point cloud data, and extract a set of sample points from the regular volume point cloud data. Each sample point in the set of sample points contains label information.
[0081] Point cloud data is a data structure used to represent objects or environments in three-dimensional space. A point cloud consists of many discrete points, each with three-dimensional coordinates (x, y, z). The point cloud is composed of points within the surface or volume of these geometric objects. In some specific applications, point cloud data can also include other attributes such as color (RGB values), intensity, and normal vectors.
[0082] Regular volume point clouds refer to the collection of points obtained by sampling regular geometric shapes in three-dimensional space. Regular volumes typically refer to geometric shapes with regular forms, such as cubes, spheres, and cylinders. Rock mass point clouds, on the other hand, are point cloud data of actual rock masses obtained through methods such as laser scanning and photogrammetry.
[0083] In this embodiment, extracting traces from point clouds may include the following steps: coarse feature point extraction, fine feature point extraction, feature-based connection, and trace merging. The coarse feature point extraction is implemented based on the concept of Inductive Transfer Learning. Specifically, trace extraction includes two aspects: extracting traces from regular volume point clouds and extracting traces from actual rock mass point cloud data. The former is called the source task, and the latter is called the target task. The purpose of this embodiment is to utilize knowledge learned from regular volume point cloud data (source task) to improve the performance of extracting traces from actual rock mass point cloud data (target task), and to improve the model's generalization ability by sharing knowledge between related tasks.
[0084] In order to learn the knowledge in the regular volume point cloud, this embodiment first extracts a set of sample points from the regular volume point cloud data. Each sample point in the set of sample points contains label information. The label refers to the category label or identifier to which the sample point belongs, such as the sample point being a planar point or a sharp point.
[0085] In one example, planar points and edge points (sharp points) can be collected from a regular volume point cloud by manual extraction. There are 7,000 planar points and 3,148 sharp points, for a total of 10,148 sample points (feature points).
[0086] Step S102: Calculate the multi-scale surface change index of each sample point in the sample point set to obtain the first feature set of the sample point set; calculate the multi-scale surface change index of all points in the rock mass point cloud data to obtain the second feature set of the rock mass point cloud data.
[0087] The goal of step S102 is to calculate the feature information of the rock mass point cloud. Among these, the surface variation index refers to parameters used to assess changes in the surface morphology of the rock mass, describing its geometric features, deformation, etc. The multi-scale surface variation index (MsSVI) refers to calculating the geometric features of the rock mass surface at various points across multiple scales, forming a set of surface variation indices for that point at different scales, i.e., a feature set.
[0088] Preferably, in one embodiment, the surface change index can be calculated using principal component analysis. Specifically, principal component analysis quantifies the main direction of surface change at various points in the rock mass, and calculates the quotient of the first eigenvalue and the sum of all eigenvalues to quantify the contribution of deformation in this main direction to the overall deformation. The specific calculation method will be described in detail later.
[0089] It should be noted that, in addition to the calculation method of principal component analysis mentioned above, surface change indices can also be calculated using traditional surface change indices, such as the following parameters: amplitude parameters (e.g., the root mean square value M and root mean square R of the height of rock mass joint bosses), slope parameters (e.g., the first derivative of the height of rock mass joint bosses (slope Z2) and the second derivative of the height of rock mass joint bosses (curvature Z3)), mixed parameters (e.g., structure function S, autocorrelation function AC, and spectral density function), or other parameters describing the morphological characteristics of rock mass surfaces. This embodiment does not limit these. In other words, the above provides several possible forms of surface change indices, but in practical applications, they are not limited to the methods mentioned above. In short, parameters obtained based on rock mass point cloud computing for evaluating changes in rock mass surface morphology are all within the scope of protection of this application.
[0090] To calculate indices at different scales, it is necessary to first define the scale range of the analysis (scale size n), that is, the specific number of scales at which surface change indices will be calculated. In this embodiment, the scale size n can be determined based on the research objectives and data availability, or it can be manually specified based on expert domain knowledge. This embodiment does not limit the specific method for determining the scale size n.
[0091] For example, the scale size n can be 5, 6, or 7.
[0092] For ease of description, the surface change indices of the sample points of the regular volume point cloud at different scales are referred to as the first feature set, and the surface change indices of the rock mass point cloud data at different scales are referred to as the second feature set. The total number of features in both the first and second feature sets is equal to the scale size n. The i-th feature in the first feature set represents the surface change index value of each sample point in the sample point set at the i-th scale; the i-th feature in the second feature set represents the surface change index value of all points in the rock mass point cloud data at the i-th scale. This forms a matrix with different data points as rows and surface change indices at different scales as columns (features).
[0093] Step S103: Using the first feature set as input features, and combining the label information contained in each sample point in the sample point set, construct a training dataset; and using the training dataset, based on the idea of induced transfer learning, use artificial neural network technology (ANN) to train a general trace feature point extraction model, and then input the second feature set into the trained trace feature point extraction model to coarsely extract the trace feature points of the rock mass point cloud, and obtain a coarsely extracted feature point set.
[0094] It should be noted that, in order to accelerate the convergence of the model during the training of the general trace feature point extraction model, M feature points can be collected from the rock mass point cloud data to create a test dataset. For example, 3300 planar feature points and 2668 sharp feature points can be collected from the rock mass point cloud, for a total of 5968 feature points, and these points can be used to create a test dataset.
[0095] Step S104: Based on the coarsely extracted feature point set, the rock mass trace feature points are extracted in detail, the feature points are connected, and the traces are merged in sequence to obtain the final rock mass trace.
[0096] Feature point refinement, also known as local feature point optimization, can improve the accuracy of the trace. Specifically, after obtaining the coarsely extracted feature point set, local optimization of the rock mass trace can be achieved through clustering or region growing algorithms. Alternatively, local optimization can be achieved based on machine learning techniques according to the curvature changes of the 3D point cloud. The specific implementation of the above-mentioned refinement can refer to existing technologies, and will not be elaborated on in this embodiment for the sake of simplicity.
[0097] The extracted feature points of the traces are connected and the traces are merged to achieve trace integration and obtain the final rock mass traces.
[0098] In summary, the technical solution provided in this embodiment, which utilizes the transfer learning concept and the model trained by ANN technology, can avoid manual threshold selection during trace feature extraction and improve the accuracy of feature extraction.
[0099] In some embodiments, regular volume point cloud data or rock mass point cloud data are used as input point cloud P, and any sample point in the sample point set or any point in the rock mass point cloud data is used as the current point p; then, after reading the input point cloud P, the feature information calculation steps for the current point p are as follows:
[0100] Step S121: Among all points in the input point cloud P, search for the k nearest points to the current point p, and form a nearest neighbor set N. k (p).
[0101] In other words, for any point p in the input point cloud P, we define a small number of nearest neighbors k, and the set of k nearest neighbors of point p is N. k (p). For ease of description, we can use the set of nearest neighbors N. k (p) is called the first nearest neighbor set.
[0102] Furthermore, in order to improve the nearest neighbor set N k The quality of (p) also includes the step of outlier removal based on density indices. Specifically, for p i ∈N k (p), define p i The Euclidean distance between p and d(p) is d(p) i The density index D(p) at point p is calculated as follows:
[0103]
[0104] In the formula, h is the weighting function used for the spatial weight distribution; |N k (p)| represents the number of nearest neighbors.
[0105] A density threshold is pre-set. If the density index D(p) > the density threshold, point p is determined to be an outlier; otherwise, it is considered a normal point. By calculating the density index of each point in the point cloud and removing points with excessive density (usually noise or outliers), the quality of point cloud data can be effectively improved. Furthermore, this local density-based filtering method can adaptively handle data density variations in different regions, thereby more accurately identifying and removing noise.
[0106] Step S122: Calculate the nearest neighbor set N k (p) Any point p i Find the Euclidean distance to the current point p, and determine the set of nearest neighbors N. k The maximum distance d from all points in (p) to the current point p. k (p).
[0107] It should be noted that the set of nearest neighbors N of the outliers after removal is... k The number of points in (p) may be less than or equal to the set of nearest neighbors N before removal.k The number of points in (p). For N k For all non-outlier points in (p), calculate the maximum distance d from each point to the current point p. k (p) (also known as the k-th distance):
[0108] d k (p)=max{d(p i ,p)|p i ∈N k (p)} (2)
[0109] Step S123: with d k (p) is the lower limit of the search radius, and the maximum acquisition range of the input point cloud P is the upper limit of the search radius. Multiple breakpoints are determined within the upper and lower limits of the search radius to form a multi-scale search radius set. The number of radii contained in the multi-scale search radius set is equal to the scale n.
[0110] In some embodiments, the maximum acquisition range is determined by the following formula:
[0111]
[0112] In the formula, r max Indicates the maximum acquisition range, d bb |N| represents the diagonal length of the bounding box of the input point cloud P, and |N| represents the number of points in the input point cloud P.
[0113] Point cloud bounding box is an algorithm for finding the optimal bounding space of a discrete point set. It approximates complex geometric objects by using a slightly larger and simpler geometric object (such as a cube or a directed bounding box).
[0114] In formula (3), the diagonal length of the bounding box serves as a measure of the overall extent of the point cloud, reflecting its overall size in three-dimensional space. Using this as a basis to determine the maximum acquisition range ensures that the acquisition range is reasonable globally, avoiding potential biases caused by considering only local information. Simultaneously, the cube root of the number of points reflects the density of the point cloud to some extent. By multiplying by 3 and dividing by the cube root of the number of points in the point cloud, changes in point cloud density are considered while maintaining globality. Adjusting the maximum acquisition range in this way allows for a suitable acquisition range to be obtained in point cloud regions with different densities, achieving a comprehensive consideration of both adaptability and globality.
[0115] Step S124: Using the current point p as the center, search for the nearest neighbor set of the current point p at each scale by taking the radius of each radius in the multi-scale search radius set as the search radius.
[0116] Step S125: Based on the nearest neighbor set of the current point p at each scale, calculate the surface change index value of the current point p at each scale.
[0117] The set of nearest neighbors of the current point p at each scale can be denoted as: In the formula, Let p represent the set of nearest neighbors of point p at the n-th scale. For ease of description, we can... This is called the second nearest neighbor set. The second nearest neighbor sets at all scales constitute the NNN representation. The surface change index values of the current point p at various scales, such as Z2, Z3, AC, etc., can be calculated using point cloud algorithms. For specific calculation methods, please refer to existing technologies. For the sake of brevity, this embodiment will not elaborate further.
[0118] As can be seen from the above steps, by gradually expanding the search radius to obtain the nearest neighbor point set at different scales, the trace feature point extraction model can analyze the local geometric characteristics of each point at multiple scales. By analyzing at different scales, it can reveal features at different levels, which is beneficial for capturing the details of complex shapes and structures and improving the accuracy of trace feature point extraction.
[0119] Based on the above embodiments, in some optional embodiments, in addition to traditional indicators such as Z2, Z3, and AC, the values of surface change indicators at various scales can also be quantified by principal component analysis to determine the main direction of surface change at each point in the rock mass, and the quotient of the first eigenvalue and the sum of all eigenvalues can be calculated to quantify the contribution of deformation in this main direction to the overall deformation.
[0120] The following is a detailed description of this implementation method, which can be carried out according to the following steps:
[0121] Step S1251: For the nearest neighbor set (second nearest neighbor set) of the current point p at each scale, construct the nearest neighbor matrix of the current point p at each scale. The number of rows in the nearest neighbor matrix of the current point p at each scale is equal to the number of points contained in the nearest neighbor set of the current point p at that scale. The nearest neighbor matrix includes three columns, namely x coordinate, y coordinate and z coordinate.
[0122] In other words, in the nearest neighbor matrix at each scale, the number of nearest neighbors is equal to the number of rows in the matrix (assuming k points). The columns are the three-dimensional coordinates (x, y, z) of each point, with each coordinate forming a column, for a total of three columns. Furthermore, different scales correspond to different nearest neighbor matrices.
[0123] Step S1252: Based on the nearest neighbor matrix of the current point p at each scale, calculate the covariance matrix C of the current point p at each scale.
[0124] Wherein, the covariance matrix C is a 3×3 square matrix, denoted as: C 3×3 The calculation formula is as follows:
[0125]
[0126] In the formula, It is the center point of the nearest neighbor set (the second nearest neighbor set), i.e., the mean of the three-dimensional coordinates. p i ={p1,p2,…p k}, where k is the number of nearest neighbor points.
[0127] Step S1253: Perform eigenvalue decomposition on the covariance matrix C of the current point p at each scale using principal component analysis (PCA), and arrange the generated eigenvalues in descending order to obtain the eigenvalues λ0≤λ1≤λ2 of matrix C. This determines the maximum eigenvalue and the top 3 eigenvalues of the current point p at each scale.
[0128] Step S1254: Calculate the ratio of the maximum eigenvalue of the current point p at each scale to the sum of the top 3 eigenvalues, and obtain the surface change index of the current point p at each scale.
[0129] The expression for the surface variation index (SVI) is as follows:
[0130]
[0131] In the formula, σ(p) is the surface change index, and λ0, λ1, and λ2 are the eigenvalues of matrix C from largest to smallest.
[0132] Since PCA can identify the main direction of change in the data, i.e., the direction with the greatest data variation, in rock mass point clouds, the direction with the greatest data variation usually corresponds to the main direction of surface deformation. By calculating the quotient of the first-ranked eigenvalue λ0 and the sum of all eigenvalues (λ0, λ1, λ2), the contribution of deformation in the main direction of the rock mass to the overall deformation can be quantified. The larger σ(p) is, the more concentrated the surface changes of the rock mass are in this direction, which helps to identify the main deformation pattern of the rock mass. In other words, using the quotient of the first-ranked eigenvalue λ0 and the sum of all eigenvalues (λ0, λ1, λ2) as the surface change index can effectively simplify the large number of points and complex deformation information in rock mass point cloud data, further simplifying the analysis process. Only the most important deformation direction needs to be focused on, while ignoring those secondary directions with smaller contributions, thus improving the accuracy and reliability of the analysis.
[0133] Repeat steps S1251 to S1254 until all points in the input point cloud P have been calculated.
[0134] In some embodiments, d k (p) represents the lower limit of the search radius, and the maximum acquisition range of the input point cloud P represents the upper limit of the search radius. Multiple breakpoints are determined within the upper and lower limits of the search radius to form a multi-scale search radius set. This can be achieved in the following two ways:
[0135] Method 1: Using d k (p) is the lower limit of the search radius, and the maximum acquisition range of the input point cloud P is the upper limit of the search radius. Using a fixed step size, n equally spaced breakpoints are set within the upper and lower limits of the search radius to form a multi-scale search radius set.
[0136] By gradually increasing the search radius using a fixed step size, each increase is controllable. This allows for sensitivity analysis, observing how minute changes in the search radius affect the search results, which is beneficial for accurately controlling the search range. Furthermore, the fixed step size approach is relatively simple and intuitive, easy to implement in algorithms or software, reducing the technical difficulty and cost, making the method more feasible in practical applications. However, due to differences in the density of point clouds in different rock masses, the fixed step size search method may fail to find nearest neighbors at certain step sizes, leading to data loss. Therefore, in some exemplary embodiments using the fixed step size approach, after step S124, the method further includes: for the nearest neighbor set of the current point p at each scale, determining whether the number of points in the nearest neighbor set at each scale is greater than a preset threshold; if yes, then proceeding to step S125; otherwise, step S125 is not performed, and instead, the surface change index value at the corresponding scale is assigned a preset fixed value. This can compensate for the problems caused by missing data. At the same time, by gradually increasing the search radius and calculating MsSVI information using a fixed step size, and combining it with machine learning for coarse extraction of extreme feature points, the problem of difficulty in threshold selection caused by different data densities in different rock masses can be solved to some extent.
[0137] Method 2: Using d k (p) represents the lower limit of the search radius. An adaptive iterative method is used to obtain n breakpoints within the upper and lower limits of the search radius, which form a multi-scale search radius set.
[0138] The adaptive iterative approach is a method proposed to address the potential for missing search radius data when using a fixed step size. The specific steps of adaptive iteration include:
[0139] Let d k (p) represents the initial radius r0 of the iteration, and the set of nearest neighbors N from the current point p. kThe mean Euclidean distance d of all points in (p)(the set of first nearest neighbors) mean (p) If the step size Δr0 is used for the first iteration, then the radius value r1 generated in the first iteration is:
[0140] r1=r0+Δr0 (7)
[0141] Wherein, the average distance (mean of Euclidean distance) from point p is d. mean The formula for calculating (p) is as follows:
[0142]
[0143] The meanings of each parameter in the formula are the same as those in formula (1), and will not be repeated here.
[0144] Then, the adaptive step size for the k1th iteration and the breakpoint value (i.e., the search radius value) for each iteration are calculated:
[0145] r k1+1 =r k1 +Δr k1 ,
[0146] Δr k1 =Δr0·tanh(I(R(r) k1 ))),
[0147]
[0148] I(R(r k1 ))=-log P(R(r k1 (8)
[0149] In the formula, k1 is the current iteration number, where k1 is a positive integer greater than 1, and r k1+1 r k1 These are the breakpoint values at the (k1+1)th and (k1)th iterations, respectively, i.e., the search radius values at the (k1+1)th and (k1)th scales under multiple scales, Δr k1 R(r) is the step size of the k1th iteration. k1 ) is the normalization function, I(R(r) k1 )) represents the normalized r k1 Information content, P(R(r) k1 R(r) k1 The probability distribution of ), which is the probability of the point cloud under the current search radius.
[0150] In formula (7), the first search radius is calculated based on the initial radius and the step size of the first iteration. For subsequent iterations, the current search radius r is calculated first. k1The information quantity I is calculated and mapped to the range [-1, 1] using the hyperbolic tangent function tanh. This information quantity is then multiplied by the step size of the initial iteration to obtain the adaptive step size Δr. k1 This leads to the next search radius r. k1+1 This formula maps the information content to the range [-1, 1] using the hyperbolic tangent function tanh, and multiplies it by the step size of the initial iteration. This allows the subsequent step size to increase according to a curve, meaning the step size adaptively adjusts based on changes in information content. Thus, when the information content is large, the step size increases accordingly, accelerating the search; when the information content is small, the step size decreases accordingly, improving search accuracy. This adaptive adjustment helps find a balance between search speed and accuracy. Simultaneously, this adaptive step size strategy helps avoid getting trapped in local optima during multi-scale searches. When approaching a local optimum, the information content may decrease, leading to a smaller step size, allowing the algorithm to explore the region more thoroughly and potentially discover better solutions.
[0151] In summary, by using an adaptive step size to gradually increase the search radius and calculating the adaptive radius MsSVI information, combined with machine learning for coarse extraction of extreme feature points, the problem of threshold selection caused by different data densities in different rock masses is solved. At the same time, the adaptive step size method can automatically adapt to features at different scales, achieving effective feature representation and recognition, making the processing of point cloud data of different rock masses more flexible and effective.
[0152] In some embodiments, the fine extraction of rock mass trace feature points includes:
[0153] Step S141: Extract the feature points from the coarsely extracted feature point set from the rock mass point cloud data to obtain the trace feature point cloud set. Where J represents the set of feature point clouds of the traces P trace The total number of midpoints, R is the set of real numbers, p j P represents the set of feature points of the trace. trace The j-th feature point in the matrix.
[0154] Step S142: Use random sampling techniques to process the trace feature point cloud set P trace Perform random sampling to obtain a set of sampling points. Where I represents the total number of points in the sampling point set X, x i This represents the i-th sampling point in the set of sampling points.
[0155] Step S143: Based on the trace feature point cloud set and the sampling point set, the L1 median skeleton extraction algorithm is used to construct the optimization objective equation. The expression of the optimization objective equation is as follows:
[0156]
[0157] In the formula, x i Let p be the i-th point in the set of sampling points X. j Let I be the j-th point in the trace feature point cloud set, and let J be the number of points in the sampling point set and the trace feature point cloud set, respectively. Let θ be the weight function and γ be the weight function. i It is the balance coefficient, x i′ It is the i′-th point in the set of sampling points, and i′≠i, σ i It is point x i The linearity of the position, ||.|| represents the L1 norm of the matrix, which is the sum of the absolute values of all elements of the matrix, and i′∈I\{i} means that the range of i′ is the set of all values of I after removing i.
[0158] The weighting function θ is expressed as follows:
[0159]
[0160] In the formula, r is the input variable, and h1 is the parameter representing the range.
[0161] σ i The expression is as follows:
[0162]
[0163] In the formula, σ i It is point x i The linearity of the location, It is point p i The eigenvalues arranged from largest to smallest.
[0164] In the optimization objective equation expressed by formula (9), the first term aims to move the points in the sampling point set X to the trace feature point cloud set P according to the distance weight (i.e., the weight function θ). trace The second term is a penalty term, the purpose of which is to control the points in the sampling point set X to approximate the feature point cloud set P of the trace as closely as possible. trace In regions with high linearity, a certain distance is maintained between points in the sampling point set X. This allows for the continuous sampling of point positions in the point set X, distributing them across the trace feature point cloud set P. trace On the skeletal structure.
[0165] Step S144: Iteratively solve the optimization objective equation to obtain the refined rock mass trace feature points.
[0166] Specifically, the Alternating Directional Multiplier Method (ADMM) or other optimization algorithms can be used to solve the problem. During the solution process, the positions of points in the sampling point set X are iteratively updated to satisfy the constraints and minimize the objective function, resulting in the finely extracted rock mass trace feature points. The update formula for the positions of points in the sampling point set X is as follows:
[0167]
[0168] In the formula, k represents the number of iterations. μ、 All are constant parameters. The remaining parameters are the same as those in formula (9), and will not be repeated here.
[0169] Based on the iterative solution of formula (12), the refined rock mass trace feature points are obtained, denoted as P. precise .
[0170] In some embodiments, a weighted line growth algorithm is used to automatically connect rock mass traces, including the following steps:
[0171] Step S151: Extract the feature points P of the rock mass traces. precise Perform outlier removal.
[0172] The steps for removing outliers are the same as those for removing outliers, and will not be repeated here.
[0173] Step S152: Randomly select a sub-point p0 as the center point from the refined rock mass trace feature points, and calculate the nearest neighbor set of point p0. For ease of distinction, this set is called the third nearest neighbor set N. p0 ,
[0174]
[0175] Step S153: For each nearest neighbor in the nearest neighbor set of the center point, calculate its weight. The calculation formula is as follows:
[0176]
[0177] In the formula, pli represents the li-th seed point, σ(p li ) indicates directionality, d(p) l ,p li ) represents distance, s(p li () indicates an angle. λ s , λ t and λ d These are the control angles s(p) li ), Directionality σ(p)li and distance d(p) l ,p li The balance coefficient of ).
[0178] In formula (13), by combining cosine similarity, directionality and distance to calculate the weight, the relationship between the refined rock mass trace feature points and their nearest neighbors can be considered more comprehensively, thereby improving the accuracy of trace connection.
[0179] Step S154: Based on the calculated weight results, select the point with the largest weight as the next seed point, i.e., the new seed point, and connect the new seed point with the center point.
[0180] Step S155: Using the new seed point as the new center point, find the nearest neighbor set of the center point and calculate the weight of each nearest neighbor point. Repeat steps S153 to S154 above until the trace is connected and the connected trace is obtained.
[0181] In some embodiments, the rock mass trace merging process specifically employs a trace merging method driven by distance and collinearity, including the following steps:
[0182] Step S161: Smooth the connected traces using B-spline interpolation to obtain smoothed traces.
[0183] Smoothing by B-spline interpolation can effectively remove or weaken the influence of noise points, making the traces smoother and thus improving the accuracy of merging. At the same time, B-spline interpolation can maintain the high-order continuity of the data, making the smoothed point cloud data more continuous in shape and trend, and closer to the real traces.
[0184] Step S162: Collect all endpoints of the smoothed trace and construct the endpoint set P. v ={p0,p1,p2,...}.
[0185] Step S163: In the endpoint set P v Choose any point as the current center point p i Perform the following steps:
[0186] Search for the nearest neighbors of the center point to obtain the set of nearest neighbors of the center point. For ease of distinction, this is referred to here as the fourth nearest neighbor set.
[0187] Define center point p i The vector to the j-th nearest neighbor in its nearest neighbor set is Center point p i The vector pointing to the adjacent points on its trace is Define vector and The angle between them is θ j According to the center point p i The Euclidean distance and the included angle between the j-th nearest neighbor and the j-th nearest neighbor are θ. j Calculate the distance from the endpoints of adjacent traces to the current center point p. i The Euclidean distance d of the trajectory tt Euclidean distance d tt The calculation method is as follows:
[0188]
[0189] In the formula, It is the center point p i The Euclidean distance to its j-th nearest neighbor is also denoted as d. pp .
[0190] If the included angle is θ j Less than the preset included angle threshold θ deg And the distance d tt Less than the preset distance threshold θ dis Determine the relationship between the j-th nearest neighbor and the center point p. i If a point is already connected, ignore it; otherwise, add the j-th nearest neighbor to the candidate point set and calculate its weight. The weight is expressed as:
[0191]
[0192] In the formula, ω j Here, λ0, λ1, and λ2 are the weights of the j-th nearest neighbor, and d is the eigenvalue. pp It is the center point p i The Euclidean distance d to its j-th nearest neighbor tt It is the distance from the endpoint of the adjacent trace to the current center point p. i The Euclidean distance of the track.
[0193] In the weight formula (15), the center point p is introduced. i Distance to its nearest neighbor, distance from the endpoint of the adjacent trace to the current center point p i The distance between the traces makes the weight calculation highly sensitive to changes in spatial location, which helps to better capture local and global spatial relationships when processing point cloud data. (The included angle θ...) jThe introduction of this method gives the weight calculation directionality, allowing it to better reflect the relationship between nearest neighbors and the center point. By utilizing eigenvalues λ0, λ1, and λ2, the relationship between the included angle and distance is effectively adjusted, providing a more comprehensive description of the relationship between the center point and its nearest neighbors, thereby improving the accuracy and robustness of the weight calculation. In summary, this embodiment employs a distance- and collinearity-driven trace merging method to merge trace breaks. By combining distance metrics and collinearity features, it can more accurately connect and reconstruct broken traces, thereby optimizing the trace extraction results and improving the accuracy of subsequent analysis.
[0194] Step S164: Select the point with the largest weight in the candidate point set as the connection point, and connect it to the center point p. i connect.
[0195] Step S165: Repeat the above steps until all endpoints in the endpoint set have been calculated.
[0196] In summary, the main advantages of the method provided in this embodiment are: (a) the model trained using the transfer learning concept and ANN technology can avoid manual threshold selection during trace feature extraction, thus improving the accuracy of feature extraction; (b) the L1 skeleton extraction algorithm based on random sampling can be used directly for point cloud data without point cloud triangulation; (c) to address the phenomenon of discontinuous and jagged traces connected by the line growth algorithm, B-spline interpolation is used for smoothing, and a trace merging algorithm driven by the trace endpoint angle and distance is proposed to reduce the phenomenon of discontinuous traces. Through trace integration, the continuity of the trace results can be improved, making them closer to the real traces.
[0197] System Implementation Examples
[0198] This embodiment provides an automatic rock mass trace extraction system based on point clouds, such as... Figure 2 As shown, the system includes: a data acquisition module 201, a calculation module 202, a coarse extraction module 203, and a post-processing module 204. Among them:
[0199] The data acquisition module 201 is configured to acquire regular volume point cloud data and rock mass point cloud data, and extract a set of sample points from the regular volume point cloud data. Each sample point in the set of sample points contains label information.
[0200] The calculation module 202 is configured to calculate the multi-scale surface change index of each sample point in the sample point set to obtain the first feature set of the sample point set; and to calculate the multi-scale surface change index of all points in the rock mass point cloud data to obtain the second feature set of the rock mass point cloud data. The total number of features in both the first and second feature sets is equal to the scale n. The i-th feature in the first feature set represents the surface change index value of each sample point in the sample point set at the i-th scale; the i-th feature in the second feature set represents the surface change index value of all points in the rock mass point cloud data at the i-th scale.
[0201] The coarse extraction module 203 is configured to use the first feature set as input features, combine the label information contained in each sample point in the sample point set to construct a training dataset; and use the training dataset, combined with the idea of induced transfer learning, to train a general trace feature point extraction model using artificial neural network technology ANN, and then input the second feature set into the trained trace feature point extraction model to coarsely extract the trace feature points of the rock mass point cloud to obtain a coarsely extracted feature point set.
[0202] The post-processing module 204 is configured to perform fine extraction of rock mass trace feature points, connection of feature points, and merging of traces sequentially based on the coarsely extracted feature point set to obtain the final rock mass trace.
[0203] The point cloud-based automatic rock mass trace extraction system provided in this embodiment can implement the steps and processes of the point cloud-based automatic rock mass trace extraction method provided in any of the above embodiments, and achieve the same technical effect, which will not be described in detail here.
[0204] The above description is merely a preferred embodiment of this application and is not intended to limit this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.
Claims
1. A point cloud-based rock mass trace automatic extraction method, characterized in that, The method comprises the following steps: acquiring regular body point cloud data and rock mass point cloud data, and extracting a sample point set from the regular body point cloud data, each sample point in the sample point set containing label information; calculating a multi-scale surface variation index of each sample point in the sample point set to obtain a first feature set of the sample point set; and calculating a multi-scale surface variation index of all points in the rock mass point cloud data to obtain a second feature set of the rock mass point cloud data; wherein a total number of features in the first feature set and a total number of features in the second feature set are equal to a scale size n, and an i-th feature in the first feature set represents a surface variation index value of each sample point in the sample point set at an i-th scale; and an i-th feature in the second feature set represents a surface variation index value of all points in the rock mass point cloud data at the i-th scale; taking the first feature set as input features, combining the label information contained in each sample point in the sample point set, constructing a training data set, and using an artificial neural network technology (ANN) to train a general trace feature point extraction model based on an induced transfer learning idea using the training data set, and then inputting the second feature set into the trained trace feature point extraction model to coarsely extract rock mass point cloud trace feature points to obtain a coarsely extracted feature point set; based on the coarsely extracted feature point set, sequentially performing rock mass trace feature point fine extraction, feature point connection, and trace merging processing to obtain a final rock mass trace; taking the regular body point cloud data or the rock mass point cloud data as input point cloud P, and taking any sample point in the sample point set or any point in the rock mass point cloud data as a current point p; and calculating a multi-scale surface variation index of the current point p as follows: In all points of the input point cloud P, search the k points closest to the current point p to form the near neighbor point set N k (p); Compute the set of nearest neighbors N of point p k (p) any point p i Euclidean distance to the current point p and determine the set of nearest neighbors N k (p) the maximum distance d of all points in (p) to the current point p k (p); d k (p) is the lower limit of the search radius, the maximum collection range of the input point cloud P is the upper limit of the search radius, a plurality of breakpoints are determined within the upper and lower limits of the search radius to form a multi-scale search radius set, wherein the number of radii contained in the multi-scale search radius set is equal to the scale size n; searching with the current point p as the center and each radius value in a multi-scale search radius set as a search radius to obtain a neighbor point set of the current point p at each scale; based on the neighbor point set of the current point p at each scale, calculating a surface variation index value of the current point p at each scale; d k (p) is the lower limit of search radius, the adaptive iteration is used to obtain n breakpoints in the range of upper and lower limits of search radius, and the n breakpoints form the set of multi-scale search radius; wherein, the adaptive iteration comprises: setting d k (p) is the starting radius of iteration , the mean of Euclidean distances from the current point p to all points in the set of near neighbor points N k (p) is used as the step length of initial iteration , the radius value generated by the initial iteration is d : , the adaptive step length of the k1th iteration and the breakpoint value of each iteration are calculated: , , , , where k1 is the current iteration number, , are the breakpoint values at the k1+1th and k1th iterations, respectively, is the step size of the k1th iteration, is a normalization function, denotes the information content of the normalized , is the probability distribution of .
2. The method of claim 1, wherein, based on the neighbor point set of the current point p at each scale, calculating a surface variation index value of the current point p at each scale, specifically as follows: for the neighbor point set of the current point p at each scale, constructing a neighbor point matrix of the current point p at each scale, the number of rows of the neighbor point matrix of the current point p at each scale being equal to the number of points contained in the neighbor point set of the current point p at the scale, and the columns of the neighbor point matrix including three columns, namely x coordinate, y coordinate, and z coordinate; based on the neighbor point matrix of the current point p at each scale, calculating a covariance matrix C of the current point p at each scale; performing eigenvalue decomposition on the covariance matrix C of the current point p at each scale through principal component analysis, and arranging the generated eigenvalues in descending order to determine the maximum eigenvalue of the current point p at each scale and the top three eigenvalues. A ratio of a maximum eigenvalue of the current point p at each scale to a sum of eigenvalues ranked in the top 3 is calculated to obtain a surface variation index of the current point p at each scale.
3. The method according to claim 1 or 2, characterized in that, The maximum acquisition range is determined by the following formula: , In the formula, represents the maximum collection range, represents the diagonal length of the bounding box of the input point cloud P, represents the number of points in the input point cloud P.
4. The method of claim 1, wherein, The trace feature point of the rock mass is precisely extracted, including: The feature points in the coarse extraction feature point set are stripped from the rock mass point cloud data to obtain a trace feature point cloud set; Random sampling technology is used to randomly sample the trace feature point cloud set to obtain a sampling point set; Based on the trace feature point cloud set and the sampling point set, an L1 median skeleton extraction algorithm is used to construct an optimization objective equation, and the expression of the optimization objective equation is as follows: , In the formula, is the i-th point in the sampling point set, is the j-th point in the trace feature point cloud set, I and J are the number of points in the sampling point set and the trace feature point cloud set respectively, and θ is a weight function, is a balance coefficient, is the i-th point in the sampling point set, and is the j-th point in the trace feature point cloud set, , is the linear degree of the position where the point is located. The optimization objective equation is iteratively solved to obtain the precisely extracted rock mass trace feature point.
5. The method of claim 4, wherein, The rock mass trace feature points are connected, including the following steps: Outliers are removed from the precisely extracted rock mass trace feature points; A sub-point p0 is randomly selected as a center point from the precisely extracted rock mass trace feature points, and a near neighbor point set of the center point is searched; The weight of each near neighbor point in the near neighbor point set of the center point is calculated; According to the calculated weight result, the point with the largest weight is selected as a new seed point, and the new seed point and the center point are connected; The near neighbor point set of the new center point is searched and the weight of each near neighbor point is calculated, and the above steps are repeated until the trace connection is completed to obtain the connected trace.
6. The method of claim 5, wherein, The rock mass trace is merged and processed, specifically by using a trace merging method based on distance and collinearity driving, including the following steps: The connected trace is smoothed using a B-spline interpolation method to obtain a smoothed trace; All end points of the smoothed trace are collected to construct an end point set; taking any point in the set of endpoints as a current center point performing the following steps: searching for the near neighbor points of the center point to obtain a near neighbor point set of the center point ; Definition of the center point The vector from the center point to its jth nearest neighbor point in the set of nearest neighbor points is The vector from the center point to its nearest neighbor point on the trajectory on which it lies is The angle between the vectors and is calculated as The Euclidean distance from the center point to its jth nearest neighbor point and the angle are used to calculate the Euclidean distance from the end point of the trajectory to which the center point belongs to the current center point . If the included angle is less than a preset included angle threshold, and the distance is less than a preset distance threshold, the jth nearest neighbor point is classified into the candidate point set, and the weight of the jth nearest neighbor point is calculated. The point with the largest weight in the candidate point set is selected as the connection point, and it is connected with the center point connection; The above steps are repeatedly executed until all end points in the end point set are calculated.
7. The method of claim 6, wherein, The weight of the jth near neighbor point is expressed as follows: , wherein is the weight of the jth nearest neighbor point, , , is the eigenvalue of the center point , is the Euclidean distance between the center point and its jth nearest neighbor point, is the Euclidean distance of the neighboring trace end point to the trace to which the current center point belongs.
8. A point cloud based rock mass trace automatic extraction system, characterized in that, It includes: A data acquisition module is configured to acquire regular body point cloud data and rock mass point cloud data, and extract a sample point set from the regular body point cloud data, each sample point in the sample point set containing label information; A calculation module is configured to calculate the multi-scale surface variation index of each sample point in the sample point set to obtain a first feature set of the sample point set; The multi-scale surface variation index of all points in the rock mass point cloud data is calculated to obtain a second feature set of the rock mass point cloud data; wherein the total number of features in the first feature set and the total number of features in the second feature set are equal to the scale size n, the ith feature in the first feature set represents the surface variation index value of each sample point in the sample point set at the ith scale; and the ith feature in the second feature set represents the surface variation index value of all points in the rock mass point cloud data at the ith scale; The coarse extraction module is configured to take the first feature set as input features, combine label information contained in each sample point in the sample point set, construct a training data set, and use the training data set to train a general trace feature point extraction model by using an artificial neural network (ANN) technology combined with an inductive transfer learning idea, then input the second feature set into the trained trace feature point extraction model, coarsely extract trace feature points of the rock mass point cloud, and obtain a coarse extraction feature point set; The post-processing module is configured to sequentially perform fine extraction of rock mass trace feature points, feature point connection, and trace merging processing based on the coarse extraction feature point set, and obtain a final rock mass trace; Taking the regular body point cloud data or the rock mass point cloud data as input point cloud P and taking any sample point in the sample point set or any point in the rock mass point cloud data as current point p, the calculation steps of the multi-scale surface change index of the current point p are as follows: In all points of the input point cloud P, search the k points closest to the current point p to form the near neighbor point set N k (p); Compute the set of nearest neighbors N of point p k (p) the point p i The Euclidean distance from p to the current point p, and determine the set of nearest neighbors N k (p) the maximum distance from all points in (p) to the current point p k (p) d k (p) the lower limit of the search radius, the maximum collection range of the input point cloud P as the upper limit of the search radius, a plurality of breakpoints are determined within the upper and lower limits of the search radius to form a multi-scale search radius set, wherein the number of radii contained in the multi-scale search radius set is equal to the scale size n; Searches are performed with the current point p as the center and each radius value in the multi-scale search radius set as a search radius to obtain a near neighbor point set of the current point p at each scale; Based on the near neighbor point set of the current point p at each scale, the surface change index value of the current point p at each scale is calculated. d k (p) is the lower limit of search radius, the adaptive iteration is used to obtain n breakpoints in the range of upper and lower limits of search radius, and the n breakpoints form the set of multi-scale search radius; wherein, the adaptive iteration comprises: setting d k (p) is the starting radius of iteration , the mean of Euclidean distances from the current point p to all points in the set of near neighbor points N k (p) is used as the step length of initial iteration , the radius value generated by the initial iteration is d : , the adaptive step length of the k1th iteration and the breakpoint value of each iteration are calculated: , , , , where k1 is the current iteration number, , are the breakpoint values at the k1+1th and k1th iterations, respectively, is the step size at the k1th iteration, is a normalization function, denotes the information content of the normalized is the probability distribution of .
Citation Information
Patent Citations
Method for evaluating roundness and sphericity errors based on self-adaption iteration neighbourhood search
CN101957191A
Automatic extraction method for tunnel surrounding rock body fissures
CN117745954A
Rock mass local point cloud coplanar judgment method and system based on multi-scale perception, medium and electronic equipment
CN118230055A