Point cloud registration method based on eigenvalue deviation ratio

Through the method based on the deviation ratio of feature points, the point cloud registration method constructs the feature point discriminant through the calculation of small grids and covariance matrices, solving the problems of low efficiency and low accuracy of point cloud registration in the existing technology, and achieving for more efficient and accurate registration results.

CN117152217BActive Publication Date: 2025-01-21WUXI ZHIGULIAN TECHNOLOGY CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310711301.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-06-15
Publication Date
2025-01-21
Estimated Expiration
2043-06-15

AI Technical Summary

Technical Problem

The existing point cloud registration methods are inefficient and low in accuracy, especially the iterative closest point algorithm is sensitive to the initial position pose, which is easy to fall into the local optimal solution, and it takes a lot of time to train the feature extraction neural network.

Method used

A point cloud registration method based on the deviation ratio of feature points is used to divide the point cloud into small grids, calculate the center of gravity and covariance matrix of each small grid, construct the feature point discriminant, determine the matching pair, and use singular values It is decomposed for coarse registration and iterative closest point algorithm for fine registration.

Benefits of technology

It improves the efficiency and accuracy of point cloud registration, reduces the sensitivity to the initial pose, and reduces the time requirement of the training process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117152217B_ABST
    Figure CN117152217B_ABST
Patent Text Reader

Abstract

The invention discloses a point cloud registration method based on eigenvalue deviation ratio, wherein voxel filtering is performed on the collected source point cloud and target point cloud to obtain the source point cloud centroid point and the target point cloud centroid point, the source point cloud centroid point is used as the query point, the eigenvalue of its neighborhood covariance matrix is ​​calculated, the source point cloud feature point discriminant is used to screen out the source point cloud feature point, the target point cloud centroid point is used as the query point, the eigenvalue of its neighborhood covariance matrix is ​​calculated, the target point cloud feature point discriminant is used to screen out the target point cloud feature point, a matching pair discriminant formula is used to obtain the matching pair, singular value decomposition is used to complete the coarse registration, and finally ICP is used to complete the fine registration.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of three-dimensional point cloud registration, and more specifically, relates to a point cloud registration method based on feature point deviation ratio. Background Art

[0002] 3D point cloud registration is an indispensable technology in computer vision. Its goal is to calculate the best rigid body transformation for point cloud data in different coordinate systems and convert it into point cloud data in the same coordinate system. It is mainly used in the fields of autonomous driving, building industrialization, and cultural relics restoration. Among the many point cloud registration methods, the most widely used is the iterative closest point algorithm ICP (Iterative Closest Point), but this method is sensitive to the initial pose requirements of the registration point cloud and is prone to fall into the local optimal solution, resulting in registration failure; and the number of iterative calculations is large, making the entire registration process inefficient. How to improve the efficiency and accuracy of registration is an urgent problem to be solved.

[0003] At present, the improved registration strategy and feature learning strategy are usually used to complete the point cloud data registration. The improved registration strategy mainly improves the matching pair search strategy and the improved transformation estimation strategy of ICP registration. The matching pair refers to finding the matching points of each point cloud in the point cloud to be registered. The transformation estimation refers to estimating the rigid body transformation by using the corresponding relationship of the matching pair, and obtaining the optimal rigid body transformation matrix through iterative matching pair search and transformation estimation. However, when determining the matching pair, any wrong matching pair will lead to low registration accuracy, and the efficiency is low when using the ICP algorithm for transformation estimation. The feature learning strategy mainly uses deep learning to find the corresponding relationship between the point clouds to be registered, and then uses the ICP algorithm for transformation estimation. Compared with the improved registration strategy registration method, this method is more efficient and more robust, but this method requires a lot of training process to learn an independent feature extraction neural network. When performing untrained common source point cloud registration, the registration efficiency and accuracy may be greatly reduced. Summary of the invention

[0004] In view of this, the main purpose of the present invention is to provide a point cloud registration method based on feature point deviation ratio, which can solve the problems of low efficiency and low accuracy of the registration method.

[0005] To achieve the above object, the technical solution of the present invention is achieved as follows:

[0006] An embodiment of the present invention provides a point cloud registration method based on feature point deviation ratio, the method comprising:

[0007] Step 1: First collect the source point cloud P i (i=1,2,3...n) and target point cloud Q j(j=1,2,3...k), where n represents the sequence number of the point cloud in the source point cloud, and k represents the sequence number of the point cloud in the target point cloud, and then determine P i The distance X along the x-axis in the three-dimensional Cartesian coordinate system P , the distance Y in the y-axis direction P The distance Z along the z-axis P , and Q j The distance X along the x-axis in the three-dimensional Cartesian coordinate system Q , the distance Y in the y-axis direction Q The distance Z in the z-axis direction Q According to the X P , Y P , Z P P i Divided into A d A small grid; according to the X Q , Y Q , Z Q Q j Divided into B d A small grid;

[0008] Step 2: According to A d Any small grid in the small grid determines the center of gravity P of the source point cloud od , according to B d Any small grid in the small grid determines the target point cloud center Q od ;

[0009] Step 3: Using the P od As the source point cloud query point, P od The small grid with the center of gravity is used as the neighborhood of the source point cloud query point. and P od Determine P od The covariance matrix weight W Pod ; Then through W Pod , P od and x construct P od The covariance matrix Cov(P od );

[0010] According to the Q od As the target point cloud query point, Q od The small grid with the center of gravity is used as the neighborhood of the target point cloud query point. and Q od Determine Q od The covariance matrix weight W Qod ; Then through W Qod , Qod and y construct the covariance matrix Cov(Qod) of Qod;

[0011] Step 4: Determine Cov(P od ) Cov(P od ) and Cov(P od ) Determine Cov(Q od ) Cov(Q od ) and Cov(Q od )

[0012] Step 5: According to the and Construct a source point cloud feature point discriminant, and determine the source point cloud feature point F according to the source point cloud feature point discriminant P According to the and Construct a target point cloud feature point discriminant, and determine the target point cloud feature point F according to the target point cloud feature point discriminant Q ;

[0013] Step 6: According to and Construct a matching pair discrimination formula, and determine F according to the matching pair discrimination formula P Zhongyuan point cloud matching point P s 'Corresponding to F Q The target point cloud matching point Q in s ';

[0014] Step 7: s 'and Q s 'Perform singular value decomposition to obtain the rotation matrix V and translation matrix C of rough registration;

[0015] Step 8: V to Q j Perform a rotation operation to obtain the rotated Q j Q j ·V, then according to C to Q j V performs translation operation to obtain the target point cloud Q' after rough registration j ;

[0016] Step 9: Determine the horizontal resolution L of the source point cloud P , according to the L P , P i and Q' j Calculate the overlap ratio N, and then use L P and N determine the adaptive convergence threshold ethr ;

[0017] Step 10: Use the iterative closest point algorithm to find Q' j and P i Iterate until the mean square error of the distance between corresponding points is less than e thr , or the maximum number of iterations is reached, the final rotation matrix H and the final translation matrix U are obtained;

[0018] Step 11: According to the saying, H is against Q j Perform the rotation operation to obtain the final rotated Q j Q j H, then according to U to Q j H performs translation operation to obtain the target point cloud Q after precise registration Rj , Q Rj As the output of the eigenvalue deviation ratio based point cloud registration algorithm.

[0019] Preferably, according to the X P , Y P , Z P P i Divided into A d A small grid, specifically: Determine; where d represents P i The number of small grids that can be divided. d ∈ [1000,20000] , mod(·) represents the rounding up operation, S1 is the division step of the x-axis, S2 is the division step of the y-axis, and S3 is the division step of the z-axis;

[0020] According to the X Q , Y Q , Z Q Q j Divided into B d A small grid, specifically: Determine; where d represents Q j The number of small grids that can be divided, d∈[1000,20000], mod(·) represents the rounding up operation, S1 is the division step of the x-axis, S2 is the division step of the y-axis, and S3 is the division step of the z-axis.

[0021] Preferably, according to A d Any small grid in the small grid determines the center of gravity P of the source point cloud od , according to B d Any small grid in the small grid determines the target point cloud center Q od , specifically: the center of gravity P of the source point cloud od according to Determine; among them, A is the source point cloud d The point cloud contained in a small grid, ∑ is the summation symbol, for The number of midpoint clouds, x is The total number of point clouds in the small and medium grids; the center of gravity of the target point cloud Q od according to Determine; among them, is the Bth point in the target point cloud d The point cloud contained in a small grid, for The sequence number of the midpoint cloud, y is The total number of point clouds in small and medium grids.

[0022] Preferably, the and P od Determine P od The covariance matrix weight W Pod for Wherein, ||·|| represents the operation of finding the two-norm; the said operation is then performed by W Pod , P od and x construct P od The covariance matrix Cov(P od )for Wherein, T represents the matrix transpose operation; and Q od Determine Q od The covariance matrix weight W Qod for Said then through W Qod , Qod and y construct the covariance matrix Cov(Qod) of Qod:

[0023] Preferably, the step 5 is implemented by the following steps:

[0024] (501) According to the following formula, using and Calculate the source point cloud eigenvalue deviation ratio E Pod for

[0025]

[0026] Then E Pod The maximum value is recorded as E Pod The minimum value is recorded as Among them, max(·) represents the maximum value operation, and min(·) represents the minimum value operation;

[0027] (502) Set the source point cloud feature point discriminant influence factor μ1, μ1∈[0.0001,0.00000001];

[0028] (503) Traverse all P od E Pod , using μ1, and The discriminant formula of the feature points constituting the source point cloud is

[0029]

[0030] (504) Determine the source point cloud feature point F using the source point cloud feature point discriminant P ;

[0031] (505) According to the following formula, using and Calculate the target point cloud eigenvalue deviation ratio E Qod for

[0032]

[0033] Then E Qod The maximum value is recorded as E Qod The minimum value is recorded as

[0034] (506) Set the target point cloud feature point discriminant influence factor μ2, μ2∈[0.0001,0.00000001];

[0035] (507) Traverse all Q od E Qod , using μ2, and The discriminant formula of the feature points constituting the target point cloud is:

[0036]

[0037] (508) Determine the target point cloud feature point F using the target point cloud feature point discriminant Q .

[0038] Preferably, the step six is ​​implemented by the following steps:

[0039] (601) Calculation and The difference for

[0040]

[0041] Among them, |·| represents the absolute value operation;

[0042] (602) Calculation and The difference for

[0043]

[0044] (603) Setting the matching point error threshold

[0045] (604)Use and The matching pair discrimination formula is constructed as

[0046]

[0047] (605) Using the matching pair discrimination formula, determine F P Zhongyuan point cloud matching point P s 'Corresponding to F Q The target point cloud matching point Q in s '.

[0048] Preferably, the target point cloud Q' after the rough registration j for

[0049] Q' j =||Q j ·V+C|| (8).

[0050] Preferably, the step nine is implemented by the following steps:

[0051] (901) Calculate the horizontal resolution L of the source point cloud P for

[0052]

[0053] Among them, P r is the copy source point cloud, r is the point cloud number of the copy source point cloud, P r With P i The data contained are exactly the same, C is a combined sorting operation;

[0054] (902) Calculate P i The closest Q' j The distance L is

[0055] L=||P i -Q' j || (10)

[0056] (903) When L is less than When P i In Q' jThere are overlapping points in i The number of all coincident points in t

[0057] (904) Using N t The overlap rate N is calculated by

[0058]

[0059] (905) Using L P and N to calculate the adaptive convergence threshold e thr for

[0060]

[0061] Among them, R e Indicates systematic error.

[0062] Preferably, the step ten is implemented by the following steps:

[0063] (1001) Randomly select P i Find the 3 points in Q' using the iterative closest point algorithm j Middle distance P i The 3 points closest to the 3 points in the middle will be P i 3 points in the middle and Q' j Middle distance P i The 3 points closest to the 3 points in the middle form 3 pairs of corresponding points;

[0064] (1002) Using three pairs of corresponding points, the initial rotation matrix is ​​calculated. and the initial translation matrix

[0065] (1003) Setting a maximum number of iterations M, in the present invention, M is equal to 100;

[0066] (1004)Use and Q j Perform rotation and translation operations to obtain a new target point cloud Q' j ', calculate P i and Q' j 'The mean square error σ of the distance between corresponding points,

[0067]

[0068] Where I is P i and Q' j The number of corresponding point pairs, I is 3 in the present invention;

[0069] (1005) If σ is less than e thrOr M reaches the maximum number of iterations, it means the iteration is over, otherwise update Q' in (1001) j , repeat steps (1001) to (1004).

[0070] Preferably, the target point cloud Q after precise registration Rj for

[0071] Q Rj =||H·Q j +U|| (14).

[0072] Compared with the prior art, the present invention uses voxel filtering to calculate the source point cloud and the target point cloud to obtain the center of gravity point of the source point cloud and the target point cloud, sets the center of gravity point and the target point cloud center of gravity point as the query point, and sets the neighborhood as a small grid with the point as the center of gravity. On the basis of reducing the point cloud computing, the shape information of the point cloud is retained, and the discriminant of the source point cloud feature point and the target point cloud feature point is set by using the local characteristics of the point cloud to obtain more accurate feature points; finally, the ICP with adaptive threshold is used for precise alignment, which improves the accuracy and efficiency of the alignment results. BRIEF DESCRIPTION OF THE DRAWINGS

[0073] Figure 1 It is a flow chart of the present invention;

[0074] Figure 2 is the source point cloud data image in the example of the present invention;

[0075] Figure 3 is the target point cloud data image in the example of the present invention;

[0076] Figure 4 is the centroid point image of the source point cloud in the example of the present invention;

[0077] Figure 5 is the centroid point image of the target point cloud in the example of the present invention;

[0078] Figure 6 is a rough registration result diagram in an example of the present invention;

[0079] Figure 7 is a diagram of the precise registration result in an example of the present invention; Specific implementation plan

[0080] In order to make the purpose, technical solution and advantages of the present invention more clearly understood, the present invention is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific implementation described here is only used to solve the present invention and is not used to limit the present invention.

[0081] An embodiment of the present invention provides a point cloud registration method based on feature point deviation ratio, the method comprising:

[0082] 1. A point cloud registration method based on eigenvalue deviation ratio, characterized in that the method is:

[0083] Step 1: First collect the source point cloud P i (i=1,2,3...n) and target point cloud Q j (j=1,2,3...k), where n represents the sequence number of the point cloud in the source point cloud, and k represents the sequence number of the point cloud in the target point cloud, and then determine P i The distance X along the x-axis in the three-dimensional Cartesian coordinate system P , the distance Y in the y-axis direction P The distance Z in the z-axis direction P , and Q j The distance X along the x-axis in the three-dimensional Cartesian coordinate system Q , the distance Y in the y-axis direction Q The distance Z in the z-axis direction Q According to the X P , Y P , Z P P i Divided into A d A small grid; according to the X Q , Y Q , Z Q Q j Divided into B d A small grid;

[0084] According to the X P , Y P , Z P P i Divided into A d A small grid, specifically: Determine; where d represents P i The number of small grids that can be divided, d∈[1000,20000], mod(·) indicates the rounding up operation, S1 is the division step of the x-axis, S2 is the division step of the y-axis, and S3 is the division step of the z-axis;

[0085] According to the X Q , Y Q , Z Q Q j Divided into B d A small grid, specifically: Determine; where d represents Q j The number of small grids that can be divided, d∈[1000,20000], mod(·) represents the rounding up operation, S1 is the division step of the x-axis, S2 is the division step of the y-axis, and S3 is the division step of the z-axis.

[0086] Specifically, input the Bunny source point cloud P i There are 40097 points, that is, n is 40097, and the range of i is [0, 40097]; input Bunny target point cloud Q j is 40526, that is, k is 40526, and the range of j is [0, 40526]; calculate P i The distance X along the x-axis in the three-dimensional Cartesian coordinate system P is 8.2102, calculate the distance Y on the y-axis P is 3.4913, calculate the distance Z in the z-axis direction P is 6.4213, then calculate A d is 1456; calculate Q j The distance X along the x-axis in the three-dimensional Cartesian coordinate system Q is 5.87018, the distance Y on the y-axis Q is 3.5156, calculate the distance Z in the z-axis direction Q is 8.5623, then calculate B d It is 1428. Figure 2 In the example of the present invention, the source point cloud data image, Figure 3 This is the target point cloud data image in this example of the present invention.

[0087] Step 2: According to A d Any small grid in the small grid determines the center of gravity P of the source point cloud od , according to B d Any small grid in the small grid determines the target point cloud center Q od ;

[0088] According to A d Any small grid in the small grid determines the center of gravity P of the source point cloud od , according to B d Any small grid in the small grid determines the target point cloud center Q od , specifically: the center of gravity P of the source point cloud od according to Determine; among them, A is the source point cloud d The point cloud contained in a small grid, ∑ is the summation symbol, for The number of midpoint clouds, x is The total number of point clouds in the small and medium grids; the center of gravity of the target point cloud Q od according to Determine; among them, is the Bth point in the target point cloud d The point cloud contained in a small grid, for The sequence number of the midpoint cloud, y is The total number of point clouds in small and medium grids.

[0089] Specifically, The range is [0, 1456], Figure 4 It is the center of gravity of the source point cloud after processing; The range is [0, 1428], Figure 5 It is the center of gravity of the target point cloud after processing.

[0090] Step 3: Using the P od As the source point cloud query point, P od The small grid with the center of gravity is used as the neighborhood of the source point cloud query point. and P od Determine P od The covariance matrix weight W Pod ; Then through W Pod , P od and x construct P od The covariance matrix Cov(P od ); with the Q od As the target point cloud query point, Q od The small grid with the center of gravity is used as the neighborhood of the target point cloud query point. and Q od Determine Q od The covariance matrix weight W Qod ; Then through W Qod , Qod and y construct the covariance matrix Cov(Qod) of Qod;

[0091] Said through and P od Determine P od The covariance matrix weight W Pod for Wherein, ||·|| represents the operation of finding the two-norm; the said operation is then performed by W Pod , P od and x construct P od The covariance matrix Cov(P od )for Wherein, T represents the matrix transpose operation; Bd and Q od Determine Q od The covariance matrix weight W Qod for Said then through W Qod , Qod and y construct the covariance matrix Cov(Qod) of Qod:

[0092] Specifically, the source point cloud query point P is obtained od There is a grid with coordinates (-6.975, 12.45854, 5.252259), and the point cloud coordinates in the small grid with it as the center of gravity are (-7.2, 12.464, 5.3121), (-7.15, 12.462, 5.3121), (-7.1, 12.46, 5.30013), (-7.05, 12.458, 5.30013), ( -7, 12.45, 5.27619), (-6.95, 12.444, 5.26423), (-6.9, 12.4425, 5.22832), (-6.85, 12.4421, 5.20439), (-6.8, 12.44, 5.18045), (-6.75, 12.40, 5.14455), and we get the covariance matrix Get the source point cloud query point Q od There is a grid with coordinates (-2.648, 12.5596, 3.9509), and the point cloud coordinates in the small grid with it as the center of gravity are (-2.875, 12.627, 3.9954), (-2.815, 12.621, 3.9824), (-2.775, 12.596, 3.9704), (-2.705, 12.576, 3.9704), (-2 .675,12.541,3.9534), (-2.625,12.511,3.9534), (-2.585,12.581,3.9464), (-2.535,12.520,3.9194), (-2.475,12.513,3.9124), (-2.415,12.510,3.9054), and get the covariance matrix

[0093] Step 4: Determine Cov(P od ) Cov(P od ) and Cov(P od ) Determine Cov(Q od ) Cov(Q od ) and Cov(Q od )

[0094] Specifically, the above Cov(P od ) has the largest eigenvalue of 0.0236, Cov(P od )The second largest eigenvalue is 0.0002, Cov(P od )The minimum eigenvalue is 0.0000; the above Cov(Q od ) has the largest eigenvalue of 0.0224, Cov(Q od )The second largest eigenvalue is 0.0004, Cov(Q od )The minimum eigenvalue is 0.000.

[0095] Step 5: According to the and Construct a source point cloud feature point discriminant, and determine the source point cloud feature point F according to the source point cloud feature point discriminant P According to the and Construct a target point cloud feature point discriminant, and determine the target point cloud feature point F according to the target point cloud feature point discriminant Q ;

[0096] (501) According to the following formula, using and Calculate the source point cloud eigenvalue deviation ratio E Pod for

[0097]

[0098] Then E Pod The maximum value is recorded as E Pod The minimum value is recorded as Among them, max(·) represents the maximum value operation, and min(·) represents the minimum value operation;

[0099] Specifically, is 0.006, is 0.0.

[0100] (502) Setting the source point cloud feature point discriminant influence factor μ1, μ1∈[0.0001,0.00000001];

[0101] (503) Traverse all P od E Pod , using μ1, and The discriminant formula of the feature points of the source point cloud is

[0102]

[0103] Specifically, μ1 is set to 0.00005, and P in step 4 isod of and are 0.0002 and 0.000 respectively, then E Pod is 0.0, satisfying formula (10), then the point is a feature point of the source point cloud.

[0104] (504) Determine the source point cloud feature point F using the source point cloud feature point discriminant P ;

[0105] (505) According to the following formula, using and Calculate the target point cloud eigenvalue deviation ratio E Qod for

[0106]

[0107] Then E Qod The maximum value is recorded as E Qod The minimum value is recorded as

[0108] Specifically, is 0.0065, is 0.0.

[0109] (506) Set the target point cloud feature point discriminant influence factor μ2, μ2∈[0.0001,0.00000001];

[0110] (507) Traverse all Q od E Qod , using μ2, and The discriminant formula of the feature points constituting the target point cloud is:

[0111]

[0112] Specifically, μ2 is set to 0.00005, and the Qod obtained in step 4 is and are 0.0004 and 0.0 respectively, then E Qod is 0.0, satisfying formula (12), then the point is a feature point of the target point cloud.

[0113] (508) Determine the target point cloud feature point F using the target point cloud feature point discriminant Q ;

[0114] Step 6: According to and Construct a matching pair discrimination formula, and determine F according to the matching pair discrimination formula P Zhongyuan point cloud matching point P s 'Corresponding to FQ The target point cloud matching point Q in s ';

[0115] (601) Calculation and The difference for

[0116]

[0117] Among them, |·| represents the absolute value operation;

[0118] Specifically, according to step 4 is 0.0236, is 0.0224, then It is 0.0012.

[0119] (602) Calculation and The difference for

[0120]

[0121] Specifically, according to step 4 is 0.0002, is 0.0004, then It is 0.0002.

[0122] (603) Setting the matching point error threshold

[0123] (604)Use and The matching pair discrimination formula is constructed as

[0124]

[0125] Specifically, Take 1, The result is 6, so the two points are not a matching pair.

[0126] (605) Using the matching pair discrimination formula, determine F P Zhongyuan point cloud matching point P s 'Corresponding to F Q The target point cloud matching point Q in s ';

[0127] Step 7: P s 'and Q s 'Perform singular value decomposition to obtain the rotation matrix V and translation matrix C of rough registration;

[0128] Specifically, obtain

[0129] Step 8: V to Q j Perform a rotation operation to obtain the rotated Q j Q j ·V, then according to C to Q j V performs translation operation to obtain the target point cloud Q' after rough registration j ;

[0130] Specifically, the point cloud result of rough registration is as follows: Figure 6 shown.

[0131] Step 9: Determine the horizontal resolution L of the source point cloud P , according to the L P , P i and Q' j Calculate the overlap ratio N, and then use L P and N determine the adaptive convergence threshold e thr ;

[0132] (901) Calculate the horizontal resolution L of the source point cloud P for

[0133]

[0134] Among them, P r is the copy source point cloud, r is the point cloud number of the copy source point cloud, P r With P i The data contained are exactly the same, C is a combined sorting operation;

[0135] Specifically, L P It is 0.0583729.

[0136] (902) Calculate P i The closest Q' j The distance L is

[0137] L=||P i -Q' j || (9)

[0138] (903) When L is less than When P i In Q' j There are overlapping points in i The number of all coincident points in t ;

[0139] Specifically, set N t It is 38089.

[0140] (904) Using Nt The overlap rate N is calculated by

[0141]

[0142] Specifically, N is 95%.

[0143] (905) Using L P and N to calculate the adaptive convergence threshold e thr for

[0144]

[0145] Among them, R e Indicates systematic error.

[0146] Specifically, R e Take 0.000001, then e thr It is 0.0002089.

[0147] Step 10: Use the iterative closest point algorithm to find Q' j and P i Iterate until the mean square error of the distance between corresponding points is less than e thr , or the maximum number of iterations is reached, the final rotation matrix H and the final translation matrix U are obtained;

[0148] (1001) Randomly select P i Find the 3 points in Q' using the iterative closest point algorithm j Middle distance P i The 3 points closest to the 3 points in the middle will be P i 3 points in the middle and Q' j Middle distance P i The 3 points closest to the 3 points in the middle form 3 pairs of corresponding points;

[0149] (1002) Using three pairs of corresponding points, the initial rotation matrix is ​​calculated. and the initial translation matrix

[0150] (1003) Setting a maximum number of iterations M, in the present invention, M is equal to 100;

[0151] (1004)Use and Q j Perform rotation and translation operations to obtain a new target point cloud Q' j ', calculate P i and Q' j 'The mean square error σ of the distance between corresponding points,

[0152]

[0153] Where I is P i and Q' j The number of corresponding point pairs, I is 3 in the present invention;

[0154] (1005) If σ is less than e thr Or M reaches the maximum number of iterations, it means the iteration is over, otherwise update Q' in (1001) j , repeat steps (1001) to (1004).

[0155] Step 11: According to the saying, H is against Q j Perform the rotation operation to obtain the final rotated Q j Q j H, then according to U to Q j H performs translation operation to obtain the target point cloud Q after precise registration Rj , Q Rj As the output of the eigenvalue deviation ratio based point cloud registration algorithm.

[0156] Specifically, obtain The precise registration result is shown in the figure Figure 7 shown.

Claims

1. A point cloud registration method based on eigenvalue deviation ratio, characterized in that: The method is: Step 1: First collect the source point cloud P i , i=1,2,3...n and target point cloud Q j , j = 1, 2, 3...k, where n represents the sequence number of the point cloud in the source point cloud, k represents the sequence number of the point cloud in the target point cloud, and then determine P i The distance X along the x-axis in the three-dimensional Cartesian coordinate system P , the distance Y in the y-axis direction P The distance Z along the z-axis P , and Q j The distance X along the x-axis in the three-dimensional Cartesian coordinate system Q , the distance Y in the y-axis direction Q The distance Z in the z-axis direction Q According to the X P , Y P , Z P P i Divided into A d A small grid; according to the X Q , Y Q , Z Q Q j Divided into B d A small grid; Step 2: According to A d Any small grid in the small grid determines the center of gravity P of the source point cloud od , according to B d Any small grid in the small grid determines the target point cloud center Q od ; Step 3: Using the P od As the source point cloud query point, P od The small grid with the center of gravity is used as the neighborhood of the source point cloud query point. and P od Determine P od The covariance matrix weight W Pod ; Then through W Pod , P od and x construct P od The covariance matrix Cov(P od ); According to the Q od As the target point cloud query point, Q od The small grid with the center of gravity is used as the neighborhood of the target point cloud query point. and Q od Determine Q od The covariance matrix weight W Qod ; Then through W Qod , Qod and y construct the covariance matrix Cov(Qod) of Qod; Step 4: Determine Cov(P od ) Cov(P od ) and Cov(P od ) Determine Cov(Q od ) Cov(Q od ) and Cov(Q od ) Step 5: According to the and Construct a source point cloud feature point discriminant, and determine the source point cloud feature point F according to the source point cloud feature point discriminant P According to the and Construct a target point cloud feature point discriminant, and determine the target point cloud feature point F according to the target point cloud feature point discriminant Q ; Step 6: According to and Construct a matching pair discrimination formula, and determine F according to the matching pair discrimination formula P Zhongyuan point cloud matching point P s 'Corresponding to F Q The target point cloud matching point Q′ in s ; Step 7: P′ s and Q′ s Perform singular value decomposition to obtain the rotation matrix V and translation matrix C of rough registration; Step 8: V to Q j Perform a rotation operation to obtain the rotated Q j Q j ·V, then according to C to Q j V performs translation operation to obtain the target point cloud Q' after rough registration j ; Step 9: Determine the horizontal resolution L of the source point cloud P , according to the L P , P i and Q' j Calculate the overlap ratio N, and then use L P and N determine the adaptive convergence threshold e thr ; Step 10: Use the iterative closest point algorithm to find Q' j and P i Iterate until the mean square error of the distance between corresponding points is less than e thr , or the maximum number of iterations is reached, the final rotation matrix H and the final translation matrix U are obtained; Step 11: Based on the H to Q j Perform the rotation operation to obtain the final rotated Q j Q j H, then according to U to Q j H performs translation operation to obtain the target point cloud Q after precise registration Rj , Q Rj As the output of the eigenvalue deviation ratio point cloud registration algorithm; The step 5 is specifically implemented by the following steps: (501) According to the following formula, using and Calculate the source point cloud eigenvalue deviation ratio E Pod for Then E Pod The maximum value is recorded as E Pod The minimum value is recorded as Among them, max(g) represents the maximum value operation, and min(g) represents the minimum value operation; (502) Set the source point cloud feature point discriminant influence factor μ1, μ1∈[0.0001,0.00000001]; (503) Traverse all P od E Pod , using μ1, and The discriminant formula of the feature points of the source point cloud is (504) Determine the source point cloud feature point F using the source point cloud feature point discriminant P ; (505) According to the following formula, using and Calculate the target point cloud eigenvalue deviation ratio E Qod for Then E Qod The maximum value is recorded as E Qod The minimum value is recorded as (506) Set the target point cloud feature point discriminant influence factor μ2, μ2∈[0.0001,0.00000001]; (507) Traverse all Q od E Qod , using μ2, and The discriminant formula of the feature points constituting the target point cloud is: (508) Determine the target point cloud feature point F using the target point cloud feature point discriminant Q .

2. The point cloud registration method based on eigenvalue deviation ratio according to claim 1, characterized in that: According to the X P , Y P , Z P P i Divided into A d A small grid, specifically: Determine; where d represents P i The number of small grids that can be divided, d∈[1000,20000], mod(·) indicates the rounding up operation, S1 is the division step of the x-axis, S2 is the division step of the y-axis, and S3 is the division step of the z-axis; According to the X Q , Y Q , Z Q Q j Divided into B d A small grid, specifically: Determine; where d represents Q j The number of small grids that can be divided, d∈[1000,20000], mod(·) represents the rounding up operation, S1 is the division step of the x-axis, S2 is the division step of the y-axis, and S3 is the division step of the z-axis.

3. The point cloud registration method based on eigenvalue deviation ratio according to claim 1 or 2, characterized in that: According to A d Any small grid in the small grid determines the center of gravity P of the source point cloud od , according to B d Any small grid in the small grid determines the target point cloud center Q od , specifically: the center of gravity P of the source point cloud od according to Determine; among them, A is the source point cloud d The point cloud contained in a small grid, ∑ is the summation symbol, for The number of midpoint clouds, x is The total number of point clouds in the small and medium grids; the center of gravity of the target point cloud Q od according to Determine; among them, is the Bth point in the target point cloud d The point cloud contained in a small grid, for The sequence number of the midpoint cloud, y is The total number of point clouds in small and medium grids.

4. The point cloud registration method based on eigenvalue deviation ratio according to claim 3, characterized in that: Said through and P od Determine P od The covariance matrix weight W Pod for Wherein, ||·|| represents the operation of finding the two-norm; the said operation is then performed by W Pod , P od and x construct P od The covariance matrix Cov(P od )for Wherein, T represents the matrix transpose operation; and Q od Determine Q od The covariance matrix weight W Qod for Said then through W Qod , Qod and y construct the covariance matrix Cov(Qod) of Qod:

5. The point cloud registration method based on eigenvalue deviation ratio according to claim 1, characterized in that: The step six is ​​specifically implemented by the following steps: (601) Calculation and The difference for Among them, |g| represents the absolute value operation; (602) Calculation and The difference for (603) Setting the matching point error threshold (604)Use and The matching pair discrimination formula is constructed as (605) Using the matching pair discrimination formula, determine F P Zhongyuan point cloud matching point P s 'Corresponding to F Q The target point cloud matching point Q in s '.

6. The point cloud registration method based on eigenvalue deviation ratio according to claim 5, characterized in that: The target point cloud Q' after rough registration j for Q' j =||Q j gV+C|| (8).

7. The point cloud registration method based on eigenvalue deviation ratio according to claim 6, characterized in that: The step nine is specifically implemented by the following steps: (901) Calculate the horizontal resolution L of the source point cloud P for Among them, P r is the copy source point cloud, r is the point cloud number of the copy source point cloud, P r With P i The data contained are exactly the same, C is a combined sorting operation; (902) Calculate P i The closest Q' j The distance L is L=||P i -Q' j || (10) (903) When L is less than When P i In Q' j There are overlapping points in i The number of all coincident points in t (904) Using N t The overlap rate N is calculated by (905) Using L P and N to calculate the adaptive convergence threshold e thr for Among them, R e Indicates systematic error.

8. The point cloud registration method based on eigenvalue deviation ratio according to claim 7, characterized in that: The step ten is specifically implemented by the following steps: (1001) Randomly select P i Find the 3 points in Q' using the iterative closest point algorithm j Middle distance P i The 3 points closest to the 3 points in the middle will be P i 3 points in the middle and Q' j Middle distance P i The 3 points closest to the 3 points in the middle form 3 pairs of corresponding points; (1002) Using three pairs of corresponding points, the initial rotation matrix is ​​calculated. and the initial translation matrix (1003) Setting the maximum number of iterations M, M is equal to 100; (1004)Use and Q j Perform rotation and translation operations to obtain a new target point cloud Q″ j , calculate P i and Q″ j The mean square error σ of the distance between corresponding points, Where I is P i and Q' j The number of corresponding point pairs, I is 3; (1005) If σ is less than e thr Or M reaches the maximum number of iterations, it means the iteration is over, otherwise update Q' in (1001) j , repeat steps (1001) to (1004).

9. The point cloud registration method based on eigenvalue deviation ratio according to claim 8, characterized in that: The target point cloud Q after precise registration Rj for Q Rj =||H·Q j +U|| (14)。

Citation Information

Patent Citations

  • Estimation method of scattered point cloud data geometric senses

    CN101833666A

  • NDT single-frame point cloud registration positioning method based on cylindrical coordinates

    CN115100274A