【转】Matlab功率谱估计

【转自】了凡春秋—Matlab功率谱估计

随机信号处理

随机变量分布特征量
  • 均值mean
  • 协方差矩阵cov
  • 相关系数矩阵corrcoef
    [R, P] = corrcoef(X),P值用于检验相关性,越小越相关,0.05以下为显著相关。
  • 相关函数估计
  • 相关函数估计xcorr
    [c,lags] = xcorr(x,y,maxlags,‘option’)
    Maxlags可以指定计算的的延迟,为[-maxlags:maxlags];
    ‘biased’: 相关函数的无偏估计
    ‘unbiased’: 相关函数的有偏估计
    ‘coeff’: 归一化相关函数,即把0延迟处的自相关系数归一化为1
    ‘none’: 使用原始非归一化相关

  • 协方差函数估计xcov
    内部执行过程为序列减去均值,再执行xcorr

  • 相关函数mscohere
经典功率谱估计
  • 直接法(周期图法,直接FFT)periodogram
  • 改进算法
    Bartlett法
  • 功率谱估计dspdata.psd
  • 互功率谱估计cpsd
    Welch法pwelch
  • 间接法(自相关法或BT法)
  • 基于经典谱估计的系统辨识tfestimate
    使用Welch平均周期图法计算系统的谱估计
现代谱估计-非参数法
  • MTM法pmtm
    使用正交窗口来截取获得相互独立的改进周期图法功率谱估计,然后再把这些估计结果结合得到最终的估计。随着NW的增大,窗的个数增多,会有更多的谱估计,从而谱估计的方差得到减小,但同时带来谱泄露的增大,而且正的谱估计的结果将会有更大的偏差。

  • MUSIC法pmusic
    基于矩阵特征分解的谱估计非参数方法,它把相关数据矩阵中的信息分类,把信息分配到信号的子空间或噪声的子空间。它适合于普遍情况下的正弦信号参数估计的方法,是多信号分类法的简称。

  • 特征向量法peig
    也是一种基于矩阵特征分解的谱估计非参数方法,它主要适用于混有噪声的正弦信号的功率谱估计,此方法利用相关矩阵的特征值来对MUSIC法公式中的求和进行加权得到的。

现代模型谱估计-AR模型谱估计
  • Yule-Walker法估计pyulear

  • Burg法

  • AR模型参数估计arburg
  • AR模型功率谱估计pburg
  • 协方差谱估计pmcov
小结

模型谱估计适合于估计系统模型,如滤波器的谱估计;

非参数法适合于正弦波信号谱估计。

  • 工具箱方法
    image

Burg—AR模型谱估计

Covariance—AR模型谱估计

FFT—传统谱估计

Mod.Covar—AR模型谱估计

MTM—现代非参数谱估计

MUSIC—现代非参数谱估计

Welch—传统谱估计

Yule AR—AR模型谱估计

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
3种经典功率谱估计方法的MATLABA代码-功率谱代码.doc 3种MATLAB的经典谱估计方法 希望对大家有用~ 附件所有代码: 直接法: 直接法又称周期图法,它是把随机序列x的N个观测数据视为一能量有限的序列,直接计算x的离散傅立叶变换,得X,然后再取其幅值的平方,并除以N,作为序列x真实功率谱的估计。 Matlab代码: clear; Fs=1000; %采样频率 n=0:1/Fs:1; %产生含有噪声的序列 xn=cos 3*cos randn); window=boxcar); %矩形窗 nfft=1024; [Pxx,f]=periodogram; %直接法 plot); 改进的直接法: 对于直接法的功率谱估计,当数据长度N太大时,谱曲线起伏加剧,若N太小,谱的分辨率又不好,因此需要改进。 1. Bartlett法 Bartlett平均周期图的方法是将N点的有限长序列x分段周期图再平均。 Matlab代码: clear; Fs=1000; n=0:1/Fs:1; xn=cos 3*cos randn); nfft=1024; window=boxcar); %矩形窗 noverlap=0; %数据无重叠 p=0.9; %置信概率 [Pxx,Pxxc]=psd; index=0:round; k=index*Fs/nfft; plot_Pxx=10*log10); plot_Pxxc=10*log10); figure plot; pause; figure plot; 2. Welch法 Welch法对Bartlett法进行了两方面的修正,一是选择适当的窗函数w,并再周期图计算前直接加进去,加窗的优点是无论什么样的窗函数均可使谱估计非负。二是在分段时,可使各段之间有重叠,这样会使方差减小。 Matlab代码: clear; Fs=1000; n=0:1/Fs:1; xn=cos 3*cos randn); nfft=1024; window=boxcar; %矩形窗 window1=hamming; %汉明窗 window2=blackman; %blackman窗 noverlap=20; %数据无重叠 range='half'; %频率间隔为[0 Fs/2],只计算一半的频率 [Pxx,f]=pwelch; [Pxx1,f]=pwelch; [Pxx2,f]=pwelch; plot_Pxx=10*log10; plot_Pxx1=10*log10; plot_Pxx2=10*log10; figure plot; pause; figure plot; pause; figure plot; 复制代码

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值