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

Fringe projection profilometry method with high efficiency, precision, and convenience: theoretical analysis and development

Open Access Open Access

Abstract

Fringe projector profilometry (FPP) is an important three-dimensional (3D) measurement technique, especially when high precision and speed are required. Thus, theoretical interrogation is critical to provide deep understanding and possible improvement of FPP. By dividing an FPP measurement process into four steps (system calibration, phase measurement, pixel correspondence, and 3D reconstruction), we give theoretical analysis on the entire process except for the extensively studied calibration step. Our study indeed reveals a series of important system properties, to the best of our knowledge, for the first time: (i) in phase measurement, the optimal and worst fringe angles are proven perpendicular and parallel to epipolar line, respectively, and can be considered as system parameters and can be directly made available during traditional calibration, highlighting the significance of the epipolar line; (ii) in correspondence, when two sets of fringes with different fringe orientations are projected, the highest correspondence precision can be achieved with arbitrary orientations as long as these two orientations are perpendicular to each other; (iii) in reconstruction, a higher reconstruction precision is given by the 4-equation methods, while we notice that the 3-equation methods are almost dominatingly used in literature. Based on these theoretical results, we propose a novel FPP measurement method which (i) only projects one set of fringes with optimal fringe angle to explicitly work together with the epipolar line for precise pixel correspondence; (ii) for the first time, the optimal fringe angle is determined directly from the calibration parameters, instead of being measured; (iii) uses 4 equations for precise 3D reconstruction but we can remove one equation which is equivalent to an epipolar line, making it the first algorithm that can use 3-equation solution to achieve 4-equation precision. Our method is efficient (only one set of fringe patterns is required in projection and the speed is doubled in reconstruction), precise (in both pixel correspondence and 3D reconstruction), and convenient (the computable optimal fringe angle and a closed-form 3-equation solution). We also believe that our work is insightful in revealing fundamental FPP properties, provides a more reasonable measurement for practice, and thus is beneficial to further FPP studies.

© 2022 Optica Publishing Group under the terms of the Optica Open Access Publishing Agreement

1. Introduction

High accuracy three-dimensional (3D) optical measurement is increasingly important in industrial applications [1]. Among various optical 3D shape measurement techniques, fringe projection profilometry (FPP) has the merits of high accuracy, high-speed and non-contact measurement, and has found wide applications in the fields of manufacturing [2], biomedicine [3] and forensic science [4].

As shown in Fig. 1, a typical FPP system is composed of a projector, a camera and a computer, where the projector projects the fringes onto an object surface, the camera captures the distorted fringes, and the computer analyzes the data, extracts phase and reconstructs 3D geometry of the object. Currently, there are two major reconstruction methods to obtain 3D geometry from the phase distribution. One is the phase-to-height conversion method [5] which establishes a mapping relationship between the height and phase. The other is the stereo-vision-based model, or simply called Zhang’s method [6], where the camera and the projector (treated as an inverse camera) form a stereo-vision system. By establishing correspondence between a camera pixel $({{u^c},{v^c}} )$ and the projector pixel $({{u^p},{v^p}} )$, a 3D object point $({{x^w},{y^w},{z^w}} )$ can be subsequently obtained. Compared with the phase-to-height method, Zhang’s method is more widely used in FPP [7] and thus is the focus of this paper.

 figure: Fig. 1.

Fig. 1. A typical FPP system.

Download Full Size | PDF

The typical measurement principle and procedure are as follows [6],

  • (i) Calibration: since the camera and projector are modeled by pinhole models, their internal and external parameters are calibrated;
  • (ii) Phase measurement: the projector projects the designed sinusoidal fringe patterns onto the object surface, and the camera captures the deformed patterns. The phase which carries the 3D shape information is extracted, i.e., for each camera pixel $({{u^c},{v^c}} )$, its phase $\mathrm{\Phi }({{u^c},{v^c}} )$ is obtained;
  • (iii) Correspondence: if a camera pixel $({{u^c},{v^c}} )$ and a projector pixel $({{u^p},{v^p}} )$ correspond to a same object point $({{x^w},{y^w},{z^w}} )$, they will have the same phase value. Consequently, by finding the same phase value, $({{u^c},{v^c}} )$ and $({{u^p},{v^p}} )$ can be paired or corresponded;
  • (iv) Reconstruction: once corresponded, using the pinhole models established in (i), each of ${u^c}$, ${v^c}$, ${u^p}$ and ${v^p}$ can provide an equation inferring the unknown 3D object point $({{x^w},{y^w},{z^w}} )$. By solving these equations, the 3D object point is reconstructed.

In these four steps, the first (calibration) step has been intensively studied [8]. The second (phase measurement) step has the largest body of literature [912], including the current strong interest for fast measurement [13,14]. However, the projected fringe patterns are designed to be horizontal or vertical, until recently, Wang and Zhang [15] insightfully described the optimal fringe angle and proposed to measure it by projecting two sets of fringe patterns, one horizontal and one vertical, onto a step-height object. The optimal angle phenomenon was further analyzed and verified by Zhou et al. [16] and Zhang et al. [17]. However, there is a lack of theoretical analysis of the optimal fringe angle for convenient use.

In the third (correspondence) and fourth (reconstruction) steps, given $({{u^c},{v^c}} )$, $\mathrm{\Phi }({{u^c},{v^c}} )$ is known from the second step. If the vertical fringes are projected, the equal-phase line is vertical, from which, ${u^p}$ alone is immediately determined. Since ${u^c}$, ${v^c}$ and ${u^p}$ provide three equations, they are sufficient to reconstruct $({{x^w},{y^w},{z^w}} )$. We call it the Ver3 method to highlight that a vertical fringe orientation is used for correspondence and three equations are used for reconstruction. This idea can be extended to projecting horizontal fringe patterns, which is called the Hor3 method. One can also project both vertical and horizontal fringe patterns to obtained both ${u^p}$ and ${v^p}$, so that four equations will be used for 3D reconstruction, which is called the HorVer4 method. In practice, especially in existing literature, the Hor3 and Ver3 methods are seen more widely used because they project only one set of fringe patterns (either horizontal or vertical, but not both) and thus achieve a higher speed than the HorVer4 method. Furthermore, it is noticeable that, when projecting fringe patterns with the optimal fringe angle, the equal-phase line is tilted, i.e., it is no longer horizontal or vertical. Thus, neither ${u^p}$ nor ${v^p}$ can be immediately determined. To this end, Li [18] developed a method to project two sets of fringe patterns, one rotates the optimal angle by $\pi /4$ counterclockwise so that the fringe angle is ${\theta _{opt}} + \pi /4$, while the other rotates clockwise and the fringe angle is ${\theta _{opt}} - \pi /4$. Two sets of fringe patterns provided two equal-phase lines to solve $({{u^p},{v^p}} )$ as the intersection point, which is then used for 3D reconstruction. We abbreviate it as an OptR4 method where Opt and R highlight the involvement of the optimal fringe angle and the angle rotation, respectively. Unfortunately, although we have seen the interesting variety of methods for correspondence and reconstruction, there is no theoretical analysis on them.

Knowing the extreme importance of theoretical understanding in precision measurement, this paper interrogates the optimal fringe angle, the correspondence and the reconstruction equations in a theoretical manner. Interesting results will be discovered, based on which, a novel FPP measurement method is proposed. Our contributions are as follows:

  • (i) We theoretically derive the expressions of the optimal and worst fringe angles, and discover the fact for the first time that the optimal fringe orientation is perpendicular to the epipolar line. This finding makes the optimal fringe angle immediately computable;
  • (ii) We theoretically show that the two sets of fringes with different angles for correspondence should be perpendicular to achieve higher precision;
  • (iii) We theoretically prove the advantage of using four equations for reconstruction, which provides higher precision than that of using three equations;
  • (iv) Based on the above theoretical results, we propose a novel FPP measurement method where we (a) simply compute the optimal angle and project the fringes with this angle according to (i); (b) find the correspondence assisted by the epipolar line according to (ii); and (c) reconstruct the 3D object point using four equations according to (iii).
  • (v) We then theoretically discover that, in our method, one equation is redundant, and thus we only use three equations for reconstruction. We further prove that dropping one equation does not affect the reconstruction precision, which makes our method even more unique and graceful. Experiments are carried out for verification.

We believe that our theoretical results are fundamental for the study of FPP, and our proposed method is effective in practice.

The rest of the paper is arranged as follows: the basic introduction of FPP and the problem statement are given in Sec. 2; the theoretical aspects of general FPP is analyzed in Sec. 3, based on which, our proposed method is described in Sec. 4 and verified in Sec. 5.

2. Basics of an FPP system and the problem statement

For the FPP system shown in Fig. 1, the camera and the projector play an important role. Both of them are usually modeled by a pinhole model and the epipolar line can also be derived, which is described in Sec. 2.1. Theoretical questions to interrogate the phase measurement, correspondence and reconstruction steps will be raised in Sec. 2.2 as our problem statement.

2.1 Pinhole model and the epipolar geometry

The camera essentially realizes the conversion from a world coordinate system to the camera’s physical coordinate system and further to the camera’s pixel coordinate system, which can be described by a pinhole model as follows [19],

$${s^c}{[{u^c},{v^c},1]^t} = {A^c}[{R^c},{t^c}]{[{x^w},{y^w},{z^w},1]^t},$$
where the superscripts c, w and t denote the camera’s pixel coordinate system, the world coordinate system and matrix transpose; $[{{x^w},{y^w},{z^w},1} ]$ indicates the homogeneous coordinate of an object point in the world coordinate system, $[{{u^c},{v^c},1} ]$ indicates the homogenous coordinate of the image of the object point in the pixel coordinate system; ${A^c}$ is the $3 \times 3\; $ intrinsic matrix of the camera to realize the conversion from the camera’s physical coordinate system to the camera’s pixel coordinate system, which can be written as
$${A^c} = \left[ {\begin{array}{ccc} {f_u^c}&0&{u_0^c}\\ 0&{f_v^c}&{v_0^c}\\ 0&0&1 \end{array}} \right], $$
where $f_u^c$ and $f_v^c$ describe the focal lengths of the camera lens along ${u^c}$ and ${v^c}$ direction respectively, and $({u_0^c,v_0^c} )$ is the camera’s principle point coordinate; ${R^c}$ (a $3 \times 3$ rotation matrix) and ${t^c}$ (a $3 \times 1$ translation vector) are the camera extrinsic matrix to realize the conversion from the world coordinate system to the camera coordinate system; and ${s^c}$ is a scale factor.

For convenience, we select the camera’s physical coordinate system to be the same as the world coordinate system so that ${R^c}$ is an identity matrix and ${t^c}\; $ is a zero vector [20]. By substituting the special ${R^c}$ and ${t^c}$ and Eq. (2) into Eq. (1), we can readily get the following simple relationship between $({{x^w},{y^w},{z^w}} )$ and $({{u^c},{v^c}} )$,

$${x^w} = \frac{{{u^c} - u_0^c}}{{f_u^c}}{z^w}, $$
$${y^w} = \frac{{{v^c} - v_0^c}}{{f_v^c}}{z^w}. $$

Similarly, the pinhole model can be used to describe the projector, and is written below by merely changing the subscript c in Eq. (1) to a subscript p,

$${s^p}{[{u^p},{v^p},1]^t} = {A^p}[{R^p},{t^p}]{[{x^w},{y^w},{z^w},1]^t},$$
where the projector has its own physical and pixel coordinate systems but shares the world coordinate system with the camera. The projection matrix of the projector is then written as,
$${P^p} = {A^p}[{R^p},{t^p}] = \left[ {\begin{array}{ccc} {f_u^p}&0&{u_0^p}\\ 0&{f_v^p}&{v_0^p}\\ 0&0&1 \end{array}} \right]\left[ {\begin{array}{cccc} {{r_{11}}}&{{r_{12}}}&{{r_{13}}}&{{t_1}}\\ {{r_{21}}}&{{r_{22}}}&{{r_{23}}}&{{t_2}}\\ {{r_{31}}}&{{r_{32}}}&{{r_{33}}}&{{t_3}} \end{array}} \right]{\kern 1pt}, $$
where $f_u^p$ and $f_v^p$ describe the focal lengths of the projector lens along ${u^p}$ and ${v^p}$ direction respectively, $({u_0^p,v_0^p} )$ is the projector’s principle point coordinate, ${r_{ij}}$ and ${t_j}$ $({i = 1,2,3;j = 1,2,3} )$ are the entries of the rotation matrix and translation vector, respectively. Substituting Eqs. (3), (4) and (6) into Eq. (5) gives,
$${u^p} = \frac{{\left\{ \begin{array}{l} (f_u^p{r_{11}} + u_0^p{r_{31}})({u^c} - u_0^c){z^w} + (f_u^p{r_{12}} + u_0^p{r_{32}})\frac{{f_u^c}}{{f_v^c}}({v^c} - v_0^c){z^w}\\ + \textrm{ }(f_u^p{r_{13}} + u_0^p{r_{33}})f_u^c{z^w} + \textrm{ }(f_u^p{t_1} + u_0^p{t_3})f_u^c \end{array} \right\}}}{{{r_{31}}({u^c} - u_0^c){z^w} + {r_{32}}\frac{{f_u^c}}{{f_v^c}}({v^c} - v_0^c){z^w} + {r_{33}}f_u^c{z^w} + {t_3}f_u^c}}, $$
$${v^p} = \frac{{\left\{ \begin{array}{l} (f_v^p{r_{21}} + v_0^p{r_{31}})({u^c} - u_0^c){z^w} + (f_v^p{r_{22}} + v_0^p{r_{32}})\frac{{f_u^c}}{{f_v^c}}({v^c} - v_0^c){z^w}\\ + \textrm{ }(f_v^p{r_{23}} + v_0^p{r_{33}})f_u^c{z^w} + \textrm{ }(f_v^p{t_2} + v_0^p{t_3})f_u^c \end{array} \right\}}}{{{r_{31}}({u^c} - u_0^c){z^w} + {r_{32}}\frac{{f_u^c}}{{f_v^c}}({v^c} - v_0^c){z^w} + {r_{33}}f_u^c{z^w} + {t_3}f_u^c}}. $$

Further canceling ${z^w}$ in Eqs. (7) and (8) leads to the following epipolar line equation,

$${u^p}{l_1} + {v^p}{l_2} + {l_3} = 0, $$
$${l_1} = \frac{1}{{f_u^cf_u^p}}[({u^c} - u_0^c)( - {t_3}{r_{21}} + {t_2}{r_{31}}) + ({v^c} - v_0^c)({t_2}{r_{32}} - {t_3}{r_{22}})\frac{{f_u^c}}{{f_v^c}} + ( - {t_3}{r_{23}} + {t_2}{r_{33}})f_u^c], $$
$${l_2} = \frac{1}{{f_v^pf_u^c}}[({u^c} - u_0^c)({t_3}{r_{11}} - {t_1}{r_{31}}) + ({v^c} - v_0^c)({t_3}{r_{12}} - {t_1}{r_{32}})\frac{{f_u^c}}{{f_v^c}} + ({t_3}{r_{13}} - {t_1}{r_{33}})f_u^c], $$
$$\begin{aligned} {l_3} &= \frac{{({u^c} - u_0^c)}}{{f_u^c}}[\frac{{u_0^p}}{{f_u^p}}({t_3}{r_{21}} - {t_2}{r_{31}}) + \frac{{v_0^p}}{{f_v^p}}( - {t_3}{r_{11}} + {t_1}{r_{31}}) + ( - {t_2}{r_{11}} + {t_1}{r_{21}})]\\ & + \frac{{({v^c} - v_0^c)}}{{f_v^c}}[\frac{{u_0^p}}{{f_u^p}}({t_3}{r_{22}} - {t_2}{r_{32}}) + \frac{{v_0^p}}{{f_v^p}}( - {t_3}{r_{12}} + {t_1}{r_{32}}) + ( - {t_2}{r_{12}} + {t_1}{r_{22}})]\\ & - \frac{{u_0^p}}{{f_u^p}}( - {t_3}{r_{23}} + {t_2}{r_{33}}) - \frac{{v_0^p}}{{f_v^p}}({t_3}{r_{13}} - {t_1}{r_{33}}) + ( - {t_2}{r_{13}} + {t_1}{r_{23}}). \end{aligned} $$

The epipolar line can also be derived by fundamental matrix [21,22]. This line indicates the constraint of $({{u^p},{v^p}} )$, i.e., given $({{u^c},{v^c}} )$, the corresponding $({{u^p},{v^p}} )$ is on a line as illustrated by Fig. 2. We have listed the complicated Eqs. (7), (8) and (1012) as a preparation, which will lead to neat and interesting results later.

 figure: Fig. 2.

Fig. 2. Epipolar geometry model of the projector and the camera, where ${l_p}$ is the epipolar line.

Download Full Size | PDF

2.2 Problem statement

We have mentioned that the FPP system involves four steps: calibration, phase measurement, correspondence and 3D reconstruction. However, there is a lack of interrogation on their theoretical aspects. In detail,

  • (i) Phase measurement: the optimal fringe angle makes the phase most sensitive to a given depth variation [15]. Can this angle be theoretically determined? Will it be an intrinsic property of the system?
  • (ii) Correspondence: In general, the optimal fringe angle is arbitrary, thus the phase varies along both the ${u^p}$ and ${v^p}$ directions. We have to project two sets of fringes with different fringe angles to correspond a camera pixel $({{u^c},{v^c}} )$ and a projector pixel $({{u^p},{v^p}} )$ . However, there are multiple choices for a pair of angles. Is there an optimal pair?
  • (iii) Reconstruction: After corresponding the camera pixel $({{u^c},{v^c}} )$ and the projector pixel $({{u^p},{v^p}} )$, we can choose 3 or 4 equations to reconstruct the 3D profile of the object. Is there a significant difference?
  • (iv) Application: Will the answers we obtain provide new insights of FPP for a better and more reasonable measurement procedure?

3. Theoretical analysis on the FPP system

To answer the questions in Sec. 2.2, we perform a series of theoretical analysis on the FPP system in this section. The optimal and worst fringe angles are derived and their relationships with the epipolar line are discovered in Sec. 3.1. The best selection of a pair of fringe angles in correspondence step is analyzed in Sec. 3.2. The effect of the number of equations on 3D reconstruction precision is analyzed in Sec.3.3.

3.1 Analysis on phase measurement: the optimal fringe angle and worst fringe angles

We provide a theoretical analysis for the optimal and worst fringe angles, and then examine their relationships with the epipolar line.

To start with, the sinusoidal fringe pattern with an arbitrary fringe angle $\theta $ to be projected are designed as follows,

$$I({u^p},{v^p}) = \frac{1}{2} + \frac{1}{2}\cos [{\Phi ({u^p},{v^p},\theta )} ], $$
$$\Phi ({u^p},{v^p},\theta ) = \frac{{2\pi }}{T}[{{u^p}\sin (\theta ) + {v^p}\cos (\theta )} ],\textrm{ }\theta \in [0,\pi ),$$
where T is the fringe period; $\mathrm{\Phi }$ is the phase distribution of the fringe; $\theta $ is the angle between the fringe orientation and the horizontal axis, thus $\theta = 0$ and $\theta = \pi /2$ mean horizontal and vertical fringes, respectively. The equal-phase line has a slope of $- tan(\theta )$.

The optimal fringe angle $\theta $ maximizes the sensitivity of the phase $\mathrm{\Phi }({{u^c},{v^c}} )$ in the captured fringe pattern with respect to the surface profile. Nevertheless, when $({{u^c},{v^c}} )$ and $({{u^p},{v^p}} )$ correspond to the same object point $({{x^w},{y^w},{z^w}} )$, we have

$$\Phi ({u^c},{v^c}) = \Phi ({u^p},{v^p}). $$

The above sensitivity can be expressed as,

$$H(\theta ) = \frac{{\partial \Phi ({u^c},{v^c})}}{{\partial {z^w}({u^c},{v^c})}} = \frac{{\partial \Phi ({u^p},{v^p})}}{{\partial {z^w}({u^c},{v^c})}} = \frac{{2\pi }}{T}\left[ {\frac{{\partial {u^p}}}{{\partial {z^w}}}\sin (\theta ) + \frac{{\partial {v^p}}}{{\partial {z^w}}}\cos (\theta )} \right], $$
where the rightmost part is obtained by taking the derivative of Eq. (14). The sensitivity can be further rewritten as follows using trigonometric identities,
$$H(\theta )= \frac{{2\pi }}{T}\sqrt {{{\left( {\frac{{\partial {u^p}}}{{\partial {z^w}}}} \right)}^2} + {{\left( {\frac{{\partial {v^p}}}{{\partial {z^w}}}} \right)}^2}} \cos ({\theta - \psi } ), $$
where $tan(\psi )= \frac{{\partial {u^p}}}{{\partial {z^w}}}/\frac{{\partial {v^p}}}{{\partial {z^w}}}$.To find the optimal angle ${\theta _{opt}}$ is to maximize $|H |$. By considering ${\theta _{opt}} \in [{0,\pi } )$, we have the following two cases,
$${\theta _{opt}} = \left\{ {\begin{array}{c} {\psi ,\textrm{ }when\textrm{ }\psi \ge 0}\\ {\psi + \pi ,when\textrm{ }\psi < 0} \end{array}} \right.. $$

In both cases, we have the following relationship,

$$\tan ({{\theta_{opt}}} )= \tan (\psi )= {{\frac{{\partial {u^p}}}{{\partial {z^w}}}} / {\frac{{\partial {v^p}}}{{\partial {z^w}}}}}. $$

In order to calculate the optimal angle in Eq. (18), it is necessary to evaluate the partial derivatives in the right hand of this equation, which can be easily derived based on Eqs. (7) and (8) as,

$$\frac{{\partial {u^p}}}{{\partial {z^w}}} = \frac{{f_u^cf_u^p\left[ {({{r_{11}}{t_3} - {t_1}{r_{31}}} )({{u^c} - u_0^c} )+ ({{r_{12}}{t_3} - {t_1}{r_{32}}} )\frac{{f_u^c}}{{f_v^c}}({{v^c} - v_0^c} )+ ({{r_{13}}{t_3} - {t_1}{r_{33}}} )f_u^c} \right]}}{{{{\left[ {{r_{31}}({{u^c} - u_0^c} ){z^w} + {r_{32}}\frac{{f_u^c}}{{f_v^c}}({{v^c} - v_0^c} ){z^w} + {r_{33}}f_u^c{z^w} + {t_3}f_u^c} \right]}^2}}}, $$
$$\frac{{\partial {v^p}}}{{\partial {z^w}}} = \frac{{f_u^cf_v^p\left[ {({{r_{21}}{t_3} - {t_2}{r_{31}}} )({{u^c} - u_0^c} )+ ({{r_{22}}{t_3} - {t_2}{r_{32}}} )\frac{{f_u^c}}{{f_v^c}}({{v^c} - v_0^c} )+ ({{r_{23}}{t_3} - {t_2}{r_{33}}} )f_u^c} \right]}}{{{{\left[ {{r_{31}}({{u^c} - u_0^c} ){z^w} + {r_{32}}\frac{{f_u^c}}{{f_v^c}}({{v^c} - v_0^c} ){z^w} + {r_{33}}f_u^c{z^w} + {t_3}f_u^c} \right]}^2}}}. $$

By substituting the Eqs. (20) and (21) into Eq. (19), the optimal angle can be obtained as follow,

$$\tan \left( {{\theta _{opt}}} \right) = \frac{{f_u^p\left[ {\left( {{r_{11}}{t_3} - {t_1}{r_{31}}} \right)\left( {{u^c} - u_0^c} \right) + \left( {{r_{12}}{t_3} - {t_1}{r_{32}}} \right)\frac{{f_u^c}}{{f_v^c}}\left( {{v^c} - v_0^c} \right) + \left( {{r_{13}}{t_3} - {t_1}{r_{33}}} \right)f_u^c} \right]}}{{f_v^p\left[ {\left( {{r_{21}}{t_3} - {t_2}{r_{31}}} \right)\left( {{u^c} - u_0^c} \right) + \left( {{r_{22}}{t_3} - {t_2}{r_{32}}} \right)\frac{{f_u^c}}{{f_v^c}}\left( {{v^c} - v_0^c} \right) + \left( {{r_{23}}{t_3} - {t_2}{r_{33}}} \right)f_u^c} \right]}}.$$

This equation clearly indicates that the optimal angle is not only a function of both the internal and external parameters of the system setup but also the camera pixel coordinates $({{u^c},{v^c}} )$. Strictly speaking, this means that the optimal angle is not a constant, but varying with $({{u^c},{v^c}} )$. In the meantime, for a typical FPP system with a camera and a projector placed on the left and right, ${r_{11}}$, ${r_{22}}\; $ and ${r_{33}}$ are close to 1, and the other entries of the rotation matrix R are much smaller. In addition, the focal lengths of the camera and the projector are larger than the respective detector resolutions, and thus $({{u^c} - u_0^c} )/f_u^c$, $({{v^c} - v_0^c} )/f_v^c$, $({{u^p} - u_0^p} )/f_u^p\; $ and $({{u^p} - u_0^p} )/f_v^p$ are all relatively small values. We will show such system details in our experiments in Sec. 5.1. Another such system with detailed calibration results is given in Ref. [20]. The optimal angle can then be approximated as,

$$\tan ({\theta _{opt}}) \approx \frac{{f_u^p({r_{13}}{t_3} - {t_1}{r_{33}})}}{{f_v^p({r_{23}}{t_3} - {t_2}{r_{33}})}}, $$
which is irrelevant to $({{u^c},{v^c}} )$ and only relies on FPP system parameters. Thus, the optimal angle can also be considered as an FPP system parameter and can be directly obtained through the camera and projector calibration without any additional measurements. For further theoretical analysis, we continue to follow the original form in Eq. (22), while in the experiments, we will compare the results from both the original form in Eq. (22) and the simplified form in Eq. (23).

On the other hand, the worst angle, i.e., the angle gives the least sensitivity, can be determined from $H = 0$. By referring to Eq. (16), we obtain

$$\tan ({\theta _{worst}}) ={-} {{\frac{{\partial {v^p}}}{{\partial {z^w}}}} / {\frac{{\partial {u^p}}}{{\partial {z^w}}}}}.$$

From Eq. (18) and (24), we have $[{ - tan ({{\theta_{opt}}} )} ]\times [{ - tan({{\theta_{worst}}} )} ]={-} 1$, which leads to an interesting and important theoretical result on projecting fringe patterns with an angle:

  • • [T-P-1] Both the optimal and worst fringe angles can be theoretically determined from the calibration parameters and they are perpendicular to each other.

In additional, from Eqs. (10) and (11), the slope of the epipolar line can be calculated as,

$${k_1} ={-} \frac{{{l_1}}}{{{l_2}}} ={-} \frac{{f_v^p[({u^c} - u_0^c)({t_2}{r_{31}} - {t_3}{r_{21}}) + ({v^c} - v_0^c)({t_2}{r_{32}} - {t_3}{r_{22}})\frac{{f_u^c}}{{f_v^c}} + ( - {t_3}{r_{23}} + {t_2}{r_{33}})f_u^c]}}{{f_u^p[({u^c} - u_0^c)({t_3}{r_{11}} - {t_1}{r_{31}}) + ({v^c} - v_0^c)({t_3}{r_{12}} - {t_1}{r_{32}})\frac{{f_u^c}}{{f_v^c}} + ({t_3}{r_{13}} - {t_1}{r_{33}})f_u^c]}}.$$

Thus, we also have $[{ - tan ({{\theta_{opt}}} )} ]\times {k_1} ={-} 1$, and thus we have

  • • [T-P-2] The epipolar line orientation is perpendicular to the optimal fringe angle and thus parallel to the worst fringe angle. On the other hand, once the system is calibrated, both the optimal and worst fringe angles can be determined from the epipolar line.

After we have discovered this interesting property, we find that this result is rather intuitive. Referring to Fig. 2, it is clearly that $({{u^c},{v^c}} )$ correspond to multiple candidates of $({{u^p},{v^p}} )$ which are all at the epipolar line. To differentiate different object points with high sensitivity is the same as to differentiate different $({{u^p},{v^p}} )$ on the epipolar line. Since we rely on phase for correspondence, and we know that there is no phase change along the epipolar line, we can conclude that the epipolar line orientation is the worst fringe orientation; on the contrary, the fringe orientation perpendicular to the epipolar line gives the highest sensitivity and hence becomes the optimal angle. Both our solid theoretical analysis and the intuitive explanation highlight the essential role of the epipolar line.

3.2 Analysis on correspondence: selection of a pair of fringe angles

If the optimal fringe angle is an arbitrary value, i.e. neither horizontal nor vertical, we have to project two sets of fringes with different fringe angles. As an example, in OptR4, ${\theta _{opt}} + \pi /4$ and ${\theta _{opt}} - \pi /4$ are used as a pair, which are perpendicular to each other. We can also use 0 and $\pi /2$ as a pair, as in HorVer4. In general, an arbitrary pair of (${\theta _1}$, ${\theta _2}$) with ${\theta _1} \ne {\theta _2}$ is qualified for finding $({{u^p},{v^p}} )$. We examine the influence of different (${\theta _1}$, ${\theta _2}$).

As we know, the purpose of using two sets of fringe patterns is to determine $({{u^p},{v^p}} )$ when given $({{u^c},{v^c}} )$, and the result of $({{u^p},{v^p}} )$ affects the 3D reconstruction result according to Eqs. (3), (4), (7) and (8). Thus we focus on the accuracy and precision of $({{u^p},{v^p}} )$ which is the intersection point of the following two equal-phase lines according to Eq. (14),

$${\Phi _1} = \frac{{2\pi }}{T}[{{u^p}\sin ({\theta_1}) + {v^p}\cos ({\theta_1})} ], $$
$${\Phi _2} = \frac{{2\pi }}{T}[{{u^p}\sin ({\theta_2}) + {v^p}\cos ({\theta_2})} ],$$
where ${\mathrm{\Phi }_1}$ and ${\mathrm{\Phi }_2}$ are the measured phase of $({{u^c},{v^c}} )$ by projecting two sets of fringe patterns with angles of ${\theta _1}$ and ${\theta _2}$, respectively. Combining these two equations gives,
$${u^p} = \frac{T}{{2\pi }}\left[ {\frac{{{\Phi _1}\cos ({\theta_2}) - {\Phi _2}\cos ({\theta_1})}}{{\sin ({\theta_1} - {\theta_2})}}} \right], $$
$${v^p} ={-} \frac{T}{{2\pi }}\left[ {\frac{{{\Phi _1}\sin ({\theta_2}) - {\Phi _2}\sin ({\theta_1})}}{{\sin ({\theta_1} - {\theta_2})}}} \right]. $$

Based on these two equations, if ${\mathrm{\Phi }_1}$ and ${\mathrm{\Phi }_2}$ have zero means [13], ${u^p}$ and ${v^p}$ also have zero means. Furthermore, the variances of ${u^p}$ and ${v^p}$ can be calculated as follow,

$$\sigma _{{u^p}}^2 = {\left( {\frac{T}{{2\pi }}} \right)^2}\left[ {\frac{{\sigma_{{\Phi _1}}^2{{\cos }^2}({\theta_2}) + \sigma_{{\Phi _2}}^2{{\cos }^2}({\theta_1})}}{{{{\sin }^2}({\theta_1} - {\theta_2})}}} \right], $$
$$\sigma _{{v^p}}^2 = {\left( {\frac{T}{{2\pi }}} \right)^2}\left[ {\frac{{\sigma_{{\Phi _1}}^2{{\sin }^2}({\theta_2}) + \sigma_{{\Phi _2}}^2{{\sin }^2}({\theta_1})}}{{{{\sin }^2}({\theta_1} - {\theta_2})}}} \right], $$
where ${\mathrm{\Phi }_1}$ and ${\mathrm{\Phi }_2}$ are considered as random valuables due to various error source such as noise. In this paper, we assume that the variances of the phases with different angles are the same and abbreviated as ${\sigma _\mathrm{\Phi }}$. Thus, the total variance of $({{u^p},{v^p}} )$ is
$${\sigma ^2}_{({{u^p}, {v^p}} )} = \sigma _{{u^p}}^2 + \sigma _{{v^p}}^2 = {\left( {\frac{T}{{2\pi }}} \right)^2}\left[ {\frac{{2\sigma_\Phi ^2}}{{{{\sin }^2}({\theta_1} - {\theta_2})}}} \right]. $$

This theoretical analysis result gives two following important conclusions:

  • • [T-C-1] Obviously, when $|{{\theta_1} - {\theta_2}} |= \pi /2$, the total variance takes the minimum value of $2{({\textrm{T}/2\pi } )^2}\sigma _\mathrm{\Phi }^2$, suggesting that two fringe orientations should indeed be perpendicular;
  • • [T-C-2] As long as they are perpendicular, the values of ${\theta _1}$ and ${\theta _2}$ have no influence on the total variance, i.e., taking (0, $\pi /2$), (${\theta _{opt}} - \pi /4$, ${\theta _{opt}} + \pi /4$) or (${\theta _{opt}}$, ${\theta _{worst}}$) gives no difference. In other words, the optimal fringe angle does not present any significance or specialty in this situation, which is a rather surprising result, but will be verified in our experiment later.

Finally, for completeness, we consider Hor3, where ${v^p} = {\mathrm{\Phi }_H}T/2\pi $. The variance of ${v^p}$ can be obtained as $\sigma _{{v^p}}^2 = {({\textrm{T}/2\pi } )^2}\sigma _\mathrm{\Phi }^2$ . We do the same for ${u^p}$ in Ver3 and similarly obtain $\sigma _{{u^p}}^2 = {({\textrm{T}/2\pi } )^2}\sigma _\mathrm{\Phi }^2.$ We have used an earlier assumption that both variances of ${\mathrm{\Phi }_H}$ and ${\mathrm{\Phi }_V}$ are $\sigma _\mathrm{\Phi }^2$.

3.3 Analysis on reconstruction: 4 equations vs 3 equations

Now that we have many FPP measurement methods, such as the Hor3, Ver3, HorVer4 and OptR4 methods. According to the number of equations they use for reconstruction, we group them into two categories: 3-equation methods (Hor3 and Ver3) and 4-equaiton methods (HorVer4 and OptR4). A natural question is whether the number of equations makes a difference in 3D reconstruction and whether this difference is significant.

To answer this question and for convenience, we re-write Eqs. (3), (4), (7) and (8), as follows,

$${x^w} + a{z^w} = 0, $$
$${y^w} + b{z^w} = 0, $$
$$c{x^w} + d{y^w} + e{z^w} - m = 0, $$
$$f{x^w} + g{y^w} + h{z^w} - n = 0, $$
where
$$\begin{array}{ll} a ={-} \frac{{{u^c} - u_0^c}}{{f_u^c}},&b ={-} \frac{{{v^c} - v_0^c}}{{f_v^c}},\textrm{ }\\ c = {r_{11}} - {r_{31}}\frac{{{u^p} - u_0^p}}{{f_u^p}},&d = {r_{12}} - {r_{32}}\frac{{{u^p} - u_0^p}}{{f_u^p}},\textrm{ }e = {r_{13}} - {r_{33}}\frac{{{u^p} - u_0^p}}{{f_u^p}},\textrm{ }\\ f = {r_{21}} - {r_{31}}\frac{{{v^p} - v_0^p}}{{f_v^p}},&g = {r_{22}} - {r_{32}}\frac{{{v^p} - v_0^p}}{{f_v^p}},\textrm{ }h = {r_{23}} - {r_{33}}\frac{{{v^p} - v_0^p}}{{f_v^p}},\textrm{ }\\ m = {t_3}\frac{{{u^p} - u_0^p}}{{f_u^p}} - {t_1},&n = {t_3}\frac{{{v^p} - v_0^p}}{{f_v^p}} - {t_2}. \end{array}$$

The 3D reconstruction task is simply to solve three unknowns of a 3D point $({{x^w},{y^w},{z^w}} )$ from the linear equations (33-36). As mentioned before, the solution of Eqs. (3335) corresponds to the Ver3 method, the solution of Eqs. (33), (34), (36) corresponds to the Hor3 method and the solution of Eqs. (3336) corresponds to the HorVer4 and OptR4 methods, depending on the fringe angles used for correspondence.

In the ideal case, all Eqs. (3336) are satisfied. However, in practice, the left hand of one or more equations of Eqs. (3336) is nonzero, resulting in a residual. We use the sum of squared residuals (SSR) to indicate the quality of a solution. For example, for the Ver3 method, the three equations (33-35) give a unique solution $({{x^w},{y^w},{z^w}} )$. When we substitute this solution back to these three equations, the residual is zero. However, when we substitute it into Eq. (36), a residual will be resulted as

$${v_1} = fx_0^w + gy_0^w + hz_0^w - n, $$
which after some straightforward but tedious derivations, can be expressed as,
$$v_1^2 = \frac{{{\lambda _1}}}{{{\lambda _2}}}, $$
where ${\lambda _1} = {[{({af + bg - h} )m + ({e - ac - bd} )n} ]^2}$ and ${\lambda _2} = {({ac - e + bd} )^2}$. With the same way, for the SSR of the Hor3 method can be derived as,
$$v_2^2 = \frac{{{\lambda _1}}}{{{\lambda _3}}}, $$
where ${\lambda _3} = {({af + bg - h} )^2}$. For the case of using all four equations of Eqs. (3336), we obtain a least squares solution using the normal equation method [23], and then substitute it back into all the equations. The SSR is,
$$v_3^2 = \frac{{{\lambda _1}}}{{{\lambda _2} + {\lambda _3} + {\lambda _4} + {\lambda _5}}},$$
where ${\lambda _4} = {[{a({cg - df} )+ ({bh - eg} )} ]^2}$ and ${\lambda _5} = {[{b({cg - df} )+ ({ef - ch} )} ]^2}$. Some details of the derivation are given in Appendix A.

Obviously, by comparing the SSRs in Eqs. (3941), we can immediately conclude that the 3D reconstruction by the 4-equation methods is better than that by the 3-equation methods. In order to more quantitatively estimate the magnitude of the SSRs, we consider a typical FPP system with a camera and a projector placed on the left and right, which has been used in getting Eq. (23) in Sec. 3.1. In such case, we recall that ${r_{11}}$, ${r_{22}}\; $ and ${r_{33}}$ are close to 1, and the other entries of the rotation matrix R are much smaller, and $({{u^c} - u_0^c} )/f_u^c$, $({{v^c} - v_0^c} )/f_v^c$, $({{u^p} - u_0^p} )/f_u^p\; $ and $({{u^p} - u_0^p} )/f_v^p$ are all relatively small values. Thus, we also have $c \approx 1$ and $g \approx 1$. In addition, a product between the two small quantities approaches zeros, e.g., $bd \approx 0$, $af \approx 0$, $df \approx 0$, $dh \approx 0$, $ef \approx 0$. With these facts, we can make the following approximations:

$$\begin{array}{l} {\lambda _2} = {({ac - e + bd} )^2} \approx {({a - e} )^2},\\ {\lambda _3} = {({af + bg - h} )^2} \approx {({b - h} )^2},\\ {\lambda _4} = {[{a({cg - df} )+ ({dh - eg} )} ]^2} \approx {(a - e)^2} \approx {\lambda _2},\\ {\lambda _5} = {[{b({cg - df} )+ ({ef - ch} )} ]^2} \approx {(b - h)^2} \approx {\lambda _3}. \end{array}$$

Substituting Eq. (42) into Eq. (41), we have the following neat results,

$$v_3^2 \approx \frac{{{\lambda _1}}}{{2({\lambda _2} + {\lambda _3})}} < \frac{{{\lambda _1}}}{{2{\lambda _2}}} = 0.5v_1^2, $$
$$v_3^2 \approx \frac{{{\lambda _1}}}{{2({\lambda _2} + {\lambda _3})}} < \frac{{{\lambda _1}}}{{2{\lambda _3}}} = 0.5v_2^2. $$

This result clearly indicates that,

  • • [T-R-1] The SSR from a 4-equation method for 3D reconstruction is at most half of that from a 3-equation method. Even if the optimal fringe angle is used, the Hor3 and Ver3 methods are still inferior to HorVer4 and OptR4 methods. Thus, using a 4-equation method is suggested when pursuing high measurement precision.

4. Novel FPP measurement method with high accuracy and precision, efficiency and convenience

Based on the theoretical analysis in Sec. 3, we propose a novel FPP measurement method in Sec. 4.1. The role of the epipolar line in our proposed method is analyzed in Sec. 4.2. The accuracy and precision of our proposed method are analyzed in Sec 4.3 and 4.4, respectively.

4.1 Novel FPP measurement method with a set of optimal angle fringes

Based on the theoretical analysis in Sec. 3, we propose a novel FPP measurement method based on the following considerations:

  • (i) Our method will involve 4 equations, because a 4-equation method performs better than a 3-equation method, according to [T-R-1] in Sec. 3.3;
  • (ii) Thus, we project two sets of fringe patterns and their fringe angles are perpendicular for higher precision, according to [T-C-1] in Sec. 3.2;
  • (iii) Among all possible perpendicular pairs, we choose ${\theta _{opt}}$ and ${\theta _{worst}}$, because ${\theta _{worst}}$ is the same as the epipolar line orientation according to [T-P-1] and [T-P-2] in Sec. 3.1. In other words, the epipolar line serves as one equation for determination of $({{u^p},{v^p}} )$ without projecting the second set of fringe patterns; To emphasize, both ${u^p}$ and ${v^p}$ can be determined from a single set of fringe patterns, which is the first time to the best of our knowledge;
  • (iv) Although we are motivated to follow the 4-equaion idea, we only need to use three equations, either Eqs. (33–35), or Eqs. (33), (34) and (36), for 3D reconstruction to achieve the same precision. This surprising and interesting fact will be revealed in Sections 4.24.4.

We thus call our method OptE3, where Opt, E and 3 indicate the involvement of the optimal angle, the epipolar line, and the three equations for reconstruction, respectively. Our OptE3 method achieves high precision (being essentially a 4-equation method), high efficiency (by projecting only one set of fringe patterns) and high convenience (by obtaining ${\theta _{opt}}$ effortlessly during calibration, without any extra measurements). To ease the implementation of our OptE3 method, its procedure is illustrated in Fig. 3 with detailed explanations below:

  • 1. The calibration step:
    • A. Calibrate the internal and external parameters of the FPP using Zhang’s calibration method [6];
    • B. Estimate the optimal fringe angle ${\theta _{opt}}\; $ by Eq. (23);
    • C. Obtain the epipolar line by using Eqs. (912).
  • 2. The phase measurement step:
    • A. Design the optimal fringe patterns by Eq. (13) using ${\theta _{opt}}$ from step 1B;
    • B. Project the optimal fringe patterns by the projector and capture the deformed patterns by the camera;
    • C. Calculate and unwrap the phase distribution [24];
  • 3. The correspondence step:
    • A. Establish the pixel correspondences between $({{u^c},{v^c}} )$ and $({{u^p},{v^p}} )$ using Eqs. (9) and (14);
  • 4. The reconstruction step:

 figure: Fig. 3.

Fig. 3. The proposed OptE3 measurement procedure.

Download Full Size | PDF

Reconstruct 3D profile $({{x^w},{y^w},{z^w}} )$ using Eqs. (33), (34) and (35) or Eqs. (33), (34) and (36).

The detailed measurement procedure enables us to further elaborate its high convenience:

  • 1) In the calibration step, a traditional system with vertical or horizontal fringe projection only needs Step 1A, but we require additional Steps 1B and 1C. However, there is no additional physical operations. We only need to do simple computation based on the information from Step 1A.
  • 2) By adopting the epipolar geometry, we only need to project one set of fringe patterns with the optimal angle. There is no extra physical operations for obtaining the optimal fringe angle.

4.2 Theoretical revealing of the epipolar constraint in 3D reconstruction

We now provide more theoretical analysis on 3D reconstruction in OptE3. We first show that the four equations for reconstruction, Eqs. (3336), are redundant when the epipolar line is used for correspondence. To prove it, we first re-write the linear Eqs. (3336) as the following augmented matrix form,

$$\left[ {\begin{array}{cccc} 1&0&&0\\ 0&1&b&0\\ c&d&e&m\\ f&g&h&n \end{array}} \right]. $$

Next, by Gaussian elimination, the matrix becomes,

$$\left[ {\begin{array}{cccc} 1&0&a&0\\ 0&1&b&0\\ 0&0&{e - ac - bd}&m\\ 0&0&0&{({e - ac - bd} )n - ({h - af - bg} )m} \end{array}} \right]. $$

Finally, we check when the following equation holds:

$$({e - ac - bd} )n - ({h - af - bg} )m = 0. $$

The checking is straightforward as all the parameters appearing in Eq. (47) are given in Eq. (37). By substituting Eq. (37) into Eq. (47), followed by some rearrangement, Eq. (47) turns into the epipolar line as given by Eq. (9). In other words, this means that one equation in the reconstruction is equivalent to an epipolar line. This is rather interesting but in fact not surprising, because the epipolar constraint can indeed be implied in the triangulation principle for reconstruction. Because in our OptE3, this epipolar constraint has been used in the correspondence step to obtain $({{u^p},{v^p}} )$ from $({{u^c},{v^c}} )$ and thus has already been satisfied, this equation is redundant. Thus, we only need to use three equations, Eqs. (3335) or Eqs. (33), (34), and (36), for reconstruction, which has been used in our proposed method. We list and highlight this theoretical property of 3D reconstruction below:

  • • [T-M-1] In the four equations for 3D reconstruction, one equation is equivalent to the epipolar line constraint. If this constraint has been used in the correspondence step, one equation is redundant.

An advantage of using three equations to solve three unknowns for 3D reconstruction is that, an elegant closed-form solution with simple algebra computation is now available. From the third row in Eq. (46), we obtain ${z^w}$ as

$$z_{_{OptE3}}^w({{u^p}} )= {m / {({e - ac - bd} )}}.$$

Submitting the parameters given in Eq. (37) into Eq. (48), we have

$$z_{_{OptE3}}^w({{u^p}} )= \frac{{{C_1} + {C_2}{u^p}}}{{{C_3} + {C_4}{u^p}}}, $$
where ${C_1} ={-} \frac{{u_0^p}}{{f_u^p}}{t_3} - {t_1}$, ${C_2} = \frac{{{t_3}}}{{f_u^p}}$, $${C_3} = \left( {\frac{{{u^c} - u_0^c}}{{f_u^c}}{r_{11}} + {r_{13}} + \frac{{{v^c} - v_0^c}}{{f_v^c}}{r_{12}} + \frac{{{u^c} - u_0^c}}{{f_u^c}}\frac{{u_0^p}}{{f_u^p}}{r_{31}} + \frac{{u_0^p}}{{f_u^p}}{r_{33}} + \frac{{{v^c} - v_0^c}}{{f_v^c}}\frac{{u_0^p}}{{f_u^p}}{r_{32}}} \right)$$

${C_4} = \left( { - \frac{{{u^c} - u_0^c}}{{f_u^c}}\frac{{{r_{31}}}}{{f_u^p}} - \frac{{{r_{33}}}}{{f_u^p}} - \frac{{{v^c} - v_0^c}}{{f_v^c}}\frac{{{r_{32}}}}{{f_u^p}}} \right)$. This simple solution increases the reconstruction speed, which will be tested in Sec. 5.3. We list this property below:

  • • [T-M-2] By reducing one equation for reconstruction, a simple closed-form solution without matrix inversion can be established.

4.3 Theoretical analysis on OptE3’s reconstruction accuracy

The proposed OptE3 is unique in the sense that it follows the 4-equation methods for high precision but finally, it only uses 3 equations because of the special involvement of the epipolar line for correspondence. It is of importance to find out how this uniqueness affects the final reconstruction accuracy and precision, which are analyzed in this and next subsections, respectively.

To do so, we first use the OptE3 method for correspondence, i.e., find $({{u^p},{v^p}} )$ by solving Eqs. (9) and (14) as follows,

$${u^p} = \frac{{{l_2}\Phi + \frac{{2\pi }}{T}{l_3}\cos {\theta _{opt}}}}{{\frac{{2\pi }}{T}({{l_2}\sin {\theta_{opt}} - {l_1}\cos {\theta_{opt}}} )}}, $$
$${v^p} = \frac{{{l_1}\Phi + \frac{{2\pi }}{T}{l_3}\sin {\theta _{opt}}}}{{\frac{{2\pi }}{T}({l_1}\cos {\theta _{opt}} - {l_2}\sin {\theta _{opt}})}}, $$
which have zero means and the following variances,
$$\sigma _{{u^p}}^2 = {\left( {\frac{T}{{2\pi }}} \right)^2}\frac{{{{({{l_2}} )}^2}}}{{{{({{l_1}} )}^2} + {{({{l_2}} )}^2}}}\sigma _\Phi ^2, $$
$$\sigma _{{v^p}}^2 = {\left( {\frac{T}{{2\pi }}} \right)^2}\frac{{{{({{l_1}} )}^2}}}{{{{({{l_1}} )}^2} + {{({{l_2}} )}^2}}}\sigma _\Phi ^2. $$

The depth from OptE3 is given in Eq. (49). When the phase noise presents, ${u^p}$ will be deviated by ${\delta _{{u^p}}}$, and the reconstructed depth becomes,

$$z_{_{OptE3}}^w({{u^p},{\delta_{{u^p}}}} )= \frac{{{C_1} + {C_2}({{u^p} + {\delta_{{u^p}}}} )}}{{{C_3} + {C_4}({{u^p} + {\delta_{{u^p}}}} )}}. $$

Combining Eqs. (49) and (54), the depth error is

$${\delta _z} = z_{_{OptE3}}^w({{u^p},{\delta_{{u^p}}}} )- z_{_{OptE3}}^w({{u^p}} )= \frac{{[{{C_2}{C_3} - {C_1}{C_4}} ]{\delta _{{u^p}}}}}{{({{C_3} + {C_4}{u^p}} )({{C_3} + {C_4}{u^p} + {C_4}{\delta_{{u^p}}}} )}}. $$

Finally, in practice, as shown in Appendix B, ${C_4}{\delta _{{u^p}}} \ll {C_3} + {C_4}{u^p}$. We can use which Taylor approximation to approximate ${({{C_3} + {C_4}{u^p} + {C_4}{\delta_{{u^p}}}} )^{ - 1}}$ as ${({{C_3} + {C_4}{u^p}} )^{ - 1}} \times \left[ {1 - \frac{{{C_4}}}{{({{C_3} + {C_4}{u^p}} )}}{\delta_{{u^p}}}} \right]$, so that

$${\delta _z} \approx \frac{{({{C_2}{C_3} - {C_1}{C_4}} )}}{{{{({{C_3} + {C_4}{u^p}} )}^2}}}{\delta _{{u^p}}}. $$

Since ${\delta _{{u^p}}}$ has a zero mean, ${\delta _z}$ also has a zero mean. We have the following conclusion:

  • • [T-M-3] The OptE3 method reconstructs an unbiased depth.

4.4 Theoretical analysis on OptE3’s reconstruction precision

In Sec. 4.3, we have concluded that the OptE3 method is an unbiased depth estimation. In this Section, we will explore whether the reconstruction precision of OptE3 follows 4-equaiton methods or 3-equation methods. Fortunately, the former is the answer, making OptE3 a precise method. To demonstrate it, we will show that the OptE3 method has approximately the same depth variance as the OptR4 method, where the depth variance is defined as

$$\sigma _\textrm{z}^2 = {\left( {\frac{{\partial \textrm{z}}}{{\partial {u^p}}}} \right)^2}\sigma _{{u^p}}^2 + {\left( {\frac{{\partial \textrm{z}}}{{\partial {v^p}}}} \right)^2}\sigma _{{v^p}}^2. $$

Since ${v^p}$ is not used, the second term on the righthand of Eq. (57) is zero. Thus, with Eqs. (37), (52) and (57), we have

$$\sigma _{{z_{OptE3}}}^2 = {\left( {\frac{T}{{2\pi }}} \right)^2}{\left[ {\frac{{{l_2}f_v^p}}{{f_u^p{{({ac - e + bd} )}^2}}}} \right]^2}\frac{{{{({{l_2}} )}^2}}}{{{{({{l_1}} )}^2} + {{({{l_2}} )}^2}}}\sigma _\Phi ^2. $$

As for the OptR4 method, $({{u^p},{v^p}} )$ has been obtained in Eqs. (28) and (29), and their variance in Eqs. (30) and (31). More specifically, in the OptR4 method, ${\theta _1} = {\theta _{opt}} - \pi /4$, ${\theta _2} = {\theta _{opt}} + \pi /4$, and thus we have

$$\sigma _{{u^p}}^2 = \sigma _{{v^p}}^2 = {\left( {\frac{T}{{2\pi }}} \right)^2}\sigma _\Phi ^2. $$

Next, we obtain the depth from Eqs. (3336) by the least squares method, which has been used in Sec. 3.3 with details given in Appendix A. Finally, substituting Eq. (59) into Eq. (57), we have,

$$\sigma _{{\textrm{z}_{OptR4}}}^2 = {\left( {\frac{T}{{2\pi }}} \right)^2}\left[ {{{\left( {\frac{{\partial {\textrm{z}_{OptR4}}}}{{\partial {u^p}}}} \right)}^2} + {{\left( {\frac{{\partial {\textrm{z}_{OptR4}}}}{{\partial {v^p}}}} \right)}^2}} \right]\sigma _\Phi ^2, $$
where ${z_{OptR4}}$ is expressed in Eq. (A(1)1).

Now that $\sigma _{{z_{OptR4}}}^2$ and $\sigma _{{z_{OptE3}}}^2$ have been obtained in Eqs. (58) and (60), respectively, the remaining task is to examine their ratio,

$$F({{u^c},{v^c},{u^p},{v^p}} )= {{\sigma _{{z_{OptE3}}}^2} / {\sigma _{{z_{OptR4}}}^2}}. $$

As all the variables and parameters in Eqs. (58) and (60) are already available in earlier equations, the calculation of the ratio seems to be straightforward, but turns out to be very difficult because of tens of terms will appear in deriving $\partial {z_{OptR4}}/\partial {u^p}$ and $\partial {z_{OptR4}}/\partial {v^p}$ in Eq. (60). As such, we use a numerical verification. First, we obtain $\partial {z_{OptR4}}/\partial {u^p}$ and $\partial {z_{OptR4}}/\partial {v^p}$ from Eq. (A(1)1) using the symbolic operation in MATLAB. Next, For each $({{u^c},{v^c}} )$ under the projection with the optimal fringe angle, we follow the practical depth range given in Eq. (B.3), based on which, we calculate ${\mathrm{\Phi }_{zmin}}({{u^c},{v^c}} )$ and ${\mathrm{\Phi }_{zmax}}({{u^c},{v^c}} )$ corresponding to ${z_{min}}$ and ${z_{max}}$, respectively, and we have ${\mathrm{\Phi }_{zmin}}({{u^c},{v^c}} )\le \mathrm{\Phi }({{u^c},{v^c}} )\le {\mathrm{\Phi }_{zmax}}({{u^c},{v^c}} )$. We then randomly select 1000 phase values within this range and calculate $({{u^p},{v^p}} )$ by Eqs. (9) and (14). Finally, substituting all $({{u^c},{v^c}} )\; $ and $({{u^p},{v^p}} )$ into Eq. (61), we obtain the ratio $0.9999 \le F({{u^c},{v^c},{u^p},{v^p}} )\le 1$, indicating that the OptE3 method and the OptR4 method indeed give an approximately (maybe theoretically exactly) the same reconstruction precision. We have also tested that the same result is applicable to HorVer4. Hence,

  • • [T-M-4] The OptE3 method has a same measurement precision as the 4-eqaution methods such as OptR4 and HorVer4.

5. Experiments

5.1 System setup and calibration

An FPP system has been set up to verify the performance of the proposed method. The system includes a camera (model: DAHENG MER-131-210U3M-L, resolution: 1024 × 1280 pixels) attached with a 25 mm lens (model: Computar-M2514-MP2) and a digital-light-processing projector (model: PROVIS900, resolution: 1080 × 1920 pixels). The optimum three-frequency method is applied for phase extraction and unwrapping [24], where the nine-, five-, and five-step phase-shifting methods are used with fringe periods of ${T_0} = 21\textrm{pixel}$ s, ${T_1} = 700/33\; \textrm{pixels}$, ${T_2} = 70/3\,\textrm{pixels}$, respectively. In Ref. [24], three primary color channels (RGB) are used to project three- frequency fringe patterns, while we project three set of gray-scale fringe patterns with different frequencies sequentially. To conveniently compare the number of patterns required by different 3D reconstruction methods, we define L as the total number of patterns to obtain one unwrapped phase. L can be expressed as $L = \mathop \sum \limits_{i = 1}^F {M_i}$, where F is the number of fringe total frequencies used and ${M_i}$ represents the phase-shifting steps, i.e. in this paper, $i = 1,2,3$,and ${M_1} = 9$, ${M_2} = {M_3} = 5$.

In step 1A, the system is calibrated by Zhang’s [6] method and the intrinsic and extrinsic matrices are obtained as follow,

$${A^c} = \left[ {\begin{array}{ccc} {\textrm{5039}\textrm{.2022}}&0&{623.182}\\ 0&{\textrm{5037}\textrm{.449}}&{489.898}\\ 0&0&1 \end{array}} \right], $$
$${A^p} = \left[ {\begin{array}{ccc} {\textrm{3379}\textrm{.554}}&0&{\textrm{979}\textrm{.913}}\\ 0&{\textrm{3379}\textrm{.911}}&{\textrm{488}\textrm{.030}}\\ 0&0&1 \end{array}} \right], $$
$$[{R^p},{t^p}] = \left[ {\begin{array}{cccc} {0.994}&{ - 0.007}&{0.107}&{ - 97.595}\\ { - 0.0002}&{0.998}&{0.069}&{ - 48.540}\\ { - 0.108}&{ - 0.069}&{0.992}&{10.786} \end{array}} \right]. $$

In step 1B, we substitute the intrinsic and extrinsic parameters given in Eqs. (6264) into Eq. (22) and obtain the optimal angle as 1.108 rad.

Subsequently, in Step 1C, we substitute the intrinsic and extrinsic parameters given in Eqs. (6264) to Eqs. (10 12) and obtain the parameters ${l_1}$, ${l_2}$ and ${l_3}$ of the epipolar line, which are dependent on $({{u^c},{v^c}} )$.

5.2 Validation of the optimal fringe angle

In this section, we verify that the epipolar line is indeed perpendicular to the optimal fringe angle because this property is used in our proposed method as a key ingredient. Furthermore, with this property, the optimal fringe angle can be directly obtained from the epipolar line without measurement. For this purpose, we measure the optimal fringe angle by Wang and Zhang’s method [15] which uses a step-height block. Figures 4(a) and 4(b) show the horizontal and vertical fringe images captured by a camera, respectively. Figure 4(c) shows the measured optimal fringe angle distribution at the position of the step-height block, following the steps detailed in [15]. We also calculate the optimal angle using Eq. (22), which is a field varying with $({{u^c},{v^c}} )$, as shown in Fig. 4(d). Note that Wang and Zhang’s method only provides the optimal angle for the pixels in the step-height area, while our method provides the optimal angle for all the camera pixels. Thus, a red box is shown in Fig. 4(d) to indicate the same step-height block area.

 figure: Fig. 4.

Fig. 4. Determining the optimal fringe angle. (a) One of the captured horizontal fringe patterns; (b) one of the captured vertical fringe patterns; (c) the optimal fringe angle distribution by Wang ang Zhang [15]; (d) the optimal fringe angle distribution by our method.

Download Full Size | PDF

We do the following verifications:

  • (i) As we have predicated in Sec. 3.1, the optimal angle is varying but within a small range, which is seen from both Zhang and Wang’s result in Fig. 4(c) and our result in Fig. 4(d). To be more quantitative, a variation range (the peak-valley difference) is calculated from Fig. 4(c) to be 0.009 rad. Because the data in Fig. 4(c) is noisy, a $5 \times 5$ averaging is applied for pre-filtering. The same variation range calculation without pre-filtering is applied to the red box in Fig. 4(d), with a result of 0.006 rad. Both results are small and close to each other. In addition, we calculate the variation range from all the data in Fig. 4(d) and the result is 0.029 rad which is larger but not yet significant;
  • (ii) Since the optimal angle is varying within a small range, we use the average value as the final optimal angle. The results from Fig. 4(c) and from the red box in Fig. 4(d) are 1.097 rad and 1.105 rad, respectively. The difference is considered to be small and well verifies the correctness of our method. The small difference is from the fact that the former uses practical measurement practical measurement while the latter directly computes the angle from the calibration result. We also calculate the average value from all the data in Fig. 4(d), which is 1.108 rad. Both the average values are almost identical to what we obtained from the simplified Eq. (23), which is calibration (1.108 rad). This comparison well verifies [T-P-2].

5.3 Quantitative evaluation with a planer object

With the completion of the calibration in Step 1, we proceed to do the phase measurement in Step 2, the correspondence in Step 3 and the 3D reconstruction in Step 4. All the methods listed in Table 1 are compared for quantitative evaluation. Since these methods are tested in the same calibrated FPP system, they share the same intrinsic and extrinsic metrices as given in Sec. 5.1.

Tables Icon

Table 1. Comparison of different 3D reconstruction methods

A ceramic plate with a size of 300 × 300 $\textrm{m}{\textrm{m}^2}$ and flatness of less than 0.005 mm is used as the measured object. After measuring the plate and obtaining its 3D point cloud, a plane is fitted as

$${A_0}x + {B_0}y + {C_0}z + {D_0} = 0. $$

Then the closest distance from each measurement object point $({{x_0},{y_0},{z_0}} )$ to the fitted plane is computed by

$$Dist({x_0},{y_0},{z_0}) = \frac{{{A_0}{x_0} + {B_0}{y_0} + {C_0}{z_0} + {D_0}}}{{\sqrt {{A_0}^2 + {B_0}^2 + {C_0}^2} }}, $$
from which the spatial standard deviation error (STDE) is computed. The process is repeated 15 times by placing the plate at 15 different locations in the same volume space during the calibration. Figure 5(a) shows the depth data (the middle row along ${u^c}$ direction) of the ceramic plate at the first location; Fig. 5(b) shows the STDEs for all 15 positions. The average values of these STDEs are given in Table 1 for convenient reference. It can be observed that:
  • (i) The HorVer4, OptR4, and OptE3 methods give nearly identical STDEs which verifies that, as long as a pair of angles are perpendicular, their angle values do not affect the measurement precision [T-C-2]. Although the OptE3 method only projects one set of fringe pattern and uses only 3 equations for reconstruction, it gives the same precision [T-M-4]. Because the optimal fringe angle is 1.108 rad (∼ 63.48°) which is closer to vertical fringes than horizontal ones, the Ver3 method performs better than the Hor3 method;
  • (ii) The SSRs are slightly different for different $({{u^c},{v^c}} )$ at different plate positions. We calculate all of them and give the average values in Table 1. It is seen that the SSRs of the Hor3, Ver3, HorVer4 and OptR4 methods are positively correlated with theirs STDEs, and the SSRs of 4-equation method are less than half of those by using 3-equation method [T-R-1]. The SSR of our proposed method is zero, which verify that one equation is redundant [T-M-1].
  • (iii) Table 1 clearly indicates the advantages of the proposed OptE3 method, which only needs 1 set of fringe pattern to be projected but provides the lowest STDE. In addition, the reconstruction speed is also tested. The OptE3 method using Eqs. (3), (4) and (49) (shown in Table 1) is $95 \times $ faster than the 4-equation methods using Eq. (A2) (not shown) and $2 \times $ faster than the 4-equation methods using Eqs. (3), (4) and (A11) (shown in Table 1).
  • (iv) However, it is noticed from Fig. 5(a) that the Hor3 and Ver3 results have observable deviations from the other methods. We have done careful analysis and simulations and found that it is not due to noise [T-M-3]. Instead, the deviation is most likely caused by the calibration process. In all our previous analysis, we have a basic assumption that the pinhole modes and the calibration parameters are ideal, which is not true in practice. We have noticed that the Hor3 method is most sensitive to the deviation of the calibration parameters such as the focal lengths of the camera lens and the projector lens, followed by the Ver3 method, and then by the other methods. More detailed analysis is beyond the scope of this paper and will be our future work.

 figure: Fig. 5.

Fig. 5. Comparison of measurement results of the ceramic plate at 15 different positions. (a) The depth data of the ceramic plate at the first location. (b) The STDE distributions of the ceramic plate at 15 different positions.

Download Full Size | PDF

It is worth noting that, in OptE3, we can project an additional set of fringe pattern with the worst fringe angle for correspondence, and then use all four equations (3336) for reconstruction (abbreviated as OptWor4). The OptWor4 and OptE3 methods are expected to give same results, which has indeed been verified in our experiment. Since OptWor4 is slower and more troublesome than OptE3, we do not encourage readers to use it and thus not listed in Table 1.

5.4 Qualitative evaluation of a complicated object

To visually demonstrate the advantage that the proposed method, we test all the five measurement methods on a Briar Bear as shown in Fig. 6(a). Figures 6(b)-(f) are the 3D results, where the hand portion is magnified. It can be seen that the results by HorVer4 (Fig. 6(d)), OptR4 (Fig. 6(e)), and OptE3 methods (Fig. 6(f)) are very similar, and all of them are smoother than those from the Ver3 method (Fig. 6(c)) and the Hor3 method (Fig. 6(b)), which is consistent with our previous analysis and the plate experiment. Again, since the optimal fringe angle is closer to vertical fringes, the Ver3 method performs better than the Hor3 method.

 figure: Fig. 6.

Fig. 6. Measurement results of a complex object. (a) The original picture of the object; (b) Hor3; (c) Ver3; (d) HorVer4; (e) OptR4; (f) OptE3.

Download Full Size | PDF

6. Conclusions

This paper performs a series of fundamental theoretical analysis on a FPP system, which is critical in precision measurement. Our investigation reveals that, (i) in phase measurement, the optimal and worst fringe angles are perpendicular and parallel to epipolar line, respectively, and can be considered as system parameters and can be directly made available during traditional calibration, highlighting the significance of the epipolar line; (ii) in correspondence, the variance of ${u^p}$ and ${v^p}$ when using two sets of fringes with a pair of (${\theta _1}$, ${\theta _2}$) is minimized where ${\theta _1} \bot {\theta _2}$, but is independence of ${\theta _1}$ itself, clarifying the angle selection problem; (iii) in reconstruction, the sum of squared residual of equations from the 4-eqation methods is at most half of that from 3-equation method, suggesting the preference of the 4-equation methods for higher precision.

Based on these theoretical analysis results, this paper proposes a novel FPP 3D measurement method (OptE3). Compared with the HorVer4 and OptR4 methods, the OptE3 method only needs to project one set of optimal angle fringes, solve three equations by a simple closed form, but achieve the same precision as the 4-equation methods. This unique and graceful property is also theoretically proved, where the epipolar line plays a critical role again. The proposed OptE3 method was demonstrated to have high efficiency, precision and convenience.

Appendix A: The least squares solution of the 4-equation methods

For the 4-equation methods, there are 4 equations to solve 3 unknows and thus a least square solution is sought. Rewriting Eqs. (3336) in the matrix form, we have

$$AX = B, $$
where $A = \left[ {\begin{array}{ccc} 1&0&a\\ 0&1&b\\ c&d&f\\ e&g&h \end{array}} \right]$, $X = \left[ {\begin{array}{c} {{x^w}}\\ {{y^w}}\\ {{z^w}} \end{array}} \right]$ and $B = \left[ {\begin{array}{c} 0\\ 0\\ m\\ n \end{array}} \right]$. The least squares solution can simply be written as
$$X = {({{A^T}A} )^{ - 1}}({{A^T}B} ).$$

However, the derivation is rather complicated, especially for the matrix inverse. Thus, we provide ${A^T}A$ and its inverse $C = {({{A^T}A} )^{ - 1}}$ for reader’s reference:

$${A^T}A = \left[ {\begin{array}{ccc} {{c^2} + {f^2} + 1}&{cd + fg}&{a + ce + fh}\\ {cd + fg}&{{d^2} + {g^2} + 1}&{b + de + gh}\\ {a + ce + fh}&{b + de + gh}&{{a^2} + {b^2} + {c^2} + {d^2}} \end{array}} \right], $$
$$C = \left[ {\begin{array}{ccc} {{C_{11}}}&{{C_{12}}}&{{C_{13}}}\\ {{C_{21}}}&{{C_{22}}}&{{C_{23}}}\\ {{C_{31}}}&{{C_{32}}}&{{C_{33}}} \end{array}} \right], $$
where the entries of this matrix C as,
$${C_{11}} = \frac{{{a^2}({{d^2} + {g^2} + 1} )+ {{({bd - e} )}^2} + {{({bg - h} )}^2} + {{({dh - eg} )}^2}}}{{{\lambda _2} + {\lambda _3} + {\lambda _4} + {\lambda _5}}}, $$
$${C_{22}} = \frac{{({{c^2} + {f^2} + 1} ){b^2} + {{({ac - e} )}^2} + {{({af - h} )}^2} + \textrm{ }{{({ch - ef} )}^2}\textrm{ }}}{{{\lambda _2} + {\lambda _3} + {\lambda _4} + {\lambda _5}}},$$
$${C_{33}} = \frac{{{{({cg - df} )}^2} + {c^2} + {d^2} + {g^2} + {f^2} + 1\textrm{ }}}{{{\lambda _2} + {\lambda _3} + {\lambda _4} + {\lambda _5}}}, $$
$${C_{12}} = {C_{21}} = \frac{{d[{ae - ({{a^2} + {b^2} + {h^2}} )c} ]+ ({a + ce} )({b + gh} )+ f[{({b + de} )h - ({{a^2} + {b^2} + {e^2}} )g} ]}}{{{\lambda _2} + {\lambda _3} + {\lambda _4} + {\lambda _5}}}, $$
$${C_{23}} = {C_{32}} ={-} \frac{{b({1 + {c^2} + {f^2}} )+ d[{e({1 + {f^2}} )- c({a + fh} )} ]+ g[{({{c^2} + 1} )h - ({a + ce} )f} ]}}{{{\lambda _2} + {\lambda _3} + {\lambda _4} + {\lambda _5}}}, $$
$${C_{13}} = {C_{31}} ={-} \frac{{a({1 + {d^2} + {g^2}} )+ c[{e({1 + {g^2}} )- d({b + gh} )} ]+ f[{h({1 + {d^2}} )- g({b + de} )} ]}}{{{\lambda _2} + {\lambda _3} + {\lambda _4} + {\lambda _5}}}.$$

As a final result, we give the expression of ${z^w}$ below, which will be used in Sec. 4.3,

$${\textrm{z}^w}({u^p},{v^p}) = \frac{{\left\{ \begin{array}{l} - m[{ac - e + bd - e({{f^2} + {g^2}} )+ h({cf + dg} )+ ({ag - bf} )({cg - df} )} ]\\ - n[{af + bg - h - h({{c^2} + {d^2}} )+ e({cf + dg} )+ ({bc - ad} )({cg - df} )} ]\end{array} \right\}}}{{\left\{ \begin{array}{l} {({ac - e + bd} )^2} + {({af + bg - h} )^2} + {[{a({cg - df} )+ ({dh - eg} )} ]^2}\\ + {[{b({cg - df} )+ ({ef - ch} )} ]^2} \end{array} \right\}}}. $$

It is worth noting that, although Eq. (A11) looks complicated and primarily used for our theoretical analysis, it is very efficient in computing and thus very useful in practice. We strongly encourage the users to use Eqs. (3), (4) and (A11) for 3D reconstruction instead of using Eq. (A2).

Appendix B: Some numerical results of the parameters in a typical FPP system

In this Appendix, some numerical results of our system, which is pretty typical, are provide, to facilitate the theoretical analysis in Sections 4.3 and 4.4. According to the calibration parameters of the system in Sec. 5.1 and taking $1 \le {u^c} \le 1280$, $1 \le {u^p} \le 1920$, we have

$$94.47 \le {C_1} + {C_2}{u^p} \le 100.60, $$
and
$${C_4} \approx \frac{{{r_{33}}}}{{f_u^p}} ={-} 0.0003. $$

To estimate ${C_3} + {C_4}{u^p}$, both ${u^c}$, ${v^c}$, ${u^p}$ are involved. We consider the following calibration depth range

$$800 = {z_{\min }} \le z \le {z_{\max }} = 1000. $$

This depth range is where the measured object should be positioned, which has been mentioned in Sec. 5.1. Now, given ${u^c}$, ${v^c}$, the range of ${u^p}$ can be obtained from Eqs. (9) and (14), and consequently, we then have

$${C_3} + {C_4}{u^p} \ge 0.124. $$

Next, according to Eq. (50), we have

$$\sigma _{{u^p}}^2 \le {\left( {\frac{T}{{2\pi }}} \right)^2}\sigma _\Phi ^2. $$

In this paper, considering that the fringe periods T is 21 and the standard deviation of phase is ${\sigma _\mathrm{\Phi }} \in ({0.02,0.04} )$[25], we can calculate that the upper bound of ${\sigma _{{u^p}}}$ is 0.13. We then conservatively take a very large error of ${u^p}$ as

$${\delta _{{u^p}}} = 5{\sigma _{{u^p}}} = 0.65. $$

Combing Eqs. (B2) and (B6) gives ${C_4}{\delta _{{u^p}}}$=0.0002, leading to

$${C_4}{\delta _{{u^p}}} \ll {C_3} + {C_4}{u^p}. $$

Funding

Ministry of Education - Singapore (MOE-T2EP20220-0008); Youth Innovation Promotion Association of the Chinese Academy of Sciences (2019221); National Natural Science Foundation of China (11903036, 1803037, 61805243, 62127901); Bureau of International Cooperation, Chinese Academy of Sciences (181722KYSB20180015); Key Research Program of Frontier Science, Chinese Academy of Sciences (QYZDJ-SSW-JSC038).

Acknowledgment

We thank Xiaoyu He from Nanyang Technological University for participating in the discussion, Yang Liu from University of Science and Technology of China for extracting subpixel position and Yuyuan Zhang from Northeast Normal University for helping with the figures for this paper.

Disclosures

The authors declare no conflicts of interest.

Data availability

Data underlying the results presented in this paper are not publicly available at this time but may be obtained from the authors upon reasonable request.

References

1. A. G. Marrugo, F. Gao, and S. Zhang, “State-of-the-art active optical techniques for three-dimensional surface metrology: a review [Invited],” J. Opt. Soc. Am. A 37, 1 (2020). [CrossRef]  

2. Y. Liu, L. Blunt, Z. Zhang, H. A. Rahman, F. Gao, and X. Jiang, “In-situ areal inspection of powder bed for electron beam fusion system based on fringe projection profilometry,” Addit. Manuf. 31, 100940 (2020). [CrossRef]  

3. Y. Wang, J. I. Laughner, I. R. Efimov, and S. Zhang, “3D absolute shape measurement of live rabbit hearts with a superfast two-frequency phase-shifting technique,” Opt. Express 21(5), 5822–5832 (2013). [CrossRef]  

4. Y. H. Liao, J. S. Hyun, M. Feller, T. Bell, I. Bortins, J. Wolfe, D. Baldwin, and S. Zhang, “Portable high-resolution automated 3D imaging for footwear and tire impression capture,” J. Forensic Sci. 66(1), 112–128 (2021). [CrossRef]  

5. Z. Wang, D. A. Nguyen, and J. C. Barnes, “Some practical considerations in fringe projection profilometry,” Opt. Laser. Eng. 48(2), 218–225 (2010). [CrossRef]  

6. S. Zhang and P. S. Huang, “Novel method for structured light system calibration,” Opt. Eng. 45(8), 083601 (2006). [CrossRef]  

7. S. Zhang, High-Speed-3D-Imaging-with-Digital-Fringe-Projection-Techniques, 1st ed. (CRC Press, 2016).

8. S. Feng, C. Zuo, L. Zhang, T. Tao, Y. Hu, W. Yin, J. Qian, and Q. Chen, “Calibration of fringe projection profilometry: A comparative review,” Opt. Laser Eng. 143, 106622 (2021). [CrossRef]  

9. C. Zuo, L. Huang, M. Zhang, Q. Chen, and A. Asundi, “Temporal phase unwrapping algorithms for fringe projection profilometry: A comparative review,” Opt. Laser Eng. 85, 84–103 (2016). [CrossRef]  

10. C. Zuo, S. Feng, L. Huang, T. Tao, W. Yin, and Q. Chen, “Phase shifting algorithms for fringe projection profilometry: A review,” Opt. Laser Eng. 109, 23–59 (2018). [CrossRef]  

11. S. Zhang, “Absolute phase retrieval methods for digital fringe projection profilometry: A review,” Opt. Laser Eng. 107, 28–37 (2018). [CrossRef]  

12. Q. Kemao, “Carrier fringe pattern analysis: Links between methods,” Opt. Laser Eng. 150, 1 (2022). [CrossRef]  

13. X. He and Q. Kemao, “A comparative study on temporal phase unwrapping methods in high-speed fringe projection profilometry,” Opt. Laser Eng. 142, 1 (2021). [CrossRef]  

14. X. He and Q. Kemao, “A comparison of n-ary simple code and n-ary gray code phase unwrapping in high-speed fringe projection profilometry,” Opt. Laser Eng. 128, 106046 (2020). [CrossRef]  

15. Y. Wang and S. Zhang, “Optimal fringe angle selection for digital fringe projection technique,” Appl. Opt. 52(29), 7094–7098 (2013). [CrossRef]  

16. P. Zhou, X. Liu, and T. Zhu, “Analysis of the relationship between fringe angle and three-dimensional profilometry system sensitivity,” Appl. Opt. 53(13), 2929–2935 (2014). [CrossRef]  

17. R. Zhang, H. Guo, and A. K. Asundi, “Geometric analysis of influence of fringe directions on phase sensitivities in fringe projection profilometry,” Appl. Opt. 55(27), 7675–7687 (2016). [CrossRef]  

18. B. Li and S. Zhang, “Structured light system calibration method with optimal fringe angle,” Appl. Opt. 53(33), 7942–7950 (2014). [CrossRef]  

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

20. B. Li, N. Karpinsky, and S. Zhang, “Novel calibration method for structured-light system with an out-of-focus projector,” Appl. Opt. 53(16), 3415–3426 (2014). [CrossRef]  

21. Z. Zhang, R. Deriche, O. Faugeras, and Q.-T. Luong, “A robust technique for matching two uncalibrated images through the recovery of the unknown epipolar geometry,” Artificial Intelligence 78(1-2), 87–119 (1995). [CrossRef]  

22. H. C. Longuet-Higgins, “A computer algorithm for reconstructing a scene from two projections,” Nature 293(5828), 133–135 (1981). [CrossRef]  

23. Å Björck, “Least squares methods,” Handbook of Numerical Analysis1, 465–652 (Elsevier, 1990).

24. Z. Zhang, C. E. Towers, and D. P. Towers, “Time efficient color fringe projection system for 3D shape and color using optimum 3-frequency Selection,” Opt. Express 14(14), 6444–6455 (2006). [CrossRef]  

25. H. Wang, Q. Kemao, and S. H. Soon, “Valid point detection in fringe projection profilometry,” Opt. Express 23(6), 7535–7549 (2015). [CrossRef]  

Data availability

Data underlying the results presented in this paper are not publicly available at this time but may be obtained from the authors upon reasonable request.

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 (6)

Fig. 1.
Fig. 1. A typical FPP system.
Fig. 2.
Fig. 2. Epipolar geometry model of the projector and the camera, where ${l_p}$ is the epipolar line.
Fig. 3.
Fig. 3. The proposed OptE3 measurement procedure.
Fig. 4.
Fig. 4. Determining the optimal fringe angle. (a) One of the captured horizontal fringe patterns; (b) one of the captured vertical fringe patterns; (c) the optimal fringe angle distribution by Wang ang Zhang [15]; (d) the optimal fringe angle distribution by our method.
Fig. 5.
Fig. 5. Comparison of measurement results of the ceramic plate at 15 different positions. (a) The depth data of the ceramic plate at the first location. (b) The STDE distributions of the ceramic plate at 15 different positions.
Fig. 6.
Fig. 6. Measurement results of a complex object. (a) The original picture of the object; (b) Hor3; (c) Ver3; (d) HorVer4; (e) OptR4; (f) OptE3.

Tables (1)

Tables Icon

Table 1. Comparison of different 3D reconstruction methods

Equations (85)

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

s c [ u c , v c , 1 ] t = A c [ R c , t c ] [ x w , y w , z w , 1 ] t ,
A c = [ f u c 0 u 0 c 0 f v c v 0 c 0 0 1 ] ,
x w = u c u 0 c f u c z w ,
y w = v c v 0 c f v c z w .
s p [ u p , v p , 1 ] t = A p [ R p , t p ] [ x w , y w , z w , 1 ] t ,
P p = A p [ R p , t p ] = [ f u p 0 u 0 p 0 f v p v 0 p 0 0 1 ] [ r 11 r 12 r 13 t 1 r 21 r 22 r 23 t 2 r 31 r 32 r 33 t 3 ] ,
u p = { ( f u p r 11 + u 0 p r 31 ) ( u c u 0 c ) z w + ( f u p r 12 + u 0 p r 32 ) f u c f v c ( v c v 0 c ) z w +   ( f u p r 13 + u 0 p r 33 ) f u c z w +   ( f u p t 1 + u 0 p t 3 ) f u c } r 31 ( u c u 0 c ) z w + r 32 f u c f v c ( v c v 0 c ) z w + r 33 f u c z w + t 3 f u c ,
v p = { ( f v p r 21 + v 0 p r 31 ) ( u c u 0 c ) z w + ( f v p r 22 + v 0 p r 32 ) f u c f v c ( v c v 0 c ) z w +   ( f v p r 23 + v 0 p r 33 ) f u c z w +   ( f v p t 2 + v 0 p t 3 ) f u c } r 31 ( u c u 0 c ) z w + r 32 f u c f v c ( v c v 0 c ) z w + r 33 f u c z w + t 3 f u c .
u p l 1 + v p l 2 + l 3 = 0 ,
l 1 = 1 f u c f u p [ ( u c u 0 c ) ( t 3 r 21 + t 2 r 31 ) + ( v c v 0 c ) ( t 2 r 32 t 3 r 22 ) f u c f v c + ( t 3 r 23 + t 2 r 33 ) f u c ] ,
l 2 = 1 f v p f u c [ ( u c u 0 c ) ( t 3 r 11 t 1 r 31 ) + ( v c v 0 c ) ( t 3 r 12 t 1 r 32 ) f u c f v c + ( t 3 r 13 t 1 r 33 ) f u c ] ,
l 3 = ( u c u 0 c ) f u c [ u 0 p f u p ( t 3 r 21 t 2 r 31 ) + v 0 p f v p ( t 3 r 11 + t 1 r 31 ) + ( t 2 r 11 + t 1 r 21 ) ] + ( v c v 0 c ) f v c [ u 0 p f u p ( t 3 r 22 t 2 r 32 ) + v 0 p f v p ( t 3 r 12 + t 1 r 32 ) + ( t 2 r 12 + t 1 r 22 ) ] u 0 p f u p ( t 3 r 23 + t 2 r 33 ) v 0 p f v p ( t 3 r 13 t 1 r 33 ) + ( t 2 r 13 + t 1 r 23 ) .
I ( u p , v p ) = 1 2 + 1 2 cos [ Φ ( u p , v p , θ ) ] ,
Φ ( u p , v p , θ ) = 2 π T [ u p sin ( θ ) + v p cos ( θ ) ] ,   θ [ 0 , π ) ,
Φ ( u c , v c ) = Φ ( u p , v p ) .
H ( θ ) = Φ ( u c , v c ) z w ( u c , v c ) = Φ ( u p , v p ) z w ( u c , v c ) = 2 π T [ u p z w sin ( θ ) + v p z w cos ( θ ) ] ,
H ( θ ) = 2 π T ( u p z w ) 2 + ( v p z w ) 2 cos ( θ ψ ) ,
θ o p t = { ψ ,   w h e n   ψ 0 ψ + π , w h e n   ψ < 0 .
tan ( θ o p t ) = tan ( ψ ) = u p z w / v p z w .
u p z w = f u c f u p [ ( r 11 t 3 t 1 r 31 ) ( u c u 0 c ) + ( r 12 t 3 t 1 r 32 ) f u c f v c ( v c v 0 c ) + ( r 13 t 3 t 1 r 33 ) f u c ] [ r 31 ( u c u 0 c ) z w + r 32 f u c f v c ( v c v 0 c ) z w + r 33 f u c z w + t 3 f u c ] 2 ,
v p z w = f u c f v p [ ( r 21 t 3 t 2 r 31 ) ( u c u 0 c ) + ( r 22 t 3 t 2 r 32 ) f u c f v c ( v c v 0 c ) + ( r 23 t 3 t 2 r 33 ) f u c ] [ r 31 ( u c u 0 c ) z w + r 32 f u c f v c ( v c v 0 c ) z w + r 33 f u c z w + t 3 f u c ] 2 .
tan ( θ o p t ) = f u p [ ( r 11 t 3 t 1 r 31 ) ( u c u 0 c ) + ( r 12 t 3 t 1 r 32 ) f u c f v c ( v c v 0 c ) + ( r 13 t 3 t 1 r 33 ) f u c ] f v p [ ( r 21 t 3 t 2 r 31 ) ( u c u 0 c ) + ( r 22 t 3 t 2 r 32 ) f u c f v c ( v c v 0 c ) + ( r 23 t 3 t 2 r 33 ) f u c ] .
tan ( θ o p t ) f u p ( r 13 t 3 t 1 r 33 ) f v p ( r 23 t 3 t 2 r 33 ) ,
tan ( θ w o r s t ) = v p z w / u p z w .
k 1 = l 1 l 2 = f v p [ ( u c u 0 c ) ( t 2 r 31 t 3 r 21 ) + ( v c v 0 c ) ( t 2 r 32 t 3 r 22 ) f u c f v c + ( t 3 r 23 + t 2 r 33 ) f u c ] f u p [ ( u c u 0 c ) ( t 3 r 11 t 1 r 31 ) + ( v c v 0 c ) ( t 3 r 12 t 1 r 32 ) f u c f v c + ( t 3 r 13 t 1 r 33 ) f u c ] .
Φ 1 = 2 π T [ u p sin ( θ 1 ) + v p cos ( θ 1 ) ] ,
Φ 2 = 2 π T [ u p sin ( θ 2 ) + v p cos ( θ 2 ) ] ,
u p = T 2 π [ Φ 1 cos ( θ 2 ) Φ 2 cos ( θ 1 ) sin ( θ 1 θ 2 ) ] ,
v p = T 2 π [ Φ 1 sin ( θ 2 ) Φ 2 sin ( θ 1 ) sin ( θ 1 θ 2 ) ] .
σ u p 2 = ( T 2 π ) 2 [ σ Φ 1 2 cos 2 ( θ 2 ) + σ Φ 2 2 cos 2 ( θ 1 ) sin 2 ( θ 1 θ 2 ) ] ,
σ v p 2 = ( T 2 π ) 2 [ σ Φ 1 2 sin 2 ( θ 2 ) + σ Φ 2 2 sin 2 ( θ 1 ) sin 2 ( θ 1 θ 2 ) ] ,
σ 2 ( u p , v p ) = σ u p 2 + σ v p 2 = ( T 2 π ) 2 [ 2 σ Φ 2 sin 2 ( θ 1 θ 2 ) ] .
x w + a z w = 0 ,
y w + b z w = 0 ,
c x w + d y w + e z w m = 0 ,
f x w + g y w + h z w n = 0 ,
a = u c u 0 c f u c , b = v c v 0 c f v c ,   c = r 11 r 31 u p u 0 p f u p , d = r 12 r 32 u p u 0 p f u p ,   e = r 13 r 33 u p u 0 p f u p ,   f = r 21 r 31 v p v 0 p f v p , g = r 22 r 32 v p v 0 p f v p ,   h = r 23 r 33 v p v 0 p f v p ,   m = t 3 u p u 0 p f u p t 1 , n = t 3 v p v 0 p f v p t 2 .
v 1 = f x 0 w + g y 0 w + h z 0 w n ,
v 1 2 = λ 1 λ 2 ,
v 2 2 = λ 1 λ 3 ,
v 3 2 = λ 1 λ 2 + λ 3 + λ 4 + λ 5 ,
λ 2 = ( a c e + b d ) 2 ( a e ) 2 , λ 3 = ( a f + b g h ) 2 ( b h ) 2 , λ 4 = [ a ( c g d f ) + ( d h e g ) ] 2 ( a e ) 2 λ 2 , λ 5 = [ b ( c g d f ) + ( e f c h ) ] 2 ( b h ) 2 λ 3 .
v 3 2 λ 1 2 ( λ 2 + λ 3 ) < λ 1 2 λ 2 = 0.5 v 1 2 ,
v 3 2 λ 1 2 ( λ 2 + λ 3 ) < λ 1 2 λ 3 = 0.5 v 2 2 .
[ 1 0 0 0 1 b 0 c d e m f g h n ] .
[ 1 0 a 0 0 1 b 0 0 0 e a c b d m 0 0 0 ( e a c b d ) n ( h a f b g ) m ] .
( e a c b d ) n ( h a f b g ) m = 0.
z O p t E 3 w ( u p ) = m / ( e a c b d ) .
z O p t E 3 w ( u p ) = C 1 + C 2 u p C 3 + C 4 u p ,
C 3 = ( u c u 0 c f u c r 11 + r 13 + v c v 0 c f v c r 12 + u c u 0 c f u c u 0 p f u p r 31 + u 0 p f u p r 33 + v c v 0 c f v c u 0 p f u p r 32 )
u p = l 2 Φ + 2 π T l 3 cos θ o p t 2 π T ( l 2 sin θ o p t l 1 cos θ o p t ) ,
v p = l 1 Φ + 2 π T l 3 sin θ o p t 2 π T ( l 1 cos θ o p t l 2 sin θ o p t ) ,
σ u p 2 = ( T 2 π ) 2 ( l 2 ) 2 ( l 1 ) 2 + ( l 2 ) 2 σ Φ 2 ,
σ v p 2 = ( T 2 π ) 2 ( l 1 ) 2 ( l 1 ) 2 + ( l 2 ) 2 σ Φ 2 .
z O p t E 3 w ( u p , δ u p ) = C 1 + C 2 ( u p + δ u p ) C 3 + C 4 ( u p + δ u p ) .
δ z = z O p t E 3 w ( u p , δ u p ) z O p t E 3 w ( u p ) = [ C 2 C 3 C 1 C 4 ] δ u p ( C 3 + C 4 u p ) ( C 3 + C 4 u p + C 4 δ u p ) .
δ z ( C 2 C 3 C 1 C 4 ) ( C 3 + C 4 u p ) 2 δ u p .
σ z 2 = ( z u p ) 2 σ u p 2 + ( z v p ) 2 σ v p 2 .
σ z O p t E 3 2 = ( T 2 π ) 2 [ l 2 f v p f u p ( a c e + b d ) 2 ] 2 ( l 2 ) 2 ( l 1 ) 2 + ( l 2 ) 2 σ Φ 2 .
σ u p 2 = σ v p 2 = ( T 2 π ) 2 σ Φ 2 .
σ z O p t R 4 2 = ( T 2 π ) 2 [ ( z O p t R 4 u p ) 2 + ( z O p t R 4 v p ) 2 ] σ Φ 2 ,
F ( u c , v c , u p , v p ) = σ z O p t E 3 2 / σ z O p t R 4 2 .
A c = [ 5039 .2022 0 623.182 0 5037 .449 489.898 0 0 1 ] ,
A p = [ 3379 .554 0 979 .913 0 3379 .911 488 .030 0 0 1 ] ,
[ R p , t p ] = [ 0.994 0.007 0.107 97.595 0.0002 0.998 0.069 48.540 0.108 0.069 0.992 10.786 ] .
A 0 x + B 0 y + C 0 z + D 0 = 0.
D i s t ( x 0 , y 0 , z 0 ) = A 0 x 0 + B 0 y 0 + C 0 z 0 + D 0 A 0 2 + B 0 2 + C 0 2 ,
A X = B ,
X = ( A T A ) 1 ( A T B ) .
A T A = [ c 2 + f 2 + 1 c d + f g a + c e + f h c d + f g d 2 + g 2 + 1 b + d e + g h a + c e + f h b + d e + g h a 2 + b 2 + c 2 + d 2 ] ,
C = [ C 11 C 12 C 13 C 21 C 22 C 23 C 31 C 32 C 33 ] ,
C 11 = a 2 ( d 2 + g 2 + 1 ) + ( b d e ) 2 + ( b g h ) 2 + ( d h e g ) 2 λ 2 + λ 3 + λ 4 + λ 5 ,
C 22 = ( c 2 + f 2 + 1 ) b 2 + ( a c e ) 2 + ( a f h ) 2 +   ( c h e f ) 2   λ 2 + λ 3 + λ 4 + λ 5 ,
C 33 = ( c g d f ) 2 + c 2 + d 2 + g 2 + f 2 + 1   λ 2 + λ 3 + λ 4 + λ 5 ,
C 12 = C 21 = d [ a e ( a 2 + b 2 + h 2 ) c ] + ( a + c e ) ( b + g h ) + f [ ( b + d e ) h ( a 2 + b 2 + e 2 ) g ] λ 2 + λ 3 + λ 4 + λ 5 ,
C 23 = C 32 = b ( 1 + c 2 + f 2 ) + d [ e ( 1 + f 2 ) c ( a + f h ) ] + g [ ( c 2 + 1 ) h ( a + c e ) f ] λ 2 + λ 3 + λ 4 + λ 5 ,
C 13 = C 31 = a ( 1 + d 2 + g 2 ) + c [ e ( 1 + g 2 ) d ( b + g h ) ] + f [ h ( 1 + d 2 ) g ( b + d e ) ] λ 2 + λ 3 + λ 4 + λ 5 .
z w ( u p , v p ) = { m [ a c e + b d e ( f 2 + g 2 ) + h ( c f + d g ) + ( a g b f ) ( c g d f ) ] n [ a f + b g h h ( c 2 + d 2 ) + e ( c f + d g ) + ( b c a d ) ( c g d f ) ] } { ( a c e + b d ) 2 + ( a f + b g h ) 2 + [ a ( c g d f ) + ( d h e g ) ] 2 + [ b ( c g d f ) + ( e f c h ) ] 2 } .
94.47 C 1 + C 2 u p 100.60 ,
C 4 r 33 f u p = 0.0003.
800 = z min z z max = 1000.
C 3 + C 4 u p 0.124.
σ u p 2 ( T 2 π ) 2 σ Φ 2 .
δ u p = 5 σ u p = 0.65.
C 4 δ u p C 3 + C 4 u p .
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.