课程作业-杭电研究生-小波变换—时频分析
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、高斯调幅的线性调频脉冲信号sig 在取窗函数好h=1时的时频联合分布
clear close all clc %产生非平稳信号
sig=real(amgauss(128).*fmlin(128)); %%时域波形
figure(1) plot(sig,'LineWidth',2); xlabel('时间 t'); ylabel('幅值 A');
%设置窗函数
h=1;
%计算短时傅立叶变换
[tfr,t,f]=tfrstft(sig,1:128,128,h); %时频表示
figure(2) contour(t,f(1:128),abs(tfr));
xlabel('时间 t');
ylabel('频率 f');
二、同一信号在同一窗函数但不同窗长度时的短时傅立叶变换和Gabor 变换的时频分布图 clear close all clc %产生非平稳信号
%%暂态信号1
sig1=real(amgauss(128,45).*fmconst(128,0.25,45)); %%暂态信号2 sig2=real(amgauss(128,85).*fmconst(128,0.25,85)); sig=sig1+sig2; %时域波形
figure(1) plot(sig,'LineWidth',2); xlabel('时间 t');
ylabel('幅值 A'); %设置窗函数1
h1=window(@hamming,65); %计算短时傅立叶变换
sig=hilbert(sig);
[tfr,t,f]=tfrstft(sig,1:128,128,h1);
%短时傅立叶变换时频表示
figure(2); contour(t,2*f(1:128),abs(tfr)); xlabel('时间 t');
ylabel('频率 f');
%gabor 变换的时频表示
[tfr,dgr,gam]=tfrgabor(sig,64,32,h1); figure(3);
tfrgabor(sig,64,32,h1);
xlabel('Time [s]'); ylabel('Frequency [Hz]');
%设置窗函数2
h2=window(@hamming,17); %计算短时傅立叶变换
[tfr,t,f]=tfrstft(sig,1:128,128,h2); %短时傅立叶变换时频表示
figure(4)
contour(t,2*f(1:128),abs(tfr)); xlabel('时间t');
ylabel('频率f');
%gabor变换的时频表示
[tfr,dgr,gam]=tfrgabor(sig,64,32,h2); figure(5);
tfrgabor(sig,64,32,h2);
xlabel('Time [s]');
ylabel 'Frequency [Hz]')
两窗口下短时傅立叶变换的时频分布图
两窗口下Gabor变换的时频分布图
由仿真结果可知,当窗口变小时,分辨率变大;同一窗口下的STFT比Gabor 变换效果要好。