DOA算法1:MUSIC算法(二)


注:本博文为本人阅读论文、文章后的原创笔记,未经授权不允许任何转载或商用行为,否则一经发现本人保留追责权利。有问题可留言联系,欢迎指摘批评,共同进步!!!

一、Root-MUSIC算法

1.1 经典MUSIC算法的困难

  1. 精度受到 P M U S I C ( ϕ ) P_{MUSIC}(\phi) PMUSIC(ϕ)函数离散化的限制;
  2. 需要人为确定 M M M个最大峰值,或需要理解性搜索算法来确定峰值,这会有很高的计算复杂度

1.2经典MUSIC到Root-MUSIC的转变

经典MUSIC算法是估计输入数据流频谱的技术(频谱估计技术),它的最终产物是 P M U S I C ( ϕ ) P_{MUSIC}(\phi) PMUSIC(ϕ)函数。
Root-MUSIC算法是一种基于模型的参数估计技术,我们使用一个接收信号的模型作为DOA的函数。此处的模型就是旋转矢量,DOA则是模型中的一个参数。基于模型和接收的数据,我们就能估计这个参数。

1.3Root-MUSIC算法的原理介绍

定义:
z = e j k d   c o s ϕ z=e^{jkd\ cos\phi} z=ejkd cosϕ
则:
s ( ϕ ) = [ 1 , z , z 2 , ⋯   , z N − 1 ] T , ⇒ q m H s = ∑ n = 0 N − 1 q m n ∗ z n = q m ( z ) , \begin{aligned} \bm{s(\phi)} &= [1,z,z^2,\cdots, z^{N-1}]^T, \\ \Rightarrow \mathbf{q^H_ms} &=\sum_{n=0}^{N-1}q^*_{mn}z^n=q_m(z), \end{aligned} s(ϕ)qmHs=[1,z,z2,,zN1]T,=n=0N1qmnzn=qm(z),
由经典MUSIC算法可知,寻找的方向 ϕ \phi ϕ的条件是使得 q m ⊥ s ( ϕ ) \mathbf{q_m} \perp \mathbf{s(\phi)} qms(ϕ), m = ( M + 1 ) , ⋯   , N , m=(M+1),\cdots,N, m=(M+1),,N,即,我们要寻找的就是多项式 q m ( z ) = 0 q_m(z)=0 qm(z)=0的根
首先,我们要找到这个多项式:
P M U S I C − 1 ( ϕ ) = s H ( ϕ ) Q n Q n H s ( ϕ ) = s H ( ϕ ) C s ( ϕ ) 其 中 , C = Q n Q H n ⇒ P M U S I C − 1 ( ϕ ) = ∑ m = 0 N − 1 ∑ n = 0 N − 1 z n C m n z − m = ∑ m = 0 N − 1 ∑ n = 0 N − 1 z n − m C m n \begin{aligned} P^{-1}_{MUSIC}(\phi) &= \mathbf{s}^H(\phi) \mathbf{Q_nQ}^H_{\mathbf{n}} \mathbf{s(\phi)} \\ &= \mathbf{s}^H(\phi) \mathbf{Cs(\phi)} \\ 其中,\mathbf{C} &= \mathbf{Q_n}\mathbf{Q^H}_n\\ \Rightarrow P^{-1}_{MUSIC}(\phi) &= \sum^{N-1}_{m=0}\sum^{N-1}_{n=0}z^nC_{mn}z^{-m} = \sum^{N-1}_{m=0}\sum^{N-1}_{n=0}z^{n-m}C_{mn} \end{aligned} PMUSIC1(ϕ)CPMUSIC1(ϕ)=sH(ϕ)QnQnHs(ϕ)=sH(ϕ)Cs(ϕ)=QnQHn=m=0N1n=0N1znCmnzm=m=0N1n=0N1znmCmn

为什么能写成上述的下标形式呢?看下面具体的例子:
假设N=3,M=2
那么:
s ( ϕ ) = [ z 0 , z 1 , z 2 ] T , s H ( ϕ ) = [ z − 0 , z − 1 , z − 2 ] , Q n = [ q m 11 , q m 12 , q m 13 ] T , Q n H = [ q m 11 , q m 12 , q m 13 ] \begin{aligned} \mathbf{s(\phi)} &= [z^0, z^1, z^2]^T, \\ \mathbf{s^H(\phi)} &= [z^{-0}, z^{-1}, z^{-2}],\\ \mathbf{Q_n} &= [q_{m_{11}}, q_{m_{12}}, q_{m_{13}}]^T,\\ \mathbf{Q^H_n} &= [q_{m_{11}}, q_{m_{12}}, q_{m_{13}}] \end{aligned} s(ϕ)sH(ϕ)QnQnH=[z0,z1,z2]T,=[z0,z1,z2],=[qm11,qm12,qm13]T,=[qm11,qm12,qm13]
C = Q n Q n H = [ q m 11 2 q m 11 q m 12 q m 11 q m 13 q m 12 q m 11 q m 12 2 q m 12 q m 13 q m 13 q m 11 q m 13 q m 12 q m 13 2 ] \begin{aligned} \mathbf{C} &= \mathbf{Q_nQ^H_n} \\ &= \begin{bmatrix} q^2_{m_{11}} & q_{m_{11}}q_{m_{12}} & q_{m_{11}}q_{m_{13}}\\ q_{m_{12}}q_{m_{11}} & q^2_{m_{12}} & q_{m_{12}}q_{m_{13}}\\ q_{m_{13}}q_{m_{11}} & q_{m_{13}}q_{m_{12}} & q^2_{m_{13}} \end{bmatrix} \end{aligned} C=QnQnH=qm112qm12qm11qm13qm11qm11qm12qm122qm13qm12qm11qm13qm12qm13qm132
P M U S I C − 1 = s H ( ϕ ) C s ( ϕ ) = [ z 0 z 1 z 2 ] [ q m 11 2 q m 11 q m 12 q m 11 q m 13 q m 12 q m 11 q m 12 2 q m 12 q m 13 q m 13 q m 11 q m 13 q m 12 q m 13 2 ] [ z 0 z − 1 z − 2 ] \begin{aligned} P^{-1}_{MUSIC} &= \mathbf{s^H(\phi)}\mathbf{C}\mathbf{s(\phi)} \\ &= \begin{bmatrix} z^0 & z^1 & z^2\\ \end{bmatrix} \begin{bmatrix} q^2_{m_{11}} & q_{m_{11}}q_{m_{12}} & q_{m_{11}}q_{m_{13}}\\ q_{m_{12}}q_{m_{11}} & q^2_{m_{12}} & q_{m_{12}}q_{m_{13}}\\ q_{m_{13}}q_{m_{11}} & q_{m_{13}}q_{m_{12}} & q^2_{m_{13}} \end{bmatrix} \begin{bmatrix} z^0 \\ z^{-1} \\ z^{-2}\\ \end{bmatrix} \end{aligned} PMUSIC1=sH(ϕ)Cs(ϕ)=[z0z1z2]qm112qm12qm11qm13qm11qm11qm12qm122qm13qm12qm11qm13qm12qm13qm132z0z1z2

l = n − m l=n-m l=nm,则可以把上述两个累加运算减少到一个,其中 − ( N − 1 ) ≤ l ≤ ( N − 1 ) -(N-1) \le l \le (N-1) (N1)l(N1):
⇒ P M U S I C − 1 ( ϕ ) = ∑ l = − ( N − 1 ) ( N − 1 ) C l z l , 其 中 C l = ∑ n − m = l C m n \begin{aligned} \Rightarrow P^{-1}_{MUSIC}(\phi) &= \sum^{(N-1)}_{l=-(N-1)}C_lz^l, \\ 其中C_l &= \sum_{n-m=l}C_{mn} \end{aligned} PMUSIC1(ϕ)Cl=l=(N1)(N1)Clzl,=nm=lCmn

注意, C m n C_{mn} Cmn的下标中, m m m是列数, n n n是行数.同样假设 N = 3 , M = 2 N=3,M=2 N=3,M=2
C m n = [ C 00 C 10 C 20 C 01 C 11 C 21 C 02 C 12 C 22 ] C − 2 = C 20 , C − 1 = C 10 + C 21 , C 0 = C 00 + C 11 + C 22 , C 1 = C 01 + C 12 , C 2 = C 02 C_{mn}= \begin{bmatrix} C_{00} & C_{10} & C_{20}\\ C_{01} & C_{11} & C_{21}\\ C_{02} & C_{12} & C_{22} \end{bmatrix} \\ C_{-2}=C_{20}, C_{-1} = C_{10}+C_{21},\\ C_{0} = C_{00}+C_{11}+C_{22},\\ C_{1} = C_{01}+C_{12}, C_{2} = C_{02} Cmn=C00C01C02C10C11C12C20C21C22C2=C20,C1=C10+C21,C0=C00+C11+C22,C1=C01+C12,C2=C02
显然, C l C_l Cl就是矩阵 C \mathbf{C} C中第 n n n个对角线的所有元素相加的结果

1.3.1 关于 P M U S I C − 1 ( ϕ ) P^{-1}_{MUSIC}(\phi) PMUSIC1(ϕ)多项式的零点问题

  • 首先明确, P M U S I C − 1 ( ϕ ) P^{-1}_{MUSIC}(\phi) PMUSIC1(ϕ)是个复杂度为 ( 2 N − 2 ) (2N-2) (2N2)、有 ( 2 N − 2 ) (2N-2) (2N2)个零点的多项式,但是并不是所有的零点都是独立的
  • 如果 z z z是多项式 P M U S I C − 1 ( ϕ ) P^{-1}_{MUSIC}(\phi) PMUSIC1(ϕ)的零点之一,那么它的共轭倒数 1 z ∗ \frac{1}{z^*} z1也一定是零点
  • 因此,多项式 P M U S I C − 1 ( ϕ ) P^{-1}_{MUSIC}(\phi) PMUSIC1(ϕ)的零点是成对出现的。

重要的注意点:

  • 我们的目的是要得到信号角度 ϕ \phi ϕ,从 z z z的定义可以得知,只有相位包含了我们想要的角度信息。且 z z z 1 z ∗ \frac{1}{z^*} z1关于单位圆对称的,有相同的相位,因此最终寻找时只需要找单位圆内的 ( N − 1 ) (N-1) (N1)个零点就行
  • 在没有噪声影响时, z z z 1 z ∗ \frac{1}{z^*} z1相等,且都位于单位圆上;
  • 在有噪声影响时,所要寻找的M个零点就是单位圆内离单位圆最近的M个零点 z m ( m = 1 , ⋯   , M ) z_m(m=1, \cdots, M) zm(m=1,,M)

1.4 Root MUSIC算法的步骤

  1. 使用式 R = 1 K ∑ k = 1 K x k x k H \mathbf{R}=\frac{1}{K}\sum_{k=1}^{K}\mathbf{x_kx_k}^H R=K1k=1KxkxkH来估计相关矩阵 R \mathbf{R} R,再对其进行特征分解: R = Q Λ Q H \mathbf{R}=\mathbf{Q\Lambda Q}^H R=QΛQH;

  2. 分解矩阵 Q \mathbf{Q} Q得到矩阵 Q n \mathbf{Q_n} Qn它对应于矩阵 Q \mathbf{Q} Q中的 ( N − M ) (N-M) (NM)最小的特征向量。再得到矩阵 C = Q n Q n H \mathbf{C}=\mathbf{Q_nQ^H_n} C=QnQnH;

  3. 通过将矩阵 C \mathbf{C} C中的第 l l l个对角线元素相加,得到 C l C_l Cl;

  4. 找到多项式的 ( N − 1 ) (N-1) (N1)零点

  5. 处于单位圆内的 ( N − 1 ) (N-1) (N1)根中,找出 M M M个最靠近单位圆的零点 z m ( m = 1 , ⋯   , M ) z_m(m=1, \cdots, M) zm(m=1,,M)

  6. 得到DOA:
    在这里插入图片描述

注:Root-MUSIC算法只关心根的相位,而在幅度上的误差是没有关系的。

二、Smooth-MUSIC

从经典的MUSIC算法中,有一个矩阵 A \mathbf{A} A是对角阵,这是因为我们假设了入射信号都是不相关的。但现实中信号往往相互联系,因此在去除相关性的限制后,就要使用Smooth-MUSIC算法来解决问题。

信号间一旦有相关性,就会减小信号相关矩阵 R s \mathbf{R_s} Rs的秩,导致噪声特征值的数量比 ( N − M ) (N-M) (NM)更大

2.1 算法描述

  1. 将阵列的 N N N个元素分解到 L L L个重叠的子阵列中,每个子阵列有 P P P个元素。例如,0号子阵列包括0到(P-1)个阵列元素,1号子阵列包括1到P个阵列元素。因此 L = N − P + 1 L=N-P+1 L=NP+1
  2. 使用每个子阵列上的数据,产生 L L L个相关矩阵 R l ( l = 0 , ⋯   , L − 1 ) R_l(l=0, \cdots, L-1) Rl(l=0,,L1),每个相关矩阵的维度都是 P × P P \times P P×P
  3. MUSIC算法就使用的相关矩阵如下:
    R L = 1 L ∑ l = 0 L − 1 R l \mathbf{R_L}=\frac{1}{L} \sum_{l=0}^{L-1}\mathbf{R}_l RL=L1l=0L1Rl

这个方法能够检测最多高达 ( L − 1 ) (L-1) (L1)个数量信号的DOA,这是因为信号相关矩阵 R L \mathbf{R_L} RL的分量又变成满秩的了。

参考文献(仅写文章的标题,以做记录)

[1]. Direction of Arrival Estimation

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值