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

Approximations for the arctangent function in efficient fringe pattern analysis

Open Access Open Access

Abstract

In fringe pattern analyses, the computational burden of implementing the arctangent function over an entire phase map is not trivial, hindering it from being used in real-time measurements. For overcoming this problem, this paper presents a general method for approximating the arctangent function. The domain of the arctangent function is split into a sequence of intervals. For each interval, approximation polynomials are determined in the maximum-norm sense. By applying these polynomials instead of the standard arctangent function to the fringe analyses, the efficiencies of phase evaluations are improved significantly. The accuracies and simplicities of the approximations have been analyzed numerically, and their validities have also been verified by using experimental results.

©2007 Optical Society of America

1. Introduction

In recent decades, a number of techniques of optical metrology have been developed in order to measure an object in motion, or to do a measurement in a short time such that the influences of circumstance disturbances are shunned. In them, efficient fringe analysis methods have central roles. Typically, Fourier transform methods (FTMs) are very much suitable for measuring a dynamic object, because they permit retrieving the phase map from a single fringe pattern with a spatial carrier [1–8]. Such a pattern can be instantaneously recorded with a high-speed camera [4, 5]; moreover, the method using a strobe illumination device to “freeze” the fringe pattern of a spinning object has also been reported [6]. Based on the concept of FTMs, many algorithms have been proposed for facilitating fringe demodulations. Combining multiple carrier frequencies in a single pattern is helpful for automating phase unwrapping procedure thus avoiding the interruptions induced by manual interventions [7, 8]. For saving the computational time, an accelerating FFT (short for fast Fourier transform) algorithm was derived in Reference [9] by using the knowledge about the carrier frequencies. Note that the filtering process in FTMs can be performed equivalently in spatial domain by the convolution of the fringe pattern with a kernel. Such methods, that include spatial carrier phase-shifting methods [10–12], spatial synchronous detection methods [13–17], virtual Moiré demodulation methods [18] and so forth, usually employ much smaller kernels in order to guarantee the computational efficiencies or to take advantage of hardware implementations, at the expense of low resolutions.

A second, and perhaps equally important type of techniques that operates in a single shot time is spatial phase-shifting (SPS) technique. In interferometry, the schemes for generating simultaneous phase-shifted interferograms are devised by means of polarization optics and diffraction gratings [19–21]. In fringe projection technique, the same task can be performed via the color encoding approach [22], which combines three phase-shifted fringe patterns (in three primary colors, respectively,) into a single pattern and then casts it onto object surfaces with a commercial digital projector. The deformed phase-shifted fringe patterns are captured and isolated from each other by using a RGB camera. Since SPS technique utilizes phase-shifting algorithms to retrieve the phase maps from fringe patterns and does not require carrier frequencies, its computational complexity, in general, is much lower than that of FTMs. An exception is raised when the frequency-division multiplexing technique is used. With it, a total of four phase-shifted fringe patterns as band-limited signals are combined into a single pattern by modulating different sinusoid carriers, and the demultiplexing of the deformed patterns has to be performed in Fourier frequency domain [23].

Temporal phase-shifting (TPS) techniques are also used for measuring dynamic objects due to the availabilities of high-speed fringe generating devices, such as those using various spatial light modulators [24–28]. A synchronous camera is used for capturing the fringe images. In order to shorten the period for image capturing, TPS techniques used here warrant retrieving the phase map from as few fringe patterns as possible. Accordingly, some special algorithms using two or three frames have been proposed [29–31].

An important step shared by the aforementioned techniques is to calculate a wrapped phase map by using the inverse trigonometric arctangent function. However, the computational burden of implementing the standard arctangent function over an entire phase map is not trivial. This property is not always desirable, especially for a real-time measurement where the efficiency for fringe analysis is crucial. This problem has been partially addressed in the previous literature. For example, Reference [32] suggests a lookup-table method for computing the arctangent function. It is very fast but requires considerable memory. Reference [33] uses polynomials instead of the standard arctangent function for calculating the phases. Reference [34] presents a fast three-step phase-shifting algorithm, whose essence is also based on an approximation for the arctangent function. Because these approximation methods are bound to the special fringe demodulation algorithms, they are hard to extend and apply to other fringe demodulation techniques.

In this article, we aim to present a general method for approximating the arctangent function with a piecewise-defined function. The domain of the arctangent function is split into a sequence of intervals. For each interval, an approximation polynomial is determined in the L -norm (maximum-norm) sense. By applying these polynomials to the foregoing fringe analysis techniques, the efficiencies for phase evaluations are improved significantly. The accuracies and the computational simplicities of the approximations, depending not only on the degrees of polynomials but also on the number of intervals, are analyzed numerically. Moreover, their validities are also verified by using experimental results.

2. Method

2.1 Principle of fringe analysis

For the convenience of descriptions, we presume for the moment that FTM is used for phase recovery (because it is more frequently used for measuring dynamic objects). The fringe pattern with a linear spatial carrier is usually represented with

gxy=axy+bxycos[uCx+vCy+Φxy],

where (x, y) are pixel coordinates in the fringe pattern, and then g(x, y), a(x, y) and b(x, y) denote the recorded intensity, the background intensity and the modulation at the pixel (x, y), respectively; Φ(x, y) is the phase to be measured; and uc and vc denote the carrier frequencies along x and y directions, respectively. By using the inverse Euler formula, we rewrite Eq. (1) as

gxy=axy+cxyexp(uCx+vCy)+c*xyexp(uCxvCy)

where * denotes the complex conjugate and c(x, y)=b(x, y)exp[(x, y)]/2 is a complex fringe pattern. The 2-D Fourier spectrum of Eq. (2) is

Gxv=Axv+CuuCvvC+C*u+uCv+vC.

where u and v are the frequencies along x and y directions, respectively; and A(u, v) and C(u,v) are 2-D Fourier transforms of a(x, y) and c(x, y), respectively. In Fourier domain, C(u-uc, v-vc) and C*(u+uc, v+vc) correspond to a pair of lobes which are conjugate symmetric to each other. Performing a filtering process, one of the lobes, for example C(u-uc, v-vc), is isolated. Translating it by uc and vc toward the origin, we have C(u, v). Implementing an inverse Fourier transform, the complex fringe pattern c(x, y) is obtained. Then by defining

Xxy=Re[cxy],
Yxy=Im[cxy]

and

rxy=YxyXxy,

the phases are calculated with

Φxy=Φ[rxy]=arctan[rxy].

Keep in mind during this procedure that the phase map can also be recovered by using phase-shifting algorithms as indicated in the introduction, but in which more fringe patterns are required. With them, the real part and imaginary part of the complex fringe pattern are obtained individually by computing the weighted sums of the intensities.

The value range of the standard arctangent function is (-π/2, π/2). By considering the signs of X(x, y) and Y(x, y), we can get the four-quadrant arctangent whose range is (-π,π]. In many programming environments, the four-quadrant arctangent can be directly calculated by using a built-in function with two variables. The problem is that the computational burden of implementing this built-in function over an entire phase map, as indicated in Reference [34], is usually prohibitive for real-time measurements. This problem can be solved by approximating the arctangent function with piecewise polynomials. In next subsection, we shall introduce a method for approximating the arctangent function within an interval. [Note that, in the following sections, the coordinate notation (x, y) will be omitted for shortening the mathematic representations.]

2.2 Approximating the arctangent function within an interval

Assume that the arctangent function Φ(r)=arctan(r) within the interval [r 1, r 2] is continuous and can be approximated with a polynomial of the form

Ψ(r)=n=0Npnrn,

where N is the degree of the polynomial, and pn for n=0, 1,…, N denote its coefficients. Equation (8) involves (N+N 2)/2 multiply and N add operations. For simplifying the computation, it is easily to reshape Eq. (8) as

Ψ(r)=p0+r(p1+r(p2+r(p3++r(pN1+pNr)))),

which uses only N multiply and N add operations.

In order to guarantee the continuities of the piecewise approximation function at the edges of each interval, we enforce

Ψ(r1)=n=0Npnr1n=arctan(r1)=Φ(r1)

and

Ψ(r2)=n=0Npnr2n=arctan(r2)=Φ(r2).

In addition, the polynomial should be selected to minimize the following L -distance between Φ(r) and Ψ(r):

ΦΨ=maxr1rr2Φ(r)Ψ(r).

If these conditions are satisfied, Φ(r)-Ψ(r) within [r 1, r 2], according to the theory from numerical analysis, has at least N+1 distinct roots (including r 1 and r 2) and at least N extrema with the same absolute values and alternative signs. Based on these properties, the polynomial Ψ(r) can be determined by using the iterative method based on Remez algorithm, whose procedure is summarized as follows:

  • ● Step 1. Arbitrarily select N points ξk(k=1, 2, …,N), which satisfy r 1<ξ1<ξ2<…<ξN<r 2.
  • ● Step 2. Assume that Φ(ξk)-Ψ(ξk) for k=1, 2, …, N have the same absolute values and alternative signs, viz.

    Φ(ξk)Ψ(ξk)=arctan(ξk)n=0N=pnξkn=(1)kη,fork=1,2,,N.

    Combining Eqs. (10), (11) and (13) together yields a linear system with N + 2 equations. Solve it for the unknowns pn (n=0, 1, …, N) and η.

  • ● Step 3. Construct the polynomial Ψ(r) by using the coefficients pn just obtained. Solving the equations

    d[Φ(r)Ψ(r)]dr=11+r2n=1Nnpnrn1=0,

    we get N extemum points for Φ(r)-Ψ(r) (Note that Eq. (14) is nonlinear, and a Newton—Raphson procedure is implemented for solving it).

  • ● Step 4. Denote the extemum points just obtained instead as ξk(k=1, 2, …, N). Repeat Steps 2 and 3 alternately until the algorithm converges.

By this method, the approximation polynomial for the arctangent function within the interval [r 1, r 2] is constructed. In next section, we first apply this algorithm to specified intervals, and then use its results to derive piecewise approximations for the arctangent function in the full range of 2π radians.

3. Results and discussions

3.1 Four-quadrant approximations of the arctangent function

By the comparisons of X and -X with respect to Y, the 2π-radian range of the arctangent function is segmented into four sectors, each of which covers a angle of π/2 radians as illustrated in Fig. 1. The sector from -π/4 to π/4 (where the inequality X>Y≥-X is satisfied) corresponds to the interval -1<r≤1. In it, the approximation polynomials with different degrees are constructed by using the algorithm described in Section 2.2. Their coefficients and maximum errors are listed in Table 1. Because the arctangent in this interval is odd symmetric, the even terms are absent in these polynomials.

Tables Icon

Table 1. Coefficients and Maximum Errors of the Polynomials when Approximating the Arctangent Function within the Interval [1, -1]

Tables Icon

Table 2. The Computational Operations Involved in Eq.15

 figure: Fig. 1.

Fig. 1. The 2π radian range of the arctangent function is segmented into four quadrants.

Download Full Size | PDF

Based on these polynomials, the piecewise approximation functions, in the full 2π range, are derived by use of trigonometric identities. The result is

Φ={Ψ(XY)ifY<XandYXπ2Ψ(XY)ifYXandYXπ+Ψ(YX)ifYXandY<Xπ2Ψ(XY)ifY<XandY<X

where Ψ(∙) is defined by Eq. (8) and is with the coefficients in Table 1. (Note that, we do not deal with the special case X=Y=0 in Eq. (15), because this case is not important in practical measurements.) The computational burdens of implementing Eq. (15) are reported in Table 2. Among these functions, the piecewise linear function is the most efficient, because it uses only two comparisons, and one multiply, one divide and one add/subtract operations. For this reason, it has been used in many applications, for example, in computer graphics for determining the convex hull of a set of points [35]. But its accuracy, in general, does not meet the demands of optical measurements. Using high degree polynomials is helpful for improving the accuracy, at the expense of increased computational operations. For example, when using the polynomial of degree 5, the phase error is not more than 0.0007 radians. Figure 2 compares the approximation errors versus the phases when using the approximation functions with different degrees.

 figure: Fig. 2.

Fig. 2. The approximation errors versus phases by using Eq. (15) with degrees being 1(solid line), 3 (dotted line) and 5 (dashed line), respectively.

Download Full Size | PDF

 figure: Fig. 3.

Fig. 3. (a) A fringe pattern and (b) its phase map reconstructed by using FTM and the standard arctangent function.

Download Full Size | PDF

 figure: Fig. 4.

Fig. 4. The approximation errors by using Eq. (15) with the degrees being (a) 1, (b) 3 and (c) 5.

Download Full Size | PDF

The accuracies of these approximation functions are also verified by using experimental results. Figure 3(a) shows a practical fringe pattern with 350 by 350 pixels, from which the phase map is retrieved by using FTM together with the standard arctangent function. The result is illustrated in Fig. 3(b). The approximation functions defined by Eq. (15) are also used for calculating the phase map. Because the differences between Fig. 3(b) and the results with Eq. (15) are not easily visible, we directly present the approximation errors of Eq. (15) in Fig. 4. The panels, from left to right, show the errors when the polynomial degrees are taken as 1, 3 and 5, respectively. In each panel, the error distribution is mapped into an image, according to the gray-bar beside the image. From these results, we see that the approximation errors in this experiment well accord with the values in Table 1.

Another important aspect about this technique is that of computational efficiency. Using a personal computer with 1.7GHz processor and simply programming with C++ language, the computational time of implementing the standard arctangent function over the entire phase map is about 50 milliseconds. When using the approximation functions with the polynomial degrees being 1, 3 and 5, the computational durations are 15, 19 and 21 milliseconds, respectively. It should be pointed out that such data cannot describe the efficiencies of the algorithms in the exact sense, because these data are impacted not only by the computational complexities of the algorithms, but also by other factors such as the optimizations of the codes and the available computer resources when the program is running. Using a parallel computer or writing assembler codes may further improve the efficiencies of the approximations.

Note that the value range of Eq. (15) is not (-π, π] but (-3π/4, 5π/4]. This property of Eq. (15), in general, has no influence on the measurement results, because a phase unwrapping procedure always follows. In case the (-π, π] value range is important in some applications, the trigonometric identity, arctan(Y/X)=arctan[(X+Y )/(X-Y)]-π/4, is utilized, and then Eq. (15) can be reformed as

Φ={π4Ψ[(XY)(X+Y)]ifX0andY0π4+Ψ[(X+Y)(XY)]ifX0andY<03π4+Ψ[(X+Y)(XY)]ifX<0andY03π4Ψ[(XY)(X+Y)]ifX<0andY<0

whose values lie in (-π, π]. With Eq. (16), the maximum errors are the same as those with Eq. (15), but the number of add/subtract operations increases.

3.2 Six-sextant approximations of the arctangent function

Another approximation approach is to subdivide the 2π radian range of the arctangent function into six sextants. Within the interval -√3/3≤ ≤√3/3 , the coefficients and maximum errors of the approximation polynomials are listed in Table 3, from which we see that these polynomials do not contain even terms because of the odd symmetry property of the arctangent function. By using trigonometric identities, especially by using that arctan(Y/X) = π/6 + arctan[(√3Y-X)/(Y + √3X)], the piecewise approximation function is deduced as

Φ={π2Ψ(XY)Y0andY3XandY3X5π6+Ψ[(3YX)(Y3X)]Y0andY3XandY<3Xπ6+Ψ[(3YX)(Y+3X)]Y0andY<3X5π6+Ψ[(3Y+X)(Y3X)]Y<0andY3Xπ6+Ψ[(3Y+X)(Y+3X)]Y<0andY<3XandY3Xπ2Ψ(XY)Y<0andY<3XandY<3X,

where the values of Φ lie in the range (-π, π], whose six sectors are shown in Fig. 5.

In Eq. (17), the width of each interval is smaller than that adopted in Section 3.1. For this reason, on the one hand, these functions have much higher accuracies than those in Section 3.1 with the same degrees; on the other hand, more comparisons are required for segmenting the 2π range into six intervals. We see from Fig. 5 that only two comparisons are required for determining the two intervals form 0 to π/3 and form -π to -π/3, but other intervals require three comparisons. The average number of the comparisons is 8/3. The numbers of computational operations are reported in Table 4. The approximation errors of Eq. (17) with different degrees are compared in Fig. 6, in which the fluctuation of the curve for the function with degree 5 is not easily visible due to the large scale of the vertical axis. The error distributions of applying Eq. (17) to the practical fringe pattern are shown in Fig. 7.

Tables Icon

Table 3. Coefficients and Maximum Errors of the Polynomials when Approximating the Arctangent Function within the Interval [-√3/3, √3/3]

Tables Icon

Table 4. The Computational Operations Involved in Eq. (17)

 figure: Fig. 5.

Fig. 5. The 2π radian range of the arctangent function is segmented into six sextants.

Download Full Size | PDF

 figure: Fig. 6.

Fig. 6. The approximation errors versus phases by using Eq. (17) with degrees being 1 (solid line), 3 (dotted line) and 5 (dashed line), respectively.

Download Full Size | PDF

From Table 3 and Fig. 7, we know that, as the polynomial degree increases, Eq. (17) has a much batter asymptotic property than Eq.15, but it involves more arithmetical operations. When applying Eq. (17) to the practical pattern, with the polynomial degrees being 1, 3 and 5, it takes 20, 22 and 23 milliseconds, respectively, to calculate the entire phase map. The computational periods are evidently longer than those with Eq. (15). However, it is interesting that, combining Eq. (17) with the conventional three-step phase-shifting algorithm {which uses the formula Φ = arctan[√3(I 1 -I 3)/(2I 2 -I 1 -I 3)] and the relative phase step 2π/3} may lead to more efficient algorithms. Especially, by using the polynomial of degree 1 and defining X = 2I 2 - I 1 -I 3 and Y = √3 (I 1 -I 3), we can derive the same algorithm as the proposed in Reference [34].

 figure: Fig. 7.

Fig. 7. The approximation errors by using Eq. (17) with the degrees being (a) 1, (b) 3 and (c) 5.

Download Full Size | PDF

3.3 Eight-octant approximations of the arctangent function

Approximations of the arctangent function in eight octants require three comparisons of X with respect to 0, Y with respect to 0, and Y with respect to X or -X. The segmented sectors are shown in Fig. 8, each of which covers an angle of π/4 radians. The sector from 0 to π/4 corresponds to the interval [0, 1], for which the coefficients and maximum errors of the approximation polynomials are listed in Table 5. Because these polynomials contain both odd and even terms, they can achieve a given accuracy with a lower degree than those adopted in Section 3.1. This fact is easily verified by comparing the entries of Tables 5 with those in Table 1. The piecewise approximation function is

Φ={π2Ψ(XY)X0andY0andYXΨ(YX)X0andY0andY<XΨ(YX)X0andY<0andYXπ2+Ψ(XY)X0andY<0andY<Xπ2+Ψ(XY)X<0andY0andYXπΨ(YX)X<0andY0andY<Xπ+Ψ(YX)X<0andY<0andYXπ2Ψ(XY)X<0andY<0andY<X

whose range is (-π, π]. The numbers of computational operations involved in Eq. (18) are listed in Table 6. Figure 9 compares the accuracies of using Eq. (18) with different degrees. Figure 10 shows the approximation errors when these polynomials are applied to the real fringe pattern. With the polynomial degrees being 2, 3 and 4, the computational periods are 21, 22 and 23 milliseconds, respectively.

Tables Icon

Table 5. Coefficients and Maximum Errors of the Polynomials when Approximating the Arctangent Function within the Interval [0, 1]

Tables Icon

Table 6. The Computational Operations Involved in Eq. (18)

 figure: Fig. 8.

Fig. 8. The 2π radian range of the arctangent function is segmented into eight octants.

Download Full Size | PDF

 figure: Fig. 9.

Fig. 9. The approximation errors versus phases by using Eq. (18) with degrees being 2 (solid line), 3 (dotted line) and 4 (dashed line), respectively.

Download Full Size | PDF

 figure: Fig. 10.

Fig. 10. The approximation errors by using Eq. (18) with the degrees being (a) 2, (b) 3 and (c) 4.

Download Full Size | PDF

By implementing this technique in the sector from -π/8 to π/8, we can get different polynomials for approximating the arctangent function. This sector corresponds to the interval [1 - √2, √2 -1], for which the coefficients and maximum errors of the approximation polynomials are listed in Table 7. Because of the odd symmetric property, these polynomials contain only odd terms. Using them as well as the trigonometric identity arctan(Y / X) = π/8 + arctan{[ Y - (√2 - 1)X] /[(√2 -1)Y + X]}, the eight-octant approximation function is derived as

Φ={3π8Ψ{[X(21)Y][(21)X+Y]}X0andY0andYXπ8+Ψ{[Y(21)X][(21)Y+X]}X0andY0andY<Xπ8ψ{[Y+(21)X][(21)YX]}X0andY<0andYX3π8+Ψ{[X(+21)Y][(21)XY]}X0andY<0andY<X5π8+Ψ{[X(21)Y][(21)XY]}X<0andY0andYX7π8Ψ{[Y+(21)X][(21)YX]}X<0andY0andY<X7π8+Ψ{[Y(21)X][(21)Y+X]}X<0andY<0andYX5π8Ψ{[X(21)Y][(21)X+Y]}X<0andY<0andY<X

The numbers of operations in Eq. (19) are reported in Table 8. Their errors over the full 2π-radian range are plotted in Fig. 11. If the polynomial degree is taken as 5, the maximum error decreases to the level of 10-6 radians, whose fluctuation cannot be observed from Fig. 11 because of the scale of the vertical axis. The error distributions of applying Eq. (19) to the practical fringe pattern are shown in Fig. 12. With the polynomial degrees being 1, 3 and 5, the computational periods are 22, 24 and 25 milliseconds, respectively. From these results, we see that, using only odd terms, the asymptotic property of Eq. (19) is much better than those with Eqs. (15) and (17).

Tables Icon

Table 7. Coefficients and Maximum Errors of the Polynomials when Approximating the Arctangent Function within the Interval [1 - √2, √2 - 1]

Tables Icon

Table 8. The Computational Operations Involved in Eq. (19)

 figure: Fig. 11.

Fig. 11. The approximation errors versus phases by using Eq. (19) with degrees being 1 (solid line), 3 (dotted line) and 5 (dashed line), respectively.

Download Full Size | PDF

 figure: Fig. 12.

Fig. 12. The approximation errors by using Eq. (19) with the degrees being (a) 1, (b) 3 and (c) 5.

Download Full Size | PDF

4. Conclusion

In fringe pattern analyses, the computational burden of implementing the arctangent function over an entire phase map is not trivial, hindering it from being used in real-time measurements. For overcoming this problem, in this paper, we have presented a method for approximating the arctangent function with a piecewise-defined function. The domain of the arctangent function is split into a sequence of intervals. For each interval, an approximation polynomial is determined in the L -norm sense. Based on this algorithm, several useful approximation functions have been derived. Using these functions makes it feasible to process the fringe patterns rapidly (e.g. at video rates) with only a general-purpose computer. Moreover, since these functions simply involve some logic and arithmetic operations, they are very suitable for hardware or firmware implementations.

Acknowledgments

This work was supported by the National Natural Science Foundation of China (Project 60678036), the Education Commission of Shanghai Municipality (ECSM), China (Project 2006AZ016), the State Leading Academic Discipline Fund of China, and Shanghai Leading Academic Discipline, China (Projects Y0102 and BB67).

References and links

1. M. Takeda, H. Ina, and S. Kobayashi, “Fourier-transform method of fringe-pattern analysis for computer-based topography and interferometry,” J. Opt. Soc. Am. 72,156–160 (1982). [CrossRef]  

2. M. Takeda and K. Mutoh, “Fourier transform profilometry for the automatic measurement of 3-D object shapes.” Appl. Opt. 22,3977–3982 (1983). [CrossRef]   [PubMed]  

3. O. A. Skydan, M. J. Lalor, and D. R. Burton, “Technique for phase measurement and surface reconstruction by use of colored structured light,” Appl. Opt. 41,6104–6117 (2002). [CrossRef]   [PubMed]  

4. C. J. Tay, C. Quan, H. M. Shang, T. Wu, and S. Wang, “New method for measuring dynamic response of small components by fringe projection,” Opt. Eng. 42,1715–1720 (2003). [CrossRef]  

5. Q. Zhang and X. Su, “High-speed optical measurement for the drumhead vibration,” Opt. Express 13,3110–3116 (2005), http://www.opticsinfobase.org/abstract.cfm?URI=oe-13-8-3110. [CrossRef]   [PubMed]  

6. Q. Zhang, X. Su, Y. Cao, Y. Li, L. Xiang, and W. Chen, “Optical 3-D shape and deformation measurement of rotating blades using stroboscopic structured illumination,” Opt. Eng. 44,113601, (2005). [CrossRef]  

7. M. Takeda, Q. Gu, M. Kinoshita, H. Takai, and Y. Takahashi, “Frequency-multiplex Fourier-transform profilometry: a single-shot three-dimensional shape measurement of objects with large height discontinuities and/or surface isolations,” App. Opt. 36,5347–5354 (1997). [CrossRef]  

8. W-H. Su and H. Liu, “Calibration-based two-frequency projected fringe profilometry: a robust, accurate, and single-shot measurement for objects with large depth discontinuities,” Opt. Express 14,9178–9187 (2006), http://www.opticsinfobase.org/abstract.cfm?URI=oe-14-20-9178. [CrossRef]   [PubMed]  

9. M. A. Herráez, D. R. Burton, and M. J. Lalor, “Accelerating fast Fourier transform and filtering operations in Fourier fringe analysis for accurate measurement of three-dimensional surfaces,” Opt. Lasers Eng. 31,135–145 (1999). [CrossRef]  

10. Y. Ichioka and M. Inuiya, “Direct Phase Detecting System,” Appl. Opt. 11,1507–1514 (1972). [CrossRef]   [PubMed]  

11. K. H. Womack, “Interferometric phase measurement using spatial synchronous detection,” Opt. Eng. 23,391–395 (1984).

12. S. Tang and Y. Y. Hung, “Fast profilometer for the automatic measurement of 3-D object shapes,” Appl. Opt. 29,3012–3018 (1990). [CrossRef]   [PubMed]  

13. L. Mertz, “Real-time fringe-pattern analysis,” Appl. Opt. 22,1535–1539 (1983). [CrossRef]   [PubMed]  

14. W. W. Macy, “Two-dimensional fringe-pattern analysis,” Appl. Opt. 22,3898–3901 (1983). [CrossRef]   [PubMed]  

15. D. C. Williams, N. S. Nassar, J. E. Banyard, and M. S. Virdee, “Digital phase-step interferometry: a simplified approach,” Opt. Laser Tech. 23,147–150 (1991). [CrossRef]  

16. P. H. Chan and P. J. Bryanston-Cross, “Spatial phase stepping method of fringe-pattern analysis,” Opt. Lasers Eng. 23,343–354 (1995). [CrossRef]  

17. Y. Arai, S. Yokozeki, K. Shiraki, and T. Yamada, “High precision two-dimensional spatial fringe analysis method,” J. Mod. Opt. 44,739–.751(1997). [CrossRef]  

18. J. Kato, I. Yamaguchi, T. Nakamura, and S. Kuwashima, “Video-rate fringe analyzer based on phase-shifting electronic moiré patterns,” Appl. Opt. 36,8403–8412 (1997). [CrossRef]  

19. M. Kujawinska, “Spatial phase measurement methods,” in Interferogram Analysis: Digital Fringe Pattern Measurement, D. W. Robinson and G. Reid, eds. (IOP, Bristol, UK, 1993), pp.141–193.

20. Y. Morimoto and M. Fujigaki. “Real-time phase distribution analysis of fringe pattern,” in International Conference on Applied Optical Metrology, P.K. Rastogi and F. Gyímesi eds., Proc. SPIE,3407,34–39 (1998). [CrossRef]  

21. K. L. Baker and E. A. Stappaerts, “A single-shot pixellated phase-shifting interferometer utilizing a liquid-crystal spatial light modulator,” Opt. Lett. 31,733–735 (2006). [CrossRef]   [PubMed]  

22. P. S. Huang, Q. Hu, and F-P. Chiang, “Color-encoded digital fringe projection technique for high-speed three-dimensional surface contouring,” Opt. Eng. 38,1065–1071 (1999). [CrossRef]  

23. C. Guan, L. G. Hassebrook, and D. L. Lau “Composite structured light pattern for three-dimensional video,” Opt. Express 11,406–417 (2003), http://www.opticsinfobase.org/abstract.cfm?URI=oe-11-5-406. [CrossRef]   [PubMed]  

24. C. R. Coggrave and J. M. Huntley, “High-speed surface profilometer based on a spatial light modulator and pipeline image processor,” Opt. Eng. 38,1573–1581 (1999). [CrossRef]  

25. P. S. Huang, C. P. Zhang, and F. P. Chiang, “High-speed 3-D shape measurement based on digital fringe projection,” Opt. Eng. 42,163–168 (2003). [CrossRef]  

26. S. Zhang and S-T. Yau, “High-resolution, real-time 3D absolute coordinate measurement based on a phase-shifting method,” Opt. Express 14,2644–2649 (2006), http://www.opticsinfobase.org/abstract.cfm? URI=oe-14-7-2644. [CrossRef]   [PubMed]  

27. S. Zhang, D. Royer, and S-T Yau, “GPU-assisted high-resolution, real-time 3-D shape measurement,” Opt. Express ,14,9120–9129 (2006), http://www.opticsinfobase.org/abstract.cfm?URI=oe-14-20-9120. [CrossRef]   [PubMed]  

28. M. S. Mermelstein, D. L. Feldhun, and L. G. Shirley, “Video-rate surface profiling with acousto-optic accordion fringe interferometry,” Opt. Eng. 39,106–113 (2000). [CrossRef]  

29. C. Quan, C. J. Tay, X. Kang, X. Y. He, and H. M. Shang, “Shape measurement by use of liquid-crystal display, fringe projection with two-step phase-shifting,” Appl. Opt. 42,2329–2335 (2003). [CrossRef]   [PubMed]  

30. S. Almazán-Cuéllar and D. Malacara-Hernández, “Two-step phase-shifting algorithm,” Opt. Eng. 42,3524–3531 (2003). [CrossRef]  

31. P. L. Wizinowich, “Phase shifting interferometry in the presence of vibration: a new algorithm and system,” Appl. Opt. 29,3271–3279 (1990). [CrossRef]   [PubMed]  

32. H. A. Vrooman and A. A. M. Maas, “Image processing algorithms for the analysis of phase-shifted speckle interference patterns,” Appl. Opt. 30,1636–1641 (1991). [CrossRef]   [PubMed]  

33. Z. Gao, S. Zhou, and Y. Hu, “High-speed fringe analysis by using stair-shaped virtual grating demodulation,” Opt. Lasers Eng. 28,411–422 (1997). [CrossRef]  

34. P. S. Huang and S. Zhang, “Fast three-step phase shifting algorithm,” Appl. Opt. 45,5086–5091 (2006). [CrossRef]   [PubMed]  

35. R. Capelli, “Fast approximation to the arctangent,” in Graphics Gems II, J. Arvo, ed. (AP Professional, Boston, USA, 1995), pp.389–391.

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

Fig. 1.
Fig. 1. The 2π radian range of the arctangent function is segmented into four quadrants.
Fig. 2.
Fig. 2. The approximation errors versus phases by using Eq. (15) with degrees being 1(solid line), 3 (dotted line) and 5 (dashed line), respectively.
Fig. 3.
Fig. 3. (a) A fringe pattern and (b) its phase map reconstructed by using FTM and the standard arctangent function.
Fig. 4.
Fig. 4. The approximation errors by using Eq. (15) with the degrees being (a) 1, (b) 3 and (c) 5.
Fig. 5.
Fig. 5. The 2π radian range of the arctangent function is segmented into six sextants.
Fig. 6.
Fig. 6. The approximation errors versus phases by using Eq. (17) with degrees being 1 (solid line), 3 (dotted line) and 5 (dashed line), respectively.
Fig. 7.
Fig. 7. The approximation errors by using Eq. (17) with the degrees being (a) 1, (b) 3 and (c) 5.
Fig. 8.
Fig. 8. The 2π radian range of the arctangent function is segmented into eight octants.
Fig. 9.
Fig. 9. The approximation errors versus phases by using Eq. (18) with degrees being 2 (solid line), 3 (dotted line) and 4 (dashed line), respectively.
Fig. 10.
Fig. 10. The approximation errors by using Eq. (18) with the degrees being (a) 2, (b) 3 and (c) 4.
Fig. 11.
Fig. 11. The approximation errors versus phases by using Eq. (19) with degrees being 1 (solid line), 3 (dotted line) and 5 (dashed line), respectively.
Fig. 12.
Fig. 12. The approximation errors by using Eq. (19) with the degrees being (a) 1, (b) 3 and (c) 5.

Tables (8)

Tables Icon

Table 1. Coefficients and Maximum Errors of the Polynomials when Approximating the Arctangent Function within the Interval [1, -1]

Tables Icon

Table 2. The Computational Operations Involved in Eq.15

Tables Icon

Table 3. Coefficients and Maximum Errors of the Polynomials when Approximating the Arctangent Function within the Interval [-√3/3, √3/3]

Tables Icon

Table 4. The Computational Operations Involved in Eq. (17)

Tables Icon

Table 5. Coefficients and Maximum Errors of the Polynomials when Approximating the Arctangent Function within the Interval [0, 1]

Tables Icon

Table 6. The Computational Operations Involved in Eq. (18)

Tables Icon

Table 7. Coefficients and Maximum Errors of the Polynomials when Approximating the Arctangent Function within the Interval [1 - √2, √2 - 1]

Tables Icon

Table 8. The Computational Operations Involved in Eq. (19)

Equations (19)

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

g x y = a x y + b x y cos [ u C x + v C y + Φ x y ] ,
g x y = a x y + c x y exp ( u C x + v C y ) + c * x y exp ( u C x v C y )
G x v = A x v + C u u C v v C + C * u + u C v + v C .
X x y = Re [ c x y ] ,
Y x y = Im [ c x y ]
r x y = Y x y X x y ,
Φ x y = Φ [ r x y ] = arctan [ r x y ] .
Ψ ( r ) = n = 0 N p n r n ,
Ψ ( r ) = p 0 + r ( p 1 + r ( p 2 + r ( p 3 + + r ( p N 1 + p N r ) ) ) ) ,
Ψ ( r 1 ) = n = 0 N p n r 1 n = arctan ( r 1 ) = Φ ( r 1 )
Ψ ( r 2 ) = n = 0 N p n r 2 n = arctan ( r 2 ) = Φ ( r 2 ) .
Φ Ψ = max r 1 r r 2 Φ ( r ) Ψ ( r ) .
Φ ( ξ k ) Ψ ( ξ k ) = arctan ( ξ k ) n = 0 N = p n ξ k n = ( 1 ) k η , for k = 1,2 , , N .
d [ Φ ( r ) Ψ ( r ) ] dr = 1 1 + r 2 n = 1 N np n r n 1 = 0 ,
Φ = { Ψ ( X Y ) if Y < X and Y X π 2 Ψ ( X Y ) if Y X and Y X π + Ψ ( Y X ) if Y X and Y < X π 2 Ψ ( X Y ) if Y < X and Y < X
Φ = { π 4 Ψ [ ( X Y ) ( X + Y ) ] if X 0 and Y 0 π 4 + Ψ [ ( X + Y ) ( X Y ) ] if X 0 and Y < 0 3 π 4 + Ψ [ ( X + Y ) ( X Y ) ] if X < 0 and Y 0 3 π 4 Ψ [ ( X Y ) ( X + Y ) ] if X < 0 and Y < 0
Φ = { π 2 Ψ ( X Y ) Y 0 and Y 3 X and Y 3 X 5 π 6 + Ψ [ ( 3 Y X ) ( Y 3 X ) ] Y 0 and Y 3 X and Y < 3 X π 6 + Ψ [ ( 3 Y X ) ( Y + 3 X ) ] Y 0 and Y < 3 X 5 π 6 + Ψ [ ( 3 Y + X ) ( Y 3 X ) ] Y < 0 and Y 3 X π 6 + Ψ [ ( 3 Y + X ) ( Y + 3 X ) ] Y < 0 and Y < 3 X and Y 3 X π 2 Ψ ( X Y ) Y < 0 and Y < 3 X and Y < 3 X ,
Φ = { π 2 Ψ ( X Y ) X 0 and Y 0 and Y X Ψ ( Y X ) X 0 and Y 0 and Y < X Ψ ( Y X ) X 0 and Y < 0 and Y X π 2 + Ψ ( X Y ) X 0 and Y < 0 and Y < X π 2 + Ψ ( X Y ) X < 0 and Y 0 and Y X π Ψ ( Y X ) X < 0 and Y 0 and Y < X π + Ψ ( Y X ) X < 0 and Y < 0 and Y X π 2 Ψ ( X Y ) X < 0 and Y < 0 and Y < X
Φ = { 3 π 8 Ψ { [ X ( 2 1 ) Y ] [ ( 2 1 ) X + Y ] } X 0 and Y 0 and Y X π 8 + Ψ { [ Y ( 2 1 ) X ] [ ( 2 1 ) Y + X ] } X 0 and Y 0 and Y < X π 8 ψ { [ Y + ( 2 1 ) X ] [ ( 2 1 ) Y X ] } X 0 and Y < 0 and Y X 3 π 8 + Ψ { [ X ( + 2 1 ) Y ] [ ( 2 1 ) X Y ] } X 0 and Y < 0 and Y < X 5 π 8 + Ψ { [ X ( 2 1 ) Y ] [ ( 2 1 ) X Y ] } X < 0 and Y 0 and Y X 7 π 8 Ψ { [ Y + ( 2 1 ) X ] [ ( 2 1 ) Y X ] } X < 0 and Y 0 and Y < X 7 π 8 + Ψ { [ Y ( 2 1 ) X ] [ ( 2 1 ) Y + X ] } X < 0 and Y < 0 and Y X 5 π 8 Ψ { [ X ( 2 1 ) Y ] [ ( 2 1 ) X + Y ] } X < 0 and Y < 0 and Y < X
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.