Point cloud registration method, device, readable storage medium and program product

By mapping point clouds to pre-shaped space and performing transformation measurements, the problem of poor point cloud registration robustness in the existing technology is solved, efficient point cloud registration under complex conditions is achieved, and the accuracy of registration is improved. robustness.

CN118781166BActive Publication Date: 2024-12-31SHENZHEN UNIV
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411269818.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-09-11
Publication Date
2024-12-31
Estimated Expiration
2044-09-11

AI Technical Summary

Technical Problem

Existing point cloud registration methods are prone to falling into local optimization under complex conditions, resulting in poor robustness and difficulty in effectively dealing with problems such as pose consistency, geometric feature alignment, scale normalization, sampling density differences and data defect completion.

Method used

By mapping the source point cloud and the target point cloud into the pre-shape space, transforming and measuring using the transformation matrix, reducing the scale and displacement differences, posing differences are measured based on the global shape of the pre-shape space, and complex conditions are processed using parallel computing methods , improve the robustness of point cloud registration.

Benefits of technology

Point cloud registration under complex conditions is realized, the robustness and accuracy of point cloud registration is improved, scale and displacement differences are effectively handled, and robustness to noise and data defects is enhanced.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118781166B_ABST
    Figure CN118781166B_ABST
Patent Text Reader

Abstract

The present application relates to a point cloud registration method, device, readable storage medium and program product, the method comprising: obtaining a source point cloud and a target point cloud to be registered; mapping the source point cloud to a first image point set in a pre-shaped space, and mapping the target point cloud to a second image point set in the pre-shaped space; transforming the first image point set based on a transformation matrix to obtain a transformed point set corresponding to the first image point set; measuring the posture difference between the transformed point set and the second image point set to obtain a measurement value; determining a target transformation matrix based on a transformation matrix that meets a preset measurement value condition; and registering the source point cloud to the target point cloud according to the target transformation matrix. The present application can improve the robustness of point cloud registration.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of computer graphics, and in particular to a point cloud registration method, apparatus, computer equipment, computer-readable storage medium, and computer program product. Background Art

[0002] This section is intended to provide a background or context to implementations of the embodiments of the invention as set forth in the claims and detailed description. No description herein is admitted to be prior art by inclusion in this section.

[0003] Point cloud registration calculation has always been a key and difficult problem in the field of 3D point cloud applications. Related methods are widely used in model reconstruction, autonomous driving, target tracking, simultaneous localization and mapping (SLAM) and derivative applications. The main goal of point cloud registration calculation is to establish the correspondence between multiple scanned point cloud copies facing the same semantic object, which requires solving multiple practical problems such as posture consistency, geometric feature alignment, scale normalization, sampling density differences, data defect completion and noise processing.

[0004] Some methods establish specific registration methods for specific conditions, which can easily cause the registration calculation to fall into local optimality under complex conditions, resulting in large errors, and thus poor robustness of point cloud registration. Summary of the invention

[0005] Based on this, it is necessary to provide a point cloud registration method, apparatus, computer equipment, computer-readable storage medium and computer program product that can improve the robustness of point cloud registration in response to the above technical problems.

[0006] In a first aspect, the present application provides a point cloud registration method, comprising:

[0007] Obtain the source point cloud and target point cloud to be registered;

[0008] Mapping the source point cloud into a first image point set in a pre-shape space, and mapping the target point cloud into a second image point set in the pre-shape space;

[0009] Transform the first image point set based on a transformation matrix to obtain a transformation point set corresponding to the first image point set;

[0010] Measuring the posture difference between the transformation point set and the second image point set to obtain a measurement value;

[0011] Determine a target transformation matrix based on the transformation matrix that satisfies a preset metric value condition;

[0012] The source point cloud is registered to the target point cloud according to the target transformation matrix.

[0013] In one of the embodiments, transforming the first image point set based on the transformation matrix to obtain a transformation point set corresponding to the first image point set includes: obtaining a rotation transformation candidate set, wherein the rotation transformation candidate set includes multiple rotation transformation matrices; performing a rotation transformation on the first image point set according to the rotation transformation matrix to obtain a transformation point set corresponding to the first image point set;

[0014] Determining a target transformation matrix based on a transformation matrix that meets a preset metric value condition includes: determining a rotation transformation matrix corresponding to a minimum metric value as a target rotation matrix; and determining a target transformation matrix based on the target rotation matrix.

[0015] In one of the embodiments, performing a rotation transformation on the first image point set according to the rotation transformation matrix to obtain a transformation point set corresponding to the first image point set comprises: determining an optimization matrix of the rotation transformation matrix by a nearest point iteration method, and optimizing the rotation transformation matrix according to the optimization matrix; performing a rotation transformation on the first image point set according to the optimized rotation transformation matrix to obtain a transformation point set corresponding to the first image point set;

[0016] The determining a target transformation matrix based on the target rotation matrix comprises: determining a target transformation matrix based on the target rotation matrix and an optimization matrix of the target rotation matrix.

[0017] In one of the embodiments, performing a rotation transformation on the first image point set according to the optimized rotation transformation matrix to obtain a transformation point set corresponding to the first image point set includes: obtaining a center position search set, wherein the center position search set includes a plurality of center displacement vectors; transforming the first image point set according to the center displacement vector and the optimized rotation transformation matrix to obtain a transformation point set corresponding to the first image point set;

[0018] The determining of the target transformation matrix based on the target rotation matrix and the optimization matrix of the target rotation matrix includes: determining the center displacement vector corresponding to the minimum metric value as the target displacement vector; and determining the target transformation matrix based on the target rotation matrix, the optimization matrix of the target rotation matrix and the target displacement vector.

[0019] In one embodiment, mapping the source point cloud to a first image point set in a preset shape space and mapping the target point cloud to a second image point set in the preset shape space includes: obtaining a first point set of the source point cloud and a second point set of the target point cloud; determining a first midpoint of the first point set and a second midpoint of the second point set; performing a scale transformation on the source point cloud according to a set of distances from each point in the first point set to the first midpoint in combination with the scale of the source point cloud to obtain the first image point set; performing a scale transformation on the target point cloud according to a set of distances from each point in the second point set to the second midpoint in combination with the scale of the target point cloud to obtain the second image point set.

[0020] In one embodiment, the obtaining of a first point set of a source point cloud and the obtaining of a second point set of a target point cloud include: constructing a spherical space including the source point cloud and the target point cloud, and dividing the spherical space into a plurality of sub-regions based on different pitch angles; sampling the source point cloud in each sub-region according to a preset sampling condition and a preset sampling order, and constructing a first point set of the source point cloud according to the sampling points of the source point cloud obtained from the plurality of sub-regions; sampling the target point cloud in each sub-region according to the preset sampling condition and the preset sampling order, and constructing a second point set of the target point cloud according to the sampling points of the target point cloud obtained from the plurality of sub-regions.

[0021] In a second aspect, the present application also provides a point cloud registration device, comprising:

[0022] An acquisition module is used to acquire the source point cloud and the target point cloud to be registered;

[0023] A mapping module, used for mapping the source point cloud into a first image point set in a pre-shape space, and mapping the target point cloud into a second image point set in the pre-shape space;

[0024] A transformation module, configured to transform the first image point set based on a transformation matrix to obtain a transformation point set corresponding to the first image point set;

[0025] A measurement module, used for measuring the posture difference between the transformation point set and the second image point set to obtain a measurement value;

[0026] A determination module, configured to determine a target transformation matrix based on a transformation matrix that satisfies a preset metric value condition;

[0027] A registration module is used to register the source point cloud to the target point cloud according to the target transformation matrix.

[0028] In a third aspect, the present application further provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, the following steps are implemented:

[0029] Acquire a source point cloud and a target point cloud to be registered; map the source point cloud to a first image point set in a pre-shape space, and map the target point cloud to a second image point set in the pre-shape space; transform the first image point set based on a transformation matrix to obtain a transformed point set corresponding to the first image point set; measure the posture difference between the transformed point set and the second image point set to obtain a measurement value; determine a target transformation matrix based on a transformation matrix that meets a preset measurement value condition; and register the source point cloud to the target point cloud according to the target transformation matrix.

[0030] In a fourth aspect, the present application further provides a computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, the following steps are implemented:

[0031] Acquire a source point cloud and a target point cloud to be registered; map the source point cloud to a first image point set in a pre-shape space, and map the target point cloud to a second image point set in the pre-shape space; transform the first image point set based on a transformation matrix to obtain a transformed point set corresponding to the first image point set; measure the posture difference between the transformed point set and the second image point set to obtain a measurement value; determine a target transformation matrix based on a transformation matrix that meets a preset measurement value condition; and register the source point cloud to the target point cloud according to the target transformation matrix.

[0032] In a fifth aspect, the present application further provides a computer program product, including a computer program, which implements the following steps when executed by a processor:

[0033] Acquire a source point cloud and a target point cloud to be registered; map the source point cloud to a first image point set in a pre-shape space, and map the target point cloud to a second image point set in the pre-shape space; transform the first image point set based on a transformation matrix to obtain a transformed point set corresponding to the first image point set; measure the posture difference between the transformed point set and the second image point set to obtain a measurement value; determine a target transformation matrix based on a transformation matrix that meets a preset measurement value condition; and register the source point cloud to the target point cloud according to the target transformation matrix.

[0034] The above-mentioned point cloud registration method, device, computer equipment, computer-readable storage medium and computer program product obtain the source point cloud and target point cloud to be registered; map the source point cloud to the first image point set in the pre-shape space, and map the target point cloud to the second image point set in the pre-shape space; transform the first image point set based on the transformation matrix to obtain the transformed point set corresponding to the first image point set; measure the posture difference between the transformed point set and the second image point set to obtain the measurement value; determine the target transformation matrix based on the transformation matrix that meets the preset measurement value condition; and register the source point cloud to the target point cloud according to the target transformation matrix. By mapping the source point cloud and the target point cloud into the pre-shape space, the normalized representation of the source point cloud and the target point cloud is realized, the scale and displacement differences are reduced, and the posture difference is measured based on the global shape of the point cloud image in the pre-shape space, so that point cloud registration under complex conditions can be realized and the robustness of point cloud registration can be improved. BRIEF DESCRIPTION OF THE DRAWINGS

[0035] In order to more clearly illustrate the technical solutions in the embodiments of the present application or related technologies, the drawings required for use in the embodiments of the present application or related technical descriptions will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.

[0036] Figure 1 A schematic diagram of a process of a point cloud registration method in one embodiment;

[0037] Figure 2 is a schematic diagram of a ball space in one embodiment;

[0038] Figure 3 is a schematic flow chart of a point cloud registration method in another embodiment;

[0039] Figure 4 is a schematic flow chart of a point cloud registration method in another embodiment;

[0040] Figure 5 is a schematic diagram of a point cloud registration result in one embodiment;

[0041] Figure 6 is a schematic flow chart of a point cloud registration method in another embodiment;

[0042] Figure 7 is a schematic diagram of point cloud registration in one embodiment;

[0043] Figure 8 is a schematic flow chart of a point cloud registration method in another embodiment;

[0044] Fig. 9is a structural block diagram of a point cloud registration device in one embodiment;

[0045] Fig.10 is an internal structure diagram of a computer device in one embodiment;

[0046] Fig.11 FIG. 4 is a diagram showing the internal structure of a computer device in another embodiment. DETAILED DESCRIPTION

[0047] In order to make the purpose, technical scheme and advantages of the present application more clear, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used in the description of the present application. If there is a description of the first and the second, it is only for the purpose of distinguishing the technical features, and cannot be understood as indicating or implying the relative importance or implicitly indicating the number of the indicated technical features or implicitly indicating the order of the indicated technical features.

[0048] In the description of this application, unless otherwise clearly defined, terms such as setting, installing, connecting, etc. should be understood in a broad sense, and technicians in the relevant technical field can reasonably determine the specific meanings of the above terms in this application based on the specific content of the technical solution.

[0049] Model reconstruction or spatial analysis applications based on three-dimensional point clouds often use lidar scanning or multi-view reconstruction technology to achieve point cloud acquisition and processing. Generally, when acquiring data, the device scans multiple point cloud copies and performs posture matching and defect completion to improve the quality of the point cloud. In some three-dimensional space perception tasks, there are some random differences in the original equipment used to obtain point cloud data, such as related parameter settings, technical indicators, coordinate systems for data representation, and scanning accuracy. Therefore, the fusion algorithm for multiple point cloud copies becomes very important. Point cloud registration calculation is proposed to achieve point cloud copy fusion, which is used to establish the correspondence between the source point cloud and the target point cloud or point cloud copies.

[0050] In some 3D point cloud registration methods, the performance is often unstable for attitude alignment tasks with complex conditions. Complex conditions include scale differences, density differences, large attitude differences, data defects, and noise effects. These complex conditions will affect the judgment of attitude correspondence by some point cloud registration methods. These methods mainly establish specific measurement methods for one or several complex conditions. When various complex conditions are superimposed, errors will occur in the related measurements, causing the registration calculation to fall into a local optimum.

[0051] To solve the above problems, this application proposes a point cloud registration method, which uses the pre-shape space theory to establish a new measurement method based on global shape correspondence to improve the robustness of the registration estimation. In addition, combined with a three-dimensional point cloud representation that is robust to scale and data defects, a parallel computing method is used to complete the posture correspondence under complex conditions, which comprehensively improves the practicality of the point cloud registration method. The point cloud registration method provided by this application is described in detail below.

[0052] In an exemplary embodiment, Figure 1 As shown, a point cloud registration method is provided, comprising the following steps S100 to S600. Among them:

[0053] Step S100, obtaining a source point cloud and a target point cloud to be registered.

[0054] The source point cloud is the point cloud dataset to be registered, which needs to be aligned with the target point cloud through transformation. The target point cloud is the point cloud dataset used as a reference or target in the registration.

[0055] In some cases, the target point cloud can be a point cloud copy. Point cloud processing requires creating point cloud copies for different processing flows or tasks. When a point cloud copy is selected as the target point cloud in a registration task, the point cloud copy is used as an instance of the target point cloud. The point cloud copy retains all the information of the original point cloud (such as coordinates, attributes, etc.), so it can be used as a valid reference or target in the registration process.

[0056] Step S200: Map the source point cloud to a first image point set in the pre-shape space, and map the target point cloud to a second image point set in the pre-shape space.

[0057] In the embodiment of the present application, the source point cloud and the target point cloud are mapped into the pre-shape space. The source point cloud is mapped into a first image point set in the pre-shape space, and the target point cloud is mapped into a second image point set in the pre-shape space. The first image point set and the second image point set are mapping results that satisfy the data representation form of the pre-shape space.

[0058] The pre-shape space may be a manifold space. When implementing the mapping from the point cloud to the shape space, the point set of the point cloud is mapped to a corresponding manifold subspace thereof, and shares a mapping with its copy under the similarity transformation, and this manifold subspace is the pre-shape space.

[0059] After the source point cloud and the target point cloud are obtained, there may be differences in scale and displacement between the source point cloud and the target point cloud. By mapping the source point cloud and the target point cloud into the pre-shape space, the point cloud can be normalized to obtain a data representation that meets the pre-shape space mapping requirements and reduce the impact of the scale and displacement differences between the source point cloud and the target point cloud on point cloud registration.

[0060] Optionally, the mapping of the source point cloud to the pre-shape space may be a scale transformation. When mapping the source point cloud to the first image point set in the pre-shape space, the first point set of the source point cloud and the scale of the source point cloud are obtained, and the source point cloud is scale-transformed according to each point in the first point set and in combination with the scale of the source point cloud, to obtain the first image point set of the source point cloud in the pre-shape space.

[0061] Correspondingly, the mapping of the target point cloud to the pre-shape space may also be a scale transformation. When mapping the target point cloud to the second image point set in the pre-shape space, the second point set of the target point cloud and the scale of the target point cloud may be obtained, and the target point cloud may be scale-transformed according to each point in the second point set and in combination with the scale of the target point cloud, to obtain the second image point set of the target point cloud in the pre-shape space.

[0062] Step S300: transform the first image point set based on the transformation matrix to obtain a transformation point set corresponding to the first image point set.

[0063] Since the first image point set is the mapping result of the source point cloud to be registered in the pre-shape space, the present application transforms the first image point set through various transformation matrices, and then measures the accuracy of the transformation results, and selects the optimal transformation matrix from various transformation matrices to realize point cloud registration from the source point cloud to the target point cloud.

[0064] The transformation matrix may be a candidate matrix. When the first image point set is transformed based on the transformation matrix to obtain a transformation point set corresponding to the first image point set, a candidate matrix set including multiple candidate matrices may be obtained, and the first image point set is transformed according to each candidate matrix in the candidate matrix set to obtain a transformation result of each candidate matrix, that is, a transformation point set of the first image.

[0065] Optionally, the candidate matrix may include a rotation transformation matrix or a translation transformation matrix. For example, the candidate matrix may be a rotation transformation matrix, and the first image point set may be subjected to a rotation transformation according to the rotation transformation matrix to obtain a transformation point set corresponding to the first image point set. For example, the candidate matrix may include a displacement vector, and the first image point set may be subjected to a translation transformation according to the displacement vector to obtain a transformation point set corresponding to the first image point set.

[0066] Among them, when the first image point set is transformed based on the transformation matrix to obtain the transformed point set corresponding to the first image point set, the optimization matrix of the rotation transformation matrix can be determined by the nearest point iteration method, the rotation transformation matrix is ​​optimized according to the optimized matrix, and the first image point set is rotationally transformed according to the optimized rotation transformation matrix to obtain the transformed point set corresponding to the first image point set.

[0067] The displacement vector may be a center displacement vector, and the center displacement vector is used to describe the displacement of the midpoint of the first image point set in the process of obtaining the transformation point set. When the first image point set is transformed based on the transformation matrix to obtain the transformation point set corresponding to the first image point set, a center position search set including multiple center displacement vectors is obtained, and the first image point set is transformed according to the center displacement vector in the center position search set to obtain the change point set corresponding to the first image point set.

[0068] Step S400, measuring the posture difference between the transformation point set and the second image point set to obtain a measurement value.

[0069] According to the transformation point set and the second image point set of the first image point set in the pre-shape space, a quantitative analysis method for point cloud posture is proposed. The posture difference between the transformation point set and the second image point set is measured according to the transformation point set and the second image point set, and the measurement value describing the posture difference between the transformation point set and the second image point set is obtained.

[0070] In one embodiment, the metric values ​​of the transformation point set and the second image point set may be determined by the following formula (1):

[0071] (1)

[0072] Among them, K pre (P b ) is the source point cloud P b In the pre-shape space K pre The first pixel set, K pre (P a ) is the target point cloud P a In the pre-shape space K pre The second image point set, O is the transformation matrix, G k is the metric value of the transformed point set and the second mapping point set, is the pre-spatial shape K pre The real diagonal matrix obtained by singular value decomposition in .

[0073] Step S500: determining a target transformation matrix based on a transformation matrix that satisfies a preset metric value condition.

[0074] The process of determining the target transformation matrix for realizing point cloud registration from the source point cloud to the target point cloud is equivalent to the process of finding the optimal transformation posture from the source point cloud to the target point cloud.

[0075] Metric G k Corresponding point cloud P a and P bThe optimal transformation in the pre-shape space is equal to the arc cosine of the real diagonal matrix obtained by singular value decomposition in the pre-shape space, see formula (1). This process is equivalent to aligning the first image point set and the second image point set according to the orthogonal coordinates constructed by the eigenvector. By optimizing the transformation matrix O, G k By minimizing the transformation matrix, the transformation matrix that satisfies the preset metric value condition can be determined according to the calculated metric value by calculating the metric value of the transformation point set and the second target point set under each transformation matrix, and the target transformation matrix can be determined based on the transformation matrix of the preset metric value condition.

[0076] For example, the preset metric value condition may be the minimum value among the calculated metric values, and a transformation matrix with the minimum calculated metric value may be determined as the transformation matrix that meets the preset metric value. For another example, the preset metric value condition may be lower than a preset metric value threshold, and a transformation matrix with a calculated metric value lower than the preset metric value threshold may be used as a transformation matrix that meets the preset metric value.

[0077] When determining a target transformation matrix based on a transformation matrix that satisfies a preset metric value condition, the transformation matrix that satisfies the preset metric value condition can be directly used as a target change matrix, or a further transformation can be performed on the basis of the transformation matrix that satisfies the preset metric value condition to obtain a target transformation matrix. The further transformation referred to herein includes but is not limited to optimizing the transformation matrix that satisfies the preset metric value condition, or determining another different type of transformation matrix on the basis of the transformation matrix that satisfies the preset metric value condition, and taking the product of the transformation matrix and the newly determined different type of transformation matrix as the target transformation matrix. For example, the transformation matrix can be a rotation transformation matrix that describes the rotation angle of a point set, and the newly determined different type of transformation matrix can be a central displacement vector that describes the displacement of points in a point set.

[0078] Step S600, registering the source point cloud to the target point cloud according to the target transformation matrix.

[0079] After determining the target transformation matrix, the source point cloud can be registered to the target point cloud according to the target transformation matrix. For example, the target transformation matrix contains the transformation method of each point in the source point cloud to the corresponding point in the target point cloud. By multiplying the target transformation matrix with the source point cloud, the source point cloud can be registered to the target point cloud.

[0080] The above point cloud registration method obtains the source point cloud and target point cloud to be registered; maps the source point cloud to the first image point set in the pre-shape space, and maps the target point cloud to the second image point set in the pre-shape space; transforms the first image point set based on the transformation matrix to obtain the transformed point set corresponding to the first image point set; measures the posture difference between the transformed point set and the second image point set to obtain the measurement value; determines the target transformation matrix based on the transformation matrix that meets the preset measurement value condition; and registers the source point cloud to the target point cloud according to the target transformation matrix. By mapping the source point cloud and the target point cloud into the pre-shape space, the normalized representation of the source point cloud and the target point cloud is realized, the scale and displacement differences are reduced, and the posture difference is measured based on the global shape of the point cloud image in the pre-shape space, so that the point cloud registration under complex conditions can be realized and the robustness of the point cloud registration can be improved.

[0081] In one embodiment, mapping the source point cloud to a first image point set in the pre-shape space and mapping the target point cloud to a second image point set in the pre-shape space comprises:

[0082] Obtain a first point set of the source point cloud, and obtain a second point set of the target point cloud; determine a first midpoint of the first point set, and determine a second midpoint of the second point set; perform a scale transformation on the source point cloud according to a set of distances from each point in the first point set to the first midpoint, combined with the scale of the source point cloud, to obtain a first image point set; perform a scale transformation on the target point cloud according to a set of distances from each point in the second point set to the second midpoint, combined with the scale of the target point cloud, to obtain a second image point set.

[0083] When mapping the source point cloud to the first image point set in the pre-shape space, the first point set of the source point cloud can be obtained, the first midpoint of the first point set can be determined, and the source point cloud can be scaled according to the set of distances from each point in the first point set to the first midpoint in combination with the scale of the source point cloud to obtain the first image point set. When mapping the target point cloud to the second image point set in the pre-shape space, the second point set of the target point cloud can be obtained, the second midpoint of the second point set can be determined, and the target point cloud can be scaled according to the set of distances from each point in the second point set to the second midpoint in combination with the scale of the target point cloud to obtain the second image point set.

[0084] According to Kendall shape space theory, a manifold space that can be used to measure the shape difference of discrete point sets can be constructed from a general discrete point set manifold space by calculating the quotient of a similarity transformation group. Therefore, the construction process of the pre-shape space can be expressed as formula (2):

[0085] (2)

[0086] Among them, G stis a similarity transformation group that does not include rotation transformation, R is a manifold space composed of discrete point sets, and m×3 means that the data form of the discrete point set is m three-dimensional points.

[0087] From the construction process of the pre-shape space, we know that we need to provide an implementation for the quotient operation. This implementation can be equivalently regarded as a normalization process, expressed as formula (3):

[0088] (3)

[0089] Among them, K pre is the pre-shape space, P is the point cloud to be mapped, is the midpoint of the point set, x1~x m is each point in the point set, m is the number of points in the point set, and s(P) is the scale of the point cloud P. Through the calculation of the above formula, the point cloud P completes its central scale normalization, and the mapping of the point cloud P to the pre-shape space can be realized.

[0090] In the embodiment of the present application, when mapping the source point cloud to the first image point set in the pre-shape space, the first point set of the source point cloud can be obtained, and the m points contained in the first point set are substituted into the above The calculation formula is used to determine the first midpoint of the first point set. . Get the points in the first point set to The collection of distances , and the scale of the source point cloud, substitute into the above K pre The calculation formula is used to scale the source point cloud and obtain the source point cloud in the pre-shape space K pre The first pixel set in .

[0091] When the target point cloud is mapped to the second image point set in the pre-shape space, the second point set of the target point cloud can be obtained. According to the m points contained in the second point set, substitute the above The calculation formula is used to determine the second midpoint of the second point set. . Get the set of distances from each point in the second point set to , and the scale of the target point cloud, substitute into the above K pre The calculation formula is used to scale the target point cloud and obtain the target point cloud in the pre-shape space K pre The second pixel set in .

[0092] In one embodiment, obtaining a first point set of a source point cloud and obtaining a second point set of a target point cloud include:

[0093] A spherical space including a source point cloud and a target point cloud is constructed, and the spherical space is divided into a plurality of sub-areas based on different pitch angles; the source point cloud is sampled in each sub-area according to a preset sampling condition and a preset sampling order, and a first point set of the source point cloud is constructed according to the sampling points of the source point cloud obtained from the plurality of sub-areas; the target point cloud is sampled in each sub-area according to the preset sampling condition and a preset sampling order, and a second point set of the target point cloud is constructed according to the sampling points of the target point cloud obtained from the plurality of sub-areas.

[0094] In some cases, the corresponding relationship between the points in the source point cloud and the target point cloud is not established in advance. After the source point cloud and the target point cloud are mapped to the first mapping point set and the second mapping point set in the pre-shape space, the points in the first mapping point set and the second mapping point set may not correspond in order. In order to accurately measure the posture difference between the transformed point set of the first mapping point set and the second mapping point set, it is necessary to ensure that the points in the first mapping point set and the second mapping point set correspond in the correct order.

[0095] In order to obtain effective measurement values, the present application proposes a point set reconstruction operation based on a partition structure, which initializes the correspondence of the point set in the line of sight shape space to obtain effective measurement values.

[0096] See also Figure 2 First, a spherical space including a source point cloud and a target point cloud is constructed, and the spherical space is divided into multiple sub-regions based on different pitch angles. Multiple sub-regions can be evenly divided as shown in the figure so that each sub-region is evenly distributed in the spherical space. Then, when reconstructing the point set of point cloud A, a sampling point is taken from point cloud A in each sub-region, and when reconstructing the point set of another point cloud B, a sampling point is taken from point cloud B in each sub-region according to the same sampling order and sampling method. There can be multiple sampling methods, including but not limited to obtaining the point farthest from the center point of the spherical space in the sub-region as the sampling point, obtaining the center point of the densest point in the sub-region as the sampling point, and so on.

[0097] The embodiment of the present application reconstructs the point set of the source point cloud based on the constructed spherical space to obtain the first point set of the source point cloud, and reconstructs the point set of the target point cloud based on the constructed spherical space to obtain the second point set of the target point cloud. According to the same preset sampling conditions and the same preset sampling order, the source point cloud is sampled in each sub-region respectively, and the first point set of the source point cloud is constructed according to the sampling points of the source point cloud obtained from multiple sub-regions; the target point cloud is sampled in each sub-region respectively, and the second point set of the target point cloud is constructed according to the sampling points of the target point cloud obtained from multiple sub-regions.

[0098] At this point, different point clouds are sampled into new sparse point sets - the first point set and the second point set - according to the spherical space partition structure. The first point set inherits the shape characteristics of the source point cloud to a certain extent, and the second point set inherits the shape characteristics of the source point cloud to a certain extent. The points in the first point set and the second point set are corresponding based on the spherical space partition structure. Furthermore, the points in the first mapping point set and the second mapping point set mapped to the pre-shape space according to the first point set and the second point set are also corresponding in the correct corresponding order, thereby ensuring the validity of the calculated metric value and the accuracy of the point cloud registration.

[0099] See also Figure 3 In one embodiment, step S300, transforming the first image point set based on the transformation matrix to obtain a transformation point set corresponding to the first image point set includes:

[0100] Step S310, obtaining a rotation transformation candidate set.

[0101] Step S320: performing a rotation transformation on the first image point set according to the rotation transformation matrix to obtain a transformation point set corresponding to the first image point set.

[0102] The rotation transformation candidate set includes multiple rotation transformation matrices. A rotation transformation candidate set including multiple rotation transformation matrices can be predefined. c},{O c} contains a set of rotation transformation vectors specified according to a specific rotation angle step. After obtaining a first image point set that maps the source point cloud to the pre-shape space and a second image point set that maps the target point cloud to the pre-shape space, a rotation transformation candidate set containing multiple rotation transformation matrices is obtained. c Substitute each item in} into the metric value calculation formula (1):

[0103] (1)

[0104] Thus, according to the rotation transformation matrix O c Implement the rotation transformation of the first image point set, obtain the transformation point set corresponding to the first image point set, and measure the posture difference between the transformation point set and the second image point set to obtain the measurement value, and obtain the measurement value G k .

[0105] Further, step S500, determining the target transformation matrix based on the transformation matrix that meets the preset metric value includes: step S510, determining the rotation transformation matrix corresponding to the minimum metric value as the target rotation matrix; step S520, determining the target transformation matrix based on the target rotation matrix.

[0106] Calculate the metric value G based on each rotation transformation matrix k After that, the metric value Gk The minimum rotation transformation matrix is ​​determined as the target rotation matrix, and the target rotation matrix can be used as the target transformation matrix, or the target transformation matrix can be further determined based on the target rotation matrix, and then the source point cloud is aligned with the target point cloud according to the target transformation matrix.

[0107] See also Figure 4 In one embodiment, step S320, performing a rotation transformation on the first image point set according to the rotation transformation matrix to obtain a transformation point set corresponding to the first image point set includes: step S321, determining an optimization matrix of the rotation transformation matrix by a nearest point iteration method, and optimizing the rotation transformation matrix according to the optimization matrix; step S322, performing a rotation transformation on the first image point set according to the optimized rotation transformation matrix to obtain a transformation point set corresponding to the first image point set.

[0108] Step S520, determining the target transformation matrix based on the target rotation matrix includes: step S521, determining the target transformation matrix based on the target rotation matrix and the optimization matrix of the target rotation matrix.

[0109] The target rotation matrix can be regarded as a rough adjustment method in point cloud registration. In order to obtain a more accurate registration result, this application introduces an optimization matrix as a fine adjustment method in point cloud registration. Optionally, after determining the target rotation matrix, the optimization matrix of the target rotation matrix can be determined by the nearest point iteration method to determine the target transformation matrix.

[0110] In one embodiment, the optimization matrix corresponding to each rotation transformation matrix can also be determined, and the metric value corresponding to each optimized rotation transformation matrix can be determined by combining each rotation transformation matrix and the corresponding optimization matrix. The rotation transformation matrix corresponding to the minimum metric value is determined as the target transformation matrix, and the optimization matrix of the target transformation matrix is ​​simultaneously determined. This process can be regarded as a rotation group optimal posture search process from coarse to fine, which is expressed as formula (4):

[0111] (4)

[0112] Among them, K pre is the pre-shape space, P a is the second mapping point set, P b is the first mapping point set, O f is the target transformation matrix, O r is the optimization matrix of the target transformation matrix.

[0113] The above-mentioned method of determining the target transformation matrix based on the target rotation matrix and the method of determining the target transformation matrix based on the target rotation matrix and the optimized matrix of the target rotation matrix in the embodiment of the present application can be combined with the above-mentioned method of reconstructing a point set in the spherical space to determine the target transformation matrix according to the mapping result of the reconstructed point set in the pre-shape space, and then perform point cloud alignment.

[0114] See also Figure 5 , Figure 5 The point cloud registration result after point set reconstruction. After point set reconstruction, when the rotation posture of the point cloud is close to the final registration corresponding result, the overlap degree of the point set is significantly improved.

[0115] In some cases, data loss inside the point cloud will affect the registration calculation. For the pre-shape space metric calculation and global pose search, data loss will interfere with the position of the image point set in the pre-shape space, that is, the center point of the image point set will be randomly displaced, thereby reducing the accuracy of the registration. In order to solve this problem, this application introduces the center displacement transformation as another type of transformation method different from the transformation matrix to expand the scope of the global pose search.

[0116] See also Figure 6 In one embodiment, step S322, the first image point set is subjected to a rotation transformation according to the optimized rotation transformation matrix, and the transformation point set corresponding to the first image point set is obtained, including:

[0117] Step S3221, obtaining a center position search set; Step S3222, transforming the first image point set according to the center displacement vector and the optimized rotation transformation matrix to obtain a transformation point set corresponding to the first image point set.

[0118] The center position search set includes multiple center displacement vectors. A center position search set including multiple center displacement vectors can be predefined. i}.

[0119] Step S521, determining the target transformation matrix based on the target rotation matrix and the optimized matrix of the target rotation matrix includes: step S5211, determining the center displacement vector corresponding to the minimum metric value as the target displacement vector; step S5212, determining the target transformation matrix based on the target rotation matrix, the optimized matrix of the target rotation matrix and the target displacement vector.

[0120] Introducing the central location search set {S i}, the global pose search can be expressed as formula (5):

[0121] (5)

[0122] Among them, O fFor {O c}Determine the target rotation matrix, O r is the optimization matrix determined by the closest point iteration method, S i The center displacement vector in the center position search set.

[0123] After obtaining a first image point set that maps the source point cloud to the pre-shape space and a second image point set that maps the target point cloud to the pre-shape space, obtaining a rotation transformation candidate set including a plurality of rotation transformation matrices {0 c}. The rotation transformation matrix O is determined by the nearest point iteration method c The optimization matrix O r , according to the optimization matrix O r Yes c} to optimize the rotation transformation matrix, and obtain the center position search set {S i}, according to {S i The center displacement vector S in i And the optimized rotation transformation matrix O r ×O c For the first image point set P b Transform and obtain the first image point set K pre (P b ) of the transformation point set O r ×O c ×S i ×K pre (P b ). For the transformation point set and the second mapping point set K pre (P a ) to measure the posture difference and obtain the measurement value.

[0124] The metric values ​​obtained under multiple different transformations are calculated synchronously, the rotation transformation matrix corresponding to the minimum metric value is determined as the target transformation matrix, the center displacement vector corresponding to the minimum metric value is determined as the target displacement vector, and the optimization matrix of the target transformation matrix, the target transformation matrix and the target displacement vector are cross-multiplied to obtain the target transformation matrix O r ×O c ×S i , and the source point cloud is aligned to the target point cloud according to the target transformation matrix.

[0125] See also Figure 7 , Figure 7This is a search example after the introduction of the center position search set. It can be seen that after the introduction of the center position search set, the attitude search range has been greatly improved, including not only the transformation of the rotation attitude, but also the superposition transformation of the point set center offset and the point set's own rotation attitude. The center position search set takes into account the center offset caused by data loss. The target transformation matrix determined under the larger attitude search range brought by the introduction of the center position search set can achieve a more accurate point cloud registration effect.

[0126] Due to the introduction of the center offset search set {S i}, and at the same time, the rotation change candidate set O r When superimposed, the corresponding posture search range will be expanded, and the corresponding amount of calculation will also increase. In one embodiment, the metric value calculation related to the center offset search set and the metric calculation related to the rotation change candidate set are decoupled. In order to improve the search efficiency of the optimal transformation posture, a parallel computing method is introduced to synchronize the relevant metric calculations of the center offset search set and the rotation change candidate set. Combined with parallel computing, the global search for the optimal transformation posture is accelerated, and the target transformation matrix for achieving point cloud registration can be determined as soon as possible.

[0127] This application also provides a specific embodiment, please refer to Figure 8 The specific implementation of the point cloud registration method is as follows:

[0128] S1. Obtain the source point cloud and target point cloud to be registered.

[0129] S2. Construct a ball space including the source point cloud and the target point cloud, and divide the ball space into multiple sub-areas based on different pitch angles.

[0130] S3. Sample the source point cloud in each sub-region according to a preset sampling condition and a preset sampling order, and construct a first point set of the source point cloud according to the sampling points of the source point cloud obtained from multiple sub-regions.

[0131] S4. Determine the first midpoint of the first point set.

[0132] S5. According to the set of distances from each point in the first point set to the first midpoint and in combination with the scale of the source point cloud, the source point cloud is scaled to obtain a first image point set.

[0133] S6. Sample the target point cloud in each sub-region according to a preset sampling condition and a preset sampling order, and construct a second point set of the target point cloud according to the sampling points of the target point cloud obtained from multiple sub-regions.

[0134] S7. Determine the second midpoint of the second point set.

[0135] S8. According to the set of distances from each point in the second point set to the second midpoint and in combination with the scale of the target point cloud, the target point cloud is scaled to obtain a second image point set.

[0136] S9. Obtain a rotation transformation candidate set.

[0137] The rotation transformation candidate set includes multiple rotation transformation matrices.

[0138] S10, determining an optimization matrix of the rotation transformation matrix by a nearest point iteration method, and optimizing the rotation transformation matrix according to the optimization matrix.

[0139] S11. Obtain a center location search set.

[0140] The center position search set includes multiple center displacement vectors.

[0141] S12. Transform the first image point set according to the central displacement vector and the optimized rotation transformation matrix to obtain a transformation point set corresponding to the first image point set.

[0142] S13, measuring the posture difference between the transformation point set and the second image point set to obtain a measurement value.

[0143] S14. Determine the rotation transformation matrix corresponding to the minimum metric value as the target rotation matrix.

[0144] S15. Determine the central displacement vector corresponding to the minimum metric value as the target displacement vector.

[0145] S16. Determine a target transformation matrix based on the target rotation matrix, an optimization matrix of the target rotation matrix, and a target displacement vector.

[0146] S17. Align the source point cloud to the target point cloud according to the target transformation matrix.

[0147] In the above embodiment, firstly, based on point cloud mapping, the three-dimensional point clouds of the source point cloud and the target point cloud are mapped to the pre-shape space to reduce the scale and position differences. Then, based on the measurement of the pre-shape space, the measurement of the point cloud posture difference is realized. Since the measurement is evaluated for the global shape information in the pre-shape space, it has a certain robustness to the local data difference, and therefore has good performance for noise and small-scale data loss. Finally, based on the parallel computing framework, combined with the pre-shape space measurement, the search and estimation of the registration posture are completed to obtain the final registration result. This method inherits the advantages of the shape space registration method and has stable performance for scale differences and large posture alignment tasks. At the same time, this method effectively improves the performance defects of scale estimation and data loss processing in some methods, and better handles the above-mentioned interference factors through partition estimation, while optimizing the efficiency of parallel search, effectively improving the practicality of the point cloud registration method.

[0148] It should be understood that, although the steps in the flowcharts involved in the above embodiments are displayed in sequence according to the indication of the arrows, these steps are not necessarily executed in sequence according to the order indicated by the arrows. Unless there is a clear explanation in this article, the execution of these steps is not strictly limited in order, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above embodiments may include multiple steps or multiple stages, and these steps or stages are not necessarily executed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily carried out in sequence, but can be executed in turn or alternately with other steps or at least a part of the steps or stages in other steps.

[0149] Based on the same inventive concept, the embodiment of the present application also provides a point cloud registration device for implementing the point cloud registration method involved above. The implementation solution provided by the device to solve the problem is similar to the implementation solution recorded in the above method, so the specific limitations in one or more point cloud registration device embodiments provided below can refer to the limitations of the point cloud registration method above, and will not be repeated here.

[0150] In an exemplary embodiment, Fig. 9 As shown, a point cloud registration device is provided, including: an acquisition module 901, a mapping module 902, a transformation module 903, a measurement module 904, a determination module 905 and a registration module 906, wherein:

[0151] An acquisition module 901 is used to acquire a source point cloud and a target point cloud to be registered;

[0152] A mapping module 902, configured to map the source point cloud to a first image point set in the pre-shape space, and map the target point cloud to a second image point set in the pre-shape space;

[0153] A transformation module 903, configured to transform the first image point set based on a transformation matrix to obtain a transformation point set corresponding to the first image point set;

[0154] A measurement module 904 is used to measure the posture difference between the transformation point set and the second image point set to obtain a measurement value;

[0155] A determination module 905 is used to determine a target transformation matrix based on the transformation matrix that meets the preset metric value condition;

[0156] The registration module 906 is used to register the source point cloud to the target point cloud according to the target transformation matrix.

[0157] In one embodiment, when the first image point set is transformed based on the transformation matrix to obtain a transformation point set corresponding to the first image point set, the transformation module 903 is further configured to:

[0158] Obtaining a rotation transformation candidate set, the rotation transformation candidate set including a plurality of rotation transformation matrices; performing a rotation transformation on the first image point set according to the rotation transformation matrix to obtain a transformation point set corresponding to the first image point set;

[0159] When determining the target transformation matrix based on the transformation matrix that meets the preset metric value condition, the determination module 905 is further used to:

[0160] The rotation transformation matrix corresponding to the minimum metric value is determined as the target rotation matrix; and the target transformation matrix is ​​determined based on the target rotation matrix.

[0161] In one embodiment, when performing a rotation transformation on the first image point set according to the rotation transformation matrix to obtain a transformation point set corresponding to the first image point set, the transformation module 903 is further used to:

[0162] Determine the optimal matrix of the rotation transformation matrix by the nearest point iteration method, and optimize the rotation transformation matrix according to the optimized matrix; perform rotation transformation on the first image point set according to the optimized rotation transformation matrix to obtain the transformation point set corresponding to the first image point set;

[0163] When determining the target transformation matrix based on the target rotation matrix, the determination module 905 is further used to:

[0164] A target transformation matrix is ​​determined based on the target rotation matrix and an optimization matrix of the target rotation matrix.

[0165] In one embodiment, when performing a rotation transformation on the first image point set according to the optimized rotation transformation matrix to obtain a transformation point set corresponding to the first image point set, the transformation module 903 is further used to:

[0166] Obtain a center position search set, which includes a plurality of center displacement vectors; transform the first image point set according to the center displacement vector and the optimized rotation transformation matrix to obtain a transformation point set corresponding to the first image point set;

[0167] When determining the target transformation matrix based on the target rotation matrix and the optimization matrix of the target rotation matrix, the determination module 905 is further used to:

[0168] The center displacement vector corresponding to the minimum metric value is determined as the target displacement vector; and the target transformation matrix is ​​determined based on the target rotation matrix, the optimization matrix of the target rotation matrix and the target displacement vector.

[0169] In one embodiment, when mapping the source point cloud to a first image point set in the pre-shape space and mapping the target point cloud to a second image point set in the pre-shape space, the mapping module 902 is further configured to:

[0170] Obtain a first point set of the source point cloud, and obtain a second point set of the target point cloud; determine a first midpoint of the first point set, and determine a second midpoint of the second point set; perform a scale transformation on the source point cloud according to a set of distances from each point in the first point set to the first midpoint, combined with the scale of the source point cloud, to obtain a first image point set; perform a scale transformation on the target point cloud according to a set of distances from each point in the second point set to the second midpoint, combined with the scale of the target point cloud, to obtain a second image point set.

[0171] In one embodiment, when acquiring the first point set of the source point cloud and acquiring the second point set of the target point cloud, the mapping module 902 is further used to:

[0172] A spherical space including a source point cloud and a target point cloud is constructed, and the spherical space is divided into a plurality of sub-areas based on different pitch angles; the source point cloud is sampled in each sub-area according to a preset sampling condition and a preset sampling order, and a first point set of the source point cloud is constructed according to the sampling points of the source point cloud obtained from the plurality of sub-areas; the target point cloud is sampled in each sub-area according to the preset sampling condition and a preset sampling order, and a second point set of the target point cloud is constructed according to the sampling points of the target point cloud obtained from the plurality of sub-areas.

[0173] In the above-mentioned point cloud registration device, the acquisition module 901 acquires the source point cloud and the target point cloud to be registered; the mapping module 902 maps the source point cloud to the first image point set in the pre-shape space, and maps the target point cloud to the second image point set in the pre-shape space; the transformation module 903 transforms the first image point set based on the transformation matrix to obtain the transformed point set corresponding to the first image point set; the measurement module 904 measures the posture difference between the transformed point set and the second image point set to obtain the measurement value; the determination module 905 determines the target transformation matrix based on the transformation matrix that meets the preset measurement value condition; the registration module 906 registers the source point cloud to the target point cloud according to the target transformation matrix. By mapping the source point cloud and the target point cloud to the pre-shape space, the normalized representation of the source point cloud and the target point cloud is realized, the scale and displacement differences are reduced, and the posture difference is measured based on the global shape of the point cloud image in the pre-shape space, so that the point cloud registration under complex conditions can be realized, and the robustness of the point cloud registration can be improved.

[0174] Each module in the above-mentioned point cloud registration device can be implemented in whole or in part by software, hardware and their combination. Each module can be embedded in or independent of the processor in the computer device in the form of hardware, or can be stored in the memory of the computer device in the form of software, so that the processor can call and execute the corresponding operations of each module above.

[0175] Terms such as "component", "module", and "system" are intended to refer to a computer-related entity, which can be hardware, a combination of hardware and software, software, or software in execution. For example, a component can be, but is not limited to, a process running on a processor, a processor, an object, an executable code, a thread of execution, a program, and / or a computer. As an illustration, both a running program running on a server and a server can be a component. One or more components can reside in a process and / or a thread of execution, and a component can be located in one computer and / or distributed between two or more computers.

[0176] In an exemplary embodiment, a computer device is provided. The computer device may be a server, and its internal structure diagram may be as shown in FIG. Fig.10 As shown. The computer device includes a processor, a memory, an input / output interface (Input / Output, referred to as I / O) and a communication interface. Among them, the processor, the memory and the input / output interface are connected through a system bus, and the communication interface is connected to the system bus through the input / output interface. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile computer-readable storage medium and an internal memory. The non-volatile computer-readable storage medium stores an operating system, computer-readable instructions and a database. The internal memory provides an environment for the operation of the operating system and computer-readable instructions in the non-volatile computer-readable storage medium. The database of the computer device is used to store source point clouds, target point clouds, first image point sets, second image point sets, measurement values, etc. The input / output interface of the computer device is used to exchange information between the processor and an external device. The communication interface of the computer device is used to communicate with an external terminal through a network connection. When the computer-readable instructions are executed by the processor, a point cloud registration method is implemented.

[0177] In an exemplary embodiment, a computer device is provided. The computer device may be a terminal, and its internal structure diagram may be as shown in FIG. Fig.11As shown. The computer device includes a processor, a memory, an input / output interface, a communication interface, a display unit and an input device. The processor, the memory and the input / output interface are connected through a system bus, and the communication interface, the display unit and the input device are connected to the system bus through the input / output interface. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile computer-readable storage medium and an internal memory. The non-volatile computer-readable storage medium stores an operating system and computer-readable instructions. The internal memory provides an environment for the operation of the operating system and computer-readable instructions in the non-volatile computer-readable storage medium. The input / output interface of the computer device is used to exchange information between the processor and an external device. The communication interface of the computer device is used to communicate with an external terminal in a wired or wireless manner, and the wireless manner can be implemented through WIFI, a mobile cellular network, near field communication (NFC) or other technologies. When the computer-readable instructions are executed by the processor, a point cloud registration method is implemented. The display unit of the computer device is used to form a visually visible picture, which can be a display screen, a projection device or a virtual reality imaging device. The display screen can be a liquid crystal display screen or an electronic ink display screen, and the input device of the computer device can be a touch layer covering the display screen, or a button, trackball or touchpad set on the computer device shell, or an external keyboard, touchpad or mouse.

[0178] Those skilled in the art will understand that Fig.10 , 11 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.

[0179] In one embodiment, a computer device is further provided, including a memory and a processor, wherein the memory stores computer-readable instructions, and the processor implements the steps in the above-mentioned method embodiments when executing the computer-readable instructions.

[0180] In one embodiment, a computer-readable storage medium is provided, which stores computer-readable instructions. When the computer-readable instructions are executed by a processor, the steps in the above-mentioned method embodiments are implemented.

[0181] In one embodiment, a computer program product is provided, the computer program product comprising computer-readable instructions, the computer-readable instructions being stored in a computer-readable storage medium. A processor of a computer device reads the computer-readable instructions from the computer-readable storage medium, and the processor executes the computer-readable instructions, so that the computer device performs the steps in the above-mentioned method embodiments.

[0182] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through computer-readable instructions, and the computer-readable instructions can be stored in a non-volatile computer-readable storage medium. When the computer-readable instructions are executed, they can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to the memory, database or other medium used in the embodiments provided in this application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The database involved in each embodiment provided in this application may include at least one of a relational database and a non-relational database. Non-relational databases may include distributed databases based on blockchains, etc., but are not limited to this. The processor involved in each embodiment provided in this application may be a general-purpose processor, a central processing unit, a graphics processor, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, an artificial intelligence (AI) processor, etc., but are not limited to this.

[0183] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this application.

[0184] The above embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the present application. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the attached claims.

Claims

1. A point cloud registration method, characterized in that: include: Obtain the source point cloud and target point cloud to be registered; Mapping the source point cloud to a first image point set in a pre-shape space, and mapping the target point cloud to a second image point set in the pre-shape space; Obtaining a rotation transformation candidate set, wherein the rotation transformation candidate set includes multiple rotation transformation matrices; Determine an optimization matrix of the rotation transformation matrix, and optimize the rotation transformation matrix according to the optimization matrix; Acquire a center position search set, wherein the center position search set includes a plurality of center displacement vectors; Transform the first image point set according to the central displacement vector and the optimized rotation transformation matrix to obtain a transformation point set corresponding to the first image point set; Measuring the posture difference between the transformation point set and the second image point set to obtain a measurement value; The rotation transformation matrix corresponding to the minimum metric value is determined as the target rotation matrix; The central displacement vector corresponding to the minimum metric value is determined as the target displacement vector; Determine a target transformation matrix based on the target rotation matrix, an optimization matrix of the target rotation matrix, and the target displacement vector; The source point cloud is registered to the target point cloud according to the target transformation matrix.

2. The method according to claim 1, characterized in that The optimization matrix for determining the rotation transformation matrix comprises: The optimal matrix of the rotation transformation matrix is ​​determined by the closest point iteration method.

3. The method according to claim 1 or 2, characterized in that: Mapping the source point cloud to a first image point set in the pre-shape space and mapping the target point cloud to a second image point set in the pre-shape space comprises: Get the first point set of the source point cloud and the second point set of the target point cloud; Determine a first midpoint of the first point set, and determine a second midpoint of the second point set; According to a set of distances from each point in the first point set to the first midpoint, combined with the scale of the source point cloud, the source point cloud is scaled to obtain the first image point set; According to the set of distances from each point in the second point set to the second midpoint, combined with the scale of the target point cloud, the target point cloud is scaled to obtain the second image point set.

4. The method according to claim 3, characterized in that The method further comprises: Get the mapping formula from point cloud to pre-shape space: Among them, K pre is the pre-shape space, P is the point cloud to be mapped, is the midpoint of the point set, x1~x m are the points in the point set, m is the number of points in the point set, and s(P) is the scale of the point cloud P; The step of performing a scale transformation on the source point cloud according to a set of distances from each point in the first point set to the first midpoint in combination with the scale of the source point cloud to obtain the first image point set includes: Substitute the set of distances from each point in the first point set to the first midpoint into the mapping formula , substitute the scale of the source point cloud into the mapping formula , will get as the first image point set; The step of performing a scale transformation on the target point cloud according to a set of distances from each point in the second point set to the second midpoint in combination with the scale of the target point cloud to obtain the second image point set comprises: Substitute the set of distances from each point in the second point set to the second midpoint into the mapping formula , substitute the scale of the target point cloud into the mapping formula , obtained as the second image point set.

5. The method according to claim 3, characterized in that: The obtaining of the first point set of the source point cloud and the second point set of the target point cloud comprises: constructing a spherical space including the source point cloud and the target point cloud, and dividing the spherical space into a plurality of sub-areas based on different pitch angles; According to a preset sampling condition and a preset sampling order, the source point cloud is sampled in each sub-region respectively, and a first point set of the source point cloud is constructed according to the sampling points of the source point cloud obtained from the multiple sub-regions; The target point cloud is sampled in each sub-region according to the preset sampling condition and the preset sampling order, and a second point set of the target point cloud is constructed according to the sampling points of the target point cloud obtained from the multiple sub-regions.

6. The method according to claim 1, characterized in that The determining of the target transformation matrix based on the target rotation matrix, the optimization matrix of the target rotation matrix and the target displacement vector comprises: The target transformation matrix is ​​obtained by cross-multiplying the optimization matrix of the target transformation matrix, the target transformation matrix and the target displacement vector.

7. A point cloud registration device, characterized in that: include: An acquisition module is used to acquire the source point cloud and the target point cloud to be registered; A mapping module, used for mapping the source point cloud into a first image point set in a pre-shape space, and mapping the target point cloud into a second image point set in the pre-shape space; a transformation module, configured to obtain a rotation transformation candidate set, wherein the rotation transformation candidate set includes a plurality of rotation transformation matrices, determine an optimization matrix of the rotation transformation matrix, optimize the rotation transformation matrix according to the optimization matrix, obtain a center position search set, wherein the center position search set includes a plurality of center displacement vectors, and transform the first image point set according to the center displacement vector and the optimized rotation transformation matrix to obtain a transformation point set corresponding to the first image point set; A measurement module, used for measuring the posture difference between the transformation point set and the second image point set to obtain a measurement value; A determination module, used to determine the rotation transformation matrix corresponding to the minimum metric value as a target rotation matrix, determine the center displacement vector corresponding to the minimum metric value as a target displacement vector, and determine the target transformation matrix based on the target rotation matrix, the optimization matrix of the target rotation matrix and the target displacement vector; A registration module is used to register the source point cloud to the target point cloud according to the target transformation matrix.

8. A computer device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 6 are implemented.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 6 are implemented.

10. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 6 are implemented.