本文同步发布在我的个人博客宅到没朋友,欢迎来玩!
1.前言
MVDR频率估计方法的理论知识此处略过,直接介绍最后得到的MVDR谱估计公式。
2.MVDR谱估计公式
P^MVDR(w)=aH(w)R^−1a(w)1
其中aw=aM(w)=⎣⎢⎢⎡1e−jw∗∗∗e−j(M−1)w⎦⎥⎥⎤,R^=E{x(n)x^(n)}=⎣⎢⎢⎢⎡r(0)r(−1)⋯r(1−M)r(1)r(0)⋯r(2−M)⋯⋯⋱⋯r(M−1)r(M−2)⋮r(0)⎦⎥⎥⎥⎤
M为自相关矩阵的阶数。
3.算法步骤
- 由N个观测样本x(0),x(1),⋯,x(N∗1)估计样本相关矩阵R^。
- 在[−π,π]内改变w,画出P^MVDR(w),峰值位置就是信号角频率的估计值。
4.算例及代码实现
4.1 算例
设随机过程u(n)为u(n)=ej0.5πn+jϕ1+e−j0.3πn+jϕ2+vn,其中,vn是0均值,方差为1的白噪声,ϕ1、ϕ2是相互独立并在[0,2π]上服从均匀分布的随机相位,使用MVDR方法进行信号频率估计,画出频率估计谱线。(要求:信号样本数取1000,估计的自相关矩阵为8阶。)
4.2 Matlab实现
MVDR方法的输出功率为信号功率加上一个数,因此利用MVDR方法进行谱估计时,若在某个频点有信号,则该点会出现一个比它真实功率值大一点的数值,若是没有信号,信号和噪声都被滤波器抑制,按公式估计的值会很小。
4.3 代码及下载
点此下载源码。
|
请发表评论