Expand this Topic clickable element to expand a topic
Skip to content
Optica Publishing Group

High-accuracy calibration of line-structured light vision sensors using a plane mirror

Open Access Open Access

Abstract

A high-accuracy calibration technique using a white paper and a front coating plane mirror is proposed in this paper for line-structured light vision sensors. This method shows advantages in two aspects. First, a white paper can gain a very high-quality light stripe due to its approximate ideal diffuse Lambertian sheet, which overcomes the problems associated with the strong reflecting light and serious burrs of the light stripe on conventional rigid targets. Second, based on a front coating plane mirror with lithographic feature points, we can obtain a bilateral symmetric structure similar to a virtual binocular stereo vision to recover the 3D coordinates of the light stripe centers on white paper with high accuracy. Front coating guarantees the coplanarity with the lithographic feature points and avoids imaging distortion caused by refraction during back coating. Therefore, front coating can be used to obtain high accuracy structural parameters of the virtual binocular stereo vision sensors. Meanwhile, for the light stripe and its image in the plane mirror are auto-epipolar with all the epipolar lines arranged in parallel. These lines intersect at a vanishing point in the camera image, and this epipolar constraint is used to complete the matching of the light stripe centers without the need for the camera parameters. Experiments are conducted to demonstrate the performance of the proposed method.

© 2019 Optical Society of America under the terms of the OSA Open Access Publishing Agreement

1. Introduction

Line-structured light vision sensors, given their high accuracy, rapid speed, and non-contact, have been widely applied in industrial on-line measurement [16]. These sensors usually comprise a camera for capturing the scene image and a line laser for projecting a light plane. The key to obtaining an accurate 3D measurement is to precisely calibrate both the camera parameters and the light plane equation in the camera coordinate frame, which is one of the most important technique in structured light vision measurement.

Many calibration techniques for line-structured light vision sensors have been proposed over the past three decades, and can be divided into two main categories according to how they obtain the 3D coordinates of the feature points (also known as calibration points) on the light plane. One is with the assistance of apparatus, such as a laser displacement sensor or robotic arms, that is hard to operate and unsuitable for on-site calibration. The other obtains the coordinates of calibration points using targets with a relative high accuracy geometric constraint, which is widely used in on-site calibration due to easy setup and simple operation. However, these techniques face several drawbacks that prevent them from achieving a higher accurate calibration.

On-site calibration usually requires high-accuracy targets with certain patterns and shapes, such as a grid plane target with high-precision feature points or a standard ball target with excellent sphericity. These targets are commonly made of metal or ceramic instead of glass, which is transparent and unsuitable for generating good laser light stripes. When the laser projects a certain light pattern on the surface of the target, to guarantee a highly accurate calibration, both the feature points and laser light stripes should be imaged by using a high-quality camera. However, given that the target surface is usually precisely machined with excellent smoothness, serious burrs and non-uniformity of light intensity are almost inevitable in light stripes due to the uncertain surface reflection. To obtain better laser light stripes, the targets usually undergo a special surface preparation such as surface oxidation or pad pasting, which not only reduces the target machining accuracy, but is also unable to eliminate the burrs and non-uniformity in the laser light stripes. For example, we often obtain a discontinuous light stripe similar to a mosaic given that the oxidized target surface absorbs much more laser light. All these factors directly affect the calibration accuracy of the light plane.

To solve these problems, we use a specially designed front coating plane mirror with micrometer accuracy feature points and a piece of common white paper to realize a high-accuracy calibration of structured light vision sensor. Here, the camera forms a virtual binocular vision system with high measurement accuracy, while the white paper can generate laser light stripes with very high quality. The main contributions of this paper are summarized as follows:

  • • By using a common white paper that is close to the ideal diffuse Lambertian sheet, the serious burrs of the light stripe have been effectively reduced, the light intensity uniformity has been improved, thereby guaranteeing a high-accuracy extraction of the centers of the light stripe image. Meanwhile, the virtual binocular vision system based on a specially designed front coating plane glass mirror can generate a 3D reconstruction of the light stripe image centers with very high precision.
  • • Based on the vanishing point constraint between the coplanar points and their corresponding mirrored points, a fast and good matching of the light stripe centers is obtained only by the image itself without needing the fundamental matrix of the virtual binocular system used in the epipolar-constraint-based methods.
  • • An efficient calibration accuracy evaluation of the light plane can be conducted, based only on the calibration image itself, which can verify the 3D reconstruction accuracy of each calibration point of the light stripe image centers.
This paper is organized as follows. Section 2 introduces the related works on the calibration of structured light vision sensors. Section 3 presents our proposed calibration algorithm and accuracy evaluation method. Section 4 presents the real calibration results of the obtained by our proposed method for light plane parameters and compares these results comparing with those obtained by the LED plane target based method. Section 5 presents the analysis of different surface materials for extracting light stripe centers. Section 6 concludes our work.

2. Related works

Quite a few researches have been conducted for the calibration of structured light vision sensors, which can be classified into three categories, namely 1D line target methods [7,8], 2D plane target methods [914] and 3D cubic target methods [1522], as shown in Fig. 1.

 figure: Fig. 1.

Fig. 1. Common targets for calibrating structured light vision sensors.

Download Full Size | PDF

Wei [8] proposed a calibration method by randomly moving a simple 1D line target, and thus the world coordinates of the crossing point on the light stripe can be obtained based on cross-ratio invariant formed by the known collinear points on the target, but further improvement of its calibration accuracy is limited due to the limited known point machining accuracy along with their corresponding image points extraction accuracy.

Zhou [10] proposed a 2D plane target based method, that determines the calibration points on the light plane are also determined by using cross-ratio invariant and by moving the target at least to two different positions. Sun [12] also utilized the same target, but the coordinates of the calibration points on the structured light plane are obtained according to the homography transformation between the target planes and the image plane. However, the calibration accuracy of this approach still unavoidably suffers from the non-uniformity of light stripe intensity. Wei [13] utilized the principle of vanishing points and vanishing lines to calculate the light plane parameters by randomly moving the 2D parallel lines target.

Huynh [15] proposed earlier a method based on the invariance of cross-ratio using 3D target consisting of two or three surfaces orthogonal to each other. Meanwhile, Liu [17] proposed a movable parallel cylinder target calibration method, which after determining the relationship between the two light stripe ellipses on the cylinders according to the perspective projection transformation, solves the light plane equation based on the constraint that the minor axis of the light stripe ellipse is equal to the diameter of the cylinder. Liu [21] proposed another movable single ball target based method where the equations of the spherical surface of the ball target and the conical surface decided by the imaging of the laser stripe are used to solve the light plane equation.

All these methods depend on a high machining accuracy target usually made by mental to promise a good calibration result, but unfortunately, achieving a high machining accuracy and good quality light stripe simultaneously is difficult to accomplish. In [21], the researchers utilize two plane targets, of which one target with multiple slits is set perpendicular to the other ordinary target to compute the relative pose between the laser plane coordinate frame and the camera coordinate frame. However, this method suffers from the high light intensity uniformity on the glass and faces difficulties in image processing due to discontinuous light stripe, which also exists in the method proposed by Liu [23]. The proposed method in [23] utilizes the coplanar properties between a glass plane target with micrometer machining accuracy and a standard gauge block projected by the laser.

We then check if the above mentioned problems can be effectively addressed. Our research results in recent years show that solving these problems is completely realistic, whereas the specialty of our proposed method lies in its adoption of a front coating plane mirror combined with a common white paper. In fact, a plane mirror has been used by many researchers in different 3D reconstruction methods [2440].

Z.Y. Zhang [24] proposed earlier the plane mirror based 3D reconstruction approach by forming a virtual bilaterally symmetric structure of the camera. Although this approach could obtain the location and orientation of the plane mirror, but no detailed descriptions have been given. Kumar [37] used mirrors to overcome the difficulty of calibrating non-overlapping cameras. By adjusting the position and orientation of the mirror, each camera can observe the common plane target in the mirror. Z.Y. Xu [38] also used a plane mirror to realize multi-camera calibration without an overlapping view by using the intermediary coordinates uniform method. However, when the measurement system is complex, it is hard to ensure that every camera can clearly observe the fixed target by adjusting the mirror, and the target can be easily occluded by the objects in the measurement field. Moreover, the scene depth presents a severe problem given that the variability in depth only increases the difficulty of matching.

D. Lanman [40] presents a new system for rapidly acquiring complete 3D surface models using a single orthographic structured light projector that consist of a Fresnel lens and a commercial DLP projector, a pair of plane mirrors, and one synchronized cameras. A single Gray code sequence is used to encode a set of vertically-spaced light planes within the scanning volume, and five views of the illuminated object are obtained from a single image of the plane mirrors located behind it. The dense 3D point cloud spanning the entire object surface are recovered from each real and virtual camera using traditional structured light. X. H. Ying [36] devoted to recover both the intrinsic and extrinsic parameters of the camera using two plane mirrors with a known angle, which generates a constraint of infinite mutual reflections of the object silhouettes. They use a virtual multi-view system consisting of multiple mirrors to restore the three-dimensional structure of an object using one image. these methods overcome a major hurdle to achieving full direction reconstructions by eliminating the need for merging multiple scans or multiplexing several projectors.

To sum up, till now, we have not seen any publications using plane mirror to obtain higher calibration accuracy of line-structured light sensor with more convenient operation.

3. Algorithm principle

3.1 Measurement model of the structured light vision sensor

The structured light vision sensor is mainly composed of a camera and a structured light projector. The structured light, which may be classified into point structured light, line structured light, and phase-coded structured light among others, is the active structural information projected onto the surface of the measured object through the projector. After single or multiple cameras obtain the structured light image, the light stripe is identified and extracted, and the 3D reconstruction is realized by using the triangle principle. The principle of structured light measurement is shown in Fig. 2.

 figure: Fig. 2.

Fig. 2. Measurement principle of the structured light vision sensor. (a)Encoding structured light vision sensor. (b)Line-structured light vision sensor.

Download Full Size | PDF

The encoding structured light vision sensor is widely used in the 3D reconstruction of complex surface objects. The encoding method of projection grating patterns is key technologies that affect the accuracy of 3D measurements. The main purpose of encoding is to solve the one-to-one correspondence between the projected grating and the deformed grating produced by the modulation of the object in the obtained image. However, in line structured light measurement, the center of the light stripe can be easily extracted in complex light environments due to its strong light stripe energy, which is widely used in the automatic measurement. How to calibrate the sensor parameter with high precision is the main research question of line-structured light measurement.

Line-structured light calibration is mainly performed to obtain the 3D coordinates of the light stripe center points at several positions in the camera coordinate frame and to calculate the light plane equation by using the fitting method. The 3D coordinates of the light stripe center points can be obtained by using a target with geometric constraints or a high-precision 3D coordinate acquisition device.

The measurement model of the line-structured light vision sensor is shown in Fig. 2(b). In this model, $O_{C}X_{C}Y_{C}Z_{C}$ represents the real camera coordinate frame, $o_{c}x_{c}y_{c}$ represents the image coordinate in millimeters, and $ouv$ represents the image coordinate frame in pixels. Let $\mathbf {P}_{C}$ be an object point lying on the light plane $\pi _{C}$, and let $p$ denote an ideal projection point on the image plane. According to the perspective projection model, we obtain the following equation between the point $\mathbf {P}_{C}\left (X_{C},Y_{C},Z_{C} \right )^{T}$ in the camera coordinate frame and its image coordinate $p\left (u,\;v \right )^{T}$:

$$\!s\!\left[\!{\begin{array}{{c}} {\textrm u}\\ {\textrm v}\\ {1} \end{array}}\!\right] = {\textbf{K}_\textbf{C}}\left[ {{\textbf{I}_{3 \times 3}},{\textbf{0}_{3 \times 1}}} \right]\left[ {\begin{array}{{c}} {{{\textrm X}_\textrm{C}}}\\ {{{\textrm Y}_\textrm{C}}}\\ {{{\textrm Z}_\textrm{C}}}\\ 1 \end{array}} \right]\!,{\textbf{K}_V} = \left[ {\begin{array}{{ccc}} {{f_x}} & \gamma & {u_0}\\ 0 & {{f_y}} & {{v_0}}\\ 0 & 0 & 1 \end{array}} \right].$$
The light plane equation $\pi _{C}$ can be written as
$$a{X_C} + b{Y_C} + c{Z_C} + d = 0,$$
where ${\textbf{K}_C}$ is an intrinsic parameter matrix of the real camera obtained by calibration. ${f_x}$ and ${f_y}$ denote the effective focal length in the $x$ and $y$ axes of the image, respectively, $({u_0},{v_0})$ is the principle point, $\gamma$ is the skew of two image axes, and $s$ is a nonzero scale factor.

If the intrinsic parameter matrix ${\textbf{K}_C}$ and the equation of the light plane ${\pi _C}$ are known, then the 3D coordinates of the measured point ${\textbf{P}_C}$ can be calculated by using Eqs. (1) and (2).

3.2 Measurement model of the virtual binocular stereo vision sensor

As shown in Fig. 3, the real object is reflected by a plane mirror. However, the plane mirror differs from ordinary mirrors. Specifically, in the plane mirror, the metal film is plated on the front surface of the optical glass to form a reflecting surface, and the feature points with checkerboard pattern are lithographed around the front surface. To improve the accuracy of extracting feature points from the obtained image, we installed an LED light source with an adjustable brightness on the back surface of the optics glass.

 figure: Fig. 3.

Fig. 3. The virtual binocular stereo vision measurement principle. The image of a real object in the real camera is equivalent to that the left camera in a binocular stereo vision system, whereas the image of real object in the mirror is equivalent to that the right camera in a binocular stereo vision system.

Download Full Size | PDF

The real and mirrored (virtual) objects in the plane mirror can be simultaneously viewed. This view is equivalent to that obtained by a binocular vision sensor equipped with real and virtual cameras. The virtual camera is the mirrored camera, which is outside of our view. Therefore, the 3D structure of the real object can be recovered by the virtual binocular stereo vision system.

The virtual binocular measurement model is illustrated in Fig. 3 and is formulated as follows:

$$\left\{ \begin{array}{l} {s_1}{{{\bf{\tilde p}}}_c} = {{\bf{K}}_C}\left[ {{{\bf{I}}_{3 \times 3}}\;\;\;{{\bf{0}}_{3 \times 1}}} \right]{{{\bf{\tilde P}}}_C}\\ {s_2}{{{\bf{\tilde p}}}_v} = {{\bf{K}}_V}\left[ {{\bf{R}}_V^C\;\;\;{\bf{t}}_V^C} \right]{{{\bf{\tilde P}}}_C} \end{array}\right. . $$
We consider the real camera coordinate frame ${O_C}{X_C}{Y_C}{Z_C}$ as the world coordinate frame. The object point ${\textbf{P}_C}$ in space and its mirrored point ${\textbf{P}_V}$ are symmetrical to the reflecting surface. ${{{\bf{\tilde P}}}_C}{({X_C},{Y_C},{Z_C},1)^T}$ is the homogeneous world coordinate of the object point ${\textbf{P}_C}$, ${{{\bf{\tilde p}}}_c}{({u_c},{v_c},1)^T}$ is the homogeneous image coordinate of object point ${\textbf{P}_C}$, ${{{\bf{\tilde p}}}_v}{({u_v}, {v_v},1)^T}$ is the homogeneous image coordinate of mirrored point ${\textbf{P}_V}$, ${\textbf{I}_{3 \times 3}}$ is a ${3 \times 3}$ identity matrix, ${\textbf{0}_{3 \times 3}}$ is a ${3 \times 1}$ zero matrix, ${s_1}$ and ${s_2}$ are nonzero scale factors. ${\textbf{K}_C}$ and ${\textbf{K}_V}$ are the intrinsic parameter matrices of the real and virtual cameras, respectively, and $(\textbf{R}_V^C\;\textbf{t}_V^C)$ is the structure parameters of the virtual binocular vision sensor.

3.3 Specific procedures of the proposed calibration method

The proposed calibration method is illustrated in Fig. 4. We use a white paper and a front coating plane mirror $\textbf{M}$ to calibrate the structured light vision sensor that includes a camera $\textbf{C}$ and a laser projector. The white paper is an ordinary and intact printing paper. The light stripe projected on the white paper and its mirrored light stripe in the plane mirror can be simultaneously viewed by a single camera $\textbf{C}$.

 figure: Fig. 4.

Fig. 4. The specific procedures of the proposed calibration method using the virtual binocular measuring principle.

Download Full Size | PDF

The specific procedures of the proposed calibration method are described as follows:

Step 1: Calibration of the virtual binocular stereo vision sensor. The real camera intrinsic parameters ${\textbf{K}_C}$, lens distortion coefficient $\textbf{D}$, and visual camera intrinsic parameters ${\textbf{K}_V}$ are calibrated by a plane feature target using the classical Zhang’s method in [41], the extrinsic parameters $\textbf{R}_V^C,\textbf{t}_V^C$ between the real and virtual cameras are calibrated by using the feature points on the plane mirror.

Step 2: Solving the image vanishing point. We place a white paper or a target with feature points in front of a plane mirror to form a mirror image. We then apply the least square method to solve the intersection point of the line between the feature point on the white paper and the feature point of its mirrored image, which represents the image vanishing point.

Step 3: Acquisition of calibration images with real and virtual light stripes. The real light stripe is projected onto the white paper to form a mirrored light stripe in the plane mirror, that is, the virtual light stripe. The camera then captures the image with both real and virtual light strips and obtains light stripe images with multiple positions by moving the position of the white paper.

Step 4: Extraction of the light stripe image centers. An image containing both real and virtual light stripes can be understood as two identical left and right images in the measurement of binocular stereo vision sensors. We use the Steger method proposed in [42] to extract the center of light stripes from left and right images.

Step 5: Matching the light stripe image centers. A point on the center of a real light stripe is connected to the image vanishing point that has been solved as a matching line. The intersection point between the matching line and the virtual light stripe is the matching point that corresponds to the center of the virtual and real light stripes.

Step 6: Calculation of the light plane equation. The 3D coordinates of the light stripe centers on the white paper are reconstructed by using the proposed virtual binocular measurement model. The light plane equation ($a{X_C} + b{Y_C} + c{Z_C} + d = 0$) can be obtained by fitting the 3D coordinates of several light stripes at different positions on the plane.

3.4 Calibration of virtual binocular stereo vision sensor

3.4.1 Calculation of the structure parameters $(\textbf{R}_V^C\;\textbf{t}_V^C)$

The structure parameters $(\textbf{R}_V^C\;\textbf{t}_V^C)$ can be calculated by using the imaging law of the plane mirror and described in detail in [38]. In Fig. 5, ${O_V}{X_V}{Y_V}{Z_V}$, ${O_m}{X_m}{Y_m}{Z_m}$, and ${O_{mm}}{X_{mm}}{Y_{mm}}{Z_{mm}}$ denote the coordinate frames of the virtual camera, plane mirror, and opposite plane mirror, respectively. $(\textbf{R}_C^m,\textbf{t}_C^m)$ is the rotation matrix and translation vector from the coordinate frame ${O_m}{X_m}{Y_m}{Z_m}$ to ${O_C}{X_C}{Y_C}{Z_C}$, $(\textbf{R}_V^{mm},\textbf{t}_V^{mm})$ is the transformation matrix from the coordinate frame ${O_{mm}}{X_{mm}}{Y_{mm}}{Z_{mm}}$ to ${O_V}{X_V}{Y_V}{Z_V}$, $(\textbf{R}_C^V,\textbf{t}_C^V)$ is the transformation matrix from the coordinate frame ${O_V}{X_V}{Y_V}{Z_V}$ to ${O_C}{X_C}{Y_C}{Z_C}$.

 figure: Fig. 5.

Fig. 5. The coordinate transformation between the virtual and real cameras. The green arrow needs to transform the direction of ${X_V}$ to the right-hand coordinate frame.

Download Full Size | PDF

The transformation matrix $(\textbf{R}_C^m,\textbf{t}_C^m)$ can be obtained by the feature points on the plane mirror and solved by the camera calibration toolbox [42].

Suppose that ${\varphi _{mc}}$, ${\theta _{mc}}$, ${\delta _{mc}}$ are the rotating angles that the plane mirror $\textbf{M}$ rotates around the ${O_C}{X_C}$, ${O_C}{Y_C}$, and ${O_C}{Z_C}$ axes, respectively, and that the positive direction of each angle is counter clockwise along the positive direction of its axis. According to the Euler angles, the rotation matrix and the translation vector $(\textbf{R}_C^m,\textbf{t}_C^m)$ can be expressed as

$$\textbf{R}_C^m \!=\! R\left(\! {{\varphi _{mc}}} \!\right)\!R\left( \!{{\theta _{mc}}} \!\right)\!R\left( \!{{\delta _{mc}}} \!\right) \!=\! \left[ {\begin{array}{{ccc}} {{\!r_1\!}} & {{\!r_2\!}} & {{\!r_3\!}}\\ {{\!r_4\!}} & {{\!r_5\!}} & {{\!r_6\!}}\\ {{\!r_7\!}} & {{\!r_8\!}} & {{\!r_9\!}} \end{array}} \right]\!,\!\textbf{t}_C^m \!=\! \left[ {\begin{array}{{c}} {{\!t_x\!}}\\ {{\!t_y\!}}\\ {{\!t_z\!}} \end{array}} \right].$$
An intermediate coordinate frame ${O_{mm}}{X_{mm}}{Y_{mm}}{Z_{mm}}$ is introduced to establish the relationship between the coordinate frames ${O_V}{X_V}{Y_V}{Z_V}$ and ${O_m}{X_m}{Y_m}{Z_m}$, which is the ${180^ \circ }$ rotating of ${O_m}{Y_m}$ axis of the coordinate frame ${O_m}{X_m}{Y_m}{Z_m}$. Then, the relationship between the coordinate frames ${O_{mm}}{X_{mm}}{Y_{mm}}{Z_{mm}}$ and ${O_m}{X_m}{Y_m}{Z_m}$ are
$$\renewcommand{\arraystretch}{0.9} \begin{array}{l} \left[ {\begin{array}{{c}} {{X_{mm}}}\\ {{Y_{mm}}}\\ {{Z_{mm}}} \end{array}} \right] = \left[ {\begin{array}{{ccc}} {\cos {{180}^ \circ }} & 0 & { - \sin {{180}^ \circ }}\\ 0 & 1 & 0\\ {\sin {{180}^ \circ }} & 0 & {\cos {{180}^ \circ }} \end{array}} \right]\left[ {\begin{array}{{c}} {{X_m}}\\ {{Y_m}}\\ {{Z_m}} \end{array}} \right]=\\ \left[ {\begin{array}{{ccc}} { \!- 1\!} & \!0\! & \!0\!\\ \!0\! & \!1\! & \!0\!\\ \!0\! & \!0\! & {\! - 1\!} \end{array}} \right] \left[ {\begin{array}{{c}} {\!{X_{mm}\!}}\\ {\!{Y_{mm}\!}}\\ {\!{Z_{mm}\!}} \end{array}} \right] \!=\! \textbf{R}_{mm}^m\left[ {\begin{array}{{c}} {\!{X_{mm}\!}}\\ {\!{Y_{mm}\!}}\\ {\!{Z_{mm}\!}} \end{array}} \right]\!,\! \!\textbf{t}_{mm}^m\! \!=\! \!\left[ {\begin{array}{{c}} \!0\!\\ \!0\!\\ \!0\! \end{array}} \right] \end{array}.$$
The transformation matrix $(\textbf{R}_C^m,\textbf{t}_C^m)$ is symmetrical to the plane mirror $\textbf{M}$, which can be used to calculate the transformation matrix $(\textbf{R}_V^{mm},\textbf{t}_V^{mm})$. To facilitate the calculation of the transformation relationship, the virtual camera is set up in the right-hand coordinate frame, which is actually the left-handed coordinate frame due to the imaging law of the plane mirror. The ${O_V}{X_V}$ axis of the virtual camera coordinate frame is opposite to the mirrored left-handed coordinate frame. Therefore, the Euler angle ${\varphi _{mv}}$ is the same as ${\varphi _{mc}}$, whereas the Euler angles ${\varphi _{mv}}$, ${\theta _{mv}}$, and ${\delta _{mv}}$ around the ${O_{mm}}{X_{mm}}$, ${O_{mm}}{Y_{mm}}$, and ${O_{mm}}{Z_{mm}}$ axes can be expressed as
$${\varphi _{mv}} = {\varphi _{mc}},\quad {\theta _{mv}} ={-} {\theta _{mc}},\quad {\delta _{mv}} ={-} {\delta _{mc}}.$$
By introducing Eq. (6) into Eq. (4), the rotation matrix and the translation vector $(\textbf{R}_V^{mm},\textbf{t}_V^{mm})$ can be expressed as
$$\textbf{R}_V^{mm} = \left[ {\begin{array}{{ccc}} {{r_1}} & { - {r_2}} & { - {r_3}}\\ { - {r_4}} & {{r_5}} & {{r_6}}\\ { - {r_7}} & {{r_8}} & {{r_9}} \end{array}} \right],\textbf{t}_V^{mm} = \left[ {\begin{array}{{c}} { - {t_x}}\\ {{t_y}}\\ {{t_z}} \end{array}} \right].$$
The transformation matrix $(\textbf{R}_V^m,\textbf{t}_V^m)$ from the coordinate frames ${O_m}{X_m}{Y_m}{Z_m}$ to ${O_V}{X_V}{Y_V}{Z_V}$ is solved by using Eqs. (5) and (7), which are combined as follows to obtain Eq. (8):
$$\textbf{R}_V^m = \textbf{R}_V^{mm}\textbf{R}_{mm}^m,\quad \textbf{t}_V^m = \textbf{t}_V^{mm}\;.$$
The transformation matrix $(\textbf{R}_V^C\;\textbf{t}_V^C)$ can be solved by using Eqs. (4) and (8), as follows:
$$\left\{ \begin{array}{l} \textbf{R}_V^C = \textbf{R}_V^m\textbf{R}_m^C = \textbf{R}_V^m{\left( {\textbf{R}_V^C} \right)^{ - 1}}\\ \textbf{t}_V^C = \textbf{t}_V^m - \textbf{R}_V^m{\left( {\textbf{R}_C^m} \right)^{ - 1}}\textbf{t}_C^m \end{array} \right..$$

3.4.2 Intrinsic parameters of the virtual camera ${\textbf{K}_V}$

The mirrored image plane of the virtual camera corresponds to the left-hand camera coordinate system, that is, the origin coordinate of the image after being mirrored is in the upper right corner of the image. However, the left and right handed camera coordinate frames cannot be transformed by the rigid body rotation. Therefore, we establish the virtual camera coordinate system as the right-hand coordinate system.

By changing the intrinsic parameters of the camera, we can convert the virtual image coordinates in millimeters and the image coordinates in pixels. The advantage of this method is that the basic matrix of virtual binocular is consistent with that of real binocular. The transform of the image plane is shown in Fig. 6.

 figure: Fig. 6.

Fig. 6. The solving of the virtual camera intrinsic parameters.

Download Full Size | PDF

$({x_c},{y_c})$ is the real image coordinate of any point on the virtual light stripe in millimeters. $({u_c},{v_c})$ and $({u_v},{v_v})$ denote the pixel coordinates of the real and virtual cameras, which can be expressed as

$$\left\{ \begin{array}{l} {u_c} = {{{{x_c}} \mathord{\left/ {\vphantom {{{x_c}} d}} \right. } d}_x} + {u_0}\\ {v_c} = {y_c}/{d_y} + {v_0} \end{array} \right. \Leftrightarrow \left\{ \begin{array}{l} {u_v} = {{{ - {x_c}} \mathord{\left/ {\vphantom {{ - {x_c}} d}} \right. } d}_x} + {u_0}\\ {v_v} = {y_c}/{d_y} + {v_0} \end{array} \right.$$
The virtual intrinsic parameters matrix ${\textbf{K}_V}$ simplifies to
$${\textbf{K}_V} = \left[ {\begin{array}{{ccc}} { - {f_x}} & \gamma & {u_0}\\ 0 & {{f_y}} & {{v_0}}\\ 0 & 0 & 1 \end{array}} \right],$$
where ${d_x}$, and ${d_y}$ are the pixel sizes of the CCD array.

3.5 Extraction of light stripe center points

Many approaches can be used to extract the light stripe center points, such as gray-scale barycenter method, orientation template method, and curve fitting method. All of these methods can reach sub-pixel. In this paper, we extract the light stripe center points in image by using Steger’s method [43] given its strong anti-noise ability.

First, the image is filtered by Gauss filter $g\left ( {x,\;y} \right ) = \frac {1}{{\sqrt {2\pi } \sigma }}{e^{ - \frac {{{x^2} + {y^2}}}{{2{\sigma ^2}}}}}$. Here, the Gauss variance needs to satisfy the following conditions: $\sigma \ge \frac {\omega }{{\sqrt 3 }}$, where $\omega$ represents the cross-sectional width of the light stripe in an image.

Second, we obtain the normal direction of the light stripe by using the Hessain marix $H\left ( {x,\;y} \right ) = \left [ {\begin {array}{{cc}} {{r_{xx}}} & {{r_{xy}}}\\ {{r_{xy}}} & {{r_{yy}}} \end {array}} \right ]$.

Third, we determine the sub-pixel position of the light stripe center points by performing a Taylor expansion in the normal direction. The extraction of the light stripe center points in the image is shown in Fig. 7.

 figure: Fig. 7.

Fig. 7. Extraction of the light stripe center points.

Download Full Size | PDF

Despite its very high accuracy, this algorithm shows a major limitation in terms of the $\sigma$. Specifically, after selecting $\sigma$, a huge change in the width of the light stripe in the image will affect the extraction accuracy of light stripe. Given that ideal diffuse reflector must have the same light stripe width regardless of the camera angle, so the ideal diffuse reflector is considered the most ideal target. In addition, a higher roughness will influence the image clarity of the edge of the light stripe. Therefore, white paper is a good target because of its low roughness (2 um roughness is equivalent to 2 um precision of feature point position of the plane mirror).

3.6 Matching of light stripe center points

Matching algorithms based on the epipolar line constraint have been widely used in binocular measurement systems, especially in matching light stripe image centers without a striking distinction. The matching line (different from the epipolar line) equation can be expressed by the fundamental matrix calculated by the intrinsic parameters and the structure parameters of binocular. To reduce the impact of the calibration errors of the intrinsic and structure parameters on matching accuracy, a matching algorithm based on image vanishing point is proposed, the matching method is shown in Fig. 8 and the relevant details are given as follows.

 figure: Fig. 8.

Fig. 8. Matching of the light stripe center points. (a)Principle diagram of solving of the vanishing point. (b)Real image of solving of the vanishing point. (c)Matching of the light stripe center points.

Download Full Size | PDF

3.6.1 Solving the matching line based on image vanishing point

The connecting line between one point in a 3D space and its corresponding mirrored point in the plane mirror is perpendicular to the mirror plane. All the connecting lines are parallel in 3D space and intersect at one point in the image. This point serves as both the vanishing point and the pole point, and the connecting lines between the image points and the mirrored points serve as matching lines, and this is called auto-epipolar.

We can manually match the chessboard feature points and their mirrored feature points in the obtained image. Given that the extraction error of these feature points is unavoidable, the connecting line between the corresponding points cannot intersect at the same point in the image. Therefore the vanishing point can be solved by using the least square method.

Here, ${\bf{\tilde m}}_C^i = {(u_C^i,v_C^i,1)^T}$ is the homogeneous image coordinate of feature point on the white paper, whereas ${\bf{\tilde m}}_V^i = {(u_V^i,v_V^i,1)^T}$ is the homogeneous image coordinate of the mirrored feature point. The homogeneous representation of the connecting line between $\tilde m_C^i$ and $\tilde m_V^i$ is

$${\bf{l}}_{CV}^i = {\bf{\tilde m}}_C^i \times {\bf{\tilde m}}_V^i.$$
The homogeneous representation of the vanishing point using two different connecting lines is
$${\bf{l}}_v^i = {\bf{l}}_{CV}^i \times {\bf{l}}_{CV}^j\left( {i \ne j} \right).$$
However, given that the above multiple straight lines cannot intersect at the same point, we can solve for the optimal value of the vanishing point by using the following error equation, that is, ideally, the vanishing point is through the straight line $\textbf{l}_{CV}^i$.
$$f\left( v \right) = min\mathop \sum _{i = 1}^n {\left( {{{\left( {\textbf{l}_{CV}^i} \right)}^T}\textbf{v}} \right)^2}.$$
Then, the vanishing point $v = {({u_{van}},{v_{van}},1)^T}$ is solved by the singular value decomposition of the established matrix based on Eq. (14).

The connecting line between every point on the real light stripe centers and the vanishing point is called the matching line, and the homogeneous representation of the matching line through point $(u_C^i,\;v_C^i)$ in the image is

$${\textbf{l}_{ei}} = {(\frac{{{v_{van}} - v_C^i}}{{{v_{van}} - u_C^i}}, - 1,\frac{{{u_{van}}v_C^i - {v_{van}}u_C^i}}{{{v_{van}} - u_C^i}})^T}.$$
The matching line equation can also be solved by the using fundamental matrix as follows:
$$\textbf{F} = \textbf{K}_V^{ - T}\textbf{SR}_V^C\textbf{K}_C^{ - 1},$$
where $\textbf{K}_V^{ - T}$ is the inverse of the transpose matrix of ${\textbf{K}_V}$, $\textbf{K}_C^{ - 1}$ is the inverse matrix of ${\textbf{K}_C}$, $\textbf{R}_V^C$ is the rotation matrix of the structure parameters of the virtual binocular, and $\textbf{S} = {\left [ {\textbf{t}_V^C} \right ]_ \times }$ is the anti-symmetric matrix of $\textbf{t}_V^C$.

The homogeneous representation of the matching line ${\textbf{l}^\prime_{ei}}$ is solved by the fundamental matrix as follows:

$${\textbf{l}^\prime_{ei}} = \textbf{F}{\textbf{p}_i}.$$
The fundamental matrix is determined by 11 parameters, including 5 intrinsic parameters and 6 structure parameters. Therefore, a lower calibration accuracy corresponds to a larger matching error of the two light stripe errors. However, the vanishing point can be easily and accurately solved because it is only determined by two parameters of the image coordinate and only depends on the image itself without the need for calibration parameters.

3.6.2 Sub-pixel matching of the light stripe image centers

The image coordinates of the two light stripe centers are sub-pixels, but the extracted centers of the virtual light stripe are not necessarily on the matching line through the corresponding centers on the real light stripe. Therefore, we use the linear interpolation method to obtain the sub-pixel coordinates of the virtual light centers corresponding to the real light stripe centers.

The two points $(u_v^i,\;v_v^i)$ and $(u_v^{i + 1},\;v_v^{i + 1})$ on the virtual light stripe centers that are closest to the corresponding matching line ${\textbf{l}_{ei}}$ through point $(u_C^i,\;v_C^i)$ can be obtained in turn, and the distances from each point to the matching line is less than one pixel. The homogeneous representation of the connecting line between the two points is

$${\textbf{l}_i} = {(\frac{{v_v^{i + 1} - v_v^i}}{{u_v^{i + 1} - u_v^i}}, - 1,\frac{{u_v^{i + 1}v_v^i - v_v^{i + 1}u_v^i}}{{u_v^{i + 1} - u_v^i}})^T}.$$
The intersection point ${\textbf{p}_i}$ between the matching line ${\textbf{l}_{ei}}$ and connecting line ${\textbf{l}_i}$ in the image is calculated as the sub-pixel matching point of the real light stripe center $(u_c^i,\;v_c^i)$ .
$${\textbf{p}_i} = {\left[ {{\textbf{l}_{ei}}} \right]_ \times }{\textbf{l}_i},$$
where ${\textbf{l}_i}$ is the vector of the connecting line, ${[{\textbf{l}_{ei}}]_ \times }$ is the anti-symmetric matrix of the matching line ${\textbf{l}_{ei}}$ that is solved by the vanishing point $\bf {v}$, and ${\textbf{p}_i}$ is the sub-pixel homogeneous coordinates of the corresponding matching point.

3.7 Method for evaluating the calibration accuracy of the light plane

A uniform standard of calibration accuracy of the light plane is lacking. As an alternative, the invariance-of-cross-ratio-based evaluation method proposed in [10], [17] or the light-plane-fitting-based evaluation method have been widely used to evaluate calibration accuracy.

However, the invariance-of-cross-ratio-based method regards the distance between two testing points calculated by the invariance of cross ratio as the true value. Unfortunately, we cannot calculate the distance using the invariance of cross ratio in the image obtained only by the plane mirror because the two light stripes and the feature points are not coplanar. Meanwhile, the light-plane-fitting-based evaluation method calculates the average or maximum of the distance from the testing points to the fitting light plane. However, this method can be easily affected by points with a larger image noise because each point of the light stripe image center is involved in the calculation, and if the calibrated light plane is used as the true value, then the evaluation error is inaccurate because the value to be evaluated is inappropriate to be considered the true value.

Therefore, we propose a new method for evaluating the calibration accuracy of the light plane for our unique calibration image. This method is described as follows.

In Fig. 9, $\textbf{p}_c^i(u_c^i,\;v_c^i)$ and $\textbf{p}_c^j(u_c^j,\;v_c^j)$ are two non-adjacent points in the real light stripe, $\textbf{p}_v^i(u_v^i,\;v_v^i)$ and $\textbf{p}_v^j(u_v^j,\;v_v^j)$ are the corresponding mirrored points on the virtual light stripe, ${\textbf{l}_A}$ is the connecting line between points $\textbf{p}_c^i(u_c^i,\;v_c^i)$ and $\textbf{p}_v^j(u_v^j,\;v_v^j)$, and ${\textbf{l}^{\prime}_A}$ is the connecting line between points $\textbf{p}_c^j(u_c^j,\;v_c^j)$ and $\textbf{p}_v^i(u_v^i,\;v_v^i)$. These two lines intersect at point ${\textbf{p}_t}(u_t^i,\;v_t^i)$, which is ideally on the plane mirror and is called the testing point. Given the lack of any standard distance that can be used as the reference value, the 3D coordinates of the testing points can be obtained by calculating the homography matrix of the plane mirror with respect to the real camera and then regard the result as the true value.

 figure: Fig. 9.

Fig. 9. Auto-epipolar constraint in the image.

Download Full Size | PDF

According to the image coordinates of the testing points ${\textbf{p}_t}(u_t^i,\;v_t^i)$, the homogeneous coordinates in the target coordinate frame are

$$\lambda {(X_T^{ti},Y_T^{ti},1)^T} = \textbf{H}_{horm}^{ - 1}(u_t^i,\;v_t^i,1).$$
Meanwhile, the true 3D coordinates of the testing points in the camera coordinate frame are
$${(X_C^{ti},Y_C^{ti},Z_C^{ti})^T} = \textbf{R}_C^m(X_T^{ti},Y_T^{ti},0) + \textbf{t}_C^m,$$
where $\textbf{H}_{horm}^{ - 1}$ is the inverse of the homography matrix of the plane mirror with respect to the real camera.

At the same time, the 3D coordinates $\textbf{P}_C^i$ of the real light stripe centers in the camera coordinate frame can be obtained by the the camera intrinsic parameters and the calibrated light plane equation. Therefore, the measured value of the testing points are

$${(X_C^{mi},Y_C^{mi},Z_C^{mi})^T} = (\textbf{P}_C^i + s\textbf{P}_V^j)/(1 + s),$$
where $\textbf{P}_V^i = \textbf{R}_V^C\textbf{P}_C^i + \textbf{t}_V^C$, $\textbf{P}_V^i$ is the 3D coordinates of the corresponding mirrored point on the virtual light stripe centers in the camera coordinate frame. $\textbf{P}_C^i = {(X_C^i,Y_C^i,Z_C^i)^T}$ and $\textbf{P}_V^i = {(X_V^i,Y_V^i,Z_V^i)^T}$ are the 3D coordinates of the two matching points in the real and virtual light stripes. $\textrm{s} = \left \| {\textbf{P}_C^i - \textbf{P}_V^i} \right \|/\left \| {\textbf{P}_C^j - \textbf{P}_V^j} \right \|$. The distance between the true and measured value is
$$\Delta {d_i} = \sqrt {{{(X_m^i - X_t^i)}^2} + {{(Y_m^i - Y_t^i)}^2} + {{(Z_m^i - Z_t^i)}^2}}.$$
Then, the RMS error of the distance $\Delta {d_i}$ between multiple testing points can be calculated to evaluate the calibration accuracy of the light plane. We can also calculate the distance from the testing points to the plane mirror to validate the evaluation results.

4. Analysis of different surface materials for extracting light stripe centers

The extraction accuracy of the light stripe center in an image is one of the main factors that affect the calibration accuracy of the light plane. The main factors that affect the extraction accuracy of the light stripe center in image, include the laser performance, the image quality of the light stripe, and the extraction algorithm of light stripe center points.

When the type of laser and the extraction algorithm of the light stripe center are determined, the main factors affecting the image quality of the light stripe include ambient light and the surface material of the object. We can control the aperture size and exposure time of the camera to reduce the light intake. However, the specular and diffuse reflections on the surface of the object are unavoidable. Therefore, the image sensor will also receive both specular and diffuse reflections, the light stripe image is shown in Fig. 10.

 figure: Fig. 10.

Fig. 10. Gray distribution of the light stripe on a metal surface, ceramic surface, and white paper. (a)Metal plane surface (expose time 2 ms). (b)Metal plane surface (expose time 9 ms). (c)White paper (expose time 2 ms). (d)Ceramic surface (expose time 2 ms).

Download Full Size | PDF

For an ideal smooth reflector, the reflected light intensity is concentrated in the direction of reflection. For a generally smooth surface, the reflected light intensity generates a high light phenomenon in several neighborhoods centered on the ideal direction of reflection, thereby leading to inconsistent the reflected light intensities as observed by different cameras. For an ideal diffuse reflection, the surrounding incident energy is isotropic around it. In the calibration, several light stripes must be projected on the target at different positions. Obviously, the ideal diffuse reflector (Lambertian sheet) is the best material for obtaining the light stripe image. At present, polytetrafluoroethylene, magnesium oxide, and barium sulfate are the closest-to-ideal diffuse reflectors. Ordinary white paper and gypsum are also excellent candidates.

In order to ensure the position accuracy of the feature points on the target, the surface must be smooth due to the high precision processing of target, and the specular reflection affects the image quality of the light stripe. The target surface is sprayed to given the processing accuracy and image quality of the stripe.

Figures 10(a) and 10(b) show that the light stripe image captured by the real camera with exposure times of 2 ms and 9 ms is projected on the LED plane target. Figure 10(c) shows that the light stripe image captured by the camera with an exposure time of 2 ms is projected on white paper. Figure 10(d) shows that the light stripe image captured by the camera with an expose time of 2 ms is projected on the ceramic surface. If exposure time is 2 ms when using the LED plane target, then the light stripe image will be discontinuous similar to mosaic due to the diffuse reflection of the metal surface. When the exposure time is around 9ms, the light stripe is continuous, but the image noise of light stripe edge on the LED plane target is significantly greater than that of light stripe edge on the white paper. Therefore, the image noise directly affects extraction accuracy of the light stripe centers. Obviously, white paper is more suitable for the light stripe projected on it.

5. Simulation experiment

This section analyzes the main factors that affect the calibration accuracy of the light plane by the following simulation experiments, including (1) The impact of extraction error of light stripe centers on the calibration accuracy. (2) The impact of the calculation error of the vanishing point on the calibration accuracy.

The conditions of the simulation experiments are as follows. Camera resolution is 1600$\times$1200 pixels, field of view is 240mm$\times$160mm, the intrinsic matrix of the camera is

$${\textbf{K}_C} = \left[ {\begin{array}{{ccc}} {3000} & 0 & {800}\\ 0 & {3000} & {600}\\ 0 & 0 & 1 \end{array}} \right].$$
The equation of the light plane is
$$0.8865X + 0.1330Y + 0.4432Z - 177.2969 = 0.$$
The rotation matrix $\textbf{R}_C^m$ and the translation vector $\textbf{t}_C^m$ from the plane mirror coordinate frame ${O_m}{X_m}{Y_m}{Z_m}$ to the real camera coordinate frame ${O_C}{X_C}{Y_C}{Z_C}$ are
$$\textbf{R}_C^m = \left[ {\begin{array}{{ccc}} {\!\textrm{0.6963}\!} & {\!\textrm{ - 0.1131}\!} & {\!\textrm{0.7088}\!}\\ {\!\textrm{0.1234}\!} & {\!\textrm{0.9917}\!} & {\!\textrm{0.0371}\!}\\ {\!\textrm{ - 0.7071}\!} & {\!\textrm{0.0617}\!} & {\!\textrm{0.7044}\!} \end{array}} \right]{\!,\!}\quad \textbf{t}_C^m = \left[ \!{\begin{array}{{c}} {\!\textrm{ - 10.00}\!}\\ {\!\textrm{ - 100.00}\!}\\ {\!\textrm{500.00}\!} \end{array}} \!\right]\!.$$

5.1 Impact of extraction error of light stripe centers on the calibration accuracy

The Gaussian noise with a zero mean and a standard deviation from 0.1 to 1.0 pixel with an interval of 0.1 pixels is added to the centers of the light stripe. For each noise level, 1000 times experiments are carried out and the relative errors of the light plane parameters $(a,\;b,\;c,\;d)$ are calculated. The relative errors of the calibration results at different noise levels are shown in Fig. 11(a).

 figure: Fig. 11.

Fig. 11. (a)The impact of extraction error of light stripe centers on the calibration accuracy. (b)The impact of the extraction error of the vanishing point on the calibration accuracy.

Download Full Size | PDF

As shown in Fig. 11(a), with the increase of image noise, the relative error of the light plane parameters is increasing. The accuracy of the extraction of light stripe centers in the image usually reaches 0.1-0.2 pixel. Based on the simulation results, the relative error of the light plane parameters calibrated through the proposed method can reach 0.1%. Therefore, we should improve the extraction accuracy of light stripe centers. However, the best way is to use a better surface on which the laser is projected to improve the image quality of the light stripe.

5.2 Impact of the calculation error of the vanishing point on the calibration accuracy

Once the relative position of the camera and the plane mirror is determined, the location of the vanishing point in the image is also fixed. The calculation error of the vanishing point directly affects the matching accuracy of the light stripe image centers in the image, thus affects the calibration accuracy. The image coordinates of the vanishing point is (3818.7786,757.8783) by simulation.

The Gaussian noise with a zero mean and a standard deviation from 0.1 to 1.6 pixels with an interval of 0.1 pixels is added to the vanishing point. For each noise level, 1000 times experiments are carried out and the relative errors of the light plane parameters $(a,\;b,\;c,\;d)$ are calculated. The relative errors of the calibration results at different noise levels are shown in Fig. 11(b).

As shown in Fig. 11(b), the relative error of the light plane parameters increases with the increasing of the calculation error of the vanishing point. When the calculation error of the vanishing point reaches 1 pixel, the relative error of the light plane parameters reaches 0.2%. The calculation precision of the vanishing point is closely related to the number and the extraction accuracy of the feature points. More feature points and higher extraction accuracy of them will produce smaller calculation error of the vanishing point.

6. Physical experiment

In this section, four physical experiments are performed as follows. (1) The matching accuracy in the left and right images are respectively compared by using the proposed image-vanishing-point-based method and the traditional epipolar-constraint-based method. (2) The calibration accuracy of the light plane is compared by three different evaluation method, including the traditional fitting method and the cross ratio invariance method that are suitable for the plane target, and the proposed evaluation method that are suitable for the stereo target with a curved surface. (3) The measurement accuracy of the standard step gauge block is compared by using the three following methods, including the using LED plane target method based on invariance of cross ratio (ICR method) in [10] and based on homography matrix (HM method) in [12], and using the proposed calibration method based on image vanishing point that uses a virtual binocular (VPVB method).

In the experiment, the line-structured light sensor is composed of a camera and a laser projector, as shown in Figs. 12(a) and 12(b). In order to compare the measurement accuracy between the real and virtual binoculars, we place two cameras, namely, the left and right cameras in the real binocular system, of which the left camera is the real camera in our virtual binocular system. In order to follow-up measurement, we also placed two lasers corresponding to two cameras, which formed two sets of structured light vision sensors.

 figure: Fig. 12.

Fig. 12. The experiment platform. (a)Structured light sensor calibrated by the proposed method. (b)Structured light sensor calibrated by the LED plane target.

Download Full Size | PDF

The cameras of Allied Vision Technologies equipped with 23 mm Schneider optical lens and a line laser projector with a power of 50 mW and wavelength of 635 nm are used to calibrate the light plane. The image resolution is 1600${\times }$1200 pixels, the working distance is 550 mm, the field of view is about 180 mm${\times }$135 mm, and the distance between the camera and the laser projector is about 200 mm. The spacing of the chessboard features on the plane mirror is 5 mm, and the position accuracy is higher than 1um. In addition to high precision, another distinctive advantage of the plane mirror is that the feature points can be conveniently extracted by an adjustable backlight. The white paper is an A4 printing paper that is arbitrarily rolled into a cylinder in our experiment. The LED plane target with 8${\times }$6 light spots is made of alumina and has a machining accuracy of 0.02 mm.

6.1 Calibration of the line-structured light plane using three different methods

The mirrored virtual binocular system uses one camera less than the real binocular measurement system, thereby effectively saving experimental space. The intrinsic parameters and lens distortion parameters of the real and virtual cameras are exactly the same (except for ${f_x}$). The calibration results of two different methods are as follows.

6.1.1 Calibration of intrinsic and structure parameters

A 2D plane target of 24${\times }$20 checkerboard with an interval of 4 mm and position accuracy of 1 um is used to calibrate of the camera by using the software proposed in [42]. The plane checkerboard target is placed at appropriate positions for the binocular vision sensor to perform the calibration. A total of 20 images are captured to calibrate the intrinsic parameters of the left and right cameras, and the structure parameters between these cameras. Some of the captured calibration images are shown in Fig. 13(a), and the calibration results of the two light stripes are shown in Table 1.

 figure: Fig. 13.

Fig. 13. Calibration images. (a)Images used for calibrating of intrinsic parameters of the real camera. (b)Five images of solving the vanishing point. (c)20 calibration images of left light stripe using the LED plane target. (d)20 calibration images of left light stripe using the plane mirror.

Download Full Size | PDF

Tables Icon

Table 1. Calibration results of the intrinsic parameters

6.1.2 Calibration of the light plane equation

First, the light plane parameters are calibrated by the method proposed in [12] using a LED plane target based on the invariance of cross ratio. The LED plane target is placed at a suitable position relative to the vision sensor. We collect 20 calibration images, as shown in Fig. 13(c).

Second, the light plane parameters are calibrated by the proposed method using the front coating plane mirror and the white paper. By placing the auxiliary chessboard target with LED at different positions in front of the plane mirror, the image vanishing point is calculated by five images.

In the calibration, we make sure that the light stripe on the white paper and its reflection in the plane mirror can be clearly viewed. The white paper is placed at 20 different positions in front of the vision sensor, and the plane mirror must be immobilized. A total of 20 calibration images are collected, and two matching methods are used to match the light stripe image centers. The calibration images are shown in Fig. 13(d).

The images of solving the vanishing point are shown in Fig. 13(b). These images can also be used to obtain the extrinsic parameters of the virtual binocular stereo vision sensor similar to the traditional binocular optimization. The image coordinate of the vanishing point is $\left ( {8547.7539,394.2289} \right )$, and the calibration results of the light plane of the two light stripes are given in Table 2.

Tables Icon

Table 2. Calibration results of the light plane

6.2 Comparison of matching accuracy between epipolar-constraint-based method and matching-line-constraint-based method

In matching of any point on an object and the corresponding mirrored point, we usually use the epipolar constraint in binocular to match, and we can also use the image vanishing point to match through the matching line constraint. Therefore, we give the comparison of the matching accuracy between the two methods in this section.

We assume that the extracted image coordinate of the feature points on the chessboard are completely accurate. First, we use the image vanishing point to solve the matching line, that is, the yellow connecting lines between the real feature points and the vanishing point in Fig. 14.

 figure: Fig. 14.

Fig. 14. (a)the yellow lines denote the matching lines solved by the vanishing points, that is, the connection line between the feature points on the real target and the vanishing points. (b)the yellow lines denote the matching lines, whereas the green lines denote the epipolar lines solved by the fundamental matrix.

Download Full Size | PDF

Second, we use the fundamental matrix to solve the epipolar line. Ideally, the distance from the mirrored feature point to the matching line is zero. However, since matching errors are inevitable, we can use the distance between mirrored feature points and matching line or epipolar line as matching errors. We use these mirrored points as the testing points to calculate the pixel distance from the feature points to the epipolar line and the matching line.

Using the above six measurement images, the RMS error of the distance from the feature points to the epipolar line is approximately 0.18 pixels, whereas the RMS error of the distances from the feature points to the matching lines is approximately 0.08 pixels. Obviously, the proposed matching method based on image vanishing point improves the matching accuracy by 0.1 pixels.

6.3 Comparison of calibration accuracy between the traditional evaluation method and the proposed evaluation method

Because light stripes are projected on curved surface objects, the traditional evaluation method can not be used to evaluate the calibration accuracy of the light plane, but it can still be compared. Firstly, for the calibration image in Fig. 13(c), we use the fitting method, that is, the RMS distance from the center point of the light stripe to the obtained light plane is regarded as the calibration error. Secondly, we use the method based on the invariance of cross ratio in [17] to calculate the RMS distance from the cross ratio points to the fitting light plane as the calibration error. Finally, for the calibration image in Fig. 13(d), we use the proposed evaluation method to measure the calibration error. Six images (similar to Fig. 13(d)) that do not participate in the calibration are used as evaluation images. A total of 100 pairs of the corresponding testing points in every image are calculated to evaluate of calibration accuracy using the proposed evaluation method.

The Fig. 15 shows that the calibration errors between different evaluation method. By using the proposed calibration method of the light plane, the synthetic RMS error of the testing points is 0.035 mm. Compared with the corresponding synthetic RMS error of 0.102 mm obtained by the cross-ratio-invariance-based method, the accuracy of our proposed evaluation method has been increased by 3 times. This is due to the low noise of the stripe image, which makes the center point of the light stripe deviate less.

 figure: Fig. 15.

Fig. 15. Comparison of calibration accuracy between the traditional evaluation method and the proposed evaluation method.

Download Full Size | PDF

6.4 Measurement of the stand step gauge block

In order to verify the measurement accuracy of the proposed VBVP method, ICR method, and HM method, two line-structured laser projectors are applied to the measurement of the standard step gauge block as shown in Fig. 16(a).

 figure: Fig. 16.

Fig. 16. (a)The physical picture of the standard step gauge block. (b)The obtained image of the standard step gauge block.

Download Full Size | PDF

Five images are collected in several different positions, and the light stripe image centers are extracted by using Steger’s method [42]. Afterward, the 3D coordinates of the light stripe centers are reconstructed to calculate the height difference of the standard step gauge block using the above calibration results. Two light stripes on top of the image are fitted as the reference plane. The RMS errors of the distances from the light stripe center points on bottom of the image to the reference plane are calculated as the height difference.

The length and width of the standard step gauge block are 80 mm${\times }$20 mm, the height difference of the step is 2 mm, and the machining accuracy of the height difference is greater than 4um. The extracted images of the light stripe image centers are shown in Fig. 16(b).

The extraction accuracy of the light stripe image centers is affected by the strong specular reflection on the surface of the standard step gauge block, thereby resulting in serious errors and an instability measurement. In addition, the measurements are related to our choice of the region of the light stripe and the number of points. In other words, the measurements are not absolute. Using the five captured testing images, the RMS error of the height difference is 0.024 mm using the proposed VBVP method, which is better than 0.035 mm using the ICR method, and 0.034mm using the HM method. The measurement results are shown in Table 3.

Tables Icon

Table 3. Measurement of the standard step gauge block (unit:mm)

6.5 Comparison of reconstruction accuracy of feature points

Two images in calibration using invariance of cross-ratio under different positions were obtain, the calibration image is shown in Fig. 17. After correcting the distortion of the two images, we extract the feature light stripes and the corner points of light spot from the two undistorted images. The feature points used for calibrating the structured light vision sensor can be constructed with the above calibrated parameters.

 figure: Fig. 17.

Fig. 17. The reconstruction of feature points based on invariance of the cross-ratio.

Download Full Size | PDF

If the local world coordinates and the normalized image coordinates of the feature points are obtained with good accuracy, the 3D camera coordinates of feature points which are computed based on invariance of the cross-ratio should be accurate. We can use those camera coordinates as the approximate ground values of feature points. In addition, we can estimate the camera coordinates by above calibration results as the measured values of feature points. We evaluate calibration accuracy by comparing the approximate ground values to the measured values. Those reconstruction camera coordinate of feature points are shown in Table 4.

Tables Icon

Table 4. Comparison of reconstruction accuracy of feature points (unit:mm)

The RMS error of the 10 distances between light spots is 0.044 mm using the ICR method, and that is 0.034 mm using the VBVP method (Proposed method). It should be noted that the position accuracy of the feature points of the target with LED metal is difficult to reach below 0.01mm, that is to say, it is difficult to reach the micron level position accuracy of the glass checkerboard target, and it is unable to provide high-precision standard values for comparison. However, from the reconstruction results of feature points, we can compare and find that our proposed method has higher reconstruction accuracy for feature points.

7. Conclusion

In this paper, we have presented a novel method using the principle of mirror image to calibrate line-structured light vision sensor. Some important conclusions are given as follows:

  • (1) The proposed matching method improves the matching accuracy by 0.1 pixels by the proposed matching method compared with the fundamental-matrix-based method.
  • (2) According to the proposed evaluation method, the calibration accuracy using the plane mirror method based on virtual binoculars is 0.035 mm, which is better than that using the LED plane target method based on the cross ratio invariance (0.102 mm).
  • (3) The measurement accuracy for the height difference of the standard step gauge block is 0.024 mm using the proposed calibration method, which is better than that using LED plane target method based on the cross ratio invariance (0.035 mm).

Compared with the existing calibration methods, our proposed method resolves the mutual restricted contradiction between the high-quality image of the light stripe and high-precision feature points. By using a high-precision front coating plane mirror, the main limiting factors of the calibration accuracy of the light plane is the measurement accuracy of the binoculars which can be easily improved by a higher image resolution, instead of the machining accuracy of the conventional target. In addition, a method for evaluating the calibration accuracy of the light plane is proposed for our unique calibration image and shows greater more objectivity and flexibility in the acquisition of testing points compared with the light plane fitting evaluation method.

Funding

National Science Fund for Distinguished Young Scholars of China (51625501).

Disclosures

The authors declare no conflicts of interest.

References

1. M. O’Toole, J. Mather, and K. N. Kutulakos, “3d shape and indirect appearance by structured light transport,” in Computer Vision Pattern Recognition, (2014).

2. E. Lilienblum and A. Al-Hamadi, “A structured light approach for 3d surface reconstruction with a stereo line-scan system,” in Instrumentation Measurement Technology Conference, (2015).

3. Z. Song and Y. Shing-Tung, “Absolute phase-assisted three-dimensional data registration for a dual-camera structured light system,” Appl. Opt. 47(17), 3134–3142 (2008). [CrossRef]  

4. L. Zhen, L. Fengjiao, H. Bangkui, and Z. Guangjun, “Real-time and accurate rail wear measurement method and experimental analysis,” J. Opt. Soc. Am. A 31(8), 1721–1730 (2014). [CrossRef]  

5. Z. Gong, J. Sun, and G. Zhang, “Dynamic structured-light measurement for wheel diameter based on the cycloid constraint,” Appl. Opt. 55(1), 198–207 (2016). [CrossRef]  

6. A. Ben-Hamadou, C. Soussen, C. Daul, W. Blondel, and D. Wolf, “Flexible calibration of structured-light systems projecting point patterns,” Comput. Vis. & Image Underst. 117(10), 1468–1481 (2013). [CrossRef]  

7. Z. Zhang, “Camera calibration with one-dimensional objects,” IEEE Transactions on Pattern Analysis Mach. Intell. 26(7), 892–899 (2004). [CrossRef]  

8. Z. Wei, L. Cao, and G. Zhang, “A novel 1d target-based calibration method with unknown orientation for structured light vision sensor,” Opt. Laser Technol. 42(4), 570–574 (2010). [CrossRef]  

9. G. Zhang, L. Zhen, J. Sun, and Z. Wei, “Novel calibration method for a multi-sensor visual measurement system based on structured light,” Opt. Eng. 49(4), 043602 (2010). [CrossRef]  

10. F. Zhou and G. Zhang, “Complete calibration of a structured light stripe vision sensor through planar target of unknown orientations,” Image Vis. Comput. 23(1), 59–67 (2005). [CrossRef]  

11. Z. Xie, X. Wang, and S. Chi, “Simultaneous calibration of the intrinsic and extrinsic parameters of structured-light sensors,” Opt. Lasers Eng. 58, 9–18 (2014). [CrossRef]  

12. J. Sun, “Universal method for calibrating structured-light vision sensor on the spot,” J. Mech. Eng. 45(03), 174–177 (2009). [CrossRef]  

13. Z. Wei, M. Shao, G. Zhang, and Y. Wang, “Parallel-based calibration method for line-structured light vision sensor,” Opt. Eng. 53(3), 033101 (2014). [CrossRef]  

14. Z. Wei, C. Li, and B. Ding, “Line structured light vision sensor calibration using parallel straight lines features,” Optik - Int. J. for Light. Electron Opt. 125(17), 4990–4997 (2014). [CrossRef]  

15. D. Q. Huynh, R. A. Owens, and P. E. Hartmann, “Calibrating a structured light stripe system: A novel approach,” Int. J. Comput. Vis. 33(1), 73–86 (1999). [CrossRef]  

16. Y. G. Huang, X. H. Li, and P. F. Chen, “Calibration method for line-structured light multi-vision sensor based on combined target,” Eurasip J. on Wirel. Commun. Netw. 2013(1), 92 (2013). [CrossRef]  

17. Z. Liu, X. Li, and Y. Yin, “On-site calibration of line-structured light vision sensor in complex light environments,” Opt. Express 23(23), 29896–29911 (2015). [CrossRef]  

18. Z. Hui, K. Wong, and Z. Guoqiang, “Camera calibration from images of spheres,” IEEE Transactions on Pattern Analysis Mach. Intell. 29(3), 499–502 (2007). [CrossRef]  

19. W. Kwan-Yee Kenneth, Z. Guoqiang, and C. Zhihu, “A stratified approach for camera calibration using spheres,” IEEE Trans. Image Process. 20(2), 305–316 (2011). [CrossRef]  

20. H. Y. Xiong, X. You, and Z. J. Zong, “Accurate extrinsic calibration method of line structured-light sensor based on standard ball,” IET Image Process. 5(5), 369–375 (2011). [CrossRef]  

21. L. Zhen, X. Li, F. Li, and G. Zhang, “Calibration method for line-structured light vision sensor based on a single ball target,” Opt. Lasers Eng. 69, 20–28 (2015). [CrossRef]  

22. J. E. Ha and K. W. Her, “Calibration of structured light stripe system using plane with slits,” Opt. Eng. 52(1), 013602 (2013). [CrossRef]  

23. S. Liu, Q. Tan, and Y. Zhang, “Shaft diameter measurement using structured light vision,” Sensors 15(8), 19750–19767 (2015). [CrossRef]  

24. Z. Y. Zhang and H. T. Tsui, “3d reconstruction from a single view of an object and its image in a plane mirror,” in International Conference on Pattern Recognition, (1998).

25. B. K. Ramsgaard, I. Balslev, and J. Arnspang, “Mirror-based trinocular systems in robot-vision,” in International Conference on Pattern Recognition, (2000).

26. J. Gluckman and S. K. Nayar, “Catadioptric stereo system using planar mirrors,” Intnl. J. Computer Vision 44, 65–79 (2001). [CrossRef]  

27. A. R. J. Francois, G. G. Medioni, and R. Waupotitsch, “Mirror symmetry: 2-view stereo geometry,” Image Vis. Comput. 21(2), 137–143 (2003). [CrossRef]  

28. R. Hartley and A. Zisserman, “Multiple view geometry in computer vision,” Kybernetes 30, 1865–1872 (2008).

29. K. H. Jang, H. L. Dong, and S. K. Jung, “A moving planar mirror based approach for cultural reconstruction,” Comput. Animat. Virtual Worlds 15(34), 415–423 (2004). [CrossRef]  

30. A. Y. Yang, K. Huang, S. Rao, H. Wei, and M. Yi, “Symmetry-based 3-d reconstruction from perspective images,” Comput. Vis. Image Underst. 99(2), 210–240 (2005). [CrossRef]  

31. Y. Xianghua, P. Kun, H. Yongbo, G. Sheng, K. Jing, and Z. Hongbin, “Self-calibration of catadioptric camera with two planar mirrors from silhouettes,” IEEE Transactions on Pattern Analysis Mach. Intell. 35(5), 1206–1220 (2013). [CrossRef]  

32. J. A. Hesch, A. I. Mourikis, and S. I. Roumelioti, “Extrinsic camera calibration using mulitiple reflections,” in European Conference on Computer Vision, (2010).

33. R. Rui, J. P. Barreto, and U. Nunes, “Camera pose estimation using images of plane mirror reflections,” in European Conference on Computer Vision, (2010).

34. P. Lébraly, C. Deymier, O. Ait-Aider, E. Royer, and M. Dhome, “Flexible extrinsic calibration of non-overlapping cameras using a planar mirror: Application to vision-based robotics,” in IEEE/RSJ International Conference on Intelligent Robots and Systems, (2010).

35. K. Takahashi, S. Nobuhara, and T. Matsuyama, “A new mirror-based extrinsic camera calibration using an orthogonality constraint,” in IEEE Conference on Computer Vision and Pattern Recognition, (2012).

36. N. Hayashi, T. Tomizawa, T. Suehiro, and S. Kudoh, “Stereo calibration method using mirrored images containing a camera,” in IEEE International Conference on Robotics and Biomimetics, (2014).

37. R. K. Kumar, A. Ilie, J. M. Frahm, and M. Pollefeys, “Simple calibration of non-overlapping cameras with a mirror,” in Proc IEEE Conference on Computer Vision and Pattern Recognition, (2008).

38. Z. Xu, Y. Wang, and C. Yang, “Multi-camera global calibration for large-scale measurement based on plane mirror,” Optik 126(23), 4149–4154 (2015). [CrossRef]  

39. M. Liu, R. Hartley, and M. Salzmann, “Mirror surface reconstruction from a single image,” in Proc IEEE Conference on Computer Vision and Pattern Recognition, (2013).

40. D. Lanman, D. Crispell, and G. Taubin, “Surround structured lighting: 3-D scanning with orthographic illumination,” Comp. Vision Image Underst. 113, 1107–1117 (2009). [CrossRef]  

41. Z. Zhang, “A flexible new technique for camera calibration,” IEEE Trans. Pattern Anal. Machine Intell. 22(11), 1330–1334 (2000). [CrossRef]  

42. J. Y. Bouguet, “The MATLAB open source calibration toolbox,” http://www.vision.caltech.edu/bouguetj/calib_doc/index.html.

43. C. Steger, “An unbiased detector of curvilinear structures,” IEEE Trans. Pattern Anal. Machine Intell. 20(2), 113–125 (1998). [CrossRef]  

Cited By

Optica participates in Crossref's Cited-By Linking service. Citing articles from Optica Publishing Group journals and other participating publishers are listed here.

Alert me when this article is cited.


Figures (17)

Fig. 1.
Fig. 1. Common targets for calibrating structured light vision sensors.
Fig. 2.
Fig. 2. Measurement principle of the structured light vision sensor. (a)Encoding structured light vision sensor. (b)Line-structured light vision sensor.
Fig. 3.
Fig. 3. The virtual binocular stereo vision measurement principle. The image of a real object in the real camera is equivalent to that the left camera in a binocular stereo vision system, whereas the image of real object in the mirror is equivalent to that the right camera in a binocular stereo vision system.
Fig. 4.
Fig. 4. The specific procedures of the proposed calibration method using the virtual binocular measuring principle.
Fig. 5.
Fig. 5. The coordinate transformation between the virtual and real cameras. The green arrow needs to transform the direction of ${X_V}$ to the right-hand coordinate frame.
Fig. 6.
Fig. 6. The solving of the virtual camera intrinsic parameters.
Fig. 7.
Fig. 7. Extraction of the light stripe center points.
Fig. 8.
Fig. 8. Matching of the light stripe center points. (a)Principle diagram of solving of the vanishing point. (b)Real image of solving of the vanishing point. (c)Matching of the light stripe center points.
Fig. 9.
Fig. 9. Auto-epipolar constraint in the image.
Fig. 10.
Fig. 10. Gray distribution of the light stripe on a metal surface, ceramic surface, and white paper. (a)Metal plane surface (expose time 2 ms). (b)Metal plane surface (expose time 9 ms). (c)White paper (expose time 2 ms). (d)Ceramic surface (expose time 2 ms).
Fig. 11.
Fig. 11. (a)The impact of extraction error of light stripe centers on the calibration accuracy. (b)The impact of the extraction error of the vanishing point on the calibration accuracy.
Fig. 12.
Fig. 12. The experiment platform. (a)Structured light sensor calibrated by the proposed method. (b)Structured light sensor calibrated by the LED plane target.
Fig. 13.
Fig. 13. Calibration images. (a)Images used for calibrating of intrinsic parameters of the real camera. (b)Five images of solving the vanishing point. (c)20 calibration images of left light stripe using the LED plane target. (d)20 calibration images of left light stripe using the plane mirror.
Fig. 14.
Fig. 14. (a)the yellow lines denote the matching lines solved by the vanishing points, that is, the connection line between the feature points on the real target and the vanishing points. (b)the yellow lines denote the matching lines, whereas the green lines denote the epipolar lines solved by the fundamental matrix.
Fig. 15.
Fig. 15. Comparison of calibration accuracy between the traditional evaluation method and the proposed evaluation method.
Fig. 16.
Fig. 16. (a)The physical picture of the standard step gauge block. (b)The obtained image of the standard step gauge block.
Fig. 17.
Fig. 17. The reconstruction of feature points based on invariance of the cross-ratio.

Tables (4)

Tables Icon

Table 1. Calibration results of the intrinsic parameters

Tables Icon

Table 2. Calibration results of the light plane

Tables Icon

Table 3. Measurement of the standard step gauge block (unit:mm)

Tables Icon

Table 4. Comparison of reconstruction accuracy of feature points (unit:mm)

Equations (26)

Equations on this page are rendered with MathJax. Learn more.

s [ u v 1 ] = K C [ I 3 × 3 , 0 3 × 1 ] [ X C Y C Z C 1 ] , K V = [ f x γ u 0 0 f y v 0 0 0 1 ] .
a X C + b Y C + c Z C + d = 0 ,
{ s 1 p ~ c = K C [ I 3 × 3 0 3 × 1 ] P ~ C s 2 p ~ v = K V [ R V C t V C ] P ~ C .
R C m = R ( φ m c ) R ( θ m c ) R ( δ m c ) = [ r 1 r 2 r 3 r 4 r 5 r 6 r 7 r 8 r 9 ] , t C m = [ t x t y t z ] .
[ X m m Y m m Z m m ] = [ cos 180 0 sin 180 0 1 0 sin 180 0 cos 180 ] [ X m Y m Z m ] = [ 1 0 0 0 1 0 0 0 1 ] [ X m m Y m m Z m m ] = R m m m [ X m m Y m m Z m m ] , t m m m = [ 0 0 0 ] .
φ m v = φ m c , θ m v = θ m c , δ m v = δ m c .
R V m m = [ r 1 r 2 r 3 r 4 r 5 r 6 r 7 r 8 r 9 ] , t V m m = [ t x t y t z ] .
R V m = R V m m R m m m , t V m = t V m m .
{ R V C = R V m R m C = R V m ( R V C ) 1 t V C = t V m R V m ( R C m ) 1 t C m .
{ u c = x c / x c d d x + u 0 v c = y c / d y + v 0 { u v = x c / x c d d x + u 0 v v = y c / d y + v 0
K V = [ f x γ u 0 0 f y v 0 0 0 1 ] ,
l C V i = m ~ C i × m ~ V i .
l v i = l C V i × l C V j ( i j ) .
f ( v ) = m i n i = 1 n ( ( l C V i ) T v ) 2 .
l e i = ( v v a n v C i v v a n u C i , 1 , u v a n v C i v v a n u C i v v a n u C i ) T .
F = K V T SR V C K C 1 ,
l e i = F p i .
l i = ( v v i + 1 v v i u v i + 1 u v i , 1 , u v i + 1 v v i v v i + 1 u v i u v i + 1 u v i ) T .
p i = [ l e i ] × l i ,
λ ( X T t i , Y T t i , 1 ) T = H h o r m 1 ( u t i , v t i , 1 ) .
( X C t i , Y C t i , Z C t i ) T = R C m ( X T t i , Y T t i , 0 ) + t C m ,
( X C m i , Y C m i , Z C m i ) T = ( P C i + s P V j ) / ( 1 + s ) ,
Δ d i = ( X m i X t i ) 2 + ( Y m i Y t i ) 2 + ( Z m i Z t i ) 2 .
K C = [ 3000 0 800 0 3000 600 0 0 1 ] .
0.8865 X + 0.1330 Y + 0.4432 Z 177.2969 = 0.
R C m = [ 0.6963  - 0.1131 0.7088 0.1234 0.9917 0.0371  - 0.7071 0.0617 0.7044 ] , t C m = [  - 10.00  - 100.00 500.00 ] .
Select as filters


Select Topics Cancel
© Copyright 2024 | Optica Publishing Group. All rights reserved, including rights for text and data mining and training of artificial technologies or similar technologies.