14.5.4 MSLS+Power

14.5.4 に実行例を示す. 実行後,MFBANK14_0.spec というファイルが生成される. このファイルは,リトルエンディアン,32 ビット浮動小数点数形式で表された 14 次元ベクトル列を格納している. うまく特徴抽出できないときは, ../data ディレクトリに f101b001.wav ファイルがあるかチェックしよう.

> ./demo.sh 3
 UINodeRepository::Scan()
 Scanning def /usr/lib/flowdesigner/toolbox
 done loading def files
 loading XML document from memory
 done!
 Building network : MAIN
Figure 14.22: 実行例

本サンプルに含まれるモジュールは,12 個である. MAIN (subnet) に 3 個 MAIN_LOOP (iterator) に 9 個のモジュールがある. MAIN (subnet) と MAIN_LOOP (iterator) を 図 14.22,14.23 に示す. 処理の概要は,AudioStreamFromWave モジュールで取り込んだ音声波形を MSLSExtraction で音響特徴量を計算し,SaveFeatures でファイルに書き出す 単純なネットワーク構成である. MSLSExtraction は, MSLS の計算に メルフィルタバンクの出力とパワースペクトルを必要とするため, 取り込んだ音声波形は, MultiFFT によって分析され, MatrixToMap と PowerCalcForMap によってデータ型を変換した後に MelFilterBank により メルフィルタバンクの出力を求める処理が入っている. ここでは,MSLSExtraction の USE_POWER プロパティを trueにして, パワー項も同時に出力している.MSLSExtraction は,MSLS 係数の他に $\delta $ 係数の格納領域をリザーブし,ベクトルを特徴量として出力する ($\delta $ 係数の格納領域には 0 が入れられている). USE_POWER プロパティを trueにしているので,$\delta $ 係数は, $\delta $ MSLS とデルタパワー項の格納領域が確保される.従って,MSLSExtraction の FBANK_COUNT プロパティで指定した値+1 次元の2 倍の次元数のベクトルを 特徴量として出力する. 必要な MSLS 係数とパワー項以外は, FeatureRemover で削除している. SaveFeatures は,入力 FEATURE を保存する.入力 SOURCES には ConstantLocalization で生成した正面方向の定位結果を与える.

\includegraphics{fig/recipes/demo-FeatureExtraction3-MAIN}
Figure 14.23: MAIN (subnet)
\includegraphics[width=\linewidth ]{fig/recipes/demo-FeatureExtraction3-MAIN_LOOP}
Figure 14.24: MAIN_LOOP (iterator)

14.16 に主要なパラメータを示す.

Table 14.17: パラメータ表

ノード名

パラメータ名

設定値

MAIN_LOOP

LENGTH

subnet_param 

int :ARG2

 

ADVANCE

subnet_param 

int :ARG3

 

SAMPLING_RATE

subnet_param 

int :ARG4

 

FBANK_COUNT

subnet_param 

int :ARG5

 

DOWHILE

bool 

(empty)

MSLSExtraction 

FBANK_COUNT

subnet_param 

FBANK_COUNT

 

NORMALIZE_MODE

string 

Cepstral

 

USE_POWER

bool 

true