第4章-FFT原理

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

旋转因子 W
kn N
e
j
2 π kn N
W 1
0 N
π π 2 2 cos kn j sin kn N N
W
W
W
N 2 N
e
e
j
2 N π N 2
e
e
j π
1
j
3 π 2
N 4 N
j
2 N π N 4
π j 2
N , k 0,1, 2,, 1 2 11
N X (k ) X 1 (k ) W X 2 (k ) , k 0,1, 2,, 1 2 N k N N N 2 X (k ) X 1 (k ) WN X 2 (k ) 2 2 2
k N
其中 X1(k) 和 X2(k) 分别为 x1(r) 和 x2(r) 的 N/2 点DFT,即
由于 X1(k) 和 X2(k) 均以 N/2 为周期,且 WN 所以 X(k) 又可表示为
k X (k ) X 1 (k ) WN X 2 (k ) N k X (k ) X 1 (k ) WN X 2 (k ) 2
k
2
k WN
N , k 0,1, , 1 2 12
kn 在 DFT运算中,利用旋转因子 WN 的性质,一 方面可以将某些项合并,另一方面可以不断地将长 序列分解为短序列的组合,用短序列的DFT计算来 代替长序列DFT。由于直接计算DFT的运算量与序 列长度 N的平方(N2)成正比,这样显然可以减少 7 运算量。 ——减少DFT运算量的途径
DFT矩阵表示
基-2 FFT算法 基-4 FFT算法 分裂基 FFT算法 混合基 FFT算法
N 2 ( L 1)
L
N 4L ( L 1)
N 2L ( L 1)
N N1 N2 NL
9
线性调频 z变换 FFT算法
按时间抽选(DIT)的基-2FFT算法
——库利-图基算法
DIT-FFT算法:
则 x(n) 的DFT为
kn X (k ) x(n) WN n 0 N 1 N / 2 1 N / 2 1


r 0
2 x(2r ) WN k r

r 0
k x(2r 1) WN (2 r 1)

N / 2 1

r 0
2 k x1 (r ) WN k r WN
次实数加法。
在DFT计算中,不论是乘法和加法,运算量均与N2 成正比
4
直接计算DFT的运算量: (∝ N 2 )
N 2 次复数乘法,N(N-1) 次复数加法 因此, N 较大时,运算量十分可观,如果信号要 求实时处理,则要求有很快的计算速度才能完成上述 计算量。 1 N 1 x(n) IDFT X (k ) X (k ) WN kn , n 0,1,, N 1 N k 0
第四章 快速傅里叶变换FFT

问题的提出 解决问题的思路与方法——减少运算量的途径


基2按时间抽取FFT算法 基2按频率抽取FFT算法 计算IDFT的快速算法
基4按时间抽取FFT算法

FFT算法的实际应用
1
数字信号处理中DFT运算的用处
有限长序列在数字技术中占有很重要的地位,它 的一个重要特点是其频域也可以离散化,即离散傅 里叶变换(DFT)。例如: ① 在FIR滤波器设计中,经常要由h(n)求H(k), 或从 H(k)求h(n);
0 W4 1 W4 2 W4 3 W4
0 W4 2 W4 4 W4 6 W4
周期性
0 W4 2 W4 0 W4 2 W4

0 W4 1 W4 0 W4 W81 4
0 W4 0 W4 0 W4 W0 4
0 W4 1 W4 2 W4 3 W4
N / 2 1

r 0
2 x2 (r ) WN k r
2 k 由于 WNk r WN r/ 2 (可约性)
所以
X (k )
N / 2 1

r 0
x1 (r ) W
k N
kr N /2
W
N / 21
k N

r 0
k x2 (r ) WN r/ 2
X 1 (k ) W X 2 (k )
3
问题的提出
X (k ) DFT x(n)
N 1 n 0

kn x(n) WN
, k 0,1,, N 1
一般,x(n)和WNnk 都是复数,因此,每计算一个X(k) 值,要进行N次复数相乘,和(N-1)次复数相加,X(k)一共有
N 个点,故完成全部 DFT运算,需要 N2 次复数相乘和
那么,X1(k)又可表示为
X 1 (k )
N / 41

s 0 s 0
x1 (2s) W
2 ks N /2

N / 41

s 0
k x1 (2s 1) WN (2 s 1) /2
N / 4 1

ks k x3 ( s) WN / 4 WN / 2
N / 4 1

s 0
年首次提出DFT运算的一种快速算法以后,情况才发生了根
本变化,人们开始认识到DFT运算的一些内在规律,从而很 快地发展和完善了一套高速有效的运算方法——快速傅里叶
变换(FFT)算法。FFT的出现,使DFT的运算大大简化,
运算时间缩短1~2个数量级,使DFT的运算在实际中得到广 泛应用。
快速傅里叶变换(FFT)不是一种新的变换,只是计算 离散傅里叶变换( DFT )的一种快速算法。
k X (k ) X 1 (k ) WN X 2 (k ) N k X (k ) X 1 (k ) WN X 2 (k ) 2
N , k 0,1, , 1 2
X1(k)
k WN
k X (k ) X1 (k ) WN X 2 (k )
X2(k)
ks x4 ( s) WN / 4
X 3 (k ) W
k N /2
ቤተ መጻሕፍቲ ባይዱX 4 (k )
N , k 0,1, , 1 4
15
X3(k) 和 X4(k) 分别为 x3(s) 和 x4(s) 的 N/4 点DFT,即
N / 4 1 ks X 3 (k ) x3 ( s) WN / 4 DFT x3 ( s) N s 0 , 0 k 1 N / 4 1 4 ks X (k ) x4 (s) WN / 4 DFT x4 (s) 4 s 0
58利用n点复序列fft计算2n点实序列fft对yr进行n点fft输出yk则分别作为n点复序列yn的实部和虚部即59利用n点复序列的fft计算两个n点实序列fft60利用fft计算线性卷积快速卷积法快速卷积法fftfft设有限长序列xn0nn1hn0nm1ifft序列的上述结论适用于xnhn两序列长度比较接近或相等的情况如果xnhn长度相差较多例如hn为某滤波器的单位脉冲响应长度有限用来处理一个很长的输入信号xn或者处理一个连续不断的信号按上述方法hn要补许多零再进行计算计算量有很大的浪费或者根本不能实现
k WN / 2的对称性 同理,由 X3(k) 和 X4(k) 的周期性和
k N k WN2 4 WN / 2 ,最后得到 /
k X 1 (k ) X 3 (k ) WN / 2 X 4 (k ) N k X 1 (k ) X 3 (k ) WN / 2 X 4 (k ) 4
N k X (k ) X1 (k ) WN X 2 (k ) 2
X (k )
X(0) X(1) X(2) X(3)
x ( n)
x(0)
x1 ( r ) x ( 2r )
x(2) x(4) x(6)
x2 (r ) x(2r 1)
x(1) x(3) x(5) x(7)
W80
1 W8
设序列 x(n) 的长度为N,且满足 N 2 L ,L是正 整数(基2)。按 n 为奇数、偶数将 x(n) 分解为两 个 N/2 点序列,即
x(n) (n 0,1, , N 1)
x1 (r ) x(2r ) N , r 0,1, , 1 2 x2 (r ) x(2r 1) 10
0 W4 3 W4 2 W4 1 W4
可约性
0 W4 0 对称性 W4 0 W4 W0 4
0 W4 1 W4 0 W4 1 W4
0 W4 0 W4 0 W4 0 W4
FFT 算法简介
FFT算法基本上分为两大类:
按时间抽选(DIT)法 按频率抽选(DIF)法
-1
N k X (k ) X1 (k ) WN X 2 (k ) 2
蝶形运算符号(信号流图)
每个蝶形需要一次复数乘法和两次复数加法
13
X1(k) X2(k)
k WN
k X (k ) X1 (k ) WN X 2 (k )
-1
X1(0) N/2点 X1(1) X1(2) DFT X1(3) X2(0) N/2点 X2(1) X2(2) DFT X2(3)
X 2 (k )
其中:
x5 ( s ) x2 (2s ) X 5 (k ) X 6 (k )
N , k 0,1, , 1 4
16
k 2 WN / 2 WNk
用同样的方法可以分解 x2(r)的DFT,即
k X 5 (k ) WN / 2 X 6 (k ) N , k 0,1, , 1 N k 4 X 2 (k ) X 5 (k ) WN / 2 X 6 (k ) 4
IDFT 与 DFT的运算结构相同,差别仅在于 WN 指数符号不同,以及多乘一个常数 1/N,所以二者的 计算量相同。
问题:如何减少DFT(IDFT)的计算量
5
减少DFT运算量的途径
X (k ) DFT x(n)
N 1 n 0

kn x(n) WN , 0 k N 1
② 因为信号序列的DFT本身就是信号频谱的采 样集,所以DFT可直接用于分析信号的频谱。 频谱分析在数字信号处理中用途广泛:如通过语言 信号的频谱分析实现语音通信的频带压缩,声纳信号 的频谱分析用以区分水面与水下目标,在各种测量仪 器,频谱分析用得更多,这些都需要DFT运算。 2
虽然频谱分析和DFT运算很重要,但在很长一段时间里, 由于DFT运算复杂、运算量太大,并没有得到真正的运用, 而频谱分析仍大多采用模拟信号滤波的方法解决,直到1965
-1 -1
X(4) X(5) X(6) X(7)
14
W82 W83
-1
-1
N点DFT的一次时域抽选分解图(N=8) (N/2个蝶形)
与第一次分解相似,将 x1(r) 按奇、偶序号分解
成两个 N/4 点子序列 x3(s) 和 x4(s) ,即
x3 ( s) x1 (2s) N x1 (r ) , s 0,1, , 1 4 x4 ( s) x1 (2s 1)
N(N-1)次复数相加。
复数运算是用实数运算实现的。每个复数乘法包括4次 (a jb) (c jd) (ac bd) j(ad bc) 实数乘法和2次实加法,每个复数加法包括2次实数加法, (a jb) (c jd) (a c) j(b d)
因此,整个DFT运算需要4N2次实数乘法和 2N(2N-1)
N / 2 1 k X 1 (k ) x1 (r ) WN r/ 2 DFT x1 (r ) N r 0 , 0 k 1 N / 2 1 2 kr X (k ) x2 (r ) WN / 2 DFT x2 (r ) 2 r 0 N
X (k ) DFT x(n)
N 1 n 0 kn x(n) WN ,
k 0,1,, N 1
0 W4 x(0) 3 W4 x(1) 6 W4 x(2) 9 W4 x(3)
0 W4 X (0) X (1) W 0 如:N=4 4 0 X (2) W4 0 X (3) W4
j
3N 4 N
e
j
2 3N π N 4
e
j
6
kn WN 的主要性质为: 旋转因子
( k nk 1)周期性 WNk N ) n WN ( n N ) WN
2)共轭对称性
WN
nk
N 2
W ,
nk N
W
nk N

WN nk
nk mnk nk nk m 3)可约性 WN WmN , WN WN / /m (m为正整数)
相关文档
最新文档