Name

filt_btwo - Butterworth homomorphic Fourier filter

Usage

output = filt_btwo(image, freql, freqh, value, pad)

Input

image
input image (can be either real or Fourier)
freql
low - stop-band frequency
freqh
high - pass-band frequency
value
value of the filter at zero frequency
pad
logical flag specifying whether before filtering the image should be padded with zeroes in real space to twice the size (this helps avoiding aliasing artifacts). (Default pad = False).

Output

output
filtered image. Output image is real when input image is real or Fourier when input image is Fourier

Method

Fourier transform of the input image is multiplied by a radially symmetric filter:

Value of ORDER determines the filter falloff and RAD corresponds to the cut-off frequency. RAD and ORDER are calculated from the parameters specified by the user using following equations:

where low and high are the pass-band and stop-band frequencies, respectively, and parameters eps and a are set to 0.882 and 10.624, respectively. Note values of the filter B(f) deviate from 1.0 at frequency low by about 0.2 and from 0.0 at frequency high by about 0.09 (for a low-pass filter.)

Reference

Gonzalez, R. F., Woods, R. E., 2002. Digital Image Processing. Prentice Hall, Upper Saddle River, NJ.

Author / Maintainer

Pawel A. Penczek

Keywords

category 1
FILTER
category 2
FOURIER

Files

filter.py

Maturity

stable
works for most people, has been tested; test cases/examples available.

Bugs

None. It is perfect.

filt_btwo (last edited 2023-07-01 13:12:56 by localhost)