东南大学信息学院DSP课程第一次实验实验报告_第1页
东南大学信息学院DSP课程第一次实验实验报告_第2页
东南大学信息学院DSP课程第一次实验实验报告_第3页
东南大学信息学院DSP课程第一次实验实验报告_第4页
东南大学信息学院DSP课程第一次实验实验报告_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数字信号处理第一次实验报告 -快速傅里叶变化及其应用姓名:印友进学号:04012540一:实验目的(1) 加深对FFT的理解,熟悉matlab中的有关函数。(2) 应用FFT对典型信号进行频谱分析。(3) 了解应用FFT进行信号频谱分析过程中可能出现的问题,以便在实际中正确应用FFT.(4) 应用FFT实现序列的线性卷积和相关。二:实验原理: 在各种信号序列中,有限长序列信号处理占有很重要地位,对有限长序列,我们可以使用离散Fouier变换(DFT)。这一变换不但可以很好的反映序列的频谱特性,而且易于用快速算法在计算机上实现,当序列x(n)的长度为N时,它的DFT定义为: 反变换为:

2、     有限长序列的DFT是其Z变换在单位圆上的等距采样,或者说是序列Fourier变换的等距采样,因此可以用于序列的谱分析。    FFT并不是与DFT不同的另一种变换,而是为了减少DFT运算次数的一种快速算法。它是对变换式进行一次次分解,使其成为若干小点数的组合,从而减少运算量。常用的FFT是以2为基数的,其长度 。它的效率高,程序简单,使用非常方便,当要变换的序列长度不等于2的整数次方时,为了使用以2为基数的FFT,可以用末位补零的方法,使其长度延长至2的整数次方。  (一)在运用DFT进行频谱分析的过程中可能的产生

3、三种误差    (1)    混叠    序列的频谱是被采样信号的周期延拓,当采样速率不满足Nyquist定理时,就会发生频谱混叠,使得采样后的信号序列频谱不能真实的反映原信号的频谱。避免混叠现象的唯一方法是保证采样速率足够高,使频谱混叠现象不致出现,即在确定采样频率之前,必须对频谱的性质有所了解,在一般情况下,为了保证高于折叠频率的分量不会出现,在采样前,先用低通模拟滤波器对信号进行滤波。    (2)   

4、60;泄漏    实际中我们往往用截短的序列来近似很长的甚至是无限长的序列,这样可以使用较短的DFT来对信号进行频谱分析,这种截短等价于给原信号序列乘以一个矩形窗函数,也相当于在频域将信号的频谱和矩形窗函数的频谱卷积,所得的频谱是原序列频谱的扩展。泄漏不能与混叠完全分开,因为泄漏导致频谱的扩展,从而造成混叠。为了减少泄漏的影响,可以选择适当的窗函数使频谱的扩散减至最小。    (3)    栅栏效应    DFT是对单位圆上Z变换的均匀

5、采样,所以它不可能将频谱视为一个连续函数,就一定意义上看,用DFT来观察频谱就好像通过一个栅栏来观看一个图景一样,只能在离散点上看到真实的频谱,这样就有可能发生一些频谱的峰点或谷点被“尖桩的栅栏”所拦住,不能别我们观察到。    减小栅栏效应的一个方法就是借助于在原序列的末端填补一些零值,从而变动DFT的点数,这一方法实际上是人为地改变了对真实频谱采样的点数和位置,相当于搬动了每一根“尖桩栅栏”的位置,从而使得频谱的峰点或谷点暴露出来。    (二)用FFT计算线性卷积    用FFT可以实现两

6、个序列的圆周卷积。在一定的条件下,可以使圆周卷积等于线性卷积。一般情况,设两个序列的长度分别为N1和N2,要使圆周卷积等于线性卷积的充要条件是FFT的长度NN1N2对于长度不足N的两个序列,分别将他们补零延长到N。    当两个序列中有一个序列比较长的时候,我们可以采用分段卷积的方法。有两种方法:(1)重叠相加法。将长序列分成与短序列相仿的片段,分别用FFT对它们作线性卷积,再将分段卷积各段重叠的部分相加构成总的卷积输出。(2) 重叠保留法。这种方法在长序列分段时,段与段之间保留有互相重叠的部分,在构成总的卷积输出时只需将各段线性卷积部分直接连接起来,省

7、掉了输出段的直接相加。  (三)用FFT计算相关函数 两个长为的实离散时间序列与的互相关函数定义为 :的离散傅里叶变换为: 当时,得到的自相关函数为: 利用FFT求两个有限长序列线性相关的步骤(设长,长): (1)为了使两个有限长序列的线性相关可用其圆周相关代替而不产生混淆,选择周期,以便使用FFT,将,补零至长为。(2)用FFT计算(3)(4)对作IFFT;取后项,得;取前项,得。  三、实验内容及步骤实验中用到的信号序列:a)高斯(Gaussian)序列 b)衰减正弦序列 c)三角波序列 d)反三角波序列 上机实验内容:(1)观察高斯序列的时域和幅频特性,固定

8、信号xa(n)中参数p=8,改变q的值,使q分别等于2,4,8,观察它们的时域和幅频特性,了解当q取不同值时,对信号序列的时域幅频特性的影响;固定q=8,改变p,使p分别等于8,13,14,观察参数p变化对信号序列的时域及幅频特性的影响,观察p等于多少时,会发生明显的泄漏现象,混叠是否也随之出现?记录实验中观察到的现象,绘出相应的时域序列和幅频特性曲线。参数p=8不变分析:保持p=8不变,改变q,时域上的波形展开,幅度最大值不变(p=8时幅度为1)。频域上频谱压缩,幅度增大。分析:保持q=8不变,改变p:时域上,波形发生偏移(幅度并未变化)。 当p=13、14时出现频谱泄漏和混叠,p=14时泄

9、漏现象明显。这是因为时域信号被截断,而截短的信号并不能如实反映原信号。信号截短的过程中矩形函数频谱的作用下,使得原有的信号频谱出现了较大的波动和分散的频谱扩展,即产生了频谱泄漏。频谱泄漏也会引起混叠,由于泄漏使信号的频谱展宽,如果它的高频成分超过了折叠频率(fs/2),就造成了混叠,这种混叠的可能性在矩形窗截短时尤为明显。源程序:p=8;q=2;n=0:15;x=exp(-(n-p).2/q);w=0:0.01:2*pi;F=zeros(size(w);for k=1:16 F=F+x(k)*exp(-i*w*k);endf=fft(x);subplot(3,3,1);stem(n,x);xl

10、abel('n');ylabel('时域特性');title('p=8 q=2');subplot(3,3,2);plot(w,abs(F);xlabel('w');ylabel('DTFT频域特性');title('p=8 q=2');subplot(3,3,3);stem(n,abs(f);xlabel('n');ylabel('FFT频域特性');title('p=8 q=2');p=8;q=4;n=0:15;x=exp(-(n-p).2/q);

11、w=0:0.01:2*pi;F=zeros(size(w);for k=1:16 F=F+x(k)*exp(-i*w*k);endf=fft(x);subplot(3,3,4);stem(n,x);xlabel('n');ylabel('时域特性');title('p=8 q=4');subplot(3,3,5);plot(w,abs(F);xlabel('w');ylabel('DTFT频域特性');title('p=8 q=4');subplot(3,3,6);stem(n,abs(f);xla

12、bel('k');ylabel('FFT频域特性');title('p=8 q=4');p=8;q=8;n=0:15;x=exp(-(n-p).2/q);w=0:0.01:2*pi;F=zeros(size(w);for k=1:16 F=F+x(k)*exp(-i*w*k);endf=fft(x);subplot(3,3,7);stem(n,x);xlabel('n');ylabel('时域特性');title('p=8 q=8');subplot(3,3,8);plot(w,abs(F);xla

13、bel('w');ylabel('DTFT频域特性');title('p=8 q=8');subplot(3,3,9);stem(n,abs(f);xlabel('k');ylabel('FFT频域特性');title('p=8 q=8');p=13;q=8;n=0:15;x=exp(-(n-p).2/q);w=-pi:0.01:pi;F=zeros(size(w);for k=1:16 F=F+x(k)*exp(-i*w*k);endf=fft(x);subplot(3,3,4);stem(n,x

14、);xlabel('n');ylabel('时域特性');title('p=13 q=8');subplot(3,3,5);plot(w,abs(F);xlabel('w');ylabel('DTFT频域特性');title('p=13 q=8');subplot(3,3,6);stem(n,abs(f);xlabel('k');ylabel('FFT频域特性');title('p=13 q=8');p=14;q=8;n=0:15;x=exp(-(n-

15、p).2/q);w=-pi:0.01:pi;F=zeros(size(w);for k=1:16 F=F+x(k)*exp(-i*w*k);endf=fft(x);subplot(3,3,7);stem(n,x);xlabel('n');ylabel('时域特性');title('p=14 q=8');subplot(3,3,8);plot(w,abs(F);xlabel('w');ylabel('DTFT频域特性');title('p=14 q=8');subplot(3,3,9);stem(n,

16、abs(f);xlabel('k');ylabel('FFT频域特性');title('p=14 q=8');(2)观察衰减正弦序列xb(n)的时域和幅频特性,a=0.1,f=0.0625,检查谱峰出现位置是否正确,注意频谱的形状,绘出幅频特性曲线,改变f,使f分别等于0.4375和0.5625,观察这两种情况下,频谱的形状和谱峰出现位置,有无混叠和泄漏现象?说明产生现象的原因。分析:保持a不变,当f很小时,频谱会在正负频率上产生相对称的峰值(图中取的是0到2之间的频谱图)。当f=0.4375,频谱发生了混叠现象,峰值有所偏移。 当f=0.562

17、5,不满足取样定理(1<2*f),频谱产生混叠。由于0.4375与0.5625关于0.5对称,根据xb(n)表达式可知函数值的大小处处相等,故频谱一致。源程序:a=0.1;f=0.0625;n=0:15;x=exp(-a*n).*sin(2*pi*f*n);w=0:0.01:2*pi;F=zeros(size(w);for k=1:16 F=F+x(k)*exp(-i*w*k);endg=fft(x);subplot(3,3,1);stem(n,x);xlabel('n');ylabel('时域特性');title('a=0.1 f=0.0625&

18、#39;);subplot(3,3,2);plot(w,abs(F);xlabel('w');ylabel('DTFT频域特性');title('a=0.1 f=0.0625');subplot(3,3,3);stem(n,abs(g);xlabel('k');ylabel('FFT频域特性');title('f=0.0625');a=0.1;f=0.4375;n=0:15;x=exp(-a*n).*sin(2*pi*f*n);w=0:0.01:2*pi;F=zeros(size(w);for k=

19、1:16 F=F+x(k)*exp(-i*w*k);endg=fft(x);subplot(3,3,4);stem(n,x);xlabel('n');ylabel('时域特性');title('a=0.1 f=0.4375');subplot(3,3,5);plot(w,abs(F);xlabel('w');ylabel('DTFT频域特性');title('a=0.1 f=0.4375');subplot(3,3,6);stem(n,abs(g);xlabel('k');ylabe

20、l('FFT频域特性');title('f=0.4375');a=0.1;f=0.5625;n=0:15;x=exp(-a*n).*sin(2*pi*f*n);w=0:0.01:2*pi;F=zeros(size(w);for k=1:16 F=F+x(k)*exp(-i*w*k);endg=fft(x);subplot(3,3,7);stem(n,x);xlabel('n');ylabel('时域特性');title('a=0.1 f=0.5625');subplot(3,3,8);plot(w,abs(F);x

21、label('w');ylabel('DTFT频域特性');title('a=0.1 f=0.5625');subplot(3,3,9);stem(n,abs(g);xlabel('k');ylabel('FFT频域特性');title('f=0.5625');(3)观察三角波和反三角波序列的时域和幅频特性,用N=8点FFT分析信号序列xc(n)和xd(n)的幅频特性,观察两者的序列形状和频谱曲线有什么异同?绘出两序列及其幅频特性曲线。源程序:for n=0:3;x(n+1)=n;endfor n=

22、4:7;x(n+1)=8-n;endm=0:1:7;subplot(2,2,1);stem(m,x);xlabel('n');ylabel('x(n)');title('三角波(N=8)');f=fft(x);subplot(2,2,2);stem(m,abs(f);xlabel('k');ylabel('X(k)');title('三角波(N=8)');for n=0:3;x(n+1)=4-n;endfor n=4:7;x(n+1)=n-4;endm=0:1:7;subplot(2,2,3);st

23、em(m,x);xlabel('n');ylabel('x(n)');title('反三角波(N=8)');f=fft(x);subplot(2,2,4);stem(m,abs(f);xlabel('k');ylabel('X(k)');title('反三角波(N=8)');分析:N=8时,两者的幅频特性曲线相近。补零以后(N=32),幅频特性不再相同。反三角波的高频分量明显比三角波的高频分量多,这是由于时域上反三角波两边有突变。源程序:for n=0:3;x(n+1)=n;endfor n=4:7

24、;x(n+1)=8-n;endfor n=8:31x(n+1)=0;endm=0:1:31;subplot(2,2,1);stem(m,x);xlabel('n');ylabel('x(n)');title('三角波(N=32)');f=fft(x);subplot(2,2,2);stem(m,abs(f);xlabel('k');ylabel('X(k)');title('三角波(N=32)');for n=0:3;x(n+1)=4-n;endfor n=4:7;x(n+1)=n-4;endfor

25、 n=8:31x(n+1)=0;endm=0:1:31;subplot(2,2,3);stem(m,x);xlabel('n');ylabel('x(n)');title('反三角波(N=32)');f=fft(x);subplot(2,2,4);stem(m,abs(f);xlabel('k');ylabel('X(k)');title('反三角波(N=32)');(4) 一个连续信号含两个频率分量,经采样得x(n)=sin2*0.125n+cos2*(0.125+f)n  &

26、#160;n=0,1,N-1已知N=16,f分别为1/16和1/64,观察其频谱;当N=128时,f不变,其结果有何不同,为什么?分析:当N=16时,频率分辨率为fs/16。当f0=1/16时,频谱图可分辨,f0=1/64时,频谱图不可分辨,产生频谱泄漏和混叠,并且发生了栅栏效应(峰值观察不到)。 当N=128时,频率分辨率为fs/128,两种f0之下频谱图都可以分辨。可见增大截取长度N,可以有效提高频率分辨力。源程序:n=0:15;f0=1/16;x=sin(pi*0.25*n)+cos(pi*(0.25+2*f0)*n);f=fft(x);subplot(2,2,1);stem(n,abs

27、(f);xlabel('k');ylabel('X(k)');title('N=16,f0=1/16'); f0=1/64;x=sin(2*pi*0.125*n)+cos(2*pi*(0.125+f0)*n);f=fft(x);subplot(2,2,2);stem(n,abs(f);xlabel('k');ylabel('X(k)');title('N=16,f0=1/64');n=0:127;f0=1/16;x=sin(pi*0.25*n)+cos(pi*(0.25+2*f0)*n);f=fft

28、(x);subplot(2,2,3);stem(n,abs(f);xlabel('k');ylabel('X(k)');title('N=128,f0=1/16'); f0=1/64;x=sin(2*pi*0.125*n)+cos(2*pi*(0.125+f0)*n);f=fft(x);subplot(2,2,4);stem(n,abs(f);xlabel('k');ylabel('X(k)');title('N=128,f0=1/64');(5)用FFT分别实现xa(n)(p8,q2)和 

29、;xb(n)(a0.1,f0.0625)的16点循环卷积和线性卷积。分析:利用循环卷积与线性卷积之间的关系(等价条件为L>=N1+N2-1)。源程序:n=0:15;m=0:30; %L=16+16-1=31线性长度;p=8;q=2;xa=exp(-(n-p).2/q);a=0.1;f=0.0625;xb=exp(-a*n).*sin(2*pi*f*n);fa=fft(xa,16);fa_2=fft(xa,31);fb=fft(xb,16);fb_2=fft(xb,31);F_line=ifft(fa.*fb);F_cirle=ifft(fa_2.*fb_2);subplot(2,1,1)

30、stem(n,F_line);title('循环卷积');subplot(2,1,2)stem(m,F_cirle);title('线性卷积');(6)产生一512点的随机序列xe(n),并用xc(n)和xe(n)作线性卷积,观察卷积前后xe(n)频谱的变化。要求将xe(n)分成8段,分别采用重叠相加法和重叠保留法。源程序:clearxe=rand(1,512)-0.5;for n=0:3 xc(n+1)=n;endfor n=4:7 xc(n+1)=8-n;endG=fft(xc,71);%512/8+8-1=71;w=-pi:0.01:pi;F=zeros(

31、size(w);for r=1:512 F=F+xe(r)*exp(-i*w*r);endsubplot(3,1,1);plot(w,abs(F);title('xe频域特性');%重叠相加法for m=1:8 f_64=xe(64*(m-1)+1):64*m);%每段写入64个随机值 k(m,:)=ifft(fft(f_64,71).*G);%每个xe(m)与x(c)(补零后)的卷积endy(1:64)=k(1,1:64);%第一段前64个for n=1:7 y(64*n+1:64*n+7)=k(n,65:71)+k(n+1,1:7);%从第2段起每段重叠部分的值为前后段相加

32、; y(64*n+8:64*n+71)=k(n+1,8:71);%其余正常赋值;endY=fft(y);i=0:(512+8-1)-1);subplot(3,1,2);stem(i,y);title('重叠相加法的时域特性');subplot(3,1,3);stem(i,abs(Y);title('重叠相加法的频域特性');源程序:clearxe=rand(1,512)-0.5;for n=0:3 xc(n+1)=n;endfor n=4:7 xc(n+1)=8-n;endG=fft(xc,71);w=-pi:0.01:pi;F=zeros(size(w);fo

33、r r=1:512 F=F+xe(r)*exp(-i*w*r);endsubplot(3,1,1);plot(w,abs(F);title('xe频域特性');%重叠保留法for m=1:8 if(m=1) f(1:7)=0;f(8:71)=xe(1:64); k(m,:)=ifft(fft(f,71).*G); else f=xe(64*(m-1)-6:64*(m-1)+64); k(m,:)=ifft(fft(f,71).*G); endend y(1:71)=k(1,1:71);for d=2:8 y(64*(d-1)+8:64*(d-1)+71)=k(d,8:71);e

34、ndY=fft(y);i=0:(512+8-1)-1);subplot(3,1,2);stem(i,y);title('重叠保留法的时域特性');subplot(3,1,3);stem(i,abs(Y);title('重叠保留法的频域特性');(7)用FFT分别计算xa(n)(p=8,q=2)和 xb(n)(a0.1,f0.0625)的16点循环相关和线性相关,问一共有多少种结果,它们之间有何共同点?源程序:n=0:15;p=8;q=2;xa=exp(-(n-p).2/q);a=0.1;f=0.0625;xb=exp(-a*n).*sin(2*pi*f

35、*n);fa=fft(xa);fb=fft(xb);rm=real(ifft(conj(fa).*fb);subplot(2,2,1);stem(n,rm);xlabel('m');ylabel('幅度');title('循环相关1');fa_2=fft(xa,2*16);fb_2=fft(xb,2*16);rm_2=real(ifft(conj(fa_2).*fb_2);rm_2=rm_2(16+2):(16*2) rm_2(1:16);m=(-16+1):(16-1);subplot(2,2,2);stem(m,rm_2);xlabel('m');ylabel('幅度');title('线性相关1');RM=real(ifft(conj(fb).*fa);%相关函数公式中fa、fb调换;subplot(2,2,3);stem(n,RM);xlabel('m');ylabel('幅度');title('循环相关2');RM_2=real(ifft

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论