(57)【要約】【課題】疑似エコー経路のフィルタ収束速度を向上させる。【解決手段】受話信号ｘ（ｋ）を、反響路のインパルス応答時間をＭ分割した短時間ごとに分割し、その各ブロック信号をＦＦＴ変換してＸ１（ｋ）とし、このＸ１（ｋ）を前記短時間ずつ長く遅延した信号Ｘ２（ｋ）…ＸＭ（ｋ）を求め、これらＸｍ（ｍ＝１，…，Ｍ）と、前記インパルス応答のＭ分割の各対応する周波数領域の部分予測インパルス応答Ｗｍ（ｋ）とを対応成分ごとに乗算し、これらＭ個のＷｍ（ｋ）Ｘｍ（ｋ）を加算して逆ＦＦＴして時間領域の予測反響ｙ＾（ｋ）を得、ｙ＾（ｋ）と反響路の収音信号ｙ（ｋ）の誤差信号を短時間ごとに周波数領域の信号Ｅ（ｋ）に変換し、修正ベクトルｄＷｍ（ｋ）＝Ｘｍ＊（ｋ）Ｅ（ｋ）を生成し、前記インパルス応答の包絡に応じて一定比率で減衰するステップサイズμｍでｄＷｍ（ｋ）に重みを付け、これをＷｍ（ｋ）に加算してこれを更新する。【選択図】      図１
2004349796.tif 000002
【特許請求の範囲】
【請求項１】
Ｐ（Ｐは１以上の整数）のチャネルの受話信号を所定の時間ごとに分割してそれぞれ周波数領域に変換し、
所定時間ごとに上記周波数領域の受話信号を周波数領域で部分予測エコー経路部でフィルタ処理を行って部分予測エコーを生成し、複数の所定時間に生成された部分予測エコーの総和を上記所定時間ごとにとって時間領域に再変換して予測エコーを生成し、
収音信号から上記予測エコーを差し引いて音響エコーの消去を行ない、
上記所定時間ごとの収音信号と上記予測エコーとの誤差信号を周波数領域に変換し、
上記複数の所定時間の各受話信号と上記誤差信号とを周波数領域で成分ごとにそれぞれ乗算して修正ベクトルを生成し、
上記所定時間ごとに、異なるステップサイズと対応修正ベクトルをもちいて、周波数領域で上記各部分予測エコー経路部を更新することを特徴とする音響エコー消去方法。
【請求項２】
受話端子からの受話信号を所定時間ごとにブロックに分割し、
その分割された各ブロック信号を周波数領域に変換し、
上記周波数領域ブロック信号を遅延し、遅延量が上記一定時間ずつ順次大であるＭ−１個（Ｍは２以上の整数）の遅延ブロック信号を生成し、
上記遅延されない周波数領域ブロック信号、上記Ｍ−１個の遅延ブロック信号をそれぞれ周波数領域の第１〜第Ｍ部分予測エコー経路インパルス応答によりフィルタ処理を行って、Ｍ個の部分予測エコーを生成し、
これらＭ個の部分予測エコーを加算して周波数領域の予測エコーを生成し、
上記周波数領域の予測エコーを時間領域に変換して予測エコーを生成し、
１つの収音信号から上記予測エコーを差し引いて誤差信号を生成し、
その誤差信号を上記所定時間ごとにブロックに分割し、その分割された各ブロック誤差信号を周波数領域に変換し、
上記遅延されない周波数領域ブロック信号、上記Ｍ−１個の遅延ブロック信号と上記周波数領域誤差信号とを各対応周波数成分ごとに乗算して第１〜第Ｍ修正ベクトルを生成し、
これら第１〜第Ｍ修正ベクトルに、それぞれ第１〜第Ｍステップサイズを乗算し、その乗算した修正ベクトルで上記第１〜第Ｍ部分予測エコー経路インパルス応答をそれぞれ更新し、
上記第１〜第Ｍステップサイズはその第Ａ（Ａ＝１，…，Ｍ）の数字Ａが小さい程大であることを特徴とする音響エコー消去方法。
【請求項３】
上記受話端子はＰ（Ｐは２以上の整数）個であり、各受話端子の受話信号ごとに、上記ブロック信号の周波数領域への変換、上記Ｍ−１個の遅延ブロック信号の生成、上記Ｍ個の部分予測エコーの生成、上記周波数領域の予測エコーの生成、上記誤差信号の生成、上記Ｍ個の修正ベクトルの生成、第１〜第Ｍ部分予測エコー経路インパルス応答の更新をそれぞれ行い、
上記周波数領域の予測エコーのＰ個を加算して時間領域に変換して、上記時間領域の予測エコーとすることを特徴とする請求項１記載の音響エコー消去方法。
【請求項４】
前回求めた上記各部分予測エコー経路に入力される受話信号パワーのフィルタ係数更新ステップサイズ重み付け総和の短時間平均と、今回求めた各部分予測エコー経路に入力される受話信号パワーのその経路フィルタ係数更新ステップサイズ重み付け総和とを重み付け加算して今回の受話信号パワー重み付け総和の短時間平均を求め、
この受話信号パワー重み付け総和の短時間平均の逆数と周波数領域の上記誤差信号との対応する周波数成分ごとの積をそれぞれ求めて誤差信号を補正して、これを上記修正ベクトルを求める誤差信号とすることを特徴とする請求項１〜３のいずれかに記載の音響エコー消去方法。
【請求項５】
Ｐ個（Ｐは１以上の整数）の受話端子に接続されたＰ個のチャネル予測エコー生成部と、
これらＰ個の周波数領域の予測エコーの総和を時間領域の予測エコーに変換し、所定時間ごとに、出力する時間領域変換部と、
１つの収音信号が入力され、その収音信号を上記一定時間ごとにブロックに分割する第１ブロック化部と、
上記時間領域変換部よりの予測エコーと上記第１ブロック化部よりのブロック収音信号とが入力され、これら間の誤差信号を出力する減算部と、
上記減算部からの誤差信号が入力され、この誤差信号を上記所定時間ごとに周波数領域の信号に変換して、上記Ｐ個のチャネル予測エコー生成部へそれぞれ供給する第１周波数領域変換部とを具備し、
上記チャネル予測エコー生成部は
それが接続された受話端子からの受話信号を上記所定時間ごとにブロックに分割する第２ブロック化部と、
上記分割されたブロック信号を周波数領域に変換する第２周波数領域変換部と、
上記周波数領域ブロック信号を遅延し、遅延量が上記一定時間ずつ順次大であるＭ−１個（Ｍは２以上の整数）の遅延ブロック信号を出力する遅延部と、
上記遅延されない周波数領域ブロック信号、上記Ｍ−１個の遅延ブロック信号が入力され、これらと周波数領域の第１〜第Ｍ部分予測エコー経路インパルス応答との対応周波数成分を乗算して第１〜第Ｍ部分予測エコーを出力する第１乗算部と、
上記遅延されない周波数領域ブロック信号、上記Ｍ−１個の遅延ブロック信号の各複素共役を第１〜第Ｍ共役信号として生成する共役生成部と
上記第１〜第Ｍ共役信号と上記周波数領域誤差信号とをそれぞれ乗算して第１〜第Ｍ修正ベクトルを生成する第２乗算部と、
上記第１〜第Ｍ修正ベクトルに第１〜第Ｍステップサイズを乗算する第３乗算部と、第１〜第Ｍステップサイズは第Ａ（Ａ＝１，…，Ｍ）の数字Ａが小さい程大であり、
上記ステップサイズが乗算された第１〜第Ｍ修正ベクトルを上記第１〜第Ｍ部分予測エコー経路インパルス応答に加算して、これらインパルス応答を更新する更新部と、
を備えることを特徴とする音響エコー消去装置。
【請求項６】
上記Ｐ個の受話端子に上記請求項４に記載した音響エコー消去装置がＱ個（Ｑは２以上の整数）並列に接続され、これらＱ個の音響エコー消去装置には互いに異なる収音信号が入力されることを特徴とする音響エコー消去装置。
【請求項７】
請求項１〜４の何れかに記載した音響エコー消去方法の各過程をコンピュータに実行させるための音響エコー消去プログラム。
【請求項８】
請求項７記載の音響エコー消去プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、拡声通話システムに適用され、通話の障害となり、時にはハウリングを引き起こす音響エコーを消去する方法、その装置、プログラム及びその記録媒体に関するものである。
【０００２】
【従来の技術】
拡声通話システムでは、受話音声がスピーカから拡声され、マイクロホンに収音されて音響エコーが生じ、その処理が問題となる。対地の拡声通話システムを含めて形成される閉ループのループゲインが１より大きい場合に、音響エコーはハウリングを引き起し、通話を不可能にする。またループゲインが１より小さい場合であっても音響エコーは通話の障害や不快感などの悪影響を生ずる。より自然な通話環境の実現には、スピーカからマイクロホンへの音響的回り込みを消去する音響エコー消去装置（エコーキャンセラ）が必要となる。
【０００３】
１チャネルの再生系と１チャネルの収音系とで構成される音響エコー消去装置（キャンセラ）を図６に示す。受話端子１からの受話信号はスピーカ２で音響信号として再生され、この音響信号は音響エコー経路２３を経てマイクロホン３に回り込む。
受話信号をｘ（ｋ）（ｋは離散的時刻）、マイクロホン３により収音されたエコー信号をｙ（ｋ）、スピーカ（再生器）２からマイクロホン（収音器）３までの音響エコー経路２３のインパルス応答をｈ（ｋ）、その長さをＬとする。エコー信号と受話信号には以下の関係がある。
ｙ（ｋ）＝Σｉ＝０Ｌ−１ｈ（ｉ）ｘ（ｋ−ｉ）
さらに、インパルス応答と入力信号を
ｈ＝［ｈ（０）…ｈ（Ｌ−１）］Ｔ
ｘ（ｋ）＝［ｘ（ｋ）…ｘ（ｋ−Ｌ＋１）］Ｔ
のようにベクトル化すると、受話信号とインパルス応答との畳み込みは以下のように簡潔に記述される。ここで［  ］Ｔ  はベクトルの転置を表わす。
ｙ（ｋ）＝ｈＴ  ｘ（ｋ）
【０００４】
この音響エコーは、受話端子１と送信端子４の間に接続されたエコー消去部５により消去される。受話信号ｘ（ｋ）が予測エコー信号生成用の適応フィルタ５１に入力されて予測エコー信号が生成され、マイクロホン３からの収音信号ｙ（ｋ）とこの予測エコー信号との差が減算部５２でとられ誤差信号ｅ（ｋ）が作られる。この誤差信号ｅ（ｋ）および過去の受話信号に基づき、収音信号と予測エコー信号との誤差が小さくなるように予測エコー信号生成用のフィルタ５１のフィルタ係数が更新される。
【０００５】
「従来法１」
はじめにＮＬＭＳ（Ｎｏｒｍａｌｉｚｅｄ  Ｌｅａｓｔ  Ｍｅａｎ  Ｓｑｕａｒｅ）アルゴリズムをもちいてフィルタ係数を更新する場合を説明する（非特許文献１参照）。予測エコー生成用の応答フィルタ５１のタップ数をＬとし、そのフィルタ係数ベクトルをｗ（ｋ）で表わす。予測エコー信号ｙ＾（ｋ）は、受話信号とフィルタ係数を畳み込むことで得られる。
ｙ＾（ｋ）＝ｗＴ（ｋ）ｘ（ｋ）
収音信号ｙ（ｋ）と予測エコー信号との差ｅ（ｋ）＝ｙ（ｋ）−ｙ＾（ｋ）をもちいて修正ベクトル
ｄｗ（ｋ）＝ｅ（ｋ）ｘ（ｋ）／ｘＴ（ｋ）ｘ（ｋ）
が求められ、適応フィルタの係数が次式により更新される。
ｗ（ｋ＋１）＝ｗ（ｋ）＋μ  ｄｗ（ｋ）
ただしμは推定を安定にするために設定されるステップサイズである。
ＮＬＭＳ法では、予測エコー生成の畳み込み演算と適応フィルタの修正を、上記のように時間領域で毎サンプルおこなうために、処理遅延はないものの演算量がとても大きくなる。また収束速度すなわち適応フィルタ５１による推定エコー経路が真のエコー経路にほぼ収束するまでの時間が遅いことが知られている。
【０００６】
「従来法２」
演算量を大幅に削減する適応アルゴリズムが、Ｅ．Ｒ．Ｆｅｒｒａｒａにより提案されている（非特許文献２参照）。このアルゴリズムは、適応フィルタの修正を１サンプルごとの処理からＬサンプルごとのブロック処理に変更している。そして、予測エコー信号生成の畳み込み信号処理をブロック化し、高速離散フーリエ変換（ＦＦＴ）により周波数領域を経由して行う。
このアルゴリズムでは、修正ベクトルを誤差信号と受話信号の畳み込みにより計算している。この計算は、時刻ｋで適応フィルタが修正される場合に下記のようになる。
ｄｗ（ｋ）＝Σｉ＝０Ｌ−１ｅ（ｋ−ｉ）ｘ（ｋ−ｉ）
この適応フィルタ修正のための畳み込み処理もＦＦＴをもちいて効率よく実行することができ、全体の演算量を大幅に減少させることが可能である。その機能構成を図７に示す。
受話信号ｘ（ｋ）をブロック化部６１でＬサンプルずらしながら２Ｌサンプルごとのブロックに分割し、その各ブロックの信号を高速フーリエ変換（ＦＦＴ）によりＦＦＴ変換部６２で周波数領域信号Ｘに変換し、その複素共役Ｘ＊を共役生成部６３ａで作り、これと、ＦＦＴ変換部６８で、同様にブロックごとの周波数領域とされた残留信号Ｅとが乗算部６３ｂで乗算されて、周波数領域の修正ベクトルｄＷが生成され、これにステップサイズμが乗算部６３ｃで乗算され、係数更新部６３ｄで周波数領域の適応フィルタ係数ＷにμｄＷが加算されて、フィルタ係数Ｗが更新される。このフィルタ係数Ｗと周波数領域の受話信号Ｘとが乗算部６３ｅで乗算され、この乗算結果ＷＸが逆ＦＦＴ変換部６４で、逆高速離散フーリエ変換されて時間領域信号に変換され、これにブロック整形部６５でＬサンプルのブロックとして取り出され、この１ブロックごとの予測エコー信号ｙ＾（ｋ）を、ブロック化部６６でＬサンプルごとにブロック化したエコー信号ｙ（ｋ）から減算部６７で差し引き、ブロックごとの誤差信号ｅ（ｋ）を得る。
このように周波数領域で行う方法では、Ｌサンプルおきに信号をブロック化する必要があり（ブロック長２Ｌ）、少なくともＬサンプルの遅延が生じてしまう。また適応フィルタの更新もＬサンプルごとになり、収束速度は特に改善しない。
【０００７】
「従来法３」
上記従来法２の適応アルゴリズムにおいて処理遅延が大きく適応フィルタの更新頻度が低い問題は、Ｊ．Ｓ．Ｓｏｏの提案したアリゴリズム（非特許文献３参照）により解決される。このアルゴリズムでは、処理遅延の縮小をはかるためにマルチディレイ・フィルタ（以下ＭＤＦと略す）の考え方を導入する。
【０００８】
周波数領域の信号処理では、オーバーラップセーブ（ｏｖｅｒｌａｐ−ｓａｖｅ）法により畳み込み処理が実現される。ＭＤＦ法は、この畳み込み処理が、より小さいブロック同士のオーバーラップセーブ処理に分割できることを利用する。仮に分割数４でＭＤＦを適用することは、図８に示すようにインパルス応答を時間軸上で４分割し、各部分インパルス応答と受話信号を畳み込んで部分予測エコー信号を生成し、その総和をとって予測エコー信号を求めることに対応している。
【０００９】
適応フィルタのタップ長をＬ、分割数をＭ（ただしＬはＭで割り切れる）に設定すると、ＭＤＦ法ではＬ′＝Ｌ／Ｍサンプルごとに予測エコーを求めることが可能になる。ＭＤＦ法の機能構成を図９に示す。ＭＤＦ法では、受話信号ｘ（ｋ）はオーバーラップセイブ法を用いてＬ′＝Ｌ／Ｍサンプルごとにブロック化部７１にて、長さ２Ｌ′の信号ベクトルにブロック化され、その各信号ベクトルはＦＦＴ変換部７２にて周波数領域の信号Ｘ１（ｋ）に変換される。
Ｘ１（ｋ）←ＦＦＴ（［ｘ（ｋ−２Ｌ′＋１），…，ｘ（ｋ）］Ｔ）  （１）
過去のＭ−１個の信号ブロック（信号ベクトル）は、縦続接続された遅延部７９１〜７９Ｍ−１を、Ｌ′サンプルごとに１遅延部だけ順次シフトされ、各遅延部７９１〜７９Ｍ−１からＸＬ（ｋ）〜ＸＭ（ｋ）として式（２）に示すように出力さ
れる。
Ｘ２（ｋ）＝Ｘ１（ｋ−Ｌ′）
：
ＸＭ（ｋ）＝ＸＭ−１（ｋ−Ｌ′）                    （２）
これら受話信号の信号ブロックを部分予測エコー生成部７３１〜７３Ｍにてそれぞれ各部分予測インパルス応答と畳み込んで、周波数領域の部分予測エコー信号が生成され、これが部分予測エコー信号の総和を加算部７４でとって逆ＦＦＴ変換部７５で逆高速離散フーリエ変換を行って時間領域の予測エコー信号ｙ（ｋ）が生成される。
【００１０】
予測エコー信号ベクトルｙ＾（ｋ）とブロック化部７６よりの収音信号ベクトルｙ（ｋ）との差が減算部７７でとられ、その誤差信号ベクトルがＦＦＴ変換部７８で式（３）に示すように周波数領域に変換される。
Ｅ（ｋ）←ＦＦＴ（［０，…，０，ｙＴ（ｋ）−ｙ＾Ｔ（ｋ）］Ｔ）（３）このようにＬ′個のサンプル用誤差信号ベクトルの前にＬ′個の０を付けて２Ｌ′のサンプルとして周波数領域に変換する。
【００１１】
周波数領域受話信号Ｘ１（ｋ）は共役部７３１ａでその複素共役Ｘ１＊（ｋ）に変換され、周波数領域の誤差信号Ｅ（ｋ）と乗算部７３１ｂで乗算され、その乗算結果ｄＷ１に対し、乗算部７３１ｃでステップサイズμが乗算され、その結果μ  ｄＷ１が更新部７３１ｄでそれまでの周波数領域の部分予測インパルス応答Ｗ１（ｋ）に対し加算されて、これが更新される。他の遅延受話信号Ｘ２（ｋ），…，ＸＭ（ｋ）と誤差信号Ｅ（ｋ）とが部分予測エコー生成部７３２，…，７３Ｍでそれぞれ同様に処理される。このように周波数領域での信号ベクトルＸ１（ｋ），…，ＸＭ（ｋ），Ｅ（ｋ）をもちい、適応フィルタの各部分予測インパルス応答を次式で更新する。
Ｗ１（ｋ＋Ｌ′）＝Ｗ１（ｋ）＋μＸ１＊（ｋ）Ｅ（ｋ）
：
ＷＭ（ｋ＋Ｌ′）＝ＷＭ（ｋ）＋μＸＭ＊（ｋ）Ｅ（ｋ）    （４）
ただしＸｍ＊（ｋ）（ｍ＝１，…，Ｍ）はＸｍ（ｋ）の複素共役である。図
９ではｄＷｍ（ｋ）＝Ｘｍ＊（ｋ）Ｅ（ｋ）（ｍ＝１，…，Ｍ）を用いてい
る。またμはフィルタ係数更新の大きさを決めているステップサイズである。図９中の部分予測エコー生成部７３１〜７３Ｍ内に示されるように、Ｍ個の部分予測エコー経路の部分インパルス応答の更新には、同一のステップサイズμが適用されていることに注意されたい。
このＭＤＦ法の処理遅延は従来法２のそれの１／Ｍになり、従来法２よりも演算量は多少増加するが適応フィルタの更新頻度はＭ倍になり収束速度が改善する。
【００１２】
【非特許文献１】
大賀、山崎、金田、「音響システムとディジタル処理」、電子情報通信学会、１９９７、ｐｐ．１３９−１４２
【非特許文献２】
Ｅ．Ｒ．Ｆｅｒｒａｒａ，“Ｆａｓｔ  Ｉｍｐｌｅｍｅｎｔａｔｉｏｎ  ｏｆ  ＬＭＳ  ａｄａｐｔｉｖｅ  ｆｉｌｔｅｒｓ，”ＩＥＥＥ  Ｔｒａｎｓ．Ａｃｏｕｓｔ．，  Ｓｐｅｅｃｈ，Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｉｎｇ，  ｖｏｌ．ＡＳＳＰ−２８，  ｐｐ．４７４−４７５（１９８０）
【非特許文献３】
Ｊ．Ｓ．Ｓｏｏ  ａｎｄ  Ｋ．Ｋ．Ｐａｎｇ：“Ｍｕｌｔｉｄｅｌａｙ  Ｂｌｏｃｋ  Ｆｒｅｑｕｅｎｃｙ  Ｄｏｍａｉｎ  Ａｄａｐｔｉｖｅ  Ｆｉｌｔｅｒ，”ＩＥＥＥ  Ｔｒａｎｓ．ｏｎ  ＡＳＳＰ，  ｖｏｌ．ＡＳＳＰ−３８，  ｎｏ．２，  ｐｐ．３７３−３７６（１９９０）
【００１３】
【発明が解決しょうとする課題】
適応フィルタによりエコーを十分に消去するには、そのフィルタ長がエコー経路のインパルス応答長と同等である必要がある。残響時間の比較的長い部屋で拡声通話システムを確実に動作させるには、適応フィルタ長を長くとる必要がある。フィルタ長が長いほど適応フィルタの収束速度は遅くなるために、従来法３に対して、一層の収束速度向上が要求されている。
【００１４】
【課題を解決するための手段】
この発明によれば、受話信号を予測エコー経路により周波数領域でフィルタ処理して予測エコーを求め、その予測エコーと収音信号との誤差信号を小さくするように、予測エコー経路を構成する適応フィルタのフィルタ係数を周波数領域で制御する低演算量の音響エコー消去方法において、適応フィルタのタップ数（適応フィルタ長）をＭ（２以上の整数）分割し、Ｍ個の部分予測エコー経路を構成し、
特に部分予測エコー経路の部分インパルス応答の更新に対して、同一のステップサイズではなく、エコー経路のインパルス応答包絡線の減衰傾向に合わせて減衰するステップサイズを適用することを特徴とする。つまり一般に室内インパルス応答すなわちエコー経路のインパルス応答の包絡は図８に示したように時間とともにほぼ一定の傾向で減衰することが知られている。インパルス応答の変化量も同様の性質を持つ。この発明はこの性質を適応フィルタの係数更新に反映させたものである。
【００１５】
従ってインパルス応答の前半に位置し、係数変化の最も大きい部分予測インパルス応答Ｗ１（ｋ）の更新には大きめのステップサイズが設定される。またインパルス応答の後半に位置し、係数変化の小さい部分予測インパルス応答ＷＭ（ｋ）の更新には小さいステップサイズが設定される。これにより、ＭＤＦ法に基づく周波数領域処理の適応フィルタに対して、同一の処理遅延、ほぼ同等の計算量で収束速度を向上させることが可能になる。
この発明方法は、スピーカＰ個（Ｐは２以上の整数）およびマイクロホン１個からなる拡声通話システムにもそのまま適用可能である。また、スピーカＰ個（Ｐは１以上の整数）およびマイクロホンＱ個（Ｑは２以上の整数）からなる拡声通話システムも、スピーカＰ個およびマイクロホン１個からなる拡声通話システムをＱ個並列に設置することで実現可能である。
【００１６】
【発明の実施の形態】
実施形態１
はじめにスピーカ１個マイクロホン１個からなる拡声通話システムにこの発明を適用した実施形態１を図１を参照して説明する。図１中の図９と対応する部分に同一参照番号を付けてある。以下では適応フィルタの全体長をＬ、その分割数をＭとする。
受話信号ｘ（ｋ）はブロック化部７１およびＦＦＴ変換部７２にて、下記ステップ１にしたがってブロック化されて周波数領域に変換される。受話信号は所定時間Ｌ′＝Ｌ／Ｍサンプルごとに長さ２Ｌ′のブロック信号として処理される。周波数領域の受話信号Ｘ１とその順次Ｌ′サンプル分遅延された信号Ｘ２〜ＸＭが部分予測エコー生成部７３１〜７３Ｍにてフィルタ処理されて、周波数領域で部分予測エコーが生成される。加算部７４にてこれら部分予測エコーの総和がとられ、逆ＦＦＴ変換部７５を経て時間領域の予測エコーに変換される。この一連の処理が下記ステップ２に対応する。収音信号ｙ（ｋ）は、ブロック化部７６でＬ′サンプルごとにブロック化され、ベクトル減算部７７で予測エコー信号ベクトルとの差が求められたのち、ＦＦＴ変換部７８にて周波数領域に変換されて誤差信号Ｅ（ｋ）が求められる。この一連の処理が下記ステップ３に対応する。各部分予測エコー生成部７３ｍでは、下記ステップ４、５にしたがって部分予測インパルス応答が更新される。
【００１７】
ステップ１
受話信号ｘ（ｋ）を、Ｌ′＝Ｌ／Ｍサンプルごとに長さ２Ｌ′の信号ベクトルにブロック化し、ＦＦＴを適用して式（５）に示すように周波数領域に変換する。
Ｘ１（ｋ）＝ｄｉａｇ（ＦＦＴ（［ｘ（ｋ−２Ｌ′＋１），…，ｘ（ｋ）］Ｔ））  （５）
ただし上式のｄｉａｇ（  ）は、周波数領域に変換した信号ベクトルを対角成分のみに各周波数成分を持つ行列（対角行列）に変換する。同時に、過去の信号ブロックを縦続接続された遅延部７９１〜７９Ｍ−１でそれぞれシフトする。遅延部７９１，…，７９Ｍ−１より式（２）と同様にそれぞれ順次Ｌ′ずつ多く遅延された信号ブロックＸ２（ｋ），…，ＸＭ（ｋ）が出力される。
Ｘ２（ｋ）＝Ｘ１（ｋ−Ｌ′）
：
ＸＭ（ｋ）＝ＸＭ−１（ｋ−Ｌ′）          （２）
【００１８】
ステップ２
各部分予測エコー生成部７３ｍ（ｍ＝１，２，…，Ｍ）において、受話信号
Ｘｍ（ｋ）と部分予測インパルス応答Ｗｍ（ｋ）とを周波数成分ごとに積をと
ることで、受話信号ベクトルをフィルタ処理した周波数領域の部分予測エコーを得る。これら部分予測エコー信号ベクトルの総和を加算部７４でとって逆ＦＦＴ変換部７５で逆ＦＦＴを適用し、更にブロック整形部７５ａでＬ′サンプル時間ごとのＬ′サンプルの時間領域の予測エコー信号ベクトルｙ＾（ｋ）とする。
ｙ＾（ｋ）＝［０Ｌ′ＩＬ′］ＦＦＴ−１（Ｘ１（ｋ）Ｗ１（ｋ）＋…＋ＸＭ（ｋ）Ｗ
Ｍ（ｋ））                                                （６）
ただし、０Ｌ′はＬ′×Ｌ′の零行列、ＩＬ′はＬ′×Ｌ′の単位行列であ
る。
【００１９】
ステップ３
ブロック化された収音信号と予測エコーとの誤差信号ベクトルをＦＦＴ変換部７８で式（３）と同様にＬ′個の誤差サンプルの前に０をＬ′個付けて周波数領域の信号Ｅ（ｋ）に変換する。
Ｅ（ｋ）＝ＦＦＴ（［０，…，０，ｙＴ（ｋ）−ｙ＾Ｔ（ｋ）］Ｔ）（３）
ただし
ｙ（ｋ）＝［ｙ（ｋ−Ｌ′＋１）…ｙ（ｋ）］Ｔ      （７）
である。
【００２０】
ステップ４
部分予測エコー生成部７３１，…，７３ｍの各部分予測インパルス応答Ｗ１（ｋ），…，ＷＭ（ｋ）を、それぞれ異なるステップサイズμ１…μＭをもちいて周波数領域で式（８）に示すように更新する。ステップサイズμｍ（ｍ＝１、・・・、Ｍ１）は、ステップサイズ生成部７０で次式の演算により生成する。
μ１＝μ１
μｍ＝μ１αｍ−１（ｍ＝１、・・・、Ｍ１）
つまりステップサイズμ１，…，μＭは一定の減衰率αで指数的に減衰するように設定生成する。減衰率αは室内インパルス応答包絡の減衰傾向すなわち残響時間から決められる。例えば適用室について実測して求める。またμ１は０〜１の値に設定する。この例では周波数領域の誤差信号Ｅ（ｋ）に補正行列Ｓを乗算部７８２で乗算し、この乗算結果と各受話信号Ｘｍ（ｋ）の複素共役Ｘｍ＊（ｋ）（ｍ＝１，…，Ｍ）とを乗算部７３ｍｂで乗算した行列にステップサイズμｍが乗算部７３ｍｃで乗算される。
【００２１】
Ｗ１（ｋ＋Ｌ′）＝Ｗ１（ｋ）＋μ１Ｘ１＊（ｋ）Ｓ（ｋ）Ｅ（ｋ）
：
ＷＭ（ｋ＋Ｌ′）＝ＷＭ（ｋ）＋μＭＸＭ＊（ｋ）Ｓ（ｋ）Ｅ（ｋ）（８）
ここで、補正行列Ｓ（ｋ）は、遅延部７９１，…，７９Ｍ−１の出力信号を補正行列算出部７８１に入力して
Ｓ（ｋ）＝ｄｉａｇ（［１／ｒ１（ｋ）…１／ｒＬ′（ｋ）］）  （９）
ｒｊ（ｋ）＝βｒｊ（ｋ−Ｌ′）＋（１−β）Σｍ＝１ＭμｍＴ２（Ｘｍ（ｋ）
，ｊ）                                                      （１０）
により算出される対角行列である。ただしＴ（Ｘｍ（ｋ），ｊ）は行列Ｘｍ（ｋ）の（ｊ，ｊ）成分を抜き出す関数である。行列Ｓ（ｋ）の対角要素の分母のｒｊ（ｋ）は、周波数成分ごとに部分予測エコー生成部７３１〜７３Ｍの各入力受話信号パワーの重み付き総和を求めたものである。βは前回の短時間平均パワーの総和ｒｊ（ｋ−Ｌ′）と今回の短時間パワーとの短時間平均をとるための平滑化定数であり、０〜１の値をとる。音声のように有色性信号の場合、修正ベクトルｄＷｍ（ｋ）に行列Ｓ（ｋ）をかけることは受話信号の白色化処理に対応し、有色信号が入力されたときの適応フィルタの収束速度を向上させることが知られている。
図１に示した例では、周波数領域の修正ベクトルｄＷｍ（ｋ）＝Ｘｍ＊（ｋ）Ｓ（ｋ）Ｅ（ｋ）（ｍ＝１，…，Ｍ）をもちいている。
【００２２】
ステップ５
これら周波数領域の各部分予測エコー経路のインパルス応答Ｗ１（ｋ＋Ｌ′），…，ＷＭ（ｋ＋Ｌ′）について、周波数領域のベクトルと時間領域の部分予測エコー経路のインパルス応答とが１対１に対応するように次式（１２）により、フィルタ更新部７３ｍｄ内で整形する。
ｖｍ（ｋ＋Ｌ′）＝［ＩＬ  ０Ｌ］ＩＦＦＴ（Ｗｍ（ｋ＋Ｌ′））（１１）
Ｗｍ（ｋ＋Ｌ′）＝ＦＦＴ（［ｖｍＴ（ｋ＋Ｌ′），０，…，０］Ｔ）（１２）
ＦＦＴ［  ］内の０数はＬ′個である。
【００２３】
この実施形態１に示すようにこの発明においては所定時間（Ｌ′サンプル）ごとに、受話信号を分割し、その分割された受話信号（２Ｌ′サンプル）を周波数領域信号Ｘ（ｋ）に変換し、その信号Ｘ（ｋ）を部分予測エコー経路部でフィルタ処理して部分予測エコーを生成し、その連続する複数のＭ個の所定時間に生成されたＭ個の部分予測エコーの総和を時間領域の予測エコーに変換し、連続するＭ個の所定時間の各受話信号Ｘ１（ｋ）〜ＸＭ（ｋ）と誤差信号Ｅ（ｋ）との乗算により周波数領域での修正ベクトルｄＷ１（ｋ）〜ｄＷＭ（ｋ）を生成し、これら修正ベクトルｄＷ１（ｋ）〜ｄＷＭ（ｋ）と複数（Ｍ個）の所定時間内の各所定時間ごとに異なるステップサイズμ１〜μＭとを用いて、部分予測エコー経路部を周波数領域で更新する。
【００２４】
実施形態２
この発明の実施形態２は、図２に示すようにスピーカＰ個（Ｐは２以上の整数）とマイクロホン１個からなる拡声通話システムにこの発明を適用した場合である。以下の適応アルゴリズムでは、適応フィルタ長の全体長をＬ、その分割数をＭとするときオーバラップセーブ法をもちいてＬ′＝Ｌ／Ｍサンプルごとに長さ２Ｌ′のブロック信号を処理する。図１に示したエコー消去装置中の逆ＦＦＴ変換部７５、ブロック整形部７５ａ、ブロック化部７６、減算部７７、ＦＦＴ変換部７８、補正行列算出部７８１、及び乗算部７８２を除いた部分が各受話端子１ｐにチャネル予測エコー生成部８ｐとして接続され、これらチャネル予測エコー生成部８ｐにＦＦＴ変換部７８よりの誤差信号Ｅ（ｋ）が入力される。ここでｐ＝１，…，Ｐである。
各チャネル予測エコー生成部８ｐは図３に示す構成となりこれに入力された受話信号ｘｐ（ｋ）を図１に示した場合と同様に処理する。
【００２５】
ステップ１
Ｐチャネルの受話信号ｘｐ（ｋ）（ｐ＝１，…，Ｐ）を、それぞれＬ′＝Ｌ／Ｍサンプルごとに長さ２Ｌ′の信号ベクトルにブロック化し、式（５）と同様にＦＦＴを適用して周波数領域に変換する。
Ｘｐ，１（ｋ）＝ｄｉａｇ（ＦＦＴ（［ｘｐ（ｋ−２Ｌ′＋１），…，ｘｐ（ｋ）］Ｔ））
ただし上式のｄｉａｇ（  ）は、周波数領域に変換した信号ベクトルを対角成分に各周波数成分を持つ行列に変換しており、これ以降の説明の便宜をはかるためにもちいている。同時に、過去の信号ブロックを縦続接続された遅延部を１遅延部ずつそれぞれシフトして式（２）と同様にＸｐ，２（ｋ），…，Ｘｐ，Ｍ（ｋ）を得る。
Ｘｐ，２（ｋ）＝Ｘｐ，１（ｋ−Ｌ′）
：
Ｘｐ，Ｍ（ｋ）＝Ｘｐ，Ｍ−１（ｋ−Ｌ′）
【００２６】
ステップ２
各部分予測エコー生成部において、受話信号と、部分予測インパルス応答とを周波数成分ごとに積をとることで、受話信号ベクトルをフィルタ処理し、周波数領域の部分予測エコーＸｐ，ｍ（ｋ）Ｗｐ，ｍ（ｋ）（ｐ＝１，…，Ｐ，ｍ＝１，…，Ｍ）を得る。これら部分予測エコーの和をとることで式（１３）に示すチャネルごとの予測エコーＹ＾ｐ（ｋ）を求める。このＹ＾ｐ（ｋ）がチャネル予測エコー生成部８ｐの出力となる。
Ｙ＾ｐ（ｋ）＝Ｘｐ，１（ｋ）Ｗｐ，１（ｋ）＋…＋Ｘｐ，Ｍ（ｋ）Ｗｐ，Ｍ（ｋ
）                                                      （１３）
【００２７】
ステップ３
第１〜Ｐチャネルにおける周波数領域での予測エコー信号ベクトルの総和を加算部８ａでとり、その総和に対し、逆ＦＦＴ変換部７５、ブロック整形部７５ａにより式（６）と同様に逆ＦＦＴを適用しかつＬ′個のサンプルブロックに整形して、予測エコー信号ベクトルｙ＾（ｋ）を求める。
ｙ＾（ｋ）＝［０Ｌ′ＩＬ′］ＦＦＴ−１（Ｙ＾１（ｋ）＋…＋Ｙ＾ｐ（ｋ）
）                                                      （１４）
ただし、０Ｌ′はＬ′×Ｌ′の零行列、ＩＬ′はＬ′×Ｌ′の単位行列であ
る。
そして、収音信号と予測エコー信号との差である誤差信号ベクトルをＦＦＴ変換部７８で式（３）に示す周波数領域信号Ｅ（ｋ）に変換する。
Ｅ（ｋ）＝ＦＦＴ（［０，…，０，ｙＴ（ｋ）−ｙ＾Ｔ（ｋ）］Ｔ）（３）
このＦＦＴ変換はＬ′個のサンプルの誤差信号ベクトルの前にＬ′個の０を付けて行う。また、
ｙ（ｋ）＝［ｙ（ｋ−Ｌ′＋１）…ｙ（ｋ）］Ｔ          （７）
である。各チャネル予測エコー生成部８ｐにおいて加算部７４で部分予測エコーの和を取ることなく、加算部８ａで、チャネル予測エコー生成部８１〜８Ｐより全部分予測エコーの総和をとってもよい。
【００２８】
ステップ４
第１〜Ｐチャネルにおける第１〜第Ｍ区間の各部分予測インパルス応答Ｗｐ，１（ｋ）…Ｗｐ，Ｍ（ｋ）（ｐ＝１，…，Ｐ）を区間ごとに異なるステップサイズμ１…μＭをもちいて式（１５）に示すように周波数領域で更新する。
【００２９】
Ｗｐ，１（ｋ＋Ｌ′）＝Ｗｐ，１（ｋ）＋μ１Ｘｐ，１＊（ｋ）Ｅ（ｋ）
：
Ｗｐ，Ｍ（ｋ＋Ｌ′）＝Ｗｐ，Ｍ（ｋ）＋μＭＸｐ，Ｍ＊（ｋ）Ｅ（ｋ）（１５）
ただしＸｐ，ｍ＊（ｋ）（ｐ＝１，…，Ｐ、ｍ＝１，…，Ｍ）はＸｐ，ｍ（ｋ）の複素共役である。
第ｐチャネルの第ｍ区間の部分予測インパルス応答の周波数領域における修正ベクトルはｄＷｐ，ｍ（ｋ）＝Ｘｐ，ｍ＊（ｋ）Ｅ（ｋ）（ｍ＝１，…，Ｍ）である。
【００３０】
ステップ５
第１〜Ｐチャネルの第１〜第Ｍ区間の各部分予測エコー経路の部分インパルス応答Ｗｐ，１（ｋ＋Ｌ′），…，Ｗｐ，Ｍ（ｋ＋Ｌ′）について、周波数領域のベクトルと時間領域の部分予測エコー経路インパルス応答が１対１に対応するように式（１１），（１２）と同様な次式により整形する。
ｖｐ，ｍ（ｋ＋Ｌ′）＝［ＩＬ ０Ｌ］ＩＦＦＴ（Ｗｐ，ｍ（ｋ＋Ｌ′））
Ｗｐ，ｍ（ｋ＋Ｌ′）＝ＦＦＴ（［ｖｐ，ｍＴ（ｋ＋Ｌ′），０，…，０］Ｔ）
【００３１】
実施形態３
実施形態３は図４に示すようにスピーカＰ個（Ｐは１以上の整数）、マイクロホンＱ個（Ｑは２以上の整数）からなる拡声通話システムにこの発明を適用した場合である。図２に示したエコー消去装置がＱ個、９１…９Ｑとして設けられ、各エコー消去装置９ｑ（ｑ＝１，…，Ｑ）はＰ個の受話端子１１〜１Ｐからの各チャネルの受話信号ｘ１（ｋ）〜ｘｐ（ｋ）と１個のマイクロホン３ｑからの収音信号ｙｑ（ｋ）が入力され、その収音信号ｙｑ（ｋ）に対しエコー消去を行って送話端子４ｑに出力する。つまり、この実施形態３では図２に示したスピーカＰ個マイクロホン１個からなる拡声通話システムにおけるエコー消去装置が各マイクロホンごとに並列に設置されていることになる。
【００３２】
実験例
この発明方法の性能を検証するために、スピーカ１個マイクロホン１個からなる拡声通話システムを想定して、数値シミュレーションを行った。この数値シミュレーションでは、サンプリング周波数を８ｋＨｚに設定し、音響エコー経路２３として残響時間３００ｍｓの部屋で実測した室内伝達関数を１６００タップに打ち切って音響エコーを生成した。適応フィルタについて、タップ数Ｌ＝１０２４、分割数Ｍ＝４とした。
【００３３】
従来法として白色化処理を含むＭＤＦ法をもちい、そのステップサイズをμ＝０．３に設定した。またこの発明方法として実施形態１をもちい、そのステップサイズをμ１＝０．３、μ２＝０．３×０．６、μ３＝０．３×０．６２、μ４＝０．３×０．６３に設定した。
入力信号として白色雑音をもちいた場合について、エコー経路推定値の相対誤差（Ｍｉｓａｌｉｇｎｍｅｎｔ）の変化を図５に示す。相対誤差が−２０ｄＢに達する時間で比較すると、各部分予測エコー経路について更新時ステップサイズを残響特性に応じて別々に設定することにより、適応フィルタの推定速度が約３０％向上していることが分かる。
【００３４】
実施形態１において、補正行列Ｓ（ｋ）による誤差信号Ｅ（ｋ）に対する
補正を行わなくてもよい。つまり図１において、補正行列算出部７８１、乗算部７８２を省略してもよい。また図３において、図１と同様に補正行列算出部７８１、乗算部７８２を設けて、誤差信号Ｅ（ｋ）に対し、各チャネル対応の補正
を行ってもよい。
図１、図２に示した各音響エコー消去装置をコンピュータにより機能させてもよい。この場合は前述したこの発明による音響エコー消去方法の各過程をコンピュータにより実行させるためのプログラムをＣＤ−ＲＯＭ、磁気ディスクなどの記録媒体から又は通信回線を介してコンピュータにダウンロードし、そのコンピュータにそのプログラムを実行させればよい。
【００３５】
【発明の効果】
以上述べたようにこの発明によれば拡声通話システムのエコー消去において、エコー経路のインパルス応答を所定時間区間ごとに部分エコー経路インパルス応答に分割し、部分エコー経路インパルス応答の予測を周波数領域経由のブロック信号処理とし、その際、部分エコー経路ごとに異なるステップサイズで部分予測エコー経路インパルス応答を更新することにより、音響エコー経路インパルス応答の推定速度向上と低演算量化を実現することができる。
【図面の簡単な説明】
【図１】この発明の実施形態１の機能構成例を示す図。
【図２】この発明の実施形態２の機能構成例を示す図。
【図３】図２中のチャネル予測エコー生成部８ｐの機能構成例を示す図。
【図４】この発明の実施形態３の機能構成例を示す図。
【図５】この発明方法と従来法によるエコー経路インパルス応答予測の収束挙動の数値シミュレーションの例を示す図。
【図６】従来の時間領域でのみ処理するエコー消去装置の機能構成を示す図。
【図７】従来の周波数領域を経由する適応フィルタ処理を用いるエコー消去装置の機能構成を示す図。
【図８】インパルス応答とその分割例を示す図。
【図９】従来のＭＤＦ法を適用した適応フィルタ処理を用いるエコー消去装置の機能構成を示す図。
【図１】
2004349796.tif 000003
【図２】
2004349796.tif 000004
【図３】
2004349796.tif 000005
【図４】
2004349796.tif 000006
【図５】
2004349796.tif 000007
【図６】
2004349796.tif 000008
【図７】
2004349796.tif 000009
【図８】
2004349796.tif 000010
【図９】
2004349796.tif 000011