(57)【要約】【課題】受信信号の特性に拘らず収束速度が速いエコーキャンセラを提供する。【解決手段】受信信号ｘは、遅延バッファ１１で遅延されると共に、線形予測部１２に与えられて線形予測係数ＬＰＣ１が算出される。遅延された受信信号ｘと逆フィルタ１３で白色化された受信信号ｘｗは、適応フィルタ１４で同一のタップ係数Ｈで演算され、擬似エコーｒとｒｗが出力される。遅延制御部１５は、適応フィルタ１４のタップ係数Ｈに基づいてエコーの遅延時間を推定し、線形予測係数ＬＰＣ１を遅延させて逆フィルタ１６に与える。逆フィルタ１６は、与えられた線形予測係数で送信信号ｙを白色化する。加算器１７，１８から、それぞれ残差信号ｅと白色化された残差信号ｅｗが出力される。切替スイッチ１９では、タップ係数Ｈが収束していないときには残差信号ｅｗを選択し、収束した時点で残差信号ｅを選択して適応フィルタ１４に与える。【選択図】図１
2008042816.tif 000002
【特許請求の範囲】
【請求項１】
受信信号を遅延させて遅延受信信号を出力する遅延バッファと、
前記受信信号から線形予測係数を算出する線形予測部と、
前記線形予測係数を用いて前記遅延受信信号を白色化し、白色化受信信号を生成する第１の逆フィルタと、
前記受信信号と前記白色化受信信号をそれぞれ同一のタップ係数で演算して擬似エコーと白色化擬似エコーを出力すると共に、与えられた残差信号に従って該タップ係数を更新する適応フィルタと、
前記適応フィルタのタップ係数に基づいてエコーの遅延時間を推定し、前記線形予測部から出力された前記線形予測係数を該遅延時間だけ遅延させて出力する遅延制御部と、
前記遅延制御部から出力された線形予測係数を用いて送信信号を白色化し、白色化送信信号を生成する第２の逆フィルタと、
前記送信信号から前記擬似エコーを差し引いて第１の残差信号を出力する第１の加算器と、
前記白色化送信信号から前記白色化擬似エコーを差し引いて第２の残差信号を出力する第２の加算器と、
前記タップ係数が収束していないときには前記第２の残差信号を選択し、該タップ係数が収束した時点で前記第１の残差信号を選択し、その選択した残差信号を前記適応フィルタに与える残差信号切替部とを、
備えたことを特徴とするエコーキャンセラ。
【請求項２】
受信信号を遅延させて遅延受信信号を出力する遅延バッファと、
前記受信信号から反射係数と線形予測係数を算出する線形予測部と、
前記線形予測係数を用いて前記遅延受信信号を白色化し、白色化受信信号を生成する第１の逆フィルタと、
前記受信信号と前記白色化受信信号をそれぞれ同一のタップ係数で演算して擬似エコーと白色化擬似エコーを出力すると共に、与えられた残差信号に従って該タップ係数を更新する適応フィルタと、
前記適応フィルタのタップ係数に基づいてエコーの遅延時間を推定し、前記線形予測部から出力された前記線形予測係数を該遅延時間だけ遅延させて出力する遅延制御部と、
前記遅延制御部から出力された線形予測係数を用いて送信信号を白色化し、白色化送信信号を生成する第２の逆フィルタと、
前記送信信号から前記擬似エコーを差し引いて第１の残差信号を出力する第１の加算器と、
前記白色化送信信号から前記白色化擬似エコーを差し引いて第２の残差信号を出力する第２の加算器と、
前記反射係数に基づいて前記受信信号が白色性信号か否かを判定する広帯域信号判定部と、
前記タップ係数が収束しておらず、かつ前記受信信号が白色性信号でないときには前記第２の残差信号を選択し、該タップ係数が収束しているかまたは該受信信号が白色性信号であるときには前記第１の残差信号を選択し、その選択した残差信号を前記適応フィルタに与える残差信号切替部とを、
備えたことを特徴とするエコーキャンセラ。
【請求項３】
前記反射係数に基づいて前記受信信号がトーン性信号か否かを判定する狭帯域信号判定部を設け、該受信信号がトーン性信号と判定されたときに、前記適応フィルタにおけるタップ係数の更新を停止するように構成したことを特徴とする請求項２記載のエコーキャンセラ。
【請求項４】
前記送信信号と前記第１の残差信号、または前記白色化送信信号と前記第２の残差信号に基づいて信号対雑音比を算出する信号対雑音比算出部を設け、該信号対雑音比に基づいて前記適応フィルタにおけるタップ係数の更新時のステップサイズを調整するように構成したことを特徴とする請求項１、２または３記載のエコーキャンセラ。
【請求項５】
前記線形予測部で算出された線形予測係数を書き込み、前記遅延制御部からの要求に応じて該線形予測係数をその書き込んだ順に読み出して出力する先入れ先出しバッファを設けたことを特徴とする請求項１、２、３または４記載のエコーキャンセラ。
【請求項６】
受信信号をタップ係数で演算して擬似エコーを出力すると共に、与えられた残差信号に従って該タップ係数を更新する適応フィルタと、送信信号から前記擬似エコーを差し引いて前記残差信号を送信回線に出力する加算器とを備えたエコーキャンセラにおいて、
前記送信信号と前記残差信号に基づいて信号対雑音比を算出する信号対雑音比算出部を設け、該信号対雑音比に基づいて前記適応フィルタにおけるタップ係数の更新時のステップサイズを調整するように構成したことを特徴とするエコーキャンセラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スピーカからマイクロホンへの受話音声の回り込みや、２線・４線変換のハイブリッド・トランスにおける受信信号の送信側への回り込みによって生ずるエコーを消去するためのエコーキャンセラに関するものである。
【背景技術】
【０００２】
図２は、従来のエコーキャンセラの構成図である。
エコーキャンセラは、遠端から入力された受信信号ｘ（ｔ）が、ＤＡＣ（ディジタル・アナログ変換器）１でアナログ信号に変換され、近端のスピーカ２から出力されてマイクロホン３に音響信号として回り込み、ＡＤＣ（アナログ・ディジタル変換器）４でディジタル信号に変換されてエコーとして遠端に送信されることを防止するものである。
【０００３】
このエコーキャンセラ５は、離散時刻ｔにおける受信信号ｘ（ｔ）をタップ係数Ｈ（ｔ）で演算して擬似エコーｒ（ｔ）を生成する適応フィルタ５ａと、ＡＤＣ４から出力される送信信号ｙ（ｔ）から擬似エコーｒ（ｔ）を差し引いて残差信号ｅ（ｔ）を出力する加算器５ｂで構成されている。残差信号ｅ（ｔ）は、送信回線に出力されると共に、適応フィルタ５ａにタップ係数更新用の信号として与えられるようになっている。
【０００４】
マイクロホン３には、音声信号ｓ（ｔ）の他、背景雑音ｎ（ｔ）やスピーカ２からの音響エコーｄ（ｔ）が入力され、これらがＡＤＣ４でディジタル信号に変換されて送信信号ｙ（ｔ）として出力される。ここで、音響エコーｄ（ｔ）のエコー経路のインパルス応答をｍ次のＦＩＲ（有限インパルス応答）フィルタで近似できると仮定すると、離散時刻ｔにおける適応フィルタ５ａのタップ係数Ｈ（ｔ）と、この適応フィルタ５ａに入力される受信信号ｘ（ｔ）は、それぞれ次のように表される。
Ｈ（ｔ）＝［ｈ１（ｔ），ｈ２（ｔ），…，ｈｍ（ｔ）］Ｔ
Ｘ（ｔ）＝［ｘ（ｔ），ｘ（ｔ−１），…，ｘ（ｔ−ｍ＋１）］Ｔ
但し、Ｔはベクトルの転置を表す。
【０００５】
これにより、擬似エコーｒ（ｔ）と残差信号ｅ（ｔ）は、次のように表される。
ｒ（ｔ）＝Ｈ（ｔ）ＴＸ（ｔ）
ｅ（ｔ）＝ｙ（ｔ）−ｒ（ｔ）
【０００６】
即ち、残差信号ｅ（ｔ）は、送信信号ｙ（ｔ）から擬似エコーｒ（ｔ）を差し引いてエコーをキャンセルした信号である。
【０００７】
タップ係数Ｈ（ｔ）の更新は、一般に次のように表される。
Ｈ（ｔ＋１）＝Ｈ（ｔ）＋μΔＨ（ｔ）
【０００８】
ここで、μはタップ係数の収束速度を調整するステップサイズで、更新ベクトルΔＨ（ｔ）は適応アルゴリズムの種類によって異なる。
【０００９】
適応アルゴリズムとしては、ＬＭＳアルゴリズム（最小自乗平均法）や、ＲＬＳアルゴリズム（再帰最小自乗法）等が広く知られているが、比較的計算量が少なくて良好な収束特性を示すＮＬＭＳアルゴリズム（学習同定法）がよく用いられる。ＮＬＭＳアルゴリズムによるタップ係数Ｈ（ｔ）の更新は、次のように表される。
Ｈ（ｔ＋１）＝Ｈ（ｔ）＋μ［ｅ（ｔ）Ｘ（ｔ）］／‖Ｘ（ｔ）‖２
この場合のμは、０＜μ＜２である。
【００１０】
なお、タップ係数Ｈ（ｔ）の更新は、受信信号ｘ（ｔ）は存在するが音声信号ｓ（ｔ）の存在しないシングルトーク状態のときにのみ行われ、受信信号ｘ（ｔ）と音声信号ｓ（ｔ）が共に存在するダブルトーク状態のときと、受信信号ｘ（ｔ）が存在しないときには更新は行われない。また、一般に、背景雑音ｎ（ｔ）が大きいほどエコーキャンセル量は低下する。
【００１１】
【特許文献１】特開２００２−９４４１９号公報
【特許文献２】特開平１０−３０１６００号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
しかしながら、前記エコーキャンセラでは、適応フィルタ５ａに入力される受信信号ｘ（ｔ）が、音声のような有色信号（スペクトル分布が一様でない信号）の場合、収束速度が著しく低下するという問題点があった。その解決策として、前記特許文献１では、逆フィルタによって入力信号を白色信号（スペクトル分布が一様な信号）に変換して収束速度を高速化する方法が提案されている。しかし、提案された方法の構成では、エコー遅延時間が大きい場合や入力信号が元々白色信号の場合、エコーキャンセル処理の精度が低下するという問題があった。また、音声のスペクトルは全体的に傾斜（母音の場合、約−６ｄＢ／Ｏｃｔ）しているため、逆フィルタは高域強調特性を持つことになり、送信信号に背景雑音が含まれるとその雑音成分が著しく増幅され、エコーキャンセル量が低下するという問題があった。
【００１３】
本発明は、受信信号の特性に拘らず収束速度が速いエコーキャンセラを提供することを目的としている。
【課題を解決するための手段】
【００１４】
本発明のエコーキャンセラは、受信信号を遅延させて遅延受信信号を出力する遅延バッファと、前記受信信号から線形予測係数を算出する線形予測部と、前記線形予測係数を用いて前記遅延受信信号を白色化し、白色化受信信号を生成する第１の逆フィルタと、前記受信信号と前記白色化受信信号をそれぞれ同一のタップ係数で演算して擬似エコーと白色化擬似エコーを出力すると共に、与えられた残差信号に従って該タップ係数を更新する適応フィルタと、前記適応フィルタのタップ係数に基づいてエコーの遅延時間を推定し、前記線形予測部から出力された前記線形予測係数を該遅延時間だけ遅延させて出力する遅延制御部と、前記遅延制御部から出力された線形予測係数を用いて送信信号を白色化し、白色化送信信号を生成する第２の逆フィルタと、前記送信信号から前記擬似エコーを差し引いて第１の残差信号を出力する第１の加算器と、前記白色化送信信号から前記白色化擬似エコーを差し引いて第２の残差信号を出力する第２の加算器と、前記タップ係数が収束していないときには前記第２の残差信号を選択し、該タップ係数が収束した時点で前記第１の残差信号を選択し、その選択した残差信号を前記適応フィルタに与える残差信号切替部とを備えたことを特徴としている。
【発明の効果】
【００１５】
本発明では、適応フィルタのタップ係数が収束していないときには、白色化送信信号から白色化擬似エコーを差し引いて得られた第２の残差信号を使用してタップ係数の更新を行うようにしているので、受信信号の特性に拘らずこのタップ係数を迅速に収束させることができる。
【００１６】
また、白色化送信信号を生成する第２の逆フィルタでは、線形予測部から出力された線形予測係数を適応フィルタのタップ係数に基づいて推定されたエコーの遅延時間だけ遅延させ、この遅延させた線形予測係数を用いて送信信号を白色化している。これにより、エコーの遅延時間を考慮した残差信号が得られるので、迅速かつ的確にタップ係数を収束させることが出来る。
【００１７】
更に、タップ係数が収束した時点で、送信信号から擬似エコーを差し引いて得られた第１の残差信号を使用してタップ係数の更新を行うように切り替えている。これにより、タップ係数の収束後は、高精度でエコーキャンセルを行うことができるという効果がある。
【発明を実施するための最良の形態】
【００１８】
この発明の前記並びにその他の目的と新規な特徴は、次の好ましい実施例の説明を添付図面と照らし合わせて読むと、より完全に明らかになるであろう。但し、図面は、もっぱら解説のためのものであって、この発明の範囲を限定するものではない。
【実施例１】
【００１９】
図１は、本発明の実施例１を示すエコーキャンセラの構成図である。なお、図中の実線は音声信号の流れを示し、破線は制御信号の流れを示している。
【００２０】
エコーキャンセラは、遠端から入力された受信信号が、ＤＡＣ１でアナログ信号に変換され、近端のスピーカ２から出力されてマイクロホン３に音響信号として回り込み、ＡＤＣ４でディジタル信号に変換されてエコーとして遠端に送信されることを防止するものである。
【００２１】
このエコーキャンセラ１０は、遠端から入力された受信信号ｘ（ｔ＋Ｎ）を離散時間Ｎだけ遅延させた受信信号ｘ（ｔ）を出力する遅延バッファ１１と、この受信信号ｘ（ｔ＋Ｎ）からｐ次の反射係数と線形予測係数ＬＰＣ１を算出する線形予測部１２を有している。遅延バッファ１１から出力される受信信号ｘ（ｔ）は、ＤＡＣ１に与えられると共に、逆フィルタ１３と適応フィルタ１４に与えられ、線形予測部１２から出力される線形予測係数ＬＰＣ１は、逆フィルタ１３と遅延制御部１５に与えられるようになっている。
【００２２】
逆フィルタ１３は、線形予測係数ＬＰＣ１を用いて受信信号ｘ（ｔ）を白色化した受信信号ｘｗ（ｔ）を生成し、適応フィルタ１４に与えるものである。適応フィルタ１４は、受信信号ｘ（ｔ），ｘｗ（ｔ）を、それぞれタップ係数Ｈ（ｔ）で演算して擬似エコーｒ（ｔ），ｒｗ（ｔ）を生成するものである。また、遅延制御部１５は、適応フィルタ１４のタップ係数Ｈ（ｔ）に基づいてエコーの遅延時間を推定し、入力された線形予測係数ＬＰＣ１を、その推定した遅延時間だけ遅れたタイミングで線形予測係数ＬＰＣ２として出力するものである。
【００２３】
更に、このエコーキャンセラ１０は、ＡＤＣ４から送信信号ｙ（ｔ）が与えられる逆フィルタ１６と加算器１７を有している。逆フィルタ１６は、遅延制御部１５から与えられる線形予測係数ＬＰＣ２を用いて送信信号ｙ（ｔ）を白色化した送信信号ｙｗ（ｔ）を生成し、加算器１８に与えるものである。
【００２４】
加算器１７は、送信信号ｙ（ｔ）から適応フィルタ１４で生成された擬似エコーｒ（ｔ）を差し引いて残差信号ｅ（ｔ）を出力するもので、この残差信号ｅ（ｔ）が送信回線に出力されると共に、切替スイッチ１９の一方の入力側に与えられている。また、加算器１８は、送信信号ｙｗ（ｔ）から適応フィルタ１４で生成された白色化された擬似エコーｒｗ（ｔ）を差し引いて残差信号ｅｗ（ｔ）を出力するもので、この残差信号ｅｗ（ｔ）が切替スイッチ１９の他方の入力側に与えられている。
【００２５】
切替スイッチ１９は、切替制御部２０から与えられる切替信号ＳＷに基づいて残差信号ｅ（ｔ），ｅｗ（ｔ）のいずれか一方を選択し、適応フィルタ１４にタップ係数更新用の信号として与えるものである。切替制御部２０は、このエコーキャンセラ１０に対する動作許可信号ＥＮが与えられた後、適応フィルタ１４のタップ係数の更新回数が所定の回数になるまでの間、切替スイッチ１９に対して残差信号ｅｗ（ｔ）を選択させ、その後は残差信号ｅ（ｔ）を選択させるための切替信号ＳＷを出力するものである。
【００２６】
切替制御部２０は、例えばカウンタで構成され、ダブルトーク検出部２１の検出信号ＷＴによってシングルトーク状態が出力されているときに、図示しない処理用の共通のクロック信号をカウントして一定のカウント値に達したときに、切替スイッチ１９を残差信号ｅｗ（ｔ）からｅ（ｔ）に切り替えるように構成されている。なお、ダブルトーク検出部２１は、受信信号ｘ（ｔ）と残差信号ｅ（ｔ）の各レベルを比較判定することにより、シングルトークやダブルトークの状態を検出するものである。なお、図示していないが、ダブルトーク検出部２１の検出信号ＷＴに基づいて、シングルトーク状態のときにのみ、適応フィルタ１４のタップ係数更新動作が行われるようになっている。
【００２７】
次に動作を説明する。
線形予測部１２のｐ次の線形予測係数ＬＰＣ１をａ０，ａ１，…，ａｐとし、逆フィルタ１３，１６を次のようにする。
【００２８】
【数１】
2008042816.tif 000003
【００２９】
線形予測部１２に分析フレーム単位に相当するＮ個の受信信号ｘ（ｔ），ｘ（ｔ＋１），…，ｘ（ｔ＋Ｎ−１）が入力されると、この線形予測部１２は、これらの受信信号から自己相関法、共分散法、Ｂｕｒｇ法等を用いて反射係数ｃ１，ｃ２，…，ｃｐを計算し、更に計算した反射係数に基づいて線形予測係数ＬＰＣ１（ａ０，ａ１，…，ａｐ）を算出し、この線形予測係数ＬＰＣ１を逆フィルタ１３に設定する。
【００３０】
また、Ｎ個の受信信号ｘ（ｔ）〜ｘ（ｔ＋Ｎ−１）は、遅延バッファ１１によってＮサンプル分遅延されて逆フィルタ１３に与えられる。これにより、受信信号ｘ（ｔ）〜ｘ（ｔ＋Ｎ−１）は、これらの受信信号から算出された線形予測係数ＬＰＣ１を用いて逆フィルタリングされ、精度よく白色化された受信信号ｘｗ（ｔ）が逆フィルタ１３から出力される。
【００３１】
更に、線形予測部１２で算出された線形予測係数ＬＰＣ１は遅延制御部１５に与えられ、この遅延制御部１５によってエコー遅延時間だけ遅れたタイミングで、線形予測係数ＬＰＣ２として逆フィルタ１６に設定される。この遅延制御部１５では、適応フィルタ１４のタップ係数Ｈ（ｔ）の最大絶対値の位置に基づいてエコーの遅延時間を推定する。例えば、サンプリング周波数が８ｋＨｚで、８０番目のタップ係数が最大の絶対値を持つとすると、遅延制御部１５は、図３に示すように、エコー遅延時間を１０ｍｓ（＝０．１２５ｍｓ×８０）と判断し、線形予測係数ＬＰＣ１が与えられたタイミングから１０ｍｓ遅れて、線形予測係数ＬＰＣ２を逆フィルタ１６に設定する。
【００３２】
一方、マイクロホン３には、音声信号ｓ（ｔ）の他、背景雑音ｎ（ｔ）や音響エコーｄ（ｔ）が入力され、これらがＡＤＣ４でディジタル信号に変換されて送信信号ｙ（ｔ）として出力される。送信信号ｙ（ｔ）は、逆フィルタ１６と加算器１７に与えられる。
【００３３】
逆フィルタ１６において、送信信号ｙ（ｔ）は線形予測係数ＬＰＣ２を用いて白色化され、送信信号ｙｗ（ｔ）が生成されて加算器１８に与えられる。加算器１７では、送信信号ｙ（ｔ）から、適応フィルタ１４から出力された擬似エコーｒ（ｔ）が差し引かれ、残差信号ｅ（ｔ）が出力される。また、加算器１８では、送信信号ｙｗ（ｔ）から、適応フィルタ１４から出力された擬似エコーｒｗ（ｔ）が差し引かれ、残差信号ｅｗ（ｔ）が出力される。
【００３４】
残差信号ｅ（ｔ）は、送信回線を通して遠端に出力される。また、残差信号ｅ（ｔ），ｅｗ（ｔ）は、切替スイッチ１９に与えられ、切替制御部２０からの切替信号ＳＷに従っていずれか一方が選択されて、適応フィルタ１４にタップ係数更新用の信号として与えられる。
【００３５】
動作許可信号ＥＮによってエコーキャンセラ１０の動作が開始された後、適応フィルタ１４のタップ係数の更新回数が所定の回数になるまでの間、切替制御部２０から切替スイッチ１９に対して残差信号ｅｗ（ｔ）を選択させる切替信号ＳＷが出力される。
【００３６】
このとき、離散時刻ｔにおける適応フィルタ１４のタップ係数Ｈ（ｔ）と、この適応フィルタ１４への入力信号、即ち逆フィルタ１３から出力される信号Ｘｗ（ｔ）は、それぞれ次のように表される。
Ｈ（ｔ）＝［ｈ１（ｔ），ｈ２（ｔ），…，ｈｍ（ｔ）］Ｔ
Ｘｗ（ｔ）＝［ｘｗ（ｔ），ｘｗ（ｔ−１），…，ｘｗ（ｔ−ｍ＋１）］Ｔ
【００３７】
これにより、擬似エコーｒｗ（ｔ）と残差信号ｅｗ（ｔ）は、次のように表される。
ｒｗ（ｔ）＝Ｈ（ｔ）ＴＸｗ（ｔ）
ｅｗ（ｔ）＝ｙｗ（ｔ）−ｒｗ（ｔ）
【００３８】
また、タップ係数Ｈ（ｔ）の更新は、次のように表される。
Ｈ（ｔ＋１）＝Ｈ（ｔ）＋μ［ｅｗ（ｔ）Ｘｗ（ｔ）］／‖Ｘｗ（ｔ）‖２
【００３９】
ここで、ｘｗ（ｔ），ｙｗ（ｔ）は、それぞれ自己相関が除去された白色信号であるので、タップ係数Ｈ（ｔ）は高速度で収束する。
【００４０】
適応フィルタ１４のタップ係数の更新回数が所定の回数に達すると、タップ係数Ｈ（ｔ）は収束したものと見なして、切替制御部２０から切替スイッチ１９に対して残差信号ｅ（ｔ）を選択させる切替信号ＳＷが出力される。
【００４１】
これにより、このエコーキャンセラ１０は、従来のエコーキャンセラ５と同様の構成となり、離散時刻ｔにおける適応フィルタ１４のタップ係数Ｈ（ｔ）と、この適応フィルタ１４への入力信号、即ち受信信号Ｘ（ｔ）は、それぞれ次のように表される。
Ｈ（ｔ）＝［ｈ１（ｔ），ｈ２（ｔ），…，ｈｍ（ｔ）］Ｔ
Ｘ（ｔ）＝［ｘ（ｔ），ｘ（ｔ−１），…，ｘ（ｔ−ｍ＋１）］Ｔ
【００４２】
また、擬似エコーｒ（ｔ）と残差信号ｅ（ｔ）は、次のように表される。
ｒ（ｔ）＝Ｈ（ｔ）ＴＸ（ｔ）
ｅ（ｔ）＝ｙ（ｔ）−ｒ（ｔ）
【００４３】
そして、タップ係数Ｈ（ｔ）の更新は、従来と同様に次のように表される。
Ｈ（ｔ＋１）＝Ｈ（ｔ）＋μ［ｅ（ｔ）Ｘ（ｔ）］／‖Ｘ（ｔ）‖２
【００４４】
以上のように、この実施例１のエコーキャンセラ１０は、線形予測部１２の分析フレームに相当するサンプル分の受信信号をバッファリングする遅延バッファ１１を設け、この線形予測部１２で算出された線形予測係数ＬＰＣ１を用いて遅延バッファ１１から出力される受信信号ｘ（ｔ）を逆フィルタ１３で逆フィルタリングするように構成しているので、この逆フィルタ１３の白色化の精度が向上する。更に、適応フィルタ１４のタップ係数Ｈ（ｔ）の最大絶対値の位置から推定したエコー遅延時間に応じて、逆フィルタ１６に設定する線形予測係数ＬＰＣ２のタイミングを制御する遅延制御部１５を設けているので、この逆フィルタ１６の白色化の精度が向上する。従って、エコーキャンセラ１０の動作が開始された初期の段階で、逆フィルタ１３，１６から出力される白色化された受信信号ｘｗ（ｔ）と送信信号ｙｗ（ｔ）を用いて適応フィルタ１４のタップ係数Ｈ（ｔ）を更新することにより、高速かつ精度良くこのタップ係数Ｈ（ｔ）を収束させることが出来る。
【００４５】
更に、タップ係数Ｈ（ｔ）が収束した後は、逆フィルタ１３，１６を使用せずに、従来どおり、受信信号ｘ（ｔ）と送信信号ｙ（ｔ）を用いて適応フィルタ１４のタップ係数Ｈ（ｔ）を更新するように切替スイッチ１９を切り替えるので、エコーキャンセルの精度を高く保持することが出来るという利点がある。
【実施例２】
【００４６】
図４は、本発明の実施例２を示すエコーキャンセラの構成図であり、図１中の要素と共通の要素には共通の符号が付されている。
【００４７】
このエコーキャンセラ１０Ａは、図１のエコーキャンセラ１０に対して、線形予測部１２から出力される線形予測係数ＬＰＣ１を保持し、保持した線形予測係数を遅延制御部１５Ａからの読み出し要求に従って読み出して出力するＦＩＦＯ（先入れ先出し）バッファ２２を設けたものである。なお、遅延制御部１５Ａは図１中の遅延制御部１５と同様の機能に加えて、線形予測部１２から出力される線形予測係数ＬＰＣ１の出力タイミングから所定の遅延時間後にＦＩＦＯバッファ２２を読み出し、線形予測係数ＬＰＣ２として逆フィルタ１５へ出力する機能が付加されている。その他の構成は、図１と同様である。
【００４８】
図５は、図１と図４のエコーキャンセラの動作を比較するための説明図である。
線形予測部１２においてｉ番目の分析フレームで計算されたｐ次の線形予測係数ＬＰＣ１を、次のように表す。
Ａｉ＝［ａ０ｉ，ａ１ｉ，…，ａｐｉ］
【００４９】
図１のエコーキャンセラ１０では、図５（ａ）に示すように、逆フィルタ１３に設定した線形予測係数ＬＰＣ１を、エコー遅延時間ＴＤだけ遅れて線形予測係数ＬＰＣ２として逆フィルタ１６に設定するように制御している。このため、エコー遅延時間ＴＤが分析フレームの時間ＴＦよりも長い場合、線形予測係数ＬＰＣ１が次の分析フレームに対する線形予測係数に更新されてしまい、逆フィルタ１６に正しい線形予測係数ＬＰＣ２を設定することが出来なくなってしまう。
【００５０】
これに対して、この実施例２のエコーキャンセラ１０Ａでは、図５（ｂ）に示すように、線形予測係数ＬＰＣ１を一時的にＦＩＦＯバッファ２２に格納し、遅延制御部１５Ａからの読み出し要求に従って読み出して線形予測係数ＬＰＣ２として逆フィルタ１６に設定するように制御している。これにより、エコー遅延時間ＴＤが分析フレームの時間ＴＦよりも長くても、常に逆フィルタ１６に正しい線形予測係数ＬＰＣ２を設定することが出来る。
【００５１】
従って、この実施例２のエコーキャンセラ１０Ａは、図１のエコーキャンセラ１０と同様の利点に加えて、エコー遅延時間ＴＤに拘らず、的確にタップ係数Ｈ（ｔ）を収束させることが出来るという利点がある。
【実施例３】
【００５２】
図６は、本発明の実施例３を示すエコーキャンセラの構成図であり、図１中の要素と共通の要素には共通の符号が付されている。
【００５３】
このエコーキャンセラ１０Ｂは、図１のエコーキャンセラ１０に広帯域信号判定部２３とＯＲ（論理和）ゲート２４を追加したものである。広帯域信号判定部２３は、線形予測部１２から出力される２次の反射係数ｃ２を閾値ＴＨ１と比較して、この反射係数ｃ２が閾値ＴＨ１よりも小さいときに、受信信号ｘ（ｔ）のスペクトルが分散して白色信号に近い特性であると判定し、残差信号ｅ（ｔ）を選択するように切り替えるための検出信号ＤＷを出力するものである。ＯＲゲート２４は、切替制御部２０から出力される残差信号ｅ（ｔ）を選択するように切り替えるための信号と、広帯域信号判定部２３から出力される検出信号ＤＷの論理和を選択信号ＳＷとして切替スイッチ１９に与えるものである。
【００５４】
このエコーキャンセラ１０Ｂでは、線形予測部１２の計算過程で導出される２次の反射係数ｃ２を閾値ＴＨ１と比較している。２次の反射係数ｃ２は、全帯域に対するスペクトルの疎／密の度合い、即ち、分散／集中の度合いを表している。従って、反射係数ｃ２の値が予め設定した閾値ＴＨ１よりも小さい場合、スペクトルが分散して白色信号に近い特性であると判定することが出来る。これにより、広帯域信号判定部２３から検出信号ＤＷが出力されると、切替制御部２０からの信号に拘らず、切替スイッチ１９は、残差信号ｅ（ｔ）を選択するように切り替えられる。
【００５５】
以上のように、この実施例３のエコーキャンセラ１０Ｂは、線形予測部１２から出力される２次の反射係数ｃ２に基づいて、受信信号ｘ（ｔ）が白色信号に近い特性であると判定したときに、残差信号ｅ（ｔ）を選択するように切り替えるための広帯域信号判定部２３を有している。これにより、この実施例３は、実施例１と同様の利点に加えて、受信信号ｘ（ｔ）が白色信号に近い場合に、切替制御部２０による切り替えのタイミングを待たずに、直ちに適応フィルタ１４のタップ係数Ｈ（ｔ）の更新を通常の状態に切り替えて、安定した状態に移行することができるという利点がある。
【実施例４】
【００５６】
図７は、本発明の実施例４を示すエコーキャンセラの構成図であり、図１中の要素と共通の要素には共通の符号が付されている。
【００５７】
このエコーキャンセラ１０Ｃは、図１のエコーキャンセラ１０にＳ／Ｎ検出部２５を追加すると共に、適応フィルタ１４に代えて機能の追加された適応フィルタ１４Ａを設けたものである。Ｓ／Ｎ検出部２５は、送信信号ｙ（ｔ）と残差信号ｅ（ｔ）からＳ／Ｎ（信号対雑音比）を算出して検出信号ＳＮを出力するものである。一方、適応フィルタ１４Ａは、Ｓ／Ｎ検出部２５から与えられる検出信号ＳＮに従って、タップ係数Ｈ（ｔ）の更新処理におけるステップサイズμが制御されるように構成されたものである。その他の構成は、図１と同様である。
【００５８】
このエコーキャンセラ１０Ｃでは、先ず、Ｓ／Ｎ検出部２５において次式により、送信信号ｙ（ｔ）に含まれるエコーの信号レベルＳＬＶ（ｔ）が、この送信信号ｙ（ｔ）の絶対値の移動平均から求められる。
ＳＬＶ（ｔ）＝α×ＳＬＶ（ｔ−１）＋（１−α）×｜ｙ（ｔ）｜
但し、０＜α＜１  である。
【００５９】
次に、Ｓ／Ｎ検出部２５において、例えば前記特許文献２に記載された方法により、残差信号ｅ（ｔ）のレベルの長期平均と短期平均に基づいて、送信信号に含まれる背景雑音レベルＮＬＶ（ｔ）が求められる。
【００６０】
こうして求めた送信信号に含まれる信号レベルＳＬＶ（ｔ）と背景雑音レベルＮＬＶ（ｔ）から、次式に従って送信信号ｙ（ｔ）のＳ／Ｎ（ｔ）が算出される。
Ｓ／Ｎ（ｔ）＝２０×ｌｏｇ｛ＳＬＶ（ｔ）／ＮＬＶ（ｔ）｝
【００６１】
Ｓ／Ｎ検出部２５で算出されたＳ／Ｎ（ｔ）は、検出信号ＳＮとして適応フィルタ１４Ａに与えられる。なお、背景雑音レベルＮＬＶ（ｔ）を、送信信号ｙ（ｔ）からではなく残差信号ｅ（ｔ）から求める理由は、図１の送信信号ｙ（ｔ）に含まれる信号のうち、音響エコーｄ（ｔ）と背景雑音ｎ（ｔ）の比をＳ／Ｎ（ｔ）として算出するためである。即ち、背景雑音レベルＮＬＶ（ｔ）を送信信号ｙ（ｔ）から算出すると、背景雑音ｎ（ｔ）がほとんど存在しない環境であっても、音響エコーｄ（ｔ）に雑音成分が多く含まれていれば、Ｓ／Ｎは小さい値を示してしまうからである。
【００６２】
また、上記のＳ／Ｎ（ｔ）の式には、送信信号ｙ（ｔ）に含まれる音声信号ｓ（ｔ）が考慮されていないが、送信信号ｙ（ｔ）に音声信号ｓ（ｔ）が含まれる場合は、ダブルトーク検出器２１によって適応フィルタ１４Ａのタップ係数Ｈ（ｔ）の更新が停止されるので、この音声信号ｓ（ｔ）が存在する場合のステップサイズμの大きさについては特に考慮する必要がない。
【００６３】
適応フィルタ１４Ａでは、Ｓ／Ｎ検出部２５から与えられる検出信号ＳＮに応じて、タップ係数Ｈ（ｔ）の収束速度を調整するステップサイズμが調整される。即ち、送信信号Ｙ（ｔ）に背景雑音が少なくＳ／Ｎ（ｔ）が大きいときには、ステップサイズμは大きな値に設定される。また、送信信号Ｙ（ｔ）に背景雑音が多くＳ／Ｎ（ｔ）が小さいときには、ステップサイズμは小さな値に設定される。
【００６４】
以上のように、この実施例４のエコーキャンセラ１０Ｃによれば、送信信号ｙ（ｔ）のＳ／Ｎに応じて、タップ係数Ｈ（ｔ）を更新するステップサイズμの大きさを調整するように構成している。これにより、送信信号ｙ（ｔ）に背景雑音が多く存在する場合には、タップ係数Ｈ（ｔ）の更新量を小さくすることで、収束速度は低下するものの逆フィルタ１６によって増幅される高域雑音成分の影響を少なくして、エコーキャンセル量の低下を軽減することが出来る。また、送信信号ｙ（ｔ）に背景雑音があまり存在しない場合には、タップ係数Ｈ（ｔ）の更新量を大きくして収束速度を向上することが出来るという利点が有る。
【実施例５】
【００６５】
図８は、本発明の実施例５を示すエコーキャンセラの構成図であり、図６及び図７中の要素と共通の要素には共通の符号が付されている。
【００６６】
このエコーキャンセラ１０Ｄは、広帯域信号判定部２３の検出信号ＤＷによって切替スイッチ１９の切り替えを制御すると共に、Ｓ／Ｎ検出部２５の検出信号ＳＮによって適応フィルタ１４Ａのステップサイズμを調整するように構成している。その他の構成は、図６及び図７と同様である。従って、このエコーキャンセラ１０Ｄでは、第３の実施例と第４の実施例の双方の利点を有する。
【実施例６】
【００６７】
図９は、本発明の実施例６を示すエコーキャンセラの構成図であり、図８中の要素と共通の要素には共通の符号が付されている。
【００６８】
このエコーキャンセラ１０Ｅは、図８のエコーキャンセラ１０Ｄに狭帯域信号判定部２６を追加したものである。狭帯域信号判定部２６は、線形予測部１２から出力される２次の反射係数ｃ２を閾値ＴＨ２と比較し、その大小判定結果に応じて適応フィルタ１４Ａのタップ係数Ｈ（ｔ）の更新動作を制御するための検出信号ＤＮを出力するものである。
【００６９】
この狭帯域信号判定部２６は、トーン性信号による学習によってタップ係数Ｈ（ｔ）が発散することを防止するために、線形予測部１２から出力される２次の反射係数ｃ２を予め設定した閾値ＴＨ２と比較し、反射係数ｃ２がこの閾値ＴＨ２よりも大きい場合に、受信信号ｘ（ｔ）のスペクトルが集中してトーン性信号に近い特性であると判定し、適応フィルタ１４Ａのタップ係数Ｈ（ｔ）の更新動作を停止させるための検出信号ＤＮを出力する。
【００７０】
以上のように、この実施例６のエコーキャンセラ１０Ｅは、受信信号ｘ（ｔ）がトーン性信号に近い特性である場合に、適応フィルタ１４Ａのタップ係数Ｈ（ｔ）の更新動作を停止させる狭帯域信号判定部２６を有しているので、実施例５と同様の利点に加えて、受信信号ｘ（ｔ）がトーン性信号に近い場合にタップ係数Ｈ（ｔ）の発散を防止することが出来るという利点がある。
【実施例７】
【００７１】
図１０は、本発明の実施例７を示すエコーキャンセラの構成図である。
このエコーキャンセラは、適応フィルタ３１と、加算器３２と、Ｓ／Ｎ検出部３３とで構成されている。
【００７２】
適応フィルタ３１は、離散時刻ｔにおける受信信号ｘ（ｔ）をタップ係数Ｈ（ｔ）で演算して擬似エコーｒ（ｔ）を生成すると共に、Ｓ／Ｎ検出部３３から与えられる検出信号ＳＮの値に応じたステップサイズμで、タップ係数Ｈ（ｔ）を更新するものである。
【００７３】
加算器３２は、送信信号ｙ（ｔ）から擬似エコーｒ（ｔ）を差し引いて残差信号ｅ（ｔ）を出力するものである。
【００７４】
Ｓ／Ｎ検出部３３は、例えば図６中のＳ／Ｎ検出部２５と同様に、送信信号ｙ（ｔ）に含まれるエコーの信号レベルＳＬＶ（ｔ）と、背景雑音レベルＮＬＶ（ｔ）に基づいてＳ／Ｎ（ｔ）を算出し、検出信号ＳＮとして適応フィルタ３１に与えるものである。
【００７５】
このエコーキャンセラでは、音声信号ｓ（ｔ）の他、背景雑音ｎ（ｔ）や音響エコーｄ（ｔ）が、ディジタル信号に変換されて送信信号ｙ（ｔ）として入力される。
【００７６】
一方、適応フィルタ３１には遠端から受信信号ｘ（ｔ）が入力されるが、ここで、音響エコーｄ（ｔ）のエコー経路のインパルス応答Ｈをｍ次のＦＩＲフィルタで近似できると仮定すると、離散時刻ｔにおける適応フィルタ３１のタップ係数Ｈ（ｔ）と、この適応フィルタ３１に入力される受信信号ｘ（ｔ）は、それぞれ次のように表される。
Ｈ（ｔ）＝［ｈ１（ｔ），ｈ２（ｔ），…，ｈｍ（ｔ）］Ｔ
Ｘ（ｔ）＝［ｘ（ｔ），ｘ（ｔ−１），…，ｘ（ｔ−ｍ＋１）］Ｔ
【００７７】
これにより、適応フィルタ３１から出力される擬似エコーｒ（ｔ）と、加算器３３から出力される残差信号ｅ（ｔ）は、次のように表される。
ｒ（ｔ）＝Ｈ（ｔ）ＴＸ（ｔ）
ｅ（ｔ）＝ｙ（ｔ）−ｒ（ｔ）
【００７８】
また、適応フィルタ３１のタップ係数Ｈ（ｔ）の更新は、ＮＬＭＳアルゴリズムの場合、次のように表される。
Ｈ（ｔ＋１）＝Ｈ（ｔ）＋μ［ｅ（ｔ）Ｘ（ｔ）］／‖Ｘ（ｔ）‖２
【００７９】
なお、タップ係数Ｈ（ｔ）の更新は、図示しないダブルトーク検出部等の制御により、受信信号ｘ（ｔ）は存在するが音声信号ｓ（ｔ）の存在しないシングルトーク状態のときにのみ行われ、受信信号ｘ（ｔ）と音声信号ｓ（ｔ）が共に存在するダブルトーク状態のときと、受信信号ｘ（ｔ）が存在しないときには更新の動作は停止される。
【００８０】
Ｓ／Ｎ検出部３３では、送信信号ｙ（ｔ）に含まれるエコーの信号レベルＳＬＶ（ｔ）と、背景雑音レベルＮＬＶ（ｔ）に基づいてＳ／Ｎ（ｔ）が算出され、検出信号ＳＮとして適応フィルタ３１に与えられる。
【００８１】
適応フィルタ３１では、Ｓ／Ｎ検出部３３から与えられる検出信号ＳＮに応じて、タップ係数Ｈ（ｔ）の収束速度を調整するステップサイズμが調整される。即ち、送信信号Ｙ（ｔ）に背景雑音が少なくＳ／Ｎ（ｔ）が大きいときには、ステップサイズμは大きな値に設定され、送信信号Ｙ（ｔ）に背景雑音が多くＳ／Ｎ（ｔ）が小さいときには、ステップサイズμは小さな値に設定される。
【００８２】
以上のように、この実施例７のエコーキャンセラによれば、送信信号ｙ（ｔ）のＳ／Ｎに応じてタップ係数Ｈ（ｔ）を更新するステップサイズμの大きさを調整するように構成している。これにより、送信信号ｙ（ｔ）に背景雑音が多く存在する場合には、タップ係数Ｈ（ｔ）の更新量を小さくすることで収束速度は低下するものの、エコーキャンセル量の低下を軽減することが出来る。また、送信信号ｙ（ｔ）に背景雑音があまり存在しない場合には、タップ係数Ｈ（ｔ）の更新量を大きくして収束速度を向上することが出来るという利点が有る。
【００８３】
なお、本発明は、上記実施例に限定されず、種々の変形が可能である。この変形例としては、例えば、次のようなものがある。
（１）  図１等において、切替制御部２０は、適応フィルタ１４のタップ係数の更新回数に応じて切替信号ＳＷを出力するように構成しているが、実際のタップ係数の収束状況に応じて切替信号ＳＷを出力するように構成することが出来る。その場合、例えば、シングルトーク時の残差信号ｅ（ｔ）のパワーレベルを監視し、そのパワーレベルが一定レベル以下になったときに、残差信号ｅ（ｔ）を選択する切替信号ＳＷを出力するように構成する。
（２）  図７等において、Ｓ／Ｎ検出部２５は、送信信号ｙ（ｔ）と残差信号ｅ（ｔ）からＳ／Ｎを算出しているが、送信信号ｙｗ（ｔ）と残差信号ｅｗ（ｔ）からＳ／Ｎを算出するように構成しても良い。
（３）  図７等において、適応フィルタ１４Ａは、検出信号ＳＮに基づいてタップ係数Ｈ（ｔ）の更新時のステップサイズμの大きさを調整するように構成されているが、Ｓ／Ｎ検出部２５及び検出信号ＳＮを用いずに、切替信号ＳＷを用いてステップサイズμを２段階に切り替えるようにしても良い。
（４）  図６〜図９に、図４と同様のＦＩＦＯバッファ２２を設けても良い。
【図面の簡単な説明】
【００８４】
【図１】本発明の実施例１を示すエコーキャンセラの構成図である。
【図２】従来のエコーキャンセラの構成図である。
【図３】タップ係数から推定されるエコー遅延時間の説明図である。
【図４】本発明の実施例２を示すエコーキャンセラの構成図である。
【図５】図１と図４のエコーキャンセラの動作を比較するための説明図である。
【図６】本発明の実施例３を示すエコーキャンセラの構成図である。
【図７】本発明の実施例４を示すエコーキャンセラの構成図である。
【図８】本発明の実施例５を示すエコーキャンセラの構成図である。
【図９】本発明の実施例６を示すエコーキャンセラの構成図である。
【図１０】本発明の実施例７を示すエコーキャンセラの構成図である。
【符号の説明】
【００８５】
１１    遅延バッファ
１２    線形予測部
１３，１６    逆フィルタ
１４，１４Ａ    適応フィルタ
１５    遅延制御部
１７，１８    加算器
１９    切替スイッチ
２０    切替制御部
２１    ダブルトーク検出部
２２    ＦＩＦＯバッファ
２３    広帯域信号判定部
２５    Ｓ／Ｎ検出部
２６    狭帯域信号判定部
【図１】
2008042816.tif 000004
【図２】
2008042816.tif 000005
【図３】
2008042816.tif 000006
【図４】
2008042816.tif 000007
【図５】
2008042816.tif 000008
【図６】
2008042816.tif 000009
【図７】
2008042816.tif 000010
【図８】
2008042816.tif 000011
【図９】
2008042816.tif 000012
【図１０】
2008042816.tif 000013