(57)【特許請求の範囲】
【請求項１】
マイクロホンとスピーカを用いて拡声通話を行う拡声通話系に用いられ、スピーカからマイクロホンへの回り込みなどによって生じるエコーを抑圧するエコーキャンセラであって、スピーカとマイクロホンの音響結合などにより形成される帰還経路のインパルス応答を適応的に同定して帰還経路への入力信号から帰還経路のエコー成分を推定する適応フィルタと、適応フィルタで推定されたエコー成分を帰還経路からの出力信号より減算する減算器と、遠端側の信号の瞬時パワーを推定する遠端信号パワー推定部と、帰還経路からの出力信号と帰還経路への入力信号と減算器の出力信号のうちの複数の信号の相互相関を利用してダブルトークを検出するダブルトーク検出部とを有し、適応フィルタは、遠端信号パワー推定部の推定値が遠端側の信号に音声成分が含まれると見なせる所定の閾値を超え、且つダブルトーク検出部によりダブルトークが検出されない状態でのみフィルタ係数を更新するとともに、その他の状態ではフィルタ係数を固定してなるエコーキャンセラにおいて、ダブルトーク検出部にてダブルトークが検出されていない状態における近端側の信号のパワーに対する減算器の出力信号のパワーの比が、ダブルトーク検出部のダブルトーク検出に要する時間よりも充分に長い時間以上連続してしきい値を上回った場合を発散状態として検出するとともに発散状態にあることを検出した場合に適応フィルタ、減算器、遠端信号パワー推定部並びにダブルトーク検出部の処理及び変数を初期化する発散検出処理部を備え、前記しきい値は、適応フィルタのフィルタ係数が収束していない状態における最低エコー抑圧量の設計値から算出されることを特徴とするエコーキャンセラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、拡声通話機能を有する電話機やインターホンなどの拡声通話装置に用いられるエコーキャンセラに関するものである。
【背景技術】
【０００２】
マイクロホン及びスピーカを用いて拡声通話（ハンズフリー通話）を実現する電話機やインターホンなどの拡声通話装置においては、スピーカから送出される受話音声の一部がマイクロホンに回り込み、これが送話音声（送話信号）となって相手側の通話端末に伝送されるため、相手側の通話者には自分の発した音声がエコーとなって聞こえてしまい、そのレベルが高い場合には不快感を生じてしまうことになる。そこで、従来より、上述のようなエコーを抑圧する技術が提案あるいは提供されており、その一つの手段としてエコーキャンセラがある。
【０００３】
マイクロホン及びスピーカを用いて拡声通話（ハンズフリー通話）を実現する電話機やインターホンなどの拡声通話装置においては、スピーカから送出される受話音声の一部がマイクロホンに回り込み、これが送話音声（送話信号）となって相手側の通話端末に伝送されるため、相手側の通話者には自分の発した音声がエコーとなって聞こえてしまい、そのレベルが高い場合には不快感を生じてしまうことになる。そこで、従来より、上述のようなエコーを抑圧する技術が提案あるいは提供されており、その一つの手段としてエコーキャンセラがある。
【０００４】
エコーキャンセラは、スピーカとマイクロホンの音響結合などにより形成される帰還経路（エコー経路）のインパルス応答を適応的に同定して帰還経路への入力信号（受話信号）から上記帰還経路のエコー成分を推定する適応フィルタと、適応フィルタで推定されたエコー成分を帰還経路からの出力信号（送話信号）より減算する減算器とを備えている。適応フィルタは可変の係数を有するプロセッサと係数を随時決定していくアルゴリズムからなる従来周知のものであって、減算器の出力信号の自乗平均値を最小化するアルゴリズム、例えば、ＬＭＳ（Least-Mean-Square）アルゴリズムにより可変のフィルタ係数を適応更新することによって帰還経路のエコー成分（帰還経路を介した受話信号の回り込み成分）を推定する。そして、適応フィルタで推定されたエコー成分を減算器において送話信号から減算することにより、送話信号に含まれるエコー成分のみを相殺し、マイクロホンで集音されたエコー以外の成分（マイクロホンに対して通話者から発せられた音声や周囲の騒音）に対しては損失を与えないものである。
【０００５】
図２はエコーキャンセラを備えた拡声通話装置としてのインターホン親機（以下、「親機」と略す）Ｍ’と、相手側通話端末としてのドアホン子機Ｓとからなり、双方向の同時通話を実現可能とした所謂ハンズフリーインターホンの従来例を示すブロック図である。親機Ｍ’は、マイクロホン１、スピーカ２、２線−４線変換回路３、マイクロホンアンプＧ１、回線（２線の伝送路）への送話信号を増幅する回線出力アンプＧ２、回線からの受話信号を増幅する回線入力アンプＧ３、スピーカアンプＧ４、送話音量調整用増幅器Ｇ５、受話音量調整用増幅器Ｇ６、並びに第１及び第２のエコーキャンセラ３０Ａ’，３０Ｂ’で構成される。また、ドアホン子器Ｓはマイクロホン１’、スピーカ２’、２線−４線変換回路３’、マイクロホンアンプＧ１’並びにスピーカアンプＧ４’で構成される。
【０００６】
第１のエコーキャンセラ３０Ａ’は適応フィルタ３１Ａと減算器３２Ａからなり、上述のようにスピーカ２−マイクロホン１間の音響結合により形成される帰還経路（音響エコー経路）ＨACのインパルス応答を適応フィルタ３１Ａにより適応的に同定し、遠端側の入力信号（スピーカアンプＧ４へ入力する受話信号）Ｘnから推定したエコー成分（音響エコー）Ｇnを減算器３２ＡによりマイクロホンアンプＧ１から出力する近端側の入力信号Ｙn（図２における点Ａの送話信号）から減算することでエコー成分ｇnを相殺して消去する。また、第２のエコーキャンセラ３０Ｂ’も適応フィルタ３１Ｂと減算器３２Ｂからなり、２線−４線変換回路３と伝送路との間のインピーダンスの不整合による反射およびドアホン子機Ｓにおけるスピーカ２’−マイクロホン１’間の音響結合とにより形成される帰還経路（回線エコー経路）ＨLINのインパルス応答を適応フィルタ３１Ｂにより適応的に同定し、参照信号（回線出力アンプＧ２への入力信号、すなわち送話信号）から推定したエコー成分（回線エコー）を減算器３２Ｂにより受話信号（図２における点Ｃの信号）から減算することでエコー成分を相殺して消去する。
【０００７】
さらに第１のエコーキャンセラ３０Ａ’を例に適応フィルタ３１Ａの動作を詳しく説明すると、ＬＭＳアルゴリズムにおいては次式によってフィルタ係数（「タップ重み」ともいう）Ｈn（ｍ）を再帰的に更新していく。
【０００８】
Ｈn+1（ｍ）＝Ｈn（ｍ）＋μＥn・Ｘn-m
但し、ｍはタップ番号、ｎはサンプル時間を示す。
【０００９】
ここで、Ｅnは、遠端側（ドアホン子器Ｓ）からのみ発声が行われて近端側（親機Ｍ’）では発声が行われていない、いわゆるシングルトークの状態である場合にＥn＝ｇn−Ｇnとなり、サンプル時間ｎにおけるエコー成分ｇnの推定誤差（瞬時誤差）を表し、μは毎回の繰り返しにおける補正量の大きさ（すなわち、収束の速さ）を制御するための定数であるステップゲイン（あるいは「ステップサイズパラメータ」ともいう）を表す。なお、エコー成分ｇnの推定値Ｇnは上記フィルタ係数Ｈn（ｍ）と受話信号Ｘnとから次式によって求められる。
【００１０】
【数１】
0004600423.tif 000002
【００１１】
そして、フィルタ係数Ｈn（ｍ）を再帰的に更新することで上記推定誤差Ｅnの平均自乗誤差を最小とする最適解に到達する（収束する）と、その最適解のフィルタ係数Ｈn（ｍ）から求められるエコー成分の推定値Ｇnを送話信号Ｙnから減算することでエコー成分を相殺した出力信号Ｅnが得られることになる。
【００１２】
而して、第１及び第２のエコーキャンセラ３０Ａ’，３０Ｂ’により帰還経路ＨACおよびＨLINのエコー成分を相殺して閉ループを断ち切るため、不快なエコーを抑制することができる。また、上記従来例によれば、マイクロホンアンプＧ１の出力信号に含まれるエコー以外の成分、すなわち、親機Ｍ’に対して通話者が発声した音声信号および親機Ｍ’の周囲の騒音については全く損失を与えずにドアホン子機Ｓ側へ伝送することができ、同様に受話信号に含まれるエコー以外の成分、すなわち、ドアホン子機Ｓに対して通話者が発声した音声信号およびドアホン子機Ｓの周囲の騒音については全く損失を与えずに親機Ｍ’側へ伝送することができる。
【００１３】
ところで、親機Ｍ’とドアホン子器Ｓで同時に発声が行われる、いわゆるダブルトークの状態においてエコーキャンセラ３０Ａ’，３０Ｂ’の適応フィルタ３１Ａ，３１Ｂがフィルタ係数Ｈn（ｍ）の更新を継続すると、フィルタ係数Ｈn（ｍ）が収束せずに発散してしまう虞がある。例えば図２の第１のエコーキャンセラ３０Ａ’において、マイクロホン１から入力するダブルトーク成分Ｎnが存在する場合、送話信号ＹnはＹn＝Ｎn＋ｇnとなり、推定誤差ＥnはＥn＝Ｎn＋（ｇn−Ｇn）と表される。このとき、フィルタ係数Ｈn（ｍ）を再帰的に更新することで推定誤差Ｅnの平均自乗誤差を最小とする最適解を求めようとすると、参照信号（受話信号Ｘn）と相関のないダブルトーク成分Ｎnの項が推定誤差Ｅnに含まれているためにフィルタ係数Ｈn（ｍ）が収束せず、逆に発散する虞がある。すなわち、ダブルトーク成分Ｎnは適応フィルタ３１Ａの動作においては外乱成分となる。
【００１４】
そこで本発明者らは、図３に示すように参照信号（受話信号Ｘn）の瞬時パワーを推定する遠端信号パワー推定部３３Ａと、ダブルトークを検出するダブルトーク検出部３４Ａとを設け、適応フィルタ３１Ａが遠端信号パワー推定部３３Ａの推定値が参照信号Ｘｎに音声成分が含まれると見なせる所定の閾値を超え、且つダブルトーク検出処理部３４Ａによりダブルトークが検出されない状態でのみフィルタ係数Ｈn（ｍ）を更新するとともに、その他の状態ではフィルタ係数Ｈn（ｍ）を更新せずにそれ以前の値に固定するようにして、上述のようなフィルタ係数Ｈn（ｍ）の発散を防止したエコーキャンセラ３０Ａ”を既に提案している。
【特許文献１】特開２０００−２７００８９号公報
【発明の開示】
【発明が解決しようとする課題】
【００１５】
ところで、一般に広く用いられているダブルトークの検出方法は、帰還経路への入力信号（参照信号）Ｘnと帰還経路からの出力信号Ｙnの瞬時パワーの比（ＰYn／ＰXn）を求め、この値が所定のしきい値を越えた場合をダブルトークと判別するものである。この方法はエコー経路の利得変動が少ない系において使用する場合には有効である。しかしながら、マイクロホン１やスピーカ２の前に手をかざしたり顔を近づけたりすることでエコー経路の利得が頻繁に変動する系に使用する場合には、ダブルトークの状態とエコー経路の利得が変動した状態とを判別することができず、また、エコー成分ｇnに対してダブルトーク成分Ｎnのパワーが小さい場合にはダブルトークの検出が困難となる。
【００１６】
これに対して、帰還経路への入力信号Ｘnと帰還経路からの出力信号Ｙnの瞬時パワーを単純に比較するのではなく、例えば、入力信号Ｘnと推定誤差（減算器３２Ａの出力）Ｅnとの相互相関を利用することでエコーに埋もれた微少なダブルトーク成分も精度良く検出することができる方法がある。すなわち、シングルトーク状態では推定誤差Ｅnが純粋な残留エコー成分を表し、入力信号Ｘnと推定誤差Ｅnとの相互相関は大きいが、ダブルトーク状態においては推定誤差Ｅnとダブルトーク成分Ｎnとがほぼ等しくなって相互相関が小さくなるという性質を利用している。
【００１７】
しかしながら、上述のように相互相関を利用してダブルトークを検出する場合、相互相関を求めるために要する周期に比例してダブルトーク検出における遅延が大きくなり、逆に相互相関を求める周期が短すぎるとダブルトークの検出精度が低下して適応フィルタにおけるフィルタ係数の発散を防止することが困難になってしまう。
【００１８】
本発明は上記事情に鑑みて為されたものであり、その目的は、ダブルトーク状態において適応フィルタのフィルタ係数の発散を抑制することができるエコーキャンセラを提供することにある。
【課題を解決するための手段】
【００１９】
請求項１の発明は、上記目的を達成するために、マイクロホンとスピーカを用いて拡声通話を行う拡声通話系に用いられ、スピーカからマイクロホンへの回り込みなどによって生じるエコーを抑圧するエコーキャンセラであって、スピーカとマイクロホンの音響結合などにより形成される帰還経路のインパルス応答を適応的に同定して帰還経路への入力信号から帰還経路のエコー成分を推定する適応フィルタと、適応フィルタで推定されたエコー成分を帰還経路からの出力信号より減算する減算器と、遠端側の信号の瞬時パワーを推定する遠端信号パワー推定部と、帰還経路からの出力信号と帰還経路への入力信号と減算器の出力信号のうちの複数の信号の相互相関を利用してダブルトークを検出するダブルトーク検出部とを有し、適応フィルタは、遠端信号パワー推定部の推定値が遠端側の信号に音声成分が含まれると見なせる所定の閾値を超え、且つダブルトーク検出部によりダブルトークが検出されない状態でのみフィルタ係数を更新するとともに、その他の状態ではフィルタ係数を固定してなるエコーキャンセラにおいて、ダブルトーク検出部にてダブルトークが検出されていない状態における近端側の信号のパワーに対する減算器の出力信号のパワーの比が、ダブルトーク検出部のダブルトーク検出に要する時間よりも充分に長い時間以上連続してしきい値を上回った場合を発散状態として検出するとともに発散状態にあることを検出した場合に適応フィルタ、減算器、遠端信号パワー推定部並びにダブルトーク検出部の処理及び変数を初期化する発散検出処理部を備え、前記しきい値は、適応フィルタのフィルタ係数が収束していない状態における最低エコー抑圧量の設計値から算出されることを特徴とする。
【発明の効果】
【００２３】
本発明によれば、仮に適応フィルタにおけるフィルタ係数が発散したとしても発散状態を検出した発散検出処理部が直ちに適応フィルタ、減算器、遠端信号パワー推定部並びにダブルトーク検出部の処理及び変数を初期化するため、発散を早期に解消して抑制することができる。
【発明を実施するための最良の形態】
【００２４】
以下、本発明を従来例で説明した親機Ｍ’の音響エコー経路のエコーを抑圧する第１のエコーキャンセラに適用した実施形態について説明する。但し、本発明を回線エコー経路のエコーを抑圧する第２のエコーキャンセラに適用可能であることは言うまでもない。
【００２５】
図１は本実施形態のエコーキャンセラ３０を用いた拡声通話装置の一部省略したブロック図である。なお、本実施形態の基本構成は図３に示した従来例と共通であるから、共通の構成要素には同一の符合（但し、「Ａ」の文字は省略する）を付して説明を省略する。
【００２６】
本実施形態は、適応フィルタ３１におけるフィルタ係数Ｈn（ｍ）が発散状態にあるか否かを検出するとともに発散状態にあることを検出した場合に適応フィルタ３１、減算器３２、遠端信号パワー推定部３３並びにダブルトーク検出部３４の処理及び変数を初期化する発散検出処理部３７を備えた点に特徴がある。
【００２７】
発散検出処理部３７は、近端側の信号（送話信号）Ｙnと適応フィルタ３１によるエコー成分の推定値Ｇnとの相互相関Ｒを下記の式２により演算し、この相互相関Ｒに基づいて発散状態を検出している。
【００２８】
【数２】
0004600423.tif 000003
【００２９】
但し、Ｊ＝相関を求める際の周期（数１０ｍｓ程度）／サンプリング周期とする。この相互相関Ｒの値は、適応フィルタ３１のフィルタ係数Ｈn（ｍ）が収束に向かうにつれて１に近づき、逆にフィルタ係数Ｈn（ｍ）が発散していくにつれて１よりも小さくなっていく。したがって、発散検出処理部３７では、ダブルトーク検出部３４でダブルトークが検出されていない状況において、通常の使用環境におけるエコーキャンセラ３０の収束（適応フィルタ３１のフィルタ係数Ｈn（ｍ）の収束）に要する時間よりも若干長い時間以上連続してしきい値Ｒ０（≪１）を下回った場合を発散状態として検出する。
【００３０】
而して、適応フィルタ３１のフィルタ係数Ｈn（ｍ）が一端発散してしまった場合、そのままフィルタ係数Ｈn（ｍ）の更新処理を継続しても再度収束させることは困難であるから、このような場合には発散を早期に検出してエコーキャンセラ３０の動作を初期化してしまう方が有効である。また、通話系においてはエコーキャンセラ３０の発散の早期解消はハウリングやブロッキングを未然に又は早期に抑圧することにつながる。
【００３１】
本実施形態は上述のように構成したものであるから、仮に適応フィルタ３１におけるフィルタ係数Ｈn（ｍ）が発散したとしても発散状態を検出した発散検出処理部３７が直ちに適応フィルタ３１、減算器３２、遠端信号パワー推定部３３並びにダブルトーク検出部３４の処理及び変数を初期化するため、発散を早期に解消することができるものである。
【００３２】
なお、発散検出処理部３７における発散状態の検出方法は上記の方法以外にも次のような方法でも構わない。
【００３３】
すなわち、遠端側の信号（受話信号）Ｘnのパワーに対する適応フィルタ３１によるエコー成分の推定値Ｇnの比Ｓを下記の式３により演算し、その比Ｓに基づいて発散状態を検出する方法がある。
【００３４】
【数３】
0004600423.tif 000004
【００３５】
但し、Ｋ＝パワーを求める際の周期（≫エコー遅延時間）／サンプリング周期とする。この比Ｓの値は、適応フィルタ３１のフィルタ係数Ｈn（ｍ）が収束に向かうにつれてエコー経路（音響エコー経路ＨAC）の帰還利得を自乗した値に近付き、逆にフィルタ係数Ｈn（ｍ）が発散していくにつれて時間とともに増加する。したがって、発散検出処理部３７では、通常の使用環境におけるエコー遅延時間よりも充分に長い時間以上連続してしきい値Ｓ０を上回った場合を発散状態として検出する。なお、しきい値Ｓ０は通常の使用環境における上記帰還利得よりも充分に大きい値に設定される。
【００３６】
あるいは他の方法として、ダブルトーク検出部３４にてダブルトークが検出されていない状態における近端側の信号（送話信号）Ｙnのパワーに対する減算器３２の出力信号Ｅnのパワーの比Ｔを下記式４により演算し、その比Ｔに基づいて発散状態を検出する方法がある。
【００３７】
【数４】
0004600423.tif 000005
【００３８】
但し、Ｌ＝パワーを求める際の周期（数１０ｍｓ程度）／サンプリング周期とする。この比Ｔの値は、適応フィルタ３１のフィルタ係数Ｈn（ｍ）が収束に向かうにつれて０に近づき、逆にフィルタ係数Ｈn（ｍ）が発散していくにつれて時間とともに増加する。したがって、発散検出処理部３７では、ダブルトーク検出部３４でダブルトークが検出されていない状況において、通常の使用環境におけるダブルトーク検出部３４でのダブルトーク検出に要する時間よりも充分に長い時間以上連続してしきい値Ｔ０を上回った場合を発散状態として検出する。なお、しきい値Ｔ０は、エコーキャンセラ３０が非収束状態（学習開始直後など）における最低エコー抑圧量の設計値から算出される値である。
【図面の簡単な説明】
【００３９】
【図１】本発明の実施形態を示すブロック図である。
【図２】従来のエコーキャンセラを用いた拡声通話装置を示すブロック図である。
【図３】他の従来例を示すブロック図である。
【符号の説明】
【００４０】
１  マイクロホン
２  スピーカ
３０  エコーキャンセラ
３１  適応フィルタ
３２  減算器
３３  遠端信号パワー推定部
３４  ダブルトーク検出部
３７  発散検出処理部
【図１】
0004600423.tif 000006
【図２】
0004600423.tif 000007
【図３】
0004600423.tif 000008