(57)【要約】【課題】エコー経路が複数の場合にも対応でき、かつエコー到達時間の変動にも対応可能なエコー抑制システム及び方法を提供する。【解決手段】全二重通話システムに適用されるエコー抑制方法であって、参照信号とエコー信号に基づいて、一又は複数のエコー経路のエコー到達時間を検出し、検出された到達時間の個数分の疑似エコー信号を計算し、計算された疑似エコー信号を重ね合わせて全体の疑似エコー信号を求め、全体の疑似エコー信号をエコー信号から減算する。参照信号とエコー信号にＦＦＴ処理を行い、振幅スペクトルのみを用いて同様のエコー抑制処理を行う。【選択図】　図６
2004088647.tif 000002
【特許請求の範囲】
【請求項１】
全二重通話システムに備えられるエコー抑制システムであって、
参照信号とエコー信号に基づいて、一又は複数のエコー経路のエコー到達時間を検出する到達時間検出部と、
検出された前記到達時間の個数分の疑似エコー信号を計算する疑似エコー計算フィルタと、
計算された前記疑似エコー信号を重ね合わせて全体の疑似エコー信号を求める加算器と、
全体の前記疑似エコー信号を前記エコー信号から減算する減算器とを含むことを特徴とするエコー抑制システム。
【請求項２】
前記到達時間検出部において、
前記参照信号と前記エコー信号との相関係数を算出し、前記相関係数が所定のしきい値よりも大きい場合に相当する時間差を前記到達時間として検出する請求項１に記載のエコー抑制システム。
【請求項３】
全二重通話システムに備えられるエコー抑制システムであって、
参照信号とエコー信号に基づいて、所定の窓長分の高速フーリエ変換に代表される直交変換処理を行い、それぞれの振幅スペクトルと位相スペクトルを求める窓掛・直交変換処理部と、
前記参照信号の振幅スペクトルと前記エコー信号の振幅スペクトルに基づいて、一又は複数のエコー到達時間を検出する到達時間検出部と、
検出された前記到達時間の個数分の疑似エコー信号の振幅スペクトルを計算する疑似エコー計算フィルタと、
計算された前記疑似エコー信号の振幅スペクトルを重ね合わせて全体の疑似エコー信号の振幅スペクトルを求める加算器と、
全体の前記疑似エコー信号の振幅スペクトルを前記エコー信号の振幅スペクトルから減算してエコー抑制信号の振幅スペクトルを求める減算器と、
前記エコー抑制信号の振幅スペクトルと、前記エコー信号の位相スペクトルに基づいて逆直交変換処理を行い、その後オーバーラップ処理を行うことでエコー抑制信号を求める逆直交変換・オーバーラップ処理部を含むことを特徴とするエコー抑制システム。
【請求項４】
前記到達時間検出部において、
前記参照信号の振幅スペクトルと前記エコー信号の振幅スペクトルとの相関係数を算出し、前記相関係数が所定のしきい値よりも大きい場合に相当するサンプル数を前記到達時間として検出する請求項３に記載のエコー抑制システム。
【請求項５】
全二重通話システムに適用されるエコー抑制方法であって、
参照信号とエコー信号に基づいて、一又は複数のエコー経路のエコー到達時間を検出する工程と、
検出された前記到達時間の個数分の疑似エコー信号を計算する工程と、
計算された前記疑似エコー信号を重ね合わせて全体の疑似エコー信号を求める工程と、
全体の前記疑似エコー信号を前記エコー信号から減算する工程とを含むことを特徴とするエコー抑制方法。
【請求項６】
全二重通話システムに適用されるエコー抑制方法であって、
参照信号とエコー信号に基づいて、所定の窓長分の高速フーリエ変換に代表される直交変換処理を行い、それぞれの振幅スペクトルと位相スペクトルを求める工程と、
前記参照信号の振幅スペクトルと前記エコー信号の振幅スペクトルに基づいて、一又は複数のエコー経路のエコー到達時間を検出する工程と、
検出された前記到達時間の個数分の疑似エコー信号の振幅スペクトルを計算する工程と、
計算された前記疑似エコー信号の振幅スペクトルを重ね合わせて全体の疑似エコー信号の振幅スペクトルを求める工程と、
全体の前記疑似エコー信号の振幅スペクトルを前記エコー信号の振幅スペクトルから減算してエコー抑制信号の振幅スペクトルを求める工程と、
前記エコー抑制信号の振幅スペクトルと、前記エコー信号の位相スペクトルに基づいて逆直交変換処理を行い、その後オーバーラップ処理を行うことでエコー抑制信号を求める工程とを含むことを特徴とするエコー抑制方法。
【請求項７】
全二重通話システムに適用されるエコー抑制方法を具現化するコンピュータ実行可能なプログラムであって、
参照信号とエコー信号に基づいて、一又は複数のエコー経路のエコー到達時間を検出するステップと、
検出された前記到達時間の個数分の疑似エコー信号を計算するステップと、
計算された前記疑似エコー信号を重ね合わせて全体の疑似エコー信号を求めるステップと、
全体の前記疑似エコー信号を前記エコー信号から減算するステップとを含むことを特徴とするコンピュータ実行可能なプログラム。
【請求項８】
全二重通話システムに適用されるエコー抑制方法を具現化するコンピュータ実行可能なプログラムであって、
参照信号とエコー信号に基づいて、所定の窓長分の高速フーリエ変換に代表される直交変換処理を行い、それぞれの振幅スペクトルと位相スペクトルを求めるステップと、
前記参照信号の振幅スペクトルと前記エコー信号の振幅スペクトルに基づいて、一又は複数のエコー経路のエコー到達時間を検出するステップと、
検出された前記到達時間の個数分の疑似エコー信号の振幅スペクトルを計算するステップと、
計算された前記疑似エコー信号の振幅スペクトルを重ね合わせて全体の疑似エコー信号の振幅スペクトルを求めるステップと、
全体の前記疑似エコー信号の振幅スペクトルを前記エコー信号の振幅スペクトルから減算してエコー抑制信号の振幅スペクトルを求めるステップと、
前記エコー抑制信号の振幅スペクトルと、前記エコー信号の位相スペクトルに基づいて逆直交変換処理を行い、その後オーバーラップ処理を行うことでエコー抑制信号を求めるステップとを含むことを特徴とするコンピュータ実行可能なプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、全二重通信を行う通信システムや自動音声対話システムに適用されるエコー抑制システム及び方法に関する。
【０００２】
【従来の技術】
インターネットの普及に伴い、インターネットを利用した様々なサービスが提供されるようになり、ＶｏＩＰ（Ｖｏｉｃｅ　Ｏｖｅｒ　ＩＰ）等の技術を用いた、いわゆるコンピュータテレフォニーシステムも各種のアプリケーションに適用されつつある。以下、従来のＶｏＩＰ技術を適用した全二重通話システムについて説明する。
【０００３】
図１は全二重通話システムを模式的に示した図である。図１において、１０と２０が通話者を示しており、１０が話者となり、話者１０が発した話者音声が通話相手２０側に伝わる場合を例に説明する。図１において、１１及び２１はマイクロフォンを、１２及び２２はスピーカを、１３及び２３がＶｏＩＰアプリケーションを、１４及び２４は端末装置を、３０はインターネットを、それぞれ示している。なお、通信インタフェースやその他のデバイス等は説明の便宜上省略している。
【０００４】
まず、話者１０がマイクロフォン１１に向かって音声入力を行うと、ＶｏＩＰアプリケーション１３が当該音声を受け付け、サンプリング処理等の必要な処理を行ってから、端末装置１４からパケットデータとしてインターネット３０に送信される。各パケットデータはインターネット上でのルーティング結果に従って所定の端末装置２４に到達し、当該端末装置２４上でパケットデータが順に組み立てられ、ＶｏＩＰアプリケーション２３において必要な処理が行われた後、スピーカ２２から音声信号として出力されることになる。
【０００５】
ここで、スピーカ２２から出力された音声は、通話相手２０に届くとともに、回り込みが生じることからマイクロフォン２１に音声として再入力されてしまう場合がある。この場合、マイクロフォン２１から再入力された音声は、端末装置２４におけるＶｏＩＰアプリケーション２３、インターネット３０、端末装置１４におけるＶｏＩＰアプリケーション１３を介して、スピーカ１２からエコーを含む音声として出力されることとなり、一種のループが形成され、結果としてエコーが生じることになる。
【０００６】
このエコーを生じるループを形成する経路（エコー経路）には、伝送遅延が生じている。すなわち、話者１０は、自らマイクロフォン１１に入力した自分の音声を、少し遅れてスピーカ１２から聞くこととなる。したがって、話者１０にとってはとても話しづらく、相手の音声も聞きづらいものとなってしまう。
【０００７】
また、エコーのレベルが非常に大きく、エコーが減衰せずに発散する場合等においては、いわゆるハウリングと呼ばれる現象が生じ、通話自体を行うことが困難となる状態になってしまう。
【０００８】
かかる問題点を解消するために、通常はエコーキャンセラを用いることが多い。図２は、エコーキャンセラの例を用いたエコー抑制システムを模式的に示した図である。図２において、話者１０側の端末装置１４は、エコーキャンセラ１５を有している。エコーキャンセラ１５は、スピーカ１２を介して出力される信号を入力として取り込み、当該取り込んだ信号分からマイクロフォン１１からの入力信号分を減ずることにより、マイクロフォン２１に回り込んで再入力された音声信号を打ち消す構成となっている。
【０００９】
エコーキャンセラ１５は、音響特性検出部１５１、調整部１５２、エコー抑制処理部１５３を備えている。入力信号は、話者１０の音声信号とエコー経路を介して返ってきた応答信号であり、出力信号は、スピーカ１２に対する出力音声信号である。
【００１０】
音響特性検出部１５１は、話者側から見たエコー経路の音響特性情報を検出する部分である。具体的には、話者音声信号とエコー経路を介して返ってきた応答信号からエコー経路の音響特性情報を検出することになる。例えば、話者音声信号に演算処理を施した信号と応答信号との差分が‘０（ゼロ）’となるように調整し、エコー経路の音響特性情報を求める。
【００１１】
調整部１５２は、話者によるエコー抑制のためのチューニングを受け付け、チューニング信号を生成する部分である。
【００１２】
エコー抑制処理部１５３は、音響特性検出部１５１により検出された音響特性情報に基づいて話者音声信号からエコー抑制信号を生成し、通話相手側システムから返ってきた音声信号からエコー抑制信号分を減算してエコーを抑制するものである。
【００１３】
図３は、エコーキャンセラ１５を中心とした具体的なモジュール構成の一例を示した図である。３１がＦＩＲフィルタ（ｆｉｎｉｔｅ　ｉｍｐｕｌｓｅ　ｒｅｓｐｏｎｓｅ　ｆｉｌｔｅｒ）等で構成する音響特性フィルタを、３２が係数更新器を、３３及び３４が減算器を、それぞれ示している。なお、３５はゲイン調整器を示している。
【００１４】
ここで、図２に示すエコーキャンセラ１５の各部と、図３に示す具体的なモジュールとの関係は以下のようになる。
【００１５】
図２における音響特性検出部１５１は、図３における音響特性フィルタ３１と係数更新器３２と減算器３３に相当する。音響特性検出部１５１は、話者側から見たエコー経路の音響特性情報を検出する部分であり、参照信号となる話者音声信号（図３における信号ａ）とエコー経路を介して返ってきたエコー信号（図３における信号ｂ）からエコー経路の音響特性情報を検出する。例えば、後述するように、話者音声信号に音響特性フィルタ３１の演算処理を施した信号（図３における信号ｆ）とエコー信号（図３における信号ｂ）との差分信号（図３における信号ｄ）を減算器３３により求め、当該差分信号ｄのパワーが‘０’となるように係数更新器３２により調整する。この結果、音響特性フィルタ３１の係数は、エコー経路の音響特性情報に相当する演算の係数となる。
【００１６】
図２における調整部１５２は、図３におけるゲイン調整器３５に相当する。話者自身によるチューニングが可能となるように外部入力手段を有するものであり、ゲイン調整器３５のゲイン量を話者自身が調整することができる。ゲイン係数ｇは例えば、０．０〜１．０の間で調整できるものとする。ゲイン係数ｇを０．０とすれば、エコー抑制処理を施さないことになる。したがって、話者自身によるゲイン量の調整によって、エコー抑制処理部によるエコー抑制処理の実行と停止を選択できることになる。
【００１７】
図２におけるエコー抑制処理部１５３は、図３における音響特性フィルタ３１とゲイン調整器３５と減算器３４に相当する。エコー抑制信号の生成にあたり、取り込んだ参照信号である話者音声信号（図３における信号ａ）に対して音響特性検出部１５１として係数が調整されている音響特性フィルタ３１により音響特性情報を反映した演算処理を施し（図３における信号ｆ）、さらにゲイン調整器３５により話者自身によるチューニングを施してエコー抑制信号（図３における信号ｃ＝ｇ・ｆ）を生成し、減算器３４において通話相手側システムから返ってきたエコー信号（図３における信号ｂ）からエコー抑制信号分（図３における信号ｃ）を減算してエコーを抑制した信号（図３における信号ｅ）を生成してスピーカ１２に出力する。
【００１８】
【発明が解決しようとする課題】
しかしながら、一般の全二重通信システムにおいて、エコー経路が単独で存在することは少なく、むしろ複数のエコー経路が存在するのが通常である。すなわち、図４に示すように、ＩＰ網と電話網とを接続した単純な例について考えてみても、端末Ｂまでのエコー経路３以外に、ＩＰ網と電話網とを接続する中継局１までのエコー経路１、２つ目のＩＰ網と電話網とを接続するＰＢＸ２までのエコー経路２を想定することができ、複数のエコー経路の存在を想定することができる。
【００１９】
このような場合、エコーキャンセラ１５によりエコー経路１に対応したフィルタ係数を更新したとしても、他のエコー経路に対してはエコー抑制効果は期待できないという問題点があった。
【００２０】
すなわち、エコー経路１よりもエコー経路２及び３の方がエコー到達時間が長くなってしまうことから、フィルタにおける次数、すなわちエコー制御を行うことができるサンプル数を超えてしまい、従来のエコーキャンセラではＦＩＲフィルタの出力信号である疑似エコー信号ｃｉとして、適当な信号を出力することができなくなってしまうからである。
【００２１】
また、壁や天井の音反射の条件が変化する場合、あるいはマイクの位置やスピーカの位置が変化する等の環境要素の変動によって、エコーの到達時間そのものにゆらぎが生じる場合も想定できる。かかる場合においても、従来のエコーキャンセラにおける疑似エコー信号ｃｉでは、エコー抑制効果が減少してしまうという問題点が残されていた。
【００２２】
本発明は、上述したような問題点を解決するために、エコー経路が複数の場合にも対応でき、かつエコー到達時間の変動にも対応可能なエコー抑制システム及び方法を提供することを目的とする。
【００２３】
【課題を解決するための手段】
上記目的を達成するために本発明にかかるエコー抑制システムは、全二重通話システムに備えられるエコー抑制システムであって、参照信号とエコー信号に基づいて、一又は複数のエコー経路のエコー到達時間を検出する到達時間検出部と、検出された到達時間の個数分の疑似エコー信号を計算する疑似エコー計算フィルタと、計算された疑似エコー信号を重ね合わせて全体の疑似エコー信号を求める加算器と、全体の疑似エコー信号をエコー信号から減算する減算器とを含むことを特徴とする。
【００２４】
かかる構成により、エコー経路ごとのエコー到達時間を検出し、当該エコー到達時間に応じた疑似エコー信号を生成することによって、異なるエコー経路が複数存在する場合であっても、おのおののエコー信号に対してエコー抑制を効果的に行うことが可能となる。
【００２５】
また、本発明にかかるエコー抑制システムは、到達時間検出部において、参照信号と前記エコー信号との相関係数を算出し、相関係数が所定のしきい値よりも大きい場合に相当する時間差を到達時間として検出することが好ましい。相関度が高いということは、当該時間差だけ遅れた回り込み入力である可能性が高いからである。
【００２６】
次に、上記目的を達成するために本発明にかかるエコー抑制システムは、全二重通話システムに備えられるエコー抑制システムであって、参照信号とエコー信号に基づいて、所定の窓長分のＦＦＴ（高速フーリエ変換）処理等の直交変換処理を行い、それぞれの振幅スペクトルと位相スペクトルを求める窓掛・直交変換処理部と、参照信号の振幅スペクトルとエコー信号の振幅スペクトルに基づいて、一又は複数のエコー経路のエコー到達時間を検出する到達時間検出部と、検出された到達時間の個数分の疑似エコー信号の振幅スペクトルを計算する疑似エコー計算フィルタと、計算された疑似エコー信号の振幅スペクトルを重ね合わせて全体の疑似エコー信号の振幅スペクトルを求める加算器と、全体の疑似エコー信号の振幅スペクトルをエコー信号の振幅スペクトルから減算してエコー抑制信号の振幅スペクトルを求める減算器と、エコー抑制信号の振幅スペクトルと、エコー信号の位相スペクトルに基づいて逆直交変換処理を行い、その後オーバーラップ処理を行うことでエコー抑制信号を求める逆直交変換・オーバーラップ処理部を含むことを特徴とする。
【００２７】
かかる構成により、到達時間の変動の影響が小さい振幅スペクトルのみを用いてエコー抑制処理を行うことにより、環境条件の変動等によりエコー到達時間が変動する場合であっても、効果的にエコー抑制を行うことが可能となる。
【００２８】
また、本発明にかかるエコー抑制システムは、到達時間検出部において、参照信号の振幅スペクトルとエコー信号の振幅スペクトルとの相関係数を算出し、相関係数が所定のしきい値よりも大きい場合に相当するサンプル数を到達時間として検出することが好ましい。相関度が高いということは、当該サンプル数だけ遅れた回り込み入力である可能性が高いからである。
【００２９】
また、本発明は、上記のようなエコー抑制システムの機能をコンピュータの処理ステップとして実行するソフトウェアを特徴とするものであり、具体的には、全二重通話システムに適用されるエコー抑制方法であって、参照信号とエコー信号に基づいて、一又は複数のエコー経路のエコー到達時間を検出する工程と、検出された到達時間の個数分の疑似エコー信号を計算する工程と、計算された疑似エコー信号を重ね合わせて全体の疑似エコー信号を求める工程と、全体の疑似エコー信号をエコー信号から減算する工程とを含むエコー抑制方法並びにそのような工程を具現化するコンピュータ実行可能なプログラムであることを特徴とする。
【００３０】
かかる構成により、コンピュータ上へ当該プログラムをロードさせ実行することで、エコー経路ごとのエコー到達時間を検出し、当該エコー到達時間に応じた疑似エコー信号を生成することによって、異なるエコー経路が複数存在する場合であっても、おのおののエコー信号に対してエコー抑制を効果的に行うことができるエコー抑制システムを実現することが可能となる。
【００３１】
また、本発明は、上記のようなエコー抑制システムの機能をコンピュータの処理ステップとして実行するソフトウェアを特徴とするものであり、具体的には、全二重通話システムに適用されるエコー抑制方法であって、参照信号とエコー信号に基づいて、所定の窓長分のＦＦＴ処理等の直交変換処理を行い、それぞれの振幅スペクトルと位相スペクトルを求める工程と、参照信号の振幅スペクトルとエコー信号の振幅スペクトルに基づいて、一又は複数のエコー経路のエコー到達時間を検出する工程と、検出された到達時間の個数分の疑似エコー信号の振幅スペクトルを計算する工程と、計算された疑似エコー信号の振幅スペクトルを重ね合わせて全体の疑似エコー信号の振幅スペクトルを求める工程と、全体の疑似エコー信号の振幅スペクトルをエコー信号の振幅スペクトルから減算してエコー抑制信号の振幅スペクトルを求める工程と、エコー抑制信号の振幅スペクトルと、エコー信号の位相スペクトルに基づいて逆直交変換処理を行い、その後オーバーラップ処理を行うことでエコー抑制信号を求める工程とを含むエコー抑制方法並びにそのような工程を具現化するコンピュータ実行可能なプログラムであることを特徴とする。
【００３２】
かかる構成により、コンピュータ上へ当該プログラムをロードさせ実行することで、到達時間の変動に影響されない振幅スペクトルのみを用いてエコー抑制処理を行うことにより、環境条件の変動等によりエコー到達時間が変動する場合であっても、効果的にエコー抑制を行うことができるエコー抑制システムを実現することが可能となる。
【００３３】
【発明の実施の形態】
（実施の形態１）
以下、本発明の実施の形態１にかかるエコー抑制システムについて、図面を参照しながら説明する。図５に本発明の実施の形態１にかかるエコー抑制システムにおけるエコーキャンセラ１５の構成図を示す。
【００３４】
図５におけるエコーキャンセラ１５の基本的な構成自体は、図３と同様であるが、説明を簡単にするために、ＦＩＲフィルタ（ｆｉｎｉｔｅ　ｉｍｐｕｌｓｅ　ｒｅｓｐｏｎｓｅ　ｆｉｌｔｅｒ）等で構成する音響特性フィルタ３１、係数更新器３２、減算器３３、ゲイン調整器３５を併せて、一つの疑似エコー計算フィルタ５１として表示している。
【００３５】
そして、本実施の形態１においては、当該疑似エコー計算フィルタ５１が複数個用意されているとともに、エコーの到達時間を検出する到達時間検出部５２と、検出された到達時間に応じた疑似エコー計算フィルタ５１の段数を指定するフィルタ段数指定部５３とが設けられている点に特徴を有する。
【００３６】
すなわち、到達時間検出部５２においてエコーの到達時間を各エコーごとに検出し、検出された到達時間ごとに対応するタップ数をフィルタ段数指定部５３において指定する。具体的には疑似エコー計算フィルタ５１におけるサンプル数を示している次数ｎを指定することになる。そして、次数ｎの異なるエコー経路分の多段疑似エコー計算フィルタ５１を設けることによって、エコー経路が複数存在する場合においてもエコー抑制効果を得ることができる。
【００３７】
到達時間検出部５２におけるエコーの到達時間の検出方法としては、例えば参照信号ａｉと、エコー信号ｂｉとの相関係数ｃｏｒｒｄを用いる方法が考えられる。すなわち、まず（数１）に従って、参照信号ａｉとエコー信号ｂｉとの相関係数ｃｏｒｒｄを求める。
【００３８】
【数１】
2004088647.tif 000003
【００３９】
なお、（数１）において、ｄは現在のサンプルとの差を示しており、その上限値がｄＭＡＸである自然数である。すなわち、（数１）における相関係数ｃｏｒｒｄは、現在のサンプルにおけるエコー信号ｂｉと、ｄサンプル過去のエコー信号（ａｉ）ｄとの相関係数を示しており、参照信号ａｉとエコー信号ｂｉのサンプル差ｄごとに、サンプル差がｄＭＡＸになるまで、それぞれのサンプル差ｄに対応する相関係数ｃｏｒｒｄを求めることになる。また、ｍは相関係数の計算に用いるサンプル数である。
【００４０】
そして、到達時間検出部５２において、相関係数ｃｏｒｒｄが所定の値以上の大きさを有するサンプル差ｄを検出する。すなわち、到達時間ｄサンプル後に到達したエコー信号ｂｉとの相関度が高い場合にはエコー到達時間がｄであると考えられることから、当該相関係数ｃｏｒｒｄに対応するｄ１、ｄ２、・・、ｄｍ（ｍは自然数）をエコー到達時間として求めることになる。かかる到達時間の個数ｍが、エコー経路の数に相当し、その数だけ擬似エコー計算フィルタ５１を用意することになる。
【００４１】
そして、次数ｎの異なるエコー経路分の多段疑似エコー計算フィルタ５１から出力される各々の疑似エコー信号を加算器５４で一つの信号にし、減算器５５においてエコー信号ｂｉから減算することによって、エコーの抑制されたエコー抑制信号ｅｉを得ることが可能となる。
【００４２】
ここで、エコー経路ごとの疑似エコー計算フィルタ５１における係数更新例として、ＦＩＲフィルタ（ｆｉｎｉｔｅ　ｉｍｐｕｌｓｅ　ｒｅｓｐｏｎｓｅ　ｆｉｌｔｅｒ）を用い、学習同定法に基づいて係数を更新する場合について説明する。
【００４３】
ＦＩＲフィルタによる演算処理は（数２）のように表わすことができる。
【００４４】
【数２】
2004088647.tif 000004
【００４５】
ここで、（ａｉ）はマイクロフォン１１からの参照信号、すなわちＦＩＲフィルタへの入力信号である。（ｃｉ）はＦＩＲフィルタの出力信号を示している。添え字の（ｉ）はサンプル番号を示す。（ｈｊ）はフィルタ係数を示し、ｎは次数を表わしている。したがって、到達時間に応じてサンプル数、すなわち次数ｎが異なる複数個のＦＩＲフィルタが設定されることになる。
【００４６】
次に、フィルタ係数（ｈｊ）の更新は（数３）のように表わされる。
【００４７】
【数３】
2004088647.tif 000005
【００４８】
ここで、αは一般的には定数であり、０．０＜α＜１．０である。また、（ｂｉ）は通話相手側システムからのエコー信号である。スピーカ１２に渡される信号ｅｉは（数２）に示すように、ｅｉ＝ｂｉ−ｃｉで求めることになる。
【００４９】
次に、本発明の実施の形態にかかるエコー抑制システムを実現するプログラムの処理の流れについて説明する。図６に本発明の実施の形態にかかるエコー抑制システムを実現するプログラムの処理の流れ図を示す。
【００５０】
図６において、まず参照信号ａｉに対するエコー信号ｂｉを検出して（ステップＳ６０１）、参照信号とエコー信号との相関係数を、サンプル差ｄがｄＭＡＸになるまで（ステップＳ６０２）、サンプル差ｄにおいて算出する（ステップＳ６０３）。
【００５１】
次に、相関係数が所定の値以上の大きさを有する場合には（ステップＳ６０４：Ｙｅｓ）、信号間の相関度が高いと判断され、当該サンプル差ｄをエコー到達時間として検出する（ステップＳ６０５）。これらの処理をサンプル差ｄがｄＭＡＸになるまで繰り返し処理することになる。
【００５２】
次に、検出された到達時間に応じて、使用する疑似エコーフィルタの段数を、複数の次数ｎを指定することによって確定する（ステップＳ６０６）。そして、各段における疑似エコー信号ｃｉ（ｎ）を計算することになる（ステップＳ６０７）。
【００５３】
最後に、計算された疑似エコーフィルタ各段における疑似エコー信号ｃｉ（ｎ）を重ね合わせてから（ステップＳ６０９）、エコー信号ｂｉから減算することによって、エコー抑制信号ｅｉを求めることになる（ステップＳ６１０）。
【００５４】
以上のように本実施の形態１によれば、エコー経路ごとのエコー到達時間を検出し、当該エコー到達時間に応じた疑似エコー信号を生成することによって、異なるエコー経路が複数存在する場合であっても、おのおののエコー信号に対してエコー抑制を効果的に行うことが可能となる。
【００５５】
（実施の形態２）
次に、本発明の実施の形態２にかかるエコー抑制システムについて、図面を参照しながら説明する。図７は本発明の実施の形態２にかかるエコー抑制システムにおけるエコーキャンセラ１５の構成図を示す。
【００５６】
図７におけるエコーキャンセラ１５の基本的な構成自体は、図３と同様であるが、実施の形態１と同様に説明を簡単にするため、音響特性フィルタ３１、係数更新器３２、減算器３３、ゲイン調整器３５を併せて、一つの疑似エコー計算フィルタ７７として表示している。
【００５７】
本実施の形態２においては、実施の形態１とは異なり、参照信号ａｉに対するエコー信号ｂｉにＦＦＴ（Ｆａｓｔ　Ｆｏｕｒｉｅｒ　Ｔｒａｎｓｆｏｒｍ：高速フーリエ変換）処理を施すことにより振幅スペクトルを求め、当該振幅スペクトルに対してエコー抑制処理を行うことによって、到達時間のゆらぎにより影響を受けやすい位相スペクトルを用いることなくエコー抑制信号ｅｉを求める点に特徴を有している。
【００５８】
まず窓掛処理部７１において、ハミング窓あるいはハニング窓を用いて、例えば５０％のオーバーラップを行いつつ参照信号ａｉからＦＦＴの窓長分に相当する１サンプル分の信号を抽出する。本実施の形態２においては、ＦＦＴ処理を１サンプル単位で行うものとする。また、窓長のサンプル数は一般に２のべき乗であるが、本実施の形態２においてはサンプル数をｎとする。
【００５９】
例えば、参照信号ａｉにハニング窓ｗｉｎｉを乗ずることによって、ＦＦＴの窓長分の信号ａ’ｉを抽出する場合には、（数４）のような処理となる。
【００６０】
【数４】
2004088647.tif 000006
【００６１】
なお、（数４）において、ｉは１からｎまでの自然数を意味している。また、ハニング窓ｗｉｎｉは、（数５）に従って計算することになる。
【００６２】
【数５】
2004088647.tif 000007
【００６３】
参照信号ａｉに対する上述したような窓掛け処理を、エコー信号ｂｉについても窓掛処理部７３において、同様に行うことになる。
【００６４】
次に、ＦＦＴ処理部７２においては、抽出した参照信号ａ’ｉについて窓長ｎのＦＦＴ処理を行い、窓長分の参照信号ａ’ｉについての振幅スペクトルと位相スペクトルを計算することになる。
【００６５】
具体的には、抽出された窓長分の参照信号ａ’ｉのＦＦＴ処理の結果である複素数Ａｆ（＝Ａｒｆ＋ｊＡｊｆ）を（数６）に従って計算し、周波数領域における信号Ａｆの大きさである振幅スペクトルａｍｐ＿ａｆを求めることになる。
【００６６】
【数６】
2004088647.tif 000008
【００６７】
なお、（数６）において、ｆは周波数領域のサンプル番号を示しており、ｎをサンプリング周波数とすると、１からｎ／２−１までの自然数となる。また、Ａｆは複素数であり、実軸成分Ａｒｆと虚軸成分Ａｊｆとで構成されていることから、信号Ａｆの大きさである振幅スペクトルａｍｐ＿ａｆは（数６）のように求めることになる。
【００６８】
参照信号ａｉに対する上述したようなＦＦＴ処理を、エコー信号ｂｉについてもＦＦＴ処理部７４において同様に行い、エコー信号ｂｉの振幅スペクトルであるａｍｐ＿ｂｆを求めることになる。
【００６９】
次に、参照信号ａｉの振幅スペクトルａｍｐ＿ａｆと、エコー信号ｂｉの振幅スペクトルａｍｐ＿ｂｆとの相関係数ｃｏｒｒｄを、（数７）に従って求める。
【００７０】
【数７】
2004088647.tif 000009
【００７１】
なお、（数７）において、ｄは現在のサンプルとの差を示しており、その上限値がｄＭＡＸである自然数である。すなわち、（数７）における相関係数ｃｏｒｒｄは、現在のサンプルにおける振幅スペクトルａｍｐ＿ｂｆと、ｄサンプル過去の振幅スペクトル（ａｍｐ＿ａｆ）ｄとの相関係数を示しており、参照信号ａｉとエコー信号ｂｉの、サンプル差がｄＭＡＸになるまで、サンプル差ｄに対応する相関係数ｃｏｒｒｄを求めることになる。
【００７２】
そして、到達時間検出部７５において、相関係数ｃｏｒｒｄが所定の値以上の大きさを有するサンプル差ｄを検出する。すなわち、到達時間ｄサンプル後に到達したエコー信号ｂｉの振幅スペクトルａｍｐ＿ｂｆとの相関度が高い場合にはエコー到達時間がｄであると考えられることから、当該相関係数ｃｏｒｒｄに対応するｄ１、ｄ２、・・、ｄｍ（ｍは自然数）をエコー到達時間として求めることになる。かかる到達時間の個数ｍが、エコー経路の数に相当し、その数だけ擬似エコー計算フィルタ７７を用意することになる。また、エコー到達時間吸収部７６において、エコー到達時間ｄ１、ｄ２、・・、ｄｍ（ｍは自然数）のそれぞれに対応する遅延処理を、参照信号ａｉの振幅スペクトルａｍｐ＿ａｆに対して行う。
【００７３】
次に、擬似エコー計算フィルタ７７では、ｍ個の到達時間に対応するエコー信号ｂｉの振幅スペクトルａｍｐ＿ｂｆのそれぞれに対して、擬似エコーの振幅スペクトルを求めることになる。
【００７４】
ここで、本実施の形態２においては、ＦＦＴ処理を行って振幅スペクトルを求めていることから、回り込み音声以外の外部入力の影響により相関係数の演算が収束しない場合も考えうる。
【００７５】
例えば、図８に示すように参照信号ａｉの振幅スペクトルａｍｐ＿ａｆ８２と、エコー信号ｂｉの振幅スペクトルａｍｐ＿ｂｆ８３とが与えられている場合に、外部信号ｓｐｅｅｃｈがエコー信号ｂｉの振幅スペクトル８３に加わると、参照信号ａｉの振幅スペクトル８２との相関が失われた信号ａｍｐ＿ｂｆ＋ｓｐｅｅｃｈ８４が生成されてしまう。かかる弊害が生じる状態を一般にダブルトーク状態と呼んでいる。
【００７６】
そこで、本実施の形態２では、かかるダブルトーク状態の影響を低減するために、（数８）を用いることで、ゲイン（ｇｆ）ｄｋを求めている。ここでｋは１からｍまでの自然数であり、エコー信号の番号を示している。また、（ｇｆ）’ｄｋは更新前のゲインを、βは更新係数（０．０≦β≦１．０）を示している。
【００７７】
【数８】
2004088647.tif 000010
【００７８】
（数８）に示すように、参照信号ａｉの振幅スペクトルａｍｐ＿ａｆに対するゲインを算出することにより、振幅スペクトルａｍｐ＿ｂｆに外部信号ｓｐｅｅｃｈが含まれていても、振幅スペクトルａｍｐ＿ａｆとの相関の計算によって、その影響は０（ゼロ）に近づくことから、外部信号ｓｐｅｅｃｈによる影響を効果的に低減することができるようになる。
【００７９】
そして、外部信号ｓｐｅｅｃｈによる影響を低減した上で求まったゲイン（ｇｆ）ｄｋを用いながら、（数９）に示すように、各エコー信号ｂｉに対応する擬似エコーの振幅スペクトルを計算することになる。なお、（数９）において、ｆは１からｎ／２−１の自然数である。
【００８０】
【数９】
2004088647.tif 000011
【００８１】
そして、加算器７８において、（数９）で計算した各エコー信号ｂｉに対応する擬似エコーの振幅スペクトル（ａｍｐ＿ｃｆ）ｄｋを重ね合わせることによって、全体の擬似エコーの振幅スペクトルａｍｐ＿ｃｆを計算する。
【００８２】
次に、減算器７９において、（数１０）に示すように、エコー信号ｂｉの振幅スペクトルａｍｐ＿ｂｆから、求められた擬似エコーの振幅スペクトルａｍｐ＿ｃｆを減算することによって、エコー抑制後のエコー信号ｂｉの振幅スペクトルａｍｐ＿ｅｆを求める。
【００８３】
【数１０】
2004088647.tif 000012
【００８４】
最後に、エコー抑制後のエコー信号ｂｉの振幅スペクトルａｍｐ＿ｅｆと、ＦＦＴ処理部７４で計算されたエコー信号ｂｉの位相スペクトルとを用いて、いわゆる逆ＦＦＴ処理（ＩＦＦＴ：Ｉｎｖｅｒｓｅ　ＦＦＴ）をＩＦＦＴ処理部８０で行い、オーバーラップ加算処理部８１で、窓掛処理部７１及び７３におけるオーバーラップ率と同じオーバーラップ率でオーバーラップ加算を行うことによって、エコー抑制結果を得ることができる。
【００８５】
次に、本発明の実施の形態２にかかるエコー抑制システムを実現するプログラムの処理の流れについて説明する。図９に本発明の実施の形態２にかかるエコー抑制システムを実現するプログラムの処理の流れ図を示す。
【００８６】
図９において、まずハミング窓あるいはハニング窓を用いて窓掛処理を行い（ステップＳ９０１）、参照信号ａｉからＦＦＴの窓長分に相当する信号を抽出する。エコー信号ｂｉについても同様の窓掛処理を行う。
【００８７】
次に、抽出された参照信号あるいはエコー信号について窓長分のＦＦＴ処理を行い（ステップＳ９０２）、窓長分の参照信号あるいはエコー信号についての振幅スペクトルと位相スペクトルを計算する。
【００８８】
そして、参照信号の振幅スペクトルと、エコー信号の振幅スペクトルとの相関係数を、サンプル差ｄがｄＭＡＸになるまで（ステップＳ９０３）、サンプル差ｄにおいて算出する（ステップＳ９０４）。
【００８９】
次に、相関係数が所定の値以上の大きさを有する場合には（ステップＳ９０５：Ｙｅｓ）、振幅スペクトル間の相関度が高いと判断され、当該サンプル差ｄをエコー到達時間として検出する（ステップＳ９０６）。これらの処理をサンプル差ｄがｄＭＡＸになるまで繰り返し処理することになる。
【００９０】
そして、検出されたエコー到達時間に対して、疑似エコーの振幅スペクトルをそれぞれ計算してから（ステップＳ９０７）、疑似エコーの振幅スペクトルの重ね合わせ処理を行い（ステップＳ９０８）。疑似エコーの全体の振幅スペクトルを求めることになる。
【００９１】
次に、求まった疑似エコーの全体の振幅スペクトルを、エコー信号の振幅スペクトルから減算することによって、エコー抑制後のエコー信号の振幅スペクトルを算出する（ステップＳ９０９）。最後に、エコー抑制後のエコー信号の振幅スペクトルと、ＦＦＴ処理によって求められているエコー信号の位相スペクトルとを用いて、いわゆる逆ＦＦＴ処理を行い、窓掛処理におけるオーバーラップ率と同じオーバーラップ率でオーバーラップ加算を行うことによって、エコー抑制信号を求めることになる（ステップＳ９１０）。
【００９２】
以上のように本実施の形態２によれば、到達時間の変動の影響の小さい振幅スペクトルのみを用いてエコー抑制処理を行うことにより、環境条件の変動等によりエコー到達時間が変動する場合であっても、効果的にエコー抑制を行うことが可能となる。
【００９３】
なお、本発明の実施の形態にかかるエコー抑制システムを実現するプログラムは、通信プログラムの一部として、図１０に示すように、ＣＤ−ＲＯＭ１０２−１やフレキシブルディスク１０２−２等の可搬型記録媒体１０２だけでなく、通信回線の先に備えられた他の記憶装置１０１や、コンピュータ１０３のハードディスクやＲＡＭ等の記録媒体１０４のいずれに記憶されるものであっても良く、プログラム実行時には、プログラムはローディングされ、主メモリ上で実行される。
【００９４】
また、本発明の実施の形態にかかるエコー抑制システムにより計算された振幅スペクトル等についても、図１０に示すように、ＣＤ−ＲＯＭ１０２−１やフレキシブルディスク１０２−２等の可搬型記録媒体１０２だけでなく、通信回線の先に備えられた他の記憶装置１０１や、コンピュータ１０３のハードディスクやＲＡＭ等の記録媒体１０４のいずれに記憶されるものであっても良く、例えば本発明にかかるエコー抑制システムを含む通信システムを利用する際にコンピュータ１０３により読み取られる。
【００９５】
【発明の効果】
以上のように本発明にかかるエコー抑制システムによれば、エコー経路ごとのエコー到達時間を検出し、当該エコー到達時間に応じた疑似エコー信号を生成することによって、異なるエコー経路が複数存在する場合であっても、おのおののエコー信号に対してエコー抑制を効果的に行うことが可能となる。
【００９６】
また、本発明にかかるエコー抑制システムによれば、到達時間の変動の影響の小さい振幅スペクトルのみを用いてエコー抑制処理を行うことにより、環境条件の変動等によりエコー到達時間が変動する場合であっても、効果的にエコー抑制を行うことが可能となる。
【図面の簡単な説明】
【図１】一般的な全二重通信システムの概略構成図
【図２】従来のエコー抑制システムの構成図
【図３】従来のエコー抑制システムにおけるエコーキャンセラのモジュール構成図
【図４】従来のエコー抑制システムにおけるエコー経路の説明図
【図５】本発明の実施の形態１にかかるエコー抑制システムにおけるエコーキャンセラの構成図
【図６】本発明の実施の形態１にかかるエコー抑制システムを実現するプログラムにおける処理の流れ図
【図７】本発明の実施の形態２にかかるエコー抑制システムにおけるエコーキャンセラの構成図
【図８】ダブルトーク状態の説明図
【図９】本発明の実施の形態２にかかるエコー抑制システムを実現するプログラムにおける処理の流れ図
【図１０】コンピュータ環境の例示図
【符号の説明】
１、２、３　エコー経路
１０　話者
１１、２１　マイクロフォン
１２、２２　スピーカ
１３、２３　ＶｏＩＰアプリケーション
１４、２４　端末装置
１５　エコーキャンセラ
２０　通話相手
３０　インターネット
３１　音響特性フィルタ
３２　係数更新器
３３、３４、５５、７９　減算器
３５　ゲイン調整器
５１、７７　疑似エコー計算フィルタ
５２、７５　到達時間検出部
５３　フィルタ段数指定部
５４、７８　加算器
７１、７３　窓掛処理部
７２、７４　ＦＦＴ処理部
７６　エコー到達時間吸収部
８０　ＩＦＦＴ処理部
８１　オーバーラップ加算処理部
８２　参照信号ａｉの振幅スペクトル
８３　エコー信号ｂｉの振幅スペクトル
８４　８２との相関が失われた信号
１０１　回線先の記憶装置
１０２　ＣＤ−ＲＯＭやフレキシブルディスク等の可搬型記録媒体
１０２−１　ＣＤ−ＲＯＭ
１０２−２　フレキシブルディスク
１０３　コンピュータ
１０４　コンピュータ上のＲＡＭ／ハードディスク等の記録媒体
１５１　音響特性検出部
１５２　調整部
１５３　エコー抑制処理部
【図１】
2004088647.tif 000013
【図２】
2004088647.tif 000014
【図３】
2004088647.tif 000015
【図４】
2004088647.tif 000016
【図５】
2004088647.tif 000017
【図６】
2004088647.tif 000018
【図７】
2004088647.tif 000019
【図８】
2004088647.tif 000020
【図９】
2004088647.tif 000021
【図１０】
2004088647.tif 000022