2016-03-11 3 views
0

Привет я новичок в HTK и последовали «Учебное пособие Пример использования НТК» в HTK книги из http://htk.eng.cam.ac.uk/НТК: HCompV ReadString: Слишком длинная строка

я добрался до места, где я должен использовать " HCompV»(3.2.1 Шаг 6 - Создание Flat Start Monophones)

я есть "CD" в мой рабочий каталог и моя команда идет как

HCompV -C wav_config_HCompV -f 0.01 -m -S train.silmodel.scp -M hmm0 proto.silmodel 

(Dont ум странные имена ив сделал несколько попыток чтобы попасть сюда и переименовать новые версии файлов с новыми именами, чтобы сохранить старые)

Мои "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> 

Когда я бегу команда i получает ошибку

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, и в другом месте в сети я не нашел ничего, связанного с моей странной ошибкой. Есть ли у кого есть ключ?

У меня, кажется, нет словаря в этом комманде, чтобы он действительно складывался.

Ty для чтения так и для и наилучшими пожеланиями, Darkyere

+0

Файл "train.silmodel.scp" не выглядит правильным. Каждая строка должна иметь путь к WAV-файлу, за которым следует путь к соответствующему файлу .mfc. В ваших строках отображается wav-путь, которому предшествует каталог htk. Пространство в «HTK Book», вероятно, вызывает проблему синтаксического анализа. –

ответ

0

Эта ошибка вызвана отсутствующим новой строки в конце некоторых из входных файлов. Убедитесь, что каждый входной файл заканчивается символом новой строки. Для этого вы можете использовать любой хороший текстовый редактор.

+0

В 2 файлах была нужна новая строка, но она по-прежнему выдает ту же ошибку. Есть ли подсказки, почему это может быть? – Darkyere

+0

Вы можете поделиться своими файлами в архиве, если вам нужна более подробная помощь –

0

Файлы ввода до HCompV должны быть в формате mfc, а не wav. Преобразуйте все wavs в mfc через HCopy и измените файл train.silmodel.scp, указывающий пути файлов mfc.

Смежные вопросы