java - 如何设置语音识别服务器?

标签 java speech-recognition speech speech-to-text

如何在服务器端实现语音识别(请不要建议 HTML5's x-webkit-speech、javascript 等)?该程序将音频文件作为输入,并以足够的准确性提供音频文件的文本转录。我可以使用哪些选项?

我已经尝试实现 Sphin4 with Voxforge model但是准确性太差了(他们也可能是我配置中的一些问题,我还在努力学习)。在一篇文章中,我读到当我们使用 <input name="speech" id="speech" type="text" x-webkit-speech /> 时输入被发送到外部服务器,该服务器进行识别并将数据发送回浏览器。

我如何设置该服务器?任何现有的开源服务器如果能够以最小的错误率识别英语句子,也会很有用。

最佳答案

您正在实现什么类型的应用程序?应用程序的目的是将用户的语音输入转录为文本,还是仅仅理解简单的命令?像 Sphinx4 这样的系统使用统计模型来转录语音。使用这些类型的系统,您将无法像使用自动语音识别 (ASR) 系统那样获得良好的识别效果,该系统使用语法来限制 ASR 的搜索空间以获得更好的识别效果。使用统计模型的系统需要大量调整和试运行才能获得良好的认可。

Sphinx4 是我所知道的唯一开源 ASR。有许多商业产品/服务,其中 Nuance 是市场上最大的。一些商业产品可以选择让人类在识别率较低时转录消息。

Google 有一个非官方的 API,它在内部用于 Google Voice 等服务,我相信它与您引用的 webkit 使用的是同一个 API。 Google Voice 会将语音邮件消息转录并通过电子邮件将文本发送给您。 Google Voice 被认为是最先进的转录技术,但如果您有 Voice 帐户,您会发现转录的消息并不是那么好。这是 a link to a blog article on using the unofficial Google Speech API .

关于java - 如何设置语音识别服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8906792/

相关文章:

java - 使用java Calendar计算某些日期之间的天数并排除某些天数

java - Jetty 中的 Hibernate 4 TransactionManagerLookup

java - 语音识别器 : no selected voice recognition service

.net - 微软语音识别 : Alternate results with confidence score?

Android - 语音识别一个词?

c# - C#中如何通过语音在多个文本框中输入不同的值

java - Java中的类型兼容性问题

java - 列出 LDAP 中的根上下文

google-chrome - attr “x-webkit-speech”输入的语言可以不是英语吗?

ios - speechRecognizer 不返回答案