2013-05-26 54 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比较熟悉的话。