Point cloud registration methods, apparatus, electronic devices and storage media

CN122574045APending Publication Date: 2026-08-14ZHEJIANG TIDAL POWER TECH CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-06-02
Publication Date
2026-08-14

AI Technical Summary

Technical Problem

[0005]本发明提供一种点云配准方法、装置、电子设备及存储介质,用以解决现有技术中非编码点缺乏唯一标识导致传统特征匹配易受噪声及局部结构相似性干扰而产生误匹配,以及ICP算法在初始位姿不佳时极易陷入局部最优的技术缺陷,实现对无标识非编码点的高鲁棒性匹配与可靠的初始位姿求解,从而有效避免配准算法陷入局部最优,显著提升点云配准的精度、鲁棒性与收敛效率

Benefits of technology

第一,本发明通过计算第一非编码点、第二非编码点与同集合中其他非编码点之间的空间距离来生成距离特征向量,巧妙利用了刚体扫描过程中各个点之间相对空间位置恒定不变的几何规律。这种设计为原本长相一致、缺乏唯一标识的非编码点赋予了具有强平移和旋转不变性的特征标签,从根本上克服了传统依赖曲率或法向量等局部特征极易受环境噪声、弱纹理以及对称结构干扰的缺陷。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122574045A_ABST
    Figure CN122574045A_ABST
Patent Text Reader

Abstract

This invention provides a point cloud registration method, apparatus, electronic device, and storage medium, belonging to the field of image data processing technology. The method includes: obtaining distance feature vectors of non-coded points in the marker point sets of a source point cloud and a target point cloud, where the distance feature vectors are determined based on the spatial distance between non-coded points; determining an initial matching point pair based on the comparison results of the feature vectors; determining a set of matching point pairs between the two marker point sets using the initial matching point pairs as a reference; solving for an initial transformation matrix based on the set of matching point pairs; and performing fine registration processing on the source point cloud using the initial transformation matrix as the initial pose to obtain a fine transformation matrix and complete the registration. This invention solves the problem of unmarked non-coded points by constructing spatial distance features, and combines distance constraints to expand matching and solve for the initial pose for fine registration, effectively avoiding the algorithm getting trapped in local optima and improving the accuracy, robustness, and convergence efficiency of point cloud registration.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of image data processing technology, and in particular to a point cloud registration method, apparatus, electronic device, and storage medium. Background Technology

[0002] With the rapid development of 3D reconstruction, reverse engineering, and cultural relic digitization, multi-view point cloud acquisition is often used to obtain 3D data of target surfaces. After acquiring multi-view point cloud data, point cloud registration and matching are crucial foundational steps for constructing a complete 3D model. In actual scanning and measurement scenarios, non-coded points are often pasted on or around the target object's surface to assist registration. How to achieve high-precision and robust 3D point cloud registration using these non-coded points in complex scanning environments is a significant technical requirement in the current field of 3D point cloud data processing.

[0003] To meet the above requirements, existing technologies typically employ the following mainstream registration schemes: One type of scheme is based on geometric or image feature-based registration methods. These methods usually require extracting complex spatial geometric features such as local curvature and normal vectors of the point cloud, and combining them with algorithms such as Random Sample Consensus (RANSAC) for feature point matching to achieve point cloud stitching. Another type of scheme directly uses the Iterative Closest Point (ICP) algorithm, which calculates the transformation matrix by iteratively finding the nearest point pairs in the point cloud, thereby completing the registration of the point cloud data.

[0004] However, the aforementioned existing technologies have significant drawbacks in practical applications. First, registration schemes based on geometric or image features are highly susceptible to interference from factors such as point cloud acquisition noise and local structural similarity. In scenarios with weak textures, low curvature, or symmetrical structures, feature points exhibit extreme instability, often resulting in numerous mismatches and leading to low overall matching accuracy and poor robustness. Second, the convergence result of registration schemes directly employing the ICP algorithm is highly dependent on the initial spatial state of the two point clouds. When performing registration calculations with poor initial poses, the algorithm is prone to getting trapped in local optima rather than global optima, making it difficult to meet the practical requirements of high-precision 3D reconstruction. Summary of the Invention

[0005] This invention provides a point cloud registration method, apparatus, electronic device, and storage medium to address the shortcomings of existing technologies, such as the lack of unique identifiers for non-coded points leading to susceptibility to noise and local structural similarity interference in traditional feature matching, resulting in mismatches, and the ICP algorithm's tendency to get trapped in local optima when the initial pose is poor. The invention achieves highly robust matching of unidentified non-coded points and reliable initial pose solving, thereby effectively avoiding the registration algorithm from getting trapped in local optima and significantly improving the accuracy, robustness, and convergence efficiency of point cloud registration.

[0006] This invention provides a point cloud registration method, comprising: Obtain the first distance feature vector of each first non-coded point in the set of marker points of the source point cloud, and the second distance feature vector of each second non-coded point in the set of marker points of the target point cloud; Based on the comparison results between each of the first distance feature vectors and each of the second distance feature vectors, an initial matching point pair is determined between the set of marker points of the source point cloud and the set of marker points of the target point cloud; Using the initial matching point pairs as a reference, determine the set of matching point pairs between the set of marker points in the source point cloud and the set of marker points in the target point cloud; Based on the set of matching point pairs, solve for the initial transformation matrix between the source point cloud and the target point cloud; The initial transformation matrix is ​​used as the initial pose to perform fine registration on the source point cloud to obtain the fine transformation matrix and complete the point cloud registration. The first distance feature vector is determined based on the spatial distance between the first non-coded point and other first non-coded points in the set of marker points of the source point cloud, and the second distance feature vector is determined based on the spatial distance between the second non-coded point and other second non-coded points in the set of marker points of the target point cloud.

[0007] According to a point cloud registration method provided by the present invention, determining an initial matching point pair between the marker point set of the source point cloud and the marker point set of the target point cloud based on the comparison results between each first distance feature vector and each second distance feature vector includes: Select any first non-coded point from the set of marker points in the source point cloud as the first target non-coded point; Calculate the feature matching degree between the first distance feature vector of the first target non-coded point and the second distance feature vector of each second non-coded point in the set of marker points of the target point cloud; The second non-coded point corresponding to the highest feature matching degree is combined with the first target non-coded point to form the initial matching point pair.

[0008] According to a point cloud registration method provided by the present invention, the step of calculating the feature matching degree between the first distance feature vector of the first target non-coded point and the second distance feature vector of each second non-coded point in the set of marker points of the target point cloud includes: Each second distance feature vector in the set of marker points of the target point cloud is traversed and used as the second distance feature vector to be compared; Calculate the element-wise difference between each first feature value in the first distance feature vector and each second feature value in the second distance feature vector; The number of element differences whose absolute values ​​satisfy a preset distance threshold condition is counted, and the feature matching degree between the first distance feature vector and the second distance feature vector to be compared is determined based on the number.

[0009] According to a point cloud registration method provided by the present invention, the step of calculating the element-wise difference between each first feature value in the first distance feature vector and each second feature value in the second distance feature vector includes: Iterate through each of the first feature values ​​in the first distance feature vector and use it as the current first feature value; Calculate the element-wise differences between the current first feature value and each second feature value in the second distance feature vector to be compared in turn; In response to the absolute value of any of the calculated element differences being less than the preset distance threshold, the target matching count value is accumulated, the calculation of the remaining element differences corresponding to the current first feature value is terminated, and the traversal of the next first feature value in the first distance feature vector is triggered. In response to the completion of the first distance feature vector traversal, the target matching count value is determined as the number of element differences whose absolute values ​​satisfy a preset distance threshold condition.

[0010] According to a point cloud registration method provided by the present invention, the first distance feature vector is determined based on the following method: Calculate the spatial distance between the first non-coded point and each other first non-coded point in the set of marker points of the source point cloud; The calculated spatial distances are arranged according to a preset sorting rule to generate the first distance feature vector.

[0011] According to a point cloud registration method provided by the present invention, the step of determining a set of matching point pairs between the set of marker points of the source point cloud and the set of marker points of the target point cloud, using the initial matching point pairs as a reference, includes: Traverse the other first non-coded points in the set of marker points of the source point cloud as first non-coded points to be matched, and calculate the first relative distance between the first non-coded point to be matched and the first non-coded point in the initial matching point pair; Traverse the other second non-coded points in the set of marker points of the target point cloud as second non-coded points to be matched, and calculate the second relative distance between the second non-coded points to be matched and the second non-coded points in the initial matching point pair; In response to the absolute value of the difference between the first relative distance and the second relative distance satisfying the preset distance constraint condition, the corresponding first non-coded point to be matched and the second non-coded point to be matched are determined as a matching point pair with the same name and added to the matching point pair set.

[0012] According to a point cloud registration method provided by the present invention, the step of solving the initial transformation matrix between the source point cloud and the target point cloud based on the set of matching point pairs includes: Calculate the first centroid of each first non-coded point in the set of matching point pairs, and the second centroid of each second non-coded point; Based on the first coordinate difference between each first non-coded point and the first centroid, and the second coordinate difference between the corresponding second non-coded point and the second centroid, a covariance matrix is ​​constructed. Construct a target symmetric matrix based on each matrix element in the covariance matrix, and solve for the eigenvector corresponding to the largest eigenvalue in the target symmetric matrix, which is then used as the target rotation quaternion; The target rotation quaternion is converted into an initial rotation matrix, and the initial translation vector is calculated by combining the initial rotation matrix, the first centroid, and the second centroid. The initial transformation matrix is ​​constructed based on the initial rotation matrix and the initial translation vector.

[0013] According to a point cloud registration method provided by the present invention, the step of performing fine registration processing on the source point cloud using the initial transformation matrix as the initial pose to obtain a fine transformation matrix and complete the point cloud registration includes: The source point cloud is transformed using the current initial transformation matrix to obtain the transformed source point cloud. In the target point cloud, the closest corresponding point in space is found for each first non-coded point in the transformed source point cloud to construct an updated matching point pair; The current optimal transformation matrix is ​​solved based on the updated matching point pairs, and the registration error is calculated. In response to the registration error not meeting the preset accuracy threshold and the number of iterations not reaching the maximum number of iterations, the current optimal transformation matrix is ​​used as the initial transformation matrix for the next iteration, and the process returns to the step of performing coordinate transformation on the source point cloud using the current initial transformation matrix. In response to the registration error meeting the preset accuracy threshold or the number of iterations reaching the maximum number of iterations, the iteration is terminated, and the corresponding current optimal transformation matrix is ​​determined as the fine transformation matrix.

[0014] The present invention also provides a point cloud registration device, comprising the following modules: The feature acquisition module is used to acquire the first distance feature vector of each first non-coded point in the set of marker points of the source point cloud, and the second distance feature vector of each second non-coded point in the set of marker points of the target point cloud. The initial matching module is used to determine an initial matching point pair between the set of marker points of the source point cloud and the set of marker points of the target point cloud based on the comparison results between each of the first distance feature vectors and each of the second distance feature vectors. An extended matching module is used to determine a set of matching point pairs between the set of marker points in the source point cloud and the set of marker points in the target point cloud, with the initial matching point pairs as a reference. The matrix solving module is used to solve the initial transformation matrix between the source point cloud and the target point cloud based on the set of matching point pairs; The fine registration module is used to perform fine registration processing on the source point cloud using the initial transformation matrix as the initial pose, so as to obtain the fine transformation matrix and complete the point cloud registration. The first distance feature vector is determined based on the spatial distance between the first non-coded point and other first non-coded points in the set of marker points of the source point cloud, and the second distance feature vector is determined based on the spatial distance between the second non-coded point and other second non-coded points in the set of marker points of the target point cloud.

[0015] The present invention also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the point cloud registration method as described above.

[0016] The present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the point cloud registration method as described above.

[0017] The point cloud registration method, apparatus, electronic device, and storage medium provided by this invention have at least the following beneficial effects: First, this invention generates distance feature vectors by calculating the spatial distances between the first non-coded point, the second non-coded point, and other non-coded points in the same set, cleverly utilizing the geometric principle that the relative spatial positions of points remain constant during rigid body scanning. This design endows non-coded points, which originally look identical and lack unique identifiers, with feature labels that have strong translational and rotational invariance, fundamentally overcoming the shortcomings of traditional methods that rely on local features such as curvature or normal vectors, which are easily affected by environmental noise, weak textures, and symmetrical structures.

[0018] Second, after finding reliable initial matching point pairs by comparing distance feature vectors, the traditional strategy of global blind search is not adopted. Instead, the initial matching point pair is used as a spatial reference anchor point to extend the constraint between the source point cloud and the target point cloud, thereby obtaining the full set of matching point pairs. This distance-constrained extended matching mechanism can not only quickly locate the true corresponding points with extremely low computational cost, but also effectively filter out mismatch interference caused by local structural similarity, greatly improving the fault tolerance and robustness of the coarse registration stage, and providing sufficient constraints for the subsequent solution of the transformation matrix.

[0019] Third, considering that traditional ICP algorithms are highly dependent on the initial spatial state of the point cloud, and poor pose can easily lead to registration failure, this invention uses the aforementioned set of matching point pairs to solve for the initial transformation matrix, and then uses it again as the initial pose input for the ICP algorithm. This cascade mechanism provides the ICP algorithm with high-quality initial values ​​that are extremely close to the true solution, completely eliminating the risk of the ICP algorithm getting trapped in local optima. This not only fundamentally guarantees the ultra-high accuracy of global registration of 3D point clouds, but also significantly reduces the number of iterative trials within the ICP algorithm due to the high accuracy of the initial values, thus significantly improving the convergence efficiency of the entire registration system. Attached Figure Description

[0020] To more clearly illustrate the technical solutions in this invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this invention. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.

[0021] Figure 1 This is a flowchart illustrating the point cloud registration method provided by the present invention.

[0022] Figure 2 This is a schematic diagram of the circular non-coded points provided by the present invention.

[0023] Figure 3 This is a schematic diagram of the distribution of the set of marker points provided by the present invention.

[0024] Figure 4This is a schematic diagram of the process for determining the initial matching point pair provided by the present invention.

[0025] Figure 5 This is a schematic diagram of the feature matching degree calculation process provided by the present invention.

[0026] Figure 6 This is a schematic diagram of the process for determining the number of element differences provided by the present invention.

[0027] Figure 7 This is a schematic diagram of the process for determining the set of matching point pairs provided by the present invention.

[0028] Figure 8 This is a schematic diagram of the process for determining the initial transformation matrix provided by the present invention.

[0029] Figure 9 This is a schematic diagram of the process for determining the fine transformation matrix based on the ICP algorithm provided by the present invention.

[0030] Figure 10 This is a schematic diagram of the point cloud registration device provided by the present invention.

[0031] Figure 11 This is a schematic diagram of the structure of the electronic device provided by the present invention. Detailed Implementation

[0032] To make the objectives, technical solutions, and advantages of this invention clearer, the technical solutions of this invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this invention. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without creative effort are within the scope of protection of this invention.

[0033] It should be noted that, in the description of this invention, the terms "comprising," "including," or any other variations thereof are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element. Those skilled in the art will understand the specific meaning of the above terms in this invention according to the specific circumstances.

[0034] The terms "first," "second," etc., used in this invention are used to distinguish similar objects, not to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that embodiments of the invention can be implemented in orders other than those illustrated or described herein, and the objects distinguished by "first," "second," etc., are generally of the same class, without limiting the number of objects; for example, a first object can be one or more. Furthermore, "and / or" indicates at least one of the connected objects, and the character " / " generally indicates that the preceding and following objects are in an "or" relationship.

[0035] Before detailing the specific implementation methods, the execution entities that may be involved in the subsequent embodiments of the present invention will first be described. The point cloud registration method provided in the embodiments of the present invention can be executed by various electronic devices with data processing and computing capabilities, such as computers, servers, or the control motherboard inside a 3D scanner. In the description of the subsequent embodiments, a registration processor will be used as an example of the execution entity.

[0036] The following is combined with Figures 1-11 This invention describes the point cloud registration method, apparatus, electronic device, and storage medium provided by the present invention.

[0037] Figure 1 This is a flowchart illustrating the point cloud registration method provided by the present invention, as shown below. Figure 1 As shown, including but not limited to the following steps: Step 11: Obtain the first distance feature vector of each first non-coded point in the set of marker points of the source point cloud, and the second distance feature vector of each second non-coded point in the set of marker points of the target point cloud.

[0038] In fields such as 3D reconstruction and reverse engineering, it is often necessary to acquire 3D data of the target surface through multi-view acquisition. Among them, the source point cloud and the target point cloud are 3D point cloud data fragments acquired from different views or different scanning batches.

[0039] To facilitate point cloud registration, marker points are typically affixed to or around an object as a reference point during object scanning. In this embodiment, these marker points are referred to as non-coded points. Figure 2 This is a schematic diagram of the circular non-coded points provided by the present invention. Figure 2Part (a) shows a matte non-coded point without light source illumination, and part (b) shows a matte non-coded point with light source illumination. In one optional embodiment, the non-coded point can be a circular marker with a white solid circle embedded in a black solid ring. This non-coded point has a clear color distinction, making it easy to identify and extract in an image or point cloud. It should be noted that this is only one possible method for non-coded points. In practical applications, non-coded points can also be pure white solid circles, highly reflective spherical markers, or naturally formed, easily extractable feature points on the surface of the target object that do not possess any artificially coded markings such as numbers or patterns.

[0040] Because these non-coded points lack unique identification information, they are often completely identical in appearance. In order to distinguish these identical first and second non-coded points in point cloud registration, this embodiment will construct unique geometric features for them. Specifically, it can utilize the feature that the position of each non-coded point on the rigid target object is fixed, and its relative spatial distance relationship with other surrounding non-coded points is also fixed.

[0041] Specifically, the first distance feature vector is determined based on the spatial distance between the first non-coded point and other first non-coded points in the set of marker points of the source point cloud, and the second distance feature vector is determined based on the spatial distance between the second non-coded point and other second non-coded points in the set of marker points of the target point cloud. The spatial distance here can be Euclidean distance, but in other optional embodiments, distance metrics that can characterize three-dimensional spatial positional relationships, such as Manhattan distance or Chebyshev distance, can also be used.

[0042] Figure 3 This is a schematic diagram of the distribution of the set of marker points provided by the present invention, combined with... Figure 3 As shown, taking a first non-coded point p in the set of marker points in the source point cloud as an example, this embodiment calculates the spatial distance between the first non-coded point p and other first non-coded points in the set of marker points, for example... Figure 3 The first non-coded point p is constructed by combining the values ​​of d1, d2, d3, d4, etc., and based on these spatial distance values, a unique first distance feature vector is constructed.

[0043] Suppose the set of marker points in the source point cloud contains four first non-coded points: A, B, C, and D. To construct the first distance feature vector of the first non-coded point A, the linear spatial distances from A to B (e.g., 10 mm), A to C (e.g., 5 mm), and A to D (e.g., 15 mm) are measured. These spatial distance values ​​are then combined, for example, in ascending order, to obtain a list of distance values ​​[5, 10, 15]. Alternatively, in other implementations, a descending order or an unordered array based on a specific spatial topology can be used. This list constitutes the first distance feature vector of the first non-coded point A. Since the relative positions of the non-coded points on the object are fixed, this first distance feature vector constitutes the latent identity feature of the first non-coded point A.

[0044] Similarly, in this embodiment, for each second non-coded point in the set of marker points of the target point cloud, the second distance feature vector corresponding to each second non-coded point is determined by using its spatial distance from other second non-coded points.

[0045] Step 12: Based on the comparison results between each of the first distance feature vectors and each of the second distance feature vectors, determine an initial matching point pair between the set of marker points of the source point cloud and the set of marker points of the target point cloud.

[0046] After obtaining all the first distance feature vectors and second distance feature vectors, this embodiment will cross-compare the first distance feature vectors in the source point cloud with the second distance feature vectors in the target point cloud, and obtain the comparison result by evaluating the degree of difference or similarity of the spatial distance values ​​contained in the two distance feature vectors.

[0047] In practical applications, due to certain hardware errors or environmental noise during point cloud acquisition and 3D reconstruction, the comparison method can be a matching counting method based on threshold tolerance, or it can be a method of calculating the cosine similarity or correlation coefficient between vectors. This embodiment does not make specific limitations on this.

[0048] Continuing from the above embodiments, this embodiment searches for a second distance feature vector in the target point cloud's set of marker points that matches the first distance feature vector [5, 10, 15] of the first non-coded point A. Taking tolerance matching as an example, if the absolute value of the difference between the value in the second distance feature vector of a second non-coded point A' in the target point cloud's set of marker points and the corresponding value in [5, 10, 15] is extremely small, for example, all less than a preset distance threshold T, it can be determined that the most similar corresponding point has been found, and the first non-coded point A and the second non-coded point A' are established as the initial matching point pair.

[0049] Step 13: Using the initial matching point pairs as a reference, determine the set of matching point pairs between the set of marker points in the source point cloud and the set of marker points in the target point cloud.

[0050] After obtaining a reliable initial pair of matching points, they can be used as reference anchor points for spatial alignment. Utilizing the spatial constraint law that the relative distance between points in a rigid structure remains unchanged, the remaining non-coded points in the marker point sets of the source point cloud and the target point cloud are extended for matching.

[0051] Continuing with the above embodiments, based on the determination that the first non-coded point A in the source point cloud's marker point set and the second non-coded point A' in the target point cloud are initial matching point pairs, in order to find the corresponding point of the first non-coded point B in the source point cloud's marker point set in the target point cloud's marker point set, the spatial distance between the first non-coded point A and the first non-coded point B (assumed to be 10mm) can be extracted. Then, a second non-coded point B' is searched in the target point cloud's marker point set, and it is determined whether the absolute value of the difference between the distance from the first non-coded point A' to the second non-coded point B' and the distance from the first non-coded point A to the second non-coded point B satisfies a preset distance constraint condition (e.g., less than the aforementioned distance threshold T). The second non-coded point B' that satisfies this distance constraint condition is the same-name matching point of the first non-coded point B. Through this traversal expansion method using anchor points as references and spatial distance as constraints, it is possible to quickly expand from single-point matching and find all same-name non-coded point pairs, ultimately converging to form a complete set of matching point pairs.

[0052] Step 14: Based on the set of matching point pairs, solve for the initial transformation matrix between the source point cloud and the target point cloud.

[0053] Generally, the initial transformation matrix contains the initial rotation matrix and translation vector required to align the source point cloud with the target point cloud in a three-dimensional coordinate system. In this embodiment, the relative spatial position relationship between the two sets of marker points can be calculated using a spatial pose analytical algorithm based on the set of matching point pairs obtained in step 13.

[0054] As an alternative implementation, the quaternion method (e.g., calculating the centroids of the two sets of points, constructing the covariance matrix after centroid removal, and then solving for the quaternion representing the optimal rotation to obtain the transformation matrix) can be used to solve the problem. Alternatively, the Singular Value Decomposition (SVD) algorithm can be used to calculate the initial transformation matrix.

[0055] Step 15: Use the initial transformation matrix as the initial pose to perform fine registration processing on the source point cloud to obtain the fine transformation matrix and complete the point cloud registration.

[0056] As an optional embodiment, the initial transformation matrix is ​​used as the initial pose of the Iterative Closest Point (ICP) algorithm to transform the source point cloud, so as to obtain a fine transformation matrix and complete the point cloud registration.

[0057] The ICP algorithm is a fine-grained registration algorithm that relies on minimizing the distance between point sets. Its convergence and computation speed are highly dependent on the initial alignment state of the point cloud. If the initial pose deviation is too large, not only will the number of iterations increase significantly, but it is also very easy to get trapped in local optima. In this embodiment, the initial transformation matrix obtained in step 14 is directly used as the initial pose input for the iterative nearest point algorithm. Under this high-precision initial spatial state, the coordinates of the source point cloud are fine-tuned using the iterative nearest point algorithm. By continuously finding the nearest point and minimizing the registration error, until the error is less than a preset accuracy threshold or the maximum number of iterations is reached, the fine-grained transformation matrix is ​​finally output, achieving accurate stitching and registration between the source point cloud and the target point cloud.

[0058] As another optional embodiment, the initial transformation matrix is ​​used as the initial pose of the Normal Distributions Transform (NDT) algorithm to transform the source point cloud, so as to obtain a fine transformation matrix and complete the point cloud registration.

[0059] The Normal Distribution Transform (NDT) algorithm achieves registration by dividing the target point cloud into a voxel grid and calculating the normal probability density function of the point cloud within each grid. Compared to directly finding the nearest point, the NDT algorithm has better tolerance for local errors. Considering that the optimization process of the NDT algorithm usually relies on nonlinear optimization algorithms, its probability of finding the global optimum and its iterative convergence speed are also highly dependent on the accuracy of the initial pose. Therefore, in this embodiment, by using the initial transformation matrix as the initial pose input of the NDT algorithm, the source point cloud can fall within the effective probability density range of the corresponding voxels of the target point cloud in the initial stage, thereby significantly reducing the number of iterations of nonlinear optimization and effectively avoiding probability density function matching failures due to excessive initial pose deviations, thus enabling fast and stable output of the fine transformation matrix.

[0060] It should be noted that, in addition to the two methods mentioned above for achieving fine registration of point clouds, the point cloud registration method provided by this invention can also employ other fine point cloud registration algorithms that rely on or benefit from the initial spatial state, such as variants of the Generalized Iterative Closest Point (G-ICP) algorithm and the Point-to-Plane ICP algorithm. In practical applications, as long as this high-quality initial transformation matrix is ​​used as the initial input pose for any subsequent fine registration algorithm, the risk of the algorithm getting trapped in local optima can be significantly eliminated and the convergence efficiency can be greatly improved. These replacements and modifications of conventional fine registration algorithms based on the initial transformation matrix of this invention do not depart from the essential scope of this invention.

[0061] The point cloud registration method provided by this invention constructs a distance feature vector characterizing the global topological structure of uncoded points by utilizing the geometric law that the relative positions of non-coded points on a rigid body surface remain unchanged in space. This cleverly endows unlabeled non-coded points with unique features possessing translation and rotation invariance, overcoming the shortcomings of traditional methods that are susceptible to local noise and structural similarity interference. Furthermore, using reliable initial matching point pairs determined by feature vector comparison as spatial reference anchor points, the rigid body distance constraint mechanism is used to expand the matching to the entire set. This significantly reduces the computational overhead of global blind search while effectively filtering out mismatched pairs, ensuring the accuracy of the matching point set. Finally, a reliable initial transformation matrix is ​​calculated using a high-quality set of matching point pairs and directly injected into the iterative nearest point algorithm as a priori initial pose. This fundamentally prevents fine registration algorithms such as the ICP algorithm from getting trapped in local optima due to blind initial search space. While ensuring globally optimal high-precision 3D reconstruction, it greatly reduces the number of algorithm iterations and trials, resulting in a significant improvement in the robustness, convergence efficiency, and noise resistance of the entire point cloud registration system.

[0062] Based on the above embodiments, in order to further improve the accuracy and reliability of the initial matching, this embodiment provides a detailed description of the specific process of determining a pair of initial matching points between the source point cloud's set of marker points and the target point cloud's set of marker points based on the comparison results between each of the first distance feature vectors and each of the second distance feature vectors.

[0063] Figure 4 This is a schematic diagram of the process for determining the initial matching point pair provided by the present invention, as shown below. Figure 4 As shown, specifically including but not limited to: Step 41: Select any first non-coded point from the set of marker points in the source point cloud as the first target non-coded point.

[0064] In the set of marker points in the source point cloud, in order to find a reliable reference benchmark for subsequent extended matching, one of the first non-coded points can be selected randomly or according to specific spatial rules. For example, the first non-coded point located in the central region of the source point cloud can be selected first and used as the matching target for finding the same point in the target point cloud, i.e., the first target non-coded point.

[0065] Step 42: Calculate the feature matching degree between the first distance feature vector of the first target non-coded point and the second distance feature vector of each second non-coded point in the set of marker points of the target point cloud.

[0066] To accurately measure the similarity between two distance feature vectors, this embodiment introduces the feature matching degree as a metric. Feature matching degree is a metric used to quantitatively evaluate the degree of similarity between a first distance feature vector and a second distance feature vector in terms of numerical distribution, spatial topological differences, etc.

[0067] In practice, the first distance feature vector of the first target non-coding point (e.g., first non-coding point A), which serves as the baseline, is sequentially compared with the second distance feature vector of each second non-coding point (e.g., second non-coding point A', second non-coding point B', etc.) in the target point cloud's set of marker points. There are various methods for calculating the feature matching degree. For example, based on a set tolerance threshold, the number of differences between the two feature vectors that satisfy the condition can be counted to determine the matching degree; the higher the number of counts, the higher the feature matching degree. Alternatively, the cosine similarity algorithm can be used to calculate the similarity score of the two feature vectors in multidimensional space as the feature matching degree. Through the above traversal calculation, the similarity quantification result between the first target non-coding point and all candidate second non-coding points in the target point cloud's set of marker points can be obtained.

[0068] Step 43: The second non-coded point corresponding to the highest feature matching degree is combined with the first target non-coded point to form the initial matching point pair.

[0069] After traversing and calculating the set of marker points in the target point cloud, the calculated feature matching scores can be compared and sorted. The highest feature matching score means that the corresponding second non-coding point best matches the first target non-coding point in the Euclidean distance distribution of the local spatial topology, with the highest confidence that they are true corresponding points and the lowest probability of mismatch. Therefore, the second non-coding point (let's call it the second non-coding point A') corresponding to the highest feature matching score can be directly extracted and paired with the first target non-coding point (the first non-coding point A) to construct a highly reliable initial matching point pair.

[0070] The point cloud registration method provided in this embodiment selects a single first target non-coded point as an anchor point candidate from the set of marker points in the source point cloud. It innovatively introduces the feature matching degree as a quantitative evaluation index, transforming the abstract similarity comparison between the first and second distance feature vectors into an intuitive and precise numerical calculation process. This allows for the rigorous selection of the pair of non-coded points with the highest feature matching degree as the initial matching point pair. This quantitative matching mechanism, which involves global traversal comparison and selection based on merit, minimizes the misleading effects of local geometric similarity or point cloud scanning noise, ensuring that the selected initial matching point pair has extremely high accuracy and confidence, and completely avoiding the cascading amplification of errors caused by mismatches from the source.

[0071] Based on the above embodiments, in order to further clarify the specific quantitative calculation logic of feature matching degree, this embodiment elaborates in detail the specific process of calculating the feature matching degree between the first distance feature vector of the first target non-coded point and the second distance feature vector of each second non-coded point in the set of marker points of the target point cloud.

[0072] Figure 5 This is a schematic diagram of the feature matching degree calculation process provided by the present invention, as shown below. Figure 5 As shown, the main steps include, but are not limited to, the following: Step 51: Traverse each second distance feature vector in the set of marker points of the target point cloud as the second distance feature vector to be compared.

[0073] After determining the first target non-coded point and its first distance feature vector in the set of marker points of the source point cloud, this embodiment provides a method for finding the best matching item in the set of marker points of the target point cloud. Specifically, the second distance feature vector corresponding to each second non-coded point in the set of marker points of the target point cloud is selected sequentially and used as the target object for the current similarity comparison, i.e., the second distance feature vector to be compared. Through this traversal mechanism, it is ensured that every second non-coded point in the set of marker points of the target point cloud can participate in the selection of feature matching, avoiding the omission of potential homonymous point pairs.

[0074] Step 52: Calculate the element-wise difference between each first feature value in the first distance feature vector and each second feature value in the second distance feature vector.

[0075] Both the first distance feature vector and the second distance feature vector to be compared are essentially lists or arrays composed of multiple numerical values ​​representing spatial distances. Each spatial distance value in the first distance feature vector is defined as a first feature value, and each spatial distance value in the second distance feature vector to be compared is defined as a second feature value. To accurately quantify the difference between the two distance feature vectors, each first feature value in the first distance feature vector can be subtracted from each second feature value in the second distance feature vector to obtain the element-wise difference.

[0076] Suppose the first distance feature vector of the first target non-coded point A is [5, 10, 15], and a certain second distance feature vector to be compared in the target point cloud is [4.9, 10.1, 15.2]. First, extract the first feature value "5" from the first distance feature vector, and perform a difference operation with each second feature value 4.9, 10.1, and 15.2 in the second distance feature vector to be compared to obtain the corresponding multiple element differences. Then, perform the same difference traversal operation on the next first feature value "10".

[0077] Step 53: Count the number of element differences whose absolute values ​​satisfy the preset distance threshold condition, so as to determine the feature matching degree between the first distance feature vector and the second distance feature vector to be compared based on the number.

[0078] This embodiment takes into account that hardware errors of 3D scanning equipment and environmental noise are inevitably introduced during the actual acquisition and 3D reconstruction of point cloud data. Therefore, when comparing spatial distance features, an absolute equality condition is not used. Instead, a distance range boundary for error tolerance is preset, i.e., a preset distance threshold condition (e.g., a preset distance threshold T). After calculating the above element differences, it is determined whether the absolute value of these element differences is less than the preset distance threshold T. If the absolute value of a certain element difference meets the preset distance threshold condition, it means that a highly similar distance value pair has been found within the tolerance range. At this time, the number of matches that meet the condition is accumulated. Finally, the total number of element differences that meet the condition is directly determined as the feature matching degree characterizing the similarity between the two distance feature vectors. The larger this accumulated number, the more spatial distance values ​​overlap between the two feature vectors within the error tolerance range, and the higher the feature matching degree that they are true corresponding points.

[0079] The point cloud registration method provided in this embodiment introduces a tolerance statistical mechanism that combines element difference calculation with preset distance threshold conditions during feature vector comparison. This transforms the traditional absolutely precise matching into feature matching based on soft threshold counting. This threshold counting-based tolerance matching method fully considers and absorbs the inherent equipment errors and environmental noise that are difficult to avoid during point cloud acquisition and 3D data reconstruction. It greatly improves the fault tolerance rate and noise resistance of the underlying feature value comparison process, effectively avoiding the situation where real non-coded points with the same name are misjudged and missed by the system due to individual small distance data deviations. Thus, it significantly enhances the scene adaptability and robustness of the entire point cloud registration system from the underlying algorithm logic level.

[0080] Figure 6 This is a schematic diagram of the process for determining the number of element differences provided by the present invention. To further clarify the specific calculation logic for the number of element differences whose absolute values ​​satisfy the preset distance threshold condition in step 53 above, this embodiment combines... Figure 6 The process is described in detail, specifically including the following steps: Iterate through each of the first feature values ​​in the first distance feature vector and use it as the current first feature value.

[0081] In this step, all the first feature values ​​contained in the first distance feature vector, which is the first target non-encoding point, are taken as the overall traversal objects to be processed. One first feature value is extracted from the first distance feature vector in turn and marked as the current first feature value. The comparison calculation process for the current round is then entered.

[0082] Assuming the first distance feature vector of the first non-coded point A is [5, 10, 15], the electronic device first extracts the first feature value "5" as the current first feature value, and then performs the subsequent difference calculation process for it.

[0083] Calculate the element-wise differences between the current first feature value and each second feature value in the second distance feature vector to be compared.

[0084] After determining the current first feature value, it is subtracted one by one from each of the second feature values ​​in the second distance feature vector to be compared, thus obtaining the element-wise difference between the current first feature value and each second feature value. The current first feature value is "5", and the second distance feature vector to be compared is [4.9, 10.1, 15.2]. Thus, the element-wise differences are calculated sequentially as |5-4.9|=0.1, |5-10.1|=5.1, |5-15.2|=10.2, etc.

[0085] In response to the absolute value of any of the calculated element differences being less than the preset distance threshold, the target matching count value is accumulated, the calculation of the remaining element differences corresponding to the current first feature value is terminated, and the traversal of the next first feature value in the first distance feature vector is triggered.

[0086] During the process of calculating the difference of each element in the current first feature value, it is determined in real time whether the absolute value of the difference of each element obtained by calculation is less than the preset distance threshold T. Once the absolute value of the difference of an element is found to satisfy the condition of being less than the preset distance threshold T during the comparison process, it is determined that there is a matching item in the second distance feature vector to be compared that is spatially close to the current first feature value.

[0087] At this point, the following two operations can be performed: First, increment the target matching count maintained for the second distance feature vector to be compared in this round; second, directly terminate the calculation of the difference between the current first feature value and the remaining second feature values ​​in the second distance feature vector to be compared, and stop calculating the difference between the current first feature value and the remaining second feature values ​​that have not yet been compared. This early termination and exit mechanism ensures that even if multiple second feature values ​​in the second distance feature vector to be compared are close to the current first feature value within the threshold range, the target matching count will only be incremented once, effectively avoiding duplicate counting of the same first feature value due to multiple approximate matches, and ensuring the accuracy of the statistical results.

[0088] Subsequently, the operation of extracting the next first feature value from the first distance feature vector is triggered, and it is set as the new current first feature value. Then, the difference calculation process for the second distance feature vector to be compared is re-entered.

[0089] Assuming the distance threshold T is set to 0.5mm, when the absolute value of the element difference between the current first feature value "5" and the second feature value "4.9" is 0.1, since it is less than the preset distance threshold T, it is determined that the preset distance threshold condition is met. Therefore, the target matching count value is incremented once (the count value becomes 1), and the calculation of the difference between the current first feature value "5" and the remaining second feature values ​​"10.1" and "15.2" in the second distance feature vector to be compared is terminated. Then, the traversal of the next first feature value "10" in the first distance feature vector is triggered.

[0090] In this embodiment, the same comparison process is performed on the first feature value "10". The calculation yields |10-4.9|=5.1 and |10-10.1|=0.1, satisfying the condition. The target matching count is incremented again (the count becomes 2), and further comparison of "15.2" is terminated, triggering the traversal of the first feature value "15". Finally, when comparing the first feature value "15" with "15.2", |15-15.2|=0.2, satisfying the condition, and the target matching count is finally incremented to 3.

[0091] In response to the completion of the first distance feature vector traversal, the target matching count value is determined as the number of element differences whose absolute values ​​satisfy a preset distance threshold condition.

[0092] After calculating and counting the differences between all the first feature values ​​in the first distance feature vector and the second distance feature vector to be compared, the current round of traversal is considered complete. At this point, the target matching count value accumulated after the traversal is directly determined as the total number of element differences between the first distance feature vector and the second distance feature vector to be compared whose absolute values ​​satisfy the preset distance threshold condition, and this total number is used as the feature matching degree to measure the similarity between the two feature vectors in step 53.

[0093] For example, after traversing the second distance feature vector [4.9, 10.1, 15.2] to be compared, the target matching count is 3, that is, the feature matching degree is 3. Subsequently, the entire process of steps 51 to 53 above is re-executed for the second distance feature vector of the next second non-coded point in the target point cloud's set of marker points, until all second non-coded points in the target point cloud's set of marker points have been traversed, thereby obtaining the target matching count value corresponding to each second non-coded point, and selecting the second non-coded point with the largest target matching count value as the same-name matching point of the first target non-coded point, forming an initial matching point pair with it.

[0094] The point cloud registration method provided in this embodiment introduces an early termination mechanism that exits upon a hit during the element difference comparison process. This not only strictly ensures that each first feature value contributes to the second distance feature vector to be compared at most once, eliminating the artificially high feature matching degree caused by repeated accumulation and maintaining the objectivity and accuracy of the quantitative evaluation results, but also, this early termination strategy, which immediately terminates the comparison between the current first feature value and the remaining second feature values ​​upon discovering that the condition is met, effectively reduces the number of unnecessary difference calculations in each traversal while ensuring the completeness and accuracy of the matching count results. This makes the entire feature matching degree calculation process more computationally efficient while maintaining statistical accuracy.

[0095] Based on the above embodiments, in order to further illustrate the specific generation method of the first distance feature vector, this embodiment elaborates on the determination process of the first distance feature vector, specifically including the following steps: First, calculate the spatial distance between the first non-coded point and each other first non-coded point in the set of marker points of the source point cloud.

[0096] Before constructing the first distance feature vector of the first non-coded point, the spatial distance information between the first non-coded point and all other first non-coded points in the same set of marker points is collected comprehensively and completely, centered on the first non-coded point to be processed. Specifically, for any first non-coded point in the set of marker points of the source point cloud, every other first non-coded point in the set except the first non-coded point itself is traversed, and the spatial distance from the first non-coded point to each of the other first non-coded points is calculated one by one.

[0097] There are various ways to calculate spatial distance. As one optional implementation, Euclidean distance (i.e., the straight-line distance between two points) can be used. Other optional implementations may use distance metrics that can effectively characterize three-dimensional spatial positional relationships, such as Manhattan distance or Chebyshev distance. Different distance metrics have different computational characteristics, and can be flexibly selected according to the accuracy requirements and computational resource conditions in the actual application scenario.

[0098] Assume the source point cloud's set of marker points contains four first non-coded points: A, B, C, and D. Taking the construction of a first distance feature vector for the first non-coded point A as an example, this embodiment will sequentially calculate: the spatial distance from the first non-coded point A to the first non-coded point B (e.g., calculated to be 10mm), the spatial distance from the first non-coded point A to the first non-coded point C (e.g., calculated to be 5mm), and the spatial distance from the first non-coded point A to the first non-coded point D (e.g., calculated to be 15mm).

[0099] It should be noted that the calculation scope in this embodiment is strictly limited to all other first non-coded points in the set of marker points except for the first non-coded point A itself; that is, the zero distance value from the first non-coded point A to itself is not calculated. After the above traversal calculation, a set of original spatial distance values ​​closely related to the global spatial topological position of the first non-coded point A in the set of marker points can be obtained, namely {10mm, 5mm, 15mm}.

[0100] At the same time, the exact same calculation process is performed on each second non-coded point in the target point cloud's set of marker points. For any second non-coded point A' in the target point cloud's set of marker points, the same process is repeated for all other second non-coded points in the set except for A' itself, calculating and collecting the spatial distance between A' and each other second non-coded point to form the corresponding original set of spatial distance values.

[0101] Furthermore, the calculated spatial distances are arranged according to a preset sorting rule to generate the first distance feature vector.

[0102] After obtaining the aforementioned set of original spatial distance values, these values ​​can be structured and arranged according to certain rules, thereby transforming them into first distance feature vectors that can be directly compared. There are several possible preset sorting rules. As one optional implementation, an ascending order of spatial distance values ​​from smallest to largest can be used. In other optional implementations, a descending order of spatial distance values ​​from largest to smallest can also be used; furthermore, other rules can be employed, such as arranging the first non-coded points in a fixed numerical order within the marker point set. It is important to emphasize that as long as the source point cloud marker point set and the target point cloud marker point set use the same preset sorting rules when constructing their respective distance feature vectors, it can be guaranteed that the distance feature vectors between corresponding points have a direct element-by-element comparison correspondence, and the choice of specific rules is not limited.

[0103] If the preset sorting rule is to sort the spatial distance values ​​in ascending order, the original spatial distance value set {10mm, 5mm, 15mm} corresponding to the first non-coded point A is rearranged in ascending order, resulting in an ordered list of distance values, i.e., the first distance feature vector V. pi =[5, 10, 15]. This first distance feature vector fully encodes the global spatial position features of the first non-coded point A in the entire source point cloud marker set. Following the same process, corresponding first distance feature vectors are generated for the first non-coded points B, C, and D respectively. Simultaneously, the same calculation and arrangement process is performed on each second non-coded point in the target point cloud marker set, sequentially generating the second distance feature vector V corresponding to each second non-coded point. qj This provides a symmetrical and comparable data foundation for subsequent feature matching.

[0104] It is worth noting that after completing the construction of the first distance feature vector / second distance feature vector of all non-coded points in the marker point set of the source point cloud and the target point cloud, this embodiment can start the initial matching point screening process based on threshold tolerance counting, that is, the complete process of the aforementioned steps 51 to 53, as well as the early termination counting mechanism of jumping out upon hit in step 52.

[0105] Taking the aforementioned embodiment as an example, the first distance feature vector V of the first non-coded point A is... pi =[5, 10, 15] are sequentially compared with the second distance feature vector V of each second non-coded point in the target point cloud marker point set. qj Perform element-wise tolerance counting comparison to obtain the target matching count value C corresponding to each second non-coded point in the target point cloud. j The target match count value C j The largest second non-coding point is the initial matching point of the first non-coding point A, and the two together constitute the initial matching point pair.

[0106] The point cloud registration method provided in this embodiment arranges all calculated spatial distance values ​​according to a preset sorting rule, transforming the original distance values, which were originally disordered due to differences in traversal order, into an ordered sequence with a fixed data structure. This ensures that the first and second non-coded points with the same name maintain the same numerical arrangement in their generated distance feature vectors, regardless of the order in which they are traversed and calculated in their respective marker point sets. This allows the two feature vectors to be directly compared element-wise based on their corresponding positions, greatly simplifying the calculation logic of subsequent matching metric evaluation and effectively avoiding the matching failure problem caused by misalignment of the feature vector structure of points with the same name due to different traversal orders.

[0107] Figure 7 This is a schematic diagram of the process for determining the set of matching point pairs provided by the present invention. Based on the above embodiments, in order to further clarify the specific implementation process of determining the set of matching point pairs between the source point cloud's marker point set and the target point cloud's marker point set with the initial matching point pairs as a reference, this embodiment describes the detailed steps of this extended matching, as follows: Figure 7 As shown, the main steps include, but are not limited to, the following: Step 71: Traverse the other first non-coded points in the set of marker points of the source point cloud as first non-coded points to be matched, and calculate the first relative distance between the first non-coded point to be matched and the first non-coded point in the initial matching point pair.

[0108] After determining the initial matching point pair through the aforementioned steps, the electronic device will use this initial matching point pair as the spatial reference anchor point for the entire extended matching process. Specifically, the electronic device will sequentially select other first non-coded points from the set of marker points in the source point cloud, excluding the first non-coded point in the initial matching point pair, as the first non-coded points to be matched in the current round whose corresponding relationships need to be confirmed. For each first non-coded point to be matched, the electronic device will calculate the spatial distance between the first non-coded point to be matched and the first non-coded point in the initial matching point pair, and define this distance as the first relative distance.

[0109] Assume the initial matching point pair is the first non-coded point A and the second non-coded point A'. In this embodiment, the first non-coded point B, the first non-coded point C, and the first non-coded point D are sequentially extracted from the set of marker points in the source point cloud as the first non-coded points to be matched. Taking the first non-coded point B as an example, the spatial distance between the first non-coded point B and the first non-coded point A in the initial matching point pair is calculated and denoted as d(BA) = 10mm. This 10mm is determined as the first relative distance corresponding to the current first non-coded point B to be matched.

[0110] Step 72: Traverse the other second non-coded points in the set of marker points of the target point cloud as second non-coded points to be matched, and calculate the second relative distance between the second non-coded points to be matched and the second non-coded points in the initial matching point pair.

[0111] Meanwhile, in the set of marker points in the target point cloud, this embodiment sequentially selects other second non-coded points besides the second non-coded points in the initial matching point pair as candidate second non-coded points to be matched. For each second non-coded point to be matched, the spatial distance between the second non-coded point to be matched and the second non-coded point in the initial matching point pair is also calculated, and this distance is defined as the second relative distance.

[0112] Suppose that second non-coded points B', C', D', etc., are sequentially extracted from the set of marker points in the target point cloud as second non-coded points to be matched. Taking the second non-coded point B' as an example, the spatial distance between the second non-coded point B' and the second non-coded point A' in the initial matching point pair is first calculated, i.e., d(B'-A'), and this calculation result is determined as the second relative distance corresponding to the second non-coded point B'.

[0113] Step 73: In response to the absolute value of the difference between the first relative distance and the second relative distance satisfying the preset distance constraint condition, the corresponding first non-coded point to be matched and the second non-coded point to be matched are determined as a matching point pair with the same name and added to the matching point pair set.

[0114] After obtaining the first relative distance corresponding to the first non-coded point to be matched and the second relative distance corresponding to the second non-coded point to be matched, the difference between the two can be calculated, and it can be determined whether the absolute value of the difference satisfies the preset distance constraint condition.

[0115] The preset distance constraint can be specifically set as follows: the absolute value of the difference between the first relative distance and the second relative distance is less than a preset threshold T, that is, the following constraint is satisfied: |d(qq j ) - d(pp i )| <T; Where p is the first non-coded point to be matched, p i Let q be the first non-coded point in the initial matching point pair, and let q be the second non-coded point to be matched. j For the second non-coded point in the initial matching point pair, d(pp) i ) represents the first relative distance, d(qq) j ) represents the second relative distance, and T is the same preset threshold as in the previous steps.

[0116] The physical meaning of this constraint stems from a core characteristic of rigid body geometry: during multi-view 3D scanning of the same target object, the scanned object itself is a rigid body. Therefore, regardless of the angle from which the point cloud is acquired, the real spatial distance between each non-coded point on the object's surface remains constant. This means that if the first non-coded point p to be matched is the first non-coded point p in the initial matching point pair... i The distance between them, and the second non-coded point q in the initial matching point pair. j If the distance between the two points is very close within the tolerance T (the absolute value of the difference is less than T), then it can be determined that the first non-coded point p to be matched and the second non-coded point q to be matched are the corresponding acquisition points of the same physical marker point on the surface of the same target object under different perspectives, that is, the two are matching points with the same name.

[0117] Finally, in response to the aforementioned preset distance constraint being satisfied, the first non-coded point to be matched and its corresponding second non-coded point to be matched are determined as a pair of matching points with the same name, and added to the set of matching point pairs being constructed. Conversely, if the absolute value of the difference does not satisfy the preset distance constraint, it means that the second non-coded point to be matched is not a point with the same name as the first non-coded point to be matched, and this candidate point is skipped, and the process continues to traverse other second non-coded points to be matched in the set of marker points of the target point cloud.

[0118] Assuming a preset threshold T of 0.5mm, taking the first non-coded point B (corresponding to p in the above formula) as an example, its first relative distance d(BA) = 10mm. For each candidate second non-coded point to be matched in the set of marker points in the target point cloud, calculate the second relative distance between the candidate point and the second non-coded point A', and determine whether the absolute value of the difference between the candidate point and 10mm is less than T = 0.5mm. Assuming the second relative distance between the second non-coded point B' and the second non-coded point A' is d(B'-A') = 10.2mm, then |d(B'-A')-d(BA)| = |10.2-10| = 0.2mm < T, which satisfies the preset distance constraint condition. That is, the first non-coded point B and the second non-coded point B' are determined as a matching point pair with the same name, and (first non-coded point B, second non-coded point B') is added to the set of matching point pairs. If the second relative distance d(C'-A') between a second non-coded point C' and a second non-coded point A' in the target point cloud's set of marker points is 7mm, then |7-10|=3mm>T, which does not meet the preset distance constraint condition. Therefore, the second non-coded point C' will not form a matching point pair with the first non-coded point B.

[0119] Repeat the above traversal and constraint judgment process, and perform extended matching on all other first non-coded points in the source point cloud's marker point set one by one, until all pairs of points with the same name {(pk, qk)} between the source point cloud's marker point set and the target point cloud's marker point set are found, and then summarize them to form a complete set of matching point pairs. , where N is the number of matching pairs with the same name.

[0120] The point cloud registration method provided in this embodiment, after obtaining a reliable initial matching point pair, fully utilizes the geometric constraint principle that the spatial distance between non-coded points in a rigid structure remains constant. Using the initial matching point pair as a spatial reference anchor point, it determines the same-name relationship by checking whether the difference between the distance from the first non-coded point to be matched to the first non-coded point of the anchor point and the distance from the second non-coded point to be matched to the second non-coded point of the anchor point satisfies the tolerance constraint. Compared with the traditional approach of calculating all feature vectors pairwise for a global blind search, this extended matching mechanism, based on anchor points and using distance constraints as the filtering condition, only requires simple distance difference calculation to quickly and accurately filter out the true same-name non-coded points from the candidate set, significantly reducing the computational complexity of full matching. Simultaneously, the introduction of the tolerance threshold T effectively absorbs the unavoidable measurement errors during multi-view point cloud acquisition, effectively improving the noise resistance and robustness of the extended matching stage, ensuring the accuracy of the final constructed set of matching point pairs.

[0121] Figure 8 This is a schematic diagram of the process for determining the initial transformation matrix provided by the present invention, as shown below. Figure 8As shown, the step of solving the initial transformation matrix between the source point cloud and the target point cloud based on the set of matching point pairs includes, but is not limited to, the following steps: Step 81: Calculate the first centroid of each first non-coded point in the set of matching point pairs, and the second centroid of each second non-coded point; Step 82: Construct a covariance matrix based on the first coordinate difference between each first non-coded point and the first centroid, and the corresponding second coordinate difference between the second non-coded point and the second centroid; Step 83: Construct a target symmetric matrix based on each matrix element in the covariance matrix, and solve for the eigenvector corresponding to the largest eigenvalue in the target symmetric matrix, which is used as the target rotation quaternion; Step 84: Convert the target rotation quaternion into an initial rotation matrix, and calculate the initial translation vector by combining the initial rotation matrix, the first centroid, and the second centroid. Step 85: Construct the initial transformation matrix based on the initial rotation matrix and the initial translation vector.

[0122] This embodiment obtains the set of matching point pairs in any way provided in the above embodiments. Then, the quaternion method can be used to solve for the initial rotation matrix R and translation vector T between the two sets of marker points, specifically including: 1) Calculate the first centroid of each first non-coded point. And the second centroid of each second non-coding point : ; .

[0123] Where N is the total number of matching point pairs in the matching point pair set; k is the index number of the matching point pair; The coordinate vector of the kth first non-coded point in the set of matching points in the source point cloud; For the target point cloud, match the set of points with The coordinate vector of the corresponding k-th second non-coded point.

[0124] 2) Construct the covariance matrix H: .

[0125] Wherein, the covariance matrix The size is 3 3 is the matrix obtained by subtracting the centroid of the source point cloud and the target point cloud respectively (which is equivalent to moving the centers of the two sets of point clouds to the origin for alignment), reflecting the correlation between the two sets of point clouds in three-dimensional space structure. ,..., These are the specific element values ​​within the covariance matrix H.

[0126] 3) Define the trace of the covariance matrix H as: Then the quaternion matrix Q is a 4x4 symmetric matrix, specifically represented as: .

[0127] Find the eigenvector corresponding to the largest eigenvalue of the quaternion matrix Q. This eigenvector is the optimal target rotation quaternion. ,in It is the target rotation quaternion The four components.

[0128] 4) Rotate the target quaternion Convert to an initial rotation matrix R, and calculate the translation vector T: ; ; Thus, the initial transformation matrix (R, T) is obtained.

[0129] Figure 9 This is a flowchart illustrating the process of determining the fine transformation matrix based on the ICP algorithm provided by the present invention, as shown below. Figure 9 As shown, taking the execution of the ICP algorithm as an example, the process mentioned earlier in this invention, which uses the initial transformation matrix as the initial pose to perform fine registration on the source point cloud to obtain the fine transformation matrix and complete the point cloud registration, mainly includes, but is not limited to, the following steps: The source point cloud is transformed using the current initial transformation matrix to obtain the transformed source point cloud.

[0130] After obtaining the initial transformation matrix, which consists of the initial rotation matrix and the initial translation vector, it is used as the starting point of the ICP algorithm. Specifically, the current initial transformation matrix is ​​directly applied to the original source point cloud, performing spatial coordinate rotation and translation operations on each 3D coordinate point in the source point cloud. Mathematically, assuming the source point cloud is P, the initial rotation matrix is ​​R, and the initial translation vector is T, then by calculating... The source point cloud is moved to a spatial position closer to the target point cloud, thus obtaining the transformed source point cloud after initial spatial alignment. .

[0131] Furthermore, in the target point cloud, the closest corresponding point in space is found for each first non-coded point in the transformed source point cloud to construct an updated matching point pair.

[0132] Considering that the initial coarse registration may contain minute rigid body deformations or rounding errors, the transformed source and target point clouds do not achieve absolute perfect overlap. Therefore, this embodiment will perform a global registration of the target point cloud, targeting the transformed source point cloud... For each point in the source point cloud, find the nearest target point cloud data point in the current 3D space along a straight-line distance (such as Euclidean distance). Assume a point in the transformed source point cloud is... The electronic device finds the point closest to the target point in the target point cloud Q. All these new point pairs established based on the shortest spatial distance are aggregated to construct a completely new set of updated matching point pairs, namely, a set consisting of multiple {p'k, q'k}, denoted as q'k. .

[0133] Then, based on the updated matching point pairs, the current optimal transformation matrix is ​​solved, and the registration error is calculated. After constructing the new set of updated matching point pairs, optimization algorithms such as the least squares method can be used to calculate the transformation parameters that minimize the sum of squared distances between all the updated matching point pairs, thereby solving for the current optimal transformation matrix (assuming it includes the rotation matrix) in this iteration. Translation vector ).

[0134] Simultaneously, the registration error under the current alignment state will be further calculated to quantitatively assess the degree of overlap between the two point clouds. Specifically, the average of the sum of squares of the spatial distance differences between all updated matching point pairs can be calculated. If the total number of updated matching point pairs is M, the calculation logic for the registration error E is the error of each point pair. The sum of the squares of the points divided by the total number M gives the registration error E, which objectively reflects the registration accuracy between the source and target point clouds at the current pose. Its expression is: .

[0135] One possible implementation is that, in response to the registration error not meeting a preset accuracy threshold and the number of iterations not reaching the maximum number of iterations, the current optimal transformation matrix is ​​used as the initial transformation matrix for the next iteration, and the step of performing coordinate transformation on the source point cloud using the current initial transformation matrix is ​​returned.

[0136] After calculating the registration error, it is compared with a pre-set accuracy threshold, and the algorithm's internal iteration counter is checked to see if it has reached the preset maximum number of iterations. If the registration error is still greater than or equal to the preset accuracy threshold, and the current number of iterations has not been exhausted, it indicates that there is still room for further optimization of the point cloud overlap. At this point, the currently optimal transformation matrix (R', T') is superimposed on the historical transformation matrix to update the current global transformation state (i.e., the updated rotation matrix is ​​R'R, and the updated translation vector is R'T+T'). This superimposed and updated matrix is ​​used as the initial transformation matrix input for the next iteration. The algorithm is then triggered to return to the first step, using the updated matrix to re-transform the source point cloud coordinates and find the nearest point again. This iterative optimization is repeated in this manner.

[0137] Another possible implementation is to terminate the iteration in response to the registration error meeting the preset accuracy threshold or the number of iterations reaching the maximum number of iterations, and to determine the corresponding current optimal transformation matrix as the fine transformation matrix.

[0138] As the iteration process continues, the transformed source point cloud will infinitely approximate the target point cloud. Once it is determined that the currently calculated registration error has decreased to less than the preset accuracy threshold, or the maximum number of iterations is triggered to prevent the algorithm from getting stuck in an infinite loop, the entire iteration process will terminate. At this point, the final stable optimal transformation matrix, which contains the global cumulative rotation and translation parameters, can be extracted and designated as the fine transformation matrix. This fine transformation matrix can then be used to complete high-precision 3D registration between the source and target point clouds.

[0139] The point cloud registration method provided in this embodiment directly injects the high-quality initial transformation matrix, obtained from reliable distance features and spatial expansion constraints, into the iterative nearest-point algorithm as the prior initial pose. This completely changes the predicament of traditional iterative nearest-point algorithms, which are prone to getting trapped in local optima due to blind initialization. Guided by this prior initial value that is extremely close to the global optimum, the iterative closed loop of finding the nearest point, solving using the least squares method, and error feedback continuously fine-tunes the point cloud pose. Combined with a dual safety termination mechanism of accuracy threshold and maximum number of iterations, this not only ensures that the 3D point cloud data can be seamlessly stitched together with high precision, but also greatly reduces the number of iterative trial and error rounds for finding the nearest point and calculating errors due to the extremely high accuracy of the prior initial value.

[0140] Figure 10 This is a schematic diagram of the point cloud registration device provided by the present invention, as shown below. Figure 10 As shown, it mainly includes, but is not limited to: The feature acquisition module 101 is used to acquire the first distance feature vector of each first non-coded point in the set of marker points of the source point cloud, and the second distance feature vector of each second non-coded point in the set of marker points of the target point cloud. The initial matching module 102 is used to determine an initial matching point pair between the set of marker points of the source point cloud and the set of marker points of the target point cloud based on the comparison results between each of the first distance feature vectors and each of the second distance feature vectors. The extended matching module 103 is used to determine the set of matching point pairs between the set of marker points of the source point cloud and the set of marker points of the target point cloud, with the initial matching point pairs as a reference. The matrix solving module 104 is used to solve the initial transformation matrix between the source point cloud and the target point cloud based on the set of matching point pairs; The fine registration module 105 is used to perform fine registration processing on the source point cloud using the initial transformation matrix as the initial pose, so as to obtain the fine transformation matrix and complete the point cloud registration. The first distance feature vector is determined based on the spatial distance between the first non-coded point and other first non-coded points in the set of marker points of the source point cloud, and the second distance feature vector is determined based on the spatial distance between the second non-coded point and other second non-coded points in the set of marker points of the target point cloud.

[0141] It should be noted that the point cloud registration device provided by the present invention can execute the point cloud registration method described in any of the above embodiments during specific operation, which will not be elaborated in this embodiment.

[0142] The point cloud registration device provided by this invention utilizes the geometric principle that the relative positions of non-coded points on a rigid body surface remain unchanged in space to construct a distance feature vector characterizing its global topological structure. This cleverly endows unmarked non-coded points with unique features possessing translational and rotational invariance, overcoming the shortcomings of traditional methods that are susceptible to local noise and structural similarity interference. Furthermore, using reliable initial matching point pairs determined by feature vector comparison as spatial reference anchor points, the device expands the matching to the entire set using a rigid body distance constraint mechanism. This significantly reduces the computational overhead of global blind search while effectively filtering out mismatched pairs, ensuring the accuracy of the matching point set. Finally, a reliable initial transformation matrix is ​​calculated using a high-quality set of matching point pairs and directly injected into the iterative nearest point algorithm as a priori initial pose. This fundamentally prevents the ICP algorithm from getting trapped in local optima due to blind initial search space. While ensuring globally optimal high-precision 3D reconstruction, it greatly reduces the number of algorithm iterations and trials, resulting in a significant improvement in the robustness, convergence efficiency, and noise resistance of the entire point cloud registration system.

[0143] Figure 11 This is a schematic diagram of the structure of the electronic device provided by the present invention, such as... Figure 11 As shown, the electronic device may include: a processor 110, a communications interface 120, a memory 130, and a communications bus 140, wherein the processor 110, the communications interface 120, and the memory 130 communicate with each other through the communications bus 140. The processor 110 can call logical instructions in the memory 130 to execute a point cloud registration method, which includes: obtaining a first distance feature vector of each first non-coded point in the marker point set of the source point cloud and a second distance feature vector of each second non-coded point in the marker point set of the target point cloud; determining an initial matching point pair between the marker point set of the source point cloud and the marker point set of the target point cloud based on the comparison results between each first distance feature vector and each second distance feature vector; determining a matching point pair set between the marker point set of the source point cloud and the marker point set of the target point cloud with reference to the initial matching point pair; solving for an initial transformation matrix between the source point cloud and the target point cloud based on the matching point pair set; and performing fine registration processing on the source point cloud using the initial transformation matrix as the initial pose to obtain a fine transformation matrix and complete the point cloud registration.

[0144] Furthermore, the logical instructions in the aforementioned memory 130 can be implemented as software functional units and, when sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, essentially, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0145] On the other hand, the present invention also provides a computer program product, the computer program product including a computer program stored on a non-transitory computer-readable storage medium, the computer program including program instructions, when the program instructions are executed by a computer, the computer is able to execute the point cloud registration method provided in the above embodiments, the method including: obtaining a first distance feature vector of each first non-coded point in the set of marker points of the source point cloud, and a second distance feature vector of each second non-coded point in the set of marker points of the target point cloud; determining an initial matching point pair between the set of marker points of the source point cloud and the set of marker points of the target point cloud based on the comparison results between each first distance feature vector and each second distance feature vector; determining a matching point pair set between the set of marker points of the source point cloud and the set of marker points of the target point cloud with reference to the initial matching point pair; solving for an initial transformation matrix between the source point cloud and the target point cloud according to the matching point pair set; and performing fine registration processing on the source point cloud using the initial transformation matrix as the initial pose to obtain a fine transformation matrix and complete the point cloud registration.

[0146] In another aspect, the present invention also provides a non-transitory computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the point cloud registration method provided in the above embodiments. The method includes: obtaining a first distance feature vector for each first non-coded point in a set of marker points of a source point cloud, and a second distance feature vector for each second non-coded point in a set of marker points of a target point cloud; determining an initial matching point pair between the set of marker points of the source point cloud and the set of marker points of the target point cloud based on comparison results between the respective first distance feature vectors and the respective second distance feature vectors; determining a set of matching point pairs between the set of marker points of the source point cloud and the set of marker points of the target point cloud, using the initial matching point pairs as a reference; solving for an initial transformation matrix between the source point cloud and the target point cloud based on the set of matching point pairs; and performing fine registration processing on the source point cloud using the initial transformation matrix as an initial pose to obtain a fine transformation matrix and complete point cloud registration.

[0147] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; 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. Those skilled in the art can understand and implement this without any creative effort.

[0148] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in the various embodiments or some parts of the embodiments.

[0149] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A point cloud registration method, characterized in that, include: Obtain the first distance feature vector of each first non-coded point in the set of marker points of the source point cloud, and the second distance feature vector of each second non-coded point in the set of marker points of the target point cloud; Based on the comparison results between each of the first distance feature vectors and each of the second distance feature vectors, an initial matching point pair is determined between the set of marker points of the source point cloud and the set of marker points of the target point cloud; Using the initial matching point pairs as a reference, determine the set of matching point pairs between the set of marker points in the source point cloud and the set of marker points in the target point cloud; Based on the set of matching point pairs, solve for the initial transformation matrix between the source point cloud and the target point cloud; The initial transformation matrix is ​​used as the initial pose to perform fine registration on the source point cloud to obtain the fine transformation matrix and complete the point cloud registration. The first distance feature vector is determined based on the spatial distance between the first non-coded point and other first non-coded points in the set of marker points of the source point cloud, and the second distance feature vector is determined based on the spatial distance between the second non-coded point and other second non-coded points in the set of marker points of the target point cloud.

2. The point cloud registration method according to claim 1, characterized in that, The step of determining an initial matching point pair between the source point cloud's set of marker points and the target point cloud's set of marker points based on the comparison results between each of the first distance feature vectors and each of the second distance feature vectors includes: Select any first non-coded point from the set of marker points in the source point cloud as the first target non-coded point; Calculate the feature matching degree between the first distance feature vector of the first target non-coded point and the second distance feature vector of each second non-coded point in the set of marker points of the target point cloud; The second non-coded point corresponding to the highest feature matching degree is combined with the first target non-coded point to form the initial matching point pair.

3. The point cloud registration method according to claim 2, characterized in that, The step of calculating the feature matching degree between the first distance feature vector of the first target non-coded point and the second distance feature vector of each second non-coded point in the set of marker points of the target point cloud includes: Each second distance feature vector in the set of marker points of the target point cloud is traversed and used as the second distance feature vector to be compared; Calculate the element-wise difference between each first feature value in the first distance feature vector and each second feature value in the second distance feature vector; The number of element differences whose absolute values ​​satisfy a preset distance threshold condition is counted, and the feature matching degree between the first distance feature vector and the second distance feature vector to be compared is determined based on the number.

4. The point cloud registration method according to claim 3, characterized in that, The step of calculating the element-wise difference between each first feature value in the first distance feature vector and each second feature value in the second distance feature vector includes: Iterate through each of the first feature values ​​in the first distance feature vector and use it as the current first feature value; Calculate the element-wise differences between the current first feature value and each second feature value in the second distance feature vector to be compared in turn; In response to the absolute value of any of the calculated element differences being less than the preset distance threshold, the target matching count is incremented, the calculation of the remaining element differences corresponding to the current first feature value is terminated, and the traversal of the next first feature value in the first distance feature vector is triggered. In response to the completion of the first distance feature vector traversal, the target matching count value is determined as the number of element differences whose absolute values ​​satisfy a preset distance threshold condition.

5. The point cloud registration method according to claim 1, characterized in that, The first distance feature vector is determined based on the following method: Calculate the spatial distance between the first non-coded point and each other first non-coded point in the set of marker points of the source point cloud; The calculated spatial distances are arranged according to a preset sorting rule to generate the first distance feature vector.

6. The point cloud registration method according to claim 1, characterized in that, The step of determining the set of matching point pairs between the set of marker points in the source point cloud and the set of marker points in the target point cloud, with reference to the initial matching point pairs, includes: Traverse the other first non-coded points in the set of marker points of the source point cloud as first non-coded points to be matched, and calculate the first relative distance between the first non-coded point to be matched and the first non-coded point in the initial matching point pair; Traverse the other second non-coded points in the set of marker points of the target point cloud as second non-coded points to be matched, and calculate the second relative distance between the second non-coded points to be matched and the second non-coded points in the initial matching point pair; In response to the absolute value of the difference between the first relative distance and the second relative distance satisfying the preset distance constraint condition, the corresponding first non-coded point to be matched and the second non-coded point to be matched are determined as a matching point pair with the same name and added to the matching point pair set.

7. The point cloud registration method according to claim 1, characterized in that, The step of solving the initial transformation matrix between the source point cloud and the target point cloud based on the set of matching point pairs includes: Calculate the first centroid of each first non-coded point in the set of matching point pairs, and the second centroid of each second non-coded point; Based on the first coordinate difference between each first non-coded point and the first centroid, and the second coordinate difference between the corresponding second non-coded point and the second centroid, a covariance matrix is ​​constructed. Construct a target symmetric matrix based on each matrix element in the covariance matrix, and solve for the eigenvector corresponding to the largest eigenvalue in the target symmetric matrix, which is then used as the target rotation quaternion; The target rotation quaternion is converted into an initial rotation matrix, and the initial translation vector is calculated by combining the initial rotation matrix, the first centroid, and the second centroid. The initial transformation matrix is ​​constructed based on the initial rotation matrix and the initial translation vector.

8. The point cloud registration method according to claim 1, characterized in that, The step of using the initial transformation matrix as the initial pose to perform fine registration processing on the source point cloud to obtain a fine transformation matrix and complete the point cloud registration includes: The source point cloud is transformed using the current initial transformation matrix to obtain the transformed source point cloud. In the target point cloud, the closest corresponding point in space is found for each first non-coded point in the transformed source point cloud to construct an updated matching point pair; The current optimal transformation matrix is ​​solved based on the updated matching point pairs, and the registration error is calculated. In response to the registration error not meeting the preset accuracy threshold and the number of iterations not reaching the maximum number of iterations, the current optimal transformation matrix is ​​used as the initial transformation matrix for the next iteration, and the process returns to the step of performing coordinate transformation on the source point cloud using the current initial transformation matrix. In response to the registration error meeting the preset accuracy threshold or the number of iterations reaching the maximum number of iterations, the iteration is terminated, and the corresponding current optimal transformation matrix is ​​determined as the fine transformation matrix.

9. A point cloud registration device, characterized in that, include: The feature acquisition module is used to acquire the first distance feature vector of each first non-coded point in the set of marker points of the source point cloud, and the second distance feature vector of each second non-coded point in the set of marker points of the target point cloud. The initial matching module is used to determine an initial matching point pair between the set of marker points of the source point cloud and the set of marker points of the target point cloud based on the comparison results between each of the first distance feature vectors and each of the second distance feature vectors. An extended matching module is used to determine a set of matching point pairs between the set of marker points in the source point cloud and the set of marker points in the target point cloud, with the initial matching point pairs as a reference. The matrix solving module is used to solve the initial transformation matrix between the source point cloud and the target point cloud based on the set of matching point pairs; The fine registration module is used to perform fine registration processing on the source point cloud using the initial transformation matrix as the initial pose, so as to obtain the fine transformation matrix and complete the point cloud registration. The first distance feature vector is determined based on the spatial distance between the first non-coded point and other first non-coded points in the set of marker points of the source point cloud, and the second distance feature vector is determined based on the spatial distance between the second non-coded point and other second non-coded points in the set of marker points of the target point cloud.

10. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the point cloud registration method as described in any one of claims 1 to 8.

11. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the point cloud registration method as described in any one of claims 1 to 8.