ワードの発音ゲームでWindows音声認識エンジンを使用することは可能ですか?
-
27-09-2019 - |
質問
Windows Speech Septunition EngineまたはSAPIを使用するアプリケーションを作成するために使用します。そのようなゲームのようです 発音 正しく発音したときにスコアを与えること。しかし、SAPIで実験を始めたとき、文法(XML)に文法を読み込んだ場合、最良の認識結果を与えない限り、認識が不十分です。
しかし、現在の問題は、入力テキストからの最も近い発音が認識されることです。例えば:
データベース - > dedebase->正しい。
あなたがそれを誤って発音しても。それはあなたに正解を与えます。
XML文法を使用せずに
データベースと言うと、「ベース/ベース/データベース/などで」を提供します。
回答、提案、説明を投稿してください。ベストアンサーの投票。
is it possible or not?
ちなみに、私はプロジェクトでDelphiコンパイラを使用しています。
解決
あなたが望むもののために、おそらく文法を使用しないことが最善です。ただし、ユーザーは音声認識エンジンの「最小限の」基本トレーニングを行う必要があります。それほど長くはなく、比較的心地よいです。そして、それは本当に認識の正確さに違いをもたらします(私を信じてください、私は私の英語に強いフランスのアクセントを持っています)。
ゲーム自体の予備的な慣行として含めることもできます。
これを見るのは面白いと思うかもしれません Coderage 4セッション の上 「Delphiアプリケーションを可能にする音声(ZIP)」
他のヒント
私は2つのことをします:
- 元のテキストを使用して音素に変換します ispenginePronunciation :: getPronunciations.
- Dictation Grammarと発音言語モデルを使用して、SAPIに音素のセットを返すように強制します - 電話してこれを行います isprocogrammar :: loaddictation(l "発音"、splo_static)。
- 認識された音素を標的音素と比較します。
IspenginePronunciationはSAPI 5.1では利用できないため、これはVistaとWindows 7に限定されていることに注意してください。
ゲームのポイントが、特定の言語の「標準発音」(EN-USなど)に最も近い発音を使用してユーザーが話すことを奨励することである場合、ユーザーにユーザーの特定に適応するために認識者を訓練させる(変更されていない)音声パターンは逆効果になる場合があります。あなたは部分的に、ユーザーの発音の失効をより寛容にするために、認識者をトレーニングしています。
文法ベースの認識を使用するか、口述ベースの認識を使用しても(Eric Brownの投稿は非常に有望に見えます)、「自信」のスコアを調べたいと思うでしょう。これらのスコアは、認識が実行された後に利用可能であり、認識者が実際に言ったことが、ユーザーがユーザーの言ったと思うことと一致するという認識者がどれほど自信を持っているかに数値を与えます。認識器の構成とユースケースに応じて、信頼性のスコアが意味がある場合とそうでない場合があります。
携帯電話/音素/発音のテキスト表現に基づいて精度スコアを基にしている場合、正確なスコアを取得する迅速かつ簡単な方法は、ネットで自由に利用できる多くの実装があるアルゴリズムであるLevenshtein距離を使用することです。 。より優れたスコアリングアルゴリズムは、再同期のDIFFである可能性があり、比較の原子単位は単一の携帯電話です。
MSDNドキュメントハンティングのキーワードは次のとおりです。
isprecoresult-> getphrase-> spphrase->ルール - > spphraserule-> srengineconfidence。
http://msdn.microsoft.com/en-us/library/ee413319%28v = vs.85%29.aspx
http://msdn.microsoft.com/en-us/library/MS720460%28V = vs.85%29.aspx