离散傅里叶变换(DFT)
傅里叶变换分类-基于信号类型
非周期-连续
这种类型的信号沿正负轴无穷方向伸展,并且不会出现周期性的重复.此类信号的傅里叶变换称为傅里叶变换.
周期-连续
此类信号的傅里叶变换称为傅里叶级数.
非周期-离散
在负无穷到正无穷区间内,这类信号仅在一些不连续的点处有定义,并且不会周期性地反复出现.
此类信号的傅里叶变换称为离散时间傅里叶变换.
周期-离散
这种类型的信号是按一定时间间隔从负无穷到正无穷反复出现的离散信号.其傅里叶变换称为
离散傅里叶变换.
- 四种类型的信号都是延伸向正无穷和负无穷的,而计算机中只能存储有限个数值.假设一个1024点的信号,如何进行傅里叶变换?
- 正弦波和余弦波定义中规定该信号为无穷信号,因此,你不可能用一组无限的信号合成有限的信号.
- 这可以通过设想在信号实际点的左右两侧存在无穷多个样点的方法来实现,如果这些设想点取值全部为零,则该信号可视作离散-非周期信号,可以应用离散时间傅里叶变换.另一种方法是将真实信号的1024个点复制给设想采样点,或者说将这1024个采样点进行周期性拓延.这样一来,此信号可视为一个离散-周期信号.此时可以选用离散傅里叶变换(DFT)进行分析.
- 要合成一个非周期性的信号必须要有无穷多的正弦波.计算机无法实现,因此,DFT是唯一可用于DSP领域的傅里叶变换.
DFT逆运算的合成,计算
(A-1)x[i]=∑i=0N2ReX¯[k]cos(2πkiN)+∑i=0N2ImX¯[k]sin(2πkiN)" role="presentation" style="position: relative;">x[i]=∑i=0N2ReX¯[k]cos(2πkiN)+∑i=0N2ImX¯[k]sin(2πkiN)(A-1)
- 总而言之,任何一个N点信号,x[i]" role="presentation" style="position: relative;">x[i]都可以通过,N2" role="presentation" style="position: relative;">N2+1点的余弦波和,N2" role="presentation" style="position: relative;">N2+1点的正弦波来合成.余弦波和正弦波的幅值分别由数组ReX¯[k]" role="presentation" style="position: relative;">ReX¯[k]和ImX¯[k]" role="presentation" style="position: relative;">ImX¯[k]决定.
- 在式(A-1)中,数组被称为ReX¯[k]" role="presentation" style="position: relative;">ReX¯[k]和ImX¯[k]" role="presentation" style="position: relative;">ImX¯[k],而不是ReX[k]" role="presentation" style="position: relative;">ReX[k]和ImX[k]" role="presentation" style="position: relative;">ImX[k],这是因为此处需要的是合成幅值,和频域内幅值略有不同(频域内记作ReX[k]" role="presentation" style="position: relative;">ReX[k]和ImX[k]" role="presentation" style="position: relative;">ImX[k]).
- 两者转换需要除以比例因子.
(A-2)ReX¯[k]=ReX[k]N/2ImX¯[k]=−ImX[k]N/2" role="presentation" style="position: relative;">ReX¯[k]=ReX[k]N/2ImX¯[k]=−ImX[k]N/2(A-2)
- 两种特殊情况除外
(A-3)ReX¯[0]=ReX[0]NImX¯[N/2]=−ImX[N/2]N" role="presentation" style="position: relative;">ReX¯[0]=ReX[0]N