首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何实现"ok google“技术

如何实现"ok google“技术
EN

Stack Overflow用户
提问于 2015-03-09 22:35:15
回答 1查看 2K关注 0票数 1

我读过一些关于语音/语音识别的文章,我想知道它是如何工作的。例如,android上的"ok Google“和类似的案例?

我想知道它是如何工作的(如何在连续提要中区分和分析一个单词,找到它的关键字)。如果我认为它是一个连续的文本提要,一种方法是隔离给定的提要长度,然后找到一个关键字。音频提要有点难理解,因为单词之间没有纯粹的沉默(正如所说的),隔离给定的长度并不能保证在所选子提要的开头或结尾裁剪关键字。它怎麽工作?

最后,如果你们知道一些libs (C/C++,如果可能的话)能够做到这一点,我会很高兴地实现一个“关键字观察器”。

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-09 23:22:31

关键字查找通常是通过动态编程实现的,您只需搜索包含关键字的最佳音频块,查找所有可能的开始和所有可能的结束。您需要同时查找关键字和替代项。基本上,在每一时刻,你都在寻找关键词和其他声音,一旦关键字的概率高于其他语音的概率,你就会发出信号。虚警率由阈值控制。你不需要特别处理沉默,因为它被“其他演讲”模型所涵盖。详细介绍了该算法在以下论文中:

http://eprints.qut.edu.au/37254/

对于关键字定位的实现,您可以检查pocketsphinx和pocketsphinx Android演示。它是一个C库,可以在连续流中识别单词。您可以在这里找到本教程:

http://cmusphinx.sourceforge.net/wiki/tutorialpocketsphinx

要从麦克风中识别关键字,您可以尝试一些简单的方法,如

代码语言:javascript
复制
  pocketsphinx_continuous -inmic yes -keyphrase "ok google" -kws_threshold 1e-20

原始的"Ok Google“技术在以下出版物中作了介绍:

用深度神经网络识别小足迹关键词

https://wiki.inf.ed.ac.uk/twiki/pub/CSTR/ListenSemester2201314/chen2014small.pdf

这是相当先进的技术,更重要的是,它需要大量的具体数据进行培训。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28952997

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档