您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 酒店餐饮 > music、esprit、mvdr算法的谱估计
课程(论文)题目:MUSIC、ESPRIT、MVDR算法的谱估计内容:1算法原理1.1MUSIC算法MUSIC算法利用信号子空间和噪声子空间的正交性,构造空间谱函数,通过谱峰搜索,估计信号频率。由0iHAPAμ,1,...,iKM且矩阵HAA可逆得1()0iiHHHHAAAAPAμPAμ,1,...,iKM。又由于矩阵P为正定的对角矩阵,方程两边可再同时左乘1P,推出()0Hkiaμ,1,2,...,kK,1,...,iKM。这就表明,信号频率向量()ka与噪声子空间的特征向量正交。信号角频率的估计可以由扫描函数()MUSICP的K个峰值位置确定。1.2ESPRIT算法ESPRIT算法即基于旋转不变技术的信号参数估计。连续M个时刻的观测值可表示为向量形式nnnx()=As()+v()。定义随机过程()1ynxn,且向量ny和矩阵分别为()(1)(1)TnynynynMy(),12Kjjjdiageee,则1nnny=As()+v()。向量nx的自相关矩阵为2HxxvEnnHRxxAPA+I,向量nx和ny的互相关矩阵为2HHxyvEnnHRxyAPA+Z。对xxR进行特征分解,找到xxR的最小特征值2min12MvM。定义矩阵:2minHxxxxvxxCRRAPAII,2minHHxyxyvxyCRRAPAZZ可以通过求解方程式0xxxyCC来求得到矩阵,xxxyCC的广义特征值。当,1,,kjekK时,矩阵xxxyCC是奇异的;而,1,,kjekK时,xxxyCC是满秩的。矩阵对,xxxyCC的广义特征值恰为12Kjjjeee,这些根的相位即为信号的频率估计。1.3MVDR算法MVDR算法即最小方差无失真响应算法,是有别于经典功率谱估计和参数模型估计的另一类信号频率估计方法。定义向量()(1)(1)TnxnxnxnMx(),假定信号通过一个M抽头的FIR滤波器10MkkWzwkz,则输出信号为:211,,MUSICHPGGGaaa10*MTkynxnanwkxnkxwyn的功率可以表示为2HTHTHxxpEynE**xxxx。为求得滤波器的系数,需要满足在对给定的某一频率i处,xn无失真地通过,且p最小。此时,11xxiMVDRHixxiRwRaaa11HixxipRaa则11,,MVDRHxxPRaa。MVDRP并不是真正意义上的功率谱,但它描述了信号真正谱的相对强度,可以由此估计信号频率。2算法实现采用空间谱估计的典型代表MUSIC算法,ESPRIT算法和MVDR算法,对含有高斯白噪声的复正弦信号进行频率估计。选取的信号数3p,阵元数10M,采样数100N0。待检测信号的归一化频率为1230.10,0.20,0.45fff,仿真的待检测信号为:3123122222(M1)2(M1)2(M1)111jfjfjfjfjfjfeeeSeee假设123a,a,a都是零均值,方差为1的白噪声,采样数为N,且彼此之间相互独立,则阵列响应矩阵为123222jjjeAeeaaa假定噪声,1,iviM为零均值,方差为1的高斯白噪声,采样数为N,则待检测信号引入的噪声为12Mvvvv于是仿真信号为:X=S*A+v。2.1MUSIC算法利用MUSIC算法进行频率估计时,首先求出仿真信号的自相关矩阵R=X*X'/N,然后对自相关矩阵进行特征值分解得到特征值空间U和特征向量空间D,然后对特征值空间U进行升序排序,取较小的Mp个特征值所对应的特征向量组成噪声子空间G,然后求得,0,0.5MUSICP,MUSIC算法程序段如下所示:R=X*X'/N;[UD]=eig(R);[d,index]=sort(diag(D));U=U(:,index);fori=-N:Na=exp(-j*2*pi*[0:M-1]'*(i*0.5/N));Pmusic(i+1+N)=abs(1/(a'*U(:,1:end-p)*U(:,1:end-p)'*a));endplot(omg,10*log10(Pmusic/max(Pmusic)));%画出MUSIC算法图形2.2ESPRIT算法ESPRIT算法要先构造相关矩阵xxR和xyR,然后对xxR进行特征值分解得到最小特征值min即为噪声的方差2v,通过对矩阵对,xxxyCC进行广义特征值分解,最接近单位圆的K个特征值相位即为信号的频率估计。ESPRIT算法程序段如下所示:S1=U(1:end-1,8:10);S2=U(2:end,8:10);S12=[S1S2];[UuDd]=eig((S12'*S12));[dd,ind]=sort(diag(Dd));Uu=Uu(:,ind);dt=-Uu(1:3,1:3)*inv(Uu(4:6,1:3));dd=eig(dt);t_esprit=asin(-angle(dd)/(2*pi));plot(t_esprit,[000],'*','color','red')%画出ESPRIT算法图形,红色表示2.3MVDR算法MVDR算法要先求自相关矩阵xxR,然后将峰搜索矩阵()ia带入最小方差谱估计公式11,0,0.5MVDRHxxPRaa通过观察谱峰得到信号的频率估计值。MVDR算法程序段如下所示:fori=-N:Na=exp(-j*2*pi*[0:M-1]'*(i*0.5/N));Pmvdr(i+N+1)=abs(1/(a'*inv(R)*a));endplot(omg,10*log10(Pmvdr/max(Pmvdr)),'--','color','black')2.4程序流程图各算法程序流程图如下所示:图2.4.1MUSIC算法图2.4.2ESPRIT算法图2.4.3MVDR算法3仿真结果使用MATLAB软件进行仿真,得出MUSIC算法、ESPRIT算法、MVDR算法的仿真图形分别如图3.1、图3.2、图3.3所示。为了将这三种算法的谱估计效果更加直观地比较,将三种算法的仿真结果图形放在一张图中进行比较,如图3.4所示。另外,MUSIC算法得出的频率估计为1230.10,0.20,0.45fff,运算时间time=1.415;ESPRIT算法的频率估计为1230.10,0.20,0.47fff,运算时间time=0.0251;MVDR算法的频率估计为1230.10,0.20,0.45fff,运算时间time=0.0910。开始估计自相关矩阵R分解得U和D组成噪声子空间G求出Pmusic(w)结束开始构造矩阵Rxx和Rxy分解得λmin对{Cxx,Cyy}广义特征值分解求K个特征值相位结束开始求自相关矩阵Rxx改变w值画出曲线Pmvdr结束图3.1MUSIC仿真结果图3.2ESPRIT仿真结果图3.3MVDR仿真结果图3.4各种算法仿真比较结果4算法比较由仿真图形和运算时间可以看出,MUSIC算法、ESPRIT算法和MVDR算法都可以实现对含噪复正弦信号的频率估计,而且能够克服DFT中存在能量泄漏和栅栏效应,误差较小。三种方法中,MVDR算法实现最为简单,在较小的运算次数时快捷且准确度高,但是运算量会随着采样点数的增大而急剧增大;MUSIC算法最为常规,而且能够实现超分辨,有效的克服了工程应用中由于先验信息不足而导致的分辨率降低问题,但是运算量也是很大,不利于次数较大的频率估计;ESPRIT算法需要两次求特征值运算,实现较为复杂,但是有效的克服MUSIC算法需要进行谱峰搜索而带来的计算量很大的问题,计算量很小,而且随着运算次数的增大,运算时间不会明显增大,具有很好的分辨力。综上所述,MUSIC算法和MVDR算法实现简单,精度高,但是运算量大;ESPRIT算法能够有效降低运算量,不过,在较高频率的频率估计时有少许误差。
本文标题:music、esprit、mvdr算法的谱估计
链接地址:https://www.777doc.com/doc-5017808 .html