语音识别的简单语法

Chr*_*art 6 c# speech-recognition

我有一个GrammarBuilders和Grammer程序,用于SpeechRecognitionEngine识别语音.我是否可以使用相同的语法来识别键入的命令(在字符串中),而不是从音频中识别?像commandGrammar.parse(commandString)之类的东西?

Kev*_*ans 3

您应该能够使用SpeechRecognitionEngine.EmulateRecognize,它采用文本输入代替音频进行语音识别。

我不确定其预期用途,但如果这将用于像聊天机器人这样通过 IM 或 SMS 自动与文本输入交互的东西,我认为您会发现语法维护起来非常麻烦且具有限制性。我会推荐诸如人工智能标记语言(AIML)之类的东西来处理文本响应。它很容易学习并且非常强大。这种语言允许您使用更有利于文本输入的通配符,而不是使用 ASR 要求的简洁语法。甚至还有一些C#开源项目提供了与 AIML 配合使用的库并简化了聊天机器人的创建。