2-D FIR filter using 2-D window method

produces the two-dimensional FIR filter `h`

= fwind2(`Hd`

,`win`

)`h`

using an inverse
Fourier transform of the desired frequency response `Hd`

and
multiplication by the window `win`

. `Hd`

is a
matrix containing the desired frequency response at equally spaced points in the
Cartesian plane. `fwind2`

returns `h`

as a
computational molecule, which is the appropriate form to use with
`filter2`

. `h`

is the same size as
`win`

.

Use `fwind2`

to design two-dimensional FIR filters using the
window method. `fwind2`

uses a two-dimensional window specification
to design a two-dimensional FIR filter based on the desired frequency response
`Hd`

. `fwind2`

works with two-dimensional
windows; use `fwind1`

to work with one-dimensional windows.

For accurate results, use frequency points returned by
`freqspace`

to create `Hd`

.

lets you specify the desired frequency response `h`

= fwind2(`f1`

,`f2`

,`Hd`

,`win`

)`Hd`

at arbitrary
frequencies (`f1`

and `f2`

) along the
*x-* and *y*-axes. The frequency vectors
`f1`

and `f2`

should be in the range -1.0 to
1.0, where 1.0 corresponds to half the sampling frequency, or π radians.
`h`

is the same size as `win`

.

`fwind2`

computes `h`

using an inverse Fourier
transform and multiplication by the two-dimensional window
`win`

.

$${h}_{d}({n}_{1},{n}_{2})=\frac{1}{{\left(2\pi \right)}^{2}}{\displaystyle {\int}_{-\pi}^{\pi}{\displaystyle {\int}_{-\pi}^{\pi}{H}_{d}({\omega}_{1},{\omega}_{2}){e}^{j{\omega}_{1}{n}_{1}}{e}^{j{\omega}_{2}{n}_{2}}d{\omega}_{1}d{\omega}_{2}}}$$

$$h({n}_{1},{n}_{2})={h}_{d}({n}_{1},{n}_{2})w({n}_{1},{n}_{2})$$

[1] Lim, Jae S., *Two-Dimensional Signal and Image
Processing*, Englewood Cliffs, NJ, Prentice Hall, 1990, pp.
202-213.