5

まず第一に、私の質問は音声認識の「古典的な」定義について言うことではないことを述べたいと思います。

私たちがやろうとしていることは、次の意味で多少異なります。

  1. ユーザーがコマンドを記録する
  2. 後で、ユーザーが事前に録音されたコマンドを話すと、特定のアクションが発生します。

たとえば、お母さんに電話をかけるための音声コマンドを録音しているので、お母さんをクリックして「お母さん」と言います。次に、プログラムを使用して「ママ」と言うと、自動的に彼女に電話がかかります。

音声コマンドと保存された音声サンプルの比較をどのように実行しますか?

編集:音声信号の比較だけで、「テキスト読み上げ」機能は必要ありません。明らかに、私たちはある種の既製の製品またはフレームワークを探しています。

4

4 に答える 4

5

これを音楽認識で行う方法の 1 つは、問題の 2 つの音の周波数スペクトルの時系列 (タイム ウィンドウ STFT FFT) を取得し、時間軸上で周波数ピークの位置をマッピングし、2 つの 2D 時間を相互相関させることです。 -一致の周波数ピーク マッピング。これは、2 つのサウンド サンプルを単に相互相関させるよりもはるかにロバストです。ピークの変化が、スペクトル ピーク間のすべてのスペクトル「クラフト」よりもはるかに少ないためです。この方法は、2 つの発話の速度とピッチがあまり変化していない場合にうまく機能します。

iOS 4.x では、FFT に Accelerate フレームワークを使用でき、場合によっては 2D 相互相関も同様に使用できます。

于 2011-04-05T19:39:13.710 に答える
0

あなたの質問が DSP に関するものなのか、それとも iPhone でそれを行う方法に関するものなのか、私にはわかりません。後者の場合は、Apple が提供する Speak Here プロジェクトから始めます。そうすれば、音声をファイルに録音するためのインターフェースがすでに完成しています。それはあなたに多くの手間を省きます。

于 2011-04-05T18:36:27.227 に答える
0

これら 2 つの信号がどの程度類似しているかを判断するには、何らかの相互相関を実行する必要があると思います。(もちろん、話しているのと同じユーザーであると仮定します)。役立つかどうかを確認するためにこの回答を入力しているだけですが、他の誰かからのより良い回答を待ちたいと思います. 私の信号処理スキルはほぼゼロです。

于 2011-04-05T18:30:12.197 に答える
0

iOS アプリケーション用のOpenEarsなどのサードパーティ ライブラリを使用してみてください。ユーザーに音声サンプルを録音して翻訳済みテキストとして保存させるか、認識のためにテキストを入力させることができます。

于 2011-04-05T17:38:46.043 に答える