1

私は現在、右クリック、左クリック、ダブルクリックなどのマウスイベントが音声コマンドとして与えられる音声認識に関連するプロジェクトを行っています。したがって、最初のステップとして、上司はメル周波数ケプストラム係数を使用して各音声コマンドの特徴を抽出し、抽出した特徴を LIBSVM 形式を使用してテキスト ファイルに保存するように私に言いました。私は、インターネットでいくつかの参照を使用して MFCC を実装しました。しかし、これがどこで正しいのかわかりません。MFCCの出力についてはよくわかりません。「正しい」と言うと、私のプログラムはこのようなものを与えます

e.g -15.211534  8.230449    2.150475    4.000576    -0.037819   -1.083192   0.102314    0.232710    -0.813507   -0.349909   0.850858
  1. アウトプットの王様が MFCC から得られるべきものを誰か説明できますか
  2. MFCC から抽出された特徴を LIBSVM 形式で保存する方法。
  3. そして、私の問題に対する MFCC の正しい mathlab 実装を見つけるのを手伝ってくれる人がいます。
4

1 に答える 1

1

音声を分析しようとするとき、最新のソリューションのほとんどは、単一の MFCC 係数だけでなく、一連の MFCC 係数を使用します。一般に、MFCC の取得は次のようになります。

complexSpectrum = fft(signal)
powerSpectrum = abs(complexSpectrum) ** 2
filteredSpectrum = melFilterBank(powerSpectrum)
logSpectrum = log(filteredSpectrum)
dctSpectrum = dct(logSpectrum)

これを 30 ミリ秒のウィンドウで行い、10 ミリ秒のステップで信号に沿ってスライドします。

正確な実装については、C で記述された Spro (sfbcep util) または Sphinx で記述されたコードから学ぶことができます( Java慣れている場合)。

于 2013-06-09T07:31:09.980 に答える