线性调频信号短时傅里叶变换MATLAB

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

%%%%%%%%%% 线性调频信号%%%%%%%%%%%%%%%%%%%%%%%%%%

clear all

k=50;

fs=250;

n=0:1000-1;

x=exp(j*pi*k*(n/fs).^2);

subplot(221);

plot(n/fs,real(x));

title('线性调频信号');

xlabel('时间');

ylabel('振幅');

%%%%%%%%%%%%%% 线性调频信号频谱%%%%%%%%%%%%%%%%%%%%%%%%% P=fft(x);

subplot(222);

plot(n/length(n)*fs,abs(P));

title('线性调频信号频谱');

xlabel('频率');

ylabel('振幅');

%%%%%%%%%%%%%%% 短时傅立叶变换%%%%%%%%%%%%%%%%%%%%%%%

N=40;

NFFT=512;

N1=round((1000-N)*2/N+1);

w=gausswin(N);

%w=hanning(N);

%w=rectwin(N);

%w=hamming(N);

%w=blackman(N);

w=rot90(w);

STFT=zeros(N1,NFFT);

for i=1:N1;

xt=x((i-1)*N/2+1:(i-1)*N/2+N);

xt=xt.*w; %加高斯窗

STFT(i,:)=fft(xt,NFFT);

end

fn=(1:NFFT)*fs/NFFT;

tn=(1:N1)*N/2/fs;

[F,T]=meshgrid(fn,tn);

subplot(223);

mesh(F,T,abs(STFT));

title('STFT');

xlabel('频率');

ylabel('时间');

subplot(224); contour(T,F,abs(STFT)); title('T-F等高图'); xlabel('时间');

ylabel('频率');

相关文档
最新文档