CN114926325A - Point cloud registration method, system and storage medium - Google Patents

Point cloud registration method, system and storage medium Download PDF

Info

Publication number
CN114926325A
CN114926325A CN202210638566.1A CN202210638566A CN114926325A CN 114926325 A CN114926325 A CN 114926325A CN 202210638566 A CN202210638566 A CN 202210638566A CN 114926325 A CN114926325 A CN 114926325A
Authority
CN
China
Prior art keywords
overlap
global
registration
current layer
backtracking
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210638566.1A
Other languages
Chinese (zh)
Inventor
张俊
苏国旺
田慧敏
丁旭然
肖葭
高洁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Central South University
Original Assignee
Central South University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Central South University filed Critical Central South University
Priority to CN202210638566.1A priority Critical patent/CN114926325A/en
Publication of CN114926325A publication Critical patent/CN114926325A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/14Transformations for image registration, e.g. adjusting or mapping for alignment of images

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)

Abstract

The invention relates to the technical field of computer graphics, and discloses a point cloud registration method, a point cloud registration system and a storage medium, wherein the point cloud registration method comprises the following steps: carrying out hierarchical grid division on the basis of the obtained target point cloud and the point cloud to be registered to obtain corresponding child node pairs of each layer; taking the sub-node pairs of the current layer as registration grid node pairs to carry out local point cloud registration; comparing the global overlap of the current layer with a preset overlap threshold, and outputting the global overlap of the current layer as an optimal registration overlap under the condition that the global overlap of the current layer is greater than the preset overlap threshold; and comparing the iterative global overlap obtained by the iterative operation with a preset overlap threshold under the condition that the current layer global overlap is less than or equal to the preset overlap threshold, and outputting the iterative global overlap as the optimal registration overlap under the condition that the iterative global overlap is greater than the preset overlap threshold.

Description

Point cloud registration method, system and storage medium
Technical Field
The invention relates to the technical field of computer graphics, in particular to a point cloud registration method, a point cloud registration system and a storage medium.
Background
With the continuous development of computer vision technology, the application of three-dimensional reconstruction technology in the fields of reverse engineering, 3D printing, biomedicine and the like is more and more extensive, point cloud registration is one of the key links in the three-dimensional reconstruction process, and object point cloud data measured under different coordinate systems can be subjected to registration fusion, so that complete three-dimensional information of an object can be obtained. At present, in the process of point cloud registration, in order to improve the registration accuracy of low-overlap point clouds, the number of sampling points needs to be increased, but the increase of the number of sampling points can reduce the registration speed. Therefore, the existing point cloud registration method has the problem of low registration efficiency when point clouds with low overlapping rate are registered.
Disclosure of Invention
The invention provides a point cloud registration method, a point cloud registration system and a point cloud registration storage medium, which are used for solving the problem of low efficiency in the existing point cloud registration process.
In order to achieve the purpose, the invention is realized by the following technical scheme:
in a first aspect, the present invention provides a method of point cloud registration, comprising:
constructing a grid node based on the obtained target point cloud and the point cloud to be registered to obtain an initial grid node pair, and performing hierarchical grid division on the initial grid node pair to obtain a sub-node pair corresponding to each layer;
taking the child node pairs of the current layer as registration grid node pairs to carry out local point cloud registration, and obtaining a current layer registration result, wherein the current layer registration result comprises the current layer local optimal overlapping degree, current layer grid node pairs corresponding to the current layer local optimal overlapping degree, a current layer rigid transformation matrix and a current layer global overlapping degree;
comparing the global overlap of the current layer with a preset overlap threshold, and outputting the global overlap of the current layer as an optimal registration overlap under the condition that the global overlap of the current layer is greater than the preset overlap threshold;
and under the condition that the global overlap of the current layer is less than or equal to a preset overlap threshold, performing iterative operation of local point cloud registration performed by taking the current layer grid node pair as a registration grid node pair, comparing the iterative global overlap obtained by the iterative operation with the preset overlap threshold, and under the condition that the iterative global overlap is greater than the preset overlap threshold, outputting the iterative global overlap as the optimal registration overlap.
Optionally, the method further includes:
under the condition that the optimal registration overlap degree is not determined in the iteration operation, performing backtracking operation by taking the current layer suboptimal global overlap degree corresponding to the current layer local suboptimal overlap degree which is only smaller than the current layer local optimal overlap degree as backtracking overlap degree, and comparing the backtracking global overlap degree obtained by the backtracking operation with the current layer global overlap degree;
under the condition that the backtracking global overlap degree is greater than the current layer global overlap degree, outputting backtracking grid node pairs corresponding to the backtracking global overlap degree, and performing local point cloud registration on the backtracking grid node pairs to obtain a backtracking registration result, wherein the backtracking registration result comprises the backtracking local optimal overlap degree, the backtracking grid node pairs corresponding to the backtracking local optimal overlap degree, a backtracking rigid transformation matrix and the backtracking global overlap degree;
comparing the backtracking global overlap degree with a preset overlap degree threshold, and outputting the backtracking global overlap degree as an optimal registration overlap degree under the condition that the backtracking global overlap degree is greater than the preset overlap degree threshold, otherwise, performing iterative operation;
and under the condition that the backtracking global overlap degree is less than or equal to the current layer global overlap degree, returning to the previous layer to continue backtracking operation until the backtracking global overlap degree is greater than the current layer global overlap degree.
Optionally, the performing backtracking operation includes:
obtaining the local suboptimal overlap degree of the current layer which is only less than the local optimal overlap degree of the current layer, and a current layer suboptimal grid node pair and a current layer suboptimal rigid transformation matrix which correspond to the local suboptimal overlap degree of the current layer;
performing coordinate transformation on the point cloud to be registered through a current layer suboptimal rigid transformation matrix to obtain a transformed point cloud, and calculating the overlapping rate between the transformed point cloud and a target point cloud, wherein the calculated overlapping rate is the current layer suboptimal global overlapping rate;
and taking the current-layer suboptimum global overlap as a backtracking global overlap, and taking the current-layer suboptimum grid node pair as a backtracking grid node pair.
Optionally, the performing the iterative operation includes:
and performing local point cloud registration by taking the current layer grid node pair as a registration grid node pair, and obtaining an iterative registration result, wherein the iterative registration result comprises an iterative local optimal overlapping degree, an iterative grid node pair corresponding to the iterative local optimal overlapping degree, an iterative rigid transformation matrix and an iterative global overlapping degree.
Optionally, the method further includes:
comparing the iterative global overlap degree with a preset initial overlap degree under the condition that the iterative global overlap degree is smaller than a preset overlap degree threshold value;
under the condition that the iteration global overlap degree is larger than the preset initial overlap degree, continuing to perform iteration operation;
and performing backtracking operation under the condition that the iterative global overlap is less than or equal to the preset initial overlap.
Optionally, when the iterative global overlap degree is greater than the preset initial overlap degree, continuing to perform the iterative operation includes:
comparing the number of layers of the current layer with a depth threshold value under the condition that the iteration global overlap degree is greater than a preset initial overlap degree;
under the condition that the number of layers of the current layer is less than or equal to the depth threshold value, continuing to perform iterative operation;
terminating the registration under the condition that the number of layers of the current layer is greater than the depth threshold;
the depth threshold is the maximum value of the number of division layers when the initial mesh node pair is subjected to hierarchical mesh division.
Optionally, the local point cloud registration comprises:
selecting a coplanar four-point set as a reference base in a grid node pair to be registered, extracting a coplanar four-point set as a transformation base in the grid node pair to be registered, and determining a rigid transformation matrix based on the reference base and the transformation base;
transforming the reference base through a rigid transformation matrix, and determining the local overlapping degree according to a transformation result;
and transforming the grid node pairs to be registered through a rigid transformation matrix, and determining the global overlapping degree according to a transformation result.
In a second aspect, an embodiment of the present application provides a system for point cloud registration, including a memory, a processor, and a computer program stored in the memory and executable on the processor, where the processor implements the steps of the method in any one of the above first aspects when executing the computer program.
In a third aspect, embodiments of the present application provide a computer-readable storage medium, on which a computer program is stored, which when executed by a processor, implements the method steps as described in the first aspect.
Has the advantages that:
according to the point cloud registration method provided by the invention, in the point cloud registration process, the target to be registered is layered, the local registration of the next layer is carried out in an iterative mode under the condition that a proper global overlapping degree is not found in the local registration of the current layer, and the sampling points required by each registration operation are reduced by converting the overall registration into a layer-by-layer local registration method, so that the number of sampling point pairs is reduced, and the purpose of reducing the registration time is achieved.
Drawings
FIG. 1 is a flow chart of a method of point cloud registration in accordance with a preferred embodiment of the present invention;
FIG. 2 is a schematic processing flow diagram of a point cloud registration method according to a preferred embodiment of the present invention;
FIG. 3 is a schematic diagram of hierarchical meshing in the point cloud registration method according to the preferred embodiment of the present invention;
FIG. 4 is a second schematic diagram of hierarchical meshing in the point cloud registration method according to the preferred embodiment of the present invention;
FIG. 5 is a third schematic diagram of hierarchical meshing in the point cloud registration method according to the preferred embodiment of the present invention;
fig. 6 is a registration path diagram of the point cloud registration method according to the preferred embodiment of the present invention.
Detailed Description
The technical solutions of the present invention are clearly and completely described below, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
Unless defined otherwise, technical or scientific terms used herein shall have the ordinary meaning as understood by one of ordinary skill in the art to which this invention belongs. The use of "first," "second," and the like, herein does not denote any order, quantity, or importance, but rather the terms "first," "second," and the like are used to distinguish one element from another. Also, the use of the terms a, an, etc. do not denote a limitation of quantity, but rather denote the presence of at least one. The terms "connected" or "coupled" and the like are not restricted to physical or mechanical connections, but may include electrical connections, whether direct or indirect. "upper", "lower", "left", "right", and the like are used merely to indicate relative positional relationships, and when the absolute position of the object being described is changed, the relative positional relationships are changed accordingly.
It should be understood that a method of point cloud registration of the present application may be applied to three-dimensional reconstruction, such as computer graphics, 3D printing, biomedicine, etc., and is only exemplary and not limiting herein.
Example 1:
referring to fig. 1 to 5, an embodiment of the present application provides a method for point cloud registration, including:
constructing a grid node based on the obtained target point cloud and the point cloud to be registered to obtain an initial grid node pair, and performing hierarchical grid division on the initial grid node pair to obtain a sub-node pair corresponding to each layer;
taking the sub-node pairs of the current layer as registration grid node pairs to carry out local point cloud registration, and obtaining a current layer registration result, wherein the current layer registration result comprises current layer local optimal overlapping degree, current layer grid node pairs corresponding to the current layer local optimal overlapping degree, a current layer rigid transformation matrix and current layer global overlapping degree;
comparing the current layer global overlap with a preset overlap threshold, and outputting the current layer global overlap as an optimal registration overlap under the condition that the current layer global overlap is greater than the preset overlap threshold;
and under the condition that the global overlap of the current layer is less than or equal to a preset overlap threshold, performing iterative operation of local point cloud registration performed by taking the current layer grid node pair as a registration grid node pair, comparing the iterative global overlap obtained by the iterative operation with the preset overlap threshold, and under the condition that the iterative global overlap is greater than the preset overlap threshold, outputting the iterative global overlap as the optimal registration overlap.
In the above embodiment, the target to be registered is layered, and local registration of the next layer is performed in an iterative manner under the condition that no appropriate global overlap degree is found in the local registration of the current layer, and the sampling points required by each registration operation are reduced by converting the overall registration into the layer-by-layer local registration, so that the number of sampling point pairs is reduced, and the purpose of reducing the registration time is achieved.
The current layer described in the embodiment takes a first layer in a hierarchy as an example, the local optimal overlapping degree of the current layer represents the local optimal overlapping degree obtained after the first layer point cloud registration is completed, the current layer grid node pair represents a grid node pair corresponding to the local optimal overlapping degree obtained after the first layer point cloud registration is completed, the current layer rigid transformation matrix represents a rigid transformation matrix corresponding to the local optimal overlapping degree obtained after the first layer point cloud registration is completed, the first layer current layer global overlapping degree represents the global overlapping degree corresponding to the local optimal overlapping degree obtained after the first layer point cloud registration is completed, the global overlapping degree is obtained by transforming the point cloud to be registered to a target point cloud coordinate by using the obtained current layer rigid transformation matrix, and the overlapping degree of the transformed point cloud to be registered and the target point cloud is calculated.
Optionally, the method further includes:
under the condition that the optimal registration overlap degree is not determined in the iteration operation, performing backtracking operation by taking the current layer suboptimal global overlap degree corresponding to the current layer local suboptimal overlap degree which is only smaller than the current layer local optimal overlap degree as backtracking overlap degree, and comparing the backtracking global overlap degree obtained by the backtracking operation with the current layer global overlap degree;
under the condition that the backtracking global overlap degree is greater than the current layer global overlap degree, outputting backtracking grid node pairs corresponding to the backtracking global overlap degree, and performing local point cloud registration on the backtracking grid node pairs to obtain a backtracking registration result, wherein the backtracking registration result comprises the backtracking local optimal overlap degree, the backtracking grid node pairs corresponding to the backtracking local optimal overlap degree, a backtracking rigid transformation matrix and the backtracking global overlap degree;
comparing the backtracking global overlap degree with a preset overlap degree threshold, and outputting the backtracking global overlap degree as an optimal registration overlap degree under the condition that the backtracking global overlap degree is greater than the preset overlap degree threshold, otherwise, performing iterative operation;
and under the condition that the backtracking global overlap degree is less than or equal to the current layer global overlap degree, returning to the previous layer to continue backtracking operation until the backtracking global overlap degree is greater than the current layer global overlap degree.
In the above embodiment, when no suitable global overlap is found in the iterative operation process and the iterative operation is not suitable, the local optimum situation is avoided, the iterative operation is skipped through backtracking operation, so as to achieve the purpose of skipping the local optimum, the backtracking operation is utilized to perform point cloud registration on other local overlaps smaller than the local optimum overlap of the current layer, and the backtracking global overlap is obtained after the point cloud registration, when the backtracking global overlap is greater than the global overlap of the current layer, the result of the backtracking operation is superior to the result of the point cloud registration of the current layer, the optimal registration overlap can be determined by comparing the backtracking global overlap with the preset overlap, when the backtracking overlap is less than or equal to the global overlap of the current layer, the result of the point cloud registration of the current layer is superior to the result of the backtracking operation, therefore, the previous layer needs to be returned for backtracking operation, until the result of the backtracking operation is better than that of the current layer point cloud registration.
The backtracking overlap degree is used for representing a local suboptimal overlap degree which is only smaller than a local optimal overlap degree of a current layer in backtracking operation, the backtracking local optimal overlap degree represents a local optimal overlap degree obtained after calculation of a grid node pair corresponding to the local suboptimal overlap degree in the backtracking operation, a backtracking grid node pair represents a grid node pair corresponding to the backtracking local optimal overlap degree in the backtracking process, a backtracking rigid transformation matrix represents a rigid transformation matrix corresponding to the backtracking local optimal overlap degree in the backtracking process, the backtracking global overlap degree is used for representing a global overlap degree corresponding to the backtracking local optimal overlap degree in the backtracking process, the global overlap degree is converted to a target point cloud coordinate by using the obtained backtracking rigid transformation matrix, and the overlap degree of the to-be-registered point cloud and the target point cloud after conversion is calculated to obtain.
Optionally, the performing backtracking operation includes:
obtaining the local suboptimal overlap degree of the current layer, which is only smaller than the local optimal overlap degree of the current layer, and a current layer suboptimal grid node pair and a current layer suboptimal rigid transformation matrix corresponding to the local suboptimal overlap degree of the current layer;
coordinate transformation is carried out on the point cloud to be registered through a current layer suboptimum rigid transformation matrix to obtain a transformed point cloud, the overlapping rate between the transformed point cloud and the target point cloud is calculated, and the calculated overlapping rate is the current layer suboptimum global overlapping rate;
and taking the current-layer suboptimum global overlap as a backtracking global overlap, and taking the current-layer suboptimum grid node pair as a backtracking grid node pair.
In the above embodiment, by finding the local overlap only lower than the local optimal overlap of the current layer in the layer, recording the rigid transformation matrix between the mesh node pair corresponding to the overlap and the corresponding mesh node pair, performing coordinate transformation on the point cloud to be registered by using the rigid transformation matrix, and calculating the overlap ratio between the point cloud to be registered and the target point cloud after transformation, the overlap ratio is the backtracking global overlap.
Optionally, the performing the iterative operation includes:
and performing local point cloud registration by taking the current layer grid node pair as a registration grid node pair, and obtaining an iterative registration result, wherein the iterative registration result comprises an iterative local optimal overlapping degree, an iterative grid node pair corresponding to the iterative local optimal overlapping degree, an iterative rigid transformation matrix and an iterative global overlapping degree.
In the above embodiment, taking the current layer as the first layer after the hierarchical operation as an example, the grid node pair corresponding to the global overlap degree obtained by the local point cloud registration in the first layer is used as the input node for the local point cloud registration of the second layer, the grid node pair of the current layer is subjected to grid division and then the local point cloud registration operation is performed again, so that the optimal registration overlap degree is found in the second layer, when the optimal registration overlap degree is not found in the second layer, the grid node pair corresponding to the global overlap degree obtained in the second layer is used as the input node for the third local point cloud registration, and so on until the optimal registration overlap degree is found or the global overlap degree calculated by the next layer is smaller than the previous layer.
The iterative local registration optimal overlap degree represents the local optimal overlap degree obtained by local point cloud registration in iterative operation, the iterative grid node pair represents the grid node pair corresponding to the local optimal overlap degree obtained by local point cloud registration in iterative operation, the iterative rigid transformation matrix represents the rigid transformation matrix corresponding to the local optimal overlap degree obtained by local point cloud registration in iterative operation, the iterative global overlap degree represents the global overlap degree corresponding to the local optimal overlap degree obtained by local point cloud registration in iterative operation, the global overlap degree is obtained by transforming the point cloud to be registered to a target point cloud coordinate by using the obtained iterative rigid transformation matrix, and the overlap degree of the transformed point cloud to be registered and the target point cloud is calculated.
Optionally, the method further includes:
comparing the iterative global overlap degree with a preset initial overlap degree under the condition that the iterative global overlap degree is smaller than a preset overlap degree threshold value;
under the condition that the iteration global overlap degree is larger than the preset initial overlap degree, continuing to perform iteration operation;
and performing backtracking operation under the condition that the iterative global overlap is less than or equal to the preset initial overlap.
In the above embodiment, the iterative global overlap is less than or equal to the preset initial overlap in the iterative process, and at this time, it is described that the iterative operation cannot meet the standard for finding the optimal registration overlap, so that the iterative operation needs to be skipped through a backtracking operation, and the optimal registration overlap is found through the backtracking operation, so as to improve the registration efficiency, where the preset initial overlap is 0 when the first-layer local point cloud registration is performed, the second-layer local point cloud registration is performed, the third-layer local point cloud registration is performed, the global overlap in the second-layer local point cloud registration, and so on.
Optionally, when the iterative global overlap degree is greater than the preset initial overlap degree, continuing the iterative operation includes:
comparing the number of layers of the current layer with a depth threshold under the condition that the iterative global overlap degree is greater than a preset initial overlap degree;
under the condition that the number of layers of the current layer is less than or equal to the depth threshold value, continuing to perform iterative operation;
terminating the registration when the number of layers of the current layer is greater than the depth threshold;
the depth threshold is the maximum value of the number of division layers when the initial mesh node pair is subjected to hierarchical mesh division.
In the above embodiment, the number of layers of the iterative operation is avoided to be greater than the maximum value of the number of layers in hierarchical grid division, and the occurrence of invalid operation is reduced, where the number of division axes in the grid division process is designated as k, and the value of k may be 1, 2, or 3. Dividing an axis means dividing a mesh into equal sizes by using a plane perpendicular to the axis. If k is 3, X, Y, Z three axes all need to be divided. If k is 2, two axes having a large size are divided. If k is 1, only the axis with the largest dimension is divided. When k is 1, since the size is largest in the X axis direction, two child nodes can be obtained by dividing the X axis, and the result is shown in fig. 3. When k is 2, since the dimension in the X, Y axis direction is large, four child nodes can be obtained by dividing X, Y axes, and the result is as shown in fig. 4. When k is 3, the size on three axes does not need to be compared, and eight child nodes can be obtained by dividing all three axes, and the result is shown in fig. 5.
Optionally, the local point cloud registration comprises:
selecting a coplanar four-point set as a reference base in a grid node pair to be registered, extracting a coplanar four-point set as a transformation base in the grid node pair to be registered, and determining a rigid transformation matrix based on the reference base and the transformation base;
transforming the reference base through a rigid transformation matrix, and determining the local overlapping degree according to a transformation result;
and transforming the grid node pairs to be registered through a rigid transformation matrix, and determining the global overlapping degree according to a transformation result.
In the above embodiment, a coplanar four-point set is selected as a base from the target point cloud, the four-point base is used as a reference, a coplanar four-point set approximately congruent to the reference base is extracted from the point cloud to be registered, and then the optimal rigid transformation matrix is determined by the LCP criterion. The LCP criterion is a relatively general standard for evaluating a point cloud registration result, and the specific judgment process is as follows: two point sets M and N are given, and a transformation matrix T is found, so that the overlapping degree of the point sets N' and M after N is transformed by the matrix T reaches the maximum. For any point in N', if the Euclidean distance between the nearest point in M and the point is within the allowable error range, the point is regarded as a coincident point, and the proportion of the coincident point in the whole point set is the overlapping degree.
Example 2:
referring to fig. 6, a registration solution between point clouds P and Q is taken as an example to describe in detail a mesh registration process of the point cloud registration method of the present application. And respectively constructing bounding boxes of the point clouds P and Q and establishing point cloud initial grid nodes P00 and Q00, wherein P is the target point cloud, and Q is the point cloud to be registered. Assuming that the number k of the designated division axes is 2, the search depth threshold value DepthTh is 7, the preset initial overlapping degree s0 of the point cloud P and the point cloud Q is 0, the overlapping degree threshold value is overlap ph, and the specific process of point cloud mesh division is shown in fig. 6. The registration process is as follows:
s1: the first layer is registered. The point cloud nodes P00 and Q00 are gridded to obtain respective child nodes { P1i, i ═ 0, …, 3}, and { Q1i, i ═ 0, …, 3 }. Then 4PCS registration is carried out on the sub-nodes of the nodes P00 and Q00, and the registration result is recorded. Assuming that the local overlap l1 between the grid node pairs (P12, Q13) is the largest in all grid pairs, the corresponding rigid transformation matrix is T1, i.e. the optimal grid pair of the first layer is (P12, Q13) and the local optimal overlap is l 1. And transforming the point cloud Q into the coordinate system of the point cloud P by using T1, and calculating the overlapping degree between the transformed Q and P, namely the global overlapping degree s1 corresponding to T1. Comparing the magnitudes of s1 and s0, s1 must be greater than s0 since s0 is initialized to 0. Assuming that the current depth is less than depthTh and s1 is less than overlap, so that the iteration condition is satisfied, taking nodes P12 and Q13 as input nodes of the next layer.
S2: the second layer is registered. Nodes P12 and Q13 are gridded to obtain sub-nodes { P2i, i is 0, …, 3}, { Q2i, i is 0, …, 3}, and 4PCS registration between the sub-nodes is performed. The optimal mesh pair of the layer is obtained as (P21, Q22), the optimal local overlap is l2, the rigidity of the mesh pair is transformed into T2, and the global overlap s2 corresponding to T2 is calculated. If the relationship between s2, s1 and overlap is: s1< s2< overlap, that is, the global overlap of the current layer is greater than that of the previous layer, but the overlap threshold is not yet reached, and the depth of the current layer is less than the depth threshold, so that the iteration condition is met, and the registration of the next layer is performed, and the nodes P21 and Q22 are used as input nodes for the registration of the next layer.
S3: and registering the third layer. The nodes P21 and Q22 are subjected to grid division to obtain subnodes { P3i, i is 0, …, 3}, { Q3i, i is 0, …, 3}, and 4PCS registration between the subnodes is performed. The optimal mesh pair of the layer is obtained as (P32, Q32), the optimal local overlap is l3, the rigidity of the mesh pair is transformed into T3, and the global overlap s3 corresponding to T3 is calculated. If the relationship between s2 and s3 is: s3< s2, that is, the global overlap of the current layer is less than that of the previous layer, so that the iteration condition is not satisfied, and backtracking should be performed.
S4: and backtracking in the third layer. During backtracking, intra-layer backtracking is performed, that is, a mesh pair (P30, Q31) with a local overlap of l3 'is found in the third layer, wherein l 3' is only lower than the local optimal overlap of l3 of the third layer. Let the rigidity of the nodes P30 and Q31 be transformed into T3 ', and the global overlap corresponding to T3 ' be s3 '. Comparing the relationship between s 3' and s3, overlap pth: if s 3' > overlapTh, the overlap threshold is reached and registration may end; if s3< s3 ' < overlap, which indicates that the global overlap corresponding to T3 ' is greater than T3, s3 ' satisfies the iteration condition, the value of the maximum global overlap s3 of the layer is updated to s3 ', the value of the optimal local overlap l3 is updated to l3 ', the optimal mesh pair is updated to (P30, Q31), and then the relationship between s3 and s2 is compared to determine whether iteration or backtracking is performed next. If s3> s2, taking the nodes P30 and Q31 as the input of the next layer, continuing to register, otherwise, continuing to perform intra-layer backtracking, and returning to the previous layer for backtracking if the results obtained by backtracking all grid pairs in the layer are s3> s 2; if s 3' < s3, the previous layer is returned to continue backtracking. Whereas in this registration example, s 3' < s3, so the second layer should be returned for backtracking.
S5: and inter-layer backtracking, namely second-layer backtracking. The process of backtracking in the second layer is similar to the process of backtracking in the third layer. A mesh pair (P23, Q21) with local overlap l2 'is found, where l 2' is only lower than the local optimal overlap l2 of the second layer. The rigidity of the node P23 and the node Q21 is transformed into T2 ', and the corresponding global overlapping degree of T2 ' is s2 '. If the relationship of s2 ', s2 and overlap is s2< s2 ' < overlap, then the optimal mesh pair of the second layer is updated to (P23, Q21), the optimal local overlap is updated to l2 ', and the next layer registration is performed with nodes P23 and Q21 as input nodes.
S6: and the third layer is secondarily registered. The nodes P23 and Q21 are subjected to grid division to obtain child nodes { P3i, i is 0, …, 3}, and { Q3i, i is 0, …, 3}, and the child nodes are subjected to 4PCS registration. The optimal grid pair of the available third layer is (P33 ', Q33'), and the optimal local overlap is l3, the rigidity of the grid pair is transformed into T3, and the global overlap s3 corresponding to T3 is calculated. If the relationship s2< s3< overlap is present, it indicates that the registration accuracy of the third layer is improved compared with the second layer, but still less than the overlap threshold, so further registration is required, and the nodes P33 'and Q33' are used as the input node pairs for the next layer registration.
S7: and fourth layer registration. The nodes P33 'and Q33' are subjected to grid division to obtain subnodes { P4i, i is 0, …, 3}, and { Q4i, i is 0, …, 3}, and 4PCS registration between the subnodes is performed. The optimal grid pair of the fourth layer is obtained as (P42, Q40), the optimal local overlapping degree is l4, the rigidity of the grid pair is converted into T4, and the global overlapping degree corresponding to T4 is s 4. If there is a relationship s4> overlap pth, indicating that the overlap threshold has been reached at this point, registration may be ended.
The embodiment of the present application further provides a system for point cloud registration, which includes a memory, a processor, and a computer program stored in the memory and executable on the processor, where the processor implements the steps of any one of the above methods when executing the computer program.
Embodiments of the present application provide a computer-readable storage medium, on which a computer program is stored, which when executed by a processor implements any of the method steps described above.
The foregoing detailed description of the preferred embodiments of the invention has been presented. It should be understood that numerous modifications and variations could be devised by those skilled in the art in light of the present teachings without departing from the inventive concepts. Therefore, the technical solutions available to those skilled in the art through logic analysis, reasoning and limited experiments based on the prior art according to the concept of the present invention should be within the scope of protection defined by the claims.

Claims (9)

1. A method of point cloud registration, comprising:
carrying out grid node construction on the basis of the obtained target point cloud and the point cloud to be registered to obtain an initial grid node pair, and carrying out hierarchical grid division on the initial grid node pair to obtain a sub node pair corresponding to each layer;
taking the sub-node pairs of the current layer as registration grid node pairs to carry out local point cloud registration, and obtaining a current layer registration result, wherein the current layer registration result comprises current layer local optimal overlapping degree, current layer grid node pairs corresponding to the current layer local optimal overlapping degree, a current layer rigid transformation matrix and current layer global overlapping degree;
comparing the current layer global overlap with a preset overlap threshold, and outputting the current layer global overlap as an optimal registration overlap under the condition that the current layer global overlap is greater than the preset overlap threshold;
and under the condition that the global overlap of the current layer is less than or equal to a preset overlap threshold, performing iterative operation of local point cloud registration performed by taking the current layer grid node pair as a registration grid node pair, comparing the iterative global overlap obtained by the iterative operation with the preset overlap threshold, and under the condition that the iterative global overlap is greater than the preset overlap threshold, outputting the iterative global overlap as the optimal registration overlap.
2. The method of point cloud registration of claim 1, further comprising:
under the condition that the optimal registration overlap degree is not determined in the iteration operation, performing backtracking operation by taking the current layer suboptimal global overlap degree corresponding to the current layer local suboptimal overlap degree which is only smaller than the current layer local optimal overlap degree as backtracking overlap degree, and comparing the backtracking global overlap degree obtained by the backtracking operation with the current layer global overlap degree;
under the condition that the backtracking global overlap degree is greater than the current layer global overlap degree, outputting backtracking grid node pairs corresponding to the backtracking global overlap degree, and performing local point cloud registration on the backtracking grid node pairs to obtain a backtracking registration result, wherein the backtracking registration result comprises the backtracking local optimal overlap degree, the backtracking grid node pairs corresponding to the backtracking local optimal overlap degree, a backtracking rigid transformation matrix and the backtracking global overlap degree;
comparing the backtracking global overlap degree with a preset overlap degree threshold, and outputting the backtracking global overlap degree as an optimal registration overlap degree under the condition that the backtracking global overlap degree is greater than the preset overlap degree threshold, otherwise, performing iterative operation;
and under the condition that the backtracking global overlap degree is less than or equal to the current layer global overlap degree, returning to the previous layer to continue backtracking operation until the backtracking global overlap degree is greater than the current layer global overlap degree.
3. The method of point cloud registration of claim 2, wherein the performing a backtracking operation comprises:
obtaining the local suboptimal overlap degree of the current layer which is only less than the local optimal overlap degree of the current layer, and a current layer suboptimal grid node pair and a current layer suboptimal rigid transformation matrix which correspond to the local suboptimal overlap degree of the current layer;
performing coordinate transformation on the point cloud to be registered through a current layer suboptimal rigid transformation matrix to obtain a transformed point cloud, and calculating the overlapping rate between the transformed point cloud and a target point cloud, wherein the calculated overlapping rate is the current layer suboptimal global overlapping rate;
and taking the current-layer suboptimum global overlap as a backtracking global overlap, and taking the current-layer suboptimum grid node pair as a backtracking grid node pair.
4. The method of point cloud registration of claim 1, wherein the performing iterative operations comprises:
and performing local point cloud registration by taking the current layer grid node pair as a registration grid node pair, and obtaining an iterative registration result, wherein the iterative registration result comprises an iterative local optimal overlapping degree, an iterative grid node pair corresponding to the iterative local optimal overlapping degree, an iterative rigid transformation matrix and an iterative global overlapping degree.
5. The method of point cloud registration of claim 1, further comprising:
comparing the iterative global overlap degree with a preset initial overlap degree under the condition that the iterative global overlap degree is smaller than a preset overlap degree threshold value;
under the condition that the iteration global overlap degree is larger than the preset initial overlap degree, continuing to perform iteration operation;
and performing backtracking operation under the condition that the iterative global overlap is less than or equal to the preset initial overlap.
6. The point cloud registration method according to claim 5, wherein the continuing the iterative operation in the case that the iterative global overlap is greater than a preset initial overlap comprises:
comparing the number of layers of the current layer with a depth threshold under the condition that the iterative global overlap degree is greater than a preset initial overlap degree;
under the condition that the number of layers of the current layer is less than or equal to the depth threshold value, continuing to perform iterative operation;
terminating the registration under the condition that the number of layers of the current layer is greater than the depth threshold;
the depth threshold is the maximum value of the number of division layers when the initial mesh node pair is subjected to hierarchical mesh division.
7. The method of point cloud registration of claim 1, wherein the local point cloud registration comprises:
selecting a coplanar four-point set as a reference base in a grid node pair to be registered, extracting a coplanar four-point set as a transformation base in the grid node pair to be registered, and determining a rigid transformation matrix based on the reference base and the transformation base;
transforming the reference base through a rigid transformation matrix, and determining the local overlapping degree according to a transformation result;
and transforming the grid node pairs to be registered through a rigid transformation matrix, and determining the global overlapping degree according to a transformation result.
8. A system for point cloud registration, comprising a memory, a processor and a computer program stored on the memory and executable on the processor, wherein the processor when executing the computer program implements the steps of the method of any of the preceding claims 1-7.
9. A computer-readable storage medium, on which a computer program is stored which, when being executed by a processor, carries out the method steps of any one of claims 1 to 7.
CN202210638566.1A 2022-06-07 2022-06-07 Point cloud registration method, system and storage medium Pending CN114926325A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210638566.1A CN114926325A (en) 2022-06-07 2022-06-07 Point cloud registration method, system and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210638566.1A CN114926325A (en) 2022-06-07 2022-06-07 Point cloud registration method, system and storage medium

Publications (1)

Publication Number Publication Date
CN114926325A true CN114926325A (en) 2022-08-19

Family

ID=82812026

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210638566.1A Pending CN114926325A (en) 2022-06-07 2022-06-07 Point cloud registration method, system and storage medium

Country Status (1)

Country Link
CN (1) CN114926325A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115631341A (en) * 2022-12-21 2023-01-20 北京航空航天大学 Point cloud registration method and system based on multi-scale feature voting
CN115631221A (en) * 2022-11-30 2023-01-20 北京航空航天大学 Low-overlapping-degree point cloud registration method based on consistency sampling

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115631221A (en) * 2022-11-30 2023-01-20 北京航空航天大学 Low-overlapping-degree point cloud registration method based on consistency sampling
CN115631341A (en) * 2022-12-21 2023-01-20 北京航空航天大学 Point cloud registration method and system based on multi-scale feature voting

Similar Documents

Publication Publication Date Title
CN111462137B (en) Point cloud scene segmentation method based on knowledge distillation and semantic fusion
CN114926325A (en) Point cloud registration method, system and storage medium
CN103400372B (en) A kind of three-dimensional topology information extracting method described based on Reeb figure
CN112950645B (en) Image semantic segmentation method based on multitask deep learning
Ryu et al. Improved informed RRT* using gridmap skeletonization for mobile robot path planning
CN110570522A (en) Multi-view three-dimensional reconstruction method
CN111243094B (en) Three-dimensional model accurate voxelization method based on lighting method
CN111028335B (en) Point cloud data block surface patch reconstruction method based on deep learning
Ma et al. 3DMAX-Net: A multi-scale spatial contextual network for 3D point cloud semantic segmentation
Ren et al. Intuitive and efficient roof modeling for reconstruction and synthesis
CN114863062A (en) Industrial scene 3D point cloud model construction method based on point and voxel characteristic representation
CN114743273A (en) Human skeleton behavior identification method and system based on multi-scale residual error map convolutional network
Moon et al. Extraction of line objects from piping and instrumentation diagrams using an improved continuous line detection algorithm
Li et al. A high efficient multi-robot simultaneous localization and mapping system using partial computing offloading assisted cloud point registration strategy
Dang et al. Real-time semantic plane reconstruction on a monocular drone using sparse fusion
Ling et al. Flowacc: Real-time high-accuracy dnn-based optical flow accelerator in fpga
CN116310753A (en) Vectorized skeleton extraction method and system for outdoor scene point cloud data
Ou et al. A scene segmentation algorithm combining the body and the edge of the object
Du et al. Vipnet: A fast and accurate single-view volumetric reconstruction by learning sparse implicit point guidance
CN114692495A (en) Efficient complex system reliability evaluation method based on reliability block diagram
Zao et al. Topology-Guided Road Graph Extraction From Remote Sensing Images
CN113657246A (en) Three-dimensional point cloud two-stage target detection method based on self-supervision learning
CN113887501A (en) Behavior recognition method and device, storage medium and electronic equipment
CN113593007A (en) Single-view three-dimensional point cloud reconstruction method and system based on variational self-coding
Liu et al. A Stochastic Image Grammar for Fine-Grained 3D Scene Reconstruction.

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination