第七章-快速傅立叶变换PPT课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
x x1 2 ((r r)) x x ((2 2 r r) 1 ), r0 , 1 , 2 , ..N /.2 1
将N点DFT定义式分解为两个长度为N/2的DFT
X (k ) Dx F (n ) T N n 0 1 x (n )W N kn
N r/ 2 0 1x( 2 r)W N 2rk N r/ 2 0 1x (2 r 1 )W N (2r 1)k
N (N/2 –1)
一个蝶形
1
2
N/2个蝶形
N/2
N
总计
N 2 / 2 N / 2 NN/21N
N2/2
N2 /2
运算量减少了近一半
进一步分解
由于 N2M,N 2M1 仍为偶数,因此,两个
2
FFT算法分类:
时间抽选法 DIT: Decimation-In-Time
频率抽选法 DIF: Decimation-In-Frequency
§4.3 按时间抽取(DIT)的FFT算法
(Decimation In Time)
1、算法原理
设序列点数 N = 2M,M 为整数。 若不满足,则补零
N为2的整数幂的FFT算法称基-2FFT算法。 将序列x(n)按n的奇偶分成两组:
x(n)FFT
IFFTy(n)
h(n)FFT
§4.2 直接计算DFT的问题及改进途径
1、 DFT与IDFT
N 点 有 限 长 序 列 x(n)
N1
X(k) x(n)WNkn n0
x(n)N 1N k01X(k)WNkn
2、DFT与IDFT运算特点
N 1
x(n)WNnk
n0
一个X(k) N个X(k) (N点DFT)
N 2 点
DFT
X2(0) X2 (1)
W
0 N
W
1 N
W
2 N
X2(2)
W
3 N
X2 (3)
X (0) X (1) X (2) X (3)
X (4) X (5) X (6) X (7)
分解后的运算量:
复数乘法
复数加法
一个N/2点DFT (N/2)2
N/2 (N/2 –1)
两个N/2点DFT N2/2
第四章 快速傅里叶变换
(FFT)
.
1
主要内容
DIT-FFT算法 DIF-FFT算法 IDFT高效算法及实序列的
FFT算法 线性调频z变换
§4.1 引言
FFT: Fast Fourier Transform
1965年,Cooley-Turky 发表文章《机器计算傅 里叶级数的一种算法》,提出FFT算法,解决 DFT运算量太大,在实际使用中受限制的问题。
同理:IDFT运算量与DFT相同。
例 用FFT算法处理一幅N×N点的二维图像,如用每秒可做 10万次复数乘法的计算机,当N=1024时,问需要多少时间(不 考虑加法运算时间)?
解 当N=1024点时,FFT算法处理一幅二维图像所需复数乘
法约为
N2 2
log2 N2
107
次,仅为直接计算DFT所需时间的10万
n为偶
n为奇
N/21
N/21
x1(r)WNr/k2WNk x2(r)WNr/k2
r0
r0
X1(k)
X2(k)
(这一步利用: WN 2rkWN r/k2 ) r ,k 0 ,1 ,...N /2 1
记: X (k ) X 1 (k ) W N k X 2 (k ) ………(1)
再利用周期性求X(k)的后半部分
FFT的应用。频谱分析、滤波器实现、实时信 号处理等。
DSP芯片实现。TI公司的TMS 320c30,10MHz 时钟,基2-FFT1024点FFT时间15ms。
典型应用:信号频谱计算、系统分析等
频谱分析与功率谱计算
x(n) D F TX(k)
系统分析
x (n ) h (n ) y (n )
X2(k)
W
k N
X1(k)W N kX2(k)
注:a. 上支路为加法,下支路为减法;
b. 乘法运算的支路标箭头和系数。
用“蝶形结”表示上面运算的分解:
N823
x(0) x(2) x(4) x(6)
x (1) x(3) x(5) x(7)
N 2 点
DFT
X1(0) X1(1) X1(2) X1(3)
X 1 ( k ) W N k X 2 ( k ) , k 0 ,1 ,2 ,N ./. 2 .1
wenku.baidu.com
X(Xk(k)N2)X1X(k1)(k)W NW kXNk2X(k2)(k) k 0 ,1 ,...,N /2 1
将上式表达的运算用一个专用“蝶形”信流图表示。
X1(k)
X1(k)W N kX2(k)
可 约 性 W N n k W m m N n kWNnk WNnk/m /m
j 2 m nk
e mN
j2N
e N2
e j
1
特 殊 点 : W N 0 1 W N N / 2 1 W N ( k N / 2 ) W N k
FFT算法的基本思想: 利用DFT系数的特性,合并DFT运算中的某些项, 把长序列DFT短序列DFT,从而减少其运算量。
W W r(N/2k) N/2
rk N/2
X1N 2kNr/201x1(r)WN r(/N 2/2k)
N/21
x1(r)WN r/k2X1(k)
r0
X2N 2kX2(k)
又 W N kN 2W N N/2W N kW N k
X X ( (k N 2 ) k X )1 (kX ) 1(W N 2 N k X k 2()k ), W N k (N /2 0 k,)1 X ,2 2 ,(N .2 N . /.2 k) 1 (2 )
分之一。 即原需要3000小时,现在只需要2 分钟。
3、降低DFT运算量的考虑
WNnk的特性
WNnk
j2nk
e N
对 称 性 ( W N n k ) * W N n k W N ( N n ) k W N n ( N k )
W
N N
k
W
N
n
k
W
n N
N
W
N
n
k
周 期 性 W N n k W N ( N n ) k W N n ( N k )
复数乘法 复数加法
N
N–1
N 2 N (N – 1)
a j b c j d a c b d j a d c b
实数乘法 实数加法
一次复乘 4
2
一次复加
2
一个X (k) 4N
2N+2 (N – 1)=2 (2N – 1)
N个X (k) 4N 2
2N (2N – 1)
(N点DFT)
将N点DFT定义式分解为两个长度为N/2的DFT
X (k ) Dx F (n ) T N n 0 1 x (n )W N kn
N r/ 2 0 1x( 2 r)W N 2rk N r/ 2 0 1x (2 r 1 )W N (2r 1)k
N (N/2 –1)
一个蝶形
1
2
N/2个蝶形
N/2
N
总计
N 2 / 2 N / 2 NN/21N
N2/2
N2 /2
运算量减少了近一半
进一步分解
由于 N2M,N 2M1 仍为偶数,因此,两个
2
FFT算法分类:
时间抽选法 DIT: Decimation-In-Time
频率抽选法 DIF: Decimation-In-Frequency
§4.3 按时间抽取(DIT)的FFT算法
(Decimation In Time)
1、算法原理
设序列点数 N = 2M,M 为整数。 若不满足,则补零
N为2的整数幂的FFT算法称基-2FFT算法。 将序列x(n)按n的奇偶分成两组:
x(n)FFT
IFFTy(n)
h(n)FFT
§4.2 直接计算DFT的问题及改进途径
1、 DFT与IDFT
N 点 有 限 长 序 列 x(n)
N1
X(k) x(n)WNkn n0
x(n)N 1N k01X(k)WNkn
2、DFT与IDFT运算特点
N 1
x(n)WNnk
n0
一个X(k) N个X(k) (N点DFT)
N 2 点
DFT
X2(0) X2 (1)
W
0 N
W
1 N
W
2 N
X2(2)
W
3 N
X2 (3)
X (0) X (1) X (2) X (3)
X (4) X (5) X (6) X (7)
分解后的运算量:
复数乘法
复数加法
一个N/2点DFT (N/2)2
N/2 (N/2 –1)
两个N/2点DFT N2/2
第四章 快速傅里叶变换
(FFT)
.
1
主要内容
DIT-FFT算法 DIF-FFT算法 IDFT高效算法及实序列的
FFT算法 线性调频z变换
§4.1 引言
FFT: Fast Fourier Transform
1965年,Cooley-Turky 发表文章《机器计算傅 里叶级数的一种算法》,提出FFT算法,解决 DFT运算量太大,在实际使用中受限制的问题。
同理:IDFT运算量与DFT相同。
例 用FFT算法处理一幅N×N点的二维图像,如用每秒可做 10万次复数乘法的计算机,当N=1024时,问需要多少时间(不 考虑加法运算时间)?
解 当N=1024点时,FFT算法处理一幅二维图像所需复数乘
法约为
N2 2
log2 N2
107
次,仅为直接计算DFT所需时间的10万
n为偶
n为奇
N/21
N/21
x1(r)WNr/k2WNk x2(r)WNr/k2
r0
r0
X1(k)
X2(k)
(这一步利用: WN 2rkWN r/k2 ) r ,k 0 ,1 ,...N /2 1
记: X (k ) X 1 (k ) W N k X 2 (k ) ………(1)
再利用周期性求X(k)的后半部分
FFT的应用。频谱分析、滤波器实现、实时信 号处理等。
DSP芯片实现。TI公司的TMS 320c30,10MHz 时钟,基2-FFT1024点FFT时间15ms。
典型应用:信号频谱计算、系统分析等
频谱分析与功率谱计算
x(n) D F TX(k)
系统分析
x (n ) h (n ) y (n )
X2(k)
W
k N
X1(k)W N kX2(k)
注:a. 上支路为加法,下支路为减法;
b. 乘法运算的支路标箭头和系数。
用“蝶形结”表示上面运算的分解:
N823
x(0) x(2) x(4) x(6)
x (1) x(3) x(5) x(7)
N 2 点
DFT
X1(0) X1(1) X1(2) X1(3)
X 1 ( k ) W N k X 2 ( k ) , k 0 ,1 ,2 ,N ./. 2 .1
wenku.baidu.com
X(Xk(k)N2)X1X(k1)(k)W NW kXNk2X(k2)(k) k 0 ,1 ,...,N /2 1
将上式表达的运算用一个专用“蝶形”信流图表示。
X1(k)
X1(k)W N kX2(k)
可 约 性 W N n k W m m N n kWNnk WNnk/m /m
j 2 m nk
e mN
j2N
e N2
e j
1
特 殊 点 : W N 0 1 W N N / 2 1 W N ( k N / 2 ) W N k
FFT算法的基本思想: 利用DFT系数的特性,合并DFT运算中的某些项, 把长序列DFT短序列DFT,从而减少其运算量。
W W r(N/2k) N/2
rk N/2
X1N 2kNr/201x1(r)WN r(/N 2/2k)
N/21
x1(r)WN r/k2X1(k)
r0
X2N 2kX2(k)
又 W N kN 2W N N/2W N kW N k
X X ( (k N 2 ) k X )1 (kX ) 1(W N 2 N k X k 2()k ), W N k (N /2 0 k,)1 X ,2 2 ,(N .2 N . /.2 k) 1 (2 )
分之一。 即原需要3000小时,现在只需要2 分钟。
3、降低DFT运算量的考虑
WNnk的特性
WNnk
j2nk
e N
对 称 性 ( W N n k ) * W N n k W N ( N n ) k W N n ( N k )
W
N N
k
W
N
n
k
W
n N
N
W
N
n
k
周 期 性 W N n k W N ( N n ) k W N n ( N k )
复数乘法 复数加法
N
N–1
N 2 N (N – 1)
a j b c j d a c b d j a d c b
实数乘法 实数加法
一次复乘 4
2
一次复加
2
一个X (k) 4N
2N+2 (N – 1)=2 (2N – 1)
N个X (k) 4N 2
2N (2N – 1)
(N点DFT)