0

C# の音声認識をいじってみると、Choices (より具体的には Choices of Choices) を備えた効果的な GrammerBuilder を作成する際の障害に遭遇しました。

次の論理コマンドを考慮した IE。

1 つの解決策は、スピーチ行のすべての組み合わせを「ハード コード」し、それらを GrammarBuilder に追加することです (つまり、「SET LEFT COLOR RED」と「SET RIGHT CLEAR」)。数の組み合わせ。

別の解決策は、すべての「列」を「選択肢」として追加することです (そして、「認識」時に誤ったパスを除外しますが、これはプロセッサが重く不要なようです。

GrammarBuilder のツリー構造のように、Choices of Choices を使用すると、中道が最善の道のように思えますが、どのように進めればよいかわかりません。

助言がありますか?

4

2 に答える 2

0

メソッドを使用してChoices、一連のオブジェクトからオブジェクトを作成できます。GrammarBuilderChoices.Add

  // Create alternatives for female names and add a phrase.
  GrammarBuilder females = new Choices(new string[] { "Anne", "Mary" });
  females.Append("on her");

  // Create alternatives for male names and add a phrase.
  GrammarBuilder males = new Choices(new string[] { "James", "Sam" });
  males.Append("on his");

  // Create a Choices object that contains an array of alternative
  // GrammarBuilder objects.
  Choices people = new Choices();
  people.Add(new Choices(new GrammarBuilder[] {females, males}));

  // Create a Choices object that contains a set of alternative phone types.
  Choices phoneType = new Choices();
  phoneType.Add(new string[] { "cell", "home", "work" });

  // Construct the phrase.
  GrammarBuilder gb = new GrammarBuilder();
  gb.Append("call");
  gb.Append(people);
  gb.Append(phoneType);
  gb.Append(new GrammarBuilder("phone"), 0, 1);

これにより、選択ツリーを簡単に構築できます。

認識後にテキストを再解析する必要がないようにSemanticResultValues、 の各ブランチと のChoiceSemanticResultKeysレベルに追加することをお勧めします。Choice

于 2013-11-11T21:41:56.047 に答える