如何在Matlab中处理不同长度的语音文件

时间:2014-02-03 12:54:35

标签: matlab speech

我使用TIDigits数据库进行语音识别,该数据库包含来自不同发言者(多个文件)的从零到九的数字。

我需要从每个帧中提取39个MFCC特征,并将它们组合在一个矩阵(特征矩阵)中进行分类。我为每个文件做了框架和窗口化,这为每个文件生成了不等数量的帧。

由于语音文件的长度不同,我遇到的问题是帧数不同。

如何在不使用统计公式的情况下处理此问题?

2 个答案:

答案 0 :(得分:0)

我在处理音频时最近也遇到过这个问题。我所做的基本上是通过修剪长MFCC功能来匹配较短的功能。这对我来说很有用。

答案 1 :(得分:0)

假设您想要将不同长度的矢量存储在一起,您有几个逻辑选项:

  1. 修剪向量,结果将是39 by smallestVectorLength矩阵
  2. 填充向量,结果将是39 by maximumVectorLength矩阵
  3. 使用单元格数组,结果将是39个向量及其对应的长度