2012-04-19 10 views
1

私はアンドロイドの "音声認識"の分野では初めてです。アンドロイド:音声認識が利用可能な技術は何ですか

私のアプリでは「音声認識」が必要です。だから私は宿題をしている。 私はこれを見つけました 1.アンドロイドSDKはこれをサポートしており、 "google voice recognition"を使用しています。 天気が私たちの意図によって呼び出された気分か、SpeechRecogniserクラスを使用しています。グーグルクラウドサーバー。 両方の方法を使ってサンプルアプリを試してみましたが、どちらの場合も一致率は非常に低いです\ (最初は私の知るところですか?

  1. が声をとしてサウンドバイトを送信され、このGoogleの技術に依存するすべてのアプリケーションです)の意図によって起動/またはSpeechRecogniserクラスを使用してIEこれらの2つの方法のための出力の違いはあるのでしょうクラウドサーバで認識されます。私はShazamが別の技術を使っているのを見ましたが、彼らは独自のデータベースを持っています。このような他の技術が使われていますか?

  2. 私は多くの "アンドロイドのためのシリ"を見ました。これらのアプリケーションの実際の動作に関する注意事項

お時間を頂き、ありがとうございます。

答えて

2

1)RecognizerIntentまたはSpeechRecognizerのいずれかを使用すると同じ結果が得られます。主な違いは、ユーザーの操作です。 RecognizerIntentは、ユーザーに標準の音声認識手順を実行させる。 SpeechRecognizerを使用すると、アプリが音声を収集する方法と処理するタイミングを制御できます。 RecognizerIntentの利点は、プログラミングが容易であり、ユーザーによく知られていることです。 SpeechRecognizerを使用すると、バックグラウンドでスピーチを聞くなどの高度な処理を実装できます。より良いエラー報告も得られます。

また、認識器が「リンゴ」のように理解しやすい単語もあれば、さまざまな理由で「クミン」のように難しいものもあります。信頼できるものを実装するためにGoogleが返すものを照合することで、賢明でなければなりません。

2)自分のデータベースがどういう意味なのか分かりません。あなたのアプリには、ユーザが言うことと一致させようとしている種類の「データベース」があります。

3)おそらく人間の対話をエミュレートする自然言語処理、ユーザモデリング、テクニックが混在しています。または、彼らはスマートに見えるように手作業でコード化されたルールの大きな束です。私の推測では、何かを信じられようにしようとすることはたくさんあります。

ここに私のサンプルコードのいくつかをチェックアウト:答えを ​​

+0

お返事ありがとうございました。ポイント2に関して、shazamは、それがサポートするすべての歌のためのデータベースを持っていて、各歌のためのすべての可能な "指紋"を持っています。その音は本当に巨大です。そしてポイント3に関して、私の読書が言うのは、シリの主な技術がAIであるということです。AIが有効に使用されている場合に限り、音声認識を実現することが可能です – png

+0

修正:音声認識を使用するためにAIが必要ありません。ユーザーとの会話を持つアプリを実装しようとするには、AIが必要です。 – gregm