Featured Posts

ライセンスについて OpenHRIのライセンスは、Eclipse Public License (EPL)です。 http://www.eclipse.org/legal/epl-v10.html EPLは、コードの改変や再配布、営利利用を許可するオープンソースライセンスですが、場合によっては改変内容をライセンス元に開示する必要があります。 OpenHRIが内部で用いているJuliusやOpen...

Readmore

OpenHRIとは OpenHRIは、音声認識・音声合成・対話制御など、ロボットのコミュニケーション機能の実現に必要な各要素を実現するコンポーネント群です。 フリーで利用できる各オープンソースソフトウェアを使い易いコンポーネントとしてまとめました。

Readmore

ソフトウェアのインストール方法 ソフトウェアのインストールおよび利用方法については、チュートリアルの各ページを参考にしてください。http://openhri.net/tutorial

Readmore

公開しました OpenHRIのソフトウェアおよびWebページの公開を開始しました。

Readmore

  • Prev
  • Next

音響エコー除去

音響エコーとは

音響エコーとは、スピーカから出力された音声をマイクロフォンが拾ってしまうことで発生するループのことを指します。音響エコーが発生すると、正確な音声認識が難しくなります。

OpenHRIでは、音響エコーの問題を軽減するため2種類ののコンポーネントを用意しています。それぞれ長所・短所がありますので用途に応じて使い分けてください。

エコーサプレッサ

音声出力コンポーネントからの出力を検出し、それと同じタイミングで音声入力を減衰させることで、スピーカからマイクへの収音を防ぐコンポーネントです。以下の特徴があります。

長所:高速で処理できる。入力音声の変形が少ない。

短所:音声出力中は音声入力できないため、常に音声出力している場合などは使用が難しい。

エコーキャンセラ

音声出力コンポーネントからの出力信号よりエコー成分を推測して、マイクから収音した信号から推測したエコー成分を除去するコンポーネントです。以下の特徴があります。

長所:音声出力中でも音声入力できる。

短所:適応フィルタ係数を毎回更新するため処理が重い。入力音声を加工するため、その影響による変形が認識に悪影響を及ぼす場合がある。

使い方

以下にチュートリアルStep4にて作成した対話システムにエコーサプレッサを接続する例を示します。

コンポーネントの接続

AudioInputの出力ポートとjuliusの入力ポートのリンクを削除し、以下のリンクを接続します。

  • AudioInputの出力ポートと EchoSuppressorの入力ポート「from_input」
  • AudioOutputの出力ポートと EchoSuppressorの入力ポート「from_output」
  • EchoSuppressorの出力ポートと juliusの入力ポート

リンクを作成すると、以下のスクリーンショットのようになります。

動作確認

All Activateボタンで全コンポーネントをアクティブ状態に遷移させます。スピーカとマイクを近づけて発声し、返事が連続しないことを確認しましょう。