我们已经知道,对于有限长序列,它在频域也可离散化成有限长序列,即进行离散傅里叶变换。而在在数字信号处理(如滤波器设计)、信号的频谱分析(如在通信、图像传输、雷达、声纳等中的频谱分析)、系统的分析和设计实现等方面,都会大量用到DFT计算。然而,在相当长的时间里DFT并没有得到广泛的应用,这是为什么呢? 5.8.1 DFT的算法复杂度 根据DFT与IDFT的定义,它们二者的差别只在于WN的指数符号不同(是互为共轭的),以及一个常数乘因子 由上面的式子可知,一次复数乘法需要四次实数乘法和二次实数加法;一次复数加法则需二次实数加法。这样一来,每算得一个X(k)就需要4N次复数乘法及2N+2(N-1)=2(2N-1)次实数加法。所以整个DFT运算总共需要4N2次实数乘法和2N(2N-1)次实数加法。 真的要这么多的运算量吗?是不是还可以简化一下?比如说有些旋转因子等于1的时候,不是就不用乘了吗?
|