使用CNN在长格式音频上提取关键词以进行特征提取

时间:2019-04-26 20:55:01

标签: python keras speech-recognition librosa

我建立了一个简单的CNN单词检测器,当使用1秒的.wav作为输入时,它能够准确地预测给定的单词。按照标准,我正在使用音频文件的MFCC作为CNN的输入。

但是,我的目标是能够将其应用于更长的音频文件并说出多个单词,并使模型能够预测是否以及何时说出给定单词。我一直在网上搜索最好的方法,但是似乎碰壁了,如果可以通过google轻松找到答案,我真的道歉。

我的第一个想法是将音频文件切成1秒长的多个彼此相交的窗口-

a busy cat

,然后将每个窗口转换为MFCC,并将它们用作模型预测的输入。

我的第二个想法是在尝试隔离每个单词时使用开始检测,如果单词小于1秒则添加填充,然后将其作为模型预测的输入。

我要离开这里吗?任何参考或建议将不胜感激。谢谢。

1 个答案:

答案 0 :(得分:1)

将音频切入分析窗口是一种方法。通常使用一些重叠。可以先计算MFCC功能,然后使用整数帧进行分割,以使您最接近所需的窗口长度(1s)。

有关示例代码,请参见How to use a context window to segment a whole log Mel-spectrogram (ensuring the same number of segments for all the audios)?