(57)【要約】【課題】  ダブルトークとエコー経路変動が生ずる系にエコーキャンセラを適用するには、所定の識別パラメータによってダブルトークとエコー経路変動とを識別する必要がある。しかし、従来の識別パラメータでは、ダブルトークとエコー経路変動が与える分布に生ずる重なりが大きく、よって識別が遅延し、エコー消去量の確保が遅れ、エコーキャンセラの動作が不安定になっていた。【解決手段】  エコーキャンセラの適応アルゴリズムは、誤差信号と、ＦＩＲフィルタ212の所定の探索範囲内の各係数タップへの入力信号との積を算出し、該積に基づいて定められる第１値に基づいて、該探索範囲内の係数タップのうちから代表タップを選出する。そして、誤差信号と該代表タップへの入力信号との積に基づいて定められる第２値と、誤差信号のパワー値に基づいて定められる第３値とに基づいて、ダブルトーク状態が発生しているか否かを判断する。【選択図】  図１Ａ
2005318571.tif 000002
【特許請求の範囲】
【請求項１】
スピーカに供給される受信信号が該スピーカからマイクロホンへ回り込むことによって生成されるエコー信号を、該マイクロホンの出力信号から除去するエコーキャンセラであって、
該受信信号に基づいて疑似エコー信号を生成する係数更新可能なＦＩＲフィルタと、
該マイクロホンの出力信号から該ＦＩＲフィルタが生成した疑似エコー信号を差し引くことによって誤差信号を生成する減算器と、
該受信信号と該誤差信号とに基づいて該誤差信号が最小となるように適応アルゴリズムによって該ＦＩＲフィルタの係数を更新する係数更新部とを備え、
該適応アルゴリズムは、該誤差信号と、該ＦＩＲフィルタの所定の探索範囲内の各係数タップへの入力信号との積を算出し、該積に基づいて定められる第１値に基づいて、該探索範囲内の係数タップのうちから代表タップを選出し、
該誤差信号と該代表タップへの入力信号との積に基づいて定められる第２値と、該誤差信号のパワー値に基づいて定められる第３値とに基づいて、ダブルトーク状態が発生しているか否かを判断する、エコーキャンセラ。
【請求項２】
該第１値が、該誤差信号と各係数タップへの入力信号との積であり、
該第２値が、誤差信号と該代表タップへの入力信号との積であり、
該第３値が、該誤差信号のパワー値である、請求項１記載のエコーキャンセラ。
【請求項３】
該適応アルゴリズムが、ブロック実行型の適応アルゴリズムであり、
該第１値が、該誤差信号と各係数タップへの入力信号との積の時間ブロックにおける累積和であり、
該第２値が、該誤差信号と該代表タップへの入力信号との積の時間ブロックにおける累積和であり、
該第３値が、該誤差信号のパワー値の時間ブロックにおける累積和である、請求項１記載のエコーキャンセラ。
【請求項４】
該第２値の該第３値に対する比率の絶対値が所定閾値未満であるときに、ダブルトーク状態が発生していると判断する、請求項１乃至３のいずれか一の項に記載のエコーキャンセラ。
【請求項５】
該第２値の該第３値に対する比率の絶対値が前記所定閾値以上であり、かつ、
今回またはそれ以前に選出された代表タップについての連続した２回分の第２値の符号が異なるときに、ダブルトーク状態が発生していると判断する、請求項４記載のエコーキャンセラ。
【請求項６】
該第２値の該第３値に対する比率の絶対値が前記所定閾値以上であり、かつ、
今回選出された代表タップへの今回の入力信号と今回の誤差信号との積に基づいて定められる第２値の符号と、今回選出された代表タップへの前回の入力信号と前回の誤差信号との積に基づいて定められる第２値の符号とが異なるときに、ダブルトーク状態が発生していると判断する、請求項４記載のエコーキャンセラ。
【請求項７】
該第２値の該第３値に対する比率の絶対値が前記所定閾値以上であり、かつ、
前回選出された代表タップへの今回の入力信号と今回の誤差信号との積に基づいて定められる第２値の符号と、前回選出された代表タップへの前回の入力信号と前回の誤差信号との積に基づいて定められる第２値の符号とが異なるときに、ダブルトーク状態が発生していると判断する、請求項４記載のエコーキャンセラ。
【請求項８】
該第３値が所定値以下であるとき、前記所定閾値がより大きな値に修正される、請求項４乃至７のいずれか一の項に記載のエコーキャンセラ。
【請求項９】
スピーカに供給される受信信号が該スピーカからマイクロホンへ回り込むことによって生成されるエコー信号を、該マイクロホンの出力信号から除去するエコーキャンセラであって、
該受信信号に基づいて疑似エコー信号を生成する係数更新可能なＦＩＲフィルタと、
該マイクロホンの出力信号から該ＦＩＲフィルタが生成した疑似エコー信号を差し引くことによって誤差信号を生成する減算器と、
該受信信号と該誤差信号とに基づいて該誤差信号が最小となるように適応アルゴリズムによって該ＦＩＲフィルタの係数を更新する係数更新部とを備え、
該適応アルゴリズムは、該誤差信号と、該ＦＩＲフィルタの所定の探索範囲内の各係数タップへの入力信号との積を算出し、該積に基づいて定められる第１値に基づいて、該探索範囲内の係数タップのうちから代表タップを選出し、
今回またはそれ以前に選出された代表タップについての連続した２回分の第２値の符号が異なるときに、ダブルトーク状態が発生していると判断し、
該第２値が、該誤差信号と該代表タップへの入力信号との積に基づいて定められる値である、エコーキャンセラ。
【請求項１０】
今回選出された代表タップへの今回の入力信号と今回の誤差信号との積に基づいて定められる第２値の符号と、今回選出された代表タップへの前回の入力信号と前回の誤差信号との積に基づいて定められる第２値の符号とが異なるときに、ダブルトーク状態が発生していると判断する、請求項９記載のエコーキャンセラ。
【請求項１１】
前回選出された代表タップへの今回の入力信号と今回の誤差信号との積に基づいて定められる第２値の符号と、前回選出された代表タップへの前回の入力信号と前回の誤差信号との積に基づいて定められる第２値の符号とが異なるときに、ダブルトーク状態が発生していると判断する、請求項９記載のエコーキャンセラ。
【請求項１２】
該第１値が、該誤差信号と各係数タップへの入力信号との積であり、
該第２値が、誤差信号と該代表タップへの入力信号との積である、請求項９乃至１１のいずれか一の項に記載のエコーキャンセラ。
【請求項１３】
該適応アルゴリズムが、ブロック実行型の適応アルゴリズムであり、
該第１値が、該誤差信号と各係数タップへの入力信号との積の時間ブロックにおける累積和であり、
該第２値が、該誤差信号と該代表タップへの入力信号との積の時間ブロックにおける累積和である、請求項９乃至１１のいずれか一の項に記載のエコーキャンセラ。
【請求項１４】
該探索範囲内の係数タップのうちで、該第１値の絶対値が最も大きい係数タップを、代表タップとして選出する、請求項１乃至１３のいずれか一の項に記載のエコーキャンセラ。
【請求項１５】
該探索範囲が、該ＦＩＲフィルタの全係数タップである、請求項１乃至１４のいずれか一の項に記載のエコーキャンセラ。
【請求項１６】
該探索範囲が、該ＦＩＲフィルタの一部の係数タップである、請求項１乃至１４のいずれか一の項に記載のエコーキャンセラ。
【請求項１７】
該探索範囲が、該ＦＩＲフィルタの初段から中間段までの連続した係数タップである、請求項１乃至１４のいずれか一の項に記載のエコーキャンセラ。
【請求項１８】
該適応アルゴリズムは、ダブルトーク状態が発生していると判断したときに、該ＦＩＲフィルタの係数の更新量を少なく、又は、該係数の更新を停止する、請求項１乃至１７のいずれか一の項に記載のエコーキャンセラ。
【請求項１９】
該適応アルゴリズムは、所定回数連続して、ダブルトーク状態が発生しているとの判断がされなかったとき、エコー経路変動状態が発生していると判断する、請求項１乃至１８のいずれか一の項に記載のエコーキャンセラ。
【請求項２０】
該適応アルゴリズムは、エコー経路変動状態が発生していると判断したときに、該ＦＩＲフィルタの係数の更新量を多くする、請求項１９記載のエコーキャンセラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、エコーキャンセラの性能（エコー消去量）を低下させる要因の一つとして知られるダブルトーク（近端話者と遠端話者が同時に発話する状態）の発生時においてもエコー消去量を所定値以上に維持するとともに、エコー経路が変動した場合にはエコー消去量を速やかに回復させるエコーキャンセラに関する。
【背景技術】
【０００２】
ダブルトークとエコー経路変動の識別技術が適用される具体的な応用分野の一つとしてハンズフリー通話装置がある。これはマイクロホンとスピーカを用いて通話する装置で、ハンドセット（受話器）をもたないで通話できるという利点を有する。図２は、そのハンズフリーによる通話を音響エコーキャンセラ210の導入によって実現する回路の例である。この図２において、適応フィルタ212は遠端話者音声ｘjを使ってスピーカ201からマイクロホン200に回り込むエコーｄjに近似される擬似エコーｕjを合成する。また、そのフィルタの係数
【０００３】
【数１】
2005318571.tif 000003
【０００４】
は減算器211の出力
【０００５】
【数２】
2005318571.tif 000004
【０００６】
が最小となるように更新される。ただし、上式においてＩは適応フィルタのタップ数、ｎjは近端話者音声である。すなわち、エコーｄjは、この係数更新の結果として相殺され、遠端話者の側に送出される量が抑えられて円滑な会話が可能になる。
【０００７】
問題は、近端話者の音声ｎjがマイクロホンの出力ｙjに
【０００８】
【数３】
2005318571.tif 000005
【０００９】
として混入することである。適応フィルタはエコーｄjを目標として、それに近似される擬似エコーｕjを合成する。その際、近端話者の音声ｎjは、その合成に対して擾乱として働く。その影響は既に、適応フィルタの係数更新アルゴリズムを最も一般的な学習同定法
【００１０】
【数４】
2005318571.tif 000006
【００１１】
とした場合において明らかにされている。ここで、‖ｘj‖2は２乗ノルムで
【００１２】
【数５】
2005318571.tif 000007
【００１３】
と計算され、μはステップサイズと呼ばれる定数で
【００１４】
【数６】
2005318571.tif 000008
【００１５】
の範囲に選ばれる。この学習同定法においてエコー消去量は推定誤差、すなわち、スピーカ201からマイクロホン200に至る音響系のインパルス応答
【００１６】
【数７】
2005318571.tif 000009
【００１７】
と適応フィルタの係数との差
【００１８】
【数８】
2005318571.tif 000010
【００１９】
に対応し、その推定誤差Δjの大きさは、その２乗平均σd2として
【００２０】
【数９】
2005318571.tif 000011
【００２１】
と定式化されている。このことからわかるように、近端話者の発声はσn2を増加させ、その結果として増加した推定誤差によってエコー消去性能が低下する。ここで、σx2は遠端話者音声の平均パワー、σn2は近端話者音声の平均パワーである。
【００２２】
この低下に対して式(９)は、ダブルトークの有無の観測と、それを観測したときには適応フィルタの係数の更新を停止させるか、ステップサイズを小さく与える制御が有効であることを示している。その制御に対して問題は、エコー経路、すなわち、ｈが変化したときには反対に係数更新の継続を必要とすることである。このようにエコーキャンセラではエコー経路変動とダブルトークの発生に対して逆の制御が必要になる。したがって、ハンズフリー通話装置の安定した動作のためには、その両者を誤り無く識別して、それぞれに適した操作を施すことが不可欠となる。問題は、その識別法である。
【００２３】
このダブルトークの問題の存在が知られるようになって最初に検討されたのは、上記識別法ではなく、ダブルトークの検出法である（例えば、非特許文献１参照）。その理由は、係数更新を常態としてダブルトークのときだけ係数更新を停止すればよいと単純に考えられたためである。しかし、エコー消去量を例えば３０dB確保することを目標とした場合、推定誤差としてσd2＝０.００１の確保が必要になる。この確保の難しさは例えば、式(９)から明らかなようにステップサイズμを１とした場合において検出すべき近端話者の音声パワーが遠端話者の音声パワーの約１／１０００となるということからもわかる。この事実は、エコーに埋もれた近端話者の発声を検出すべきことを意味する。しかし、この埋もれた音声の検出が現実には困難であることは明らかである。
【００２４】
そこで、つぎに減算器出力ｅjの増加をもってダブルトークの発生とする方法が提案された（例えば、非特許文献２参照）。この場合、減算器出力ｅjにおいてエコーが減算されており、したがって、エコーに埋もれた近端話者の音声が検出可能となる。しかし、減算器出力ｅjはエコー経路が変化してもダブルトークと同様に増加する。したがって、この減算器出力ｅjを用いる方法においては、エコー経路変動とダブルトーク発生の識別を必要とする。すなわち、ダブルトークにおいてエコー消去量を高く維持するためにはエコーに埋もれた近端話者音声を検出する必要から減算器出力ｅjの変化を参照せざるを得ず、さらに、その変化をダブルトーク検出に利用するためにはエコー経路変動とダブルトーク発生の正確な識別法が必要となる。
【００２５】
この識別は、マイクロホンの出力ｙj、あるいは減算器出力ｅjを構成する成分の割合を知ることに等しい。例えば、式(２)において（ｄj−ｕj）が増加したときはエコー経路変動、ｎjが増加したときはダブルトークと判定することができる。問題は、その両者のどちらが増加したか、それを正しく判別する方法である。
【００２６】
その増加を区別して知る方法として相関の利用が考えられる。さらに、その相関の計算に利用できる信号として遠端話者音声ｘjと擬似エコーｕjがある。例えば、後者の擬似エコーｕjを用いる場合では、その擬似エコーｕjと近端話者音声ｎjは相関が低いと仮定することができ、したがって、エコー経路に変動がなく、エコーが十分に相殺されて
【００２７】
【数１０】
2005318571.tif 000012
【００２８】
の関係が成り立つ場合ではダブルトークの発生に対して、期待値
【００２９】
【数１１】
2005318571.tif 000013
【００３０】
は零となる。すなわち、ダブルトークにおいて相関ｅjｕjは零を中心とした分布を与えることになる。ここで、
【００３１】
【数１２】
2005318571.tif 000014
【００３２】
は期待値演算を表す。反対に、エコー経路変動の場合はエコーｄjに対して消し残りが生じることから、期待値
【００３３】
【数１３】
2005318571.tif 000015
【００３４】
は零ではなくなる。したがって、例えば、擬似エコーｕjとエコーｄjが相関を全くもたない完全なエコー経路変動が発生した場合を考えると、この場合において相関ｅjｕjは擬似エコーの平均パワーの負値
【００３５】
【数１４】
2005318571.tif 000016
【００３６】
を中心とした分布を与える。すなわち、この原理を用いれば、例えば、
【００３７】
【数１５】
2005318571.tif 000017
【００３８】
を閾値として、これよりも
【００３９】
【数１６】
2005318571.tif 000018
【００４０】
が大きいときはダブルトーク、小さいときはエコー経路変動と判定することができる。
【００４１】
この擬似エコーｕjとの相関を利用する考え方は
【００４２】
【数１７】
2005318571.tif 000019
【００４３】
に対しても同様に適用することができる。すなわち、このマイクロホン出力ｙjと適応フィルタの出力ｕjの相関
【００４４】
【数１８】
2005318571.tif 000020
【００４５】
に対して、擬似エコーｕjがエコーｄjをよく模擬しているときは
【００４６】
【数１９】
2005318571.tif 000021
【００４７】
は擬似エコーの平均パワー
【００４８】
【数２０】
2005318571.tif 000022
【００４９】
を中心として分布し、エコー経路変動のときは擬似エコーｕjとエコーｄjの相関が低いことから、
【００５０】
【数２１】
2005318571.tif 000023
【００５１】
は零を中心として分布する。したがって、
【００５２】
【数２２】
2005318571.tif 000024
【００５３】
が閾値
【００５４】
【数２３】
2005318571.tif 000025
【００５５】
を超えるときはエコー経路変動、下回るときはダブルトークと判定することができる。さらに、その判定に用いるパラメータとして相関ｙjｕjやｅjｕjはｕjやｙjのパワーで正規化した値としてもよい。この識別法に関しての詳しい説明は従来の文献にもある（例えば、非特許文献３参照）。
【００５６】
この相関が識別に有効であることを示す例として図３に、上記非特許文献３で比較的高い分離性能が得られるとされた減算器出力ｅjと擬似エコーｕjの相関をマイクロホン出力ｙjのパワーで正規化する
【００５７】
【数２４】
2005318571.tif 000026
【００５８】
をエコー経路変動とダブルトークについて計算した分布を示す。ただし、この計算にあたって以下の条件を設定している。
（１）Ｍ＝１２８
（２）標本化周波数：８ｋＨｚ
（３）図４に示す音声を遠端話者音声と近端話者音声として用いる。
（４）適応フィルタの係数を推定誤差が−３０dBとなったところで固定し、ダブルトークを発生させる。
（５）未知系のインパルス応答を推定誤差が０dBとなる値に変化させてエコー経路変動とする。
（６）適応フィルタのタップ長と未知系のインパルス応答長を等しく５１２。
（７）未知系のインパルス応答には指数減衰する正規乱数で与える。
（８）遠端話者音声対周囲騒音および近端話者音声対周囲騒音の平均パワー比：３０dB
この図３に示す結果から、ダブルトークとエコー経路変動が与える分布に大きな重なりが生じていることがわかる。その重なりは識別誤りが発生することを意味する。したがって、この誤りを少なくするためには各分布の分散を小さくする必要があり、そのためには標本数（Ｍ）を大きくとる必要がある。しかし、これは識別遅延を大きし、その遅延はエコー消去量の確保を遅らせてエコーキャンセラの動作を不安定にする。
【００５９】
この減算器出力ｅjと擬似エコーｕjの相関を用いる方法におけるもう１つの問題は、エコー経路の変動が小さい場合にｙjとｕjの相関が強くなり、ダブルトークが与える分布とエコー経路変動が与える分布が接近して識別が一層難しくなることである。この小さなエコー経路変動を正確に判定するためには、さらに多くの標本数が必要である。それはエコー経路変動への対応がさらに遅れることを意味する。加えて、擬似エコーｕjと近端話者音声ｎjの相関は零と仮定した。しかし、異なる話者が発声しても音韻が一致する場合もあって実際には相関をもつ。この場合、Ｍを大きくしても分布の重なりは小さくなりにくい。
【００６０】
この減算器出力ｅjとの相関を利用するもう１つの方法として遠端話者音声ｘjとの相関を用いる方法があり（例えば、非特許文献４参照）、その有効性は白色雑音を参照信号とする場合に確認されている。しかし、先の減算器出力ｅjと擬似エコーｕjとの相関も結局は減算器出力ｅjと遠端話者音声ｘjとの相関を利用している。したがって、この手法においても、減算器出力ｅjと擬似エコーｕjの相関を用いる方法と同様の問題がある。
【００６１】
そこで次に、エコー経路変動とダブルトークを区別することなく対処できる方法が検討された（例えば、非特許文献５参照）。そこでは、適応フィルタの係数更新アルゴリズムをブロック実行型の学習同定法
【００６２】
【数２５】
2005318571.tif 000027
【００６３】
とし、遠端話者音声のパワー変動を吸収して係数更新を常時実行するとともに
【００６４】
【数２６】
2005318571.tif 000028
【００６５】
を計算してステップサイズρnを
【００６６】
【数２７】
2005318571.tif 000029
【００６７】
のようにブロック単位で可変とする方法が提案されている。ここで、ブロック実行型の適応アルゴリズムについて説明する。ブロック実行型の適応アルゴリズムとは、更新ベクトルの分子ベクトルと正規化分母とを時間ブロックで累積加算する更新アルゴリズムのことである。つまり、式(4)では、右辺第２項が更新ベクトルの部分であるが、その第２項の分子（分子ベクトル）と分母（正規化分母）とを時間ブロックで累積加算するようにしてブロック実行型に修正したのが式(14)である。ただし、上式においてＪはブロック長で、
【００６８】
【数２８】
2005318571.tif 000030
【００６９】
が予め次式を使って計算した定数
【００７０】
【数２９】
2005318571.tif 000031
【００７１】
以上となるまで延長され、適応フィルタの係数はＰn≧Ｐ0となった時点で更新される。さらに、ρ0は本制御で設定されるステップサイズの最大値、Ｃ0は確保すべきエコー消去量に対応する推定誤差、Ｑ0は定常な周囲騒音の平均パワーである。すなわち、ダブルトークが発生したときはＱnが増加し、式(１６)にしたがってステップサイズが小さくなって推定誤差は所定の大きさに維持される。
【００７２】
ここで、式(１６)は遠端話者音声を白色雑音とした場合の制御式である。自己相関の強い音声を参照信号に用いる場合は
【００７３】
【数３０】
2005318571.tif 000032
【００７４】
とし、ａ＝１０としてステップサイズを小さく与えた方が動作が安定する（例えば、非特許文献６参照）。
【００７５】
このステップサイズ制御によれば、推定誤差が−２０dB程度まで増加する小さなエコー経路変動に対してダブルトークとの識別を要しないことが確認されている（非特許文献５参照）。すなわち、この制御を採用すれば、推定誤差が−２０dBを超えて増加するエコー経路変動に対して同識別が高速化される方法を見出せばよいということになる。
【非特許文献１】来山征士，田村潤三，山本誠一，石上彦一，”共通の適応制御部をもつ多重エコーキャンセラ”，電子情報通信学会技術報告，ＣＳ７８−２３（１９７８−０５）
【非特許文献２】古屋宣二，福士雄三，伊藤栄紀，田辺淳二，萩原幸雄，”適応型エコーキャンセラにおける重畳通話検出の一方式と実験結果”，１９８４電子情報通信学会総合大会，２３４３（１９８４−０３）
【非特許文献３】藤井健作，大賀寿郎，”ダブルトークとエコー経路変動の識別”，電子情報通信学会技術報告，ＥＡ９４−１５（１９９４−０５）
【非特許文献４】藤井健作，大賀寿郎，”加算正規化ＬＭＳ法におけるブロック長制御による収束時間の短縮”，電子情報通信学会和文論文誌（Ａ），vol．Ｊ８０−Ａ，no．１，pp．２７−３５（１９９７−０１）
【非特許文献５】藤井健作，大賀寿郎，”音響エコーキャンセラのための推定誤差を所要値に保つ方法”，電子情報通信学会和文論文誌（Ａ），vol．Ｊ８３−Ａ，no．０２，pp．１４１−１５１（２０００−０２）
【非特許文献６】張若愚，藤井健作，棟安実治，”ダブルトークとエコー経路変動検出に関する一検討”，第１８回ディジタル信号処理シンポジウム，Ｂ３−６（２００３−１１）
【発明の開示】
【発明が解決しようとする課題】
【００７６】
本発明の目的は、この推定誤差が−２０dBを超えて増加するエコー経路変動とダブルトークを素早く、正確に識別して、エコー経路変動に対しては係数の収束を早め、ダブルトークに対しては安定したエコー消去量の維持を可能とする装置の実現にある。
【課題を解決するための手段】
【００７７】
上記課題を解決するために、本願発明に係るエコーキャンセラは、スピーカに供給される受信信号が該スピーカからマイクロホンへ回り込むことによって生成されるエコー信号を、該マイクロホンの出力信号から除去するエコーキャンセラであって、該受信信号に基づいて疑似エコー信号を生成する係数更新可能なＦＩＲフィルタと、該マイクロホンの出力信号から該ＦＩＲフィルタが生成した疑似エコー信号を差し引くことによって誤差信号を生成する減算器と、該受信信号と該誤差信号とに基づいて該誤差信号が最小となるように適応アルゴリズムによって該ＦＩＲフィルタの係数を更新する係数更新部とを備え、該適応アルゴリズムは、該誤差信号と、該ＦＩＲフィルタの所定の探索範囲内の各係数タップへの入力信号との積を算出し、該積に基づいて定められる第１値に基づいて、該探索範囲内の係数タップのうちから代表タップを選出し、該誤差信号と該代表タップへの入力信号との積に基づいて定められる第２値と、該誤差信号のパワー値に基づいて定められる第３値とに基づいて、ダブルトーク状態が発生しているか否かを判断する。
【００７８】
また、上記エコーキャンセラにおいて、該第１値が、該誤差信号と各係数タップへの入力信号との積であり、該第２値が、誤差信号と該代表タップへの入力信号との積であり、該第３値が、該誤差信号のパワー値であってもよい。
【００７９】
また、上記エコーキャンセラにおいて、該適応アルゴリズムが、ブロック実行型の適応アルゴリズムであり、該第１値が、該誤差信号と各係数タップへの入力信号との積の時間ブロックにおける累積和であり、該第２値が、該誤差信号と該代表タップへの入力信号との積の時間ブロックにおける累積和であり、該第３値が、該誤差信号のパワー値の時間ブロックにおける累積和であってもよい。
【００８０】
また、上記エコーキャンセラにおいて、該第２値の該第３値に対する比率の絶対値が所定閾値未満であるときに、ダブルトーク状態が発生していると判断するようにしてもよい。
【００８１】
また、上記エコーキャンセラにおいて、該第２値の該第３値に対する比率の絶対値が前記所定閾値以上であり、かつ、今回またはそれ以前に選出された代表タップについての連続した２回分の第２値の符号が異なるときに、ダブルトーク状態が発生していると判断するようにしてもよい。
【００８２】
また、上記エコーキャンセラにおいて、該第２値の該第３値に対する比率の絶対値が前記所定閾値以上であり、かつ、今回選出された代表タップへの今回の入力信号と今回の誤差信号との積に基づいて定められる第２値の符号と、今回選出された代表タップへの前回の入力信号と前回の誤差信号との積に基づいて定められる第２値の符号とが異なるときに、ダブルトーク状態が発生していると判断するようにしてもよい。
【００８３】
また、上記エコーキャンセラにおいて、該第２値の該第３値に対する比率の絶対値が前記所定閾値以上であり、かつ、前回選出された代表タップへの今回の入力信号と今回の誤差信号との積に基づいて定められる第２値の符号と、前回選出された代表タップへの前回の入力信号と前回の誤差信号との積に基づいて定められる第２値の符号とが異なるときに、ダブルトーク状態が発生していると判断するようにしてもよい。
【００８４】
また、上記エコーキャンセラにおいて、該第３値が所定値以下であるとき、前記所定閾値がより大きな値に修正されるようにしてもよい。
【００８５】
また、上記課題を解決するために、本願発明に係るもう一つのエコーキャンセラは、スピーカに供給される受信信号が該スピーカからマイクロホンへ回り込むことによって生成されるエコー信号を、該マイクロホンの出力信号から除去するエコーキャンセラであって、該受信信号に基づいて疑似エコー信号を生成する係数更新可能なＦＩＲフィルタと、該マイクロホンの出力信号から該ＦＩＲフィルタが生成した疑似エコー信号を差し引くことによって誤差信号を生成する減算器と、該受信信号と該誤差信号とに基づいて該誤差信号が最小となるように適応アルゴリズムによって該ＦＩＲフィルタの係数を更新する係数更新部とを備え、該適応アルゴリズムは、該誤差信号と、該ＦＩＲフィルタの所定の探索範囲内の各係数タップへの入力信号との積を算出し、該積に基づいて定められる第１値に基づいて、該探索範囲内の係数タップのうちから代表タップを選出し、今回またはそれ以前に選出された代表タップについての連続した２回分の第２値の符号が異なるときに、ダブルトーク状態が発生していると判断し、該第２値が、該誤差信号と該代表タップへの入力信号との積に基づいて定められる値であってもよい。
【００８６】
また、上記エコーキャンセラにおいて、今回選出された代表タップへの今回の入力信号と今回の誤差信号との積に基づいて定められる第２値の符号と、今回選出された代表タップへの前回の入力信号と前回の誤差信号との積に基づいて定められる第２値の符号とが異なるときに、ダブルトーク状態が発生していると判断するようにしてもよい。
【００８７】
また、上記エコーキャンセラにおいて、前回選出された代表タップへの今回の入力信号と今回の誤差信号との積に基づいて定められる第２値の符号と、前回選出された代表タップへの前回の入力信号と前回の誤差信号との積に基づいて定められる第２値の符号とが異なるときに、ダブルトーク状態が発生していると判断するようにしてもよい。
【００８８】
また、上記エコーキャンセラにおいて、該第１値が、該誤差信号と各係数タップへの入力信号との積であり、該第２値が、誤差信号と該代表タップへの入力信号との積であってもよい。
【００８９】
また、上記エコーキャンセラにおいて、該適応アルゴリズムが、ブロック実行型の適応アルゴリズムであり、該第１値が、該誤差信号と各係数タップへの入力信号との積の時間ブロックにおける累積和であり、該第２値が、該誤差信号と該代表タップへの入力信号との積の時間ブロックにおける累積和であってもよい。
【００９０】
また、上記エコーキャンセラにおいて、該探索範囲内の係数タップのうちで、該第１値の絶対値が最も大きい係数タップを、代表タップとして選出するようにしてもよい。
【００９１】
また、上記エコーキャンセラにおいて、該探索範囲が、該ＦＩＲフィルタの全係数タップであってもよい。
【００９２】
また、上記エコーキャンセラにおいて、該探索範囲が、該ＦＩＲフィルタの一部の係数タップであってもよい。
【００９３】
また、上記エコーキャンセラにおいて、該探索範囲が、該ＦＩＲフィルタの初段から中間段までの連続した係数タップであってもよい。
【００９４】
また、上記エコーキャンセラにおいて、該適応アルゴリズムは、ダブルトーク状態が発生していると判断したときに、該ＦＩＲフィルタの係数の更新量を少なく、又は、該係数の更新を停止するようにしてもよい。
【００９５】
また、上記エコーキャンセラにおいて、該適応アルゴリズムは、所定回数連続して、ダブルトーク状態が発生しているとの判断がされなかったとき、エコー経路変動状態が発生していると判断するようにしてもよい。
【００９６】
また、上記エコーキャンセラにおいて、該適応アルゴリズムは、エコー経路変動状態が発生していると判断したときに、該ＦＩＲフィルタの係数の更新量を多くするようにしてもよい。
【発明の効果】
【００９７】
本願のエコーキャンセラによれば、ダブルトークとエコー経路変動が少ない遅延で識別され、安定した動作がシステムに保証される。
【発明を実施するための最良の形態】
【００９８】
以下、本発明の一実施形態を図面を参照しつつ説明する。
【００９９】
図１Ａは、通話装置に適用された、この実施形態に係る本発明（エコーキャンセラ）の概略構成を示す図であり、図１Ｂは、この実施形態に係る本発明（エコーキャンセラ）の各機能を示すブロック図である。
【０１００】
図１Ａを参照すると、通話装置はマイクロホン200とスピーカ201とを有している。エコーキャンセラは、主に、係数更新可能なＦＩＲフィルタ212aと、係数更新部212bと、減算器211とによって構成される。なお、ＦＩＲフィルタ212aと係数更新部212bとによって、適応フィルタ212が構成される。
【０１０１】
通話装置が受信した信号ｘj(受信信号)は、スピーカ201に供給される。スピーカ201から放射された音は、マイクロホン200へ回り込む。マイクロホン200の出力信号ｙjは、この回り込みによって生成されるエコー信号を含んでいる。
【０１０２】
信号ｘjは、ＦＩＲフィルタ212aにも入力される。ＦＩＲフィルタ212aは、Ｉ個の係数タップを備えており、各係数タップには係数として、Ｈ(１)，Ｈ(２)，Ｈ(３)，・・・，Ｈ(Ｉ)が設定されている。ＦＩＲフィルタ212aからは、出力信号として信号ｕjが出力される。
【０１０３】
減算器211には、信号ｙjと信号ｕjとが入力される。減算器211は、信号ｙjから信号ｕjを差し引く。減算結果としての信号ｅjは送信信号として通信装置から送出される。
【０１０４】
係数更新部212bには、信号ｅjが誤差信号として入力される。係数更新部212bには、信号ｘjも入力される。係数更新部212bにおいて、適応アルゴリズム（係数更新アルゴリズム）が作動している。係数更新部212bの適応アルゴリズム（係数更新アルゴリズム）は、信号ｘjと信号ｅjとに基づいて、信号ｅjが最小となるようにＦＩＲフィルタの係数タップの係数Ｈ(１)，Ｈ(２)，Ｈ(３)，・・・，Ｈ(Ｉ)を更新する。
【０１０５】
ここでの実施形態においても係数更新アルゴリズムとしてブロック実行型の学習同定法を用い、推定誤差の増加が−２０dB以下となるエコー経路変動には上記ステップサイズ制御を適用して対応する。本実施形態では、推定誤差の増加が−２０dBを越えるエコー経路変動に対してダブルトークの発生との識別を行い、ステップサイズを大きく与えてエコー消去量の迅速な確保を実現する。
【０１０６】
その説明を簡単にするため、式(１４)を適応フィルタの係数Ｈnのｍ＝１,・・・,Ｉの各要素について計算する式
【０１０７】
【数３１】
2005318571.tif 000033
【０１０８】
に改める。上の式(20)の右辺の第２項の分子は、誤差信号ｅjと、ＦＩＲフィルタ212aのｍ段目の係数タップへの入力信号ｘj(ｍ)との積の時間ブロックにおける累積和である。本実施形態では、この第２項の分子
【０１０９】
【数３２】
2005318571.tif 000034
【０１１０】
に着目する。そして、第ｎブロックにおける推定誤差を
【０１１１】
【数３３】
2005318571.tif 000035
【０１１２】
とおいて、式(２１)に与えるＡn(ｍ)の最大値がｍ＝ｋにおいて得られたとすると、ｋ段目の係数タップを代表タップとして選出する。その最大値Ａn(ｋ)は
【０１１３】
【数３４】
2005318571.tif 000036
【０１１４】
と表すことができ、エコー経路変動のときは
【０１１５】
【数３５】
2005318571.tif 000037
【０１１６】
を平均とする分布が得られる。さらに、ダブルトークのときは
【０１１７】
【数３６】
2005318571.tif 000038
【０１１８】
と近似できることから、この場合、Ａn(ｋ)は零を中心とする分布を与える。したがって、このＡn(ｋ)をパラメータとすれば、Δn(ｋ)Ｊσx2／２を閾値としてダブルトークとエコー経路変動を識別することができると期待される。ただし、後で述べる理由からＡn(ｋ)の探索範囲をｋ＝１〜Ｉ／１６とする。この探索範囲は、ＦＩＲフィルタのＩ個の係数タップの全部であってもよいし、その一部であってもよいが、ここでは一部を検索範囲としている。ここでは、ＦＩＲフィルタの初段（１段）から中間段（（Ｉ／16）段）までの連続した係数タップを検索範囲としている。
【０１１９】
図５は、そのＡn(ｋ)が遠端話者音声のパワーの関数となることから、
【０１２０】
【数３７】
2005318571.tif 000039
【０１２１】
で除した
【０１２２】
【数３８】
2005318571.tif 000040
【０１２３】
の分布として表した結果である（ただし、図に示すｍａｘＡnは本文のＡn(ｋ)である。明らかに、ａn(ｋ)の分布はエコー経路変動のときにΔn(ｋ)を平均値、ダブルトークのときは零を平均とする分布を与えている。しかし、この図５の分布も図３と同様、分布に重なりが生じている。このことから、このａn(ｋ)によっても単純な分布の２分による識別は難しいとわかる。ここで、図５に示す分布は、ブロック長制御を適用し、
【０１２４】
【数３９】
2005318571.tif 000041
【０１２５】
となるまでブロック長Ｊを延長してａn(ｋ)を計算した結果である。さらに、この図５のシミュレーションでは図３の条件に加えて
（１１）定常周囲騒音の平均パワー：Ｑ0＝０.００１
（１２）最小ブロック長：Ｊ0＝１２８
（１３）目標推定誤差：−３０dB，すなわち、Ｃ0＝０.００１
（１４）ａ＝１０.０
（１５）ρ0＝１２.８
（１６）Ｐ0＝６４Ｉ
を設定している。
【０１２６】
このａn(ｋ)を識別パラメータとする方法に対して、その分散を小さくする最も単純な方法はブロック長Ｊを長くすることである。しかし、その場合、識別遅延が増加するという問題が生じる。また、その延長は参照信号を自己相関の強い音声とするブロック実行型学習同定法において収束を遅らせる原因ともなる。すなわち、このＡn(ｋ)を用いる方法でも、ブロック長Ｊを長くすることなく、重なりを少なくする対策が求められる。
【０１２７】
そこで、ダブルトークにおいてａn(ｋ)が大きくなってエコー経路変動の分布と重なるのは、Ａn(ｋ)の分散が大きくなるときであること、さらに、その分散が大きくなるのは近端話者音声のパワーが大きくなるときであることに注目する。この場合、式(１５)から
【０１２８】
【数４０】
2005318571.tif 000042
【０１２９】
となることからわかるように、Ｑnも同時に大きくなる。一方、エコー経路変動でＱnが大きくなるのは大きなエコー経路変動が起こったときで、そのときはＡn(ｋ)も同時に大きくなる。すなわち、ダブルトークのときの分布の分散が大きくなって図５の分布が右方向に広がるときはＱnが大きくなるときで、そのときはエコー経路変動の分布の平均値も大きくなって、その分布は右方向に移動する。したがって、このＱnに合わせてエコー経路変動の分布を右方向に移動させれば、大きなダブルトークが発生して分布が広がったときの重なりが小さくなると期待できる。これは、Ｑnをパラメータに加えてＡn(ｋ)の分布を２次元の分布として表現することに等しい。
【０１３０】
図６は、横軸をＪＱn、縦軸をＡn(ｋ)として表現した、エコー経路変動のときに得られる分布である。ただし、ここでエコー経路変動は推定誤差が０dBとなる変動として与えている。この場合、横軸となるＪＱnの期待値は式(１５)から
【０１３１】
【数４１】
2005318571.tif 000043
【０１３２】
となる。このことから、ＪＱnは推定誤差の２乗平均σd2と遠端話者音声の平均パワーσx2の積、近端話者音声の平均パワーσn2との和に比例する大きさとわかる。したがって、これを横軸とした場合、ｅjの増加がエコー経路変動だけで起こっているときは、
【０１３３】
【数４２】
2005318571.tif 000044
【０１３４】
と近似できるから、
【０１３５】
【数４３】
2005318571.tif 000045
【０１３６】
は
【０１３７】
【数４４】
2005318571.tif 000046
【０１３８】
を傾きとする直線を平均として分布することになる。このことは図６に示す分布からも確認できる。ただし、この図６ではＡn(ｋ)の正負に意味がないのでＡn(ｋ)は絶対値で表示している。また、この分布を計算した条件は図５と同じで、表示方法に違いがあるだけである。
【０１３９】
上の式(29)の右辺の分子は、誤差信号ｅjと代表タップへの入力信号ｘjとの積の時間ブロックにおける累積和に相当する。また、式(29)の右辺の分母は、誤差信号ｅjの二乗値、すなわち、誤差信号ｅjのパワー値の時間ブロックにおける累積和に相当する（式(15)参照）。
【０１４０】
ここで、ＪＱnが図６の分布に与える影響を詳しくみておく。まず、参照信号のパワーが最大となるときにブロック長が最短のＪ0となり、所定の推定誤差が確保されるようにＰ0と最大ステップサイズρ0を設定すると、ＰnがＰ0を超えることはなくなり、毎回、Ｐn＝Ｐ0で係数が更新される。すなわち、推定誤差が０dBとなるエコー経路変動の場合にはσd2＝１となる（本シミュレーションでは未知系のパワー利得を１としている）ことから、ＪＱnは
【０１４１】
【数４５】
2005318571.tif 000047
【０１４２】
付近に集中して分布することになる。しかし、このように最短ブロック長を選んだ場合、ブロック長がＪ0以上となる頻度が上がり、自己相関の強い音声を参照信号とした場合において係数の収束が遅れることになる。参照信号に強い自己相関がある場合には、ステップサイズの最大値ρ0を小さく設定して小さなＰ0でも、すなわち、短いブロックでも所定の推定誤差が確保されるようにして、更新頻度を高くした方がよい。図６のシミュレーションでは、この点を考慮して係数更新頻度が高くなるようにステップサイズの最大値ρ0を小さく選んで、先にシミュレーション条件（１６）として示したようにＰ0＝６４Ｉとしている。この場合、参照信号のパワーが最小のときに
【０１４３】
【数４６】
2005318571.tif 000048
【０１４４】
は最小の６４となり、これよりも参照信号のパワーが大きくなるときはＪＱn＞６４となる。図７は図６の分布の計算に生じたＰnの変化である。明らかに、図７に示すＰnの最小値はＰ0であり、そのＰ0となる頻度は低い。図６の分布は、この図７の結果を反映した分布となっている。
【０１４５】
一方、ダブルトークが単独で起こった場合、式(２１)において
【０１４６】
【数４７】
2005318571.tif 000049
【０１４７】
となるので、Ａn(ｋ)は零を中心とした分布となる。また、その分散は近端話者音声のパワーに比例するので、ＪＱnの増加とともに広がる図８のような分布となる。この図８と図６に与える分布から、近端話者音声のパワーが大きくなる強いダブルトークの発生においてよく分離できていることがわかる。さらに、図５の分布と比較して、図５では強いダブルトークにおいて分布が大きく重なるという欠点が２次元の分布とすることで逆に分離され、解決されていることがわかる。また、図９は、この図８と図６を一緒にして表した分布である。
【０１４８】
図６から、エコー経路変動ではｒn＜０.６となる事象が発生していないこと、したがって、ｒn＜０.６となる場合はダブルトークと判定できるとわかる。もちろん、ｒn＜０.６となるエコー経路変動が発生する可能性が皆無とは言えない。しかし、そこでダブルトークと判定されても次のブロックでエコー経路変動と判定される確率が高いので問題はない。問題は、図８からわかるようにダブルトークでもｒn≧０.６となる場合があり、ｒn＝０.６を閾値として判定したときに、ダブルトークをエコー経路変動と誤る場合があることである。この誤りが発生したとき、ステップサイズが大きく設定され、それによって推定誤差が急増することになる。
【０１４９】
図１０は、図９の分布においてダブルトークがｒn≧０.６となってエコー経路変動と判定される確率とＪＱnとの関係を計算した結果である。明らかに、その判定誤りが発生する確率はＪＱnが小さいほど高く、ＪＱnが大きくなるほど低い。このことは図８の分布からも予想できる。ただし、エコー経路変動をダブルトークとする判定誤りは生じない。すなわち、本識別法によれば図５の１次元の分布ではエコー経路変動との分離が難しい大きなダブルトークで識別誤りが減少するのである。
【０１５０】
さらに、この結果においてＪＱn＝０〜５０では８０％以上のダブルトークがエコー経路変動と判定される。このように判定誤りが発生する率が高くなる理由は、本シミュレーション条件である推定誤差が０dBとなるエコー経路変動においてＪＱnの最小値の平均が６４となることにある。この場合、エコー経路変動においてＪＱn＜５０となる可能性が非常に低い。このことは図６からもわかる。すなわち、ＪＱn＜５０ではほとんどがダブルトークであるからである。いずれにしても、このｒn＝０.６を判定閾値とする単純な方法ではダブルトークをエコー経路変動と誤る可能性が高い。
【０１５１】
この誤りを減少させる対策として本実施形態では、まず、部屋の残響が初期に集中していること（牧野昭二，小泉宣夫，”エコーキャンセラの室内音場における適応特性の改善について”，電子情報通信学会和文論文誌（Ａ），vol．Ｊ７１−Ａ，no．１２，pp．２２１２−２２１４（１９８８−０１２））を考慮して、Ａn(ｋ)の探索範囲をｋ＝１〜Ｉ／１６とする。これによって、探索処理量の削減も同時に得られる。すなわち、エコー経路変動においては、この範囲内に最大となる確率が高く、ダブルトークにおいては全範囲に等しく出現する。したがって、この範囲に限定して探索すればダブルトークにおいてＡn(ｋ)が小さくなる可能性が高まり、ｒn＞０.６となる確率が減少する。図１１は、このように探索範囲を狭めたときにダブルトークをエコー経路変動と判定される確率とＪＱnの関係である。図１０と比較して減少していることが分かる。
【０１５２】
次に、Ａn(ｋ)の符号変化に着目する。すなわち、Ａn(ｋ)はエコー経路変動の場合に
【０１５３】
【数４８】
2005318571.tif 000050
【０１５４】
を平均として分布することからわかるように、エコー経路変動では隣接ブロックでＡn(ｋ)は同符号となる可能性が高い。逆に、ダブルトークではＡn(ｋ)は式(２３)に
【０１５５】
【数４９】
2005318571.tif 000051
【０１５６】
を適用した結果から分かるように、隣接ブロック間で相関は低く、連続するブロックで符号は異なる可能性が高い。従って、異符号ならばダブルトークと判断することができる。
【０１５７】
以上では、今回分の時間ブロックにおいて選出された代表タップのＡn(ｋ)の符号が今回分と前回分とで異なるか否かにより、ダブルトークを判断する例を示した。しかし、前回分の時間ブロックにおいて選出された代表タップのＡn(ｋ)の符号が今回分と前回分とで異なるか否かによって判断してもよい。また、それ以前に選出された代表タップのＡn(ｋ)の符号が今回分と前回分とで異なるか否かにより判断してもよい。さらに、今回またはそれ以前に選出された代表タップについての、過去の連続した２回分のＡn(ｋ)の符号が異なるか否かにより、ダブルトークを判断してもよい。
【０１５８】
また以上では、ｒnが0.6以上であるときに、連続した２回分のＡn(ｋ)の符号が異なるか否かによりダブルトークを判断する例を示した。しかし、ｒnがいかなる値をとるかにかかわらず、連続した２回分のＡn(ｋ)の符号が異なるか否かのみによりダブルトークを判断してもよい。
【０１５９】
上記において、Ａn(ｋ)の符号が連続するブロックで異符号ならば、ダブルトークと判断することができることを説明した。ただし、エコー経路変動であっても式(２３)第２項の影響から異符号となる可能性は否定できない。しかし、その判定によってエコー経路変動をダブルトークと誤っても次のブロックでエコー経路変動と判定される可能性が高い。実際、図１２は１つ前のブロックで観測した最大値Ａn-1(ｋn-1)を与えたタップｋn-1が現ブロックにおいてもＡn(ｋn-1)に対して同じ符号を与えるか、異なる符号を与えるか、をエコー経路変動とダブルトークの場合について調べた結果である。この図１２の上段は推定誤差が０dBとなるエコー経路変動、中段が同−１０dBとなるエコー経路変動、下段がダブルトークの場合で、１が符号の一致を、−１が符号の不一致を表している。この図１２において推定誤差が０dBとなるエコー経路変動で符号が一致しない確率は１.５％、推定誤差が−１０dBとなるエコー経路変動で５％の確率である。さらに、この結果から分かるように、エコー経路変動時に２ブロック続けて異符号となる可能性は低く、多くの場合において次のブロックで同符号となり、エコー経路変動と判定される。また、このようにエコー経路変動をダブルトークと誤ってもダブルトークとしての係数更新が実行され、次のブロックおいて正しくエコー経路変動と判定されるならば、エコー経路変動としての処理が１ブロック分遅れるだけで、とくに大きな問題は生じない。
【０１６０】
一方、この図１２は推定誤差の増加が少なくなるほど異符号となる確率が高くなることも示している。そのため、推定誤差の増加が−１０dBより少ないエコー経路変動については符号変化を利用しないことも１つの選択である。その推定誤差の増加が−１０dBより少ないかどうかの判定はステップサイズの大きさから知ることができる。すなわち、式(１９)に
【０１６１】
【数５０】
2005318571.tif 000052
【０１６２】
【数５１】
2005318571.tif 000053
【０１６３】
を適用し、Ｃ0＝０.００１，ａ＝１０.０を代入すると
【０１６４】
【数５２】
2005318571.tif 000054
【０１６５】
が得られる。ただし、推定誤差が−１０dBとなるエコー経路変動の場合を考えているので、σd2＝０.１で、かつ、Ｑnは残留エコーが支配的となってσn2≪σx2σd2、また、遠端話者音声のパワーσx2はブロック長を最短のＪ0＝１２８に換算して与えるものとしている。この式(３２)から推定誤差が−１０dB未満となる場合はステップサイズρは０.２５６よりも大きくなることが分かる。ここで、推定誤差が−１０dB以上となるエコー経路変動について符号の変化を判定に使うとすれば、ρ≦０.２５６のときに符号判定を行うことになる。すなわち、
（１）Ａn(ｋ)の探索をｋ＝１〜Ｉ／１６に限定して行い、ｒn＜０.６ならばダブルトークと判定する。
（２）ρ≦０.２５６ならば符号判定を行い、前ブロックにおいて最大となったタップｋn-1に対して現ブロックのＡn(ｋn-1)が異符号となったときはダブルトークと判定する。
（３）ρ＞０.２５６ならば符号判定を行わない。
【０１６６】
この上記２つの方法を併用したときに誤り（ダブルトークをエコー経路変動と判定する誤り）が発生する確率を図１３に示す。その確率はさらに減少していることが分かる。
【０１６７】
次に、このｒnを連続Ｋ個のブロックについて観測することを考える。すなわち、
（４）上記手順をＫ回繰り返し、全てダブルトークと判定されないときはエコー経路変動と判定する。
【０１６８】
このブロック単独で判定したときにダブルトークをエコー経路変動と判定する誤りが発生する確率は図１３に示されている通りである。いま、その発生確率をｐとすると、その誤りがＫ回連続して発生する確率はｐkとなる。従って、その発生確率をｐ0としたい場合、連続して観測すべきブロック数Ｋは
【０１６９】
【数５３】
2005318571.tif 000055
【０１７０】
より
【０１７１】
【数５４】
2005318571.tif 000056
【０１７２】
と計算される。
【０１７３】
この関係を用いて計算した、誤り発生確率をｐ0＝１０-4とするときに必要となるブロック数Ｋを図１４に示す。この結果から、ＪＱn≧５０については連続５回までにエコー経路変動が誤り率１０-4で検出されることが分かる。その検出遅れは、時間にして１２８×５／８＝８０ｍｓである。一方、この図１４はＪＱn＜５０については倍の連続１０回の観測が必要であることを示している。しかし、このＪＱn＜５０は、既に説明したように参照信号のパワーが最小のときに生じ、その最小のパワーが発生する頻度は図７からわかるように非常に低い、従って、ＪＱn＜５０が多数回連続して発生することは少なく、実際には続いてＪＱn＞５０となって少ない連続回数で検出される可能性が高い。また、参照信号のパワーが最小のときにエコー経路変動であることを検出できたとしても推定誤差の減少は少なく、また、遠端側に伝送されるエコーもパワーも小さいものとなることから、素早く検出する必要性も薄い。この場合は判定遅延が大きく、ダブルトークとして処理されても問題は少ない。
【０１７４】
つぎに、推定誤差が−１０dBと−２０dBとなるエコー経路変動のときのＡn(ｋ)の分布を図１５と図１６に示す。この大きさのエコー経路変動では、式(２４)と式(２９)から分かるように、傾きｒnの分子は推定誤差の１乗、分母は２乗で与えられることから、推定誤差の小さいエコー経路変動ほどｒnの傾きは大きくなる。例えば、図１５の推定誤差が−１０dBの増加となるエコー経路変動はｒn＞１.８にあり、図１６の−２０dBではｒn＞５.３３にある。すなわち、全ての場合においてエコー経路変動はｒn＜０.６とならない。したがって、ｒn＜０.６ならばエコー経路変動の大小に関係なくダブルトークと判定することができる。
【０１７５】
問題はダブルトークの場合の分布がエコー経路変動の大きさに関係がないことである。さらに、推定誤差が−１０dBと−２０dBとなるエコー経路変動のときのＪＱnは５０以下に集中しており、従って、その判定閾値は０.６とすれば判定に必要なブロック数は１０となる。実システムでは、このように推定誤差が−１０dBと−２０dBとなるエコー経路変動の発生頻度は高いと予想されることから、この場合における判定遅延を少なくする工夫が必要である。
【０１７６】
そこで、推定誤差が−１０dBのエコー経路変動ではσd2が１／１０になることから、ＪＱn＜２００以下がほとんどであるに着目する。それは図１５からも確認される。さらに、ＪＱn≧２００以上では閾値を０.６としても必要連続ブロック数は３で済む。従って、ここでは推定誤差が−１０dB以下となるエコー経路変動が発生したときに必要となるブロック数を減らす対策については、ＪＱn＜２００以下について考えればよい。もちろん、この場合も推定誤差が０dBのエコー経路変動が発生している可能性がある。しかし、その場合は上記の対策で十分であり、別段の対策は不要である。
【０１７７】
そこで、その対策を見出すために、推定誤差が−１０dBのエコー経路変動に対して閾値をｒn＝１.８とした場合に必要となる連続ブロック数を計算する。その結果を図１７に示す。この結果から、１００≦ＪＱnで必要となる連続ブロック数は０である。これは１００≦ＪＱn＜２００でｒn＞１.８となるダブルトークの発生確率は１０-4以下であることを表している（ダブルトークはエコー経路変動の大小に関係がないことに注意）。これは図８からも確認できる。すなわち、
（５）ｒn＞１.８と計算されたときにＪＱn≧１００ならば、直ちにダブルトークと判定することができる。
【０１７８】
同様に、図１７から
（６）ｒn＞１.８で５０≦ＪＱn＜１００のときに必要となる連続ブロック数は３。
（７）ｒn＞１.８で１０≦ＪＱn＜５０のときに必要となる連続ブロック数は５。
（８）ｒn＞１.８でＪＱn＜１０のときに必要となる連続ブロック数は８。
をもって識別が可能となる。すなわち、ＪＱn＜２００で現ブロックにおいてｒnが１.８を越えるときは閾値を１.８に引き上げることで判定に必要な連続ブロック数を減らすことができる。
【０１７９】
同様に、ＪＱn＜２０の場合は図１６から閾値を５.３３に引き上げることが可能である。しかし、その推定誤差が−２０dBとなるエコー経路変動においてはダブルトークとエコー経路変動の識別はステップサイズ制御によって不要であり、実質的に閾値の変更は不要である。
【０１８０】
図２２Ａ，図２２Ｂは、本発明を実用装置に適用する場合の制御フローである。ここで、ｋ1からｋ6は連続ブロック数を計数するパラメータでｒn＜０.６のときと、制御初期において０に設定される。また、Ａn(ｍ)は本文中のＡkと同じであり、この制御フローにおけるｍは本文中のｋと同じである。この制御フローで注意すべきことは、連続ブロック数の計数に際して、例えば、ｒn≦１.８で２００≦ＪＱn＜７００はｒn≦１.８でＪＱn＜２００の場合を含んでいる点である。したがって、最初、ｒn≦１.８で２００≦ＪＱn＜７００となって、次にｒn≦１.８でＪＱn＜２００となった場合は、この場合の連続ブロック数ｋ2は２と数えられる。また、ＪＱn＜１０でｒn＞５.３３となったときは、推定誤差が−２０dB以下となったことを表し、以後はエコー経路変動とダブルトークを区別して制御する必要が無くなったことを表している。そこで、このフローでは計数パラメータを０とする制御が組み入れられている。
【０１８１】
図１８は、推定誤差が０dBとなるエコー経路変動の発生を本発明によって検出して得られたＥＲＬＥの減少特性である。この結果から本発明によってエコー経路変動の発生後、エコーは急速に減少していることが分かる。また、図１９は、エコー経路変動が遅延０で検出される理想状態の結果である。この比較から本発明の有効性が確認できる。さらに、図２０は推定誤差の減少特性である。ここで、破線は検出遅延が零の理想的な検出が行われた場合の結果で、本発明による検出遅延７５ｍｓの影響が残るものの、理想的な場合と同様の速度で推定誤差が減少していることが確認される。一方、図２１はダブルトークの場合に本発明が与えるＥＲＬＥである。このようにダブルトークにおいてはＥＲＬＥが安定して維持されていることが分かる。
【０１８２】
以上、本発明によればダブルトークとエコー経路変動が少ない遅延で識別され、安定した動作がシステムに保証される。ここで、本発明の説明を適応アルゴリズムをブロック実行型の学習同定法として行った。しかし、本発明はブロック実行型の学習同定法以外の適応アルゴリズムにも適用可能であることに注意が必要である。
【０１８３】
例えば、ブロック実行型ではない学習同定法を用いることもできるし、学習同定法以外の適応アルゴリズムを用いることもできる。さらに、ブロック実行型である、学習同定法以外の適応アルゴリズムを用いることもできる。ブロック実行型の適応アルゴリズムの時間ブロックを短縮してゆくと、最終的には、ブロック実行型ではない適応アルゴリズムと同一となる。よって、上記した本発明の効果と同様の効果が、ブロック実行型ではない適応アルゴリズムにおいても生ずるであろうことが期待できる。
【産業上の利用可能性】
【０１８４】
本願のエコーキャンセラによれば、ダブルトークとエコー経路変動を少ない遅延で識別することができるので、例えば、ハンズフリー通話装置のような電気音響の分野においても利用できる。
【図面の簡単な説明】
【０１８５】
【図１Ａ】通話装置に適用された、本発明（エコーキャンセラ）の概略構成を示す図である。
【図１Ｂ】本発明（エコーキャンセラ）の各機能を示すブロック図である。
【図２】音響エコーキャンセラによるハンズフリー通話装置のブロック図である。
【図３】識別パラメータＲEy(ｎ)の度数分布図である。
【図４】シミュレーションに用いた音声を示す図である。
【図５】ａn(ｋ)の度数分布図である。
【図６】推定誤差が０dBまで増加するエコー経路変動で得られるＡkの分布図である。
【図７】Ｐnの変化を示す図である。
【図８】ダブルトークのときのＡkの分布図である。
【図９】推定誤差が０dBまで増加するエコー経路変動とダブルトークのときのＡkの分布図である。
【図１０】ｒn＝０.６を識別閾値としたときにダブルトークをエコー経路変動と誤る確率を示す図である。
【図１１】探索範囲を１〜Ｉ／１６としたときの誤り発生確率を示す図である。
【図１２】隣接するブロックのＡn(ｋ)の符号が一致あるいは不一致となる頻度を示す図である。
【図１３】符号判定の併用法においてダブルトークをエコー経路変動と誤る確率を示す図である。
【図１４】ダブルトークをエコー経路変動と誤る確率が１０-4以下となるために必要な連続ブロック数を示す図である。
【図１５】推定誤差が−１０dBとなるエコー経路変動とダブルトークのときのＡn(ｋ)の分布図である。
【図１６】推定誤差が−２０dBとなるエコー経路変動とダブルトークのときのＡn(ｋ)の分布図である。
【図１７】推定誤差が−１０dBとなるエコー経路変動を検出するのに必要なブロック数を示す図である。
【図１８】本発明によってエコー経路変動を検出して得られたＥＲＬＥ特性図である。
【図１９】エコー経路変動を遅延０で検出できた場合のＥＲＬＥ特性図である。
【図２０】推定誤差の減少特性の比較図である。
【図２１】ダブルトークのときに本発明が与えるＥＲＬＥ特性図である。
【図２２Ａ】本願発明を実用装置に適用する場合の制御フローチャートである。
【図２２Ｂ】本願発明を実用装置に適用する場合の制御フローチャートである。
【符号の説明】
【０１８６】
200  マイクロホン
201  スピーカ
212  適応フィルタ
【図１Ａ】
2005318571.tif 000057
【図１Ｂ】
2005318571.tif 000058
【図２】
2005318571.tif 000059
【図３】
2005318571.tif 000060
【図４】
2005318571.tif 000061
【図５】
2005318571.tif 000062
【図６】
2005318571.tif 000063
【図７】
2005318571.tif 000064
【図８】
2005318571.tif 000065
【図９】
2005318571.tif 000066
【図１０】
2005318571.tif 000067
【図１１】
2005318571.tif 000068
【図１２】
2005318571.tif 000069
【図１３】
2005318571.tif 000070
【図１４】
2005318571.tif 000071
【図１５】
2005318571.tif 000072
【図１６】
2005318571.tif 000073
【図１７】
2005318571.tif 000074
【図１８】
2005318571.tif 000075
【図１９】
2005318571.tif 000076
【図２０】
2005318571.tif 000077
【図２１】
2005318571.tif 000078
【図２２Ａ】
2005318571.tif 000079
【図２２Ｂ】
2005318571.tif 000080