现代信号处理第一次作业令x(n)=5e^[j(0.15n^2)]+6e^[j(300n-0.15n^2)],w(n)为高斯窗函数。试用matlab软件,取不同长度的窗函数,分别求x(n)离散短时傅里叶变换,并进行信号重构。试讨论窗函数长度对时频分辨率、重构精度的影响。解:Matlab代码见附件。1.当取高斯窗函数的长度为7时短时傅里叶变换的时频图如下:可以看出,时间分辨率比较高,但频率分辨率比较低。在此窗函数作用下,重构图像与原始图像的差图如下:可以看出,两幅图最大差值接近4*10-15。2.将高斯窗函数的长度设为255时所得时频图如下:可以看出在窗函数长度比较大的时候,时间分辨率比较低,但频率分辨率比较高。此时,进行信号重构,重构后的图像与原始图像的差图如下:此时两者的最大差值接近2.5*10-14,显然比窗函数为7时的要大。所以,STFT的时间分辨率由窗函数的宽度决定,STFT的频率分辨率由窗函数的频谱宽度决定。时间分辨率与频率分辨率的乘积为一个常量。窗函数宽度越长,时间分辨率越低,频率分辨率越高,信号重构精度越差。代码:N=256.75;n=1:0.25:N;m=length(n);%产生线性调频信号x=5*exp(j*0.15*n.*n)+6*exp(j*(300*n-0.15*n.*n));figure(1);plot(n,x);figure(1);plot(n,x);figure(2);plot(n,x);xlabel('时间n');ylabel('幅值A');%产生高斯窗函数w=window(@gausswin,7);%计算短时傅里叶变换y=x';tfrstft(y,1:m,m,w);[tfr,t,f]=tfrstft(y,1:m,m,w);%进行短时傅里叶反变换g=tfristft(tfr,1:m,w);%画出重构信号与原始信号的差图figure(3);plot(n,abs(g-y));xlabel('时间n');ylabel('差值');