Как настроить пороги ключевых фраз с pocketsphinx-python

Мне нужно разработать программное обеспечение для распознавания речи, поэтому я использую Pocketsphinx с Python. Я хочу распознать всего несколько слов, поэтому я использую список ключевых фраз с пороговыми значениями, чтобы отклонить слова, не входящие в грамматику. У меня есть этот код до сих пор:

#!/usr/bin/env python

import os
from pocketsphinx import LiveSpeech, get_model_path

model_path = get_model_path()



speech = LiveSpeech(
    verbose=False,
    sampling_rate=16000,
    buffer_size=2048,
    no_search=False,
    full_utt=False,
    lm=False,
    hmm= os.path.join(model_path,'en-us'),
    #lm= '/home/paulo/PycharmProjects/VoiceRecognition/Data/TAR4858/4858.lm',
    dic = '/home/paulo/PycharmProjects/VoiceRecognition/Data/TAR4858/4858.dic',
    kws = '/home/paulo/PycharmProjects/VoiceRecognition/Data/TAR4858/keyphrase.list'
)

for phrase in speech:
    frase = str(phrase)
    print frase

Это мой словарь:

BROWSER B R AW Z ER
COMPUTER    K AH M P Y UW T ER
HELLO   HH AH L OW
HELLO(2)    HH EH L OW
MUSIC   M Y UW Z IH K
OFF AO F
ON  AA N
ON(2)   AO N
OPEN    OW P AH N
TURN    T ER N

Вот мой keyphrase.list:

OPEN BROWSER /1e-1/
TURN ON MUSIC /1e-20/
TURN OFF MUSIC /1e-20/
TURN OFF COMPUTER /1e-25/
HELLO COMPUTER /1e-25/

Это работает, но я видел на cmu sphinx веб-сайте о списках ключевых слов, которые мне нужны для настройки этих пороговых значений с помощью команды

 pocketsphinx_continuous -infile <your_file.wav> -keyphrase <your keyphrase> \
  -kws_threshold <your_threshold> -time yes

Но как я могу это сделать с pocketsphinx, установленным для python?


person P_Ferreira    schedule 16.06.2017    source источник


Ответы (1)


Установите pocketsphinx для pocketsphinx_continuous, а не только для pocketsphinx-python.

person Nikolay Shmyrev    schedule 18.06.2017