Enhanced Super4PCS Algorithm by Comparing Transformed Normals at Corresponding Points

In this paper, an enhanced algorithm based on the Super4PCS algorithm was established to address the problem of prolonged congruent set verification of Super4PCS for point clouds with many points or low overlap. By comparing normals of corresponding points in a source point cloud and a tentatively transformed target point cloud, this approach dramatically decreases the time required for candidate transformation verification. This strategy has been shown to improve registration efficiency in experiments.


Introduction
Point cloud registration has recently become an important method in 3D point cloud processing, which is widely utilized in virtual world reconstruction, computer-aided industrial design, medical imaging, and autonomous driving.
In practice, it is difficult to acquire a complete model directly and several views of a model should be combined, usually in the form of point clouds, to obtain a complete 3D model. is process is called registration. In detail, in the registration process, a transformation matrix is obtained to match a point cloud to another point cloud, or different views of the point cloud.
As the oldest point cloud automatic registration algorithms, the ICP algorithm and its variants [1][2][3][4][5][6] have been widely used owing to high efficiency and precision. In addition, researchers proposed point cloud registration algorithms with a probabilistic model, such as NDT [7], CPD [8], and filterReg [9], to handle outliers and noise. However, the initial position of the point clouds to be transformed is an important constraint of the algorithms, as mentioned earlier.
Various coarse registration (initial alignment) algorithms were proposed to solve this problem. Fast and accurate coarse registration of point clouds is a key technology and research focus. In general, coarse registration over a point cloud is managed to find the optimal rigid transformation that can align two input point clouds to a common coordinate system. In practical applications, the data may be seriously occluded, and the overlapping area between different views of a model is minimum, making the process of finding the best rigid-body transformation challenging. erefore, finding a fast, accurate, and robust coarse registration algorithm for point clouds is a widespread research topic.
Currently, most coarse registration algorithms for 3D point clouds can be divided into two categories or their combination: feature-based registration methods and feature-free registration methods. In the former, keypoints are extracted, and the corresponding relationship between twopoint clouds is obtained using the feature descriptors that can remain unchanged under a rigid-body transformation. Next, registration is performed, for example, using the SAC-IA algorithm based on the FPFH feature [10] or the SHOT feature [11]. However, when the feature is not obvious, the noise is large, or the number of outliers is high and feature extraction is difficult to perform, limiting the registration speed and quality. Feature-free registration methods are based on exhaustive search. By traversing the entire feasible transformation space, these methods find the transformation that minimizes the error function or makes the largest number of common points shared, such as the random sample consensus (RANSAC) algorithm. ese algorithms are robust, as compared with feature-based registration methods. However, these methods are unacceptably time-consuming when the number of points in the point cloud is large. is is because, when the overlapping rate is low [12], the complexity of the RANSAC algorithm is often its worst case O(N 3 ), where N represents the cardinality of the target point cloud. Based on RANSAC, the fourpoint congruent set (4PCS) algorithm [13] and the 2PNS algorithm [14] were proposed. e method based on machine learning provides a relatively more robust transformation between two arbitrary point clouds through the invariant features generated by machine learning technology. Typical representatives of such methods include point cloud registration network (PCRNet) [15], deep global registration (DGR) [16], and a learned detector method [17]. Since learning-based methods may use more detailed features than other methods, they can be more robust to noise. However, methods based on machine learning need a lot of computing overhead in the training stage, and the interpretability of the algorithm is also poor. In addition, global registration algorithms based on heuristic algorithms belong to featureless registration methods and generally consume huge computational resources [18][19][20][21]. is paper proposes a method to improve the efficiency of Super4PCS by shortening verification time of Super4PCS comparing transformed normals.

Related Work
Aiger et al. introduced the 4PCS algorithm, which uses the geometric information of four points to compute the transformation matrix between different views. e 4PCS algorithm can run in the O(N 2 ) time. Based on 4PCS, Mellado et al. proposed the Super4PCS algorithm, the asymptotic complexity of which is O(N). e key improvement in the Super4PCS algorithm is the utilization of a gridlike data structure to search for point pairs within a certain distance range.
In this paper, we improve Super4PCS by adding verifying parts of normals under a tentative transform matrix before the verification stage of original Super4PCS and eliminates fault congruent four-point sets and lowers the number of potential congruent four-point sets. In addition, we proposed a method to judge the positive and negative of normals by the convexity in the point field to ensure the positive and negative consistency of the normals at corresponding points of different views. e time consumption of verification stage in Super4PCS accounts for a large proportion of the total time consumption. erefore, reducing the time consumption of verification stage can obviously improve the efficiency of Super4PCS. Based on the idea, the proposed registration algorithm adds normal matching before verification and eliminates fault congruent four-point sets and lowers the number of potential congruent four-point sets. Raposo et al. presented the 2PNS algorithm [14]. e improved version of Super4PCS uses point pairs and their endpoint normal vectors instead of coplanar four points to search correspondences between views. It is experimentally showed that the 2PNS algorithm can perform registration in a shorter time than Super4PCS. However, 2PNS could fail if point clouds are too sparse or strongly dominated by sharp edges and corners, with the quality of point clouds being poor.

Review of Super4PCS
To make the description of the proposed algorithm clear, we first go over the Super4PCS algorithm briefly. e Super4PCS algorithm was established on the 4PCS algorithm, which was developed based on RANSAC. Original RANSAC would try to search exhaustively triplets because a rigid transformation may be obtained from only 3 points. Its runtime complexity is O(N 3 ). e 4PCS algorithm uses coplanar sets of 4 points, instead of the minimum sets of 3 points used in RANSAC, and employs a method efficiently matching affine invariant ratios in a source point cloud and a target point cloud to solve the global 3D registration problem. e 4PCS algorithm uses coplanar sets of 4 points, instead of the minimum sets of 3 points used in RANSAC, and employs a method efficiently matching affine invariant ratios in a source point cloud and a target point cloud to solve the global 3D registration problem.
e algorithm selects iteratively a base set of 4 coplanar points in the source point cloud P, finds all the 4point sets congruent with the base set in the target point cloud Q within a certain tolerance, verifies rigid transformations between the base set and its congruent 4-point sets, and retains the best transformation according to the LCP score until termination conditions are satisfied. Here, a coplanar set of 4 points consists of two two-point pairs. e asymptotic complexity of 4PCS is O(N 2 ).
Super4PCS solved two main bottlenecks of 4PCS: pair extraction and elimination of nonrigid invariant 4-point candidates and decreased the asymptotic complexity to O(N). e target point cloud in a grid-like structure, which is subdivided recursively, is employed to compute which points are intersected with spheres centered other points in a tolerance and which point pairs are possible to make out congruent 4-point bases. e improved pair extraction is the highlight of this algorithm. In addition, Super4PCS uses hash-like structure to obtain rigid invariant 4-point candidates and avoid elimination process. e main steps of the Super4PCS algorithm are shown as Figure 1 and are as follows.

Proposed Algorithm
is section describes an improved Super4PCS algorithm which eliminates wrong transformation matrices before computing LCP scores to shorten the verification time of candidates' transformation matrices in original Super4PCS.
In detail, the proposed algorithm compares normal directions transformed using a candidate correspondence at corresponding points across different views under a candidate transformation to determine whether the transformation should be very small or smaller than a certain threshold. If the transformed normal error of the transformation matrix is calculated according to a correspondence, we could exclude those transformations that cause large normal errors before the verification stage of Super4PCS. is strategy can reduce the range of potential transformations and time consumption at the verification stage of Super4PCS.
In practice, we do not need to check normal vector at all the points in the source point cloud with a transformation matrix to judge whether the transformation matrix could be optimal. e number of transformed normal errors used depends on the quality of the source point cloud and the target point cloud. If the quality of the source point cloud and the target point cloud is high, only several transformed normal errors need to be checked.  Computational Intelligence and Neuroscience e method directly using the normal error at a point in the congruent base pair of the source point cloud is an efficient way because the corresponding points of the congruent base pair of the source point cloud form the base pair of the target point cloud that does not need extra computation. If one of the several transformed normal errors under the current tentative transformation matrix is greater than a threshold, it can be considered that the current tentative transformation matrix is wrong.
For most situations, the quality of point clouds is not very high; it may not be enough to use only several transformed normal errors under a transformation. ere may be a large number of points whose normal direction has great error, especially edge points, corner points, and points on scattered broken surfaces. It is unreasonable to negate a possible transformation matrix only according to the fact that the transformed normal error of one or two points exceeds the threshold. A more reasonable strategy is to check a certain number n c of randomly selected transformed normal errors. e possibility that several transformed normal errors under a wrong transformation meet the requirements simultaneously is extremely small. Hence, if the proportion of points whose transformed normal errors satisfying a requirement is greater than a certain threshold p t , it is determined that the current tentative transformation matrix can be used in the LCP verification stage of Super4PCS. e flowchart of improved Super4PCS is showed as Figure 2. e flowchart of judging whether the point meets the requirement is shown as Figure 3.  Computational Intelligence and Neuroscience Before judging whether a point meets the requirement, it is necessary to ensure the positive and negative consistency of the normals at corresponding points of different views because the calculated normal directions of the corresponding points across different views of a point cloud model may be opposite [22][23][24]. Here, we solve this problem according to the convexity of the neighborhood of a query point. Since the convexity of the neighborhood of a query point is consistent across different views, we can judge whether the normal direction of a point is positive or negative by calculating the cosine value of the angle between the normal and the convex direction of its neighborhood. If the cosine value is negative, we will flip the normal direction. e direction from the centroid of the neighborhood of a Computational Intelligence and Neuroscience  Computational Intelligence and Neuroscience point to the point can be used as the convex direction of its neighborhood. e flowchart of fixing normal directions is shown as Figure 4. After fixing normal directions, whether the dot product of the normal at a point in transformed source point cloud and the normal at its corresponding point in the target point cloud is greater than a certain threshold is used to judge whether the transformed normal errors under a transformation is within the tolerance. e total steps are shown as follows: (1) Randomly select a point pair in the target point cloud and compute corresponding invariants. (2) Extract congruent pairs with invariants of the above step in the source point cloud.

Experiments and Results
In this section, we performed experiments to verify the efficiency of the proposed registration algorithm. e experiments were run on different views of the bunny model, dragon model, happy buddha model, and armadillo model from the Stanford 3D Scanning Repository. ese models added outliers with a variance of 0.002 mm on 5 percentage of the points. Figures 5 and 6 show the respective registration processes of the proposed algorithm over different views of the point cloud of the bunny. To show the registration processes clearly, the second views in (a) and (b) of Figure 5 are rotated by approximately 180°away from the first views. Figure 6 shows the results obtained using the proposed algorithm. Similarly, Figures 7 and 8 show the registration process of the happy buddha model. Tables 1 and 2 show comparisons between the proposed algorithm and other algorithms on the bunny model, happy buddha model, dragon model, and armadillo model concerning time, LCP, translation error, and rotation error. e results shown in the table are the average of the results of 50 runs. e results confirm that the computation time of the proposed algorithm is significantly reduced, compared with Super4PCS and 2PNS while maintaining accuracy.

Conclusion
Registration is now commonly applied in the 3D point cloud processing field. Unlike algorithms that easily fall into the local optimum, the Super4PCS algorithm based on the 4PCS point algorithm as a global registration algorithm achieves good results. However, the time consumption of the verification of Super4PCS accounts for a high proportion of the total time. To reduce the total time of Super4PCS, an improved algorithm combining the original Super4PCS algorithm with normal matching is proposed in this paper. e method of checking the angle between normal of corresponding points in a tentatively transformed source point cloud and a target point cloud is used to obtain the candidate points of the Super4PCS algorithm to eliminate the obviously wrong transformations. e experimental results showed that this method can remarkably improve the registration efficiency.
However, the proposed algorithm is not suitable for models with a lot of broken surfaces, where a large proportion of points are difficult to estimate and obtain the correct normal direction. We plan to improve to make normal estimation robust to expand the application scope of the algorithm in the future.

Data Availability
e data used to support the findings of this study are available from the corresponding author upon request.

Conflicts of Interest
e authors declare no conflicts of interest.