傅里叶变换推导.docx
- 文档编号:2260591
- 上传时间:2022-10-28
- 格式:DOCX
- 页数:10
- 大小:38.04KB
傅里叶变换推导.docx
《傅里叶变换推导.docx》由会员分享,可在线阅读,更多相关《傅里叶变换推导.docx(10页珍藏版)》请在冰豆网上搜索。
傅里叶变换推导
2・3快速傅立叶变换问题
1)问题背景
在数值电路的传输中,为了避免信号干扰,需要把一个连续信号x(t)先通过取样离散化为一列数值脉冲信号x(0),x(l),……,然后再通过编码送到传输电路中。
如果取样间隔很小,而连续信号的时间段乂很长,则所得到的数值脉冲序列将非常庞大。
因此,传输这个编码信号就需要长时间的占用传输电路,相应地也需要付出昂贵的电路费用。
那么能否经过适当处理是使上述的数值脉冲序列变短,而同时乂不会丧失有用的信息?
的经过研究,人们发现,如果对上述数值脉冲序列作如下的变换处理:
Af-I
X(n)=£"昴小:
〃=ojN_\、i=口
A-0
(1)
则所得到的新序列X(0),X(l),……将非常有序,其值比较大的点往往集中在某一很狭窄的序列段内,这将非常有利于编码和存储,从而达到压缩信息的LI的。
公式
(1)就是所谓的离散傅立叶变换,简称DFT。
现在我们来分析一下计算DFT所需要的工作量。
如果我们不考虑公式(7.1)中指数项的运算,那么计•算其每一个点X(n)需要N次复数乘法和N-1次的复数加法。
显然当N很大时,这个工作量也非常巨大。
正是由于这个原因,使得DFT的应用范围在过去很长的时间里受到了严格的限制。
注意到公式
(1)是非常有规律性的,那么能否利用这种规律性来降低DFT的讣算时间?
1965年,凯莱和塔柯的提出了一种用于计算DFT的数学方法,大大减少了DFT的计算时间,同时乂特别适用于硬件处理,这就是所谓的快速傅里叶变换,简称FFT。
鉴于DFT的数据结构可以通过傅立叶变换的离散化获得,亦可通过三角插
值得到,而本质上乂同连续傅里叶分析有着极为密切的关系。
下面我们从傅立叶级数级数和傅立叶积分入手,导出DFT结构的来源和FFT的工作原理。
2)傅立叶变换
如果x(t)是定义在整个实轴上的实值或复值函数,则其傅立叶变换可由下式给出:
X(/)=['x(t)e2nm/Tdtj=口
J-00
(2)
若对任意参数f,上述积分都存在,则
(2)式确定了一个函数X(f),称为x(t)的傅立叶变换。
如果已知X(f)则利用如下的傅立叶逆变换,还可复原x(t):
A(r)=「X(f)elmf,:
TdfJ=口
J-oe>
(3)
若x(t)和X(f)同时满足
(2)、(3)式,则称他们是一个傅立叶变换
对,记为
X0Ox(f)
。
。
通常X(f)是一个复函数,因此可以写成如下两部分:
x(r{n+/(r)i
(4)
式子中R(f),1(f)分别是X(f)的实部和虚部。
将上式表示为指数形式:
其中
\x(f)\=厂(C
(6)
工程技术中,常将x(t)看成一时间信号,相应的空间,称为时间域和空
域;将其傅立叶变换X(f)看成频率函数,相应的空间称为频域。
IS
称为x(t)的傅立叶谱,而
0(门
称为其相角,这在物理上是有良好背景的。
的譬如此频率的的含义可以这样来理解:
应用欧拉公式可将指数项表示成正弦-余弦的形式,如果把
(2)式解释成离散项和的极限,则显然X(f)是包含了无限项正弦-余弦的和,而且f的每一个值确定了所对应的正弦-余弦的频率。
在以后的叙述中,我们不妨用t表示时间,用f表示频率;同时用小写字母
表示时间函数,并用相应的大写字母表示其傅立叶变换。
傅立叶变换可很容易地推广到二维悄形。
假设x(t,s)是连续的和可积的,
且X(f,g)是可积的,则相应的傅立叶变换对如下:
X(f,g)=f,Jx(t>S)e2ni{,u^,TdtdsJ=口
(7)
x亿s)=「X(f,g)e2ni{^^TdfdgJ=口
J-oo
(8)
3)离散傅立叶变换
尽管傅立叶级数和傅立叶变换具有非常优美的数学结构,但并不实用,并为他们都无法用有限字长的计算机作逻辑上的运算。
为此,我们必须建立傅立叶变换的数值方法,并由此导出DFT数据结构的来源。
a.傅立叶积分的离散化
山于傅立叶变换无法用数字计算机进行逻辑运算,工程分析中,通常采用抽样的方法,观测x(t)的一些离散值,然后利用数值积分将傅立叶变换离散化。
函数抽样是函数插值的逆过程,假定用取2N+1个互相间隔为
M
的节点的方法,当一个连续函数X(t)离散化为的一个序列:
{a(-A*Aa(-AZ),a(0),a(Aa(Z),}
于是当N充分大时,有:
X(x(t)e2nil)dt
(9)
现在我们把(9)式中的求积函数当成周期为
2NZ的函数,以
j't、J=0,±1,±2,…±N为节点,对(9)式用复化梯形公式做数值积分得
X(广)缶A/工x(n^t)e
(10)
对f进行离散化,取
f=jKN»j=W・・N-\
则上式可改写:
=N・\
(11)
这就是一维傅立叶积分的离散表达式。
b离散傅立叶变换
在上面,我们普便的遇到了带有复指数乘积项的和式。
实际上,这种特殊的数据结构可利用以下更为一般的方式定义。
给定N个实或复的数列{x(0),x(l),……x(N-l)},定义
X{n)=工x(約尸加,〃=N-\,i=V-J
A-0
(12)
为{x(k)}的离散傅立叶变换,简称DFT。
我们指出,(11)式可以转化成上述一般形式。
这说明(12)式与傅立叶变换之间存在内在的联系,渴望获得与连续傅立叶变换相类似的性质,事实上确实如此。
下面我们就来做这件事。
首先说明,由(12)式确定的序列{X(n)}可以恢复为原序列{x(k)}o事实上,在(12)式两边同乘以
并对n从0到n-1求和得:
1V-In-\
XX{n)e2nnjifN=工
/j-0
N-\
2垃灯/皿I”"'
A-0
.V-l
=Nx(j)+工班
Zkj1
注意到(13)式的和式中分子部分为0,从而
1JV-1
=-£xg严()」,"1Nn-o
(14)
今后我们称(14)式是(12)式的逆变换,并称{x(k)}和{X(n)}为离散傅立
叶变换对,简记为
X{n)
离散傅立叶变换的这种可恢复性质,在工程技术中有着极为重要的应用。
因为,可以通过抽样获得一组的离散值,并利用DFT转换为另一组数据,通过对变换数据的修改以及逆变换,达到对原数据的修正。
这也正是DFT最具魅力的地方。
应用DFT作数值分析,抽样也变得相当简单。
这时,可以抽取函数的任一片断,而无需彖傅立叶变换离散化那样做对称抽样。
4)快速傅里叶变换
本节我们将把注意力集中在如何计算DFT上。
如果我们不考虑(12)式中的
复指数部分的运算,则求解(12)式共需要'*'次乘法和'*(\-1)次加法。
显然当'很大时,其工作量是相当可观的。
为此,凯莱和卡柯提出了一种专门用于处理DFT的快速算法(FFT),
大大减少了DFT的计算时间。
充分理解FFT的工作原理,这并不需要高深的数学知识,只要时刻的盯住
DFT的数据结构即可。
为了便于理解,我们先从最简单的悄形入手。
aFFT直观发展
注意到(12)式可以表示成一个矩阵运算,而FFT实际上是一个矩阵分解算
法,它对N的要求有一定的限制,通常N取成
2r
其中r是正整数。
为了更加直观,这里我们假定r二2,N=4,并引进记号
叫=严上口
(15)
x(\zi\TV/I*XXXX
则(12)式可改写为如下的矩阵形式:
Y(
0)'
\\
X
凤
2)
注意到
吠=1
k为整数,则(16)式还可简化为
)))y
0123AI\x(\z(xx(\
XXXX
0)d2)3)班a(h班
上式以及以后的式子中没有把
写成1,完全是为了以后推广的需要。
第二步我们要做的是,把上述矩阵分解为两个矩阵的乘积:
*X(0)、
1
0
°'1
1
0
0〕
]班0)]
X(l)
1
畸
0
0
0
1
0
昭
X⑵
0
0
1
1
0
畸
0
班2)
仝3),
2
0
1
0
1
0
上述分解基于以后要讲到的FFT算法理论,其中第一行和第二行的位置做了变换,,这是FFT本身所要求的。
以后将会看到,这种交换有利于数据存储,成为输岀倒置。
今引进
(0)、
1
0
0、
(卅0)、
巧⑴
0
1
0
H1)
1
州⑵
1
0
眄
0
H2)
1
0
(19)
则
*)、
%(0)、
Z1耐00、
3(0尸
M)
=
心⑴
1W;00
1為
(1)
X
(2)
电
(2)
001瞅:
舛⑵
申3力
001町
\4丿
3⑶丿
(20)
于是求解X(n)分成了两次矩阵运算。
下面我们来分析一下这个过程的工作
量。
计算
召(0)
需要的一个复数乘法和一个复数加法,即A,(0)=x(0)+嗽x
(2)
这里没有用1代替
比:
)
是因为在一般情况下这一项通常不为1。
计算
州⑴
同样需要一个复数乘法和一个复数加法。
计算
州⑵
只需要一个复数加法,这是因为
^
(2)=a(0)+iy,\
(2)=A(O)-耐班2)
其中
怙⑵在计算
召(())时已经计算过。
同样的原因,计算
K⑶只需要一个复数加法。
总结上述可知,计算
州(灯
共需4个复数加法和个2复数乘法。
类似的,计算
x2W
也需要4个复数加法和2个复数乘法。
于是计算X(n)共需要8个复数加法和4个复数乘法。
如果直接利用(12)式进行计算,则共需要16个复数乘法和12个复数加法。
显然,上述分解算法具有更高的效率,这正是FFT算法的思想。
更一般的,对
N=2r
FFT算法将把原矩阵分解为r个
NxN
矩阵的乘积,每个因子矩阵具有最小数据的复数加法和复数乘法运算。
如果推广上述结果,则当
N=2r
时,FFT需要Nr/2个复数乘法和Nr个复数加法。
相应的,直接算法需要
N2
个复数乘法和N(N-l)个复数加法,两者的工作量之比为:
乘法2N/r,加法(7.N-1)/r,如果N=1024,则FFT算法的乘法运算次数将降低为直接法的二白分之一,显然工作量节省是相当可观的。
b以2为底的FFT算法。
假定
N=2r
则对任何不大于'的数都可以用不超过r位的二进制数表示。
譬如,当24
时,则十进制数0,b2,3可以分别表示成二进制数00,01,10,11。
更一般的,当n,k ……nrA)=(〃o+2/? +……+2「nr_,) k=……krA)=(kQ+2&+……+2八/J (21) 于是(12)式可以改写为 ……二工X……! >(心介……c吟 ^=0如0匕『0 (22) 其中 /? =(/;0+2n}+……+2「“|)(心+2«+……+2「1kr_}) 利用 昭"=臥+狀 则 可改写成 哝=I叮......【片” (23) 现在我们来考虑(23)式中的每一项,并利用 =呼=1 以简化之。 首先考虑(23)式中的第一项,得 U/2小匚](引*2〃|+ VVN 类似的,对于(23)式中的第二项,有 口/2&(%十2旳)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 傅里叶变换 推导