A Laser Line Auto-Scanning System for Underwater 3D Reconstruction

In this study, a laser line auto-scanning system was designed to perform underwater close-range 3D reconstructions with high accuracy and resolution. The system changes the laser plane direction with a galvanometer to perform automatic scanning and obtain continuous laser strips for underwater 3D reconstruction. The system parameters were calibrated with the homography constraints between the target plane and image plane. A cost function was defined to optimize the galvanometer’s rotating axis equation. Compensation was carried out for the refraction of the incident and emitted light at the interface. The accuracy and the spatial measurement capability of the system were tested and analyzed with standard balls under laboratory underwater conditions, and the 3D surface reconstruction for a sealing cover of an underwater instrument was proved to be satisfactory.


Introduction
A large number of underwater applications require high resolution and accurate 3D reconstruction for underwater objects. The intervention tasks [1][2][3][4], pipes or other industrial facility inspection [5,6], archaeology [7][8][9][10], and biological applications [11,12] are just some examples. In these applications, sensors working at a short distance have to be used to obtain the 3D geometry information of an object accurately. These sensors can also increase the autonomy of underwater intervention systems.
Compared with acoustic methods [13,14], optical methods with high resolution and accuracy are more suitable for short-distance operations [15]. The traditional passive vision systems are widely used because of their simplicity and low cost. Camera-based sensors are usually used as passive sensors since the other sensors are based on sounds or light projection. Passive methods sense the environment with a sequence of pictures taken from different viewpoints, so that 3D information will be recovered with the image features matching or stereo matching algorithms [16,17]. These systems are seriously affected by backscatter in limited visibility environments and need textured scenes to achieve satisfactory results [18,19]. As an active system, common structured light systems usually project a pattern onto the object with a projector to reconstruct [20]. The larger illumination volume and the projection light wavelength diversity lead to larger absorption and scattering coefficients. In underwater environments, laser-based structured light systems may be equipped with a different wavelength laser for the low absorption and scattering coefficients [21]. High brightness is generated with small power to improve the identification accuracy. Due to the small coverage area of a single laser stripe, a motion generator is often used to carry the laser to perform a scan. Such institutions usually exercise large size and power consumption [22,23].
The laser line scan (LLS) system was first used in [24] to reduce the backscattering. Nowadays, LLS systems have been used in various research fields such as underwater range finding [25], 3D reconstruction [26,27], and guidance of a robot in real time [28,29]. The laser line scan is performed with a handheld device [30], an electric motor [31], or a manipulator mounted on the robot [32,33]. There are also some commercial solutions available for 3D data gathering [34][35][36][37]. These systems can achieve high-resolution results with the precise control of the laser line movement, and they are more efficient than single laser line systems. However, the systems should be kept still while the laser line moves. The range of these systems does not exceed 3 m, even in clear water, normally because of the effects of absorption and scattering [38].
Our main motivation to develop this sensor was to provide visual guidance for an underwater intervention task with higher accuracy. This requires that the sensor can accurately measure the geometry information of the operation target, including shape, size, position, etc. The underwater vehicle-manipulator system (UVMS) is a typical platform for underwater intervention. Nowadays, few UVMSs can be considered to be able to perform autonomous manipulation. The underwater vehicle named SAUVIM (Semi Autonomous Underwater Vehicle for Intervention Mission, University of Hawaii) [3] hooked a cable under the guidance of a marker in the oceanic environment. A monocular vision system is used to detect the cable. Although the experiment focused on the integrity of the system, a monocular vision system is too simple to guide the robot to perform a more precise operation. The GIRONA500 [32] is an autonomous underwater vehicle developed in the university of Girona. It completed the reconstruction and grasping process on an amphora with a LLS mounted on the manipulator. The laser line swept across the object's surface with the motion of the manipulator. The accuracy and resolution of the system were limited by the motion control accuracy of the manipulator. A LLS with a motion generator will be available as an improvement. Due to the sensor volume and consumption requirements of UVMSs and other underwater platforms, the motion generator should be small and efficient. In addition, the accuracy of the motion control is an important factor in the impact of 3D reconstruction.
The system presented in this paper used a galvanometer as the motion mechanism. The laser plane direction was changed precisely by the rotation of the galvanometer. The control accuracy of the rotation angle of the galvanometer could reach 8 µrad, and this would provide a guarantee for the measurement accuracy and resolution. The outline dimension of the instrument was 580 mm (length) × 140 mm (width) × 205 mm (height), and the total weight in air was about 11.1 kg. The system operating voltage was 24 VDC, and the maximum power consumption was less than 7 W. The system with a smaller size and lower power consumption was suitable for installation onto an underwater mobile platform to perform underwater 3D reconstruction tasks.
This article is structured as follows: the description of the system construction is given in Section 2, the system calibration in Section 3, the compensation for the refraction caused by air-glass-water interface in Section 4, the experimental setup and results in Section 5, and the discussion and outlook in Section 6.

System Composition and Structure
As seen in Figure 1, a camera and a laser-galvanometer motion module unit were mounted in two independent watertight housings. The housings were made out of an aluminum alloy and were fixed to a base structure to keep its relative position stationary. The information such as the thickness of the glass and the distance between the camera and the sealed glass was accurately measured after the system was processed and installed.
The camera CCD resolution was 752 (H) × 582 (V), the unit pixel size of image plane was 8.6 µm (H) × 8.3 µm (V), and the image resolution was 768 × 576. The galvanometer could be controlled to rotate in the range of ±20 by the voltage signal which ranges from −10 V to +10 V from a D/A conversion card in the computer.
After reflexed by the galvanometer, the laser plane was projected onto the object. The laser stripe moved with the galvanometer rotating in a certain step angle. The 3D data of the object surface could be obtained based on the computation of the optical information with the triangulation method. The WAT-902B (Watec Incorporated, Kawasaki, Japan) industrial-grade low-illumination analog camera and Computar 1214-MP (CBC Co., Ltd., Tokyo, Japan) megapixel lens produced by Watec were used. The galvanometer was a TS8720, manufactured by Sunny Technology (Beijing, China). The laser was LASIRIS series (ProPhotonix Limited, Salem, UT, USA).
The camera CCD resolution was 752 (H) × 582 (V), the unit pixel size of image plane was 8.6 µm (H) × 8.3 µm (V), and the image resolution was 768 × 576. The galvanometer could be controlled to rotate in the range of ±20 by the voltage signal which ranges from −10 V to +10 V from a D/A conversion card in the computer.
After reflexed by the galvanometer, the laser plane was projected onto the object. The laser stripe moved with the galvanometer rotating in a certain step angle. The 3D data of the object surface could be obtained based on the computation of the optical information with the triangulation method.

System Calibration
The coordinate systems of the integrated system were set up as shown in Figure 2. The xg axis is upward along the rotating axis of the galvanometer, og is the intersection point of the xg axis and the o-yz plane of the camera coordinate system, and the yg axis is outward perpendicular to the xg axis from og in the exiting laser plane when the galvanometer control voltage is U0. The galvanometer rotates around the xg axis, and the rotating angle could be controlled by the input voltage. In order to perform auto-scanning, the camera internal parameters and the transformation relation between the camera and the galvanometer were calibrated on land. The refraction caused by the air-glass-water interface was compensated when performing the underwater measurement.

System Calibration
The coordinate systems of the integrated system were set up as shown in Figure 2. The x g axis is upward along the rotating axis of the galvanometer, o g is the intersection point of the x g axis and the o-yz plane of the camera coordinate system, and the y g axis is outward perpendicular to the x g axis from o g in the exiting laser plane when the galvanometer control voltage is U 0 . The galvanometer rotates around the x g axis, and the rotating angle could be controlled by the input voltage. In order to perform auto-scanning, the camera internal parameters and the transformation relation between the camera and the galvanometer were calibrated on land. The refraction caused by the air-glass-water interface was compensated when performing the underwater measurement. The WAT-902B (Watec Incorporated, Kawasaki, Japan) industrial-grade low-illumination analog camera and Computar 1214-MP (CBC Co., Ltd., Tokyo, Japan) megapixel lens produced by Watec were used. The galvanometer was a TS8720, manufactured by Sunny Technology (Beijing, China). The laser was LASIRIS series (ProPhotonix Limited, Salem, UT, USA).
The camera CCD resolution was 752 (H) × 582 (V), the unit pixel size of image plane was 8.6 µm (H) × 8.3 µm (V), and the image resolution was 768 × 576. The galvanometer could be controlled to rotate in the range of ±20 by the voltage signal which ranges from −10 V to +10 V from a D/A conversion card in the computer.
After reflexed by the galvanometer, the laser plane was projected onto the object. The laser stripe moved with the galvanometer rotating in a certain step angle. The 3D data of the object surface could be obtained based on the computation of the optical information with the triangulation method.

System Calibration
The coordinate systems of the integrated system were set up as shown in Figure 2. The xg axis is upward along the rotating axis of the galvanometer, og is the intersection point of the xg axis and the o-yz plane of the camera coordinate system, and the yg axis is outward perpendicular to the xg axis from og in the exiting laser plane when the galvanometer control voltage is U0. The galvanometer rotates around the xg axis, and the rotating angle could be controlled by the input voltage. In order to perform auto-scanning, the camera internal parameters and the transformation relation between the camera and the galvanometer were calibrated on land. The refraction caused by the air-glass-water interface was compensated when performing the underwater measurement. Calibration was performed with a planar checkerboard target. As seen in Figure 3, the calibration is completed by the following steps: Calibration was performed with a planar checkerboard target. As seen in Figure 3, the calibration is completed by the following steps: 1.
The target was placed in the measurement range to obtain a target image. Reasonable camera parameters such as gain and contrast are set to obtain the corresponding laser stripe image so that only the strongest laser spots were captured as saturated pixels. As the number of the points in the black squares has been already sufficient for fitting laser lines, the other points in the white squares could be ignored. This target image, together with the images obtained in the next two steps, were used to calibrate the camera internal parameters including the radial and decentering distortion parameters with the Zhang method [39]. The laser stripe image at the same position were used to calculate the coordinates in the camera coordinate system of the laser points with the rotation matrix and translation matrix, which were obtained when calibrating the camera internal parameters [40].

2.
Keeping the laser plane emission angle constant, the position and the orientation of the target were changed multiple times in the view field of the system.
Step 1 was then repeated. All laser spots obtained hitherto belonged to one laser plane, and these spots were used to fit the laser plane equations expressed in the camera coordinate system. 3.
Laser plane emission angle was changed with the rotation of the galvanometer. Steps 1 and 2 were then repeated. Then, we obtained several different laser plane equations that could be used to calculate the galvanometer rotating axis equation. 1. The target was placed in the measurement range to obtain a target image. Reasonable camera parameters such as gain and contrast are set to obtain the corresponding laser stripe image so that only the strongest laser spots were captured as saturated pixels. As the number of the points in the black squares has been already sufficient for fitting laser lines, the other points in the white squares could be ignored. This target image, together with the images obtained in the next two steps, were used to calibrate the camera internal parameters including the radial and decentering distortion parameters with the Zhang method [39]. The laser stripe image at the same position were used to calculate the coordinates in the camera coordinate system of the laser points with the rotation matrix and translation matrix, which were obtained when calibrating the camera internal parameters [40]. 2. Keeping the laser plane emission angle constant, the position and the orientation of the target were changed multiple times in the view field of the system.
Step 1 was then repeated. All laser spots obtained hitherto belonged to one laser plane, and these spots were used to fit the laser plane equations expressed in the camera coordinate system. 3. Laser plane emission angle was changed with the rotation of the galvanometer. Steps 1 and 2 were then repeated. Then, we obtained several different laser plane equations that could be used to calculate the galvanometer rotating axis equation.  The camera internal parameters were calibrated with the target images, and the transformation matrix between camera and galvanometer coordinates was calculated with the laser stripe images. The world coordinate system was set up as shown in Figure 4 when the camera internal parameters were calculated, and this coordinate system is a right-handed system. According to the perspective projection principle, the relation between image plane coordinates and the world coordinates can be expressed as follows: fN x r 1 +r 7 u 0 fN x r 2 +r 8 u 0 fN x r 3 +r 9 u 0 fN y r 4 +r 7 v 0 fN y r 5 +r 8 v 0 fN y r 6 +r 9 v 0 r 7 r 8 r 9 where P (xw,yw,zw) in the world coordinate system images on the image plane is Pu (u,v). The camera internal parameters, including focal length f, the principal point coordinate (u0,v0), rotation matrix elements r1 to r9, and translation matrix elements tx, ty, tz. Nx, and Ny, were the number of pixels corresponding to the unit length on the image plane, respectively, and they are constants. These camera internal parameters and distortion parameters could be calculated using the Zhang calibration method. The camera internal parameters were calibrated with the target images, and the transformation matrix between camera and galvanometer coordinates was calculated with the laser stripe images. The world coordinate system was set up as shown in Figure 4 when the camera internal parameters were calculated, and this coordinate system is a right-handed system. According to the perspective projection principle, the relation between image plane coordinates and the world coordinates can be expressed as follows: fN x r 1 + r 7 u 0 fN x r 2 + r 8 u 0 fN x r 3 + r 9 u 0 fN x t x + t z u 0 fN y r 4 + r 7 v 0 fN y r 5 + r 8 v 0 fN y r 6 + r 9 v 0 fN y t y + t z v 0 r 7 r 8 where P (x w ,y w ,z w ) in the world coordinate system images on the image plane is P u (u,v). The camera internal parameters, including focal length f, the principal point coordinate (u 0 ,v 0 ), rotation matrix elements r 1 to r 9 , and translation matrix elements t x , t y , t z . N x , and N y , were the number of pixels corresponding to the unit length on the image plane, respectively, and they are constants. These camera internal parameters and distortion parameters could be calculated using the Zhang calibration method. The laser plane was projected onto the target at different positions and orientations. The transformation relation between the camera coordinate system and the galvanometer coordinate system could be solved with the homography constraints. According to the definition of the world coordinate system shown in Figure 4, all laser points were on the target plane, so zw = 0, and Equation (1) could be rewritten as Equation (2). The parameter matrix became a square matrix, so we could calculate the world coordinates with the known image plane coordinates.
fN x r 1 +r 7 u 0 fN x r 2 +r 8 u 0 fN x t x +t z u 0 fN y r 4 +r 7 v 0 fN y r 5 +r 8 v 0 fN y t y +t z v 0 r 7 According to the rigid transformation relationship between the Euclidean coordinate systems, the transformation relationship between the camera coordinates and the world coordinates could be expressed as below: ] [ The transformation matrices between the camera coordinate system and the world coordinate system when the position of the target was changed was obtained after calibrating the camera internal parameters. The coordinates of the laser points in the camera coordinate system could be obtained by solving Equations (2) and (3). All of the points in the same laser plane were used to solve the laser plane equation. This equation can be written as follows: Ideally, all light planes intersect in one line-the xg axis. Due to the error caused by machining and assembly, the galvanometer rotating axis equation was optimized. The xg axis equation in the camera coordinate system was defined as where (a,b,c) is the direction vector of xg axis, (x0,y0,z0) is one point on the xg axis. (x0,y0,z0) could be obtained by fitting all laser planes with the least square method. The normal vector of laser plane was perpendicular to the direction vector of the xg axis according to the definition of the galvanometer coordinate system. Thus, the optimization function was defined with the dot product of the two vectors as the optimization goal. The laser plane was projected onto the target at different positions and orientations. The transformation relation between the camera coordinate system and the galvanometer coordinate system could be solved with the homography constraints. According to the definition of the world coordinate system shown in Figure 4, all laser points were on the target plane, so z w = 0, and Equation (1) could be rewritten as Equation (2). The parameter matrix became a square matrix, so we could calculate the world coordinates with the known image plane coordinates.
According to the rigid transformation relationship between the Euclidean coordinate systems, the transformation relationship between the camera coordinates and the world coordinates could be expressed as below: r 1 r 2 r 3 r 4 r 5 r 6 r 7 r 8 r 9 The transformation matrices between the camera coordinate system and the world coordinate system when the position of the target was changed was obtained after calibrating the camera internal parameters. The coordinates of the laser points in the camera coordinate system could be obtained by solving Equations (2) and (3). All of the points in the same laser plane were used to solve the laser plane equation. This equation can be written as follows: Ideally, all light planes intersect in one line-the x g axis. Due to the error caused by machining and assembly, the galvanometer rotating axis equation was optimized. The x g axis equation in the camera coordinate system was defined as where (a,b,c) is the direction vector of x g axis, (x 0 ,y 0 ,z 0 ) is one point on the x g axis. (x 0 ,y 0 ,z 0 ) could be obtained by fitting all laser planes with the least square method. The normal vector of laser plane was perpendicular to the direction vector of the x g axis according to the definition of the galvanometer coordinate system. Thus, the optimization function was defined with the dot product of the two vectors as the optimization goal.
where (j i ,k i ,l i ) is the normal vector of the number i laser plane. F is optimized with the direction vector of the intersection of any two laser planes as the initial value to calculate the direction vector of the x g axis. The direction vector of the z g axis can be calculated with the galvanometer control voltage. The direction vector of y g axis can be calculated with the direction vectors of x g and y g axis. The galvanometer coordinate system origin expression in camera coordinate system is 0, y 0 − b a x 0 , z 0 − b a x 0 . The transformation relation between the camera coordinates and the galvanometer coordinates can be rewritten as Equation (7): r g1 r g2 r g3 r g4 r g5 r g6 r g7 r g8 r g9  7) where M = [r g1 . . . r g9 ,t gx ,t gy ,t gz ] T . The galvanometer coordinate origin coordinates and the unit vectors of the three axes in Equation (7) were replaced to obtain the parameters matrix M.
According to the pinhole imaging model, we could obtain Equation (8).
The galvanometer coordinates of the object could be obtained with Equations (4), (7) and (8).

Compensation for the Refraction Caused by Air-Glass-Water Interface
Refraction caused by the air-glass-water interface results in high distortion on images when performing underwater measurement. Therefore, it was necessary to carry out refraction compensation for underwater measurements after calibration.
As shown in Figure 5, the incident laser projects onto the underwater object after reflecting at the medium conversion interface. According to Snell's Law, Equation (9) could be obtained: n a sinθ 1 = n g sinθ 2 n g sinθ 2 = n w sinθ 3 .
In this formula, θ 1 could be calculated by the galvanometer deflection angle. n a , n g , and n w are the refractive index in air, glass, and water, respectively. h g and h w are the distance from the rotating axis of the galvanometer to the sealed glass and the thickness of the glass, and they are known values. The coordinates of point J could be calculated via triangulation. The equation of the laser plane in air after reflexed by the galvanometer was then obtained. We then calculated the normal vector of the laser plane in water after refraction with the original normal vector and the coordinates of point J.
The underwater point P images on the camera image plane as point Q. If there were no air-glass-water interface refraction, the ideal imaging point would have been Q'. The relationship between the image point Q and Q' image coordinates could be written as Equation (10): The k values of the different points on the image plane were different. According to the geometric relationship seen in Figure 5, we could obtain Equation (11) { where the focal length of the camera f is obtained in the calibration process, and the image plane coordinates (u,v) is known. Substituting Equation (12) into Equation (11), we get Equation (13): Supposing that hc << z, we can get a simplified expression for k: We could calculate the image plane coordinates of Q' by triangulation with Equations (10) and (14). The image plane coordinates of Q' were substituted into the equation of the laser plane after reflexed. Together with the measurement model on land, the 3D coordinates of the point P were obtained.

Experiments and Results
The experimental set-up in this article focused on the measurement feasibility and accuracy of the system. The system was deployed in a 1.5 m (length) × 0.9 m (width) × 0.9 m (height) stainless steel water tank. One side of the water tank was equipped with a 600 mm (width) × 600 mm (height) × 8 mm (thickness) glass window which made it convenient to observe.
In this study, a ball as shown in Figure 6a was measured at different positions in the tank, as shown in Figure 7. The radius was 20.0175 mm, and the sphericity error was 0.0056 mm. The 3D information of the ball was obtained by fitting the point cloud with the commercial software NX Imageware Version 13.2 (Siemens PLM Software, Plano, America). The latest version of the software can be found at the company website [41]. The fitted radius value was compared with the actual value to evaluate the accuracy. The collected scatter points were used to analyze the measurement error distribution and stability. A three-ball system as seen in Figure 6b was used to assess the The k values of the different points on the image plane were different. According to the geometric relationship seen in Figure 5, we could obtain Equation (11): where the focal length of the camera f is obtained in the calibration process, and the image plane coordinates (u,v) is known. Substituting Equation (12) into Equation (11), we get Equation (13): Supposing that h c << z, we can get a simplified expression for k: We could calculate the image plane coordinates of Q' by triangulation with Equations (10) and (14). The image plane coordinates of Q' were substituted into the equation of the laser plane after reflexed. Together with the measurement model on land, the 3D coordinates of the point P were obtained.

Experiments and Results
The experimental set-up in this article focused on the measurement feasibility and accuracy of the system. The system was deployed in a 1.5 m (length) × 0.9 m (width) × 0.9 m (height) stainless steel water tank. One side of the water tank was equipped with a 600 mm (width) × 600 mm (height) × 8 mm (thickness) glass window which made it convenient to observe.
In this study, a ball as shown in Figure 6a was measured at different positions in the tank, as shown in Figure 7. The radius was 20.0175 mm, and the sphericity error was 0.0056 mm. The 3D information of the ball was obtained by fitting the point cloud with the commercial software NX Imageware Version 13.2 (Siemens PLM Software, Plano, America). The latest version of the software can be found at the company website [41]. The fitted radius value was compared with the actual value to evaluate the accuracy. The collected scatter points were used to analyze the measurement error distribution and stability. A three-ball system as seen in Figure 6b was used to assess the spatial error in the measurement field. A sealing cover of an underwater instrument was used to demonstrate the system's ability to perform 3D reconstruction for general objects.
Sensors 2016, 16, 1534 8 of 14 spatial error in the measurement field. A sealing cover of an underwater instrument was used to demonstrate the system's ability to perform 3D reconstruction for general objects.
(a) (b)  The zg coordinates of the sphere center in the galvanometer coordinate system were along the system measurement depth direction. Thus, the zg coordinate value of the ball represented the distance from the sphere center to the system. The ball was measured 10 times. As seen in Table 1, the zg coordinate values of the sphere center in the 10 measurements ranged from 667.2722 to 1067.269. The number of points measured on the ball surface was reduced from 3635 to 1176 with increasing distance, and the resolution was high. Figure 8 shows the errors between the standard radius and the fitted radii corresponding to the 10 positions. They were distributed from 0.0619 mm to 0.2537 mm. The errors became small and stable as the distance increased. This is because we assume hc << z when compensating the interface refraction. Therefore, the error caused by the assumption became small when the z value became large. In experiments, the distance between the camera optical center and the glass surface was about 10 mm, and the zg values of the ball ranged approximately from 667 mm to 1067 mm. spatial error in the measurement field. A sealing cover of an underwater instrument was used to demonstrate the system's ability to perform 3D reconstruction for general objects.
(a) (b)  The zg coordinates of the sphere center in the galvanometer coordinate system were along the system measurement depth direction. Thus, the zg coordinate value of the ball represented the distance from the sphere center to the system. The ball was measured 10 times. As seen in Table 1, the zg coordinate values of the sphere center in the 10 measurements ranged from 667.2722 to 1067.269. The number of points measured on the ball surface was reduced from 3635 to 1176 with increasing distance, and the resolution was high. Figure 8 shows the errors between the standard radius and the fitted radii corresponding to the 10 positions. They were distributed from 0.0619 mm to 0.2537 mm. The errors became small and stable as the distance increased. This is because we assume hc << z when compensating the interface refraction. Therefore, the error caused by the assumption became small when the z value became large. In experiments, the distance between the camera optical center and the glass surface was about 10 mm, and the zg values of the ball ranged approximately from 667 mm to 1067 mm. The z g coordinates of the sphere center in the galvanometer coordinate system were along the system measurement depth direction. Thus, the z g coordinate value of the ball represented the distance from the sphere center to the system. The ball was measured 10 times. As seen in Table 1, the z g coordinate values of the sphere center in the 10 measurements ranged from 667.2722 to 1067.269. The number of points measured on the ball surface was reduced from 3635 to 1176 with increasing distance, and the resolution was high. Figure 8 shows the errors between the standard radius and the fitted radii corresponding to the 10 positions. They were distributed from 0.0619 mm to 0.2537 mm. The errors became small and stable as the distance increased. This is because we assume h c << z when compensating the interface refraction. Therefore, the error caused by the assumption became small when the z value became large. In experiments, the distance between the camera optical center and the glass surface was about 10 mm, and the z g values of the ball ranged approximately from 667 mm to 1067 mm.   The maximum distance from the points outside and inside the sphere to the fitted surface corresponding to 10 positions were respectively computed and are shown in Figure 9. They are randomly distributed without a regular trend.  Figure 10 shows the error distribution between all of the scatter points and the fitted sphere surface measured at Position 6. The maximum distance from the points outside and inside the sphere to the fitted surface were 0.3532 mm and 0.4211 mm. The maximum distance from the points outside and inside the sphere to the fitted surface corresponding to 10 positions were respectively computed and are shown in Figure 9. They are randomly distributed without a regular trend.   The maximum distance from the points outside and inside the sphere to the fitted surface corresponding to 10 positions were respectively computed and are shown in Figure 9. They are randomly distributed without a regular trend.    The three-ball system was measured 3 times with different orientations at the positions, which was about 1 m from the laser system. The three balls were marked as A, B, and C as seen in Figure 6b. AB, AC, and BC are the distances between the two corresponding balls' centers. The width of the system's view field at a position 1 m from the system was about 250 mm, and the three-ball system almost occupied the entire image in the experiments. The distances between any two balls were relatively long in the whole measurable volume and could be used to assess the spatial measurement errors. The results are in Table 2. The radius errors were distributed from −0.07 mm to 0.924 mm, and most of the errors were less than 0.5 mm. The maximum distance error value was 1.877 mm, and the most of the values were within 1 mm. The greater distance errors occurred when the distance directions approached the zg axis direction. In addition to the affection of the assumption hc << z on the foregoing, the errors of the processing and assembly parameters such as the distance between the galvanometer and glass also had a greater impact on the measurement error in the depth direction. A sealing cover of an underwater instrument was measured at a distance of about 1 m from the laser system. The outer ring radius of the cover was 78 mm. The galvanometer rotation angle increased from 25.49° to 38.37°, and the rotation step was 0.09°. 36127 points were obtained. As seen in Figure 11b,c, the point cloud was uniformly distributed with high resolution, and the triangular mesh model was smooth and complete. The three-ball system was measured 3 times with different orientations at the positions, which was about 1 m from the laser system. The three balls were marked as A, B, and C as seen in Figure 6b. AB, AC, and BC are the distances between the two corresponding balls' centers. The width of the system's view field at a position 1 m from the system was about 250 mm, and the three-ball system almost occupied the entire image in the experiments. The distances between any two balls were relatively long in the whole measurable volume and could be used to assess the spatial measurement errors. The results are in Table 2. The radius errors were distributed from −0.07 mm to 0.924 mm, and most of the errors were less than 0.5 mm. The maximum distance error value was 1.877 mm, and the most of the values were within 1 mm. The greater distance errors occurred when the distance directions approached the z g axis direction. In addition to the affection of the assumption h c << z on the foregoing, the errors of the processing and assembly parameters such as the distance between the galvanometer and glass also had a greater impact on the measurement error in the depth direction. A sealing cover of an underwater instrument was measured at a distance of about 1 m from the laser system. The outer ring radius of the cover was 78 mm. The galvanometer rotation angle increased from 25.49 • to 38.37 • , and the rotation step was 0.09 • . 36127 points were obtained. As seen in Figure 11b,c, the point cloud was uniformly distributed with high resolution, and the triangular mesh model was smooth and complete. In summary, under ideal laboratory conditions, the presented system was able to perform the 3D reconstruction for a smaller object at different positions with good accuracy. Moreover, the space measurement capability was thoroughly tested and analyzed with a three-ball system. By measuring a given cover, the system was proved to be effective in performing a 3D surface reconstruction with high resolution. In fact, accuracy and resolution were closely related to the working distance. T. Ekkel [42] used a laser line system to perform 3D measurement for welding seams at a closer distance (150 mm) with higher accuracy (35 µ m). In [31], a device with a camera and motorized laser stripe was used to measure a board from 2 m away, and the accuracy was about 1 cm.

Discussion and Outlook
The designed system extends measurement range with a galvanometer. The system can be equipped onto an underwater platform with a smaller size and lower power consumption, as well as a standalone sensor.
The planning of the target positions in the calibration procedure is ingenious. In accordance with the planning, the laser points on the targets of different positions in the unified light plane will be obtained. The calibration is carried out with the coplanar constraint of these points. This greatly simplifies the calibration procedure and improves the efficiency. The rotation and translation matrices between the target and the camera coordinate systems in the calibration process of the camera's internal parameters can be directly used to perform the coordinates conversion of the laser points such that the computation cost is greatly reduced.
As seen in the results, the system has been proved to be effective in clear waters for close range static objects with high accuracy and resolution. The main source of the measuring error is the calibration error, and the following factors will cause the errors when performing actual measurement.


System machining and assembly In this paper, we assume that the galvanometer rotating axis should completely coincide with the line intersected by the laser plane and the mirror of galvanometer. Assembly error will affect the accuracy of the measurement. The effect is reduced by the virtual axis with the optimization algorithm to improve the accuracy in the actual operation. In addition, the other machining and assembly parameters can also lead to the calculation error of the triangulation.  Parameters of the camera and laser An external environment with a different light will cause the contrast and definition difference of the image. The camera gain, offset, and contrast parameters as well as the laser intensity should be adjusted accordingly to improve optical quality so as to improve the accuracy. The results are stable in dark environments.  The angle between light plane and spherical surface In summary, under ideal laboratory conditions, the presented system was able to perform the 3D reconstruction for a smaller object at different positions with good accuracy. Moreover, the space measurement capability was thoroughly tested and analyzed with a three-ball system. By measuring a given cover, the system was proved to be effective in performing a 3D surface reconstruction with high resolution. In fact, accuracy and resolution were closely related to the working distance. T. Ekkel [42] used a laser line system to perform 3D measurement for welding seams at a closer distance (150 mm) with higher accuracy (35 µm). In [31], a device with a camera and motorized laser stripe was used to measure a board from 2 m away, and the accuracy was about 1 cm.

Discussion and Outlook
The designed system extends measurement range with a galvanometer. The system can be equipped onto an underwater platform with a smaller size and lower power consumption, as well as a standalone sensor.
The planning of the target positions in the calibration procedure is ingenious. In accordance with the planning, the laser points on the targets of different positions in the unified light plane will be obtained. The calibration is carried out with the coplanar constraint of these points. This greatly simplifies the calibration procedure and improves the efficiency. The rotation and translation matrices between the target and the camera coordinate systems in the calibration process of the camera's internal parameters can be directly used to perform the coordinates conversion of the laser points such that the computation cost is greatly reduced.
As seen in the results, the system has been proved to be effective in clear waters for close range static objects with high accuracy and resolution. The main source of the measuring error is the calibration error, and the following factors will cause the errors when performing actual measurement.

•
System machining and assemblyIn this paper, we assume that the galvanometer rotating axis should completely coincide with the line intersected by the laser plane and the mirror of galvanometer. Assembly error will affect the accuracy of the measurement. The effect is reduced by the virtual axis with the optimization algorithm to improve the accuracy in the actual operation.
In addition, the other machining and assembly parameters can also lead to the calculation error of the triangulation.

•
Parameters of the camera and laserAn external environment with a different light will cause the contrast and definition difference of the image. The camera gain, offset, and contrast parameters as well as the laser intensity should be adjusted accordingly to improve optical quality so as to improve the accuracy. The results are stable in dark environments.

•
The angle between light plane and spherical surfaceWhen the angle is small, the width of the light strip formed by the laser line and spherical intersecting becomes large and the length becomes short. All of the above have a great influence on the extraction of the light stripe center.
The results demonstrate the accuracy under ideal conditions. In application, measurement results will be affected by environmental factors such as turbidity, illumination, salinity, current, etc. All of these factors should be considered in future experimental settings. More realistic experiments in practical situations (i.e., sea water conditions) will comprise our future work. Comparisons between measurements with different levels of turbidity and illumination will be performed to analyze the influence on the accuracy and robustness. In general, the effects caused by turbidity is acceptable [27]. Light scattering is increased and the image definition is degraded. A larger power laser may be a solution.
At present, the system in this paper can perform underwater scanning and obtain a 3D point cloud. All radii and distance data in the experiments were obtained with commercial software fitting. An algorithm that can automatically separate rule shape objects from the view field point cloud and perform the surface shape and fitting is under development and experimental testing. The algorithm focus on general objects with irregular shapes will also be considered.