172 IEEE TRANSACTIONS ON SIGNAL PROCESSING, VOL. 48, NO. 1, JANUARY 2000
Split Manageable Efficient Algorithm for Fourier
and Hadamard Transforms
Artyom M. Grigoryan and Sos S. Agaian
Abstract—In this paper, a general, efficient, manageable split al-
gorithm to compute one–dimensional (1-D) unitary transforms, by
using the special partitioning in the frequency domain, is intro-
duced. The partitions determine fast transformations that split the
-point unitary transform into a set of -point transforms
( ). Here, we introduce a class of split-
ting transformations: the so-called paired transforms. Based on
these transforms, the decompositions of the Fourier transforms of
arbitrary orders are given, and the corresponding algorithms are
considered. Comparative estimates revealing the efficiency of the
proposed algorithms with respect to the known ones are given. In
particular, a proposed method of calculating the -point Fourier
transform requires multiplications and
additions. In terms of the paired transforms, the
splitting of the -point Hadamard transform is described. As a re-
sult, the proposed algorithm for computing this transform uses on
the average no more than six operations of additions per sample.
Index Terms—Discrete fast and Hadamard transforms, fast al-
gorithms, paired transforms.
I. INTRODUCTION
I
N THE PAST decade, fast orthogonal transforms have been
widely used in areas such as data compression, pattern
recognition and image reconstruction, interpolation, linear
filtering, and spectral analysis [1]–[4]. The suitability of unitary
transforms in each of the above applications depends on the
properties of their basis functions as well as on the existence of
fast algorithms, including parallel ones. Since the introduction
of the fast Fourier transform (FFT) [5], Fourier analysis has
become one of the most frequently used tools in signal/image
processing and communication systems; other discrete trans-
forms and different fast algorithms for computing transforms
have been introduced [1], [6]–[9]. Fast algorithms of interest are
the fractional DFT [10], split-radix, vector split-radix, mixed
radix [11], [12], Winograd algorithm, extending Winograd’s
small convolution algorithms [32], prefactor, arithmetic, and
least-mean-square algorithms [13]–[16].
The main problem when calculating the transform relates
to construction of the decomposition, namely, the transition to
the short DFT’s with minimal computational complexity. The
Manuscript received May 1, 1998; revised June 28, 1999. The associate editor
coordinating the review of this paper and approving it for publication was Dr.
Frans M. Coetzee.
A. M. Grigoryan is with the Department of Electrical Engineering,
Texas A&M University, College Station, TX 77843-3128 USA (e-mail:
artyom@ee.tamu.edu).
S. S. Agaian is with the Division of Engineering, The University of Texas,
San Antonio, San Antonio, TX 78249-0669 USA (e-mail: sagaian@voy-
ager1.eng.utsa.edu).
Publisher Item Identifier S 1053-587X(00)00089-1.
computation of unitary transforms are complicated and time
consuming. In many cases, we have to consider transforms
of complex orders, as well as , where is an odd prime
[20], [33]. Prime length FFT’s [30], [31], [34], which are the
building blocks for composite length DFT’s, can be used in
different ways. Since the decomposition of the DFT is not
unique, it is natural to ask how to manage splittings and how
to obtain the fastest algorithm of the DFT. The lower bound of
arithmetical operations for computing the linear transform has
been found [17] and equals for DFT and for
the Hadamard transform, which shows that existent algorithms
have room for improvement. The difference between the lower
bound and the complexity of fast transform algorithms (for
example, for the split-radix algorithm, the upper bound equals
) shows that it is possible to obtain FFT
algorithms that will be faster than existent ones.
One approach is in designing efficient manageable split
algorithms, and there are many reasons for that. Indeed, many
algorithms make different assumptions about the transform
length. The signal/image processing related to engineering
research becomes increasingly dependent on the develop-
ment and implementation of the algorithms of orthogonal
or nonorthogonal transforms and convolution operations in
modern computer systems. The increasing importance of
processing large vectors and parallel computing in many
scientific and engineering applications requires new ideas for
designing super-efficient algorithms of the transforms and their
implementations.
The present paper introduces a flexible, manageable split
algorithm for computing unitary transforms of arbitrary orders
by using different partitioning in the frequency domain and
new paired representation of the transforms. These types of
partitioning have been used for multidimensional transforms
[18]–[20] but will be described below for the one-dimensional
(1-D) case. The number of partitions depends on the type of the
unitary transforms and their orders. The greater the order of the
transform the more opportunities to obtain such partitioning,
which results in an effective decomposition of the transform.
Section II presents a problem treated in the present paper. Sec-
tion III reviews briefly some necessary background material, in-
cluding the concept of a partition revealing the transform and
the concept of a splitting of the transform. Section IV describes
the proposed algorithm, as well as properties of the so-called
paired transforms, which results in the splitting of the trans-
form. Sections V and VI describe the paired representations of
the Fourier and Hadamard transforms and algorithms for com-
puting them. The matrix equations describing the decomposi-
tion of these transforms based on the paired transforms are also
1053–587X/00$10.00 © 2000 IEEE