Training method and apparatus for point cloud denoising network model
By acquiring and processing point cloud datasets, and combining virtual camera coordinate system mapping and loss value fusion training, the problem of poor generalization ability of point cloud denoising in existing technologies is solved, and a more accurate point cloud denoising effect is achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- NINGBO INST OF MATERIALS TECH & ENG CHINESE ACAD OF SCI
- Filing Date
- 2025-12-22
- Publication Date
- 2026-05-26
Smart Images

Figure CN122089593A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technology, and in particular to a training method and apparatus for a point cloud denoising network model. Background Technology
[0002] During point cloud data acquisition, noise is often introduced due to factors such as sensor limitations, environmental interference, transmission errors, or reconstruction algorithms. This noise reduces data quality and affects downstream processing tasks such as classification and registration.
[0003] In related technologies, manual feature design is often relied upon, but this approach results in poor generalization and over-smoothing. With the development of computer technology, deep learning has gradually been used for point cloud denoising, but it typically only considers loss values determined by distance formulas. This approach ignores key local regions, leading to poor denoising results. Therefore, improving the accuracy of point cloud data denoising is crucial. Summary of the Invention
[0004] This application provides a training method and apparatus for a point cloud denoising network model.
[0005] According to a first aspect of this application, a method for training a point cloud denoising network model is provided, the method comprising:
[0006] Obtain a noisy point cloud dataset and a clean point cloud dataset, wherein the noisy point cloud dataset includes multiple noisy point cloud datasets and the clean point cloud dataset includes multiple clean point cloud datasets.
[0007] The noisy point cloud data is input into the initial point cloud denoising network model, so that the reconstructed point cloud data and the first feature vector are generated after processing by the initial point cloud denoising network model.
[0008] A first loss value is determined based on the distance between each reconstructed point cloud data and each clean point cloud data;
[0009] The clean point cloud data is input into the initial point cloud denoising network model, and after processing by the encoder in the initial point cloud denoising network model, a second feature vector is generated.
[0010] Based on the virtual camera coordinate system, the reconstructed point cloud data and the clean point cloud data are respectively mapped to generate a first feature image corresponding to the reconstructed point cloud data and a second feature image corresponding to the clean point cloud data based on the first feature vector and the second feature vector.
[0011] A second loss value is determined based on the difference between the first feature image and the second feature image;
[0012] The first loss value and the second loss value are fused together to determine the total loss value;
[0013] The initial point cloud denoising network model is trained based on the total loss value to generate a trained point cloud denoising network model.
[0014] Optionally, determining the first loss value based on the distance between each reconstructed point cloud data and each clean point cloud data includes:
[0015] Based on the distance between each clean point cloud data and each reconstructed point cloud data, a first target point cloud data is determined from the clean point cloud data for each reconstructed point cloud data.
[0016] Based on the distance between each reconstructed point cloud data and each clean point cloud data, a second target point cloud data is determined from the reconstructed point cloud data for each clean point cloud data.
[0017] A first loss value is determined based on the distance between each reconstructed point cloud data and the corresponding first target point cloud data, and the distance between each clean point cloud data and the corresponding second target point cloud data.
[0018] Optionally, the step of mapping the reconstructed point cloud data and the clean point cloud data based on a virtual camera coordinate system to generate a first feature image corresponding to the reconstructed point cloud data and a second feature image corresponding to the clean point cloud data based on the first feature vector and the second feature vector includes:
[0019] Based on the virtual camera coordinate system, the reconstructed point cloud data is rasterized and mapped to determine the first plane coordinates, the first depth value, and the first feature vector;
[0020] Based on the virtual camera coordinate system, the clean point cloud data is rasterized and mapped to determine the second plane coordinates, the second depth value, and the second feature vector;
[0021] Based on the first depth value and first feature vector of each first plane coordinate, and the second depth value and second feature vector of each second plane coordinate, determine the first target feature vector of the first pixel grid associated with each first plane coordinate and the second target feature vector of the second pixel grid associated with each second plane coordinate;
[0022] A first feature image and a second feature image are generated based on the first target feature vector of each first pixel grid and the second target feature vector of each second pixel grid.
[0023] Optionally, determining the first target feature vector of the first pixel grid associated with each first plane coordinate and the second target feature vector of the second pixel grid associated with each second plane coordinate based on the first depth value and the first feature vector of each first plane coordinate, and the second depth value and the second feature vector of each second plane coordinate, includes:
[0024] The first coverage area and the second coverage area are determined according to a preset radius, with each of the first plane coordinates and each of the second plane coordinates as the center;
[0025] Based on the first depth value and first feature vector of the first plane coordinate in each of the first coverage areas, and the second depth value and second feature vector of the second plane coordinate in each of the second coverage areas, the first target feature vector of each first pixel grid in each of the first coverage areas and the second target feature vector of each second pixel grid in each of the second coverage areas are determined respectively.
[0026] Optionally, determining the first target feature vector of each first pixel grid in each first coverage area and the second target feature vector of each second pixel grid in each second coverage area based on the first depth value and first feature vector of the first plane coordinates in each first coverage area, and the second depth value and second feature vector of the second plane coordinates in each second coverage area, respectively, includes:
[0027] In the case where there are multiple first pixel grids in any first coverage area, the first depth value of the first plane coordinates to which the first coverage area belongs is compared with the current third depth value of each first pixel grid;
[0028] If the current third depth value of any first pixel grid is greater than or equal to the first depth value of the first planar coordinate, the first depth value is determined as the first target depth value of any first pixel grid.
[0029] In the case where there are multiple second pixel grids in any second coverage area, the second depth value of the second plane coordinates to which the second coverage area belongs is compared with the current fourth depth value of each second pixel grid;
[0030] If the current fourth depth value of any second pixel grid is greater than or equal to the second depth value of the second plane coordinate, the second depth value is determined as the second target depth value of the any second pixel grid.
[0031] The first feature vector corresponding to each first target depth value is determined as the first target feature vector of the first pixel grid to which it belongs;
[0032] The second feature vector corresponding to each second target depth value is determined as the second target feature vector of the second pixel grid to which it belongs.
[0033] Optionally, determining the second loss value based on the difference between the first feature image and the second feature image includes:
[0034] The second loss value is determined based on the vector difference between the first target feature vector of each first pixel grid and the second target feature vector of the second pixel grid at the same position.
[0035] Optionally, obtaining the noisy point cloud dataset and the clean point cloud dataset includes:
[0036] The original noisy point cloud data in the noisy point cloud dataset and the original clean point cloud data in the clean point cloud dataset are mapped and normalized respectively to generate noisy point cloud data and clean point cloud data.
[0037] According to a second aspect of this application, a training apparatus for a point cloud denoising network model is provided, comprising:
[0038] The acquisition module is used to acquire a noisy point cloud dataset and a clean point cloud dataset, wherein the noisy point cloud dataset includes multiple noisy point cloud datasets and the clean point cloud dataset includes multiple clean point cloud datasets.
[0039] The first generation module is used to input the noisy point cloud data into the initial point cloud denoising network model, so that the reconstructed point cloud data and the first feature vector are generated after processing by the initial point cloud denoising network model.
[0040] The first determining module is used to determine a first loss value based on the distance between each reconstructed point cloud data and each clean point cloud data.
[0041] The second generation module is used to input the clean point cloud data into the initial point cloud denoising network model, so that the second feature vector is generated after being processed by the encoder in the initial point cloud denoising network model.
[0042] The third generation module is used to map the reconstructed point cloud data and the clean point cloud data respectively based on the virtual camera coordinate system, so as to generate a first feature image corresponding to the reconstructed point cloud data and a second feature image corresponding to the clean point cloud data based on the first feature vector and the second feature vector.
[0043] The second determining module is used to determine a second loss value based on the difference between the first feature image and the second feature image;
[0044] The fusion module is used to fuse the first loss value and the second loss value to determine the total loss value;
[0045] The training module is used to train the initial point cloud denoising network model based on the total loss value to generate a trained point cloud denoising network model.
[0046] Optionally, the first determining module is specifically used for:
[0047] Based on the distance between each clean point cloud data and each reconstructed point cloud data, a first target point cloud data is determined from the clean point cloud data for each reconstructed point cloud data.
[0048] Based on the distance between each reconstructed point cloud data and each clean point cloud data, a second target point cloud data is determined from the reconstructed point cloud data for each clean point cloud data.
[0049] A first loss value is determined based on the distance between each reconstructed point cloud data and the corresponding first target point cloud data, and the distance between each clean point cloud data and the corresponding second target point cloud data.
[0050] Optionally, the third generation module includes:
[0051] The first determining unit is used to perform rasterization mapping processing on the reconstructed point cloud data based on the virtual camera coordinate system, so as to determine the first plane coordinates, the first depth value, and the first feature vector;
[0052] The second determining unit is used to perform rasterization mapping processing on the clean point cloud data based on the virtual camera coordinate system in order to determine the second plane coordinates, the second depth value, and the second feature vector.
[0053] The third determining unit is used to determine, based on the first depth value and the first feature vector of each first plane coordinate, and the second depth value and the second feature vector of each second plane coordinate, the first target feature vector of the first pixel grid associated with each first plane coordinate and the second target feature vector of the second pixel grid associated with each second plane coordinate;
[0054] The first generation unit is configured to generate a first feature image and a second feature image based on the first target feature vector of each first pixel grid and the second target feature vector of each second pixel grid.
[0055] Optionally, the third determining unit includes:
[0056] The first determining subunit is used to determine the first coverage area and the second coverage area according to a preset radius, with each of the first plane coordinates and each of the second plane coordinates as the center of a circle;
[0057] The second determining subunit is used to determine, based on the first depth value and the first feature vector of the first plane coordinate in each of the first coverage areas, and the second depth value and the second feature vector of the second plane coordinate in each of the second coverage areas, the first target feature vector of each first pixel grid in each of the first coverage areas and the second target feature vector of each second pixel grid in each of the second coverage areas.
[0058] Optionally, the second determining subunit is specifically used for:
[0059] In the case where there are multiple first pixel grids in any first coverage area, the first depth value of the first plane coordinates to which the first coverage area belongs is compared with the current third depth value of each first pixel grid;
[0060] If the current third depth value of any first pixel grid is greater than or equal to the first depth value of the first planar coordinate, the first depth value is determined as the first target depth value of any first pixel grid.
[0061] In the case where there are multiple second pixel grids in any second coverage area, the second depth value of the second plane coordinates to which the second coverage area belongs is compared with the current fourth depth value of each second pixel grid;
[0062] If the current fourth depth value of any second pixel grid is greater than or equal to the second depth value of the second plane coordinate, the second depth value is determined as the second target depth value of the any second pixel grid.
[0063] The first feature vector corresponding to each first target depth value is determined as the first target feature vector of the first pixel grid to which it belongs;
[0064] The second feature vector corresponding to each second target depth value is determined as the second target feature vector of the second pixel grid to which it belongs.
[0065] Optionally, the second determining module is specifically used for:
[0066] The second loss value is determined based on the vector difference between the first target feature vector of each first pixel grid and the second target feature vector of the second pixel grid at the same position.
[0067] Optionally, the acquisition module is specifically used for:
[0068] The original noisy point cloud data in the noisy point cloud dataset and the original clean point cloud data in the clean point cloud dataset are mapped and normalized respectively to generate noisy point cloud data and clean point cloud data.
[0069] According to a third aspect of this application, an electronic device is provided, comprising: a processor and a memory storing computer program instructions; the processor, when executing the computer program instructions, implements any of the above-described training methods for point cloud denoising network models.
[0070] According to a fourth aspect of this application, a computer-readable storage medium is provided, on which computer program instructions are stored, which, when executed by a processor, implement any of the above-described training methods for point cloud denoising network models.
[0071] In summary, the training method and apparatus for the point cloud denoising network model provided in this application have at least the following beneficial effects: First, a noisy point cloud dataset and a clean point cloud dataset can be obtained. The noisy point cloud dataset includes multiple noisy point cloud data sets, and the clean point cloud dataset includes multiple clean point cloud data sets. Then, the noisy point cloud data can be input into an initial point cloud denoising network model. After processing by the initial point cloud denoising network model, reconstructed point cloud data and a first feature vector are generated. Next, based on the distance between each reconstructed point cloud data set and each clean point cloud data set, a first loss value is determined. Finally, the clean point cloud data is input into the initial point cloud denoising network model. The initial point cloud denoising network model generates a second feature vector through encoder processing. Then, based on the virtual camera coordinate system, the reconstructed point cloud data and clean point cloud data are mapped separately. Based on the first and second feature vectors, a first feature image corresponding to the reconstructed point cloud data and a second feature image corresponding to the clean point cloud data are generated. A second loss value is determined based on the difference between the first and second feature images. The first and second loss values are then fused to determine the total loss value. The initial point cloud denoising network model is then trained based on the total loss value to generate a trained point cloud denoising network model. Therefore, in the training process of the point cloud denoising network model, by combining the point cloud reconstruction loss value and the contour perception loss value, both global structure and local geometric details are fully considered. Thus, the point cloud data generated by the trained point cloud denoising network model for denoising the noisy point cloud contains both global structural integrity and complex local geometric details, improving the accuracy and reliability of point cloud denoising. Attached Figure Description
[0072] To more clearly illustrate the specific embodiments of this application or the technical solutions in the prior art, the drawings used in the description of the specific embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0073] Figure 1 A flowchart illustrating a training method for a point cloud denoising network model provided for embodiments of this application;
[0074] Figure 2 A schematic diagram illustrating the training process of a point cloud denoising network model provided for an embodiment of this application;
[0075] Figure 3 A schematic diagram of a rasterization process provided for an embodiment of this application;
[0076] Figure 4 A detailed schematic diagram illustrating the steps of a rasterization process provided for an embodiment of this application;
[0077] Figure 5 A qualitative comparison chart of various denoising methods on the PU-Net dataset is provided for embodiments of this application;
[0078] Figure 6 A qualitative comparison graph with other methods on the ScanNet++ dataset is provided for embodiments of this application;
[0079] Figure 7 A structural diagram of a training device for a point cloud denoising network model provided in an embodiment of this application;
[0080] Figure 8 This is a structural diagram of an electronic device provided as an embodiment of the present application. Detailed Implementation
[0081] To make the above and other features and advantages of this application clearer, the application is further described below with reference to the accompanying drawings. It should be understood that the specific embodiments given herein are for the purpose of explanation to those skilled in the art, and are exemplary only, not restrictive.
[0082] In the following description, numerous specific details are set forth to provide a thorough understanding of this application. However, it will be apparent to those skilled in the art that the specific details are not required to practice this application. In other instances, well-known steps or operations have not been described in detail to avoid obscuring this application.
[0083] The training method for the point cloud denoising network model provided in this application embodiment can be executed by the training device for the point cloud denoising network model provided in this application embodiment, which can be configured in an electronic device.
[0084] It is understood that the training method of the point cloud denoising network model provided in this application can be applied to any point cloud denoising scenario, such as denoising point cloud data collected by radar, denoising point cloud data collected by depth camera, etc. This application does not limit the source or type of point cloud data.
[0085] refer to Figure 1 This application provides a method for training a point cloud denoising network model, the method comprising:
[0086] Step 101: Obtain a noisy point cloud dataset and a clean point cloud dataset. The noisy point cloud dataset includes multiple noisy point cloud datasets, and the clean point cloud dataset includes multiple clean point cloud datasets.
[0087] In this context, noisy point cloud data can be understood as point cloud data containing noise interference, or raw, unprocessed point cloud data, while clean point cloud data can be understood as point cloud data that has undergone denoising processing and is free of noise interference. A noisy point cloud dataset contains multiple noisy point cloud datasets, and a clean point cloud dataset contains multiple clean point cloud datasets.
[0088] Optionally, the original noisy point cloud data in the noisy point cloud dataset and the original clean point cloud data in the clean point cloud dataset can be mapped and normalized respectively to generate noisy point cloud data and clean point cloud data.
[0089] Specifically, the coordinates (x, y, z) of the original noisy point cloud data can be first mapped to [0, 1], and then scaled to [-1, 1]. The mapping and scaling can satisfy the following relationship:
[0090]
[0091] Therefore, through the above mapping and scaling processes, the original noisy point cloud data and the original clean point cloud data can be normalized to the normalized device coordinate (NDC) space, generating normalized noisy point cloud data and clean point cloud data, providing a solid data foundation for subsequent processing.
[0092] Step 102: Input the noisy point cloud data into the initial point cloud denoising network model so that the reconstructed point cloud data and the first feature vector can be generated after processing by the initial point cloud denoising network model.
[0093] The initial point cloud denoising network model can be a point-voxel convolutional neural network (PVCNN) with a U-Net structure, or other network models that include encoders and decoders and can output reconstructed point cloud data and feature vectors. This application does not limit the choice of network model.
[0094] In addition, the first feature vector can be the feature vector corresponding to the noisy point cloud data, which can be used to better characterize the geometric features of the noisy point cloud data.
[0095] Optionally, the initial point cloud denoising network model may also include an encoder, a decoder, and a reconstruction module based on a multi-layer perceptron (MLP). The encoder is used to extract multi-layer geometric features of the point cloud, the decoder is used to output point-by-point features corresponding to each point of the input point cloud so that it contains both global semantics and local details, and the MLP reconstruction module is used to reconstruct the features to obtain reconstructed point cloud data, etc. This application does not limit this.
[0096] Step 103: Determine the first loss value based on the distance between each reconstructed point cloud data and each clean point cloud data.
[0097] Understandably, a first loss value is determined based on the distance between each reconstructed point cloud data and each clean point cloud data. This first loss value, also known as the reconstructed point cloud loss value, can be used to measure the overall difference between the reconstructed point cloud data and the clean point cloud data in three-dimensional space, and can characterize the global structural integrity.
[0098] Optionally, a first target point cloud data can be determined from the clean point cloud data for each reconstructed point cloud data based on the distance between each clean point cloud data and each reconstructed point cloud data. Then, a second target point cloud data can be determined from the reconstructed point cloud data for each clean point cloud data based on the distance between each reconstructed point cloud data and each clean point cloud data. Finally, a first loss value can be determined based on the distance between each reconstructed point cloud data and the corresponding first target point cloud data, and the distance between each clean point cloud data and the corresponding second target point cloud data.
[0099] Among them, the distance between each clean point cloud data and each reconstructed point cloud data, and the distance between each reconstructed point cloud data and each clean point cloud data can be determined by Euclidean distance, Manhattan distance, Chebyshev distance, etc.
[0100] Understandably, the distance between each clean point cloud data and each reconstructed point cloud data can be determined separately. Then, the clean point cloud data closest to the current reconstructed point cloud data can be designated as the first target point cloud data. Next, the distance between each reconstructed point cloud data and each clean point cloud data can be determined, and the reconstructed point cloud data closest to the current clean point cloud data can be designated as the second target point cloud data. Then, the distances between each reconstructed point cloud data and its corresponding first target point cloud data, and the distances between each clean point cloud data and its corresponding second target point cloud data, can be fused. For example, the result of directly summing the two can be used as the first loss value, or the sum of the two and then the average can be used as the first loss value, etc. This application does not limit this approach.
[0101] Therefore, in this embodiment of the application, a first loss value containing local bias and global distribution can be determined based on the bidirectional distance between the reconstructed point cloud data and the clean point cloud data, thereby better characterizing the overall difference and structural integrity of the reconstructed point cloud data and the clean point cloud data in three-dimensional space.
[0102] Step 104: Input the clean point cloud data into the initial point cloud denoising network model so that the encoder in the initial point cloud denoising network model can process the data and generate the second feature vector.
[0103] The encoder in the initial point cloud denoising network model can process the clean point cloud data to generate the corresponding second feature vector, which can better reflect the geometric characteristics of the clean point cloud data.
[0104] Step 105: Based on the virtual camera coordinate system, the reconstructed point cloud data and the clean point cloud data are mapped to generate a first feature image corresponding to the reconstructed point cloud data and a second feature image corresponding to the clean point cloud data based on the first feature vector and the second feature vector.
[0105] In this process, a virtual camera can be placed directly in front of the point cloud data, facing the positive z-axis, and a virtual camera coordinate system can be established. First, the reconstructed point cloud data and the clean point cloud data are transformed into the virtual camera coordinate system to obtain the corresponding three-dimensional coordinates. Then, a perspective projection transformation is performed based on the virtual camera coordinate system to determine the first plane coordinates corresponding to the reconstructed point cloud data and the second plane coordinates corresponding to the clean point cloud data. Then, based on the first plane coordinates and the second plane coordinates, the first feature vector and the second feature vector are processed to determine the corresponding first feature image and the second feature image.
[0106] The perspective projection transformation can satisfy the following relationship:
[0107]
[0108] Where f is the camera focal length, (x,y,z) are the three-dimensional coordinates of the point cloud data in the virtual camera coordinate system, and (x',y') are the two-dimensional coordinates projected onto the image plane.
[0109] Optionally, the reconstructed point cloud data can first be rasterized based on the virtual camera coordinate system to determine the first plane coordinates, the first depth value, and the first feature vector. Then, the clean point cloud data can be rasterized based on the virtual camera coordinate system to determine the second plane coordinates, the second depth value, and the second feature vector.
[0110] The image resolution can be set to 256×256, or 128×128, or 512×512, etc. That is, the number of pixel grids in the rasterization mapping will be different depending on the image resolution. This application does not limit this.
[0111] Since the virtual camera is positioned directly in front of the reconstructed point cloud data and the clean point cloud data, the z-value of each reconstructed point cloud data can be determined as the corresponding first depth value, and the z-value of each clean point cloud data can be determined as the corresponding second depth value. Alternatively, the z-values of each reconstructed point cloud data and each clean point cloud data can be processed in the same way and then determined as the first depth value, the second depth value, etc. This application does not limit this.
[0112] Understandably, after rasterizing the reconstructed point cloud data, we can obtain the first planar coordinates and first depth value corresponding to each reconstructed point cloud data. Since the first feature vector corresponds to the reconstructed point cloud data, the first planar coordinates, first depth value, and first feature vector obtained after rasterizing the reconstructed point cloud data also correspond to each other. Similarly, after rasterizing the clean point cloud data, we can obtain the second planar coordinates and second depth value corresponding to each clean point cloud data. Since the second feature vector corresponds to the clean point cloud data, the second planar coordinates, second depth value, and second feature vector obtained after rasterizing the clean point cloud data also correspond to each other.
[0113] Then, based on the first depth value and first feature vector of each first plane coordinate, and the second depth value and second feature vector of each second plane coordinate, the first target feature vector of the first pixel grid associated with each first plane coordinate and the second target feature vector of the second pixel grid associated with each second plane coordinate are determined. Then, based on the first target feature vector of each first pixel grid and the second target feature vector of each second pixel grid, the first feature image and the second feature image are generated.
[0114] Optionally, the first coverage area and the second coverage area can be determined firstly with each first plane coordinate and each second plane coordinate as the center and according to a preset radius. Then, based on the first depth value and the first feature vector of the first plane coordinate in each first coverage area, and the second depth value and the second feature vector of the second plane coordinate in each second coverage area, the first target feature vector of each first pixel grid in each first coverage area and the second target feature vector of each second pixel grid in each second coverage area can be determined respectively.
[0115] The preset radius can be a pre-set value, such as 0.01, 0.015, 0.02, etc., and can also be adjusted according to actual needs. This application does not limit this.
[0116] It is understandable that a first coverage area may contain one or more first pixel grids, and different first coverage areas may have overlapping first pixel grids. Therefore, for each first pixel grid, a first target feature vector can be determined from the first feature vectors of the corresponding multiple first planar coordinates based on the first depth value of its respective first coverage area. Similarly, a second coverage area may contain one or more second pixel grids, and different second coverage areas may have overlapping second pixel grids. Therefore, for each second pixel grid, a second target feature vector can be determined from the second feature vectors of the corresponding multiple second planar coordinates based on the second depth value of its respective second coverage area.
[0117] Optionally, if there are multiple first pixel grids in any first coverage area, the first depth value of the first plane coordinates to which any first coverage area belongs can be compared with the current third depth value of each first pixel grid. If the current third depth value of any first pixel grid is greater than or equal to the first depth value of the first plane coordinates, the first depth value can be determined as the first target depth value of any first pixel grid.
[0118] For example, if a first pixel grid 1 exists in a first coverage area 1 of a first plane coordinate 1, and the first pixel grid 1 is currently only in the first coverage area 1, then the first depth value 1 of the first plane coordinate 1 to which the first coverage area 1 belongs can be determined as the current third depth value 1 of the first pixel grid 1. Then, if the first pixel grid 1 also exists in a first coverage area 2 of a first plane coordinate 2, then the first depth value 2 of the first plane coordinate 2 to which the first coverage area 2 belongs can be compared with the current third depth value 1 of the first pixel grid 1. If the first depth value 2 is less than the third depth value 1, then the first depth value 2 can be determined as the current third depth value 2 of the first pixel grid 1. Then, if other first coverage areas do not involve the first pixel grid 1, then the third depth value 2 is the first target depth value of the first pixel grid 1.
[0119] If other first coverage areas also involve the first pixel grid, then the first depth value of the other first coverage areas can be compared with the current third depth value of the first pixel grid 1 in sequence according to the above process to determine the final first target depth value.
[0120] It should be noted that the above examples are merely illustrative and should not be construed as limiting the method of determining the first target depth value of the first pixel grid in the embodiments of this application.
[0121] Then, if there are multiple second pixel grids in any second coverage area, the second depth value of the second plane coordinates to which any second coverage area belongs is compared with the current fourth depth value of each second pixel grid. If the current fourth depth value of any second pixel grid is greater than or equal to the second depth value of the second plane coordinates, the second depth value is determined as the second target depth value of any second pixel grid.
[0122] For example, if a second pixel grid 1 exists in a second coverage area 1 of a second plane coordinate 1, and this second pixel grid 1 is currently only in the second coverage area 1, then the second depth value 1 of the second plane coordinate 1 to which the second coverage area 1 belongs can be determined as the current fourth depth value 1 of the second pixel grid 1. Then, if the second pixel grid 1 also exists in a second coverage area 2 of a second plane coordinate 2, then the second depth value 2 of the second plane coordinate 2 to which the second coverage area 2 belongs can be compared with the current fourth depth value 1 of the second pixel grid 1. If the second depth value 2 is less than the fourth depth value 1, then the second depth value 2 can be determined as the current fourth depth value 2 of the second pixel grid 1. Then, if the second pixel grid 1 is not included in other second coverage areas, the fourth depth value 2 can be determined as the second target depth value of the second pixel grid 1. Then, if the second pixel grid 1 also exists in other second coverage areas, the second depth values of the other second coverage areas can be compared sequentially with the current fourth depth value of the second pixel grid 1 according to the above process to finally determine the second target depth value.
[0123] It should be noted that the above examples are merely illustrative and should not be construed as limiting the method of determining the second target depth value of the second pixel grid in the embodiments of this application.
[0124] Then, the first feature vector corresponding to each first target depth value is determined as the first target feature vector of the first pixel grid to which it belongs, and the second feature vector corresponding to each second target depth value is determined as the second target feature vector of the second pixel grid to which it belongs.
[0125] It is understandable that, since each reconstructed point cloud data corresponds to a first plane coordinate, a first depth value, and a first feature vector, after determining the first target depth value of the first pixel grid, the first feature vector corresponding to that first target depth value can also be determined as the first target feature vector of the first pixel grid. Similarly, since each clean point cloud data corresponds to a second plane coordinate, a second depth value, and a second feature vector, after determining the second target depth value of the second pixel grid, the second feature vector corresponding to that second target depth value can also be determined as the second target feature vector of the second pixel grid.
[0126] Therefore, in this embodiment, the reconstructed point cloud data can first be transformed into a two-dimensional image plane through perspective projection. For multiple reconstructed point cloud data mapped to the same first pixel grid, only the point cloud data with the smallest depth value is retained to avoid occlusion, and the first feature vector associated with the smallest depth value is also assigned to the first pixel grid as the first target feature vector of the first pixel grid. This realizes the process of accurately projecting the high-dimensional features of the reconstructed point cloud data point by point to the corresponding pixels of the two-dimensional rasterized image. Then, a first feature map is generated based on the first target feature vector, so that the generated first feature map can better represent the local geometric details in the reconstructed point cloud data. Correspondingly, after the clean point cloud data is processed in the same way, the generated second feature map can also better represent the local geometric details in the clean point cloud data.
[0127] Step 106: Determine the second loss value based on the difference between the first feature image and the second feature image.
[0128] Specifically, the second loss value can be determined using the contour loss perception function based on the difference between each first target feature vector in the first feature image and each second target feature vector in the second feature image.
[0129] Optionally, the second loss value can be determined based on the vector difference between the first target feature vector of each first pixel grid and the second target feature vector of the second pixel grid at the same position.
[0130] The contour loss sensing function can satisfy the following relationship:
[0131]
[0132] Where N and M are the number of rows and columns of the rasterized 2D image, RasterP is the first target feature vector, and RasterG is the second target feature vector.
[0133] Then, using the aforementioned contour loss perception function, and combining the vector difference between the first target feature vector of each first pixel grid and the second target feature vector of the second pixel grid at the same position, the second loss value can be determined. Thus, by calculating the difference at the pixel level, points with incorrect positions can be continuously penalized.
[0134] Step 107: The first loss value and the second loss value are fused together to determine the total loss value.
[0135] In the process of fusing the first loss value and the second loss value, there are multiple ways to fuse them. For example, the first loss value and the second loss value can be directly summed to obtain the total loss value; or, the two can be weighted and fused to obtain the total loss value.
[0136] For example, the total loss function, the first loss function, and the second loss function can satisfy the following relationship:
[0137]
[0138] in, This is the first loss function, also known as the point cloud reconstruction loss function. The second loss function, also known as the contour-aware loss function, is λ, which is the contour-aware loss weight. It can be used to balance the preservation of global structure and local geometric details. By adjusting λ, the model can achieve the best balance between the two.
[0139] Understandably, during the training of the initial point cloud denoising network model, the contour-aware loss function is fully considered, which can accurately constrain the geometric contour of the point cloud, better restore the geometric details of the point cloud, and thus achieve point cloud denoising with complex geometry awareness.
[0140] Step 108: Train the initial point cloud denoising network model based on the total loss value to generate the trained point cloud denoising network model.
[0141] The total loss value can be determined based on the aforementioned total loss function. In other words, by combining the point cloud reconstruction loss value with the contour perception loss value, both the global structural accuracy and local geometric details can be well represented. This total loss value is then used to train the initial point cloud denoising network model. This process is iterated until the initial point cloud denoising network model converges or reaches the preset number of iterations, at which point training stops, resulting in a fully trained point cloud denoising network model with good performance. This model can then be used to process noisy point cloud data, ensuring that the predicted point cloud data output after processing contains both global structural integrity and complex local geometric details, thus improving the accuracy of point cloud denoising.
[0142] It is understood that the training method of the point cloud denoising network model provided in this application can be applied to any point cloud denoising scenario. The following... Figure 2 The training process of the point cloud denoising network model provided in this application is briefly explained.
[0143] like Figure 2 As shown, noisy point cloud data is abbreviated as... This data can be input into the initial point cloud denoising network model (Denoising U-Net). After processing by this initial point cloud denoising network model, the reconstructed point cloud data (Predicted Point Cloud, abbreviated as P) can be obtained. Then, based on the distance between P and the clean point cloud data GT, the first loss value L can be determined. reconstruction The point cloud data of P and the first feature vector are rasterized and projected onto a two-dimensional plane to obtain a rasterized image of the reconstructed point cloud data. The second feature vector of the clean point cloud data is also rasterized and projected onto the two-dimensional plane to obtain a rasterized image of the clean point cloud data. Then, based on the difference between the rasterized images of the reconstructed and clean point cloud data, the second loss value L is determined. contour Then, based on the total loss value... The initial point cloud denoising network model is trained to generate a fully trained point cloud denoising network model.
[0144] Furthermore, based on a virtual camera coordinate system, the reconstructed point cloud data and the clean point cloud data can be mapped separately to generate a first feature image corresponding to the reconstructed point cloud data and a second feature image corresponding to the clean point cloud data, based on the first feature vector and the second feature vector. Taking the reconstructed point cloud data as an example... Figure 3 The rasterization process shown involves placing a virtual camera directly in front of the reconstructed point cloud data and mapping the reconstructed point cloud data P onto a two-dimensional plane based on the virtual camera coordinate system to obtain a rasterized image, where F is the first feature vector. Clean point cloud data is processed in the same way to generate a corresponding rasterized image.
[0145] Furthermore, for noisy point cloud data, it can first be normalized to NDC, then perspective projection is performed, and the first coverage area is determined according to a preset radius. The data is then sorted according to the depth values of each first pixel grid to generate the corresponding rasterized image. This process is as follows: Figure 4 As shown.
[0146] The training method of the point cloud denoising network model provided in this application will be explained below, using the object dataset PU-Net and the indoor scene dataset ScanNet.
[0147] For ease of description, the training method of the point cloud denoising network model provided in this application is referred to as this method.
[0148] Table 1 shows the performance comparison of this method with other denoising methods on the PU-Net and PC-Net datasets, illustrating the statistical results of point cloud denoising metrics under different point cloud densities and Gaussian noise.
[0149] Table 1 shows the point cloud denoising metrics for each denoising method on the PU-Net and PC-Net datasets.
[0150]
[0151] Table 2 shows the registration results of this method and other denoising methods in different scenarios of the ScanNet dataset.
[0152] Table 2 shows the registration comparison statistics for different scenarios on the ScanNet dataset.
[0153]
[0154] Figure 5 and Figure 6 The denoising results of our method compared to other denoising methods are presented on the object dataset PU-Net and the indoor scene dataset ScanNet++. Figure 5 As shown, this method results in a smoother surface and clearer details after noise reduction. Figure 6 As shown in the qualitative comparison chart between our method and the P2P-Bridge method on the ScanNet++ dataset, our method is more robust to geometric detail recovery and produces sharper contour edges under real noise conditions.
[0155] Based on Tables 1 and 2 above, and Figure 5 , Figure 6 The experimental results show that, compared with existing methods, the point cloud denoising method provided in this application significantly improves the point cloud denoising accuracy, better preserves the geometric contour details of the point cloud, and achieves better results in P2F, CD and other indicators.
[0156] It should be noted that the above examples are merely illustrative and should not be construed as limiting the point cloud denoising network model training in the embodiments of this application.
[0157] In this embodiment, a noisy point cloud dataset and a clean point cloud dataset can be obtained first. The noisy point cloud dataset includes multiple noisy point cloud data sets, and the clean point cloud dataset includes multiple clean point cloud data sets. The noisy point cloud data sets can then be input into an initial point cloud denoising network model. After processing by the initial point cloud denoising network model, reconstructed point cloud data and a first feature vector are generated. Then, based on the distance between each reconstructed point cloud data set and each clean point cloud data set, a first loss value is determined. Finally, the clean point cloud data are input into the initial point cloud denoising network model for further processing. The algorithm processes the data to generate a second feature vector. Then, based on the virtual camera coordinate system, it maps the reconstructed point cloud data and the clean point cloud data separately. Based on the first and second feature vectors, it generates a first feature image corresponding to the reconstructed point cloud data and a second feature image corresponding to the clean point cloud data. A second loss value is determined based on the difference between the first and second feature images. The first and second loss values are then fused to determine the total loss value. The initial point cloud denoising network model is then trained based on the total loss value to generate a trained point cloud denoising network model. Therefore, in the training process of the point cloud denoising network model, by combining the point cloud reconstruction loss value and the contour perception loss value, both global structure and local geometric details are fully considered. Thus, the point cloud data generated by the trained point cloud denoising network model for denoising the noisy point cloud contains both global structural integrity and complex local geometric details, improving the accuracy and reliability of point cloud denoising.
[0158] According to this application, a training device 700 for a point cloud denoising network model is provided, such as... Figure 7 As shown, the device 700 includes an acquisition module 710, a first generation module 720, a first determination module 730, a second generation module 740, a third generation module 750, a second determination module 760, a fusion module 770, and a training module 780.
[0159] The acquisition module 710 is used to acquire a noisy point cloud dataset and a clean point cloud dataset, wherein the noisy point cloud dataset includes multiple noisy point cloud datasets and the clean point cloud dataset includes multiple clean point cloud datasets.
[0160] The first generation module 720 is used to input the noisy point cloud data into the initial point cloud denoising network model, so that the reconstructed point cloud data and the first feature vector are generated after processing by the initial point cloud denoising network model.
[0161] The first determining module 730 is used to determine a first loss value based on the distance between each of the reconstructed point cloud data and each of the clean point cloud data.
[0162] The second generation module 740 is used to input the clean point cloud data into the initial point cloud denoising network model, so that the second feature vector is generated after being processed by the encoder in the initial point cloud denoising network model.
[0163] The third generation module 750 is used to map the reconstructed point cloud data and the clean point cloud data respectively based on the virtual camera coordinate system, so as to generate a first feature image corresponding to the reconstructed point cloud data and a second feature image corresponding to the clean point cloud data based on the first feature vector and the second feature vector.
[0164] The second determining module 760 is used to determine a second loss value based on the difference between the first feature image and the second feature image.
[0165] The fusion module 770 is used to fuse the first loss value and the second loss value to determine the total loss value.
[0166] Training module 780 is used to train the initial point cloud denoising network model based on the total loss value to generate a trained point cloud denoising network model.
[0167] Optionally, the first determining module 730 is specifically used for:
[0168] Based on the distance between each clean point cloud data and each reconstructed point cloud data, a first target point cloud data is determined from the clean point cloud data for each reconstructed point cloud data.
[0169] Based on the distance between each reconstructed point cloud data and each clean point cloud data, a second target point cloud data is determined from the reconstructed point cloud data for each clean point cloud data.
[0170] A first loss value is determined based on the distance between each reconstructed point cloud data and the corresponding first target point cloud data, and the distance between each clean point cloud data and the corresponding second target point cloud data.
[0171] Optionally, the third generation module 750 includes:
[0172] The first determining unit is used to perform rasterization mapping processing on the reconstructed point cloud data based on the virtual camera coordinate system, so as to determine the first plane coordinates, the first depth value, and the first feature vector;
[0173] The second determining unit is used to perform rasterization mapping processing on the clean point cloud data based on the virtual camera coordinate system in order to determine the second plane coordinates, the second depth value, and the second feature vector.
[0174] The third determining unit is used to determine, based on the first depth value and the first feature vector of each first plane coordinate, and the second depth value and the second feature vector of each second plane coordinate, the first target feature vector of the first pixel grid associated with each first plane coordinate and the second target feature vector of the second pixel grid associated with each second plane coordinate;
[0175] The first generation unit is configured to generate a first feature image and a second feature image based on the first target feature vector of each first pixel grid and the second target feature vector of each second pixel grid.
[0176] Optionally, the third determining unit includes:
[0177] The first determining subunit is used to determine the first coverage area and the second coverage area according to a preset radius, with each of the first plane coordinates and each of the second plane coordinates as the center of a circle;
[0178] The second determining subunit is used to determine, based on the first depth value and the first feature vector of the first plane coordinate in each of the first coverage areas, and the second depth value and the second feature vector of the second plane coordinate in each of the second coverage areas, the first target feature vector of each first pixel grid in each of the first coverage areas and the second target feature vector of each second pixel grid in each of the second coverage areas.
[0179] Optionally, the second determining subunit is specifically used for:
[0180] In the case where there are multiple first pixel grids in any first coverage area, the first depth value of the first plane coordinates to which the first coverage area belongs is compared with the current third depth value of each first pixel grid;
[0181] If the current third depth value of any first pixel grid is greater than or equal to the first depth value of the first planar coordinate, the first depth value is determined as the first target depth value of any first pixel grid.
[0182] In the case where there are multiple second pixel grids in any second coverage area, the second depth value of the second plane coordinates to which the second coverage area belongs is compared with the current fourth depth value of each second pixel grid;
[0183] If the current fourth depth value of any second pixel grid is greater than or equal to the second depth value of the second plane coordinate, the second depth value is determined as the second target depth value of the any second pixel grid.
[0184] The first feature vector corresponding to each first target depth value is determined as the first target feature vector of the first pixel grid to which it belongs;
[0185] The second feature vector corresponding to each second target depth value is determined as the second target feature vector of the second pixel grid to which it belongs.
[0186] Optionally, the second determining module 760 is specifically used for:
[0187] The second loss value is determined based on the vector difference between the first target feature vector of each first pixel grid and the second target feature vector of the second pixel grid at the same position.
[0188] Optionally, the acquisition module 710 is specifically used for:
[0189] The original noisy point cloud data in the noisy point cloud dataset and the original clean point cloud data in the clean point cloud dataset are mapped and normalized respectively to generate noisy point cloud data and clean point cloud data.
[0190] The training device for the point cloud denoising network model provided in this application can first acquire a noisy point cloud dataset and a clean point cloud dataset. The noisy point cloud dataset includes multiple noisy point cloud data points, and the clean point cloud dataset includes multiple clean point cloud data points. Then, the noisy point cloud data can be input into an initial point cloud denoising network model. After processing by the initial point cloud denoising network model, reconstructed point cloud data and a first feature vector are generated. Next, based on the distance between each reconstructed point cloud data point and each clean point cloud data point, a first loss value is determined. Finally, the clean point cloud data is input into the initial point cloud denoising network model for further processing. The encoder in the network model generates a second feature vector. Then, based on the virtual camera coordinate system, the reconstructed point cloud data and the clean point cloud data are mapped separately to generate a first feature image corresponding to the reconstructed point cloud data and a second feature image corresponding to the clean point cloud data, based on the first and second feature vectors. A second loss value is determined based on the difference between the first and second feature images. The first and second loss values are then fused to determine the total loss value. The initial point cloud denoising network model is then trained based on the total loss value to generate a trained point cloud denoising network model. Therefore, in the training process of the point cloud denoising network model, by combining the point cloud reconstruction loss value and the contour perception loss value, both global structure and local geometric details are fully considered. Thus, the point cloud data generated by the trained point cloud denoising network model for denoising the noisy point cloud contains both global structural integrity and complex local geometric details, improving the accuracy and reliability of point cloud denoising.
[0191] It should be understood that the specific features, operations, and details described herein with respect to the methods of this application can also be similarly applied to the apparatus and system of this application, or vice versa. Furthermore, each step of the methods of this application described above can be performed by a corresponding component or unit of the apparatus or system of this application.
[0192] It should be understood that the various modules / units of the device of this application can be implemented wholly or partially through software, hardware, firmware, or a combination thereof. Each module / unit can be embedded in the processor of the electronic device in hardware or firmware form or independent of the processor, or it can be stored in the memory of the electronic device in software form for the processor to call to execute the operation of each module / unit. Each module / unit can be implemented as an independent component or module, or two or more modules / units can be implemented as a single component or module.
[0193] like Figure 8 As shown, this application provides an electronic device 800, which includes a processor 801 and a memory 802 storing computer program instructions. The processor 801 executes the computer program instructions to implement the steps of the training method for the point cloud denoising network model described above. This electronic device 800 can be broadly categorized as a server, terminal, or any other electronic device with the necessary computing and / or processing capabilities.
[0194] In one embodiment, the electronic device 800 may include a processor, memory, network interface, communication interface, etc., connected via a system bus. The processor of the electronic device 800 can be used to provide necessary computing, processing, and / or control capabilities. The memory of the electronic device 800 may include non-volatile storage media and internal memory. The non-volatile storage media may store an operating system, computer programs, etc. The internal memory can provide an environment for the operation of the operating system and computer programs in the non-volatile storage media. The network interface and communication interface of the electronic device 800 can be used to connect and communicate with external devices via a network. When the computer program is executed by the processor, it performs the steps of the method of this application.
[0195] This application provides a computer-readable storage medium storing computer program instructions, which, when executed by a processor, implement the training method of the point cloud denoising network model described above.
[0196] Those skilled in the art will understand that the method steps of this application can be performed by a computer program instructing related hardware, such as electronic device 800 or processor. The computer program can be stored in a non-transitory computer-readable storage medium, and its execution causes the steps of this application to be performed. Depending on the context, any reference herein to memory, storage, or other media may include non-volatile or volatile memory. Examples of non-volatile memory include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), flash memory, magnetic tape, floppy disk, magneto-optical data storage device, optical data storage device, hard disk, solid-state drive, etc. Examples of volatile memory include random access memory (RAM), external cache memory, etc.
[0197] The technical features described above can be combined arbitrarily. Although not all possible combinations of these technical features are described, any combination of these technical features should be considered to be covered by this specification, provided that such combination does not contain contradictions.
[0198] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some or all of the technical features therein. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of this application.
Claims
1. A training method for a point cloud denoising network model, characterized in that, include: Obtain a noisy point cloud dataset and a clean point cloud dataset, wherein the noisy point cloud dataset includes multiple noisy point cloud datasets and the clean point cloud dataset includes multiple clean point cloud datasets. The noisy point cloud data is input into the initial point cloud denoising network model, so that the reconstructed point cloud data and the first feature vector are generated after processing by the initial point cloud denoising network model. A first loss value is determined based on the distance between each reconstructed point cloud data and each clean point cloud data; The clean point cloud data is input into the initial point cloud denoising network model, and after processing by the encoder in the initial point cloud denoising network model, a second feature vector is generated. Based on the virtual camera coordinate system, the reconstructed point cloud data and the clean point cloud data are respectively mapped to generate a first feature image corresponding to the reconstructed point cloud data and a second feature image corresponding to the clean point cloud data based on the first feature vector and the second feature vector. A second loss value is determined based on the difference between the first feature image and the second feature image; The first loss value and the second loss value are fused together to determine the total loss value; The initial point cloud denoising network model is trained based on the total loss value to generate a trained point cloud denoising network model.
2. The training method as described in claim 1, characterized in that, The step of determining the first loss value based on the distance between each reconstructed point cloud data and each clean point cloud data includes: Based on the distance between each clean point cloud data and each reconstructed point cloud data, a first target point cloud data is determined from the clean point cloud data for each reconstructed point cloud data. Based on the distance between each reconstructed point cloud data and each clean point cloud data, a second target point cloud data is determined from the reconstructed point cloud data for each clean point cloud data. A first loss value is determined based on the distance between each reconstructed point cloud data and the corresponding first target point cloud data, and the distance between each clean point cloud data and the corresponding second target point cloud data.
3. The method as described in claim 1, characterized in that, The step of mapping the reconstructed point cloud data and the clean point cloud data based on a virtual camera coordinate system to generate a first feature image corresponding to the reconstructed point cloud data and a second feature image corresponding to the clean point cloud data based on the first feature vector and the second feature vector, includes: Based on the virtual camera coordinate system, the reconstructed point cloud data is rasterized and mapped to determine the first plane coordinates, the first depth value, and the first feature vector; Based on the virtual camera coordinate system, the clean point cloud data is rasterized and mapped to determine the second plane coordinates, the second depth value, and the second feature vector; Based on the first depth value and first feature vector of each first plane coordinate, and the second depth value and second feature vector of each second plane coordinate, determine the first target feature vector of the first pixel grid associated with each first plane coordinate and the second target feature vector of the second pixel grid associated with each second plane coordinate; A first feature image and a second feature image are generated based on the first target feature vector of each first pixel grid and the second target feature vector of each second pixel grid.
4. The method as described in claim 3, characterized in that, The step of determining the first target feature vector of the first pixel grid associated with each first plane coordinate and the second target feature vector of the second pixel grid associated with each second plane coordinate based on the first depth value and the first feature vector of each first plane coordinate, and the second depth value and the second feature vector of each second plane coordinate, includes: The first coverage area and the second coverage area are determined according to a preset radius, with each of the first plane coordinates and each of the second plane coordinates as the center; Based on the first depth value and first feature vector of the first plane coordinate in each of the first coverage areas, and the second depth value and second feature vector of the second plane coordinate in each of the second coverage areas, the first target feature vector of each first pixel grid in each of the first coverage areas and the second target feature vector of each second pixel grid in each of the second coverage areas are determined respectively.
5. The method as described in claim 4, characterized in that, The step of determining the first target feature vector of each first pixel grid in each first coverage area and the second target feature vector of each second pixel grid in each second coverage area based on the first depth value and the first feature vector of the first planar coordinates in each first coverage area, and the second depth value and the second feature vector of the second planar coordinates in each second coverage area, includes: In the case where there are multiple first pixel grids in any first coverage area, the first depth value of the first plane coordinates to which the first coverage area belongs is compared with the current third depth value of each first pixel grid; If the current third depth value of any first pixel grid is greater than or equal to the first depth value of the first planar coordinate, the first depth value is determined as the first target depth value of any first pixel grid. In the case where there are multiple second pixel grids in any second coverage area, the second depth value of the second plane coordinates to which the second coverage area belongs is compared with the current fourth depth value of each second pixel grid; If the current fourth depth value of any second pixel grid is greater than or equal to the second depth value of the second plane coordinate, the second depth value is determined as the second target depth value of the any second pixel grid. The first feature vector corresponding to each first target depth value is determined as the first target feature vector of the first pixel grid to which it belongs; The second feature vector corresponding to each second target depth value is determined as the second target feature vector of the second pixel grid to which it belongs.
6. The method as described in claim 3, characterized in that, The step of determining the second loss value based on the difference between the first feature image and the second feature image includes: The second loss value is determined based on the vector difference between the first target feature vector of each first pixel grid and the second target feature vector of the second pixel grid at the same position.
7. The method as described in claim 1, characterized in that, The acquisition of the noisy point cloud dataset and the clean point cloud dataset includes: The original noisy point cloud data in the noisy point cloud dataset and the original clean point cloud data in the clean point cloud dataset are mapped and normalized respectively to generate noisy point cloud data and clean point cloud data.
8. A training device for a point cloud denoising network model, characterized in that, include: The acquisition module is used to acquire a noisy point cloud dataset and a clean point cloud dataset, wherein the noisy point cloud dataset includes multiple noisy point cloud datasets and the clean point cloud dataset includes multiple clean point cloud datasets. The first generation module is used to input the noisy point cloud data into the initial point cloud denoising network model, so that the reconstructed point cloud data and the first feature vector are generated after processing by the initial point cloud denoising network model. The first determining module is used to determine a first loss value based on the distance between each reconstructed point cloud data and each clean point cloud data. The second generation module is used to input the clean point cloud data into the initial point cloud denoising network model, so that the second feature vector is generated after being processed by the encoder in the initial point cloud denoising network model. The third generation module is used to map the reconstructed point cloud data and the clean point cloud data respectively based on the virtual camera coordinate system, so as to generate a first feature image corresponding to the reconstructed point cloud data and a second feature image corresponding to the clean point cloud data based on the first feature vector and the second feature vector. The second determining module is used to determine a second loss value based on the difference between the first feature image and the second feature image; The fusion module is used to fuse the first loss value and the second loss value to determine the total loss value; The training module is used to train the initial point cloud denoising network model based on the total loss value to generate a trained point cloud denoising network model.
9. An electronic device, characterized in that, The electronic device includes: a processor and a memory storing computer program instructions; When the processor executes the computer program instructions, it implements the training method for the point cloud denoising network model as described in any one of claims 1-7.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer program instructions, which, when executed by a processor, implement the training method for the point cloud denoising network model as described in any one of claims 1-7.