(57)【要約】【課題】ハウリングの発生を容易に抑制することができるエコーキャンセラを実現する。【解決手段】実施形態によれば、エコーキャンセラは、第１のフィルタ演算手段と、第２のフィルタ演算手段と、減算器とを備える。第１のフィルタ演算手段は、通信端末のスピーカから通信端末のマイクロホンへの伝達関数を模擬した第１のフィルタ係数とリファレンス信号とを畳み込んで第１の疑似エコー信号を推定する。減算器は、通信端末のマイクロホンによって収音される入力音声信号から前記第１の疑似エコー信号と第２の疑似エコー信号とを差し引いて残差信号を出力する。第２のフィルタ演算手段は、前記残差信号が他の端末のスピーカを経由して前記通信端末のマイクロホンに入り前記減算器から出力されるまでの伝達関数を模擬した第２のフィルタ係数と前記蓄積された残差信号とを畳み込んで前記第２の疑似エコー信号を推定する。【選択図】図３
2015039093.tif 000002
【特許請求の範囲】
【請求項１】
通信端末における音響エコーを抑圧するエコーキャンセラであって、
相手端末から受信される受信音声信号をリファレンス信号として蓄積するリファレンス信号蓄積手段と、
前記通信端末のスピーカから前記通信端末のマイクロホンへの伝達関数を模擬した第１のフィルタ係数と前記リファレンス信号とを畳み込んで第１の疑似エコー信号を推定する第１のフィルタ演算手段と、
前記通信端末のマイクロホンによって収音される入力音声信号から前記第１の疑似エコー信号と第２の疑似エコー信号とを差し引いて残差信号を出力する減算器と、
前記残差信号に基づいて前記第１の係数を更新する第１のフィルタ係数更新手段と、
前記残差信号を蓄積する残差信号蓄積手段と、
前記残差信号が他の端末のスピーカを経由して前記通信端末のマイクロホンに入り前記減算器から出力されるまでの伝達関数を模擬した第２のフィルタ係数と前記蓄積された残差信号とを畳み込んで前記第２の疑似エコー信号を推定する第２のフィルタ演算手段と、
前記残差信号に基づいて前記第２のフィルタ係数を更新する第２のフィルタ係数更新手段とを具備するエコーキャンセラ。
【請求項２】
前記受信音声信号のパワーと前記残差信号のパワーとに基づいてハウリングを検出するハウリング検出手段と、
前記ハウリングが検出されるまでは前記第２のフィルタ演算手段および前記第２のフィルタ係数更新手段を停止し、前記ハウリングの検出に応答して前記第２のフィルタ演算手段および前記第２のフィルタ係数更新手段を起動する制御手段とをさらに具備する請求項１記載のエコーキャンセラ。
【請求項３】
通信端末における音響エコーを抑圧するエコーキャンセル方法であって、
相手端末から受信される受信音声信号をリファレンス信号として蓄積し、
前記通信端末のスピーカから前記通信端末のマイクロホンへの伝達関数を模擬した第１のフィルタ係数と前記リファレンス信号とを畳み込んで第１の疑似エコー信号を推定し、
前記通信端末のマイクロホンによって収音される入力音声信号から前記第１の疑似エコー信号と第２の疑似エコー信号とを減算器によって差し引いて残差信号を出力し、
前記残差信号を蓄積し、
前記残差信号に基づいて前記第１の係数を更新し、
前記残差信号が他の端末のスピーカを経由して前記通信端末のマイクロホンに入り前記減算器から出力されるまでの伝達関数を模擬した第２のフィルタ係数と前記蓄積された残差信号とを畳み込んで前記第２の疑似エコー信号を推定し、
前記残差信号に基づいて前記第２のフィルタ係数を更新するエコーキャンセル方法。
【請求項４】
前記受信音声信号のパワーと前記残差信号のパワーとに基づいてハウリングを検出することと、
前記ハウリングが検出されるまでは前記第２の疑似エコー信号を推定することと前記第２のフィルタ係数を更新することとを停止し、前記ハウリングの検出に応答して前記第２の疑似エコー信号を推定することと前記第２のフィルタ係数を更新することとを開始することとをさらに具備する請求項３記載のエコーキャンセル方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、音響エコーを抑圧するためのエコーキャンセラおよびエコーキャンセル方法に関する。
【背景技術】
【０００２】
一般に、テレビ会議、電話会議といった通信システムにおいては、ハンズフリー通話が広く利用されている。このハンズフリー通話を実現するために、各通信端末においては、音響エコーを抑圧するためのエコーキャンセラが使用されている。
【０００３】
しかし、テレビ会議、電話会議といった通信システムにおいては、同一室内の複数の通信端末が同じ相手端末と同時に通信する場合がある。この場合、同一室内のある通信端末においては、自端末のスピーカからのみならず、同一室内の他の端末のスピーカからも音響エコーが自端末のマイクロホンに回り込み、これによってハウリングが発生する場合がある。
【０００４】
このようなハウリングを防ぐための対策としては、同一室内の複数の通信端末内のある１台のスピーカのみをアクティブにし、他の全ての通信端末のスピーカを消音するという方法が知られている。しかし、この方法を使用すると、同一室内の全てのユーザがアクティブ状態のスピーカの近くに居なければならないという制約が生じる。
【０００５】
別の対策としては、同一室内の全てのユーザがヘッドセットを装着するという方法がある。しかし、ヘッドセットを装着することはユーザにとって煩わしい場合がある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００６−１７３８７１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
したがって、１台のスピーカのみをアクティブにしたり、同一室内の全てのユーザにヘッドセットを装着させることなく、ハウリングの発生を抑制するための新たな技術の実現が必要とされる。
【０００８】
本発明は、ハウリングの発生を容易に抑制することができるエコーキャンセラおよびエコーキャンセル方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
実施形態によれば、エコーキャンセラは、通信端末における音響エコーを抑圧する。前記エコーキャンセラは、リファレンス信号蓄積手段と、第１のフィルタ演算手段と、減算器と、第１のフィルタ係数更新手段と、残差信号蓄積手段と、第２のフィルタ演算手段と、第２のフィルタ係数更新手段とを具備する。前記リファレンス信号蓄積手段は、相手端末から受信される受信音声信号をリファレンス信号として蓄積する。前記第１のフィルタ演算手段は、前記通信端末のスピーカから前記通信端末のマイクロホンへの伝達関数を模擬した第１のフィルタ係数と前記リファレンス信号とを畳み込んで第１の疑似エコー信号を推定する。前記減算器は、前記通信端末のマイクロホンによって収音される入力音声信号から前記第１の疑似エコー信号と第２の疑似エコー信号とを差し引いて残差信号を出力する。前記第１のフィルタ係数更新手段は、前記残差信号に基づいて前記第１の係数を更新する。前記残差信号蓄積手段は、前記残差信号を蓄積する。前記第２のフィルタ演算手段は、前記残差信号が他の端末のスピーカを経由して前記通信端末のマイクロホンに入り前記減算器から出力されるまでの伝達関数を模擬した第２のフィルタ係数と前記蓄積された残差信号とを畳み込んで前記第２の疑似エコー信号を推定する。前記第２のフィルタ係数更新手段は、前記残差信号に基づいて前記第２のフィルタ係数を更新する。
【図面の簡単な説明】
【００１０】
【図１】実施形態に係る音響エコーキャンセラが適用される通信端末を含む通信システム全体の構成を示すブロック。
【図２】図１の通信システムにおいてハウリングの要因となり得る第１、第２、第３の音響エコーを説明するための図。
【図３】同実施形態の音響エコーキャンセラの構成を示すブロック図。
【図４】同実施形態の音響エコーキャンセラによって実行されるエコーキャンセル処理の手順を示すフローチャート。
【発明を実施するための形態】
【００１１】
以下、実施の形態について図面を参照して説明する。  
図１は、一実施形態に係る音響エコーキャンセラが適用される通信端末を含む通信システム全体の構成を示す。この通信システムは、ＶｏＩＰのような通信プロトコルを使用して複数の通信端末間で音声通信をするためのシステムとして実現されうる。ＶｏＩＰのような通信プロトコルは、ＴＶ会議、電話会議、ビデオチャット、ボイスチャット、ＩＰ電話、他の様々な音声コミュニケーションを実行するために使用しうる。ＶｏＩＰは、ソフトウェア（アプリケーションプログラム、ミドルウェア（ドライバ）、等）、またはハードウェア（端末、ＬＳＩ、システム、等）によって実装することができる。
【００１２】
図１においては、通信端末１１、２１、３１が、ネットワーク４０を介して、例えば、インターネット、他の様々な通信網等を介して、互いに音声通信する。これら通信端末１１、２１、３１の各々は、パーソナルコンピュータ、タブレット、スマートホン、テレビ、または携帯電話等によって実現しうる。
【００１３】
図１においては、通信端末１１、２１が同室内に存在しており、これら通信端末１１、２１の各々が相手端末である通信端末３１との音声通信を行う場合が想定されている。通信端末１１から送信される音声信号はネットワーク４０を介して通信端末２１、３１の各々に送信される。同様に、通信端末２１から送信される音声信号はネットワーク４０を介して通信端末１１、３１の各々に送信され、通信端末３１から送信される音声信号はネットワーク４０を介して通信端末１１、２１の各々に送信される。
【００１４】
通信端末１１はマイクロホン１２およびスピーカ１３を備えている。通信端末１１のユーザは、ヘッドセットを装着すること無く、ハンズフリーで他の通信端末２１、３１それぞれのユーザとの通話をすることができる。同様に、通信端末２１はマイクロホン２２およびスピーカ２３を備え、通信端末３１はマイクロホン３２およびスピーカ３３を備えている。
【００１５】
同室内に存在する通信端末１１、２１間の距離は比較的近い場合がある。この場合、通信端末１１、２１の各々においては、自端末のスピーカから自端末のマイクロホンに回り込む音響エコーのみならず、同一室内の他の通信端末のスピーカから自端末のマイクロホンに回り込む音響エコーも問題となる可能性がある。このような音響エコーによって音声信号の正帰還が形成されると、ハウリングが起きる可能性がある。
【００１６】
図２は、図１の通信システムにおいてハウリングの要因となりうる幾つかの音響エコーを示している。
【００１７】
ここでは、通信端末１１に関連する種々の音響エコーについて説明するが、通信端末２１においてもこれら音響エコーと同様の音響エコーが生じうる。  
図２において、第１の音響エコー（エコー＃１）は、通信端末１１のスピーカ１３から通信端末１１のマイクロホン１２に回り込む音響エコーを示している。すなわち、通信端末１１は、通信端末３１から音声信号を受信する。この受信音声信号に対応する音は、通信端末１１のスピーカ１３から出力される。そして、この音は直接あるいは壁などに反射した後に通信端末１１のマイクロホン１２に送られ、そしてマイクロホン１２によって収音される。
【００１８】
第２の音響エコー（エコー＃２）は、同一内の他の通信端末２１のスピーカから通信端末１１のマイクロホン１２に回り込む音響エコーを示している。すなわち、通信端末２１は、通信端末３１から音声信号を受信する。この受信音声信号に対応する音は、通信端末２１のスピーカ２３から出力される。そして、この音は直接あるいは壁などに反射した後に通信端末１１のマイクロホン１２に送られ、そしてマイクロホン１２によって収音される。
【００１９】
第３の音響エコー（エコー＃３）は、同一内の他の通信端末２１のスピーカから通信端末１１のマイクロホン１２に回り込む別の音響エコーを示している。すなわち、通信端末１１のマイクロホン１２によって収音される音声信号は通信端末２１および通信端末３１に送られる。通信端末２１は、通信端末３１から音声信号を受信する。この受信音声信号に対応する音は、通信端末２１のスピーカ２３から出力される。そして、この音は直接あるいは壁などに反射した後に通信端末１１のマイクロホン１２に送られ、そしてマイクロホン１２によって収音される。
【００２０】
図３は、本実施形態の音響エコーキャンセラを備えた通信端末１１の構成例を示している。通信端末１１は、送信部５１、受信部５２、および音響エコーキャンセラ５３を備える。送信部５１はマイクロホン１２によって集音される音声信号をネットワーク４０を介して他の各通信端末に送信する。受信部５２はネットワーク４０を介して他の各通信端末から音声信号を受信する。音響エコーキャンセラ５３は、リファレンス信号蓄積部６１、第１のフィルタ演算部６２、減算器６３、第１のフィルタ係数更新部６４、残差信号蓄積部６５、第２のフィルタ演算部６６、第２のフィルタ係数更新部６７、ハウリング検出部６８、および制御部６９等を備える。
【００２１】
リファレンス信号蓄積部６１は、受信部５２から出力される受信音声信号をリファレンス信号として蓄積する。第１のフィルタ演算部６２は、少なくとも上述の第１の音響エコーをキャンセルするように構成されている。第１のフィルタ演算部６２は、第１のフィルタ係数６２Ａとリファレンス信号とを畳み込んで第１の疑似エコー信号を推定する。第１のフィルタ係数は、スピーカ１３からマイクロホン１２への伝達関数（インパルス応答）を模擬した係数群である。この第１の疑似エコー信号は上述の第１の音響エコーに対応する推定信号である。
【００２２】
減算器６３は、マイクロホン１２によって集音される入力音声信号から第１の疑似エコー信号と第２のフィルタ演算部６６によって得られる第２の疑似エコー信号とを差し引いて残差信号を出力する。なお、必ずしも第２のフィルタ演算部６６は常に動作している必要は無い。第２のフィルタ演算部６６が停止している場合には、第２の疑似エコー信号はゼロとなる。
【００２３】
第１のフィルタ係数更新部６４は、減算器６３から出力される残差信号に基づいて第１のフィルタ係数６２Ａを更新する。第１のフィルタ係数６２Ａの更新処理は、第１のフィルタ係数６２Ａを適応的に修正するための学習処理に相当する。この第１のフィルタ係数更新部６４と第１のフィルタ演算部６２とによって第１の適応フィルタが実現される。なお、第１の音響エコーと第２の音響エコーは同じ受信音声信号に起因するエコーであるため、例えば、第１のフィルタ係数６２Ａのタップ長を比較的長く設定しておくことによって、第１の適応フィルタは第１の音響エコーのみならず、第２の音響エコーもキャンセルしうる。
【００２４】
残差信号蓄積部６５は、残差信号を蓄積する。第２のフィルタ演算部６５は、上述の第３の音響エコーをキャンセルするように構成されている。上述の第３の音響エコーの推定には、残差信号蓄積部６５に蓄積されている残差信号、つまり送信済みの音声信号が使用される。なぜなら、上述の第３の音響エコーは、通信端末１１が通信端末２１に送信した音声信号（残差信号）が同一内の他の通信端末２１のスピーカ２３経由で通信端末１１のマイクロホン１２に再び入ることに起因するものであるので、この音声信号（残差信号）に対応するリファレンス信号はリファレンス信号蓄積部６１には存在しないからである。
【００２５】
第２のフィルタ演算部６６は、第２のフィルタ係数６６Ａと残差信号蓄積部６５に蓄積されている残差信号とを畳み込んで第２の疑似エコー信号を推定する。第２のフィルタ係数は、残差信号が他の端末２１のスピーカ２３を経由して通信端末１１のマイクロホン１２に入り減算器６３から出力されるまでの伝達関数（インパルス応答）を模擬した係数群である。この第２の疑似エコー信号は上述の第３の音響エコーに対応する推定信号であり、減算器６３に送出される。
【００２６】
第２のフィルタ係数更新部６７は、減算器６３から出力される残差信号に基づいて第２のフィルタ係数６６Ａを更新する。第２のフィルタ係数６６Ａの更新処理は、第２のフィルタ係数６６Ａを適応的に修正するための学習処理に相当する。この第２のフィルタ係数更新部６７と第２のフィルタ演算部６６とによって上述の第３の音響エコーをキャンセルするための第２の適応フィルタが実現される。
【００２７】
第２のフィルタ演算部６６と同様に、第２のフィルタ係数更新部６７も必ずしも常に動作させておく必要は無い。例えば、最初に、第２のフィルタ演算部６６と第２のフィルタ係数更新部６７とを停止した状態でエコーキャンセラ６３を動作させ、一定時間経過後に第２のフィルタ演算部６６と第２のフィルタ係数更新部６７とを起動しても良い。
【００２８】
あるいは、最初に、第２のフィルタ演算部６６と第２のフィルタ係数更新部６７とを停止した状態でエコーキャンセラ６３を動作させ、ハウリング検出部６８によってハウリングが検出された時に第２のフィルタ演算部６６と第２のフィルタ係数更新部６７とを起動しても良い。
【００２９】
ハウリング検出部６８は、受信音声信号のパワーと残差信号のパワーとに基づいてハウリングを検出するように構成されている。制御部６９は、第２のフィルタ演算部６６および第２のフィルタ係数更新部６７それぞれの停止および起動を制御する。
【００３０】
ハウリング検出をトリガとして第２のフィルタ演算部６６と第２のフィルタ係数更新部６７とを起動するという方法を使用する場合においては、制御部６９は、ハウリング検出部６８によってハウリングが検出されるまでは第２のフィルタ演算部６６および第２のフィルタ係数更新部６７を停止し、ハウリングの検出に応答して第２のフィルタ演算部６６および第２のフィルタ係数更新部６７を起動する。この結果、現在の通話環境が第３の音響エコーがハウリングの主要因となる環境になったときに、自動的に第３の音響エコーをキャンセルための処理を開始することができる。
【００３１】
なお、ユーザの所定の操作に応じて、制御部６９が、第２のフィルタ演算部６６および第２のフィルタ係数更新部６７を起動してもよい。
【００３２】
以下、音響エコーキャンセラ５３の動作を詳述する。  
まず、説明を簡単にするために、第１の適応フィルタが単独で動作する場合について説明する。
【００３３】
リファレンス信号蓄積部６１は、受信音声信号が到来した時に、その受信音声信号を一定時間長単位でリファレンス信号としてメモリに蓄積する。  
Ｒｅｆ（ｋ，ｎ）＝Ｓ（ｋ×Ｎ＋ｎ）                                  …(1)  
ここで、ｋは受信音声信号のフレーム番号（０≦ｋ）、ｎは各フレーム内の受信音声号の番号（０≦ｎ≦Ｎ−１）、Ｎはフレームサイズ、Ｓ（ｋ×Ｎ＋ｎ）はｋフレームにおけるｎ番目の受信音声信号、Ｒｅｆ（ｋ，ｎ）はｋフレームにおけるｎ番目のリファレンス信号を表す。
【００３４】
第１のフィルタ演算部６２は、以下の式（２）に示すように、フィルタ係数Ｈ（ｋ，ｉ）とリファレンス信号Ｒｅｆ（ｋ，ｎ）とを畳み込んで、上述の第１の疑似エコー信号Ｙ_hat１（ｋ，ｎ）を推定する。
【数１】
2015039093.tif 000003
【００３５】
ここで、Ｈ（ｋ，ｉ）はフレームｋに対応するｉ番目の第１フィルタ係数を表す。Ｍは定数であり、何フレーム前のリファレンス信号を参照するかを表す。ここでは、説明を簡単にするため、第１のフィルタ係数のタップ長はフレームサイズＮに等しいものとする。ただし、式（２）において、ｎ−ｉ＜０のときは、ＭをＭ＋１、ｎ−ｉをｎ−ｉ＋Ｎと置き換えて計算する。すなわち、１フレーム前に遡ってリファレンス信号を参照して計算する。
【００３６】
第１の疑似エコー信号Ｙ_hat１（ｋ，ｎ）の計算においては、１サンプル前のリファレンス信号Ｒｅｆ（ｋ，ｎ−１）と係数Ｈ（ｋ，１）の積、２サンプル前のリファレンス信号Ｒｅｆ（ｋ，ｎ−２）と係数Ｈ（ｋ，２）の積、…Ｎサンプル前のリファレンス信号Ｒｅｆ（ｋ，ｎ−Ｎ）と係数Ｈ（ｋ，Ｎ）の積が算出され、且つこれらＮ個の積の和が算出される。第１の疑似エコー信号Ｙ_hat１（ｋ，ｎ）は、ｎ＝０のとき、ｎ＝１のとき、…ｎ＝Ｎ−１のときについて、それぞれ算出される。
【００３７】
減算器６３は、以下の式（３）に示すように、マイクロホン１２からの入力音声信号Ｙ（ｋ，ｎ）から第１のフィルタ演算部６２Ａの出力信号Ｙ_hat１（ｋ，ｎ）を差し引いて残差信号Ｅ（ｋ，ｎ）を計算する。  
Ｅ（ｋ，ｎ）＝Ｙ（ｋ，ｎ）−Ｙ_hat（ｋ，ｎ）                        …(3)  
第１のフィルタ係数更新部６４は、例えば、ＮＬＭＳ学習法などを使って、フィルタ係数Ｈ（ｋ，ｎ）を以下の式（４）に示すように更新する。  
Ｈ（ｋ＋１，ｎ）＝Ｈ（ｋ，ｎ）＋Ｅ（ｋ，ｎ）×μ×Ｒｅｆ（ｋ，ｎ）／Ｐ_ref（ｋ）                                                                    …(4)  
ここで、μは定数を表す。Ｐ_ref（ｋ）はリファレンス信号の平均パワーを表す。リファレンス信号の平均パワーは、例えば、以下の式（５）で算出することができる。  
【数２】
2015039093.tif 000004
【００３８】
Ｐ_ref（ｋ）の値が小さいとき、式（４）の右辺で誤差を必要以上に増大させてしまう場合があるので、例えば、Ｐ_ref_th＜Ｐ_ref（ｋ）が成立するときだけ、式（４）でフィルタ係数を更新するようにしても良い。ここでＰ_ref_thは定数である。
【００３９】
かくして、第１の適応フィルタによって第１の音響エコーを抑圧することができるので、ハウリングを抑えた快適なハンズフリー通話を実現することができる。なお、上述したように、第１の適応フィルタ（第１のフィルタ係数６２Ａ）のタップ長を適宜調整することにより、第１の適応フィルタによって、第１の音響エコーのみならず、第２の音響エコーを抑圧するようにしてもよい。
【００４０】
なお、第１のフィルタ係数６２Ａの学習、つまり第１のフィルタ係数６２Ａの更新処理は、あるレベル以上の信号を受信し且つシングルトーク中に行うようにしてもよい。これ以外の期間では、第１のフィルタ係数６２Ａの学習（上述の式（４）の計算）を停止し、学習を停止する直前のフィルタ係数６２Ａ（Ｈ（ｋ，ｉ））を使用して式（４）以外の各式を計算するようにしてもよい。
【００４１】
次に、第１の適応フィルタと第２の適応フィルタの双方が動作する場合について説明する。  
リファレンス信号蓄積部６１は、上述の式（１）で説明したように、受信音声信号が到来した時に、その受信音声信号を一定時間分のサイズ単位でリファレンス信号としてメモリに蓄積する。  
第１のフィルタ演算部６２は、上述の式（２）で説明したように、フィルタ係数Ｈ（ｋ，ｉ）とリファレンス信号Ｒｅｆ（ｋ，ｎ）とを畳み込んで、上述の第１の疑似エコー信号Ｙ_hat１（ｋ，ｎ）を推定する。
【００４２】
残差信号蓄積部６５は、後述する残差信号を一定時間長単位でメモリに蓄積する。  
第２のフィルタ演算部６６は、以下の式（２）’に示すように、フィルタ係数Ｈ'（ｋ，ｉ）と残差信号Ｅ（ｋ，ｎ）とを畳み込んで、第２のエコー信号Ｙ_hat２（ｋ，ｎ）を推定する。
【数３】
2015039093.tif 000005
【００４３】
ここで、Ｍ’は定数であり、何フレーム前の残差信号を参照するかを表す。また、Ｈ'（ｋ，ｉ）は上述の第２のフィルタ係数であり、具体的には、残差信号が他端末２１のスピーカ２３を介して自端末１１に回り込み、再び減算器６３に戻るまでの伝達関数を表す。
【００４４】
第２の疑似エコー信号Ｙ_hat２（ｋ，ｎ）の計算においては、１サンプル前の残差信号Ｅ（ｋ，ｎ−１）と係数Ｈ'（ｋ，１）の積、２サンプル前の残差信号Ｅ（ｋ，ｎ−２）と係数Ｈ'（ｋ，２）の積、…Ｎサンプル前の残差信号Ｅ（ｋ，ｎ−Ｎ）と係数Ｈ'（ｋ，Ｎ）の積が算出され、且つこれらＮ個の積の和が算出される。第２の疑似エコー信号Ｙ_hat２（ｋ，ｎ）は、ｎ＝０のとき、ｎ＝１のとき、…ｎ＝Ｎ−１のときについて、それぞれ算出される。
【００４５】
減算器６３は、以下の式（３）’に示すように、マイクロホン１２からの入力音声信号Ｙ（ｋ，ｎ）からＹ_hat１（ｋ，ｎ）およびＹ_hat２（ｋ，ｎ）を差し引いて残差信号Ｅ（ｋ，ｎ）を計算する。
【００４６】
Ｅ（ｋ，ｎ）＝Ｙ（ｋ，ｎ）−Ｙ_hat１（ｋ，ｎ）−Ｙ_hat２（ｋ，ｎ）    …(3)’  
第１のフィルタ係数更新部６５は、上述の式（４）に従って、フィルタ係数Ｈ（ｋ，ｎ）を更新する。但し、上述の式（４）のＥ（ｋ，ｎ）としては、式（３）’によって算出されたＥ（ｋ，ｎ）が使用される。
【００４７】
第２のフィルタ係数更新部６７は、例えば、ＮＬＭＳ学習法などを使って、フィルタ係数Ｈ’（ｋ，ｎ）を以下の式（４）’に示すように更新する。  
Ｈ’（ｋ＋１，ｎ）＝Ｈ’（ｋ，ｎ）＋Ｅ（ｋ，ｎ）×μ×Ｅ（ｋ−Ｍ’，ｎ）／Ｐ_e（ｋ−Ｍ’）                                                            …(4)’
ここで、μは定数を表す。Ｐ_e（ｋ−Ｍ’）は残差信号の平均パワーを表す。残差信号の平均パワーは、例えば、以下の式（５）’で算出することができる。  
【数４】
2015039093.tif 000006
【００４８】
Ｐ_e（ｋ−Ｍ’）の値が小さいとき、式（４）’の右辺で誤差を必要以上に増大させてしまう場合があるので、例えば、Ｐ_e_th＜Ｐ_e（ｋ−Ｍ’）が成立するときだけ、式（４）’でフィルタ係数Ｈ’（ｋ，ｎ）を更新するようにしても良い。ここでＰ_e_thは定数である。
【００４９】
かくして、複数の通信端末１１，２１が近くでＶｏＩＰのハンズフリー通話し、複数の端末１１，２１からエコーがマイクロホン１２に回り込むような状況であっても、正帰還が形成されないように、第１の適応フィルタが「自端末のスピーカから自端末のマイクロホンへのエコー」を、第２の適応フィルタが「他端末のスピーカから自端末のマイクロホンへのエコー」を抑圧できるので、ハウリングを抑えた快適なハンズフリー通話を実現することができる。
【００５０】
なお、第２のフィルタ係数６６Ａの学習、つまり第２のフィルタ係数６６Ａの更新処理は、例えば、あるレベル以上の信号の送信が完了した後のシングルトーク中に行うようにしてもよい。
【００５１】
次に、ハウリング検出部６８および制御部６９の動作を詳述する。ここでは、最初に、第１の適応フィルタのみが動作され、この状態でハウリングが検出された時に、第２の適応フィルタが起動される場合を想定する。
【００５２】
ハウリング検出部６８は、受信音声信号のパワーおよび残差信号のパワーがそれぞれ大きいとき、すなわち、以下の式（６）によって示される条件が成立するときに、ハウリングが発生したとみなす。
【００５３】
Ｐ_ref_th1＜Ｐ_ref（ｋ−Ｍ）かつＰ_e_th1＜Ｐ_e（ｋ−Ｍ’）            …(6)
ここでＰ_ref_th1、Ｐ_e_th1は定数、Ｐ_e（ｋ−Ｍ’）は以下の式（７）で計算される。
【数５】
2015039093.tif 000007
【００５４】
あるいは、式（６）が設立する状態が一定時間以上続いたときにハウリングが発生したとみしてもよい。これにより、受信音声信号パワーまたは残差信号パワーの瞬時的な増大が、誤ってハウリングとして検出されてしまうことを防ぐことができる。
【００５５】
制御部６９は、ハウリング検出部６８がハウリングを検出するまで、第２のフィルタ演算部６６および第２のフィルタ係数更新部６７を停止しておく（第２のフィルタ係数６６Ａはオール０に維持される）。ハウリング検出部６８がハウリングを検出したら、制御部６９は、第２のフィルタ演算部６６および第２のフィルタ係数更新部６７を起動する。この場合、Ｐ_e_th＜Ｐ_e（ｋ−Ｍ’）が成立するときだけ、第２のフィルタ演算部６６による疑似エコー信号算出処理および第２のフィルタ係数更新部６７によるフィルタ係数更新処理を実行するようにしても良い。
【００５６】
なお、第２のフィルタ演算部６６および第２のフィルタ係数更新部６７を起動するトリガとしては、ユーザによる手動操作を用いても良い。これによって、より確実にハウリングを防止することができる。
【００５７】
図４のフローチャートは、音響エコーキャンセラ５３によって実行されるエコーキャンセル処理の手順を示す。ここでは、ハウリングが検出されるまで第２の適応フィルタを停止させておき、ハウリングの検出に応答して第２の適応フィルタを開始させる場合を例示してエコーキャンセル処理の手順を説明する。
【００５８】
まず、音響エコーキャンセラ５３は、リファレンス信号と第１のフィルタ係数６２Ａとを畳み込むことによって、受信音声信号に対応する音響エコーの推定値である第１の疑似エコー信号を生成する（ステップＳ１１）。音響エコーキャンセラ５３は、スピーカ１３からマイクロホン１２に回り込む音響エコーを打ち消すために、近端側信号であるマイクロホン１２からの入力音声信号から第１の疑似エコー信号を差し引いて残差信号を算出する（ステップＳ１２）。ステップＳ１２では、残差信号に基づいて第１のフィルタ係数６２Ａを更新する学習処理も実行される。この学習処理により、スピーカ１３からマイクロホン１２への伝達関数の逐次推定が可能となる。ステップＳ１１およびステップＳ１２の処理は繰り返し実行される。
【００５９】
音響エコーキャンセラ５３は、受信音声信号のパワーと残差信号のパワーとを監視し、ハウリングの発生の有無を判定する（ステップＳ１３）。ハウリングが発生したと判定した場合、音響エコーキャンセラ５３は、第２のフィルタ演算部６６および第２のフィルタ係数更新部６７を動作開始させる（ステップＳ１４）。
【００６０】
音響エコーキャンセラ５３は、リファレンス信号と第１のフィルタ係数６２Ａとを畳み込むことによって上述の第１の疑似エコー信号を生成すると共に、残差信号と第２のフィルタ係数６６Ａとを畳み込むことによって送信信号として使用される残差信号に対応する音響エコーの推定値である第２の疑似エコー信号を生成する（ステップＳ１５）。
【００６１】
音響エコーキャンセラ５３は、スピーカ１３からマイクロホン１２に回り込む音響エコーおよび他の通信端末からマイクロホン１２に回り込む音響エコーの双方を打ち消すために、マイクロホン１２からの入力音声信号から第１の疑似エコー信号と第２の疑似エコー信号とを差し引いて残差信号を算出する（ステップＳ１６）。ステップＳ１６では、残差信号に基づいて第１のフィルタ係数６２Ａを更新する学習処理、および残差信号に基づいて第２のフィルタ係数６６Ａを更新する学習処理も実行される。第２のフィルタ係数６６Ａに対する学習処理により、残差信号が他の端末のスピーカを経由してマイクロホン１２に入り減算器６３から出力されるまでの伝達関数の逐次推定が可能となる。
【００６２】
以上説明したように、本実施形態によれば、第１のフィルタ演算部６２によって通信端末１１のスピーカ１３から通信端末１１のマイクロホン１２への音響エコーを抑圧でき、第２のフィルタ演算部６６によって残差信号が同室内の他の通信端末２１のスピーカ２３経由で通信端末１１のマイクロホン１２へ回り込む音響エコーを抑圧できるので、１台のスピーカのみをアクティブにしたり、同一室内の全てのユーザにヘッドセットを装着させることなく、ハウリングの発生を容易に抑制することができる。
【００６３】
なお、本実施形態では、音響エコーキャンセラ５３を通信端末１１に設ける場合について説明したが、音響エコーキャンセラ５３を通信端末１１、２１、３１の全てに設けるようにしても良い。
【００６４】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００６５】
１１、２１、３１…通信端末、５３…音響エコーキャンセラ、６１…リファレンス信号蓄積部、６２…第１のフィルタ演算部、６３…減算器、６４…第１のフィルタ係数更新部、６５…残差信号蓄積部、６６…第２のフィルタ演算部、６７…第２のフィルタ係数更新部、６８…ハウリング検出部、６９…制御部。
【図１】
2015039093.tif 000008
【図２】
2015039093.tif 000009
【図３】
2015039093.tif 000010
【図４】
2015039093.tif 000011