信号处理中FFT的应用
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、实验目的
1、理解用FFT 对周期序列进行频谱分析时所面临的问题并掌握其解决方法。
2、掌握用时域窗函数加权处理的技术。
3、理解用FFT 对非周期信号进行频谱分析所面临的问题并掌握其解决方法。 二、实验原理与计算方法
1、对周期序列进行频谱分析应注意的问题
对时间序列作FFT 时,实际上要作周期延拓(如果取长序列的一段进行计算还要先
作截断)。周期序列是无限长时间序列,如果
截断区间刚好就是该序列周期的整数倍,那么在进行周期延拓后,将还原出原来的周期序列,由此可以较精确地计算出的该周期序列的频谱。反之,如果截断区间并不是该序列周期的整数倍,那么在进行周期延拓后,就不可能还原出原来的周期序列,由此计算出的频谱与该周期序列的频谱存在误差,而且误差的大小与截断区间的选取直接相关,如图1所示,其中幅度频谱的量值表示为)(log 20k X ,以dB(分贝)为单位。这种误差是由于周期序列与矩形截断序列相乘在频域产生
二者的频谱卷积形成的。矩形窗的频谱是抽样函数序列
f
N j e
f fN )1()
sin()sin(--πππ,如图2
所示。除了k = 0处主瓣内集中了大部分的能量外,两旁的较小峰值处的旁瓣也
分散了一部分能量,它与周期序列频谱卷积的结果使原来集中的频谱展宽,称为频率泄漏。
如果对已知周期的信号作频谱分析,在进行时域截断时,完全可以选取其周期的整数倍裁取,从而可以避免这种频率泄漏 的发生。不过,通常需要进行频谱分析的信号是周期未知的信号,或随机信号,无法判断它的周期值,为了尽量避免频率泄漏对结果的影响,在作时间截断时,就应选取其频谱的旁瓣较小的截断函数,以减轻泄漏问题。 2、时域窗函数的应用
作为截断函数,矩形窗在作时间截断时,对所截取区间内的信号不加以任何影响,而其它的窗函数都将对所截取区间内的信号作加权处理。除了在实验二中已经介绍过三角窗、Hanning 窗和Hamming 窗外,常用的窗函数还有很多,例如Parzen 窗、Kaiser 窗、Chebyshev 窗、Tukey 窗、Poisson 窗、Caushy 窗、Gaussian 窗和Blackman 窗等等。本次实验仍是采用实验二中的几种窗函数,但是利用窗函数作时域加权截断。
)(k X )(k X
k k
(a)时域周期整数倍截断 (b)时域非周期整数倍截断
图 1 周期函数t Ωsin 的幅频曲线
)(k X
k 图 2 矩形窗的频谱
图 3 中给出了采用Hanning 窗对正弦函数作非整周期的时域加权截断后的波形和频谱,与图4-1(b)比较,泄漏已明显减少。
应该指出,前面所给出的窗函数都是定义为以0点为中心、宽度为N +1的加权函数,在这里应用时,需要将其右移2
N ,成为N →0区间内的加权函数。
3、对非周期序列进行频谱分析应注意的问题 (1)混叠
一般非周期信号作FFT 之前要进行时域采样和周期延拓(无限长时间信号还应先截断再延拓)。根据Fourier 变换理论,经等周期s T 的冲激采样后,离散序
列)()()(~t t x nT x T s δ=的频谱∑∞
-∞
=-=
n s s
nf
f X T f X )
(1)(~是原信号频谱)(f X 以
s
s T f 1
=
为周
期的周期延拓。按照Nyquist 采样定理,由采样引起周期延拓后频谱之间不发生混叠的条件是:(1)原信号应该是有限带宽信号,设其频带宽度为f m ;(2)频谱的周期m s f f 2≥,即采样周期应满足Nyquist 条件m
s
f T 21
≤
。 由于实际上有限长时间信号)(t x 的FT )(f X 是频域的无限函数,因此采样所得的离散序列的频谱必定产生混叠,减小采样周期s T 只能减小而不能消除混叠。对于时间有限函数,当采样周期较大时,也会在FFT 得到的频域出现混叠,形成频谱失真,造成频谱分析结果与原信号的实际频谱的差异,也无法恢复出原信号。当然,实际工作中只要采样和截断产生的误差在许可的范围内就行了,但应该认 识到混叠是引起频谱分析误差的一个主要原因。
还应该注意的是,离散Fourier 变换的频域也是周期化的,区间
1,,12
-+N N
内的样点实际上是负频率区的量值,因此如果出现混叠,就将在一个周期内出现,并发生在
2
N
附近的区域,如图4所示。要减少混叠,就要尽量减小采样周期。
(2)泄漏
周期函数截断引起的频率泄漏问题,在非周期函数截断处理后同样存在,这种误差是由于采样后的离散序列与矩形截断序列
)()sin(n w n ω )
(k X
0 t
0 k (a) 正弦函数的加权的非周期时域截断 (b)减小了泄漏的频谱
图 3 采用Hanning 窗加权后的时域截断和频谱
)(n u e
anT
- )
(k X
0 n 0 N/2 N
(a)时域按周期T s 采样 (b)频域一个周期内在N /2附近出现混叠
图 4 非周期函数t
e -采样后的幅频曲线
相乘在频域造成二者的频谱卷积形成的。矩形窗的频谱是抽样函数序列
f
N j e
f fN )1()
sin()sin(--πππ,它与离散序列频谱卷积的结果使原来集中于每一个样点处的
频谱展宽,其影响在高频区(接近N /2的样点)特别明显,如图5所示。同样,为了尽量避免频率泄漏对结果的影响,在对非周期函数作时间截断时,除尽量增加截断序列的宽度外,也应选取其频谱的旁瓣较小的截断函数,以减轻泄漏问题。
在选取了适当的窗函数后,应当使窗函数的宽度与被处理的序列长度相同,如果作变换前还需要补零(例如为了作卷积运算或避免栅栏效应),则应将原序列与窗函数相乘后再补零,即补零的样点不用窗函数加权处理。 (3)栅栏效应
非周期信号)(t x 应具有连续的频谱,在对)(t x 作抽样后进行DFT ,得到的是离散的频谱。如果排除混叠和泄漏等误差的影响,所得的结果也只是)(t x 的连续频谱上的
12
+N
个样值。这就象通过栅栏上的等间距缝隙观看到的另一边的景象,故此称栅栏效应。被栅栏遮住的景象中有可能存在与显现出的频谱差异较大的变化,即显示信号特征的频谱分量。为了使被栅栏遮住的部分能尽可能地显现出来,可以采用增加频域样点密度的方法,即在不增加信号采样点的情况下,用时域补零加宽变换尺度N 来实现,称为补零重构。例如原来信号采样得到12个样点,在其后面再加上4个零,使序列的总长度为16个样点。这样处理的结果原来信号的采样间隔和频率都没有改变,设采样频率为s f ,经补零重构之后,采样频率仍然为s f ,但是原来频域样点间宽度为s f /12,经补零重构之后频域样点间宽度为s f /16。这就使补零重构之后频域样点密度增加,而且显示出原来没有显露的一些频率位置的频谱。 三、实验内容
(1)将余弦函数cos(2πt)以T s =1/53 s 抽样,对余弦序列做样点数为N =128的FFT ,画出频谱曲线,观察并记录频率泄漏现象,然后用Hamming 窗和三角窗作加权截断,观察并记录泄漏的衰减。 n=[0:1:127];N=128; Ts=1./53;t=n.*Ts Xn=cos(2.*pi.*t)
)(n w e anT - )
(k X
0 n 0 N/2 N
(a)时域截断 (b)频域一个周期内在N /2附近出现泄漏
图 5 函数t
e -采样后作截断的幅频曲线