【发布时间】:2016-03-11 13:01:22
【问题描述】:
您好,我是 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
我觉得这很奇怪。因为在像这样的页面上 understanding htk error messages
我最终发现不是“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 有什么关系,而且我在网上没有其他地方发现任何与我的奇怪错误有关的东西。 有没有人有线索?
我似乎在这个命令中没有任何字典,所以它不会加起来。
感谢您的阅读,并致以最诚挚的问候, 黑夜
【问题讨论】:
-
文件“train.silmodel.scp”看起来不正确。每一行都应该有一个 .wav 文件的路径,然后是对应的 .mfc 文件的路径。您的行显示了一个 wav 路径,前面有一个 htk 目录。 “HTK Book”中的空格可能导致解析问题。
标签: linux speech-recognition raspbian raspberry-pi2 htk