C# 语音识别.仅数字听写C

C# 语音识别.仅数字听写C,c#,speech-recognition,voice-recognition,C#,Speech Recognition,Voice Recognition,我正在尝试这样做,用户可以说修改X,后面跟着一个数字,然后让我的软件根据数字做一些事情 目前,监听修改X;虽然我不知道如何检测命令后所说的数字 我发现DictionGrammar有一个SetDictionContext方法。但是我不想让它检测任何单词,只检测数字 任何帮助都将不胜感激。谢谢:您可能应该从语法开始并阅读语法。只有当您想识别用户可能会说的任何可能的单词时,才可以使用听写语法。您可以将听写语法视为完整的词典。如果您有一组受限制的要识别的单词,请使用特定于任务的语法。这可以使用Gramm

我正在尝试这样做,用户可以说修改X,后面跟着一个数字,然后让我的软件根据数字做一些事情

目前,监听修改X;虽然我不知道如何检测命令后所说的数字

我发现DictionGrammar有一个SetDictionContext方法。但是我不想让它检测任何单词,只检测数字


任何帮助都将不胜感激。谢谢:

您可能应该从语法开始并阅读语法。只有当您想识别用户可能会说的任何可能的单词时,才可以使用听写语法。您可以将听写语法视为完整的词典。如果您有一组受限制的要识别的单词,请使用特定于任务的语法。这可以使用GrammarBuilder或类似方法创建


几年前在上发表了一篇非常好的文章。这可能是迄今为止我找到的最好的介绍性文章。这有点过时,但很有用。AppendResultKeyValue方法在测试后被删除

你可能应该从语法开始并阅读语法。只有当您想识别用户可能会说的任何可能的单词时,才可以使用听写语法。您可以将听写语法视为完整的词典。如果您有一组受限制的要识别的单词,请使用特定于任务的语法。这可以使用GrammarBuilder或类似方法创建

int minNumber = 0;
int maxNumber = 100;
Choices numbers = new Choices ();
for (int i = minNumber; i < maxNumber; i++)
{
    numbers.add(i.toString);
}
Choices myCommands = new Choices ("count");
Choices myOperators = new Choices ("plus","minus","add","subtract","multiply","times","divide");
GrammarBuilder mathGrammar = new GrammarBuilder ();
mathGrammar.add (myCommands);
mathGrammar.add (numbers);
mathGrammar.add (myOperators);
几年前在上发表了一篇非常好的文章。这可能是迄今为止我找到的最好的介绍性文章。这有点过时,但很有用。AppendResultKeyValue方法在测试后被删除

int minNumber = 0;
int maxNumber = 100;
Choices numbers = new Choices ();
for (int i = minNumber; i < maxNumber; i++)
{
    numbers.add(i.toString);
}
Choices myCommands = new Choices ("count");
Choices myOperators = new Choices ("plus","minus","add","subtract","multiply","times","divide");
GrammarBuilder mathGrammar = new GrammarBuilder ();
mathGrammar.add (myCommands);
mathGrammar.add (numbers);
mathGrammar.add (myOperators);
。。。加载语法并创建事件


。。。加载语法并创建一个事件。

我知道如何创建自定义语法,我只是不想创建语法,将X从-1000修改为1000,将Y从-1000修改为1000,将Z从-1000修改为1000,等等。不过我正在阅读链接,谢谢:啊,语义正是我想要的。感谢链接:我知道如何创建自定义语法,我只是不想创建语法来修改X从-1000到1000,修改Y从-1000到1000,修改Z从-1000到1000,等等。不过我正在阅读链接,谢谢:啊,语义正是我想要的。谢谢你的链接: