Point cloud filtering method and device, computer equipment, readable storage medium and program product
By processing point cloud data using preset clustering and optimal projection algorithms, the problem of over-smoothing of point cloud data caused by traditional methods is solved, high-quality point cloud filtering is achieved, and the structural details of the model are retained.
Patent Information
- Application Number
- CN202510810192.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-17
- Publication Date
- 2025-09-26
AI Technical Summary
When processing complex or dense point cloud data, the traditional weighted local optimal projection method will cause the point cloud data to be over-smoothed, lose the original shape details, and result in low quality of the filtered point cloud data.
The preset clustering algorithm is used to cluster the point cloud data to obtain multiple point cloud data clusters. The initial point cloud data is iteratively processed by the preset optimal projection algorithm. The target point cloud data is determined by combining the relationship between attraction and repulsion. Finally, the point clouds are connected to obtain the filtered point cloud.
The filtering quality of point cloud data is improved, the structural detail characteristics of the model are retained, the noise is reduced, and the accuracy and quality of point cloud data are improved.
Smart Images

Figure CN120707903A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of machine vision automated recognition technology, and in particular to a point cloud filtering method, apparatus, computer equipment, readable storage medium, and program product. Background Art
[0002] In the fields of computer vision and 3D data processing, point cloud data filtering is a fundamental and critical task, impacting the quality of subsequent model reconstruction and analysis. Conventional weighted local optimal projection methods, used to filter point cloud data, can remove noise to a certain extent. However, when processing complex or dense point cloud data, over-smoothing can lose the details of the original shape of the point cloud data, resulting in lower quality after filtering. Summary of the Invention
[0003] Based on this, it is necessary to provide a point cloud filtering method, device, computer equipment, readable storage medium and program product that can improve the quality of filtered point cloud data and retain the structure of the model in which the point cloud data is located, in order to address the above technical problems.
[0004] In a first aspect, the present application provides a point cloud filtering method, comprising:
[0005] Perform clustering processing on each initial point cloud data based on a preset clustering algorithm to obtain multiple point cloud data clusters;
[0006] For each of the initial point cloud data in each of the point cloud data clusters, processing the initial point cloud data based on a preset optimal projection algorithm and the cluster center of the point cloud data cluster to obtain target point cloud data corresponding to each of the initial point cloud data;
[0007] Perform point cloud connection on each of the target point cloud data in each of the point cloud data clusters to obtain a filtered point cloud.
[0008] In one embodiment, clustering the initial point cloud data based on a preset clustering algorithm to obtain multiple point cloud data clusters includes:
[0009] According to a preset screening strategy, the target initial point cloud data is determined as the first cluster center among the multiple initial point cloud data;
[0010] For the nth cluster center, determine the distance data from each of the initial point cloud data to the n cluster centers, and determine the closest distance among the distance data, perform probability conversion processing on the closest distance to obtain probability distribution data corresponding to each of the initial point cloud data, and determine the n+1th cluster center based on the probability distribution data, until the Nth cluster center is determined, N>n≥1, and n is a positive integer;
[0011] The initial point cloud data are divided based on the cluster centers to obtain a plurality of point cloud data clusters.
[0012] In one embodiment, the processing of each of the initial point cloud data based on a preset optimal projection algorithm and the cluster center of the point cloud data cluster to obtain target point cloud data corresponding to each of the initial point cloud data includes:
[0013] During the k+1th iteration, based on the position data of the kth point cloud data and the position data of each cluster center, determining the attractive force relationship data between the kth point cloud data and each cluster center; and based on the position data of the kth point cloud data and the position data of other kth point cloud data, determining the repulsive force relationship data between the kth point cloud data and other kth point cloud data; based on the attractive force relationship data and the repulsive force relationship data, determining the k+1th point cloud data corresponding to the kth point cloud data, K>k≥0, k is a non-negative integer; when k=K, determining the Kth point cloud data as the target point cloud data;
[0014] The k-th point cloud data is determined by performing the k-th iteration on the initial point cloud data, and the other k-th point cloud data is determined by performing the k-th iteration on other initial point cloud data in the point cloud data cluster.
[0015] In one embodiment, determining the attraction relationship data between the k-th point cloud data and each of the cluster centers based on the position data of the k-th point cloud data and the position data of each of the cluster centers includes:
[0016] Calculating the kernel influence range values of the k-th point cloud data and the other k-th point cloud data;
[0017] Determining first differences between the position data of the k-th point cloud data and the position data of each cluster center, and determining a norm of each of the first differences as offset data between the k-th point cloud data and each cluster center;
[0018] Determining a first kernel influence value corresponding to each offset data based on the kernel influence range value, each offset data, and a preset kernel function; determining a ratio of the first kernel influence value corresponding to the offset data to the offset data as an attraction factor corresponding to the offset data;
[0019] Determining the confidence weight of each cluster center based on the number of other k-th point cloud data in the point cloud data cluster where each cluster center is located;
[0020] Calculate a first ratio of the attraction factor and the confidence weight, and determine the sum of the first ratios; determine a second ratio of each first ratio and the sum, and determine a first product value of the second ratio and the position data of the cluster center, and determine the sum of the first product values as the attraction relationship data between the k-th point cloud data and each cluster center.
[0021] In one embodiment, determining the repulsive force relationship data between the k-th point cloud data and the other k-th point cloud data based on the position data of the k-th point cloud data and the position data of the other k-th point cloud data includes:
[0022] respectively calculating second differences between the position data of the k-th point cloud data and the position data of each of the other k-th point cloud data, and determining the norm of each of the second differences as a relative displacement value between the k-th point cloud data and each of the other k-th point cloud data;
[0023] Determining, based on the kernel influence range value, each relative displacement value, and the preset kernel function, a second kernel influence value corresponding to each second difference value; determining, based on the relative displacement value and a preset repulsion function, a repulsion factor corresponding to each relative displacement value; determining a second product value of the second kernel influence value and the repulsion factor, and determining a ratio of the second product value to the relative displacement value as a repulsion intensity value corresponding to the relative displacement value;
[0024] Calculating the reciprocal of the sum of each relative displacement value and a preset constant, and determining the sum of each reciprocal as the influence weight of each relative displacement value;
[0025] Calculate the third product value of the repulsion strength value and the influence weight corresponding to each relative displacement value; determine the third ratio of each third product value and the sum of each third product value, and calculate the fourth product value of the second difference and the third ratio; determine the sum of each fourth product value as the repulsion force relationship data between the k-th point cloud data and other k-th point cloud data.
[0026] In one embodiment, determining the k+1th point cloud data corresponding to the kth point cloud data based on the attraction relationship data and the repulsion relationship data includes:
[0027] determining a weight ratio adjustment parameter, and determining a fifth product value of the weight ratio adjustment parameter and the repulsive force relationship data;
[0028] The sum of the fifth product value and the attraction relationship data is determined as the k+1th point cloud data corresponding to the kth point cloud data.
[0029] In a second aspect, the present application further provides a point cloud filtering device, comprising:
[0030] A clustering module is used to perform clustering processing on each initial point cloud data based on a preset clustering algorithm to obtain multiple point cloud data clusters;
[0031] a processing module, configured to process each of the initial point cloud data in each of the point cloud data clusters based on a preset optimal projection algorithm and the cluster center of the point cloud data cluster to obtain target point cloud data corresponding to each of the initial point cloud data;
[0032] The connection module is used to perform point cloud connection on each of the target point cloud data in each of the point cloud data clusters to obtain a filtered point cloud.
[0033] In a third aspect, the present application further provides a computer device comprising a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, the following steps are implemented:
[0034] Perform clustering processing on each initial point cloud data based on a preset clustering algorithm to obtain multiple point cloud data clusters;
[0035] For each of the initial point cloud data in each of the point cloud data clusters, processing the initial point cloud data based on a preset optimal projection algorithm and the cluster center of the point cloud data cluster to obtain target point cloud data corresponding to each of the initial point cloud data;
[0036] Perform point cloud connection on each of the target point cloud data in each of the point cloud data clusters to obtain a filtered point cloud.
[0037] In a fourth aspect, the present application further provides a computer-readable storage medium having a computer program stored thereon, wherein when the computer program is executed by a processor, the following steps are implemented:
[0038] Perform clustering processing on each initial point cloud data based on a preset clustering algorithm to obtain multiple point cloud data clusters;
[0039] For each of the initial point cloud data in each of the point cloud data clusters, processing the initial point cloud data based on a preset optimal projection algorithm and the cluster center of the point cloud data cluster to obtain target point cloud data corresponding to each of the initial point cloud data;
[0040] Perform point cloud connection on each of the target point cloud data in each of the point cloud data clusters to obtain a filtered point cloud.
[0041] In a fifth aspect, the present application further provides a computer program product, comprising a computer program, which, when executed by a processor, implements the following steps:
[0042] Perform clustering processing on each initial point cloud data based on a preset clustering algorithm to obtain multiple point cloud data clusters;
[0043] For each of the initial point cloud data in each of the point cloud data clusters, processing the initial point cloud data based on a preset optimal projection algorithm and the cluster center of the point cloud data cluster to obtain target point cloud data corresponding to each of the initial point cloud data;
[0044] Perform point cloud connection on each of the target point cloud data in each of the point cloud data clusters to obtain a filtered point cloud.
[0045] The above-mentioned point cloud filtering method, device, computer equipment, readable storage medium and program product cluster the initial point cloud data through a preset clustering algorithm to obtain multiple point cloud data clusters and cluster centers of each point cloud data cluster, reduce the variability of the clustering results, and improve the quality of the clustering effect, and process the initial point cloud data based on the preset optimal projection algorithm to obtain the target point cloud data corresponding to each initial point cloud data. The initial point cloud data is first clustered and then filtered through the preset clustering algorithm and the preset optimal projection algorithm, which improves the accuracy of the point cloud data in the filtering process, effectively reduces noise in the filtering process, and maintains the detailed features of the edge of the point cloud data, which can improve the quality of the filtered point cloud data and retain the structure of the model where the point cloud data is located. BRIEF DESCRIPTION OF THE DRAWINGS
[0046] In order to more clearly illustrate the technical solutions in the embodiments of the present application or related technologies, the following briefly introduces the drawings required for use in the embodiments of the present application or related technical descriptions. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying any creative work.
[0047] Figure 1 1 is a flow chart of a point cloud filtering method according to an embodiment;
[0048] Figure 2 1 is a flow chart of a point cloud filtering method according to an embodiment;
[0049] Figure 3 1 is a flow chart of a point cloud filtering method according to an embodiment;
[0050] Figure 4 is a structural block diagram of a point cloud filtering device in one embodiment;
[0051] Figure 5 FIG. 1 is a diagram showing the internal structure of a computer device in one embodiment. DETAILED DESCRIPTION
[0052] In order to make the purpose, technical solutions and advantages of this application more clear, the following further describes this application in detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain this application and are not intended to limit this application.
[0053] In an exemplary embodiment, Figure 1 As shown, a point cloud filtering method is provided. This embodiment uses the method applied to a terminal as an example for illustration. It is understandable that the method can also be applied to a server, or to a system including a terminal and a server, and implemented through interaction between the terminal and the server. In this embodiment, the method includes the following steps:
[0054] Step 101: cluster the initial point cloud data based on a preset clustering algorithm to obtain multiple point cloud data clusters.
[0055] Among them, each point cloud data cluster includes a cluster center and multiple initial point cloud data belonging to the point cloud data cluster. Each point cloud data cluster can correspond to a different point cloud data category, and each point cloud data category can be a different part of the target object. The target object is a specific entity to be scanned or a scene requirement. For example, the target object can be a table, and the different parts of the target object can be table legs, table tops, etc. This is only used as an example and does not constitute a specific limitation. The initial point cloud data is three-dimensional spatial point data obtained by scanning the target object with a three-dimensional scanning tool. The three-dimensional scanning tool can be determined according to the specific application scenario. For example, the three-dimensional scanning tool can be a three-dimensional laser scanner, etc. This is only used as an example and does not constitute a specific limitation. The preset clustering algorithm can be determined according to the specific application scenario. For example, the preset clustering algorithm can be k-mean++. This is only used as an example and does not constitute a specific limitation.
[0056] Specifically, the terminal selects a first cluster center from multiple initial point cloud data according to a preset screening strategy, determines multiple cluster centers based on a preset clustering algorithm and the first cluster center, and divides each initial point cloud data based on each cluster center to obtain multiple point cloud data clusters.
[0057] Step 102 : for each initial point cloud data in each point cloud data cluster, based on a preset optimal projection algorithm and the cluster center of the point cloud data cluster, process each initial point cloud data to obtain target point cloud data corresponding to each initial point cloud data.
[0058] The target point cloud data is determined by the initial point cloud data through multiple iterations. The iteration process is the process of continuously updating the position of the point cloud data, and the position of the point cloud data gradually approaches the actual position. The cluster center of the point cloud data cluster is the cluster center of the point cloud data cluster corresponding to the initial point cloud data.
[0059] Specifically, the terminal can obtain the position data of each initial point cloud data set, the position data of each cluster center, and the position data of other initial point cloud data sets in each point cloud data cluster. For each initial point cloud data set in each point cloud data cluster, the terminal iteratively updates the position data of the initial point cloud data set multiple times based on a preset optimal projection algorithm, the position data of the cluster center of the point cloud data cluster, the position data of other initial point cloud data sets in each point cloud data cluster, and the position data of the initial point cloud data, to obtain the target point cloud data corresponding to each initial point cloud data set.
[0060] Step 103 : Connect the target point cloud data in each point cloud data cluster to obtain a filtered point cloud.
[0061] The data types of the target point cloud data in each point cloud data cluster are the same, for example, the data types are all three-dimensional data. The filtering point cloud can remove noise, redundant or irrelevant data from the initial point cloud data and retain or enhance effective information.
[0062] Specifically, the terminal may merge the point cloud data in each point cloud data cluster based on a point cloud connection tool to obtain a filtered point cloud. Optionally, the point cloud connection tool may be an addition operator or a concatenate function in a point cloud library.
[0063] The above-mentioned point cloud filtering method clusters each initial point cloud data through a preset clustering algorithm to obtain multiple point cloud data clusters and cluster centers of each point cloud data cluster, thereby reducing the variability of the clustering results and improving the quality of the clustering effect. In addition, each initial point cloud data is processed based on a preset optimal projection algorithm to obtain target point cloud data corresponding to each initial point cloud data. The initial point cloud data is first clustered and then filtered through a preset clustering algorithm and a preset optimal projection algorithm, thereby improving the accuracy of the point cloud data in the filtering process, effectively reducing noise in the filtering process, and maintaining the detailed features of the edge of the point cloud data. This can improve the quality of the filtered point cloud data and retain the structure of the model in which the point cloud data is located.
[0064] In an exemplary embodiment, Figure 2 As shown, the specific implementation process of step 101 "clustering each initial point cloud data based on a preset clustering algorithm to obtain multiple point cloud data clusters" may include:
[0065] Step 201: According to a preset screening strategy, target initial point cloud data is determined as the first cluster center among multiple initial point cloud data.
[0066] Among them, the preset screening strategy can be a random selection strategy.
[0067] Specifically, the terminal may randomly select an initial point cloud data from a plurality of initial point cloud data, determine the initial point cloud data as the target initial point cloud data, and determine the target initial point cloud data as the first cluster center. The specific formula for determining the first cluster center may be:
[0068]
[0069] Among them, c1 is the first cluster center; X is a dataset of multiple initial point cloud data; x (i) is the i-th initial point cloud data, which is the i-th initial point cloud data randomly selected from X.
[0070] Step 202: For the nth cluster center, determine the distance data from each of the initial point cloud data to the n cluster centers, and determine the closest distance among the distance data. Perform probability conversion processing on the closest distance to obtain the probability distribution data corresponding to each of the initial point cloud data. Determine the n+1th cluster center based on the probability distribution data, and continue until the Nth cluster center is determined.
[0071] The distance data may be the square of the Euclidean distance from each initial point cloud data to the cluster center, where N>n≥1, and n is a positive integer. The specific value of the total number of cluster centers N can be set according to the actual application scenario.
[0072] Specifically, the terminal can determine the position data of each initial point cloud data and the position data of n cluster centers, respectively calculate the difference between the position data of each initial point cloud data and the position data of n cluster centers, determine the norm of the difference as the Euclidean distance from each initial point cloud data to the n cluster centers, calculate the square value of the Euclidean distance, and determine the minimum value of the square value as the closest distance. The calculation formula for the closest distance from each initial point cloud data to n cluster centers is:
[0073]
[0074] in, is the i-th initial point cloud data to c n The closest distance to the cluster center; C is the current cluster center set, c n is the nth cluster center. It is point x (i) To cluster center c n The square of the Euclidean distance.
[0075] The terminal can calculate the square value of the closest distance of each initial point cloud data and the sum of the square values. For each initial point cloud data, the ratio of the square value of the closest distance of the initial point cloud data to the sum value is calculated, and the ratio is determined as the probability distribution data of the initial point cloud data; the initial point cloud data corresponding to the largest value in the probability distribution data is determined as the n+1th cluster center. The specific calculation formula for the probability distribution data can be:
[0076]
[0077] in, is the probability distribution data corresponding to the i-th initial point cloud data.
[0078] Optionally, for the first cluster center, the terminal can determine the position data of each initial point cloud data and the position data of one cluster center, respectively calculate the difference between the position data of each initial point cloud data and the position data of one cluster center, determine the Euclidean distance between each initial point cloud data and the cluster center based on the difference, calculate the square value of the Euclidean distance, and determine the minimum value of the square values as the closest distance. The terminal can calculate the square value of the closest distance of each initial point cloud data and the sum of the square values. For each initial point cloud data, calculate the ratio of the square value of the closest distance of the initial point cloud data to the sum value, and determine the ratio as the probability distribution data of the initial point cloud data; the initial point cloud data corresponding to the largest value in the probability distribution data is determined as the second cluster center.
[0079] For the second cluster center, the terminal can determine the position data of each initial point cloud data and the position data of the two cluster centers, calculate the difference between the position data of each initial point cloud data and the position data of the two cluster centers, determine the Euclidean distance between each initial point cloud data and the two cluster centers based on the difference, calculate the square value of the Euclidean distance, and determine the minimum value of the square values as the closest distance. The terminal can calculate the square value of the closest distance of each initial point cloud data and the sum of the square values. For each initial point cloud data, calculate the ratio of the square value of the closest distance of the initial point cloud data to the sum value, and determine the ratio as the probability distribution data of the initial point cloud data; the initial point cloud data corresponding to the largest value in the probability distribution data is determined as the third cluster center.
[0080] …
[0081] For the N-1th cluster center, the terminal can determine the position data of each initial point cloud data and the position data of the N-1 cluster centers, respectively calculate the difference between the position data of each initial point cloud data and the position data of the N-1 cluster centers, determine the Euclidean distance between each initial point cloud data and the N-1 cluster centers based on the difference, calculate the square value of the Euclidean distance, and determine the minimum value of the square values as the closest distance. The terminal can calculate the square value of the closest distance of each initial point cloud data and the sum of the square values. For each initial point cloud data, calculate the ratio of the square value of the closest distance of the initial point cloud data to the sum value, and determine the ratio as the probability distribution data of the initial point cloud data; the initial point cloud data corresponding to the largest value in the probability distribution data is determined as the Nth cluster center.
[0082] Step 203: Divide the initial point cloud data based on the cluster centers to obtain multiple point cloud data clusters.
[0083] Specifically, the terminal can calculate the shortest distance between each initial point cloud data point and each cluster center. For each initial point cloud data point, the minimum value among the shortest distances is determined, and the cluster center corresponding to the minimum value is determined as the cluster center of the initial point cloud data point. All initial point cloud data points are assigned to corresponding point cloud data clusters, resulting in multiple point cloud data clusters.
[0084] In this embodiment, each initial point cloud data is clustered by a preset clustering algorithm to obtain multiple point cloud data clusters and cluster centers of each point cloud data cluster, thereby reducing the variability of the clustering results and improving the quality of the clustering effect.
[0085] In an exemplary embodiment, the specific implementation process of step 102 of "processing each initial point cloud data based on a preset optimal projection algorithm and the cluster center of the point cloud data cluster to obtain target point cloud data corresponding to each initial point cloud data" may include:
[0086] During the k+1th iteration, based on the position data of the kth point cloud data and the position data of each cluster center, the attraction relationship data between the kth point cloud data and each cluster center is determined; and based on the position data of the kth point cloud data and the position data of other kth point cloud data, the repulsion relationship data between the kth point cloud data and other kth point cloud data are determined; based on the attraction relationship data and the repulsion relationship data, the k+1th point cloud data corresponding to the kth point cloud data is determined; when k=K, the Kth point cloud data is determined as the target point cloud data.
[0087] Where K > k ≥ 0, and k is a non-negative integer. The specific value of the total number of iterations, K, can be determined based on the actual application scenario. The kth point cloud data is determined by the kth iteration of the initial point cloud data, and the other kth point cloud data are determined by the kth iteration of other initial point cloud data in the point cloud data cluster. The attractive relationship data is used to guide the point cloud data toward the cluster center during the iteration process. The repulsive relationship data is used to guide the repulsion strength of each point cloud data with other point cloud data during the iteration process.
[0088] Specifically, during the first iteration, for each initial point cloud data, the terminal can determine the position data of the initial point cloud data and the position data of each cluster center, and determine the attractive force relationship data between the initial point cloud data and each cluster center based on the position data of the initial point cloud data and the position data of each cluster center. In the point cloud data cluster where the initial point cloud data is located, the position data of the initial point cloud data and other initial point cloud data are determined, and the repulsive force relationship data between the initial point cloud data and other initial point cloud data are determined based on the positional relationship between the initial point cloud data and other initial point cloud data. The terminal can determine a weight ratio adjustment parameter and determine the first point cloud data corresponding to the initial point cloud data based on the weight ratio adjustment parameter, the attractive force relationship data, and the repulsive force relationship data.
[0089] During the second iteration, for each first point cloud data, the terminal can determine the position data of the first point cloud data and the position data of each cluster center, and determine the attractive force relationship data between the first point cloud data and each cluster center based on the position data of the first point cloud data and the position data of each cluster center. In the point cloud data cluster where the first point cloud data is located, the position data of the first point cloud data and other first point cloud data are determined, and the repulsive force relationship data between the first point cloud data and other first point cloud data are determined based on the positional relationship between the first point cloud data and other first point cloud data. The terminal can determine a weight ratio adjustment parameter and determine the second point cloud data corresponding to the first point cloud data based on the weight ratio adjustment parameter, the attractive force relationship data, and the repulsive force relationship data.
[0090] …
[0091] During the Kth iteration, for each K-1th point cloud data, the terminal can determine the position data of the K-1th point cloud data and the position data of each cluster center, and determine the attractive force relationship data between the K-1th point cloud data and each cluster center based on the position data of the K-1th point cloud data and the position data of each cluster center. In the point cloud data cluster where the K-1th point cloud data is located, the position data of the K-1th point cloud data and other K-1th point cloud data are determined, and the repulsive force relationship data between the K-1th point cloud data and other K-1th point cloud data are determined based on the positional relationship between the K-1th point cloud data and other K-1th point cloud data. The terminal can determine a weight ratio adjustment parameter and, based on the weight ratio adjustment parameter, the attractive force relationship data, and the repulsive force relationship data, determine the Kth point cloud data corresponding to the K-1th point cloud data.
[0092] In this embodiment, the position of each point cloud data is gradually adjusted in multiple rounds of iterations, thereby achieving overall optimization and denoising reconstruction of the point cloud structure.
[0093] In an exemplary embodiment, the specific implementation process of the step of “determining the attraction relationship data between the k-th point cloud data and each cluster center based on the position data of the k-th point cloud data and the position data of each cluster center” may include:
[0094] Calculate the kernel influence range value of the k-th point cloud data and other k-th point cloud data;
[0095] Determine first differences between the position data of the k-th point cloud data and the position data of each cluster center, and determine the norm of each first difference as the offset data between the k-th point cloud data and each cluster center;
[0096] Determine a first kernel influence value corresponding to each offset data based on the kernel influence range value, each offset data, and a preset kernel function; determine a ratio of the first kernel influence value corresponding to the offset data to the offset data as an attraction factor corresponding to the offset data;
[0097] Determine the confidence weight of each cluster center based on the number of other k-th point cloud data in the point cloud data cluster where each cluster center is located;
[0098] Calculate the first ratio of the attraction factor and the confidence weight, and determine the sum of the first ratios; determine the second ratio of the first ratios and the sum, and determine the first product value of the second ratio and the position data of the cluster center, and determine the sum of the first product values as the attraction relationship data between the k-th point cloud data and each cluster center.
[0099] Among them, the kernel influence range value is the average of the distances from each other k-th point cloud data to the k-th point cloud data. The position data can be the coordinate vector of the point cloud data. The norm of the first difference is the Euclidean distance between the position data of the k-th point cloud data and the position data of each cluster center. The preset kernel function can be an exponential decay function. The attraction factor is used to characterize the closeness between the k-th point cloud data and the cluster center. The confidence weight is the position weight of the cluster center, which is used to enhance or weaken the attraction to the neighboring points of the cluster center. The offset data is the Euclidean distance between the k-th point cloud data and each cluster center.
[0100] Specifically, the terminal can determine the position data of the k-th point cloud data and the position data of each other k-th point cloud data, respectively calculate the difference between the position data of the k-th point cloud data and the position data of each other k-th point cloud data, determine the Euclidean distance based on the difference, and calculate the sum of each Euclidean distance. Determine the number of other k-th point cloud data in the point cloud data cluster, calculate the ratio of the sum to the number, and determine the ratio as the core influence range value of the k-th point cloud data and the other k-th point cloud data. The specific calculation expression of the core influence range value can be:
[0101]
[0102] in, To calculate the nuclear influence range of the i-th k-th point cloud data and other k-th point cloud data, M is the number of other k-th point cloud data, is the dataset of the position data of other k-th point cloud data, is the i'th other k-th point cloud data; is the i-th k-th point cloud data.
[0103] The terminal can determine the first difference between the position data of the k-th point cloud data and the position data of each cluster center, calculate the norm corresponding to each first difference, and determine the range as the offset data between the k-th point cloud data and each cluster center.
[0104] For each cluster center, the terminal can determine the square value of the offset data, and determine the ratio of the square value to the fourth power of the kernel influence range value, calculate the exponential decay value of the ratio, determine the exponential decay value as the first kernel influence value, and determine the ratio of the first kernel influence value corresponding to the offset data to the offset data as the attraction factor between the k-th point cloud data and the cluster center. The calculation expression of the attraction factor can be:
[0105]
[0106] in, is the attraction factor between the i-th point cloud data and the n-th cluster center during the k-th iteration, is the offset data between the i-th point cloud data and the n-th cluster center during the k-th iteration; It is the first kernel influence value of the i-th point cloud data and the n-th cluster center in the k-th iteration process.
[0107] The terminal can determine the number of other k-th point cloud data in the point cloud data cluster where each cluster center is located, and determine the reciprocal of the number as the confidence weight of each cluster center. The calculation expression of the confidence weight can be:
[0108]
[0109] Among them, v n is the cluster center c n The confidence weight of The cluster center c n The number of other k-th point cloud data centered at the center, the other k-th point cloud data can be centered at the cluster center c n The local neighborhood point is the center.
[0110] For each cluster center, the terminal can calculate a first ratio of the attraction factor of the cluster center and the k-th point cloud data and the confidence weight of the cluster center, and calculate the sum of the first ratios corresponding to each cluster center. A second ratio of each first ratio and the sum is calculated, as well as a first product value of the second ratio and the position data of the cluster center, and the sum of the first product values corresponding to each cluster center is calculated. The sum is determined as the attraction relationship data between the k-th point cloud data and each cluster center. The calculation expression of the attraction relationship data can be:
[0111]
[0112] Among them, v n is the confidence weight of the nth cluster center, and N is the set of cluster centers.
[0113] In this embodiment, the attraction relationship data between the kth point cloud data and the cluster centers is determined by the position data of the kth point cloud data and the position data of each cluster center, and the normalized weighted average guide point is close to the local geometric center to realize the iterative update of the kth point cloud data, so that the point cloud data is gradually adjusted during the iterative update.
[0114] In an exemplary embodiment, the specific implementation process of the step of “determining the repulsive force relationship data between the k-th point cloud data and the other k-th point cloud data based on the position data of the k-th point cloud data and the position data of the other k-th point cloud data” may include:
[0115] Calculating second differences between position data of the k-th point cloud data and position data of each other k-th point cloud data, and determining the norm of each second difference as a relative displacement value between the k-th point cloud data and each other k-th point cloud data;
[0116] Determining, based on the kernel influence range value, each relative displacement value, and a preset kernel function, a second kernel influence value corresponding to each second difference value; determining, based on each relative displacement value and a preset repulsion function, a repulsion factor corresponding to each relative displacement value; determining a second product value of the second kernel influence value and the repulsion factor, and determining a ratio of the second product value to the relative displacement value as a repulsion intensity value corresponding to the relative displacement value;
[0117] Calculating the reciprocal of the sum of each relative position value and a preset constant, and determining the sum of each reciprocal as the influence weight of each relative displacement value;
[0118] Calculate the third product value of the repulsion strength value and the influence weight corresponding to each relative position value; determine the third ratio of each third product value and the sum of each third product value, and calculate the fourth product value of the second difference and the third ratio; determine the sum of each fourth product value as the repulsion force relationship data between the k-th point cloud data and other k-th point cloud data.
[0119] Among them, the influence weight is used to adjust the influence weight of each point according to the relative position between the points.
[0120] Specifically, the terminal can determine the position data of the k-th point cloud data and the position data of each other k-th point cloud data, respectively calculate the difference between the position data of the k-th point cloud data and the position data of each other k-th point cloud data, determine the Euclidean distance based on the difference, and calculate the sum of each Euclidean distance. The terminal determines the number of other k-th point cloud data in the point cloud data cluster, calculates the ratio of the sum to the number, and determines the ratio as the core influence range value of the k-th point cloud data and the other k-th point cloud data.
[0121] The terminal can respectively calculate the second difference between the position data of the kth point cloud data and the position data of each other kth point cloud data, and determine the norm of each second difference as the relative displacement value between the kth point cloud data and each other point cloud data.
[0122] The terminal can determine the square value of each relative displacement value, and determine the ratio of the square value to the fourth power of the nuclear influence range value, calculate the exponential decay value of the ratio, determine the exponential decay value as the second nuclear influence value, and determine the repulsion factor corresponding to each relative displacement value based on each relative displacement value and a preset repulsion function; determine the second product value of the second nuclear influence value and the repulsion factor, and determine the ratio of the second product value to the relative displacement value as the repulsion strength value corresponding to the second difference value. The calculation formula of the repulsion strength value can be:
[0123]
[0124] in, It is the repulsion strength value between the i-th point cloud data and the i'th other point cloud data during the k-th iteration. is the second kernel influence value between the i-th point cloud data and the i'th other point cloud data in the k-th iteration process, is the exclusion factor corresponding to the relative displacement value between the i-th point cloud data and the i'th other point cloud data in the k-th iteration process, It is the relative displacement value between the i-th point cloud data and the i'th other point cloud data during the k-th iteration.
[0125] The calculation formula of the rejection factor can be:
[0126]
[0127] The terminal calculates the reciprocal of the sum of each relative position value and a preset constant, and determines the sum of each reciprocal as the influence weight of each second difference value; the specific expression of the influence weight can be:
[0128]
[0129] in, is the influence weight between the i-th point cloud data and other i'th point cloud data in the k-th iteration, It is a preset constant. If the i-th point cloud data is at the boundary position or in an abnormal position, the influence weight will be smaller.
[0130] The terminal calculates the third product value of the repulsion strength value corresponding to each relative position value and the influence weight, determines the third ratio of each third product value and the sum of each third product value, and calculates the fourth product value of the second difference value and the third ratio; the sum of each fourth product value is determined as the repulsion force relationship data between the k-th point cloud data and the other k-th point cloud data. The specific expression of the repulsion force relationship data can be:
[0131]
[0132] in, is the second difference between the position data of the k-th i-th point cloud data and the position data of each other k-th i'th point cloud data, is the influence weight between the i-th point cloud data and other i-th point cloud data in the k-th iteration, is the repulsion strength value. It is a collection of other point cloud data.
[0133] In this embodiment, the position data of the kth point cloud data and the position data of each other kth point cloud data are used to determine the exclusion relationship data between the kth point cloud data and each other kth point cloud data, thereby achieving an iterative update of the kth point cloud data, so that the point cloud data is gradually adjusted during the iterative update. Furthermore, the use of the exclusion factor enhances the algorithm's retention of key information in the point cloud data, preventing the algorithm from convergence prematurely. This ensures that more key information is retained during the iterative process, improving the efficiency and quality of point cloud data. This is particularly suitable for application scenarios requiring high-precision and high-quality point cloud data.
[0134] In an exemplary embodiment, the specific implementation process of the step of “determining the k+1th point cloud data corresponding to the kth point cloud data based on the attraction relationship data and the repulsion relationship data” may include:
[0135] Determine the weight ratio adjustment parameter and the fifth product value of the weight ratio adjustment parameter and the repulsive force relationship data; and determine the sum of the fifth product value and the attractive force relationship data as the k+1th point cloud data corresponding to the kth point cloud data.
[0136] Among them, the weight ratio condition parameter is used to measure the weight ratio between the repulsive force relationship data and the attractive force relationship data of the k-th point cloud data.
[0137] Specifically, the terminal can determine the weight ratio adjustment parameter and the fifth product value of the weight ratio adjustment parameter and the repulsive force relationship data; the sum of the fifth product value and the attractive force relationship data is determined as the k+1th point cloud data corresponding to the kth point cloud data, and the calculation formula of the k+1th point cloud data can be:
[0138]
[0139] in, is the k+1th i-th point cloud data, is the weight ratio adjustment parameter.
[0140] In this embodiment, the k-th point cloud data is iteratively updated by adjusting the weight ratio parameters, the attraction relationship data, and the repulsion relationship data to obtain the k+1-th point cloud data, thereby realizing a gradual adjustment of the point cloud data and achieving the overall optimization and denoising reconstruction of the point cloud structure.
[0141] In an exemplary embodiment, Figure 3 As shown, Figure 3 This is a flow chart of the point cloud filtering method. The point cloud filtering method may specifically include the following steps:
[0142] Input multiple initial point cloud data, cluster each point cloud data based on a preset clustering algorithm to obtain multiple point cloud data clusters. Each point cloud data cluster can be a category (category 1, ..., category N). Each category of point cloud data cluster is point cloud filtered using a preset optimal projection algorithm to obtain the target point cloud data corresponding to the point cloud data cluster. The target point cloud data in each point cloud data cluster are point cloud connected to obtain a filtered point cloud.
[0143] In this embodiment, combining the preset clustering algorithm and the preset optimal projection algorithm provides improved performance, particularly in maintaining the model structure while effectively reducing noise. Furthermore, through the preset clustering algorithm initialization method, the combination of the preset clustering algorithm and the preset optimal projection algorithm demonstrates the best performance, particularly in processing complex models, demonstrating significant advantages.
[0144] In one embodiment, to evaluate the point cloud filtering method proposed in the above embodiment, which combines a preset clustering algorithm with a preset optimal projection algorithm, models from a dataset based on a three-dimensional model database (ModelNet) are provided. These models are given a certain degree of random error, and the correctness of the algorithm is verified by comparing the root mean square error with the original data. Comparisons are also made with other methods, including voxel filtering, statistical outlier removal (SOR) filtering, and filtering combining the K-means clustering algorithm (K-means) with an improved local optimal projection. The point cloud filtering method proposed in this embodiment of the application can be based on the MATLAB 2022b environment. All verifications were completed on a PC with an i7-13700KF and 16G memory. Table 1 shows the root mean square error between different models and different algorithms.
[0145] Table 1
[0146]
[0147] For the Cone model, the performance after voxel filtering was 1.5440, demonstrating some noise removal effectiveness but limited detail preservation. SOR filtering improved performance to 1.2351, demonstrating its effectiveness in removing outliers. K-means combined with improved local optimal projections further improved performance to 0.8521, demonstrating that the combination of the clustering algorithm and improved local optimal projections effectively reduces noise while preserving model structure. The combination of the preset clustering algorithm and the preset optimal projection algorithm achieved the best performance, reaching 0.4453, indicating that the optimized initialization of the preset clustering algorithm significantly improved the overall processing effect.
[0148] For the bowl model, the performance after voxel filtering was 2.8850, which was slightly lower than the simplified cone model. The performance of the SOR filter was 2.1127, indicating that its denoising effect was reduced on more complex shapes. The performance of K-means and improved local optimal projection was improved to 1.2358, highlighting its advantages in handling more complex models. The performance of the preset clustering algorithm and the preset optimal projection algorithm was further improved to 0.9875, confirming the significant effect of the preset clustering algorithm in optimizing cluster initialization on complex models.
[0149] It should be understood that, although the various steps in the flowcharts involved in the various embodiments described above are displayed in sequence according to the instructions of the arrows, these steps are not necessarily executed in sequence in the order indicated by the arrows. Unless otherwise specified herein, there is no strict order restriction on the execution of these steps, and these steps can be executed in other orders. Moreover, at least a portion of the steps in the flowcharts involved in the various embodiments described above can include multiple steps or multiple stages, and these steps or stages are not necessarily executed and completed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a portion of steps or stages in other steps.
[0150] Based on the same inventive concept, embodiments of the present application also provide a point cloud filtering device for implementing the aforementioned point cloud filtering method. The solution provided by this device is similar to the solution described in the aforementioned method. Therefore, the specific limitations of one or more point cloud filtering device embodiments provided below can be found in the above-described limitations of the point cloud filtering method and will not be further elaborated here.
[0151] In an exemplary embodiment, Figure 4 As shown, a point cloud filtering device 40 is provided, comprising: a clustering module 41, a processing module 42 and a connection module 43, wherein:
[0152] A clustering module 41 is used to perform clustering processing on each initial point cloud data based on a preset clustering algorithm to obtain multiple point cloud data clusters;
[0153] The processing module 42 is configured to process each initial point cloud data in each point cloud data cluster based on a preset optimal projection algorithm and the cluster center of the point cloud data cluster to obtain target point cloud data corresponding to each initial point cloud data;
[0154] The connection module 43 is used to perform point cloud connection on each target point cloud data in each point cloud data cluster to obtain a filtered point cloud.
[0155] In one embodiment, the clustering module 41 is configured to determine the target initial point cloud data as the first cluster center among the multiple initial point cloud data according to a preset screening strategy;
[0156] For the nth cluster center, determine the distance data from each initial point cloud data to the n cluster centers, and determine the closest distance among the distance data. Perform probability conversion on the closest distance to obtain the probability distribution data corresponding to each initial point cloud data. Determine the n+1th cluster center based on the probability distribution data, and continue until the Nth cluster center is determined, where N>n≥1, and n is a positive integer.
[0157] The initial point cloud data are divided based on each cluster center to obtain multiple point cloud data clusters.
[0158] In one embodiment, the processing module 42 is configured to determine, during a k+1th iteration, attractive force relationship data between the kth point cloud data and each cluster center based on the position data of the kth point cloud data and the position data of each cluster center; and repulsive force relationship data between the kth point cloud data and other kth point cloud data based on the position data of the kth point cloud data and the position data of other kth point cloud data; determine the k+1th point cloud data corresponding to the kth point cloud data based on the attractive force relationship data and the repulsive force relationship data, where K>k≥0 and k is a non-negative integer; and when k=K, determine the Kth point cloud data as the target point cloud data;
[0159] The k-th point cloud data is determined by performing the k-th iteration on the initial point cloud data, and the other k-th point cloud data are determined by performing the k-th iteration on other initial point cloud data in the point cloud data cluster.
[0160] In one embodiment, the processing module 42 is configured to calculate a kernel influence range value of the k-th point cloud data and other k-th point cloud data;
[0161] Determine first differences between the position data of the k-th point cloud data and the position data of each cluster center, and determine the norm of each first difference as the offset data between the k-th point cloud data and each cluster center;
[0162] Determine a first kernel influence value corresponding to each offset data based on the kernel influence range value, each offset data, and a preset kernel function; determine a ratio of the first kernel influence value corresponding to the offset data to the offset data as an attraction factor corresponding to the offset data;
[0163] Determine the confidence weight of each cluster center based on the number of other k-th point cloud data in the point cloud data cluster where each cluster center is located;
[0164] Calculate the first ratio of the attraction factor and the confidence weight, and determine the sum of the first ratios; determine the second ratio of the first ratios and the sum, and determine the first product value of the second ratio and the position data of the cluster center, and determine the sum of the first product values as the attraction relationship data between the k-th point cloud data and each cluster center.
[0165] In one embodiment, the processing module 42 is configured to respectively calculate second differences between position data of the k-th point cloud data and position data of each other k-th point cloud data, and determine the norm of each second difference as a relative displacement value between the k-th point cloud data and each other k-th point cloud data;
[0166] Determining, based on the kernel influence range value, each relative displacement value, and a preset kernel function, a second kernel influence value corresponding to each second difference value; determining, based on the relative displacement value and a preset repulsion function, a repulsion factor corresponding to each relative displacement value; determining a second product value of the second kernel influence value and the repulsion factor, and determining a ratio of the second product value to the relative displacement value as a repulsion intensity value corresponding to the relative displacement value;
[0167] Calculating the reciprocal of the sum of each relative displacement value and a preset constant, and determining the sum of each reciprocal as the influence weight of each relative displacement value;
[0168] Calculate the third product value of the repulsion strength value and the influence weight corresponding to each relative displacement value; determine the third ratio of each third product value and the sum of each third product value, and calculate the fourth product value of the second difference value and the third ratio; determine the sum of each fourth product value as the repulsion force relationship data between the k-th point cloud data and other k-th point cloud data.
[0169] In one embodiment, the processing module 42 is configured to determine a weight ratio adjustment parameter and determine a fifth product value of the weight ratio adjustment parameter and the repulsive force relationship data;
[0170] The sum of the fifth product value and the attraction relationship data is determined as the k+1th point cloud data corresponding to the kth point cloud data.
[0171] Each module in the above-mentioned point cloud filtering device can be implemented in whole or in part through software, hardware, or a combination thereof. Each module can be embedded in or independent of a processor in a computer device in hardware form, or can be stored in a memory in a computer device in software form, so that the processor can call and execute the corresponding operations of each module.
[0172] In an exemplary embodiment, a computer device is provided. The computer device may be a terminal, and its internal structure diagram may be as shown in FIG. Figure 5 As shown. The computer device includes a processor, memory, an input / output interface, a communication interface, a display unit, and an input device. The processor, memory, and input / output interface are connected via a system bus, and the communication interface, display unit, and input device are connected to the system bus via the input / output interface. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of the operating system and computer program in the non-volatile storage medium. The input / output interface of the computer device is used to exchange information between the processor and external devices. The communication interface of the computer device is used to communicate with external terminals via wired or wireless means, and the wireless means can be implemented via Wi-Fi, a mobile cellular network, near-field communication (NFC), or other technologies. When executed by the processor, the computer program implements a point cloud filtering method. The display unit of the computer device is used to form a visually visible image, and can be a display screen, a projection device, or a virtual reality imaging device. The display screen can be a liquid crystal display screen or an electronic ink display screen, and the input device of the computer device can be a touch layer covering the display screen, or a button, trackball or touchpad set on the computer device casing, or an external keyboard, touchpad or mouse.
[0173] Those skilled in the art will understand that Figure 5 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than shown in the figure, or combine certain components, or have a different component arrangement.
[0174] In one embodiment, a computer device is provided, including a memory and a processor. The memory stores a computer program, and the processor implements the steps in the above method embodiments when executing the computer program.
[0175] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps in the above-mentioned method embodiments are implemented.
[0176] In one embodiment, a computer program product is provided, including a computer program, which implements the steps in the above method embodiments when executed by a processor.
[0177] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with relevant regulations.
[0178] Those skilled in the art will understand that all or part of the processes in the above-mentioned embodiments can be implemented by instructing the relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. In particular, any reference to memory, database, or other media used in the embodiments provided in this application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The databases involved in the various embodiments provided herein may include at least one of a relational database and a non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the various embodiments provided herein may be, but are not limited to, general-purpose processors, central processing units (CPUs), graphics processing units (GPUs), digital signal processors (DSPs), programmable logic devices (PLDs), quantum computing-based data processing logic devices, artificial intelligence (AI) processors, and the like.
[0179] The technical features of the above embodiments can be combined arbitrarily. In order to make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this application.
[0180] The above-described embodiments merely represent several implementation methods of the present application. While the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the present application. It should be noted that a person of ordinary skill in the art may make various modifications and improvements without departing from the spirit of the present application, and these modifications and improvements fall within the scope of protection of the present application. Therefore, the scope of protection of the present application shall be determined by the appended claims.
Claims
1. A point cloud filtering method, characterized in that: The method comprises: Perform clustering processing on each initial point cloud data based on a preset clustering algorithm to obtain multiple point cloud data clusters; For each of the initial point cloud data in each of the point cloud data clusters, processing the initial point cloud data based on a preset optimal projection algorithm and the cluster center of the point cloud data cluster to obtain target point cloud data corresponding to each of the initial point cloud data; Perform point cloud connection on each of the target point cloud data in each of the point cloud data clusters to obtain a filtered point cloud.
2. The method according to claim 1, characterized in that The clustering process is performed on each initial point cloud data based on a preset clustering algorithm to obtain multiple point cloud data clusters, including: According to a preset screening strategy, the target initial point cloud data is determined as the first cluster center among the multiple initial point cloud data; For the nth cluster center, determine the distance data from each of the initial point cloud data to the n cluster centers, and determine the closest distance among the distance data, perform probability conversion processing on the closest distance to obtain probability distribution data corresponding to each of the initial point cloud data, and determine the n+1th cluster center based on the probability distribution data, until the Nth cluster center is determined, N>n≥1, and n is a positive integer; The initial point cloud data are divided based on the cluster centers to obtain a plurality of point cloud data clusters.
3. The method according to claim 2, characterized in that The processing of each of the initial point cloud data based on the preset optimal projection algorithm and the cluster center of the point cloud data cluster to obtain target point cloud data corresponding to each of the initial point cloud data includes: During the k+1th iteration, based on the position data of the kth point cloud data and the position data of each cluster center, determining the attractive force relationship data between the kth point cloud data and each cluster center; and based on the position data of the kth point cloud data and the position data of other kth point cloud data, determining the repulsive force relationship data between the kth point cloud data and other kth point cloud data; based on the attractive force relationship data and the repulsive force relationship data, determining the k+1th point cloud data corresponding to the kth point cloud data, K>k≥0, k is a non-negative integer; when k=K, determining the Kth point cloud data as the target point cloud data; The k-th point cloud data is determined by performing the k-th iteration on the initial point cloud data, and the other k-th point cloud data is determined by performing the k-th iteration on other initial point cloud data in the point cloud data cluster.
4. The method according to claim 3, characterized in that The determining, based on the position data of the k-th point cloud data and the position data of each cluster center, the attraction relationship data between the k-th point cloud data and each cluster center, comprises: Calculating the kernel influence range values of the k-th point cloud data and the other k-th point cloud data; Determining first differences between the position data of the k-th point cloud data and the position data of each cluster center, and determining a norm of each of the first differences as offset data between the k-th point cloud data and each cluster center; Determining a first kernel influence value corresponding to each offset data based on the kernel influence range value, each offset data, and a preset kernel function; determining a ratio of the first kernel influence value corresponding to the offset data to the offset data as an attraction factor corresponding to the offset data; Determining the confidence weight of each cluster center based on the number of other k-th point cloud data in the point cloud data cluster where each cluster center is located; Calculate a first ratio of the attraction factor and the confidence weight, and determine the sum of the first ratios; determine a second ratio of each first ratio and the sum, and determine a first product value of the second ratio and the position data of the cluster center, and determine the sum of the first product values as the attraction relationship data between the k-th point cloud data and each cluster center.
5. The method according to claim 4, characterized in that The determining, based on the position data of the k-th point cloud data and the position data of the other k-th point cloud data, the repulsive force relationship data between the k-th point cloud data and the other k-th point cloud data includes: respectively calculating second differences between the position data of the k-th point cloud data and the position data of each of the other k-th point cloud data, and determining the norm of each of the second differences as a relative displacement value between the k-th point cloud data and each of the other k-th point cloud data; Determining, based on the kernel influence range value, each relative displacement value, and the preset kernel function, a second kernel influence value corresponding to each second difference value; determining, based on the relative displacement value and a preset repulsion function, a repulsion factor corresponding to each relative displacement value; determining a second product value of the second kernel influence value and the repulsion factor, and determining a ratio of the second product value to the relative displacement value as a repulsion intensity value corresponding to the relative displacement value; Calculating the reciprocal of the sum of each relative displacement value and a preset constant, and determining the sum of each reciprocal as the influence weight of each relative displacement value; Calculate the third product value of the repulsion strength value and the influence weight corresponding to each relative displacement value; determine the third ratio of each third product value and the sum of each third product value, and calculate the fourth product value of the second difference and the third ratio; determine the sum of each fourth product value as the repulsion force relationship data between the k-th point cloud data and other k-th point cloud data.
6. The method according to claim 3, characterized in that The determining, based on the attraction relationship data and the repulsion relationship data, the k+1th point cloud data corresponding to the kth point cloud data includes: determining a weight ratio adjustment parameter, and determining a fifth product value of the weight ratio adjustment parameter and the repulsive force relationship data; The sum of the fifth product value and the attraction relationship data is determined as the k+1th point cloud data corresponding to the kth point cloud data.
7. A point cloud filtering device, characterized in that: The device comprises: A clustering module is used to perform clustering processing on each initial point cloud data based on a preset clustering algorithm to obtain multiple point cloud data clusters; a processing module, configured to process each of the initial point cloud data in each of the point cloud data clusters based on a preset optimal projection algorithm and the cluster center of the point cloud data cluster to obtain target point cloud data corresponding to each of the initial point cloud data; The connection module is used to perform point cloud connection on each of the target point cloud data in each of the point cloud data clusters to obtain a filtered point cloud.
8. A computer device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 6 are implemented.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 6 are implemented.
10. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 6 are implemented.