## 2 Methodology  
The process of establishing the coordinates of the 3D space model is shown in Figure 2. Firstly, calibration experiments are carried out to reduce the deviation that exists in the process of the experiment. Then, the fast cluster SOR (FCSOR) is adopted to remove noise points, and a pass-through filter is selected to remove redundant points that are not relevant to the experiment. Finally, the point cloud processed by the filter is input to the upsampling model, and the final point cloud is obtained. **Calibration Experiment:** The platform on which the sample is placed can be moved along the six-axis to adjust the blade's posture. Before the experiment, it is necessary to calibrate the platform motion coordinate system and calculate the platform motion parameters, which can set up the mapping relationship between the real sample and the point cloud. There is a deviation when using the point cloud data to locate the sample and  
Figure 1: Point cloud used in the X-ray diffraction experiment. Figure 2: Overview of 3D space model coordinates. r is the upsampling rate. move it to the target point. The deviation comes from two aspects: the platform motion deviation and the point cloud matching position deviation. The platform motion deviation mainly comes from the stepper motor, such as the wear of the stepper motor in use and environmental interference. Point cloud matching position deviation mainly comes from the 3D cameras. There is a certain deviation when the 3D camera obtains the coordinate information of the blade. The platform motion deviation can be eliminated by calculating the difference between the theoretical position and the actual position of the object for calibration. The platform motion deviation is calculated as follows:  
\[e_{platform}(x,y,z,rx,ry,\theta)=P_{act}(x,y,z,rx,ry,\theta)-P_{theor}(x,y,z, rx,ry,\theta) \tag{1}\]  
where \(P\) represents the center of the object for calibration, and \(x,y,z,rx,ry,\theta\) represents the coordinates in the six degrees of freedom direction. The object matching deviation can be eliminated by calculating the difference between the actual and the theoretical position of the sample. The object matching deviation is calculated as follows:  
\[e_{camera}(x,y,z)=P^{\prime}_{act}(x,y,z)-P^{\prime}_{theor}(x,y,z) \tag{2}\]  
where \(P^{\prime}\) represents the center of the sample, and \(x,y,z\) represent the 3D coordinates of the point. Through the above calibration experiments, the deviation can be reduced and the positioning accuracy of the sample can be improved. Because the calibration experiment is the preprocess step of our research, the detail is not described here. **Pretreatment**: We select SOR to denoise the point cloud. For each point, the average distance \(d\) is calculated from all points in its \(k\) neighborhood. The average distance corresponding to each point is obtained in the input point cloud. For all points in the input point cloud, it is assumed that each element in the distance array constitutes a Gaussian distribution, which is determined by the mean and standard deviation of the sample. Corresponding points whose \(d\) value is outside the standard range (defined by the mean and variance of the sample) can be defined as outliers and removed from the data set. Because there are millions of points in the data sets, the method proposed by FCSOR to speed up the calculation time is introduced [16]. For each point, the average squared Euclidean distance of its \(k\)-nearest neighbors are calculated and the points are divided into different clusters. Then, the average number of points in each cluster is counted and the SOR calculations are only performed on clusters with fewer points than the average. After performing the filtering, we use the pass-through filter to remove irrelevant data and retain the point cloud in the area required for the experiment. Algorithm 1 shows the detailed calculation process of the pretreatment. \(\mu\) is the denoising coefficient.