# Wavelet Transform Profilometry Using the Phase Estimation Method

A fringe pattern can be represented using the equation

Where *a(x,y)* represents the background illumination, *b(x,y) *the amplitude modulation of the fringes, *f _{o}* the spatial carrier frequency,

*Φ(x,y)*the phase modulation of the fringes and

*x*&

*y*the sample indices for the x and y axes respectively. For simplicity, it is considered here that there is no carrier frequency on the y-axis (

*i.e.*, the projected fringes lie parallel to the y-axis). An example of a fringe pattern is shown in figure 1(a). A row of the fringe pattern

*g(x)*is indicated by the red line on figure 1(a) and this is plotted as a graph of intensity vs pixel position in figure 1(b).

To extract the phase information embedded within a fringe pattern, the fringe pattern image is applied to the 1D-CWT algorithm on a row-by-row basis. A row is projected onto daughter wavelets as given by:

Daughter wavelets *ψ _{b,s}(x)* are built by a translation on the

*x*axis by a distance

*b*and dilation by a factor

*s*of the mother wavelet

*as given by*

*ψ*(x)

The wavelet transform of the row is computed using (2) and this produces a two dimensional complex array. The modulus of the array is calculated and is shown in greyscale form in figure 1(c). In this image, the colour white indicates large values in the transform, whereas the colour black indicates small values. The horizontal axis represents the translation parameter *b*, and the vertical axis is the scale factor *s*. In the wavelet transform, the scale is discretized and can be represented as a vector. In this case the scale vector contains 64 elements and varies from 1 to 64 with a step size of 1. The phase of the wavelet transform *φ(s,b)* is calculated using the equation

and this is shown in greyscale form in figure 1(d). and represent the imaginary and real parts of the wavelet transform respectively. The phase of the row can be computed using the direct maximum ridge detection algorithm as follows. The maximum value of the modulus is determined for each column in figure 1(c), and then the corresponding phase at this position is chosen from figure 1(d). The maximum values of the modulus are called the ridges of the wavelet transform, and it is shown as a dotted curve in figures 1(c) & 1(d). The resulting wrapped phase is shown in figure 1(e). The *2π* phase steps have been removed using the 2D-SRNCP phase unwrapper and the spatial carrier has been subtracted from the unwrapped phase. The resulting phase is shown in figure 1(f). The wrapped phase map of the fringe pattern is shown in figure 1(g) and the unwrapped phase map is shown in figure 1(h).

A Matlab program that demonstrates the operation of this algorithm can be downloaded here.