A point cloud registration method, system, electronic device, and storage medium

CN115439517BActive Publication Date: 2026-09-01BEIJING INST OF TECH ZHUHAI CAMPUS
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202211063284.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-08-31
Publication Date
2026-09-01
Estimated Expiration
2042-08-31

AI Technical Summary

Technical Problem

但是,当前点云配准的技术存在收敛速度慢、配准效率低、配准时间长等问题

Benefits of technology

[0042]本发明采用以上技术方案与现有技术相比,具有以下技术效果:本发明实施例通过获取待配准点云和目标点云;对所述待配准点云和所述目标点云进行降采样处理,确定待配准降采样点云和目标降采样点云;对所述待配准降采样点云和所述目标降采样点云进行关键点提取处理,确定待配准关键点云和目标关键点云;本发明实施例能够对点云进行预处理从而降低了点云配准的计算量和运算时间;另外,本发明实施例对所述待配准关键点云和所述目标关键点云进行快速点特征直方图描述子计算,并根据计算得到的特征描述子对所述待配准关键点云和所述目标关键点云进行初始配准处理,确定初始配准点云;在所述目标关键点云上对所述初始配准点云进行近邻搜索处理,并根据近邻搜索得到的对应点集合更新所述初始配准点云,确定点云配准;本发明实施例通过近邻搜索加速查找对应点对,能够使点云进行精确配准,提升了点云配准的收敛速度。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115439517B_ABST
    Figure CN115439517B_ABST
Patent Text Reader

Abstract

This invention discloses a point cloud registration method, system, electronic device, and storage medium. The method includes: acquiring a point cloud to be registered and a target point cloud; performing downsampling processing on the point cloud to be registered and the target point cloud to determine the downsampled point cloud to be registered and the target downsampled point cloud; performing key point extraction processing on the downsampled point cloud to be registered and the target downsampled point cloud to determine the key point cloud to be registered and the target key point cloud; calculating fast point feature histogram descriptors on the key point cloud to be registered and the target key point cloud, and performing initial registration processing on the key point cloud to be registered and the target key point cloud based on the calculated feature descriptors to determine the initial registration point cloud; performing nearest neighbor search processing on the target key point cloud on the initial registration point cloud, and updating the initial registration point cloud based on the corresponding point set obtained from the nearest neighbor search to determine the point cloud registration. This invention can perform accurate point cloud registration and can be widely applied in the field of point cloud registration technology.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

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

[0002] In recent years, 3D point cloud data has been widely used in fields such as 3D reconstruction, medicine, and computer vision. Point cloud registration technology refers to the process of merging 3D point cloud data from multiple perspectives into the same coordinate system and using position space transformation to overlap the uniform features of objects, thereby forming more complete point cloud data. It is one of the key steps in realizing subsequent 3D reconstruction and has an important impact on the final processing effect of the 3D model. However, current point cloud registration techniques suffer from problems such as slow convergence speed, low registration efficiency, and long registration time. Summary of the Invention

[0003] In view of this, embodiments of the present invention provide a point cloud registration method, system, electronic device, and storage medium to improve the accuracy and speed of point cloud registration.

[0004] On one hand, the present invention provides a point cloud registration method, the method comprising:

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

[0006] The point cloud to be registered and the target point cloud are downsampled to determine the downsampled point cloud to be registered and the target downsampled point cloud.

[0007] Key point extraction processing is performed on the downsampled point cloud to be registered and the target downsampled point cloud to determine the key point cloud to be registered and the target key point cloud.

[0008] Fast point feature histogram descriptor calculation is performed on the key point cloud to be registered and the target key point cloud, and initial registration processing is performed on the key point cloud to be registered and the target key point cloud based on the calculated feature descriptor to determine the initial registration point cloud;

[0009] Nearest neighbor search processing is performed on the initial registration point cloud on the target key point cloud, and the initial registration point cloud is updated according to the corresponding point set obtained by the nearest neighbor search to determine the point cloud registration.

[0010] Optionally, the step of downsampling the point cloud to be registered and the target point cloud to determine the downsampled point cloud to be registered and the target downsampled point cloud includes:

[0011] Axial bounding box establishment processes are performed on the point cloud to be registered and the target point cloud respectively to obtain the first axial bounding box and the second axial bounding box;

[0012] The point cloud to be registered is downsampled according to the first axial bounding box to determine the downsampled point cloud to be registered.

[0013] The target point cloud is determined by downsampling the target point cloud based on the second axial bounding box.

[0014] Optionally, the step of downsampling the point cloud to be registered based on the first axial bounding box to determine the downsampled point cloud to be registered includes:

[0015] The first axial bounding box is divided into equal parts to determine the first voxel mesh;

[0016] The centroids of the voxel points to be registered are calculated based on the first voxel grid, and the calculated centroids of the voxel points are used as the sampled values ​​of the point cloud to be registered to determine the downsampled point cloud to be registered.

[0017] Optionally, the step of performing key point extraction processing on the downsampled point cloud to be registered and the target downsampled point cloud to determine the key point cloud to be registered and the target key point cloud includes:

[0018] Scale space generation processing is performed on the downsampled point cloud to be registered and the target downsampled point cloud respectively to determine the first scale space and the second scale space;

[0019] Extreme value detection processing is performed on the first scale space and the second scale space to determine the first key point set and the second key point set;

[0020] Based on the first set of key points and the second set of key points, determine the key point cloud to be registered and the target key point cloud.

[0021] Optionally, the step of performing fast point feature histogram descriptor calculation on the key point cloud to be registered and the target key point cloud includes:

[0022] Key points and neighborhood points are obtained from the key point cloud to be registered and / or the target key point cloud;

[0023] Perform triplet relationship calculation on the key points and the neighboring points to determine a simplified point feature histogram;

[0024] The key points and the neighboring points are weighted according to the simplified point feature histogram to determine the fast point feature histogram descriptor.

[0025] Optionally, the initial registration process for the key point cloud to be registered and the target key point cloud based on the calculated fast point feature histogram descriptor, to determine the initial registration point cloud, includes:

[0026] Based on the fast point feature histogram descriptor, the sampling points are selected from the key point cloud to be registered to determine the sampling points.

[0027] Based on the sampling points, corresponding points are searched from the target key point cloud to determine the initial registration point cloud.

[0028] Optionally, a nearest neighbor search is performed on the initial registration point cloud on the target key point cloud, and the initial registration point cloud is updated according to the corresponding point set obtained from the nearest neighbor search to determine the point cloud registration, including:

[0029] Nearest neighbor search is performed on the initial registration point cloud on the target key point cloud, and the search points obtained by the search are filtered according to Euclidean distance to determine the corresponding point set;

[0030] The initial registration point cloud is updated based on the corresponding point set to determine the point cloud registration.

[0031] On the other hand, embodiments of the present invention also provide a system, including:

[0032] The first module is used to acquire the point cloud to be registered and the target point cloud;

[0033] The second module is used to perform downsampling processing on the point cloud to be registered and the target point cloud to determine the downsampled point cloud to be registered and the target downsampled point cloud.

[0034] The third module is used to perform key point extraction processing on the downsampled point cloud to be registered and the target downsampled point cloud to determine the key point cloud to be registered and the target key point cloud.

[0035] The fourth module is used to calculate feature descriptors for the key point cloud to be registered and the target key point cloud, and to perform initial registration processing on the key point cloud to be registered and the target key point cloud according to the calculated feature descriptors to determine the initial registration point cloud.

[0036] The fifth module is used to perform nearest neighbor search processing on the initial registration point cloud on the target key point cloud to determine the point cloud registration.

[0037] On the other hand, embodiments of the present invention also disclose an electronic device, including a processor and a memory;

[0038] The memory is used to store programs;

[0039] The processor executes the program to implement the method described above.

[0040] On the other hand, embodiments of the present invention also disclose a computer-readable storage medium storing a program that is executed by a processor to implement the methods described above.

[0041] On the other hand, embodiments of the present invention also disclose a computer program product or computer program, which includes computer instructions stored in a computer-readable storage medium. A processor of a computer device can read the computer instructions from the computer-readable storage medium and execute the computer instructions, causing the computer device to perform the aforementioned method.

[0042] Compared with existing technologies, the present invention, employing the above technical solutions, has the following technical effects: The embodiments of the present invention acquire a point cloud to be registered and a target point cloud; perform downsampling processing on the point cloud to be registered and the target point cloud to determine the downsampled point cloud to be registered and the target downsampled point cloud; perform key point extraction processing on the downsampled point cloud to be registered and the target downsampled point cloud to determine the key point cloud to be registered and the target key point cloud; the embodiments of the present invention can preprocess the point cloud, thereby reducing the computational load and processing time for point cloud registration; furthermore, the embodiments of the present invention can preprocess the point cloud to be registered... The registration key point cloud and the target key point cloud are subjected to fast point feature histogram descriptor calculation, and the initial registration processing is performed on the key point cloud to be registered and the target key point cloud according to the calculated feature descriptor to determine the initial registration point cloud; the initial registration point cloud is subjected to nearest neighbor search processing on the target key point cloud, and the initial registration point cloud is updated according to the corresponding point set obtained by the nearest neighbor search to determine the point cloud registration; the embodiment of the present invention accelerates the search for corresponding point pairs through nearest neighbor search, which enables the point cloud to be accurately registered and improves the convergence speed of point cloud registration. Attached Figure Description

[0043] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0044] Figure 1 This is a flowchart of a point cloud registration method provided in an embodiment of this application;

[0045] Figure 2 This is a schematic diagram of the preprocessing effect provided in the embodiments of this application;

[0046] Figure 3 This is a comparison diagram of the registration results provided in the embodiments of this application. Detailed Implementation

[0047] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.

[0048] First, let's analyze some of the terms used in this application:

[0049] Point cloud registration: In practical applications, due to incomplete point cloud data, rotational misalignment, translational misalignment, and other issues, it is necessary to register local point clouds to obtain a complete point cloud. Point cloud registration involves obtaining a suitable coordinate transformation, merging point clouds obtained from various perspectives into a unified coordinate system to form a complete data point cloud.

[0050] The lack of robustness in simple point-to-point correspondences in point clouds remains a challenge in point cloud registration. Many studies have focused on finding highly robust correspondences to estimate registration parameters and improve registration accuracy, reducing reliance on accurate initial poses. This application addresses the problems of slow convergence, low registration efficiency, and long registration time associated with the Iterative Closest Point (ICP) algorithm by proposing a new point cloud registration algorithm that not only improves registration accuracy but also increases registration speed.

[0051] Reference Figure 1 This invention provides a point cloud registration method, the method comprising:

[0052] S101. Obtain the point cloud to be registered and the target point cloud;

[0053] S102. Perform downsampling processing on the point cloud to be registered and the target point cloud to determine the downsampled point cloud to be registered and the target downsampled point cloud.

[0054] S103. Perform key point extraction processing on the downsampled point cloud to be registered and the target downsampled point cloud to determine the key point cloud to be registered and the target key point cloud.

[0055] S104. Perform fast point feature histogram descriptor calculation on the key point cloud to be registered and the target key point cloud, and perform initial registration processing on the key point cloud to be registered and the target key point cloud according to the calculated feature descriptor to determine the initial registration point cloud.

[0056] S105. Perform nearest neighbor search processing on the initial registration point cloud on the target key point cloud, and update the initial registration point cloud according to the corresponding point set obtained by the nearest neighbor search to determine the point cloud registration.

[0057] In this embodiment of the invention, firstly, a point cloud to be registered and a target point cloud are obtained. The point cloud to be registered is the point cloud that needs to be registered, and the target point cloud is the target of the point cloud registration. That is, the rotation and translation matrix between the point cloud to be registered and the target point cloud is calculated to transform the point cloud to be registered to the same coordinate system as the target point cloud. In this embodiment of the invention, the point cloud to be registered and the target point cloud are preprocessed separately. Voxel mesh is used for downsampling to obtain the downsampled point cloud to be registered and the downsampled point cloud to be registered. Next, this embodiment of the invention uses 3DSIFT (3D Scale Invariant Feature Transform Matching) features to extract key points from the two point clouds to obtain the key point cloud to be registered and the target key point cloud. Then, this embodiment of the invention calculates the FPFH (Fast Point Feature Histogram) features of the key points in the key point cloud to be registered and the target key point cloud to achieve local information description; and performs initial registration processing on the key point cloud to be registered and the target key point cloud according to the calculated feature descriptors to determine the initial registration point cloud. The initial registration algorithm can be the SAC-IA algorithm to achieve initial registration. Finally, in this embodiment of the invention, the initial registration point cloud is processed by a nearest neighbor search on the target key point cloud, and the initial registration point cloud is updated according to the corresponding point set obtained by the nearest neighbor search, thus completing the point cloud registration.

[0058] As a further preferred embodiment, in step S102 above, the downsampling processing of the point cloud to be registered and the target point cloud to determine the downsampled point cloud to be registered and the target downsampled point cloud includes:

[0059] Axial bounding box establishment processes are performed on the point cloud to be registered and the target point cloud respectively to obtain the first axial bounding box and the second axial bounding box;

[0060] The point cloud to be registered is downsampled according to the first axial bounding box to determine the downsampled point cloud to be registered.

[0061] The target point cloud is determined by downsampling the target point cloud based on the second axial bounding box.

[0062] In this embodiment of the invention, after obtaining the point cloud to be registered and the target point cloud, preprocessing is required to reduce the number of simplified point clouds and lower the complexity of subsequent algorithms. This preprocessing includes downsampling the point clouds. First, this embodiment establishes axial bounding boxes based on the point cloud to be registered and the target point cloud, resulting in a first axial bounding box and a second axial bounding box. An axial bounding box is a cube or two-dimensional rectangle capable of containing an object, arranged according to the coordinate axes of a coordinate system. The first axial bounding box surrounds the point cloud to be registered, and the second axial bounding box surrounds the target point cloud. Next, downsampling is performed on the point clouds based on the axial bounding boxes. This embodiment uses the same downsampling method for both the point cloud to be registered and the target point cloud.

[0063] Further, as a preferred embodiment, the step of downsampling the point cloud to be registered based on the first axial bounding box to determine the downsampled point cloud to be registered includes:

[0064] The first axial bounding box is divided into equal parts to determine the first voxel mesh;

[0065] The centroids of the voxel points to be registered are calculated based on the first voxel grid, and the calculated centroids of the voxel points are used as the sampled values ​​of the point cloud to be registered to determine the downsampled point cloud to be registered.

[0066] In this embodiment of the invention, the method for downsampling the point cloud based on the axial bounding box is the same. Therefore, this embodiment describes the specific process of downsampling the point cloud to be registered based on the first axial bounding box to determine the downsampled point cloud to be registered. First, in this embodiment of the invention, the first axial bounding box is divided into equal parts along the three-dimensional coordinate system based on the first axial bounding box, resulting in multiple voxels. The bounding box containing the voxels is assigned index values ​​along x, y, and z, respectively. The formula for calculating the index values ​​of the coordinate system is as follows:

[0067]

[0068]

[0069]

[0070] In the formula, X, Y, and Z represent the coordinate system index values, trunc represents rounding, n represents the number of sections along the x, y, and z axes, and d represents the total number of sections. x d represents the distance from a point to the left side of the bounding box. y d represents the distance from a point to the front surface of the bounding box. z L represents the distance from a point to the bottom surface of the bounding box. x L represents the length of the bounding box along the x-axis. y L represents the length of the bounding box along the y-axis. z This indicates the length of the bounding box along the z-axis.

[0071] The first voxel grid can be obtained based on the index values ​​of the coordinate system described above. The centroid of each voxel point is calculated, and the obtained centroid is used as the sample value of that voxel. This sample value is then used as the sample value of the point cloud to be registered, thus obtaining the downsampled point cloud to be registered.

[0072] As a further preferred embodiment, the step of performing key point extraction processing on the downsampled point cloud to be registered and the target downsampled point cloud to determine the key point cloud to be registered and the target key point cloud includes:

[0073] Scale space generation processing is performed on the downsampled point cloud to be registered and the target downsampled point cloud respectively to determine the first scale space and the second scale space;

[0074] Extreme value detection processing is performed on the first scale space and the second scale space to determine the first key point set and the second key point set;

[0075] Based on the first set of key points and the second set of key points, determine the key point cloud to be registered and the target key point cloud.

[0076] In this embodiment of the invention, key points are selected based on 3DSIFT (3D Scale Invariant Feature Transform Matching) features for both the to-be-registered downsampled point cloud and the target downsampled point cloud, simplifying the number of point clouds and reducing the complexity of subsequent algorithms. Specifically, this embodiment of the invention performs scale space generation processing on both the to-be-registered downsampled point cloud and the target downsampled point cloud to obtain a first scale space and a second scale space. The first scale space corresponds to the to-be-registered sampled point cloud, and the second scale space corresponds to the target downsampled point cloud. In this embodiment of the invention, the scale space generation method used for both the to-be-registered downsampled point cloud and the target downsampled point cloud is the same. The scale space L(x, y, z, δ) of the 3D point cloud is the convolution between the Gaussian function G(x, y, z, kδ) of the difference Gaussian model and the target model M(x, y, z) obtained in the above steps after downsampling, as shown in the following formula:

[0077] L=(x,y,z,δ)=G(x,y,z,kδ)*M(x,y,z)

[0078]

[0079] Where * represents convolution calculation; (x,y,z) represents the spatial location information of the point cloud; δ represents the spatial scale parameter; and k represents the scale size parameter.

[0080] Next, in this embodiment of the invention, extreme value detection processing is performed on the first and second scale spaces. First, the Gaussian difference model of the same scale layer is measured to determine the scale invariance of the voxel mesh. For point clouds, the DoG operator is used because the edge response of the point cloud is prone to generating unstable extreme points with large principal curvature differences, while the principal curvature differences of stable extreme points are small. The principal curvature of the extreme point is obtained by calculating the DoG operator, and the principal curvature can be used to determine whether the extreme point is located at the edge of the point cloud model. The extreme problem point refers to a Gaussian difference function space G(x,y,z,kδ), and the detection point must be compared with 28 points in the adjacent size or with 27*2 points in the corresponding adjacent size above and below in the space. When the number of detection points is greater than or less than 80 neighborhood points, the problem point is the 3D SIFT key point obtained in the space. According to this extreme value detection, the first key point set and the second key point set can be obtained, and finally, the simplified point cloud to be registered key point cloud and the target key point cloud are obtained. Figure 2 As shown, Figure 2 This is a schematic diagram of the preprocessing effect provided in the embodiments of this application.

[0081] Further, as a preferred embodiment, the step of performing fast point feature histogram descriptor calculation on the key point cloud to be registered and the target key point cloud includes:

[0082] Key points and neighborhood points are obtained from the key point cloud to be registered and / or the target key point cloud;

[0083] Perform triplet relationship calculation on the key points and the neighboring points to determine a simplified point feature histogram;

[0084] The key points and the neighboring points are weighted according to the simplified point feature histogram to determine the fast point feature histogram descriptor.

[0085] In this embodiment of the invention, an arbitrary key point P is obtained from the key point cloud to be registered and / or the target key point cloud. k After forming a local coordinate system with the neighboring points P1 to P5, the correspondence between the feature point and the neighboring points is obtained. The simplified point feature histogram (SPFH) is obtained by calculating the triples (α, φ, θ) of the relationship between the feature point and the neighboring points. By weighting the SPFH values ​​of the neighboring points and the point itself, the missing relationship between the new neighboring point and the original neighboring points can be compensated for, ultimately yielding P... k The eigenvalue of the FPFH.

[0086] Further, as a preferred embodiment, the initial registration process of the key point cloud to be registered and the target key point cloud based on the calculated fast point feature histogram descriptor, to determine the initial registration point cloud, includes:

[0087] Based on the fast point feature histogram descriptor, the sampling points are selected from the key point cloud to be registered to determine the sampling points.

[0088] Based on the sampling points, corresponding points are searched from the target key point cloud to determine the initial registration point cloud.

[0089] In this embodiment of the invention, when selecting multiple sampling points from the keypoint cloud to be registered, the FPFH features of the selected sampling points must be different, and the distance between sampling points must exceed a preset minimum distance threshold, which can be set according to the actual situation. Then, corresponding points are found on the sampling points. First, one or more similar points with FPFH features are searched from the target keypoint cloud. Finally, corresponding points are sampled from the keypoint cloud to be registered and the target keypoint cloud to obtain the initial registration point cloud.

[0090] As a further preferred embodiment, a nearest neighbor search is performed on the initial registration point cloud on the target key point cloud, and the initial registration point cloud is updated according to the corresponding point set obtained from the nearest neighbor search to determine the point cloud registration, including:

[0091] Nearest neighbor search is performed on the initial registration point cloud on the target key point cloud, and the search points obtained by the search are filtered according to Euclidean distance to determine the corresponding point set;

[0092] The initial registration point cloud is updated based on the corresponding point set to determine the point cloud registration.

[0093] In this embodiment of the invention, the ICP algorithm is improved using a KD-tree, specifically by performing a nearest neighbor search on the coarsely registered points using a K-dimensional proximity method. Euclidean distance is used as the criterion to remove registration keypoints whose Euclidean distance exceeds a threshold. By accelerating the search for corresponding point pairs, precise registration of the two point clouds is achieved. Specifically, a given target keypoint cloud and an initial registration point cloud are taken as the point cloud set required for precise registration. The target point cloud set is determined on the initial registration point cloud, and then the nearest corresponding point pair n to the target point cloud set is searched on the target keypoint cloud Q. i This involves obtaining the corresponding point set of points in the target point cloud. The initial registration point cloud P′ is updated, yielding the rotation matrix R and translation vector T, and the equation P′ = Pn is calculated. i+Q, obtain a new set of corresponding point pairs, and solve for the minimum mean square error of the corresponding point pair set. Given a threshold and a maximum number of iterations, obtain the final rotation matrix R and translation vector T. Based on the rotation matrix and translation vector, the point cloud to be registered can be transformed to the same coordinate system as the target point cloud, completing the point cloud registration. Figure 3 As shown, Figure 3 A comparison diagram of registration results provided for embodiments of this application.

[0094] On the other hand, embodiments of the present invention also provide a system, including:

[0095] The first module is used to acquire the point cloud to be registered and the target point cloud;

[0096] The second module is used to perform downsampling processing on the point cloud to be registered and the target point cloud to determine the downsampled point cloud to be registered and the target downsampled point cloud.

[0097] The third module is used to perform key point extraction processing on the downsampled point cloud to be registered and the target downsampled point cloud to determine the key point cloud to be registered and the target key point cloud.

[0098] The fourth module is used to calculate feature descriptors for the key point cloud to be registered and the target key point cloud, and to perform initial registration processing on the key point cloud to be registered and the target key point cloud according to the calculated feature descriptors to determine the initial registration point cloud.

[0099] The fifth module is used to perform nearest neighbor search processing on the initial registration point cloud on the target key point cloud to determine the point cloud registration.

[0100] and Figure 1 Corresponding to the method described above, this embodiment of the invention also provides an electronic device, including a processor and a memory; the memory is used to store a program; the processor executes the program to implement the method described above.

[0101] and Figure 1 Corresponding to the method described above, embodiments of the present invention also provide a computer-readable storage medium storing a program that is executed by a processor to implement the method described above.

[0102] This invention also discloses a computer program product or computer program, which includes computer instructions stored in a computer-readable storage medium. A processor of a computer device can read the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, causing the computer device to perform... Figure 1 The method shown.

[0103] In summary, the embodiments of the present invention have the following advantages: The present invention reduces the computational load and processing time of point clouds through preprocessing. Furthermore, the present invention can obtain good registration results without requiring a good initial position; the optimal transformation matrix is ​​estimated using an improved KD-tree algorithm, resulting in fast convergence and high registration accuracy.

[0104] In some alternative embodiments, the functions / operations mentioned in the block diagrams may not occur in the order shown in the operation diagrams. For example, depending on the functions / operations involved, two consecutively shown blocks may actually be executed substantially simultaneously, or the blocks may sometimes be executed in reverse order. Furthermore, the embodiments presented and described in the flowcharts of this invention are provided by way of example to provide a more comprehensive understanding of the technology. The disclosed methods are not limited to the operations and logic flows presented herein. Alternative embodiments are contemplated in which the order of various operations is altered and sub-operations described as part of a larger operation are executed independently.

[0105] Furthermore, although the invention has been described in the context of functional modules, it should be understood that, unless otherwise stated, one or more of the described functions and / or features may be integrated into a single physical device and / or software module, or one or more functions and / or features may be implemented in a separate physical device or software module. It is also understood that a detailed discussion of the actual implementation of each module is unnecessary for understanding the invention. Rather, given the properties, functions, and internal relationships of the various functional modules in the apparatus disclosed herein, the actual implementation of the module will be understood within the scope of conventional skill of an engineer. Therefore, those skilled in the art can implement the invention as set forth in the claims using ordinary techniques without excessive experimentation. It is also understood that the specific concepts disclosed are merely illustrative and not intended to limit the scope of the invention, which is determined by the full scope of the appended claims and their equivalents.

[0106] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this invention, essentially, or the part that contributes to the prior art, or a portion 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 this 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.

[0107] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as a sequenced list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by, or in conjunction with, an instruction execution system, apparatus, or device (such as a computer-based system, a processor-included system, or other system that can fetch and execute instructions from, an instruction execution system, apparatus, or device). For the purposes of this specification, "computer-readable medium" can be any means that can contain, store, communicate, propagate, or transmit programs for use by, or in conjunction with, an instruction execution system, apparatus, or device.

[0108] More specific examples of computer-readable media (a non-exhaustive list) include: electrical connections (electronic devices) having one or more wires, portable computer disk drives (magnetic devices), random access memory (RAM), read-only memory (ROM), erasable and editable read-only memory (EPROM or flash memory), fiber optic devices, and portable optical disc read-only memory (CDROM). Furthermore, computer-readable media can even be paper or other suitable media on which the program can be printed, since the program can be obtained electronically, for example, by optically scanning the paper or other medium, followed by editing, interpreting, or otherwise processing as necessary, and then stored in computer memory.

[0109] It should be understood that various parts of the present invention can be implemented in hardware, software, firmware, or a combination thereof. In the above embodiments, multiple steps or methods can be implemented in software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware, as in another embodiment, it can be implemented using any one or a combination of the following techniques known in the art: discrete logic circuits having logic gates for implementing logical functions on data signals, application-specific integrated circuits (ASICs) having suitable combinational logic gates, programmable gate arrays (PGAs), field-programmable gate arrays (FPGAs), etc.

[0110] In the description of this specification, references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of the invention. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples.

[0111] Although embodiments of the invention have been shown and described, those skilled in the art will understand that various changes, modifications, substitutions and alterations can be made to these embodiments without departing from the principles and spirit of the invention, the scope of which is defined by the claims and their equivalents.

[0112] The above is a detailed description of the preferred embodiments of the present invention, but the present invention is not limited to the embodiments described. Those skilled in the art can make various equivalent modifications or substitutions without departing from the spirit of the present invention, and these equivalent modifications or substitutions are all included within the scope defined by the claims of this application.

Claims

1. A point cloud registration method, characterized in that, The method includes: Obtain the point cloud to be registered and the target point cloud; The point cloud to be registered and the target point cloud are downsampled to determine the downsampled point cloud to be registered and the target downsampled point cloud. Key point extraction processing is performed on the downsampled point cloud to be registered and the target downsampled point cloud to determine the key point cloud to be registered and the target key point cloud. Fast point feature histogram descriptor calculation is performed on the key point cloud to be registered and the target key point cloud, and initial registration processing is performed on the key point cloud to be registered and the target key point cloud based on the calculated feature descriptor to determine the initial registration point cloud; Nearest neighbor search processing is performed on the initial registration point cloud on the target key point cloud, and the initial registration point cloud is updated according to the corresponding point set obtained by the nearest neighbor search to determine the point cloud registration; The step of extracting key points from the downsampled point cloud to be registered and the target downsampled point cloud to determine the key point cloud to be registered and the target key point cloud includes: Scale space generation processing is performed on the downsampled point cloud to be registered and the target downsampled point cloud respectively to determine the first scale space and the second scale space; Extreme value detection processing is performed on the first scale space and the second scale space to determine the first key point set and the second key point set; Based on the first set of key points and the second set of key points, determine the key point cloud to be registered and the target key point cloud.

2. The method according to claim 1, characterized in that, The step of downsampling the point cloud to be registered and the target point cloud to determine the downsampled point cloud to be registered and the target downsampled point cloud includes: Axial bounding box establishment processes are performed on the point cloud to be registered and the target point cloud respectively to obtain the first axial bounding box and the second axial bounding box; The point cloud to be registered is downsampled according to the first axial bounding box to determine the downsampled point cloud to be registered. The target point cloud is determined by downsampling the target point cloud based on the second axial bounding box.

3. The method according to claim 2, characterized in that, The step of downsampling the point cloud to be registered based on the first axial bounding box to determine the downsampled point cloud includes: The first axial bounding box is divided into equal parts to determine the first voxel mesh; The centroids of the voxel points to be registered are calculated based on the first voxel grid, and the calculated centroids of the voxel points are used as the sampled values ​​of the point cloud to be registered to determine the downsampled point cloud to be registered.

4. The method according to claim 1, characterized in that, The step of performing fast point feature histogram descriptor calculation on the key point cloud to be registered and the target key point cloud includes: Key points and neighborhood points are obtained from the key point cloud to be registered and / or the target key point cloud; Perform triplet relationship calculation on the key points and the neighboring points to determine a simplified point feature histogram; The key points and the neighboring points are weighted according to the simplified point feature histogram to determine the fast point feature histogram descriptor.

5. The method according to claim 1, characterized in that, The initial registration process for the key point cloud to be registered and the target key point cloud based on the calculated fast point feature histogram descriptor, to determine the initial registration point cloud, includes: Based on the fast point feature histogram descriptor, the sampling points are selected from the key point cloud to be registered to determine the sampling points. Based on the sampling points, corresponding points are searched from the target key point cloud to determine the initial registration point cloud.

6. The method according to claim 1, characterized in that, On the target key point cloud, a nearest neighbor search is performed on the initial registration point cloud, and the initial registration point cloud is updated according to the corresponding point set obtained from the nearest neighbor search to determine the point cloud registration, including: A nearest neighbor search is performed on the initial registration point cloud on the target key point cloud, and the search points obtained are filtered according to Euclidean distance to determine the corresponding point set; The initial registration point cloud is updated based on the corresponding point set to determine the point cloud registration.

7. A point cloud registration system, characterized in that, The system includes: The first module is used to acquire the point cloud to be registered and the target point cloud; The second module is used to perform downsampling processing on the point cloud to be registered and the target point cloud to determine the downsampled point cloud to be registered and the target downsampled point cloud. The third module is used to perform key point extraction processing on the downsampled point cloud to be registered and the target downsampled point cloud to determine the key point cloud to be registered and the target key point cloud. The fourth module is used to calculate feature descriptors for the key point cloud to be registered and the target key point cloud, and to perform initial registration processing on the key point cloud to be registered and the target key point cloud according to the calculated feature descriptors to determine the initial registration point cloud. The fifth module is used to perform nearest neighbor search processing on the initial registration point cloud on the target key point cloud to determine the point cloud registration; The third module is used to perform key point extraction processing on the downsampled point cloud to be registered and the target downsampled point cloud to determine the key point cloud to be registered and the target key point cloud, including: Scale space generation processing is performed on the downsampled point cloud to be registered and the target downsampled point cloud respectively to determine the first scale space and the second scale space; Extreme value detection processing is performed on the first scale space and the second scale space to determine the first key point set and the second key point set; Based on the first set of key points and the second set of key points, determine the key point cloud to be registered and the target key point cloud.

8. An electronic device, characterized in that, The electronic device includes a memory and a processor; The memory is used to store programs; The processor executes the program to implement the method of any one of claims 1 to 6.

9. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by a processor, it implements the method of any one of claims 1 to 6.