我们先回忆一下DFT
F––[m]=Ff––––[m]=∑k=0N−1f––[k]e−2πimkN(1)
我们给出离散傅里叶逆变换
F−1f––––––[m]=1N∑k=0N−1f––[k]e2πimkN(2)
对于这个式子,我们最想问的问题是为什么它比连续傅里叶变换多了一个系数
1N
为了解答这个问题,我们先改写一下DFT与inverse DFT
我们定义向量
ω
为:
ω––[m]=e2πimN
即,
ω––=(1,e2πi1N,e2πi2N,…,e2πiN−1N)(3)
并将变量
k
写为
n
,那么
(1)
式就可以改写为:
F––[m]=∑n=0N−1f––[n]ω––−n[m]
或者更一般地(
(2)
式同理),
Ff––––=∑n=0N−1f––[n]ω––−n(4)
F−1f––––––=1N∑k=0N−1f––[n]ω––n(5)
ω
可以看作是向量,也可以看作是离散复指数
那么类比于连续傅里叶变换(傅里叶级数)中对复指数的讨论,离散复指数又有怎样的特点呢?
对于
<wk,wl>
<wk,wl>=∑n=0N−1wk[n]wl[n]¯¯¯¯¯¯¯¯¯¯¯=∑n=0N−1e2πiknNe−2πilnN=∑n=0N−1e2πi(k−l)nN=∑n=0N−1(e2πi(k−l)N)n(6)
我们来看看当
k≠l
时,即求离散复指数的内积。我们发现
(6)
式是一个等比数列的求和,因此利用等比数列求和公式,有
<wk,wl>=1⋅(1−(e2πi(k−l)N)N)1−e2πi(k−l)N=1−e2πi(k−l)1−e2πi(k−l)N
显然当
k≠l
时,由于
k
,
l
均为整数,故
e2πi(k−l)=1
,从而
<wk,wl>=0,k≠l
当
k=l
时,即求离散复指数的模长。我们发现
(6)
式的每一项都为
1
,因此
<wk,wk>=∑n=0N−11=N
也可以写成
||wk||22=N
即离散复指数的长度为
N−−√
证明到这里,我们就可以看出离散复指数和连续(或级数)复指数的一个很大的不同,在之前的文章中,我们说过,傅里叶变换相当于从一个标准正交坐标系映射到另一个标准正交坐标系的过程,是
orthonormal
的;而DFT则不同,它的变换取决于取的采样点的数量,它是正交的但不是归一化的,是
orthogonal
的。
接下来我们验证一下离散傅里叶逆变换的正确性
F−1Ff––––––––[n]=1N∑m=0N−1Ff––––[m]e2πimnN=1N∑m=0N−1∑k=0N−1f––[k]e−2πimkNe2πimnN=1N∑k=0N−1f––[k]∑m=0N−1(e2πin−kN)m
根据前文证明的正交性可知,仅当
n=k
时
(e2πin−kN)m=1
,其余情况均为
0
,故
F−1Ff––––––––[n]=1Nf––[n]∑m=0N−11=f––[n]
不难发现,正是因为离散复指数的模长为
N−−√
,才导致了离散傅里叶逆变换中出现了系数
N
。
最后,我们应该把DFT的输入、输出都看作是周期为
N
的信号(或把它们看作进行了以
N
为周期的周期延拓的信号)
简单证明一下:
ω[m+N]––––––––––=e2πim+NN=e2πimN=ω[m]–––––
Ff[m+N]––––––––––––=∑n=0N−1f––[n]ω[m+N]––––––––––−n=∑n=0N−1f––[n]ω[m]–––––−n=Ff[m]–––––––
同理可证逆DFT
因此,
f––
,
Ff––––
都应被看作周期为
N
的离散信号