Measurement 36 (2004) 53–66 www.elsevier.com/locate/measurement Digital evaluation of interferograms M. Hipp a,*, J. Woisetschl€ ager a, P. Reiterer b, T. Neger c a Institute for Thermal Turbomachinery and Machine Dynamics, Graz University of Technology, Inffeldgasse 25, 8010 Graz, Austria b Institute for Theoretical Physics, Graz University of Technology, Petersgasse 16, 8010 Graz, Austria c Institute for Experimental Physics, Graz University of Technology, Petersgasse 16, 8010 Graz, Austria Received 3 July 2003; received in revised form 31 March 2004 Available online 19 May 2004 Abstract For one and a half decade, software for interferometric fringe evaluation has been developed and used at Graz University of Technology. Within the framework of an awarded grant, these software packages on interferometric fringe evaluation were subsumed under Windows and Unix platforms and are accessibly under http://optics.tugraz.at. The software focuses on high-resolution digital fringe evaluation including phase stepping, Fourier domain evaluation as well as unwrapping techniques for regular and irregular fringe patterns. For phase objects, Abel-inversion and optical tomography also has been included. New developments on digital holography were taken into account. This paper describes the methods used and focuses on their implementation in such a universal software. 2004 Elsevier Ltd. All rights reserved. Keywords: Interferometry; ESPI; DSPI; Digital holography; Phase unwrapping 1. Introduction Interferometry is a trusted and widely used optical technique for measurements of surface deformation and displacements as well as of the refractivity of objects, from which related quantities like density, temperature, or magnetic fields can be determined [1,2]. In order to increase accuracy of the phase evaluation of interference fringe patterns beyond the early fringe scanning technique, several procedures have been developed which are now well established, e.g., the Fourier Transform technique [3] or the temporal phase * Corresponding author. Fax: +43-316-873-7234. E-mail address: idea@ttm.tu-graz.ac.at (M. Hipp). stepping technique [4,5]. Especially in the field of speckle pattern interferometer, the inherent noise puts high demands on evaluation algorithms. Additionally, as the phase is usually calculated from the interferograms consisting of bright and dark fringes, sign ambiguity has to be removed and unwrapping of modulo 2p data is always required to obtain continuous maps of phase data [6]. At Graz University of Technology, interferometry has been used in a number of applications for nearly 20 years [7–14]. Harsh experimental conditions put high demands on the accuracy of the evaluated phase, forcing the researchers to keep track with actual developments in phase evaluation procedures all the time. With experience and programming codes accumulated over 0263-2241/$ - see front matter 2004 Elsevier Ltd. All rights reserved. doi:10.1016/j.measurement.2004.04.003 54 M. Hipp et al. / Measurement 36 (2004) 53–66 this period, a free software package has been developed dedicated to phase evaluation and postprocessing of interferogram data, e.g. Abel inversion and tomography for plasma and fluid flow applications [8,15]. The motivation to distribute the software freely via internet at http://optics.tugraz.at was to give newcomers the possibility to apply interferometry without spending time to implement phase evaluation algorithms. On the other hand, as the mathematical procedures of this interferogram evaluation software are written in pure C and C++, it can serve as a benchmark for self written software. Altogether, it is quite an effort to write a data processing software for fringe analysis when the provided accuracy in phase evaluation should be better than p=10 rad. The purpose of this paper is to outline the structure of the most common phase evaluation procedures for both regular and irregular fringe patterns, and to point out features a versatile fringe processing software should include. superimposed forming the interferogram. The fringes in these holographic interferograms (secondary interferograms) indicates iso-lines of e.g. surface displacements or changes in density [2,17]. In electronic speckle pattern interferometry (ESPI) the primary interferograms are formed as speckle patterns on a CCD-array. Two of these subtracted provide the subtraction fringe interferogram that indicates changes in the object between the two recordings [18], though the high noise in these secondary interferograms lead to other techniques to obtain the phase information. Any of these interferograms in DH, HI or ESPI need an evaluation of high sensitivity to obtain a detailed map of the phase difference between the superimposed light waves. The spatial intensity distribution of the fringe pattern is determined by the local phase shift /ðx; yÞ between the two waves, by the background intensity distribution i0 ðx; yÞ the and contrast function mðx; yÞ: iðx; yÞ ¼ i0 ðx; yÞ þ mðx; yÞ cosð/ðx; yÞÞ; ð1Þ where x and y is the position in the image. 2. Basic principle In optical interferometry the phase difference between two coherent and overlapping light waves is visualized as a periodic intensity pattern in space (fringe pattern). Such, the phase difference between two light waves is made accessible to intensity measurement. With the availability of affordable high resolution CCD-cameras up to 3 k · 3 k pixels and powerful computers, experimental limitations are reduced significantly and the computing power keeps pace with the increased amount of information to be evaluated. This development also led to digital holography (DH), introduced in the early 90’s [16]. With the hologram recorded by a CCD-chip, the reconstruction can be done numerically by the Fresnel transform. However, with imaging of the object to the CCD, the evaluation processes get closely related to conventional methods. In classical holographic interferometry (HI) a primary interferogram (hologram) is first formed to store the light wave from or through the object under investigation. Two of such object waves are 3. Procedures for analysis of regular fringe pattern 3.1. Fourier transform method Various approaches exist to calculate the phase shift / from Eq. (1). Most important are the twodimensional Fast Fourier Transformation (2DFFT) and phase-shift techniques. For 2D-FFT, experimentally, a parallel fringe pattern has to be superimposed to the original interferogram usually by tilting a mirror within one arm of the interferometer. The corresponding spatial carrier frequency is modified by the phase shift / of interest. First proposed for evaluation of one-dimensional phase distributions [3], the method has soon be adapted to obtained two-dimensional phase maps [19]. With such a spatial carrier frequency in xdirection, Eq. (1) writes iðx; yÞ ¼ i0 ðx; yÞ þ mðx; yÞ cosð2pm0 x þ /ðx; yÞÞ ð2Þ M. Hipp et al. / Measurement 36 (2004) 53–66 where m0 is the carrier frequency vector. Switching to complex notation, relation (2) can be written as iðx; yÞ ¼ i0 ðx; yÞ þ cðx; yÞ e2pm0 x þ c ðx; yÞ e2pm0 x ð3Þ where 1 cðx; yÞ ¼ mðx; yÞei/ðx;yÞ 2 ð4Þ is referred to as complex amplitude. The asterisk superscript (*) denotes a complex conjugate. Fourier transforming iðx; yÞ yields ^iðx; yÞ ¼ ^i0 ðmÞ þ ^cðm m0 Þ þ ^c ðm þ m0 Þ ð5Þ In a next step a filter is applied in the Fourier space which sets all frequencies except those belonging to ^cðm m0 Þ to zero. Translating the distribution so that the center m0 is located at the origin eliminates the carrier, and subsequent backtransformation yields the complex amplitude cðx; yÞ, from which the phase / is obtained by Imðcðx; yÞÞ /ðx; yÞ ¼ arctan ; ð6Þ Reðcðx; yÞÞ where Imð::Þ and Reð::Þ denote the imaginary and real part of a complex number. The purpose of applying a fringe carrier system is to eliminate low frequency background noise. Basic assumption is that background i0 and contrast function m are varying slowly when compared to to the carrier frequency. This procedure assumes a completely parallel carrier fringe system which is hard to obtain. In general it is recommended to skip the transfer of m0 to the origin, yielding /0 ðx; yÞ ¼ /ðx; yÞ þ wðx; yÞ after calculations of phase, with w denoting carrier fringe phase. If wðx; yÞ corresponds to a perfectly constant carrier frequency m0 as assumed in previous explanations, then /ðx; yÞ can be obtained by 1 mðx; yÞ ¼ 3 reference carrier fringe system must be evaluated for phase in a separate step (recording of a reference interferogram with the carrier frequency only). Subsequently, this phase distribution has to be subtracted from the result obtained with the fringe pattern recorded after a change of the object. The achieved accuracy is typically around 2p=50, but can be as high as 2p=100. The overall procedure is shown in the block diagram of Fig. 1. 3.2. Temporal phase shifting The Phase Shifting technique is another method to evaluate phase distribution from interferograms. Instead of sampling the interferogram in the spatial domain to determine the phase (2DFFT), the sampling is done in the time domain by adding constant phase values to the interferogram [4]. This is done in several steps (e.g. by shifting a piezo driven mirror in one beam) and at each step an interferogram is recorded. In case the minimum of three interferograms I1 ðx; yÞ, I2 ðx; yÞ and I3 ðx; yÞ is recorded at relative phases of 0, 2p=3 and 4p=3 rad, Eq. (1) is then i1 ðx; yÞ ¼ i0 ðx; yÞ þ mðx; yÞ cosð/ðx; yÞÞ 2p i2 ðx; yÞ ¼ i0 ðx; yÞ þ mðx; yÞ cos /ðx; yÞ þ 3 4p i3 ðx; yÞ ¼ i0 ðx; yÞ þ mðx; yÞ cos /ðx; yÞ þ 3 ð7Þ In this case the phase / is given by the well known 3-frame algorithm pffiffiffi I1 ðx; yÞ I3 ðx; yÞ /ðx; yÞ ¼ arctan 3 2I2 ðx; yÞ I1 ðx; yÞ I3 ðx; yÞ ð8Þ Additionally, the modulation can be calculated by qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi ½I1 ðx; yÞ I3 ðx; yÞ 2 þ ½2I2 ðx; yÞ I1 ðx; yÞ I3 ðx; yÞ 2 subtracting the linear tilt corresponding to the carrier phase. Otherwise, the slightly disturbed 55 ð9Þ The most popular methods are the 3-frame, the 4frame (p=2 phase shift) and the Carre-method, a 56 M. Hipp et al. / Measurement 36 (2004) 53–66 Fig. 1. Phase evaluation procedures for regular fringe patterns, as obtained by classic interferometry. Images with white borders are modulo 2p phase maps. There are two possibilities for the Fast Fourier Technique, namely with and without recording of the carrier fringe system. Without a reference the phase ramp introduced by the carrier fringes has to be subtracted subsequently to phase unwrapping. 4-frame method where the phase shift must not be know. In [4], an error analysis can be found investigating influences of linear and quadratic phase-shifting and detector errors. Though the standard methods provide a sufficient accuracy in most cases, a high number of more sophisticated M. Hipp et al. / Measurement 36 (2004) 53–66 phase shifting techniques and analysis of algorithms can be found in literature [20–28]. 4. Procedures for analysis of irregular interference patterns If one or both of the interfering wavefronts are diffuse, e.g. if reflected from a rough surface, the recorded interference pattern does not consist of fringes with a narrow bandwidth of spatial frequency, but is ‘speckled’. In principle, there are two techniques in interferometry leading to irregular fringe patterns: Speckle interferometry, where the object under investigation has to be imaged onto the detector, and digital holography, where the interference pattern is usually recorded without any camera objective. The regular fringe evaluation procedures can not be applied, as the change in object phase is superimposed to the random speckle phase. Therefore, any phase evaluation procedure requires the recording of reference interferograms. For example, by recording a set of temporally phase shifted speckle interferograms as reference, the initial random speckle phase aðx; yÞ can be obtained (e.g. by Eq. (8)). Repeating the procedure after alteration of the object gives aðx; yÞþ D/ðx; yÞ, and the corresponding phase shift D/ðx; yÞ caused by the object can be calculated by a subtraction modulo 2p. This is the standard speckle phase shifting procedure [27], often referred to as Difference-of-Phase method. It is shown left in Fig. 2. Suffering from the requirement of object stability during the phase shifting process, it tends to fail in the presence of external disturbances like vibration, rigid body motion, or temperature and flow fluctuations (turbulence) for phase objects. For such objects, the spatial phase shifting method is recommended [28–30]. Experimentally, a (quasi-) plane reference wave has to be guided to the CCD, while the object is imaged onto it. The tilt of the reference plane has to be adjusted in a way that the average phase difference of neighbouring pixels in one direction, let’s say x, is less or equal to 2p=3 rad. By stretching the speckle size in x-direction to a corresponding number of pixels 57 using an aperture, a phase-shifted set of intensities can be obtained from neighbouring pixels by applying a linear phase ramp in the reference beam. The intensities of each group can then be fed to the phase shifting algorithm, which is for this example Eq. (9). Obviously, this method has also to be applied in two steps, where interferograms of the initial and final state are recorded and the calculated phases are subtracted afterwards. The requirement of the rather large speckle sizes of at least three pixels, however, is inevitable tied to a loss of spatial resolution. The procedure is shown as the middle branch in Fig. 2. Other methods utilize a temporally phase shifted set of speckle interferograms in a stable reference state of the object under investigation. During fast object alteration, one or more interferograms are recorded where each of it is correlated to the reference state. For example, with the Phase-of-Difference method [31,32], each of these interferograms is subtracted from all reference interferograms. The resulting subtraction fringe interferograms are low pass filtered and form new sets of phase shifted interferograms. Another approach utilizes the stochastic nature of the speckle phase [33]. With the modulation for each pixel determined from the phase shifted intensities in the reference state, e.g. by Eq. (10), the cosine of the pixel phase corresponding to the intensity in the other interferogram can easily be determined. The ambiguity of the arcos-function is then removed by taking into account the neighbourhood of the pixel in a least squares fit on the assumption that the phase shift caused by the object is constant within this region. The accuracy of the evaluated phase are between 2p=15 for the Phase-of-Difference method up to 2p=30 for the fitting method. Digital holography is used both for image reconstruction and phase determination. Avoiding the impractical wet photo processing of classical holography, this method enjoys growing popularity, pushed by availability of CCDs with high resolution. There are four main ways to produce digital holograms, each of it requiring different ways of digital reconstruction (see Fig. 3): 58 M. Hipp et al. / Measurement 36 (2004) 53–66 Fig. 2. Common procedures for phase evaluation of speckle interferograms. All methods require acquisition of interferogram(s) at two different states of the object in order to determine the change of phase between these states. Phase maps modulo 2p have a broad white border. 1. Image Plane holograms are equivalent to speckle interferograms with spatial phase shift, but here usually the FFT-method is used for phase evaluation [34]. This way, the plane refer- M. Hipp et al. / Measurement 36 (2004) 53–66 ence wave might have arbitrary tilt to produce the carrier fringe system. 2. Fresnel holograms are produced by recording the free interference of a plane or spherical wavefront with the object wave without imaging of the object. With known pixel size of the CCD and the reference wave geometry, the reconstructed complex amplitude can be calculated at any distance to the hologram by the Fresnel diffraction formula, referred to as Fresnel transformation (see Eq. (10)). 3. Quasi Fourier holograms are recorded by placing the source of the spherical reference wave to the same distance to the hologram as the object. This is the condition for lensless Fourier Transformation [35], therefore a single FFT is sufficient to obtain the complex reconstruction. 4. Phase shifting digital holography [36] addresses the problem of the inevitable occurrence of the conjugate- and zero order reconstruction, which superimpose on the ‘true’ ‘reconstruction’ with a given angular separation. These disturbances do not occur if the complex object wave is Fresnel transformed instead of the product of hologram intensity and complex reference wave. This requires at one hand measurement of the object phase relative to the reference wave by a phase shifting technique, and on the other hand recording of the wave front intensity coming from the object only. This method is mainly used for image reconstruction, especially in holographic microscopy, where the ability to ‘digitally’ focus to different planes is taken advantage of. The minimum number of 8 holograms required for phase determination (3 phase shifted holograms plus 1 image of object intensities for two states compared interferometrically) prevents this method to be popular for phase measurements. For Fresnel holograms, the reconstruction is calculated from the recorded intensity distribution (hologram) by the Fresnel diffraction formula, which is [37] Z Z i eikq U ðx; yÞ ¼ dn dg ð10Þ rðn; gÞH ðn; gÞ k q H 59 where U is the complex amplitude at point ðx; yÞ in the observation plane (reconstruction plane), r is the complex reference wave, H the hologram and q the distance of point ðn; gÞ in the hologram to ðx; yÞ. The angles from the normal vector of the hologram plane to the source point of the reference, e.g. to the observation point are assumed to be p, or 0, respectively. There are different ways to numerically calculate the Fresnel transformation Eq. (10), but all of them utilize Fast Fourier Transformation (FFT). In the full form, three FFTs are required: U ðx; yÞ ¼ FT 1 fFT ðH rÞ FT ðgÞg ð11Þ with pffiffiffiffiffiffiffiffiffiffiffiffiffiffi 2 2 2 i eik n þg þz gðn; gÞ ¼ qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi ; k n2 þ g2 þ z2 ð12Þ where k is the wave number, z is the distance to the reconstruction. In most cases it is justified to approximate the square root by series expansion. Using this in the exponent, and approximating the square root in the denominator by z, a single FFT is sufficient to yield the reconstruction [16]: U ðx; yÞ ¼ FT ðH r wÞ; ð13Þ with the function wðn; gÞ ¼ eik 2 ðn þ g2 Þ: 2z ð14Þ A factor with amplitude 1 and constant phase is neglected for the result in Eqs. (11) and (13). To suppress occurrence of the zero order reconstruction, one approach is a subtraction of the mean intensity value from the hologram preliminary to Fresnel transformation [38]. For phase shifting digital holography, the complex object wave amplitude is transformed instead of H r. From the reconstructed complex waves, the phase is calculated according to Eq. (6). 5. Phase unwrapping procedures Both Fourier Transform and phase shifting methods yield phase data modulo 2p, since the arctan-function has to be used for the final step in phase calculation (Eqs. (6) and (8)). So the phase 60 M. Hipp et al. / Measurement 36 (2004) 53–66 data related to measured property is ‘wrapped’ upon itself with discontinuities in phase of height 2p. The procedure to recover the absolute phase is called ‘Phase Unwrapping’ and belongs to those problems which are easily formulated but arbitrary complex to solve for noisy phase data by a software package (Fig. 3). The simplest approach is done by starting at a pixel with well defined neighbourhood, assuming error free phase there. By following a defined path in the wrapped phase map that visits all the pixles, e.g. a spiral path, the phases at the visited pixels are compared to previously validated neighbours. Differences with absolute values higher than p (according to Shannon, e.g. Nyquist sampling theorem) suggest that a regular phase discontinuity is detected. Taking into account the sign of the difference, the information about the number of periods, e.g. 2p, to be added in order to smooth out the discontinuity is obtained. Ideally, comparison to two neighbours would be sufficient to determine two-dimensional unwrapped phase from well behaved phase maps. In presence of noise, however, it is necessary to take into account as much validated neighbours as possible (see Fig. 4). The error susceptibility, e.g. the dependence of the result on the scanning path can be eliminated by a preliminary step. The unwrapping procedure is then referred to as branchcut unwrapping. Its principle is based on the fact that sources of phase unwrapping errors can be identified by calculating the integral of changes in phase order (discontinuities counted according to their sign by +1 or )1) along closed paths in the phase map [39]. If an error source is encircled by the path, the integral results either in +1 or in )1 instead of the valid zero value, as shown in Fig. 5. Accordingly, the phase inconsistency is referred to as +residuum or –residuum. However, if an equal number of residues of different signs are enclosed, the path integral is zero and therefore valid. To ensure this for any path taken with scanning methods, one has to connect pairs of residues of different signs and prevent the unwrap scanning path to cross this ‘branchcuts’. Different ways how to set the branchcuts have been proposed, distinguished by the approach to minimize the overall length of branchcuts in the phase map (see Section 7). In contrast to the rigorous approach to set barriers within the phase map for subsequent spatial phase unwrapping, a different technique has been found which are referred to as minimumnorm methods [40,41]. The unwrapped phase differences between neighbouring pixels are matched to the corresponding wrapped differences (gradients) from the measured data in a least squares sense. Based on the Lp -norm minimization, the problem is formulated as a discrete Poisson equation, which can be efficiently solved by utilizing the discrete cosine transform. This has some spatial smoothing effect on the unwrapped data in contrast to the previously mentioned methods where just a multiple of 2p is added. As a drawback, local noisy or shaded data might influence undisturbed areas, resulting in systematic underestimation of the unwrapped phase differences. This can be addressed by introducing weighting factors for reliability of phase data, which then requires an iterative implementation of the procedure. 6. Experimental limitations More than on the algorithms used for phase evaluation, the quality in terms of accuracy and spatial resolution of the phase depends on experimental conditions. First of all, the type of interferometer used sets limits. In case of differential interferometry [9], e.g. shearography [18], the spatial resolution is limited by the shear of the identical interfering wavefronts. The same is true for spatial phase shifting due to the large speckle size used for recording. This disadvantage is compensated by real time capability, and in case of shearography, by reduced susceptibility to environmental disturbances, though the reduced phase sensitivity should meet the demands of the measurement. Interferograms featuring closed fringes can not be evaluated by the FFT-method, as a monotone phase gradient is required. Therefore, the carrier fringe system has to be sufficiently dense, otherwise a more complex variation of the FFT-method has to be used [42]. M. Hipp et al. / Measurement 36 (2004) 53–66 61 Fig. 3. Phase evaluation procedures for Digital Holography. Fresnel holograms are recorded without any imaging by superimposing the object wave with an arbitrary, off-axis reference beam of known complex amplitude. Image plane holograms, recorded with imaging of the object to the CCD, are evaluated by FFT-method (see Fig. 1). Phase shifting holography requires a large number of recordings and is therefore not very popular, but the reconstruction of the complex amplitude is free from zero diffraction and conjugate image. 62 M. Hipp et al. / Measurement 36 (2004) 53–66 Fig. 4. Path dependent phase unwrapping by the spiral scan method. Starting at the center pixel ðx; yÞ, a rectangular spiral path is taken around the center. Here, the path has reached the pixel p, where the step function should be evaluated. The difference of the modulo 2p data in p and the four neighbours is calculated. Differences with absolute values higher than p suggest a phase discontinuity, and the sign gives the direction of the discontinuity. The best estimate is determined by a ‘vote’ of all results from the neighbouring unwrapped pixels. shifting errors, non-uniform phase shifts across the beam and non-linearities of the detector might impose relevant errors depending on the algorithm used for phase evaluation. Other experimental conditions which heavily influence phase accuracy are stability of light intensity (problematic with solid-state lasers) and the object. The inherent noise in speckle interferometry due to the stochastic nature of speckles sets significant limits to phase accuracy. Even under ideal experimental conditions, saturated as well as ‘dark’ speckles which do not show any modulation propagate the noise into the phase result. Additionally, there are inevitable decorrelation effects. For example, for surface measurements, the displacement to be measured causes slight changes in the speckle structure which leads to statistically ascertainable phase errors [43,44]. As a consequence, it is common practice to integrate low-pass filters in the phase evaluation process. Usually, this is either done after calculation of the wrapped phase, or, if unwrapping algorithms are capable to deal with the noisy data in a reasonable time, as a final step. 7. Implementation of algorithms Fig. 5. Phase map showing phase inconsistencies that lead to a path-dependent phase result when unwrapped with scanning methods. Following path 1 from point A to B, three phase discontinuities corresponding to an overall change of phase order +3 are encountered. Scanning from B downwards to A along path 2, however, will reveal just two phase discontinuities with reversed sign. Therefore, the change in phase order is not zero when the circle path is closed, but +1. This shows that the path includes a positive residuum, marked by a circle, which is the source of a phase error. A second residuum can be detected when integrating the changes of phase orders from A to B, following path 2 in reversed direction, and closing the circle by scanning along path 3. The overall change in phase order is then )1, so a negative residuum is found. Note that the direction in which the circle path is scanned must be consistent for each integration. The closed path formed by path 1 and 3 encloses both residues, the integral is zero and therefore valid. In principle, the phase shifting method is the most accurate one, as it does not influence spatial resolution. However, linear and quadratic phase The common algorithms for phase evaluation have been implemented in the software package IDEA. It features a graphical user interface provided by the open source C++ GUI framework wxWidgets (http://www.wxwidgets.org) for crossplatform programming. The core routines are in pure C and C++, compiled with Borland’s speed optimization level 2, memory accessing optimizations that improve cache hits, and Pentium instruction scheduling. To avoid exceptions due to mathematical operations leading to non-defined values such as infinity (1/0) or not-a-number (0/0), the floating point unit is forced to write ‘invalid values’ instead, as defined in the IEEE-floating point specification. Image data is taken in 8-bit depth, floating point data in the 8-byte double precision format. When benchmarking with IDEA, the time used for the calculation of an 256colour-palette bitmap for visualization of data fields must be taken into account. M. Hipp et al. / Measurement 36 (2004) 53–66 For the Fourier Transform method, the 2dimensional FFT-algorithm for real data in [45] ‘rlft3’ has been implemented. This algorithm is restricted to data fields with dimensions of 2n 2m , so zero padding (embedding the original field in a frame of zero-values) of arbitrary sized fields has been added. The effort here was in the visualization of data to enable interactive masking, e.g. filtering in the Fourier domain, due the ‘packed’ order of the transformed field. If recording of a reference fringe system is not required, an additional routine to subtract the unperturbed plane phase front was required. The simplest way was to take three points from regions where the phase difference is known to be zero (border regions) and to calculate a plane from the phase values at these coordinates, with the plane phase front then subtracted from the phase map. To evade influences from local noise on the result, an algorithm that calculates the plane by planar regression from selected regions is required. Implementing phase shifting algorithms is straight forward. It is convenient to set a value for minimum modulation to mark unreliable phase results. Invalid values occur where modulation is zero. For unwrapping, 2-dimensional scan methods are simple to code. Good results can be achieved by the spiral scan method [6]. Nevertheless, for noisy data, especially when evaluating speckle interferograms or digital holograms, it is very likely to encounter spatially propagating errors originating from residues. If there are only a few of them, the implementation of manually directed ‘subscans’ to locally clean out these errors in smaller sized windows solves this problem. However, if there are more residues, or if unwrapping should be accomplished without human interaction, implementation of a branchcut method is inevitable. For this, there are three consecutive steps to be accomplished: 1. Definition of the borders of valid regions in the modulo 2p phase map. 2. Location of residues by probing all 2 · 2 pixel squares for residues within these regions. 3. Connecting pairs of + and ) residuum by branchcuts, or single residues to the border. 63 Eventual neighbourhood scans are efficiently made in square spirals. To ensure to find closer neighbours first at such poorly approximated circles, it is recommended to start the scan in the centers of the squares, proceeding outwards to the corners. 4. Unwrap with a simple unwrapping procedure. Recommended is an adapted flood-fill algorithm known from computer graphics. The usually recursive implementation might have to be avoided by introducing a stack operation, as is the case when using C++ or Fortran. For connecting residuals, the simple nearest neighbour method is sufficient in many cases. For more demanding wrapped phase maps, a procedure to optimise for a minimal overall branchcut length has been added in step 2. For the software described here, the minimum-cost-matching approach has been chosen [46]. Solved by the iterative ‘Hungarian algorithm’, the global minimum is guaranteed to be obtained. However, high-grade optimising methods such as minimum-cost-matching or simulated annealing [47] are quite time- and memory consuming when a high number of residues is encountered. To reduce computation times, it is possible to reduce the number of residues by preliminary low-pass filtering of the wrapped phase map. Several filter methods have been found that preserve the phase discontinuities, e.g. the trigonometric filter or adaptive medians [48,49]. Additionally, the number of border pixels to take into account can be reduced, for example by only taking these into account which are within a defineable number of nearest partners to any residuum. In general, it is a good idea to provide also a branchcut-setting routine that is in between the speed of the nearest-neighbour and a high-grade optimising routine. Introducing additional conditions to the nearest neighbourhood principle adds much of efficiency, as shown in [47]. For the TUGraz software, a new hybrid algorithm that includes minimum cost matching to the neighbourhood scan has been implemented. Instead of just scanning for the nearest neighbour of a residuum, the scan is continued until a specific number of potential partners has been found. Within the 64 M. Hipp et al. / Measurement 36 (2004) 53–66 region covered by the scan, the minimum cost matching algorithm is applied to all enclosed residues, but only the shortest branchcut is set. The routine has to be applied iteratively to the whole phase map until all residues are connected. Most of the unwrapping problems can be solved by a kind of branchcut method. For such desperate cases where this approach fails there remains the iterative minimum norm method due to its robustness. The L0 -norm method provides the advantage that the weighting matrix is obtained during the iterative treatment of the phase map, so insignificant regions are automatically masked. It should be mentioned that not only speckle interferograms lead to phase maps that require more sophisticated unwrap procedures than the spatial scan methods. Also phase maps from smooth-fringe interferograms obtained by the Fourier-method, which usually results in rather noise free wrapped phase maps if properly filtered in the frequency domain, might feature a high number of residuals near to a shadow region where fringes are disrupted, especially if diffraction fringes are superimposed. 8. Other helpful features For a software dedicated to a variety of phase evaluation problems, some features are highly recommendable. First of all, the procedures should be applicable in batch-operation, as in many cases temporally resolved measurements are desired, for example to monitor the deformation of a surface or the behaviour of a flow. Here, this problem has been solved by wrapping a loop around every significant algorithm that reads a filename from a user-defined list, opens the corresponding file and feeds the data to the algorithm. The results are immediately saved after each turn. Another proven feature is to provide verification of results. For example, to ensure that the minimum-norm method did not underestimate phase gradients, the unwrapped phase obtained by this method is wrapped again. By setting a common point to zero in all calculations, the result is directly comparable to the input data. Accordingly, it is possible to calculate interferograms from phase data obtained by evaluation of the real interferograms. To have an interface to other software, file import and export should be possible in ASCII-format. Therefore, data fields can be saved either in binary or ASCII format with a single header line including information about dimensions of the field and type of data (wrapped phase, phase, image . . .). This way, the graphical user interface can disable (‘grey out’) procedures in the menu bar which are not applicable to the type of the file just opened, which enhances user’s orientation in the software structure enormously. Usually, phase determination is an intermediate step resulting in a different, directly related quantity, calculated by postprocessing algorithms. For example for measurements with phase objects (e.g. fluid flows or plasma flows), the phase shift is integrated with the path of light through to object. From these integral phase data, inverse algorithms provide spatially resolved phase shifts. In case the objects has radial symmetry, and phase differences are measured from side-on observations, the phase distribution can be Abel inverted [8] to obtain the radial phase distribution, e.g. refraction index and further temperature. For asymmetric objects, there is more than one observation direction required. To get the phase distribution within the common cross-section, tomographic reconstruction [15] is required. Both inverse algorithms have to be included in software used for fluid flow investigations [14]. For surface measurements, the local direction of the sensitivity vector has to be taken into account to obtain true deformation. This requires knowledge about the 3D-shape of the surface [50]. 9. Conclusion In this paper, the common procedures to evaluate phase from regular and irregular interferograms have been outlined, showing the basic structures of the experimental approach and software procedures. The Fast Fourier Transform technique, phase shifting, methods of ESPI and digital holography as well as procedures for phase unwrapping have been illustrated. Algorithms and M. Hipp et al. / Measurement 36 (2004) 53–66 features found to be useful with a software package covering these fields of interferometry are explained. Acknowledgements This work was made possible by the Austrian Science Foundation (FWF) and the Austrian Ministry for Education, Science and Culture (BMBWK) within the grant Y57-TEC (Nonintrusive measurement of turbulence in turbomachinery). References [1] W. Merzkirch, Flow Visualization, Academic Press, Orlando, 1987. [2] F.E. Jones, The refractivity of air, J. Res. Nat. Bur. Stand. 86 (1) (1981) 27–32. [3] M. Takeda, H. Ina, K. Kobayashi, Fourier-transform method of fringe pattern analysis for computer-based topography and interferometry, J. Opt. Soc. Am. 72 (1982) 156–160. [4] K. Creath, Phase-measurement interferometry techniques, in: E. Wolf (Ed.), Progress in Optics XXVI, 1988, pp. 350– 93K. [5] R. D€ andliker, Heterodyne holographic interferometry, in: E. Wolf (Ed.), Progress in Optics XVII, North Holland Publishing Company, 1980, pp. 1–84. [6] D.W. Robinson, G.T. Reid, Interferogram Analysis, Institute of Physics Publishing, Bristol, 1993. [7] D. Vukicevic, T. Neger, H. J€ager, J. Woisetschl€ager, H. Philipp, Optical tomography by heterodyne holographic interferometry, in: Holography, vol. 8, 1990, pp. 160–193. [8] G. Pretzler, H. J€ ager, T. Neger, H. Philipp, J. Woisetschl€ ager, Comparison of different methods of Abel inversion using computer simulated and experimental sideon data, Z. Naturforsch. 47a (1992) 955–970. [9] G. Pretzler, H. J€ ager, T. Neger, High-accuracy differential interferometry for the investigation of phase objects, Meas. Sci. Technol. 4 (1993) 649–658. [10] J. Woisetschl€ ager, D.B. Sheffer, K. Omasundaram, H. Mikati, C.W. Loughry, S.R. Chawla, P.J. Wesolowski, Phase shifting holographic interferometry for breast cancer detection, Appl. Opt. 33 (1994) 5011–5015. [11] K. Widmann, G. Pretzler, J. Woisetschl€ager, H. Philipp, T. Neger, H. J€ ager, Interferometric determination of the electron density in a high-pressure xenon lamp with a holographic optical element, Appl. Opt. 35 (1996) 5896– 5903. [12] W. Fliesser, Spatially-resolved determination of the electron density in a high pressure mercury lamp using two- 65 wavelength speckle-interferometry, in: M.C. Bordage, A. Gleizes (Eds.), Contributed Papers XXIII ICPIC, Proc. ICPIC IV, 1997, pp. 122–123. [13] J. Woisetschl€ager, G. Pretzler, H. Jericha, N. Mayrhofer, H.P. Pirker, Heterodyne differential interferometry for turbine blade cascade flow investigations, Exp. Fluids 24 (1998) 102–109. [14] M. Hipp, P. Reiterer, J. Woisetschl€ager, H. Philipp, G. Pretzler, W. Fliesser, T. Neger, Application of Interferometric Fringe Evaluation Software at Technical University Graz, Proc. SPIE 3745, 1999, pp. 281–292. [15] H. Philipp, T. Neger, H. J€ager, J. Woisetschl€ager, Optical tomography of phase objects by holographic interferometry, Measurement 10 (4) (1992) 170–181. [16] U. Schnars, Direct phase determination in hologram interferometry with use of digitally recorded holograms, J. Opt. Soc. Am. A 11 (7) (1994) 2011–2015. [17] N. Abramson, The Making and Evaluation of Holograms, Academic Press, London, 1981. [18] R. Jones, C. Wykes, Holographic and Speckle Interferometry, Cambridge Universtiy Press, Cambridge, 1983. [19] W.W. Macy Jr., Two-dimensional fringe pattern analysis, Appl. Opt. 22 (23) (1983) 3898–3982. [20] Y. Surrel, Additive noise effect in digital phase detection, Appl. Opt. 36 (1) (1997) 271–276. [21] K. Hibino, Susceptibility of systematic error-compensating algorithms to random noise in phase-shifting interferometry, Appl. Opt. 36 (10) (1997) 2084–2093. [22] J. Schmit, K. Creath, Window function influence on phase error in phase-shifting algorithms, Appl. Opt. 35 (28) (1996) 5642–5649. [23] J.M. Huntley, Suppression of phase errors from vibration in phase-shifting interferometry, J. Opt. Soc. Am. A 15 (8) (1998) 2233–2241. [24] H. Zhang, M.J. Lalor, D.R. Burton, Robust accurate seven-sample phase-shifting algorithm insensitive to nonlinear phase-shift error and second-harmonic distortion: a comparative study, Opt. Eng. 38 (9) (1999) 1524– 1532. [25] C.P. Brophy, Effect of intensity error correlation on the computed phase of phase-shifting interferometry, J. Opt. Soc. Am. A 7 (4) (1990) 537–541. [26] R. Onodera, Y. Ishii, Phase-extraction analysis of laserdiode phase-shifting interferometry that is insensitive to changes in laser power, J. Opt. Soc. Am. A 13 (1) (1996) 139–146. [27] K. Creath, Phase-shifting speckle interferometry, Appl. Opt. 24 (18) (1985) 3053–3058. [28] D.C. Williams, N.S. Nassar, J.E. Banyard, M.S. Virdee, Digital phase-step interferometry: a simplified approach, Opt. Laser Technol. 23 (1991) 147–150. [29] T. Bothe, J. Burke, H. Helmers, Spatial phase shifting in electronic speckle pattern interferometry: minimization of phase-reconstruction errors, Appl. Opt. 36 (1997) 5310– 5316. [30] J. Burke, H. Helmers, Spatial versus temporal phase shifting in electronic speckle-pattern interferometry: noise 66 M. Hipp et al. / Measurement 36 (2004) 53–66 comparison in phase maps, Appl. Opt. 39 (2000) 4598– 4606. [31] S. Nakadate, H. Saito, Fringe scanning speckle-pattern interferometry, Appl.Opt. 24 (1985) 2172–2180. [32] M. Hipp, W. Fliesser, T. Neger, Temporally resolved phase stepped speckle interferometry of instationary plasma discharges, Proc. SPIE 3745 (1999) 366–376. [33] T.E. Carlsson, A. Wei, Phase evaluation of speckle patterns during continuous deformation by use of phaseshifting speckle interferometry, Appl. Opt. 39 (2000) 2628– 2637. [34] G. Pedrini, H.J. Titziani, Y. Zuo, Digital pulse-TVHolography, Opt. Laser Eng. 26 (1997) 199–219. [35] R.J. Collier, C.B. Burckhardt, L.H. Lin, Optical Holography, Academic Press, New York, 1971. [36] I. Yamaguchi, T. Zhang, Phase-shifting digital holography, Opt. Lett. 22 (16) (1997) 1268–1270. [37] M. Born, E. Wolf, Principles of Optics, Pergamon Press, Oxford, 1980. [38] T. Kreis, Suppression of the dc term in digital holography, Opt. Eng. 36 (8) (1997) 2357–2360. [39] R.M. Goldstein, H.A. Zebker, C.L. Werner, Satellite radar interferometry: Two dimensional phase unwrapping, Radio Sci. 23 (4) (1987) 713–720. [40] D.C. Ghiglia, L.A. Romero, Robust two-dimensional weighted and unweighted phase unwrapping that uses fast transforms and iterative methods, J. Opt. Soc. Am. A 11 (1994) 107–117. [41] P.D. Ruiz, G.H. Kaufmann, G.E. Galizzi, Unwrapping of digital speckle-pattern interferometry phase maps by use of a minimum L0 -norm algorithm, Appl. Opt. 37 (32) (1998) 7632–7644. [42] T. Kreis, Digital holographic interference-phase measurement using the Fourier-transform method, J. Opt. Soc. Am. A (3) (1986) 847–855. [43] M. Lehmann, Decorrelation-induced phase errors in phase-shifting speckle interferometry, Appl. Opt. 36 (16) (1997) 3657–3667. [44] J.M. Huntley, Random phase measurement errors in digital speckle pattern interferometry, Opt. Laser Eng. 26 (1997) 131–150. [45] W.H. Press, S.A. Teukolsky, W.T. Vetterling, B.P. Flannery, Numerical Recipes in C, 2nd ed., Cambridge University Press, 1992. [46] J.R. Buckland, J.M. Huntley, S.R.E. Turner, Unwrapping noisy phase maps by use of a minimum-cost-matching algorithm, Appl. Opt. 34 (23) (1995) 5100–5108. [47] R. Cusack, J.M. Huntley, H.T. Goldrein, Improved noiseimmune phase unwrapping algorithm, Appl. Opt. 34 (5) (1995) 781–789. [48] H.A. Aebischer, S. Waldner, A simple and effective method for filtering speckle interferometric phase fringe patterns, Opt. Commun. 162 (1999) 205–210. [49] A. Capanni, L. Pezzati, D. Bertani, M. Cetica, F. Francini, Phase-shifting speckle interferometry: a noise reduction filter for phase unwrapping, Opt. Eng. 36 (9) (1997) 2466– 2472. [50] R. Pryputniewicz, K.A. Stetson, Holographic strain analysis: extension of fringe-vector method to include perspective, Appl. Opt. 15 (3) (1976) 725–728.