A point cloud data transformation method, a point cloud classification method, and related apparatus
By performing skeletal point transformation and training on point cloud data, the problem of low recognition accuracy of point cloud classification networks on corrupted point cloud data was solved, achieving higher robustness and accuracy.
Patent Information
- Application Number
- CN202411836312.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-12
- Publication Date
- 2026-03-06
- Estimated Expiration
- 2044-12-12
AI Technical Summary
Existing point cloud classification networks have low recognition accuracy when faced with corrupted point cloud data, failing to effectively capture key point cloud structures or lacking sufficient corruption information, resulting in insufficient robustness.
The original point cloud samples are sampled and feature extracted by the encoder, skeletal points are extracted and skeletal spheres are generated, the positions of the skeletal points are optimized, and skeletal point samples containing corruption information are generated by local linear interpolation. These samples are then input into the point cloud classification network for training.
The corruption robustness of the point cloud classification network is enhanced, enabling it to more accurately identify damaged point cloud data and improve classification performance in real-world scenarios.
Smart Images

Figure CN119785084B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of point cloud data processing technology, and in particular to a point cloud data transformation method, a point cloud classification method, and related apparatus. Background Technology
[0002] Currently, the transformation methods used in the preprocessing stage of point cloud classification networks, whether basic data augmentation methods (such as rotation, shearing, and noise reduction) or transformation methods with better classification results like Rsmix and PointMixup, have limited impact on improving the corruption robustness of point cloud classification networks. This means that point cloud classification networks still cannot achieve high recognition accuracy when faced with corrupted point cloud data. Corruption robustness of point cloud classification networks is crucial in real-world applications. In diverse and unpredictable real-world environments, a robust point cloud classification network can effectively cope with various challenges, ensuring the stability and accuracy of its classification performance when dealing with corrupted point cloud data. This is essential for the integration and application of point cloud technology in multiple fields such as autonomous driving. It ensures that even when facing complex real-world situations, the model can maintain the reliability and effectiveness of its classification task, thereby enhancing the overall system's trustworthiness and application value. Summary of the Invention
[0003] This application provides a point cloud data transformation method, a point cloud classification method, and related apparatus to improve the technical problem that existing point cloud data enhancement and transformation methods cannot capture key point cloud structures or have insufficient corruption information, which prevents point cloud classification networks from fully learning point cloud structures and corruption features, resulting in low recognition accuracy when identifying damaged point cloud data.
[0004] In view of this, the first aspect of this application provides a point cloud data transformation method, including:
[0005] The original point cloud sample is sampled and its features are extracted by an encoder to obtain the sampled point cloud sample;
[0006] Extract the target number of skeleton points from the sampled point cloud sample, and obtain the radius value corresponding to each skeleton point by calculating the shortest distance from each point cloud in the sampled point cloud sample to each skeleton point to generate a skeleton sphere;
[0007] The coordinates of each bone point on the surface of the bone sphere are calculated based on the coordinates of each bone point and the corresponding radius value. The loss value is calculated based on the coordinates of each point cloud in the original point cloud sample, the coordinates of each bone point, and the coordinates of each bone point on the surface of the bone sphere.
[0008] The position of the skeletal points is optimized using the loss value to obtain optimized skeletal point samples;
[0009] Local linear interpolation is performed on the skeletal point samples to obtain skeletal point samples containing putrefaction information.
[0010] Optionally, the step of extracting a target number of skeletal points from the sampled point cloud sample, obtaining the radius value corresponding to each skeletal point by calculating the nearest distance from each point cloud in the sampled point cloud sample to each skeletal point, and generating a skeletal sphere includes:
[0011] The target number of skeletal points is obtained by multiplying the weight matrix with the sampled point cloud sample;
[0012] Calculate the nearest distance from each point cloud in the sampled point cloud to each skeleton point, and generate a distance vector;
[0013] The radius value corresponding to each skeletal point is obtained by multiplying the weight matrix with the distance vector, and a skeletal sphere is generated.
[0014] Optionally, optimizing the position of the skeletal points using the loss value to obtain optimized skeletal point samples includes:
[0015] The weight matrix is updated based on the loss value to minimize the loss value, and the bone point corresponding to the minimum loss value is output.
[0016] Optionally, the step of calculating the loss value based on the coordinates of each point cloud in the original point cloud sample, the coordinates of each skeleton point, and the coordinates of each skeleton point on the surface of the skeleton sphere includes:
[0017] The distance between each point cloud and each bone point on the surface of the bone sphere is calculated based on the coordinates of each point cloud in the original point cloud sample and the coordinates of each bone point on the surface of the bone sphere, and the sampling loss is obtained.
[0018] The difference between the distance between each point cloud and each bone point and the corresponding radius value is calculated based on the coordinates of each point cloud and each bone point in the original point cloud sample, and the loss from point cloud to bone sphere is obtained.
[0019] The radius values of each of the aforementioned bone points are summed to obtain the radius regularization loss;
[0020] The sampling loss, the point cloud to skeleton sphere loss, and the radius regularization loss are weighted and summed to obtain the final loss value.
[0021] Optionally, performing local linear interpolation on the skeletal point samples to obtain skeletal point samples containing putrefaction information includes:
[0022] The distances between bone points in the bone point sample are calculated using the K-nearest neighbor algorithm.
[0023] Randomly select one bone point from the K bone points closest to each of the aforementioned bone points to generate a new bone point, thus obtaining a bone point sample containing corruption information.
[0024] A second aspect of this application provides a point cloud classification method, including:
[0025] The acquired raw point cloud data is transformed to obtain skeletal point samples containing putrefaction information; wherein, the raw point cloud data is transformed using any of the point cloud data transformation methods described in the first aspect to obtain skeletal point samples containing putrefaction information.
[0026] The bone point samples containing the corruption information are input into the point cloud classification network for training, and the trained point cloud classification network is obtained.
[0027] The collected point cloud data is input into the trained point cloud classification network for classification.
[0028] A third aspect of this application provides a point cloud data transformation device, comprising:
[0029] The sampling and feature extraction unit is used to sample and extract features from the original point cloud sample through the encoder to obtain the sampled point cloud sample;
[0030] The skeleton extraction unit is used to extract a target number of skeleton points from the sampled point cloud sample, and obtain the radius value corresponding to each skeleton point by calculating the nearest distance from each point cloud in the sampled point cloud sample to each skeleton point, thereby generating a skeleton sphere.
[0031] The loss calculation unit is used to calculate the coordinates of each bone point on the surface of the bone sphere based on the coordinates of each bone point and the corresponding radius value, and to calculate the loss value based on the coordinates of each point cloud in the original point cloud sample, the coordinates of each bone point, and the coordinates of each bone point on the surface of the bone sphere.
[0032] An optimization unit is used to optimize the position of the skeletal points using the loss value to obtain skeletal point samples;
[0033] An interpolation unit is used to perform local linear interpolation on the skeletal point samples to obtain skeletal point samples containing decay information.
[0034] A fourth aspect of this application provides a point cloud classification device, comprising:
[0035] A transformation unit is used to transform the acquired raw point cloud data to obtain skeletal point samples containing putrefaction information; wherein the raw point cloud data is used to obtain skeletal point samples containing putrefaction information using any of the point cloud data transformation methods described in the first aspect.
[0036] The training unit is used to input the skeletal point samples containing decay information into the point cloud classification network for training, and to obtain the trained point cloud classification network.
[0037] The classification unit is used to input the collected point cloud data into the trained point cloud classification network for classification.
[0038] A fifth aspect of this application provides an electronic device, the device including a processor and a memory;
[0039] The memory is used to store program code and transmit the program code to the processor;
[0040] The processor is used to execute any one of the point cloud data transformation methods described in the first aspect according to the instructions in the program code.
[0041] The sixth aspect of this application provides a computer-readable storage medium for storing program code, which, when executed by a processor, implements the point cloud data transformation method described in any of the first aspects.
[0042] As can be seen from the above technical solutions, this application has the following advantages:
[0043] The point cloud data transformation method provided in this application, during the process of processing point cloud data to generate corresponding skeletal point data, successfully captures the intrinsic structure and topological properties of object shapes by utilizing geometric transformations and connectivity features learned from the original point cloud data. This creates a novel data result that can represent the skeleton model. Using skeletal point data not only simplifies the point cloud sample data but also enhances the highlighting of key structural features. By performing linear interpolation on the generated skeletal point cloud samples, more decay information is included, enabling the point cloud classification network to learn decay knowledge based on the key structure of the point cloud, thus addressing decay phenomena in real-world scenarios. The point cloud data transformation method provided in this application effectively solves the problem of other methods failing to capture key point cloud structures or lacking sufficient decay information. It enables the point cloud classification network to simultaneously extract point cloud structure and decay features, more accurately identify damaged point cloud data, and enhance the decay robustness of the point cloud classification network. Attached Figure Description
[0044] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0045] Figure 1 A flowchart illustrating a point cloud data transformation method provided in this application embodiment;
[0046] Figure 2 This is another flowchart illustrating a point cloud data transformation method provided in an embodiment of this application;
[0047] Figure 3 This is a diagram illustrating the generated skeletal point data provided in an embodiment of this application.
[0048] Figure 4 A diagram illustrating the local linear interpolation process of skeletal point samples provided in an embodiment of this application;
[0049] Figure 5 A flowchart illustrating a point cloud classification method provided in this application embodiment;
[0050] Figure 6 The Chinese and English operation tables for corruption type transformation provided in the embodiments of this application;
[0051] Figure 7 Comparison chart of experimental results provided for embodiments of this application;
[0052] Figure 8 A schematic diagram of a point cloud data transformation device provided in an embodiment of this application;
[0053] Figure 9 This is a schematic diagram of a point cloud classification device provided in an embodiment of this application. Detailed Implementation
[0054] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of the present application.
[0055] To ensure that point cloud classification networks maintain high stability and accurately identify point cloud data even when faced with corruption such as noise, missing points, or outliers due to improper acquisition, transmission, and processing, or factors related to equipment and environment, this application proposes a transformation method for the preprocessing stage of point cloud classification networks. This method first delves into the inherent geometric features of the point cloud data to identify a set of key points that form the structural framework of the point cloud, referred to as point cloud skeletons. Then, a radius value is calculated for each skeleton point to define a corresponding skeleton sphere. By adjusting the radius of these skeleton spheres, the position of the skeleton points is further optimized, ensuring their accuracy and representativeness.
[0056] For easier understanding, please refer to Figure 1 and Figure 2 This application provides a point cloud data transformation method, including:
[0057] Step 110: Sample and extract features from the original point cloud sample using an encoder to obtain the sampled point cloud sample.
[0058] Let the original point cloud sample x be represented as a set. Where N represents the total number of points in the original point cloud sample, the PointNet++ network can be used as an encoder to sample and extract features from the point cloud samples, resulting in sampled point cloud samples. ,in , This indicates the number of point cloud samples after sampling.
[0059] Step 120: Extract the target number of skeletal points from the sampled point cloud sample. Obtain the radius value corresponding to each skeletal point by calculating the shortest distance from each point cloud to each skeletal point in the sampled point cloud sample, and generate a skeletal sphere.
[0060] The point cloud data transformation method in this application obtains N by predicting the original point cloud samples. s The target number of skeletal points is obtained by multiplying the weight matrix with the sampled point cloud sample; the nearest distance from each point in the sampled point cloud sample to each skeletal point is calculated to generate a distance vector; the radius value corresponding to each skeletal point is obtained by multiplying the weight matrix with the distance vector, and a skeletal sphere is generated.
[0061] Specifically, define a weight matrix that satisfies a convex combination. Then, the set of skeletal points is obtained by matrix multiplication using the following formula. , where c j Let J be the coordinates of the j-th bone point, i.e.:
[0062]
[0063] For each generated bone point, a radius value is calculated. First, all sampling points are calculated. (i.e., the shortest distance d from all point cloud points in the sampled point cloud sample) to all skeleton points i and form a distance vector. The distance calculation formula is as follows:
[0064]
[0065] Then according to the formula The radius value corresponding to each bone point can be obtained. After calculating the radius value of each bone point, the corresponding bone sphere can be defined. By adjusting the radius of these bone spheres, the position of the bone points can be further optimized to ensure its accuracy and representativeness.
[0066] Step 130: Calculate the coordinates of each bone point on the surface of the bone sphere based on the coordinates of each bone point and the corresponding radius value. Calculate the loss value based on the coordinates of each point cloud in the original point cloud sample, the coordinates of each bone point, and the coordinates of each bone point on the surface of the bone sphere.
[0067] The position of the skeletal points is optimized using a loss function, making the generated skeletal points more accurate. In this embodiment, the loss values include sampling loss, point cloud-to-skeleton loss, and radius regularization loss.
[0068] The sampling loss is calculated as follows: based on the coordinates of each point cloud in the original point cloud sample and the coordinates of each bone point on the surface of the bone sphere, the distance between each point cloud and each bone point on the surface of the bone sphere is calculated, and the sampling loss is obtained.
[0069] Specifically, first, we set a unit vector. A total of 8 values can be selected;
[0070] Then use the formula Find the skeletal point c j From the surface coordinates of the bone sphere, we obtain the coordinates of the bone surface points, ultimately forming a set of bone surface points. ,in This represents the coordinates of the j-th bone surface point;
[0071] Finally, the sampling loss L is obtained using the following formula. s :
[0072]
[0073] The calculation process for the point cloud to skeleton sphere loss is as follows: Based on the coordinates of each point cloud and each skeleton point in the original point cloud sample, calculate the difference between the distance between each point cloud and each skeleton point and the corresponding radius value, and obtain the point cloud to skeleton sphere loss L. p ,Right now:
[0074]
[0075] In the formula, x represents the distance from the point cloud i The radius value of the nearest bone point.
[0076] To prevent the radius from being too small due to noise, this embodiment also calculates the radius regularization loss, which is obtained by summing the radius values of each bone point. r ,Right now:
[0077]
[0078] Because of the presence of the negative sign, reducing this loss value can ensure that the radius value is not too small, and the radius calculation formula above can also limit the radius value from being too large, thus keeping it within a reasonable range.
[0079] Finally, regarding the sampling loss L s Point cloud to skeleton sphere loss L p and radius regularization loss L r Perform a weighted summation to obtain the final loss value L. sk ,Right now:
[0080]
[0081] in and This represents the weighting coefficient, used to measure the importance of different loss functions.
[0082] Step 140: Optimize the position of the skeletal points using the loss value to obtain the optimized skeletal point samples.
[0083] The weight matrix W is updated based on the loss value to minimize the loss. The bone point corresponding to the minimum loss value is output, resulting in the optimized bone point sample. The network iterates through backpropagation to minimize the loss, making the generated bone points more accurate. The effect is shown in the figure. Figure 3 As shown.
[0084] Step 150: Perform local linear interpolation on the skeletal point samples to obtain skeletal point samples containing putrefaction information.
[0085] Local linear interpolation is performed on the skeletal point samples obtained in step 140 above, so that the skeletal point samples can contain more decay information, thereby enhancing the decay robustness of the point cloud classification network after extracting features from the skeletal point samples. Please refer to [link / reference]. Figure 4 The distances between bone points in the bone point sample x' are calculated using the K-nearest neighbor algorithm. A new bone point P' is randomly selected from the K nearest neighbor (e.g., K=5) bone points to each bone point, resulting in a bone point sample x'' containing putrefaction information. The process of generating the new bone point P' is as follows:
[0086]
[0087] In the formula, P is a bone point in the bone point sample; is the interpolation coefficient, and Q is a randomly selected nearest neighbor.
[0088] The method described above is used to obtain a new sample x''. The generated new sample x'' is then used as input to train the point cloud classification network, which can effectively improve the corruption robustness of the classification network.
[0089] The point cloud data transformation method provided in this application, during the process of processing point cloud data to generate corresponding skeletal point data, successfully captures the intrinsic structure and topological properties of object shapes by utilizing geometric transformations and connectivity features learned from the original point cloud data. This creates a novel data result that can represent the skeleton model. Using skeletal point data not only simplifies the point cloud sample data but also enhances the highlighting of key structural features. By performing linear interpolation on the generated skeletal point cloud samples, more decay information is included, enabling the point cloud classification network to learn decay knowledge based on the key structure of the point cloud, thus addressing decay phenomena in real-world scenarios. The point cloud data transformation method provided in this application effectively solves the problem of other methods failing to capture key point cloud structures or lacking sufficient decay information. It enables the point cloud classification network to simultaneously extract point cloud structure and decay features, more accurately identify damaged point cloud data, and enhance the decay robustness of the point cloud classification network.
[0090] The above is an embodiment of a point cloud data transformation method provided by this application. The following is an embodiment of a point cloud classification method provided by this application.
[0091] Please refer to Figure 5 This application provides a point cloud classification method, including:
[0092] Step 210: Transform the acquired raw point cloud data to obtain skeletal point samples containing decay information.
[0093] The acquired raw point cloud data is used to obtain bone point samples containing putrefaction information using the point cloud data transformation method described in the aforementioned method embodiments.
[0094] Step 220: Input the skeletal point samples containing corruption information into the point cloud classification network for training, and obtain the trained point cloud classification network.
[0095] Skeleton point samples containing corruption information are input into a point cloud classification network for training, resulting in a trained point cloud classification network. The specific training process is existing technology and will not be described in detail here.
[0096] Step 230: Input the collected point cloud data into the trained point cloud classification network for classification.
[0097] The collected point cloud data (such as point cloud data collected by autonomous vehicles) is classified using a trained point cloud classification network.
[0098] This application transforms the original point cloud data to obtain skeletal point samples containing corruption information, and then uses the skeletal point samples containing corruption information to train the point cloud classification network. This enables the point cloud classification network to extract point cloud structure and corruption features simultaneously, which can more accurately identify damaged point cloud data and enhance the corruption robustness of the point cloud classification network.
[0099] To verify the effectiveness of the proposed method, two classification networks, PointNet++ and PointNeXt, were selected for experimentation. ModelNet40-C was chosen as the corruption experiment dataset, and the number of generated skeletal points N was set. s The number of bone points after linear interpolation is 200, and then repeated sampling is performed up to 1000. The minimum batch size is 64, and the epoch is 250. The method of this application (SK) is compared with the standard method (ST) that uses noise and median transformation.
[0100] The ModelNet40-C dataset is based on the ModelNet40 test set, with each sample subjected to 15 different corruption operations. Each operation has 5 levels, which is equivalent to performing 75 corruption transformations on each sample. The total sample size is 75 times that of the original dataset. The corresponding Chinese and English operations for each corruption type transformation are as follows: Figure 6 As shown in the figure. The mean accuracy (mOA) of 15 corruption types in ModelNet40-C was used as the evaluation metric. The experimental results are as follows. Figure 7 As shown. (Through) Figure 7It can be seen that the mOA is improved by 6.88 percentage points when using the method of this application with PointNet++ as the baseline network and by 9.57 percentage points when using PointNext as the baseline network, proving that the transformation method proposed in this application can effectively enhance the corruption robustness of point cloud classification networks.
[0101] Please refer to Figure 8 This application also provides a point cloud data transformation device, including:
[0102] The sampling and feature extraction unit 310 is used to sample and extract features from the original point cloud sample through the encoder to obtain the sampled point cloud sample;
[0103] The skeleton extraction unit 320 is used to extract a target number of skeleton points from the sampled point cloud sample. It obtains the radius value of each skeleton point by calculating the shortest distance from each point cloud in the sampled point cloud sample to each skeleton point, and generates a skeleton sphere.
[0104] The loss calculation unit 330 is used to calculate the coordinates of each bone point on the surface of the bone sphere based on the coordinates of each bone point and the corresponding radius value, and to calculate the loss value based on the coordinates of each point cloud in the original point cloud sample, the coordinates of each bone point, and the coordinates of each bone point on the surface of the bone sphere.
[0105] The optimization unit 340 is used to optimize the position of the skeletal points using the loss value to obtain the optimized skeletal point samples;
[0106] Interpolation unit 350 is used to perform local linear interpolation on the skeletal point samples to obtain skeletal point samples containing decay information.
[0107] As a further improvement, the skeleton extraction unit 320 is specifically used for:
[0108] The target number of skeletal points is obtained by multiplying the weight matrix with the sampled point cloud sample;
[0109] Calculate the shortest distance from each point cloud to each skeleton point in the sampled point cloud sample, and generate a distance vector;
[0110] The radius value corresponding to each skeletal point is obtained by multiplying the weight matrix with the distance vector, and a skeletal sphere is generated.
[0111] As a further improvement, the optimization unit 340 is specifically used to update the weight matrix according to the loss value, so as to minimize the loss value, output the skeletal point corresponding to the minimum loss value, and obtain the optimized skeletal point sample.
[0112] As a further improvement, the loss calculation unit 330 is specifically used for:
[0113] The distance between each point cloud and each bone point on the surface of the bone sphere is calculated based on the coordinates of each point cloud in the original point cloud sample and the coordinates of each bone point on the surface of the bone sphere, and the sampling loss is obtained.
[0114] The difference between the distance between each point cloud and each bone point and the corresponding radius value is calculated based on the coordinates of each point cloud and each bone point in the original point cloud sample to obtain the point cloud to bone sphere loss.
[0115] Sum the radius values of each bone point to obtain the radius regularization loss;
[0116] The sampling loss, point cloud to skeleton sphere loss, and radius regularization loss are weighted and summed to obtain the final loss value.
[0117] As a further improvement, the interpolation unit 350 is specifically used for:
[0118] The distance between bone points in the bone point sample is calculated using the K-nearest neighbor algorithm;
[0119] Randomly select one of the K nearest bone points to each bone point to generate a new bone point, thus obtaining a bone point sample containing corruption information.
[0120] The point cloud data transformation method provided in this application, during the process of processing point cloud data to generate corresponding skeletal point data, successfully captures the intrinsic structure and topological properties of object shapes by utilizing geometric transformations and connectivity features learned from the original point cloud data. This creates a novel data result that can represent the skeleton model. Using skeletal point data not only simplifies the point cloud sample data and reduces the data volume but also enhances the highlighting of key structural features. By performing local linear interpolation on the generated skeletal point cloud samples, more decay information is included in the samples. This allows the point cloud classification network to learn decay knowledge based on the key structure of the point cloud, thus addressing decay phenomena in real-world scenarios. The point cloud data transformation method provided in this application effectively solves the problem of other methods failing to capture key point cloud structures or providing insufficient decay information. It enables the point cloud classification network to simultaneously extract point cloud structure and decay features, more accurately identify damaged point cloud data, and enhance the decay robustness of the point cloud classification network.
[0121] Please refer to Figure 9 This application also provides a point cloud classification device, including:
[0122] Transformation unit 410 is used to transform the acquired raw point cloud data to obtain a skeletal point sample containing putrefaction information; wherein, the raw point cloud data is transformed using the point cloud data transformation method in the aforementioned method embodiment to obtain the skeletal point sample containing putrefaction information.
[0123] Training unit 420 is used to input bone point samples containing decay information into the point cloud classification network for training, and to obtain the trained point cloud classification network.
[0124] The classification unit 430 is used to input the collected point cloud data into the trained point cloud classification network for classification.
[0125] This application transforms the original point cloud data to obtain skeletal point samples containing corruption information, and then uses the skeletal point samples containing corruption information to train the point cloud classification network. This enables the point cloud classification network to extract point cloud structure and corruption features simultaneously, which can more accurately identify damaged point cloud data and enhance the corruption robustness of the point cloud classification network.
[0126] This application also provides an electronic device, which includes a processor and a memory;
[0127] The memory is used to store program code and transfer the program code to the processor;
[0128] The processor is used to execute the point cloud data transformation method in the foregoing method embodiments according to the instructions in the program code.
[0129] This application also provides a computer-readable storage medium for storing program code, which, when executed by a processor, implements the point cloud data transformation method in the aforementioned method embodiments.
[0130] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working process of the above-described apparatus and unit can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.
[0131] The terms “first,” “second,” “third,” “fourth,” etc. (if present) in the specification and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. Furthermore, the terms “comprising” and “having,” and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that includes a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such process, method, product, or apparatus.
[0132] It should be understood that in this application, "at least one (item)" means one or more, and "more than" means two or more. "And / or" is used to describe the relationship between related objects, indicating that three relationships can exist. For example, "A and / or B" can represent three cases: only A exists, only B exists, and both A and B exist simultaneously, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one (item) of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one (item) of a, b, or c can represent: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, and c can be single or multiple.
[0133] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.
[0134] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0135] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0136] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions for executing all or part of the steps of the methods described in the various embodiments of this application through a computer device (which may be a personal computer, server, or network device, etc.). The aforementioned storage medium includes: USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, optical disks, and other media capable of storing program code.
[0137] The above-described 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 of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application.
Claims
1. A point cloud data transformation method, characterized by, The method comprises the following steps: sampling and feature extraction of the original point cloud sample through an encoder to obtain a sampled point cloud sample; extracting a target number of skeleton points from the sampled point cloud sample, calculating the nearest distance of each point cloud in the sampled point cloud sample to each skeleton point to obtain a radius value corresponding to each skeleton point, and generating a skeleton ball, comprising: multiplying a weight matrix and the sampled point cloud sample to obtain a target number of skeleton points; calculating the nearest distance of each point cloud in the sampled point cloud sample to each skeleton point to generate a distance vector; multiplying the weight matrix and the distance vector to obtain a radius value corresponding to each skeleton point, and generating a skeleton ball; calculating the coordinates of each skeleton point on the surface of the skeleton ball according to the coordinates and the corresponding radius value of each skeleton point, and calculating a loss value according to the coordinates of each point cloud in the original point cloud sample, the coordinates of each skeleton point and the coordinates of each skeleton point on the surface of the skeleton ball, comprising: calculating the distance between each point cloud and the surface point of each skeleton ball according to the coordinates of each point cloud in the original point cloud sample and the coordinates of each skeleton point on the surface of the skeleton ball, and obtaining a sampling loss; calculating the difference between the distance of each point cloud and each skeleton point and the corresponding radius value according to the coordinates of each point cloud in the original point cloud sample and the coordinates of each skeleton point, and obtaining a point cloud to skeleton ball loss; summing the radius values of each skeleton point to obtain a radius regularization loss; weighting and summing the sampling loss, the point cloud to skeleton ball loss and the radius regularization loss to obtain a final loss value; optimizing the position of the skeleton point through the loss value to obtain an optimized skeleton point sample; performing local linear interpolation on the skeleton point sample to obtain a skeleton point sample containing corruption information.
2. The point cloud data transformation method of claim 1, wherein, The method of optimizing the position of the skeleton point through the loss value to obtain an optimized skeleton point sample comprises: updating the weight matrix according to the loss value to minimize the loss value, outputting the skeleton point corresponding to the minimum loss value, and obtaining an optimized skeleton point sample.
3. The point cloud data transformation method of claim 1, wherein, The method of performing local linear interpolation on the skeleton point sample to obtain a skeleton point sample containing corruption information comprises: calculating the distance between each skeleton point in the skeleton point sample through a K-nearest neighbor algorithm; randomly selecting a skeleton point from the K skeleton points closest to each skeleton point to generate a new skeleton point, and obtaining a skeleton point sample containing corruption information.
4. A point cloud classification method, characterized in that, The method comprises the following steps: transforming the obtained original point cloud data to obtain a skeleton point sample containing corruption information; wherein the original point cloud data is obtained by the point cloud data transformation method of any one of claims 1-3 to obtain a skeleton point sample containing corruption information; inputting the skeleton point sample containing corruption information into a point cloud classification network for training to obtain a trained point cloud classification network; inputting the collected point cloud data into the trained point cloud classification network for classification.
5. A point cloud data transformation apparatus, characterized by, The method comprises the following steps: a sampling and feature extraction unit is configured to sample and extract features of an original point cloud sample through an encoder to obtain a sampled point cloud sample; The skeleton extraction unit is configured to extract a target number of skeleton points from the sampled point cloud sample, obtain a radius value corresponding to each of the skeleton points by calculating a nearest distance from each point cloud in the sampled point cloud sample to each of the skeleton points, and generate a skeleton sphere. The skeleton extraction unit is specifically configured to obtain the target number of skeleton points by multiplying a weight matrix with the sampled point cloud sample, calculate a distance vector by calculating a nearest distance from each point cloud in the sampled point cloud sample to each of the skeleton points, and obtain a radius value corresponding to each of the skeleton points by multiplying the weight matrix with the distance vector, and generate a skeleton sphere. The loss calculation unit is configured to calculate a surface point coordinate of each of the skeleton points on the skeleton sphere according to a coordinate of each of the skeleton points and the corresponding radius value, and calculate a loss value according to a coordinate of each point cloud in the original point cloud sample, a coordinate of each of the skeleton points, and the surface point coordinate of each of the skeleton points on the skeleton sphere. The loss calculation unit is specifically configured to calculate a distance between each point cloud and a surface point of each of the skeleton points on the skeleton sphere according to the coordinate of each point cloud in the original point cloud sample and the surface point coordinate of each of the skeleton points on the skeleton sphere, obtain a sampling loss, calculate a difference between a distance between each point cloud and each of the skeleton points and a corresponding radius value according to the coordinate of each point cloud in the original point cloud sample and the coordinate of each of the skeleton points, obtain a point cloud to skeleton sphere loss, sum the radius values of each of the skeleton points to obtain a radius regularization loss, and obtain a final loss value by weighted sum of the sampling loss, the point cloud to skeleton sphere loss, and the radius regularization loss. The optimization unit is configured to optimize a position of each of the skeleton points by the loss value to obtain a final skeleton point sample. The interpolation unit is configured to perform local linear interpolation on the skeleton point sample to obtain a skeleton point sample containing corruption information.
6. A point cloud classification apparatus, characterized by, The method comprises: The transformation unit is configured to transform the obtained original point cloud data to obtain a skeleton point sample containing corruption information, wherein the original point cloud data is obtained by the point cloud data transformation method in any one of claims 1-3. The training unit is configured to input the skeleton point sample containing corruption information into a point cloud classification network to train the point cloud classification network to obtain a trained point cloud classification network. The classification unit is configured to input the collected point cloud data into the trained point cloud classification network to classify the point cloud data.
7. An electronic device, comprising: The device comprises a processor and a memory. The memory is configured to store program code and transmit the program code to the processor. The processor is configured to execute the point cloud data transformation method in any one of claims 1-3 or the point cloud classification method in claim 4 according to instructions in the program code.
8. A computer-readable storage medium, characterized in that, The computer readable storage medium is configured to store program code, and the program code is executed by the processor to implement the point cloud data transformation method in any one of claims 1-3 or the point cloud classification method in claim 4.
Citation Information
Patent Citations
Point cloud 3D target detection method based on key point multi-scale feature fusion
CN113706480A
Bone model reconstruction method and system based on point cloud
CN117274335A