Robust three-dimensional point cloud registration method based on matching correction

By adopting a matching correction method in three-dimensional point cloud registration, high consistency matching is extracted and verification is performed, the problem of large calculation volume and insufficient robustness in the existing technology is solved, and efficient and robust point cloud registration effect is achieved.

CN119991755APending Publication Date: 2025-05-13NORTHWESTERN POLYTECHNICAL UNIV
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510079285.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-01-17
Publication Date
2025-05-13

AI Technical Summary

Technical Problem

The existing three-dimensional point cloud registration methods have large calculations, insufficient robustness and generalization, and it is difficult to obtain accurate registration results especially in the case of noise and low overlap.

Method used

A robust three-dimensional point cloud registration method based on matching correction is adopted to form a one-to-one and one-to-many correspondence relationship by preprocessing and feature extraction of the input point cloud. Then, a high consistency match is extracted from the one-to-many correspondence relationship, the one-to-one correspondence relationship is verified, and the compatibility score is corrected to finally determine the positioning transformation matrix.

Benefits of technology

This method simplifies the computing process, improves robustness and generalization, and can obtain more accurate point cloud registration results under low overlap rate and severe noise, without requiring a large amount of computing resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119991755A_ABST
    Figure CN119991755A_ABST
Patent Text Reader

Abstract

The invention particularly relates to a matching correction-based robust three-dimensional point cloud registration method, which comprises the following steps of: firstly, preprocessing an input point cloud, extracting local features, and respectively forming one-to-one and one-to-many corresponding relationships through feature matching; and extracting a one-to-many relationship set in the distribution set from the one-to-many corresponding relationship, and verifying the one-to-many corresponding relationship by using the one-to-many relationship set. And finally, calculating a six-degree-of-freedom pose hypothesis in a hypothesis verification mode. The method is simple and efficient, does not need a large number of computing resources, can effectively correct some matching abnormal values, and can also achieve successful registration under the conditions of low point cloud overlapping rate and serious noise. The method is high in universality, does not need any training, and can be suitable for various algorithms to pre-process the input matching relation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer vision technology, and in particular to a robust three-dimensional point cloud registration method based on matching correction. Background Art

[0002] A point cloud is a dataset consisting of a set of three-dimensional coordinate points, usually obtained through laser scanners, stereo vision, depth cameras or other three-dimensional sensors. Each point represents a position in space and may be accompanied by other information such as color and normal vector. Point clouds are usually sparse and noisy, which brings challenges to point cloud registration. Point cloud registration is the process of aligning two or more point cloud datasets to eliminate the spatial differences between them. It is widely used in three-dimensional reconstruction, robot navigation, autonomous driving, augmented reality and other fields. Due to the hardware limitations of scanners and sensors, the collected point cloud data often has quality problems, which brings troubles to the point cloud registration task. Common problems include:

[0003] 1) Noise and incomplete data: Point cloud data is often affected by sensor errors, occlusions, or incomplete data collection, resulting in the presence of noise and missing points, which interferes with the geometric structure and feature extraction of the point cloud, reducing the registration accuracy. 2) Low overlap rate: When the sensor scans an object from different angles, it may cause the overlapping area of ​​the point cloud at different viewing angles to be smaller, increasing the requirements of the registration algorithm for initial alignment and matching. 3) Resolution variation: The different distances between the sensor and the object will lead to inconsistent resolution of the point cloud data, which will affect the feature matching and accuracy in the subsequent processing process. Traditional registration methods rely on manually designed features and matching strategies. In recent years, with the rise of deep learning and deep feature extraction methods, learning-based point cloud registration methods have made significant progress in robustness and accuracy. Good registration results have been achieved. However, these methods usually require a lot of computing resources, and their generalization needs to be improved.

[0004] It should be noted that the information disclosed in the above background technology section is only used to enhance the understanding of the background of the present invention, and therefore may include information that does not constitute the prior art known to ordinary technicians in the field. Summary of the invention

[0005] The present invention provides a robust three-dimensional point cloud registration method based on matching correction, which is used to solve the problem of large calculation amount of existing point cloud registration methods and improve the robustness and generalization of existing point cloud registration methods.

[0006] Other features and advantages of the present invention will become apparent from the following detailed description, or may be learned in part by practice of the present invention.

[0007] According to a first aspect of the present invention, a robust three-dimensional point cloud registration method based on matching correction is provided, the method comprising:

[0008] Preprocess the input source point cloud and target point cloud respectively and extract features;

[0009] Through feature matching, a one-to-one correspondence set c and a one-to-many correspondence set C of the source point cloud and the target point cloud are formed respectively. super ;

[0010] In the one-to-many correspondence set C super Extract the matches that meet the consistency requirements to build a highly consistent one-to-one correspondence set C good , based on the set C good Calculate the one-to-many relationship set C super The compatibility score for each one-to-many relationship in ;

[0011] Determine whether the target point cloud index of the same source point cloud index in the match with the highest compatibility score in the one-to-one correspondence set c is consistent. If not, replace it with the index of the current match with the highest compatibility score to obtain the corrected one-to-one correspondence set c′;

[0012] The final pose transformation matrix is ​​determined based on the set c′.

[0013] In some exemplary embodiments, the preprocessing includes downsampling processing.

[0014] In some exemplary embodiments, the method for obtaining the one-to-one correspondence set c between the source point cloud and the target point cloud includes:

[0015] In the feature space of the target point cloud, a feature descriptor whose distance to the feature descriptor in the feature space of the source point cloud is closest is searched, so as to form a one-to-one correspondence relationship set c between the source point cloud and the target point cloud.

[0016] In some exemplary embodiments, the one-to-many correspondence set C between the source point cloud and the target point cloud super Methods for obtaining include:

[0017] Calculate the distance between the feature descriptor of the source point cloud and the feature descriptor of the target point cloud, sort them from near to far according to the distance, take the feature descriptors of the first k target point clouds, and form a one-to-many correspondence set C between the source point cloud and the target point cloud super .

[0018] In some exemplary embodiments, the one-to-many correspondence set C super Extract the matches that meet the consistency requirements to build a highly consistent one-to-one correspondence set C good ,include:

[0019] One-to-many correspondence relationship set C superFor each one-to-many correspondence in , use the Welzl algorithm to find the minimum bounding sphere of the k target point cloud indexes;

[0020] The specific algorithm idea is as follows: The purpose of each layer of recursion is to calculate n p The best bounding sphere of the target point cloud, n p ≤ k:

[0021] First, according to the first n p -1 point generates a sphere, and then determines the nth p Is the point inside the sphere?

[0022] If yes, keep the current sphere;

[0023] If not, then based on the current sphere and the nth p points to regenerate a new sphere, where the nth p The points must lie on the newly generated sphere;

[0024] Recursive termination condition: When there are only one or two points left, generate a sphere directly; if there are three points on the sphere, generate the circumscribed sphere of these three points;

[0025] Record the minimum bounding sphere radius of each one-to-many correspondence, and construct a one-to-one correspondence set C with a high consistency if the radius is less than the set threshold good .

[0026] In some exemplary embodiments, the one-to-one correspondence set C based on high consistency good Calculate the one-to-many relationship set C super The compatibility score for each one-to-many relationship in , including:

[0027] According to the set C good Point pairs, each one-to-many relationship set C super The rigid distance measure is calculated for the point pairs;

[0028] Compute the set C based on the rigid distance measure good Point pairs, each one-to-many relationship set C super The compatibility score between pairs of points.

[0029] In some exemplary embodiments, determining a final posture transformation matrix based on the corrected one-to-one correspondence set c′ includes:

[0030] Randomly select 3 pairs of key points from the set c′ as the initial matching point pairs and solve the pose transformation matrix;

[0031] Calculate the corresponding points of the remaining n-3 key points in the source point cloud after being transformed by the pose transformation matrix, and calculate the Euclidean distance between the corresponding points obtained after the transformation and the originally paired n-3 key points;

[0032] Determine key points as inliers and outliers based on Euclidean distance;

[0033] After several random sampling calculations, the pose transformation matrix corresponding to the maximum number of inner points is taken as the final pose transformation matrix.

[0034] According to a second aspect of the present invention, there is provided a storage medium having a computer program stored thereon, wherein when the computer program is executed by a processor, the robust three-dimensional point cloud registration method based on matching correction described in the first aspect is implemented.

[0035] According to a third aspect of the present invention, there is provided a computer program product having a computer program stored thereon, which, when executed by a processor, implements the robust three-dimensional point cloud registration method based on matching correction described in the first aspect.

[0036] According to a fourth aspect of the present invention, there is provided an electronic device, comprising:

[0037] Processor; and

[0038] A memory, configured to store executable instructions of the processor;

[0039] Wherein, the processor is configured to implement the robust three-dimensional point cloud registration method based on matching correction described in the first aspect above by executing the executable instructions.

[0040] The embodiment of the present invention provides a robust three-dimensional point cloud registration method based on matching correction. The method first pre-processes the input point cloud and extracts local features, and forms one-to-one and one-to-many correspondences through feature matching. Next, a one-to-many relationship set in the distribution set is extracted from the one-to-many correspondence, and the one-to-many set is used to verify the one-to-one correspondence. Finally, the six-degree-of-freedom pose hypothesis is calculated in a hypothesis verification manner. It has the following advantages:

[0041] 1. The method of the present invention is simple and efficient, does not require a large amount of computing resources, and uses a one-to-many correspondence relationship to verify and correct a one-to-one correspondence relationship, which can effectively correct some matching outliers;

[0042] 2. The method of the present invention is highly robust and can still obtain relatively accurate results even when the point cloud has a low overlap rate and severe noise;

[0043] 3. The method of the present invention is highly versatile, does not require any training, and can be applied to a variety of algorithms to pre-process input matching relationships.

[0044] It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention. BRIEF DESCRIPTION OF THE DRAWINGS

[0045] The accompanying drawings herein are incorporated into and constitute a part of the specification, illustrate embodiments consistent with the present invention, and together with the specification are used to explain the principles of the present invention. Obviously, the accompanying drawings described below are only some embodiments of the present invention, and for those of ordinary skill in the art, other accompanying drawings can be obtained based on these accompanying drawings without creative work.

[0046] Figure 1 A block diagram of an implementation of a robust three-dimensional point cloud registration method based on matching correction is schematically shown;

[0047] Figure 2 A schematic diagram schematically illustrates an input point cloud set according to an exemplary embodiment of the present invention;

[0048] Figure 3 A schematic diagram schematically illustrates a clustering result of a relatively concentrated multi-correspondence relationship in an exemplary embodiment of the present invention: (a) and (b) are respectively a part of C super Feature matching, part C good Feature matching visualization;

[0049] Figure 4 A schematic diagram schematically showing a corrected one-to-one matching relationship result of an exemplary embodiment of the present invention;

[0050] Figure 5 A schematic diagram schematically illustrating the registration effect of an exemplary embodiment of the present invention;

[0051] Figure 6 A diagram schematically illustrates a visualization effect of 3D Match & 3D LoMatch dataset registration according to an exemplary embodiment of the present invention.

[0052] Figure 7 The figure schematically shows the composition of an electronic device in an exemplary embodiment of the present invention. DETAILED DESCRIPTION

[0053] Example embodiments will now be described more fully with reference to the accompanying drawings. However, example embodiments can be implemented in many forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that the present invention will be more comprehensive and complete and fully convey the concepts of the example embodiments to those skilled in the art. The described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.

[0054] In addition, the accompanying drawings are only schematic illustrations of the present invention and are not necessarily drawn to scale. The same reference numerals in the figures represent the same or similar parts, and their repeated description will be omitted. Some of the block diagrams shown in the accompanying drawings are functional entities and do not necessarily correspond to physically or logically independent entities. These functional entities can be implemented in software form, or implemented in one or more hardware modules or integrated circuits, or implemented in different networks and / or processor devices and / or microcontroller devices.

[0055] In view of the shortcomings and deficiencies of the prior art, the present invention provides a robust three-dimensional point cloud registration method based on matching correction, comprising the following steps:

[0056] Step 1: Input point cloud P s and P t Downsampling, using feature descriptors to construct input point cloud P s and P t Feature descriptor and

[0057] Step 1-1: Use voxel downsampling method to reduce the number of points in the input point cloud. It is recommended that the number of point clouds after downsampling is about 30,000-70,000;

[0058] Step 1-2: Randomly select key points from two point clouds respectively and

[0059] Step 1-3: Get the local area where each key point is located and construct a local feature descriptor

[0060] Step 2: Form input point cloud P through feature matching s and P t One-to-one correspondence between One-to-many correspondence Represents a feature in the source point cloud There are k optional matching targets in the target point cloud

[0061] Step 2-1: Search in the feature space for the feature descriptor f i s ,i∈[1,m] is the closest f j t ,j∈[1,n] forms the input point cloud P s and P t One-to-one correspondence between Search and The distance to the first k is smaller Form a one-to-many correspondence relationship C super =(pjs,,pjkt). pjs,pjkt represent points in the input point clouds Ps and Pt respectively, and k represents a feature in the source point cloud There are k optional matching targets in the target point cloud

[0062] Step 3: From C super Filter out matches with higher consistency from the set: select the match with index 0 (i.e. the index corresponding to the one-to-one correspondence) to construct the feature matching set C good ;

[0063] Step 3-1: C super For each one-to-many relationship in the set, the Welzl algorithm is used to find the minimum bounding sphere of the k target point cloud indexes;

[0064] The specific algorithm idea is as follows: the purpose of each layer of recursion is to calculate n p Target point cloud (n p ≤k) is the best bounding sphere:

[0065] First, according to the first n p -1 point generates a sphere, and then determines the nth p Is the point inside the sphere?

[0066] If yes, keep the current sphere;

[0067] If not, then based on the current sphere and the nth p points to regenerate a new sphere, where the nth p The points must lie on the newly generated sphere.

[0068] Recursive termination condition: When there are only one or two points left, generate a sphere directly; if there are three points on the sphere, generate the circumscribed sphere of these three points.

[0069] Step 3-2: Record the minimum bounding sphere radius of each one-to-many correspondence, where the radius is less than the set threshold t radius Join C good gather.

[0070] Step 4: Match the feature set C good With C super Calculate the compatibility scores for the k root matches in all one-to-many correspondences in the collection, and record the matching index with the highest compatibility in each one-to-many correspondence;

[0071] Step 4-1: Use C good Set Computation and C super The compatibility distance of each one-to-many correspondence of the set is calculated according to Cgood Point pair Each one-to-many relationship has a point pair Here k rigid distance measures are calculated:

[0072]

[0073] Step 4-2: Calculate the distance between each pair of matches (c i ,c j ) between:

[0074]

[0075] Among them, d cmp is the distance parameter;

[0076] Step 4-3: Use the length k array MatchScores to count each C good Calculate c j The k root matches in the maximum compatibility are the number of matches that satisfy the maximum compatibility. The Compare function returns the number of matches that satisfy the maximum compatibility. good The index value of the maximum compatibility.

[0077] MatchScores[Compare(c j1 ,c j2 ,...,c jk )]+=1(3)

[0078] Step 5: After processing each one-to-many matching relationship, count the matches with the highest compatibility score. If the match is inconsistent with the target point cloud index of the same source point cloud index in the one-to-one matching relationship, replace it with the index of the match with the highest compatibility score at this time;

[0079] Furthermore, in step 5, des_index(C i ) to get the target point cloud index corresponding to the source point cloud index i in a one-to-one relationship, and use argmax(C i ) function gets each C i ∈C super The target index that meets the largest number of compatibility requirements.

[0080] If des_index(C i )≠argmax(C i ), indicating that the index that satisfies the largest number of compatibility in a one-to-many correspondence is not the corresponding target index in the one-to-many correspondence, then argmax(C i ) replace des_index(C i ).

[0081] argmax(Ci )=arg max 1≤m≤K MatchScores[m] (4)

[0082]

[0083] Step 6: The backend performs a simple matching hypothesis check and evaluation. Here we use the ransac algorithm to calculate the final transformation matrix.

[0084] Step 6-1: Randomly select 3 pairs of key points from the one-to-one correspondence set C As the initial matching point pair, solve the pose transformation matrix T.

[0085] Step 6-2: Calculate the remaining n-3 key points in the source point cloud The corresponding point Q obtained after the matrix T transformation i (x i ,y i ,z i ), and calculate the n-3 key points of these points and the original pairing The Euclidean distance d between i , and its calculation formula is as follows:

[0086]

[0087] Step 6-3: If d i <The set distance threshold, then the key point is an inner point, that is, a correct matching point pair, otherwise it is an outer point.

[0088] Step 6-4: Compare the current number of interior points. If it is greater than the current optimal number of interior points N i (Assume the initial optimal number of internal points N i is 0), the current transformation matrix T is counted as the current best matrix estimate, and the maximum number of inner points N is updated. i value.

[0089] Step 6-5: After several random sampling calculations (reaching the maximum number of iterations or the number of inliers remains basically unchanged), compare the number of inliers obtained in each iteration, and the maximum number of inliers N i The corresponding transformation matrix T is the pose transformation relationship between the two frames of point clouds that need to be obtained.

[0090] Below, each step of the phased array radar design method in this example implementation will be described in more detail with reference to the accompanying drawings and embodiments.

[0091] Embodiment 1:

[0092] Figure 1A process of a robust three-dimensional point cloud registration method based on matching correction is provided in an embodiment of the present application.

[0093] (1) Input point cloud preprocessing and feature extraction. This is achieved through the following ①-②:

[0094] ① Input point cloud P s and P t (like Figure 2 Downsampling is performed to simplify the structure of point cloud data and retain basic shape features.

[0095] ② Extract key points from the downsampled point cloud and And use the feature descriptor to construct a local feature descriptor and

[0096] (2) Generate initial one-to-one and one-to-many feature matching. This is achieved through the following ①-②:

[0097] ①Search in the feature space for the feature descriptor f i s ,i∈[1,m] is the closest f j t ,j∈[1,n] forms the input point cloud P s and P t One-to-one correspondence between One-to-many correspondence Represent the input point cloud P s and P t point in the source point cloud, k represents a feature f i s There are k optional matching targets in the target point cloud In this embodiment, k is set to 10.

[0098] ② For C super For each one-to-many relationship in the set, the Welzl algorithm is used to find the minimum bounding sphere of k target point cloud indexes, where the minimum bounding sphere radius is less than the set threshold t radius Join C good Set. Set radius In this embodiment, the threshold is 0.1.

[0099] C super , C good The initial feature matching of the set is as follows Figure 3 As shown in (a) and (b).

[0100] (3) Correct the matching. This is achieved by the following steps ①-②:

[0101] ①Use C good Set Computation and C super The compatibility distance of each one-to-many correspondence of the set is calculated according to C good Point pair Each one-to-many relationship has a point pair Here k rigid distance measures are calculated:

[0102]

[0103] The rigid distance constraint is used to calculate the distance between each pair of matches (c i ,c j ) between:

[0104]

[0105] Among them, d cmp is the distance parameter;

[0106] ②Use the array MatchScores of length k to count each C good Calculate c j The k root matches in the maximum compatibility are the number of matches that satisfy the maximum compatibility. The Compare function returns the number of matches that satisfy the maximum compatibility. good The index value of the maximum compatibility.

[0107] MatchScores[Compare(c j1 ,c j2 ,...,c jk )]+=1(3)

[0108] After processing each one-to-many matching relationship, count the matches with the highest compatibility score. If the match is inconsistent with the target point cloud index of the same source point cloud index in the one-to-one matching relationship, replace it with the index of the match with the highest compatibility score at this time. This is achieved through the following steps:

[0109] Use des_index(C i ) to get the target point cloud index corresponding to the source point cloud index i in a one-to-one relationship, and use argmax(C i ) function gets each C i ∈C super The target index that meets the largest number of compatibility requirements.

[0110] If des_index(C i )≠argmax(C i ), indicating that the index that satisfies the largest number of compatibility in a one-to-many correspondence is not the corresponding target index in the one-to-many correspondence, then argmax(C i) replace des_index(C i ).

[0111] argmax(C i ) = argmax 1≤m≤K MatchScores[m](4)

[0112]

[0113] (5) Generate hypotheses. This is achieved through the following steps ①-②:

[0114] ① Randomly select 3 pairs of key points from the one-to-one correspondence set C as the initial matching point pair.

[0115] ② Use SVD to solve the corresponding pose hypothesis.

[0116] (6) Evaluate the hypothesis. This is done through the following ①-③:

[0117] ① Calculate the remaining n-3 key points in the source point cloud The corresponding point Q obtained after the matrix T transformation i (x i ,y i ,z i ), and calculate the n-3 key points of these points and the original pairing The Euclidean distance d between i , and its calculation formula is as follows:

[0118]

[0119] ②If d i <The set distance threshold, then the key point is an interior point, that is, a correct matching point pair, otherwise it is an exterior point. Compare the current number of interior points, if it is greater than the current optimal number of interior points N i (Assume that the initial optimal number of internal points is N i is 0), the current transformation matrix T is counted as the current best matrix estimate, and the maximum number of inner points N is updated. i value.

[0120] ③ After several random sampling calculations (reaching the maximum number of iterations or the number of interior points remains basically unchanged), compare the number of interior points obtained in each iteration, and the maximum number of interior points N i The corresponding transformation matrix T is the pose transformation relationship between the two frames of point clouds that need to be obtained.

[0121] From the performance of this method on the 3D dataset ( Figure 5 , Figure 6, Table 1, Table 2) It can be seen that the method of the present invention can accurately register point cloud data and is superior to the existing registration methods. Table 1 and Table 2 are the evaluation results of the registration of 3DMatch and 3DLoMatch datasets, respectively. The table shows the recall rate (Registration Recall, RR), rotation error (Rotation Error, RE) and translation error (Translation Error, TE) indicators under the recommended evaluation threshold of the dataset, and the best results are bolded.

[0122] Table 1 Comparison results of methods on 3DMatch dataset

[0123]

[0124] Table 2 Comparison results of methods on 3DLoMatch dataset

[0125]

[0126]

[0127] It should be noted that the above-mentioned figures are only schematic illustrations of the processes included in the method according to an exemplary embodiment of the present invention, and are not intended to be limiting. It is easy to understand that the processes shown in the above-mentioned figures do not indicate or limit the time sequence of these processes. In addition, it is also easy to understand that these processes can be performed synchronously or asynchronously, for example, in multiple modules.

[0128] It should be noted that, although several modules or units of the equipment for action execution are mentioned in the above detailed description, this division is not mandatory. In fact, according to an embodiment of the present invention, the features and functions of two or more modules or units described above can be embodied in one module or unit. On the contrary, the features and functions of one module or unit described above can be further divided into being embodied by multiple modules or units.

[0129] Figure 7 A schematic diagram of an electronic device suitable for implementing an embodiment of the present invention is shown.

[0130] It should be noted that Figure 7 The electronic device 1000 shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present invention.

[0131] like Figure 7As shown, the electronic device 1000 includes a central processing unit (CPU) 1001, which can perform various appropriate actions and processes according to the program stored in the read-only memory (ROM) 1002 or the program loaded from the storage part 1008 to the random access memory (RAM) 1003. In the RAM 1003, various programs and data required for system operation are also stored. The CPU 1001, ROM 1002 and RAM 1003 are connected to each other through a bus 1004. An input / output (I / O) interface 1005 is also connected to the bus 1004.

[0132] The following components are connected to the I / O interface 1005: an input section 1006 including a keyboard, a mouse, etc.; an output section 1007 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 1008 including a hard disk, etc.; and a communication section 1009 including a network interface card such as a LAN (Local Area Network) card, a modem, etc. The communication section 1009 performs communication processing via a network such as the Internet. A drive 1010 is also connected to the I / O interface 1005 as needed. A removable medium 1011, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 1010 as needed, so that a computer program read therefrom is installed into the storage section 1008 as needed.

[0133] In particular, according to an embodiment of the present invention, the process described below with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present invention includes a computer program product, which includes a computer program carried on a storage medium, and the computer program includes a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network through a communication part 1009, and / or installed from a removable medium 1011. When the computer program is executed by a central processing unit (CPU) 1001, various functions defined in the system of the present application are executed.

[0134] It should be noted that the storage medium shown in the embodiment of the present invention may be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), a flash memory, an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present invention, a computer-readable storage medium may be any tangible medium containing or storing a program, which may be used by or in combination with an instruction execution system, device or device. In the present invention, a computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, which carries a computer-readable program code. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. Computer-readable signal media may also be any storage medium other than computer-readable storage media, which may send, propagate, or transmit programs for use by or in conjunction with an instruction execution system, apparatus, or device. The program code contained on the storage medium may be transmitted using any appropriate medium, including but not limited to: wireless, wired, etc., or any suitable combination of the above.

[0135] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present invention. In this regard, each box in the flow chart or block diagram can represent a module, a program segment, or a part of a code, and the above-mentioned module, program segment, or a part of a code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flow chart, and the combination of the boxes in the block diagram or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0136] The units involved in the embodiments of the present invention may be implemented by software or hardware, and the units described may also be arranged in a processor. The names of these units do not, in some cases, limit the units themselves.

[0137] It should be noted that, as another aspect, the present application also provides a storage medium, which can be included in an electronic device; or it can exist independently without being installed in the electronic device. The above storage medium carries one or more programs, and when the above one or more programs are executed by an electronic device, the electronic device implements the method described in the following embodiments. For example, the electronic device can implement the following Figure 1 The individual steps of the method are shown.

[0138] In one embodiment, the present application provides a computer program product, including a computer program, which implements the steps in the above-mentioned method embodiments when executed by a processor.

[0139] In addition, the above-mentioned figures are only schematic illustrations of the processes included in the method according to an exemplary embodiment of the present invention, and are not intended to be limiting. It is easy to understand that the processes shown in the above-mentioned figures do not indicate or limit the time sequence of these processes. In addition, it is also easy to understand that these processes can be performed synchronously or asynchronously, for example, in multiple modules.

[0140] Other embodiments of the invention will readily occur to those skilled in the art after considering the specification and practicing the invention herein. This application is intended to cover any variations, uses, or adaptations of the invention that follow the general principles of the invention and include common knowledge or customary techniques in the art that are not disclosed by the present invention. The specification and examples are to be considered exemplary only, and the true scope and spirit of the invention are indicated by the claims.

[0141] It should be understood that the present invention is not limited to the exact construction that has been described above and shown in the drawings and that various modifications and changes may be made without departing from the scope thereof. The scope of the present invention is limited only by the appended claims.

Claims

1. A robust three-dimensional point cloud registration method based on matching correction, characterized in that: The method comprises: Preprocess the input source point cloud and target point cloud respectively and extract features; Through feature matching, a one-to-one correspondence set c and a one-to-many correspondence set C of the source point cloud and the target point cloud are formed respectively. super ; In set C super Extract the matches that meet the consistency requirements to build a highly consistent one-to-one correspondence set C good , based on C good Calculate C super The compatibility score for each one-to-many relationship in ; Determine whether the match with the highest compatibility score is consistent with the target point cloud index of the same source point cloud index in set c. If not, replace it with the index of the current match with the highest compatibility score to obtain the corrected one-to-one correspondence relationship set c′; The final pose transformation matrix is ​​determined based on the set c′.

2. The robust three-dimensional point cloud registration method based on matching correction according to claim 1, characterized in that: The preprocessing includes downsampling processing.

3. The robust three-dimensional point cloud registration method based on matching correction according to claim 1, characterized in that: The method for obtaining the one-to-one correspondence relationship set c between the source point cloud and the target point cloud includes: In the feature space of the target point cloud, a feature descriptor whose distance to the feature descriptor in the feature space of the source point cloud is closest is searched, so as to form a one-to-one correspondence relationship set c between the source point cloud and the target point cloud.

4. The robust three-dimensional point cloud registration method based on matching correction according to claim 1, characterized in that: The one-to-many correspondence set C between the source point cloud and the target point cloud super Methods for obtaining include: Calculate the distance between the feature descriptor of the source point cloud and the feature descriptor of the target point cloud, sort them from near to far according to the distance, take the feature descriptors of the first k target point clouds, and form a one-to-many correspondence set C between the source point cloud and the target point cloud super .

5. The robust three-dimensional point cloud registration method based on matching correction according to claim 4, characterized in that: The one-to-many correspondence set C super Extract the matches that meet the consistency requirements to build a highly consistent one-to-one correspondence set C good ,include: One-to-many correspondence relationship set C super For each one-to-many correspondence in , use the Welzl algorithm to find the minimum bounding sphere of the k target point cloud indexes; The specific algorithm idea is as follows: The purpose of each layer of recursion is to calculate n p The best bounding sphere of the target point cloud, n p ≤ k: First, according to the first n p -1 point generates a sphere, and then determines the nth p Is the point inside the sphere? If yes, keep the current sphere; If not, then based on the current sphere and the nth p points to regenerate a new sphere, where the nth p The points must lie on the newly generated sphere; Recursive termination condition: When there are only one or two points left, generate a sphere directly; if there are three points on the sphere, generate the circumscribed sphere of these three points; Record each one-to-many correspondence C super The minimum bounding sphere radius of , where the radius is less than the set threshold to build a high consistency one-to-one correspondence set C good .

6. The robust three-dimensional point cloud registration method based on matching correction according to claim 1, characterized in that: The set C good Calculate the one-to-many relationship set C super The compatibility score for each one-to-many relationship in , including: According to the set C good Point pairs, each one-to-many relationship set C super The rigid distance measure is calculated for the point pairs; Compute the set C based on the rigid distance measure good Point pairs, each one-to-many relationship set C super The compatibility score between pairs of points.

7. The robust three-dimensional point cloud registration method based on matching correction according to claim 1, characterized in that: The determining of the final posture transformation matrix based on the corrected one-to-one correspondence set c′ comprises: Randomly select 3 pairs of key points from the corrected one-to-one correspondence set c′ as the initial matching point pairs, and solve the pose transformation matrix; Calculate the corresponding points of the remaining n-3 key points in the source point cloud after being transformed by the pose transformation matrix, and calculate the Euclidean distance between the corresponding points obtained after the transformation and the originally paired n-3 key points; Determine key points as inliers and outliers based on Euclidean distance; After several random sampling calculations, the pose transformation matrix corresponding to the maximum number of inner points is taken as the final pose transformation matrix.

8. A storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the robust three-dimensional point cloud registration method based on matching correction according to any one of claims 1 to 7 is implemented.

9. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the robust three-dimensional point cloud registration method based on matching correction described in any one of claims 1 to 7 is implemented.

10. An electronic device, characterized in that: include: processor; as well as A memory, configured to store executable instructions of the processor; The processor is configured to execute the robust three-dimensional point cloud registration method based on matching correction described in any one of claims 1 to 7 by executing the executable instructions.