【发布时间】:2017-06-18 16:54:19
【问题描述】:
我需要开发一个语音识别软件,所以我将 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
但是我如何使用为 python 安装的pocketsphinx 来做到这一点?
【问题讨论】:
标签: speech-recognition pocketsphinx