CN115147433A - Point cloud registration method - Google Patents
Point cloud registration method Download PDFInfo
- Publication number
- CN115147433A CN115147433A CN202110334365.8A CN202110334365A CN115147433A CN 115147433 A CN115147433 A CN 115147433A CN 202110334365 A CN202110334365 A CN 202110334365A CN 115147433 A CN115147433 A CN 115147433A
- Authority
- CN
- China
- Prior art keywords
- point cloud
- point
- points
- registration
- registration method
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 54
- 238000001914 filtration Methods 0.000 claims abstract description 18
- 238000013519 translation Methods 0.000 claims description 6
- 238000012545 processing Methods 0.000 abstract description 7
- 230000011218 segmentation Effects 0.000 description 7
- 230000009466 transformation Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000005259 measurement Methods 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration using local operators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- 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
- G06T7/344—Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods involving models
-
- 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
-
- 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/20—Special algorithmic details
- G06T2207/20024—Filtering details
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
Abstract
The invention relates to a point cloud registration method which is used for registering a first point cloud and a second point cloud. The matching method comprises filtering processing, clustering processing and region matching. In the filtering process, outliers in the first point cloud and the second point cloud are respectively removed; in the clustering process, the point clouds after the filtering process are respectively segmented to obtain a plurality of characteristic areas in the first point cloud and the second point cloud; in the area matching, the same characteristic areas in the first point cloud and the second point cloud are matched, and the first point cloud and the second point cloud are registered according to the corresponding characteristic areas. When the point cloud matching method is used for carrying out point cloud processing of plane features, the precision is obviously higher than that of a method adopting classical ICP algorithm registration.
Description
Technical Field
The invention relates to a feature region segmentation-based object surface point cloud data registration method, and belongs to the field of three-dimensional precision measurement of products.
Background
The active optical three-dimensional measurement technology is widely applied to solving the problem of digital modeling in the fields of reverse engineering, computer vision, three-dimensional precision measurement and the like. Due to the limited visibility of a single view angle, a three-dimensional point cloud registration technology is generally adopted to unify a plurality of partially overlapped point cloud data under different view angles into the same coordinate system to obtain a complete digital model, and the measurement accuracy of a measured object is determined by the accuracy of the three-dimensional point cloud registration.
The mainstream methods for current registration mostly focus on improving an Iterative Closest Point (ICP) method, and registration is performed by using euclidean minimum distance between Point cloud geometric primitives (Point, line, surface, volume, etc.) or local features (normal vector, curvature). In view of the fact that the ICP algorithm is easy to implement and the registration accuracy is high, it is reasonable to apply it to the solution of the point cloud registration problem in which there is a large overlap region.
However, in the 3C industry, scan data of a product is generally composed of some point clouds in planar shapes, features are few, the data size is large, the registration efficiency is low by adopting ICP, and when corresponding points are searched, a large number of wrong matches often exist, and the registration accuracy is low. The NICP and the registration algorithm based on the FPFH characteristics consider normal vector or curvature information, but because the plane areas in the point cloud are more, the difference between the normal vector and the curvature of the point and the neighborhood point is not changed greatly, the matching accuracy of the corresponding point is not improved obviously, and the registration precision is not high.
Disclosure of Invention
Aiming at the technical problems in the background art, the point cloud registration method provided by the invention can effectively solve the point cloud registration problems of single local feature and large data scale.
In order to achieve the above purpose, the point cloud registration method disclosed by the invention is used for registering a first point cloud and a second point cloud, and comprises filtering processing, clustering processing and region matching. In the filtering process, outliers in the first point cloud and the second point cloud are respectively removed; in the clustering process, the point clouds after the filtering process are respectively segmented to obtain a plurality of characteristic areas in the first point cloud and the second point cloud; and in the area matching, matching the same characteristic areas in the first point cloud and the second point cloud, and merging the first point cloud and the second point cloud according to the corresponding characteristic areas to obtain the registration point cloud.
Further, the filtering process includes the following steps:
(1) The total number of points in the point cloud is recorded as m, and for any point p i Searching k neighborhood thereof;
(2) Calculating p i Distance d to its neighborhood point ij I =1,2, \8230;, m, j =1,2, \8230;, k, the average distance of the neighborhood points is:
(3) Modeling the distance by Gaussian distribution d-N (mu, sigma);
(4) If the average distance satisfies:
d i >μ+std*σor d i <μ-std*σ
then the point is considered to be an outlier.
Further, the parameter std is a multiple threshold of the standard deviation, and the value range thereof is between 0.5 and 1.0.
Further, the clustering process includes the steps of: randomly selecting a point from the point cloud data as an initial point, searching the nearest neighbor point of the point from the rest points, adding the neighbor point with the distance smaller than a set threshold value from the initial point into a cluster, taking the cluster as a new initial point, and repeating the process until the point number in the cluster is not increased.
Further, after the clustering process is finished, a maximum point number is set, and clusters with point numbers exceeding the maximum point number are removed from the first point cloud and the second point cloud.
Further, after the clustering process is finished, a minimum point number is set, and clusters with point numbers lower than the minimum point number are removed from the first point cloud and the second point cloud.
Further, the region matching comprises the following steps: respectively solving bounding boxes of the characteristic regions in the first point cloud and the second point cloud; matching the bounding box.
Furthermore, the first point cloud and the second point cloud are obtained by translating the same product along one coordinate axis of a three-dimensional coordinate space; the principle of bounding box matching is that the bounding boxes have the same size and the same number of points, and the coordinates of the other two coordinate axes in the three-dimensional coordinate space are the same.
Further, the region matching includes an initial registration and a precise registration, wherein the initial registration is realized by translation, and the precise registration is realized by rotation and translation.
The point cloud processing of the plane features by using the point cloud matching method is verified to be obviously higher in precision than that of a method adopting a classical ICP algorithm for registration.
Drawings
FIG. 1 is an image of a point cloud P processed by an embodiment of the present invention;
FIG. 2 is an image of a point cloud Q processed by an embodiment of the present invention;
fig. 3 and 4 are images of the images in fig. 1 and 2 after filtering processing, respectively;
FIGS. 5 and 6 are images of corresponding regions of the images of FIGS. 3 and 4, respectively;
fig. 7 is the image after the images in fig. 5 and 6 are accurately registered.
Detailed Description
The present invention is further described below in conjunction with the following figures and specific examples so that those skilled in the art may better understand the present invention and practice it, but the examples are not intended to limit the present invention.
The invention mainly aims at the registration of plane feature point clouds, namely point clouds with single local features and large data scale. In the process of acquiring point cloud data, noise interference inevitably exists, and the noise greatly affects the point cloud registration accuracy and needs data smoothing. Therefore, the preferred embodiment of the method of the invention is divided into two processes of point cloud filtering and point cloud registration, and specifically comprises four basic steps of point cloud filtering, segmentation, region matching and rigid body transformation solving.
The embodiment describes the effect of the invention in combination with the point cloud image registration of the mobile phone shell. As shown in fig. 1 and 2, two point clouds to be registered are represented by P and Q, respectively, and are point cloud data obtained by scanning a mobile phone shell at different positions; when the point cloud registration method is input, the output of two point cloud images P and Q is a rigid body transformation, namely the point cloud P is transformed to a coordinate system where the point cloud Q is located. Each step is described in detail below.
And point cloud filtering, namely removing outliers in the point cloud. In this step, the neighborhood features of the point cloud are usually counted in sequence, and appropriate determination criteria are set for the characteristics of the counted neighborhood features, and data points that do not meet the determination criteria are trimmed. In this embodiment, the spatial distance between the outlier in the point cloud and the mobile phone shell is greater than the distance between each local neighboring point of the mobile phone shell, so the outlier is removed by setting a spatial distance threshold.
In this embodiment, a point is selected as a current query point, a neighborhood distance of the current query point is subjected to statistical analysis, an average distance from the query point to the neighborhood point is calculated, a gaussian model is used for calculating and analyzing a point cloud distribution rule, a mean value and a standard deviation are obtained, a determination range is determined, and points beyond the determination range are regarded as outliers. The specific operation steps are as follows:
(1) Recording the total number of the point clouds of the point cloud model as m, and recording the total number of the point clouds of the point cloud model as m for any point p i Searching k adjacent domains thereof; in this example, p is selected i The surrounding 20 points are taken as the neighborhood points;
(2) Calculating p i Distance d to its neighborhood point ij I =1,2, \8230;, m, j =1,2, \8230;, k, the average distance of the neighborhood points is:
(3) Modeling the distance by Gaussian distribution d-N (mu, sigma);
(4) If the average distance is outside the confidence of the Gaussian distribution, then the point is deleted.
d i >μ+std*σor d i <μ-std*σ
And obtaining a threshold range [ mu-std sigma, mu + std sigma ] based on Gaussian distribution according to the mean value and the standard deviation, manually setting or adaptively selecting the standard deviation multiple threshold std according to the characteristics of the point cloud model, wherein the value has obvious influence on a filtering result. If the selected value is too small, the non-noise points in the subject point cloud may be deleted, and if the selected value is too large, the removal effect on the noise points may not be obvious. The value is set to be 0.5-1.0 after debugging, so that a better filtering effect can be obtained.
After two filtering processes, discrete points around the shell of the mobile phone are removed and partial characteristic areas in the point cloud are separated, as shown in fig. 3 and 4. In this embodiment, when the point cloud is segmented by using euclidean clustering, a part of the clustering region is also removed by controlling the maximum point number and the minimum point number included in the clustering region. The removed clustering region is usually a large-area flat region and does not include structural features contributing to registration, so that the threshold values of the maximum point number and the minimum point number can be determined according to specific application scenarios. Fig. 5 and 6 show the effect images with the large flat areas in fig. 3 and 4 removed, respectively.
In general, the points in the point cloud are connected together, and through the filtering process, not only noise points are removed, but also some regions of the point cloud are separated from each other, and at this time, the point cloud can be segmented.
Point cloud segmentation is a process of continuously searching nearest neighbor points. Firstly, randomly selecting a plurality of objects from data objects in a point cloud image as initial clustering centers, respectively allocating the objects to the most similar clusters according to Euclidean distances between the objects and the clustering centers for the rest other objects, then calculating the clustering center of each new cluster (namely, the average value of all the objects in the cluster), and repeating until convergence, thereby completing point cloud segmentation. The specific treatment process comprises the following steps:
(1) Constructing a kd-tree for the original point cloud P, and creating a cluster C and a point sequence S, wherein the cluster C and the point sequence S are both empty sets;
(2) One point P in P i Added to the sequence S, search for a point p i As the circle center, r is the adjacent point of all points in the radius and form a setDetecting collectionsWhether each point in (a) has been processed, and if not, adding this point to the point sequence S. After all the points in the sequence S are processed, adding S to the cluster C and emptying S;
(3) Performing iteration until all points in the original point cloud P are processed and become part of a cluster;
(4) And obtaining three-dimensional point cloud clusters in the point cloud image.
According to the algorithm flow of clustering segmentation based on Euclidean distance, the core idea of the segmentation method is to judge the Euclidean distance between points, examine the degree of affinity and sparseness between the points and divide the points meeting a certain distance condition into a cluster. The method can divide the point cloud into point cloud clusters of different objects by setting a proper clustering threshold.
The point cloud segmentation results in mutually separated subregions, on the basis of which region matching is then carried out. In this embodiment, since the point clouds P and Q are obtained after the mobile phone shell horizontally moves along the X-axis of the three-dimensional coordinate, the area matching method is to first find the bounding box of each sub-area, and then match the corresponding areas of 2 point clouds. The matching principle of the bounding boxes is that the bounding boxes have the same size, the number of points contained in the bounding boxes is the same, and the coordinates of the centers of the bounding boxes in the Y-axis direction and the Z-axis direction of the three-dimensional coordinates are the same. The region satisfying the above-mentioned 3 conditions is taken as a corresponding region.
The registration process of the present embodiment includes two sub-processes of initial registration and precise registration.
As shown in fig. 3 and 4, according to the matching principle, 1 pair of corresponding regions are respectively matched on two images, the point cloud shapes of the two regions are almost the same, namely the two regions are considered to be completely overlapped, the centroids of the corresponding regions are calculated and overlapped, the translational dislocation between the point clouds is reduced, and then the accurate registration is carried out.
Respectively calculating the centroids C of the corresponding regions in the initial registration stage P 、C Q Then the initial translation transformation matrix is T = C Q -C P And transforming the point cloud P according to the T to translate the two point clouds to the approximately overlapped position.
The accurate registration stage is an iterative process, and comprises the following specific steps:
(1) Computing a set of nearest points, p, for any point i E.g. P, searching a point Q with the nearest Euclidean distance in a point cloud Q i Is denoted as a set N P ={p i |i=1,2,…,n}、 N Q ={q i |i=1,2,…,n}。
(2) Calculating a point cloud N P And N Q The center of mass of the lens.
(3) Calculating a point cloud N P And N Q The coordinates of the point in (1) with the centroid as the origin.
p ci =p i -c P
q ci =q i -c Q
(4) And calculating a covariance matrix and carrying out SVD decomposition on the covariance matrix.
(5) The transformation relationship between the two sets of point clouds is:
R=VU T ,t=c Q -Rc P
(6) And (5) carrying out rotation and translation transformation on the P according to the R and the t to obtain a new point set P'.
(7) Calculate the average distance of P' from the closest point in Q:
(8) If d is smaller than a given threshold or larger than a preset maximum iteration number, stopping iteration; otherwise, the above process is repeatedly executed until the convergence condition is met.
The result of the precise registration of this embodiment is shown in fig. 7. The root mean square error is 0.3049mm through comparison and verification; by contrast, the root mean square error when the two point clouds in fig. 1 and 2 are registered by adopting the classical ICP algorithm is 1.0364mm, and the accuracy is obviously lower than that of the method disclosed by the invention.
The above-mentioned embodiments are merely preferred embodiments for fully illustrating the present invention, and the scope of the present invention is not limited thereto. The equivalent substitution or change made by the technical personnel in the technical field on the basis of the invention is all within the protection scope of the invention. The protection scope of the invention is subject to the claims.
Claims (9)
1. A point cloud registration method is used for registering a first point cloud and a second point cloud and is characterized by comprising a filtering process of removing outliers in the first point cloud and the second point cloud respectively; clustering, namely respectively segmenting the point clouds after filtering to obtain a plurality of characteristic regions in the first point cloud and the second point cloud; and matching the regions, namely matching the same characteristic regions in the first point cloud and the second point cloud, and registering the first point cloud and the second point cloud according to the corresponding characteristic regions.
2. The point cloud registration method of claim 1, wherein the filtering process comprises the steps of:
(1) The total number of points in the point cloud is recorded as m, and for any point p i Searching k neighborhoods thereof;
(2) Calculating p i Distance d to its neighborhood point ij I =1,2, \8230;, m, j =1,2, \8230;, k, the average distance of the neighborhood points is:
(3) Modeling the distance by Gaussian distribution d-N (mu, sigma);
(4) If the average distance satisfies:
d i >μ+std*σ or d i <μ-std*σ
then the point is considered to be an outlier.
3. The point cloud registration method of claim 2, wherein the parameter std is a multiple of standard deviation threshold value, and the value range thereof is between 0.5 and 1.0.
4. The point cloud registration method of claim 1, wherein the clustering process comprises the steps of: randomly selecting a point from the point cloud data as an initial point, searching the nearest neighbor point of the point from the rest points, adding the neighbor point with the distance from the initial point being less than a set threshold value into a cluster, and taking the neighbor point as a new initial point; this process is repeated until the number of points in the cluster no longer increases.
5. The point cloud registration method of claim 4, wherein after the clustering process is completed, a maximum point number is set, and clusters having a point number exceeding the maximum point number are removed from the first and second point clouds.
6. The point cloud registration method of claim 4, wherein a minimum number of points is set after the clustering process is completed, and clusters having a number of points lower than the minimum number of points are removed from the first and second point clouds.
7. The point cloud registration method of claim 1, wherein the region matching comprises the steps of: respectively solving bounding boxes of the characteristic areas in the first point cloud and the second point cloud; matching the bounding box.
8. The point cloud registration method of claim 7, wherein the first point cloud and the second point cloud are obtained by translating the same product along one coordinate axis of a three-dimensional coordinate space; the principle of bounding box matching is that the bounding boxes have the same size, the same number of points and the same coordinates in the other two coordinate axes of the three-dimensional coordinate space.
9. The point cloud registration method of claim 1, wherein the region matching comprises an initial registration and a precise registration, wherein the initial registration is achieved by translation and the precise registration is achieved by rotation and translation.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110334365.8A CN115147433A (en) | 2021-03-29 | 2021-03-29 | Point cloud registration method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110334365.8A CN115147433A (en) | 2021-03-29 | 2021-03-29 | Point cloud registration method |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115147433A true CN115147433A (en) | 2022-10-04 |
Family
ID=83403476
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110334365.8A Pending CN115147433A (en) | 2021-03-29 | 2021-03-29 | Point cloud registration method |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115147433A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117808703A (en) * | 2024-02-29 | 2024-04-02 | 南京航空航天大学 | Multi-scale large-scale component assembly gap point cloud filtering method |
CN117894015A (en) * | 2024-03-15 | 2024-04-16 | 浙江华是科技股份有限公司 | Point cloud annotation data optimization method and system |
-
2021
- 2021-03-29 CN CN202110334365.8A patent/CN115147433A/en active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117808703A (en) * | 2024-02-29 | 2024-04-02 | 南京航空航天大学 | Multi-scale large-scale component assembly gap point cloud filtering method |
CN117808703B (en) * | 2024-02-29 | 2024-05-10 | 南京航空航天大学 | Multi-scale large-scale component assembly gap point cloud filtering method |
CN117894015A (en) * | 2024-03-15 | 2024-04-16 | 浙江华是科技股份有限公司 | Point cloud annotation data optimization method and system |
CN117894015B (en) * | 2024-03-15 | 2024-05-24 | 浙江华是科技股份有限公司 | Point cloud annotation data optimization method and system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107123164B (en) | Three-dimensional reconstruction method and system for keeping sharp features | |
JP6216508B2 (en) | Method for recognition and pose determination of 3D objects in 3D scenes | |
JP5705147B2 (en) | Representing 3D objects or objects using descriptors | |
JP5677798B2 (en) | 3D object recognition and position and orientation determination method in 3D scene | |
CN113628263A (en) | Point cloud registration method based on local curvature and neighbor characteristics thereof | |
CN111340862B (en) | Point cloud registration method and device based on multi-feature fusion and storage medium | |
CN108388902B (en) | Composite 3D descriptor construction method combining global framework point and local SHOT characteristics | |
CN114359042A (en) | Point cloud splicing method and device, three-dimensional scanner and electronic equipment | |
CN112418030A (en) | Head and face model classification method based on three-dimensional point cloud coordinates | |
CN111145129A (en) | Point cloud denoising method based on hyper-voxels | |
CN114743259A (en) | Pose estimation method, pose estimation system, terminal, storage medium and application | |
CN115147433A (en) | Point cloud registration method | |
CN113160129B (en) | Combined type simplified point cloud data rapid registration method | |
CN111524168A (en) | Point cloud data registration method, system and device and computer storage medium | |
CN111783722B (en) | Lane line extraction method of laser point cloud and electronic equipment | |
CN112767456A (en) | Three-dimensional laser point cloud rapid relocation method | |
CN115797418A (en) | Complex mechanical part measurement point cloud registration method and system based on improved ICP | |
CN117132630A (en) | Point cloud registration method based on second-order spatial compatibility measurement | |
CN114463396B (en) | Point cloud registration method utilizing plane shape and topological graph voting | |
CN111709426A (en) | Diatom identification method based on contour and texture | |
CN109508674A (en) | Airborne lower view isomery image matching method based on region division | |
CN116310355A (en) | Laser point cloud denoising and defect detection method for complex structural member | |
CN115147471A (en) | Laser point cloud automatic registration method based on curvature density characteristics | |
CN113111741A (en) | Assembly state identification method based on three-dimensional feature points | |
Yang et al. | Developing a semantic-driven hybrid segmentation method for point clouds of 3D shapes |
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 |