## Abstract

This paper presents a phase-shifting algorithm based on Hough transform for sinusoidal curves. Firstly, the background intensities of phase-shifting fringe patterns are removed by calculating their differences, thus we get purely sinusoidal intensity data for each pixel; and then we implement Hough transform to the intensity difference data of each pixel. As a result, the sinusoidal parameters, including phase and amplitude, of each pixel are extracted. The simulation and experimental results demonstrate that this algorithm enables eliminating the impacts of some gross errors such as saturation of camera and impulse noise in fringe patterns, and exactly recovering the phase map from fringe patterns.

© 2012 OSA

## 1. Introduction

Phase-shifting technique [1, 2], a powerful tool for retrieving phase maps from fringe patterns, is popularly used in interferometry [3–6], digital holography [7], fringe projection [8, 9], moiré topography [10], microscopy [11], and other optical measurement fields. With it, a number of algorithms have been developed for restraining the impacts of error-inducing factors such as hystereses of phase shifters, nonlinearities of light detectors, and random noise [1, 2]. In measurement practice, however, there exist situations where the errors in fringe patterns are very large and outside tolerable limits. For example, saturation of camera [12] may make sinusoidal intensity signals distorted severely, and impulse noise can also cause some intensities to be extreme-valued [13–18]. In these cases, most of the existing phase-shifting algorithms do not provide accurate measurement results, because they simply use fixed formulae combining a sequence of intensities, without removing any values with large errors. For this reason, deriving a phase-shifting algorithm that enables excluding gross errors in fringe patterns remains substantially challenging.

To solve the aforementioned problem, this paper presents, to the best of our knowledge, a novel phase-shifting algorithm by use of Hough transform. Hough transform, in digital image processing, is used for identifying certain geometric shapes, e.g. lines, circles, and ellipses, from noisy images [19]. In optical measurement discipline, this technique has been used for analyzing optical fringe patterns. In Ref [6], for example, the phase shifts between consecutive interferograms are estimated by properly tilting the reference mirror and applying Hough transforms to the image differences. With Hough transform, geometric elements in the image plane are transformed into a parameter space, and hence their parameters are determined by employing a voting strategy. This strategy allows eliminating the influences of large noise. Therefore, in this paper, we shall take advantage of the voting strategy of Hough transform, and present a phase-shifting algorithm that can eliminate the impacts of some gross errors, such as saturation of camera and impulse noise, on the measurement results.

This paper is outlined as follows. In the next section, we shall deduce a Hough transform method for identifying sinusoidal curves firstly, and then apply this method to phase-shifting fringe patterns for extracting their phase map. In Section 3, we shall use this technique in different applications, and verify its validity via simulation and experimental results.

## 2. Principle

#### 2.1 Hough transform of a sinusoid curve

We proceed by deducing a Hough transform method for identify sinusoidal curves. Consider the points in an *xy-*plane as those shown in Fig. 1(a)
. Our task is to find a sinusoidal curve passing through them. This curve should have a function of the form

*A*and the phase

*φ*, we have a two-dimensional parameter space. A sinusoid in the

*xy*-plane corresponds to a point (

*φ*,

*A*) in this parameter space. Whereas for a fixed point (

*x*,

_{k}*y*) in the

_{k}*xy*-plane, there exist infinitely many sinusoids passing through it, corresponding to a curve

*A*=

*y*/cos(

_{k}*φ + x*) in the

_{k}*φA-*plane with

*φ*and

*A*being variables. The problem with using

*A*and

*φ*is that

*A*sometimes approaches infinity, for example when

*φ*= π/2

*−x*, leading to a difficulty in implementation.

_{k}To solve the aforementioned problem, we define *u* = *A*cos*φ* and *v* = *A*sin*φ*, and then rewrite Eq. (1) as

*u*and

*v*, instead of

*A*and

*φ*, within finite expected ranges. As a result, the point (

*x*,

_{k}*y*) corresponds to a straight line in the

_{k}*vu-*plane. This phenomenon is exemplarily illustrated in Fig. 1(b), where each line corresponds to a single point in Fig. 1(a). Note that all the lines intersect at the same pair (

*v*,

*u*). This fact means that, in Fig. 1(a), all the points lie on the same sinusoid, whose shape is determined by this intersection pair (

*v*,

*u*). In Eq. (2), we do not use an explicit function form that

*u*depends on

*v*, because it cannot denote a vertical line with infinite slope.

In practical implementation, Hough transform finds geometric parameters by employing accumulating and voting strategies. First, we subdivide the *vu-*plane into accumulator cells, and set them to 0’s. In the example of Fig. 1, the expected ranges of *u* and *v* are [-1, 1] since we presume that the amplitude of the sinusoid is smaller than 1. The accumulator is subdivided into 256 × 256 cells. Second, for each point in the *xy*-plane, we calculate the locus of its corresponding straight line in the *vu-*plane. Third, if the locus passes through an accumulator cell once, the value at this cell increases by 1. Finally, we search the accumulator for the maximum value, whose position gives the sinusoidal parameters *v* and *u*.

Furthermore, the sinusoidal amplitude and phase can be calculated with

andIn Fig. 1(c) for example, the maximum value is located at the cell (*v*,

*u*) = (0.6094, 0.3516), corresponding to

*A*= 0.7036 and

*φ =*0.3334π. The corresponding sinusoid is plotted in Fig. 1(a) with a dot curve. Note that these results are obtained under the noise free condition. We will discuss the case in the presence of noise (or other errors) in the next subsection.

#### 2.2 Hough transform in the presence of disturbance

Random noise (or other errors) may affect results of Hough transform. We investigate their effect through Fig. 2 , in which (a) shows five points with some noise. Among them, the points A, B, and E deviate not far from their original values, because they are influenced only by additive zero-mean Gaussian noise. At the positions of C and D, impulse noise causes their values to be negative and positive extremes. The level of Gaussian noise is statistically depicted by using its standard deviation, and the level of impulse noise is usually characterized by its probability. Note that we just take impulse noise as an example for the moment, and in fact other error-inducing factors may induce similarly large deviations in the values of the points C and D.

Figure 2(b) and 2(c) show the corresponding lines of the points in Hough space and the resulting accumulator in 3-D view, respectively, from which we see that the straight lines in the *vu*-plane no longer intersect at a single point like the case in Fig. 1(b), and that several local peaks appear over the accumulator. These facts mean that there is no sinusoid passing through all the points in Fig. 2(a) simultaneously. Even so, we find that, over the *vu-*plane, there is a cluster of small peaks associated with the points A, B, and E, implying a sinusoid that can fit these three points closely. The arisen problem is how its parameters are extracted.

Performing a spatial smoothing filtering to the accumulator can solve the above problem. Because of blurring effect induced by the smoothing filtering, the cluster of small peaks in the accumulator are merged together to produce a single higher peak, whose position gives parameters of a sinusoid which can fit the related points. For example, we filter the accumulator in Fig. 2(c) by using an 11 × 11 Gaussian smoothing kernel with its standard deviation being 6, and the result is illustrated in Fig. 2(d), where the highest peak is at the position (*v*, *u*) = (0.6016, 0.3516). Those isolated small peaks induced by large noise do not influence the position of the highest peak, because they are far from this position. Using Eqs. (3) and (4), we get *A* = 0.6968 and *φ =* 0.3316π, and the corresponding sinusoid is plotted in Fig. 2(a) with a dot curve. These results demonstrate that, using this technique allows us to determine the amplitude and phase of a sinusoid from its sampling points. Implementing Hough transform and smoothing the accumulator enables restraining the influence of Gaussian noise and excluding impulse noise or other large errors.

It should be pointed out that, in this procedure, it is not always easy to locate the maximum peak in the accumulator. If the number of points with large noise is dominant in a sequence, there exist many peaks with small heights, instead of a single high peak, in the accumulator. This phenomenon implies that the number of “good” points is not sufficient for reliably determining a sinusoid. To avoid locating at a false peak, we set a threshold for the peak height. The values below the threshold will not be considered to be the maximum peak.

The next subsection will present a method based on this technique to recover phase map from fringe patterns.

#### 2.3 Fringe phase retrieving using Hough transform

The method suggested in the previous subsections can be used in the temporal domain for recovering phase maps from phase-shifting fringe patterns. Recall that the *k*’th frame of these fringe patterns is usually represented by

*I*(

_{k}*i*,

*j*),

*a*(

*i*,

*j*), and

*b*(

*i*,

*j*) are the recorded intensity, background intensity, and modulation at the pixel (

*i*,

*j*), respectively.

*φ*is the phase to be measured.

*α*denotes the

_{k}*k*’th phase shift, and

*K*is the number of phase shifts. Comparing Eq. (5) with Eq. (1), we find that Eq. (5) is not a purely sinusoidal function because of the presence of a direct current. Directly using Hough transform can retrieve its parameters, but a three-dimensional accumulator has to be established thus making the computational complexity prohibitive. We overcome this problem by using differences of fringe patterns, that is

*i*,

*j*) are omitted because only pointwise operations are carried out in this paper. For each pixel, the number of the possible intensity differences between fringe patterns, under the condition

*k*>

*l*, is given by

By defining *u* = *b*cos*φ* and *v* = *b*sin*φ*, we get an equation following from Eq. (6) that

*α*or

_{k}*α*varies. A fixed data set (

_{l}*ΔI*

_{k}_{,}

*,*

_{l}*α*, and

_{k}*α*) corresponds to a straight line in the

_{l}*vu-*plane, so we can determine the sinusoidal parameters

*u*and

*v*, and further

*b*and

*φ*, by using the Hough transform method just presented.

#### 2.4 Algorithm implementation

From Section 2.3 we know that Hough transform method can retrieve the phase of any point in phase-shifting fringe patterns, no matter whether or not its intensities are contaminated by large disturbances, e.g. salt-and-pepper noise. In practical measurement, however, the time expense for implementing the temporal Hough transform over the entire fringe patterns is not trivial, and usually several minutes are required. For improving the efficiency, we introduce a conditional execution mechanism, i.e. calculating the phases of the points without large noise using least-squares algorithm, and the phases of the points with large noise using Hough transform method. To make it clear, we summarize the overall procedure as follows.

** Step 1**. Use least-squares method to estimate the parameters of sinusoidal intensity signal for each pixel. By using the definitions of

*u*and

*v*in Section 2.3, rewrite Eq. (5) as

*k*= 0, 1…

*K*-1, we have a linear system with

*K*equations for each pixel. Solve it for the unknowns

*a*,

*u*, and

*v*in the least-squares sense [5], and then calculate the sum of square of errors

** Step 2**. Define an error threshold

*T*by which we can control what algorithm will be implemented in the following steps. (In this step, the error threshold

*T*is empirically determined). Compare

*E*with

*T*. If

*E*≤

*T*, directly calculate the phase with

*E*>

*T*, go to the next step. By the first two steps, we identify the pixels whose intensity sequence contains large noise, but we do not know in what frame the large noise appears, so the filtering method cannot be used to remove the noise. The following steps will use Hough transform to exclude these noisy intensities automatically.

** Step 3**. Subdivide the

*vu*-plane into accumulator cells, and set them to be 0’s. In this step the ranges of

*u*and

*v*in both positive and negative directions should be greater than the expected amplitude of the sinusoid.

** Step 4**. Calculate the differences of fringe patterns, getting totally

*K*(

*K*-1)/2 sets of data (

*ΔI*

_{k}_{,}

*,*

_{l}*α*, and

_{k}*α*) for each pixel. Perform Hough transform, calculating the corresponding line for each data set according to Eq. (8). If the line passes through an accumulator cell once, the value at this cell increases by 1.

_{l}** Step 5**. Smooth the accumulator values with a spatial filter. Set a threshold for peak height. Search for the cell (

*v*,

*u*) where the maximum peak appears. Calculate the phase with Eq. (11). In this step, if there is no maximum peak in the accumulator (i.e. all peaks are below the peak height threshold), the measurement data for this pixel are invalid.

## 3. Results and discussions

#### 3.1 Phase retrieving in the presence of impulse noise

In phase-shifting technique, random noise in fringe patterns is a major factor decreasing measurement accuracy [20–22]. As a typical solution, the least-squares phase-shifting algorithm [3–5] enables restraining the impacts of Gaussian noise (and other types of noise with zero-mean probabilistic distributions) on the recovered phase maps. In addition, fringe patterns may be contaminated by salt-and-pepper noise (i.e. impulse noise). For example, in electron holographic interferometry, the spatially independent impulse noise decreases the accuracy [13]. When measuring crater wear by using phase-shifting fringe projection method, salt-and-pepper noise rather than Gaussian noise is a main factor inducing errors [14]. Although salt-and-pepper noise is not recognized as an important problem in phase-shifting interferometry, interferograms of low quality contain unnegligible impulse noise [15–17]. When measuring crystal growth using phase-shifting interferometry, the spikes in fringe patterns need to be filtered [18].

Because impulse noise is usually extreme-valued and appears as white and black pixels in digitalized images, it cannot be modeled with Gaussian distribution, and its influence cannot be effectively compressed using a least-squares method. In digital image processing as well as in some commercial software for fringe pattern analysis, order-statistics filters, the best known one of which is the median filter, are usually employed to reduce salt-and-pepper noise [19]. This type of filters belongs to nonlinear systems operating in the spatial domain, and some problems may arise from their properties. First, in a cascade filtering process, implementing the nonlinear steps in an improper order may lead to unexpected results. Second, spatial filters will induce blurring in images, i.e. introduce crosstalk between pixels. Third, neighborhood operations for spatial filtering cannot normally deal with pixels near image borders. These problems may affect the qualities of measurement results negatively.

The proposed algorithm is a purely temporal method enabling solving the problems just mentioned. We verify its validity via simulation and experimental results. Firstly, we simulate a sequence of fringe patterns, each of which has a size of 128 × 128 pixels. The number of phase shifts is 8, and the relative phase step between consecutive frames is π/4 radians. The original fringe patterns have 8-bit gray levels, but we normalize them to the range from 0 (black) to 1 (white) for the implementation convenience. These fringe patterns are assumed to be corrupted by 1% salt-and-pepper noise as well as by additive zero-mean Gaussian noise with a standard deviation of 0.01. The impulse noise is spatially independent, i.e. its distributions are different for different patterns. Afterwards the proposed algorithm is employed for recovering the phase map from these noisy fringe patterns, and its result is compared in Fig. 3 with those of the traditional techniques. The phase errors are also quantitatively compared in Table 1 .

The top panel in Fig. 3(a) shows one of the 8 noisy fringe patterns, in which we observe discontinuities existing in its intensity profile because we have simulated some steps in the predefined phase map. Without any image preprocessing operations, we directly calculate the phase map using the traditional least-squares phase-shifting algorithm [5]. Its recovered phase map and error distribution are given in Fig. 3(a) as the second and third panels below the fringe pattern. Note that, for the convenience of comparison, this error map shares the same colorbar with other methods. This colorbar has a range from −0.5 to 0.5 radians, but in fact the maximum error of the least-squares algorithm, as listed in Table 1, overflows this range. These results mean that salt-and-pepper noise may induce very large errors in the recovered phase map.

Figures 3(b) and 3(c) are parallel to Fig. 3(a), but the fringe patterns have been denoised in image preprocessing stages before implementing the least-squares phase-shifting algorithm. In Fig. 3(b), the fringe patterns are smoothed with a 3 × 3 averaging spatial filter. Since this filter is not suitable for dealing with impulse noise, very large errors remain in the phase map. In Fig. 3(c), a 3 × 3 median filter is used instead. It is effective to remove impulse noise from fringe patterns, and therefore the RMS (root-mean-square) error of the phase map as indicated in Table 1 is compressed to 0.0261 radians. However, because the spatial filtering induces blurring in images, large errors appear near the image borders and at the positions where the image intensity profile is not continuous. The maximum error reaches 0.7864 radians.

Figure 3(d) shows the result of the proposed technique, which involves purely pointwise operations without any preprocessing to the fringe patterns. Its procedure has been summarized in Section 2.4. Here, the ranges of *v* and *u* are limited within [-0.5, 0.5], and the *vu*-plane is subdivided into 256 × 256 accumulator cells. The error threshold *T* is empirically set as 0.001. The accumulator is smoothed by using an 11 × 11 Gaussian filter with its standard deviation being 6. In Table 1, the maximum error with this technique decreases to 0.0529 radians, because it is insensitive to the discontinuities in fringe patterns. The RMS error decreases to 0.0130 radians, demonstrating that the proposed method is also effective in removing the impact of salt-and-pepper noise in the continuous area of fringe patterns.

It is noticeable in Fig. 3(a) that the density of the salient error points in the phase error map is much higher than that of impulse noise in the fringe pattern. We explain this phenomenon by considering a point in the phase map, whose value is calculated, using the least-squares algorithm, from a sequence of intensity values with phase shifts. Impulse noise in any intensity value of this sequence may result in a large error in the recovered phase. Assuming that, for each intensity value, the probability of being contaminated by impulse noise is *p*, and that the number of phase shifts is *K*, the probability that *N* or more intensities in this sequence are corrupted by impulse noise is given by

*K*is 8 and

*p*is 1%, so that the probability of large errors in the phase map is 7.73%.

Different from the least-squares algorithm, the Hough transform-based method can automatically exclude the intensity values with impulse noise. In Fig. 3(d) for example, if the intensity sequence for a point contains three “good” intensity values (without impulse noise), it is possible to accurately calculate the phase from this sequence. In practice, however, we need more “good” intensity values for getting a correct result. If half number of intensities in a sequence contains large noises, the proposed algorithm cannot work well. Figure 4(b) illustrates the probabilities of that more than half number of intensities in a sequence being contaminated by impulse noise. These probabilities depend on *p*, and decline rapidly as *K* increases. This fact implies that increasing the number of phase shifts is helpful for improving the reliability of the proposed algorithm. We shall further investigate this issue through the following results.

To get the fringe patterns badly contaminated by salt-and-pepper noise, we capture a sequence of 16 phase-shifting patterns in the fringe projection profilometry [8, 9], with the phase step between consecutive frames being π/2 radians, and then purposely add 10% salt-and-pepper noise to each of them. Figure 5(a) shows the first one of these patterns. For the comparison purpose, we employ both the traditional least-squares algorithm and the proposed technique to recover its phase map. It is shown in Fig. 5(b) that, if the number of phase shifts is 4 (i.e. only the first four patterns in the sequence are used), the results of both methods contain almost equally severe errors. Whereas when the number of phase shifts increases to 8, as illustrated in Fig. 5(c), only sparse error points can be observed in the phase map obtained using the proposed method, but large errors remain in the result of the least-squares algorithm. When the number of phase shifts is 16, it is evident from Fig. 5(d) that the least-squares algorithm does not give a satisfying result [the probability of error points according to Eq. (12) is 81.5%], and that the proposed technique provides a very clean phase map. Such a clean phase map is of benefit to alleviating the difficulties in phase unwrapping procedure [23], and its unwrapped phase map is shown in Fig. 5(e) with the carrier component having been removed. These results further demonstrate that, as the number of phase shifts increases, the phase errors with least-squares algorithm have an increasing probability and decreasing magnitude in the phase map, whereas the proposed method allows eliminating such errors.

A main restriction with this method is that, it assumes impulse noise to be spatially independent, so it is only suitable for dealing with the impulse points induced by some position-independent errors in image acquiring, recording, and transmitting (for example faulty switching and faulty memory locating during imaging). It cannot deal with impulse points having fixed positions in fringe patterns, such as those induced by the dead pixels in camera and the dust on the lens. In temporal phase-shifting algorithm, these dead pixels are usually identified according to their low modulations, and their phases are interpolated from their neighborhoods. In spatial-carrier phase stepping (SCPS) technique [24, 25] which uses only a single fringe pattern, the dead pixels are not easy to locate. The proposed method can be used in SCPS, and provides a potential solution for interpolation.

#### 3.2 Phase retrieving in the presence of camera saturation

Compared with impulse noise, fringe distortion induced by camera saturation is more often observed in optical measurement techniques, including in phase-shifting interferometry and fringe projection profilometry. If this kind of artifacts appears in fringe patterns, we usually adjust the measurement system and repeat capturing fringe patterns in order to guarantee the measurement accuracy, but in some situations (for example when measuring a moveable object) the new fringe patterns are not available. In this subsection, we will use the proposed algorithm to solve this problem.

In simulation, we generate a sequence of fringe patterns with saturation in computer, with the image size being 128 × 128 pixels and the number of phase shifts being 8. Figure 6(a)
shows the first frame and one of its cross-sections in horizontal direction. We see that, due to camera saturation, the fringe pattern has a washed-out appearance, and the tops of its cross-section become flat. From the view of spectrum, camera saturation introduces infinitely many harmonics into the sinusoid signal. With least-squares phase-shifting algorithm, increasing the number of phase shifts can partially eliminate the effect of saturation. Especially, if the number of phase shits is *N* and the relative phase shift is a constant 2π/*N* radians, the phase shifts are equally spaced over a 2π period and the least-squares algorithm is known as the synchronous detection algorithm [3], by which the harmonics up to the *N*-2 order can be eliminated [26, 27]. In this simulation, we purposely set the relative phase step to be 0.24π radians, so the requirement for the synchronous detection algorithm is not satisfied.

Using the least-squares phase-shifting algorithm, the recovered phase map and its error distribution are illustrated in Fig. 6(b). The maximum and RMS errors are 0.0132 and 0.0049 radians, respectively. These result means that camera saturation induces distortions in fringe patterns, leading to errors in the phase measurement results. The proposed algorithm, as described in Section 2, enables excluding the intensity values deviating far from sinusoidal curves. Therefore, we use it to eliminate the impacts of saturation. However, the intensity deviations caused by camera saturation are usually smaller than those by impulse noise, so we use a higher resolution accumulator with 512 × 512 cells to implement Hough transform. With this algorithm, the phase map and the error map are shown in Fig. 6(c), and the maximum and RMS errors become 0.0092 and 0.0031 radians, respectively. In comparison with the least-squares algorithm, the proposed algorithm reduces the errors caused by camera saturation.

An experiment is carried out to further verify the performance of this method in restraining the effect of camera saturation. We capture a sequence of fringe patterns in the fringe projection profilometry. The phase step between consecutive frames is π/4 radians, and the number of phase shifts is 7. Figure 7(a) shows one of these fringe patterns and its cross-sections in horizontal direction, from which we can see the fringe distortion caused by camera saturation. Figure 7(b) illustrates the recovered phase map using the least-squares algorithm and its unwrapped result with the carrier component having been removed. In this experiment, because the range of phase shifts is not cover a full 2π period, the requirement for the synchronous detection algorithm is not satisfied, and the harmonics introduced by camera saturation cannot be effectively restrained with the least-squares phase-shifting algorithm. In the bottom panel of Fig. 7(b), the artifact parallel to fringes is observable. Whereas using the proposed algorithm whose result is given in Fig. 7(c), the phase error decreases and the artifact fades in the bottom panel. This experiment demonstrates that the proposed algorithm enables excluding large errors in fringe patterns thus giving accurate phase measurement results.

#### 3.3 Discussions

Different form the traditional phase-shifting algorithm, the proposed method is nonalgebraic. By taking advantage of Hough transform, it enables excluding large errors in fringe patterns from computations. However, there are some limitations and restrictions on its results.

An issue worth discussion is regarding the reliability. In digital image processing, the geometric elements are usually identified, with Hough transform, from a large number of points. In phase-shifting technique, however, only few data are obtained for determining a sinusoidal curve. As a result, the reliability of the algorithm is not easy to guarantee. We hope that more than half number of intensities in a sequence are accurate. Whereas if the number of points with large errors is dominant in this sequence, as mentioned in Section 2.2, it is possible to locate the peak at a false position in Hough transform matrix. To solve this problem, we set a threshold for the peak height. The values below the threshold will not be considered to be the maximum peak, so that the false peak is avoided. This threshold can be defined empirically or according to the expected number of “good” intensities. By using this threshold, there exists a case that no maximum peak appears in Hough transform matrix. This phenomenon implies that the number of “good” intensities is not enough to calculate an accurate phase value.

Note that Eq. (9) is a function of plane in 3-D space, with *a*, *u* and *v* being variables. Performing a 3-D Hough transform allows us to determine these variables directly, but the computational time with it is prohibitive. Therefore, we employ a 2-D Hough transform by removing the background intensities from fringe patterns first. In some traditional phase-shifting algorithms, the backgrounds of fringe patterns are removed by subtracting from them a fixed frame. In so doing, if this fixed frame contains large errors, these errors will transfer into all the fringe pattern differences. Another adverse effect with using fringe differences is that, if the fringe patterns have Gaussian noise, their differences have Gaussian noise with a double higher variance. For this reason, we calculate all possible differences between any couple of fringe patterns, and the data redundancy is helpful for improving the reliability and correctness in locating the peaks in Hough transform.

The proposed algorithm, like the least-squares phase-shifting algorithm, belongs to the category that uses known phase shifts. With this category of algorithms, increasing the number of phase shifts is helpful for restraining the influence of random errors of phase shifts. However, in some situations, miscalibrations, hystereses, or detuning of phase shifters may cause very large errors in phase shifts. In these cases, the proposed algorithm cannot work well, because Hough transform does not give correct peaks in the accumulator. For solving this problem, phase-shifting technique usually employ self-calibrating algorithms [28–30] to determine the phases and phase shifts simultaneously.

Another important issue is about the resolution. The resolution of the proposed algorithm mainly depends on the accumulator size in Hough transform. A cell (*v*, *u*) in the accumulator corresponds to a vector, which has a length *A* and phase *φ*. When *φ* varies, a fixed *A* plots a circle in the accumulator. When *A* becomes smaller, the number of the accumulator cells along the circumference decreases. This fact means that, the value of the phase resolution is inversely proportional to the amplitude *A*. In Section 3.1, we use an accumulator with 256 × 256 cells, which corresponds to the range [-0.5, 0.5] for *v* and *u*. If the amplitude is 0.5, we have the highest phase resolution 1/128 radians. In Section 3.2, the accumulator size is 512 × 512, the highest phase resolution is 1/256 radians.

Compared with the least-squares phase-shifting algorithm, the proposed method is of a higher computational complexity. Its computational time mainly depends on the number of intensities with large errors. In Section 3.1, for example, higher noise in fringe patterns implies a heavier computational burden. Figure 8 plots that the durations of computational time, depending on the noise probabilities, are functions of the number of phase shifts. These data are obtained using an Amax workstation (with Intel Xeon E5606 CPUs at 2.13GHz, and a 24GB memory) when measuring a phases map of 128 × 128 pixels. In Section 3.2, the computational time depends on the area in the fringe patterns, where the intensities are influenced by camera saturation. In addition, the size of accumulator in Hough transform also influences the computational time. Therefore, there is a tradeoff between measurement resolution and efficiency in this technique.

## 4. Conclusion

In conclusion, we have proposed a phase-shifting algorithm based on Hough transform for sinusoidal curves. In it, the background intensities of fringe patterns are removed by calculating their differences, thus we get purely sinusoidal intensity data for each pixel; and then we implement Hough transform to the intensity differences of each pixel, in the temporal domain. As a result its sinusoidal parameters including phase and amplitude are extracted. It has been demonstrated by simulation and experimental results that this method provides some advantages over others. It enables excluding intensities with large errors, such as those with impulse noise and camera saturation, and recovering the phase map from fringe patterns. Since this algorithm is a pointwise operation, the crosstalk between pixels is avoided.

## Acknowledgments

This work was supported by the National Natural Science Foundation of China (61178045 and 21231004), and by the Innovation Program (12ZZ098) from Shanghai Municipal Education Commission.

## References and links

**1. **K. Creath, “Temporal phase measurement methods,” in *Interferogram Analysis: Digital Fringe Pattern Measurement*, D. W. Robinson and G. Reid, eds. (IOP, 1993), pp. 94–140.

**2. **H. Schreiber and J. H. Bruning, “Phase Shifting Interferometry,” in *Optical Shop Test,* D. Malacara, ed. (Wiley-Interscience, 2007), 547–666.

**3. **J. H. Bruning, D. R. Herriott, J. E. Gallagher, D. P. Rosenfeld, A. D. White, and D. J. Brangaccio, “Digital wavefront measuring interferometer for testing optical surfaces and lenses,” Appl. Opt. **13**(11), 2693–2703 (1974). [CrossRef]

**4. **C. J. Morgan, “Least-squares estimation in phase-measurement interferometry,” Opt. Lett. **7**(8), 368–370 (1982). [CrossRef]

**5. **J. E. Greivenkamp, “Generalized data reduction for heterodyne interferometry,” Opt. Eng. **23**, 350–352 (1984).

**6. **O. Soloviev and G. Vdovin, “Phase extraction from three and more interferograms registered with different unknown wavefront tilts,” Opt. Express **13**(10), 3743–3753 (2005). [CrossRef]

**7. **I. Yamaguchi, “Phase-Shifting Digital Holography,” in *Digital Holography and Three-Dimensional Display*, T-C. Poon, ed. (Springer, 2006), 145–171.

**8. **V. Srinivasan, H. C. Liu, and M. Halioua, “Automated phase-measuring profilometry: a phase mapping approach,” Appl. Opt. **24**(2), 185–188 (1985). [CrossRef]

**9. **H. Guo, H. He, Y. Yu, and M. Chen, “Least-squares calibration method for fringe projection profilometry,” Opt. Eng. **44**(3), 033603 (2005). [CrossRef]

**10. **J. J. J. Dirckx and W. F. Decraemer, “Automatic calibration method for phase shift shadow moire interferometry,” Appl. Opt. **29**(10), 1474–1476 (1990). [CrossRef]

**11. **P. Gao, I. Harder, V. Nercissian, K. Mantel, and B. Yao, “Phase-shifting point-diffraction interferometry with common-path and in-line configuration for microscopy,” Opt. Lett. **35**(5), 712–714 (2010). [CrossRef]

**12. **D. Malacara, M. Servin, and Z. Malacara, *Interferogram Analysis for Optical Testing* (Taylor & Francis Group, 2005).

**13. **T. Yatagai, K. Ohmura, S. Iwasaki, S. Hasegawa, J. Endo, and A. Tonomura, “Quantitative phase analysis in electron holographic interferometry,” Appl. Opt. **26**(2), 377–382 (1987). [CrossRef]

**14. **W. H. Wang, Y. S. Wong, and G. S. Hong, “3D measurement of crater wear by phase shifting method,” Wear **261**(2), 164–171 (2006). [CrossRef]

**15. **S. Singh, S. Rana, S. Prakash, and O. Sasaki, “Application of wavelet filtering techniques to Lau interferometric fringe analysis for measurement of small tilt angles,” Optik (Stuttg.) **122**(18), 1666–1671 (2011). [CrossRef]

**16. **J.-R. Lee, J. Molimard, A. Vautrin, and Y. Surrel, “Digital phase-shifting grating shearography for experimental analysis of fabric composites under tension,” Composites: Part A **35**(7-8), 849–859 (2004). [CrossRef]

**17. **J.-R. Lee, “Spatial resolution and resolution in phase-shifting laser interferometry,” Meas. Sci. Technol. **16**(12), 2525–2533 (2005). [CrossRef]

**18. **N. A. Booth, A. A. Chernov, and P. G. Vekilov, “Characteristic lengthscales of step bunching in KDP crystal growth: in situ differential phase-shifting interferometry study,” J. Cryst. Growth **237–239**, 1818–1824 (2002). [CrossRef]

**19. **R. C. Gonzalez and R. E. Woods, *Digital Image Processing* (Prentice Hall, 2007), Chap. 10.

**20. **M. Servin, J. C. Estrada, J. A. Quiroga, J. F. Mosiño, and M. Cywiak, “Noise in phase shifting interferometry,” Opt. Express **17**(11), 8789–8794 (2009). [CrossRef]

**21. **Y. Surrel, “Additive noise effect in digital phase detection,” Appl. Opt. **36**(1), 271–276 (1997). [CrossRef]

**22. **K. Hibino, “Susceptibility of systematic error-compensating algorithms to random noise in phase-shifting interferometry,” Appl. Opt. **36**(10), 2084–2093 (1997). [CrossRef]

**23. **D. C. Ghiglia and M. D. Pritt, *Two-dimensional phase unwrapping: theory, algorithms, and software* (Wiley-Interscience, 1998).

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

**25. **H. Guo, Q. Yang, and M. Chen, “Local Frequency Estimation for the Fringe Pattern with a Spatial Carrier: Principle and Applications,” Appl. Opt. **46**(7), 1057–1065 (2007). [CrossRef]

**26. **K. A. Stetson and W. R. Brohinsky, “Electro-optic holography and its application to hologram interferometry,” Appl. Opt. **24**(21), 3631–3637 (1985). [CrossRef]

**27. **H. Guo and M. Chen, “Fourier analysis of the sampling characteristics of the phase-shifting algorithm,” Proc. SPIE **5180**, 437–444 (2003).

**28. **H. Guo, “Blind self-calibrating algorithm for phase-shifting interferometry by use of cross-bispectrum,” Opt. Express **19**(8), 7807–7815 (2011). [CrossRef]

**29. **H. Guo, Z. Zhao, and M. Chen, “Efficient iterative algorithm for phase-shifting interferometry,” Opt. Lasers Eng. **45**(2), 281–292 (2007). [CrossRef]

**30. **P. Gao, B. Yao, N. Lindlein, K. Mantel, I. Harder, and E. Geist, “Phase-shift extraction for generalized phase-shifting interferometry,” Opt. Lett. **34**(22), 3553–3555 (2009). [CrossRef]