语音识别后的控制

时间:2019-06-28 06:04:27

标签: python speech-recognition pocketsphinx

problem screenshot

语音转换为文本后如何触发命令?现在我有了文本,但是无法使用python中的if条件进行比较,因此我可以执行所需的任务。我已经在树莓派中使用Pocketsphinx进行语音识别。

   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,
        hmm=os.path.join(model_path, 'en-us'),
        lm=os.path.join(model_path, 'en-us.lm.bin'),
        dic=os.path.join(model_path, 'cmudict-en-us.dict')
    )

    for phrase in speech:
       print(phrase)
       if phrase == "HOME"
           print (OK)

代码不会产生任何错误并且可以正常工作;我说的是它在屏幕上显示的内容,即代码可以使用到最后三行[print(phrase)]并给出预期的结果,但是最后2行不执行所需的任务,但没有给出错误

1 个答案:

答案 0 :(得分:0)

您可以使用

if str(phrase) == "HOME":

if phrase.hypothesis() == "HOME":