previous up next print clean
Next: EXAMPLES Up: Palacharla: Filter design Previous: Introduction

DESIGN TECHNIQUE

The usual method in designing 2-D filters is to design an optimum filter that corresponds to a given desired two-dimensional spectrum. For designing 2-D filters that exhibit some special symmetry properties usually some transformation techniques are used to exploit the symmetry. The most common method used for generating a 2-D circularly symmetric filter is to use a transformation filter to generate the equivalent 2-D filter given the corresponding filter along one direction. This is done using a transformation filter called the McClellan transformation represented by F(k). The method requires one one-dimensional spectral expansion to get the filter coefficients for the 1-D problem and one two-dimensional spectral expansion to generate the transformation filter.

The particular method for realizing these filters that yields structures with low sensitivity and low computational complexity is one proposed by McClellan and Chan 1977. The steps involved in this method are as follows.

A 1-D nonrecursive filter of odd length can be represented by the transfer function

 
 \begin{displaymath}
H_1(z) = \sum_{n= -(N-1)/2}^{(N-1)/2} h_1(n)z^{-n} \\ end{displaymath} (1)
and if the impulse response of the filter is symmetrical such that h1(-n) = h1(n) for n = 1,2,...,(N-1)/2, the frequency response of the filter can be expressed as  
 \begin{displaymath}
H_1(k) = \sum_{n=0} ^{(N-1)/2} a_0(n)\cos(nk) \\ end{displaymath} (2)
where

\begin{displaymath}
a_0(n) = \left\{ \begin {array}{ll}
 h_1(0) & \mbox{ for $n=0$} \\  2h_1(n) & \mbox{otherwise}
 \end{array} \right. \end{displaymath}

For any integer n, $\cos(nk)$ can be expressed in terms of an nth-order polynomial of $x = \cos (k)$ known as a Chebyshev polynomial and denoted by Cn(x). The recursion formula is given by equation A-1. Equation 2 can be written in terms of the Chebyshev polynomials as

\begin{displaymath}
H_1(k) = \sum_{n=0} ^{(N-1)/2} a_0(n)C_n\cos(nk) \end{displaymath}

 
 \begin{displaymath}
= \sum_{n=0} ^{(N-1)/2} a_1(n)\cos(k)^n \\ end{displaymath} (3)
where constants a1(nk) for n = 0,1,...,(N+1)/2 can be obtained from constants a0(nk). The McClellan transformation is given by

 
cos(k) = A cos(kx) + B cos(ky) + C cos(kx) cos(ky) + D (4)

= F(kx,ky)

where A,B,C, and D are constants. In the original McClellan transformation A=B=C=0.5 and D=-0.5. The McClellan filter is an approximation to the circular filter $\cos{k}$ where $k=\sqrt{k_x^2 + k_y^2}$ in the (kx,ky) domain. Hale1991 suggests a modified McClellan transformation which is a better approximation than the original one, it is given by A-3. The contours of constant amplitude and phase for the original and the modified McClellan transformation filters are shown in Figure [*]. The modified filter has better accuracy at higher wavenumbers as can be seen from the contours. Applying the McClellan transformation to the frequency response of a 1-D nonrecursive filter given in Equation 3 yields  
 \begin{displaymath}
H_2(k_x,k_y) = \sum_{n=0} ^{(N-1)/2} {\sum_{n=0} ^{(N-1)/2} a_2(n)
 (\cos(k_x))^n(\cos(k_y))^n} \end{displaymath} (5)
and since $(\cos k_x)^n$ can be expressed as linear combinations of $\cos k_x, \cos 2k_x,...,
 \cos nk_x$, Equation 5 can be written as  
 \begin{displaymath}
H_2(k_x,k_y) = \sum_{n=0} ^{(N-1)/2} {\sum_{n=0} ^{(N-1)/2} a_3(n)
 \cos(nk_x)\cos(nk_y)}\end{displaymath} (6)

This frequency response can be realized using the chebyshev filter structure shown in Figure [*]. The upper part of the structure does the Chebyshev recursion and the lower part implements the convolution with the one-dimensional filter.

 
mco3
Figure 1
Contours of constant amplitude and phase for the original McClellan transformation filter(large dash), the modified McClellan transformation filter (dot dash) and the ideal circularly symmetric filter (continuous).
mco3
view burn build edit restore

 
cheny
cheny
Figure 2
Chebyshev filter structure for the realization of circularly symmetric filters. The lower part does the convolution with the filter hn and the upper part implements the Chebyshev recursion.
view


previous up next print clean
Next: EXAMPLES Up: Palacharla: Filter design Previous: Introduction
Stanford Exploration Project
11/17/1997