我一直想使用Microsoft语音识别创建应用程序。
我的应用程序的用户经常会说缩写的内容,例如LHC'对于大型强子对撞机'或者' CERN'。鉴于确切的顺序,我的申请将返回
你说:C岁。
你说:Cern
虽然它确实适用于CERN'但它对LHC'它的失败非常糟糕。
但是,如果我可以制作自己的自定义培训文件,我可以轻松地将术语放在LHC'在那里的某个地方。然后,我可以让用户访问语音控制面板并运行我的培训文件。
我找到的所有链接都令人沮丧地无用,因为他们只是说“这是----,你应该尝试去----论坛”。< / p>
如果确实有帮助,请参阅以下链接列表:
http://compgroups.net/comp.speech.users/add-my-own-training/153194
https://groups.google.com/forum/#!topic/microsoft.public.speech.server/v58SH1ov22s
我的问题是否可能?或者培训文件本身是否采用特殊格式?如果是这样,可以复制该格式吗?
可以在Windows XP上运行的解决方案也是理想的选择。
提前致谢!
P.S。如果有任何图书馆或模块已经存在,那么有人可以指点我吗? Python或C / C ++解决方案将非常出色。此外,由于我不想发布有关此问题的另一个问题,是否可以从命令提示符中使用列车实用程序(或者没有GUI可见,但仍然具有所有控件的完全命令)?
答案 0 :(得分:2)
好的,从我现在wrote three or four years ago的东西中提取这个,但我相信你想做这样的事情。
语法库是一个训练有素的系统,可以识别单词。您可以创建自己的特定单词的语法库。
C#,抱歉
using System.Speech
using System.Speech.Recognition
using System.Speech.AudioFormat
SpeechRecognitionEngine sre = new SpeechRecognitionEngine();
string[] words = {"L H C", "CERN"};
Choices choices = new Choices(words);
GrammarBuilder gb = new GrammarBuilder(choices);
Grammar grammar = new Grammar(gb);
sre.LoadGrammar(grammar);
就我能得到你而言。从文档看起来你可以以某种方式定义发音。也许这样你就可以将LHC直接映射到一个单词。以下是语法课上的文档 - http://msdn.microsoft.com/en-us/library/system.speech.recognition.grammar.aspx
小更新 - 请参阅此处文档中的示例http://msdn.microsoft.com/en-us/library/ms554228.aspx