首页 文章

使用Windows语音将任何句子转换为文本[关闭]

提问于
浏览
-1

目前我有一个C#程序,使用MS Windows语音识别(SR)系统进行语音转换,将其转换为文本,将问题作为文本发送到Worlfram Alpha,然后使用文本转语音回读基于文本的回答( TTS) .

不幸的是,计算机只能识别在输入到SR中的语法中定义的预定义句子和短语的列表 . 我需要程序识别任何句子而不必定义包含英语中每个单词的巨大语法文件 . 如何在不必定义包含完整英语规则的语法文件的情况下让程序识别任何英语短语?这可能吗?

2 回答

  • 0

    目前有两种基本类型的语音识别系统;一种类型支持使用grammars列出预期识别结果的规则,另一种类型使用statistical modeling(例如:隐马尔可夫模型)基于匹配用于系统的一组数据的概率来获得识别结果 . 你所描述的是"a list of predefined sentences and phrases"是语法 . 我很确定MS Windows语音识别系统只支持基于语法的解决方案 . 您所描述的所需解决方案是SR的统计建模系统 . 您可能想看一下Sphinx项目 . 它是开源的,它支持统计建模 . 请注意, Build 统计建模系统并不容易,需要花费大量时间才能正确调整 .

  • 1

    看看这个 - SpeechSynthetizer Class以及这个相关的堆栈溢出问题How to write an application that reads text and produces speech

    对于Speech to Text,请查看此代码项目文章http://www.codeproject.com/Articles/380027/Csharp-Speech-to-Text

相关问题