Problem
マイクロホンで複数の音源を収録して,個々の音源に分離したい。
Solution
音源分離ノード GHDSS を使うことで,マイクロホンから入力された混合音 を分離できる. なお,GHDSS は,音声波形と音源定位結果を入力にとるので, 音源分離の前に音源定位を行う必要がある.
GHDSS による音源分離には、音源の位置から各マイクロホンまでの伝達関数が必要である。 伝達関数の計算方法には、(1) TSP (time stretched pulse) 信号で実際に測定す る方法と、(2) マイクロホンの位置情報からシミュレーションで計算する方法が ある。
TSP 信号で測定する方法
マイクロホンからある程度離れた円 (たとえば 1-2mぐらい) を描き、そ の円周上からある程度の角度 (たとえば5度や10度) ごとにスピーカから TSP信号を流し、収録する。それらと harktool を使って、伝達関数を計 算する。 詳しくは インパルス応答を計測したい を参照。
シミュレーションで計算する方法
インパルス応答を計測するかわりにマイクロホン座標 (MICARY-LocationFile)を作成する。 マイクロホン座標ファイルの作成方法は、HARK ドキュメント の harktool の 使い方と, マイクロホン配置だけから音源分離したいを参照.
伝達関数が準備できたら、GHDSS のパラメータを適切に設定する。 詳しくは はじめての音源分離を見よう. 音源分離した音を保存して聞きたいなら, 分離音をファイルに保存したいを見よう.
音源分離の性能を向上させるには, 音源分離のパラメータをチューニングしたい を見よう. また,音源分離を雑音がある環境下で使うときは, ファンノイズなどの定常ノイズのせいで音 源分離がうまくいかないや, 分離音に入っ ている雑音を後処理で減らしたい.を見ておくとよい. 移動する音源を分離したいときは,音源や ロボットが移動する状況で分離したい が参考になるだろう.
Discussion
GHDSS は高次無相関化と音源定位結果に基づく幾何的制約を用いて 音源分離を実現する。 詳細は HARK document の GHDSS の項目を参照
See Also
HARK ドキュメント の GHDSS に手法の詳細が解説されている。 また、HARK チュートリアル資料や音源分離のサンプルも参考になるだろう。