CN111652801A - Accurate point cloud splicing method - Google Patents
Accurate point cloud splicing method Download PDFInfo
- Publication number
- CN111652801A CN111652801A CN202010392869.0A CN202010392869A CN111652801A CN 111652801 A CN111652801 A CN 111652801A CN 202010392869 A CN202010392869 A CN 202010392869A CN 111652801 A CN111652801 A CN 111652801A
- Authority
- CN
- China
- Prior art keywords
- point
- points
- point cloud
- splicing
- pairs
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 49
- 239000011159 matrix material Substances 0.000 claims abstract description 38
- 238000004364 calculation method Methods 0.000 claims abstract description 11
- 238000001514 detection method Methods 0.000 claims abstract description 7
- 239000013598 vector Substances 0.000 claims description 21
- 230000009466 transformation Effects 0.000 claims description 16
- 206010034701 Peroneal nerve palsy Diseases 0.000 claims description 10
- 238000006243 chemical reaction Methods 0.000 claims description 9
- 238000000354 decomposition reaction Methods 0.000 claims description 5
- 238000005070 sampling Methods 0.000 claims description 5
- 239000006185 dispersion Substances 0.000 claims description 4
- 238000010606 normalization Methods 0.000 claims description 3
- 238000010276 construction Methods 0.000 claims description 2
- 230000007547 defect Effects 0.000 description 3
- 230000002035 prolonged effect Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4038—Image mosaicing, e.g. composing plane images from plane sub-images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/30—Determination of transform parameters for the alignment of images, i.e. image registration
- G06T7/33—Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/46—Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
- G06V10/462—Salient features, e.g. scale invariant feature transforms [SIFT]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/50—Extraction of image or video features by performing operations within image blocks; by using histograms, e.g. histogram of oriented gradients [HoG]; by summing image-intensity values; Projection analysis
- G06V10/507—Summing image-intensity values; Histogram projection analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Image Analysis (AREA)
Abstract
The invention discloses a point cloud accurate splicing method which optimizes and improves the traditional ICP algorithm, and provides a good initial rotation translation matrix for the subsequent point cloud splicing by utilizing the point cloud relation after SAC-IA initial registration so as to ensure that the point cloud splicing does not fall into the local minimum value, thereby realizing correct registration splicing; ISS3D key point detection is carried out on each point set, and corresponding point set searching is carried out on key points with characteristics, so that high-precision identification matching is realized and the calculated amount is reduced; and judging and searching corresponding points by adopting the position relation between the point and a triangle formed by the nearest three points in another point cloud, and rejecting the error matching point pair according to a preset rejection condition after the corresponding point pair is searched. Compared with the splicing method based on the traditional ICP algorithm, the point cloud splicing method provided by the invention has higher accuracy and higher calculation speed.
Description
Technical Field
The invention relates to the technical field of point cloud processing, in particular to a point cloud accurate splicing method.
Background
In the three-dimensional reconstruction method, an ICP (Iterative Closest Point) algorithm is generally required to be used for Point cloud registration; point cloud registration refers to fusing a plurality of point cloud segments with the same area into the same coordinate system. The ICP algorithm is an optimal matching algorithm based on the least square method, and it repeats the process of "determining a corresponding relationship point set-calculating an optimal rigid body transformation" until a convergence criterion indicating correct matching is satisfied, and finally obtains a rotation matrix R and a translation matrix T between a target point set and a reference point. The algorithm has the advantages of simplicity and low calculation complexity, but the result accuracy depends heavily on the initial registration position and the existence of noise points in the registration point set.
At present, the point cloud splicing based on the traditional ICP algorithm in the existing three-dimensional reconstruction method mainly has the following defects:
(1) when the traditional ICP algorithm is used for registration, the requirement on the initial position of the point cloud is high, the two point clouds are required to be in the same coordinate system, and if the distance between the two point clouds is long, the matching is easy to be wrong, and the registration is finally failed.
(2) In the traditional ICP algorithm, each point in the point cloud participates in the search of a corresponding point, when point cloud registration is carried out, corresponding point pairs are formed between required points, if the number of the points in the point cloud is large, the number of the point pairs needing to be matched is large, the calculated amount is increased, and the consumed time is prolonged; on the contrary, the amount of calculation becomes small and the time consumption is reduced. Therefore, the number of point pairs to be paired in the point cloud is a key influencing the registration speed.
(3) When the traditional ICP algorithm searches corresponding near points of another point set for each point, a Kdtree nearest neighbor point searching method is adopted, and matching point query is carried out by using a method of exhausting Euclidean distance, so that the method is large in operation amount, long in operation time and poor in robustness; based on point-to-point, due to the random sampling mode, the method may search for an absence of corresponding point pairs, and search for an incorrect corresponding point pair without removing the corresponding point pair, and these factors may cause a final registration error between two point cloud point sets.
Disclosure of Invention
In order to overcome the defects in the prior art, the invention provides a point cloud accurate splicing method to solve the defects that point cloud registration errors are easily caused and the registration speed is low in point cloud splicing in the prior art.
The invention is realized by the following technical scheme:
a method for accurately splicing point clouds, comprising the following steps:
step S10, respectively extracting ISS3D characteristic points and corresponding FPFH characteristic descriptors from the object point cloud, taking the extracted ISS3D characteristic points and the FPFH characteristic descriptors as initial registration of the object based on RANSAC algorithm, and calculating an initial rotation translation matrix for point cloud splicing;
when ISS3D feature points and corresponding FPFH feature descriptors are extracted from the object point cloud, ISS3D key points p are extracted firstf=[x,y,z]Then, constructing a topological relation of a high-dimensional vector in a Kdtree construction mode in a multi-dimensional space so as to conveniently query neighboring vectors of the feature vectors; for two adjacent frames of point clouds CsrcAnd CtgtExtracting key points and extracting corresponding local feature FPFH histograms, and expressing the histograms by vectors; to CsrcEach of which is a key point piUsing Kdtree algorithm at CtgtIn search of k and piThe FPFH characteristic vector of the points is adjacent to the points to form a candidate point set, and one point is selected from the candidate point set to be used as a corresponding point set to form (p)i,qi) A corresponding point set;
step S20, for each (p)i,qi) ISS3D key point detection is carried out on the corresponding point set, and the key points with characteristics are adopted for carrying out corresponding point set search;
step S30, in the process of searching the corresponding point set of the key points, when the Kdtree algorithm is used for searching the point-to-point nearest neighbor mode to generate the wrong matching point pair, the following searching mode is adopted for searching the corresponding points: judging and searching corresponding points according to the position relation between the adoption point and a triangle formed by the nearest three points in another point cloud, and after the corresponding point pairs are searched, rejecting the error matching point pairs according to preset rejection conditions;
step S40, obtaining a rotation/translation matrix by solving SVD, and obtaining a convergence condition | Δ E when the convergence condition is satisfiedK-ΔEK1I/M is less than or equal to (greater than 0), wherein M is a normalization coefficient, or the maximum iteration time T is reachedMTo obtain the optimal transformation matrix TEThereby completing the accurate splicing of the point cloud.
Preferably, in the step S10, in the initial registration using the RANSAC algorithm, a rotational transformation model with the most interior points is obtained by calculation using a random sampling method, which uses key point pairs (p) located on different straight lines of two point cloudsi,qi) I is 1,2,3, then piAnd q isiConsidered as a pair of correct point pairs, the transformation parameters [ R | T ] of the rotating transformation model are estimated using the point pairs](ii) a For any one of the remaining pairs of points (p)i,qi) I 1,2,3, calculate distance: d | | | Rp+T-q||;
If the distance d is less than a given threshold, the point pair (p, q) is called an inner point; if d is larger than a given threshold value, the point pair is an outer point;
counting the number n of inner points corresponding to each group of conversion parameters [ R | T ] until the maximum iteration number is reached; and when the conversion parameter [ R | T ] meeting the maximum inner point number n is the optimal parameter of the rotation transformation model, calculating the conversion matrix of n pairs of inner points by utilizing SVD decomposition, completing initial registration, and obtaining the initial rotation translation matrix for point cloud splicing.
Preferably, in the step S20, the ISS3D key points are obtained by:
(1) the dispersion matrix C is built and its EVD decomposed: v-1CV ═ D; the scatter matrix formula is:
where radius is the support domain size, pjIs piSupporting neighbor points within the domain; d is a characteristic value { lambda } of the principal diagonal element1,λ2,λ3A diagonal matrix of, V ═ λ1,λ2,λ3Is a value containing the corresponding eigenvalue λiFeature vector viAn orthogonal matrix of (a);
(2) will not satisfyThe characteristic points of the ISS3D under the condition are eliminated, and key points of the ISS3D are obtained.
Preferably, in step S30, the specific search method for determining and searching the corresponding point by using the position relationship between the point and the triangle formed by the closest three points in another point cloud is as follows:
let P be a point in the point cloud P, M1,M2,M3Three points nearest p, M1,M2,M3Triangle delta M formed by three-point connection1M2M3Let p be Δ M1M2M3The foot drop above is q, if q is Δ M1M2M3The foot q is the corresponding point; if q is at Δ M1M2M3Otherwise, take M1,M2,M3The point of the three points closest to the foot drop point q corresponds to the corresponding point.
Preferably, the preset rejecting conditions in step S30 include:
(1) in searching corresponding point pairs, removing point pairs of which the normal lines of every two point pairs are greater than a preset angle A;
(2) setting a color threshold value T when two point clouds are splicedRGBCalculating any point piWith its search point pjDifference d of RGB values betweenRGBIf d isRGB>TRGBThen eliminate point pjAnd point piThis pair of points.
The point cloud accurate splicing method provided by the invention optimizes and improves the traditional ICP algorithm, and provides a good initial rotation translation matrix for the subsequent point cloud splicing by utilizing the point cloud relation after SAC-IA initial registration, so that the point cloud splicing does not fall into the local minimum value, and the correct registration splicing can be realized; ISS3D key point detection is carried out on each point set, and corresponding point set searching is carried out on key points with characteristics, so that high-precision identification matching is realized and the calculated amount is reduced; judging and searching corresponding points by adopting the position relation between the point and a triangle formed by the nearest three points in another point cloud, and removing the error matching point pairs according to preset removing conditions after the corresponding point pairs are searched; therefore, the point cloud splicing method provided by the invention has better accuracy and speed of point cloud splicing.
Drawings
FIG. 1 is a schematic flow chart of a method for accurately splicing point clouds according to an embodiment of the invention;
FIG. 2 shows a triangle Δ M of the drop foot q according to the embodiment of the present invention1M2M3Schematic illustration of the position of (a).
Detailed Description
To facilitate understanding by those skilled in the art, the present invention is further described below with reference to the accompanying drawings.
A method for accurately stitching point clouds, as shown in fig. 1, the method comprises the following steps:
step S10, calculating an initial rotation translation matrix of point cloud splicing by adopting a SAC-IA first registration mode, specifically:
respectively extracting ISS3D feature points and corresponding FPFH feature descriptors from the object point cloud, taking the extracted ISS3D feature points and the extracted FPFH feature descriptors as initial trial registration of the object based on RANSAC algorithm, and calculating an initial rotation translation matrix for point cloud splicing;
when ISS3D feature points and corresponding FPFH feature descriptors are extracted from the object point cloud, ISS3D key points p are extracted firstf=[x,y,z]Then, constructing a topological relation of a high-dimensional vector by constructing a Kdtree mode in a multi-dimensional space, and constructing the topological relation of the high-dimensional vector by constructing the Kdtree mode in the 33-dimensional space because the FPFH is a 33-dimensional high-dimensional vector, so as to conveniently query neighbor vectors of the feature vectors;
for two adjacent frames of point clouds CsrcAnd CtgtExtracting key points and corresponding local feature FPFH histogram, andexpressed by a vector; to CsrcEach of which is a key point piUsing Kdtree algorithm at CtgtIn search of k and piThe FPFH characteristic vector of the points is adjacent to the points to form a candidate point set, and one point is selected from the candidate point set to be used as a corresponding point set to form (p)i,qi) A corresponding point set;
step S20, for each (p)i,qi) ISS3D key point detection is carried out on the corresponding point set, and the key points with characteristics are adopted for carrying out corresponding point set search; the key points extracted by the ISS3D key point method can keep the important geometric characteristics of the original point cloud and well describe the point cloud, so the calculated characteristics can uniquely describe the original point cloud, thereby keeping high-precision object identification and matching. Meanwhile, the splicing calculation amount is reduced, and the time consumption is reduced;
step S30, in the process of searching the corresponding point set of the key points, when the Kdtree algorithm is used for searching the point-to-point nearest neighbor mode to generate the wrong matching point pair, the following searching mode is adopted for searching the corresponding points: judging and searching corresponding points according to the position relation between the adoption point and a triangle formed by the nearest three points in another point cloud, and after the corresponding point pairs are searched, rejecting the error matching point pairs according to preset rejection conditions;
step S40, obtaining a rotational-translational matrix by solving SVD (Singular value decomposition), and obtaining a convergence condition | Δ E when the convergence condition is satisfiedK-ΔEK1I/M is less than or equal to (greater than 0), wherein M is a normalization coefficient, or the maximum iteration time T is reachedMTo obtain the optimal transformation matrix TEThereby completing the accurate splicing of the point cloud.
Specifically, in the step S10, in the initial registration using the RANSAC algorithm, a rotational transformation model with the most interior points is obtained by calculation using a random sampling method, which uses key point pairs (p) located on different straight lines of two point cloudsi,qi) I is 1,2,3, then piAnd q isiConsidered as a pair of correct point pairs, the transformation parameters [ R | T ] of the rotating transformation model are estimated using the point pairs](ii) a For any one of the remaining pairs of points (p)i,qi) I 1,2,3, calculate distance: d | | | Rp+T-q||;
If the distance d is less than a given threshold, the point pair (p, q) is called an inner point; if d is larger than a given threshold, the point pair (p, q) is called an outer point;
counting the number n of inner points corresponding to each group of conversion parameters [ R | T ] until the maximum iteration number is reached; and when the conversion parameter [ R | T ] meeting the maximum inner point number n is the optimal parameter of the rotation transformation model, calculating the conversion matrix of n pairs of inner points by utilizing SVD decomposition, completing initial registration, and obtaining the initial rotation translation matrix for point cloud splicing.
ISS3D is a feature extraction method based on scatter matrix EigenValue Decomposition (EVD). The dispersion matrix is also referred to as a PCA matrix or covariance matrix.
Since the ISS3D is a fixed-scale feature point detection method, the radius of the support domain needs to be determined at first when extracting the feature point, then a radius sphere with radius size is built around the target point, and all vertexes in the radius sphere are used as neighbor points of the target point. Typically the support field is 6 times the average grid resolution. In the aspect of solving the problem of the support domain, because the three-dimensional point cloud data lack the topological information of the grid data, the support domain is solved by accelerating the K-D tree when the neighborhood relation is searched, which is particularly complex and time-consuming. To more accurately determine feature points, a non-maximum suppression NMS is used to search for local maxima.
In one preferred embodiment, in the step S20, the ISS3D key points are obtained by:
(1) the dispersion matrix C is built and its EVD decomposed: v-1CV ═ D; the scatter matrix formula is:
where radius is the support domain size, pjIs piSupporting neighbor points within the domain; d is a characteristic value { lambda } of the principal diagonal element1,λ2,λ3A diagonal matrix of, V ═ λ1,λ2,λ3Is a value containing the corresponding eigenvalue λiFeature vector viAn orthogonal matrix of (a);
(2) will not satisfyThe characteristic points of the ISS3D under the condition are eliminated, and key points of the ISS3D are obtained.
In one preferred embodiment, in step S30, the specific search method for determining and searching the corresponding point by using the position relationship between the point and the triangle formed by the closest three points in the other point cloud is as follows:
let P be a point in the point cloud P, M1,M2,M3Three points nearest p, M1,M2,M3Triangle delta M formed by three-point connection1M2M3Let p be a triangle Δ M1M2M3The foot drop above is q, if q is Δ M1M2M3The foot q is the corresponding point; if q is at Δ M1M2M3Otherwise, take M1,M2,M3And the point closest to the foot drop point q in the three points is taken as a corresponding point.
Please refer to fig. 2 below: wherein, FIG. 2a shows the foot q in triangle Δ M1M2M3FIG. 2b shows the foot q in triangle Δ M1M2M3External schematic view.
Triangle delta M according to foot q1M2M3The method for calculating and acquiring the corresponding point of the position in (1) is as follows:
let M1,M2,M3The coordinates of the three points are respectively (M)j,Nj,Hj) J is 1,2, 3. By the above formula d | | | RpThe foot q (x, y, z) can be solved by + T-q | | |, and q and M are obtained1,M2,M3Constructed vector pM1,pM2,pM3Calculate the qM of the three1×qM2,qM2×qM3And qM3×qM1If the three are the same, the foot drop q is proved to be delta M1M2M3And the corresponding point is the foot drop.
Otherwise, q is at Δ M1M2M3In addition, at this time, the corresponding point closest to the foot drop point is taken, and the calculation method formula of the point closest to the foot drop point q is as follows:
wherein, a0,b0,c0Solving as the calculation formula:
after searching the ten-thousand corresponding point pairs, rejecting the error matching point pairs through a next preset rejection condition:
(1) in searching corresponding point pairs, removing point pairs of which the normal lines of every two point pairs are greater than a preset angle A; in the embodiment of the invention, when the two point clouds are spliced, the angle of the depth camera for acquiring data in each direction does not exceed 30 degrees, so in the embodiment, the value range of the normal line of each rejected point pair which is greater than the preset angle A is preferably 32-38 degrees and can be specifically selected as 35 degrees in searching the corresponding point pair.
(2) Meanwhile, when two point clouds are spliced, the color point clouds are adopted, so that the RGB values can be used as conditions for eliminating wrong matching point pairs, and a color threshold value T is set when the two point clouds are splicedRGBCalculating any point piWith its search point pjDifference d of RGB values betweenRGBIf d isRGB>TRGBThen eliminate point pjAnd point piThis pair of points. Wherein the color threshold value TRGBThe value range of (1) can be selected from 10 to 20, and the color threshold value T is described in the embodimentRGBPreferably 13 or 15.
Compared with the existing point cloud splicing method based on the traditional ICP algorithm, the method has the main advantages that:
(1) when the traditional ICP algorithm is used for registration, the requirement on the initial position of the point cloud is high, two point clouds are required to be in the same coordinate system, and if the distance between the two point clouds is long, the matching is easy to be wrong, and the registration is finally failed;
according to the point cloud splicing method provided by the invention, a good initial rotation translation matrix is provided for the next splicing by utilizing the point cloud relationship after SAC-IA initial registration, so that the initial rotation translation matrix does not fall into the local minimum value, and the correct registration splicing can be realized.
(2) In the traditional ICP algorithm, each point in the point cloud participates in the search of a corresponding point, when point cloud registration is carried out, corresponding point pairs are formed between required points, if the number of the points in the point cloud is large, the number of the point pairs needing to be matched is large, the calculated amount is increased, and the consumed time is prolonged; on the contrary, the calculated amount is reduced, and the consumed time is reduced, so that the traditional ICP algorithm has the disadvantages of low speed and long consumed time;
in the point cloud splicing method provided by the invention, each point in the point set is not searched, ISS3D key point detection is carried out on each point set, and corresponding point set search is carried out by using key points with characteristics. The key points extracted by the ISS3D key point method can keep the important geometric characteristics of the original point cloud and well describe the point cloud, so the calculated characteristics can uniquely describe the original point cloud, thereby keeping high-precision object identification and matching, simultaneously reducing the splicing calculation amount and time consumption.
(3) When the traditional ICP algorithm searches corresponding near points of another point set for each point, a Kdtree nearest neighbor point searching method is adopted, and matching point query is carried out by using a method of exhausting Euclidean distance, so that the method is large in operation amount, long in operation time and poor in robustness; meanwhile, on the basis of point-to-point, due to a random sampling mode, a corresponding point pair may be searched out, an incorrect corresponding point pair is searched out, and the corresponding point pair is not removed, so that final registration errors between two point cloud point sets can be caused by the factors;
according to the point cloud splicing method provided by the invention, when the Kdtree algorithm is used for searching the point-to-point nearest neighbor mode to generate the wrong matching point pairs, the position relation between the point and a triangle formed by the nearest three points in another point cloud is adopted for judging and searching the corresponding points, and after the corresponding point pairs are searched, the wrong matching point pairs are removed according to the preset removing conditions; therefore, the point cloud splicing method provided by the invention has higher splicing accuracy and higher calculation processing speed.
The embodiments described above are preferred embodiments of the present invention, and are not intended to limit the present invention, and any obvious alternative is within the scope of the present invention without departing from the spirit of the present invention.
Claims (6)
1. A point cloud accurate splicing method is characterized by comprising the following steps: the method comprises the following steps:
step S10, respectively extracting ISS3D characteristic points and corresponding FPFH characteristic descriptors from the object point cloud, taking the extracted ISS3D characteristic points and the FPFH characteristic descriptors as initial registration of the object based on RANSAC algorithm, and calculating an initial rotation translation matrix for point cloud splicing;
when ISS3D feature points and corresponding FPFH feature descriptors are extracted from the object point cloud, ISS3D key points p are extracted firstf=[x,y,z]Then, constructing a topological relation of a high-dimensional vector in a Kdtree construction mode in a multi-dimensional space so as to conveniently query neighboring vectors of the feature vectors; for two adjacent frames of point clouds CsrcAnd CtgtExtracting key points and extracting corresponding local feature FPFH histograms, and expressing the histograms by vectors; to CsrcEach of which is a key point piUsing Kdtree algorithm at CtgtIn search of k and piThe FPFH characteristic vector of the points is adjacent to the points to form a candidate point set, and one point is selected from the candidate point set to be used as a corresponding point set to form (p)i,qi) A corresponding point set;
step S20, for each (p)i,qi) ISS3D key point detection is carried out on the corresponding point set, and the key points with characteristics are adopted for carrying out corresponding point set search;
step S30, in the process of searching the corresponding point set of the key points, when the Kdtree algorithm is used for searching the point-to-point nearest neighbor mode to generate the wrong matching point pair, the following searching mode is adopted for searching the corresponding points: judging and searching corresponding points according to the position relation between the adoption point and a triangle formed by the nearest three points in another point cloud, and after the corresponding point pairs are searched, rejecting the error matching point pairs according to preset rejection conditions;
step S40, obtaining a rotation/translation matrix by solving SVD, and obtaining a convergence condition | Δ E when the convergence condition is satisfiedK-ΔEK1I/M is less than or equal to (greater than 0), wherein M is a normalization coefficient, or the maximum iteration time T is reachedMTo obtain the optimal transformation matrix TEThereby completing the accurate splicing of the point cloud.
2. The point cloud accurate stitching method according to claim 1, characterized in that: in the step S10, in the initial registration using the RANSAC algorithm, a rotational transformation model with the most interior points is obtained by calculation using a random sampling method, which uses key point pairs (p) located on different straight lines on two point cloudsi,qi) I is 1,2,3, then piAnd q isiConsidered as a pair of correct point pairs, the transformation parameters [ R | T ] of the rotating transformation model are estimated using the point pairs](ii) a For any one of the remaining pairs of points (p)i,qi) I 1,2,3, calculate distance: d | | | Rp+T-q||;
If the distance d is less than a given threshold, the point pair (p, q) is called an inner point; if d is larger than a given threshold value, the point pair is an outer point;
counting the number n of inner points corresponding to each group of conversion parameters [ R | T ] until the maximum iteration number is reached; and when the conversion parameter [ R | T ] meeting the maximum inner point number n is the optimal parameter of the rotation transformation model, calculating the conversion matrix of n pairs of inner points by utilizing SVD decomposition, completing initial registration, and obtaining the initial rotation translation matrix for point cloud splicing.
3. The point cloud accurate stitching method according to claim 1, characterized in that: in the step S20, the ISS3D key points are obtained by:
(1) the dispersion matrix C is built and its EVD decomposed: v-1CV ═ D; the above-mentionedThe scatter matrix formula is:
where radius is the support domain size, pjIs piSupporting neighbor points within the domain; d is a characteristic value { lambda } of the principal diagonal element1,λ2,λ3A diagonal matrix of, V ═ λ1,λ2,λ3Is a value containing the corresponding eigenvalue λiFeature vector viAn orthogonal matrix of (a);
4. The point cloud accurate stitching method according to claim 1, characterized in that: in step S30, the specific search method for determining and searching the corresponding point using the position relationship between the point and the triangle formed by the closest three points in the other point cloud is as follows:
let P be a point in the point cloud P, M1,M2,M3Three points nearest p, M1,M2,M3Triangle delta M formed by three-point connection1M2M3Let p be Δ M1M2M3The foot drop above is q, if q is Δ M1M2M3The foot q is the corresponding point; if q is at Δ M1M2M3Otherwise, take M1,M2,M3The point of the three points closest to the foot drop point q corresponds to the corresponding point.
5. The method for accurately splicing point clouds according to claim 4, wherein: the preset rejecting conditions in the step S30 include:
(1) in searching corresponding point pairs, removing point pairs of which the normal lines of every two point pairs are greater than a preset angle A;
(2) setting a color threshold value T when two point clouds are splicedRGBCalculating any point piWith its search point pjDifference d of RGB values betweenRGBIf d isRGB>TRGBThen eliminate point pjAnd point piThis pair of points.
6. The method for accurately splicing point clouds according to claim 5, wherein: the value range of the preset angle A is 32-38 degrees; the color threshold value TRGBThe value range of (A) is 10-20.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010392869.0A CN111652801B (en) | 2020-05-11 | 2020-05-11 | Accurate point cloud splicing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010392869.0A CN111652801B (en) | 2020-05-11 | 2020-05-11 | Accurate point cloud splicing method |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111652801A true CN111652801A (en) | 2020-09-11 |
CN111652801B CN111652801B (en) | 2021-12-21 |
Family
ID=72345983
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010392869.0A Active CN111652801B (en) | 2020-05-11 | 2020-05-11 | Accurate point cloud splicing method |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111652801B (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113706381A (en) * | 2021-08-26 | 2021-11-26 | 北京理工大学 | Three-dimensional point cloud data splicing method and device |
CN114274139A (en) * | 2020-09-27 | 2022-04-05 | 西门子股份公司 | Automatic spraying method, device, system and storage medium |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160163096A1 (en) * | 2014-12-03 | 2016-06-09 | Fu Tai Hua Industry (Shenzhen) Co., Ltd. | Computing device and method for processing point clouds |
CN106780459A (en) * | 2016-12-12 | 2017-05-31 | 华中科技大学 | A kind of three dimensional point cloud autoegistration method |
CN108053367A (en) * | 2017-12-08 | 2018-05-18 | 北京信息科技大学 | A kind of 3D point cloud splicing and fusion method based on RGB-D characteristic matchings |
CN108133458A (en) * | 2018-01-17 | 2018-06-08 | 视缘(上海)智能科技有限公司 | A kind of method for automatically split-jointing based on target object spatial point cloud feature |
-
2020
- 2020-05-11 CN CN202010392869.0A patent/CN111652801B/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160163096A1 (en) * | 2014-12-03 | 2016-06-09 | Fu Tai Hua Industry (Shenzhen) Co., Ltd. | Computing device and method for processing point clouds |
CN106780459A (en) * | 2016-12-12 | 2017-05-31 | 华中科技大学 | A kind of three dimensional point cloud autoegistration method |
CN108053367A (en) * | 2017-12-08 | 2018-05-18 | 北京信息科技大学 | A kind of 3D point cloud splicing and fusion method based on RGB-D characteristic matchings |
CN108133458A (en) * | 2018-01-17 | 2018-06-08 | 视缘(上海)智能科技有限公司 | A kind of method for automatically split-jointing based on target object spatial point cloud feature |
Non-Patent Citations (2)
Title |
---|
彭真等: "基于关键点提取与优化迭代最近点的点云配准", 《激光与光电子学进展》 * |
李仁忠等: "基于ISS特征点结合改进ICP的点云配准算法", 《激光与光电子学进展》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114274139A (en) * | 2020-09-27 | 2022-04-05 | 西门子股份公司 | Automatic spraying method, device, system and storage medium |
CN114274139B (en) * | 2020-09-27 | 2024-04-19 | 西门子股份公司 | Automatic spraying method, device, system and storage medium |
CN113706381A (en) * | 2021-08-26 | 2021-11-26 | 北京理工大学 | Three-dimensional point cloud data splicing method and device |
Also Published As
Publication number | Publication date |
---|---|
CN111652801B (en) | 2021-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106709947B (en) | Three-dimensional human body rapid modeling system based on RGBD camera | |
CN109887015B (en) | Point cloud automatic registration method based on local curved surface feature histogram | |
CN111028277B (en) | SAR and optical remote sensing image registration method based on pseudo-twin convolution neural network | |
CN107123164B (en) | Three-dimensional reconstruction method and system for keeping sharp features | |
CN108376408B (en) | Three-dimensional point cloud data rapid weighting registration method based on curvature features | |
CN104778688B (en) | The method for registering and device of cloud data | |
JP5705147B2 (en) | Representing 3D objects or objects using descriptors | |
Tazir et al. | CICP: Cluster Iterative Closest Point for sparse–dense point cloud registration | |
CN107818598B (en) | Three-dimensional point cloud map fusion method based on visual correction | |
CN110599506B (en) | Point cloud segmentation method for three-dimensional measurement of complex special-shaped curved surface robot | |
CN106023298A (en) | Point cloud rigid registration method based on local Poisson curved surface reconstruction | |
CN116402866A (en) | Point cloud-based part digital twin geometric modeling and error assessment method and system | |
CN102236794A (en) | Recognition and pose determination of 3D objects in 3D scenes | |
CN112257722B (en) | Point cloud fitting method based on robust nonlinear Gaussian-Hermer model | |
CN111652801B (en) | Accurate point cloud splicing method | |
CN109559346B (en) | Method for positioning and dividing part to be measured in 3D point cloud measurement and scanner | |
CN110111375B (en) | Image matching gross error elimination method and device under Delaunay triangulation network constraint | |
CN109523582B (en) | Point cloud coarse registration method considering normal vector and multi-scale sparse features | |
CN113628263A (en) | Point cloud registration method based on local curvature and neighbor characteristics thereof | |
CN114743259A (en) | Pose estimation method, pose estimation system, terminal, storage medium and application | |
CN105809678B (en) | A kind of line segment feature global registration method between two views under short base line condition | |
CN117132630A (en) | Point cloud registration method based on second-order spatial compatibility measurement | |
CN112381862A (en) | Full-automatic registration method and device for CAD (computer-aided design) model and triangular mesh | |
CN116758126A (en) | Quick point cloud registration method based on mismatching elimination of similar triangles | |
CN116188544A (en) | Point cloud registration method combining edge features |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |