A point cloud data registration method, a processing system and a storage medium
By performing voxelization and key point selection on point clouds, and combining fast point feature histogram descriptors and the least squares method, the problems of low efficiency and insufficient accuracy caused by redundant points in point cloud registration are solved, and efficient and stable point cloud stitching is achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- 自然资源部重庆测绘院
- Filing Date
- 2026-05-15
- Publication Date
- 2026-06-12
AI Technical Summary
Existing technologies cannot effectively filter out invalid regions with weak geometric features when dealing with target scenes that are complex in structure, have simple surface textures, and have varying degrees of point cloud sparseness. This results in insufficient robustness, computational efficiency, and registration accuracy of point cloud registration.
By voxelizing the reference point cloud and the point cloud to be registered, voxels that do not meet the feature conditions are removed, key points with high geometric saliency are selected, and feature vectors of key points are calculated using a fast point feature histogram descriptor. A maximum clique is constructed, and the transformation parameters are calculated using the least squares method for splicing.
It improves the accuracy and stability of point cloud registration, optimizes the inefficiency caused by too many redundant points, and achieves efficient point cloud stitching.
Smart Images

Figure CN122199640A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of three-dimensional point cloud data processing technology, and in particular to a point cloud data registration method, processing system, and storage medium. Background Technology
[0002] With the rapid development of technologies such as 3D laser scanning and visual perception, point cloud data has become a core data carrier in fields such as 3D scene reconstruction, industrial precision inspection, autonomous driving environmental perception, digital preservation of cultural relics, and reverse engineering. In practical applications, due to limitations in scanning angle, equipment shooting range, and scene occlusion, a single viewpoint cannot completely capture all the 3D information of a target object or scene. It is usually necessary to collect multiple sets of point cloud data from different orientations and postures, and then use point cloud registration technology to unify and stitch together the coordinates of multiple sets of point clouds to construct a complete 3D model. Therefore, point cloud registration is an indispensable key step in the 3D data processing workflow.
[0003] The core principle of point cloud registration is to solve for the spatial rotation and translation transformation parameters between two sets of point clouds, thereby achieving accurate alignment and stitching between the point cloud to be registered and the reference point cloud. Currently, mainstream point cloud registration methods are divided into two categories: iterative optimization registration and feature matching registration. Among them, the Iterative Nearest Point (ICP) algorithm or NDT is the most widely used. Taking the ICP algorithm as an example, the algorithm solves the transformation matrix by iteratively searching for the nearest neighbor and minimizing the distance error. The computational logic is simple, but it has several obvious technical defects: First, the convergence of the algorithm is highly dependent on the initial pose of the two sets of point clouds. When the initial deviation is large and the overlap of the point clouds is low, it is easy to get trapped in a local optimum, causing registration failure. Second, it is sensitive to point cloud noise, discrete outliers, and invalid redundant points. It does not specifically select effective feature regions, resulting in poor fault tolerance. Third, the overall computational load is large, and the running efficiency is low in large-scale point cloud scenarios.
[0004] Therefore, when faced with target scenes that are structurally complex, have simple surface textures, and have varying degrees of point cloud sparseness, existing technologies cannot effectively filter out invalid regions with weak geometric features, have insufficient feature mining capabilities, and lack a global optimization strategy based on point-pair relationships, making it difficult to balance the robustness, computational efficiency, and registration accuracy of point cloud registration. Summary of the Invention
[0005] This invention aims to at least solve one of the technical problems existing in the prior art. To this end, this invention proposes a point cloud data registration method, processing system, and storage medium to optimize the problem of low efficiency caused by too many redundant points and improve registration accuracy and stability.
[0006] A point cloud data registration method according to a first aspect of the present invention is used to stitch together any two sets of point cloud data, wherein the two sets of point cloud data are a reference point cloud and a point cloud to be registered, and the point cloud data registration method includes: performing voxelization on both the reference point cloud and the point cloud to be registered to obtain multiple voxels with equal side lengths, wherein each voxel includes several discrete points; performing geometric feature analysis on each voxel of the reference point cloud and the point cloud to be registered, and removing voxels whose geometric features do not meet the feature conditions; performing a key point selection step on the remaining voxels in the reference point cloud and the point cloud to be registered, wherein in the key point selection step, a spherical neighborhood is constructed for each discrete point in the voxel and the scattering matrix of the corresponding point set in the spherical neighborhood is calculated to obtain the scattering matrix eigenvalues of the scattering matrix, the local geometric saliency of the discrete point is judged according to the ratio relationship between the scattering matrix eigenvalues, and the key points in the voxel are selected based on the level of local geometric saliency; calculating the fast point feature histogram descriptor of each key point to obtain the feature descriptor vector of each key point, and then performing a key point selection step on the remaining voxels in the reference point cloud and the point cloud to be registered. The descriptor similarity between keypoints in the reference point cloud and keypoints in the point cloud to be registered is calculated using descriptor vectors. Keypoints whose descriptor similarity satisfies the similarity condition are paired to form multiple keypoint pairs, where each keypoint in the reference point cloud matches only one keypoint in the point cloud to be registered. Connections are established between these keypoint pairs, and the distance ratio between any two keypoint pairs in the reference and point clouds to obtain the scale factor is calculated. Connections with scale factors exceeding the scale tolerance range are deleted. A maximum clique is constructed from the keypoint pairs that maintain connections. The maximum clique includes multiple keypoint pairs, and any keypoint pair in the maximum clique is connected to all other keypoint pairs in the maximum clique. The transformation parameters of the point cloud to be registered relative to the reference point cloud are calculated using the least squares method based on the keypoint pairs in the maximum clique. The point cloud to be registered is then transformed according to the transformation parameters and stitched together with the reference point cloud.
[0007] A point cloud data registration method according to an embodiment of the present invention has at least the following beneficial effects: This invention provides a point cloud data registration method that performs voxelization on both the reference point cloud and the point cloud to be registered. By analyzing the geometric features of each voxel and removing voxels that do not meet the feature conditions, it effectively filters out invalid regions with weak geometric features in the point cloud, retaining valid voxels with distinct geometric features. This reduces the interference of invalid points on subsequent key point selection and feature matching, lowers the impact on registration accuracy, and improves the efficiency of subsequent processing. In the key point selection process, a spherical neighborhood is constructed for each discrete point within a voxel, the scattering matrix and eigenvalue are calculated, and key points are selected based on the ratio of eigenvalues to determine local geometric saliency. Compared with traditional selection methods, this method can accurately select key points with high geometric saliency and avoid key point errors. To address the issues of concentrated distribution and insufficient feature recognition, this application ensures that the selected key points can fully represent the local geometric structure features of the point cloud. Then, based on a fast point feature histogram descriptor, the feature vectors of the key points are calculated and similarity matching is performed to constrain the spatial scale correlation between key point pairs, reducing the false matching rate. Furthermore, by constructing a maximum clique, it ensures that any key point pair within the clique has an effective connection relationship, achieving global consistency screening of matching point pairs and further improving the reliability of the matching results. Finally, using the effective key point pairs in the maximum clique, the least squares method is used to solve the transformation parameters, achieving efficient stitching of the two sets of point clouds. This application optimizes the problem of low efficiency caused by excessive redundant points, improving registration accuracy and stability.
[0008] According to some embodiments of the present invention, the feature condition includes a planar feature index value greater than a planar feature threshold; The process of performing geometric feature analysis on each voxel of the reference point cloud and the point cloud to be registered, and removing voxels whose geometric features do not meet the feature conditions, includes: Calculate the covariance matrix of the point cloud within a voxel to obtain the first eigenvalues characterizing the degree of divergence of the point cloud in three orthogonal directions. Second eigenvalue and the third eigenvalue ,in, ; Calculate the plane characteristic index value = ; When the plane feature index value is greater than the plane feature threshold, the geometric features of the voxel satisfy at least one feature condition.
[0009] According to some embodiments of the present invention, the feature condition further includes the number of discrete points within a voxel being greater than a point number threshold; When the number of discrete points within a voxel is greater than the number of points threshold and the plane feature index value is greater than the plane feature threshold, the geometric features of the voxel satisfy the feature conditions. Voxels whose geometric features do not meet the feature conditions are removed, while voxels whose geometric features meet the feature conditions are retained.
[0010] According to some embodiments of the present invention, the process of constructing a spherical neighborhood for each discrete point within a voxel and calculating the scattering matrix of the corresponding set of points within the spherical neighborhood to obtain the eigenvalues of the scattering matrix includes: The scattering matrix of discrete points in the spherical neighborhood is constructed as follows: ; in, To construct discrete points in a spherical neighborhood, For each element in the spherical neighborhood, ... Adjacent discrete points, For each element in the spherical neighborhood, ... The total number of adjacent discrete points, For the first The weighting coefficients of adjacent discrete points, This is the transpose of the three-dimensional coordinate difference vector; Based on the scattering matrix, the eigenvalues of the first scattering matrix, representing the divergence in the three orthogonal directions, are derived. eigenvalues of the second scattering matrix and the eigenvalues of the third scattering matrix ,in, ; The process of determining the local geometric saliency of a discrete point based on the ratio between eigenvalues of the scattering matrix, and then selecting key points within a voxel based on the level of local geometric saliency, includes: Calculate the first characteristic ratio respectively The ratio of the second characteristic ; When the first characteristic ratio Greater than or equal to the first constraint threshold and the second feature ratio If the discrete points of the constructed spherical neighborhood are greater than or equal to the second constraint threshold, then the discrete points are highly identifiable discrete points. High-resolution discrete points within voxels are selected as keypoints.
[0011] According to some embodiments of the present invention, the calculation of fast point feature histogram descriptors for each keypoint to obtain feature descriptor vectors for each keypoint includes: A local coordinate reference frame is constructed for each key point. The local coordinate reference frame is as follows: ;in, As the key point, for Construct a spherical neighborhood for each element. Adjacent discrete points, Key point The normal vector; Based on the local coordinate reference frame of key points, three feature operators are calculated to jointly represent the local geometric relationship between each adjacent discrete point in the spherical neighborhood. The three feature operators are: ;in, To and The normal vectors of adjacent discrete points; The numerical ranges of the three feature operators are divided into multiple sub-intervals, and the number of points in each sub-interval corresponding to the numerical values of the feature operators of each adjacent discrete point is counted to obtain the feature descriptor vector.
[0012] According to some embodiments of the present invention, the step of calculating the descriptor similarity between each key point of the reference point cloud and each key point of the point cloud to be registered based on the feature descriptor vector includes: ,in, This represents the number of landing points in the k-th interval of the point cloud to be registered. The number of landing points in the k-th interval of the baseline point cloud. The lower the value, the higher the descriptor similarity; The process of pairwise matching of key points whose descriptor similarity meets the similarity condition between key points in the reference point cloud and key points in the point cloud to be registered to form multiple key point pairs includes: For each reference point cloud, the key points of the point cloud to be registered are selected with the highest descriptor similarity and matched to form multiple key point pairs.
[0013] According to some embodiments of the present invention, the calculation of the inter-point distance ratio in the reference point cloud and the point cloud to be registered for any two sets of keypoint pairs to obtain the scale factor includes: The two keypoint pairs are the first keypoint pair and the second keypoint pair, respectively. The first keypoint pair includes the first reference keypoint. and the first key point to be registered The second keypoint pair includes the second benchmark keypoint. Second registration key points ; Point distance ratio .
[0014] According to some embodiments of the present invention, the transformation parameters include a rotation matrix. and translation vector The process of calculating the transformation parameters of the point cloud to be registered relative to the reference point cloud using the least squares method based on the key point pairs in the maximum clique includes: ; in, For the set of key points in the maximum clustered reference point cloud, The set of key points in the point cloud to be registered is given by the maximum clique set; the rotation matrix is calculated. and translation vector The transformation parameters are then obtained.
[0015] A processing system according to a second aspect of the present invention is used to process the point cloud data registration method disclosed in any of the above embodiments, comprising: The partitioning module is used to perform voxelization partitioning on both the reference point cloud and the point cloud to be registered to obtain multiple voxels with equal side lengths. The feature analysis and elimination module is used to perform geometric feature analysis on each voxel of the reference point cloud and the point cloud to be registered, and to eliminate voxels whose geometric features do not meet the feature conditions. The filtering module is used to perform key point selection steps on the remaining voxels in the reference point cloud and the point cloud to be registered, respectively. In the key point selection step, a spherical neighborhood is constructed for each discrete point in the voxel and the scattering matrix of the corresponding point set in the spherical neighborhood is calculated to obtain the scattering matrix eigenvalue. The local geometric saliency of the discrete point is judged according to the ratio relationship between the scattering matrix eigenvalues. The key points in the voxel are selected based on the level of local geometric saliency. The pairing module is used to calculate the fast point feature histogram descriptor of each key point to obtain the feature descriptor vector of each key point. Based on the feature descriptor vector, the descriptor similarity between each key point in the reference point cloud and each key point in the point cloud to be registered is calculated. The key points whose descriptor similarity meets the similarity condition between the key points in the reference point cloud and the key points in the point cloud to be registered are matched in pairs to form multiple key point pairs. The relationship building module is used to build connection relationships between each set of key point pairs, traverse the connection relationships between each key point pair, calculate the ratio of the point distance between any two sets of key point pairs in the reference point cloud and the point cloud to be registered to obtain the scale factor, and delete the connection relationships whose scale factors exceed the scale tolerance range. The search module is used to construct the largest clique among the key point pairs that maintain connections; The processing module is used to calculate the transformation parameters of the point cloud to be registered relative to the reference point cloud using the least squares method based on the key point pairs in the maximum clique set. The stitching module is used to stitch the point cloud to be registered with the reference point cloud after the point cloud has been transformed according to the transformation parameters.
[0016] The processing system according to embodiments of the present invention has at least the following beneficial effects: The processing system of this invention executes a point cloud data registration method, optimizing the problem of low efficiency caused by too many redundant points, and improving registration accuracy and stability.
[0017] According to a third aspect of the present invention, a computer-readable storage medium stores a computer program that, when executed by a processor, implements the point cloud data registration method disclosed in any of the above embodiments.
[0018] Additional aspects and advantages of the invention will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. Attached Figure Description
[0019] The above and / or additional aspects and advantages of the present invention will become apparent and readily understood from the description of the embodiments taken in conjunction with the following drawings, in which: Figure 1 This is a flowchart of one embodiment of the point cloud data registration method of the present invention; Figure 2 This is a schematic diagram of the principle structure of one embodiment of the processing system of the present invention.
[0020] Figure label: Segmentation module 210; Feature analysis and elimination module 220; Filtering module 230; Pairing module 240; Relationship building module 250; Search module 260; Processing module 270; Concatenation module 280. Detailed Implementation
[0021] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0022] It should be noted that although functional modules are divided in the device schematic diagram and a logical order is shown in the flowchart, in some cases, the steps shown or described may be performed in a different order than the module division in the device or the order in the flowchart. The terms "first," "second," etc., in the specification, claims, and the aforementioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence.
[0023] In the description of this invention, "several" means one or more, "multiple" means two or more, "greater than", "less than", "exceeding" are understood to exclude the number itself, and "above", "below", "within" are understood to include the number itself.
[0024] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used herein is for the purpose of describing embodiments of this application only and is not intended to limit this application.
[0025] like Figure 1As shown, a point cloud data registration method according to a first aspect embodiment of the present invention is used to stitch together any two sets of point cloud data, wherein the two sets of point cloud data are a reference point cloud and a point cloud to be registered, and the point cloud data registration method includes: S110. Perform voxelization on both the reference point cloud and the point cloud to be registered to obtain multiple voxels with equal side lengths, wherein each voxel contains several discrete points. S120. Perform geometric feature analysis on each voxel of the reference point cloud and the point cloud to be registered, and remove voxels whose geometric features do not meet the feature conditions. S130. Perform key point selection steps on the remaining voxels in the reference point cloud and the point cloud to be registered respectively. In the key point selection step, construct a spherical neighborhood for each discrete point in the voxel and calculate the scattering matrix of the corresponding point set in the spherical neighborhood to obtain the scattering matrix eigenvalue. Determine the local geometric saliency of the discrete point based on the ratio relationship between the scattering matrix eigenvalues. Select key points in the voxel based on the level of local geometric saliency. S140. Calculate the fast point feature histogram descriptor for each key point to obtain the feature descriptor vector for each key point. Calculate the descriptor similarity between each key point in the reference point cloud and each key point in the point cloud to be registered based on the feature descriptor vector. Match key points whose descriptor similarity satisfies the similarity condition between the key points in the reference point cloud and the key points in the point cloud to be registered in pairs to form multiple sets of key point pairs. Among them, one key point in the reference point cloud is matched with only one key point in the point cloud to be registered. S150. Construct connection relationships for each set of key point pairs, traverse the connection relationships between each key point pair, calculate the ratio of the point distance between any two sets of key point pairs in the reference point cloud and the point cloud to be registered to obtain the scale factor, and delete the connection relationships whose scale factors exceed the scale tolerance range. S160. Construct a maximum clique among the keypoint pairs that maintain connectivity, wherein the maximum clique includes multiple keypoint pairs, and any keypoint pair in the maximum clique is connected to other keypoint pairs in the maximum clique. S170. Based on the key point pairs in the maximum clique set, the transformation parameters of the point cloud to be registered relative to the reference point cloud are calculated using the least squares method. S180. After transforming the point cloud to be registered according to the transformation parameters, the point cloud is stitched together with the reference point cloud.
[0026] It should be noted that the point cloud data are all obtained by scanning with a conventional 3D laser scanner. Before applying the point cloud data registration method of this application, the acquired raw point cloud data needs to be uniformly converted into LAS format, or other identical formats. There is no specific limitation here, but no initial pose alignment is required.
[0027] In step S110, the voxels are divided into cubes with equal side lengths, for example, the side length can be 0.3m.
[0028] Once the transformation parameters are obtained, the transformation process of the point cloud to be registered can be carried out, and the transformed point cloud to be registered can be directly stitched and registered with the reference point cloud. This will not be elaborated on here.
[0029] This invention provides a point cloud data registration method that performs voxelization on both the reference point cloud and the point cloud to be registered. By analyzing the geometric features of each voxel and removing voxels that do not meet the feature conditions, it effectively filters out invalid regions with weak geometric features in the point cloud, retaining valid voxels with distinct geometric features. This reduces the interference of invalid points on subsequent key point selection and feature matching, lowers the impact on registration accuracy, and improves the efficiency of subsequent processing. In the key point selection process, a spherical neighborhood is constructed for each discrete point within a voxel, the scattering matrix and eigenvalue are calculated, and key points are selected based on the ratio of eigenvalues to determine local geometric saliency. Compared with traditional selection methods, this method can accurately select key points with high geometric saliency and avoid key point errors. To address the issues of concentrated distribution and insufficient feature recognition, this application ensures that the selected key points can fully represent the local geometric structure features of the point cloud. Then, based on a fast point feature histogram descriptor, the feature vectors of the key points are calculated and similarity matching is performed to constrain the spatial scale correlation between key point pairs, reducing the false matching rate. Furthermore, by constructing a maximum clique, it ensures that any key point pair within the clique has an effective connection relationship, achieving global consistency screening of matching point pairs and further improving the reliability of the matching results. Finally, using the effective key point pairs in the maximum clique, the least squares method is used to solve the transformation parameters, achieving efficient stitching of the two sets of point clouds. This application optimizes the problem of low efficiency caused by excessive redundant points, improving registration accuracy and stability.
[0030] In some embodiments of the present invention, the feature condition includes a planar feature index value greater than a planar feature threshold; The process of performing geometric feature analysis on each voxel of the reference point cloud and the point cloud to be registered, and removing voxels whose geometric features do not meet the feature conditions, includes: Calculate the covariance matrix of the point cloud within a voxel to obtain the first eigenvalues characterizing the degree of divergence of the point cloud in three orthogonal directions. Second eigenvalue and the third eigenvalue ,in, ; Calculate the plane characteristic index value = ; When the plane feature index value is greater than the plane feature threshold, the geometric features of the voxel satisfy at least one feature condition.
[0031] Specifically, the covariance matrix can be obtained using the covariance formula, where the first eigenvalue is... The direction in which the point cloud extends the longest is represented. Characterizes the direction of the second length extension of the point cloud. The direction in which the point cloud extends the shortest.
[0032] The planar feature threshold can be set to 0.8 or other values, which can be set by the user. When the planar feature index value is less than the planar feature threshold, at least one feature condition is not met, and the voxel is discarded.
[0033] In some embodiments of the present invention, the feature condition further includes the number of discrete points within a voxel being greater than a point number threshold; When the number of discrete points within a voxel is greater than the number of points threshold and the plane feature index value is greater than the plane feature threshold, the geometric features of the voxel satisfy the feature conditions. Voxels whose geometric features do not meet the feature conditions are removed, while voxels whose geometric features meet the feature conditions are retained.
[0034] The number of discrete points within each voxel is different. To obtain the number of discrete points within a voxel, the threshold for the number of points can be set to 4 or other values. If the number of discrete points within a voxel is less than the threshold, it indicates that the point cloud features within that voxel are not obvious, so that voxel can be removed.
[0035] In some embodiments of the present invention, the process of constructing a spherical neighborhood for each discrete point within a voxel and calculating the scattering matrix of the corresponding set of points within the spherical neighborhood to obtain the eigenvalues of the scattering matrix includes: The scattering matrix (equivalent to the covariance formula) of discrete points in the spherical neighborhood is as follows: ; in, To construct discrete points in a spherical neighborhood, For each element in the spherical neighborhood, ... Adjacent discrete points, For each element in the spherical neighborhood, ... The total number of adjacent discrete points, For the first The weighting coefficients for each adjacent discrete point can be set by the user; the specific values are not limited here. This is the transpose of the three-dimensional coordinate difference vector; Based on the scattering matrix, the eigenvalues of the first scattering matrix, representing the divergence in the three orthogonal directions, are derived. eigenvalues of the second scattering matrix and the eigenvalues of the third scattering matrix ,in, ; The process of determining the local geometric saliency of a discrete point based on the ratio between eigenvalues of the scattering matrix, and then selecting key points within a voxel based on the level of local geometric saliency, includes: Calculate the first characteristic ratio respectively The ratio of the second characteristic ; When the first characteristic ratio Greater than or equal to the first constraint threshold and the second feature ratio If the discrete points of the constructed spherical neighborhood are greater than or equal to the second constraint threshold, then the discrete points are highly identifiable discrete points. High-resolution discrete points within voxels are selected as keypoints.
[0036] It is understandable that a spherical neighborhood is constructed for each discrete point within a voxel, and the eigenvalue of the first scattering matrix is calculated for each discrete point using the scattering matrix. eigenvalues of the second scattering matrix and the eigenvalues of the third scattering matrix And obtain the corresponding first characteristic ratio. The ratio of the second characteristic Regardless of the first characteristic ratio Or the second characteristic ratio The closer the ratio is to 1, the more stable the geometric structure representing the key point and the higher its recognizability. Specifically, the first constraint threshold and the second constraint threshold can both be set to 0.95, or other values.
[0037] Satisfying the first characteristic ratio Greater than or equal to the first constraint threshold and the second feature ratio There may be one or more discrete points that are greater than or equal to the second constraint threshold, and all of these discrete points can be used as key points.
[0038] In some embodiments of the present invention, the calculation of fast point feature histogram descriptors for each key point to obtain feature descriptor vectors for each key point includes: A local coordinate reference frame is constructed for each key point. The local coordinate reference frame is as follows: ;in, As the key point, for Construct a spherical neighborhood for each element. Adjacent discrete points, Key point The normal vector; Based on the local coordinate reference frame of key points, three feature operators are calculated to jointly represent the local geometric relationship between each adjacent discrete point in the spherical neighborhood. The three feature operators are: ;in, To and The normal vectors of adjacent discrete points; The numerical ranges of the three feature operators are divided into multiple sub-intervals, and the number of points in each sub-interval corresponding to the numerical values of the feature operators of each adjacent discrete point is counted to obtain the feature descriptor vector.
[0039] Understandably, for each key point, a feature descriptor vector that can represent the identity difference of each key point is obtained by using a fast point feature histogram. The local coordinate reference frame here can be based on the spherical neighborhood in step S130, or it can be defined by other local regions.
[0040] and The projection components of the neighborhood point normal vector in two orthogonal directions are used to solve for the single azimuth angle by using the arctangent function and the two sets of perpendicular projection components. Dividing the numerical ranges of the three feature operators into multiple sub-intervals can be understood as the feature operators , as well as All of them have a certain numerical range, For example, Assuming the numerical range is [-1, 1], then [-1, 1] can be divided into m sub-intervals, for example, m = 10, such as [-1, -0.8], [-0.8, -0.6], ..., [0.8, 1]. At this point, we can statistically analyze the feature operators between key points and their adjacent discrete points. The number of discrete points adjacent to the value in [-1, -0.8] is used as the number of landing points in the subinterval of [-1, -0.8], and the number in [-0.8, -0.6] is used to obtain the number of landing points in each subinterval. These landing point counts are then used to form a set to obtain the feature descriptor vector. Specifically, the number of landing points can also be converted into the number of landing points relative to the total number of adjacent discrete points to obtain the proportion, and the proportion is used to obtain the feature descriptor vector.
[0041] In some embodiments of the present invention, the step of calculating the descriptor similarity between each key point of the reference point cloud and each key point of the point cloud to be registered based on the feature descriptor vector includes: ,in, This represents the number of landing points in the k-th interval of the point cloud to be registered. The number of landing points in the k-th interval of the baseline point cloud. The lower the value, the higher the descriptor similarity, which is understandable. The lower the value, the smaller the difference between the key point in the reference point cloud and the key point in the point cloud to be registered, and the higher the corresponding descriptor similarity.
[0042] The process of pairwise matching of key points whose descriptor similarity meets the similarity condition between key points in the reference point cloud and key points in the point cloud to be registered to form multiple key point pairs includes: For each reference point cloud, the key points of the point cloud to be registered are selected with the highest descriptor similarity and matched to form multiple key point pairs.
[0043] Generally speaking, at the key points of the reference point cloud Key points of multiple point clouds to be registered for descriptor similarity calculation , ...in the process, if the key points of the point cloud to be registered... Key points for the baseline point cloud The keypoint with the highest descriptor similarity is the keypoint of the reference point cloud. This will also be a key point for cloud registration. Key points of multiple benchmark point clouds used to calculate descriptor similarity , The key points with the highest similarity in the descriptor can be paired one by one, while key points whose descriptor similarity does not meet the requirements can be left unpaired.
[0044] In some embodiments of the present invention, the step of calculating the inter-point distance ratio in the reference point cloud and the point cloud to be registered for any two sets of keypoint pairs to obtain the scale factor includes: The two keypoint pairs are the first keypoint pair and the second keypoint pair, respectively. The first keypoint pair includes the first reference keypoint. and the first key point to be registered The second keypoint pair includes the second benchmark keypoint. Second registration key points ; Point distance ratio The scale factor is the ratio of the distances between points. .
[0045] Generally speaking, the ratio of the distance between keypoints in a pair of keypoints with high matching degree is... The closer the scale factor is to 1, the more the scale tolerance range can be set to 0.95-1.05. If the scale factor exceeds the scale tolerance range, the connection between the two key point pairs will be deleted, which is equivalent to pruning.
[0046] In step S160, a maximum clique is constructed among the key point pairs that maintain connectivity. Specifically, an approximate maximum clique can be obtained as an initial solution, and then key point pairs that do not meet the conditions are removed. On this basis, other key point pairs are continuously traversed and the size of the maximum clique is updated until the condition is met. Finally, any key point pair in the maximum clique set is connected to other key point pairs in the maximum clique set. For example, the maximum clique set includes three key point pairs a, b, and c. a is connected to b and c respectively, and b and c are also connected.
[0047] In some embodiments of the present invention, the transformation parameters include a rotation matrix. and translation vector The process of calculating the transformation parameters of the point cloud to be registered relative to the reference point cloud using the least squares method based on the key point pairs in the maximum clique includes: ; in, For the set of key points in the maximum clustered reference point cloud, This is the set of key points in the maximum cluster of point clouds to be registered. Calculate the rotation matrix and translation vector The transformation parameters are then obtained.
[0048] It is understandable that the rotation matrix can be calculated using the least squares method. and translation vector The point cloud to be registered is rotated according to the rotation matrix. Perform a rotation transformation, then based on the translation vector. After translation transformation, it can be registered with the reference point cloud.
[0049] The processing system according to the second aspect of the present invention, such as Figure 2 As shown, the point cloud data registration method for processing any of the above embodiments includes: The partitioning module 210 is used to perform voxelization partitioning on both the reference point cloud and the point cloud to be registered to obtain multiple voxels with equal side lengths. The feature analysis and elimination module 220 is used to perform geometric feature analysis on each voxel of the reference point cloud and the point cloud to be registered, and to eliminate voxels whose geometric features do not meet the feature conditions. The filtering module 230 is used to perform a key point selection step on the remaining voxels in the reference point cloud and the point cloud to be registered, respectively. In the key point selection step, a spherical neighborhood is constructed for each discrete point in the voxel and the scattering matrix of the corresponding point set in the spherical neighborhood is calculated to obtain the scattering matrix eigenvalue. The local geometric saliency of the discrete point is judged according to the ratio relationship between the scattering matrix eigenvalues. The key points in the voxel are selected based on the level of local geometric saliency. The pairing module 240 is used to calculate the fast point feature histogram descriptor of each key point to obtain the feature descriptor vector of each key point. Based on the feature descriptor vector, the descriptor similarity between each key point of the reference point cloud and each key point of the point cloud to be registered is calculated. The key points whose descriptor similarity meets the similarity condition between the key points of the reference point cloud and the key points of the point cloud to be registered are matched in pairs to form multiple sets of key point pairs. The relationship building module 250 is used to build connection relationships between each set of key point pairs, traverse the connection relationships between each key point pair, calculate the ratio of the distance between points in the reference point cloud and the point cloud to be registered for any two sets of key point pairs to obtain the scale factor, and delete the connection relationships whose scale factors exceed the scale tolerance range. Search module 260 is used to construct the largest cluster among the key point pairs that maintain connections; The processing module 270 is used to calculate the transformation parameters of the point cloud to be registered relative to the reference point cloud using the least squares method based on the key point pairs in the maximum clique set. The stitching module 280 is used to stitch the point cloud to be registered with the reference point cloud after transformation processing according to the transformation parameters.
[0050] It should be noted that the specific implementation process of this embodiment can be found in the specific implementation process described in the above method embodiments, and will not be repeated here.
[0051] The processing system of this invention executes a point cloud data registration method, optimizing the problem of low efficiency caused by too many redundant points, and improving registration accuracy and stability.
[0052] According to a third aspect of the present invention, a computer-readable storage medium stores a computer program that, when executed by a processor, implements the point cloud data registration method disclosed in any of the above embodiments.
[0053] Memory, as a non-transitory computer-readable storage medium, can be used to store non-transitory software programs and non-transitory computer-executable programs. Furthermore, memory may include high-speed random access memory, and may also include non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid-state storage device. In some embodiments, memory may optionally include memory remotely located relative to the processor, and these remote memories can be connected to the processor via a network. Examples of such networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.
[0054] The embodiments described in this application are for the purpose of more clearly illustrating the technical solutions of the embodiments of this application, and do not constitute a limitation on the technical solutions provided by the embodiments of this application. As those skilled in the art will know, with the evolution of technology and the emergence of new application scenarios, the technical solutions provided by the embodiments of this application are also applicable to similar technical problems.
[0055] Those skilled in the art will understand that the technical solutions shown in the figures do not constitute a limitation on the embodiments of this application, and may include more or fewer steps than shown, or combine certain steps, or different steps.
[0056] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs.
[0057] Those skilled in the art will understand that all or some of the steps in the methods disclosed above, as well as the functional modules / units in the systems and devices, can be implemented as software, firmware, hardware, or suitable combinations thereof.
[0058] The terms “first,” “second,” “third,” “fourth,” etc. (if present) in the specification and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms “comprising” and “having,” and any variations thereof, are intended to cover a non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0059] The preferred embodiments of the present application have been described above with reference to the accompanying drawings, but this does not limit the scope of the claims of the present application. Any modifications, equivalent substitutions, and improvements made by those skilled in the art without departing from the scope and substance of the embodiments of the present application shall be within the scope of the claims of the present application.
[0060] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0061] Although embodiments of the invention have been shown and described, those skilled in the art will understand that various changes, modifications, substitutions and alterations can be made to these embodiments without departing from the principles and spirit of the invention, the scope of which is defined by the claims and their equivalents.
Claims
1. A point cloud data registration method for stitching together any two sets of point cloud data, characterized in that, The two sets of point cloud data are the reference point cloud and the point cloud to be registered, respectively. The point cloud data registration methods include: Both the reference point cloud and the point cloud to be registered are voxelized to obtain multiple voxels with equal side lengths, where each voxel contains several discrete points. Geometric feature analysis was performed on each voxel of the reference point cloud and the point cloud to be registered, and voxels whose geometric features did not meet the feature conditions were removed. The key point selection step is performed on the remaining voxels in the reference point cloud and the point cloud to be registered. In the key point selection step, a spherical neighborhood is constructed for each discrete point in the voxel and the scattering matrix of the corresponding point set in the spherical neighborhood is calculated to obtain the scattering matrix eigenvalue. The local geometric saliency of the discrete point is judged based on the ratio relationship between the scattering matrix eigenvalues. The key points in the voxel are selected based on the level of local geometric saliency. Calculate the fast point feature histogram descriptor for each key point to obtain the feature descriptor vector for each key point. Calculate the descriptor similarity between each key point in the reference point cloud and each key point in the point cloud to be registered based on the feature descriptor vector. Pairwise match key points in the reference point cloud and the point cloud to be registered to form multiple key point pairs, where each key point in the reference point cloud matches only one key point in the point cloud to be registered. Construct connection relationships between each set of key point pairs, traverse the connection relationships between each key point pair, calculate the ratio of the point distance between any two sets of key point pairs in the reference point cloud and the point cloud to be registered to obtain the scale factor, and delete the connection relationships whose scale factors exceed the scale tolerance range. Construct a maximum clique among all keypoint pairs that maintain connectivity, wherein the maximum clique includes multiple keypoint pairs, and any keypoint pair in the maximum clique is connected to other keypoint pairs in the maximum clique. The transformation parameters of the point cloud to be registered relative to the reference point cloud are calculated using the least squares method based on the key point pairs in the maximum clique set. After the point cloud to be registered is transformed and processed according to the transformation parameters, it is stitched together with the reference point cloud. The process of constructing a spherical neighborhood for each discrete point within a voxel and calculating the scattering matrix of the corresponding point set within the spherical neighborhood to obtain the eigenvalues of the scattering matrix includes: The scattering matrix of discrete points in the spherical neighborhood is constructed as follows: ; in, To construct discrete points in a spherical neighborhood, For each element in the spherical neighborhood Adjacent discrete points, For each element in the spherical neighborhood The total number of adjacent discrete points, For the first The weight coefficients of adjacent discrete points, This is the transpose of the three-dimensional coordinate difference vector; Based on the scattering matrix, the eigenvalues of the first scattering matrix, representing the divergence in the three orthogonal directions, are derived. eigenvalues of the second scattering matrix and the eigenvalues of the third scattering matrix ,in, ; The process of determining the local geometric saliency of a discrete point based on the ratio between eigenvalues of the scattering matrix, and then selecting key points within a voxel based on the level of local geometric saliency, includes: Calculate the first characteristic ratio respectively The ratio of the second characteristic ; When the first characteristic ratio Greater than or equal to the first constraint threshold and the second feature ratio If the discrete points of the constructed spherical neighborhood are greater than or equal to the second constraint threshold, then the discrete points are highly identifiable discrete points. High-resolution discrete points within voxels are selected as keypoints.
2. The point cloud data registration method according to claim 1, characterized in that, The characteristic condition includes a planar characteristic index value greater than a planar characteristic threshold; The process of performing geometric feature analysis on each voxel of the reference point cloud and the point cloud to be registered, and removing voxels whose geometric features do not meet the feature conditions, includes: Calculate the covariance matrix of the point cloud within a voxel to obtain the first eigenvalues characterizing the degree of divergence of the point cloud in three orthogonal directions. Second eigenvalue and the third eigenvalue ,in, ; Calculate the plane characteristic index value = ; When the plane feature index value is greater than the plane feature threshold, the geometric features of the voxel satisfy at least one feature condition.
3. The point cloud data registration method according to claim 2, characterized in that, The feature condition also includes that the number of discrete points within a voxel is greater than a point number threshold. When the number of discrete points within a voxel is greater than the number of points threshold and the plane feature index value is greater than the plane feature threshold, the geometric features of the voxel satisfy the feature conditions. Voxels whose geometric features do not meet the feature conditions are removed, while voxels whose geometric features meet the feature conditions are retained.
4. The point cloud data registration method according to claim 1, characterized in that, The calculation of the fast point feature histogram descriptor for each key point to obtain the feature descriptor vector for each key point includes: A local coordinate reference frame is constructed for each key point. The local coordinate reference frame is as follows: ;in, As the key point, for Construct a spherical neighborhood for each element. Adjacent discrete points, Key point The normal vector; Based on the local coordinate reference frame of key points, three feature operators are calculated to jointly represent the local geometric relationship between each adjacent discrete point in the spherical neighborhood. The three feature operators are: ;in, To and The normal vectors of adjacent discrete points; The numerical ranges of the three feature operators are divided into multiple sub-intervals, and the number of points in each sub-interval corresponding to the numerical values of the feature operators of each adjacent discrete point is counted to obtain the feature descriptor vector.
5. The point cloud data registration method according to claim 4, characterized in that, The calculation of the descriptor similarity between each key point in the reference point cloud and each key point in the point cloud to be registered, based on the feature descriptor vector, includes: ,in, This represents the number of landing points in the k-th interval of the point cloud to be registered. The number of landing points in the k-th interval of the baseline point cloud. The lower the value, the higher the descriptor similarity; The process of pairwise matching of key points whose descriptor similarity meets the similarity condition between key points in the reference point cloud and key points in the point cloud to be registered to form multiple key point pairs includes: For each reference point cloud, the key points of the point cloud to be registered are selected with the highest descriptor similarity and matched to form multiple key point pairs.
6. The point cloud data registration method according to claim 1, characterized in that, The ratio of the distance between any two pairs of key points in the reference point cloud and the point cloud to be registered is calculated to obtain the scale factor, which includes: The two keypoint pairs are the first keypoint pair and the second keypoint pair, respectively. The first keypoint pair includes the first reference keypoint. and the first key point to be registered The second keypoint pair includes the second benchmark keypoint. Second registration key points ; Point distance ratio .
7. The point cloud data registration method according to claim 1, characterized in that, The transformation parameters include the rotation matrix. and translation vector The process of calculating the transformation parameters of the point cloud to be registered relative to the reference point cloud using the least squares method based on the key point pairs in the maximum clique includes: ; in, For the set of key points in the maximum clustered reference point cloud, This is the set of key points in the maximum cluster of point clouds to be registered. Calculate the rotation matrix and translation vector The transformation parameters are then obtained.
8. A processing system for processing the point cloud data registration method as described in any one of claims 1 to 7, characterized in that, include: The partitioning module is used to perform voxelization partitioning on both the reference point cloud and the point cloud to be registered to obtain multiple voxels with equal side lengths. The feature analysis and elimination module is used to perform geometric feature analysis on each voxel of the reference point cloud and the point cloud to be registered, and to eliminate voxels whose geometric features do not meet the feature conditions. The filtering module is used to perform key point selection steps on the remaining voxels in the reference point cloud and the point cloud to be registered, respectively. In the key point selection step, a spherical neighborhood is constructed for each discrete point in the voxel and the scattering matrix of the corresponding point set in the spherical neighborhood is calculated to obtain the scattering matrix eigenvalue. The local geometric saliency of the discrete point is judged according to the ratio relationship between the scattering matrix eigenvalues. The key points in the voxel are selected based on the level of local geometric saliency. The pairing module is used to calculate the fast point feature histogram descriptor of each key point to obtain the feature descriptor vector of each key point. Based on the feature descriptor vector, the descriptor similarity between each key point in the reference point cloud and each key point in the point cloud to be registered is calculated. The key points whose descriptor similarity meets the similarity condition between the key points in the reference point cloud and the key points in the point cloud to be registered are matched in pairs to form multiple key point pairs. The relationship building module is used to build connection relationships between each set of key point pairs, traverse the connection relationships between each key point pair, calculate the ratio of the point distance between any two sets of key point pairs in the reference point cloud and the point cloud to be registered to obtain the scale factor, and delete the connection relationships whose scale factors exceed the scale tolerance range. The search module is used to construct the largest clique among the key point pairs that maintain connections; The processing module is used to calculate the transformation parameters of the point cloud to be registered relative to the reference point cloud using the least squares method based on the key point pairs in the maximum clique set. The stitching module is used to stitch the point cloud to be registered with the reference point cloud after the point cloud has been transformed according to the transformation parameters.
9. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by the processor, it implements the point cloud data registration method according to any one of claims 1 to 7.