音響信号処理としてのアレービームフォーミング技術について勉強するために、まずは手法を一覧化することで頭の中を整理する。
アレー信号処理は軍事目的やレーダ技術への応用に向けた研究が古くから行われていたこともあり、アダプティブアレーアンテナを用いた無線通信技術との関わりが深い。
ビームフォーミング手法一覧表
手法名 | 参考記事 |
---|---|
遅延和法(DSBF) | こちら |
最小分散法(MVDR) | こちら |
最尤法 | ↑ |
線形拘束付最小分散法(LCMV) | ↑ |
一般化サイドローブキャンセラ(GSC) | - |
最大SNR法 | - |
マルチチャネルウィナーフィルタ(MWF) | - |
CMA(Constant Modulus Algorithm) | - |
SCORE(Spectral coherence restoral) | - |
CMAは無線通信におけるFM変調信号の振幅が一定であるという条件を利用した手法、SCOREは変調方式や変調速度により信号の周期定常性を利用した手法となるため、音響信号処理の分野ではあまり馴染みがないかもしれない。
ビームフォーミング概略
一般的なビームフォーミングの概略図を以下に示す。
アダプティブビームフォーミングは、アレーアンテナやマイクホンアレイで受信した信号$x(t)$と出力$y(t)$、外部から与えらえる規範信号$d^*(t)$に応じて重み$w$を決定するフィルタとみることができる。
各マイクロホンで受信した信号は、それぞれ重み係数を掛けられ、その後合成された出力となる。
時間領域$t$、あるいは短時間フーリエ変換した周波数領域(フレーム$l$・周波数$k$)どちらの信号でも取り扱うことができる。周波数領域の場合、重み係数は一般的に複素数となるため、複素共役転置を取って出力は以下の式で表される。
y(l,k) = w(k)^Hx(l,k)
ステアリングベクトル
ビームフォーミングでは、音源信号とアレーアンテナやマイクホンアレイまでの伝達特性を表すステアリングベクトル$a(k)$があらかじめ計算できるとする場合が多い。ステアリングベクトルは、減衰$r_i$と遅延$\tau_i$を用いてモデル化することができる。
ここで、受信信号$x(k)$を音源信号$s(l,k)$とステアリングベクトル$a(k)$、雑音$n(l,k)$とすると以下の式で表現される。
\begin{align}
x(k) &= s(l,k)a(k)+n(l,k) \\
&= c(l,k)+n(l,k)
\end{align}
音源分離処理として$s(l,k)$を推定するのではなく$c(l,k)$を推定することにすれば、以下のように捉えることでステアリングベクトルの大きさは特に重要な情報ではなくなる。(大きさの不定性[1])
x(k) = \Bigl(s(l,k)\alpha\Bigr)\Bigl(\frac{a(k)}{\alpha}\Bigr)+n(l,k)
実際のステアリングベクトルに対し$1/\alpha$倍されたステアリングベクトルで$s(l,k)$を推定しようとした場合、実際の音源信号の$\alpha$倍された信号として推定することになるが、マイクロホン受信信号$c(l,k)$としては変わらない。
よって、ステアリングベクトルの大きさの計算例としては、ベクトルの$L_2$ノルムが1となるような値とする場合が多い。この時、マイクロホン数$M$とすると以下のようになる。
r_i = \frac{1}{\sqrt{M}}
参考書籍
[1]戸上真人.「Pythonで学ぶ音源分離」インプレス.2020年