6.3.3 CalcSpecSubGain

6.3.3.1 ノードの概要

信号+ノイズのパワースペクトルからノイズパワースペクトルを除去する時に, 推定されたノイズのパワースペクトルをどの程度除去するべきかの最適ゲイン を決定するノードである. その他,音声存在確率(6.3.11 節参照)を 出力する.ただし,このノードは音声存在確率を常に1として出力する. 分離音のパワースペクトルと推定ノイズのパワースペクトルの差分を出力する.

6.3.3.2 必要なファイル

無し.

6.3.3.3 使用方法

どんなときに使うのか

HRLE ノードを用いたノイズ推定時に用いる.

典型的な接続例

CalcSpecSubGain の接続例は図 6.53 の通り. 入力はGHDSS で分離後のパワースペクトルおよび HRLE で推定されたノイズのパワースペクトル. 出力は VOICE_PROB,GAINを SpectralGainFilter に接続する.

\includegraphics[width=.95\textwidth ]{fig/modules/CalcSpecSubGain}
Figure 6.53: CalcSpecSubGain の接続例

6.3.3.4 ノードの入出力とプロパティ

Table 6.45: CalcSpecSubGain のパラメータ表

パラメータ名

デフォルト値

単位

説明

ALPHA

float 

1.0

 

スペクトル減算のゲイン

BETA

float 

0.0

 

最適ゲインの最小値

SS_METHOD

int 

2

 

パワー・振幅スペクトル減算の選択

入力

INPUT_POWER_SPEC

: Map<int, ObjectRef> 型. 音源 ID と分離音のパワースペクトルの Vector<float> 型データのペア.

NOISE_SPEC

: Map<int, ObjectRef> 型. 音源 ID と推定ノイズのパワースペクトルの Vector<float> 型データのペア.

出力

VOICE_PROB

: Map<int, ObjectRef> 型. 音源 ID と音声存在確率の Vector<float> 型データのペア.

GAIN

: Map<int, ObjectRef> 型. 音源 ID と最適ゲインの Vector<float> 型データのペア.

OUTPUT_POWER_SPEC

: Map<int, ObjectRef> 型. 音源 ID と分離音から推定ノイズを差し引いたパワースペクトル Vector<float> 型データのペア.

パラメータ

ALPHA

: スペクトル減算のゲイン

BETA

: 最適ゲインの最小値

SS_METHOD

: パワースペクトル減算か振幅スペクトル減算かの選択

6.3.3.5 ノードの詳細

信号+ノイズのパワースペクトルからノイズパワースペクトルを除去する時に, 推定されたノイズのパワースペクトルをどの程度除去するべきかの最適ゲイン を決定するノードである.音声存在確率(6.3.11 節参照)も 出力する.ただし,このノードは音声存在確率を常に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) $   (46)

ただし,$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. $   (47)

単純に $Y_ n(k_ i)$ を用いて処理すると,パワーが負になりえる. 以後の処理で,パワースペクトルの取り扱いが困難になるので,予め, パワーが負にならないようにノイズのパワースペクトルを除去するための ゲインを計算するのが本ノードの狙いである.