700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 现代信号处理-现代功率谱密度估计AR模型

现代信号处理-现代功率谱密度估计AR模型

时间:2021-04-17 20:39:07

相关推荐

现代信号处理-现代功率谱密度估计AR模型

目录

前言一、概率梳理二、AR模型的几种方法三、AR模型的方法与具体仿真

前言

本栏前两节经典谱估计中提到:经典谱估计下,方差和分辨率是一对矛盾。这是因为经典谱估计将数据进行了加窗,自相关法还对自相关进行了加窗(二次加窗),这就让我们想到把原始数据藏在一个系统H(Z)中,让这个系统包含这组数据的特性,这样一来,系统中的系数就可以表示系统反映的数据。这就是现代功率谱密度估计-参数模型法的思想。按照书本的就是先根据数据的自相关函数r(m)求出H(Z)系数,再通过H(Z)进行谱估计

参数模型法有AR,MA,ARMA模型,其性质为:

一、概率梳理

由于AR模型是线性方程,也可以等效预测模型,所以AR模型远比另外两种实用,所以本文只梳理和仿真了AR模型

首先模型中令输入是白噪声,需要求解H(Z)的系数也就是ak,k=1,2…p。也就是要通过数据的自相关与ak的关系进行求解,也就是需要通过正则方程(Yule-Walker方程),正则方差的推导过程如下:

其中,正则方差可以用Lecinson-Durbin递推快速算法计算,也就是自相关法的方法。后面还会说其他的方法以及比较。

并且在预测模型中,二者系统的系数是相等的,其最小误差等效于AR模型输入端白噪声的方差。其关系如下:

二、AR模型的几种方法

比较常见的有刚刚提及的自相关法,还有burg法和改进后的协方差法,它们之间的区别如下:

除此之外,还有常会用到的最大熵谱估计,由于数据可能相对于原始数据还是有截短。之前的经典谱估计是将两边直接为零,而这里是将两边加上最随机的数,也就是最大熵的准则。

三、AR模型的方法与具体仿真

为了和经典功率谱估计比较,采用的原数据和前两节经典功率谱估计一样的,仿真采取的阶数均为50

%%现代功率谱估计的一些方法clear all;clc;close all;clear;N=200; Nfft=20000; Fs=1; n=0:N-1;x=cos(0.3*pi*n)+cos(0.32*pi*n)+0.1*randn(size(n));fn=-0.5:2/N:0.5;figure;%% burg法% 使用 Burg 算法得到功率谱估计;xpsd=pburg(x,50,N);pmax=max(xpsd);xpsd=xpsd/pmax;xpsd=10*log10(xpsd+0.000001);subplot(221);plot(fn,fftshift(xpsd));grid on;title('burg法');%% 协方差法xpsd=pcov(x,50,N);pmax=max(xpsd);xpsd=xpsd/pmax;xpsd=10*log10(xpsd+0.000001);subplot(222);plot(fn,fftshift(xpsd));grid on;title('协方差法');%% 协方差的改进法xpsd=pmcov(x,50,N);pmax=max(xpsd);xpsd=xpsd/pmax;xpsd=10*log10(xpsd+0.000001);subplot(223);plot(fn,fftshift(xpsd));grid on;title('改进的协方差法');%% 最大熵法xpsd=pmem(x,50,N);pmax=max(xpsd);xpsd=xpsd/pmax;xpsd=10*log10(xpsd+0.000001);subplot(224);plot(fn,fftshift(xpsd));grid on;title('最大熵法');%% 自相关figure;% 使用自相关矩阵分解的 MUSIC 算法得到功率谱估计;xpsd=pmusic(x',50,N);pmax=max(xpsd);xpsd=xpsd/pmax;xpsd=10*log10(xpsd+0.000001);subplot(311);plot(fn,fftshift(xpsd));grid on;title('自相关矩阵分解的MUSIC算法');% 使用自相关矩阵分解的特征向量算法得到功率谱估计;[xpsd,F,V,E]=peig(x',50,N);pmax=max(xpsd);xpsd=xpsd/pmax;xpsd=10*log10(xpsd+0.000001);subplot(312);plot(fn,fftshift(xpsd));grid on;title('自相关矩阵分解的特征向量算法');% 使用自相关法得到功率谱估计;xpsd=pyulear(x,50,N);pmax=max(xpsd);xpsd=xpsd/pmax;xpsd=10*log10(xpsd+0.000001);subplot(313);plot(fn,fftshift(xpsd));grid on;title('自相关法');

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。