An automatic method for extracting fractures in the surrounding rock mass of tunnels

By combining close-range photogrammetry and PointNet++ model with data structure processing, the problem of low accuracy in extracting fractures in tunnel surrounding rock mass was solved, achieving higher accuracy fracture detection and supporting the quality evaluation of tunnel surrounding rock mass.

CN117745954BActive Publication Date: 2026-05-26JILIN UNIVERSITY
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
JILIN UNIVERSITY
Filing Date
2023-12-29
Publication Date
2026-05-26

AI Technical Summary

Technical Problem

Existing technologies suffer from low accuracy in extracting fractures in tunnel surrounding rock, especially in the process of mapping from two-dimensional rock images to three-dimensional point clouds, where errors are prone to occur.

Method used

Point cloud data of the tunnel surrounding rock mass was obtained by close-range photogrammetry. The coordinates, color feature values ​​and normal vectors of the point cloud data were combined with the PointNet++ model to detect fracture feature points. Complete fractures were obtained through data structure processing, including feature point refinement, growth and connection.

Benefits of technology

It improves the accuracy of fracture extraction in tunnel surrounding rock mass, more realistically reflects the true morphology of fractures, and helps in the quality evaluation of tunnel surrounding rock mass.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117745954B_ABST
    Figure CN117745954B_ABST
Patent Text Reader

Abstract

This invention relates to an automatic method for extracting fractures in tunnel surrounding rock mass, comprising: acquiring measurement information of the tunnel surrounding rock mass using close-range photogrammetry to obtain point cloud data of the tunnel surrounding rock mass; acquiring a fracture dataset from the point cloud data using manual annotation; combining different features based on coordinates, color feature values, normal vectors, and curvature in the fracture dataset, constructing a PointNet++ model for each feature combination, selecting the optimal PointNet++ model, and obtaining a first set of fracture feature points in the tunnel surrounding rock mass based on the optimal PointNet++ model; and obtaining complete fractures in the tunnel surrounding rock mass using data structure processing based on the first set of fracture feature points. The method of this invention can improve the accuracy of extracted fracture points and more realistically reflect the true morphology of fractures, which is of great significance for the quality evaluation of tunnel surrounding rock mass.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of geological exploration technology for surrounding rock masses in tunnels, and in particular to an automatic method for extracting fractures in surrounding rock masses in tunnels. Background Technology

[0002] The study of rock mass fissures is of great significance for evaluating the quality of tunnel surrounding rock and analyzing the stability of rock mass structures. Unlike planar structures, which exhibit irregular surface patterns, fissures mainly exist within the rock mass, often appearing as irregular lines. Due to their limited exposure, diverse morphologies, complex characteristics, and interference from complex geological environments, it is difficult to investigate the complete morphology of fissures. Currently, the methods for obtaining rock mass fissure information are mostly manual on-site measurement or manually marking the location of fissures on a three-dimensional model. Although these methods have high accuracy, they often require significant human and material resources.

[0003] With the development of machine learning and deep learning, rule-based processing methods such as edge detection and threshold segmentation can identify cracks from images or point clouds. However, these methods are sensitive to rock texture, lighting conditions, and threshold settings, which can affect the crack extraction results. Currently, a widely used approach is to use deep learning technology to detect crack points from two-dimensional rock images. Since the crack points detected in the image are pixels, they need to be mapped and transformed into a three-dimensional point cloud, which introduces mapping errors and reduces the accuracy of crack point detection.

[0004] Therefore, there is an urgent need for a more accurate method for automatically extracting fractures in the surrounding rock mass of tunnels. Summary of the Invention

[0005] (a) Technical problems to be solved

[0006] In view of the above-mentioned shortcomings and deficiencies of the prior art, the present invention provides an automatic extraction method for fractures in the surrounding rock mass of tunnels, which solves the technical problem of low accuracy in obtaining fractures in the surrounding rock mass of tunnels.

[0007] (II) Technical Solution

[0008] To achieve the above objectives, the main technical solutions adopted by the present invention include:

[0009] In a first aspect, embodiments of the present invention provide an automatic method for extracting fractures in the surrounding rock mass of a tunnel, comprising:

[0010] S100. Obtain measurement information of the tunnel surrounding rock mass according to the close-range photogrammetry method, and obtain point cloud data of the tunnel surrounding rock mass. The point cloud data includes: coordinates, color feature value, normal vector, and curvature of each point on the surface of the tunnel surrounding rock mass.

[0011] S200. Obtain the gap dataset of the point cloud data using a manual annotation method;

[0012] S300. Based on the coordinates, color feature values, normal vectors, and curvature in the fracture dataset, different feature combinations are made. A PointNet++ model is constructed for each feature combination. The optimal PointNet++ model is selected, and the first set of fracture feature points of the fracture in the tunnel surrounding rock mass is obtained based on the optimal PointNet++ model.

[0013] S400. Based on the set of first fracture feature points of the fractures in the surrounding rock mass of the tunnel, the complete fractures of the surrounding rock mass of the tunnel are obtained by using data structure processing.

[0014] Optionally, S100 includes:

[0015] S110. Based on the measurement information of the tunnel surrounding rock mass obtained by close-range photogrammetry, construct a three-dimensional model of the tunnel surrounding rock mass, and identify the first point cloud data of the surface of the tunnel surrounding rock mass from the three-dimensional model of the tunnel surrounding rock mass. The first point cloud data includes coordinates and color feature values.

[0016] S120. Calculate the normal vector and curvature of the coordinate points in the first point cloud data to obtain point cloud data. The point cloud data includes the coordinates, color feature value, normal vector, and curvature of each point on the surface of the tunnel surrounding rock mass.

[0017] Optionally, S200 includes:

[0018] S210. Based on the displayed point cloud data, receive manually annotated fracture point information to obtain the first fracture dataset;

[0019] S220. Use data augmentation to expand the information of each fracture point in the first fracture dataset to obtain the fracture dataset.

[0020] Optionally, in step S220, the data augmentation method processes the information of each fracture point in the first fracture dataset, including one or more of the following:

[0021] The information of each fracture point in the first fracture dataset is magnified or reduced;

[0022] Rotate the information of each fracture point in the first fracture dataset;

[0023] The information of each fracture point in the first fracture dataset is translated.

[0024] Optionally, S300 includes:

[0025] S310. Divide the crack dataset into a training set, a validation set, and a test set;

[0026] S320. Based on the coordinates, color feature values, normal vectors, and curvature in the crack dataset, perform different feature combinations, construct a PointNet++ model for each feature combination, initialize the model, import the training set into the PointNet++ model, and train the model.

[0027] S330. Import the validation set data into PointNet++ models with different feature combinations in sequence. Compare the overall accuracy, Kappa coefficient, F1 score, and average intersection-over-union ratio of the PointNet++ models under different feature combinations. The PointNet++ network model with the highest three or more of the four indicators (overall accuracy, Kappa coefficient, F1 score, and average intersection-over-union ratio) is the optimal PointNet++ network model.

[0028] S340. Import the test set data into the optimal PointNet++ model and output the first set of crack feature points.

[0029] Optionally, the combination of features includes:

[0030] Coordinates, coordinates + curvature, coordinates + normal vector, coordinates + normal vector + curvature, coordinates + color eigenvalue, coordinates + color eigenvalue + curvature, coordinates + color eigenvalue + normal vector, coordinates + color eigenvalue + normal vector + curvature.

[0031] Optionally, S400 includes:

[0032] S410. Calculate the curvature of each feature point in the first set of crack feature points, search for neighborhood points within the radius r of each feature point, calculate the Laplacian operator, use curvature as a weight to weight the Laplacian operator, obtain new feature points and add them to the second set of crack points, and obtain the refined second set of crack feature points.

[0033] S420. Obtain the set of fracture segment growth points from the refined second fracture feature point set, connect the fracture growth point set to form different fracture segments, and obtain the first fracture segment set.

[0034] Optionally, S420 includes:

[0035] S421. Select a fracture feature point as a seed point from the refined second fracture feature point set. If the fracture segment where the seed point is located has less than 20 feature points, then select the fracture feature points within 5 times the point cloud density as growth points. If the fracture segment where the seed point is located has more than or equal to 20 fracture feature points, then determine whether the seed point meets the first specified requirement. If it does, then select the seed point as a growth point.

[0036] The first specified requirement is that the angle θ1 between the starting point to the ending point of the fissure segment where the seed point is located and the vector from the ending point to the growth point is less than the threshold α1, and the angle θ2 between the halfway point to the ending point of the fissure segment where the seed point is located and the vector from the ending point to the growth point is less than the threshold α2.

[0037] The formula for calculating θ1 is:

[0038] θ1=arccos(V s V e V e V p ),

[0039] Among them, V s V e Let V be the vector from the starting point to the ending point. e V p The vector from the endpoint to the growth point;

[0040] The formula for calculating θ2 is:

[0041] θ2=arc cos(V 1 / 2 V e V e V p ),

[0042] Among them, V 1 / 2 V e The vector V is the vector from the half-point to the endpoint. e V p The vector from the endpoint to the growth point;

[0043] S422. Select feature points in the second fracture feature point set that do not include those that have grown to the fracture segment as candidate points. Select new growth points from the candidate points for growth until the growth requirements are not met. Repeat the selection of growth points for growth to obtain the first fracture segment set.

[0044] Optionally, the S400 further includes:

[0045] S430. Determine whether any two crack segments in the first crack segment set meet the second specified requirement. If they do, connect the two crack segments and obtain the second crack segment set until any two crack segments in the first crack segment set do not meet the second specified requirement.

[0046] S440. Measure the length of each fracture segment in the second fracture segment set, and determine whether the length of each fracture segment exceeds a length threshold. If it does not exceed the threshold, delete the fracture segment. The length threshold is 0.5m.

[0047] Optionally, the second specified requirement includes:

[0048] The included angle θ3 between any two fracture segments is less than the threshold α3, and the formula for calculating the included angle θ3 is as follows:

[0049] θ3 = arc cos(P1, P2),

[0050] Wherein, P1 and P2 are the principal directions of any two fracture segments;

[0051] Furthermore, the distance d1 between any two fracture segments is less than the threshold l1, and the formula for calculating the distance d1 is as follows:

[0052] d1 = sqrt((X1 - X2)) 2 +(Y1-Y2) 2 +(Z1-Z2) 2 ),

[0053] Where (X1, Y1, Z1) and (X2, Y2, Z2) are the coordinates of the two closest endpoints of any two fracture segments.

[0054] (III) Beneficial Effects

[0055] The beneficial effects of this invention are as follows: The automatic extraction method for fractures in tunnel surrounding rock mass of this invention is based on the construction of a deep learning network for fracture feature point detection under the optimized combination of coordinate, color feature value, normal vector, and curvature feature information of point cloud data. At the same time, it uses data structure-driven technology. Compared with the prior art, it can improve the accuracy of extracted fracture points and more realistically reflect the true morphology of fractures, which is of great significance for the quality evaluation of tunnel surrounding rock mass. Attached Figure Description

[0056] Figure 1 This is a schematic flowchart of the automatic extraction method for fractures in the surrounding rock mass of a tunnel according to Embodiment 1 of the present invention;

[0057] Figure 2 This is a flowchart illustrating the automatic extraction method for fractures in the surrounding rock mass of a tunnel in Embodiment 2 of the present invention.

[0058] Figure 3 This is a schematic diagram of point cloud data in an automatic extraction method for fractures in the surrounding rock mass of a tunnel according to Embodiment 3 of the present invention;

[0059] Figure 4 This is a schematic diagram of manually marked fracture tags in an automatic method for extracting fractures in the surrounding rock mass of a tunnel according to Embodiment 3 of the present invention;

[0060] Figure 5 This is a schematic diagram of the PointNet++ network structure in an automatic method for extracting fractures in the surrounding rock mass of a tunnel according to Embodiment 2 of the present invention.

[0061] Figure 6 This is a schematic diagram showing the accuracy index results of each feature combination model in an automatic extraction method for fractures in tunnel surrounding rock mass according to Embodiment 3 of the present invention.

[0062] Figure 7 This is a schematic diagram comparing the data of detected fracture feature points with manually marked fracture feature points in the test set of an automatic extraction method for fractures in tunnel surrounding rock mass according to Embodiment 3 of the present invention. Figure 8 This is a schematic diagram illustrating the principle of each step in the data structure-driven technology of the automatic extraction method for fractures in the surrounding rock mass of a tunnel in Embodiment 2 of the present invention.

[0063] Figure 9 This is a schematic diagram showing the connection of fracture feature points in each step of the data structure-driven technology in the automatic extraction method of fractures in the surrounding rock mass of a tunnel in Embodiment 3 of the present invention. Detailed Implementation

[0064] To better explain and facilitate understanding of the present invention, the present invention will be described in detail below with reference to the accompanying drawings and specific embodiments.

[0065] The present invention proposes an automatic method for extracting fractures in tunnel surrounding rock mass. Based on the construction of a deep learning network for fracture feature point detection by optimizing the combination of coordinate, color feature values, normal vector, and curvature feature information of point cloud data, and using data structure-driven technology, this method can improve the accuracy of extracted fracture points and more realistically reflect the true morphology of fractures compared with existing technologies. This method is of great significance for the quality evaluation of tunnel surrounding rock mass.

[0066] To better understand the above technical solutions, exemplary embodiments of the present invention will be described in more detail below with reference to the accompanying drawings. Although exemplary embodiments of the present invention are shown in the drawings, it should be understood that the present invention can be implemented in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that the present invention can be understood more clearly and thoroughly, and that the scope of the present invention can be fully conveyed to those skilled in the art.

[0067] Example 1

[0068] See Figure 1 An embodiment of the present invention provides a method for automatically extracting fractures in the surrounding rock mass of a tunnel, comprising:

[0069] Step S100: Obtain measurement information of the tunnel surrounding rock mass according to the close-range photogrammetry method, and obtain point cloud data of the tunnel surrounding rock mass. The point cloud data includes: coordinates, color feature value, normal vector, and curvature of each point on the surface of the tunnel surrounding rock mass.

[0070] Step S200: Obtain the gap dataset from the point cloud data using a manual annotation method;

[0071] Step S300: Based on the coordinates, color feature values, normal vectors, and curvature in the fracture dataset, different feature combinations are made. A PointNet++ model is constructed for each feature combination. The optimal PointNet++ model is selected, and the first set of fracture feature points of the fracture in the tunnel surrounding rock mass is obtained based on the optimal PointNet++ model.

[0072] Step S400: Based on the first set of fracture feature points of the fractures in the tunnel surrounding rock mass, the complete fractures of the tunnel surrounding rock mass are obtained by using data structure processing.

[0073] In this embodiment, a deep learning network for crack feature point detection is constructed by optimizing the combination of coordinates, color feature values, normal vectors, and curvature feature information of point cloud data. At the same time, data structure-driven technology is used to improve the accuracy of extracted crack points and more realistically reflect the true morphology of cracks, which is of great significance for the quality evaluation of tunnel surrounding rock mass.

[0074] Example 2

[0075] See Figure 2 This invention provides an automatic extraction method for tunnel surrounding rock mass, comprising:

[0076] Step S100: Obtain measurement information of the tunnel surrounding rock mass according to the close-range photogrammetry method, and obtain point cloud data of the tunnel surrounding rock mass. The point cloud data includes: coordinates, color feature value, normal vector, and curvature of each point on the surface of the tunnel surrounding rock mass.

[0077] Step S200: Obtain the gap dataset from the point cloud data using a manual annotation method;

[0078] Step S300: Based on the coordinates, color feature values, normal vectors, and curvature in the fracture dataset, different feature combinations are made. A PointNet++ model is constructed for each feature combination. The optimal PointNet++ model is selected, and the first set of fracture feature points of the fracture in the tunnel surrounding rock mass is obtained based on the optimal PointNet++ model.

[0079] Step S400: Based on the first set of fracture feature points of the fractures in the tunnel surrounding rock mass, the complete fractures of the tunnel surrounding rock mass are obtained by using data structure processing.

[0080] In this embodiment, step S100 includes:

[0081] Step S110: Based on the measurement information of the tunnel surrounding rock mass obtained by close-range photogrammetry, construct a three-dimensional model of the tunnel surrounding rock mass, and identify the first point cloud data of the surface of the tunnel surrounding rock mass from the three-dimensional model of the tunnel surrounding rock mass. The first point cloud data includes coordinates and color feature values.

[0082] Step S120: Calculate the normal vector and curvature of the coordinate points in the first point cloud data to obtain point cloud data. The point cloud data includes the coordinates, color feature value, normal vector, and curvature of each point on the surface of the tunnel surrounding rock mass.

[0083] For example, in this embodiment, azimuth and scale references are set for the tunnel surrounding rock mass, and a close-range photogrammetry method is used to acquire high-resolution, multi-azimuth images of the tunnel surrounding rock mass. Based on the tunnel surrounding rock mass images, a three-dimensional model of the tunnel surrounding rock mass is established using real-scene 3D modeling software. The reliability of the model is verified by azimuth, scale, and structural surface attitude, and corresponding point cloud data is generated. At this time, the point cloud data contains coordinate and color feature information. Based on the point cloud coordinates, the normal vector and curvature are calculated using the least squares method and coplanar point eigenvalues, respectively.

[0084] In this embodiment, the method for calculating the normal vector and curvature is as follows:

[0085] First, construct a point p within a certain radius or quantity. i Let p be the set of neighborhood points, with N neighborhood points. i N ={q j =(x j y j , z j Let the plane equation fitted to all neighborhood points of a point be Z = A′X + B′Y + D′. Then the normal vector can be calculated by the following formula: normal vector n = (-A′, -B′, 1).

[0086]

[0087] Where (X, Y, Z) are the coordinates of the neighborhood points;

[0088] The curvature is calculated using the eigenvalues ​​of the covariance matrix K, constructed from the centroids of the point and its neighboring points. The formulas for calculating the covariance matrix K and the curvature C are shown below.

[0089]

[0090]

[0091] Where, q j For the current point p i neighborhood points, Let K be the centroid of the neighborhood points, and let λ1, λ2, and λ3 be the eigenvalues ​​of the neighborhood point covariance matrix K.

[0092] In this embodiment, step S200 includes:

[0093] Step S210: Based on the displayed point cloud data, receive manually annotated fracture point information to obtain the first fracture dataset;

[0094] Step S220: Expand the information of each fracture point in the first fracture dataset using data augmentation to obtain the fracture dataset.

[0095] In step S220, the data augmentation method processes information about each fracture point in the first fracture dataset, including one or more of the following:

[0096] The information of each fracture point in the first fracture dataset is magnified or reduced;

[0097] Rotate the information of each fracture point in the first fracture dataset;

[0098] The information of each fracture point in the first fracture dataset is translated.

[0099] In this embodiment, for example, based on the point cloud data of the tunnel surrounding rock mass, the fracture data is manually marked using CloudCompare software to distinguish fracture points from non-fracture points. To make full use of the fracture data, this embodiment enhances the fracture data by expanding it through rotation, scaling, and translation operations.

[0100] In this embodiment, step S300 includes:

[0101] Step S310: Divide the crack dataset into a training set, a validation set, and a test set;

[0102] Step S320, see Figure 5 Based on the coordinates, color feature values, normal vectors, and curvature in the crack dataset, different feature combinations are made. A PointNet++ model is built for each feature combination and the model is initialized. The training set is imported into the PointNet++ model for training.

[0103] Step S330: Import the validation set data into PointNet++ models with different feature combinations in sequence, compare the overall accuracy, Kappa coefficient, F1 score, and average intersection-over-union ratio of the PointNet++ models under different feature combinations, and obtain the PointNet++ network model with three or more of the four indicators being the maximum as the optimal PointNet++ network model.

[0104] Step S340: Import the test set data into the optimal PointNet++ model and output the first set of crack feature points.

[0105] The combination of features includes:

[0106] Coordinates, coordinates + curvature, coordinates + normal vector, coordinates + normal vector + curvature, coordinates + color eigenvalue, coordinates + color eigenvalue + curvature, coordinates + color eigenvalue + normal vector, coordinates + color eigenvalue + normal vector + curvature.

[0107] In this embodiment, the formula for calculating the overall accuracy is:

[0108]

[0109] Where OA represents the overall accuracy, TP (True Positive) represents the number of positive classes predicted as positive, FP (False Positive) represents the number of negative classes predicted as positive, TN (True Negative) represents the number of negative classes predicted as negative, and FN (False Negative) represents the number of positive classes predicted as negative.

[0110] The formula for calculating the Kappa coefficient is:

[0111]

[0112] Wherein, TP (True Positive) is the number of positive classes predicted as positive, FP (False Positive) is the number of negative classes predicted as positive, TN (True Negative) is the number of negative classes predicted as negative, and FN (False Negative) is the number of positive classes predicted as negative.

[0113] The formula for calculating the F1 score is:

[0114]

[0115] Wherein, TP (True Positive) is the number of positive classes predicted as positive, FP (False Positive) is the number of negative classes predicted as positive, TN (True Negative) is the number of negative classes predicted as negative, and FN (False Negative) is the number of positive classes predicted as negative.

[0116] The formula for calculating the average crossover-union ratio is:

[0117]

[0118] Where mIOU is the average intersection-union ratio, TP (True Positive) is the number of positive classes predicted as positive, FP (False Positive) is the number of negative classes predicted as positive, TN (True Negative) is the number of negative classes predicted as negative, and FN (False Negative) is the number of positive classes predicted as negative.

[0119] In this embodiment, see Figure 8 Step S400 includes:

[0120] Step S410: Calculate the curvature of each feature point in the first set of crack feature points, search for neighborhood points within radius r of each feature point, calculate the Laplacian operator, use curvature as weight to weight the Laplacian operator, obtain new feature points and add them to the second set of crack points, and obtain the refined second set of crack feature points.

[0121] The formula for weighting the Laplacian operator using curvature as a weight is as follows:

[0122]

[0123] p′ i =p i +Δp i ,

[0124] Where N is the number of neighborhood points, q k p is the k-th point in the neighborhood. i For the current feature point, w(q) k Let p be the curvature of the k-th point in the neighborhood. i ′ represents the location of the refined feature point.

[0125] Step S420: Obtain the set of fracture segment growth points from the refined second fracture feature point set, connect the fracture growth point set to form different fracture segments, and obtain the first fracture segment set.

[0126] Step S430: Determine whether any two fracture segments in the first fracture segment set meet the second specified requirement. If they do, connect the two fracture segments and obtain the second fracture segment set until no two fracture segments in the first fracture segment set meet the second specified requirement.

[0127] The second specified requirement includes:

[0128] The angle θ3 between the principal directions of any two fracture segments is less than the threshold α3, and the formula for calculating θ3 is as follows:

[0129] θ3 = arc cos(P1, P2),

[0130] Wherein, P1 and P2 are the principal directions of any two fracture segments;

[0131] Furthermore, the distance d1 between any two fracture segments is less than the threshold l1, and the formula for calculating d1 is:

[0132] d1 = sqrt((X1 - X2)) 2 +(Y1-Y2) 2+(Z1-Z2) 2 ),

[0133] Where (X1, Y1, Z1) and (X2, Y2, Z2) are the coordinates of the two closest endpoints of the two fracture segments, respectively.

[0134] Step S440: Measure the length d2 of each fracture segment in the second fracture segment set, and determine whether the length d2 of each fracture segment exceeds the length threshold l2. If it does not exceed the threshold, delete the fracture segment. The length threshold l2 is 0.5m.

[0135] Step S420 includes:

[0136] Step S421: Select a fracture feature point as a seed point from the refined second fracture feature point set. If the fracture segment where the seed point is located has less than 20 feature points, then the fracture feature points within 5 times the point cloud density are used as growth points. If the fracture segment where the seed point is located has more than or equal to 20 fracture feature points, then determine whether the seed point meets the first specified requirement. If it does, then the seed point is used as a growth point.

[0137] The first specified requirement is that the angle θ1 between the starting point to the ending point of the fissure segment where the seed point is located and the vector from the ending point to the growth point is less than the threshold α1, and the angle θ2 between the halfway point to the ending point of the fissure segment where the seed point is located and the vector from the ending point to the growth point is less than the threshold α2.

[0138] The formula for calculating θ1 is:

[0139] θ1=arc cos(V s V e V e V p ),

[0140] Among them, V s V e Let V be the vector from the starting point to the ending point. e V p The vector from the endpoint to the growth point;

[0141] The formula for calculating θ2 is:

[0142] θ2=arc cos(V 1 / 2 V e V e V p ),

[0143] Among them, V 1 / 2 V e The vector V is the vector from the half-point to the endpoint. e V p This is the vector from the endpoint to the growth point.

[0144] Step S422: Select the feature points that have grown to the fracture segment but are not included in the second fracture feature point set where the growth point is located as candidate points. Select new growth points from the candidate points for growth until the growth requirements are not met. Repeat the selection of growth points for growth to obtain the first fracture segment set.

[0145] In this embodiment, a deep learning network for crack feature point detection is constructed by optimizing the combination of coordinates, color feature values, normal vectors, and curvature feature information of point cloud data. At the same time, data structure-driven technology is used to improve the accuracy of extracted crack points and more realistically reflect the true morphology of cracks, which is of great significance for the quality evaluation of tunnel surrounding rock mass.

[0146] Example 3

[0147] This embodiment provides an automatic method for extracting fractures in the surrounding rock mass of a tunnel. The experimental data in this embodiment is based on image data of the surrounding rock mass of a tunnel obtained by close-range photogrammetry, and then point cloud data with a resolution of 1 cm is generated. Figure 3 As shown. This point cloud data has coordinate data and color feature values, and then the normal vector and curvature are calculated using the least squares method and coplanar point feature values, respectively.

[0148] Based on the point cloud data of the tunnel surrounding rock mass, fracture data were manually marked using CloudCompare software to distinguish fracture points from non-fracture points, such as... Figure 4 As shown, a total of 51 fissures were marked, and then they were cropped into 273 first fissure datasets, each containing approximately 8,000-12,000 point cloud data points.

[0149] To fully utilize the fracture data, this embodiment enhances the data through rotation, scaling, and translation operations. Rotation involves rotating the cropped dataset of 273 fracture samples by 10° and -10° around the X, Y, and Z axes, respectively. Scaling involves enlarging the cropped dataset by a factor of 1.2 and shrinking it by a factor of 0.8. Translation involves shifting the cropped dataset of 273 fracture samples to the right by 1.5m and -1.5m, respectively. After data enhancement, 1911 fracture datasets were obtained, each containing information such as point cloud coordinates, color feature values, normal vectors, and curvature.

[0150] Based on the established fracture dataset, the fracture dataset is divided into training set, validation set, and test set in a ratio of 3:1:1;

[0151] Based on the coordinates, color feature values, normal vectors, and curvature in the crack dataset, different feature combinations are made. A PointNet++ model is built for each feature combination and the model is initialized. The training set is imported into the PointNet++ model for training.

[0152] The parameter settings for the PointNet++ model are shown in the table below:

[0153] Table 1 Model Parameter Settings

[0154]

[0155] Import the validation set data into the PointNet++ model with eight feature combinations in sequence: coordinates, coordinates + curvature, coordinates + normal vector, coordinates + normal vector + curvature, coordinates + color feature value, coordinates + color feature value + curvature, coordinates + color feature value + normal vector, and coordinates + color feature value + normal vector + curvature, as shown in the table below. Figure 6 As shown, comparing the overall accuracy, Kappa coefficient, F1 score, and mean intersection-over-union ratio of the PointNet++ model under different feature combinations, it can be seen that...

[0156] When the feature combination is coordinates + color feature value + normal vector, the overall accuracy, Kappa coefficient, F1 score, and average intersection-over-union ratio are the highest. Therefore, this embodiment finally adopts the PointNet++ model corresponding to the feature combination of coordinates + color feature value + normal vector.

[0157] Table 2. Accuracy of Crack Detection for Each Feature Combination

[0158]

[0159] The PointNet++ model corresponding to the combination of coordinate, color, and normal vector features was applied to a complete test set, and the test results are as follows: Figure 7 As shown, the first set of feature points of the crack is output.

[0160] Finally, the first set of feature points in the fracture is connected using data structure-driven techniques. This method includes four steps: feature point refinement, feature point growth, fracture segment connection, and redundant segment removal. Figure 8 As shown:

[0161] First, calculate the curvature of each feature point in the first set of crack feature points. For each feature point, search for neighborhood points within the search radius and calculate the Laplacian operator. Use curvature as a weight to weight the Laplacian operator, obtain new feature points and add them to the first set of crack points to obtain the refined second set of crack feature points.

[0162] The formula for weighting the Laplacian operator using curvature as a weight is as follows:

[0163]

[0164] p i ′=p i +Δp i ,

[0165] Where N is the number of neighborhood points, q k p is the k-th point in the neighborhood. i For the current feature point, w(q) k Let p be the curvature of the k-th point in the neighborhood. i ′ represents the location of the refined feature point.

[0166] Select a fracture feature point from the refined second fracture feature point set as a seed point. If the fracture segment where the seed point is located has less than 20 feature points, then the fracture feature points within 5 times the point cloud density are used as growth points. If the fracture segment where the seed point is located has more than or equal to 20 fracture feature points, then determine whether the seed point meets the first specified requirement. If it does, then the seed point is used as a growth point.

[0167] The first specified requirement is that the angle θ1 between the starting point to the ending point of the fissure segment where the seed point is located and the vector from the ending point to the growth point is less than the threshold α1, and the angle θ2 between the halfway point to the ending point of the fissure segment where the seed point is located and the vector from the ending point to the growth point is less than the threshold α2.

[0168] The formula for calculating θ1 is:

[0169] θ1=arc cos(V s V e V e V p ),

[0170] Among them, V s V e Let V be the vector from the starting point to the ending point. e V p The vector from the endpoint to the growth point;

[0171] The formula for calculating θ2 is:

[0172] θ2=arc cos(V 1 / 2 V e V e V p ),

[0173] Among them, V 1 / 2 V e The vector V is the vector from the half-point to the endpoint.e V p This is the vector from the endpoint to the growth point.

[0174] Select feature points that do not already grow into the fracture segment within the set of feature points of the second fracture where the growth point is located as candidate points. Select new growth points from the candidate points for growth until the growth requirements are no longer met. Repeat the selection of growth points for growth to obtain the set of the first fracture segment.

[0175] Determine whether any two fracture segments in the first fracture segment set meet the second specified requirement. If they do, connect the two fracture segments and obtain the second fracture segment set until no two fracture segments in the first fracture segment set meet the second specified requirement.

[0176] The second specified requirement includes:

[0177] The included angle θ3 between any two fracture segments is less than the threshold α3, and the formula for calculating the included angle θ3 is as follows:

[0178] θ3 = arc cos(P1, P2),

[0179] Wherein, P1 and P2 are the principal directions of any two fracture segments;

[0180] Furthermore, the distance d1 between any two fracture segments is less than the threshold l1, and the formula for calculating the distance d1 is as follows:

[0181] d1 = sqrt((X1 - X2)) 2 +(Y1-Y2) 2 +(Z1-Z2) 2 ),

[0182] Where (X1, Y1, Z1) and (X2, Y2, Z2) are the coordinates of the closest points between any two fracture segments.

[0183] Measure the length d2 of each fracture segment in the second fracture segment set, and determine whether the length d2 of each fracture segment exceeds the length threshold l2. If it does not exceed the threshold, delete the fracture segment. The length threshold l2 is 0.5m.

[0184] In this embodiment, the threshold r in feature point refinement is set to 0.1m, the thresholds α1 and α2 in feature point growth are set to 60° and 45° respectively, the parameters α3 and l1 in crack segment connection are set to 60° and 1m respectively, and the parameter l2 in redundant segment removal is 0.5m.

[0185] Therefore, the gaps connected based on data structure-driven technology are like Figure 9 As shown, from Figure 9 As can be seen, the fracture segments connected by data structure-driven technology are relatively complete.

[0186] This invention uses close-range photogrammetry to obtain a three-dimensional model of the surrounding rock mass of a tunnel. After generating point cloud data, a deep learning network for crack feature point detection is constructed by optimizing the coordinates, color feature values, normal vectors, and curvature feature information of the point cloud data. Then, using data structure-driven technology, a four-step method of "feature point refinement, feature point growth, crack segment connection, and redundant segment removal" is used to connect the crack feature points to obtain a complete crack. This can more realistically reflect the true state of the crack and is of great significance for the quality evaluation of the surrounding rock mass of the tunnel.

[0187] In the description of this invention, it should be understood that the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of indicated technical features. Therefore, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. In the description of this invention, "a plurality of" means two or more, unless otherwise explicitly specified.

[0188] In this invention, unless otherwise explicitly specified and limited, the terms "installation," "connection," "linking," and "fixing," etc., should be interpreted broadly. For example, they can refer to a fixed connection, a detachable connection, or an integral part; they can refer to a mechanical connection or an electrical connection; they can refer to a direct connection or an indirect connection through an intermediate medium; they can refer to the internal communication of two components or the interaction between two components. Those skilled in the art can understand the specific meaning of the above terms in this invention according to the specific circumstances.

[0189] In this invention, unless otherwise explicitly specified and limited, "above" or "below" the second feature can mean that the first and second features are in direct contact, or that they are in indirect contact through an intermediate medium. Furthermore, "above," "over," or "on top" the second feature can mean that the first feature is directly above or diagonally above the second feature, or simply indicates that the first feature is at a higher horizontal level than the second feature. "Below," "below," or "beneath" the second feature can mean that the first feature is directly below or diagonally below the second feature, or simply indicates that the first feature is at a lower horizontal level than the second feature.

[0190] In the description of this specification, the terms "one embodiment," "some embodiments," "embodiment," "example," "specific example," or "some examples," etc., refer to specific features, structures, materials, or characteristics described in connection with that embodiment or example, which are included in at least one embodiment or example of the present invention. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples. Moreover, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification, as well as the features of different embodiments or examples.

[0191] Although embodiments of the present invention have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting the present invention. Those skilled in the art can make modifications, alterations, substitutions and variations to the above embodiments within the scope of the present invention.

Claims

1. A method for automatically extracting fractures in the surrounding rock mass of a tunnel, characterized in that, include: S100. Obtain measurement information of the tunnel surrounding rock mass according to the close-range photogrammetry method, and obtain point cloud data of the tunnel surrounding rock mass. The point cloud data includes: coordinates, color feature value, normal vector, and curvature of each point on the surface of the tunnel surrounding rock mass. S200. Obtain the gap dataset of the point cloud data using a manual annotation method; S300. Based on the coordinates, color feature values, normal vectors, and curvature in the fracture dataset, different feature combinations are made. A PointNet++ model is constructed for each feature combination. The optimal PointNet++ model is selected, and the first set of fracture feature points of the fracture in the tunnel surrounding rock mass is obtained based on the optimal PointNet++ model. S400. Based on the set of first fracture feature points of the fractures in the surrounding rock mass of the tunnel, the complete fractures of the surrounding rock mass of the tunnel are obtained by using data structure processing. The S400 includes: S410. Calculate the curvature of each feature point in the first set of fracture feature points, and search for the radius of each feature point. r For the neighborhood points within the range, calculate the Laplacian operator, use curvature as the weight to weight the Laplacian operator, obtain new feature points and add them to the second fracture point set, thus obtaining the refined second fracture feature point set; S420. Obtain the set of fracture segment growth points from the refined second fracture feature point set, and connect the fracture growth point set to form different fracture segments to obtain the first fracture segment set. The S420 includes: S421. Select a fracture feature point as a seed point from the refined second fracture feature point set. If the fracture segment where the seed point is located has less than 20 feature points, then select the fracture feature points within 5 times the point cloud density as growth points. If the fracture segment where the seed point is located has more than or equal to 20 fracture feature points, then determine whether the seed point meets the first specified requirement. If it does, then select the seed point as a growth point. The first specified requirement is that the angle θ1 between the starting point to the ending point of the fissure segment where the seed point is located and the vector from the ending point to the growth point is less than the threshold α1, and the angle θ2 between the halfway point to the ending point of the fissure segment where the seed point is located and the vector from the ending point to the growth point is less than the threshold α2. The formula for calculating θ1 is: ; where V S V e is the start point to end point vector, V e V p is the end point to growth point vector; The formula for calculating θ2 is: ; Among them, V 1 / 2 V e V is the vector from the half-point to the endpoint. e V p The vector from the endpoint to the growth point; S422. Select feature points in the second fracture feature point set that do not include those that have grown to the fracture segment as candidate points. Select new growth points from the candidate points for growth until the growth requirements are not met. Repeat the selection of growth points for growth to obtain the first fracture segment set.

2. The method according to claim 1, characterized in that, S100 includes: S110. Based on the measurement information of the tunnel surrounding rock mass obtained by close-range photogrammetry, construct a three-dimensional model of the tunnel surrounding rock mass, and identify the first point cloud data of the surface of the tunnel surrounding rock mass from the three-dimensional model of the tunnel surrounding rock mass. The first point cloud data includes coordinates and color feature values. S120. Calculate the normal vector and curvature of the coordinate points in the first point cloud data to obtain point cloud data. The point cloud data includes the coordinates, color feature value, normal vector, and curvature of each point on the surface of the tunnel surrounding rock mass.

3. The method according to claim 1, characterized in that, S200 includes: S210. Based on the displayed point cloud data, receive manually annotated fracture point information to obtain the first fracture dataset; S220. Use data augmentation to expand the information of each fracture point in the first fracture dataset to obtain the fracture dataset.

4. The method according to claim 3, characterized in that, In step S220, the step of augmenting the information of each fracture point in the first fracture dataset using data augmentation methods includes one or more of the following: The information of each fracture point in the first fracture dataset is magnified or reduced; Rotate the information of each fracture point in the first fracture dataset; The information of each fracture point in the first fracture dataset is translated.

5. The method according to claim 1, characterized in that, The S300 includes: S310. Divide the crack dataset into a training set, a validation set, and a test set; S320. Based on the coordinates, color feature values, normal vectors, and curvature in the crack dataset, perform different feature combinations, construct a PointNet++ model for each feature combination, initialize the model, import the training set into the PointNet++ model, and train the model. S330. Import the validation set data into PointNet++ models with different feature combinations in sequence. Compare the overall accuracy, Kappa coefficient, F1 score, and average intersection-over-union ratio of the PointNet++ models under different feature combinations. The PointNet++ network model with the highest three or more of the four indicators (overall accuracy, Kappa coefficient, F1 score, and average intersection-over-union ratio) is the optimal PointNet++ network model. S340. Import the test set data into the optimal PointNet++ model and output the first set of crack feature points.

6. The method according to claim 5, characterized in that, The combination of features includes: Coordinates, coordinates + curvature, coordinates + normal vector, coordinates + normal vector + curvature, coordinates + color eigenvalue, coordinates + color eigenvalue + curvature, coordinates + color eigenvalue + normal vector, coordinates + color eigenvalue + normal vector + curvature.

7. The method according to claim 1, characterized in that, The S400 also includes: S430. Determine whether any two crack segments in the first crack segment set meet the second specified requirement. If they do, connect the two crack segments and obtain the second crack segment set until any two crack segments in the first crack segment set do not meet the second specified requirement. S440. Measure the length of each fracture segment in the second fracture segment set, and determine whether the length of each fracture segment exceeds a length threshold. If it does not exceed the threshold, delete the fracture segment. The length threshold is 0.5m.

8. The method according to claim 7, characterized in that, The second specified requirement includes: the included angle θ3 between the principal directions of any two fracture segments is less than a threshold α3, wherein the formula for calculating the included angle θ3 is: ; Wherein, P1 and P2 are the principal directions of any two fracture segments; Furthermore, the distance d1 between any two fracture segments is less than the threshold l1, and the formula for calculating the distance d1 is as follows: ; Where (X1, Y1, Z1) and (X2, Y2, Z2) are the coordinates of the two closest endpoints of any two fracture segments.