Three-dimensional point cloud registration method and system based on multi-feature dynamic weighting
Through the multi-element dynamic weighting of three-dimensional point cloud registration method, the curvature and normal angle characteristics are used, combined with dynamic weight optimization strategies, the problems of traditional ICP algorithms being sensitive to initial position and high computational complexity are solved, and efficient and accurate point cloud registration is achieved.
Patent Information
- Application Number
- CN202510592416.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-09
- Publication Date
- 2025-07-04
AI Technical Summary
Traditional ICP algorithms are sensitive to the initial position of point clouds, easily fall into local optimality, have high computational complexity, and are difficult to meet the registration requirements of high precision and high efficiency.
The three-dimensional point cloud registration method with multi-element dynamic weighting is adopted. By extracting the curvature and normal angle characteristics of the point cloud, combining the multi-constrained weighting scoring mechanism and dynamic weight optimization strategy, the weight is dynamically adjusted to match the point pairs, and the point pairs are filtered according to the normal angle and curvature difference thresholds, and the rotation matrix and translation vector are optimized to solve the rotation matrix and translation vector.
It realizes efficient and accurate registration in the initial position gap between point clouds and noise scenarios, reduces the computational complexity, improves registration efficiency and accuracy, and overcomes the limitations of traditional ICP algorithms.
Smart Images

Figure CN120259387A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of computer vision and 3D data processing, and particularly relates to a 3D point cloud registration method and system based on multi-feature dynamic weighting, which is applicable to high-precision point cloud registration in fields such as 3D reconstruction, robot navigation, and industrial inspection. Background Art
[0002] 3D point cloud registration is a key technology for realizing multi-view data fusion, 3D reconstruction, and quality inspection, and is widely used in fields such as intelligent manufacturing, autonomous driving, and reverse engineering. The goal of 3D point cloud registration is to align point cloud data obtained from different viewpoints or sensors to a unified coordinate system by solving the optimal rigid body transformation matrix (rotation and translation). The Iterative Closest Point algorithm (ICP) is the most classic point cloud registration method, which gradually optimizes the correspondence relationship between two point sets through iteration, minimizes the distance error between the two point sets, and thus achieves a precise registration effect.
[0003] However, the traditional ICP algorithm is sensitive to the initial position of the point cloud. When the initial attitude deviation is large, it is easy to fall into a local optimum, resulting in registration failure. Moreover, when dealing with large-scale point clouds, it is necessary to repeatedly calculate the correspondence relationship of point pairs, with high computational complexity, low efficiency, and slow convergence speed. The registration accuracy and efficiency cannot meet the application requirements of high-precision requirements. Therefore, the initial attitude dependence and the tendency to fall into a local optimum are still urgent problems to be solved in point cloud registration. Summary of the Invention
[0004] Aiming at the deficiencies of the prior art, the technical problem to be solved by the present invention is to provide a 3D point cloud registration method and system based on multi-feature dynamic weighting.
[0005] The present invention adopts the following technical solutions to solve the above technical problems:
[0006] A 3D point cloud registration method based on multi-feature dynamic weighting, characterized by including the following steps:
[0007] The first step: Obtain the source point cloud and the target point cloud to be registered, and downsample the source point cloud and the target point cloud;
[0008] The second step: Extract the geometric features of the source point cloud and the target point cloud, including the curvature and normal angle at each point;
[0009] For any point p of the source point cloud i , search for k neighboring points in its neighborhood, calculate the covariance matrix; perform eigenvalue decomposition on the covariance matrix to obtain eigenvalues λ1, λ2, and λ3, where λ1 < λ2 < λ3; the eigenvector corresponding to the minimum eigenvalue is the normal vector of point p i Point p iThe curvature at is calculated by the following formula:
[0010]
[0011] Assume that the neighborhood point p of point p i is j and the normal vector of is Then the normal angle i between point p j and its neighborhood point p is expressed as:
[0012]
[0013] Define the normal angle of point p i as the average value of the sum of the normal angles between point p i and all its neighborhood points, which is expressed as:
[0014]
[0015] In the formula, represents the normal angle of point p i , and K(p i ) represents the set of neighborhood points of point p i ;
[0016] Step 3: Extract target points from the target point cloud, and use a multi-constraint weighted scoring mechanism and a dynamic weight optimization strategy for point pair matching;
[0017] For any target point q j , select multiple points with relatively close distances from the source point cloud as candidate points, traverse all point pairs composed of candidate points and the target point, and take the point pair with the minimum dynamic weighted difference function value as the matching point pair; the dynamic weighted difference function is:
[0018] S = ω d s d + ω a s a + ω c s c (4)
[0019]
[0020] In the formula, ω d , ω a , ω c are the weights of distance difference, normal angle difference and curvature difference respectively, s d represents the distance difference score, s a represents the normal angle difference score, s c represents the curvature difference score, represents the target point q jThe normal angle, represents the curvature at the target point q j , and I represents the set of candidate points;
[0021] Step 4: According to the normal angle difference threshold τ a and the curvature difference threshold τ c screen the matching point pairs. If s a ≤τ a and s c ≤τ c , then retain the matching point pairs; if s a >τ a and / or s c >τ c , then reject the matching point pairs;
[0022] Step 5: According to the retained matching point pairs, optimize and solve the rotation matrix and translation vector; transform the source point cloud according to the rotation matrix and translation vector to achieve point cloud registration.
[0023] Furthermore, the calculation formulas for the distance difference, normal angle difference, and curvature difference weights are as follows:
[0024]
[0025]
[0026] In the formula, α1, α2, and α3 represent attenuation coefficients, β is a regulation factor, m represents the current iteration number, and M represents the maximum iteration number.
[0027] Furthermore, the normal angle difference threshold and the curvature difference threshold are calculated according to the following formula:
[0028]
[0029] In the formula, τ0 represents the initial threshold, and τ min represents the minimum threshold.
[0030] The present invention also provides a three-dimensional point cloud registration system for implementing the above method, which is characterized by including:
[0031] Data acquisition module: used to acquire the source point cloud and the target point cloud;
[0032] Feature extraction module: used to extract the geometric features of the source point cloud and the target point cloud;
[0033] Registration calculation module: used for point pair matching, solving the rotation matrix and translation vector according to the matching point pairs, and realizing point cloud registration;
[0034] Result output module: output the registration result.
[0035] Compared with the prior art, the present invention has the following beneficial effects:
[0036] 1. Considering the spatial distance, curvature and normal angle difference of point pairs, a multi-constraint weighted scoring mechanism and a dynamic weight optimization strategy are used to match point pairs; the weights are dynamically adjusted according to the number of iterations to optimize the point pair matching process. In the early stage of iteration, the spatial distance constraint is relied on (that is, the distance difference weight is the highest), that is, the two points with the smallest distance in the early stage of iteration are considered to be matching point pairs, so as to shorten the distance between the source point cloud and the target point cloud and achieve global coarse registration; with the increase of the number of iterations, the weights of the normal angle and curvature gradually increase, increasing the influence of the normal angle and curvature, and realizing fine exploration of local areas. The normal angle constraint ensures the consistency of the surface orientation, and the curvature constraint ensures the matching of local geometric structures. Reliable matching point pairs are selected through distance, normal angle and curvature constraints. In scenes with large initial position differences, noise and local overlap, good registration results are still achieved, overcoming the problems of traditional ICP algorithm being sensitive to the initial posture of point clouds, weak anti-noise ability and insufficient feature utilization, thereby achieving efficient and accurate registration of point clouds.
[0037] 2. According to the normal angle difference threshold and the curvature difference threshold, matching point pairs with large distances are eliminated. The normal angle difference threshold and the curvature difference threshold change dynamically with the number of iterations. At the beginning of the iteration, a loose threshold is used. As the number of iterations increases, the threshold is gradually tightened to avoid over-constraint or under-constraint problems caused by traditional fixed thresholds.
[0038] 3. The present invention downsamples the point cloud and extracts the feature points of the target point cloud, thereby reducing the amount of calculation and the registration time and improving the registration efficiency. BRIEF DESCRIPTION OF THE DRAWINGS
[0039] Figure 1 is a flow chart of the method of the present invention;
[0040] Figure 2 is a structural diagram of the system of the present invention;
[0041] Figure 3 It is a curve diagram of the change of distance, normal angle and curvature difference weight of the present invention;
[0042] Figure 4 This is a comparison chart of the registration results between the method of the present invention and the ICP algorithm. DETAILED DESCRIPTION
[0043] Specific embodiments are given below in conjunction with the accompanying drawings. The specific embodiments are only used to introduce the technical solutions of the present invention in detail and are not intended to limit the protection scope of the present application.
[0044] The present invention provides a three-dimensional point cloud registration method based on multi-feature dynamic weighting, comprising the following steps:
[0045] Step 1: Obtain the source point cloud and the target point cloud to be registered, and downsample the source point cloud and the target point cloud;
[0046] Adopt the voxel grid downsampling method to unify the source point cloud and the target point cloud into a sparse structure with a fixed resolution respectively, which can greatly reduce the number of points, ensure the overall structure of the point cloud remains unchanged while improving the calculation efficiency;
[0047] Step 2: Extract the geometric features of the source point cloud and the target point cloud, including curvature and normal angle;
[0048] For any point p in the source point cloud i , search for k neighborhood points within its neighborhood through the k-nearest neighbor algorithm, calculate the covariance matrix based on these neighborhood points, perform eigenvalue decomposition on the covariance matrix to obtain eigenvalues λ1, λ2, and λ3, where λ1 < λ2 < λ3; calculate the eigenvectors V1, V2, and V3 corresponding to the eigenvalues λ1, λ2, and λ3. Among them, the eigenvector V1 corresponding to the minimum eigenvalue λ1 is the normal vector of point p i ; Calculate the curvature according to the eigenvalues, then the curvature at point p i is calculated by the following formula;
[0049]
[0050] Assume that the normal vector of the neighborhood point p i of point p j is Then the normal angle between point p i and the neighborhood point p j is expressed as:
[0051]
[0052] Define the normal angle of point p i as the average value of the sum of the normal angles between point p i and all neighborhood points, expressed as:
[0053]
[0054] In the formula, K(p i ) represents the set of neighborhood points of point p i ;
[0055] Similarly, obtain the curvature and normal angle at each of the remaining points in the source point cloud and each point in the target point cloud.
[0056] Step 3: Extract target points from the target point cloud, and use a multi-constraint weighted scoring mechanism and a dynamic weight optimization strategy to match corresponding points for the target points from the source point cloud to obtain matching point pairs;
[0057] Extract target points from the target point cloud using the ISS algorithm; for any target point q j , select multiple points with relatively close distances from the source point cloud as candidate points, traverse all point pairs composed of candidate points and target points, and take the point pair with the minimum dynamic weighted difference function value as the matching point pair; the dynamic weighted difference function is:
[0058] S = ω d s d + ω a s a + ω c s c (4)
[0059]
[0060] In the formula, ω d , ω a , ω c are the weights of distance difference, normal angle difference and curvature difference respectively; s d represents the distance difference score, which is used to measure the spatial distance difference between the target point and the candidate point; s a represents the normal angle difference score, which is used to measure the normal angle difference between the target point and the candidate point, and to measure whether the normal vector directions of the point pair are consistent; s c represents the curvature difference score, which is used to measure the curvature difference between the target point and the candidate point, and to measure the local geometric shape similarity of the point pair; represents the normal angle of the target point q j , represents the curvature at the target point q j , I represents the set of candidate points;
[0061] Furthermore, the weights of distance difference, normal angle difference and curvature difference change dynamically according to the number of iterations, and the calculation formula is as follows:
[0062]
[0063] In the formula, α1, α2, α3 represent attenuation coefficients, β ∈ (0,1) is a regulation factor, m represents the current number of iterations, and M is the maximum number of iterations.
[0064] The distance difference weight decreases exponentially, dominating in the initial stage of iteration and gradually decaying in the later stage to achieve global rough registration and improve the global exploration ability of the algorithm in the early stage of search; the normal angle difference weight shows an exponentially increasing trend, dominating and continuously strengthening in the middle stage of iteration; the curvature difference weight also increases exponentially and gradually participates in the later stage of iteration. However, curvature is sensitive to noise and its overall strength is limited by the adjustment factor. The overall change of the curvature difference weight is smooth and suitable for the registration requirements of different types of point clouds. In the middle and later stages of iteration, the influence of the normal angle and curvature is gradually increased to achieve fine exploration of the local area.
[0065] Step 4: According to the normal angle difference threshold τ a and the curvature difference threshold τ c , eliminate the matching point pairs with large differences; if s a ≤τ a and s c ≤τ c , then retain the matching point pairs; if s a >τ a and / or s c >τ c , then eliminate the matching point pairs; both the normal angle difference threshold and the curvature difference threshold change dynamically with the number of iterations. At the beginning of iteration, loose thresholds are used. As the number of iterations increases, the thresholds are gradually tightened and calculated according to the following formula:
[0066]
[0067] In the formula, τ0 represents the initial threshold, and τ min represents the minimum threshold.
[0068] Step 5: According to the retained matching point pairs, optimize and solve the rotation matrix and translation vector, and transform the source point cloud according to the rotation matrix and translation vector to achieve point cloud registration.
[0069] The present invention also provides a three-dimensional point cloud registration system based on multi-feature dynamic weighting, including:
[0070] Data acquisition module: Collect the source point cloud and target point cloud of the target scene through a lidar or a depth camera;
[0071] Feature extraction module: Extract the geometric features of the source point cloud and the target point cloud, including curvature and normal angle;
[0072] Registration calculation module: Use the multi-constraint weighted scoring mechanism and the dynamic weight optimization strategy to obtain the matching point pairs; according to the normal angle difference threshold and the curvature difference threshold, eliminate the matching point pairs with large distances; according to the retained matching point pairs, optimize and solve the rotation matrix and translation vector, and transform the source point cloud according to the rotation matrix and translation vector to achieve point cloud registration;
[0073] Result output module: After registration is completed, the registration results are output, including the visualized image of the registered point cloud, the registration error, and the number of iterations;
[0074] Each of the above modules has a processor or shares a processor. The processor can obtain data from other devices or execute program instructions to complete the 3D point cloud registration method.
[0075] Embodiment
[0076] In this embodiment, the resolution of downsampling for the source point cloud and the target point cloud is 2 mm; for each target point, 30 points in the source point cloud that are relatively close to it are selected as candidate points; the attenuation coefficients are set to α1 = 2.5, α2 = 1.5, α3 = 1, the adjustment factor β = 0.5, the maximum number of iterations M = 50, and the weight change is shown in Figure 3 ; the initial threshold τ0 = 0.5, the minimum threshold τ min = 0.05;
[0077] In the fifth step, the point-to-plane error function is used to optimize and solve the rotation matrix R and the translation vector t, and the source point cloud is transformed according to the rotation matrix and the translation vector, to obtain the transformed source point cloud; calculate the root mean square error (RMSE) between the target point cloud and the transformed source point cloud, and determine whether it converges. If it converges, output the rotation matrix and the translation vector to complete the point cloud registration; if it does not converge, return to the second step to re-iterate the calculation until convergence; the convergence judgment condition is: |RMSE (m) - RMSE (m-1) | < 10 -5 or RMSE < 10 -5 , where RMSE represents the root mean square error.
[0078] Using the publicly available Stanford Bunny point cloud dataset, the proposed method and the classical point cloud registration algorithm (ICP algorithm) are respectively used for registration, and the registration results are as Figure 4 shown. It can be seen from Figure 4 that when using the ICP algorithm for registration, obvious deviations occur in the rabbit's ears, head, feet, and hips, and the alignment effect is poor, and accurate registration is not achieved. The registration error is 2.50×10 -3 m, and 34 iterations are required; while using the proposed method, each part of the rabbit can basically be aligned, accurate registration is achieved, and the registration error is 1.36×10 -3For m, only 15 iterations are required. The registration results show that the method of the present invention is significantly superior to the ICP algorithm. This is because the present invention combines the downsampling and feature point extraction strategies to reduce the computational complexity and improve the algorithm efficiency. By means of the multi-constraint weighted scoring mechanism, the constraints of spatial distance, normal angle and curvature difference are dynamically balanced. After quickly shortening the global distance of the point cloud at the initial stage of registration, the weight of the geometric feature constraint is gradually increased, effectively solving the local optimum problem caused by the traditional ICP algorithm relying solely on the Euclidean distance. Secondly, the dynamically adjusted threshold strategy retains more potential matching point pairs at the initial stage of iteration and gradually tightens in the later stage to eliminate false matches, solving the problems of under-constraint and over-constraint caused by fixed thresholds.
[0079] What is not described in the present invention is applicable to the prior art.
Claims
1. A three-dimensional point cloud registration method based on multi-feature dynamic weighting, characterized in that It includes the following steps: The first step: Obtain the source point cloud and the target point cloud to be registered, and downsample the source point cloud and the target point cloud; The second step: Extract the geometric features of the source point cloud and the target point cloud, including the curvature and normal angle at each point; For any point p of the source point cloud i , search for k neighborhood points within its neighborhood, and calculate the covariance matrix; perform eigenvalue decomposition on the covariance matrix to obtain eigenvalues λ1, λ2, and λ3, where λ1 < λ2 < λ3; the eigenvector corresponding to the minimum eigenvalue is the normal vector of point p i . The curvature at point p i is calculated by the following formula: Assume point p i and its neighboring point p j has a normal vector of Then the normal angle i between point p j and its neighboring point p is expressed as: Define point p i The normal angle of i point p is the average value of the sum of the normal angles between point p and all its neighboring points, expressed as: In the formula, represents the normal angle of point p i , and K(p i ) represents the set of neighboring points of point p i ; The third step: Extract target points from the target point cloud, and perform point pair matching using a multi-constraint weighted scoring mechanism and a dynamic weight optimization strategy; For any target point q j , select multiple points with relatively close distances to it from the source point cloud as candidate points, traverse all point pairs composed of candidate points and the target point, and take the point pair with the smallest dynamic weighted difference function value as the matching point pair; the dynamic weighted difference function is: S = ω d s d + ω a s a + ω c s c (4) where ω d , ω a , ω c are the weights of distance difference, normal angle difference and curvature difference respectively, s d represents the distance difference score, s a represents the normal angle difference score, s c represents the curvature difference score, represents the normal angle of the target point q j , represents the curvature at the target point q j , and I represents the set of candidate points; Step 4: According to the normal angle difference threshold τ a and the curvature difference threshold τ c screen the matching point pairs. If s a ≤τ a and s c ≤τ c , then retain the matching point pairs; if s a >τ a and / or s c >τ c , then eliminate the matching point pairs; The fifth step: Optimize and solve the rotation matrix and translation vector according to the retained matching point pairs; Transform the source point cloud according to the rotation matrix and translation vector to achieve point cloud registration.
2. The three-dimensional point cloud registration method based on multi-feature dynamic weighting according to claim 1, wherein The calculation formulas for the weights of distance difference, normal angle difference, and curvature difference are as follows: In the formula, α1, α2, and α3 represent attenuation coefficients, β is a regulation factor, m represents the current iteration number, and M represents the maximum iteration number.
3. The three-dimensional point cloud registration method based on multi-feature dynamic weighting according to claim 1, wherein, The normal angle difference threshold and the curvature difference threshold are calculated according to the following formula: where τ0 represents the initial threshold, and τ min represents the minimum threshold.
4. A three-dimensional point cloud registration system for implementing the method according to any one of claims 1 to 3, characterized in that, It includes: Data acquisition module: Used to acquire the source point cloud and the target point cloud; Feature extraction module: Used to extract the geometric features of the source point cloud and the target point cloud; Registration calculation module: Used for point pair matching, solve the rotation matrix and translation vector according to the matching point pairs, and achieve point cloud registration; Result output module: Output the registration result.
Citation Information
Cited By
Positioning method for numerical control machine tool machining
CN121437585A
Automatic registration method and device based on CBCT data and point cloud data, surgical equipment and storage medium
CN121639747A
Real-time compensation method and system for welding track of intersecting line of electric power iron tower
CN122391308A