信号+ノイズのパワースペクトルからノイズパワースペクトルを除去する時に, 推定されたノイズのパワースペクトルをどの程度除去するべきかの最適ゲイン を決定するノードである. その他,音声存在確率(6.3.8 節参照)を 出力する.ただし,このノードは音声存在確率を常に1として出力する. 分離音のパワースペクトルと推定ノイズのパワースペクトルの差分を出力する.
無し.
どんなときに使うのか
HRLE ノードを用いたノイズ推定時に用いる.
典型的な接続例
CalcSpecSubGain の接続例は図 6.41 の通り. 入力はGHDSS で分離後のパワースペクトルおよび HRLE で推定されたノイズのパワースペクトル. 出力は VOICE_PROB,GAINを SpectralGainFilter に接続する.
パラメータ名 |
型 |
デフォルト値 |
単位 |
説明 |
ALPHA |
1.0 |
スペクトル減算のゲイン |
||
BETA |
0.0 |
最適ゲインの最小値 |
||
SS_METHOD |
2 |
パワー・振幅スペクトル減算の選択 |
入力
: Map<int, ObjectRef> 型. 音源 ID と分離音のパワースペクトルの Vector<float> 型データのペア.
: Map<int, ObjectRef> 型. 音源 ID と推定ノイズのパワースペクトルの Vector<float> 型データのペア.
出力
: Map<int, ObjectRef> 型. 音源 ID と音声存在確率の Vector<float> 型データのペア.
: Map<int, ObjectRef> 型. 音源 ID と最適ゲインの Vector<float> 型データのペア.
: Map<int, ObjectRef> 型. 音源 ID と分離音から推定ノイズを差し引いたパワースペクトル Vector<float> 型データのペア.
パラメータ
: スペクトル減算のゲイン
: 最適ゲインの最小値
: パワースペクトル減算か振幅スペクトル減算かの選択
信号+ノイズのパワースペクトルからノイズパワースペクトルを除去する時に, 推定されたノイズのパワースペクトルをどの程度除去するべきかの最適ゲイン を決定するノードである.音声存在確率(6.3.8 節参照)も 出力する.ただし,このノードは音声存在確率を常に1として出力する.
分離音からノイズを差し引いたパワースペクトルを $Y_ n(k_ i)$ ,分離音のパワースペクトルを $X_ n(k_ i)$ ,推定されたノイズの パワースペクトルを $N_ n(k_ i)$ とすると, OUTPUT_POWER_SPEC からの出力は 次のように表される.
$\displaystyle Y_ n(k_ i) $ | $\displaystyle = $ | $\displaystyle X_ n(k_ i) - N_ n(k_ i) $ | (38) |
ただし,$n$ は,分析フレーム番号.$k_ i$ は,周波数インデクスを表す. 最適ゲイン $G_ n(k_ i)$ は,次のように表される.
$\displaystyle G_ n(k_ i) $ | $\displaystyle = $ | $\displaystyle \left\{ \begin{array}{cr} {\rm ALPHA} \frac{Y_ n(k_ i)}{X_ n(k_ i)}, & {if~ ~ } Y_ n(k_ i) > {\rm BETA}, \\ {\rm BETA}, & {if~ ~ otherwise}. \end{array} \right. $ | (39) |
単純に $Y_ n(k_ i)$ を用いて処理すると,パワーが負になりえる. 以後の処理で,パワースペクトルの取り扱いが困難になるので,予め, パワーが負にならないようにノイズのパワースペクトルを除去するための ゲインを計算するのが本ノードの狙いである.