Next Article in Journal
The Correlation between Surface Integrity and Operating Behaviour of Slide Burnished Components—A Review and Prospects
Previous Article in Journal
Thematic Analysis: A Corpus-Based Method for Understanding Themes/Topics of a Corpus through a Classification Process Using Long Short-Term Memory (LSTM)
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Multivariate Local Descriptor Registration Method for Surface Topography Evaluation

1
School of Software Engineering, Chengdu University of Information Technology, Chengdu 610225, China
2
School of Computing and Engineering, University of Huddersfield, Huddersfield HD1 3DH, UK
3
IMA Ltd., 29 Clay Lane, Hale WA15 8PJ, UK
*
Author to whom correspondence should be addressed.
Appl. Sci. 2023, 13(5), 3311; https://doi.org/10.3390/app13053311
Submission received: 18 February 2023 / Revised: 2 March 2023 / Accepted: 3 March 2023 / Published: 5 March 2023

Abstract

:
This paper illustrates a systematical surface topography measurement and evaluation method based on a 3D optical system. Firstly, the point cloud data of the workpiece are extracted by the use of a 3D structured light measurement system, and the STEP file of the design model is converted into point cloud data. Secondly, the local measurement point cloud (LMPC) and digital model point cloud (DMPC) are registered by a multivariate local descriptor registration scheme proposed in this study. Thirdly, the surface shapes extracted from the STEP file are applied as a reference to segment the measuring point cloud. Finally, an error analysis scheme is conducted on specific functional surfaces. An experiment was conducted to analyse the flatness, cylindricity and roughness to demonstrate the effectiveness and advantage of the method. The comparison results show that the proposed method outperforms other 3D optical surface topography analysis methods.

1. Introduction

Surface topography is defined as the interface between the part and surrounding medium, which is the concrete reflection of product precision. The form tolerance consists of flatness, cylindricity, roughness, straightness, etc. The assessment of the surface topography is essential for the performance validation of parts. The standardised method for obtaining an evaluation of surface topography is a coordinate measuring machine (CMM). However, the CMMs usually occupy enormous space and are time-consuming. Another approach is to use industrial CT to obtain complete workpiece scanning data and then coordinate measurement data with the CAD data [1,2], which is costly and inefficient.
The use of 3D optical measurement has been widely used in manufacturing, scene modelling and other fields because of its non-contact, fast measurement speed and high accuracy [3,4]. The 3D optical measurement can be divided into the passive method, such as binocular stereo vision, and active methods, such as time-of-flight and digital fringe projection [5]. Compared with other methods, the digital fringe projection has high resolution, accuracy and speed. This study will focus on digital fringe projection-based surface topography error evaluation. Some work has been done for this method via different approaches to improve accuracy. Peng et al. [6] proposed an adaptive grating method to calibrate the distortion error of the projector, which has the advantage of 0.0213 mm (RMS) standard plane measurement accuracy. Yang et al. [7] studied the residual compensation method of projector distortion, this method needs two adjustments to the original raster image, and its standard plane measurement accuracy is 0.0435 mm. Recently, deep learning has been introduced into digital fringe projection. Shi et al. [8] proposed a deep learning method based on enhanced tags and patches for phase recovery. Jeught et al. [9] investigated a neural network with a large number of simulated data sets in the training process, extracting the height information of objects from a single fringe image. In metrological studies, multiscale methods are used to analyse surface topography. Brown et al. [10] investigated multiscale analyses and characterization to provide correlations between topography and the performance of parts. Peta et al. [11] introduced geometric multiscale methods into electrical discharge machining; it is possible to shape surface microgeometry. Kang et al. [12] presented a contact model to describe normal and tangential contact behaviors of rough interface with a multiscale method; this model provides an effective way for studying the contact response of rough interface.
The 3D structured light system has the advantages of simple structure and low cost, hence quickly obtaining the measurement data of a workpiece [13]. In practice, the result of optical measurement data is in the form of a point cloud. Take a grating structured light measurement system as an example [14]; it processes the shot raster image to obtain the 3D point cloud of a workpiece, known as the measurement model.
The classical error analysis method of 3D optical measurement calculates the distance between point pairs after completing the registration of the measurement model and corresponding CAD model. However, obtaining the entire measurement model requires a splice point cloud from multi-view because a point cloud can only photograph the data at a particular projection direction [15], which is high-cost and has splicing errors. To overcome the difficulty of error analysis from local data to whole CAD data, the common method in the industry is to post positioning markers [16]. Nevertheless, it is evident that this method will increase the time and introduce manual intervention errors. Xie et al. [17,18] investigated multiple global descriptors to enhance the description of the point cloud formed by the key points and their neighbourhood to complete the localisation of aircraft partial skin. However, for some small parts, the data is obtained at a specific projection direction, which accounts for a large proportion of the whole digital model, such extensive local measurement data is hard to be broken into patches of the point cloud. The local descriptor method [19] can complete small parts to complete registration, and the commonly used point cloud-based local descriptors depend on manual processes, such as Point Feature Histogram (PFH) [20], Signature of Histogram of Orientation (Shot) [21] and Ensemble of Shape Functions (ESF) [22]. These descriptors are challenging to accurately describe the characteristics of particular parts and have low generalisation.
In addition to the global deformation analysis of the local point cloud, another critical issue to be addressed in implementing target surface error analysis is to split the point cloud into various functional surfaces accurately. Therefore, the research on the segmentation of measuring point clouds of some workpieces is still in the exploratory stage, one of the reasons is that the functional surface is related to the mutations, but some functional surfaces can be connected naturally and smoothly. According to these properties, Qie et al. [23] employed conformal geometry to segment the mesh model of measured data and further studied logistic regression to smooth boundaries. However, the threshold values are difficult to generalise in this method for different parts. Yang et al. [4] used the initial graphics exchange specification (IGES) file as a template to segment CT scan data for error analysis of interested surfaces; however, IGES files are large, and the description of some geometric entities is unstable [24].
In summary, there are two problems to be solved in the error analysis of 3D optical measurement data:(1) how to accurately complete the local point cloud to the whole CAD model registration; (2) how to isolate the target surfaces on a local measurement model. To this end, a multivariate local descriptor registration method is introduced to solve the registration problem in this study. The aim of this method is to establish a complete part-in-whole point cloud registration process, including coarse and fine registration, and improve registration accuracy. Then, to avoid unnecessary functional surfaces and computational power, a local point cloud segmentation method to isolate target surfaces is presented. This study aims to illustrate the entire process of 3D structured light measurement and demonstrate the advantage of the method. Figure 1 shows the framework of the implementation of the error analysis process. Firstly, the standard for the exchange of product (STEP) digital model is transformed into a point cloud. Then a multivariate local descriptor is used to complete the registration of the local point cloud to the STEP digital model. After registration, the STEP file is used as the reference to segment each functional surface in measurement data. Finally, the error analysis of the target surfaces is completed.
This paper is organised as follows: Section 2 illustrates the details of generating functional surfaces and point clouds based on STEP files. The construction of local point cloud registration to the STEP model based on multivariate local descriptors is described in Section 3. Section 4 presents the segmentation method for the local point cloud. Experimental verification of the application and demonstration of its effectiveness and advantages are reported in Section 5. A comparison of different evaluation methods is presented in Section 6. Finally, Section 7 concludes this paper and elaborates on future studies.

2. Generation of Functional Surfaces and Point Cloud Based on STEP File

STEP has been developed by ISO committees to describe a complete product definition throughout the life cycle of products [25]. In addition, the STEP file contains useful geometric and topological information [26], and all surface shapes are conformable to the initial design intentions of CAD designers. Therefore, the STEP file can be used as a guide to segment the measurement data. This section introduces the basic concepts of generating various functional surfaces and point clouds based on the STEP AP242 [27] format file.

2.1. The Division Functional Surface in STEP File

The target surfaces in STEP are defined as functional surfaces that contain the demanded geometric features, such as matching surface and R angle. An ADVANCED_FACE in a STEP file represents a functional surface that includes the type and boundary information based on boundary representation (BRep) [26]. The entity information of a surface is shown in Figure 2. A surface contains multiple edges, and the entity of an edge is divided into lines, circles, rational b-spline curves with knots and non-uniform rational b-spline (NURBS) curves, and the line matrix is defined by
p = 1 t o d T
where t is the length parameter of the line, o is the origin point, and d is the direction. The circle equation is expressed as
p = 1 r cos θ r sin θ o a b T
where r represents the radius, θ represents the angle of the circle, o represents the centre of the circle, and a and b are vectors perpendicular to each other and perpendicular to the normal direction of the circle. The NURBS curve equation is given in the form
p ( k ) = i = 0 N i , m ( k ) w i P i i = 0 N i , m ( k ) w i N i , 0 ( k ) = 1 ( k i k k i + 1 ) 0 ( o t h e r s ) N i , m ( k ) = ( k k i ) N i , m 1 ( k ) k i + m k i + ( k i + m + 1 k ) N i + 1 , m 1 ( k ) k i + m + 1 k i + 1 , m 1
where N represents the basis function, w represents weight, P is the control point, m is the order, and k indicates the parameter between knots.
The analysis of circular arc is key in STEP parsing. Although the start and end points are given in the STEP file, it is necessary to convert them into angles through specific methods. Usually, the calculation of the cosine angle of two points can only get the range from 0 to π but lacks the range from π to 2π. To this end, the content of the circle calculation is given as follows:
(1)
Calculating two direction vectors perpendicular to each other in the normal direction N of the circle. Selecting any one of the x, y, and z directions of the global coordinates and taking the cross product with N. If the result is not 0, set it as direction a; otherwise, choose another direction to calculate the cross-product. Keep taking N to cross a and direction b, obtaining a, b and N as the local coordinate system of the circle, and then projecting it into a 2D plane in the direction of N, as shown in Figure 3; the transformation formula is expressed as Equation (4), where R = [a, b, N], p is the 3D coordinate point, p ^ is the 2D coordinate point, and here is the start point or end point, o is the centre of the circular arc.
p = R p R o
(2)
In order to remove the z-axis of the local coordinate system, the start and end points of the two-dimensional plane can be obtained and calculate the sine v1 and cosine v2 of the starting point S and the ending point E, respectively.
(3)
The equation obtains the results of the final start point and end point (5). Finally, the direction of the edge curve in the STEP file is used to determine the result (if the direction is T, select θ1 in Figure 3, otherwise, select θ2 in Figure 3). The discrete points of a circle can be determined according to the equation of a circle.
θ = arccos ( v 1 ) , v 1 > 0 , v 2 0 arccos ( v 1 ) , v 1 0 , v 2 0 arccos ( v 1 ) + 2 [ π arccos ( v 1 ) ] , v 1 < 0 , v 2 < 0 arcsin ( v 2 ) , v 1 0 , v 2 < 0
According to the parse of boundary, each functional surface is finally divided, as shown in Figure 4.
Figure 3. The definition of angle in a circular arc.
Figure 3. The definition of angle in a circular arc.
Applsci 13 03311 g003
Figure 4. The division of functional surface in a certain STEP file.
Figure 4. The division of functional surface in a certain STEP file.
Applsci 13 03311 g004

2.2. The Generation and Trimming of Point Cloud

2.2.1. The Filling and Trim of Planar Point Cloud

The steps of plane point cloud filling are set as follows:
Input 3D model point cloud;
Output Trimmed point cloud of the plan.
Step 1 Projecting onto a 2D plane and filling the bounding box. The ray casting method is used to determine whether the point is inside the plane.
Step 2 Projecting onto a 2D plane continues with the projection method by Equation (4).
Step 3 Draw the bounding box of the projected polygon and equidistant lines in the bounding box for filling.
Figure 5 shows the result of a polygon filling. After filling, it is necessary to determine whether the filled point is inside the enclosing polygon. Therefore, the ray casting method is adopted for judgment, and the schematic diagram of the ray method is shown in Figure 6. In the ray method, drawing a ray from the point which needs to be determined, if the number of edges that the ray passes through is even, the point is outside the polygon (Figure 6, Point 2). Otherwise, the point is inside (Figure 6, Point 1). When the edge of a polygon is a smooth curve, it can be approximated as the edge formed by multiple straight lines, as shown in Figure 6b.

2.2.2. The Filling and Trim of the Curved Surface Point Cloud

Compared with a plane, the curved surfaces in STEP files consist of cylindrical surfaces, conical surfaces, b-spline surfaces with knots and non-uniform b-spline. In this study, all curved surfaces were transformed into NURBS surfaces [28]. Similar to the planar point cloud process, the point cloud of curved surfaces needs to be trimmed. It is difficult to trim surfaces in a 3D form directly, and it also cannot follow the trimming steps of the plane, which is trimming by mapping into the 2D space domain. NURBS surfaces can be trimmed by reverse-mapping the boundary to the 2D parameter field of NURBS surfaces. As shown in Equation (6), each point in the 3D domain corresponds to the u, v parameter of the NURBS surface. Supposing a point P (x, y, z), a BFGS method can be used to approximate its corresponding parameters u0 and v0 in the parameter domain. The BFGS method [29,30] is a quasi-newton method. Thus, a better initial value of the parameter should be chosen to avoid calculating a wrong result. The trimming steps of the curved surface point cloud based on the BFGS method are as follows:
Input Curved point cloud.
Output Trimmed curved point cloud.
Step 1 Supposing a set of boundary points [31], find their nearest points in the NURBS surface and take their corresponding values ui and vi in the parametric domain as the initial values of the Newton iterative method.
Step 2 To define the objective optimisation function:
l ( u , v ) = p ( u , v ) P p ( u , v ) P T
When l equals zero, the P is obtained as the optimal value in the parametric domain. Then, determine the initial parameter x0 = [u0, v0] T and initial a symmetric positive definite matric B0, which is the identity matrix.
Step 3 Computation of the first-order partial derivative:
g 0 = l u ( u 0 , v 0 ) l v ( u 0 , v 0 )
Step 4 Calculation of the xi+1:
x i + 1 = x i + λ i B i 1 g i
where λi denotes the step size, continue to calculate the s i = x i + 1 x i , y i = g i + 1 g i . Computation of the Bk:
B i + 1 = B i + y y T y T s B i s s T B i s T B i s
Step 5 Repeating the above step until the g i + 1 < ε .
The optimal parameters u, v in P, and the value of boundary points in the parameter domain can be obtained according to the above steps; the parameters can be clipped by the ray casting method, and then the clipped parameters can be converted into the spatial domain by Equation (10), and the clipped surface can be obtained. In Equation (10), the u and v represent the parameters in a different direction; the N is the basis function whose details are in Equation (3), w is the weight, P is the control point, and m and n are the order in a different direction. Figure 7 shows the flowchart of the trimmed NURBS surface.
p ( u , v ) = i = 0 j = 0 N i , m ( u ) N j , n ( v ) w i , j P i , j i = 0 j = 0 N i , m ( u ) N j , n ( v ) w i , j

3. Part-in-Whole Point Cloud Registration

This section is to recognise local geometric features on a complete CAD model and realize the registration of the local point cloud and CAD model, which is the basis of error analysis [17].

3.1. The Patch of Point Cloud

In this section, the random sphere cover sets (RSCS) method is adopted to improve the coverage of the whole point cloud [32]. The original RSCS method increases the matching accuracy of subsequent point cloud descriptors. However, the sphere radius associated with this method is fixed each time, which leads to the uncharacteristic patch obtained by a fixed radius. Therefore, the multi-scale RSCS is proposed in this study to increase the diversity of the radius scale of points to improve the matching probability between corresponding point clouds. The multi-scale RSCS division process of the point cloud is as follows:
Input DMPC and LMPC.
Output Multi-scale random sphere cover set and central points of DMPC and LMPC.
Step 1 Down sampling DMPC and LMPC.
Step 2 Randomly selecting a point as the centre of the sphere and dividing the point cloud via radius ri, all point clouds within the radius are identified as the point cloud of the first sphere s 1 i .
Step 3 Randomly select a point that does not belong to a sphere s k i   as the next centre point and obtain the next sphere with ri.
Step 4 Repeat step 3 until every point is covered sphere.
Step 5 Resetting the radius and repeat step 4.
According to the above steps, the multi-scale random sphere cover set of the DMPC p = s 1 i , s 2 i , , s k i and its corresponding set of central points p c = c 1 , c 2 , , c k can be obtained. Similarly, the set of LMPC q = s 1 i , s 2 i , , s K i and the corresponding set of central points q c = c 1 , c 2 , , c K can be obtained. In this study, three kinds of spheres with different radii were selected as multi-scale RSCS. After generating each sphere, it is also necessary to refer to some criteria for screening key points; the specific criteria can be found in [32]. Taking the rear floor beam of a car body as an example, the multi-scale RSCS of local measurement data on one side and the multi-scale RSCS of the digital model are shown in Figure 8. The different colours represent the point cloud covered by each divided sphere.

3.2. Coarse Registration Based on Multivariate Descriptors (MD)

Based on spheres obtained from the above-mentioned method, each sphere’s feature needs to be described. Feature descriptors are generally used for the initial alignment of the point cloud in the coarse registration stage. Common point cloud descriptors can be divided into global and local descriptors. Using a global descriptor requires that the size of the local measurement be much smaller than that of the global point cloud. However, some measurement data obtained for small workpieces are one-sided projections. When the whole point cloud is divided according to the spherical scale of the local point cloud, the whole point cloud will be divided into a sphere, leading to registration failure. Therefore, point cloud local descriptors will be adopted in this study.
This study proposed a multivariate descriptor to improve registration accuracy. The combination of two classical descriptors: Fast Point Feature Histogram (FPFH) [33], and Shot descriptor, which is based on a local reference frame, is used in a subsequent experiment. The local descriptors used are not limited to the above two manual descriptors; it can also use some descriptors based on deep learning, such as Spinnet [34]. This study presented an optimised scheme to improve the description ability of descriptors. The descriptors do not belong to the research subject of this paper. Therefore, based on the hypothesis of the scheme, assuming that n local feature descriptors are eventually used, each sphere will get n descriptor vectors. Coarse registration adopts sample consensus initial alignment (SAC-IA) [33], and the main contents of SAC-IA are as follows:
(1)
The descriptor sets of multi-scale RSCS of LMPC and global point cloud are calculated, p ^ n = d 1 i , d 2 i , , d k i , q ^ n = d 1 i , d 2 i , , d K i , where n represents different descriptors, i is RSCS of different scales, k and K are the number of LMPC and whole CAD point cloud at a certain scale.
(2)
n descriptors are randomly selected from p ^ n and q ^ n to determine the n corresponding relationship. The centre of RSCS is defined as the corresponding point. Supposing n descriptors in p ^ n determine the most similar corresponding n points in q ^ n , the weighted average points between the corresponding points of n different descriptors are calculated as the final corresponding points. Then the final corresponding point position in q ^ n is defined by Equation (11), where wi is the normalised weight of the matching score in corresponding points from n descriptor and ci is the position of the corresponding point from a different descriptor. Figure 9 is a sketch of a weighted average corresponding point with three descriptors, in which the blue is the local point cloud, and the grey is the whole DMPC. In the whole DMPC, different shapes correspond to the corresponding points calculated by different descriptors, and the circular points are the final weighted corresponding points.
(3)
After determining the corresponding points, the corresponding points of the s group are randomly selected to obtain the corresponding point set p ^ c = c 1 , c 2 , , c s and q ^ c = l 1 , l 2 , , l s , according to Equations (15) and (16), the transformation matrices R and T are calculated, where U and V are singular matrices; it is obtained by performing a singular value decomposition on Equation (14).
(4)
Using the transformation matrix to carry out a rotation and translation transformation on corresponding points except for s corresponding points, if the distance of k-s corresponding point is less than a certain threshold value after transformation, then the point in the local point cloud is determined to be the inner point; otherwise, it is the outer point, the number of inner points is counted, and si+1 corresponding points are selected in the next round. Repeat the above process. The result is the corresponding points with the most significant number of inner points.
(5)
Comparing the point cloud registration results at different scales and selecting the group with the smallest error as a result.
l = i = 0 n w i c i
x ¯ = 1 n i = 0 n x i
h = 1 n i = 0 n x i x ¯ y i y ¯
R = + V T
T = y ¯ R x ¯
Figure 9. Weighted corresponding points of MD.
Figure 9. Weighted corresponding points of MD.
Applsci 13 03311 g009

3.3. Iterative Closest Point (ICP) Based on Fine Registration

After the coarse registration of LMPC and DMPC is achieved via the above steps, we employ the iterative closest point (ICP) [35] algorithm to accurately match the scanned point cloud to the whole CAD model. In acceptable registration, all local point cloud is iterated, but it is easy to fall into local optimisation and time-consuming. Therefore, in this step, ICP iterates by finding the nearest point between the centre point of the RSCS sphere in the measurement point cloud and the target point cloud.

4. Local Point Cloud Segmentation

The surface topography analysis of all local measurement data can be conducted when the fine registration of LMPC and DMPC is completed. First, however, it is necessary to identify points and the functional surfaces associated with them. Let P c = P 1 , P 2 , , P n be an LMPC, the determination of ownership between measuring points and the functional surface is through the Euclidean distance between the point and plane, then sorting the distance between the point and each surface and finding the closest surface is the corresponding functional surface. Before sorting, the point needs to be mapped to a 2D plane, and then the radial method is used to determine whether the point belongs to this plane. The distance from a point to the plane is expressed as Equation (16), where n is the direction of the line, i.e., the normal direction of the plane, p is a measurement point, and o is any point on the plane.
d = n ( p o ) n
Compared with the triangular surface in stereolithography (STL) files, the curved surface can be composed of multiple quadrilateral planes. Figure 10 illustrates the ownership judgement between a point and a curved surface, the point cloud is down-sampled to Figure 10b, and a plane is represented by four points. Let P s = P 1 , P 2 , , P k be a set of curved surfaces, where P k P is the quadrilateral plane. Similar to the ownership judgement of plane, if a point belongs to any plane in the set P, then the point belongs to that surface (Figure 10c). Generally, the fewer planes on the surface, the higher the judgment error and the less time.

5. Experimental Verification and Comparisons

5.1. Experimental Conditions

In this section, we perform experiments to validate the effectiveness of the proposed method. Ubuntu, PyCharm editor and Open3D library environment are used to analyse errors of workpiece surfaces. The flatness, cylindricity and surface roughness [36] of specific functional surfaces on two automobile body parts are examined. The experimental setup and workpieces are depicted in Figure 11 [37]. The schematic diagram of the 3D structured light measurement system is shown in Figure 12. The measured part is located on the reference surface X-Y, Oc is the camera lens optical center, Op is the projector lens optical center, P is a point on the measured part, and its projection on the reference surface is P, the length of P-P is h, points A and B are the intersection points between point P and the two optical centers and the reference plane, respectively, l and d are the distances from the optical center of the camera to the reference surface and the optical center of the projector. According to [31,38], the function of h and phase difference θ A θ B can be expressed as follows:
h = l ( θ A θ B ) ( θ A θ B ) + 2 π d / λ 0
where λ 0 is the optical grating pitch, θ A and θ B are the phase of points A and B, respectively.
STEP files of the two parts are discretised into a point cloud, as shown in Figure 13, where the LMPC is shown in the blue point cloud. Local measurement data are obtained by the structured light measurement system (accuracy is 0.05 mm). The local measurement data captured are all data on the upper surface of the workpiece.

5.2. The Analysis of Registration

In point cloud registration experiments, two point clouds are sampled with a voxel of size 1, and the registration error is calculated as
R M S = 1 n p i f ( q i ) 2
where pi represents the target point cloud, qi represents the measurement point cloud, and f represents the point cloud after registration. First, workpiece b is used to compare the registration accuracy of single-scale RSCS and multi-scale RSCS, and the results are shown in Table 1. Figure 14a–c shows the coarse registration results of spheres with scales of 20, 50 and 80, respectively. It can be seen that coarse registration results are relatively superior when the scale is 80, and using multiple scales can increase the accuracy of registration compared to a single scale. In general, the scale of the sphere in RSCS can be made according to the volume of the measured data. There is an empirical formula for setting a sphere’s scale, expressed in Equation (19), where V represents the volume of the minimal circumscribed sphere, and m is the number of spheres in RSCS.
The registration results of parts 1 and 2 are shown in Figure 15 and Figure 16 and Table 2. The labels a and b represent the coarse and fine registration results. Table 2, “part number_registration scheme”, shows the results of different registration schemes with different parts. Although only two descriptors are used in the multivariate descriptors in the experiment, the result is better than using a single descriptor. In the proposed coarse algorithm, the matching relation of the point cloud patch in the final RSCS is shown in Figure 16, where the black point is the weighted average corresponding point, the different colour of the point cloud patch is the sphere of the final RSCS, the line represents the corresponding relation. Although the proposed scheme can reduce the registration error and increase the probability of registration success, it can be seen from the broken line figure in Figure 17 that with the increase of sphere candidate scale and descriptor, especially with the rise of sphere candidate scale, the time consumption presents an exponential growth, so it needs a tradeoff in terms of actual use.
R a d i u s = ( 3 4 π 0.7 2 m V ) 3

5.3. Point Cloud Segmentation and Error Analysis

According to the template of each surface in the STEP file, each functional surface is segmented, as shown in Figure 18 where different colors represent different functional surfaces. Error analysis is conducted on specific functional surfaces of the measurement data on part 1 and part 2, respectively. The functional surfaces to be analysed were marked as a and b in Figure 18. The cylindricity, flatness and roughness of part 1 are analysed, and the flatness and roughness of part 2 are analysed. The results are shown in Table 3, where the roughness refers to ISO 25,178 [39] series and ISO 16,610 [36] series, the surface roughness was obtained by a two-dimensional Gaussian filter, and its sq parameters are calculated. The calculation method of flatness is as follows: First, the plane is fitted, and the linear equations shown in Equation (20) are solved, where xi, yi and zi represent the three coordinates of the points in the surface point cloud, a, b and c represent the three parameters in the general equation of the plane. After obtaining the plane equation, the distance between the points and the plane is calculated to obtain the distance set d, and the flatness is equal to m a x d m i n d . The calculation method of cylindricity [40] is similar to flatness. A cylinder can be regarded as composed of radius R and axis l. The parameters to be fitted become the direction vector N (nx, ny, nz) of the line, the origin point o(ox, oy, oz) of the line, and the radius R. Supposition a point pi (xi, yi, zi) in the measurement point cloud, then establish the least squares model according to Equation (21) and then calculate the partial derivative of st to each parameter to solve the least squares cylinder. The set of distances between each point and the axis is d, and cylindricity is m a x   d m i n d . According to the above error analysis method, the calculation results of each functional surface in Figure 18 are shown in Table 3. Through the STEP file, the ideal model of each functional surface can be obtained. The ideal model of S1 and S3 in Figure 18a is a cylinder, so its cylindricity can be calculated. S2 is a plane, and S1 and S2 in Figure 18b are also planes.
x i 2 x i y i x i x i y i y i 2 y i x i y i n a b c = x i z i y i z i z i
s t = r i 1 N i = 0 N r i 2
r i = o p i × n

6. Discussion

Several surface topography evaluation methods are applied to evaluate the parts’ errors; their results are shown in Table 4, Table 5 and Table 6 for comparison. In the comparison, the micrometer, CMM, and profilometer are selected.
As illustrated in Table 4, Table 5 and Table 6, the results of the micrometer, CMM and profilometer are consistent with the results of the proposed method, and all of the evaluated values differ slightly. This demonstrates the feasibility and effectiveness of the proposed method in solving error evaluation with a 3D structured light system. Furthermore, the comparison has verified that the proposed method has high precision and can be employed in the automotive part measurement process.

7. Conclusions

This study presents a multi-component local descriptor method to optimize coarse registration precision. First, they obtain the measurement and digital model point cloud, further divided by the multi-scale RSCS. Then, multivariate descriptors were integrated to generate feature vectors, and the SAC-IA algorithm was applied to find the corresponding points, followed by the matching score to get the final position of the related points, and an ICP-based fine point cloud registration was carried out. Finally, the STEP file is applied to guide the measurement point cloud segmentation to complete the automatic error analysis of specific functional surfaces. In the experiment, this study selects the rear beam parts of an automobile for error analysis. One of the results is that the r-angle cylindricity is 0.881 mm, the roughness sq parameter is 0.219 mm, and the flatness of its plane is 1.037 mm. Compared with a micrometer, CMM and profilometer, the measurement results differ slightly; the results show that the proposed method can solve the challenging problem of automating error analysis based on optical measurement data.
The major contribution of this study is the development of a multivariate local descriptor registration method and segmentation method, which can be applied in a 3D structured light measurement system. The developed methods consider 3D surface topography measurement and improve registration accuracy compared to existing methods. Further, the methods are suitable for automatic error evaluation in the automobile industry when measurement for vehicle parts needs cost consideration.
The STEP file contains geometric information, which can not only serve as the guidance of point cloud segmentation but also complete some feature recognition and the mid-surface generation algorithm of CAE. However, although the proposed descriptors can improve registration precision, there are still registration failures for minimal shapes. Therefore, deep learning-based descriptors will be considered in the registration positioning stage to improve the registration robustness further in future work.

Author Contributions

Conceptualization, C.K., Y.X. and Z.L.; Software, J.L.; Validation, Z.L., J.L. and I.M.; Investigation, C.K. and C.Z.; Resources, I.M. and Y.X.; Writing—original draft, C.K. and Z.L.; Writing—review & editing, Y.X. and T.L.; Visualization, C.K. and D.T.; Supervision, Y.X. and X.J.; Funding acquisition, Y.X. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the National Natural Science Foundation of China (NSFC) (61203172); the Sichuan Science and Technology Programs (2023NSFSC0361, 2022002).

Informed Consent Statement

Informed consent was obtained from all subjects involved in the study.

Data Availability Statement

All data generated or analyzed to support the findings of the present study are included in this article. The raw data can be obtained from authors, upon reasonable request.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Kruth, J.P.; Bartscher, M.; Carmignato, S.; Schmitt, R.; De Chiffre, L.; Weckenmann, A. Computed tomography for dimensional metrology. CIRP Annals 2011, 60, 821–842. [Google Scholar] [CrossRef]
  2. Si, L.; Yang, H.; Li, Z.; Duan, L. Part point cloud segmentation method based on model registration. J. Physis Conf. Ser. 2021, 1884, 01222. [Google Scholar] [CrossRef]
  3. Liu, Y.; Blunt, L.; Zhang, Z.; Rahman, H.A.; Gao, F.; Jiang, X. In-Situ areal inspection of powder bed for electron beam fusion system based on fringe projection profilometry. Addit. Manuf. 2020, 31, 100940. [Google Scholar] [CrossRef]
  4. Jiang, Y.; Karpf, S.; Jalali, B. Time-stretch LiDAR as a spectrally scanned time-of-flight ranging camera. Nat. Photonics 2020, 14, 14–18. [Google Scholar] [CrossRef]
  5. Xu, J.; Zhang, S. Status, challenges, and future perspectives of fringe projection profilometry. Opt. Lasers Eng. 2020, 135, 106193. [Google Scholar] [CrossRef]
  6. Peng, J.; Liu, X.; Deng, D.; Guo, H.; Cai, Z.; Peng, X. Suppression of projector distortion in phase-measuring profilometry by projecting adaptive fringe patterns. Opt. Express 2016, 24, 21846. [Google Scholar] [CrossRef]
  7. Yang, S.; Liu, M.; Song, J.; Yin, S.; Ren, Y.; Zhu, J.; Chen, S. Projector distortion residual compensation in fringe projection system. Opt. Lasers Eng. 2019, 114, 104–110. [Google Scholar] [CrossRef]
  8. Shi, J.; Zhu, X.; Wang, H.; Song, L.; Guo, Q. Label enhanced and patch based deep learning for phase retrieval from single frame fringe pattern in fringe projection 3D measurement. Opt. Express 2019, 27, 28929–28943. [Google Scholar] [CrossRef]
  9. Jeught, S.; Dirckx, J. Deep neural networks for single shot structured light profilometry. Opt. Express 2019, 27, 17091. [Google Scholar] [CrossRef]
  10. Brown, C.A.; Hansen, H.N.; Jiang, X.J.; Blateyron, F.; Berglund, J.; Senin, N.; Bartkowiak, T.; Dixon, B.; Le Goïc, G.; Quinsat, Y.; et al. Multiscale analyses and characterizations of surface topographies. CIRP Ann. 2018, 67, 839–862. [Google Scholar] [CrossRef]
  11. Peta, K.; Mendak, M.; Bartkowiak, T. Discharge Energy as a Key Contributing Factor Determining Microgeometry of Aluminum Samples Created by Electrical Discharge Machining. Crystals 2021, 11, 1371. [Google Scholar] [CrossRef]
  12. Kang, H.; Li, Z.-M.; Liu, T.; Zhao, G.; Jing, J.; Yuan, W. A novel multiscale model for contact behavior analysis of rough surfaces with the statistical approach. Int. J. Mech. Sci. 2021, 212, 106808. [Google Scholar] [CrossRef]
  13. Fang, X.; Luo, Q.; Zhou, B.; Li, C.; Tian, L. Research progress of automated visual surface defect detection for industrial metal planar materials. Sensors 2020, 20, 5136. [Google Scholar] [CrossRef] [PubMed]
  14. Shao, J.; Zhang, W.; Mellado, N.; Grussenmeyer, P.; Li, R.; Chen, Y.; Wan, P.; Zhang, X.; Cai, S. Automated markerless registration of point clouds from TLS and structured light scanner for heritage documentation. J. Cult. Herit. 2019, 35, 16–24. [Google Scholar] [CrossRef] [Green Version]
  15. Xu, H.; Yu, L.; Hou, J.; Fei, S. Automatic reconstruction method for large scene based on multi-site point cloud stitching. Measurement 2019, 131, 590–596. [Google Scholar] [CrossRef]
  16. Chen, Z.; Du, F. Measuring principle and uncertainty analysis of a large volume measurement network based on the combination of iGPS and portable scanner. Measurement 2017, 104, 263–277. [Google Scholar] [CrossRef]
  17. Xie, Q.; Zhang, Y.; Cao, X.; Xu, Y.; Lu, D.; Chen, H.; Wang, J. Part-in-whole point cloud registration for aircraft partial scan automated localization. Comput.-Aided Des. 2021, 137, 103042. [Google Scholar] [CrossRef]
  18. Zhang, Y.; Li, H.; Zhao, A.; Xie, Q.; Wang, J. Local Scanning Point Cloud Localization of Aircraft Skins Based on Multi-descriptor Voting Rapid robot vision positioning method for large free-form surface parts. China Mech. Eng. 2021, 32, 2724–2730, 2771. [Google Scholar]
  19. Lin, J.; Wu, L.; Yang, M.; Zhang, X.; Jiang, K. Rapid robot vision positioning method for large free-form surface parts. Jisuanji Jicheng Zhizao Xitong/Comput. Integr. Manuf. Syst. CIMS 2021, 27, 1951–1958. [Google Scholar]
  20. Rusu, R.B.; Marton, Z.C.; Blodow, N.; Beetz, M. Persistent Point Feature Histograms for 3D Point Clouds; IOS Publishing: Amsterdam, The Netherlands.
  21. Salti, S.; Tombari, F.; Di Stefano, L. SHOT: Unique signatures of histograms for surface and texture description. Comput. Vis. Image Underst. 2014, 125, 251–264. [Google Scholar] [CrossRef]
  22. Wohlkinger, W.; Vincze, M. Ensemble of shape functions for 3d object classification. In Proceedings of the 2011 IEEE International Conference on Robotics and Biomimetics, Karon Beach, Thailand, 7–11 December 2011; pp. 2987–2992. [Google Scholar]
  23. Qie, Y.; Qiao, L.; Anwer, N. Enhanced invariance class partitioning using discrete curvatures and conformal geometry. Comput.-Aided Des. 2021, 133, 102985. [Google Scholar] [CrossRef]
  24. Asiabanpour, B.; Mokhtar, A.; Hayasi, M.; Kamrani, A.; Nasr, E.A. An overview on five approaches for translating cad data into manufacturing information. J. Adv. Manuf. Syst. 2009, 8, 89–114. [Google Scholar] [CrossRef]
  25. Zhao, Y.; Xu, X.; Kramer, T.; Proctor, F.; Horst, J. Dimensional metrology interoperability and standardization in manufacturing systems. Comput. Stand. Interfaces 2011, 33, 541–555. [Google Scholar] [CrossRef]
  26. Zhou, Q.; Yang, J.; Wu, J.; Tian, Y.; Wang, J.; Jiang, H.; Li, K.-C. An improved algorithm to convert CAD model to MCNP geometry model based on STEP file. Ann. Nucl. Energy 2015, 78, 81–88. [Google Scholar] [CrossRef]
  27. Al-Wswasi, M.; Ivanov, A. A novel and smart interactive feature recognition system for rotational parts using a STEP file. Int. J. Adv. Manuf. Technol. 2019, 104, 261–284. [Google Scholar] [CrossRef] [Green Version]
  28. Prochazkova, J.; Procházka, D. The Implementation of Cylinder and Cone as NURBS Surfaces in Engineering Software. In Proceedings of the Symposium on Computer Geometry, Cagliari, Italy, 26–28 June 2006. [Google Scholar]
  29. Ebrahimi, A.; Loghmani, G.B. Shape modeling based on specifying the initial B-spline curve and scaled BFGS optimization method. Multimed. Tools Appl. 2018, 77, 30331–30351. [Google Scholar] [CrossRef]
  30. Broyden, C.G. The convergence of a class of double-rank minimization algorithms 1. general considerations. IMA J. Appl. Math. 1970, 6, 76–90. [Google Scholar] [CrossRef] [Green Version]
  31. Da, F.; Gai, S. Raster Projection 3D Precision Measurement; Science Press: Beijng, China, 2011. [Google Scholar]
  32. Elbaz, G.; Avraham, T.; Fischer, A. 3D point cloud registration for localization using a deep neural network auto-encoder. In Proceedings of the IEEE Conference on Computer Vision and pattern Recognition, Honolulu, HI, USA, 21–26 July 2017. [Google Scholar]
  33. Rusu, R.B.; Blodow, N.; Beetz, M. Fast point feature Histograms (FPFH) for 3D registration. In Proceedings of the 2009 IEEE International Conference on Robotics and Automation, Kobe, Japan, 12–17 May 2009; pp. 3212–3217. [Google Scholar]
  34. Ao, S.; Hu, Q.; Yang, B.; Markham, A.; Guo, Y. Spinnet: Learning a general surface descriptor for 3d point cloud registration. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, Nashville, TN, USA, 20–25 June 2021. [Google Scholar]
  35. Besl, P.J.; McKay, N.D. Method for registration of 3-D shapes. Spie 1992, 1611, 586–606. [Google Scholar] [CrossRef] [Green Version]
  36. ISO 16610-21:2011; Geometrical Product Specifications (GPS)-Filtration-Part 21: Linear Profile Filters: Gaussian Filters. International Organization for Standardization: London, UK, 2011.
  37. Li, Z.; Xu, Y.; Zhang, C.; Kong, C.; Macleod, I.; Li, T.; Jiang, X.; Guo, B.; Lu, J. A robust areal residual-restrained variational mode decomposition for filtering on surface texture analysis. Surf. Topogr. Metrol. Prop. 2023, 11, 014005. [Google Scholar] [CrossRef]
  38. Su, X.; Zhang, Q. Dynamic 3-D shape measurement method: A review. Opt. Lasers Eng. 2010, 48, 191–204. [Google Scholar] [CrossRef]
  39. ISO 25178-2:2012; Geometrical Product Specifications (GPS)—Surface Texture: Areal—Part 2: Terms, Definitions and Surface Texture Parameters. International Organization for Standardization: Geneva, Switzerland, 2021.
  40. Mao, J.; Cao, Y.; Yang, J. Implementation uncertainty evaluation of cylindricity errors based on geometrical product specification (GPS). Measurement 2009, 42, 742–747. [Google Scholar] [CrossRef]
Figure 1. The flowchart of surface topography analysis (μm).
Figure 1. The flowchart of surface topography analysis (μm).
Applsci 13 03311 g001
Figure 2. The entity information of a particular functional surface in STEP file.
Figure 2. The entity information of a particular functional surface in STEP file.
Applsci 13 03311 g002
Figure 5. The procedure of plane point cloud trimming: (a) The point cloud of the plane before trimming; (b) The trimmed point cloud through the ray casting method.
Figure 5. The procedure of plane point cloud trimming: (a) The point cloud of the plane before trimming; (b) The trimmed point cloud through the ray casting method.
Applsci 13 03311 g005
Figure 6. The illustration of the ray casing method. (a) A polygon includes a curve; (b) A curve is reduced to a polygon with multiple straight lines.
Figure 6. The illustration of the ray casing method. (a) A polygon includes a curve; (b) A curve is reduced to a polygon with multiple straight lines.
Applsci 13 03311 g006
Figure 7. The trim of the curved surface point cloud.
Figure 7. The trim of the curved surface point cloud.
Applsci 13 03311 g007
Figure 8. (a) multi-scale RSCS of measurement data; (b) multi-scale RSCS of CAD model.
Figure 8. (a) multi-scale RSCS of measurement data; (b) multi-scale RSCS of CAD model.
Applsci 13 03311 g008
Figure 10. The judgement of whether a point belongs to a curved surface. (a) Curved surface; (b) Down-sample of point cloud; (c) The relation of points and quadrilateral plane.
Figure 10. The judgement of whether a point belongs to a curved surface. (a) Curved surface; (b) Down-sample of point cloud; (c) The relation of points and quadrilateral plane.
Applsci 13 03311 g010
Figure 11. Structured light-based measurement system.
Figure 11. Structured light-based measurement system.
Applsci 13 03311 g011
Figure 12. The optical path diagram of 3D structured light system.
Figure 12. The optical path diagram of 3D structured light system.
Applsci 13 03311 g012
Figure 13. (a) Digital model point cloud and a measurement point cloud of part 1; (b) Digital model point cloud and a measurement point cloud of part 2.
Figure 13. (a) Digital model point cloud and a measurement point cloud of part 1; (b) Digital model point cloud and a measurement point cloud of part 2.
Applsci 13 03311 g013
Figure 14. Registration results of RSCS at different scales. (a) Scale of 20; (b) Scale of 50; (c) Scale of 80.
Figure 14. Registration results of RSCS at different scales. (a) Scale of 20; (b) Scale of 50; (c) Scale of 80.
Applsci 13 03311 g014
Figure 15. Results of different registration schemes for part 1: (a) coarse registration; (b) fine registration.
Figure 15. Results of different registration schemes for part 1: (a) coarse registration; (b) fine registration.
Applsci 13 03311 g015
Figure 16. Results of different registration schemes for part 2: (a) coarse registration; (b) fine registration.
Figure 16. Results of different registration schemes for part 2: (a) coarse registration; (b) fine registration.
Applsci 13 03311 g016
Figure 17. The matching relation of point cloud patch in Multi-scale RSCS+MD (a) part 1; (b) part 2.
Figure 17. The matching relation of point cloud patch in Multi-scale RSCS+MD (a) part 1; (b) part 2.
Applsci 13 03311 g017
Figure 18. Part measurement point cloud segmentation results and the functional surface to be analysed. (a) Functional surfaces of part 1; (b) Functional surfaces of part 2.
Figure 18. Part measurement point cloud segmentation results and the functional surface to be analysed. (a) Functional surfaces of part 1; (b) Functional surfaces of part 2.
Applsci 13 03311 g018
Table 1. Influence of RSCS at different scales on parts registration error (mm).
Table 1. Influence of RSCS at different scales on parts registration error (mm).
The Scale of RSCSRegistration Error
20-scale RSCS+MD+ICP2.095
50-scale RSCS+MD+ICP4.233
80-scale RSCS+MD+ICP4.856
Table 2. Registration errors of different descriptors (mm).
Table 2. Registration errors of different descriptors (mm).
The Type of DescriptorRegistration Error
a_Muti-scale RSCS+SHOT+ICP6.499
a_Muti-scale RSCS+FPFH+ICP6.211
a_Muti-scale RSCS+MD+ICP4.279
b_Muti-scale RSCS+SHOT+ICP4.556
b_Muti-scale RSCS+FPFH+ICP6.988
b_Muti-scale RSCS+MD+ICP2.095
Table 3. Error analysis for workpieces (mm).
Table 3. Error analysis for workpieces (mm).
FeaturesFlatnessCylindricitysq Parameter in Roughness
a_S1-0.8810.219
a_S21.037-1.298
a_S3-0.9450.207
b_S10.713-0.813
b_S20.545-0.762
Table 4. Results of comparison with existing methods for flatness (mm).
Table 4. Results of comparison with existing methods for flatness (mm).
FeaturesMicrometerCMMProfilometerProposed Method
a_S21.0671.0111.1031.037
b_S10.8420.7020.8010.713
b_S20.5390.5780.6120.545
Table 5. Results of comparison with existing methods for cylindricity (mm).
Table 5. Results of comparison with existing methods for cylindricity (mm).
FeaturesMicrometerCMMProfilometerProposed Method
a_S10.8920.8561.0200.881
a_S31.0350.9211.1420.945
Table 6. Results of comparison with existing methods for roughness (mm).
Table 6. Results of comparison with existing methods for roughness (mm).
FeaturesMicrometerCMMProfilometerProposed Method
a_S10.2160.3010.2030.219
a_S21.3541.3261.2761.298
a_S30.2350.2440.1980.207
b_S10.8730.8540.8010.813
b_S20.8520.8320.7320.762
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Kong, C.; Xu, Y.; Li, Z.; Zhang, C.; Li, T.; Macleod, I.; Jiang, X.; Tang, D.; Lu, J. A Multivariate Local Descriptor Registration Method for Surface Topography Evaluation. Appl. Sci. 2023, 13, 3311. https://doi.org/10.3390/app13053311

AMA Style

Kong C, Xu Y, Li Z, Zhang C, Li T, Macleod I, Jiang X, Tang D, Lu J. A Multivariate Local Descriptor Registration Method for Surface Topography Evaluation. Applied Sciences. 2023; 13(5):3311. https://doi.org/10.3390/app13053311

Chicago/Turabian Style

Kong, Chao, Yuanping Xu, Zhuowei Li, Chaolong Zhang, Tukun Li, Iain Macleod, Xiangqian Jiang, Dan Tang, and Jun Lu. 2023. "A Multivariate Local Descriptor Registration Method for Surface Topography Evaluation" Applied Sciences 13, no. 5: 3311. https://doi.org/10.3390/app13053311

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop