麦克风阵列算法有两大类,一类是波束形成算法,另一类是盲源分离算法,两者互有优劣,先记录波束形成算法的笔记。系列博客先介绍两种常见麦克风阵列结构,然后分别介绍固定波束形成(fixed beamforming, data-independent) 和自适应波束形成(adaptive beamforming, data-dependent)。
本篇博客只介绍自适应波束形成,其特点和应用场景。
1. MVDR
MVDR系数公式如下所示, 其中
Φ
v
\Phi_v
Φv表示噪声功率谱密度。估计MVDR beamformer 系数的任务可以转化为估计带噪功率谱的mask系数。可以使用各种统计模型,比如CGMM来估计mask系数。也可以使用神经网络的方法来估计mask。如果噪声功率谱是白噪声,则MVDR系数退化为DSB,如果噪声功率谱是扩散场噪声,则MVDR系数退化为SD。
h
M
V
D
R
(
m
,
k
)
=
Φ
v
−
1
(
m
,
k
)
d
(
k
)
d
H
(
k
)
Φ
v
−
1
(
m
,
k
)
d
(
k
)
h_{MVDR}(m,k) = \frac{\Phi^{-1}_v(m,k)d(k)}{d^H(k)\Phi^{-1}_v(m,k)d(k)}
hMVDR(m,k)=dH(k)Φv−1(m,k)d(k)Φv−1(m,k)d(k)