An adaptive point cloud simplification method based on point cloud feature partitioning

CN115294272BActive Publication Date: 2026-09-29SHANGHAI UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210910531.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-07-29
Publication Date
2026-09-29
Estimated Expiration
2042-07-29

AI Technical Summary

Technical Problem

[0004]但采用任意一种精简算法对点云数据进行精简处理,无区别性地对点云进行下采样操作,极易造成点云模型的重要特征数据点误删除或过度简化等问题

Benefits of technology

[0055]本发明采用依据点云特征将点云模型进行先分区再精简的精简方案,技能区别性地对点云进行下采样,保证了精简后的点云模型不失真,同时分区处理,提高了点云处理效率;同时,本发明采用弦法向量法计算出点云主曲率相关信息,保证曲率参数与法向量参数的准确性与鲁棒性,参数设置简且参数数量较少,具有一定的自适应能力,可有效解决实际生产中不同类型点云模型精简参数设置不确定的难题。实验结果证明本发明采用的基于分区的混合下采样精简算法,能够达到精简点云效果的同时也能保证点云模型质量。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115294272B_ABST
    Figure CN115294272B_ABST
Patent Text Reader

Abstract

The application relates to an adaptive point cloud simplification method based on point cloud feature partitioning. First, a K-d tree index is established for an original point cloud; then, a principal component analysis method is used to calculate a point cloud normal vector, a point cloud principal curvature is calculated by combining a chord cutting circle, and a point cloud average curvature, overall point cloud average curvature and curvature standard deviation are derived. Then, a curvature threshold L is calculated according to the parameters obtained in the foregoing steps, point clouds are identified as strong feature point clouds and other area point clouds, the strong feature point clouds contain important data information of a point cloud model and are reserved. Then, a K nearest neighbor normal vector included angle average value f i of the other area point clouds is calculated, an included angle threshold is set, and the point clouds are divided into a general feature point cloud area and a non-feature point cloud area; then, the general feature point cloud is subjected to simplification processing by using a curvature method, and the non-feature point cloud is subjected to simplification processing by using a bounding box method; finally, the reserved strong feature point cloud is combined with the simplified general feature point cloud and non-feature point cloud, and a final required simplified point cloud model is obtained.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of point cloud processing and application, and in particular relates to an adaptive point cloud simplification method based on point cloud feature partitioning. Background Technology

[0002] With the development and application of virtual matching technology, the quality assurance and improvement of point cloud models obtained by laser scanners have received increasing attention. However, the redundancy of the number of point clouds can easily lead to problems such as low point cloud processing efficiency and poor reconstruction model quality. Therefore, point cloud simplification processing is particularly important.

[0003] Common point cloud simplification algorithms include random sampling, bounding box sampling, and curvature sampling. Random sampling is fast and simple; its basic principle is to select and delete points from the point cloud data using a random number function. While simple in principle, this method has low accuracy. Bounding box sampling constructs a minimum cube from the point cloud, using the cube's center point or centroid to replace other points within the cube for downsampling. The simplification effect is closely related to the cube size. Curvature sampling-based point cloud simplification algorithms simplify the data based on curvature information; areas with high curvature retain more data points, while areas with low curvature retain fewer.

[0004] However, using any simplification algorithm to simplify point cloud data, and indiscriminately downsampling the point cloud, can easily lead to problems such as the accidental deletion or oversimplification of important feature data points in the point cloud model. Therefore, Ji et al. designed a simplification algorithm based on point weights using k-nearest neighbor search. The algorithm judges the importance of points using a designed feature formula, and finally uses an octree to perform a second simplification of the point cloud. The idea behind this approach is to classify point cloud data through features and then simplify the point cloud data. This idea has received increasing attention from researchers in the process of point cloud simplification. Summary of the Invention

[0005] This invention addresses the shortcomings of existing technologies by providing an adaptive point cloud simplification method based on point cloud feature partitioning. The method involves first classifying the point cloud by features, then partitioning the point cloud model according to these features, and selectively simplifying the point cloud data to improve processing efficiency. Point cloud contour lines are considered strong features, containing important model information, and are generally retained without simplification. For general feature point clouds with significant curvature variations, a curvature-based simplification method is used. For other non-feature point clouds, a bounding box method is used for downsampling.

[0006] To achieve the above objectives, the present invention provides a point cloud simplification technical solution comprising the following steps:

[0007] Step 1: Create an index for the target point cloud based on a Kd-tree;

[0008] Step 2: Calculate the point cloud normal vectors using Principal Component Analysis (PCA);

[0009] Step 3: Calculate the principal curvatures k1 and k2 of the point cloud using the chord normal vector method;

[0010] Step 4: Calculate the average curvature MC of the point cloud and the overall average curvature of the point cloud using the principal curvatures. and standard deviation MC std ;

[0011] Step 5: Using statistical principles, set a threshold L and the average curvature of the point cloud to identify and retain strong feature point clouds;

[0012] Step 6: Calculate the average angle f between the K nearest neighbor normal vectors of the point cloud. i ;

[0013] Step 7: Based on the threshold angle γ of the normal vectors i Distinguish between general feature point cloud regions and non-feature point cloud regions;

[0014] Step 8: Use the curvature method to simplify the general feature point cloud region;

[0015] Step 9: Use the bounding box method to simplify the non-feature point cloud regions;

[0016] In step 1, a KD-tree is built for the point cloud, and an index is created to improve the efficiency of subsequent point cloud processing.

[0017] The calculation process for the point cloud normal vectors using the PCA algorithm in step 2 is as follows:

[0018] For each scanned point p in the point cloud, search for its k nearest neighbor points, and then calculate the local plane P in the least-squares sense for these points. This plane can be represented as:

[0019]

[0020] In the formula, Let d be the normal vector of plane P, and d be the distance from p to the origin. i Let i be the direction vector from any search point in the k-neighborhood to the origin, and let i be the index of any point from 1 to k.

[0021] We can consider the normal vector of the plane fitted by the k nearest points as the normal vector of the current scan point. The normal vector of plane P can be obtained by principal component analysis (PCA). The calculation shows that p passes through the centroid p0 of its k nearest neighbors, and the normal vector... satisfy First, perform eigenvalue decomposition on the covariance matrix M in equation (2) to obtain the eigenvalues ​​of M. The eigenvector corresponding to the smallest eigenvalue of M is the normal vector of point p.

[0022]

[0023] The direction of the point cloud normal vector obtained by PCA is uncertain. Only the line where the normal vector is located can be obtained, but the final direction of the normal vector cannot be determined. This leads to the problem of inconsistent normal vector directions on a plane, which affects the effect of subsequent processing operations. This invention uses the approximate solution algorithm proposed by Hoppe to correct the normal vector.

[0024] Regarding step 3, the neighboring points of a specific point on the point cloud surface determine its local shape. Estimating curvature through surface fitting may introduce significant errors, so the contribution of the normal vector should be considered. Therefore, this paper uses the chord normal vector to estimate the curvature of a point. Its advantage is that it only considers one neighboring point, using this point to construct a normal cross-section curve, and then constructing a normal cross-section circle. The normal curvature of the specific point is then estimated based on the positions of the two points and the normal vector. The specific calculation process is as follows:

[0025] For each point p in the point cloud, let the normal vector of point p be N. We estimate the normal curvature at point p using the point coordinates and the normal vector: assuming point p has m nearest neighbors, q... i Let q be the i-th nearest neighbor of point p. i The normal vector is M i Let L be a local coordinate system of point p with orthogonal coordinates {p, X, Y, Z}, and N denote the normal vector of point p. X and Y are orthogonal unit vectors. In L, p, q i M i The coordinates of q can be (0, 0, 0). i For (x) i y i , z i M i For (n x ,i,n y ,i,n z If i), then the normal curvature of point p is... It can be estimated using its osculating circle.

[0026] Then p relative to q i The normal curvature is estimated as follows:

[0027]

[0028] In the formula, n is the normal vector of point p, and α is the vectors -N and pq. i The angle between them, β is the vectors N and M iThe angle between them, the approximate value of equation (3) can also be expressed as

[0029]

[0030] In the formula:

[0031] Then, the relationship between the normal curvature and the principal curvature is derived using Euler's equations:

[0032]

[0033] In the formula: θ i +θ is a point p passing through q i The angle between the tangent to the normal intersection of vectors e1 and e2 and the principal direction, θ is the angle between vectors e1 and e2. i You can use q i The local coordinate system is calculated, and formula (5) can be written as an optimization problem:

[0034]

[0035] Where m is the number of points near point p, formula (6) can be written in matrix form:

[0036]

[0037] Where M is a matrix:

[0038]

[0039] R is a matrix:

[0040]

[0041] By least-squares fitting of equation (7), an estimate of μ can be obtained, and the principal curvatures k1 and k2 can be deduced to be matrices:

[0042]

[0043] The eigenvalues ​​of W are obtained by transforming the unit eigenvector of W from the local coordinate system L to the global coordinate system.

[0044] For step 4, the point cloud mean curvature, global mean curvature, and standard deviation are calculated as shown in formulas (11), (12), and (13):

[0045]

[0046]

[0047]

[0048] Among them, Ci Let be the curvature value of the i-th point in the k-neighborhood.

[0049] For step 5, determine the current state of each p. i curvature MC i Is it greater than the set threshold L? When MC i When the value is greater than L, retain point p. i As a strong feature point; as shown in formula (14), where σ is the calculation coefficient, generally taking values ​​from 2 to 5. The threshold L is calculated using the following formula:

[0050]

[0051] For steps 6 to 9, suppose there is a point p in the point cloud. i The arithmetic mean of the angle between the normal vectors of its k nearest neighbors and the normal vectors of its k nearest neighbors is:

[0052]

[0053] In the formula θ ij For point p i The normal vector of its nearest neighbor p j The angle between the normal vectors, where j is the j-th point among the k nearest neighbors. A suitable threshold γ is selected. i If f i >γ i If the data is classified as general feature point cloud data, then the curvature method is used to simplify the point cloud data. If f i <γ i If the value is not specified, it is identified as a non-feature point cloud, and the bounding box method is used for simplification.

[0054] Compared with the prior art, the present invention has the following advantages:

[0055] This invention employs a point cloud model simplification scheme that first partitions the point cloud model based on its features, then simplifies it. This approach selectively downsamples the point cloud, ensuring the simplified model remains undistorted. Partitioning also improves processing efficiency. Furthermore, this invention uses the chord normal vector method to calculate the principal curvature information of the point cloud, guaranteeing the accuracy and robustness of the curvature and normal vector parameters. The parameter settings are simple and the number of parameters is small, exhibiting a degree of adaptability. This effectively solves the problem of uncertain parameter settings for simplifying different types of point cloud models in actual production. Experimental results demonstrate that the partition-based hybrid downsampling simplification algorithm used in this invention can achieve effective point cloud simplification while maintaining the quality of the point cloud model. Attached Figure Description

[0056] Figure 1 This is a flowchart of the simplified point cloud solution of the present invention.

[0057] Figure 2To closely examine the relationship between the circle and the set of normal vector variables.

[0058] Figure 3 This is a schematic diagram of the normal vectors of general feature regions and non-feature regions.

[0059] Figure 4 A schematic diagram showing the results of retaining strong features for Bunny, general triangular pyramid, and No. 0 engineering part.

[0060] Figure 5 A diagram showing the simplification effects of different simplification schemes.

[0061] Figure 6 A diagram showing the comparison of the reconstruction effects of point cloud models using different simplification schemes. Detailed Implementation

[0062] The technical solution of the present invention will be further described below with reference to the accompanying drawings and examples.

[0063] like Figure 1 As shown, the present invention provides an adaptive point cloud simplification method based on point cloud feature partitioning, comprising the following steps:

[0064] Step 1: Build a KD-tree index to prepare for subsequent point cloud processing operations and improve point cloud processing efficiency.

[0065] Step 2: Calculate the point cloud normal vectors using Principal Component Analysis (PCA). For each scanned point p in the point cloud, search for its k nearest neighbors, and then calculate the local plane P in the least-squares sense for these points. This plane can be represented as:

[0066]

[0067] In the formula, Let d be the normal vector of plane P, and d be the distance from p to the origin. i Let be the normal vector of the i-th point among the k nearest neighbors;

[0068] We can consider the normal vector of the plane fitted by the k nearest points as the normal vector of the current scan point. The normal vector of plane P can be obtained by principal component analysis (PCA). The calculation shows that p passes through the centroid p0 of its k nearest neighbors, and the normal vector... satisfy First, perform eigenvalue decomposition on the covariance matrix M in equation (2) to obtain the eigenvalues ​​of M. The eigenvector corresponding to the smallest eigenvalue of M is the normal vector of point p.

[0069]

[0070] The direction of the point cloud normal vector obtained by PCA is uncertain. Only the line where the normal vector is located can be obtained, but the final direction of the normal vector cannot be determined. This leads to the problem of inconsistent normal vector directions on a plane, which affects the effect of subsequent processing operations. Therefore, the approximate solution algorithm proposed by Hoppe is used to correct the normal vector.

[0071] Step 3: Calculate the principal curvatures k1 and k2 of the point cloud using the chord normal vector. The specific calculation process is as follows:

[0072] For each point p in the point cloud, let the normal vector of point p be N. We estimate the normal curvature at point p using the point coordinates and the normal vector: assuming point p has m nearest neighbors, q... i Let q be the i-th nearest neighbor of point p. i The normal vector is M i Let L be a local coordinate system of point p with orthogonal coordinates {p, X, Y, Z}, and N denote the normal vector of point p. X and Y are orthogonal unit vectors. In L, p, q i M i The coordinates of q can be (0, 0, 0). i For (x) i y i , z i M i For (n x ,i,n y ,i,n z If i), then the normal curvature of point p is... It can be estimated using its osculating circle. Figure 2 The relationships between the above sets of variables are shown.

[0073] Then p relative to q i The normal curvature is estimated as follows:

[0074]

[0075] In the formula, n is the normal vector of point p, and α is the vectors -N and pq. i The angle between them, β is the vectors N and M i The angle between them, and the approximate value of equation (3) can also be expressed as:

[0076]

[0077] In the formula:

[0078] Then, the relationship between the normal curvature and the principal curvature is derived using Euler's equations:

[0079]

[0080] In the formula: θi +θ is a point p passing through q i The angle between the tangent to the normal intersection of vectors e1 and e2 and the principal direction, θ is the angle between vectors e1 and e2. i You can use q i The local coordinate system is calculated, and formula (5) can be written as an optimization problem:

[0081]

[0082] Where m is the number of points near point p; Formula (6) can be written in matrix form:

[0083]

[0084] Where M is a matrix:

[0085]

[0086] R is a matrix:

[0087]

[0088] By least-squares fitting of equation (7), an estimate of μ can be obtained, and the principal curvatures k1 and k2 can be deduced to be matrices:

[0089]

[0090] The eigenvalues ​​of W are obtained by transforming the unit eigenvectors of W from the local coordinate system L to the global coordinate system.

[0091] Step 4, the point cloud mean curvature, overall mean curvature, and standard deviation are calculated as shown in formulas (11), (12), and (13):

[0092]

[0093]

[0094]

[0095] Among them, C i Let be the curvature value of the i-th point in the k-neighborhood.

[0096] Step 5, determine the current state of each p. i curvature MC i Is it greater than the set threshold L? When MC i When the value is greater than L, retain point p. i As a strong feature point; as shown in formula (14), where σ takes the value of 3. The threshold L is calculated as follows:

[0097]

[0098] The strong feature extraction results of the three models in this invention are as follows: Figure 4 As shown.

[0099] Step 6: Calculate the average normal vector of the point cloud. The calculation formula is as follows:

[0100]

[0101] In the formula θ ij For point p i The normal vector of its nearest neighbor P j The angle between the normal vectors, where j is the j-th point among the k nearest neighbors; for example... Figure 3 As shown. Select an appropriate threshold γ. i If f i >γ i If f i <γ i If the value is not specified, it is classified as a non-feature point cloud.

[0102] Step 7, set the angle threshold γ i The angles are 20°, 30°, and 30° respectively, and the distinction between the general feature point cloud region and the non-feature point cloud region is completed.

[0103] Step 8: Simplify the feature point cloud region using the curvature method, as shown in the following figure. Figure 5 The results of the "hybrid downsampling" proposed in this invention are shown.

[0104] Step 9: Simplify the non-feature point cloud regions using the bounding box method, as shown in the following figure. Figure 5 The results of the "hybrid downsampling" proposed in this invention are shown.

[0105] Figure 6 The diagram shows the reconstructed point cloud model after the simplification method proposed in this invention. As can be seen from the reconstructed model, simply using a certain downsampling algorithm to simplify the point cloud model can easily lead to the loss of point cloud features and oversimplification, resulting in holes in the reconstructed model and a significant reduction in model quality. However, the method proposed in this invention, which involves partitioning the point cloud based on its features before simplification, can reduce the amount of point cloud data while ensuring point cloud quality. Furthermore, the algorithm using chord normal vectors and statistical principles proposed in this paper can greatly improve the robustness of point cloud feature recognition and differentiation.

[0106] In summary, the above embodiments of the present invention provide an adaptive point cloud simplification method based on point cloud feature partitioning. First, a Kd-tree index is established for the original point cloud. Then, principal component analysis is used to calculate the point cloud normal vectors, and the principal curvature of the point cloud is calculated using the tangent circle method, deriving the average curvature of the point cloud, the overall average curvature of the point cloud, and the standard deviation of curvature. Next, a curvature threshold L is calculated based on the aforementioned parameters, identifying the point cloud as a strong feature point cloud and other region point clouds. The strong feature point cloud contains important data information of the point cloud model and is retained. Finally, the average angle f between the K nearest neighbor normal vectors of other region point clouds is calculated. i The point cloud is divided into general feature point cloud regions and non-feature point cloud regions by setting an angle threshold. Then, the general feature point cloud is simplified using the curvature method, and the non-feature point cloud is simplified using the bounding box method. Finally, the retained strong feature point cloud is merged with the simplified general feature point cloud and non-feature point cloud to obtain the final simplified point cloud model.

[0107] The above description only illustrates the embodiments of the present invention in conjunction with the accompanying drawings. However, the present invention is not limited to the above embodiments. Various changes can be made according to the purpose of the invention. Any changes, modifications, substitutions, combinations or simplifications made based on the spirit and principle of the technical solution of the present invention shall be equivalent substitutions. As long as they meet the purpose of the invention and do not deviate from the technical principle and inventive concept of the present invention, they shall fall within the protection scope of the present invention.

Claims

1. An adaptive point cloud simplification method based on point cloud feature partitioning, characterized in that, Includes the following steps: Step 1: Based on K - d The tree indexes the target point cloud; Step 2: Calculate the point cloud normal vectors using principal component analysis; Step 3: Calculate the principal curvature of the point cloud using the chord normal vector method. k 1. k 2. The calculation process is as follows: For each point in the point cloud p ,set up p The point is the normal vector. N Use point coordinates and normal vector to estimate points p Normal curvature at: Assuming p There are near the point m Nearest neighbor points, q i For point p No. i Nearest neighbor points, q i Normal vector is M i Let orthogonal coordinates be used. For point p Local coordinate system L , N express p The normal vector of a point X and Y They are orthogonal unit vectors; in L In the equation, the coordinates of p are , for , for Then point p normal curvature Estimated by its osculating circle: but p Compared to The normal curvature is estimated as follows: (3); In the formula, n for p Point normal vector α It is a vector - N and The angle between them, β is a vector N and The angle between them, and the approximate value of equation (3) is also expressed as: (4); In the formula: , ; Then, the relationship between the normal curvature and the principal curvature is derived using Euler's equations: (5); In the formula, For point p Pass The angle between the tangent to the normal section and the principal direction. θ For vectors e 1 and e The included angle of 2, θ i Use a little The local coordinate system is calculated, and formula (5) is written as an optimization problem: (6); in, m for p The number of points near the given point; Rewrite formula (6) in matrix form: (7); in M For matrix: ( 8); R For matrix: (9); By least-squares fitting of equation (7), we obtain μ The estimated value is used to infer the principal curvature. k 1. k 2 is a matrix (10); eigenvalues, W The unit eigenvector from the local coordinate system L Transforming to the global coordinate system yields the principal direction vector. k 1. k 2; Step 4: Calculate the average curvature of the point cloud using the principal curvatures. MC Overall average curvature of point cloud and standard deviation ; Step 5: Set a threshold based on statistical principles L Strong feature point clouds are identified and preserved by using the average curvature of the point cloud; Step 6: Calculate the point cloud K Average angle between nearest neighbor normal vectors ; Step 7: Based on the threshold angle between the normal vectors Identify and distinguish between general feature point cloud regions and non-feature point cloud regions; Step 8: Use the curvature method to simplify the general feature point cloud region; Step 9: Use the bounding box method to simplify non-feature regions.

2. The adaptive point cloud simplification method based on point cloud feature partitioning as described in claim 1, characterized in that: Step 1 establishes the original point cloud model. K - d The tree index prepares for subsequent calculations of relevant parameters of the point cloud model.

3. The adaptive point cloud simplification method based on point cloud feature partitioning as described in claim 1, characterized in that: Step 2 uses Principal Component Analysis (PCA) to calculate the point cloud normal vector, preparing for the subsequent calculation of the angle between the point cloud curvature and the normal vector. The specific calculation process is as follows: For each scan point in the point cloud p Search for its neighbors k Then calculate the local plane in the least-squares sense of these neighboring points. P This plane is represented as: (1); In the formula, For plane P The normal vector, d for p Distance to the origin; p i for k The direction vector from any search point in the neighborhood to the origin. i 1~ k Number any point in the middle; Depend on k The normal vector of the plane fitted by the nearest point is the normal vector of the current scan point; flat P The normal vector is obtained from principal component analysis. p After its K Centroid of neighboring points And normal vector satisfy First, consider the covariance matrix in equation (2). M Perform eigenvalue decomposition to obtain M The eigenvalues, M The eigenvector corresponding to the smallest eigenvalue is the point. p Normal vector: (2); The direction of the point cloud normal vector obtained by PCA is uncertain. The approximate solution algorithm proposed by Hoppe is used to correct the normal vector and obtain the final normal vector.

4. The adaptive point cloud simplification method based on point cloud feature partitioning as described in claim 1, characterized in that: Step 4 involves calculating the principal curvature. k 1. k 2. Calculate the average curvature of the point cloud. MC Overall average curvature of point cloud and The specific calculation formula is as follows: (11); (12); (13); in, MC i for k The first in the neighborhood i The curvature value at each point, n Let p be the normal vector of point p.

5. The adaptive point cloud simplification method based on point cloud feature partitioning as described in claim 1, characterized in that: Step 5 calculates the curvature threshold using statistical principles. L By judging each current curvature , Is it greater than the set threshold? L, when At that time, reserve point As a strong feature point; as shown in formula (14), where, For calculating coefficients, threshold L The calculation formula is: (14); p i for k The direction vector from any search point in the neighborhood to the origin. i 1~ k Number any point in the middle.

6. The adaptive point cloud simplification method based on point cloud feature partitioning as described in claim 1, characterized in that: Steps 6 to 9 apply a threshold value to the angle between the normal vectors of the point cloud data in non-strong feature point cloud regions. The specific calculation process for distinguishing between general feature point clouds and non-feature point clouds is as follows: (15); In the formula For point The normal vector and its nearest neighbors Angle between normal vectors j for k The nearest neighbor point j One point; Select threshold ,like If the data is classified as general feature point cloud data, then the curvature method is used to simplify the point cloud data. If the value is not specified, it is identified as a non-feature point cloud, and the bounding box method is used for simplification.

Citation Information

Patent Citations

  • Local curved surface change factor based scattered point cloud data compaction processing method

    CN104616349A

  • Quick registration method for combined simplified point cloud data

    CN113160129A