Storage box grid wallboard thickness measurement method based on adaptive convolution
By using adaptive convolution network and DBSCAN clustering algorithm in the thickness measurement of tank mesh wall panels, combined with the thickness calculation method based on neighboring vectors, efficient and accurate thickness measurement is achieved, and the problem of insufficient measurement speed and accuracy in the prior art is solved.
Patent Information
- Application Number
- CN202510318492.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-18
- Publication Date
- 2025-06-17
AI Technical Summary
The prior art is difficult to quickly and accurately measure the thickness of the tank grid siding in combination with point cloud deep learning technology, resulting in insufficient measurement speed and accuracy.
The target grid point cloud is segmented using 3D point cloud segmentation network (AdConvNet3D) based on adaptive convolution, and combined with the DBSCAN clustering algorithm and the thickness calculation method based on neighborhood vectors, the thickness of the grid point cloud is calculated to obtain the thickness distribution results of the storage tank grid wall panel.
The speed and accuracy of measuring the thickness of the tank grid wall panel is improved, efficient and accurate thickness measurement is achieved, and the problem of insufficient measurement speed and accuracy in the prior art is solved.
Smart Images

Figure CN120163990A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of industrial measurement, and particularly relates to a method for measuring the thickness of a grid wall panel of a storage tank based on adaptive convolution. Background Art
[0002] During the processing and forming of the grid wall panel of the storage tank, due to the need to apply a certain pressure for roll bending to cause a certain deformation of the wall panel, the thickness of the grid wall panel of the storage tank will undergo unpredictable changes during the deformation process, resulting in different grid thicknesses at different positions. Measuring the thickness of the grid wall panel of the storage tank has always been an important topic in the field of industrial measurement. By measuring the thicknesses of multiple grids on the grid wall panel of the storage tank, the thickness distribution of the grid wall panel of the storage tank is obtained, which plays an important role in workpiece manufacturing, quality inspection, deformation monitoring, etc.
[0003] In the manufacturing process of the grid wall panel of the storage tank, the precise control of the wall panel thickness has become a major challenge. An overly thick wall panel will increase unnecessary structural weight, thus affecting the load capacity; an overly thin wall panel may lead to a decrease in the load-bearing capacity of the wall panel under extreme conditions, bringing potential safety hazards and even functional failures. Developing an efficient and reliable thickness measurement technology for the grid wall panel of the storage tank is crucial for ensuring the structural integrity of high-end equipment and enhancing its reliability and safety during operation.
[0004] Although with the development of deep learning technology in the field of point clouds, neural network technology has been widely applied to problems such as point cloud classification and point cloud segmentation in point cloud data processing, there is currently no efficient and feasible solution that combines point cloud deep learning technology to quickly and accurately segment the target grid point cloud of the grid wall panel of the storage tank. Summary of the Invention
[0005] The objective of the technical solution of the present invention is to efficiently calculate the thickness of the target grid point cloud to improve the speed and accuracy of measuring the thickness of the grid wall panel of the storage tank.
[0006] To achieve the above-mentioned invention objective, the technical solution of the present invention provides a method for measuring the thickness of a grid wall panel of a storage tank based on adaptive convolution, including the following steps:
[0007] According to the dimensions such as the curvature, thickness, and grid size of the grid wall panel of the storage tank, combined with the simulation model of the grid wall panel of the storage tank, collect the initial three-dimensional point cloud data, preprocess the initial three-dimensional point cloud data to convert it into a noise-normal vector data set corresponding to the grid wall panel of the storage tank, perform standardization processing on the noise-normal vector data set to obtain a standard data set, and preset a ratio to split it into training samples and test samples;
[0008] Perform annotation on the training samples, and annotate them as class 1 noise points, class 2 grid point clouds, and class 3 non-grid point clouds;
[0009] Construct a 10-dimensional position feature vector from the neighborhood center point in the training sample, the neighborhood points of the neighborhood center point, the neighborhood position vector obtained from the coordinates of the neighborhood center point and its neighborhood points, and the Euclidean distance combination between the neighborhood center point and its neighborhood points. At this time, construct a neighborhood position information point cloud data matrix based on the 10-dimensional position feature vector, perform adaptive convolution and pooling operations on the 10-dimensional position feature vector to obtain a 256-dimensional position feature vector, and transform the neighborhood position information point cloud data matrix according to the 256-dimensional position feature vector to obtain a position feature matrix;
[0010] Construct a 10-dimensional direction feature vector from the normal vector of the neighborhood center point in the training sample, the normal vectors of the neighborhood points of the neighborhood center point, the neighborhood normal vector obtained from the normal vectors of the neighborhood center point and its neighborhood points, and the vertical distance combination between the normal vector of the neighborhood center point and its neighborhood points. At this time, construct a neighborhood direction information point cloud data matrix based on the 10-dimensional direction feature vector, perform adaptive convolution and pooling operations on the 10-dimensional direction feature vector to obtain a 256-dimensional direction feature vector, and transform the neighborhood direction information point cloud data matrix according to the 256-dimensional direction feature vector to obtain a direction feature matrix;
[0011] Construct a 6-dimensional self-feature vector from the three-dimensional coordinates and normal vectors of the three-dimensional points in the training sample, and perform a convolution operation on the 6-dimensional self-feature vector to transform the self-information cloud data matrix corresponding to the 6-dimensional self-feature vector to obtain a spatial feature matrix;
[0012] Concatenate the position feature matrix, the direction feature matrix, and the spatial feature matrix to obtain a feature matrix, and transmit it to the fully connected layer for learning. Perform a pooling operation on the output result of the fully connected layer again to obtain a global feature vector;
[0013] Add the global feature vector to the feature matrix to obtain an output feature matrix. Input the output feature matrix into the fully connected layer mlp to output the probabilities corresponding to class 1 noise points, class 2 grid point clouds, and class 3 non-grid point clouds to obtain the segmentation class result. Then calculate the loss between the model segmentation class result and the actual labeled class, and continuously train the model through the gradient descent method to reduce this loss to obtain the trained AdConvNet3D model;
[0014] Input the test sample into the AdConvNet3D model for segmentation to obtain the target grid point cloud data. Use the DBSCAN clustering algorithm to cluster the target grid point cloud data segmented by the AdConvNet3D model. Combine the preset neighborhood radius, minimum neighborhood point value, and target grid point cloud density to classify the overall segmented target grid point cloud into multiple grid point clouds. Then, use the thickness calculation method based on the neighborhood normal vector to calculate the thickness of the grid point cloud. Utilize the neighborhood normal vector information of the point cloud itself to find the points on the front and back surfaces of the grid point cloud, calculate the projection of the Euclidean distance between the points on the front and back surfaces onto the normal vector, and analyze the error range to obtain the thickness distribution result of the storage tank grid wall panel.
[0015] Preferably, the preprocessing process includes: adding random perturbation values to the three-dimensional coordinates of the three-dimensional points in the initial three-dimensional point cloud data to obtain a noise data set. Taking the three-dimensional point as the center, obtaining the neighborhood point set and neighborhood coordinates within the preset radius range, fitting and constructing a local plane model using the neighborhood point set, and solving to obtain the normal vector of the three-dimensional point to obtain the noise-normal data set. Perform standardization processing on the noise-normal data set to obtain the standardized data set after standardization processing.
[0016] Preferably, given the mean and standard deviation that satisfy the Gaussian distribution, the random perturbation value is randomly sampled from the Gaussian distribution of the mean and standard deviation. The probability density function of the random perturbation value is as follows:
[0017]
[0018] where m is the random perturbation value, μ is the average value, and σ is the standard deviation.
[0019] Preferably, the local plane model satisfies the following formula:
[0020]
[0021] where x c 、y c 、z c are the three-dimensional point coordinates, n x 、n y 、n z are the normal vectors of the three-dimensional point, x i 、y i 、z i are the neighborhood point coordinates in the neighborhood point set corresponding to the three-dimensional point.
[0022] Preferably, the standardization processing includes: obtaining the centroid coordinates, calculating the farthest distance between the random noise point coordinates and the normal vector from the centroid coordinates, and dividing the three-dimensional point coordinates of all points in the noise-normal data set by the farthest distance to achieve the standardization processing.
[0023] Preferably, the generation formula of the convolution kernel in the convolution is as follows:
[0024]
[0025] Wherein, is the value of the i-th row of the output matrix of a single convolution kernel, j represents the j-th data channel, represents the value of the i-th row of the j-th channel of the input data, W j represents the convolution kernel of the j-th channel, and b j represents the bias value.
[0026] The technical solution of the present invention proposes a method for measuring the thickness of the grid wall panel of a storage tank based on adaptive convolution. A 3D Point Cloud Segmentation Network Based on Adaptive Convolution (AdConvNet3D) is designed to segment the target grid point cloud. Then, after the segmented target grid point cloud is classified into multiple grid point clouds by the DBSCAN clustering algorithm, finally, the thickness of the grid point cloud is calculated by the thickness calculation method based on the neighborhood normal vector to obtain the thickness distribution result of the grid wall panel of the storage tank, solving the problem that there is currently no solution to efficiently and feasibly measure the thickness of the grid wall panel of the storage tank by combining point cloud deep learning technology. Description of the Drawings
[0027] Figure 1 is a schematic diagram of the thickness measurement process of the grid wall panel of the storage tank provided by the embodiment of the present invention;
[0028] Figure 2 is a flowchart of a method for measuring the thickness of the grid wall panel of a storage tank based on adaptive convolution provided by the embodiment of the present invention;
[0029] Figure 3 is a structural diagram of the AdConvNet3D model provided by the embodiment of the present invention;
[0030] Figure 4 is a schematic diagram of the production of the adaptive convolution kernel of the AdConvNet3D model provided by the embodiment of the present invention;
[0031] Figure 5 is a schematic diagram of the principle of the thickness calculation method based on the neighborhood normal vector provided by the embodiment of the present invention;
[0032] Figure 6 is a schematic diagram of the accuracy control of the thickness calculation method based on the neighborhood normal vector provided by the embodiment of the present invention. Detailed Embodiments
[0033] The present invention will be further described below in conjunction with specific embodiments. It should be understood that these embodiments are only used to illustrate the present invention and not to limit the scope of the present invention. In addition, it should be understood that after reading the content taught by the present invention, those skilled in the art can make various changes or modifications to the present invention, and these equivalent forms also fall within the scope defined by the appended claims of the present application.
[0034] An example of the thickness measurement of the grid wall panel of the storage tank is as Figure 1 shown. First, the point cloud data of the grid wall panel of the storage tank is obtained by simulation modeling and point cloud acquisition, and then the AdConvNet3D is used to segment the point cloud of the grid wall panel of the storage tank to obtain the target grid point cloud data. Then, the DBSCAN algorithm is used to classify the target grid point cloud into multiple single grid point clouds, and finally, the thickness calculation method based on the neighborhood normal vector is used to calculate the grid thickness.
[0035] As Figure 2 shown, the embodiment of the present invention provides a method for measuring the thickness of the grid wall panel of the storage tank based on adaptive convolution. First, the original point cloud data set of the grid wall panel of the storage tank is constructed and processed; then, the position features and direction features are learned through the adaptive convolution layer, and after feature fusion, the segmentation result of the target grid point cloud is obtained through the MLP layer; then, the DBSCAN clustering method is used to classify the target grid point cloud into multiple grid point clouds; finally, the thickness calculation method based on the neighborhood normal vector is used to calculate the thickness of multiple grid point clouds respectively, and the thickness distribution result of the grid wall panel of the storage tank is obtained. Specifically, it includes the following steps:
[0036] Step 1: According to the curvature, thickness, grid size and other dimensions of the grid wall panel of the storage tank, use ug to model the simulation data of different specifications of the grid wall panel of the storage tank, and use meshlab to collect the initial three-dimensional point cloud data of the simulation data. Through preprocessing, a certain number of noise-normal vector data sets corresponding to the grid wall panel of the storage tank are obtained, the noise-normal vector data sets are standardized to obtain a standard data set, and are divided into training samples and test samples according to a certain proportion. In step 1, the point cloud data is a matrix of N×6, where N represents the number of points in the point cloud, and 6 represents the three-dimensional coordinates and normal vector of each point in the point cloud.
[0037] Specifically, the preprocessing steps of the initial three-dimensional point cloud data are as follows:
[0038] First, 10% noise is added to form a noise data set. First, given a three-dimensional point P x (x, y, z), a random perturbation (m x , m y , m z ) is added to the true value of the coordinates of this three-dimensional point to form a point P x (x c , yc , z c ) = (x + m x , y + m y , z + m z ), where the random perturbation value m x , m y , m z follows a Gaussian distribution.
[0039] Specifically, given two parameters of the Gaussian distribution, the mean (μ) and the standard deviation (σ), the random perturbation m x , m y , m z is randomly sampled from a Gaussian distribution with a mean of μ and a standard deviation of σ, and it satisfies the probability density function shown in Equation (1):
[0040]
[0041] Then, calculate the normal vector for the noisy dataset after adding noise to form a noise-normal dataset. Given a point P x with three-dimensional coordinates (x c , y c , z c ), the normal vector of point P x is (n x , n y , n z ), and the solution process is as follows:
[0042] 1. Select neighborhood points: First, use the k-nearest neighbor (KNN) method to obtain the set of neighborhood points G{P1, P2,....., P x} within the radius r of point P x . The coordinates of the points in the neighborhood point set G are P k (x Gi , y i , z i , z i ).
[0043] 2. Construct a local surface model: Use the neighborhood point set G and construct a local plane model using least squares fitting, which satisfies Equation (2):
[0044]
[0045]
[0046] 3. Calculate the normal vector: Solve the three equations in Equation (2) to find the normal vector of point P x as (n x , n y , nz )。
[0047] To avoid the influence of the translation and size change of the point cloud on the model training process, the noise-normal vector dataset is standardized to form a standard dataset. The standardization process can unify the number of points, control the relative position and size of the point cloud space. The specific steps are as follows: First, calculate the centroid coordinates, then find the farthest distance from the centroid in the point cloud, and finally divide the coordinate values of all points by the farthest distance to make the sizes of the point clouds in the dataset consistent.
[0048] Step 2: Label the training samples in the standard dataset as class 1 noise points, class 2 grid point clouds, and class 3 non-grid point clouds, and design and use the constructed training samples to train the 3D point cloud segmentation network AdConvNet3D with adaptive convolution: Define the structure of the prediction segmentation model, and design a grid structure according to the characteristic that the normal vector changes greatly at the junction of the grid and the stiffener of the storage tank grid wall panel. Calculate the loss between the class output by the model and the actual label, and use the gradient descent method to minimize this loss to the greatest extent, so as to save the model with the best performance during the training process, and use the segmentation result of the test sample as the evaluation criterion to evaluate the segmentation performance of the model.
[0049] The AdConvNet3D model consists of five parts: a position adaptive module, a direction adaptive module, a spatial feature extraction module, a global feature extraction module, and a model output.
[0050] Among them, the role of the position adaptive module is to learn the neighborhood position information of each point cloud, so that the model has the ability to process neighborhood position information. The network structure of the position adaptive module consists of 2 two-dimensional adaptive convolutional layers and a pooling layer, and the setting of the convolutional kernel adapts to the input of different point clouds. The dynamic convolutional kernel generation process is as Figure 4 shown.
[0051] The role of the direction adaptive module is to learn the neighborhood normal vector information of each point cloud, so that the model has the ability to process neighborhood normal vector information. The network structure of the direction adaptive module also consists of 2 two-dimensional adaptive convolutional layers and a pooling layer, and its convolutional process and pooling process are the same as those of the position adaptive module.
[0052] The role of the spatial feature extraction module is to learn the three-dimensional coordinate information and normal vector information of each point cloud itself, so that the model has the ability to process the information of the point cloud itself. The network structure of the spatial feature extraction consists of two one-dimensional convolutional layers.
[0053] The role of the global feature extraction module is to summarize key information from the entire storage tank grid wall panel point cloud, so as to obtain a high-level understanding of the storage tank grid wall panel point cloud and make the AdConvNet3D model more accurately segment the target grid point cloud.
[0054] The model output module predicts the type of each point cloud, predicting the probabilities of each point being a class 1 noise point, a class 2 grid point cloud, and a class 3 non-grid point cloud, so as to obtain the segmentation result of the tank grid wall panel point cloud, and then extract the target grid point cloud according to the segmentation result; the structure of the AdConvNet3D model is as Figure 3 shown.
[0055] The position adaptive module performs convolution and pooling operations on the 10-dimensional position feature vector (p i , p j , p i -p j , d ij ) in the training samples to become a 256-dimensional position feature vector X. At this time, the neighborhood position feature extraction module generates a neighborhood position information point cloud data matrix of (N×K×10) according to the 10-dimensional position feature vector. Among them, p i represents the neighborhood center point in the neighborhood point set G, p j represents the neighborhood point of the neighborhood center point with the neighborhood center point p i as the center, p i -p j represents the neighborhood position vector, which is obtained by the difference between the neighborhood center point p i and the neighborhood point p j of the neighborhood center point, and d ij represents the Euclidean distance from the center point p i coordinates to the neighborhood point p j .
[0056] Figure 4 The 10-dimensional position feature vector (p i , p j , p i -p j , d ij ) in M passes through the ScoreNet network to generate weight coefficients (S1, S2,..., S M ). The weight coefficients are multiplied by and summed with M randomly generated convolution kernels to obtain the dynamic convolution kernel of this point. Compared with randomly generating convolution kernels in the ordinary convolution layer, the adaptive convolution layer adaptively generates convolution kernels according to the input information, thereby improving the segmentation effect of the algorithm.
[0057] A single convolution operation is shown in Equation (3):
[0058]
[0059] Among them, is the value of the i-th row of the single convolution kernel output matrix, j represents the j-th data channel, Denotes the value of the i-th row of the j-th channel of the 10-dimensional position feature vector, W j Denotes the convolutional kernel of the j-th channel, b j Denotes the bias value.
[0060] The pooling operation is as follows:
[0061]
[0062] Among them, X i Denotes the value of the i-th dimension of the output 256-dimensional position feature vector X, Denotes the data of the i-th column of the input (K×256) feature matrix of MaxPool. The result of the max function is the maximum value in the data of the i-th column of the feature matrix. After the convolution and pooling operations, the neighborhood position feature extraction module transforms the (N×K×10) neighborhood position information point cloud data matrix into an (N×256) position feature matrix according to the 256-dimensional position feature vector X m , changing the (N×K×10) neighborhood position information point cloud data matrix into an (N×256) position feature matrix, where K represents the number of neighborhood point clouds.
[0063] The direction adaptive module performs convolution and pooling operations on the 10-dimensional direction feature vector (n i , n j , n i -n j , d (nij) ) in the training sample, and changes it into a 256-dimensional direction feature vector X n . At this time, the neighborhood direction feature extraction module generates an (N×K×10) neighborhood direction information point cloud data matrix according to the 10-dimensional direction feature vector. n i Denotes the normal vector of the neighborhood center point p i of the neighborhood, n j Denotes the normal vector of the neighborhood point with the neighborhood center point p i as the neighborhood center point, n i -n j Denotes the neighborhood normal vector, which is obtained by subtracting the neighborhood center point normal vector n i from the neighborhood point normal vector n j of the neighborhood center point. d (nij) Denotes the perpendicular distance from the neighborhood point p j of the neighborhood center point to the normal vector of the center point n i . After the convolution and pooling operations, the neighborhood direction feature extraction module transforms the (N×K×10) neighborhood direction information point cloud data matrix into an (N×256) direction feature matrix according to the 256-dimensional direction feature vector X n .
[0064] The spatial feature extraction module performs convolution and pooling operations on the 6-dimensional self-feature vector (x, y, z, n x , n y, n z ) Establish a self-information cloud data matrix of (N×6) and perform a convolution operation. The 6D self-feature vector includes the three-dimensional point P x (x, y, z,) and P x The normal vector of the point (n x , n y , n z ), and transform the self-information cloud data matrix into a spatial feature matrix of (N×64).
[0065] The global feature extraction module concatenates the position feature matrix of ([[]] N ×256), the direction feature matrix of (N×256), and the spatial feature matrix of (N×64) to form a feature matrix of (N×576), and passes it through a fully connected layer for learning to obtain a global feature vector of (2048×1). The calculation process is as follows:
[0066] a = ReLU(WX + B) (5)
[0067] Where a represents the output of the fully connected layer, with a shape of (2048×1), W is the weight matrix of the fully connected layer, with a shape of (2048×1024×576), X is the feature matrix input to the fully connected layer, B is the bias matrix of the weight matrix of the fully connected layer, ReLU is the activation function. After passing through the mlp fully connected layer and then through the Max Pool pooling operation of formula (4), a global feature vector of (2048×1) is obtained.
[0068] The model output module adds the global feature vector of (2048×1) to the feature matrix of (N×576) to obtain an output feature matrix of (N×2624), learns it, and then obtains the segmentation result through the softmax function. The calculation process is as follows:
[0069]
[0070] Where (x1, x2, x3, ……, x Q ) represents the output result of the mlp fully connected layer with a shape of (2624, 1024, 256, 64, Q). In this method, Q = 3, and the value of Q can be changed according to different segmentation requirements. P(y = i|x) represents the probability of the output class i given the input (x1, x2, x3, ……, x QUnder the condition of [[ID=]], the model predicts the probabilities of the output being categories 1, 2, and 3. The results obtained in this way ensure that the range of all output values is between (0, 1), and the sum of these values is equal to 1, forming a valid probability distribution. This enables each output to be interpreted as the probability of the corresponding category being predicted. The model is trained using the training samples, the loss between the category output by the model and the actual labeled category is calculated, and the model is continuously trained by the gradient descent method to minimize this loss to the greatest extent. Then, the model is tested using the test set, and the output results of the model are recorded. The output results are three categories: category 1 noise points, category 2 grid point clouds, and category 3 non-grid point clouds. The grid point clouds with the segmentation result of category 2 are separately retained to obtain the target grid point clouds of the test samples.
[0071] Step 3: Classify the target grid point clouds of the segmented test samples using the DBSCAN algorithm. The DBSCAN algorithm has two key parameters: ε (epsilon, neighborhood radius) and MinPts (minimum number of points in the neighborhood). For any point O in the target grid point cloud, its ε-neighborhood N ε (O) is defined as the set of all points whose distance from O does not exceed ε, that is, N ε (O) = {q|dist(O ≤ ε}, where dist() is the distance metric function between two points, usually the Euclidean distance. The algorithm process is as follows:
[0072] 1. Initialization: Select appropriate ε (neighborhood radius) and MinPts (minimum number of points) as input parameters.
[0073] 2. For each unvisited point O in the dataset, perform the following operations:
[0074] Calculate the ε-neighborhood Nε(O) of point O.
[0075] If |N ε (O)| < MinPts, then mark point O as a noise point.
[0076] If |N ε (O)| ≥ MinPts, then mark point O as a core point and start a new cluster.
[0077] 3. Expand the cluster: For the newly identified core point O, examine each point in its ε-neighborhood. If the point has not been assigned to any cluster, add it to the current cluster and recursively check the ε-neighborhood of this newly added point. Continue this process until no more points can be added to the current cluster.
[0078] 4. Repeat steps 2 and 3 until all points have been visited.
[0079] 5. Output: The finally formed set of cluster categories and the identified noise points.
[0080] Use the above DBSCAN clustering algorithm to classify the overall target grid point cloud obtained by AdConvNet3D segmentation into multiple single grid point clouds. The multiple single grid point clouds are as Figure 1 shown, thus laying the foundation for subsequent thickness calculation.
[0081] Step 4: Use the thickness calculation method based on the neighborhood normal vector to calculate the thickness of multiple grid point clouds obtained by the DBSCAN clustering algorithm respectively, and obtain the thickness distribution result of the tank grid wall panel. In Step 4, utilize the neighborhood normal vector information of the point cloud itself to find the points on the front and back surfaces of the grid point cloud, and then calculate the projection of the Euclidean distance between two points on the normal vector through mathematical methods, and analyze the error range to obtain the thickness calculation result of the tank grid wall panel. The specific steps are as follows:
[0082] As Figure 5 shown, in the figure, A represents the point closest to the centroid point of the grid point cloud, n represents the normal vector of A, the straight line L is the straight line determined by point A and its normal vector n, d represents the thickness of the grid point cloud, B represents the point on the grid surface closest to the straight line L, A` represents the intersection point of the straight line L and the outer cylindrical surface, and L AB represents the Euclidean distance from A to B, and β represents the angle between the straight line AB and the straight line L. The calculation process is as follows:
[0083] 1. Determine point A: Calculate the centroid point of the grid point cloud and find the point A closest to the centroid to ensure that the calculated thickness represents the central thickness of the grid point cloud.
[0084] 2. Determine the straight line L: n is the normal vector of A (n Ax , n Ay , n Az ), and the coordinates of A are (x A , y A , z A ), then the expression of the straight line L is as follows:
[0085] L(t) = L0 + tn (7)
[0086] where L0 = (x A , y A , z A ), t represents the coordinates of any point on the straight line L, and L(t) represents the position vector of any point on the straight line.
[0087] 3. Exclude the angle to determine point B: Find all points whose distance from the straight line L is less than r, as Figure 5As shown by the red circle, calculate the angles formed by the vectors between these points and point A and the straight line L, and find the point with the smallest angle β, which is point B. Since the angle formed with the grid surface points is almost 90°, and the angle formed with the grid surface points is almost close to 0°, the point B on the grid surface that is closest to the straight line L is the point with the smallest angle.
[0088] 4. Calculate L AB : Calculate the Euclidean distance from A to point B.
[0089] 5. Calculate d1: As Figure 5 shown, d1 = L AB ·cosβ.
[0090] Since the curvature of the grid wall of the storage tank is infinitely large relative to the distance between A` and B, it can be considered that A` and B are in the same plane. Approximately processing d≈d1, the thickness of the grid point cloud is approximately d1.
[0091] From Figure 5 it can be seen that the error θ = d - d1. When the distance from point B to the straight line L is the largest, the error reaches the maximum. From the third step in the calculation process, the maximum distance r from point B to the straight line L, then from Figure 6 it can be seen that the maximum error θ max satisfies the following formula:
[0092]
[0093] where R is the radius of the cylindrical surface of the grid wall of the storage tank. Since the grid wall of the storage tank is a large component, its radius is generally above 1000mm. In actual engineering applications, the error value of its thickness measurement is generally required to be within 0.2mm. When θ max = 0.2mm and R = 1000mm, then r max = 19.997mm can be calculated, and r max increases as R increases. Therefore, when R = 1000mm, searching for point B within the range of 19.997mm of the straight line L can ensure that the error is within 0.2mm.
[0094] The method for measuring the thickness of the grid wall panel of the storage tank based on adaptive convolution in the embodiment of the present invention improves the working efficiency of measuring the thickness of the grid wall panel of the storage tank. According to the characteristic that the normal vector changes greatly at the junction of the grid and the stiffener of the grid wall panel of the storage tank, a 3D point cloud segmentation network based on adaptive convolution (AdConvNet3D model) is designed, and it is connected with the DBSCAN clustering method and the thickness calculation method based on the neighborhood normal vector to realize the thickness measurement of the grid wall panel of the storage tank. The AdConvNet3D model efficiently segments the target grid point cloud from the point cloud of the grid wall panel of the storage tank by using the direction adaptive convolution layer. The DBSCAN clustering method classifies the segmented target grid point cloud into multiple grid point clouds. Finally, the thickness calculation method based on the neighborhood normal vector uses the mathematical mechanism to calculate the thickness of multiple grid point clouds respectively, and obtains the thickness measurement result of the grid wall panel of the storage tank. This combination effectively improves the speed and accuracy of measuring the thickness of the grid wall panel of the storage tank.
Claims
1. A method for measuring the thickness of a tank grid wall based on adaptive convolution, characterized in that: The following steps are involved: According to the curvature, thickness, grid size and other dimensions of the tank grid wall, combined with the simulation model of the tank grid wall, the initial three-dimensional point cloud data is collected, and the initial three-dimensional point cloud data is pre-processed and converted into a noise-normal vector data set corresponding to the tank grid wall. The noise-normal vector data set is standardized to obtain a standard data set, and is split into training samples and test samples at a preset ratio; The training samples are labeled as category 1 noise points, category 2 grid point clouds, and category 3 non-grid point clouds; A 10-dimensional position feature vector is constructed by combining the neighborhood center point in the neighborhood point set in the training sample, the neighborhood point of the neighborhood center point, the neighborhood point of the neighborhood center point, the neighborhood position vector obtained according to the coordinates of the neighborhood center point and the neighborhood point of the neighborhood center point, and the Euclidean distance between the neighborhood point of the neighborhood center point. At this time, a neighborhood position information point cloud data matrix is constructed according to the 10-dimensional position feature vector, and the 10-dimensional position feature vector is adaptively convolved and pooled to obtain a 256-dimensional position feature vector. The neighborhood position information point cloud data matrix is converted according to the 256-dimensional position feature vector to obtain a position feature matrix. A 10-dimensional directional feature vector is constructed by combining the normal vector of the neighborhood center point in the training sample, the normal vector of the neighborhood point with the neighborhood center point, the neighborhood normal vector vector obtained according to the normal vector of the neighborhood center point and the normal vector of the neighborhood point, and the vertical distance between the normal vector of the neighborhood center point and the normal vector of the neighborhood point. At this time, a neighborhood directional information point cloud data matrix is constructed according to the 10-dimensional directional feature vector, and the 10-dimensional directional feature vector is adaptively convolved and pooled to obtain a 256-dimensional directional feature vector. The neighborhood directional information point cloud data matrix is converted according to the 256-dimensional directional feature vector to obtain a directional feature matrix; The three-dimensional coordinates and the normal loss of the three-dimensional points in the training samples are combined to construct a six-dimensional self-feature vector, and the six-dimensional self-feature vector is convolved so that the self-information cloud data matrix corresponding to the six-dimensional self-feature vector is transformed into a spatial feature matrix; The feature matrix obtained by concatenating the position feature matrix, the direction feature matrix and the spatial feature matrix is transmitted to the fully connected layer for learning, and the output result of the fully connected layer is pooled again to obtain the global feature vector; The global feature vector is added to the feature matrix to obtain the output feature matrix, and the output feature matrix is input to the fully connected layer mlp to output the probabilities corresponding to category 1 noise points, category 2 grid point clouds, and category 3 non-grid point clouds to obtain the segmentation category results. Then, the loss between the model segmentation category results and the actual labeled categories is calculated, and the model is continuously trained by the gradient descent method to reduce the loss and obtain the trained AdConvNet3D model. The test samples are input into the AdConvNet3D model for segmentation to obtain the target grid point cloud data. The DBSCAN clustering algorithm is used to cluster the target grid point cloud data segmented by the AdConvNet3D model. The segmented target grid point cloud is classified into multiple grid point clouds as a whole based on the preset neighborhood radius, the minimum neighborhood point value and the target grid point cloud density. The thickness of the grid point cloud is calculated using the thickness calculation method based on the neighborhood normal vector. The points on the front and rear surfaces of the grid point cloud are found using the neighborhood normal vector information of the point cloud itself. The projection of the Euclidean distance between the points on the front and rear surfaces on the normal vector is calculated, and the error range is analyzed to obtain the distribution result of the tank grid wall thickness.
2. A method for measuring tank grid wall thickness based on adaptive convolution as claimed in claim 1, characterized in that: The preprocessing process includes: adding random disturbance values to the three-dimensional coordinates of the three-dimensional points in the initial three-dimensional point cloud data to obtain a noise data set, taking the three-dimensional point as the center of the circle, obtaining a neighborhood point set and neighborhood coordinates within a preset radius, using the neighborhood point set to fit and construct a local plane model, and solving the normal vector of the three-dimensional point to obtain a noise-normal vector data set, and standardizing the noise-normal vector data set to obtain a standard data set after standardization.
3. The method for measuring tank grid wall thickness based on adaptive convolution as claimed in claim 1, characterized in that: Given a mean and standard deviation that satisfy a Gaussian distribution, the random perturbation value is randomly sampled from the Gaussian distribution of the mean and standard deviation, and the probability density function of the random perturbation value is as follows: Among them, m is the random disturbance value, μ is the mean value, and σ is the standard deviation.
4. The method for measuring tank grid wall thickness based on adaptive convolution as claimed in claim 1, characterized in that: The local plane model satisfies the following formula: Among them, x c ,y c 、z c is the coordinate of the three-dimensional point, n x 、n y 、n z is the normal vector of the three-dimensional point, x i ,y i 、z i is the coordinates of the neighborhood points in the neighborhood point set corresponding to the three-dimensional point.
5. The method for measuring tank grid wall thickness based on adaptive convolution as claimed in claim 1, characterized in that: The standardization process includes: obtaining the centroid coordinates, calculating the farthest distance between the random noise point coordinates and the normal vector and the centroid coordinates, and dividing the three-dimensional point coordinates of all points in the noise-normal vector data set by the farthest distance to achieve the standardization process.
6. The method for measuring tank grid wall thickness based on adaptive convolution as claimed in claim 1, characterized in that: The generation formula of the convolution kernel in the convolution is as follows: in, is the value of the i-th row of the single convolution kernel output matrix, j represents the j-th data channel, Represents the value of the i-th row of the j-th channel of the input data, W j represents the convolution kernel of the jth channel, b j Indicates the offset value.