(本開示の基礎となった知見)
複数のマイクが用いられる拡声通話システムでは、マイク毎にエコーキャンセラが必要となるため、マイクの数に応じてエコーキャンセラの数も増加し、複数のエコーキャンセラ全体の演算量が多くなってしまう。
上記の従来のマルチチャネルエコー消去装置は、マイクと同じ数のエコーレプリカ生成部を備えており、各エコーレプリカ生成部の構成は同じである。そのため、マイクの数が増加するにつれて、エコーレプリカ生成部の数も増加し、音響エコーを除去するための演算量も増加するおそれがある。
また、上記の従来のマルチチャネルエコー消去装置では、エコーレプリカの生成処理と適応フィルタ係数の更新処理とを有効な波数領域に限定することにより、多数のスピーカとマイクロホンとからなるマルチチャネル拡声通話システムにおいて全体としての演算量を削減している。
しかしながら、従来のマルチチャネルエコー消去装置では、エコーレプリカ生成部の波数領域を限定するため、学習されない波数領域が発生し、波数領域の限定が通話性能の劣化の要因となるおそれがある。
以上の課題を解決するために、本開示の一態様に係る音響エコーキャンセル装置は、少なくとも2つのマイクから得られる入力信号と、スピーカへ出力される再生信号とを用いて、前記入力信号に含まれる前記再生信号の成分を示す第1の擬似エコー信号を生成する第1のエコーキャンセラと、前記少なくとも2つのマイクから出力される少なくとも1つの入力信号と、前記第1のエコーキャンセラによって生成された前記第1の擬似エコー信号とを用いて、前記少なくとも1つの入力信号に含まれる前記第1の擬似エコー信号の成分を示す第2の擬似エコー信号を生成し、生成した前記第2の擬似エコー信号を用いて前記少なくとも1つの入力信号の音響エコー成分をキャンセルする第2のエコーキャンセラと、を備える。
この構成によれば、第2の擬似エコー信号は、既に生成された第1の擬似エコー信号を用いて生成されるので、第2の擬似エコー信号を生成する際に用いられる適応フィルタのフィルタ長(タップ長)を短くすることができ、通話性能を維持することができるとともに、音響エコーを除去するための演算量を削減することができる。
また、上記の音響エコーキャンセル装置において、前記少なくとも2つのマイクから出力される少なくとも1つの入力信号を遅延させる遅延部をさらに備え、前記第2のエコーキャンセラは、遅延させた前記少なくとも1つの入力信号と、前記第1のエコーキャンセラによって生成された前記第1の擬似エコー信号とを用いて、遅延させた前記少なくとも1つの入力信号に含まれる前記第1の擬似エコー信号の成分を示す第2の擬似エコー信号を生成し、生成した前記第2の擬似エコー信号を用いて、遅延させた前記少なくとも1つの入力信号の音響エコー成分をキャンセルしてもよい。
この構成によれば、第2のエコーキャンセラに入力する少なくとも1つの入力信号を遅延させることにより、第1のエコーキャンセラによって生成された第1の擬似エコー信号と少なくとも1つの入力信号との時間差がなくなり、確実に第2の擬似エコー信号を生成することができる。
また、上記の音響エコーキャンセル装置において、前記少なくとも2つのマイクは、第1の入力信号を出力する第1のマイクと、第2の入力信号を出力する第2のマイクとを含み、前記遅延部は、前記第1の入力信号を遅延させる第1の遅延部と、前記第2の入力信号を遅延させる第2の遅延部とを含み、前記第1の入力信号と前記第2の入力信号とを加算する加算部をさらに備え、前記第1のエコーキャンセラは、前記加算部からの加算信号と前記再生信号とを用いて、前記加算信号に含まれる前記再生信号の成分を示す前記第1の擬似エコー信号を生成し、前記第2のエコーキャンセラは、遅延させた前記第1の入力信号と、前記第1のエコーキャンセラによって生成された前記第1の擬似エコー信号とを用いて、遅延させた前記第1の入力信号に含まれる前記第1の擬似エコー信号の成分を示す第3の擬似エコー信号を生成し、生成した前記第3の擬似エコー信号を用いて、遅延させた前記第1の入力信号の音響エコー成分をキャンセルする第3のエコーキャンセラと、遅延させた前記第2の入力信号と、前記第1のエコーキャンセラによって生成された前記第1の擬似エコー信号とを用いて、遅延させた前記第2の入力信号に含まれる前記第1の擬似エコー信号の成分を示す第4の擬似エコー信号を生成し、生成した前記第4の擬似エコー信号を用いて、遅延させた前記第2の入力信号の音響エコー成分をキャンセルする第4のエコーキャンセラと、を含んでもよい。
この構成によれば、第3のエコーキャンセラに入力する第1の入力信号を遅延させるとともに、第4のエコーキャンセラに入力する第2の入力信号を遅延させることにより、第1のエコーキャンセラによって生成された第1の擬似エコー信号と第1の入力信号との時間差がなくなるとともに、第1の擬似エコー信号と第2の入力信号との時間差がなくなり、確実に第3の擬似エコー信号及び第4の擬似エコー信号を生成することができる。
また、上記の音響エコーキャンセル装置において、前記少なくとも2つのマイクは、第1の入力信号を出力する第1のマイクと、第2の入力信号を出力する第2のマイクとを含み、前記第1の入力信号と前記第2の入力信号とを加算する加算部をさらに備え、前記第1のエコーキャンセラは、前記加算部からの加算信号と前記再生信号とを用いて、前記加算信号に含まれる前記再生信号の成分を示す前記第1の擬似エコー信号を生成し、前記第2のエコーキャンセラは、前記第1の入力信号と、前記第1のエコーキャンセラによって生成された前記第1の擬似エコー信号とを用いて、前記第1の入力信号に含まれる前記第1の擬似エコー信号の成分を示す第3の擬似エコー信号を生成し、生成した前記第3の擬似エコー信号を用いて前記第1の入力信号の音響エコー成分をキャンセルする第3のエコーキャンセラと、前記第2の入力信号と、前記第1のエコーキャンセラによって生成された前記第1の擬似エコー信号とを用いて、前記第2の入力信号に含まれる前記第1の擬似エコー信号の成分を示す第4の擬似エコー信号を生成し、生成した前記第4の擬似エコー信号を用いて前記第2の入力信号の音響エコー成分をキャンセルする第4のエコーキャンセラと、を含んでもよい。
この構成によれば、少なくとも2つのマイクはそれぞれ配置位置が異なる。そのため、音響エコーとして入力される反射波(エコー信号)の波形はマイク毎に異なる。エコー信号の位相が、話者の音声である入力信号とは逆位相である場合、エコー信号が入力信号に加算されることで、入力信号が消えてしまい、入力信号の音響エコーをキャンセルすることが困難となる。しかしながら、少なくとも2つのマイクからの第1の入力信号と第2の入力信号とが加算されるので、音響エコーの干渉による信号の欠落の影響を低減することができる。
また、上記の音響エコーキャンセル装置において、前記少なくとも2つのマイクは、第1の入力信号を出力する第1のマイクと、第2の入力信号を出力する第2のマイクとを含み、前記第1のエコーキャンセラは、前記第1の入力信号と前記再生信号とを用いて、前記第1の入力信号に含まれる前記再生信号の成分を示す前記第1の擬似エコー信号を生成し、生成した前記第1の擬似エコー信号を用いて前記第1の入力信号の音響エコー成分をキャンセルし、前記第2のエコーキャンセラは、前記第2の入力信号と、前記第1のエコーキャンセラによって生成された前記第1の擬似エコー信号とを用いて、前記第2の入力信号に含まれる前記第1の擬似エコー信号の成分を示す第2の擬似エコー信号を生成し、生成した前記第2の擬似エコー信号を用いて前記第2の入力信号の音響エコー成分をキャンセルしてもよい。
この構成によれば、第2の擬似エコー信号は、既に生成された第1の擬似エコー信号を用いて生成されるので、第2の擬似エコー信号を生成する際に用いられる適応フィルタのフィルタ長(タップ長)を短くすることができ、通話性能を維持することができるとともに、音響エコーを除去するための演算量を削減することができる。
また、上記の音響エコーキャンセル装置において、前記少なくとも2つのマイクは、第1の入力信号を出力する第1のマイクと、第2の入力信号を出力する第2のマイクとを含み、前記第1のエコーキャンセラは、前記第1の入力信号と前記第1の擬似エコー信号との誤差を示す第1の誤差信号を算出する第1の算出部と、前記第2の入力信号と前記第1の擬似エコー信号との誤差を示す第2の誤差信号を算出する第2の算出部と、前記第1の誤差信号と前記第2の誤差信号とを加算した加算信号を平均化する平均処理部と、前記平均処理部からの平均信号と前記再生信号とを用いて、前記平均信号に含まれる前記再生信号の成分を示す前記第1の擬似エコー信号を生成する生成部と、を含み、前記第2のエコーキャンセラは、前記第1の入力信号と、前記第1のエコーキャンセラによって生成された前記第1の擬似エコー信号とを用いて、前記第1の入力信号に含まれる前記第1の擬似エコー信号の成分を示す第3の擬似エコー信号を生成し、生成した前記第3の擬似エコー信号を用いて前記第1の入力信号の音響エコー成分をキャンセルする第3のエコーキャンセラと、前記第2の入力信号と、前記第1のエコーキャンセラによって生成された前記第1の擬似エコー信号とを用いて、前記第2の入力信号に含まれる前記第1の擬似エコー信号の成分を示す第4の擬似エコー信号を生成し、生成した前記第4の擬似エコー信号を用いて前記第2の入力信号の音響エコー成分をキャンセルする第4のエコーキャンセラと、を含んでもよい。
この構成によれば、少なくとも2つのマイクはそれぞれ配置位置が異なる。そのため、音響エコーとして入力される反射波(エコー信号)の波形はマイク毎に異なる。エコー信号の位相が、話者の音声である入力信号とは逆位相である場合、エコー信号が入力信号に加算されることで、入力信号が消えてしまい、入力信号の音響エコーをキャンセルすることが困難となる。しかしながら、少なくとも2つのマイクからの第1の入力信号及び第2の入力信号のそれぞれの誤差信号が加算及び平均化されるので、音響エコーの干渉による信号の欠落の影響を低減することができる。
また、上記の音響エコーキャンセル装置において、時間領域の前記入力信号を周波数領域の入力信号に変換する第1の変換部と、時間領域の前記再生信号を周波数領域の再生信号に変換する第2の変換部と、時間領域の前記少なくとも1つの入力信号を周波数領域の少なくとも1つの入力信号に変換する第3の変換部と、時間領域の前記第1の擬似エコー信号を周波数領域の第1の擬似エコー信号に変換する第4の変換部と、をさらに備えてもよい。
この構成によれば、第1のエコーキャンセラ及び第2のエコーキャンセラは、周波数領域の適応アルゴリズムを用いて第1の擬似エコー信号及び第2の擬似エコー信号を生成することができ、畳み込み演算がかけ算により実行することができるので、演算量をさらに削減することができる。
また、上記の音響エコーキャンセル装置において、前記第2のエコーキャンセラのフィルタ長は、前記第1のエコーキャンセラのフィルタ長より短くてもよい。
この構成によれば、第2のエコーキャンセラにおける音響エコーを除去するための演算量を削減することができる。
また、上記の音響エコーキャンセル装置において、前記第1のエコーキャンセラは、前記スピーカから最も近い位置のマイクに対して、前記第1の擬似エコー信号を生成してもよい。
この構成によれば、スピーカから最も近い位置のマイクから出力される入力信号と再生信号とを用いて、入力信号に含まれる再生信号の成分を示す第1の擬似エコー信号が生成され、生成された第1の擬似エコー信号を用いて第2の擬似エコー信号が生成されるので、第2の擬似エコー信号を生成する際に用いられる適応フィルタのフィルタ長(タップ長)を短くすることができる。
本開示の他の態様に係る音響エコーキャンセル方法は、マイクから出力される入力信号の音響エコー成分をキャンセルする音響エコーキャンセル装置における音響エコーキャンセル方法であって、前記少なくとも2つのマイクから得られる入力信号と、スピーカへ出力される再生信号とを用いて、前記入力信号に含まれる前記再生信号の成分を示す第1の擬似エコー信号を生成し、前記少なくとも2つのマイクから出力される少なくとも1つの入力信号と、前記第1のエコーキャンセラによって生成された前記第1の擬似エコー信号とを用いて、前記少なくとも1つの入力信号に含まれる前記第1の擬似エコー信号の成分を示す第2の擬似エコー信号を生成し、生成した前記第2の擬似エコー信号を用いて前記少なくとも1つの入力信号の音響エコー成分をキャンセルする。
この構成によれば、第2の擬似エコー信号は、既に生成された第1の擬似エコー信号を用いて生成されるので、第2の擬似エコー信号を生成する際に用いられる適応フィルタのフィルタ長(タップ長)を短くすることができ、通話性能を維持することができるとともに、音響エコーを除去するための演算量を削減することができる。
本開示の他の態様に係る音響エコーキャンセルプログラムは、少なくとも2つのマイクから得られる入力信号と、スピーカへ出力される再生信号とを用いて、前記入力信号に含まれる前記再生信号の成分を示す第1の擬似エコー信号を生成する第1のエコーキャンセラと、前記少なくとも2つのマイクから出力される少なくとも1つの入力信号と、前記第1のエコーキャンセラによって生成された前記第1の擬似エコー信号とを用いて、前記少なくとも1つの入力信号に含まれる前記第1の擬似エコー信号の成分を示す第2の擬似エコー信号を生成し、生成した前記第2の擬似エコー信号を用いて前記少なくとも1つの入力信号の音響エコー成分をキャンセルする第2のエコーキャンセラとしてコンピュータを機能させる。
この構成によれば、第2の擬似エコー信号は、既に生成された第1の擬似エコー信号を用いて生成されるので、第2の擬似エコー信号を生成する際に用いられる適応フィルタのフィルタ長(タップ長)を短くすることができ、通話性能を維持することができるとともに、音響エコーを除去するための演算量を削減することができる。
以下添付図面を参照しながら、本開示の実施の形態について説明する。なお、以下の実施の形態は、本開示を具体化した一例であって、本開示の技術的範囲を限定するものではない。
(実施の形態1)
図1は、本開示の実施の形態1における通話装置の構成を示す図である。なお、通話装置は、自動車等に搭載される拡声型のハンズフリー通話システム、拡声型の双方向通信会議システム及びインターホンシステムなどに利用される。
図1に示す通話装置は、音響エコーキャンセル装置1、第1のマイク11、第2のマイク12、入力端子14、スピーカ15、第1の出力端子20及び第2の出力端子21を備える。
第1のマイク11及び第2のマイク12は、送話者がいる空間内に配置され、送話者の音声を収音する。第1のマイク11は、収音した音声を示す第1の入力信号を音響エコーキャンセル装置1に出力する。第2のマイク12は、収音した音声を示す第2の入力信号を音響エコーキャンセル装置1に出力する。
入力端子14は、受話側の通話装置(不図示)から受信した再生信号を音響エコーキャンセル装置1及びスピーカ15へ出力する。
スピーカ15は、入力された再生信号を外部へ出力する。ここで、スピーカ15から出力された音声が、第1のマイク11及び第2のマイク12によって収音された場合、受話側のスピーカからは、受話側の話者の発話した音声が遅れて再生されることになり、いわゆる音響エコーが発生する。そこで、音響エコーキャンセル装置1は、第1のマイク11及び第2のマイク12から出力される第1の入力信号及び第2の入力信号の音響エコー成分をキャンセルする。
第1の出力端子20は、音響エコーキャンセル装置1によって音響エコー成分がキャンセルされた第1の入力信号を出力する。第2の出力端子21は、音響エコーキャンセル装置1によって音響エコー成分がキャンセルされた第2の入力信号を出力する。
なお、入力端子14、第1の出力端子20及び第2の出力端子21は、通信部(不図示)に接続されている。通信部は、ネットワークを介して受話側の通話装置(不図示)へ第1の入力信号及び第2の入力信号を送信するとともに、ネットワークを介して受話側の通話装置(不図示)から再生信号を受信する。ネットワークは、例えば、インターネットである。
音響エコーキャンセル装置1は、加算部13、第1のエコーキャンセラ16及び第2のエコーキャンセラ17を備える。
加算部13は、第1のマイク11からの第1の入力信号と第2のマイク12からの第2の入力信号とを加算する。
第1のエコーキャンセラ16は、少なくとも2つのマイクから得られる入力信号と、スピーカへ出力される再生信号とを用いて、入力信号に含まれる再生信号の成分を示す第1の擬似エコー信号を生成する。
本実施の形態1において、少なくとも2つのマイクから得られる入力信号は、第1のマイク11からの第1の入力信号と第2のマイク12からの第2の入力信号とを加算した加算信号である。すなわち、第1のエコーキャンセラ16は、加算部13からの加算信号と再生信号とを用いて、加算信号に含まれる再生信号の成分を示す第1の擬似エコー信号を生成する。
第1のエコーキャンセラ16は、適応フィルタ161及び誤差算出部162を備える。
適応フィルタ161は、フィルタ係数と再生信号とを畳み込むことにより、加算信号に含まれる再生信号の成分を示す第1の擬似エコー信号を生成する。
誤差算出部162は、加算部13からの加算信号と適応フィルタ161からの第1の擬似エコー信号との誤差信号を算出し、算出した誤差信号を適応フィルタ161へ出力する。適応フィルタ161は、入力された誤差信号に基づいてフィルタ係数を修正し、修正したフィルタ係数と再生信号とを畳み込むことにより第1の擬似エコー信号を生成する。適応フィルタ161は、適応アルゴリズムを用いて、誤差信号が最小となるようにフィルタ係数を修正する。適応アルゴリズムとしては、例えば、学習同定法(NLMS(Normarized Least Mean Square)法)、アフィン射影法又は再帰的最小2乗法(RLS(Recursive Least Square)法)が用いられる。
第2のエコーキャンセラ17は、少なくとも2つのマイクから出力される少なくとも1つの入力信号と、第1のエコーキャンセラ16によって生成された第1の擬似エコー信号とを用いて、少なくとも1つの入力信号に含まれる第1の擬似エコー信号の成分を示す第2の擬似エコー信号を生成し、生成した第2の擬似エコー信号を用いて少なくとも1つの入力信号の音響エコー成分をキャンセルする。
第2のエコーキャンセラ17は、第1の入力信号の音響エコー成分をキャンセルする第3のエコーキャンセラ18及び第2の入力信号の音響エコー成分をキャンセルする第4のエコーキャンセラ19を備える。第1のエコーキャンセラ16によって生成された第1の擬似エコー信号は、第3のエコーキャンセラ18及び第4のエコーキャンセラ19に出力される。
第3のエコーキャンセラ18は、第1の入力信号と、第1のエコーキャンセラ16によって生成された第1の擬似エコー信号とを用いて、第1の入力信号に含まれる第1の擬似エコー信号の成分を示す第3の擬似エコー信号を生成し、生成した第3の擬似エコー信号を用いて第1の入力信号の音響エコー成分をキャンセルする。
第3のエコーキャンセラ18は、適応フィルタ181及び誤差算出部182を備える。
適応フィルタ181は、フィルタ係数と第1の擬似エコー信号とを畳み込むことにより、第1の入力信号に含まれる第1の擬似エコー信号の成分を示す第3の擬似エコー信号を生成する。
誤差算出部182は、第1のマイク11からの第1の入力信号と適応フィルタ181からの第3の擬似エコー信号との誤差信号を算出し、算出した誤差信号を適応フィルタ181へ出力する。適応フィルタ181は、入力された誤差信号に基づいてフィルタ係数を修正し、修正したフィルタ係数と第1の擬似エコー信号とを畳み込むことにより第3の擬似エコー信号を生成する。適応フィルタ181は、適応アルゴリズムを用いて、誤差信号が最小となるようにフィルタ係数を修正する。適応アルゴリズムとしては、例えば、学習同定法、アフィン射影法又は再帰的最小2乗法が用いられる。
また、誤差算出部182は、第1のマイク11からの第1の入力信号から、適応フィルタ181からの第3の擬似エコー信号を減算することにより、第1の入力信号から音響エコー成分をキャンセルする。そのため、誤差算出部182は、音響エコー成分をキャンセルした第1の入力信号を第1の出力端子20へ出力する。
第4のエコーキャンセラ19は、第2の入力信号と、第1のエコーキャンセラ16によって生成された第1の擬似エコー信号とを用いて、第2の入力信号に含まれる第1の擬似エコー信号の成分を示す第4の擬似エコー信号を生成し、生成した第4の擬似エコー信号を用いて第2の入力信号の音響エコー成分をキャンセルする。
第4のエコーキャンセラ19は、適応フィルタ191及び誤差算出部192を備える。
適応フィルタ191は、フィルタ係数と第1の擬似エコー信号とを畳み込むことにより、第2の入力信号に含まれる第1の擬似エコー信号の成分を示す第4の擬似エコー信号を生成する。
誤差算出部192は、第2のマイク12からの第2の入力信号と適応フィルタ191からの第4の擬似エコー信号との誤差信号を算出し、算出した誤差信号を適応フィルタ191へ出力する。適応フィルタ191は、入力された誤差信号に基づいてフィルタ係数を修正し、修正したフィルタ係数と第1の擬似エコー信号とを畳み込むことにより第4の擬似エコー信号を生成する。適応フィルタ191は、適応アルゴリズムを用いて、誤差信号が最小となるようにフィルタ係数を修正する。適応アルゴリズムとしては、例えば、学習同定法、アフィン射影法又は再帰的最小2乗法が用いられる。
また、誤差算出部192は、第2のマイク12からの第2の入力信号から、適応フィルタ191からの第4の擬似エコー信号を減算することにより、第2の入力信号から音響エコー成分をキャンセルする。そのため、誤差算出部192は、音響エコー成分をキャンセルした第2の入力信号を第2の出力端子21へ出力する。
なお、本実施の形態1において、第2のエコーキャンセラ17のフィルタ長は、第1のエコーキャンセラ16のフィルタ長より短い。すなわち、第3のエコーキャンセラ18の適応フィルタ181のフィルタ長は、第1のエコーキャンセラ16の適応フィルタ161のフィルタ長より短く、第4のエコーキャンセラ19の適応フィルタ191のフィルタ長は、第1のエコーキャンセラ16の適応フィルタ161のフィルタ長より短い。
なお、本実施の形態1において、通話装置は、2つのマイクを備えているが、本開示は特にこれに限定されず、3つ以上のマイクを備えてもよい。通話装置が3つ以上のマイクを備える場合、加算部13は、3つ以上のマイクからの各入力信号を加算し、第1のエコーキャンセラ16は、3つ以上のマイクのそれぞれに対して設けられたエコーキャンセラへ第1の擬似エコー信号を出力する。
また、本実施の形態1において、通話装置は、1つのスピーカを備えているが、本開示は特にこれに限定されず、2つ以上のスピーカを備えてもよい。通話装置が複数のスピーカを備える場合、通話装置は、複数のスピーカと同じ数の音響エコーキャンセル装置1を備える必要がある。
次に、本開示の実施の形態1における音響エコーキャンセル装置1の動作について説明する。
図2は、本開示の実施の形態1における音響エコーキャンセル装置の動作を説明するためのフローチャートである。
まず、ステップS1において、加算部13は、第1のマイク11からの第1の入力信号と第2のマイク12からの第2の入力信号とを加算する。このとき、加算部13には、第1のマイク11からの第1の入力信号と第2のマイク12からの第2の入力信号とが入力される。
次に、ステップS2において、第1のエコーキャンセラ16の適応フィルタ161は、フィルタ係数と再生信号とを畳み込むことにより、加算信号に含まれる再生信号の成分を示す第1の擬似エコー信号を生成する。
次に、ステップS3において、誤差算出部162は、加算部13からの加算信号から、適応フィルタ161からの第1の擬似エコー信号を減算することにより、加算信号と第1の擬似エコー信号との誤差信号を算出する。誤差算出部162は、算出した誤差信号を適応フィルタ161へ出力する。
次に、ステップS4において、適応フィルタ161は、誤差算出部162から入力された誤差信号に基づいてフィルタ係数を修正する。適応フィルタ161は、修正したフィルタ係数と再生信号とを畳み込むことにより第1の擬似エコー信号を生成する。
次に、ステップS5において、適応フィルタ161は、生成した第1の擬似エコー信号を第3のエコーキャンセラ18及び第4のエコーキャンセラ19へ出力する。
次に、ステップS6において、第3のエコーキャンセラ18の適応フィルタ181は、フィルタ係数と第1の擬似エコー信号とを畳み込むことにより、第1の入力信号に含まれる第1の擬似エコー信号の成分を示す第3の擬似エコー信号を生成する。
次に、ステップS7において、誤差算出部182は、第1のマイク11からの第1の入力信号から、適応フィルタ181からの第3の擬似エコー信号を減算することにより、第1の入力信号と第3の擬似エコー信号との誤差信号を算出する。誤差算出部182は、算出した誤差信号を適応フィルタ181へ出力する。
次に、ステップS8において、適応フィルタ181は、誤差算出部182から入力された誤差信号に基づいてフィルタ係数を修正する。適応フィルタ181は、修正したフィルタ係数と第1の擬似エコー信号とを畳み込むことにより第3の擬似エコー信号を生成する。
次に、ステップS9において、誤差算出部182は、音響エコー成分をキャンセルした第1の入力信号を第1の出力端子20へ出力する。すなわち、誤差算出部182は、第1のマイク11からの第1の入力信号から、適応フィルタ181からの第3の擬似エコー信号を減算することにより、第1の入力信号から音響エコー成分をキャンセルする。
次に、ステップS10において、第4のエコーキャンセラ19の適応フィルタ191は、フィルタ係数と第1の擬似エコー信号とを畳み込むことにより、第2の入力信号に含まれる第1の擬似エコー信号の成分を示す第4の擬似エコー信号を生成する。
次に、ステップS11において、誤差算出部192は、第2のマイク12からの第2の入力信号から、適応フィルタ191からの第4の擬似エコー信号を減算することにより、第2の入力信号と第4の擬似エコー信号との誤差信号を算出する。誤差算出部192は、算出した誤差信号を適応フィルタ191へ出力する。
次に、ステップS12において、適応フィルタ191は、誤差算出部192から入力された誤差信号に基づいてフィルタ係数を修正する。適応フィルタ191は、修正したフィルタ係数と第1の擬似エコー信号とを畳み込むことにより第4の擬似エコー信号を生成する。
次に、ステップS13において、誤差算出部192は、音響エコー成分をキャンセルした第2の入力信号を第2の出力端子21へ出力する。すなわち、誤差算出部192は、第2のマイク12からの第2の入力信号から、適応フィルタ191からの第4の擬似エコー信号を減算することにより、第2の入力信号から音響エコー成分をキャンセルする。
なお、音響エコーキャンセル装置1が動作を開始した初期段階では、フィルタ係数が充分に修正されていないため、第1の入力信号及び第2の入力信号から音響エコー成分を充分にキャンセルすることができないが、ステップS1~ステップS13の処理が繰り返し実行されることで、フィルタ係数が充分に修正され、第1の入力信号及び第2の入力信号から音響エコー成分を充分にキャンセルすることができるようになる。
このように、第1のエコーキャンセラ16によって、少なくとも2つのマイクから得られる入力信号に含まれる再生信号の成分を示す第1の擬似エコー信号が生成され、第2のエコーキャンセラ17によって、少なくとも1つの入力信号に含まれる第1の擬似エコー信号の成分を示す第2の擬似エコー信号が生成され、生成された第2の擬似エコー信号を用いて少なくとも1つの入力信号の音響エコー成分がキャンセルされる。
したがって、第2の擬似エコー信号は、既に生成された第1の擬似エコー信号を用いて生成されるので、第2の擬似エコー信号を生成する際に用いられる適応フィルタのフィルタ長(タップ長)を短くすることができ、通話性能を維持することができるとともに、音響エコーを除去するための演算量を削減することができる。
特に、第1段目のエコーキャンセラ(第1のエコーキャンセラ16)によるエコーキャンセル処理は、従来と同じ程度のフィルタ長(演算量)であるが、第2段目以降のエコーキャンセラ(第3のエコーキャンセラ18及び第4のエコーキャンセラ19)によるエコーキャンセル処理は、既に生成された第1の擬似エコー信号が用いられるので、従来よりもフィルタ長を短くすることができ、その結果、従来よりも演算量を削減することができる。そのため、マイクの数が増えるほど、従来に比べて演算量をより削減すことができる。
本実施の形態1において、第1のエコーキャンセラ16は、第1のマイク11からの第1の入力信号と第2のマイク12からの第2の入力信号とを加算した加算信号と、スピーカ15への再生信号とを用いて、第1の擬似エコー信号を生成している。これは、スピーカ15から、第1のマイク11と第2のマイク12との中間位置に配置される仮想的なマイクに入力される音響エコーを推定していると言える。そして、第3のエコーキャンセラ18は、第1のエコーキャンセラ16によって生成された第1の擬似エコー信号を用いて第3の擬似エコー信号を生成している。これは、仮想的なマイクの位置と第1のマイク11の位置との差分に相当する音響エコーを推定していると言える。そのため、第3のエコーキャンセラ18の適応フィルタ181のフィルタ長は、第1のエコーキャンセラ16の適応フィルタ161のフィルタ長よりも大幅に短くすることができる。同様に、第4のエコーキャンセラ19の適応フィルタ191のフィルタ長は、第1のエコーキャンセラ16の適応フィルタ161のフィルタ長よりも大幅に短くすることができる。
例えば、第3のエコーキャンセラ18及び第4のエコーキャンセラ19の演算量は、第1のエコーキャンセラ16の演算量の10分の1程度に低減することができる。そのため、第1のエコーキャンセラ16、第3のエコーキャンセラ18及び第4のエコーキャンセラ19の総演算量は、第1のマイク11及び第2のマイク12のそれぞれに第1のエコーキャンセラ16と同じ演算量の2つのエコーキャンセラを設けた場合の総演算量よりも、充分に少なくすることができる。
また、複数のマイクはそれぞれ配置位置が異なる。そのため、音響エコーとして入力される反射波(エコー信号)の波形は複数のマイク毎に異なる。エコー信号の位相が、話者の音声である入力信号とは逆位相である場合、エコー信号が入力信号に加算されることで、入力信号が消えてしまい、入力信号の音響エコーをキャンセルすることが困難となる。しかしながら、本実施の形態1では、少なくとも2つのマイクからの第1の入力信号と第2の入力信号とが加算されるので、音響エコーの干渉による信号の欠落の影響を低減することができる。
なお、本実施の形態1では、第1のエコーキャンセラ16には、時間領域の再生信号及び時間領域の加算信号が入力され、第2のエコーキャンセラ17には、時間領域の第1の入力信号、時間領域の第2の入力信号及び時間領域の第1の擬似エコー信号が入力されるが、本開示は特にこれに限定されず、第1のエコーキャンセラ16には、周波数領域の再生信号及び周波数領域の加算信号が入力され、第2のエコーキャンセラ17には、周波数領域の第1の入力信号、周波数領域の第2の入力信号及び周波数領域の第1の擬似エコー信号が入力されてもよい。以下、この実施の形態1の変形例1について説明する。
図3は、本開示の実施の形態1の変形例1における通話装置の構成を示す図である。
図3に示す通話装置は、音響エコーキャンセル装置1A、第1のマイク11、第2のマイク12、入力端子14、スピーカ15、第1の出力端子20及び第2の出力端子21を備える。なお、実施の形態1の変形例1において、実施の形態1と同じ構成については同じ符号を付し、説明を省略する。
音響エコーキャンセル装置1Aは、加算部13、第1のエコーキャンセラ16、第2のエコーキャンセラ17、高速フーリエ変換部24,25,28,29及び逆高速フーリエ変換部30,31を備える。
高速フーリエ変換部24,25,28,29は、離散フーリエ変換を高速に行う。高速フーリエ変換部24は、第1のエコーキャンセラ16に入力される時間領域の再生信号を周波数領域の再生信号に変換する。高速フーリエ変換部25は、加算部13から第1のエコーキャンセラ16に入力される時間領域の加算信号(入力信号)を周波数領域の加算信号(入力信号)に変換する。
高速フーリエ変換部28は、第1のマイク11から第3のエコーキャンセラ18に入力される時間領域の第1の入力信号(少なくとも1つの入力信号)を周波数領域の第1の入力信号(少なくとも1つの入力信号)に変換する。高速フーリエ変換部29は、第2のマイク12から第4のエコーキャンセラ19に入力される時間領域の第2の入力信号(少なくとも1つの入力信号)を周波数領域の第2の入力信号(少なくとも1つの入力信号)に変換する。
逆高速フーリエ変換部30,31は、逆離散フーリエ変換を高速に行う。逆高速フーリエ変換部30は、第3のエコーキャンセラ18から第1の出力端子20に入力される周波数領域の第1の入力信号を時間領域の第1の入力信号に変換する。逆高速フーリエ変換部31は、第4のエコーキャンセラ19から第2の出力端子21に入力される周波数領域の第2の入力信号を時間領域の第2の入力信号に変換する。
第1のエコーキャンセラ16は、周波数領域の加算信号と周波数領域の再生信号とを用いて、周波数領域の第1の擬似エコー信号を生成する。
第3のエコーキャンセラ18は、周波数領域の第1の入力信号と、周波数領域の第1の擬似エコー信号とを用いて、周波数領域の第3の擬似エコー信号を生成し、生成した周波数領域の第3の擬似エコー信号を用いて周波数領域の第1の入力信号の音響エコー成分をキャンセルする。
第4のエコーキャンセラ19は、周波数領域の第2の入力信号と、周波数領域の第1の擬似エコー信号とを用いて、周波数領域の第4の擬似エコー信号を生成し、生成した周波数領域の第4の擬似エコー信号を用いて周波数領域の第2の入力信号の音響エコー成分をキャンセルする。
本実施の形態1の変形例1では、適応フィルタ161,181,191が周波数領域の適応アルゴリズムを用いることができ、畳み込み演算がかけ算により実行することができるので、演算量をさらに削減することができる。
なお、本実施の形態1では、第1のマイク11の配置位置によっては、第1のマイク11からの第1の入力信号と、第1のエコーキャンセラ16によって生成された第1の擬似エコー信号とに時間差が発生するおそれがある。例えば、スピーカ15からの音が第1のマイク11に入力される場合、第1のマイク11からの第1の入力信号には、第1のエコーキャンセラ16によって生成された第1の擬似エコー信号よりも時間的に速いエコー信号が含まれるおそれがある。この場合、理論的に、第3のエコーキャンセラ18は、第1の擬似エコー信号を用いて、第1の入力信号に含まれるエコー信号を推定することができないおそれがある。そこで、音響エコーキャンセル装置は、少なくとも2つのマイクから出力される少なくとも1つの入力信号を遅延させる遅延部をさらに備えてもよい。以下、この実施の形態1の変形例2について説明する。
図10は、本開示の実施の形態1の変形例2における通話装置の構成を示す図である。
図10に示す通話装置は、音響エコーキャンセル装置1F、第1のマイク11、第2のマイク12、入力端子14、スピーカ15、第1の出力端子20及び第2の出力端子21を備える。なお、実施の形態1の変形例2において、実施の形態1と同じ構成については同じ符号を付し、説明を省略する。
音響エコーキャンセル装置1Fは、加算部13、第1のエコーキャンセラ16、第2のエコーキャンセラ17及び遅延部80を備える。
遅延部80は、少なくとも2つのマイクから出力される少なくとも1つの入力信号を遅延させる。遅延部80は、第1の遅延部81及び第2の遅延部82を備える。
第1の遅延部81は、第1のマイク11と第3のエコーキャンセラ18との間に配置される。第1の遅延部81は、第1のマイク11からの第1の入力信号を遅延させる。
第2の遅延部82は、第2のマイク12と第4のエコーキャンセラ19との間に配置される。第2の遅延部82は、第2のマイク12からの第2の入力信号を遅延させる。
第2のエコーキャンセラ17は、遅延させた少なくとも1つの入力信号と、第1のエコーキャンセラ16によって生成された第1の擬似エコー信号とを用いて、遅延させた少なくとも1つの入力信号に含まれる第1の擬似エコー信号の成分を示す第2の擬似エコー信号を生成し、生成した第2の擬似エコー信号を用いて、遅延させた少なくとも1つの入力信号の音響エコー成分をキャンセルする。
第3のエコーキャンセラ18は、遅延させた第1の入力信号と、第1のエコーキャンセラ16によって生成された第1の擬似エコー信号とを用いて、遅延させた第1の入力信号に含まれる第1の擬似エコー信号の成分を示す第3の擬似エコー信号を生成し、生成した第3の擬似エコー信号を用いて、遅延させた第1の入力信号の音響エコー成分をキャンセルする。
第4のエコーキャンセラ19は、遅延させた第2の入力信号と、第1のエコーキャンセラ16によって生成された第1の擬似エコー信号とを用いて、遅延させた第2の入力信号に含まれる第1の擬似エコー信号の成分を示す第4の擬似エコー信号を生成し、生成した第4の擬似エコー信号を用いて、遅延させた第2の入力信号の音響エコー成分をキャンセルする。
本実施の形態1の変形例2では、第1の遅延部81によって遅延させた第1の入力信号が第3のエコーキャンセラ18に入力され、第2の遅延部82によって遅延させた第2の入力信号が第4のエコーキャンセラ19に入力されるので、第1のエコーキャンセラ16によって生成された第1の擬似エコー信号と第1の入力信号との時間差がなくなるとともに、第1の擬似エコー信号と第2の入力信号との時間差がなくなり、確実に第3の擬似エコー信号及び第4の擬似エコー信号を生成することができる。
なお、本実施の形態1の変形例1において、音響エコーキャンセル装置1Aは、第1のマイク11と高速フーリエ変換部28との間に第1の遅延部81を備えてもよく、第2のマイク12と高速フーリエ変換部29との間に第2の遅延部82を備えてもよい。
また、本実施の形態1では、加算部13が第1のマイク11からの第1の入力信号と第2のマイク12からの第2の入力信号とを加算し、第1のエコーキャンセラ16は、加算信号と再生信号とを用いて、加算信号に含まれる再生信号の成分を示す第1の擬似エコー信号を生成しているが、本開示は特にこれに限定されず、音響エコーキャンセル装置1は、加算部13からの加算信号を平均化する平均処理部をさらに備えてもよい。この場合、第1のエコーキャンセラ16は、平均処理部からの平均化信号と再生信号とを用いて、平均化信号に含まれる再生信号の成分を示す第1の擬似エコー信号を生成してもよい。
(実施の形態2)
実施の形態1では、第1のエコーキャンセラによって生成された第1の擬似エコー信号が第3のエコーキャンセラ及び第4のエコーキャンセラに出力され、第3のエコーキャンセラが第1の擬似エコー信号を用いて第1の入力信号の音響エコー成分をキャンセルし、第4のエコーキャンセラが第1の擬似エコー信号を用いて第2の入力信号の音響エコー成分をキャンセルしているが、実施の形態2では、第1のエコーキャンセラが、第1の擬似エコー信号を生成するとともに、第1の擬似エコー信号を用いて第1の入力信号の音響エコー成分をキャンセルし、第2のエコーキャンセラが、第1の擬似エコー信号を用いて第2の入力信号の音響エコー成分をキャンセルする。
図4は、本開示の実施の形態2における通話装置の構成を示す図である。
図4に示す通話装置は、音響エコーキャンセル装置1B、第1のマイク11、第2のマイク12、入力端子14、スピーカ15、第1の出力端子20及び第2の出力端子21を備える。なお、実施の形態2において、実施の形態1と同じ構成については同じ符号を付し、説明を省略する。
音響エコーキャンセル装置1Bは、第1のエコーキャンセラ41及び第2のエコーキャンセラ42を備える。
第1のエコーキャンセラ41は、少なくとも2つのマイクから得られる入力信号と、スピーカへ出力される再生信号とを用いて、入力信号に含まれる再生信号の成分を示す第1の擬似エコー信号を生成する。
第1のエコーキャンセラ41は、スピーカ15から最も近い位置のマイクに対して、第1の擬似エコー信号を生成することが好ましい。この場合、第1のエコーキャンセラ41は、スピーカ15から最も近い位置のマイクから出力される入力信号と再生信号とを用いて、入力信号に含まれる再生信号の成分を示す第1の擬似エコー信号を生成する。本実施の形態2において、スピーカ15から最も近い位置のマイクは、第1のマイク11である。
本実施の形態2において、少なくとも2つのマイクから得られる入力信号は、第1のマイク11からの第1の入力信号である。すなわち、第1のエコーキャンセラ41は、第1の入力信号と再生信号とを用いて、第1の入力信号に含まれる再生信号の成分を示す第1の擬似エコー信号を生成する。また、第1のエコーキャンセラ41は、生成した第1の擬似エコー信号を用いて第1の入力信号の音響エコー成分をキャンセルする。
第1のエコーキャンセラ41は、適応フィルタ411及び誤差算出部412を備える。
適応フィルタ411は、フィルタ係数と再生信号とを畳み込むことにより、第1の入力信号に含まれる再生信号の成分を示す第1の擬似エコー信号を生成する。
誤差算出部412は、第1のマイク11からの第1の入力信号と適応フィルタ411からの第1の擬似エコー信号との誤差信号を算出し、算出した誤差信号を適応フィルタ411へ出力する。適応フィルタ411は、入力された誤差信号に基づいてフィルタ係数を修正し、修正したフィルタ係数と再生信号とを畳み込むことにより第1の擬似エコー信号を生成する。適応フィルタ411は、適応アルゴリズムを用いて、誤差信号が最小となるようにフィルタ係数を修正する。適応アルゴリズムとしては、例えば、学習同定法、アフィン射影法又は再帰的最小2乗法が用いられる。
また、誤差算出部412は、第1のマイク11からの第1の入力信号から、適応フィルタ411からの第1の擬似エコー信号を減算することにより、第1の入力信号から音響エコー成分をキャンセルする。そのため、誤差算出部412は、音響エコー成分をキャンセルした第1の入力信号を第1の出力端子20へ出力する。
第1のエコーキャンセラ41によって生成された第1の擬似エコー信号は、第2のエコーキャンセラ42に出力される。
第2のエコーキャンセラ42は、第2の入力信号と、第1のエコーキャンセラ41によって生成された第1の擬似エコー信号とを用いて、第2の入力信号に含まれる第1の擬似エコー信号の成分を示す第2の擬似エコー信号を生成し、生成した第2の擬似エコー信号を用いて第2の入力信号の音響エコー成分をキャンセルする。
第2のエコーキャンセラ42は、適応フィルタ421及び誤差算出部422を備える。
適応フィルタ421は、フィルタ係数と第1の擬似エコー信号とを畳み込むことにより、第2の入力信号に含まれる第1の擬似エコー信号の成分を示す第2の擬似エコー信号を生成する。
誤差算出部422は、第2のマイク12からの第2の入力信号と適応フィルタ421からの第2の擬似エコー信号との誤差信号を算出し、算出した誤差信号を適応フィルタ421へ出力する。適応フィルタ421は、入力された誤差信号に基づいてフィルタ係数を修正し、修正したフィルタ係数と第1の擬似エコー信号とを畳み込むことにより第2の擬似エコー信号を生成する。適応フィルタ421は、適応アルゴリズムを用いて、誤差信号が最小となるようにフィルタ係数を修正する。適応アルゴリズムとしては、例えば、学習同定法、アフィン射影法又は再帰的最小2乗法が用いられる。
また、誤差算出部422は、第2のマイク12からの第2の入力信号から、適応フィルタ421からの第2の擬似エコー信号を減算することにより、第2の入力信号から音響エコー成分をキャンセルする。そのため、誤差算出部422は、音響エコー成分をキャンセルした第2の入力信号を第2の出力端子21へ出力する。
なお、本実施の形態2において、通話装置は、2つのマイクを備えているが、本開示は特にこれに限定されず、3つ以上のマイクを備えてもよい。通話装置が3つ以上のマイクを備える場合、第1のエコーキャンセラ41は、第1のマイク11以外の他のマイクのそれぞれに対して設けられたエコーキャンセラへ第1の擬似エコー信号を出力する。
また、本実施の形態2において、通話装置は、1つのスピーカを備えているが、本開示は特にこれに限定されず、2つ以上のスピーカを備えてもよい。通話装置が複数のスピーカを備える場合、通話装置は、複数のスピーカと同じ数の音響エコーキャンセル装置1Bを備える必要がある。
次に、本開示の実施の形態2における音響エコーキャンセル装置1Bの動作について説明する。
図5は、本開示の実施の形態2における音響エコーキャンセル装置の動作を説明するためのフローチャートである。
まず、ステップS21において、第1のエコーキャンセラ41の適応フィルタ411は、フィルタ係数と再生信号とを畳み込むことにより、第1の入力信号に含まれる再生信号の成分を示す第1の擬似エコー信号を生成する。
次に、ステップS22において、誤差算出部412は、第1のマイク11からの第1の入力信号から、適応フィルタ411からの第1の擬似エコー信号を減算することにより、第1の入力信号と第1の擬似エコー信号との誤差信号を算出する。誤差算出部412は、算出した誤差信号を適応フィルタ411へ出力する。
次に、ステップS23において、適応フィルタ411は、誤差算出部412から入力された誤差信号に基づいてフィルタ係数を修正する。適応フィルタ411は、修正したフィルタ係数と再生信号とを畳み込むことにより第1の擬似エコー信号を生成する。
次に、ステップS24において、誤差算出部412は、音響エコー成分をキャンセルした第1の入力信号を第1の出力端子20へ出力する。すなわち、誤差算出部412は、第1のマイク11からの第1の入力信号から、適応フィルタ411からの第1の擬似エコー信号を減算することにより、第1の入力信号から音響エコー成分をキャンセルする。
次に、ステップS25において、適応フィルタ411は、生成した第1の擬似エコー信号を第2のエコーキャンセラ42へ出力する。
次に、ステップS26において、第2のエコーキャンセラ42の適応フィルタ421は、フィルタ係数と第1の擬似エコー信号とを畳み込むことにより、第2の入力信号に含まれる第1の擬似エコー信号の成分を示す第2の擬似エコー信号を生成する。
次に、ステップS27において、誤差算出部422は、第2のマイク12からの第2の入力信号から、適応フィルタ421からの第2の擬似エコー信号を減算することにより、第2の入力信号と第2の擬似エコー信号との誤差信号を算出する。誤差算出部422は、算出した誤差信号を適応フィルタ421へ出力する。
次に、ステップS28において、適応フィルタ421は、誤差算出部422から入力された誤差信号に基づいてフィルタ係数を修正する。適応フィルタ421は、修正したフィルタ係数と第1の擬似エコー信号とを畳み込むことにより第2の擬似エコー信号を生成する。
次に、ステップS29において、誤差算出部422は、音響エコー成分をキャンセルした第2の入力信号を第2の出力端子21へ出力する。すなわち、誤差算出部422は、第2のマイク12からの第2の入力信号から、適応フィルタ421からの第2の擬似エコー信号を減算することにより、第2の入力信号から音響エコー成分をキャンセルする。
なお、音響エコーキャンセル装置1Bが動作を開始した初期段階では、フィルタ係数が充分に修正されていないため、第1の入力信号及び第2の入力信号から音響エコー成分を充分にキャンセルすることができないが、ステップS21~ステップS29の処理が繰り返し実行されることで、フィルタ係数が充分に修正され、第1の入力信号及び第2の入力信号から音響エコー成分を充分にキャンセルすることができるようになる。
このように、第1のエコーキャンセラ41によって、第1のマイク11から得られる第1の入力信号に含まれる再生信号の成分を示す第1の擬似エコー信号が生成され、生成された第1の擬似エコー信号を用いて第1の入力信号の音響エコー成分がキャンセルされ、第2のエコーキャンセラ42によって、第2の入力信号に含まれる第1の擬似エコー信号の成分を示す第2の擬似エコー信号が生成され、生成された第2の擬似エコー信号を用いて第2の入力信号の音響エコー成分がキャンセルされる。
したがって、第2の擬似エコー信号は、既に生成された第1の擬似エコー信号を用いて生成されるので、第2の擬似エコー信号を生成する際に用いられる適応フィルタのフィルタ長(タップ長)を短くすることができ、通話性能を維持することができるとともに、音響エコーを除去するための演算量を削減することができる。
特に、第1段目のエコーキャンセラ(第1のエコーキャンセラ41)によるエコーキャンセル処理は、従来と同じ程度のフィルタ長(演算量)であるが、第2段目以降のエコーキャンセラ(第2のエコーキャンセラ42)によるエコーキャンセル処理は、既に生成された第1の擬似エコー信号が用いられるので、従来よりもフィルタ長を短くすることができ、その結果、従来よりも演算量を削減することができる。そのため、マイクの数が増えるほど、従来に比べて演算量をより削減すことができる。
本実施の形態2において、第1のエコーキャンセラ41は、第1のマイク11からの第1の入力信号と、スピーカ15への再生信号とを用いて、第1の擬似エコー信号を生成している。これは、スピーカ15から、第1のマイク11に入力される音響エコーを推定していると言える。そして、第2のエコーキャンセラ42は、第1のエコーキャンセラ16によって生成された第1の擬似エコー信号を用いて第2の擬似エコー信号を生成している。これは、第1のマイク11の位置と第2のマイク12の位置との差分に相当する音響エコーを推定していると言える。そのため、第2のエコーキャンセラ42の適応フィルタ421のフィルタ長は、第1のエコーキャンセラ41の適応フィルタ411のフィルタ長よりも大幅に短くすることができる。
例えば、第2のエコーキャンセラ42の演算量は、第1のエコーキャンセラ41の演算量の10分の1程度に低減することができる。そのため、第1のエコーキャンセラ41及び第2のエコーキャンセラ42の総演算量は、第1のマイク11及び第2のマイク12のそれぞれに第1のエコーキャンセラ41と同じ演算量の2つのエコーキャンセラを設けた場合の総演算量よりも、充分に少なくすることができる。
なお、本実施の形態2において、音響エコーキャンセル装置1Bは、第2のマイク12と第2のエコーキャンセラ42との間に遅延部を備えてもよい。
なお、本実施の形態2では、第1のエコーキャンセラ41には、時間領域の再生信号及び時間領域の第1の入力信号が入力され、第2のエコーキャンセラ42には、時間領域の第2の入力信号及び時間領域の第1の擬似エコー信号が入力されるが、本開示は特にこれに限定されず、第1のエコーキャンセラ41には、周波数領域の再生信号及び周波数領域の第1の入力信号が入力され、第2のエコーキャンセラ42には、周波数領域の第2の入力信号及び周波数領域の第1の擬似エコー信号が入力されてもよい。以下、この実施の形態2の変形例について説明する。
図6は、本開示の実施の形態2の変形例における通話装置の構成を示す図である。
図6に示す通話装置は、音響エコーキャンセル装置1C、第1のマイク11、第2のマイク12、入力端子14、スピーカ15、第1の出力端子20及び第2の出力端子21を備える。なお、実施の形態2の変形例において、実施の形態2と同じ構成については同じ符号を付し、説明を省略する。
音響エコーキャンセル装置1Cは、第1のエコーキャンセラ41、第2のエコーキャンセラ42、高速フーリエ変換部45,46,49及び逆高速フーリエ変換部50,51を備える。
高速フーリエ変換部45,46,49は、離散フーリエ変換を高速に行う。高速フーリエ変換部45は、第1のエコーキャンセラ41に入力される時間領域の再生信号を周波数領域の再生信号に変換する。高速フーリエ変換部46は、第1のマイク11から第1のエコーキャンセラ41に入力される時間領域の第1の入力信号を周波数領域の第1の入力信号に変換する。高速フーリエ変換部49は、第2のマイク12から第2のエコーキャンセラ42に入力される時間領域の第2の入力信号を周波数領域の第2の入力信号に変換する。
逆高速フーリエ変換部50,51は、逆離散フーリエ変換を高速に行う。逆高速フーリエ変換部50は、第1のエコーキャンセラ41から第1の出力端子20に入力される周波数領域の第1の入力信号を時間領域の第1の入力信号に変換する。逆高速フーリエ変換部51は、第2のエコーキャンセラ42から第2の出力端子21に入力される周波数領域の第2の入力信号を時間領域の第2の入力信号に変換する。
第1のエコーキャンセラ41は、周波数領域の第1の入力信号と周波数領域の再生信号とを用いて、周波数領域の第1の擬似エコー信号を生成し、生成した周波数領域の第1の擬似エコー信号を用いて周波数領域の第1の入力信号の音響エコー成分をキャンセルする。
第2のエコーキャンセラ42は、周波数領域の第2の入力信号と、周波数領域の第1の擬似エコー信号とを用いて、周波数領域の第2の擬似エコー信号を生成し、生成した周波数領域の第2の擬似エコー信号を用いて周波数領域の第2の入力信号の音響エコー成分をキャンセルする。
本実施の形態2の変形例では、適応フィルタ411,421が周波数領域の適応アルゴリズムを用いることができ、畳み込み演算がかけ算により実行することができるので、演算量をさらに削減することができる。
なお、本実施の形態2の変形例において、音響エコーキャンセル装置1Cは、第2のマイク12と高速フーリエ変換部49との間に遅延部を備えてもよい。
(実施の形態3)
実施の形態1では、第1のエコーキャンセラは、加算部からの加算信号と再生信号とを用いて、加算信号に含まれる再生信号の成分を示す第1の擬似エコー信号を生成しているが、実施の形態3では、第1のエコーキャンセラは、第1の入力信号と第1の擬似エコー信号との誤差を示す第1の誤差信号を算出し、第2の入力信号と第1の擬似エコー信号との誤差を示す第2の誤差信号を算出し、第1の誤差信号と第2の誤差信号とを加算した加算信号を平均化し、平均信号と再生信号とを用いて、平均信号に含まれる再生信号の成分を示す第1の擬似エコー信号を生成する。
図7は、本開示の実施の形態3における通話装置の構成を示す図である。
図7に示す通話装置は、音響エコーキャンセル装置1D、第1のマイク11、第2のマイク12、入力端子14、スピーカ15、第1の出力端子20及び第2の出力端子21を備える。なお、実施の形態3において、実施の形態1と同じ構成については同じ符号を付し、説明を省略する。
音響エコーキャンセル装置1Dは、第1のエコーキャンセラ61及び第2のエコーキャンセラ17を備える。
第1のエコーキャンセラ61は、少なくとも2つのマイクから得られる入力信号と、スピーカへ出力される再生信号とを用いて、入力信号に含まれる再生信号の成分を示す第1の擬似エコー信号を生成する。
本実施の形態3において、少なくとも2つのマイクから得られる入力信号は、第1の入力信号と第1の擬似エコー信号との誤差を示す第1の誤差信号と、第2の入力信号と第1の擬似エコー信号との誤差を示す第2の誤差信号とを加算した加算信号を平均化した平均信号である。すなわち、第1のエコーキャンセラ61は、平均信号と再生信号とを用いて、平均信号に含まれる再生信号の成分を示す第1の擬似エコー信号を生成する。
第1のエコーキャンセラ61は、適応フィルタ611、第1の誤差算出部612、第2の誤差算出部613及び平均処理部614を備える。
適応フィルタ611は、フィルタ係数と再生信号とを畳み込むことにより、平均信号に含まれる再生信号の成分を示す第1の擬似エコー信号を生成する。
第1の誤差算出部612は、第1の入力信号と第1の擬似エコー信号との誤差を示す第1の誤差信号を算出する。第1の誤差算出部612は、算出した第1の誤差信号を第2の誤差算出部613へ出力する。
第2の誤差算出部613は、第2の入力信号と第1の擬似エコー信号との誤差を示す第2の誤差信号を算出するとともに、第1の誤差信号と第2の誤差信号とを加算する。第2の誤差算出部613は、第1の誤差信号と第2の誤差信号とを加算した加算信号を平均処理部614へ出力する。
平均処理部614は、第1の誤差信号と第2の誤差信号とを加算した加算信号を平均化する。平均処理部614は、第1の誤差信号と第2の誤差信号とを加算した加算信号を平均化した平均信号を適応フィルタ611へ出力する。
適応フィルタ611は、平均処理部614からの平均信号と再生信号とを用いて、平均信号に含まれる再生信号の成分を示す第1の擬似エコー信号を生成する。適応フィルタ611は、入力された平均信号に基づいてフィルタ係数を修正し、修正したフィルタ係数と再生信号とを畳み込むことにより第1の擬似エコー信号を生成する。適応フィルタ611は、適応アルゴリズムを用いて、平均信号が最小となるようにフィルタ係数を修正する。適応アルゴリズムとしては、例えば、学習同定法、アフィン射影法又は再帰的最小2乗法が用いられる。
第1のエコーキャンセラ61によって生成された第1の擬似エコー信号は、第3のエコーキャンセラ18及び第4のエコーキャンセラ19に出力される。
なお、本実施の形態3において、通話装置は、2つのマイクを備えているが、本開示は特にこれに限定されず、3つ以上のマイクを備えてもよい。通話装置が3つ以上のマイクを備える場合、第1のエコーキャンセラ61は、3つ以上のマイクからの各入力信号と第1の擬似エコー信号との各誤差信号を加算及び平均化し、3つ以上のマイクのそれぞれに対して設けられたエコーキャンセラへ第1の擬似エコー信号を出力する。
また、本実施の形態3において、通話装置は、1つのスピーカを備えているが、本開示は特にこれに限定されず、2つ以上のスピーカを備えてもよい。通話装置が複数のスピーカを備える場合、通話装置は、複数のスピーカと同じ数の音響エコーキャンセル装置1Dを備える必要がある。
次に、本開示の実施の形態3における音響エコーキャンセル装置1Dの動作について説明する。
図8は、本開示の実施の形態3における音響エコーキャンセル装置の動作を説明するためのフローチャートである。
まず、ステップS41において、第1のエコーキャンセラ61の適応フィルタ611は、フィルタ係数と再生信号とを畳み込むことにより、平均信号に含まれる再生信号の成分を示す第1の擬似エコー信号を生成する。
次に、ステップS42において、第1の誤差算出部612は、第1のマイク11からの第1の入力信号から、適応フィルタ611からの第1の擬似エコー信号を減算することにより、第1の入力信号と第1の擬似エコー信号との差分である第1の誤差信号を算出する。第1の誤差算出部612は、算出した第1の誤差信号を第2の誤差算出部613へ出力する。
次に、ステップS43において、第2の誤差算出部613は、第2のマイク12からの第2の入力信号から、適応フィルタ611からの第1の擬似エコー信号を減算することにより、第2の入力信号と第1の擬似エコー信号との差分である第2の誤差信号を算出する。
次に、ステップS44において、第2の誤差算出部613は、第1の誤差信号と第2の誤差信号とを加算する。第2の誤差算出部613は、算出した第1の誤差信号と第2の誤差信号との加算信号を平均処理部614へ出力する。
次に、ステップS45において、平均処理部614は、第1の誤差信号と第2の誤差信号との加算信号を平均化する。平均処理部614は、加算信号を平均化した平均信号を適応フィルタ611へ出力する。
次に、ステップS46において、適応フィルタ611は、平均処理部614から入力された平均信号に基づいてフィルタ係数を修正する。適応フィルタ611は、修正したフィルタ係数と再生信号とを畳み込むことにより第1の擬似エコー信号を生成する。
次に、ステップS47において、適応フィルタ611は、生成した第1の擬似エコー信号を第3のエコーキャンセラ18及び第4のエコーキャンセラ19へ出力する。
次に、ステップS48において、第3のエコーキャンセラ18の適応フィルタ181は、フィルタ係数と第1の擬似エコー信号とを畳み込むことにより、第1の入力信号に含まれる第1の擬似エコー信号の成分を示す第3の擬似エコー信号を生成する。
次に、ステップS49において、誤差算出部182は、第1のマイク11からの第1の入力信号から、適応フィルタ181からの第3の擬似エコー信号を減算することにより、第1の入力信号と第3の擬似エコー信号との第3の誤差信号を算出する。誤差算出部182は、算出した第3の誤差信号を適応フィルタ181へ出力する。
次に、ステップS50において、適応フィルタ181は、誤差算出部182から入力された第3の誤差信号に基づいてフィルタ係数を修正する。適応フィルタ181は、修正したフィルタ係数と第1の擬似エコー信号とを畳み込むことにより第3の擬似エコー信号を生成する。
次に、ステップS51において、誤差算出部182は、音響エコー成分をキャンセルした第1の入力信号を第1の出力端子20へ出力する。すなわち、誤差算出部182は、第1のマイク11からの第1の入力信号から、適応フィルタ181からの第3の擬似エコー信号を減算することにより、第1の入力信号から音響エコー成分をキャンセルする。
次に、ステップS52において、第4のエコーキャンセラ19の適応フィルタ191は、フィルタ係数と第1の擬似エコー信号とを畳み込むことにより、第2の入力信号に含まれる第1の擬似エコー信号の成分を示す第4の擬似エコー信号を生成する。
次に、ステップS53において、誤差算出部192は、第2のマイク12からの第2の入力信号から、適応フィルタ191からの第4の擬似エコー信号を減算することにより、第2の入力信号と第4の擬似エコー信号との第4の誤差信号を算出する。誤差算出部192は、算出した第4の誤差信号を適応フィルタ191へ出力する。
次に、ステップS54において、適応フィルタ191は、誤差算出部192から入力された第4の誤差信号に基づいてフィルタ係数を修正する。適応フィルタ191は、修正したフィルタ係数と第1の擬似エコー信号とを畳み込むことにより第4の擬似エコー信号を生成する。
次に、ステップS55において、誤差算出部192は、音響エコー成分をキャンセルした第2の入力信号を第2の出力端子21へ出力する。すなわち、誤差算出部192は、第2のマイク12からの第2の入力信号から、適応フィルタ191からの第4の擬似エコー信号を減算することにより、第2の入力信号から音響エコー成分をキャンセルする。
なお、音響エコーキャンセル装置1Dが動作を開始した初期段階では、フィルタ係数が充分に修正されていないため、第1の入力信号及び第2の入力信号から音響エコー成分を充分にキャンセルすることができないが、ステップS41~ステップS55の処理が繰り返し実行されることで、フィルタ係数が充分に修正され、第1の入力信号及び第2の入力信号から音響エコー成分を充分にキャンセルすることができるようになる。
このように、第1のエコーキャンセラ61によって、少なくとも2つのマイクから得られる入力信号に含まれる再生信号の成分を示す第1の擬似エコー信号が生成され、第2のエコーキャンセラ17によって、少なくとも1つの入力信号に含まれる第1の擬似エコー信号の成分を示す第2の擬似エコー信号が生成され、生成された第2の擬似エコー信号を用いて少なくとも1つの入力信号の音響エコー成分がキャンセルされる。
したがって、第2の擬似エコー信号は、既に生成された第1の擬似エコー信号を用いて生成されるので、第2の擬似エコー信号を生成する際に用いられる適応フィルタのフィルタ長(タップ長)を短くすることができ、通話性能を維持することができるとともに、音響エコーを除去するための演算量を削減することができる。
特に、第1段目のエコーキャンセラ(第1のエコーキャンセラ61)によるエコーキャンセル処理は、従来と同じ程度のフィルタ長(演算量)であるが、第2段目以降のエコーキャンセラ(第3のエコーキャンセラ18及び第4のエコーキャンセラ19)によるエコーキャンセル処理は、既に生成された第1の擬似エコー信号が用いられるので、従来よりもフィルタ長を短くすることができ、その結果、従来よりも演算量を削減することができる。そのため、マイクの数が増えるほど、従来に比べて演算量をより削減することができる。
また、複数のマイクはそれぞれ配置位置が異なる。そのため、音響エコーとして入力される反射波(エコー信号)の波形は複数のマイク毎に異なる。エコー信号の位相が、話者の音声である入力信号とは逆位相である場合、エコー信号が入力信号に加算されることで、入力信号が消えてしまい、入力信号の音響エコーをキャンセルすることが困難となる。しかしながら、本実施の形態3では、少なくとも2つのマイクからの第1の入力信号及び第2の入力信号のそれぞれの誤差信号が加算及び平均化されるので、音響エコーの干渉による信号の欠落の影響を低減することができる。
なお、本実施の形態3において、音響エコーキャンセル装置1Dは、第1のマイク11と第3のエコーキャンセラ18との間に第1の遅延部81を備えてもよく、第2のマイク12と第4のエコーキャンセラ19との間に第2の遅延部82を備えてもよい。
なお、本実施の形態3では、第1のエコーキャンセラ61には、時間領域の再生信号、時間領域の第1の入力信号及び時間領域の第2の入力信号が入力され、第2のエコーキャンセラ17には、時間領域の第1の入力信号、時間領域の第2の入力信号及び時間領域の第1の擬似エコー信号が入力されるが、本開示は特にこれに限定されず、第1のエコーキャンセラ61には、周波数領域の再生信号、周波数領域の第1の入力信号及び周波数領域の第2の入力信号が入力され、第2のエコーキャンセラ17には、周波数領域の第1の入力信号、周波数領域の第2の入力信号及び周波数領域の第1の擬似エコー信号が入力されてもよい。以下、この実施の形態3の変形例について説明する。
図9は、本開示の実施の形態3の変形例における通話装置の構成を示す図である。
図9に示す通話装置は、音響エコーキャンセル装置1E、第1のマイク11、第2のマイク12、入力端子14、スピーカ15、第1の出力端子20及び第2の出力端子21を備える。なお、実施の形態3の変形例において、実施の形態3と同じ構成については同じ符号を付し、説明を省略する。
音響エコーキャンセル装置1Eは、第1のエコーキャンセラ61、第2のエコーキャンセラ17、高速フーリエ変換部64,65,66及び逆高速フーリエ変換部69,70を備える。
高速フーリエ変換部64,65,66は、離散フーリエ変換を高速に行う。高速フーリエ変換部64は、第1のエコーキャンセラ61に入力される時間領域の再生信号を周波数領域の再生信号に変換する。高速フーリエ変換部65は、第1のマイク11から出力される時間領域の第1の入力信号を周波数領域の第1の入力信号に変換する。高速フーリエ変換部66は、第2のマイク12から出力される時間領域の第2の入力信号を周波数領域の第2の入力信号に変換する。
逆高速フーリエ変換部69,70は、逆離散フーリエ変換を高速に行う。逆高速フーリエ変換部69は、第3のエコーキャンセラ18から第1の出力端子20に入力される周波数領域の第1の入力信号を時間領域の第1の入力信号に変換する。逆高速フーリエ変換部70は、第4のエコーキャンセラ19から第2の出力端子21に入力される周波数領域の第2の入力信号を時間領域の第2の入力信号に変換する。
第1のエコーキャンセラ61は、周波数領域の第1の入力信号と周波数領域の第2の入力信号と周波数領域の再生信号とを用いて、周波数領域の第1の擬似エコー信号を生成する。
第3のエコーキャンセラ18は、周波数領域の第1の入力信号と、周波数領域の第1の擬似エコー信号とを用いて、周波数領域の第3の擬似エコー信号を生成し、生成した周波数領域の第3の擬似エコー信号を用いて周波数領域の第1の入力信号の音響エコー成分をキャンセルする。
第4のエコーキャンセラ19は、周波数領域の第2の入力信号と、周波数領域の第1の擬似エコー信号とを用いて、周波数領域の第4の擬似エコー信号を生成し、生成した周波数領域の第4の擬似エコー信号を用いて周波数領域の第2の入力信号の音響エコー成分をキャンセルする。
本実施の形態3の変形例では、適応フィルタ611,181,191が周波数領域の適応アルゴリズムを用いることができ、畳み込み演算がかけ算により実行することができるので、演算量をさらに削減することができる。
なお、本実施の形態3の変形例において、音響エコーキャンセル装置1Eは、第1のマイク11と第3のエコーキャンセラ18との間に第1の遅延部81を備えてもよく、第2のマイク12と第4のエコーキャンセラ19との間に第2の遅延部82を備えてもよい。この場合、第1のマイク11と誤差算出部182との間の分岐点と、第1の誤差算出部612との間に高速フーリエ変換部65が配置され、分岐点と誤差算出部182との間に第1の遅延部81及び高速フーリエ変換部が配置される。また、第2のマイク12と誤差算出部192との間の分岐点と、第2の誤差算出部613との間に高速フーリエ変換部66が配置され、分岐点と誤差算出部192との間に第2の遅延部82及び高速フーリエ変換部が配置される。
なお、上記各実施の形態において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、CPUまたはプロセッサなどのプログラム実行部が、ハードディスクまたは半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。
本開示の実施の形態に係る装置の機能の一部又は全ては典型的には集積回路であるLSI(Large Scale Integration)として実現される。これらは個別に1チップ化されてもよいし、一部又は全てを含むように1チップ化されてもよい。また、集積回路化はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後にプログラムすることが可能なFPGA(Field Programmable Gate Array)、又はLSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
また、本開示の実施の形態に係る装置の機能の一部又は全てを、CPU等のプロセッサがプログラムを実行することにより実現してもよい。
また、上記で用いた数字は、全て本開示を具体的に説明するために例示するものであり、本開示は例示された数字に制限されない。
また、上記フローチャートに示す各ステップが実行される順序は、本開示を具体的に説明するために例示するためのものであり、同様の効果が得られる範囲で上記以外の順序であってもよい。また、上記ステップの一部が、他のステップと同時(並列)に実行されてもよい。