2024
Comment:

← Revision 16 as of 20130701 13:12:56 ⇥
2025
converted to 1.6 markup

Deletions are marked like this.  Additions are marked like this. 
Line 14:  Line 14: 
. All frequencies are in [:absolute_frequency_units:absolute frequency units] {{{`f_a`}}} and their valid range is [0:0.5].  . All frequencies are in [[absolute_frequency_unitsabsolute frequency units]] {{{`f_a`}}} and their valid range is [0:0.5]. 
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  stopband frequency
 freqh
 high  passband 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).
All frequencies are in absolute frequency units `f_a` and their valid range is [0:0.5].
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:
`1(1value)**B(f)`
where `B(f)` is the Butterworth filter
`B(f) = 1.0/sqrt(1.0+(f/(RAD))^(ORDER))`
Value of ORDER determines the filter falloff and RAD corresponds to the cutoff frequency. RAD and ORDER are calculated from the parameters specified by the user using following equations:
`ORDER = [2*log((eps)/sqrt(a^21))]/[log((low)/(high))]`
`RAD = (low)/((eps)^(2/(ORDER)))`
where low and high are the passband and stopband 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 lowpass 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.