2015-12-18 20 views
0

如在几本书描述的,识别的孤立的单词的过程包括以下的:如何在识别过程中改变未识别语音信号的长度?

  1. 对于一组给定的信号(模板),确定特征向量用于 每个模板 - 矩阵M×N,其中M是特征(MFCC,ZCR,...)的编号 ,并且N是帧数。
  2. 用一些算法训练模板,如ANN,HMM,GMM,SVM。
  3. 通过训练模型识别测试信号。

由于语音信号具有不同的持续时间,所以它们的长度通过动态时间规整(DTW)技术进行对齐,因此N对于所有模板都是相同的。它可以在训练期间完成。

我的问题是:如何改变测试信号的长度?我无法使用DTW,因为我不知道它属于哪个类。我是否应该使用“时间延展”算法,保持音调,如果我应该这样做,这将如何影响识别精度?

回答

0

通过提取N帧间距较近或较远的特征,可以为“时间拉伸”信号获得一个等效的MxN特征向量。

+0

好吧,我会试试看。我想,不同信号的窗口大小的差异并不重要,因为人类语音在大约20-50毫秒的时间间隔内保留了它的频率特性。 – Zagavarr

+0

与DTW相比,这将是不理想的匹配,因为它假定样本均匀拉伸。 –

0

您不需要更改长度以进行匹配。您从参考样本和测试样本中提取特征,它们都有不同的帧数。然后,在每个参考和测试之间应用DTW,从而对齐它们。作为DTW运行的结果,您可以获得测试样本与每个参考文献之间的匹配分数。你做的是你拉伸不均匀的每个参考样本,以配合测试样本。由于您将每个参考文献与单个测试进行比较,因此可以使用DTW分数进行比较。所以你选择最好的分数作为结果的参考。

有关DTW语音识别的详细信息和想法,请查看presentation

如果你想更接近DTW语音识别的想法,你可以阅读一本书Fundamentals of Speech Recognition 1st Edition by Lawrence Rabiner, Biing-Hwang Juang