【问题标题】:Server side speech recognition for HTML5 applicationsHTML5 应用程序的服务器端语音识别
【发布时间】:2015-11-17 22:53:40
【问题描述】:

我正在运行一个 Web 应用程序,它大量使用 WebkitSpeechRecognition,而 WebkitSpeechRecognition 反过来又使用了 Google 的服务器。

我想将我的应用程序从这种依赖中解放出来。 我们已经使用了 WebAudio,并且该 api 得到了跨浏览器的良好支持。

是否有适合这种情况的服务器端解决方案(Windows 2008 R2 上的 IIS 7.5),或者我们可以采取的任何 Dot Net 路径来构建我们自己的识别服务器?

我知道这个问题的范围很广,但是即使在网上搜索之后,我们仍然很迷茫。

【问题讨论】:

  • 我想值得一提的是有不同种类的语音识别。通用听写,例如谷歌的听写,理论上你可以说任何东西,这与更基本的变体不同,你为应用程序构建词汇表以进行比较(你知道你正在寻找什么词)。我认为大多数开源实现都属于后一种类型,所以如果你正在寻找它应该比找到一般的听写实现更容易。
  • 非常好。不,我们的场景比一般的听写要简单得多:我们只是在寻找对一组严格的单词和句子的识别。因此,与其说是正确的识别,不如说是一种比较。在这个意义上有什么提示吗?

标签: .net html speech-recognition web-audio-api


【解决方案1】:

对于使用 Nuance (https://developer.nuance.com/public/index.php?task=prodDev) 的 HTTP API 的通用听写应用程序,我已经取得了相当不错的结果。

基本上,我们构建了一个从浏览器连接到的 websocket 服务器(您可能会在 .NET 中使用 SignalR)(由于分块编码的安全问题,您无法直接访问 Nuance API)并拥有我们的 websocket 服务器充当将数据从客户端传递到 Nuance 的代理。 Nuance 然后返回一个字符串解释,然后我们将其返回给客户。

虽然 YMMV,但大多数时候它都非常准确。 :) 我们还必须经过手动审批流程并描述我们的用例,这没什么大不了的,但很高兴知道。

【讨论】:

  • 谢谢奥斯卡。 Nuance 是指识别托管在他们的服务器或 Nuance 销售的服务器应用程序上?
  • 看起来我们最终会依赖 Nuance 的云。不幸的是,这只会将我们的依赖从提供者转移到另一个提供者 - 除非我错过了什么
  • 是的,您将依赖他们的基础设施。不过,您可以避免对 WebkitSpeechRecognition 的依赖,因此只要它支持 webkit(当然还有音频输入),您运行的客户端并不重要。
  • 在我之前的评论中应该说是 websockets,而不是 webkit.. :)
【解决方案2】:

有很好的基于开源语音识别引擎(如 CMUSphinx 或 Kaldi)的服务器端解决方案,但是,服务器必须在 Linux 下运行,而不是 Win。你也许可以运行 Win 服务器,但你必须将 Linux 解决方案移植到它。

要尝试它的工作原理,您可以访问http://kaljurand.github.io/dictate.js

【讨论】:

  • 谢谢,试试看。您对它有任何直接经验吗?如果有,您认为它的可扩展性/可靠性足以用于商业产品吗?
猜你喜欢
  • 2014-10-04
  • 1970-01-01
  • 1970-01-01
  • 2014-04-12
  • 1970-01-01
  • 2012-06-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多