1 Introduction

Nowadays, the data are often processed by computers, for example in the face recognition, in the transformation of the written text into the digital version or in the autonomous driving. Also, digitisations of the surface or object need processing of scanned data. There are many methods to do that, each method depends on the requirements of the applications and processed data.

It is also possible to construct the model from its 2D drawings, as shown for example in [1]. But not only the plane objects can be treated, frequently processed data are point clouds in 3D (i.e. only the set of points given by the coordinates). These data can be often incomplete, to which the different methods of classification or completion exist [2]. Point cloud obtained by the scanning of the given object is possible to use for CAD (computer-aided design) model creation of the object (for example in the reverse engineering, where the CAD model is not available). The creation can be done for example by obtaining the basic shapes and consecutive analysis of point deviations from the fitted reference object using histogram [3].

The point cloud can be also used for geometry reconstruction; nevertheless, if using only the point coordinates, the object surface is not visible. That is why the STL format (stereolithography, analysis of this format is described in [4]) is frequently used. STL format is an ordered list of mesh vertex coordinates and normal vectors of individual face. The normal vector is followed by the vertex coordinates that are sorted in three points each in the right-handed orientation with the outer normal vector. This format is advantageous, because it defines the neighbourhood of the given mesh vertex through normal vectors and faces and so it can be used for example in discrete curvature calculation for the local shape definition. But it is possible to extract only the point cloud itself from the STL format and process only the point cloud.

It is possible to compare the data obtained by the scanning, to which for example the shape functions (it can be called also shape descriptor) and shape distributions are used. The shape function measures the basic geometric characteristics on the surface, such as distances, angles, areas and curvatures. Shape distribution is the representation of results obtained by the application of shape function, for example the polylines created from histograms of given results. The shape distributions then can be compared by different methods, such as Minkowski \({L}_{N}\) norm, that defines for \(N=1\) and two smooth functions the area between these function graphs.

The comparison of different shape functions and shape distributions is discussed in [5]. The presented function D2, that measures the distance between each pair of points generated on the surface, is used in [6], as well as histograms of shape distribution and Minkowski \({L}_{N}\) norm (especially the probability density function of \({L}_{1}\) norm that is considered the most accurate from all Minkowski \({L}_{N}\) norms). The function D2 can represent the shape of the object, and subsequent shape distribution graph comparison can demonstrate the distinctness of the objects [7]. The function D2 is followed also in [8], where it is modified by angle; the methods are then called mutual angle-distance histogram and mutual absolute angle-distance histogram. To define the shape similarity, the results are compared using \({L}_{1}\) and \({L}_{2}\) norms. Also [9] follows the [7] and uses also the value of curvature that is calculated by function tangents and the main curvatures, and histogram of these curvatures is called the curvature spectrum.

It is possible to determine the shape by the outlines in a 2D picture, for example using curvature, and differentiate among for example a mug, a dog, a car or a tree regardless of the rotation [10].

In [4], three different approximations of Gaussian curvature for the vertex are mentioned. Discrete Gaussian and mean curvatures are defined also in [11], where the discrete Laplace–Beltrami operator is used and calculated using angles, lengths and areas. These curvatures can be used for main curvatures calculations that are defined here, too. Main curvatures are the curvatures of minimal and maximal normal curvatures, so they can be used for the specification of the vertex type.

The measure of discrete Gaussian and mean curvatures are defined in [12] as the sum of individual curvatures in vertices or in edges. Discrete Gaussian curvature based on the angle deficit is described in [13], and the neighbourhood of the given vertex is normalised by the area of the vertex. The mean curvature is established in [13] using cylindrical approximation of the edge, whereas the area content, edge length and angle between normals are used. By means of concentrated curvature of polygonal curve, the main curvatures are defined. Another possible approach to the discrete Gaussian and mean curvatures can be via the face areas quotient [14].

Another possible description of the object or its geometry is correlogram (it is the probability, that two vertices have the given distance from each other and the curvature of the given class). Correlogram can be used to detect the position of the curvature on the surface and information about its value, [15]. Using curvature, the developability of the discrete surface also can be specified, [16].

Laser scanning technology has revolutionised various industries, offering precise 3D data acquisition for applications from engineering to archaeology. In the realm of laser scanners, accuracy is one of the critical factors influencing their effectiveness. One way to define the accuracy of the scanner in metrology is the form error. Metrological specification of the surface profile and other error characteristics are described in [17], where the form error is defined as maximal minus minimal deviation of points from the fitted profile.

The comparison of five handheld scanners is presented in [18], where three plaster statues were scanned six times, and the scanning and processing time is discussed, as well as the accuracy. In [19], the accuracy of 3D images among different scanners, scanning techniques and substrates is compared. But the exact scanners comparison is not included. Five digitisation techniques including laser scanners, fringe projection and X-ray are compared in [20] using calibrated sphere, cylinder and gauge block to determine the accuracy of the measurement, as well as bone and automobile window winder pulley, to determine the quality of the digitisation. The optical and laser scanner are compared in [21], where the scanned object was designed for scanning deviations (using CAD model) and scanning systems comparison. But none of these articles use the shape function to compare scanners.

Sections of this paper describe these as follows: in Sect. 2, the used scanners are compared, and in Sect. 3, the commonly used calibration sphere is described. Section 3.1 defines the used shape functions and the deviation that are compared and processed to create new method for scanners comparison; Sect. 3.2 describes the shape distribution that is the representation of the shape functions results, and Sect. 4 is aimed at the methods for results processing and outliers elimination. In Sect. 5, the measurement system analysis (MSA) is presented, and the experimental results are introduced in Sect. 6. Section 7 presents the results from MSA and the final comparison. The last Sect. 7.1 is dedicated to the conclusion.

2 Description of used scanners

In this paper, three scanners of the different types with the different accuracies were used to scan the calibration sphere (hereinafter sphere). The sphere was scanned separately ten times using each scanner. So, the result is thirty meshes—ten meshes for each scanner. One of the obtained meshes is depicted in Fig. 1. All outputs were in STL format.

Fig. 1
figure 1

Photos of Altera, MCAxS25 and Metronor

Since three different scanner types were used, their first comparison through their accuracy must be specified. The most accurate scanner is marked \(S1\) (it is the scanner type that is intended for stationary coordinate measuring machine, i.e. CMM), the less accurate is \(S2\) (it is the scanner type intended for the manual portable CMM, i.e. measuring arm) and the least accurate is \(S3\) (it is the handheld scanner).

Scanner \(S1\) represents the automated 3D scanning and achieves the highest accuracy. \(S1\) represents the top of the laser scanning accuracy. It is equipped with the advanced optics and high-level algorithms, so it delivers the highest precision in capturing the 3D spatial data. These scanner types are commonly employed in fields, where the hundredths of a millimetre accuracy are required, such as aerospace, automotive, energetics engineering and high-precision manufacturing. The technology behind these scanners ensures the minimal distortions and deviations, making them indispensable for tasks demanding the utmost exactness. Important factor is that carrier of these scanners are stationary CMMs.

Scanner \(S2\) represents the manual 3D scanning (measuring arms) and has a balancing accuracy and efficiency. These scanners strike a balance between the accuracy and efficiency. While not reaching the exceptional precision of scanner \(S1\), they still provide the sufficient accuracy suitable for many applications. Their ability to give us reliable results within the reasonable times makes them a practical choice for the projects, where the high accuracy is important but not the sole focus. These scanners are mounted on the portable measuring arms, where the requirement to the program scanner movements is eliminated.

The last scanner \(S3\) represents the handheld 3D scanning and has a versatility with moderate accuracy. These types of scanners prioritise versatility and accessibility over the highest accuracy levels. While they do not offer highest accuracy like \(S1\) or \(S2\) scanners, they provide accessible results of laser scanning and still offer valuable insights for various applications. The main advantage of these scanners is that they do not need to be mounted on a CMM.

A comparison of laser scanner specifications is displayed in Table 1. Photos of all scanners are depicted in Fig. 1. All specifications are taken from technical documents of equipment manufacturers and are adapted from [22,23,24].

Table 1 Laser scanners specifications

3 Description of the preprocessing

3.1 Calibration sphere

The calibration sphere is one of the commonly used surfaces for scanner calibration (where the calibrated diameter is compared with the scanned data). The used ceramic calibration sphere has the diameter of 30.0056 mm (that is the value obtained by the calibration process that is carried out because the sizes can change by reason of extensibility of the material or the surface wear), whereas the nominal diameter was 30 mm. The obtained calibration value is used for the scanner calibration, qualification and verification. Then the deviations of the mesh vertices are calculated and evaluated. The obtained meshes were aligned with the centre in the origin, and the lower part of the sphere was trimmed in all meshes with the same plane.

3.2 Analysis of acquired data

This text describes the processing of the acquired data in detail. The entire analysis was performed in Polyworks metrology software.

  • Data collection: The experiment initiated with the collection of data using a laser scanner, which generated point clouds representing the 3D coordinates of points on the scanned object including normal vectors. The calibration sphere was scanned from five positions as indicated in the figure. These five positions are ideal for capturing the entire shape of the sphere and are defined in the ISO 10360 standard for verification of optical systems.

  • Qualification: Scanner qualification was performed to ensure precision. This qualification involved the thorough verification and correction of internal parameters, including geometry and optics, to guarantee accurate data acquisition.

  • Noise reduction: Noise reduction procedures were employed to eliminate unwanted noise and inaccuracies within the point clouds. Filtering techniques, including averaging filters and outlier removal, were systematically applied to enhance data quality.

  • Mesh generation: To facilitate analysis and visualisation, the point clouds were methodically transformed into 3D models represented as STL (stereolithography) meshes. This conversion process employed triangulation techniques to create cohesive surfaces from the individual data points.

  • Trimming the created meshes: In order for the data to be comparable, it was necessary to always select the same area (section) from the sphere. Each scanning technology also contains unwanted data (calibration ball stem) that must be filtered out. For this reason, a macro was used for processing. The macro aimed to detect the base plane on which the calibration ball was placed. Subsequently, a plane parallel to the base plane was created, which was offset by a value of 200 mm. All data below this plane has been deleted. This ensured that similar data were always compared. The resulting trimmed data can be seen in Fig. 2.

Fig. 2
figure 2

Trimmed sphere mesh

4 Shape functions

To process meshes and compare scanners, different shape functions based on the calculation of distances or curvatures were used. The results of new methods were compared with the commonly used method based on the deviation calculation.

For meshes comparison and similarity measure determination, the shape function \(D1\) from [5] was used and modified to define the deviation (or form error). The modification lies in the replacing of the random point on the smooth surface by the mesh vertex \({V}_{i}=[{x}_{i},{y}_{i},{z}_{i}]\), where \(i=\mathrm{0,1},\dots ,n\) and \(n\) is the number of mesh vertices. The point from which the distance is measured was the origin of the coordinate system (because of the sphere meshes aligning). This function was used for the calculation of oriented deviations from the calibrated value, that is the sphere radius r = 15.0028 mm, so the modification of this function was called \(d\) and is in the form:

$${d}_{i}=\sqrt{{{x}_{i}}^{2}+{{y}_{i}}^{2}+{{z}_{i}}^{2}}-r, i=\mathrm{0,1},\dots ,n$$
(1)

where \(n\) is the number of mesh vertices and orientation is determined by the result sign (i.e. if the distance is bigger or smaller than the radius). The negative deviation of the vertex means that the vertex lies inside of the sphere. The positive sign of the deviation describes the position of the vertex outside the sphere.

These deviations were compared with results of function \({D1}_{C}\) that is again based on the function \(D1\) and measures the distance of mesh vertex from the mesh centroid:

$${f}_{i}=\sqrt{{\left({x}_{i}-{C}_{x}\right)}^{2}+{\left({y}_{i}-{C}_{y}\right)}^{2}+{\left({z}_{i}-{C}_{z}\right)}^{2}},i=\mathrm{0,1},\cdots ,n,$$
(2)

where the centroid \(C=[{C}_{x},{C}_{y},{C}_{z}]\) is calculated as an arithmetic mean from the vertices coordinates.

Another used function was the discrete Gaussian curvature (called here \(G\)) defined by the angle defect ([25,26,27]):

$${G}_{i}=2\pi -\sum_{k}^{ }{\alpha }_{k}, i=\mathrm{0,1},\dots ,n,$$
(3)

where \({\alpha }_{k}\) is the angle in the vertex \({V}_{i}\) in the triangle containing this vertex \({V}_{i}\), and \(k\) is the number of triangles or faces containing the vertex \({V}_{i}\) (see Fig. 3, vertex with its neighbourhood can represent pyramid that can be developed into the plane object). This curvature determined by (3) was used for the introduction of the new shape function \(h\) that approximates the point deviation using the cone height for 1-neighbourhood of the vertex. The cone has the side equal to the distance \({s}_{i}\) between the vertex \({V}_{i}\) and the nearest vertex in its 1-neighbourhood (the neighbourhood is depicted in Fig. 4). The circumference of the cone base is equal to the length of the arc of a circular section determined by the centre \({V}_{i}\) and radius \({s}_{i}\) with the angle defined as the sum of angles from Gaussian curvature (see Fig. 5), so on:

Fig. 3
figure 3

Mesh vertex \({V}_{i}\) with its neighbourhood and developed pyramid into the plane

Fig. 4
figure 4

2-neighbourhood of the vertex \({V}_{i}\) with 1-neighbourhood marked in bold

Fig. 5
figure 5

Approximating cone for 1-neighbourhood of vertex \({V}_{i}\) and its development

$${h}_{i}={s}_{i}\bullet \sqrt{1-\frac{{(2\pi -{G}_{i})}^{2}}{{(2\pi )}^{2}}}, i=\mathrm{0,1},\dots ,n.$$
(4)

The second type of the curvature, that was used here, is the discrete mean vertex curvature (denoted \(H\)). The modification of the absolute mean curvature from [28] was used—the angle between two faces was replaced by the angle of face normals (to obtain the zero curvature for the plain mesh part) and the area content, that divides the sum, was chosen as one (to have the consistency with the Gaussian curvature formula), so the resulting formula is:

$${H}_{i}=\frac{1}{4}\sum_{j}^{ }{e}_{j}\bullet {\beta }_{j}, i=\mathrm{0,1},\dots ,n$$
(5)

where \({\beta }_{j}\) is the angle between the normals of neighbouring faces (i.e. \(180^\circ -\gamma\), where \(\gamma\) is the inner angle between the adjacent face pair) and \({e}_{j}\) is the length of its shared edge (see Fig. 6).

Fig. 6
figure 6

Angle in the vertex \({\alpha }_{j}\) for discrete Gaussian curvature and angle between normal vectors \({\beta }_{j}\) for discrete mean vertex curvature

5 Shape distribution

The shape distribution was used for the comparison of results obtained from the individual shape function [5]. It is a type of frequency histogram, represented by polylines, that are created by connection of tops of individual histogram column. Frequency histogram determines the number of results that corresponds to the given class, so for example how many curvature values are in the given interval for the given mesh. The class is obtained by dividing the interval into the fixed-sized bins. To eliminate the influence of different numbers of mesh vertices, the normalisation of frequencies was done by the total number of values.

6 2-sigma method, Minkowski \({{\varvec{L}}}_{1}\) norm method and range method

To avoid extreme values of outliers, that can be caused by the noise or reflections during the scanning, the 2-sigma method was applied. This method deletes the values that are out of the calculated interval. This interval is estimated for each mesh and at most 95% of values should lie in this interval. Interval 2sigma is calculated using mean \(\overline{x }\) and standard deviation \(\sigma\):

$$\sigma =\sqrt{\frac{\sum_{i=1}^{m}{\left({x}_{i}-\overline{x }\right)}^{2}}{m}}, 2\mathrm{sigma }= [\overline{x }-2\bullet \sigma , \overline{x }+2\bullet \sigma ]$$
(6)

where \(m\) is the number of all values \({x}_{i}\) of the given shape function and \(\overline{x }\) is the arithmetic mean of these values.

The shape distribution, that was created from the results of shape functions with deleted outliers, represents the given surface graphically. But it is not clearly visible, which pair of meshes is more similar and which pair is less similar. That is the reason for using Minkowski \({L}_{1}\) norm in the shape distributions. In the smooth version, this norm is based on the area between two graphs, and in the discrete version, it calculates the sum of differences in all columns between two histograms \(f\) and \(g\) as:

$$D\left(f,g\right)=\sum_{i=1}^{m}\left|{a}_{i}-{b}_{i}\right|,$$
(7)

where \({a}_{i}\) and \({b}_{i}\) represent the relative frequencies of results from the given shape function of two different meshes in the same class. Minkowski \({L}_{1}\) norms were calculated for each pair of meshes of the given scanner for shape function \(H\), because this function describes the surface shape.

To compare the deviations, distances \({D1}_{C}\) and approximations of deviations \(h\), the ranges were calculated. In other words, the maximal value from all ten meshes of the given scanner is taken, as well as the minimal value. Then the maximum minus minimum is calculated and it defines the range for the given shape function and the given scanner. This range method is equivalent to the surface profile of all ten mesh data.

7 Measurement system analysis

The measurement system analysis (MSA) is a method based on the various types of statistical characteristics, such as repeatability and reproducibility. Because the conditions of measurement can change (such as operator, or used method), the measurement repeatability and reproducibility (R&R) is convenient to evaluate. One of many methods, that can be used for R&R, is the method of means and ranges.

This method uses object parts, operators and repetitions for the evaluation and it is composed of the following steps: the calculation of ranges, means of ranges and range bounds and the construction of a range diagram. MSA is also used to determine the amount of variation in the measurement process.

7.1 Calculation of ranges

In MSA, the first step is the calculation of the ranges from the repeated scanning, where the inserted values \({x}_{ijk}\) are sums of \({L}_{1}\) norms calculated for the given mesh excluding the zero value (i.e. sum of nine values from the given row of the norm table, that compares the given mesh with the remaining nine meshes). These ranges are given by:

$${R}_{ij*}=\underset{k}{{\text{max}}}{x}_{ijk}-\underset{k}{{\text{min}}}{x}_{ijk} .$$
(8)

The next step is the calculation of the arithmetic mean for these ranges and all parts for each operator:

$${\overline{R} }_{i**}=\frac{{\sum }_{j=1}^{r}{R}_{ij*}}{r} .$$
(9)

The last step is the calculation of arithmetic mean from the previous values marked as \(\overline{\overline{R}}\). This result is the value of the central line CL and is used for the calculation of range limits UCL and LCL (UCL = upper control limit, LCL = lower control limit):

$$CL=\overline{\overline{R}}=\frac{\sum_{i=1}^{h}\overline{R}_{i**}}{h}$$
(10)
$$UCL={D}_{4}\bullet \overline{\overline{R}},LCL={D}_{3}\bullet \overline{\overline{R}},$$
(11)

where \({D}_{3}\) and \({D}_{4}\) are the constants from the control chart table, where \({D}_{3}=0.223\) and \({D}_{4}=1.777\) for \(n=10\).

7.2 Construction of the range diagram

To construct the range diagram that displays the control limits and three polylines (one for each operator), the ranges \({R}_{ij*}\) were used on the y-axis and the order of scanners on the x-axis. The position of these values of polylines between the control limits means that the process is statistically mastered, and it is influenced only by the random causes of variability. The position relative to the central line shows for the nearest function to this line that the given operator is the best for the data processing.

8 Experimental results

For the data processing, the shape function \(D1\) from [5] (this shape function was previously used in [29], same as in [30], where it was compared with shape functions \(D2\) and \(D3\) using MSA), discrete Gaussian curvature from [25] and discrete mean curvature from [28] were used (with modifications). The results of these functions were represented by the shape distribution from the frequency histogram and then processed by Minkowski \({L}_{1}\) norm. Results define the similarity and distinctness of meshes. By evaluating these results, the scanner precisions can be compared.

The results from functions \({D1}_{C}\), \(h\) and \(H\) calculated according to (2), (4) and (5) were compared with the point deviations \(d\) from a calibrated radius of the sphere calculated according to (1) for individual mesh. This comparison could show the functionality of new methods based on shape functions. Moreover, the 2-sigma method was used in all results to remove outliers.

The method using shape functions \({D1}_{C}\), \(h\) or \(H\) (and also their processing via shape distribution) is a new view on the scanner accuracy comparison, because the commonly used form error method is based on the knowledge of calibrated values (these values are not needed in the new methods).

As first, the data calculated from shape functions and deviation are presented and then the MSA results with explanation are shown.

8.1 Deviations (form errors)

The values of individual deviations represented by the shape distribution are depicted in Fig. 7, where the relative frequencies of oriented deviations (where the range is equivalent to the form error) are depicted in polylines. On the x-axis are the values of deviations from calibrated value, and on the y-axis are relative frequencies that represent the percentual amount of the given value from the class of deviations. The peaks of graphs determine the deviation for the most vertices: for scanner \(S1\) about 0.001, then for scanner \(S2\) is the deviation about 0.015 and for scanner \(S3\) even about 0.025.

Fig. 7
figure 7

Oriented deviations from calibrated value for scanners S1, S2 and S3

The similarity of polyline shapes means the similarity of meshes. The wide range means that the data has bigger (in positive and negative sense) deviations, and minimum and maximum of deviations are depicted in vertical lines.

8.2 Distance from centroid

Ranges were calculated also for the evaluation of the shape function \({D1}_{C}\) that if the author is known, it has not been used yet for the comparison of scanners (same as the other shape functions below). The shape distribution of this function for all scanners is depicted in Fig. 8. The shapes of these polylines have the same description as for the deviations—similarity of graphs means the similarity of meshes and similarity of ranges means the similar extreme distances. Since the sphere has a trimmed lower part, the centroid is not the same as the sphere centre or the origin. The difference of graphs is in this case not visible from this picture, but it is visible from the ranges below. The similarity of graphs for all scanners demonstrates the fact that the same object was scanned.

Fig. 8
figure 8

Distances from centroid for scanners S1, S2 and S3

8.3 Cone height

The new shape function, calculating the cone heights for 1-neighbourhood of the vertex, has the graphs displayed in Fig. 9. The shape of graphs for each scanner displays that the same object was scanned. From all scanners, it is visible that most of vertices have a height of about 0.0038 mm. Also, the similarity of polylines for individual scanner means the similarity of obtained data.

Fig. 9
figure 9

Cone heights for scanners S1, S2 and S3

8.4 Discrete mean vertex curvature

The discrete mean vertex curvature \(H\) is the last used function. Its shape distributions for all scanners are shown in Fig. 10. The similarity of meshes is visible from the similarity of polylines (for individual scanner, within the scanners, the similarity of scanned object is obvious, as in previous functions) or in the tables below. Ranges are not depicted in these graphs, because the range method was not used for the evaluation of this function, but the Minkowski \({L}_{1}\) norm was used.

Fig. 10
figure 10

Discrete mean vertex curvature for scanners S1, S2 and S3

9 MSA results and comparison

MSA was here applied on the shape function results to determine if all shape functions are competent to scanner evaluation. Here, the repetition is the repeated scanning, the shape functions (excluding the deviation) represent the operators and the parts are represented by the scanners. It means that for \(i\in \langle 1;h\rangle\), \(j\in \langle 1;r\rangle\) and \(k\in \langle 1;n\rangle\), are \(r=3\) (parts), \(h=3\) (operators) and \(n=10\) (repetition). The resulted range diagram is depicted in Fig. 11. This diagram shows that all functions are in the given limits, so they can be used for scanners comparison.

Fig. 11
figure 11

Range diagram

Then, the range method or Minkowski \({L}_{1}\) norm can be used for the final comparison of scanner on these shape functions. The discrete mean vertex curvature was evaluated by Minkowski \({L}_{1}\) norm. This norm characterises the measure of similarity between all pairs of scans for the given scanner.

The resulted range values for the deviations are visible from the vertical lines in Fig. 7 and numerically are as follows: \(0.0171\) for scanner \(S1\), compared to that, \(0.06192\) for scanner \(S2\) and for scanner \(S3\) it is even \(0.10308\). That shows the scanned data dispersion, therefore also the accuracies of scanners: scanner \(S1\) has the lowest range and so it is the most accurate, \(S2\) has the higher range and is less accurate and \(S3\) is the least accurate. Since the deviation characterises the difference between the scanned and real surface, the range is the appropriate choice for results and scanners comparison.

The range of distance values are in Fig. 8 and numerically are for scanner \(S1\) 4.38436, for scanner \(S2\), it is 4.46125 and for \(S3\), 4.4928. So again, the range for the scanner \(S1\) is the lowest one, for scanner \(S2\) higher and for scanner \(S3\) the highest, which reflects the order of their accuracies.

The value ranges of the cone heights, that is the alternative for deviation, are depicted in Fig. 9, and for scanner S1, it is 0.00669, for S2 0.00673 and for S3 it is 0.0069. That is the same order as previous. Again, the similarity of graph shapes represents the similarity of meshes. The similarity of graph shapes of all scanners demonstrates that the same object was scanned, too.

The discrete mean vertex curvature displayed in Fig. 10 was processed by Minkowski \({L}_{1}\) norm. The values of Minkowski \({L}_{1}\) norms for scanner \(S1\) are displayed in Table 2, for scanner \(S2\) in Table 3 and for scanner \(S3\) in Table 4. The values in these tables express the similarity between two scans—the lower value the better similarity. The sum of the values of this table that are marked in bold was calculated for each scanner. This sum defines the similarity within the scanner—for scanner \(S1\), it is \(4.32796\), for \(S2\) is the sum \(4.4933\) and for \(S3\), it is \(4.91217\). The order of scanners is again unambiguous and in the corresponding order as in the previous results.

Table 2 \({L}_{1}\)norms of discrete mean vertex curvature for scanner S1
Table 3 \({L}_{1}\)norms of discrete mean vertex curvature for scanner S2
Table 4 \({L}_{1}\)norms of discrete mean vertex curvature for scanner S3

All these results of comparisons for each shape function are summarised in Table 5, where the corresponding order is visible and shows that all functions are competent for the scanners comparison. The graph in Fig. 11 also shows that the shape function \({D1}_{C}\) is better for the comparison, since it has the graph nearest to the central line. As regards the processing time, the longest computation time takes the shape function \(h\), since it needs to compute Gaussian curvature at first. The shortest computation time takes \({D1}_{C}\) that uses only vertices coordinates.

Table 5 Comparison of results for all shape functions

As regards shape function \(H\), whatever the MSA results say, the graphs in Fig. 10 show the differences between scanners—scanner S1 has all polylines very similar and the peak of these graphs is the lowest, scanner S2 has higher peak and some polylines have the data further from the others, scanner S3 has the data further from each other and also the right part of the graph show the dispersion of the data, because some polyline ends in value 0.92 and some in 0.97. It makes this function good for scanners comparison.

Finally, shape functions are not intended to replace the scanner calibration or qualification process. However, they can be used to compare stereolithographic meshes. The mesh analysis using shape functions has the potential for downstream operations, such as reverse engineering functions, that use mathematical algorithms to fill incomplete meshes, mesh optimization, smoothing, etc.

10 Conclusion

In this paper, the different shape functions were used for new methods of scanners comparison and compared with the form error (deviation) to match the order of three different types of scanners. Since the calibration value is known for the calibration sphere, scans of this artefact were used to define the deviations, as well as the order of scanner accuracy. These results were compared with the results obtained by the new methods based on the shape functions calculating the distance of vertex from centroid, discrete mean vertex curvature and also new function calculating the height of the approximating cone for the given 1-neighbourhood of the vertex. To demonstrate that these functions can be used for scanners comparison, the MSA was used and the competence was verified. Then the shape function results were evaluated by the range method, especially the curvature was evaluated using Minkowski \({L}_{1}\) norm. The results were in the corresponding order as for deviations, and so the new methods determine the same order of scanners as the common method. To generalise this method, the next step will be the application of the method on triangular meshes of freeform surface. This application will be the subject of further research.