SIP Toolbox

pifilter - Pi filter for phased images

Calling Sequence

filtered_image = pifilter(image[,filter_name])

Parameters

Description

Filters a phased image before unwrapping it. The purpose is to keep the phase jumps sharp: a convolution by a lowpass kernel would be catastrophic, because it would smooth these jumps, causing the demodulation algorithm to fail.

Principle:
1) We calculate the sinus and cosinus of the phase
2) We apply a convolution filtering on each component
3) We get the phase again with an atan

This function uses the mkfilter and imconv functions. Reasonable kernels are: 'low-pass' and 'mean'. A high-pass filter would make no sense as it would burst noise !

You can use pifilter for ordinary grayscale images to smooth them without loosing the edges. This filter is similar to the median filter, but will leave edges even stronger. However, the noise will more often not be removed; just attenuated.

Examples

       a=gray_imread(SIPDIR+'images/photonics/pyramide_noisy.jpg');
       xset("window",0);xbasc();
       imshow(a);
       improfile(a);//to visualise profiles
       b=pifilter(a);
       xset("window",1);xbasc();
       imshow(b);
       improfile(b);//jumps are still well visible and other parts are smoothed
   

References

"Techniques automatiques de raccordement de phase" by David Venet Ecole Federale de Lausanne (1995-96)

Authors

Jocelyn DRUEL <jocelyn.druel1@libertysurf.fr>

Availability

The latest version of the Scilab Image Processing toolbox can be found at

http://siptoolbox.sourceforge.net

See Also

unwrapl,  unwrapp,  mkfilter,  imconv,