A point cloud static denoising method based on geometric constraint and deep learning

By employing a point cloud denoising method based on geometric constraints and deep learning, and using overlapping block processing and multi-round iterative optimization, the problems of insufficient noise generalization ability and structural distortion in existing technologies are solved, achieving high-precision point cloud denoising and geometric structure preservation.

CN121032850BActive Publication Date: 2026-03-24CE CENT FOR ENG RES TEST & APPRAISAL +1
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-11-03
Publication Date
2026-03-24

AI Technical Summary

Technical Problem

Existing point cloud denoising methods lack generalization ability when dealing with complex noise, easily leading to geometric structure distortion and high dependence on labeled data, making it difficult to effectively remove noise while preserving geometric structure.

Method used

A geometric constraint-based and deep learning-based approach is adopted, which combines overlapping block processing, multi-round iterative optimization and weighted fusion with normal-guided filtering and incremental updates. Geometric features are extracted using a dynamic graph convolutional network, coordinate prediction is performed using a multilayer perceptron, and a denoising network is trained using various loss functions. By fusing normal consistency, curvature smoothing and manifold reconstruction losses, high-precision denoising of point clouds is achieved.

Benefits of technology

It achieves the preservation of point cloud edges and topology while denoising, avoids over-smoothing, improves denoising accuracy and generalization ability, adapts to feature extraction in non-uniform density regions, and reduces dependence on labeled data.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121032850B_ABST
    Figure CN121032850B_ABST
Patent Text Reader

Abstract

The present application relates to a kind of point cloud static denoising methods based on geometric constraint and deep learning, belong to point cloud processing technical field, solve the existing geometry bad fidelity, weak generalization ability to complex noise and lead to the problem of poor point cloud denoising effect. Including: after the pretreatment to the point cloud to be denoised, it is divided into multiple point cloud blocks with overlapping area;In turn to each point cloud block, the coordinates of each point cloud are optimized by using trained denoising network in multiple rounds, in each round iteration, the predicted coordinates of each point cloud output by denoising network are optimized using normal guided filtering and incremental update to obtain the coordinates of each point cloud for the next round iteration;Denoising network includes dynamic graph convolution network, first multilayer perceptron and second multilayer perceptron in turn;After the optimization result of each point cloud block is fused, the denoised point cloud is obtained after post-processing filtering. The improvement of point cloud denoising precision and detail retention ability is realized.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of point cloud processing, and in particular to a point cloud static denoising method based on geometric constraints and deep learning. BACKGROUND

[0002] Point cloud data, as an important carrier of three-dimensional spatial information, has been widely used in automatic driving, three-dimensional reconstruction, industrial detection and other fields. However, in the process of data acquisition and transmission, point cloud inevitably introduces various noises, which seriously reduces the accuracy and reliability of subsequent applications.

[0003] The existing point cloud denoising methods are mainly divided into two categories: traditional filtering methods based on geometric constraints and deep learning methods based on data-driven. The traditional filtering methods (such as statistical filtering, bilateral filtering, etc.) usually rely on hand-designed rules and local geometric features (such as normal, curvature), on the other hand, the denoising method based on deep learning can adapt to complex noise by learning a large amount of data.

[0004] Although the traditional filtering method can smooth the noise to a certain extent, it has insufficient generalization ability for complex and non-uniform noise patterns, and it is easy to over-smooth the sharp features and edge details of the model while filtering out the noise, resulting in geometric structure distortion. The performance of the denoising method based on deep learning depends heavily on the size of the high-quality labeled data, and the data-driven network model lacks explicit geometric prior guidance. When the training data is insufficient or the noise distribution is significantly different from the training set, it is easy to overfit and appear non-physical distortion or structure damage. Therefore, how to deeply integrate the explicit guidance ability of geometric prior and the strong learning ability of deep learning model, while ensuring the denoising effect, considering the fidelity of geometric structure, the generalization of method and the low dependence on labeled data, has become a key technical problem to be solved in the field. SUMMARY

[0005] In view of the above analysis, the embodiments of the present application aim to provide a point cloud static denoising method based on geometric constraints and deep learning, to solve the problem of poor point cloud denoising effect caused by poor geometric fidelity and weak generalization ability for complex noise.

[0006] The embodiments of the present application provide a point cloud static denoising method based on geometric constraints and deep learning, comprising the following steps:

[0007] After preprocessing the point cloud to be denoised, it is divided into multiple point cloud blocks with overlapping areas;

[0008] For each point cloud block, the coordinates of each point cloud are iteratively optimized multiple times using a pre-trained denoising network. In each iteration, the predicted coordinates of each point cloud output by the denoising network are optimized using guided normal filtering and incremental updates to obtain the coordinates of each point cloud for the next iteration. The denoising network consists of a dynamic graph convolutional network for extracting geometric features of the point cloud; a first multilayer perceptron for predicting steering vectors based on the geometric features of the point cloud; and a second multilayer perceptron for outputting predicted coordinates based on the geometric features and steering vectors of the point cloud.

[0009] After fusing the optimization results of each point cloud block, the denoised point cloud is obtained through post-processing filtering.

[0010] Based on further improvements to the above method, preprocessing is performed on the point cloud to be denoised, including:

[0011] Based on the ratio of local density to global density of each point cloud, adaptive neighborhood parameters for each point cloud are obtained, and then dynamic neighborhood sampling is performed to obtain the neighborhood point set of each point cloud.

[0012] The coordinates of each point cloud are normalized based on the neighborhood point set of each point cloud.

[0013] Based on the further improvement of the above method, the adaptive neighborhood allocation parameters for each point cloud include: neighborhood search radius and number of nearest neighbors, which are calculated using the following formulas:

[0014] ,

[0015] in, and They represent point clouds respectively. The neighborhood search radius and the number of nearest neighbors, and These represent the preset baseline values ​​for the neighborhood search radius and the number of nearest neighbors, respectively. Point cloud Local density, Represents global density. and These represent the sensitivity indices for the neighborhood search radius and the number of nearest neighbors, respectively. This represents the preset minimum number of nearest neighbors.

[0016] Further improvements to the above method are made using normal-guided filtering and incremental updates, including:

[0017] Normal-guided filtering is applied to the predicted coordinates of each point cloud to obtain the filtered coordinates of each point cloud.

[0018] The difference between the filtered coordinates of each point cloud and the coordinates of each point cloud in the current iteration is used as the coordinate update amount for each point cloud.

[0019] The coordinate update of each point cloud is truncated and multiplied by the iteration step size. The result of the multiplication is then added to the coordinates of each point cloud in the current iteration input to obtain the optimized coordinates of each point cloud, which are used as the coordinates for the next iteration.

[0020] Based on the further improvement of the above method, normal-guided filtering calculates the weight factor of each nearest neighbor point based on the consistency of the spatial distance and normal direction between each point cloud and each nearest neighbor point in its neighborhood point set, and then performs a weighted average of the coordinates of each nearest neighbor point to obtain the filtered coordinates of each point cloud.

[0021] Based on a further improvement of the above method, the weighting factor is calculated using the following formula:

[0022] ,

[0023] in, Point cloud Its nearest neighbor Weighting factors and They represent point clouds respectively. Its nearest neighbor coordinate vector, Indicates the spatial distance weighting coefficient. Indicates the normal difference weighting coefficient. Represents an exponential function. Represents computational point cloud Its nearest neighbor The Euclidean distance between them Represents computational point cloud normal vector With displacement vector The inner product of.

[0024] Further improvements to the above method, which integrate the optimization results of each point cloud block, involve taking the weighted average of the coordinates of the point cloud located in the overlapping region after iterative optimization in different point cloud blocks to obtain the final coordinates. The weights are inversely proportional to the distance from the point cloud to the center of each point cloud block.

[0025] Based on the above method, a further improvement is made to the denoising network by training it with the weighted sum of supervised loss, self-supervised loss, geometric constraint loss, and manifold reconstruction loss as the total loss function. Among them, the supervised loss is constructed by calculating the spatial distance difference between the predicted point cloud output by the denoising network and the real point cloud; the self-supervised loss is constructed by calculating the difference between the output of the denoising network on the geometrically transformed point cloud sample and the result of the denoising network output on the point cloud sample after the same transformation; the geometric constraint loss is constructed by introducing prior geometric knowledge of the point cloud to constrain the predicted point cloud output by the denoising network to conform to the geometric structure features; and the manifold reconstruction loss is calculated by calculating the distance between the predicted point cloud output by the denoising network and the manifold surface fitted by the point cloud sample.

[0026] Based on further improvements to the above methods, the geometric constraint loss includes: normal consistency loss, projection consistency loss, and curvature smoothing loss; normal consistency loss is used to minimize the difference between the normal vector of the predicted point cloud and the estimated normal vector of the point cloud sample; projection consistency loss is used to minimize the distance between the predicted point cloud and its projection point on the local tangent plane; curvature smoothing loss is used to minimize the curvature difference between the predicted point cloud and its nearest neighbor points in the neighborhood.

[0027] Further improvements to the above methods include: statistical outlier removal and voxel grid downsampling filtering.

[0028] Compared with the prior art, the present invention can achieve at least one of the following beneficial effects:

[0029] 1. A refined process of overlapping block processing, progressive network iterative optimization, and weighted fusion is adopted. This process not only gradually corrects noise through multiple iterations, but also uses normal-guided bilateral filtering and incremental updates to smooth noise while further enhancing edges. Finally, weighted fusion is used to eliminate inter-block boundary artifacts, thereby achieving extremely high denoising accuracy and excellent detail preservation capabilities as a whole.

[0030] 2. By leveraging prior knowledge such as normal consistency, curvature, and manifold, edges and topology are explicitly protected; complex noise distributions are adaptively learned through deep learning; and deep learning features are constrained by the reconstruction of differential manifolds to avoid over-smoothing. This approach of integrating geometric constraints into deep learning networks ensures that the networks are guided by strict geometric rules during denoising, guiding and shaping the learning direction of the network. This effectively protects sharp features such as edges and corners of point clouds, avoiding structural distortion and over-smoothing problems common in traditional deep learning methods.

[0031] 3. A multi-scale neighborhood sampling strategy was adopted to adapt to the non-uniform density distribution of point clouds, thereby achieving stable extraction of effective features in regions with different density.

[0032] In this invention, the above-described technical solutions can be combined with each other to achieve more preferred combinations. Other features and advantages of this invention will be set forth in the following description, and some advantages may become apparent from the description or be learned by practicing the invention. The objects and other advantages of this invention can be realized and obtained from what is particularly pointed out in the description and drawings. Attached Figure Description

[0033] The accompanying drawings are for illustrative purposes only and are not intended to limit the invention. Throughout the drawings, the same reference numerals denote the same parts.

[0034] Figure 1 This is a flowchart of a point cloud static denoising method based on geometric constraints and deep learning in an embodiment of the present invention. Detailed Implementation

[0035] Preferred embodiments of the present invention will now be described in detail with reference to the accompanying drawings, which form part of this application and are used together with the embodiments of the present invention to illustrate the principles of the present invention, but are not intended to limit the scope of the present invention.

[0036] A specific embodiment of the present invention discloses a static point cloud denoising method based on geometric constraints and deep learning, such as... Figure 1 As shown, it includes the following steps:

[0037] S1. After preprocessing the point cloud to be denoised, it is divided into multiple point cloud blocks with overlapping regions;

[0038] S2. For each point cloud block, the coordinates of each point cloud are iteratively optimized multiple times using the trained denoising network. In each iteration, the predicted coordinates of each point cloud output by the denoising network are optimized using guided normal filtering and incremental updates to obtain the coordinates of each point cloud for the next iteration. The denoising network includes a dynamic graph convolutional network for extracting the geometric features of the point cloud; a first multilayer perceptron for predicting the steering vector based on the geometric features of the point cloud; and a second multilayer perceptron for outputting the predicted coordinates based on the geometric features and steering vector of the point cloud.

[0039] S3. After fusing the optimization results of each point cloud block, the denoised point cloud is obtained through post-processing filtering.

[0040] It should be noted that in step S1, the point cloud to be denoised , = That is, shared A 3D point cloud, Indicates the first Point cloud.

[0041] When preprocessing denoised point clouds, a fixed neighborhood radius and number of nearest neighbors may fail to accurately describe geometric features in sparse regions due to insufficient points, or reduce computational efficiency and feature discriminative power in dense regions due to excessive noise and irrelevant details. Therefore, a multi-scale strategy is introduced to dynamically adjust the neighborhood size. This allows for the selection of a smaller neighborhood in high-density regions to capture fine geometric details and avoid over-smoothing; while in low-density regions, the neighborhood is gradually expanded to ensure a sufficient number of effective neighboring points for stable feature computation. This dynamic adjustment mechanism effectively overcomes the limitations of fixed neighborhood parameters, making the feature extraction process more adaptable to the inherent non-uniformity of point clouds, thereby significantly improving subsequent geometric feature extraction.

[0042] Specifically, the multi-scale strategy obtains the adaptive neighborhood parameters of each point cloud based on the ratio of local density to global density, and then performs dynamic neighborhood sampling to obtain the neighborhood point set of each point cloud.

[0043] The adaptive neighborhood allocation parameters for each point cloud include: the neighborhood search radius and the number of nearest neighbors, which are calculated using the following formulas:

[0044] ,

[0045] in, and They represent point clouds respectively. The neighborhood search radius and the number of nearest neighbors, and These represent the preset baseline values ​​for the neighborhood search radius and the number of nearest neighbors, respectively, which are preset initial values ​​based on the overall scale of the entire point cloud; Point cloud The local density is calculated from the point cloud. It is obtained by counting the number of points per unit volume within a local cube centered on the cube. The global density is represented by the ratio of the bounding box volume of the entire point cloud to the total number of points. and These represent the sensitivity indices for the neighborhood search radius and the number of nearest neighbors, respectively. , The SALib library was used for global sensitivity analysis and optimization to determine the optimal response. This represents the preset minimum number of nearest neighbor points, used to ensure that there are enough points for basic calculations even in the sparsest regions.

[0046] Furthermore, for each point cloud's neighborhood point set The coordinates of each point cloud are normalized by calculating the mean and standard deviation of the neighborhood point set.

[0047] Furthermore, the preprocessed complete point cloud is divided into multiple point cloud blocks with overlapping regions.

[0048] Specifically, the sliding window method or the extended boundary method can be used. For example, the point cloud space can be divided into regular three-dimensional voxel grids, and the boundary of each voxel grid can be extended outward by 15% of its side length to form an overlapping area.

[0049] In step S2, the coordinates of each point cloud block are iteratively optimized multiple times using the trained denoising network to obtain the optimized coordinates of each point cloud in each point cloud block.

[0050] Specifically, the steps for each iteration of each point cloud block are as follows:

[0051] S21, in the In each iteration, the point clouds in the current point cloud block are input into the denoising network to obtain the predicted coordinates of each point cloud;

[0052] S22. Perform normal-guided filtering on the predicted coordinates of each point cloud to obtain the filtered coordinates of each point cloud.

[0053] S23. Incrementally update the filtered coordinates of each point cloud to obtain the optimized coordinates of each point cloud. If the preset termination condition is not met, then it is considered as the first... The coordinates of the iteration; otherwise, end the iteration.

[0054] The termination condition for iterative optimization is one or a combination of the following conditions: the number of iterations reaches a preset maximum value; the average difference between the point cloud coordinates output by the current iteration and the point cloud coordinates output by the previous iteration is less than a preset convergence threshold.

[0055] Specifically, in step S21, the denoising network is pre-trained through the following steps:

[0056] ① Preprocess the clean point cloud to construct the training dataset.

[0057] Following the preprocessing method in step S1, a multi-scale strategy is used to obtain the neighborhood point set of each point cloud in the clean point cloud, and the coordinates of the points in the neighborhood point set of each point cloud are normalized to scale the data to a uniform scale and eliminate dimensional differences.

[0058] Furthermore, the preprocessed clean point cloud Injecting Gaussian noise, impulse noise, or a mixture of these noises generates a noisy point cloud. This forms a "noisy-clean" point cloud pair for supervised learning; noisy point clouds Each point cloud is represented as However, the index order of the points remains unchanged from the neighborhood relationship, ensuring that each noisy point cloud is consistent with its corresponding clean point cloud in terms of geometric features.

[0059] Furthermore, the generated noisy point cloud computing geometric prior values ​​are: normal vector and moving least squares fitted value.

[0060] Specifically, the distribution of each neighborhood point set in three-dimensional space constitutes a tiny approximate plane for each point cloud. The covariance matrix of the neighborhood point set is calculated using principal component analysis (PCA), and the eigenvector corresponding to the smallest eigenvalue is used as the point cloud. Estimated normal vector .

[0061] For each point cloud The neighborhood point set is used to fit a local surface by weighting the neighborhood points, and then the positions of the points projected onto the fitted local surface are calculated to obtain the moving least squares fitted value. .

[0062] The noisy point cloud generated above is used as the point cloud sample for constructing the training dataset, and the corresponding clean point cloud is used as the true label of the point cloud sample. The point cloud sample, its estimated normal vector and moving least squares fitted value, and the clean point cloud are put into the training dataset.

[0063] ② Construct a noise reduction network.

[0064] It should be noted that the constructed denoising network includes, in sequence:

[0065] Dynamic Graph Convolutional Network (DGCNN) aggregates neighborhood information through edge convolution, effectively capturing the geometric features of each point cloud.

[0066] The first multilayer perceptron (MLP), based on fractional matching theory, receives geometric features extracted by a dynamic graph convolutional network and outputs guidance vectors for each point cloud, which are used to indicate the guidance information that each point cloud should move in the direction of probability density growth (i.e., the direction of denoising).

[0067] The second multilayer perceptron (MLP) outputs the predicted coordinates and predicted normal vectors of each point cloud based on the concatenation vector of the geometric features extracted by the dynamic graph convolutional network and the guiding vector generated by the first multilayer perceptron.

[0068] Specifically, the Dynamic Graph Convolutional Network (DGCNN) extracts features through multiple edge convolution operations and aggregates neighborhood information by concatenating these features, achieving a single message passing operation. The formula is shown below:

[0069] ,

[0070] in, Indicates the first Mid-layer point cloud The feature representation starts with the three-dimensional coordinates of each point cloud and uses a multi-layered stacked neural network. In each layer, the current features of the point are combined with the features and relationships of its neighboring points to gradually calculate and refine new and higher-level feature representations, encoding the geometric and semantic information of the points. It represents the feature difference between the nearest neighbor and the center point, captures the curvature of local set changes, and reflects the geometric and semantic differences between the two points; This represents a multilayer perceptron function that learns the weight assignments of local geometry. This represents the max pooling operation, which performs max pooling on all points in the neighborhood. The output should be the maximum value.

[0071] The first multilayer perceptron, based on fractional matching theory, encodes the gradient information of the point cloud probability density function, providing precise guidance with a statistical theoretical foundation for subsequent coordinate prediction. The formula is shown below:

[0072] ,

[0073] in, Point cloud The guiding vector describes the gradient field of the noise point cloud distribution, pointing in the direction of probability density growth, which is also the direction of denoising. The probability density distribution function represents a noisy point cloud; Represents computational point cloud The gradient is used to indicate the direction of point cloud displacement optimization.

[0074] The second multilayer perceptron includes a displacement field prediction module and a coordinate reconstruction module. The displacement field prediction module accurately estimates the direction and magnitude of the offset by concatenating geometric features and steering vectors, integrating local geometric priors and global contextual information. It predicts the 3D coordinate offset and normal vector for each point cloud. The coordinate reconstruction module then adds the 3D coordinate offset output from the displacement field prediction module to the original coordinates of the point cloud input to the denoising network to obtain the predicted coordinates. Finally, it outputs the predicted coordinates and predicted normal vector. This approach achieves synergistic optimization of coordinate denoising and geometric attribute estimation, not only improving denoising quality but also providing high-quality normal information, facilitating subsequent 3D processing tasks.

[0075] ③ Combine multiple loss functions, and use gradient descent optimization strategy to train the network based on the training dataset to obtain a well-trained denoising network.

[0076] It should be noted that in this embodiment, the weighted sum of supervised loss, self-supervised loss, geometric constraint loss, and manifold reconstruction loss is used as the total loss function of the denoising network; the mapping relationship from noisy point cloud to clean point cloud is learned by minimizing the combination of multiple loss functions.

[0077] The supervised loss is constructed by calculating the spatial distance difference between the predicted point cloud output by the denoising network and the real point cloud, as shown in the following formula:

[0078] ,

[0079] in, Indicates monitoring losses; Indicates real point cloud collection A point cloud (i.e., a clean point cloud); This represents the predicted point cloud set generated by the denoising network from the noisy point cloud. A point cloud; and Predict the number of point clouds and the number of real point clouds respectively.

[0080] The self-supervised loss is constructed by calculating the difference between the output of the denoising network on the geometrically transformed point cloud sample and the output of the denoising network on the point cloud sample after the same transformation, as shown in the following formula:

[0081] ,

[0082] in, Indicates self-monitoring loss, Represents the geometric transformation function. This indicates the denoising network processing operation.

[0083] Geometric constraint loss is constructed by incorporating prior geometric knowledge of the point cloud to constrain the predicted point cloud output by the denoising network to conform to geometric structural features. Geometric constraint loss includes: normal consistency loss, projection consistency loss, and curvature smoothing loss.

[0084] The normal consistency loss is used to minimize the difference between the predicted normal vector of the point cloud and the estimated normal vector of the point cloud sample, constraining the predicted normal vector to be consistent with the geometrically calculated normal vector, thus preserving edge features; the formula is shown below:

[0085] ,

[0086] in: This indicates the loss of normal uniformity. Point cloud The estimated normal vector, This indicates that the denoising network is applied to point clouds. The output predicted normal vector; This represents the L2 norm.

[0087] The projection consistency loss is used to minimize the distance between the predicted point cloud and its projected points on the local tangent plane, constraining the denoised point cloud to fall on the local tangent plane and preventing the point cloud from deviating excessively from the geometric surface; the formula is shown below:

[0088] ,

[0089] in, This indicates the loss of projection consistency. Point cloud Local tangent plane The coordinates of the projection point on the surface; It is formed by the normal line Defined tangent plane; This indicates the operation of projecting onto the tangent plane, which offsets the point cloud. Project onto the tangent plane and remove the normal direction component; Point cloud The center point of the neighborhood point set, This indicates taking the absolute value.

[0090] The curvature smoothing loss is used to minimize the curvature difference between the predicted point cloud and its nearest neighbors, constraining the curvature changes of adjacent points to be gradual and suppressing abrupt curvature changes caused by noise; the formula is shown below:

[0091] ,

[0092] in, Indicates curvature smoothing loss; Point cloud The curvature; Point cloud neighborhood point set Nearest neighbor in The curvature.

[0093] The manifold reconstruction loss is constructed by calculating the distance between the predicted point cloud output by the denoising network and the manifold surface fitted to the point cloud samples. This loss embeds prior knowledge of the potential smooth manifold of the point cloud into the network training process, effectively avoiding non-physical distortions in the denoising results. The formula is shown below:

[0094] ,

[0095] in, Indicates the manifold reconstruction loss. Point cloud The moving least squares fitted value.

[0096] Finally, the total loss of the denoising network is calculated using the following formula:

[0097] ,

[0098] in, Indicates the total loss. , , , , and These represent the weight coefficients of the corresponding loss, which are preset based on experience before training and fine-tuned on the validation set.

[0099] After determining the loss function, based on the training dataset, in each training iteration, three types of data are prepared for each training batch:

[0100] Point cloud samples, i.e. noisy point clouds, are used as input for supervised learning;

[0101] Clean point clouds serve as a true label for supervised learning;

[0102] Geometric transformation point cloud applies a random geometric transformation, such as rotating it 30° around the Z-axis, to noisy point cloud samples for self-supervised learning; the random geometric transformation is a reversible rigid transformation.

[0103] The denoising network performs two forward propagations within a training batch: supervised learning on noisy point cloud samples and self-supervised learning on geometrically transformed point clouds. In the backpropagation, the corresponding loss is calculated based on the combined loss function.

[0104] Specifically, supervised learning receives noisy point cloud samples and uses clean point clouds as the true labels for supervised learning, which is the core task of denoising. Then, in backpropagation, the supervised loss, geometric constraint loss, and manifold reconstruction loss are calculated based on the predicted values ​​output by supervised learning.

[0105] Self-supervised learning receives geometrically transformed point clouds. The predicted point clouds output by supervised learning from noisy point cloud samples undergo the same geometric transformation as the training batch, and these transformed points serve as the prediction targets for self-supervised learning. The self-supervised loss is calculated during backpropagation. This self-supervised loss cleverly utilizes random geometric transformations as a powerful source of supervisory signals. It does not rely on large amounts of labeled, clean data, but rather mines supervisory information from the point cloud data itself. This not only ensures geometric consistency but also significantly improves the applicability and robustness of the method.

[0106] This embodiment combines multiple losses to balance data-driven and prior knowledge; it employs momentum gradient descent, combined with learning rate decay and early stopping strategies, to stabilize the training process; and uses the total loss to optimize all parameters in the denoising network, ultimately training a denoising network that satisfies both point cloud denoising and normal vector estimation.

[0107] Finally, in step S21, the predicted coordinates of each point cloud in the current point cloud block are obtained using the trained denoising network.

[0108] In step S22, the normal-guided filtering is performed by calculating the weight factor of each nearest neighbor point based on the consistency of the spatial distance and normal direction between each point cloud and each nearest neighbor point in its neighborhood point set, and then taking a weighted average of the coordinates of each nearest neighbor point to obtain the filtered coordinates of each point cloud.

[0109] The weighting factor is composed of the product of the spatial distance weight and the normal consistency weight, as shown in the following formula:

[0110] ,

[0111] in, Point cloud Its nearest neighbor Weighting factors and They represent point clouds respectively. Its nearest neighbor coordinate vector, Indicates the spatial distance weighting coefficient. Indicates the normal difference weighting coefficient; Represents an exponential function. Represents computational point cloud Its nearest neighbor The Euclidean distance between them Represents computational point cloud normal vector With displacement vector The inner product of.

[0112] It should be noted that, The larger the value, the slower the weight decay of distant points; The larger the value, the higher the tolerance for normal differences; and These are all hyperparameters. We started by adjusting them from small values ​​and gradually adjusted them based on the edge effects.

[0113] Furthermore, the filtered coordinates of each point cloud are calculated using the following formula:

[0114] ,

[0115] in, This represents the point cloud during the current iteration of optimization. Coordinates after normal-guided filtering.

[0116] It should be noted that normal-guided filtering considers both spatial distance and normal consistency, comprehensively evaluating the reliability and relevance of information from each neighboring point. This greatly protects the edges and sharp features of the point cloud from damage while smoothing out noise.

[0117] Further, in step S23, the filtered coordinates of each point cloud are incrementally updated, including:

[0118] The difference between the filtered coordinates of each point cloud and the coordinates of the point clouds input in the current iteration is calculated as the coordinate update amount for each point cloud. ;

[0119] The coordinate updates of each point cloud are truncated and multiplied by the iteration step size. The result is then added to the coordinates of each point cloud in the current iteration input to obtain the optimized coordinates of each point cloud, which are used for the next iteration. The iteration step size decreases as the number of iterations increases, enabling rapid correction of large positional deviations in the early stages of iteration and fine-tuning in the later stages, effectively improving the convergence and stability of the denoising results.

[0120] Specifically, the coordinates used for the next iteration are calculated using the following formula:

[0121] ,

[0122] in, and They represent the first The point cloud input and the optimized point cloud in each iteration. Indicates the iteration step size. , This represents the truncation function, which will truncate the first... Coordinate update amount in round iteration Constraints Within this range, improve training stability.

[0123] For example, iteration step size The initial value is set to 0.9, and the decay rate is set to 0.95, decreasing with the number of iterations.

[0124] The point cloud blocks are iteratively optimized in multiple rounds to gradually correct the denoising results. After obtaining the optimized results of each point cloud block, step S3 is executed.

[0125] In step S3, the point cloud coordinates of the overlapping areas between each point cloud block are first fused, and then post-processing filtering is performed to obtain the denoised point cloud.

[0126] It should be noted that the optimization results of fusing the point cloud blocks are obtained by taking the weighted average of the coordinates of the point cloud located in the overlapping area after iterative optimization in different point cloud blocks. The weight is inversely proportional to the distance of the point cloud to the center of each point cloud block.

[0127] For example, the weights can be calculated using a Gaussian function based on the hyperparameter controlling the weight decay, with the weight decaying faster the further away from the center; or, the weights can be calculated using linear decay based on the distance from the center of the point cloud block to the farthest point.

[0128] Furthermore, the post-processing filtering includes statistical outlier removal and voxel grid downsampling filtering.

[0129] Among them, outlier removal involves calculating the number of outliers in each point cloud. To its neighborhood center point The distance, if the distance is greater than If the value is 0, it is considered an outlier and removed; among them, This represents the standard deviation of the distance to each neighborhood. Indicates a preset multiple. .

[0130] Voxel grid downsampling filtering divides the point cloud space after outlier removal into a uniform voxel grid. For each non-empty voxel, the centroid (average coordinate value) of all points within the voxel is used as a representative point, thereby reducing the point cloud density and homogenizing the point cloud distribution.

[0131] Finally, the output is a denoised 3D point cloud with high geometric structure and uniform point distribution.

[0132] Compared with existing technologies, this embodiment provides a point cloud static denoising method based on geometric constraints and deep learning. It employs a refined process of overlapping block processing, progressive network iterative optimization, and weighted fusion. This process not only gradually corrects noise through multiple iterations but also utilizes normal-guided bilateral filtering and incremental updates to smooth noise while further enhancing edges. Finally, weighted fusion eliminates inter-block boundary artifacts, achieving extremely high denoising accuracy and excellent detail preservation. By leveraging prior knowledge such as normal consistency, curvature, and manifolds, it explicitly protects edges and topology; it adaptively learns complex noise distributions through deep learning; and it constrains deep learning features through differential manifold reconstruction, avoiding over-smoothing. This method of integrating geometric constraints into the deep learning network ensures that the network is strictly guided by geometric rules during denoising, guiding and shaping the network's learning direction. This effectively protects sharp features such as edges and corners of the point cloud, avoiding structural distortion and over-smoothing problems common in traditional deep learning methods. A multi-scale neighborhood sampling strategy is employed to adaptively address the non-uniform density distribution of the point cloud, achieving stable extraction of effective features in different density regions.

[0133] Those skilled in the art will understand that all or part of the processes of the methods described in the above embodiments can be implemented by a computer program instructing related hardware, and the program can be stored in a computer-readable storage medium. The computer-readable storage medium may be a disk, optical disk, read-only memory, or random access memory, etc.

[0134] The above description is only a preferred embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any changes or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in the present invention should be included within the scope of protection of the present invention.

Claims

1. A static point cloud denoising method based on geometric constraints and deep learning, characterized in that, Includes the following steps: After preprocessing, the point cloud to be denoised is divided into multiple point cloud blocks with overlapping regions; For each point cloud block, the coordinates of each point cloud are iteratively optimized multiple times using a trained denoising network. In each iteration, the predicted coordinates of each point cloud output by the denoising network are optimized using guided normal filtering and incremental updates to obtain the coordinates of each point cloud for the next iteration. This includes: applying guided normal filtering to the predicted coordinates of each point cloud to obtain the filtered coordinates; calculating the difference between the filtered coordinates of each point cloud and the coordinates of each point cloud input in the current iteration as the coordinate update amount of each point cloud; truncating the coordinate update amount of each point cloud and multiplying it by the iteration step size, and then adding the multiplication result to the coordinates of each point cloud input in the current iteration. The denoising network is configured to obtain the optimized coordinates of each point cloud, which will be used as the coordinates for the next iteration. The denoising network sequentially includes a dynamic graph convolutional network for extracting geometric features of the point cloud; a first multilayer perceptron for predicting steering vectors based on the geometric features of the point cloud; and a second multilayer perceptron for outputting predicted coordinates based on the geometric features and steering vectors of the point cloud. The denoising network is trained by using a weighted sum of supervised loss, self-supervised loss, geometric constraint loss, and manifold reconstruction loss as the total loss function. The geometric constraint loss is constructed by introducing prior geometric knowledge of the point cloud to constrain the predicted point cloud output by the denoising network to conform to geometric structural features. After fusing the optimization results of each point cloud block, the point cloud is obtained by post-processing filtering. The optimization results of each point cloud block are obtained by taking the weighted average of the coordinates of the point cloud located in the overlapping area after iterative optimization in different point cloud blocks. The weight is inversely proportional to the distance of the point cloud to the center of each point cloud block.

2. The point cloud static denoising method based on geometric constraints and deep learning according to claim 1, characterized in that, The preprocessing of the point cloud to be denoised includes: Based on the ratio of local density to global density of each point cloud, adaptive neighborhood parameters for each point cloud are obtained, and then dynamic neighborhood sampling is performed to obtain the neighborhood point set of each point cloud. The coordinates of each point cloud are normalized based on the neighborhood point set of each point cloud.

3. The point cloud static denoising method based on geometric constraints and deep learning according to claim 2, characterized in that, The adaptive neighborhood allocation parameters for each point cloud include: neighborhood search radius and number of nearest neighbors, which are calculated using the following formulas: , in, and They represent point clouds respectively. The neighborhood search radius and the number of nearest neighbors, and These represent the preset baseline values ​​for the neighborhood search radius and the number of nearest neighbors, respectively. Point cloud Local density, Represents global density. and These represent the sensitivity indices for the neighborhood search radius and the number of nearest neighbors, respectively. This represents the preset minimum number of nearest neighbors.

4. The point cloud static denoising method based on geometric constraints and deep learning according to claim 1, characterized in that, The normal-guided filtering is based on the consistency of the spatial distance and normal direction between each point cloud and each nearest neighbor in its neighborhood point set. After calculating the weight factor of each nearest neighbor, the coordinates of each nearest neighbor are weighted and averaged to obtain the filtered coordinates of each point cloud.

5. The point cloud static denoising method based on geometric constraints and deep learning according to claim 4, characterized in that, The weighting factor is calculated using the following formula: , in, Point cloud Its nearest neighbor Weighting factors and They represent point clouds respectively. Its nearest neighbor coordinate vector, Indicates the spatial distance weighting coefficient. Indicates the normal difference weighting coefficient. Represents an exponential function. Represents computational point cloud Its nearest neighbor The Euclidean distance between them Represents computational point cloud normal vector With displacement vector The inner product of.

6. The point cloud static denoising method based on geometric constraints and deep learning according to claim 1, characterized in that, The supervised loss is constructed by calculating the spatial distance difference between the predicted point cloud output by the denoising network and the real point cloud; the self-supervised loss is constructed by calculating the difference between the output of the denoising network on the geometrically transformed point cloud sample and the result of the output of the denoising network on the point cloud sample after the same transformation; the manifold reconstruction loss is constructed by calculating the distance between the predicted point cloud output by the denoising network and the manifold surface fitted by the point cloud sample.

7. The point cloud static denoising method based on geometric constraints and deep learning according to claim 1, characterized in that, The geometric constraint loss includes: normal consistency loss, projection consistency loss, and curvature smoothing loss; the normal consistency loss is used to minimize the difference between the normal vector of the predicted point cloud and the estimated normal vector of the point cloud sample; the projection consistency loss is used to minimize the distance between the predicted point cloud and its projection point on the local tangent plane; and the curvature smoothing loss is used to minimize the curvature difference between the predicted point cloud and its nearest neighbor points in the neighborhood.

8. The point cloud static denoising method based on geometric constraints and deep learning according to claim 1, characterized in that, The post-processing filtering includes: statistical outlier removal and voxel grid downsampling filtering.

Citation Information

Patent Citations

  • Point cloud denoising method based on graph convolution network

    CN112634149A

  • Deep learning multi-statistics-based three-dimensional point cloud data noise reduction processing method and system

    CN116071495A