Fast 3D point cloud registration method based on matching of three pairs of block geometric features
Through three pairs of blocked geometric feature matching technology, the problem of solving complex error equations in three-dimensional point cloud registration is solved, and manual assisted registration methods are provided to achieve fast and accurate three-dimensional point cloud registration.
Patent Information
- Application Number
- CN202411079438.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-07
- Publication Date
- 2025-05-23
- Estimated Expiration
- 2044-08-07
AI Technical Summary
The existing three-dimensional point cloud registration technology requires solving complex alignment error equations, which leads to a long solution time and is prone to local extreme values, and traditional methods cannot provide manual-assisted registration methods.
Using three pairs of block geometric feature matching technical means, the preset template point cloud and target point cloud are divided into multiple blocks, the orientation and center of each block are calculated, and the geometric feature matching is performed based on the parameters of block matching, and the transformation relationship and overlapping areas are calculated to achieve registration.
It realizes the fast and accurate registration of three-dimensional point clouds, and provides manual-assisted registration methods to avoid the defects of iteratively solving complex error equations.
Smart Images

Figure CN119068028B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of computer vision, and more specifically, to the technical field of three-dimensional point cloud registration. Background Art
[0002] 3D point cloud registration refers to finding the transformation relationship (rotation and translation) of the spatial coordinate systems of two sets of 3D point clouds. One set of point clouds is called the template point cloud, and its coordinate system is fixed; the other set of point clouds is called the target point cloud, and its coordinate system is aligned with the coordinate system of the template point cloud through the transformation relationship obtained by registration; spatial transformation refers to rigid body transformation, that is, all points of the target point cloud undergo the same spatial transformation.
[0003] 3D point cloud registration can fuse multiple sets of 3D point clouds collected at different locations in the same environment into a complete point cloud, thereby establishing a 3D model of the environment and target objects. It is an important technology in industrial applications. 3D point cloud registration is static modeling, which only requires imaging equipment, and the accuracy is determined by the imaging equipment.
[0004] At present, the basic idea of 3D point cloud registration is to establish the alignment error equation between the target point cloud and the template point cloud, and solve the minimum error to obtain the transformation relationship. The error can be the distance between points, the distance between points and surfaces or lines, the distance between points and point sets, the Euclidean distance of feature points, etc. Since the error equation is very complicated, it is usually solved by an iterative method. This not only takes a long time to solve, but also easily falls into local extreme values. In addition, the target point cloud and the template point cloud must have a certain size of overlapping area. The alignment error equation is based on the overlapping area. If the overlapping area is too small, it is easy to solve the wrong result. In addition, the traditional method of 3D point cloud registration cannot provide a manually assisted registration method. Summary of the invention
[0005] In order to overcome the defects of the above-mentioned prior art that three-dimensional point cloud registration requires solving complex alignment error equations, which not only takes a long time to solve but also easily falls into local extreme values. At the same time, if the overlapping area is too small, it is easy to solve wrong results and the traditional method cannot provide manual assisted registration, the present invention provides a three-dimensional point cloud fast registration method based on three pairs of block geometric feature matching.
[0006] In order to achieve the above-mentioned object of the invention, the technical solution of the present invention includes:
[0007] Preset a template point cloud and a target point cloud, divide the template point cloud and the target point cloud into a plurality of blocks, and calculate the orientation and center of each block of the template point cloud and the target point cloud;
[0008] Setting block matching parameters, the block matching parameters include: block angle threshold, block same-direction error threshold and two-point distance error threshold;
[0009] Based on the block matching parameters, three pairs of block geometric feature matching algorithms are used to calculate the transformation relationship from the target point cloud coordinate system to the template point cloud coordinate system, and calculate the overlapping area between the target point cloud and the template point cloud;
[0010] The registration or automatic registration is performed according to the transformation relationship and the overlapping area.
[0011] Furthermore, the calculation of the orientation and center of each block adopts principal component analysis (PCA), and the specific calculation steps include:
[0012] Calculate the center of the block, and its calculation expression is:
[0013]
[0014] where {x i} is the set of all points in the block, w i It is point x i The weight of the point cloud is x i If the point cloud is evenly distributed, then w i =1;
[0015] Calculate the covariance matrix of the block, and its calculation expression is:
[0016]
[0017] Perform singular value decomposition (SVD) on the block covariance matrix Σ and obtain the expression:
[0018] Σ=UΛV T
[0019] Where Λ is a diagonal matrix composed of the eigenvalues of Σ, U and V are orthogonal matrices, and the column vector of U corresponding to the minimum eigenvalue is the orientation of the block.
[0020] Furthermore, the three pairs of block geometric feature matching algorithms include:
[0021] Calculating the rotation matrix R includes the following steps:
[0022] Calculate the first rotation matrix R 1 , whose expression is:
[0023] R 1 =R(a 1 ,α 1 )
[0024] The rotation axis a 1 and the rotation angle α 1 They are:
[0025]
[0026] Among them, n P (p) represents the orientation of the template point cloud block, n Q (q) represents the orientation of the target point cloud block, n P (p) and n Q (q) are all normalized three-dimensional vectors;
[0027] Calculate the second rotation matrix R 2 , whose expression is:
[0028] R 2 =R(a 2 ,α 2 )
[0029] The rotation axis a 2 and the rotation angle α 2 They are:
[0030]
[0031] in,
[0032]
[0033] n' Q (q 2 )=R 1 n Q (q 2 )
[0034] in, Represents the template point cloud block p 2 The vertical component of the orientation, Represents the template point cloud block p 2 The parallel component of the orientation, n' Q (q 2 ) represents the target point cloud block q after rotation 2 Direction of Represents the target point cloud block q after rotation 2 The parallel component of the orientation, Represents the target point cloud block q after rotation 2 The vertical component of the orientation;
[0035] Get the rotation matrix based on the first rotation matrix and the second rotation matrix:
[0036] R=R 2 R 1
[0037] The matching is determined based on the rotation matrix R. The determination steps are as follows:
[0038] Calculate the orientation n of the second block of the target point cloud Q (q 2 ) and the direction n of the third block Q (q 3 ) After rotation, they are respectively aligned with the orientation n of the second block of the template point cloud P (p 2 ) and the direction n of the third block P (p 3 ) 2 and γ 3 , γ 2 and γ 3 The expressions are:
[0039] γ 2 =cos -1 [R Q (q 2 )·n P (p 2 )]
[0040] γ 3 =cos -1 [R Q (q 3 )·n P (p 3 )]
[0041] Will γ 2 and γ 3 The same direction error threshold γ co For comparison, if γ 2 >γ co or γ 3 >γ co , the matching fails, otherwise, calculate the translation vector t;
[0042] Calculate the translation vector t, which is expressed as:
[0043]
[0044] Among them, c P (p) represents the center of the block of the template point cloud, c Q (q) represents the center of the target point cloud block, v 1 、v 2 、v 3 The expressions are:
[0045] v 1 =n P (p 1 )
[0046]
[0047] v 3 =v 1 ×v 2
[0048] Calculate the overlapping area between the target point cloud and the template point cloud: For each point x of the target point cloud Q , transform it to the coordinate system of the template point cloud, that is
[0049] x' Q =Rx Q +t
[0050] Then point x' Q The distance to each point of the template point cloud and the distance error threshold g between the two points co Compare, if point x' Q To a point x in the template point cloud P The distance is less than g co , then point x Q Marked as overlapping points, all overlapping points in the target point cloud constitute the overlapping area;
[0051] After obtaining the rotation matrix R, the translation vector t, and the overlapping area of the target point cloud composed of all overlapping points in the target point cloud and the template point cloud, the matching is successfully completed.
[0052] Furthermore, the manual assisted registration includes:
[0053] Specify three pairs of matching blocks, where the block numbers of the three blocks of the specified template point cloud are p 1 ,p 2 ,p 3 The three blocks of the specified target point cloud are numbered q 1 ,q 2 ,q 3 , match and combine the specified three template point cloud blocks with the specified three target point cloud blocks in the same order of block numbers;
[0054] Call three pairs of block geometric feature matching algorithms to block p in the template point cloud 1 ,p 2 ,p 3 The q of the target point cloud 1 ,q 2 ,q 3 When matching the combination, calculate the transformation relationship between the coordinate system of the target point cloud and the coordinate system of the template point cloud, that is, the rotation matrix R and the translation vector t, and calculate the overlapping area of the target point cloud and the template point cloud. If the algorithm matching ends successfully, record the algorithm result;
[0055] Finally, each point of the target point cloud is transformed into the coordinate system of the template point cloud, and the human eye is used to detect whether the three-dimensional point cloud is successfully registered.
[0056] Furthermore, the automatic registration includes:
[0057] The algorithm automatically selects three pairs of matching blocks and selects 3 blocks p from the blocks of the template point cloud. 1 ,p 2 ,p 3 , and select 3 blocks q from the blocks of the target point cloud 1 ,q 2 ,q 3 , the angle between the orientations of any two of the three blocks selected from the target point cloud is not less than γ inc ;
[0058] The selected blocks of the three template point clouds are matched and combined with the selected blocks of the three target point clouds one by one. There are 6 matching and combination methods in total.
[0059] Call three pairs of block geometric feature matching algorithms to block p in the template point cloud 1 ,p 2 ,p 3 The q of the target point cloud 1 ,q 2 ,q 3 When matching the combination, the transformation relationship between the coordinate system of the target point cloud and the coordinate system of the template point cloud, that is, the rotation matrix R and the translation vector t, is calculated, and the overlapping area between the target point cloud and the template point cloud is calculated. If the algorithm matching ends successfully, the algorithm result is recorded;
[0060] Go to the step of selecting three pairs of matching blocks, and repeat the automatic registration process until all matching combinations of all blocks of the template point cloud and the target point cloud are traversed;
[0061] The rotation matrix R and translation vector t of the matching combination with the largest overlapping area are selected as the registration result.
[0062] Furthermore, the block angle threshold γ inc Used to determine whether the blocks are parallel. If the angle between the selected blocks is greater than or equal to this value, they are considered non-parallel.
[0063] Furthermore, the block same-direction error threshold γ co Used to determine whether the orientations of the blocks are the same. If the block angle is less than or equal to this value, they are considered to have the same orientation.
[0064] Furthermore, the point x' Q To a point x in the template point cloud P The distance is Euclidean distance, which is expressed as:
[0065]
[0066] Furthermore, if the point x is known P The normal n(x P ), then the point x' Q To a point x in the template point cloud P The distance can also be expressed as point-to-surface distance:
[0067] |(x' Q -x P )·n(x P )|.
[0068] Furthermore, the maximum overlapping area refers to the largest number of overlapping points.
[0069] Compared with the prior art, the technical solution of the present invention has the following beneficial effects:
[0070] The present invention adopts the technical means of matching three pairs of block geometric features to directly calculate the transformation relationship of three-dimensional point cloud registration without iteratively solving complex alignment error equations. Therefore, the three-dimensional point cloud registration can be completed quickly and accurately. At the same time, the present invention also provides a manual assisted rapid registration method that traditional methods cannot provide. BRIEF DESCRIPTION OF THE DRAWINGS
[0071] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0072] Figure 1 This is an overall flow chart of the registration method of this application;
[0073] Figure 2 This is a flowchart of the three-pair block geometric feature matching algorithm of this application;
[0074] Figure 3 A flowchart of manually assisted registration according to an embodiment of the present application;
[0075] Figure 4 A flowchart of automatic registration for an embodiment of the present application;
[0076] Figure 5 A registration effect diagram displayed at a first viewing angle of an embodiment of the present application;
[0077] Figure 6 This is a diagram showing the registration effect of the second viewing angle of an embodiment of the present application. DETAILED DESCRIPTION
[0078] In order to more clearly understand the above-mentioned purpose, features and advantages of the present invention, the present invention is further described in detail below in conjunction with the accompanying drawings and specific embodiments. It should be noted that the embodiments of the present application and the features in the embodiments can be combined with each other without conflict.
[0079] In the following description, many specific details are set forth to facilitate a full understanding of the present invention. However, the present invention may also be implemented in other ways different from those described herein. Therefore, the protection scope of the present invention is not limited to the specific embodiments disclosed below.
[0080] Example 1
[0081] See also Figure 1 A three-dimensional point cloud rapid registration method based on three pairs of block geometric feature matching in an embodiment of the present application includes the following steps:
[0082] S1: preset a template point cloud and a target point cloud, divide the template point cloud and the target point cloud into multiple blocks, and calculate the orientation and center of each block of the template point cloud and the target point cloud;
[0083] S2: Set the block matching parameters, which include: block angle threshold γ inc , block same-direction error threshold γ co and the two-point distance error threshold g co ;
[0084] S3: Based on the block angle threshold γ inc , block same-direction error threshold γ co and the two-point distance error threshold g co , a three-pair block geometric feature matching algorithm is used to calculate the transformation relationship from the target point cloud coordinate system to the template point cloud coordinate system, namely the rotation matrix R and the translation vector t, and the overlapping area between the target point cloud and the template point cloud is calculated, and manual-assisted or automatic registration is performed based on the transformation relationship and the overlapping area.
[0085] In this embodiment, the data of the preset template point cloud P and the target point cloud Q in step S1 are derived from a public data set, including point cloud data lab1 and lab2;
[0086] Select point cloud data lab1 as the template point cloud and point cloud data lab2 as the target point cloud.
[0087] The point cloud is segmented using a public method: "Accurate segmentation method of 3D point cloud by integrating global and local geometric features";
[0088] The template point cloud is divided into 98 blocks and the target point cloud is divided into 88 blocks, and the orientation and center of each block are calculated.
[0089] Furthermore, in step S1, principal component analysis PCA is used to calculate the orientation and center of the template point cloud and the target point cloud, including the following steps:
[0090] Calculate the center of the block, and its calculation expression is:
[0091]
[0092] where {x i} is the set of all points in the block, w i It is point x i The weight of the point cloud is x i If the point cloud is evenly distributed, then w i =1;
[0093] Calculate the covariance matrix of the block, and its calculation expression is:
[0094]
[0095] Perform singular value decomposition SVD on the block covariance matrix Σ and get the expression:
[0096] Σ=UΛV T
[0097] Where Λ is a diagonal matrix composed of the eigenvalues of Σ, U and V are orthogonal matrices, and the column vector of U corresponding to the minimum eigenvalue is the orientation of the block.
[0098] Step S2 sets three thresholds, among which the block angle threshold γ inc Generally, the angle is between 15° and 90°, and the block direction error threshold γ co and the two-point distance error threshold g co Depends on the measurement accuracy of the point cloud data.
[0099] In this embodiment, the block angle threshold γ inc , set to 30°, is used to determine that the blocks are not parallel. If the block angle is greater than or equal to this value, the blocks are not parallel;
[0100] Block same-direction error threshold γ co , set to 2°, is used to determine that the blocks have the same orientation. If the included angle of the blocks is greater than or less than this value, they are judged to have the same orientation;
[0101] Two-point distance error threshold g co , set to 0.05m, is used to determine whether there are overlapping points. If the distance is less than or equal to this value, the point before the transformation is judged as an overlapping point.
[0102] For further information, see Figure 2 ,The three-pair block geometric feature matching algorithm includes the following steps:
[0103] (R1): Calculate the rotation matrix R, including the following steps:
[0104] Calculate the first rotation matrix R 1 , whose expression is:
[0105] R 1 =R(a 1 ,α 1 )
[0106] The rotation axis a 1 and the rotation angle α 1 They are:
[0107]
[0108] Among them, n P (p) represents the orientation of the template point cloud block, n Q (q) represents the orientation of the target point cloud block, n P (p) and n Q (q) are all normalized three-dimensional vectors;
[0109] Calculate the second rotation matrix R 2 , whose expression is:
[0110] R 2 =R(a 2 ,α 2 )
[0111] The rotation axis a 2 and the rotation angle α 2 They are:
[0112]
[0113] in,
[0114]
[0115] n' Q (q 2 )=R 1 n Q (q 2 )
[0116] in, Represents the template point cloud block p 2 The vertical component of the orientation, Represents the template point cloud block p 2 The parallel component of the orientation, n' Q (q 2 ) represents the target point cloud block q after rotation 2 Direction of Represents the target point cloud block q after rotation 2 The parallel component of the orientation, Represents the target point cloud block q after rotation 2 The vertical component of the orientation;
[0117] Get the rotation matrix based on the first rotation matrix and the second rotation matrix:
[0118] R=R 2 R 1
[0119] (R2): Calculate the orientation n of the second block of the target point cloud Q (q 2 ) and the direction n of the third block Q (q 3 ) After rotation, they are respectively aligned with the orientation n of the second block of the template point cloud P (p 2 ) and the direction n of the third block P (p 3 ) 2 and γ 3 , γ 2 and γ 3 The expressions are:
[0120] γ 2 =cos -1 [R Q (q 2 )·n P (p 2 )]
[0121] γ 3 =cos -1 [R Q (q 3 )·n P (p 3 )]
[0122] (R3): γ 2 and γ 3 The same direction error threshold γ co For comparison, if γ 2 >γ co or γ 3 >γ co , the matching fails and ends, otherwise, go to step R4 to calculate the translation vector t;
[0123] (R4): Calculate the translation vector t, which is expressed as:
[0124]
[0125] Among them, cP (p) represents the center of the block of the template point cloud, c Q (q) represents the center of the target point cloud block, v 1 、v 2 、v 3 The expressions are:
[0126] v 1 =n P (p 1 )
[0127]
[0128] v 3 =v 1 ×v 2
[0129] (R5): Calculate the overlapping area between the target point cloud and the template point cloud. For each point x of the target point cloud Q , transform it to the coordinate system of the template point cloud, that is
[0130] x' Q =Rx Q +t
[0131] In this embodiment, point x' Q To a point x in the template point cloud P The distance is Euclidean distance:
[0132]
[0133] It should be noted that if the point x is known P The normal n(x P ), then the point x' Q To a point x in the template point cloud P The distance can also be expressed as point-to-surface distance:
[0134] |(x' Q -x P )·n(x P )|
[0135] Then point x' Q The distance to each point of the template point cloud and the distance error threshold g between the two points co Compare, if point x' Q To a point x in the template point cloud P The distance is less than g co , then point x Q Marked as overlapping points, all overlapping points in the target point cloud constitute the overlapping area;
[0136] After obtaining the rotation matrix R, the translation vector t, and the overlapping area of the target point cloud composed of all overlapping points in the target point cloud and the template point cloud, the matching is successfully completed.
[0137] For further information, see Figure 3 In step S3, for manual assisted registration, firstly, three pairs of matching blocks are manually specified, and the block numbers of the template point cloud are respectively denoted as p 1 ,p 2 ,p 3 , the block numbers of the target point cloud are denoted as q 1 ,q 2 ,q 3 , the blocks of the two point clouds are matched and combined in the same order.
[0138] In this embodiment, the template point cloud selects the block p 1 ,p 2 ,p 3 1, 3, 4, the block q selected by the target point cloud 1 ,q 2 ,q 3 It is 1, 2, 4.
[0139] Then, three pairs of block geometric feature matching algorithms are called to calculate the transformation relationship from the target point cloud coordinate system to the template point cloud coordinate system, namely the rotation matrix R and the translation vector t, and calculate the overlapping area between the target point cloud and the template point cloud. If the algorithm matching ends successfully, the algorithm result is recorded.
[0140] The rotation matrix R and translation vector t are obtained as follows:
[0141]
[0142] The number of points in the two sets of point clouds are 195301 and 195259 respectively, and it takes 53 milliseconds to align and calculate the overlapping area.
[0143] The points of the first pair of matching blocks are 91183 and 76800 respectively, and the number of overlapping points is 75265; the points of the second pair of matching blocks are 16640 and 5396 respectively, and the number of overlapping points is 4862; the points of the third pair of matching blocks are 6192 and 2542 respectively, and the number of overlapping points is 2411.
[0144] Finally, check the registration results and use human eyes to detect whether the registration is successful.
[0145] For further information, see Figure 4 In this embodiment, the automatic registration in step S3 includes the following steps:
[0146] The algorithm automatically selects three pairs of matching blocks and selects 3 blocks p from the blocks of the template point cloud. 1 ,p 2 ,p3 , and select 3 blocks q from the blocks of the target point cloud 1 ,q 2 ,q 3 , the angle between the orientations of any two of the three blocks selected from the target point cloud is not less than γ inc ;
[0147] The selected blocks of the three template point clouds are matched and combined with the selected blocks of the three target point clouds one by one. There are 6 matching and combination methods in total.
[0148] Call three pairs of block geometric feature matching algorithms to block p in the template point cloud 1 ,p 2 ,p 3 The q of the target point cloud 1 ,q 2 ,q 3 When matching the combination, the transformation relationship between the coordinate system of the target point cloud and the coordinate system of the template point cloud, that is, the rotation matrix R and the translation vector t, is calculated, and the overlapping area between the target point cloud and the template point cloud is calculated. If the algorithm matching ends successfully, the algorithm result is recorded;
[0149] Go to the step of selecting three pairs of matching blocks, and repeat the automatic registration process until all matching combinations of all blocks of the template point cloud and the target point cloud are traversed;
[0150] The rotation matrix R and translation vector t of the matching combination with the largest overlapping area, i.e., the largest number of overlapping points, are selected as the registration result.
[0151] In this embodiment, there are 217 successful registration schemes for automatic registration, and all calculations take 12.239 seconds. The registration schemes with the largest overlapping area are sorted according to the number of overlapping points. The registration schemes with the largest number of overlapping points are template point cloud blocks 1, 3, 4 and target point cloud blocks 1, 2, 4.
[0152] The rotation matrix R and translation vector t are obtained as follows:
[0153]
[0154] The points of the first pair of matching blocks are 91183 and 76800 respectively, and the number of overlapping points is 75265; the points of the second pair of matching blocks are 16640 and 5396 respectively, and the number of overlapping points is 4862; the points of the third pair of matching blocks are 6192 and 2542 respectively, and the number of overlapping points is 2411.
[0155] See also Figure 5 and Figure 6, respectively, show the registration effects of this embodiment from the first perspective and the second perspective. The cyan points are the matching blocks of the target point cloud, the red points are the matching blocks of the template point cloud, the yellow points are the overlapping areas of the matching blocks of the two point clouds, and the white points are other points in the target point cloud and the template point cloud.
[0156] Compared with the prior art, the embodiment of the present invention can directly calculate the transformation relationship of the three-dimensional point cloud registration by adopting the technical means of matching three pairs of block geometric features, without the need to iteratively solve complex alignment error equations. Therefore, the three-dimensional point cloud registration can be completed quickly and accurately. At the same time, the present invention also provides a manually assisted registration method that traditional methods cannot provide.
[0157] Obviously, the above embodiments of the present invention are merely examples for clearly illustrating the present invention, and are not intended to limit the embodiments of the present invention. For those skilled in the art, other different forms of changes or modifications can be made based on the above description. It is not necessary and impossible to list all the embodiments here. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present invention should be included in the protection scope of the claims of the present invention.
Claims
1. A fast 3D point cloud registration method based on matching of three pairs of block geometric features, characterized in that: The method comprises: Preset a template point cloud and a target point cloud, divide the template point cloud and the target point cloud into a plurality of blocks, and calculate the orientation and center of each block of the template point cloud and the target point cloud; Setting block matching parameters, the block matching parameters include: block angle threshold, block same-direction error threshold and two-point distance error threshold; Based on the block matching parameters and the orientation and center of each block, the transformation relationship from the target point cloud coordinate system to the template point cloud coordinate system is calculated, and the overlapping area between the target point cloud and the template point cloud is calculated, and manual assisted alignment or automatic alignment is performed according to the transformation relationship and the overlapping area.
2. The method for rapid registration of three-dimensional point clouds based on matching of three pairs of block geometric features according to claim 1, characterized in that: The calculation of the orientation and center of each block adopts the principal component analysis method PCA, and the specific calculation steps include: Calculate the center of the block, and its calculation expression is: where {x i } is the set of all points in the block, w i It is point x i The weight of the point cloud is i The point density is w if the point cloud is evenly distributed. i =1; Calculate the covariance matrix of the block, and its calculation expression is: Perform singular value decomposition SVD on the block covariance matrix Σ and get the expression: Σ=UΛV T Where Λ is a diagonal matrix composed of the eigenvalues of Σ, U and V are orthogonal matrices, and the column vector of U corresponding to the minimum eigenvalue is the orientation of the block.
3. The method for rapid registration of three-dimensional point clouds based on matching of three pairs of block geometric features according to claim 1, characterized in that: The transformation relationship between the target point cloud coordinate system and the template point cloud coordinate system is calculated by using a three-pair block geometric feature matching algorithm, and the three-pair block geometric feature matching algorithm includes: Calculating the rotation matrix R includes the following steps: Calculate the first rotation matrix R1, which is expressed as: R1=R(a1,α1) The rotation axis a1 and the rotation angle α1 are: Among them, n P (p) represents the orientation of the template point cloud block, n Q (q) represents the orientation of the target point cloud block, n P (p) and n Q (q) are all normalized three-dimensional vectors; Calculate the second rotation matrix R2, which is expressed as: R2=R(a2,α2) Among them, the rotation axis a2 and the rotation angle α2 are: in, <h2 style=";text-align:left;direction:ltr">n'<h2 style=";text-align:left;direction:ltr"> Q <h2 style=";text-align:left;direction:ltr"> (q2) = R1n<h2 style=";text-align:left;direction:ltr"> Q <h2 style=";text-align:left;direction:ltr"> (q2) in, Represents the vertical component of the orientation of the template point cloud block p2, Represents the parallel component of the orientation of the template point cloud block p2, n' Q (q2) represents the orientation of the target point cloud block q2 after rotation; Represents the parallel component of the orientation of the rotated target point cloud block q2, Represents the vertical component of the orientation of the rotated target point cloud block q2; Get the rotation matrix based on the first rotation matrix and the second rotation matrix: R=R2R1 The matching is determined based on the rotation matrix R. The determination steps are as follows: Calculate the orientation n of the second block of the target point cloud Q (q2) and the direction n of the third block Q (q3) After rotation, the orientation of the second block of the template point cloud is n P (p2) and the orientation n of the third block P The angles γ2 and γ3 of (p3), the expressions of γ2 and γ3 are: γ2=cos -1 [Rn Q (q2)·n P (p2)] γ3=cos -1 [Rn Q (q3)·n P (p3)] Set γ2 and γ3 to the same direction error threshold γ co Compare, if γ2>γ co or γ3>γ co , the matching fails, otherwise, calculate the translation vector t; Calculate the translation vector t, which is expressed as: Among them, c P (p) represents the center of the block of the template point cloud, c Q (q) represents the center of the block of the target point cloud, and the expressions of v1, v2, and v3 are: v1=n P (p1) v3=v1×v2 Calculate the overlapping area between the target point cloud and the template point cloud. For each point x of the target point cloud Q , transform it to the coordinate system of the template point cloud, that is x' Q =Rx Q +t Then point x' Q The distance to each point of the template point cloud and the error threshold g between the two points co Compare, if point x' Q To a point x in the template point cloud P The distance is less than g co , then point x Q Marked as overlapping points, all overlapping points in the target point cloud constitute the overlapping area; After obtaining the rotation matrix R, the translation vector t, and the overlapping area of the target point cloud composed of all overlapping points in the target point cloud and the template point cloud, the matching is successfully completed.
4. The method for rapid registration of three-dimensional point clouds based on matching of three pairs of block geometric features according to claim 3, characterized in that: The manual assisted registration comprises: Specify three pairs of matching blocks, where the three blocks of the specified template point cloud are numbered p1, p2, and p3, respectively, and the three blocks of the specified target point cloud are numbered q1, q2, and q3, respectively. The blocks of the specified three template point clouds are matched with the blocks of the specified three target point clouds in the same order of the block numbers. Call three pairs of block geometric feature matching algorithms. When the template point cloud blocks p1, p2, p3 are matched with the target point cloud blocks q1, q2, q3, calculate the transformation relationship between the target point cloud coordinate system and the template point cloud coordinate system, i.e., the rotation matrix R and the translation vector t, and calculate the overlapping area between the target point cloud and the template point cloud. If the algorithm matching ends successfully, record the algorithm result. Finally, each point of the target point cloud is transformed into the coordinate system of the template point cloud, and the human eye is used to detect whether the three-dimensional point cloud is successfully registered.
5. The method for rapid registration of three-dimensional point clouds based on matching of three pairs of block geometric features according to claim 1, characterized in that: The automatic registration comprises: The algorithm automatically selects three pairs of matching blocks, selects three blocks p1, p2, p3 from the blocks of the template point cloud, and selects three blocks q1, q2, q3 from the blocks of the target point cloud. The angle between the orientations of any two of the three blocks selected from the target point cloud is not less than the block angle threshold γ inc ; The selected blocks of the three template point clouds are matched and combined with the selected blocks of the three target point clouds one by one. There are 6 matching and combination methods in total. Call three pairs of block geometric feature matching algorithms. When the template point cloud blocks p1, p2, p3 are matched with the target point cloud blocks q1, q2, q3, calculate the transformation relationship from the target point cloud coordinate system to the template point cloud coordinate system, i.e., the rotation matrix R and the translation vector t, and transform each point of the target point cloud to the template point cloud coordinate system. Calculate the overlapping area between the target point cloud and the template point cloud. If the algorithm matching ends successfully, record the algorithm result. Go to the initial step of selecting three pairs of matching blocks, and repeat the automatic registration process until all matching combinations of all blocks of the template point cloud and the target point cloud are traversed; The rotation matrix R and translation vector t of the matching combination with the largest overlapping area are selected as the registration result.
6. The method for rapid registration of three-dimensional point clouds based on matching of three pairs of block geometric features according to claim 1, characterized in that: The block angle threshold γ inc Used to determine whether the blocks are not parallel. If the angle between the selected blocks is greater than or equal to this value, they are considered non-parallel.
7. The method for rapid registration of three-dimensional point clouds based on matching of three pairs of block geometric features according to claim 1, characterized in that: The block isotropic error threshold γ co Used to determine whether the orientations of the blocks are the same; if the block angle is less than or equal to this value, the orientations are determined to be the same.
8. The method for rapid registration of three-dimensional point clouds based on matching of three pairs of block geometric features according to claim 3, characterized in that: The point x' Q To a point x in the template point cloud P The distance is Euclidean distance, which is expressed as:
9. The method for rapid registration of three-dimensional point clouds based on matching of three pairs of block geometric features according to claim 3, characterized in that: If the point x is known P The normal n(x P ), then the point x' Q To a point x in the template point cloud P The distance can also be expressed as point-to-surface distance: |(x' Q -x P )·n(x P )|。 10. The method for rapid registration of three-dimensional point clouds based on matching of three pairs of block geometric features according to claim 5, characterized in that: The maximum overlapping area refers to the largest number of overlapping points.
Citation Information
Patent Citations
Automatic registration method for three-dimensional point cloud data
CN106780459A
Digital pre-assembly matching method for precast beam bodies based on design-actual measurement point cloud model
WO2023226429A1