## 3 Realize Point Cloud Fine Registration Using Improved ICP Algorithm  
### Mathematical Models of the ICP Algorithm  
In point-based point cloud registration, the transformation between the target point cloud and the point cloud to be registered can be determined by the affine transformation translation matrix \(T\) and the rotation matrix \(R\). Currently, the iterative closet point (ICP) and various variants of the ICP algorithm are the most widely-used point cloud registration algorithms. The ICP algorithm was first developed by [PERSON] et al. [1], which finds the least-square rigid transformation matrix between two point cloud data sets according to the closest distance criterion of the corresponding point, and repeats the iterations until the local minimum value is obtained. Considerable deformations and optimizations of the ICP algorithm were proposed for different application environments.  
The registration of the surface point cloud can be simplified as the matching of measured point cloud relative to the theoretical point cloud. If \(P\) is set as the measured point cloud of the curved workpiece while \(Q\) is the theoretical point cloud, the relationship between these two point clouds can be shown as:  
\[Q=R\cdot P+T \tag{16}\]  
where \(R=[R_{x},R_{y},R_{z}]^{T}\) and \(T=\left[T_{x},T_{y},T_{z}\right]^{T}\) represent the rotation and translation of the three axes (x, y, z) of \(P\) relative to the theoretical point cloud \(Q\), respectively. Select multiple point pairs in the measured point cloud dataset, denoted by \(p_{i}\in P\), and find the corresponding point set \(q_{i}\) in the theoretical point cloud set \(Q\) so that the value of the target function shown in the following formula can be the minimum:  
\[d=min|p_{i}-q_{i}| \tag{17}\]  
Figure 1: Realize Point Cloud Initial Registration Process.  
Then, calculate the transformation matrices \(R\) and \(T\) to minimize value of the error function:  
\[f(R,T)=\underset{R,T}{min}\frac{1}{N_{P}}\sum_{i=1}^{N_{P}}\abs{q_{i}-\left(p_{i }\cdot R+T\right)}^{2} \tag{18}\]  
Rotate and translate the rotation matrix \(R\) and translation matrix \(T\) obtained in Step 2 for \(p_{i}\) using the transformation matrix for a new corresponding point set:  
\[P_{i}^{\prime}=\left\{p_{i}^{\prime}=p_{i}\cdot R+T,p_{i}\in P\right\} \tag{19}\]  
Calculate the average distance between \(P_{i}^{\prime}\) and the corresponding point set \(Q\):  
\[d=\frac{1}{N_{P}}\sum_{i=1}^{N_{P}}\abs{P_{i}-Q_{i}}^{2} \tag{20}\]  
If the average distance \(d\) is less than the preset threshold or the number of iterations is greater than the preset maximum number of iterations \(\tau\), leave the loop and stop the iterations; otherwise, return to recalculate the transformation matrix until the convergence requirements are met. The standard flow of ICP registration is shown in Figure 2.  
The accuracy of the ICP algorithm is generally evaluated as the root-mean-square error \(\sigma_{MSE}\) that calculates the distance of all point clouds. The formula is:  
\[\sigma_{MSE}=\sqrt{\frac{\sum\limits_{i=1}^{N_{P}}\abs{q_{i}-\left(p_{i}\cdot R +T\right)}^{2}}{N_{P}}}. \tag{21}\]  
The standard ICP algorithm is not necessarily required to segment and extract features from the point cloud data to be processed, which saves time for feature extraction and helps obtain more accurate registration results. Additionally, the algorithm converges well in the presence of better initial registration values. However, in search of corresponding points, a comparison with a large number of point cloud data should be conducted, and large computation is therefore required. It is irrational for the standard ICP to make the hypothesis that the closest point of Euclidean Distance is the corresponding point, which brings about a certain number of corresponding false points [29]. For this reason, an improved ICP algorithm was proposed in this paper.