说出单词时自动语音识别

Posted

技术标签:

【中文标题】说出单词时自动语音识别【英文标题】:Automatic voice recognition when a word is said 【发布时间】:2018-08-17 12:12:05 【问题描述】:

我正在尝试创建 Alexa 或 Google Home 的模拟(非常基本)。我将 SpeechRecognition 模块与 Google 作为识别器一起使用。我已经设法让它工作了,但是当我说一个词时我不知道如何运行整个脚本(我希望它总是能听到(就像 Alexa 一样))。

例如: “嘿,机器人” AI = 您好,请问有什么可以帮您的吗? (运行整个脚本)

我曾想过每 5 秒循环一次代码,然后连接到 Google API,但这不可能,因为 API 限制为每天 50 个请求。

任何帮助表示赞赏, 提前致谢

【问题讨论】:

【参考方案1】:

您可以使用“静音”阈值来确定是否需要向 google 发送请求,这样您就可以避免发送匹配请求。代码示例见Python record audio on detected sound。

或者,您可以使用开源语音识别包并最终获得独立的应用程序,请参阅The Ultimate Guide To Speech Recognition With Python 文章了解该方法。

但是,如果您仍然喜欢使用远程 API,您可以结合上述方法,并使用 SpeechRecognition 来理解 Hey, Robot 短语,然后,切换应用程序以使用 Google API 进行语音识别一些简短的一段时间,当然要使用阈值检查来避免客户端在说Hey, Robot后不继续说话时查询Google API。

祝你好运!

【讨论】:

【参考方案2】:

使用 CMU Sphinx。它完全符合您的要求。看这里: https://cmusphinx.github.io/wiki/

【讨论】:

以上是关于说出单词时自动语音识别的主要内容,如果未能解决你的问题,请参考以下文章

Android 语音中的关键字识别?

Kinect 语音识别和骨骼跟踪不能一起工作

python语音签名识别?

数字语音识别0-9常出现的问题

语音识别作为后台服务

android如何自定义语音识别