零.写在前面
上学期在《复变函数与积分变化》中接触到了傅里叶变换,当时仅仅是会进行一些运算,对于其背后的意义和实际的用处一无所知。这个学期在《自动控制原理》中使用拉式变换将时域上的问题转化到频域上,使用伯德图和奈奎斯特图进行频率分析;在《数字图像处理》的频率域图像滤波中使用离散傅里叶变换进行低通滤波、高通滤波等;在《算法设计与分析》的分治算法中提到了FFT,这也是本文的起因。
目录
一.背景介绍:从傅里叶变换到离散傅里叶变换
一般的傅里叶变换对于采集、存储离散值的计算机而言并不好处理,一般要将其做一些离散化的变换。
首先,在时间(t域)上离散地采样,对应的傅里叶变换(FT)也变为离散时间傅里叶变换(DTFT)
然后,对于得到的DTFT在频率(w域)上离散地采样,得到DFT。其形式如下:
其中W项为 以此将在x域上的在一个周期()内离散化到n域上(n=0~N-1)。
至此将傅里叶变换(FT)最终转化为离散傅里叶变换(DFT)
二.从分治角度看FFT:
函数的点值法表示:
在背景介绍中曾提到计算机中习惯以离散值存储。对于多项式函数一般采用点值表示法来替代系数表示法,对于一个n-1次多项式可以通过n个不同点唯一表示。
其优势不仅体现在存储上,在计算方面点值表示法也有其优势。对于函数间相乘系数表示法需要O(n^2)而点值表示仅需要O(n)。
听起来非常好,那么对于系数表示多项式我们的目标就是将其化为点值表示。由此引出了问题——如何转化?