功率谱估计,功率谱估计有三种,一是非参数方法包含周期图法,welch法,MTM法,二是参数方法,子空间法等,matlab中对应的函数如下:
spectrum.periodogram,periodogram用于周期图法,
spectrum.welch,pwelch,cpsd,tfesitamate,mscohere函数表示平均周期图法
Spectrum.yulear,pyulear函数表示以自相关分析为基础的AR方法(Yule-Walker法)
Spectrum.burg,pburg函数表示以线性预测为基础的AR方法(Burg法)
Spectrum.cov,pcov函数表示以最小前向预测误差为基础的AR方法(协方差法)
示例:使用不同的非参数方法对同一个信号进行功率谱分析
编写对应的m文件:
Fs=6000;
T=1/Fs;
L=1000;
t=T*(0:L-1);
f1=100;
f2=200;
y=2*sin(2*pi*f1*t)+2*sin(2*pi*f2*t);
subplot(2,3,1)
plot(t(1:200),y(1:200),'r');
title('时域波形图');
xlabel('时间/s');
ylabel('幅值');
a1=spectrum.periodogram;%%周期图法%%
subplot(2,3,2)
psd(a1,y,'Fs',Fs,'NFFT',102