嗨,我是 HTK 的新手,并遵循了http://htk.eng.cam.ac.uk/的 HTK 书中的“使用 HTK 的教程示例”
我已经到了必须使用“HCompV”的地步(3.2.1 第 6 步 - 创建平面开始单音器)
我有“cd”到我的工作目录,我的命令如下
HCompV -C wav_config_HCompV -f 0.01 -m -S train.silmodel.scp -M hmm0 proto.silmodel
(不要介意奇怪的名字,我尝试了几次到达这里并用新名称重命名新文件版本以保留旧名称)
我的“wav_config_HCompV”包含
TARGETKIND = MFCC_0_D_A
TARGETRATE = 100000.0
SAVECOMPRESSED = T
SAVEWITHCRC = T
WINDOWSIZE = 250000.0
USEHAMMING = T
PREEMCOEF = 0.97
NUMCHANS = 26
CEPLIFTER = 22
NUMCEPS = 12
我的“train.silmodel.scp”包含
"/home/pi/HTK/htk.eng.cam.ac.uk/HTK Book/train/wav-2/S0001.wav"
"/home/pi/HTK/htk.eng.cam.ac.uk/HTK Book/train/wav-2/S0002.wav"
"/home/pi/HTK/htk.eng.cam.ac.uk/HTK Book/train/wav-2/S0003.wav"
"/home/pi/HTK/htk.eng.cam.ac.uk/HTK Book/train/wav-2/S0004.wav"
"/home/pi/HTK/htk.eng.cam.ac.uk/HTK Book/train/wav-2/S0005.wav"
"/home/pi/HTK/htk.eng.cam.ac.uk/HTK Book/train/wav-2/S0006.wav"
"/home/pi/HTK/htk.eng.cam.ac.uk/HTK Book/train/wav-2/S0007.wav"
etc...
我的“proto.silmodel”包含
~o <VecSize> 39 <MFCC_0_D_A>
~h "proto
<BeginHMM>
<NumStates> 5
<State> 2
<Mean> 39
0.0 0.0 0.0 ...
<Variance> 39
1.0 1.0 1.0 ...
<State> 3
<Mean> 39
0.0 0.0 0.0 ...
<Variance> 39
1.0 1.0 1.0 ...
<State> 4
<Mean> 39
0.0 0.0 0.0 ...
<Variance> 39
1.0 1.0 1.0 ...
<TransP> 5
0.0 1.0 0.0 0.0 0.0
0.0 0.6 0.4 0.0 0.0
0.0 0.0 0.6 0.4 0.0
0.0 0.0 0.0 0.7 0.3
0.0 0.0 0.0 0.0 0.0
<EndHMM>
当我运行命令时出现错误
ERROR [+5013] ReadString: String too long
FATAL ERROR - Terminating program HCompV
我觉得这很奇怪。因为在 理解 htk 错误信息之类的页面上
我最终发现不在“HCompV”错误消息中,而是在“HLed”错误中说
ERROR [+5013] ReadString: String too long
FATAL ERROR - Terminating program HLEd
解决方案应该是
Make changes to the pronunciation dictionary:
Replace all multiple spaces with single space;
Replace all tabs with single space;
Put a '\' before every double quote ("); %"
Put a '\' before any dictionary entry beginning with single quote (')
我看不出这个错误代码与 HCompV 有什么关系,而且我在网上没有其他地方发现任何与我的奇怪错误有关的东西。有没有人有线索?
我似乎在这个命令中没有任何字典,所以它不加起来。
Ty 阅读,并致以最诚挚的问候,Darkyere