阵列信号处理笔记(1):预备知识、阵列流形、波数-频率响应

阵列信号处理笔记(1)

预备知识

球坐标系的示意

  如图所示的球坐标系中,任意一阵元的位置可以用 ( r , ϕ , θ ) (r,\phi,\theta) (r,ϕ,θ)唯一表示,其直角系下的坐标 p = ( x , y , z ) T \mathbf{p}=(x,y,z)^T p=(x,y,z)T的关系可以通过以下三个方程建立
{ x = r sin ⁡ θ cos ⁡ ϕ y = r sin ⁡ θ sin ⁡ ϕ z = r cos ⁡ θ (1) \begin{aligned} \left\{\begin{aligned} x&=r \sin \theta \cos \phi\\y&=r \sin \theta \sin \phi\\z&=r \cos \theta \end{aligned}\right. \end{aligned}\tag{1} xyz=rsinθcosϕ=rsinθsinϕ=rcosθ(1)

  实际上,一个阵列中往往包含若干个阵元,其位置按照某一特定规则布置,例如沿直线均匀排布的均匀线性阵(ULA),沿着球面排布的阵列,甚至以一种类似银河系星图案排布的多旋臂对数螺旋。无论是何种阵列,其对一特定外信号场 f s r c ( t ) f_{src}(t) fsrc(t)的响应总能使用矢量 f ( t , p ) \mathbf{f}(t,\mathbf{p}) f(t,p)表示,也就是各阵元在空域上对外信号场的采样
f ( t , p ) = ( f ( t , p 0 ) f ( t , p 1 ) ⋮ f ( t , p N − 1 ) ) (2) \mathbf{f}(t,\mathbf{p})=\left(\begin{array}{c} f(t,\mathbf{p_0})\\f(t,\mathbf{p_1})\\ \vdots \\f(t,\mathbf{p_{N-1}})\end{array} \right)\tag{2} f(t,p)= f(t,p0)f(t,p1)f(t,pN1) (2)

从延时到阵列流形矢量

阵元、阵列于平面波

  假设外场信号 f s r c ( t ) f_{src}(t) fsrc(t)为一平面波,即各阵元所接收的信号之间没有本质的不同,仅存在时延的差异,那么显然单个阵元的输出应该为 f s r c ( t ) f_{src}(t) fsrc(t)与带有不同延时 τ \tau τ的冲激信号相卷积。现在令
v ( t ) = ( δ ( t − τ 0 ) δ ( t − τ 1 ) ⋮ δ ( t − τ N − 1 ) ) (3) \mathbf{v}(t)=\left(\begin{array}{c} \delta(t-\tau_0)\\\delta(t-\tau_1)\\\vdots\\\delta(t-\tau_{N-1}) \end{array}\right)\tag{3} v(t)= δ(tτ0)δ(tτ1)δ(tτN1) (3)
为了计算 τ \tau τ的大小,现零波达矢量 a \mathbf{a} a(波面的法向量,方向指向阵元)为
a = ( a x a y a z ) = − ( sin ⁡ θ cos ⁡ ϕ sin ⁡ θ sin ⁡ ϕ cos ⁡ θ ) (4) \mathbf{a}=\left(\begin{array}{c} a_x\\a_y\\a_z \end{array}\right)=-\left(\begin{array}{c} \sin \theta \cos \phi \\\sin \theta \sin \phi \\\cos \theta \end{array}\right)\tag{4} a= axayaz = sinθcosϕsinθsinϕcosθ (4)
这里添加负号的原因是,我们要保证计算出来时延能正确反映阵元相对于位置情况,例如某一阵元A比阵元B晚接收到信号,那么B应该在A的后面而不是前面。根据幼儿园学习的“点与平面位置距离公式”,设某一时刻波面表达式为 a x x + a y y + a z z + b = 0 a_xx+a_yy+a_zz+b=0 axx+ayy+azz+b=0,那么坐标为 p n \mathbf{p_n} pn的阵元与该时刻波面的距离 d d d
d n = a x p x n + a y p y n + a z p z n + b a x 2 + a y 2 + a z 2 = a T p n + b (5) d_n=\frac{a_xp_{x_n}+a_yp_{y_n}+a_zp_{z_n}+b}{\sqrt{a_x^2+a_y^2+a_z^2}}=\mathbf{a}^T \mathbf{p_n}+b\tag{5} dn=ax2+ay2+az2 axpxn+aypyn+azpzn+b=aTpn+b(5)
注意 ∣ a ∣ = 1 |a|=1 a=1。实际上我们只关心阵元之间相对距离而不是精确距离,因为波面是可以任取的,故忽略最后的 b b b,从而
τ n = a T p n c (6) \tau_n=\frac{\mathbf{a}^T \mathbf{p_n}}{c}\tag{6} τn=caTpn(6)
其中 c c c为波在介质中的传播速度。现在定义一个新的量波数 k \mathbf{k} k
k = w c a = 2 π λ a (7) \mathbf{k}=\frac{w}{c}\mathbf{a}=\frac{2 \pi}{\lambda}\mathbf{a}\tag{7} k=cwa=λ2πa(7)
其表示在一个波长范围内的角度变化率,也就相当于波的空域角频率。需要注意的是,这里波数是一个矢量而非标量,因为在波数中隐含了波的传播方向(波矢,因为空间是三维的),也就是波面的法线方向。波数是空域的角频率,这个概念可以类比时域角频率 w w w和周期,如图所示。

系统

  由于
f ( t ) = v ( t ) ∗ f s r c ( t ) (8) \mathbf{f}(t)=\mathbf{v}(t)*f_{src}(t)\tag{8} f(t)=v(t)fsrc(t)(8)
(这里省去了变量 p \mathbf{p} p,其实应该是 f ( t , p ) \mathbf{f}(t,\mathbf{p}) f(t,p))对其两边同时做傅里叶变换可得
F ( w ) = V ( w ) F s r c ( w ) (9) \mathbf{F}(w)=V(w)\mathbf{F}_{src}(w)\tag{9} F(w)=V(w)Fsrc(w)(9)
其中
V ( w ) = ( e − j w τ 0 e − j w τ 1 ⋮ e − j w τ N − 1 ) (10) \mathbf{V}(w)=\left(\begin{array}{c} e^{-jw \tau_0}\\e^{-jw \tau_1}\\\vdots\\e^{-jw \tau_{N-1}} \end{array}\right)\tag{10} V(w)= ejwτ0ejwτ1ejwτN1 (10)
令波数为自变量,将 V \mathbf{V} V的变量做个替换,记替换后为 v k ( k ) \mathbf{v}_\mathbf{k}(\mathbf{k}) vk(k),也就是
v ( k ) = ( e − j k T p 0 e − j k T p 1 ⋮ e − j k T p N − 1 ) (11) \mathbf{v}(\mathbf{k})=\left(\begin{array}{c} e^{-j\mathbf{k}^T \mathbf{p}_0}\\e^{-j\mathbf{k}^T \mathbf{p}_1}\\\vdots\\e^{-j\mathbf{k}^T \mathbf{p}_{N-1}} \end{array}\right)\tag{11} v(k)= ejkTp0ejkTp1ejkTpN1 (11)
v k ( k ) \mathbf{v}_\mathbf{k}(\mathbf{k}) vk(k)阵列流形,其中下标 k \mathbf{k} k代表所定义的阵列流形参数属于 k \mathbf{k} k域(波数域)。

频率波数响应

  如果将每一个阵元之前插入一个线性时不变系统用于对阵元接收信号进行独立的处理,再将其输出累加,即
y ( t ) = ∑ n = 0 N − 1 ∫ − ∞ ∞ f n ( t , p n ) h n ( t − τ ) d τ (12) y(t)=\sum _{n=0} ^{N-1}\int _{-\infty} ^{\infty}f_n(t,\mathbf{p_n})h_n(t-\tau) \mathrm{d}\tau\tag{12} y(t)=n=0N1fn(t,pn)hn(tτ)dτ(12)
系统

  实际上,若交换求和与积分次序,不难发现
y ( t ) = ∫ − ∞ ∞ h ( t − τ ) T f ( t , p n ) d τ (13) y(t)=\int _{-\infty} ^{\infty}\mathbf{h}(t-\tau)^T\mathbf{f}(t,\mathbf{p}_n) \mathrm{d}\tau\tag{13} y(t)=h(tτ)Tf(t,pn)dτ(13)

  对两边同时做傅里叶变换可得
Y ( w ) = H ( w ) T F ( w ) = H ( w ) T v k ( k ) F s r c ( w ) (14) Y(w)=\mathbf{H}(w)^T\mathbf{F}(w)=\mathbf{H}(w)^T\mathbf{v}_\mathbf{k}(\mathbf{k})\mathbf{F}_{src}(w)\tag{14} Y(w)=H(w)TF(w)=H(w)Tvk(k)Fsrc(w)(14)

  令
γ ( w , k ) = H ( w ) T v k ( k ) \mathbf{\gamma}(w,\mathbf{k})=\mathbf{H}(w)^T\mathbf{v}_\mathbf{k}(\mathbf{k}) γ(w,k)=H(w)Tvk(k)
  称 γ ( w , k ) \mathbf{\gamma}(w,\mathbf{k}) γ(w,k)为阵列的频率-波数响应

   2023年06月04日 于绍兴

  • 9
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
1D-MUSIC算法是一种经典的线性阵列信号处理算法,它可以用于估计信号源的方向角。下面是1D-MUSIC算法的基本原理: 1. 线性阵列模型 假设一个线性阵列有M个均匀间隔的传感器,接收到的信号可以表示为:$x(n)=s(n)+v(n)$,其中,$s(n)$为信号源的信号,$v(n)$为噪声信号。 2. 空间谱估计 通过传感器接收到的信号,可以得到数据矩阵$X$,然后可以计算出信号的空间相关矩阵$R_{xx}$,其定义为:$R_{xx}=E\{XX^H\}$,其中,$E$表示期望运算,$X$表示数据矩阵,$H$表示共轭转置。通过对$R_{xx}$进行特征值分解,可以得到其特征向量矩阵$E$,然后通过对特征向量矩阵$E$进行截取,得到一个与信号源数量相等的子矩阵$E_s$。 3. 估计信号源方向角 对于一个给定的方向角$\theta$,可以计算出该方向上的估计空间谱$P(\theta)$,其定义为:$P(\theta)=\frac{1}{a^H(\theta)E_sE_s^Ha(\theta)}$,其中,$a(\theta)$为阵列流形函数,表示一个方向角对应的阵列响应。通过对所有可能的方向角进行估计,可以得到信号源的方向角估计。 4. 空间谱峰值搜索 通过搜索估计的信号源方向角,可以找到空间谱中的峰值,峰值的位置即为信号源的方向角。 综上所述,1D-MUSIC算法是一种通过空间谱估计来估计信号源方向角的算法,其原理是基于线性阵列信号处理理论,可以用于无源声源定位等应用场景。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大困困瓜

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值