pifilter - pi filter for phased images |
filtered_image = pifilter(image[,filter_name]) |
image |
A gray image (normally a phased image). |
filter_name |
A low-pass filter. It can be mean' or 'low-pass' (see mkfilter). Default is 'mean'. |
Filters a phased image before unwrapping it. The purpose is to keep the phase jumps sharp: a convolution by a low-pass 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. |
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 |
"Techniques automatiques de raccordement de phase"
by David Venet Ecole Federale de Lausanne (1995-96) |
Jocelyn DRUEL <jocelyn.druel1@libertysurf.fr> |
The latest version of the Scilab Image Processing toolbox can be found at |
http://siptoolbox.sourceforge.net |
unwrapl,unwrapp,mkfilter,imconv |