好文档 - 专业文书写作范文服务资料分享网站

信息工程概论-窗口傅里叶变换

天下 分享 时间: 加入收藏 我要投稿 点赞

.

%%%%重构 x1=ifftshift(X); x1=ifft(x1); subplot(3,2,5); plot(t1,x1);

xlabel('时间'); %x轴 ylabel('振幅'); %y轴 %%%%误差 e=x1-f1; subplot(3,2,6); plot(t1,abs(e)); xlabel('时间'); %x轴 ylabel('振幅'); %y轴 得到结果:

结果分析:

我们发现得到的结果非常不理想,经过多次试验,我并没有找到是哪里出的问题,因此

;.

.

在接下来的实验中将要放弃这种方法。

实验2:

题目:

录一段自己的声音,对这段声音进行频谱分析。 实验分析:

这个题目和实验1类似,只不过一个用的是连续的窗口傅里叶变换,一个用的是离散的窗口傅里叶变换,所以在这里我们仍然运用matlab中的spectrogram函数即可。

在这里我们需要注意一下,mp3是双音轨的,所以数字化后是一个是一个二维数组,而我们只需要分析其中的一组即可。

于是我就录了自己的一段笑声,并抽取其中的一组数组,进行分析。 源程序: clear

[x,fs]=audioread('C:\\Users\\lenovo\\Desktop\\小波分析\\笑.mp3'); y=x(:,1)'; subplot(3,2,1); plot(y);

title('信号波形图'); %图名 xlabel('时间'); %x轴 ylabel('振幅'); %y轴 hold on

N=length(y);

Nw=600; %窗函数长 window length L=Nw/2; %窗函数每次移动的样点数,重叠宽度 %%%%%%窗口函数 subplot(3,2,2); g=hamming(Nw); j=-Nw/2; for i=1:Nw

;.

.

t(i)=j; j=j+1; end

plot(t,g,'.');

subplot(3,2,3);

[S,F,T,P] = spectrogram(y,hamming(600),580,600,1E3); surf(T,F,10*log10(P),'edgecolor','none'); axis tight view(0,90);

xlabel('Time (Seconds)'); ylabel('Hz'); subplot(3,2,4);

surf(T,F,10*log10(P),'edgecolor','none'); axis tight

xlabel('Time (Seconds)'); ylabel('Hz'); zlabel('enargy') Y=fft(y); X=fftshift(Y); %%%%重构 x1=ifftshift(X); x1=ifft(x1); subplot(3,2,5); plot(x1);

xlabel('时间'); %x轴 ylabel('振幅'); %y轴 %%%%误差 e=x1-y;

;.

.

subplot(3,2,6); plot(abs(e)); xlabel('时间'); %x轴 ylabel('振幅'); %y轴 得到结果:

结果分析:

我们可以看到得到了一个比较比较清晰地频谱图,但是它的3D图并不是太清晰。结

果不是太理想。

;.

信息工程概论-窗口傅里叶变换

.%%%%重构x1=ifftshift(X);x1=ifft(x1);subplot(3,2,5);plot(t1,x1);xlabel('时间');%x轴ylabel('振幅');%y轴%%%%误差e=x1-f1;subplot(3,2,6);plot(t1,abs(e));xlabel('时间');%x轴ylabel('振幅')
推荐度:
点击下载文档文档为doc格式
18se7728ya4mn0g1mmp04oweh0q6fq00ok7
领取福利

微信扫码领取福利

微信扫码分享