【语音技术】利用HTK提取声音特征:MFCC向量

语音技术作业,查了好多资料做出来了,下面只讲具体实现过程,至于原理有时间单开一篇。

1、创建config配置文件

为了整齐,我们单独建一个文件夹。在文件夹My_HTK下创建config文件,这是一个配置文件config,指定所有转化需要的参数。

# Coding parameters
SOURCEKIND = WAVEFORM
SOURCEFORMAT = WAV
SOURCERATE = 625.0
TARGETKIND = MFCC_E_D_A_Z
TARGETRATE = 100000.0
-窗间隔为10ms
SAVECOMPRESSED = F
SAVEWITHCRC = T
WINDOWSIZE = 250000.0
-窗长为25ms,注:HTK中时间单位为100ns
USEHAMMING = T
-使用hamming window
PREEMCOEF = 0.97
-预加重系数0.97
NUMCHANS = 26
-在MEL刻度下等分成26个频带
CEPLIFTER = 22
NUMCEPS = 12
ENORMALISE = T

将以上代码拷贝到txt中,保存,然后删除扩展名,命名为config。
【语音技术】利用HTK提取声音特征:MFCC向量

2、创建hcopy.scp源文件的列表

创建一个txt,命名为hcopy.scp
这个hcopy.scp是源文件的列表,这个列表包含源文件(你想处理的音频文件)和相应的输出文件(MFCC向量)。

格式:
源文件地址\源文件名称 输出文件地址\输出文件名称
按照以上格式编写,例如:
A\A_8.wav mfcc\A_8.mfc

为了直观,给大家看下我的文件夹层次:
【A文件夹里装的是待处理音频,mfcc是空文件夹,等着装输出的MFCC向量文件】
【语音技术】利用HTK提取声音特征:MFCC向量
【语音技术】利用HTK提取声音特征:MFCC向量

3、运行HCopy命令

打开cmd,进入目录D:\My_HTK>,运行命令:

HCopy -T 1 -C config -S hcopy.scp

【语音技术】利用HTK提取声音特征:MFCC向量
这样子就好了,再点开mfcc文件夹就可以找到生成的文件了
【语音技术】利用HTK提取声音特征:MFCC向量

4、利用HList查看某个文件的MFCC特征

如果你想查看生成的mfc文件,点开会发现是乱码,这时候需要用HList来查看。
使用命令:

HList mfcc\A_8.mfc

【语音技术】利用HTK提取声音特征:MFCC向量
就可以查看生成的MFCC向量了

如果你想把这些打印在一个txt中
可以用命令:

HList -h  mfcc\A_8.mfc > A_8.mfc.txt

【语音技术】利用HTK提取声音特征:MFCC向量
再打开文件夹就可以看到了
【语音技术】利用HTK提取声音特征:MFCC向量
这样就可以生成一个txt了