2015-02-10 54 views
2

我想使用微軟的SAPI製作一個AI系統。使用DictationGrammar類嘗試解釋語音時返回愚蠢的結果。你如何限制DictationGrammar對象中的單詞?

使用GrammarBuilder類需要一個Choice類(糾正我在這裏,如果我錯了),識別將停止後一個字。

這是不可接受的,因爲DictationGrammar類將幾乎100%的時間不會返回正確的解釋語音,並且將自定義語法放在循環中需要很長時間,用戶必須在每個單詞後等待5秒鐘。

有沒有辦法讓自定義語法接受多個單詞,而不是在一個單詞之後停下來,或者在DictationGrammar類中指定要識別的單詞?

+0

埃裏克布朗的答案有'GrammarBuilder'大多數很好的例子,但爲什麼要建立你的自定義語法每個單詞這麼長?你能分享那一點代碼嗎? – tyh 2015-02-10 18:31:35

+0

我希望它能識別句子,在Choices類作品中加載句子。 – bi0phaz3 2015-02-12 12:39:56

回答

3

考慮下面的構造函數:並不是所有的

這對於一串字創建了一個語法,需要存在。

這爲項目的重複組的語法。

這創建備用文法之間的選擇。

也可以考慮以下方法:

這些方法將項目添加到現有GrammarBuilder /選擇元件。

+0

謝謝!這對我非常有幫助,非常感謝。 – bi0phaz3 2015-02-12 12:29:49