Research on a Handheld 3D Laser Scanning System for Measuring Large-Sized Objects

A handheld 3D laser scanning system is proposed for measuring large-sized objects on site. This system is mainly composed of two CCD cameras and a line laser projector, in which the two CCD cameras constitute a binocular stereo vision system to locate the scanner’s position in the fixed workpiece coordinate system online, meanwhile the left CCD camera and the laser line projector constitute a structured light system to get the laser lines modulated by the workpiece features. The marked points and laser line are both obtained in the coordinate system of the left camera in each moment. To get the workpiece outline, the handheld scanner’s position is evaluated online by matching up the marked points got by the binocular stereo vision system and those in the workpiece coordinate system measured by a TRITOP system beforehand; then the laser line with workpiece’s features got at this moment is transformed into the fixed workpiece coordinate system. Finally, the 3D information composed by the laser lines can be reconstructed in the workpiece coordinate system. A ball arm with two standard balls, which is placed on a glass plate with many marked points randomly stuck on, is measured to test the system accuracy. The distance errors between the two balls are within ±0.05 mm, the radius errors of the two balls are all within ±0.04 mm, the distance errors from the scatter points to the fitted sphere are distributed evenly, within ±0.25 mm, without accumulated errors. Measurement results of two typical workpieces show that the system can measure large-sized objects completely with acceptable accuracy and have the advantage of avoiding some deficiencies, such as sheltering and limited measuring range.


Introduction
Recently 3D contour measurement has been widely applied in many fields, such as heritage conservation, aerospace, automobile manufacturing and so forth. The coordinate measuring machine (CMM) and the articulated arm measurement system (AAMS) are the frequent-used 3D measurement devices. However, when measuring a large-sized object on site, the CMM is difficult to complete this task because it is not convenient being used on site. AAMS is portable and flexible, which could measure an object on site but its largest measurement scale is generally within several meters. Now the 3D contour measurement based on optics [1][2][3][4][5][6] has been known as one of the most significant technologies with many advantages such as high accuracy, high efficiency, non-contact, which includes light coding, moire topography, structured light technique and space-time stereo vision and so forth. Light coding [7] is used to capture the movement features of human joints and figures but with low accuracy. Moire topography [8] could realize a measurement quickly but its capability is limited in estimating whether an object is concave or convex. Phase measurement profilometry (PMP) [9] can measure the contour of a moving object in real-time but it fails to find the optimum demodulation phase. Fourier transform frofilometry (FTP) [10] with high sensibility can obtain the surface points of an object only using one image captured with deformed grating fringes but its algorithm is very time-consuming. Handheld 3D line laser scanning [11] scans the contour online in several minutes by a structured light system composed by a fixed camera and handheld cross line laser projector, whose external parameters are obtained by self-calibration but its accuracy should be further improved. Spacetime stereo vision [12] can achieve the 3D contour measurement quickly by adding a projector to the binocular stereo vision system to solve the matching problem but its field-of-view is small. All these methods mentioned above measure an object from one view-point at a time. If the object needs to be measured completely, these methods have to measure the object from different view-points. Considering that each data patch has its own local coordinate system, data registration is necessary to acquire the complete surface points of the object in a common coordinate system with ineluctable registration errors at the junctions of different data patches. TRITOP system [13] has the ability to measure the rough geometry of a large-sized object on site by capturing pictures around the workpiece from different viewpoints and these pictures should include scale bars with known length. It is a non-contact measurement system proposed by Gom (Gesellschaft für Optische Messtechnik mbH) in Germany, with the primary ability of extracting the 3D coordinates of the marked points stuck on the objects. It has no limitation of measurement scale but it could not acquire the details of the 3D contour of objects. This study is developed to get the detail of the 3D contour of objects based on the TRITOP system.
In this paper, a handheld 3D laser scanning system is proposed to extract the 3D contours of large-sized objects on site. Its own measurement range is only several hundred millimeters. The extracted laser lines are within this range. In order to measure a large-sized object, the position and orientation of the scanning system is determined in real-time in the common workpiece coordinate system constructed by the known marked points randomly stuck on the workpiece. The positions of these marked points are measured by the TRITOP system beforehand. Then the laser points are transformed into the workpiece coordinate system continuously. Therefore, the system measuring range has no limitation just as TRITOP system and the measurement accuracy is largely dependent on the accuracy of TRITOP system.

System Composition and Working Principle
As shown in Figure 1, this measurement system is mainly composed of two CCD cameras, a line laser projector and two sets of lighting devices. The two CCD cameras constitute a binocular stereo vision system, while the left CCD camera and the line laser projector constitute a structured light system. The coordinate system of left camera is defined as the sensor coordinate system, noted as the o 1 x 1 y 1 z 1 .
Sensors 2018, 18, x FOR PEER REVIEW 2 of 18 optimum demodulation phase. Fourier transform frofilometry (FTP) [10] with high sensibility can obtain the surface points of an object only using one image captured with deformed grating fringes but its algorithm is very time-consuming. Handheld 3D line laser scanning [11] scans the contour online in several minutes by a structured light system composed by a fixed camera and handheld cross line laser projector, whose external parameters are obtained by self-calibration but its accuracy should be further improved. Spacetime stereo vision [12] can achieve the 3D contour measurement quickly by adding a projector to the binocular stereo vision system to solve the matching problem but its field-of-view is small. All these methods mentioned above measure an object from one viewpoint at a time. If the object needs to be measured completely, these methods have to measure the object from different view-points. Considering that each data patch has its own local coordinate system, data registration is necessary to acquire the complete surface points of the object in a common coordinate system with ineluctable registration errors at the junctions of different data patches. TRITOP system [13] has the ability to measure the rough geometry of a large-sized object on site by capturing pictures around the workpiece from different viewpoints and these pictures should include scale bars with known length. It is a non-contact measurement system proposed by Gom (Gesellschaft für Optische Messtechnik mbH) in Germany, with the primary ability of extracting the 3D coordinates of the marked points stuck on the objects. It has no limitation of measurement scale but it could not acquire the details of the 3D contour of objects. This study is developed to get the detail of the 3D contour of objects based on the TRITOP system. In this paper, a handheld 3D laser scanning system is proposed to extract the 3D contours of large-sized objects on site. Its own measurement range is only several hundred millimeters. The extracted laser lines are within this range. In order to measure a large-sized object, the position and orientation of the scanning system is determined in real-time in the common workpiece coordinate system constructed by the known marked points randomly stuck on the workpiece. The positions of these marked points are measured by the TRITOP system beforehand. Then the laser points are transformed into the workpiece coordinate system continuously. Therefore, the system measuring range has no limitation just as TRITOP system and the measurement accuracy is largely dependent on the accuracy of TRITOP system.

System Composition and Working Principle
As shown in Figure 1, this measurement system is mainly composed of two CCD cameras, a line laser projector and two sets of lighting devices. The two CCD cameras constitute a binocular stereo vision system, while the left CCD camera and the line laser projector constitute a structured light system. The coordinate system of left camera is defined as the sensor coordinate system, noted as the  At the beginning, the marked points are randomly stuck on the surface of one workpiece and then measured by TRITOP system. The working principle of TRITOP system is shown in Figure 2 [14]. Two scale bars are put aside of the workpiece to be measured, the scale bars lengths between the coded marked points at both ends are known. Some coded marked points are put on the workpiece for the orientation of 2D images. In the next step, one digital SLR camera with fixed focal length of 24 mm is used to take pictures around the workpiece from different viewpoints and each picture should include at least one scale bar in its entirety and at least 5 coded marked points. Then these pictures and the parameters of the digital camera are input to its own software, "TRITOP Professional". Finally, the 3D coordinates of the marked points are obtained with all the relative distance errors within 0.2 mm and a 3D coordinate system is established on the fixed workpiece, defined as workpiece coordinate system o w x w y w z w . At the beginning, the marked points are randomly stuck on the surface of one workpiece and then measured by TRITOP system. The working principle of TRITOP system is shown in Figure 2 [14]. Two scale bars are put aside of the workpiece to be measured, the scale bars lengths between the coded marked points at both ends are known. Some coded marked points are put on the workpiece for the orientation of 2D images. In the next step, one digital SLR camera with fixed focal length of 24 mm is used to take pictures around the workpiece from different viewpoints and each picture should include at least one scale bar in its entirety and at least 5 coded marked points. Then these pictures and the parameters of the digital camera are input to its own software, "TRITOP Professional." Finally, the 3D coordinates of the marked points are obtained with all the relative distance errors within 0.2 mm and a 3D coordinate system is established on the fixed workpiece, defined as workpiece coordinate system w w w w o x y z .

Scale bars with known length
Digital SLR camera

Marked points
Workpiece to be measured Coded marked points With the 3D coordinates of marked points in w w w w o x y z , the working principle of this study to scan the 3D contour of workpiece is shown in Figure 3. At each position, the system captures two images, shown in Figure 4, each of them contains several marked points and a laser stripe modulated by the workpiece features. Then the 3D coordinates of the marked points and the laser stripe are  With the 3D coordinates of marked points in o w x w y w z w , the working principle of this study to scan the 3D contour of workpiece is shown in Figure 3. At each position, the system captures two images, shown in Figure 4, each of them contains several marked points and a laser stripe modulated by the workpiece features. Then the 3D coordinates of the marked points and the laser stripe are calculated in o 1 x 1 y 1 z 1 according to the binocular stereo vision model and the structured light model respectively. To achieve 3D contour of the entire workpiece, the laser stripe in o 1 x 1 y 1 z 1 should be transformed into o w x w y w z w . The transformation is solved by using the 3D coordinates of the detected marked points in o 1 x 1 y 1 z 1 and their corresponding coordinates in o w x w y w z w measured by TRITOP system. After scanning over the workpiece, the laser points in o w x w y w z w can make up the contour of workpiece. Therefore, to achieve the 3D contour of large-sized workpiece accurately, the binocular stereo vision model and the structured light model should be modeled and calibrated; the corresponding coordinates in o w x w y w z w of the marked points in o 1 x 1 y 1 z 1 should be found out to compute the transformation relationship between current o 1 x 1 y 1 z 1 and o w x w y w z w .

Modeling and Calibration of the Handheld 3D Laser Scanning System
In order to achieve the 3D contours of given large-sized objects accurately, the internal and external parameters of both the binocular stereo vision system and structured light system should be modeled and calibrated.

Modeling and Calibration of the Handheld 3D Laser Scanning System
In order to achieve the 3D contours of given large-sized objects accurately, the internal and external parameters of both the binocular stereo vision system and structured light system should be modeled and calibrated. The organization of this paper is as follows: Section 3 presents the modeling and calibration of the binocular stereo vision system and the structured light system, in which the 3D coordinates of the marked points and laser points are achieved in o 1 x 1 y 1 z 1 . Section 4 addresses the coordinate match-up method of the same marked points in o 1 x 1 y 1 z 1 and in o w x w y w z w . Using the matched-up coordinates, the transformation from o 1 x 1 y 1 z 1 into o w x w y w z w is achieved. The 3D laser data obtained in o 1 x 1 y 1 z 1 can then be transformed into o w x w y w z w . Section 5 describes the experiments and gives out the accuracy analysis. The conclusion is given in Section 6.

Modeling and Calibration of the Handheld 3D Laser Scanning System
In order to achieve the 3D contours of given large-sized objects accurately, the internal and external parameters of both the binocular stereo vision system and structured light system should be modeled and calibrated.

Modeling and Calibration of the Binocular Stereo Vision System
Shown in Figure 5, o 1 x 1 y 1 z 1 is the left camera coordinate system, also defined as the scanner coordinate system. According to the perspective projection principle, the transformation from the camera coordinate system to the CCD array plane is shown in Equations (1) and (2), respectively.

Modeling and Calibration of the Binocular Stereo Vision System
Shown in Figure 5, 1 1 1 1 o x y z is the left camera coordinate system, also defined as the scanner coordinate system. According to the perspective projection principle, the transformation from the camera coordinate system to the CCD array plane is shown in Equations (1) and (2), respectively. Figure 5. Binocular stereo vision system model.
Only taking radial distortion into consideration, the relationship between the distorted position  Only taking radial distortion into consideration, the relationship between the distorted position P id (X id , Y id ) and ideal position P( where i = 1, 2 represents two cameras, are the principal point of both cameras, k i1 and k i2 are the first-order and second-order distortion coefficients of both cameras.
The transformation from o 1 x 1 y 1 z 1 to o 2 x 2 y 2 z 2 is where are the coordinates of one 3D point in o 1 x 1 y 1 z 1 and o 2 x 2 y 2 z 2 respectively, R 1 is a 3 × 3 rotation matrix from o 1 x 1 y 1 z 1 to o 2 x 2 y 2 z 2 , T 1 is a translation vector.

From Equations (1), (2) and (4), the transformation from
Then the 3D coordinate of one point in o 1 x 1 y 1 z 1 can be calculated from Equation (6), after the unknown internal and external parameters in Equations (1)-(4) are calibrated.
The binocular stereo vision system is calibrated by adopting the calibration target shown in Figure 6. To make the calibration results accurate, the target points should fill the whole view field and the postures of target in the stereo system should be fully considered. As a result, five poses set calibration method is introduced to get the calibration points [15,16]. The calibration points are extracted from15 pair images with 5 different postures and 3 pair images captured at each posture.
Then the 3D coordinate of one point in 1 1 1 1 o x y z can be calculated from Equation (6), after the unknown internal and external parameters in Equations (1)-(4) are calibrated.
The binocular stereo vision system is calibrated by adopting the calibration target shown in Figure 6. To make the calibration results accurate, the target points should fill the whole view field and the postures of target in the stereo system should be fully considered. As a result, five poses set calibration method is introduced to get the calibration points [15,16]. The calibration points are extracted from15 pair images with 5 different postures and 3 pair images captured at each posture. The 2D coordinates of the marked points are extracted from these 15 pairs of images with subpixel precision [17]. The unknown parameters in Equations (1)-(4), including 1 21 k and 22 k , are then calibrated by adopting the binocular stereo calibration function of OpenCV.

Modeling and Calibration of the Structured Light System
The principle of the structured light system is based on the triangulation method shown in Figure 7. The relative position between the left image and the laser plane is optimally designed for achieving a satisfying working depth and measurement accuracy. The model of the structured light system should be the transformation from the 2D image plane to the 2D laser plane where a 2D coordinate system L L L o x y is established, it is a one-to-one mapping relationship and can be created  The 2D coordinates of the marked points are extracted from these 15 pairs of images with sub-pixel precision [17]. The unknown parameters in Equations (1)-(4), including R 1 , T 1 , f 1 , f 2 , u 10 , v 10 , u 20 , v 20 , k 11 , k 12 , k 21 and k 22 , are then calibrated by adopting the binocular stereo calibration function of OpenCV.

Modeling and Calibration of the Structured Light System
The principle of the structured light system is based on the triangulation method shown in Figure 7. The relative position between the left image and the laser plane is optimally designed for achieving a satisfying working depth and measurement accuracy. The model of the structured light system should be the transformation from the 2D image plane to the 2D laser plane where a 2D coordinate system o L x L y L is established, it is a one-to-one mapping relationship and can be created as where P = u 1 v 1 1 T and P L = x L y L 1 T are the homogeneous coordinates of one calibration point in ou 1 v 1 and in o L x L y L respectively, a 1 ∼ a 8 are defined as intrinsic parameters.  For solving the intrinsic and extrinsic parameters, the calibration points in the laser plane need to be established. During this process, the LED light devices are not working to extract accurately the laser points. Firstly, the laser plane is projected on a glass plate painted with white matt paint. The laser stripe on the plate is captured by both cameras. Secondly, the center position of the laser stripe in 11 ou v is extracted using the gray-weight centroid method [18][19][20]. Thirdly, a point on the laser stripe in the left image is matched up with its corresponding point in the right image according to the epipolar geometry constraint. The 3D coordinate of the laser points in 1 1 1 1 o x y z is calculated from Equation (6).
Following the process described above, several laser stripes are obtained at different positions to keep the laser points distributed in different regions of the laser plane, shown in Figure 8. Since the laser stripe projected on the glass plate is a line, the 3D points on it are co-linear in 1 1 1 1 o x y z . In  In Equation (7), (u 1 , v 1 ) is a coordinate on the image plane after the lens distortions are corrected using the calibrated distortion coefficients in Section 3.1. Once the intrinsic parameters a 1 ∼ a 8 are calibrated, the 2D coordinate of a point (x L , y L ) on a laser stripe can be obtained from the (u 1 , v 1 ) on the image plane.
To achieve 3D measurement, it is necessary to transform the 2D laser points in o L x L y L into o 1 x 1 y 1 z 1 , such a transformation is the extrinsic model of the structured light system and it is created as where P 1 = x 1 y 1 z 1 T is the coordinate of a 3D calibration point in o 1 x 1 y 1 z 1 . P L = x L y L 1 T is the homogeneous coordinate of a 2D calibration point in o L x L y L . R 3 is a 3 × 2 rotation matrix, which includes the unit direction vectors of x L and y L axes in o 1 x 1 y 1 z 1 and T 3 is the position of o L in o 1 x 1 y 1 z 1 . They are the extrinsic parameters to be calibrated. For solving the intrinsic and extrinsic parameters, the calibration points in the laser plane need to be established. During this process, the LED light devices are not working to extract accurately the laser points. Firstly, the laser plane is projected on a glass plate painted with white matt paint. The laser stripe on the plate is captured by both cameras. Secondly, the center position of the laser stripe in ou 1 v 1 is extracted using the gray-weight centroid method [18][19][20]. Thirdly, a point on the laser stripe in the left image is matched up with its corresponding point in the right image according to the epipolar geometry constraint. The 3D coordinate of the laser points in o 1 x 1 y 1 z 1 is calculated from Equation (6).
Following the process described above, several laser stripes are obtained at different positions to keep the laser points distributed in different regions of the laser plane, shown in Figure 8. Since the laser stripe projected on the glass plate is a line, the 3D points on it are co-linear in o 1 x 1 y 1 z 1 . In Figure 8 the origin of the 2D coordinate frame is located at point 1 whose coordinate is (t 3x , t 3y , t 3z ) T . As a result, a 2D coordinate frame o L x L y L is established in the laser plane, the coordinate of o L and the direction vectors of x L and y L in o 1 x 1 y 1 z 1 are simultaneously solved while establishing o L x L y L . The extrinsic parameters in Equation (8) is then solved. To calibrate the intrinsic parameters, the 2D calibration points in the laser plane should be established by transforming the 3D calibration points in o 1 x 1 y 1 z 1 into o L x L y L . Deriving from Equation (8), we have With all the calibration points in o L x L y L and their corresponding points in ou 1 v 1 , the intrinsic parameters a 1 ∼ a 8 in Equation (7)   aa in Equation (7) are worked out. Considering the small working range of binocular stereo vision system, the maximum distance between two marked points will be within max 300mm d 

Matching Up the Marked Points
The objective of matching up the marked points is to identify the coordinates of the same marked point in o 1 x 1 y 1 z 1 and in o w x w y w z w . In this study, this is achieved by using a distance constraint algorithm.
The position of each marked point in o w x w y w z w obtained by TRITOP has a sequence number. To match up the marked points in both o 1 x 1 y 1 z 1 and o w x w y w z w , the known marked points in o w x w y w z w should be assigned according to relative distances between marked points.
Firstly, the distances d ij between any two marked points are calculated in o w x w y w z w . Considering the small working range of binocular stereo vision system, the maximum distance between two marked points will be within d max ≤ 300 mm in o 1 x 1 y 1 z 1 . Then all of distances between marked points in o w x w y w z w meeting this condition, d ij ≤ 300 mm, will be sorted according to the ascending order and stored in a library (noted as L w = P i , d ij , P j , j = i) and each distance has a corresponding node. The library is shown below, ), which is also sorted ascendingly according to where P i , P j , P r , P t , P a , P c are marked points with the sequence number i, j, r, t, a, c in o w x w y w z w respectively, d ij , d rt , d ac are the distance between them respectively and . . . ≤ d ij ≤ d rt ≤ . . . d ac . Then for each marked point P i , a workpiece sub-library (noted as L wi , i = {1, 2, . . . , n}, n is the number of marked points) is constructed by P i and its neighbors (the points connected with P i meeting d ij ≤ 300 mm), which is also sorted ascendingly according to the distances. One workpiece sub-library, L wi , is  where points P i are connected with points P j , P k , . . . , P m and d ij ≤ d ik ≤ . . . ≤ d im ≤ 300 mm. Then the handheld scanner begins scanning the workpiece's contour. For example, n t j marked points are obtained in o 1 x 1 y 1 z 1 at the moment t j and the distances between arbitrary two marked points are calculated. Similar to L wi , the scanner sub-libraries (noted as L sj , j = 1, 2, . . . , n t j ) are created for each of these marked points and these marked points make up of a web, noted as W t j (see Figure 9). As all of the marked points are fixed on the workpiece, there must exist a same web in o w x w y w z w , shown in Figure 10. Since the marked points are randomly stuck on the workpiece, there is one and only one web W i in o w x w y w z w as same as the web W t j in Figure 9.    Figure 9 is as an example): (1) Choose one marked point, such as A P , in Figure 9 with its scanner sub-library sA L in 1 1 1 1 o x y z ; Figure 10. Corresponding marked points to Figure 9 and the web W i in o w x w y w z w . The black marked points are the same points with the points in Figure 9, while the gray marked points are other points stuck on the workpiece.
To find the web W i in o w x w y w z w , a distance constraint algorithm employed is explained below (the web in Figure 9 is as an example): (1) Choose one marked point, such as P A , in Figure 9 with its scanner sub-library L sA in o 1 x 1 y 1 z 1 ; To find the web i W in w w w w o x y z , a distance constraint algorithm employed is explained below (the web in Figure 9 is as an example): (1) Choose one marked point, such as A P , in Figure 9 with its scanner sub-library   (10) (2) find the distances in library L w meeting the conditions d 5 − d ij ≤ ε and record the sequences of the marked points to a list. Assuming d 5 − d ij ≤ ε and |d 5 − d rt | ≤ ε, then the list of candidates is generated, l c = {i, j, r, t}.

Obtaining the Contour of Workpiece in o w x w y w z w
To get the whole contour of one workpiece, the laser lines should be transformed into o w x w y w z w from o 1 x 1 y 1 z 1 . To do this, the transformation relationship between these two frames (see Equation (10)) should be worked out firstly by the matched-up marked points in Section 4.1.
where R 4 is a 3 × 3 rotation matrix from o 1 x 1 y 1 z 1 to o w x w y w z w , T 4 is a translation vector. P w = x w y w z w T and P 1 = x 1 y 1 z 1 T are the 3D coordinates of a same 3D point in o w x w y w z w and o 1 x 1 y 1 z 1 , respectively.
Then the laser lines got from the structured light system can be transformed into the fixed o w x w y w z w . When the handheld scanner finishes the scanning process, all the laser lines modulated by the workpiece's features are transformed into o w x w y w z w . The achievable result will be got.

System Hardware and Structure
The system is shown in Figure 1b. Two cameras are made by Pointgrey, Canada, with the model FL3-FW-03S3M. The resolution of the CCD array plane is 640 × 480. The frame rate of the two cameras is set as 60 frames/s, the shutter time as 8 ms, the gain as 6 dB. The lenses are generated by Computar, with 8 mm fixed focal length for 1/2 format sensors. To obtain clear laser lines, a small aperture is adopted. Moreover, to achieve an appropriate measuring range, the distance L from the intersection point of two optical axes N to the line between the optical points of the two cameras is designed as L = 300 mm and the angle of the two optical axes is designed as 38.6 • considering two factors: (1) at least 5 same marked points can be synchronously captured to a large extent by the two cameras for the binocular stereo matching up; (2) the depth of field should be kept within a suitable range (280 mm ≤ L 2 ≤ 350 mm in this study) for requiring a satisfying accuracy. As shown in Figure 11, the gray area is the effective view field. intersection point of two optical axes N to the line between the optical points of the two cameras is designed as 300 mm L   and the angle of the two optical axes is designed as 38.6° considering two factors: (1) at least 5 same marked points can be synchronously captured to a large extent by the two cameras for the binocular stereo matching up; (2) the depth of field should be kept within a suitable range ( L  in this study). The gray range is the effective view field of the system.

System Accuracy Test
In order to test the accuracy of the system, the device in Figure 12 is adopted, which includes a glass plate painted with white matt paint and a ball arm with two standard spheres. The size of the glass plate is 400 mm × 500 mm, in which 69 marked points were randomly stuck on the glass plane and their 3D coordinates in the w w w w o x y z were measured accurately using TRITOP system beforehand. The radius of sphere 1 is 20.030 mm, the radius of sphere 2 is 20.057 mm. The distance between them is 198.513 mm. Figure 11. Field-of-view of the measurement system. The distance L from the intersection point of two optical axes N to the line between the optical points of the two cameras is designed as L = 300 mm and the angle of the two optical axes is designed as 38.6 • . The depth of field should be kept within a suitable range (280 mm ≤ L 2 ≤ 350 mm in this study). The gray range is the effective view field of the system.

System Accuracy Test
In order to test the accuracy of the system, the device in Figure 12 is adopted, which includes a glass plate painted with white matt paint and a ball arm with two standard spheres. The size of the glass plate is 400 mm × 500 mm, in which 69 marked points were randomly stuck on the glass plane and their 3D coordinates in the o w x w y w z w were measured accurately using TRITOP system beforehand. The radius of sphere 1 is 20.030 mm, the radius of sphere 2 is 20.057 mm. The distance between them is 198.513 mm.
As the ball arm is placed on the glass plate motionlessly, they can be regarded as one object. The system can simultaneously measure the glass plate and the ball arm. As a result, the systematic error and random error of the system can be estimated by using the obtained surface points on the two spheres. As the ball arm is placed on the glass plate motionlessly, they can be regarded as one object. The system can simultaneously measure the glass plate and the ball arm. As a result, the systematic error and random error of the system can be estimated by using the obtained surface points on the two spheres. Figure 12. The device used to test the accuracy of the system. The glass plate ( 400mm 500mm  ) is painted with white matt paint, in which 69 marked points are struck on with known 3D coordinates in w w w w o x y z measured accurately by TRITOP system. A ball arm with two standard spheres is put on this glass plate to test the accuracy of the system, the standard radii of sphere 1 and sphere 2 and their distance are 20.030 mm, 20.057 mm, 198.513 mm, respectively.

Systematic Error Test
The ball arm was placed at ten different positions with different orientations on the glass plate. It was measured at each position and the collected laser points are used to fit a sphere. The fitted radii of sphere 1 and sphere 2 and the distances between them are listed in Table 1. The errors between the standard radii and the measured radii are calculated and shown in Figure 13. The errors between the standard distance and the measured distances are computed and presented in Figure 14.
To evaluate the accuracy of the system, one AAMS [21] (see Figure 15) is introduced to measure 1 2 1 Figure 12. The device used to test the accuracy of the system. The glass plate (400 mm × 500 mm) is painted with white matt paint, in which 69 marked points are struck on with known 3D coordinates in o w x w y w z w measured accurately by TRITOP system. A ball arm with two standard spheres is put on this glass plate to test the accuracy of the system, the standard radii of sphere 1 and sphere 2 and their distance are 20.030 mm, 20.057 mm, 198.513 mm, respectively.

Systematic Error Test
The ball arm was placed at ten different positions with different orientations on the glass plate. It was measured at each position and the collected laser points are used to fit a sphere. The fitted radii of sphere 1 and sphere 2 and the distances between them are listed in Table 1. The errors between the standard radii and the measured radii are calculated and shown in Figure 13. The errors between the standard distance and the measured distances are computed and presented in Figure 14.
To evaluate the accuracy of the system, one AAMS [21] (see Figure 15) is introduced to measure the ball arm ten times at ten different positions and orientations, similar to our system, on one plane of its working rang (700 mm × 500 mm × 400 mm) and the radius errors of two spheres and their distance errors are shown in Figures 16 and 17 respectively.
It can be observed from Figures 13 and 14 that the errors of the two radii and their distance errors are within ±0.04 mm and ±0.05 mm respectively with our system, while Figures 16 and 17 show that the radius errors of two spheres are within ±0.07 mm but their distance errors are fluctuated largely depending on the ball arm's positions, about ±0.3 mm, with the AAMS. The results indicate the high accuracy of our system.  Figure 13. Errors between the standard radii and the measured radii of the two spheres with our system. Figure 14. Distance errors between two spheres with our system.

Random Error Test
To test the random error of our system, the distance errors from the scatter points to the fitted sphere surface are tested. Fitting sphere using the surface points of the sphere1 obtained at Section 5.2.1, the distances distribution from the surface points got by our system to the fitted sphere were obtained, shown in Figure 18. Tables 2 and 3 show the maximal distance errors from the surface points to the fitted spheres of the ten times with our system and with AAMS respectively.
It can be seen that all the distance errors from the surface points to the fitted sphere are within ±0.25 mm with our system, while the maximum distance of AAMS is only 0.151 mm. The reason is that the scanning path of arm robot can be set, so that it can scan the spheres orderly and get only one layer of laser points. In both systems, the positive errors and the negative errors are distributed approximately symmetrically.

Random Error Test
To test the random error of our system, the distance errors from the scatter points to the fitted sphere surface are tested. Fitting sphere using the surface points of the sphere1 obtained at Section 5.2.1, the distances distribution from the surface points got by our system to the fitted sphere were obtained, shown in Figure 18. Tables 2 and 3 show the maximal distance errors from the surface points to the fitted spheres of the ten times with our system and with AAMS respectively.
It can be seen that all the distance errors from the surface points to the fitted sphere are within ±0.25 mm with our system, while the maximum distance of AAMS is only 0.151 mm. The reason is that the scanning path of arm robot can be set, so that it can scan the spheres orderly and get only one layer of laser points. In both systems, the positive errors and the negative errors are distributed approximately symmetrically.
points to the fitted spheres of the ten times with our system and with AAMS respectively.
It can be seen that all the distance errors from the surface points to the fitted sphere are within ±0.25 mm with our system, while the maximum distance of AAMS is only 0.151 mm. The reason is that the scanning path of arm robot can be set, so that it can scan the spheres orderly and get only one layer of laser points. In both systems, the positive errors and the negative errors are distributed approximately symmetrically. Figure 18. Distribution of the errors from the scatter points to the fitted sphere surface in our system. Figure 18. Distribution of the errors from the scatter points to the fitted sphere surface in our system.

Working Efficiency Test
With the known the marked points stuck on the workpiece measured by TRITOP system, the process of scanning one workpiece in this study is composed by capturing images, extracting the centers of marked points and the centers of laser stripe, matching up the corresponding 3D coordinates of the marked points in o 1 x 1 y 1 z 1 and o w x w y w z w , establishing the transformation from the o 1 x 1 y 1 z 1 to the o w x w y w z w and transforming the laser stripe into o w x w y w z w . The frame rate of the two cameras is 60 frames/s, the shutter time is 8 ms and thus the time of capturing an image is 24.7 ms.
A time-consuming test shows the time of extracting the centers of marked points and the laser stripe in both images is about 17.5 ms. Therefore, the total time for obtaining one laser stripe in o w x w y w z w is about 42.2 ms. In other words, about 23 laser lines could be got in one second. The maximum laser point number obtained in per second is 14,720 if the 640 points on a line are all sampled.

Application
Two workpieces shown in Figures 19a and 20a with the size 1100 mm × 500 mm × 200 mm and 600 mm × 420 mm × 190 mm respectively are measured to test the performance of this system.
For the workpiece in Figure 19, to keep at least five points are obtained in o 1 x 1 y 1 z 1 , 221 marked points are randomly stuck on the workpiece, shown in Figure 19. Considering sticking one marked point on the workpiece spending about 1 s, the time consumption of this part is within 4 min. Their 3D coordinates in o w x w y w z w are measured by TRITOP system, which takes about 5 min, shown in Figure 19b. In order to guarantee high accuracy, only more than five marked points are matched up in o 1 x 1 y 1 z 1 and o w x w y w z w , could the obtained laser points in o 1 x 1 y 1 z 1 be transformed into o w x w y w z w . About 15 min is spent to scan this workpiece, with the number of the collected laser points, 4,284,509. Figure 19c presents the reduced laser points by the rule of sampling one point from three points evenly. Figure 19d depicts the shaped form of Figure 19c by the software "imageware." For the workpiece in Figure 20a, 86 marked points are randomly stuck on the workpiece. The contour of this workpiece measured by this scanning system is shown in Figure 20b,c. The time expenditure to scan this workpiece is about 12 min to get as much information as we can, especially the edge area and at the regions with large curvature.
It can be seen from Figure 19b,c that the TRITOP system can only get the marked points, while the scanning system in this study can obtain the laser points covering the whole workpiece. From the Figure 19c,d, we can also find that there is no laser point near the edge of the workpiece and at the regions with large curvature. To get the laser points in the edge area and at the regions with large curvature of workpiece in Figure 20b, more time is spent. It is influenced by the number of marked points, the light noises, the posture of scanning system and so forth. Especially, the number of the marked points captured by two cameras simultaneously usually is less than that captured in the other regions and the number of the marked points matched up correctly is difficult to get five. (a) (b) (c) (d) Figure 19. The contour of large-sized workpiece measured by the handheld scanning system in this study. (a) the workpiece with typical structures for testing the system performance; (b) the measured marked points by TRITOP system; (c) the laser points reduced to a third by the system studied; (d) the shaped of (c) generated in "Imageware." Figure 19. The contour of large-sized workpiece measured by the handheld scanning system in this study. (a) the workpiece with typical structures for testing the system performance; (b) the measured marked points by TRITOP system; (c) the laser points reduced to a third by the system studied; (d) the shaped of (c) generated in "Imageware." (a) (b) (c) (d) Figure 19. The contour of large-sized workpiece measured by the handheld scanning system in this study. (a) the workpiece with typical structures for testing the system performance; (b) the measured marked points by TRITOP system; (c) the laser points reduced to a third by the system studied; (d) the shaped of (c) generated in "Imageware." (a) (b) (c) Figure 20. The contour of medium-sized workpiece measured by the handheld scanning system in this study. (a) The medium-sized workpiece with typical structures for testing the system performance; (b) the measured laser points reduced to a third by the system studied (c) the shaped of (b) generated in "Imageware."

Discussion
The proposed handheld 3D laser scanning system can obtain the whole contours of typical largesized workpieces with many features on site with acceptable accuracy and time expenditure. The system's valid depth of field is 2 280mm 350mm L  , the valid view field is about 300mm 300mm  . To get the contours, it needs the TRITOP system to measure the marked points stuck on the whole workpiece. To get an acceptable accuracy, usually 8~10 marked points (at least 5 points) should be captured synchronously by both cameras in the common view field,  The contour of medium-sized workpiece measured by the handheld scanning system in this study. (a) The medium-sized workpiece with typical structures for testing the system performance; (b) the measured laser points reduced to a third by the system studied (c) the shaped of (b) generated in "Imageware."

Discussion
The proposed handheld 3D laser scanning system can obtain the whole contours of typical large-sized workpieces with many features on site with acceptable accuracy and time expenditure. The system's valid depth of field is 280 mm ≤ L 2 ≤ 350 mm, the valid view field is about 300 mm × 300 mm. To get the contours, it needs the TRITOP system to measure the marked points stuck on the whole workpiece. To get an acceptable accuracy, usually 8~10 marked points (at least 5 points) should be captured synchronously by both cameras in the common view field, 300 mm × 300 mm.
The accuracy of this system is tested by evaluating the radii of spheres and their distances, with errors within ±0.05 mm. The cloud thickness is mainly within ±0.25 mm. The errors are distributed evenly based on the marked points measured by TRITOP system, without accumulated errors. The accuracy is relevant to the coordinates of marked points measured by TRITOP system, the internal and external parameters of the scanning system and the transformation relationship between o 1 x 1 y 1 z 1 and o w x w y w z w in each moment.
The performance of the system is verified by scanning a large-sized workpiece (1100 mm × 500 mm × 200 mm) and a medium-sized workpiece (600 mm × 420 mm × 190 mm) with complex features. The time consumption includes three parts: the time of sticking the marked points on the workpiece, the time of measuring the coordinates of marked points by TRITOP system and the time of scanning the contour with this system, which is relevant to the size of workpiece. The contours of workpieces in Figures 19 and 20 can be reconstructed in 25 min and 20 min respectively.
But there are also some defects to be improved. The edge of the workpiece and the regions with large curvature are difficult to be obtained. The main reason is that the marked points in o 1 x 1 y 1 z 1 got by the binocular stereo vision system in these regions are difficult to be detected, which leads to the failure of transformation between o 1 x 1 y 1 z 1 and o w x w y w z w .

Conclusions
This paper presents a mobile 3D scanning system based on the known marked points obtained by the TRITOP system technique beforehand. Compared with the existed methods, (1) it can measure the 3D contour of large-sized workpieces on site with complex features by overcoming some problems in current 3D scanning methods, such as range limitation and sheltering; (2) the system is easy to be used with low demand to the operators, the scanning process can be stopped and discontinuous to check and get laser points; (3) its errors are distributed evenly.
The accuracy of the system is tested by measuring a ball arm with two standard spheres. The ball arm is placed on a glass plane, on which many marked points are randomly stuck and measured by a TRITOP system. The distance errors between the two sphere centers are within ±0.05 mm, the radius errors of two spheres are all within ±0.04 mm and the distance errors from the surface points to the fitted sphere are within ±0.25 mm. Experimental results demonstrate that the system enjoys high accuracy and high stability and can satisfy the accuracy demand of measuring the 3D contours of large-sized workpieces on site.
The measuring results of two workpieces with complex structure also indicate the difficulty in collecting data points near the edge of the workpiece and at the regions with large curvature. Because the number of the marked points correctly matched in o 1 x 1 y 1 z 1 and o w x w y w z w in these regions is less than five. To increase the matched number, it is necessary to increase the density of the marked points on the object or enlarge the working range of the system.