Abstract
Flexible and robust point cloud matching is important for three-dimensional surface measurement. This article proposes a new matching method based on three-dimensional image feature points. First, an intrinsic shape signature algorithm is used to detect the key shape feature points, using a weighted three-dimensional occupational histogram of the data points within the angular space, which is a view-independent representation of the three-dimensional shape. Then, the point feature histogram is used to represent the underlying surface model properties at a point whose computation is based on the combination of certain geometrical relations between the point’s nearest
Introduction
Three-dimensional (3D) point cloud matching is a key task in inverse engineering. 1 Multi-view measurement point clouds are registered and integrated into the same coordinate system for a complete digital model. The solution of matching methods for point clouds is generally to establish descriptors for data association. These descriptors are constructed using a 3D pattern recognition algorithm, which can be used to achieve partial or entire surface matching. The solution is widely used in computer vision research for model construction, visualization, identification, classification, scene understanding, and so on. The method has the advantages of easy operation and extensive application.
At present, there are many research methods for point cloud matching.2–9 The iterative closest point (ICP) algorithm 3 is one of the most popular methods. The optimal transformation matrix of a two-view point cloud is acquired through continuously reducing the Euclidean distance between the point clouds until the best match between the two views is achieved. However, this method has a restriction that limits the initial position of the point cloud. A good initial position will greatly reduce the computational burden and improve the matching accuracy; otherwise, the algorithm can easily fall into local convergence, resulting in matching and registration errors. In order to precisely estimate the initial rotation and translation vector, one study 4 developed a point cloud matching method that used topological features, including the border points and other salient points. Another 5 introduced a mapping method based on a least squares conformal map, which transformed the 3D matching to two-dimensional (2D) matching. A third study 7 derived a matching model using the overlapping relationship of different planes in the point cloud and then designed a point cloud registration model based on point and plane features. Tuladhar et al. 8 developed a two-step registration approach for aligning partially overlapped 3D scanned data, and the fine registration is the optimized step for the coarse step. The method improved the registration efficiency and accuracy. Wei and Pu 9 proposed a coarse matching method using irregular surface points and the central point of their neighborhood as matching points.
The above methods have two disadvantages. First, these methods are easily affected by noise, with a low robustness. Second, these low-dimensional metrics that include the curvature and distance are not very discriminative, but are very susceptible to matching error. For these reasons, many researchers have focused on 3D feature points with prolific details to describe the point cloud. 10 Johnson 11 introduced a spin image feature descriptor. The point normal and tangent plane distance between one point and another are used as 2D feature points that describe the characteristic information around the point. Tombari et al. 12 used direction histogram signature descriptors to construct a topological structure for the spherical neighborhood of each point. Frome 13 proposed a 3D shape context descriptor and established a spherical neighborhood structure for each point. The descriptor was divided into sub-regions. The invariant features were shown in the weighting descriptors. Rusu et al.14,15 developed persistent feature histograms (PFH) and a fast point feature histogram (FPFH) method. This method has been used widely in computer vision research. Rusu et al. 16 did not compute the feature for each point, but instead used the global descriptor viewpoint feature histogram (VFH), which joined viewpoint characteristic information based on the FPFH. Drost et al. 17 used global description information based on directed feature matching points. A rapid voting mechanism was used in the local area for matching.
This study developed a new robust matching method based on double neighborhood constraint optimization. The proposed double constraint optimization method is not only immune to noise but also reduces the search range for matching points and improves the correct feature point matching rate for a weak surface texture. The remainder of this article is organized as follows. The next section introduces the principle of our method, which includes point cloud pretreatment, the intrinsic shape signature (ISS) algorithm, the FPFH algorithm, and our double constraint optimization method. Section “Experiments and analysis” presents the applications for the 3D registration problem using our double constraint optimization method and discusses how the efficiency of the method was tested on noisy scanned data using several experiments. Finally, we conclude and provide insight on our future work in section “Conclusion.”
Principle of our method
Point cloud pre-processing
Point cloud noise is inevitable in the measurement process. The matching results will have errors if the noisy points are not filtered. Thus, a filtering and interpolation operation is needed before matching. We use two simple methods to filter and interpolate noisy points. First, the distances between the point and its neighboring points are computed. If we suppose that these distances have a Gaussian distribution, a threshold value can be estimated, along with its mean and variance value. This threshold is used to separate the noisy points. Then, the curvature-based interpolation algorithm is used for the scanned data. The point cloud after pre-processing has a structured format and is acceptable to use for point cloud matching.
Key feature point detection based on ISS
The scanned point cloud has not only a huge quantity of data but also a different signature with a different view. The matching efficiency and accuracy are low with a huge point cloud. Thus, it is a good solution to extract the key feature points using a view-independent method, which are then used to compute the transform relation between different views. The ISS 18 is a stable and discriminative method for characterizing the local region of a point cloud.
This method uses the popular surface normal reference to provide a full 3D coordinate system for local shape descriptors. The z-axis of the frame is the surface normal. The x- and y-axes are computed using the right-hand principle. A highly discriminative shape feature is computed as a weighted 3D occupational histogram of data points in its spherical neighborhood using a 3D partition that evenly divides the angular space at a 3D point. This choice of feature extraction ensures robustness in relation to the data noise, as well as any errors in computed reference frames.
First, the K-D tree is built for a 3D point cloud. Compute a weight for each point
where
Then, a weighted scatter matrix
Finally, we can compute its eigen values
Computation of FPFHs
The computation of an FPFH at a point

Reference frame.
Figure 2(a) presents an influence region diagram of the PFH computation for a query point (

Computation model of descriptor: (a) descriptor of PFH and (b) descriptor of FPFH.
To simplify the histogram feature computation, the relationships between the point
Double neighborhood constraint descriptor
To find two matching point clouds, the sample consensus initial alignment (SAC-IA) algorithm is used to compute the feature histogram of the local neighborhood points.
13
The point cloud is shown at the left in Figure 3, with the black dots depicting the local point clouds and the red dots showing the key feature points. A local neighbor is shown as

Double neighborhood constraint model.
We developed a new method to solve this problem. As shown in Figure 3,
The double neighborhood constraint steps consist of the following:
If points P and Q are key feature points detected from cloud points P1 and P2, respectively, we can compute every key feature point’s FPFH within its local neighborhood:
Three points are sampled randomly from point set P to form set
The matched key feature point list of
For each pair of matched key feature points, the FPFH of neighborhood
We then find three key feature points whose distance
The match points of
If
Repeat steps 1 to 7. The algorithm will stop when any one of the following conditions is met: (a)The maximum iteration number (b)
Experiments and analysis
Some experiments were performed to verify the stability and applicability of the method. Its immunity to noise, applicability to a weak texture surface, and matching accuracy were verified using the following experiments.
Noise immunity test and analysis
The rabbit model data were used in this experiment. Two point clouds P and Q were selected from a registered model. Point cloud Q was rotated 30° along a direction vector (10, 20, 0) and then the data were moved along the vector (0.05, 0.1, 0). The two point clouds with different views are shown as Figure 4(a). Then, different level noises were added to the model data. The SAC-IA-based algorithm and our double neighborhood constraint method were used for matching, as shown in Figure 4(b) and (c), respectively. We can clearly see that our matching method is better than the SAC-IA algorithm. There are some obviously gaps in the matching results of Figure 4(b), whereas Figure 4(c) shows the good matching results found with our method.

Matching result comparison of different methods: (a) two-view point clouds, (b) matching result with SAC-IA method, and (c) matching result with double neighborhood constraint method.
Some Gaussian noise was added to the two resource point clouds. The matching results are shown in Figure 5 with different noise levels

Correct match points comparison under different levels of noise.
Then, we compared the transform matrices with the two matching methods, as listed in Table 1. The transform matrices with the different methods were nearly same when the noise level was very low. The error increased with the SAC-IA method. Our method had good error convergence with an increase in the noise level.
Motion parameter comparison under different levels of noise (in mm).
Matching experiments for weak texture surface
In order to verify that our method would work for a weak texture surface, the smooth tooth model was used as a measurement object. Figure 6(a) and (b) shows the point cloud and 3D model surface of the tooth. It is obvious that the surface of the tooth is very smooth, with almost no features.

Measurement data of tooth with weak texture surface: (a) point cloud and (b) 3D model.
The maximum iteration was set at

Matching results with different values for
Verification of matching accuracy
Many experiments were used to verify the matching accuracy of the proposed method, with the results listed in Table 2. The advantage of our method is seen in the comparison of different matching parameters. The quantities of the correctly matched points were 97 for the gypsum jaw with the traditional method (SAC-IA), 105 for the original method without sample consensus (PFH), and 110 with our method. The random sample consensus (RANSAC) method was used to filter the matching results because there were many incorrectly matched points. The numbers of correctly matched points after filtering were approximately 61, 72, and 106. The average distances between two overlapping point clouds were 0.434, 0.432, and 0.216 mm, and the standard deviations were approximately 0.198, 0.191, and 0.106 mm. Thus, our double neighborhood matching method was found to be better than the traditional methods for a weak surface texture (Figure 8).
Experimental results.
RANSAC: random sample consensus; SAC-IA: sample consensus initial alignment; PFH: persistent feature histogram.

Matching results with our double neighborhood method: (a) cat model, (b) correct match, and (c) matched point cloud.
Table 2 lists the detailed results with different methods. The correct matching rate was improved by an average of 33% with our method. The experimental data were analyzed using the Geomagic Studio 12 software.
Conclusion
This study developed a double neighborhood matching method with novel 3D feature points for difficult matching problems with a complex point cloud, random space position, high noise level, and weak surface texture. Both of the advantages of a local neighborhood and key feature points were used to eliminate incorrectly matched points. The correct matches were increased by 30% even if there was some noise. The experiment results showed that our method is superior, with a better correct matching rate and accuracy even when used for a weak feature surface. This method provides new opportunities for random point cloud matching, with a performance that is superior to the traditional matching method.
Footnotes
Handling Editor: Michal Kuciej
Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Funding
The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This work was supported by the Fundamental Research Funds for the Central Universities of China (No. NS2017033).
