Professional Documents
Culture Documents
BOS-I. A (8) ,: Hexagonal Fast Fourier Transform With Rectangular Output
BOS-I. A (8) ,: Hexagonal Fast Fourier Transform With Rectangular Output
[2] J . A. Cadzow, “Recursive digital filter synthesis via gradient based geophysical seismic surveys [ 5 ] ,holography [ 6 ] ,and magnetic res-
algorithms,” IEEE Trans. Acoust., Speech, Signal Processing, vol. onance (MR) imaging [7].For example, in MR imaging, the mag-
ASSP-24, pp. 349-355, Oct. 1976.
netic field gradients and timing of data acquisition are manipulated
[3] J. S . Lim, Two-Dimensional Signal and Image Procehsing. Engle-
wood Cliffs, NJ: Prentice Hall, 1990. to generate sampling of data in a hexagonal pattern. This can be
[4] W. C. Davidon, “Variable metric method for minimization,” AEC used to produce improved image resolution or reduced data acqui-
Res. and Devel. Rep. ANL-5990, 1959. sition time. Other advantages for specific applications of hexagonal
[SI R. Fletcher and M. J. D. Powell, “A rapidly convergent descent sampling may include lower computer storage requirements and
method for minimization,” CompuferJ., vol. 6, no. 2, pp. 163-168,
July 1963. lower data acquisition rates. Standard fast Fourier transform (FFT)
[6] G. A. Shaw and R. M. Mersereau, “Design. stability, and perfor- algorithms, however, are not applicable to nonrectangularly sam-
mance of two-dimensional recursive digital filters,” Tech. Rep. E2 1- pled data. A hexagonal FFT algorithm has been derived by Mer-
BOS-I.Georgia Inst. Technol. School Elec. Eng., Dec. 1979. sereau [8], but this algorithm calculates the transform values at
171 P . Gill, W. Murray, and M. Wright, Prucricul Optimization. Lon- output points also distributed on a hexagonal lattice. Although hex-
don: Academic, 1981.
181 R. Fletcher, Practical Methods of Optimization, vol. 1, Uncon- agonal output may have certain advantages, most standard image
strained Optimization. New York: Wiley, 1980. display hardware and software require rectangular pixels. Thus,
[9] J . Dennis and J . More, “Quasi-Newton methods, motivation, and use o f Mersereau’s algorithm in imaging would require an addi-
theory,” SIAM Rev., vol. 19, pp. 46-89, 1977. tional interpolation step. This interpolation would require extra
[IO] M. Powell, “How bad are the BFGS and DFP methods when the
objective function is quadratic?,” Rep. DAMTP 1984/NA3, Cam- processing time and might introduce artifacts. The purpose of this
bridge, 1984. correspondence is to present fast algorithms for the discrete Fourier
[ I I ] D. E . Dudgeon and R. M. Mersereau, Multidimensional Digital Sig- transform when the data space is sampled hexagonally and trans-
nul Processing. Englewood Cliffs, NJ: Prenticc-Hall, 1984. form space is sampled rectangularly.
11. HEXAGONAL
SAMPLING
Although rectangular sampling patterns are chosen often because
they are familiar, other patterns may have more desirable charac-
Hexagonal Fast Fourier Transform with Rectangular teristics. A sampling pattern may be specified by a sampling matrix
output V . This matrix defines how the discrete d a t a f ( n ) at an integer se-
quence of points n = (n,,n2)‘, may be expressed in terms of the
James C. Ehrhardt
continuous data functionfc(x), i.e.,
0 . 0 .
LtJ
d,
000
:*I ......
. . . . .
....
Sampling Pattern Sampling Matrix
~
0 o0* o. * 0
o * .o \ ~ o ; .
dots. Eight small dots indicate the remaining hexagonal data set.
(b) In Fig. 2 these data are then replicated in a rectangular pattem.
Fig. 1. Sampling patterns for (a) rectangular and (b) hexagonal sampling Note that the group of four large dots is replicated horizontally and
showing their basis vectors, sampling matrices, and aliasing patterns for a
continuous data function whose spectrum is circular. When the data are vertically. The basis vectors of the replication pattem are used to
sampled with the patterns shown, the discrete transform produces spectrum form the periodicity matrix as given in the figure. Assuming the
aliases in rectangular or hexagonal patterns. periodicity matrix shown in Fig. 2 and the hexagonal sampling ma-
trix in (2) the transform sampling matrix S may be shown to be
111. DISCRETE
FOURIER
TRANSFORM
A discrete Fourier transform assumes that a finite data sequence
is periodically replicated throughout space. Then the output values
This diagonal matrix represents rectangular sampling of the Fourier
of the discrete transform represent samples of the transform of the
transform with sampling intervals in the horizontal and vertical di-
continuous input function. The location and pattern of the output
rections given by 2 r / ( 3 d I ) and 7r/2d2, respectively. To summa-
samples are determined by the replication pattem. For example, to
rize this example, if the hexagonally sampled data set of Fig. 2 is
obtain transform values on a rectangular array, we must assume
transformed with the DFT of (4) and the periodicity matrix given
that the data are replicated in a rectangular pattem. We will discuss
in the figure, then the result will be values of the transform at points
these concepts in more detail while we derive the DFT formulas
on a rectangular lattice. No interpolation is required to obtain the
below.
rectangular output. It is calculated directly.
If a finite-extent sequence, f ( n ) , over a region of support n, =
0 . . * NI - 1 and n2 = 0 . . . N 2 - 1 , is periodically extended
so that f ( n ) = f(n +
N r ) , where N is the periodicity matrix as IV. ALGORITHM
discussed below and r is any integer vector, then a discrete Fourier In general, for rectangular output from hexagonal sampling with
transform (DFT) pair may be defined [ 9 ] , [lo] as a sampling matrix given by ( 2 ) , the periodicity matrix may be cho-
sen to be
N = :[ :12].
It is straightforward to show that F ( k ) is also periodic with F ( k ) = The output from this transform is sampled at frequency intervals
F(k + Nrr). of 27r/(Nldl) in the horizontal direction and 27r/(N2d2)in the ver-
The periodicity matrix N is an integer matrix whose columns tical direction. Expanding (4) using ( 6 ) , the DFT o f f ( n ) is
consist of the basis vectors of the replication pattem. The choice
of N will determine how F ( k ) samples the continuous Fourier
transform o f i . ( x ) . To be specific, the matrix S = 27r(NTVT)-I is
the sampling matrix that determines how the continuous transform
offr(x) is sampled. For example, if N is chosen to represent a
rectangular replication of the sequence f, then S will be diagonal
and the Fourier transform will be calculated on a rectangular grid
of points.
These ideas are illustrated in Fig. 2 , which shows a data set of
3 X 4 independent data points sampled on a hexagonal pattern.
Four of these points near the origin are represented by the large
I
IEEE TRANSACTIONS ON SIGNAL PROCESSING, VOL. 41, NO. 3, MARCH 1993 1471
Then
Equations (8) define an algorithm for this DFT. We see that this
process consists of three steps. First, N2 NI-point DFT’s are per-
formed. Then these values are multiplied by a phase factor. Fi-
nally, NI N2-point DFT’s are performed. The inverse transform
may be performed similarly by reversing the sign of the exponential
in each equation.
A special case arises when it is necessary to obtain the transform
values on a square array. In this case, equal transform sampling
intervals imply that N2/N, = d 1 / d 2 .But for regular hexagonal
sampling, the right side of this equation is an irrational number
while the left side must be a rational fraction. Thus, a DFT with
perfect regular hexagonal sampling and square output pixels is not
possible. However, if d , and d2 are selected so that their ratio is a
rational fraction close to 2/31’2, a nearly optimal efficiency gain
is obtained. For example, if d l / d Z = 8 / 7 , the sampling efficiency
will be 12.5% greater than rectangular sampling, which is only
slightly less than the optimal gain of 1 3 . 4 % . This ratio also yields
a straightforward FFT algorithm. If N2 = 256, then N I = 224, and
(8a) involves a 224 = 7 X 32 point DFT. A fast algorithm for this
may be found using the method of Singleton [ 1 I] that involves a 7
point transform, a phase factor multiplication, and a 32 point trans- (b)
form. The 7 point transform may be calculated very efficiently us- Fig. 3 . (a) The output of the algorithm when applied to data whose trans-
ing a small N algorithm (121, and thus the 224 point transform form is a circle. (b) After swapping the quadrants according to the indicated
labels, the origin and the complete circle are brought to the center of the
involves about the same number of operations as the 256 point output array.
transform. Derived using the Chinese remainder theorem [13], an
alternative 224 point FFT algorithm may be used that eliminates
the phase factor multiplication at the expense of sorting the input
V . DISCUSSION
and output indices. The hexagonal transform may be computed in
place except for a small additional memory requirement for the 7 The input data to (8) are expected to be in a regular array with
point transform. n, = 0 . . . NI - 1 and n2 = 0 . ’ ‘ N, - 1 corresponding to the
Equations (8a)-(8c) are not the only fast algorithm for this hex- appropriate set of points in parallelopiped region of support, A
agonal transform. The periodicity matrix may be factored accord- sample 4 X 6 region is illustrated in Fig. 4(a). However, the ex-
ing to the method of Mersereau [IO] to yield a slightly different perimental process may produce data that covers a different region
approach [7]. If the periodicity matrix is factored according to the of input space, such as the 4 X 6 rectangular region shown in Fig.
method of Guessoum and Mersereau [14], an algorithm is obtained 4(b) where the points in each row are numbered from n ; = 0 . . .
that replaces the phase factor multiplication step with sorting steps NI - 1 and ni = n 2 . If so, a direct application of @a)-(&) is not
in both the input and output. appropriate. However, the data set from a rectangular region may
The output of this transform is in natural order with the origin at be reordered or rebinned so that the algorithm may be used. This
( 0 , 0 ) . Applications, such as image formation, may require that the may be accomplished by recognizing that the data set is assumed
origin of the output be shifted to the center of the array. Normally, to be periodic. Since the periodicity is rectangular, the data points
for a rectangular transform, this is accomplished by swapping op- in the upper left triangle of Fig. 4(c) may be found by setting them
posite quadrants of the array. An alternative method requiring little equal to the data points in the upper right triangle and relabelling
computational time is to multiply the input data by ( - 1)‘ +’.For the coordinates of the points. This rebinning may be accomplished
the hexagonal transform, the origin is still at (0, 0), but because by shifting each row of the input data such that
the aliases occur in a hexagonal pattern, the quadrant swapping
must be modified. Fig. 3 shows the hexagonal transform of data
n, = (n; + {n;/2}) mod NI (9)
whose spectrum is circular. To obtain a centered transform, the where the curly brackets are meant to indicate the truncation of the
following quadrant shifts must be performed: I to 11, I1 to IV, I11 quantity to an integer. When rebinning is done before the FFT, the
to I, and IV to 111. The alternative method of multiplying the input transform output will be in normal order.
by a phase factor may be less attractive because complex multipli- An alternative method may be used for data covering a rectan-
cations are required. Because there are NI x N2 input points, there gular region. The spatial shift of (9) is equivalent to introducing a
will be NI X N2 points covering a rectangular area of output space. phase shift into the transform. When the effects of this shift are
Other areas are easily obtained by recognizing the hexagonal alias- incorporated into the DFT, transform (8b) is changed to
ing induced by the transform. Points outside the rectangle are set
equal to corresponding aliased points inside. Coverage of a hex-
agonal area may be obtained in this manner. Also, if a square N2 where the input array to (8a) is the data sequence over a rectangular
X N2 output is needed (e.g., to fill an N 2 image array), the addi- region and numbered as in Fig. 4(b). If the data are in this order
tional points may be duplicated from their aliases. originally, this procedure is more efficient because the rebinning
I
1472 IEEE TRANSACTIONS ON SIGNAL PROCESSING, VOL. 41, NO. 3, MARCH 1993
REFERENCES