Railway track feature extraction method and system

By preprocessing the railway track point cloud data and building a feature extraction model, the problems of low accuracy and high cost of railway track feature extraction in the prior art are solved, and more efficient track feature extraction and lower cost are achieved.

CN119884707AActive Publication Date: 2025-04-25GUANGDONG UNIV OF TECH

Patent Information

Application Number
CN202411882582.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-19
Publication Date
2025-04-25
Estimated Expiration
2044-12-19

Smart Images

  • Figure CN119884707A_ABST
    Figure CN119884707A_ABST
Patent Text Reader

Abstract

The invention discloses a railway track feature extraction method and system, and relates to the technical field of deep learning and point cloud data processing. The method comprises the following steps: acquiring railway track point cloud data, and preprocessing the railway track point cloud data; constructing a railway track feature extraction model, wherein the railway track feature extraction model comprises an input module, an encoder module, a decoder module and a railway track feature classification module; and utilizing the railway track feature extraction model to extract railway track features according to the preprocessed track image data, performing railway track classification according to the extracted railway track features, and outputting a classification result. By means of the method, the adaptability to the track and non-track data category imbalance problem can be effectively improved, global and local features are captured at the same time, the dependency relationship between different channels is effectively established, the track feature extraction precision is improved, and the track extraction cost is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of deep learning and point cloud data processing, and in particular to a railway track feature extraction method and system. Background Art

[0002] With the rapid expansion of the global railway network, the demand for track maintenance is increasing year by year. Therefore, the development of railway track detection technology is particularly important. At present, traditional manual detection methods can no longer meet the needs of modern railway maintenance complexity. Existing methods propose two-dimensional image methods and three-dimensional point cloud methods.

[0003] In the two-dimensional image method, track detection is performed through the collected railway track point cloud data. For example, DeepLabV3+ is a semantic segmentation model based on deep learning. It performs well in image segmentation tasks and can classify each pixel in the image to determine its category (such as railway track, background, etc.). The model mainly consists of two parts: encoder and decoder. The encoder usually uses a deep convolutional neural network (such as ResNet, Xception, etc.) to extract image features with different resolutions and semantic levels. The decoder is responsible for upsampling and fusing the features extracted by the encoder to restore the original resolution of the image and generate the final segmentation result. However, this method has limitations in capturing the three-dimensional structural information of the track and has poor adaptability to the imbalance problem of track and non-track data categories.

[0004] In the 3D point cloud method, point cloud segmentation-based technology is usually used, such as the PointNet series: directly processing unordered point cloud data, learning point features through a multi-layer perceptron (MLP), and realizing point cloud classification and segmentation. PointNet++ introduces a hierarchical feature learning structure based on PointNet, which improves the segmentation capability of complex point clouds. However, this method still has problems in feature extraction, classification accuracy, and data imbalance processing, such as difficulty in simultaneously capturing global and local features, establishing dependencies between different channels, resulting in low track feature extraction accuracy, low processing efficiency for multi-source data, and being greatly affected by color feature errors. Summary of the invention

[0005] In order to overcome the shortcomings of the above-mentioned existing track extraction technology, the purpose of the present invention is to propose a railway track feature extraction method and system, which can effectively improve the adaptability to the imbalance problem of track and non-track data categories, so as to capture global and local features at the same time, and effectively establish the dependency relationship between different channels, thereby improving the accuracy of track feature extraction and reducing the track extraction cost.

[0006] To achieve the purpose of the present invention, the present invention adopts the following technical solutions:

[0007] A railway track feature extraction method, the method comprising the following steps:

[0008] Acquire railway track point cloud data, and preprocess the railway track point cloud data;

[0009] Constructing a railway track feature extraction model, wherein the railway track feature extraction model includes an input module, an encoder module, a decoder module and a railway track feature classification module;

[0010] The railway track feature extraction model is used to extract railway track features according to the preprocessed track point cloud data, and the railway track is classified according to the extracted railway track features, and the classification result is output.

[0011] In the above technical scheme, data preprocessing is performed on the acquired initial point cloud data of the casing, which can improve the practicability and reliability of the data and reduce data errors; by constructing a railway track feature extraction model that can effectively grasp the changes in railway track point cloud data, and then using the constructed model to extract track features, it is possible to effectively improve the adaptability to the imbalance problem of track and non-track data categories, so as to capture global and local features at the same time, and effectively establish dependencies between different channels, thereby improving the accuracy of track feature extraction and reducing track extraction costs.

[0012] Furthermore, the process of preprocessing the railway track point cloud data includes:

[0013] Crop and reduce noise on the acquired railway track point cloud data;

[0014] The railway track point cloud data after cropping and denoising is divided into training set, validation set and test set.

[0015] In the above technical solution, the obtained railway track point cloud data is cropped and denoised, which can improve the practicality and reliability of the data, reduce data errors, and improve computing efficiency.

[0016] Furthermore, the training set is input into the railway track feature extraction model, and several rounds of iterative optimization training are set to iteratively optimize the parameters of the railway track feature extraction model. The process includes:

[0017] The input module is used to divide the original point cloud data in the training set into several non-overlapping data blocks;

[0018] The encoder module extracts multi-scale features of the original point cloud data based on several non-overlapping data blocks;

[0019] The decoder module restores the point cloud resolution based on the multi-scale features and classifies track points and non-track points based on the restored point cloud resolution;

[0020] The railway track feature classification module generates a labeled point cloud consistent with the input point cloud based on the track points and non-track points obtained by classification, and classifies the railway track based on the labeled point cloud; wherein the classification results include track and non-track;

[0021] The test set is used to test the railway track feature extraction model after each round of training, the validation set is used to verify the classification results of each round of testing, and the loss function is set to optimize the parameters of the railway track feature extraction model after each round of training. When the iterative round is set to end or the loss function converges, the trained railway track feature extraction model is obtained.

[0022] In the above technical solution, the constructed railway track feature extraction model is divided into modules according to different functions, and the training set is used to iteratively optimize and train each module in the model, so that the trained railway track feature extraction model can effectively grasp the changes in railway track point cloud data, thereby effectively improving the adaptability to the imbalance problem of track and non-track data categories, so as to capture global and local features at the same time, and effectively establish dependencies between different channels, thereby improving the accuracy of track feature extraction and reducing track extraction costs.

[0023] Furthermore, the process of using the input module to divide the original point cloud data in the training set into a number of non-overlapping data blocks includes:

[0024] The track neighborhood range is calculated based on the original point cloud data, and the track category weight is calculated based on the track neighborhood range. The expression is:

[0025]

[0026] A number of random points are selected and the orbital neighborhood range of each point is calculated. A number of points are selected within the orbital neighborhood range of each point to be combined into a data block, and a number of non-overlapping data blocks are obtained. Data normalization is performed on the non-overlapping data blocks.

[0027] Furthermore, the process of dividing the point cloud data into blocks according to the calculated track category weights includes:

[0028] Randomly select a center point C from the point cloud data X ,C Y ,C z );

[0029] According to the center point C is set at the boundary of the data block, the expression is:

[0030]

[0031] Randomly select several data points within the data block boundary, and for each data point pi = (x i ,y i ,z i ,f i ) to normalize the coordinates, the expression is:

[0032]

[0033] Adjust the coordinates of the data point relative to the center of the data block. The expression is:

[0034] ΔX i =X i -C X

[0035] ΔY i =Y i -C Y

[0036] Where ΔX i , ΔY i , Both represent non-overlapping data blocks.

[0037] In the above technical solution, the original point cloud is divided into multiple non-overlapping data blocks through the input module and standardized to reduce the consumption of GPU resources, thereby improving the training efficiency of the model and the feature extraction accuracy of the model.

[0038] Further, the process of extracting multi-scale features of the original point cloud data according to a number of non-overlapping data blocks by the encoder module includes:

[0039] The encoder module includes a triple set abstract submodule and a plurality of basic set abstract submodules connected in sequence;

[0040] The triplet set abstraction submodule includes a sampling layer, a multi-layer perceptron layer, several parallel processing units, and a maximum pooling layer;

[0041] The farthest point sampling is performed on several non-overlapping data blocks through the sampling layer, and the sampled points are combined into a point set;

[0042] A multi-layer perceptron is used to upgrade the feature dimension of the point set, and several parallel processing units are used to construct the correlation features between the global features, local features and general features in the point cloud.

[0043] A multi-layer perceptron layer is used to perform feature dimensionality upgrade on the constructed associated features, and a maximum pooling layer is used to perform maximum pooling processing on the upgraded associated features to obtain multi-scale features of the original point cloud data.

[0044] In the above technical solution, the triplet set abstract submodule can enhance the interaction between global and local features by constructing the dependency relationship between point dimension, local neighborhood sampling dimension and feature dimension, thereby improving the ability to distinguish between track points and non-track points; several basic set abstract submodules can be combined with the triplet set abstract submodule to perform multi-scale feature extraction to effectively establish the dependency relationship between different channels, thereby improving the accuracy of track feature extraction and reducing the cost of track extraction.

[0045] Furthermore, the process of the decoder module restoring the point cloud resolution based on the multi-scale features includes:

[0046] The decoder module includes a plurality of feature propagation units and skip connection units;

[0047] Use several feature propagation units to perform linear interpolation on the three nearest points of each point in the multi-scale feature, and upsample the points;

[0048] The upsampled features are added by using a skip connection unit, and the added feature dimensions are reduced by using a multi-layer perceptron layer to obtain the restored point cloud resolution.

[0049] In the above technical solution, several feature propagation units and jump connection units can effectively restore the point cloud resolution and achieve accurate classification of track points and non-track points.

[0050] Furthermore, the process of setting the loss function to optimize the parameters of the railway track feature extraction model after each round of training includes:

[0051] Count the number of points n in orbitals and non-orbitals i , according to the number of points n i Calculate the initial weights w of orbitals and non-orbitals i , the expression is:

[0052]

[0053] Among them, max(n) represents the maximum number of samples in all categories;

[0054] The logarithmic function plus the bias is used to adjust the weight distribution and optimize the loss function. The expression is:

[0055] w i ′ =ln(w i +1)

[0056] L=-[w ′ pos ·y ln(p)+w ′ neg·(1-y)ln(1-p)]

[0057] Among them, w i ′ represents the scaled weight, w ′ pos represents the positive category weight, w ′ neg represents the negative category weight, y represents the true label of the sample, and p represents the probability that the model predicts that the sample belongs to the positive category.

[0058] In the above technical solution, the set loss function can address the problem of imbalanced track data categories by calculating the weight of each category, enhancing the model's attention to track categories and effectively reducing misclassification.

[0059] Furthermore, the decoupled weight decay optimizer AdamW is set to optimize the parameters of the railway track feature extraction model in the iterative optimization training process. The expression is:

[0060]

[0061] Among them, η represents the learning rate, represents the momentum estimate of the gradient, and ∈ represents a smoothing term to prevent the denominator from being zero.

[0062] In the above technical solution, the use of AdamW optimizer can solve the overfitting problem of the model on small sample data sets in the track extraction task and improve the generalization ability of the model.

[0063] A railway track feature extraction system, the system comprising:

[0064] A data acquisition module, used to acquire railway track point cloud data;

[0065] A data processing module, used for preprocessing the railway track point cloud data;

[0066] A model building module, used to build a railway track feature extraction model, wherein the railway track feature extraction model includes an input module, an encoder module, a decoder module and a railway track feature classification module;

[0067] The railway track feature extraction module is used to extract railway track features according to the preprocessed track point cloud data using the railway track feature extraction model, and classify the railway track according to the extracted railway track features, and output the classification results.

[0068] Compared with the prior art, the present invention has the following beneficial effects:

[0069] The present invention proposes a railway track feature extraction method and system, which can improve the practicability and reliability of data and reduce data errors by performing data preprocessing on the acquired initial point cloud data of the casing; by constructing a railway track feature extraction model that can effectively grasp the changes in railway track point cloud data, and then using the constructed model to extract track features, the adaptability to the imbalance problem of track and non-track data categories can be effectively improved, so as to capture global and local features at the same time, and effectively establish the dependency relationship between different channels, thereby improving the accuracy of track feature extraction and reducing the track extraction cost. BRIEF DESCRIPTION OF THE DRAWINGS

[0070] Figure 1 A flow chart of the steps of a railway track feature extraction method provided in an embodiment of the present application;

[0071] Figure 2 A framework diagram of a railway track feature extraction model provided in an embodiment of the present application;

[0072] Figure 3 A schematic diagram of the principle of the input module provided in the embodiment of the present application;

[0073] Figure 4 A structural diagram of the triple attention set abstract module provided for an embodiment of the present application;

[0074] Figure 5 A schematic diagram of the principle of a decoder module provided in an embodiment of the present application;

[0075] Figure 6 A schematic diagram of the principle of a railway track feature classification module provided in an embodiment of the present application;

[0076] Figure 7 A schematic diagram of a simple scene track extraction result in an experiment provided in an embodiment of the present application;

[0077] Figure 8 A second schematic diagram of complex scene trajectory extraction results in the experiment provided in the embodiment of the present application;

[0078] Fig. 9 A comparison diagram of local details of the model in the easily misclassified area in the complex scene in the experiment provided in the embodiment of the present application;

[0079] Fig.10 A schematic diagram of the structure of a railway track feature extraction system provided in an embodiment of the present application. DETAILED DESCRIPTION

[0080] In order to facilitate the understanding of the present invention, the present invention will be described more fully below with reference to the relevant drawings. Preferred embodiments of the present invention are provided in the drawings. However, the present invention can be implemented in many different forms and is not limited to the embodiments described herein. On the contrary, the purpose of providing these embodiments is to make the understanding of the disclosure of the present invention more thorough and comprehensive.

[0081] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as those commonly understood by those skilled in the art of the present invention. The terms used herein in the specification of the present invention are only for the purpose of describing specific embodiments and are not intended to limit the present invention. The term "and / or" used herein includes any and all combinations of one or more related listed items.

[0082] Embodiment 1:

[0083] This embodiment provides a railway track feature extraction method. Figure 1 , the method comprises the following steps:

[0084] Step S1: Acquire railway track point cloud data, and pre-process the railway track point cloud data;

[0085] Step S2: constructing a railway track feature extraction model, wherein the railway track feature extraction model includes an input module, an encoder module, a decoder module and a railway track feature classification module;

[0086] Step S3: extracting railway track features according to the preprocessed track point cloud data using the railway track feature extraction model, classifying the railway track according to the extracted railway track features, and outputting the classification results.

[0087] In step S1, the process of preprocessing the railway track point cloud data includes:

[0088] Obtain railway track point cloud data through laser radar, and perform cropping and noise reduction on the obtained railway track point cloud data;

[0089] The railway track point cloud data after cropping and denoising is divided into training set, validation set and test set.

[0090] It can be understood that cropping and denoising the acquired railway track point cloud data can improve the practicality and reliability of the data, reduce data errors, and improve computing efficiency.

[0091] In step S2, see Figure 2 , input the training set into the railway track feature extraction model, and set several rounds of iterative optimization training to iteratively optimize the parameters of the railway track feature extraction model, the process includes:

[0092] Step S21: using the input module to divide the original point cloud data in the training set into a number of non-overlapping data blocks;

[0093] Step S22: the encoder module extracts multi-scale features of the original point cloud data according to a number of non-overlapping data blocks;

[0094] Step S23: the decoder module restores the point cloud resolution according to the multi-scale features, and classifies track points and non-track points according to the restored point cloud resolution;

[0095] Step S24: the railway track feature classification module generates a labeled point cloud consistent with the input point cloud based on the track points and non-track points obtained by classification, and classifies the railway track based on the labeled point cloud; wherein the classification result includes track and non-track;

[0096] Step S25: Use the test set to test the railway track feature extraction model after each round of training, use the verification set to verify the classification results of each round of testing, and set the loss function to optimize the parameters of the railway track feature extraction model after each round of training. When the iterative round is set to end or the loss function converges, the trained railway track feature extraction model is obtained.

[0097] Specifically, the railway track feature extraction model described in this embodiment adopts the TripletA-Net model.

[0098] In this embodiment, the railway track feature classification module is an output module of the railway track feature extraction model.

[0099] It can be understood that the constructed railway track feature extraction model is divided into modules according to different functions, and the training set is used to iteratively optimize the various modules in the model, so that the trained railway track feature extraction model can effectively grasp the changes in railway track point cloud data, thereby effectively improving the adaptability to the imbalance problem of track and non-track data categories, so as to capture global and local features at the same time, and effectively establish dependencies between different channels, thereby improving the accuracy of track feature extraction and reducing track extraction costs.

[0100] As a preferred embodiment, in step S21, see Figure 2 and Figure 3 ,The process of using the input module to divide the original point cloud data in the training set into several non-overlapping data blocks includes:

[0101] The track neighborhood range is calculated based on the original point cloud data, and the track category weight is calculated based on the track neighborhood range. The expression is:

[0102]

[0103] A number of random points are selected and the orbital neighborhood range of each point is calculated. A number of points are selected within the orbital neighborhood range of each point to be combined into a data block, and a number of non-overlapping data blocks are obtained. Data normalization is performed on the non-overlapping data blocks.

[0104] In this embodiment, after the model obtains the input of the original point cloud, it calculates the maximum value of the X, Y, and Z coordinates of the point cloud in the scene to obtain the range of the scene, and dynamically adjusts the weight w of the category according to the label of the point cloud and the number of points corresponding to the label. i :

[0105]

[0106] Among them, max(n) is the maximum number of samples in all categories.

[0107] Finally, the logarithmic function plus the bias is used to adjust the weight distribution, and the adjusted weight can be obtained:

[0108] w i ′ =ln(w i +1)

[0109] Then, we randomly select some point clouds in the scene as the center point, and use the farthest point sampling (FPS) to sample N=8192 points in its X,Y neighborhood (3m×3m) as a data block. Then, we normalize the point cloud coordinates and normalize the intensity features of the point cloud.

[0110] Specifically, see Figure 3 ,The process of segmenting point cloud data according to the calculated track category weights includes:

[0111] Randomly select a center point C from the point cloud data X ,C Y ,C z );

[0112] According to the center point C is set at the boundary of the data block, the expression is:

[0113]

[0114] A number of data points are randomly selected within the boundary of the data block (in this embodiment, 8192 points are randomly selected within the boundary), and for each data point pi=(x i ,y i ,z i ,f i ) to normalize the coordinates, the expression is:

[0115]

[0116] Adjust the coordinates of the data point relative to the center of the data block. The expression is:

[0117] ΔX i =X i -C X

[0118] ΔY i =Y i -C Y

[0119] Where ΔX i , ΔY i , Both represent non-overlapping data blocks.

[0120] It can be understood that the original point cloud is divided into multiple non-overlapping data blocks and standardized through the input module to reduce the consumption of GPU resources, thereby improving the training efficiency of the model and the feature extraction accuracy of the model.

[0121] As a preferred embodiment, in step S22, the process of the encoder module extracting multi-scale features of the original point cloud data according to a plurality of non-overlapping data blocks includes:

[0122] The encoder module includes a triple set abstract submodule and a plurality of basic set abstract submodules connected in sequence;

[0123] The triplet set abstraction submodule includes a sampling layer, a multi-layer perceptron layer, several parallel processing units, and a maximum pooling layer;

[0124] The farthest point sampling is performed on several non-overlapping data blocks through the sampling layer, and the sampled points are combined into a point set;

[0125] A multi-layer perceptron is used to upgrade the feature dimension of the point set, and several parallel processing units are used to construct the correlation features between the global features, local features and general features in the point cloud.

[0126] A multi-layer perceptron layer is used to perform feature dimensionality upgrade on the constructed associated features, and a maximum pooling layer is used to perform maximum pooling processing on the upgraded associated features to obtain multi-scale features of the original point cloud data.

[0127] Specifically, see Figure 4In the triplet set abstraction submodule (TASA), TASA takes an N×4 (N is the number of input point clouds, and 4 is the coordinates X, Y, Z and intensity information of the point cloud) matrix as input. First, it passes through a sampling layer, which reduces the number of points to N / 8 through the farthest point sampling to reduce the computer memory usage. Then, through the ball query method, 256 points are found for each point to combine and construct a local area. After sampling and combination, N / 8 point sets are obtained, each of which contains 256 points and their 4 attribute matrices of size N / 8×256×4. The obtained point set is passed through a layer of MLP layer to increase the features from 4 dimensions to 64 dimensions, and the resulting matrix size is N / 8×256×32. Subsequently, the mutual dependence relationship between these three dimensions is constructed through the triplet attention module, which does not change the matrix size. The output of the constructed mutual relationship is passed through two layers of MLP layers to increase the feature dimension to 64 dimensions, and finally passed through a maxpool layer (maximum pooling layer). The module structure is as follows Figure 2 The main difference between BSA and TASA is whether it has a triple attention module. Secondly, the downsampling ratio is changed from 1 / 8 to 1 / 4, the number of point sets is changed from 256 to 64, 32, 32, and the output feature dimension is changed from 64 to 128, 256, and 512 dimensions.

[0128] Specifically, the triplet attention module includes three parallel processing units. In the first branch, the point dimension Npoint of the input tensor is permuted with the local neighborhood sampling dimension Nsample to obtain a tensor Nsample×Npoint×C+D. Then, a relationship between the local neighborhood sampling dimension Nsample and the feature dimension C+D is established through a layer of maximum pooling of dimension 0 and a layer of average pooling of dimension 0, respectively. At this time, the dimension is reduced to 2×Nsample×C+D, and then the attention weights are generated through the convolution layer and the Sigmoid activation layer and applied to the original tensor. Subsequently, the tensor is permuted to return to its original shape. In the second branch, the input tensor point dimension Npoint and the feature dimension C+D are permuted to obtain a tensor C+D×Nsample×Npoint. The relationship between the neighborhood sampling dimension Nsample and the point dimension Npoint is established, and the processing steps are similar to the first branch. The original tensor is not permuted, and the relationship between the local neighborhood sampling dimension Nsample and the point feature dimension C+D is constructed to form the third branch. Finally, the attention weighted tensors generated by the three branches are fused by simple averaging to construct the global features, local features, and interdependencies between features of the point cloud.

[0129] It can be understood that the triplet set abstract submodule can enhance the interaction between global and local features by constructing the dependency between point dimension, local neighborhood sampling dimension and feature dimension, thereby improving the ability to distinguish between track points and non-track points; several basic set abstract submodules can be combined with the triplet set abstract submodule to perform multi-scale feature extraction to effectively establish the dependency between different channels, thereby improving the accuracy of track feature extraction and reducing the cost of track extraction.

[0130] As a preferred embodiment, in step S23, the process of the decoder module restoring the point cloud resolution according to the multi-scale features includes:

[0131] The decoder module includes a plurality of feature propagation units and skip connection units;

[0132] Use several feature propagation units to perform linear interpolation on the three nearest points of each point in the multi-scale feature, and upsample the points;

[0133] The upsampled features are added by using a skip connection unit, and the added feature dimensions are reduced by using a multi-layer perceptron layer to obtain the restored point cloud resolution.

[0134] Specifically, see Figure 5 The decoder module includes four feature propagation modules (Feature Propagation). The input of the first layer comes from the output of the encoder (N / 512×512), where N / 512 is the number of points of the area downsampling and 512 is the dimension of the feature. First, the input data is linearly interpolated using the three nearest points of each point, the number of points is upsampled to N / 128, and then the feature dimension is added using the data of the jump connection to obtain a feature dimension of 768. Finally, a layer of MLP is used to reduce the feature dimension to 256 dimensions, and the output of the first layer of feature propagation module is obtained (N / 128×256); the structures of the following three layers are the same, but the dimension transformation is different.

[0135] It can be understood that several feature propagation units and skip connection units can effectively restore the point cloud resolution and achieve accurate classification of track points and non-track points.

[0136] As a preferred embodiment, in step S24, see Figure 6 , the railway track feature classification module generates a labeled point cloud with the same size as the input point cloud, and the classification result is track or non-track.

[0137] As a preferred embodiment, in step S25, the process of setting the loss function to optimize the parameters of the railway track feature extraction model after each round of training includes:

[0138] Count the number of points n in orbitals and non-orbitals i , according to the number of points n i Calculate the initial weights w of orbitals and non-orbitals i , the expression is:

[0139]

[0140] Among them, max(n) represents the maximum number of samples in all categories;

[0141] The logarithmic function plus the bias is used to adjust the weight distribution and optimize the loss function. The expression is:

[0142] w i ′ =ln(w i +1)

[0143] L=-[w ′ pos ·y ln(p)+w ′ neg ·(1-y)ln(1-p)]

[0144] Among them, w i ′ represents the scaled weight, w ′ pos represents the positive category weight, w ′ neg represents the negative class weight, y represents the true label of the sample, and p represents the probability that the model predicts that the sample belongs to the positive class. ′ pos It will increase the penalty when positive samples are misclassified, making the model pay more attention to track categories and improving the performance of model track extraction.

[0145] It can be understood that the set loss function can address the problem of unbalanced track data categories by calculating the weight of each category, enhancing the model's attention to track categories and effectively reducing misclassification.

[0146] As a preferred embodiment, a decoupled weight decay optimizer AdamW is set to optimize the parameters of the railway track feature extraction model in the iterative optimization training process, and the expression is:

[0147]

[0148] Among them, η represents the learning rate, represents the momentum estimate of the gradient, and ∈ represents a smoothing term to prevent the denominator from being zero.

[0149] Specifically, TripletA-Net uses the AdamW optimizer instead of the classic Adam optimizer. The main improvement of AdamW is that it decouples weight decay and gradient update, which makes the model parameter update more stable and improves the generalization ability of the model. In the experiment, it was found that the AdamW optimizer with decoupled weight decay regularization played a key role in solving track misclassification.

[0150] In the Adam optimizer, weight decay is mixed with the gradient update process, which makes it difficult to impose effective constraints on the parameters during the training process, especially on small-scale data sets, which can easily cause the model to overfit the training data. The weight update formula of the Adam optimizer is:

[0151]

[0152] Where η is the learning rate, is the momentum estimate of the gradient, and ∈ is a smoothing term to prevent the denominator from being zero.

[0153] AdamW can better control the update of weights by separating weight decay and avoid the model's over-reliance on training data. The weight update formula of the AdamW optimizer is:

[0154]

[0155] Here λ represents the weight decay coefficient. By decoupling the weight decay term from the gradient update process, AdamW can better constrain model parameters and reduce overfitting, especially when the amount of data is small.

[0156] It can be understood that the use of the AdamW optimizer can solve the overfitting problem of the model on small sample data sets in the track extraction task and improve the generalization ability of the model.

[0157] In this embodiment, the triplet attention mechanism can be moved from the encoder module to the decoder module to enhance the information fusion capability in the feature propagation process.

[0158] In this embodiment, data preprocessing is performed on the acquired initial point cloud data of the casing, which can improve the practicability and reliability of the data and reduce data errors. By constructing a railway track feature extraction model that can effectively grasp the changes in railway track point cloud data, and then using the constructed model to extract track features, it is possible to effectively improve the adaptability to the imbalance problem of track and non-track data categories, so as to capture global and local features at the same time, and effectively establish dependencies between different channels, thereby improving the accuracy of track feature extraction and reducing track extraction costs.

[0159] Embodiment 2:

[0160] This embodiment provides corresponding experimental descriptions based on the method of embodiment 1, which are as follows:

[0161] The data collected using the UAV-mounted LiDAR contains 59,653,663 points, including 676,172 track points and 58,977,491 non-track points.

[0162] Comparative experiment:

[0163] The comparison methods include PointNet, PointNet++, and RandLANet. The test scenarios include simple scenarios (0-4) and complex scenarios (4-5). The results show that TripletA-Net achieves the highest accuracy in all scenarios, with an average mIoU of 94.36%. The details are shown in Table 1 below.

[0164] Table 1: Track extraction accuracy of each model

[0165]

[0166] The model proposed in this paper achieves the highest accuracy in all scenarios except scenario 2, where it is slightly lower than the Stratified Transformer model. The average mIoU is improved by 40.42%, 6.49%, 2.90%, 12.43% and 4.87% compared with PointNet, PointNet++, RandLANet, Swin3Dtransformer and Stratified Transformer models, respectively. In the simple railway scene, the PointNet++ model has a relatively ideal track extraction effect, with only a small number of segmentation errors, mainly at the edge of the scene, and a few incomplete tracks, such as Figure 7 The RandLANet model performs better than the PointNet++ model, with no obvious classification errors, but there are still a few track breaks, such as Figure 7 b. The Swin3D transformer model has a poor extraction effect, with multiple errors at the scene boundary and obvious and large-scale breaks in the track, as shown in Figure 7 c. The Stratified Transformer and the proposed model perform satisfactorily in simple scenes, with no obvious misclassification and good track continuity, as shown in Figure 7 d and Figure 7 As shown in e. Figure 7Middle: (a) PointNet++ model segmentation result; (b) RandLA Net model segmentation result; (c) Swin3DTransformer model segmentation result; (d) Stratified Transformer model segmentation result; (e) TripletA-Net model segmentation result; (f) Real track scene. Yellow boxes indicate misclassification, and green boxes indicate missing track extraction.

[0167] In complex scenes, although the PointNet++ model can identify most of the track point clouds, the segmentation results are still not up to the level of usability. Figure 8 As shown in Figure a, when extracting tracks, the model not only misclassifies some point cloud boundaries, but also misclassifies the guardrails (rails added to the inside of the rails on the track that do not bear the vertical load of the wheels) in the scene as tracks. In addition, the track continuity is also poor, with obvious incompleteness and breakage, which cannot meet the needs of actual production. RandLANet also has the problem of misclassifying guardrails as tracks, but no obvious misclassification occurs in other places, such as Figure 8 As shown in b, the continuity of the track has been significantly improved compared to the PointNet++ model. The segmentation results of the Transformer-based Swin3D Transformer and Stratified Transformer models are also not ideal. In addition to misclassifying the guardrail as track, some misclassifications also occurred in some areas with large elevation fluctuations, such as Figure 8 c and Figure 8 d. The TripletA-Net model significantly improves the track extraction accuracy in complex scenes, as shown in Figure 8 As shown in e, no obvious errors are found, and the extracted tracks are complete and reach a usable level. Figure 8 Middle: (a) PointNet++ model segmentation result; (b) RandLA Net model segmentation result; (c) Swin3D Transformer model segmentation result (d) Stratified Transformer model segmentation result; (e) TripletA-Net model segmentation result; (f) Real track scene.

[0168] In order to analyze the performance of each model in complex scenes, the areas that are prone to misclassification (Area1-4) are displayed in local details to show the track extraction effects of different models in these areas. The selected areas include guardrails beside the track (Area1-2) or there are obvious height changes (Area3-4) to more clearly compare the recognition accuracy and classification errors of the models, such as Fig. 9 shown.

[0169] Depend on Fig. 9 It can be seen that in Area 1 and Area 2, except for TripletA-Net, which can correctly distinguish between tracks and guardrails, the other four models misclassify guardrails as tracks. In particular, Swin3D Transformer and StratifiedTransformer have large-scale misclassifications and overfitting. In Area 3 and Area 4, TripletA-Net and RandLANet have no misclassifications, while the other three models have obvious misclassifications. Combining the four areas, it can be concluded that pointNet++, Swin3D Transformer, and Stratified Transformer lack the perception of the overall structure and rely too much on the local structure, which makes it easy to misclassify similar structures. Although RandLANet has the largest receptive field, it does not extract local detail features enough, which also leads to misclassification. TripletA-Net balances global features and local features and links the two with point features, successfully achieving a high classification accuracy.

[0170] Ablation experiment:

[0171] In order to evaluate the effectiveness of the triplet attention mechanism and weight scaling strategy, as well as the impact of the decoupled weight decay optimizer and the intensity information of the point cloud on the model, ablation experiments were performed on the TripletA-Net model.

[0172] Model A: replace the first feature extraction module in the model from the triple set abstract module to the basic set abstract module; Model B: replace the AdamW optimizer with the Adam optimizer; Model C: replace the input with to remove the intensity information; Model D: fix the weight in the loss function to 1:1; as shown in Table 2. The results are shown in Table 3.

[0173] Table 2: Comparison of various models

[0174]

[0175]

[0176] Table 3: Track extraction results for each model

[0177]

[0178] It can be seen from Table 3 that after removing any module, the extraction accuracy of the track is reduced, which shows that the module proposed in the present invention can significantly improve the extraction accuracy of the track point cloud.

[0179] Complexity Analysis:

[0180] The TripletA-Net of this application not only demonstrates excellent performance in the track extraction task, but also maintains the compactness of the model. TripletA-Net constructs dependencies between dimensions through TASA (TASA), and realizes adaptive weight allocation between different dimensions without the need to introduce additional complex structures. The TASA module uses simple pooling (MaxPool, AvgPool) and convolution operations to generate attention weights through Sigmoid activation. These operations have low computational complexity and few parameters compared to complex attention models (such as Transformer). Even though there are three parallel paths to process tensor relationships of different dimensions, the structure they use is simple and efficient. When adaptively allocating weights, no additional redundant channels or dimensions are introduced, so there is no significant increase in model parameters. At the same time, the multi-scale feature extraction structure also effectively reduces the dependence on deep networks. In order to evaluate the complexity and efficiency of the model of this application, the number of parameters of each comparison model is listed in Table 4.

[0181] Table 4: Number of parameters for each comparison model

[0182]

[0183]

[0184] With less than 1M parameters, TripletA-Net achieves higher performance in track extraction tasks than more complex models such as Swin3DTransformer and Stratified Transformer. This efficient design enables TripletA-Net to run in resource-constrained environments, providing a practical solution for track extraction in practical applications.

[0185] Embodiment three:

[0186] This embodiment provides a railway track feature extraction system. Fig.10 , the system comprises:

[0187] A data acquisition module, used to acquire railway track point cloud data;

[0188] A data processing module, used for preprocessing the railway track point cloud data;

[0189] A model building module, used to build a railway track feature extraction model, wherein the railway track feature extraction model includes an input module, an encoder module, a decoder module and a railway track feature classification module;

[0190] The railway track feature extraction module is used to extract railway track features according to the preprocessed track point cloud data using the railway track feature extraction model, and classify the railway track according to the extracted railway track features, and output the classification results.

[0191] The above descriptions are merely embodiments of the present invention and are not intended to limit the patent scope of the present invention. Any equivalent structure or equivalent process transformation made using the contents of the present invention specification and drawings, or directly or indirectly applied in other related technical fields, are also included in the patent protection scope of the present invention.

Claims

1. A railway track feature extraction method, characterized in that: The method comprises the following steps: Acquire railway track point cloud data, and preprocess the railway track point cloud data; Constructing a railway track feature extraction model, wherein the railway track feature extraction model includes an input module, an encoder module, a decoder module and a railway track feature classification module; The railway track feature extraction model is used to extract railway track features according to the preprocessed track point cloud data, and the railway track is classified according to the extracted railway track features, and the classification result is output.

2. The railway track feature extraction method according to claim 1, characterized in that: The process of preprocessing the railway track point cloud data includes: Crop and reduce noise on the acquired railway track point cloud data; The railway track point cloud data after cropping and denoising is divided into training set, validation set and test set.

3. The railway track feature extraction method according to claim 2, characterized in that: The training set is input into the railway track feature extraction model, and several rounds of iterative optimization training are set to iteratively optimize the parameters of the railway track feature extraction model. The process includes: The input module is used to divide the original point cloud data in the training set into several non-overlapping data blocks; The encoder module extracts multi-scale features of the original point cloud data based on several non-overlapping data blocks; The decoder module restores the point cloud resolution based on the multi-scale features and classifies track points and non-track points based on the restored point cloud resolution; The railway track feature classification module generates a labeled point cloud consistent with the input point cloud based on the track points and non-track points obtained by classification, and classifies the railway track based on the labeled point cloud; wherein the classification results include track and non-track; The test set is used to test the railway track feature extraction model after each round of training, the validation set is used to verify the classification results of each round of testing, and the loss function is set to optimize the parameters of the railway track feature extraction model after each round of training. When the iterative round is set to end or the loss function converges, the trained railway track feature extraction model is obtained.

4. The railway track feature extraction method according to claim 3, characterized in that: The process of using the input module to divide the original point cloud data in the training set into several non-overlapping data blocks includes: The track neighborhood range is calculated based on the original point cloud data, and the track category weight is calculated based on the track neighborhood range. The expression is: A number of random points are selected and the orbital neighborhood range of each point is calculated. A number of points are selected within the orbital neighborhood range of each point to form a data block, and a number of non-overlapping data blocks are obtained. The non-overlapping data blocks are then subjected to data standardization processing. Among them, max(n) is the maximum number of samples in all categories.

5. The railway track feature extraction method according to claim 4, characterized in that: The process of segmenting point cloud data according to the calculated track category weights includes: Randomly select a center point C from the point cloud data X ,C Y ,C Z ); According to the center point C is set at the boundary of the data block, the expression is: Randomly select several data points within the data block boundary, and for each data point pi = (x i ,y i ,z i ,f i ) to normalize the coordinates, the expression is: Adjust the coordinates of the data point relative to the center of the data block. The expression is: ΔX i =X i -C X ΔY i =Y i -C Y Among them, X, Y, Z represent spatial coordinates, ΔX i , ΔY i , Both represent non-overlapping data blocks.

6. The railway track feature extraction method according to claim 3, characterized in that: The process of the encoder module extracting multi-scale features of the original point cloud data based on several non-overlapping data blocks includes: The encoder module includes a triple set abstract submodule and a plurality of basic set abstract submodules connected in sequence; The triplet set abstraction submodule includes a sampling layer, a multi-layer perceptron layer, several parallel processing units, and a maximum pooling layer; The farthest point sampling is performed on several non-overlapping data blocks through the sampling layer, and the sampled points are combined into a point set; A multi-layer perceptron is used to upgrade the feature dimension of the point set, and several parallel processing units are used to construct the dependency features between the global features, local features and general features in the point cloud. A multi-layer perceptron layer is used to perform feature dimensionality upgrade on the constructed dependent features, and a maximum pooling layer is used to perform maximum pooling processing on the upgraded dependent features to obtain multi-scale features of the original point cloud data.

7. The railway track feature extraction method according to claim 3, characterized in that: The process of the decoder module recovering the point cloud resolution based on multi-scale features includes: The decoder module includes a plurality of feature propagation units and skip connection units; Use several feature propagation units to perform linear interpolation on the three nearest points of each point in the multi-scale feature, and upsample the points; The upsampled features are added by using a skip connection unit, and the added feature dimensions are reduced by using a multi-layer perceptron layer to obtain the restored point cloud resolution.

8. The railway track feature extraction method according to claim 3, characterized in that: The process of setting the loss function to optimize the parameters of the railway track feature extraction model after each round of training includes: Count the number of points n in orbitals and non-orbitals i , according to the number of points n i Calculate the initial weights w of orbitals and non-orbitals u , the expression is: Among them, max(n) represents the maximum number of samples in all categories; The logarithmic function plus the bias is used to adjust the weight distribution and optimize the loss function. The expression is: w i ′ =ln(w i +1) L=-[w ′ pos ·yln(p)+w ′ neg ·(1-y)ln(1-p)] Among them, w i ′ represents the scaled weight, w ′ pos represents the positive category weight, w ′ neg represents the negative category weight, y represents the true label of the sample, and p represents the probability that the model predicts that the sample belongs to the positive category.

9. The railway track feature extraction method according to claim 3, characterized in that: The decoupled weight decay optimizer AdamW is set to optimize the parameters of the railway track feature extraction model during the iterative optimization training process. The expression is: Among them, η represents the learning rate, represents the momentum estimate of the gradient, and ∈ represents a smoothing term to prevent the denominator from being zero.

10. A railway track feature extraction system, characterized in that: The system includes: A data acquisition module, used to acquire railway track point cloud data; A data processing module, used for preprocessing the railway track point cloud data; A model building module, used to build a railway track feature extraction model, wherein the railway track feature extraction model includes an input module, an encoder module, a decoder module and a railway track feature classification module; The railway track feature extraction module is used to extract railway track features according to the preprocessed track image data using the railway track feature extraction model, and classify the railway track according to the extracted railway track features, and output the classification results.

Citation Information

Patent Citations

  • Point cloud classification method and device based on deep learning, storage medium and equipment

    CN110232329A

  • Remote-sensing image road extraction method and device

    CN110705381A

  • Three-dimensional point cloud semantic segmentation method based on multi-feature information enhancement coding

    CN113392841A

  • Rail transit anomaly detection method and device and storage medium

    CN114550460A

  • Semantic codec training method, semantic codec transmission method and semantic codec training system for point cloud transmission

    CN117135179A

Cited By

  • Railway track detection method based on laser point cloud and application

    CN120853153A