Point cloud registration method based on unsupervised multi-scale feature fusion and geometric representation
By using a multi-scale neighborhood feature fusion and triangle representation learning module, the problems of complex feature extraction and low matching accuracy in point cloud registration are solved, achieving high-precision and stable point cloud registration results.
Patent Information
- Application Number
- CN202511019210.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-23
- Publication Date
- 2025-12-16
Smart Images

Figure CN121147263A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application belongs to the field of computer vision, and particularly relates to a point cloud registration method based on unsupervised multi-scale feature fusion and geometric representation. BACKGROUND
[0002] Point cloud registration is one of the core tasks in the field of three-dimensional computer vision, and is widely used in many fields such as autonomous driving, robot navigation, augmented reality, building modeling, medical imaging, etc. Its main goal is to accurately align two partially overlapping point cloud data by estimating the rigid transformation, so as to facilitate subsequent analysis, modeling and application. In practical applications, point cloud registration technology is the basis for realizing object reconstruction, environment perception and motion tracking in three-dimensional space, and has important significance in precise modeling and efficient navigation, etc.
[0003] The core challenges of point cloud registration task mainly lie in the following aspects: first, the high sparsity and irregularity of point cloud data make the feature extraction and matching process complex; second, point cloud data is often affected by noise and error, which may lead to a decrease in matching accuracy; third, the scale variation and pose transformation between point clouds make the registration problem more difficult, especially in the case of large-scale deformation and local shape similarity, the matching accuracy is low.
[0004] Traditional point cloud registration methods, such as Iterative Closest Point (ICP) algorithm and Fast Point Feature Histogram (FPFH) based algorithm, have achieved certain results, but they usually rely on complex optimization process and multiple iterations. These methods have low computational efficiency and need to adjust multiple parameters, which are easily affected by local optimal solution, especially when the initial transformation estimation is inaccurate. In addition, these methods also face the problems of insufficient local geometric information extraction, poor noise robustness, etc., which limit their wide applicability in practical applications.
[0005] In recent years, with the rapid development of deep learning technology, point cloud registration methods based on deep learning have gradually become a research hotspot. This kind of method can automatically learn effective registration features from data by training large-scale data sets, and realize more efficient optimization in the registration process. Compared with traditional methods, deep learning methods show stronger ability in handling complex point cloud data, especially in feature extraction and matching accuracy. However, point cloud registration methods based on deep learning usually rely on a large amount of labeled data, which is very scarce in practical applications. In order to alleviate this problem, researchers have proposed synthetic data training methods, but due to the significant differences between synthetic data and real data, this method still has certain limitations, especially in the case of domain shift.
[0006] To further address the problem of labeled data scarcity and noise interference, researchers have also proposed unsupervised point cloud registration methods. These methods do not rely on labeled data, but through self-supervised learning or unlabeled data training, automatically learn the features and transformation relationship of point cloud registration. Unsupervised methods are expected to reduce dependence on labeled data and can complete point cloud registration without human intervention. However, unsupervised point cloud registration methods still face some technical bottlenecks, mainly including insufficient ability to distinguish local shapes and incomplete capture of geometric constraints, resulting in low registration accuracy and stability. SUMMARY
[0007] The purpose of the present application is to overcome the defects in the prior art, and to provide a point cloud registration method based on unsupervised multi-scale feature fusion and geometric representation. A multi-scale neighborhood feature fusion module is designed, which can effectively capture the rich neighborhood information of point cloud at each scale through multi-scale neighborhood construction, attention mechanism and feature fusion strategy. In addition, a triangular representation learning module is designed, which generates more distinctive feature representation after deep fusion of multi-scale neighborhood features, significantly improving the accuracy and stability of point cloud registration.
[0008] The technical scheme adopted by the present application is:
[0009] The point cloud registration method based on unsupervised multi-scale feature fusion and geometric representation of the present application comprises the following steps:
[0010] S1 Divide the data set (such as the modelnet40 data set) into a training set and a test set, and perform data augmentation operations on the training set. The point cloud in the training set before data augmentation is denoted as the source point cloud, and the point cloud in the training set after data augmentation is denoted as the target point cloud.
[0011] S2 Construct and train an unsupervised point cloud registration model, specifically as follows:
[0012] 1) Construct a multi-scale neighborhood feature fusion module to mine the multi-scale neighborhood features of the source point cloud and the target point cloud. In the multi-scale neighborhood feature fusion module, for the source point cloud and the target point cloud, first search the neighborhood for each point using the K-Nearest Neighbor algorithm, then make a difference between the coordinates of each point and the coordinates of each neighborhood point to construct the multi-scale neighborhood of the source point cloud and the target point cloud, then perform edge convolution on each scale of the neighborhood to extract local features, and then use the attention mechanism in the Transformer encoder to capture the scale features of the source point cloud and the target point cloud. Each Transformer encoder captures a scale feature of the point cloud, and the source point cloud all scale features are spliced, and the target point cloud all scale features are spliced, and after processing by a multi-layer perception (MLP), the multi-scale neighborhood features of the source point cloud and the target point cloud are finally obtained. In this way, the multi-scale neighborhood features of the point cloud are effectively extracted and integrated, the expressiveness of the point cloud features is enhanced, and more rich global spatial information can be captured.
[0013] 2) Construct a triangle-based representation learning module, introduce a geometric descriptor, combine it with the multi-scale neighborhood features, construct a more rich feature representation according to the geometric relationship, and strengthen the correspondence relationship between the source point cloud and the target point cloud. In the triangle-based representation learning module, for the source point cloud and the target point cloud, the K-Nearest Neighbor algorithm is used to determine the k nearest neighbor points of each point, k≥3, and each point forms a triangle point pair with any two points selected from the corresponding k nearest neighbor points, then each point corresponds to form k(k-1) / 2 triangle point pairs; then, the edge lengths of each triangle point pair are arranged in ascending order to construct a geometric descriptor. Next, the geometric descriptors of the source point cloud and the target point cloud are fused by splicing operation, and the corresponding geometric fusion features are generated, and the multi-scale neighborhood features of the source point cloud and the target point cloud are fused by feature splicing, and the multi-scale fusion features are generated. Then, add each scale fusion feature and the corresponding geometric fusion feature and assign a weight to capture the fine-grained correlation between the features. Finally, the key feature dimensions are selected through the channel attention mechanism to strengthen the discriminative representation, and finally the weighted fusion features are obtained.
[0014] 3) To optimize the matching accuracy and improve the discriminability of the neighborhood region, a similarity matrix generator is introduced: the Euclidean distance between the weighted fusion features of each point in the source point cloud and the corresponding point in the target point cloud is calculated to construct a preliminary similarity matrix; the neighborhood score matrix of each point in the target point cloud is calculated, and the optimized neighborhood score matrix is obtained, the local neighborhood block of each element in the optimized neighborhood score matrix is extracted, the neighborhood average value matrix of each element is constructed, the adjustment parameter is introduced, and the difference is adjusted by the negative exponential function before being multiplied by the similarity matrix to obtain the extended difference similarity matrix, which can amplify the matching pairs with prominent similarity in the local neighborhood. Finally, the Softmax operation is used on the extended difference similarity matrix to obtain the enhanced similarity matrix. To accurately identify the false matches in the pseudo-correspondence, an inlier estimation module is designed to quantify the confidence of the correspondence between the source point cloud and the pseudo-target point cloud: for the source point cloud and the pseudo-target point cloud, first, the K- nearest neighbor algorithm is used to search the neighborhood for each point, then the coordinates of each point are subtracted from the coordinates of each neighborhood point, and the edge features of each point relative to each neighborhood point are extracted and input into the edge convolution layer; then, the edge convolution layer outputs of the two branches of the source point cloud and the pseudo-target point cloud are subtracted again to obtain the difference feature, which amplifies the neighborhood geometric difference between the source point cloud and the pseudo-target point cloud; the difference feature is multiplied by the feature obtained after the edge convolution layer convolution operation, multilayer perception coding, and normalization operation to constrain the feature distribution, and finally the confidence weight of the correspondence between the source point cloud and the pseudo-target point cloud is output through the hyperbolic sine function nonlinear mapping. The pseudo-target point cloud is obtained by multiplying the target point cloud by the enhanced similarity matrix. The confidence weight is input into the weighted singular value decomposition module to obtain the rotation matrix and the translation vector.
[0015] 4) During the training process, the edge convolution layer parameters and the multilayer perception parameters are iteratively optimized using the loss function through the backpropagation algorithm until the loss function converges to a preset threshold, then the training is ended, and the final unsupervised point cloud registration model is obtained, otherwise the edge convolution layer parameters and the multilayer perception parameters are adjusted (such as the number of convolution kernels, the number of MLP layers and the number of neurons), and the training is restarted.
[0016] Preferably, the data augmentation operation on the training set is as follows: the point clouds in the training set are randomly rotated and translated, specifically a set of random Euler angles (angle x, angle y, angle z) and translation distances are generated for each point cloud to construct a rotation matrix and a translation vector, and then the point cloud is randomly rotated and translated; then, the order of each point cloud after translation is randomly shuffled, and then each point cloud is downsampled, the farthest point sampling (FPS) method is used for the downsampled operation, which not only reduces the size of the point cloud but also preserves its key features; finally, the processed point cloud data and the corresponding rotation matrix and translation vector are returned.
[0017] Preferably, in step 1), the Transformer encoder consists of a multilayer perceptron (MLP), layer normalization (LN), and a multi-head self-attention module (MSA). First, the features processed by the MSA module are added to the original features (features input to the MSA module), and then processed by layer normalization to obtain intermediate features. Then, the final feature F is obtained by processing the multilayer perceptron through the Transformer encoder. i The feature F output by each Transformer encoder i This represents a feature of a point cloud at one scale.
[0018] Preferably, step 2) specifically includes the following steps:
[0019] 2.1 For the source and target point clouds, the K-nearest neighbor algorithm is used to determine the k nearest neighbors of each point, where k ≥ 3. Each point forms a triangle pair with any two points randomly selected from its k nearest neighbors, resulting in k(k-1) / 2 triangle pairs for each point. Next, the side length between any two points in each triangle pair is calculated, and these three side lengths are arranged in ascending order. Then, a geometric descriptor G is constructed for each source and target point cloud: the shortest side length corresponding to each triangle pair formed by each point is included in the set length. min The corresponding longest side lengths are all assigned to the set length. max The corresponding middle side lengths are all included in the set length. mid These side lengths are used to describe the local geometry of the point cloud, and the length is... min length mid and length max Concatenating the points yields a geometric descriptor G, where the geometric descriptor of the source point cloud is denoted as Gsource. P The geometric descriptor of the target point cloud is denoted as G. Q :
[0020] G = Concat[length] min ,length mid ,length max ]
[0021] 2.2 Geometric Descriptor G of Source Point Cloud P and the geometric descriptor G of the target point cloud Q The geometric descriptors are fused through a concatenation operation to obtain geometric descriptor fusion features. Each geometric descriptor is then subtracted from the neighborhood information extracted from the geometric descriptor fusion features using the K-nearest neighbor algorithm, and finally, a geometric descriptor G is generated through a multilayer perceptron. P Corresponding geometric fusion features and the geometric descriptor G Q corresponding geometric fusion features multi-scale neighborhood features F of the source point cloud P and multi-scale neighborhood features F of the target point cloud Q Through feature splicing fusion, multi-scale neighborhood fusion features are obtained, and each scale neighborhood feature is subtracted from the neighborhood information extracted from the multi-scale neighborhood fusion features by using the K nearest neighbor algorithm to generate multi-scale neighborhood features F P corresponding multi-scale fusion features and multi-scale neighborhood features F Q corresponding multi-scale fusion features
[0022]
[0023] Wherein, KNN is K nearest neighbor algorithm, and MLP is multi-layer perceptron.
[0024] 2.3 Adding the multi-scale fusion features and the geometric fusion features Adding the multi-scale fusion features and the geometric fusion features First, the two added features are respectively processed by the multi-layer perceptron, then the weight of the two added features is generated by using the Softmax operation, and finally the two added features are respectively multiplied by the corresponding weight, and then the key feature dimension is screened through the channel attention mechanism to obtain the weighted fusion features and the weighted fusion features The specific formula is:
[0025]
[0026] Wherein, SE is channel attention.
[0027] Preferably, step 3) specifically comprises the following steps:
[0028] 3.1 Calculating the weighted fusion features of each point in the source point cloud and the weighted fusion features of the corresponding points of the target point cloud The Euclidean distance is used to construct a preliminary similarity matrix. Then, the neighborhood score matrix for each point in the target point cloud is calculated. The neighborhood score matrix reflects the feature differences of each neighboring point, thus measuring the similarity between corresponding points. The Sinkhorn algorithm is then used to optimize the neighborhood score matrix, resulting in an optimized neighborhood score matrix. Subsequently, the local neighborhood blocks of each element in the optimized neighborhood score matrix are extracted. An averaging operation is performed to calculate the average value of each element within the neighborhood block, constructing a neighborhood average matrix for each element. An adjustment parameter is then introduced, and the difference is adjusted using a negative exponential function before multiplying it with the similarity matrix to obtain an expanded difference similarity matrix. Finally, a Softmax operation is applied to the expanded difference similarity matrix to obtain an enhanced similarity matrix.
[0029] 3.2 The interior point estimation module adaptively captures the geometric differences between the source point cloud and the pseudo-target point cloud: For both the source and pseudo-target point clouds, the K-nearest neighbors algorithm is first used to search for the neighborhood of each point. Then, the coordinate vector of each point is subtracted from the coordinate vectors of each neighboring point to extract the edge features of each point relative to its neighbors, which are then input into the edge convolutional layer. Subsequently, the outputs of the edge convolutional layers of the source and pseudo-target point clouds are subtracted again to obtain the difference features, amplifying the neighborhood geometric differences between the source and pseudo-target point clouds. The difference features are then multiplied by the difference features after passing through the edge convolutional layer, multilayer perceptron encoding, and normalization to constrain the feature distribution. Finally, the result is nonlinearly mapped by a hyperbolic sine function to output the confidence weights of the correspondence between the source and pseudo-target point clouds. The pseudo-target point cloud is obtained by multiplying the target point cloud by the enhanced similarity matrix.
[0030] 3.3 A weighted singular value decomposition (SVD) module is constructed. Confidence weights are input into the weighted SVD module to obtain rotation matrices and translation vectors. The source point cloud, after processing with these rotation matrices and translation vectors, can be registered with the target point cloud. In the weighted SVD module, the corresponding point pairs between the source and target point clouds are first... Confidence weight w i Solve for the total weight And obtain the weighted centroid: p i Let q be the point coordinate vector in the source point cloud. i Let n be the point coordinate vector in the target point cloud, and n be the number of point pairs between the source and target point clouds; then, through centroid removal, we obtain: Construct the weighted covariance matrix Then, performing SVD decomposition on H yields H = UΣV T Where U and V are unitary matrices, and Σ is a diagonal matrix; the rotation matrix R = UV is solved using the properties of orthogonal matrices. T The translation vector is obtained through the weighted centroid transformation relationship.
[0031] Preferably, the method further comprises step S3: testing the unsupervised point cloud registration model by using the test set, and calculating an evaluation index, wherein the evaluation index comprises a translation error for measuring an average translation distance between point pairs of the source point cloud and the target point cloud, and a rotation error for measuring a rotation difference between the source point cloud and the target point cloud.
[0032] Compared with the prior art, the present application has the beneficial effects that:
[0033] The existing method usually relies on single-scale neighborhood search to extract point cloud features, and when processing point clouds with similar local shapes, the feature discrimination ability is insufficient, resulting in a large number of incorrect corresponding relationships. In addition, these methods often ignore the constraints of point cloud geometric information, and fail to fully capture the global and local structural relationships between point clouds, thereby causing outlier matching, which seriously affects the accuracy and stability of registration. In order to solve these problems, the present application proposes two innovative modules: a multi-scale neighborhood feature fusion module and a triangle-based representation learning module. The multi-scale neighborhood feature fusion module extracts local neighborhood information from point clouds of different scales, combines multi-scale neighborhood construction, attention mechanism and feature fusion strategy, and balances fine details and global structure at multiple scales, overcoming the challenges of single-scale feature extraction in processing local shape similarity. The triangle-based representation learning module deeply integrates multi-scale neighborhood features and triangle-based geometric descriptors, generating feature representations with stronger discriminability, significantly improving the accuracy and stability of registration. Finally, the multi-scale neighborhood feature fusion module and the triangle-based representation learning module enable the model proposed in the present application to exhibit excellent registration performance and excellent applicability. BRIEF DESCRIPTION OF DRAWINGS
[0034] Figure 1 The network structure diagram of the present application.
[0035] Figure 2 The network structure diagram of the multi-scale neighborhood feature fusion module in the present application.
[0036] Figure 3 The network structure diagram of the triangle-based representation learning module in the present application.
[0037] Figure 4 The network structure diagram of the similarity matrix generator in the present application.
[0038] Figure 5 The network structure diagram of the inlier estimation module in the present application. DETAILED DESCRIPTION
[0039] The present application will be further described below in conjunction with the accompanying drawings.
[0040] As Figure 1As shown, the point cloud registration method based on unsupervised multi-scale feature fusion and geometric representation is as follows:
[0041] S1 divides the data set (for example, modelnet40 or 7Scenes data set) into a training set and a test set, and performs data augmentation operation on the training set, as follows: randomly rotating and translating each point cloud in the training set, specifically generating a set of random spatial three-dimensional Euler angles (angle x, angle y, angle z) and spatial three-dimensional translation for each point cloud, thereby constructing a rotation matrix and a translation vector; wherein the range of each dimension of the spatial Euler angle is [0, π], and the range of each dimension of the spatial translation is [-0.5, 0.5]; then, the order of each point cloud after translation is randomly shuffled, and each point cloud is down-sampled, using the farthest point sampling (FPS) method, which not only reduces the size of the point cloud, but also preserves its key features; finally, return the processed point cloud data and the corresponding rotation matrix and translation vector. The point cloud in the training set before data augmentation is marked as the source point cloud, and the point cloud in the training set after data augmentation is marked as the target point cloud.
[0042] S2 constructs and trains an unsupervised point cloud registration model, as follows:
[0043] 1) As shown in Figure 2 , for the source point cloud and the target point cloud, first search the neighborhood for each point using the K nearest neighbor algorithm, then subtract the coordinates of each point from the coordinates of each neighborhood point to construct the multi-scale neighborhood of the source point cloud and the target point cloud, then perform edge convolution on each scale of the neighborhood to extract local features, and then use the attention mechanism in the Transformer module to capture the scale features of the source point cloud and the target point cloud, each Transformer encoder captures a scale feature of the point cloud, and the source point cloud all scale features are spliced, and the target point cloud all scale features are spliced, and after processing by a multi-layer perception (MLP), the multi-scale neighborhood features of the source point cloud and the target point cloud are finally obtained. Specifically:
[0044] 1.1 For the source point cloud and the target point cloud, first search the neighborhood for each point using the K nearest neighbor algorithm, then subtract the coordinates of each point from the coordinates of each neighborhood point to construct the multi-scale neighborhood of the source point cloud and the target point cloud, then perform edge convolution on each scale of the neighborhood to extract local features f i .
[0045] 1.2 Constructing features at different scales using a Transformer encoder. The Transformer encoder consists of a multilayer perceptron (MLP), layer normalization (LN), and a multi-head self-attention (MSA) module. The features processed by the MSA module are added to the original features (features input to the MSA module), and then processed by layer normalization to obtain intermediate features.
[0046]
[0047] Next, The input is fed into an MLP to obtain the final feature F. i The feature F output by each Transformer encoder i This represents a feature of a point cloud at one scale.
[0048] 1.3 Obtaining the output value F of each Transformer encoder i Then, the outputs from all scales are concatenated, and the final multi-scale neighborhood features F(F) are obtained through MLP. P or F Q ):
[0049] F = MLP(Concat(F1,F2,…,F) i ))
[0050] 2) Construct a triangle-based representation learning module, introducing geometric descriptors to enhance feature representation through geometric relationships, such as... Figure 3 As shown, the correspondence between the source point cloud and the target point cloud is strengthened. This specifically includes the following steps:
[0051] 2.1 For the source and target point clouds, the K-nearest neighbor algorithm is used to determine the k nearest neighbors of each point, where k ≥ 3. Each point forms a triangle pair with any two points randomly selected from its k nearest neighbors, resulting in k(k-1) / 2 triangle pairs for each point. Next, the side length between any two points in each triangle pair is calculated, and these three side lengths are arranged in ascending order. Then, a geometric descriptor G is constructed for each source and target point cloud: the shortest side length corresponding to each triangle pair formed by each point is included in the set length. min The corresponding longest side lengths are all assigned to the set length. max The corresponding middle side lengths are all included in the set length. mid These side lengths are used to describe the local geometry of the point cloud, and the length is... min length mid and length maxThe geometric descriptor G is obtained by concatenation, where the geometric descriptor of the source point cloud is denoted as Gsource. P The geometric descriptor of the target point cloud is denoted as G. Q :
[0052] G = Concat[length] min ,length mid ,length max ]
[0053] 2.2 Geometric Descriptor G of Source Point Cloud P and the geometric descriptor G of the target point cloud Q The geometric descriptors are fused through a concatenation operation to obtain geometric descriptor fusion features. Each geometric descriptor is then subtracted from the neighborhood information extracted from the geometric descriptor fusion features using the K-nearest neighbor algorithm, and finally, a geometric descriptor G is generated through a multilayer perceptron. P Corresponding geometric fusion features and geometry descriptor G Q Corresponding geometric fusion features Multi-scale neighborhood features F of source point cloud P Multi-scale neighborhood features F of the target point cloud Q By concatenating and fusing features, a multi-scale neighborhood fusion feature is obtained. For each scale neighborhood feature, the neighborhood information extracted using the K-nearest neighbor algorithm is subtracted from the neighborhood information of each scale neighborhood feature to generate the multi-scale neighborhood feature F. P Corresponding multi-scale fusion features and multi-scale neighborhood features F Q Corresponding multi-scale fusion features
[0054]
[0055] 2.3 Fusing features across multiple scales and geometric fusion features Addition, multi-scale fusion features and geometric fusion features The process involves adding the two additive features separately through a multilayer perceptron, then using a softmax operation to generate weights for each feature. Finally, each feature is multiplied by its corresponding weight, and a channel attention mechanism is used to filter key feature dimensions to obtain the weighted fusion feature. and weighted fusion features The specific formula is as follows:
[0056]
[0057] Here, SE stands for channel attention.
[0058] 3) To optimize matching accuracy and improve the discriminative power of neighboring regions, such as Figure 4 As shown, a similarity matrix generator is introduced, and an interior point estimation module is designed to adaptively capture the geometric differences between the source point cloud and the pseudo-target point cloud, such as... Figure 5 As shown. Specifically, it includes the following steps:
[0059] 3.1 Calculate the weighted fusion features of each point in the source point cloud Weighted fusion features of corresponding points in the target point cloud Using the Euclidean distance, construct a preliminary similarity matrix M. S Next, the neighborhood score matrix of each point in the target point cloud is calculated. The neighborhood score matrix reflects the feature differences of each neighboring point, thus measuring the similarity of corresponding points. Then, the Sinkhorn algorithm is used to optimize the neighborhood score matrix, resulting in the optimized neighborhood score matrix. Subsequently, the local neighborhood blocks of each element in the optimized neighborhood score matrix are extracted, and the average value of each element within the neighborhood block is calculated through an averaging operation to construct the neighborhood average matrix M′ for each element. S Then, an adjustment parameter α is introduced, and the difference is adjusted by a negative exponential function before being compared with the similarity matrix M. s Multiplying them yields an expanded similarity matrix of differences:
[0060] D S =Exp(α-M′) S )·M S
[0061] Here, Exp represents an exponential function with the natural constant e as its base.
[0062] Finally, the Softmax operation is applied to the similarity matrix with expanded differences to obtain an enhanced similarity matrix, which is used to optimize matching accuracy and enhance the discriminative power of neighborhood regions.
[0063] 3.2 Capturing the geometric differences between the source point cloud and the pseudo-target point cloud: ① Search for k neighboring points of point i in the source point cloud, and search for k neighboring points of point j in the pseudo-target point cloud; ② Using the coordinate vector p of point i... i Extracting edge features by subtracting the coordinate vector of the t-th neighboring point. (point p) i The line connecting the point to the t-th neighboring point and the coordinate vector q passing through point j. j Extracting edge features by subtracting the coordinates of the t-th neighboring point. (dot q) j (The connection to the t-th neighbor point); then, the edge features are processed through the edge convolutional layer. The process involves embedding the data into a high-dimensional space and highlighting structural differences, along with edge features processed through edge convolutional layers. ③ For points i and j, traverse all neighboring points and repeat step ② to obtain the difference features; ④ After passing the difference features sequentially through an edge convolutional layer, a multilayer perceptron, and a normalization operation, multiply the resulting features with the difference features, and finally perform a hyperbolic sine function nonlinear mapping to output the confidence weights of the correspondence between the source point cloud and the pseudo-target point cloud, representing the geometric difference between the source point cloud and the pseudo-target point cloud. The pseudo-target point cloud is obtained by multiplying the target point cloud with the enhanced similarity matrix.
[0064] 3.3 Construct a weighted singular value decomposition module. Input the confidence weights into the weighted singular value decomposition module to obtain the rotation matrix and translation vector: First, based on the corresponding point pairs of the source point cloud and the target point cloud... Confidence weight w i ≥0, solve for the total weight And obtain the weighted centroid: Then, by removing the centroid, we obtain: Construct the weighted covariance matrix Then, performing SVD decomposition on H yields H = UΣV T Where U and V are unitary matrices, and Σ is a diagonal matrix; the rotation matrix R = UV is solved using the properties of orthogonal matrices. T The translation vector is obtained through the weighted centroid transformation relationship.
[0065] 4) During training, the parameters of the edge convolutional layer and the multilayer perceptron are iteratively optimized using the loss function and the backpropagation algorithm until the loss function converges to the preset threshold. Then the training ends and the final unsupervised point cloud registration model is obtained. Otherwise, the parameters of the edge convolutional layer and the multilayer perceptron (such as the number of convolutional kernels, the number of MLP layers and the number of neurons) are adjusted and retrained.
[0066] The loss function L is the sum of the three losses:
[0067] L = L gr +l nc +l c
[0068] Global registration loss based on distance metrics:
[0069]
[0070] Among them, X ′ As the source point cloud, x ′ Let Y be the coordinate vector of points in the source point cloud, Y be the coordinate vector of points in the target point cloud, y be the coordinate vector of points in the target point cloud, ‖‖2 be the Euclidean distance, and γ be the Huber function.
[0071] Neighborhood consistency loss:
[0072]
[0073] Among them, X o Y represents the point cloud in the source point cloud that overlaps with the target point cloud. o For the point cloud in the target point cloud that overlaps with the source point cloud, x i For X o The point coordinate vector, y i For Y o The point coordinate vector in the middle, For x i The k nearest neighbor point cloud, For y i The k nearest neighbor point cloud, p u for The point coordinate vector in q u for The point coordinate vector in the vector.
[0074] Spatial consistency loss based on cross-entropy (primarily used to sharpen the distribution of pseudo-corresponding entities):
[0075]
[0076] Where θ{·} is the indicator function. D s The (i,j) elements, M is D s The number of columns.
[0077] S3 uses a test set to test the unsupervised point cloud registration model and calculates evaluation metrics, including translation error and rotation error. Translation error measures the average translation distance between point pairs in the source and target point clouds, and is characterized by MAE (mean absolute error). The calculation formula is as follows:
[0078]
[0079] p i Let q be the point coordinate vector in the source point cloud. i Let n be the point coordinate vector in the target point cloud, and n be the number of point pairs.
[0080] Rotation error δ measures the rotation difference between the source point cloud and the target point cloud. It is represented by calculating the angular difference of the rotation matrix, and the calculation formula is as follows:
[0081]
[0082] Where R is the rotation matrix, trace(·) is the trace of the matrix, and I is the identity matrix.
[0083] The specific embodiments described above further illustrate the purpose, technical solution, and beneficial effects of the present invention. It should be understood that the above descriptions are merely specific embodiments of the present invention and are not intended to limit the scope of protection of the present invention. In particular, it should be noted that any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the scope of protection of the present invention for those skilled in the art.
Claims
1. A point cloud registration method based on unsupervised multi-scale feature fusion and geometric representation, characterized in that: Includes the following steps: S1 divides the dataset into a training set and a test set, and performs data augmentation on the training set; the point cloud in the training set before data augmentation is denoted as the source point cloud, and the point cloud in the training set after data augmentation is denoted as the target point cloud. S2 constructs and trains an unsupervised point cloud registration model, as follows: 1) Construct a multi-scale neighborhood feature fusion module. For the source point cloud and the target point cloud, use the K-nearest neighbor algorithm to search for the neighborhood of each point. Subtract the coordinates of each point from the coordinates of each neighboring point to construct a multi-scale neighborhood of the source point cloud and the target point cloud. Perform edge convolution on the neighborhood of each scale to extract local features and capture the scale features of the source point cloud and the target point cloud. Concatenate all the scale features of the source point cloud and the target point cloud and process them through a multilayer perceptron to obtain the multi-scale neighborhood features of the source point cloud and the target point cloud. 2) For the source point cloud and the target point cloud, the K-nearest neighbor algorithm is used to determine the k nearest neighbor points of each point, k≥3, and each point obtains k(k-1) / 2 triangle point pairs; the side lengths of each triangle point pair are arranged in ascending order to construct a geometric descriptor; The geometric descriptors of the source point cloud and the target point cloud are fused to generate geometric fusion features corresponding to each geometric descriptor, and the multi-scale neighborhood features of the source point cloud and the target point cloud are fused to generate multi-scale fusion features. The fusion features at each scale and the corresponding geometric fusion features are added together and weighted. Key feature dimensions are then selected through a channel attention mechanism to obtain the weighted fusion features. 3) Based on the Euclidean distance between the weighted fusion features of each point in the source point cloud and the weighted fusion features of the corresponding points in the target point cloud, an enhanced similarity matrix is obtained. For the source point cloud and the pseudo-target point cloud, the K-nearest neighbor algorithm is used to search for the neighborhood of each point. The coordinates of each point are subtracted from the coordinates of each neighboring point, and the edge features of each point relative to each neighboring point are extracted and input into the edge convolutional layer. The outputs of the edge convolutional layers of the two branches of the source point cloud and the pseudo-target point cloud are subtracted again to obtain the difference features. The difference features are sequentially processed through edge convolutional layers, multilayer perceptron encoding, and normalization to constrain the feature distribution. The resulting features are then multiplied with the difference features, and finally, a hyperbolic sine function is used to output the confidence weights of the correspondence between the source point cloud and the pseudo-target point cloud. The confidence weights are then input into the weighted singular value decomposition module to obtain the rotation matrix and translation vector. The source point cloud is then processed by the rotation matrix and translation vector to register the target point cloud. The pseudo-target point cloud is obtained by multiplying the target point cloud with the enhanced similarity matrix. 4) Train an unsupervised point cloud registration model using a loss function.
2. The point cloud registration method based on unsupervised multi-scale feature fusion and geometric representation according to claim 1, characterized in that: The data augmentation operation on the training set is as follows: For each point cloud, generate a set of random Euler angles and translation distances, construct a rotation matrix and translation vector, and perform random rotation and translation transformations on the point clouds; then, randomly shuffle the order of each point cloud after the translation transformation, and then perform downsampling operation on each point cloud.
3. The point cloud registration method based on unsupervised multi-scale feature fusion and geometric representation according to claim 2, characterized in that: The downsampling operation uses the farthest point sampling method.
4. The point cloud registration method based on unsupervised multi-scale feature fusion and geometric representation according to claim 1, 2 or 3, characterized in that: In step 1), the attention mechanism in the Transformer encoder is used to capture the scale features of the source point cloud and the target point cloud. The Transformer encoder consists of a multilayer perceptron, layer normalization, and a multi-head self-attention module. The features processed by the multi-head self-attention module are added to the original features and processed by layer normalization to obtain intermediate features. Then, the features are processed by the multilayer perceptron of the Transformer encoder to obtain the final features. The features output by each Transformer encoder represent a feature of one scale.
5. The point cloud registration method based on unsupervised multi-scale feature fusion and geometric representation according to claim 1, 2 or 3, characterized in that: Step 2) includes the following steps: 2.1 For the source point cloud and the target point cloud, the K nearest neighbor algorithm is used to determine the k nearest neighbor points of each point, k≥3. Each point forms a triangle point pair with two points randomly selected from the corresponding k nearest neighbor points. Each point forms k(k-1) / 2 triangle point pairs. Calculate the side length between any two points in each triangle pair, and sort these three side lengths in ascending order; the shortest side length corresponding to each triangle pair formed by each point is added to the set length. min The corresponding longest side lengths are all assigned to the set length. max The corresponding middle side lengths are all included in the set length. mid , length min length mid and length max The geometric descriptor is obtained by splicing the components; 2.2 Geometric Descriptor G of Source Point Cloud P and the geometric descriptor G of the target point cloud Q The geometric descriptors are fused through a concatenation operation to obtain geometric descriptor fusion features. Each geometric descriptor is then subtracted from the neighborhood information extracted from the geometric descriptor fusion features using the K-nearest neighbor algorithm, and finally, a geometric descriptor G is generated through a multilayer perceptron. P Corresponding geometric fusion features and geometry descriptor G Q Corresponding geometric fusion features The multi-scale neighborhood features of the source point cloud and the target point cloud are fused through feature concatenation to obtain multi-scale neighborhood fusion features. The neighborhood information extracted from the multi-scale neighborhood fusion features using the K-nearest neighbor algorithm is subtracted from each scale neighborhood feature to generate the multi-scale fusion features corresponding to the multi-scale neighborhood features of the source point cloud. Multi-scale fusion features corresponding to the multi-scale neighborhood features of the target point cloud 2.3 Fusing features across multiple scales and geometric fusion features Addition, multi-scale fusion features and geometric fusion features The two additive features are processed separately through a multilayer perceptron, and then a softmax operation is used to generate weights for the two additive features. Finally, the two additive features are multiplied by their corresponding weights, and a channel attention mechanism is used to filter key feature dimensions to obtain the weighted fusion feature. and weighted fusion features 6. The point cloud registration method based on unsupervised multi-scale feature fusion and geometric representation according to claim 5, characterized in that: Step 3) includes the following steps: 3.1 Calculate the weighted fusion features of each point in the source point cloud Weighted fusion features of corresponding points in the target point cloud The Euclidean distance is used to construct a preliminary similarity matrix. Then, the neighborhood score matrix of each point in the target point cloud is calculated. The Sinkhorn algorithm is used to optimize the neighborhood score matrix to obtain the optimized neighborhood score matrix. The local neighborhood blocks of each element in the optimized neighborhood score matrix are extracted. The average value of each element in the neighborhood block is calculated by averaging, and the neighborhood average value matrix of each element is constructed. An adjustment parameter is introduced, and the difference is adjusted by a negative exponential function before being multiplied with the similarity matrix to obtain an extended difference similarity matrix. The Softmax operation is applied to the extended difference similarity matrix to obtain the enhanced similarity matrix. 3.2 For the source point cloud and the pseudo-target point cloud, the K-nearest neighbor algorithm is first used to search the neighborhood of each point. Then, the coordinate vector of each point is subtracted from the coordinate vectors of each neighboring point to extract the edge features of each point relative to each neighboring point and input into the edge convolutional layer. The outputs of the edge convolutional layers of the two branches of the source point cloud and the pseudo-target point cloud are subtracted again to obtain the difference features. The difference features are sequentially processed through edge convolutional layers, multilayer perceptron encoding, and normalization operations to constrain the feature distribution. The resulting features are then multiplied by the difference features, and finally, after a hyperbolic sine function nonlinear mapping, the confidence weights of the correspondence between the source point cloud and the pseudo-target point cloud are output. The pseudo-target point cloud is obtained by multiplying the target point cloud with the enhanced similarity matrix. 3.3 Based on the corresponding point pairs between the source point cloud and the target point cloud Confidence weight w i Solve for the total weight And obtain the weighted centroid: p i Let q be the point coordinate vector in the source point cloud. i Let n be the point coordinate vector in the target point cloud, and n be the number of point pairs between the source and target point clouds; then, through centroid removal, we obtain: Construct the weighted covariance matrix Then, performing SVD decomposition on H yields H = UΣV T Where U and V are unitary matrices, and Σ is a diagonal matrix; the rotation matrix R = UV is solved using the properties of orthogonal matrices. T The translation vector is obtained through the weighted centroid transformation relationship. The source point cloud is registered to the target point cloud after being processed by rotation matrix and translation vector.
7. The point cloud registration method based on unsupervised multi-scale feature fusion and geometric representation according to claim 6, characterized in that: It also includes step S3: testing the unsupervised point cloud registration model using a test set and calculating evaluation metrics, which include translation error, which measures the average translation distance between point pairs of source and target point clouds, and rotation error, which measures the rotation difference between source and target point clouds.
Citation Information
Cited By
A Point Cloud Local Geometric Feature Embedding Method Based on Spatial Relationships
CN122415699A