The $N$-point discrete Fourier transform (DFT) is a cornerstone for several signal processing applications. Many of these applications operate in real-time, making the computational complexity of the DFT a critical performance indicator to be optimized. Unfortunately, whether the $\mathcal{O}(N\log_2 N)$ time complexity of the fast Fourier transform (FFT) can be outperformed remains an unresolved question in the theory of computation. However, in many applications of the DFT -- such as compressive sensing, image processing, and wideband spectral analysis -- only a small fraction of the output signal needs to be computed because the signal is sparse. This motivates the development of algorithms that compute specific DFT coefficients more efficiently than the FFT algorithm. In this article, we show that the number of points of some DFT coefficients can be dramatically reduced by means of elementary mathematical properties. We present an algorithm that compacts the square index coefficients (SICs) of DFT (i.e., $X_{k\sqrt{N}}$, $k=0,1,\cdots, \sqrt{N}-1$, for a square number $N$) from $N$ to $\sqrt{N}$ points at the expense of $N-1$ complex sums and no multiplication. Based on this, any regular DFT algorithm can be straightforwardly applied to compute the SICs with a reduced number of complex multiplications. If $N$ is a power of two, one can combine our algorithm with the FFT to calculate all SICs in $\mathcal{O}(\sqrt{N}\log_2\sqrt{N})$ time complexity.
翻译:$N$点离散傅里叶变换(DFT)是多种信号处理应用的核心基础。其中许多应用需要实时运行,这使得DFT的计算复杂度成为待优化的关键性能指标。遗憾的是,快速傅里叶变换(FFT)的$\mathcal{O}(N\log_2 N)$时间复杂度能否被超越,仍然是计算理论中一个悬而未决的问题。然而,在DFT的许多应用中——例如压缩感知、图像处理和宽带频谱分析——由于信号具有稀疏性,仅需计算输出信号的一小部分。这推动了比FFT算法更高效计算特定DFT系数的算法发展。本文证明,通过基础数学性质可大幅减少某些DFT系数的计算点数。我们提出一种算法,将DFT的平方索引系数(即对于平方数$N$,$X_{k\sqrt{N}}$,$k=0,1,\cdots, \sqrt{N}-1$)的计算点数从$N$压缩至$\sqrt{N}$,仅需$N-1$次复数加法且无需乘法运算。在此基础上,任何常规DFT算法均可直接应用于计算SIC,并减少复数乘法次数。若$N$为2的幂次,可将本算法与FFT结合,以$\mathcal{O}(\sqrt{N}\log_2\sqrt{N})$的时间复杂度计算所有SIC。