2013-05-26 66 views
1

我目前正在進行一個與語音識別有關的項目,鼠標事件如右鍵單擊,左鍵單擊,雙擊等等將作爲語音命令給出。因此,作爲我的主管告訴我使用Mel頻率倒譜系數提取每個語音命令的特徵並將這些提取的特徵以LIBSVM格式存儲在文本文件中的第一步。我在互聯網上使用了一些參考文獻實施了MFCC。但我不確定這是否正確。我不確定MFCC的輸出。我計劃讓這樣的事情,當我說「右」Mel頻率倒譜系數 - 語音特徵提取

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的正確的數學實現對我的問題。

回答

0

當試圖分析語音時,大多數當代解決方案使用一系列MFCC係數,而不僅僅是一個。在一般情況下,得到MFCC是這樣的:

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

,你這樣做對一個30毫秒的窗口,沿着以10ms步中的信號滑動。

至於準確的實現,你可以從C(sfbcep util)或Sphinx中編寫的代碼Spro中學習,如果你覺得Java比較熟悉的話。