【发布时间】:2013-01-23 14:25:18
【问题描述】:
手持设备上的语音识别通常由按下按钮触发。如果没有它,我该如何触发语音识别?我的基于 Raspberry PI 的设备故意没有用户可以手动交互的任何东西 - 只有一个麦克风挂在墙上。
我正在尝试实现一种方法,让它理解一个简单的触发命令,该命令将启动一系列操作。简而言之,我想在“听到”音频触发器时运行单个 .sh 脚本。我不希望它理解其他任何东西,而只是一个触发器 - 它没有任何意义,它必须从触发器本身解码 - 比如脚本或参数的名称。一个很简单的功能——“听到触发器->执行.sh脚本”
我探索了不同的选择:
将音频流连续发送到谷歌语音识别服务 - 不是一个好主意 - 浪费了太多流量和资源
让无互联网语音识别应用程序持续收听音频流并“挑选”触发词 - 这有点好,但几乎浪费资源,并且这些系统必须学习音频样本 - 这个几乎消除了快速为设备设置自定义名称的能力
使用某种音高处理让它对一系列响亮的声音做出反应 - 拍手两次或类似的东西 - 不算太糟糕,但我想我的手会在我得到正确测试后掉下来,或者我会被我的家人杀死,因为我通常会在晚上睡觉时试验我的玩具。
口哨识别 - 与之前的选项没有太大区别,但您的手掌不会酸痛,如果我学会安静地吹口哨,我很有可能通过测试。我能够找到 IBM 的一篇关于通过口哨命令控制计算机的文章 - 该方法与本地语音识别应用程序几乎相同,但您教它理解不同的口哨序列。然而,我不明白我怎么能教它听懂任何口哨而不管它的语气。
我有点喜欢吹口哨的想法 - 它似乎应该是其他选项中资源消耗最少的 - 我该怎么做?
鉴于我受到 Raspberry PI 硬件的限制,是否还有其他可以轻松实现的语音触发器?
【问题讨论】:
-
可以使用 Pocketsphinx 完成,如stackoverflow.com/questions/38090440/…中所述
标签: linux speech-recognition speech raspberry-pi human-computer-interface