0

私はこのコードを書きます:

Intent voiceSearchIntent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
voiceSearchIntent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL, RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
startActivityForResult(voiceSearchIntent, 1);

発話文の言語を検出したい。しかし、インテントを実行すると、英語 (米国) 言語のみがリッスンされます。

RecognizerIntent

汎用モードでインテントを実行して、発話された文を取得することは可能ですか?

本当にありがとう。

4

1 に答える 1

2

いいえ、できません。音声認識アルゴリズムは、単一の言語でのみ機能するように設計されています。

言語検出ソリューションを独自に作成する必要があります。たとえば、CMUSphinxで作成された手作りの音声認識エンジンを実行し、デコードされた音素シーケンスに分類子を適用して言語を取得できます。言語識別のためのより高度なアルゴリズムがあります。最初のリンクのレビューを参照してください。

http://www.cslu.ogi.edu/HLTsurvey/ch8node9.html

これは簡単な作業ではなく、確実に堅牢ではありません。選択する言語のリストをユーザーに提示する方が簡単です。

于 2013-08-27T06:01:33.410 に答える