(57)【要約】【課題】収音器と拡声器との間の音響系結合によるエコーを十分に抑圧した収音を可能にする。【解決手段】変換部１００は、マイクロホン１の出力信号またはスピーカ２の出力信号から線形エコーキャンセラ３の出力信号を減算器４で減算した信号の何れか一方を第１の信号、線形エコーキャンセラ３の出力信号を第２の信号として入力し、また近端音声の有無を検出している音声検出部５の音声検出信号を入力し、第１及び第２の信号の各周波数成分毎に、第１の信号と第２の信号とからエコーの漏れこみ具合の推定値を算出し、この算出した推定値に基づいて第１の信号を補正することで、第１の信号からエコーを除去した近端信号を生成して出力端子９に出力する。【選択図】図１
2008245320.tif 000002
【特許請求の範囲】
【請求項１】
収音器と拡声器との間の音響系結合によるエコーを抑圧する方法において、収音器の出力信号または収音器の出力信号からエコーキャンセラの出力信号を減算した信号の何れか一方を第１の信号、前記エコーキャンセラの出力信号を第２の信号とするとき、前記第１の信号と前記第２の信号とからエコーの漏れこみ具合の推定値を算出し、該算出した推定値に基づいて前記第１の信号を補正することを特徴とするエコー抑圧方法。
【請求項２】
収音器と拡声器との間の音響系結合によるエコーを抑圧する方法において、収音器の出力信号または収音器の出力信号からエコーキャンセラの出力信号を減算した信号の何れか一方を第１の信号、前記エコーキャンセラの出力信号を第２の信号とするとき、前記第１及び第２の信号の各周波数成分毎に、前記第１の信号と前記第２の信号とからエコーの漏れこみ具合の推定値を算出し、該算出した推定値に基づいて前記第１の信号を補正することを特徴とするエコー抑圧方法。
【請求項３】
収音器と拡声器との間の音響系結合によるエコーを抑圧する方法において、収音器の出力信号または収音器の出力信号からエコーキャンセラの出力信号を減算した信号の何れか一方を第１の信号、前記エコーキャンセラの出力信号の歪みを強調した信号を第２の信号とするとき、前記第１及び第２の信号の各周波数成分毎に、前記第１の信号と前記第２の信号とからエコーの漏れこみ具合の推定値を算出し、該算出した推定値に基づいて前記第１の信号を補正することを特徴とするエコー抑圧方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ハンズフリー電話器、カーステレオを再生しながらの音声認識装置など、拡声と収音が同時に行われる状況におけるエコー抑圧技術に関する。
【背景技術】
【０００２】
ハンズフリー電話器における収音器と拡声器との間の音響系結合によるエコーを抑圧する従来技術の構成例を図２６に示す。図２６において、入力端子１０に加わる通話相手の音声信号（遠端信号と呼ぶ）は、スピーカ２から遠端音声として拡声される。マイクロホン１には、必要な音、例えば話者の声（近端音声と呼ぶ）が入るとともに、スピーカ２から拡声された遠端音声が空間を通じて漏れこむ。この漏れこみはエコーと呼ばれる。また、遠端信号からマイクロホン１の出力信号まで、スピーカ２およびマイクロホン１を含めた音響伝達系を、エコー経路と呼ぶ。
【０００３】
出力端子９から近端信号として送りたいのは、近端音声のみであり、スピーカ２から拡声されて漏れこんだ遠端音声のエコーは除去したい。遠端音声が大きく漏れこむと、相手側に、遅延した遠端音声が、エコーとして聞こえることになり、遠端での発話が困難になる。この問題に対して、従来、一般的に適用されている手法は、線形エコーキャンセラを用いる手法である。線形エコーキャンセラについては、例えば、非特許文献１に記載されている。
【０００４】
図２６において、線形エコーキャンセラ３は、エコー経路の伝達関数を模擬する。この模擬した伝達関数を用いて、スピーカ２への入力信号（遠端信号）から、マイクロホン１の受音に漏れこむエコーを模擬した信号、すなわちエコーレプリカ信号を生成し、減算器４において、マイクロホン１の受音信号から減算することで、近端信号を生成する。なお、音声検出部５は、マイクロホン１の出力、線形エコーキャンセラ３の出力、減算器４の出力および遠端信号をそれぞれ入力して近端音声があるかどうかを検出しており、近端音声があるときには、音声検出結果として０あるいは極めて小さい値を出力し、近端音声がないときには大きな値を出力する。
【０００５】
線形エコーキャンセラ３の動作を、図２７を用いて説明する。図２７は、線形エコーキャンセラ３の構成例を表す図である。図２７に示す線形エコーキャンセラの構成例は、適応フィルタ３０と乗算器３５とから構成されている。適応フィルタ３０は、端子３１から入力された遠端信号を入力として、線形フィルタを行った結果を端子３２から出力する。ここで適応フィルタ３０において線形フィルタ動作を行うためのフィルタ係数は、時々刻々と更新される。その更新は、端子３３から受けた減算結果を最小化するように、相関演算を用いて行われる。その結果、端子３３に加えられる減算結果においては、遠端信号に相関がある成分が最小化される。すなわち遠端信号のエコーが除去されることになる。
【０００６】
乗算器３５は、適応フィルタ３０におけるフィルタ係数の更新の量を制御するために、端子３３から適応フィルタ３０への経路に挿入されている。乗算器３５がない場合には、近端音声があるときに、適応フィルタ３０におけるフィルタ係数の更新を行うと、フィルタ係数が一時的に乱されてしまい、エコーの除去量が減じられてしまう。乗算器３５は、端子３３から受けた減算結果に、端子３４から受けた音声検出部５からの音声検出結果を乗じた結果を適応フィルタ３０へ送る。近端音声があるときには、音声検出結果は０、あるいは極めて小さい値となるため、適応フィルタ３０におけるフィルタ係数の更新が抑制され、フィルタ係数が乱されなくなる。その結果、高いエコー除去量が得られる。
【０００７】
このように従来の線形エコーキャンセラは、線形適応フィルタを用いて、遠端信号のエコーを除去することができる。適応フィルタにはＦＩＲ型、ＩＩＲ型、ラチス型などさまざまな構成を用いることができる。
【０００８】
【非特許文献１】Eberhard HANSLERによる論文「The hands-free telephone problem:an annotated bibliography update」（出典：annals of telecommunications,1994年、p360-367）
【非特許文献２】Ｘｉａｏｊｉａｎ  Ｌｕ、Ｂｅｎｏｉｔ  Ｃｈａｍｐａｇｎｅによる論文「Acoustical EchoCancellation Over A Non-Linear Channel」（出典： インターナショナルワークショップ・オン・アコースティック・エコー・アンド・ノイズコントロール２００１（International Workshop on Acoustic Echo and Noise Control 2001））
【非特許文献３】Ａ．Ａｌｖａｒｅｚ等による「A Speech Enhancement System Based On Negative Beamforming And Spectral Subtraction」（出典：インターナショナルワークショップ・オン・アコースティック・エコー・アンド・ノイズコントロール２００１（International Workshop on Acoustic Echo and Noise Control 2001））
【非特許文献４】John J. Shynkによる論文「Frequency-Domain and Multirate Adaptive Filtering」（出典：IEEE Signal Processing Magazine, 1992年1月、pp.14-37）
【発明の開示】
【発明が解決しようとする課題】
【０００９】
従来技術においても、エコー経路において歪などの非線形要素が十分小さい場合には、エコーを十分に抑圧することができる。しかし実際の装置では、スピーカにおける歪など、非線形要素は大きい。歪を含んだエコー経路の伝達関数は非線形であり、線形エコーキャンセラでは完全に模擬することはできない。特に携帯電話などで用いられる小型スピーカで大音量の拡声を行う場合には、スピーカの歪が大きいため、エコーは２０ｄＢ程度しか抑圧されない。この場合、エコーは近端信号として遠端に送られ、遠端の話者にも聞こえるため、発話が困難になる。
【００１０】
本発明は、エコー経路における歪が大きい場合でも、エコーが十分抑圧された収音を行うことを目的とする。
【課題を解決するための手段】
【００１１】
本発明の第１のエコー抑圧方法は、収音器と拡声器との間の音響系結合によるエコーを抑圧する方法において、収音器の出力信号または収音器の出力信号からエコーキャンセラの出力信号を減算した信号の何れか一方を第１の信号、前記エコーキャンセラの出力信号を第２の信号とするとき、前記第１の信号と前記第２の信号とからエコーの漏れこみ具合の推定値を算出し、該算出した推定値に基づいて前記第１の信号を補正する。
【００１２】
本発明の第２のエコー抑圧方法は、第１のエコー抑圧方法において、前記第１及び第２の信号の各周波数成分毎に、前記第１の信号と前記第２の信号とからエコーの漏れこみ具合の推定値を算出し、該算出した推定値に基づいて前記第１の信号を補正する処理を実施する。
【００１３】
本発明の第３のエコー抑圧方法は、第２のエコー抑圧方法において、前記エコーキャンセラの出力信号を第２の信号とするのに代えて、前記エコーキャンセラの出力信号の歪みを強調した信号を第２の信号とする。
【００１４】
本発明の第１のエコー抑圧装置は、収音器と拡声器との間の音響系結合によるエコーを抑圧する装置において、収音器の出力信号または収音器の出力信号からエコーキャンセラの出力信号を減算した信号の何れか一方を第１の信号、前記エコーキャンセラの出力信号を第２の信号とするとき、前記第１の信号と前記第２の信号とからエコーの漏れこみ具合の推定値を算出する算出手段と、該算出した推定値に基づいて前記第１の信号を補正する補正手段とを含む変換部を有する。
【００１５】
本発明の第２のエコー抑圧装置は、収音器と拡声器との間の音響系結合によるエコーを抑圧する装置において、収音器の出力信号または収音器の出力信号からエコーキャンセラの出力信号を減算した信号の何れか一方を第１の信号、前記エコーキャンセラの出力信号を第２の信号とするとき、前記第１及び第２の信号を周波数分割する分割手段と、前記第１及び第２の信号の各周波数成分毎に前記第１の信号と前記第２の信号とからエコーの漏れこみ具合の推定値を算出する算出手段と、各周波数成分毎に算出された推定値に基づいて各周波数成分毎に前記第１の信号を補正する補正手段と、各周波数成分毎に補正された第１の信号を合成する合成手段とを含む変換部を有する。
【００１６】
本発明の第３のエコー抑圧装置は、第２のエコー抑圧装置において、エコーキャンセラの出力信号を第２の信号とするのに代えて、エコーキャンセラの出力信号の歪みを歪発生部で強調した信号を第２の信号とする。
【００１７】
本発明の第４のエコー抑圧装置は、収音器と拡声器との間の音響系結合によるエコーを抑圧する装置において、エコーキャンセラとして変換領域エコーキャンセラを備え、収音器の出力信号から前記変換領域エコーキャンセラの出力信号を減算した信号を前記変換領域エコーキャンセラ内で周波数分割した信号を第１の信号、変換領域エコーキャンセラ内における逆線形変換前の各周波数成分毎の信号を第２の信号としてそれぞれ入力し、前記第１及び第２の信号の各周波数成分毎に前記第１の信号と前記第２の信号とからエコーの漏れこみ具合の推定値を算出する算出手段と、各周波数成分毎に算出された推定値に基づいて各周波数成分毎に前記第１の信号を補正する補正手段と、各周波数成分毎に補正された第１の信号を合成する合成手段とを含む変換部を有する。
【００１８】
本発明の第５のエコー抑圧装置は、収音器と拡声器との間の音響系結合によるエコーを抑圧する装置において、収音器の出力信号と拡声器の出力信号とがサブバンド分析フィルタにより各帯域に展開され、各帯域に展開された収音器の出力信号または各帯域に展開された収音器の出力信号からエコーキャンセラの出力信号を減算した信号の何れか一方を第１の信号、前記エコーキャンセラの出力信号を第２の信号とするとき、前記第１の信号と前記第２の信号とからエコーの漏れこみ具合の推定値を算出する算出手段と、算出された推定値に基づいて前記第１の信号を補正する補正手段とを含む変換部を各帯域毎に有し、且つ、各変換部で補正された第１の信号を合成するサブバンド合成フィルタを有する。
【００１９】
本発明の第６のエコー抑圧装置は、収音器と拡声器との間の音響系結合によるエコーを抑圧する装置において、収音器の出力信号と拡声器の出力信号とがフーリエ変換器により各帯域に展開され、各帯域に展開された収音器の出力信号または各帯域に展開された収音器の出力信号からエコーキャンセラの出力信号を減算した信号の何れか一方を第１の信号、前記エコーキャンセラの出力信号を第２の信号とするとき、前記第１の信号と前記第２の信号とからエコーの漏れこみ具合の推定値を算出する算出手段と、算出された推定値に基づいて前記第１の信号を補正する補正手段とを含む変換部を各帯域毎に有し、且つ、各変換部で補正された第１の信号を合成する逆フーリエ変換器を有する。
【００２０】
ここで、前記推定値としては、近端音声が検出されない期間における前記第２の信号の振幅またはパワーに応じた量に対する、前記第１の信号の振幅またはパワーに応じた量の比、あるいはこの比を平滑化した値を用いることができ、また、近端音声が検出されない期間における前記第２の信号の振幅またはパワーに応じた量を平滑化した量に対する、前記第１の信号の振幅またはパワーに応じた量を平滑化した量の比を、平滑化した値を用いることもできる。
【００２１】
前記第１および第２の信号の振幅またはパワーに応じた量の平滑化の時定数は、前記第１および第２の信号が減少するときに比べて増加するときの方が小さくなるように制御して良い。また、前記比の平滑化の時定数は、近端音声が検出されているときは長いか或いは無限とし、それ以外は短くするように制御しても良いし、近端音声が検出されていないときに比べて検出されているときの方を遥かに大きくし、かつ、近端音声が検出されていないとき、前記比が減少するときに比べて増加するときの方が小さくなるように制御しても良い。
【００２２】
前記補正は、前記推定値と前記第２の信号とから前記第１の信号に含まれるエコーの量を推定し、該推定したエコーの量を前記第１の信号から減算することで行っても良いし、前記推定値と前記第１及び第２の信号とから前記第１の信号に含まれる近端信号の割合を推定し、該推定した割合を前記第１の信号に乗じることで行っても良い。
【００２３】
エコーキャンセラの出力には、このエコーキャンセラが線形エコーキャンセラであれば遠端信号に含まれる高調波成分がほぼそのまま現れる。また、このエコーキャンセラが非線形エコーキャンセラであっても遠端信号に含まれる高調波成分が少なからず含まれる。他方、収音器の入力信号である近端信号には、近端音声以外に、収音器と拡声器との間の音響系結合による遠端信号のエコーおよび非線形成分により生成された高調波成分が含まれるが、近端音声がない状態では、近端信号はほぼ遠端信号のエコーおよび非線形成分により生成された高調波成分だけになる。このため、近端音声がない状態の第１の信号（近端信号そのものか、近端信号からエコーキャンセラの出力を減算したもの）の振幅またはパワーに応じた量を、第２の信号（エコーキャンセラの出力信号そのものか、歪みを強調した信号）の振幅またはパワーに応じた量で割った商は、エコー経路におけるエコーの非線形成分のゲインの推定値、つまりエコーの漏れこみ具合の推定値となる。従って、この推定値と第２の信号とから第１の信号に含まれるエコーの量を推定して第１の信号から減算するか、或いは、この推定値と第１及び第２の信号とから第１の信号に含まれる近端信号の割合を推定し、この推定した割合を第１の信号に乗じることで、第１の信号からエコーの非線形成分を除去することができる。
【発明の効果】
【００２４】
本発明によれば、エコー経路における歪が大きい場合でも、エコーを十分に抑圧して収音を行うことができる。
【発明を実施するための最良の形態】
【００２５】
次に本発明の実施の形態について図面を参照して説明する。
【００２６】
図１を参照すると、本発明の実施の形態は、マイクロホン１とスピーカ２との間の音響系結合によるエコーを抑圧するために、マイクロホン１の出力信号またはスピーカ２の出力信号から線形エコーキャンセラ（非線形エコーキャンセラであってもよい）３の出力信号を減算器４で減算した信号の何れか一方を第１の信号、線形エコーキャンセラ３の出力信号またはこの出力信号に含まれる歪みを図示しない歪発生部で強調した信号を第２の信号として入力すると共に、近端音声の有無を検出している音声検出部５の音声検出信号を入力し、第１の信号からエコーを除去した近端信号を生成して出力端子９に出力する変換部１００を備えている。ここで、変換部１００は、第１の信号と第２の信号とからエコーの漏れこみ具合の推定値を算出し、この算出した推定値に基づいて第１の信号を補正する。この処理は、好ましくは第１及び第２の信号の各周波数成分毎に行う。
【００２７】
図２を参照すると、変換部１００は、入力端子１６２から加わる第１の信号を周波数別にＭ分割する周波数分割部１６０と、入力端子１６３から加わる第２の信号を周波数別にＭ分割する周波数分割部１６１と、各周波数別に設けられたＭ個の補正部１６６ｍ（ｍ＝１〜Ｍ）と、周波数合成部１６４とを備え、周波数分割部１６０および周波数分割部１６１は周波数分割した第１の信号および第２の信号をそれぞれの周波数に対応する補正部１６６ｍに送り、各補正部１６６ｍは、入力端子１６７から入力される音声検出部５の音声検出結果と当該周波数成分における第１の信号と第２の信号とからエコーの漏れこみ具合の推定値を算出すると共に、この推定値に基づいて第１の信号を補正して周波数合成部１６４に出力し、周波数合成部１６４は、各補正部１６６ｍから出力される信号を周波数合成して出力端子１６５に出力する。
【００２８】
ここで、補正部１６６ｍは、エコーの漏れこみ具合の推定値として、近端音声が検出されない期間における第２の信号の振幅またはパワーに応じた量に対する第１の信号の振幅またはパワーに応じた量の比、或いはこの比を平滑化した値を用いる。第１および第２の信号の振幅またはパワーに応じた量を平滑化するようにしても良い。第１および第２の信号の振幅またはパワーに応じた量の平滑化の時定数は、第１および第２の信号が減少するときに比べて増加するときの方が小さくなるように制御するようにして良い。前記比の平滑化の時定数は、近端音声が検出されているときは長いか或いは無限とし、それ以外は短くするようにしても良いし、近端音声が検出されていないときに比べて検出されているときの方を遥かに大きくし、かつ、近端音声が検出されていないとき、前記比が減少するときに比べて増加するときの方が小さくなるようにしても良い。
【００２９】
また補正部１６６ｍは、エコーの漏れこみ具合の推定値と第２の信号とから第１の信号に含まれるエコーの量を推定し、この推定したエコーの量を第１の信号から減算することで、第１の信号を補正するものであっても良いし、エコーの漏れこみ具合の推定値と第１及び第２の信号とから第１の信号に含まれる近端信号の割合を推定し、この推定した割合を第１の信号に乗じることで、第１の信号を補正するものであっても良い。
【００３０】
周波数分割部１６０、１６１における周波数分割は、フーリエ変換、コサイン変換、サブバンド分析フィルタバンクなどの任意の線形変換を用いることができ、周波数合成部１６４における周波数合成は、それらに対応する逆フーリエ変換、逆コサイン変換、サブバンド合成フィルタバンク等の任意の処理とすることができる。
【００３１】
次に本発明の実施例について図面を参照して説明する。先ず、図１の変換部１００としてスペクトルサブトラクション部を用いた実施例について説明する。
【００３２】
図３は本発明の第１の実施例のブロック図である。図２６の従来技術との差異は、図２６における減算器４と近端信号の出力端子９との間にスペクトルサブトラクション部６が挿入されていること、および、そのスペクトルサブトラクション部６は、線形エコーキャンセラ３の出力信号を受け、かつ、音声検出部５の出力する音声検出結果を受けていることである。
【００３３】
スペクトルサブトラクション部６は、減算器４の出力信号と線形エコーキャンセラ３の出力信号とをそれぞれ周波数領域に展開し、各周波数ごとに、エコーを除去する。その構成例と動作を、図４を用いて説明する。
【００３４】
図４はスペクトルサブトラクション部６の構成例を示すブロック図である。入力端子６２から、図３における減算器４の出力信号が入力される。フーリエ変換器６０は、入力端子６２から入力された信号を受け、そのＭ点フーリエ変換を計算し、計算された結果を第１のフーリエ係数として、それぞれの周波数に対応するフーリエ係数減算器６６ｍ（ｍ＝１〜Ｍ）に送る。一方、入力端子６３から、図３における線形エコーキャンセラ３の出力信号、すなわちエコーレプリカ信号が入力される。フーリエ変換器６１は、入力端子６３から入力された信号を受け、そのＭ点フーリエ変換を計算し、計算された結果を第２のフーリエ係数として、それぞれの周波数に対応するフーリエ係数減算器６６ｍに送る。
【００３５】
フーリエ係数減算器６６ｍでは、フーリエ変換器６０が出力した第１のフーリエ係数と、フーリエ変換器６１が出力した第２のフーリエ係数と、図３における音声検出部５が出力した音声検出結果（端子６７）とを受け、エコー成分が除去されたフーリエ係数を計算し、計算結果を逆フーリエ変換器６４へ送る。逆フーリエ変換器６４は、フーリエ係数減算部６６１〜６６Ｍが出力したフーリエ係数群を受け、その逆フーリエ変換を計算し、計算結果の実数部を出力端子６５から出力する。
【００３６】
次に、フーリエ係数減算器６６ｍ（ｍ＝１〜Ｍ）のそれぞれの構成例と動作を、図５を用いて説明する。図５はフーリエ係数減算器６６ｍ（ｍ＝１〜Ｍ）の第１の構成例を示すブロック図である。図４におけるフーリエ変換器６０が出力した各周波数ごとの第１のフーリエ係数は、端子７００を通じて、絶対値計算部７０１および減算器７０６へ送られる。図４におけるフーリエ変換器６１が出力した第２のフーリエ係数は、端子７０３を通じて、絶対値計算部７０４および乗算器７０７に送られる。絶対値計算部７０１は、第１のフーリエ係数を受けて、その絶対値を計算し、計算結果を割算器７０２に送る。絶対値計算部７０４は、第２のフーリエ係数を受けて、その絶対値を計算し、計算結果を割算器７０２に送る。割算器７０２は、絶対値計算部７０１の計算結果と絶対値計算部７０４の計算結果とを受けて、絶対値計算部７０１の計算結果を絶対値計算部７０４の計算結果で割った値を計算し、計算結果を平滑部７０５へ送る。
【００３７】
なお、ここでは、絶対値計算部７０１、７０４によりフーリエ係数の絶対値、つまり当該周波数成分の振幅の絶対値を求めたが、このほかに、振幅の二乗平均の平方根や、振幅の絶対値のＱ乗平均のＱ乗根（Ｑは任意の正実数）など、振幅に比例する量ならば他の任意の量を用いることが可能である。また、パワーに比例する量、例えば二乗など偶数乗した値を用いることもできる。これは以下の他の実施例においても同様である。
【００３８】
平滑部７０５は、割算器７０２から受けた計算結果を平滑化し、乗算器７０７へ送る。平滑部７０５における平滑化の時定数は、端子６７から入力される音声検出結果によって制御される。音声検出結果が、音声（近端音声）があることを示しているときには、平滑化の時定数を長く、あるいは無限とする。音声検出結果が、音声（近端音声）がないことを示しているときには、平滑化の時定数を短くする。平滑部７０５の構成については後で説明する。
【００３９】
乗算器７０７は、平滑部７０５が出力する値と、端子７０３を通じてフーリエ変換器６１から受けた第２のフーリエ係数を乗じて、結果を減算器７０６に送る。減算器７０６は、端子７００を通じてフーリエ変換器６０から受けた第１のフーリエ係数から、乗算器７０７の出力する値を減じて、計算結果を端子７９９から出力する。端子７９９を通じて出力された計算結果は、図４における逆フーリエ変換器６４へと送られる。
【００４０】
次に平滑部７０５の構成例およびその動作を、図６を用いて説明する。入力信号（割算器７０２の出力）は、端子８００を通じて減算器８０１へ送られる。減算器８０１は、端子８００を通じて受けた入力信号と、１サンプル分の遅延器８０４の出力（平滑部自身の出力）とを受けて、端子８００を通じて受けた入力信号から、１サンプル分の遅延器８０４の出力を減じた信号を出力し、乗算器８０２へと送る。乗算器８０２は、減算器８０１の出力信号と、平滑化係数決定部８０８の出力とを受けて、その２つを乗じた結果を加算器８０３へと送る。加算器８０３は、乗算器８０２の出力と、遅延器８０４の出力とを受けて、その２つを加算した結果をリミッタ８０７へと送る。リミッタ８０７は、加算器８０３の出力を受けて、その値がある範囲を超えないように、上限と下限を制限し、制限された結果を、出力端子８９９および遅延器８０４へ送る。遅延器８０４は、リミッタ８０７の出力を受けて、１サンプル遅延させて、その遅延結果を減算器８０１および加算器８０３へ送る。
【００４１】
以上の平滑部７０５は、いわゆるリーク積分器、または、一次ＩＩＲ型低域フィルタとよばれるものを構成している。ただし、その時定数を決定する係数は定数ではなく、平滑化係数決定部８０８から時変の係数として供給されている。なお、平滑化係数と平滑化の時定数とは反比例の関係になる。
【００４２】
平滑化係数決定部８０８では、端子６７から供給される音声検出結果によって、異なる平滑化係数を供給する。音声（近端音声）がある場合には、極めて小さい非負係数、例えば０．０を供給する。音声（近端音声）がない場合には、比較的大きな正係数、例えば０．００５を供給する。これらの時変の平滑化係数によって、音声（近端音声）がある場合には、１サンプル前の平滑化係数を維持する、あるいは、平滑化係数はほとんど変化しない。また、音声（近端音声）がない場合には、出力される平滑化係数が変化する。
【００４３】
この制御により、平滑部７０５の出力は、その周波数におけるエコーの漏れこみ具合の推定値になる。その理由について説明する。平滑部７０５の入力は、近端信号のフーリエ係数を遠端信号のフーリエ係数で割った商であるので、この商に線形エコーキャンセラ出力信号のフーリエ係数を乗じることにより、近端信号のフーリエ係数と同じ値が生成できる。つまり、エコーの漏れこみ具合を表す値である。この値は激しく変化する値であり、音声（近端音声）がある場合には大きく乱れるため、そのままでは信頼できない。しかし平滑化することにより、安定した信頼できる推定値になる。さらに、音声（近端音声）がある場合には変化が遅いあるいは変化しないように平滑化定数を制御することにより、音声（近端音声）がある場合の乱れの影響を少なくすることができる。その結果、平滑部７０５の出力は、その周波数におけるエコーの漏れこみ具合の推定値として、音声検出結果によって制御された場合のほうが、制御されない場合より優れた推定値となる。
【００４４】
以上のようにして得られた平滑部７０５が出力する値を、乗算器７０７において、線形エコーキャンセラ出力信号のフーリエ係数に乗じることにより、エコーレプリカ信号に残留するエコー信号のフーリエ係数の推定値が得られる。このエコー信号のフーリエ係数の推定値を減算器７０６において、近端信号のフーリエ係数から減じることにより、エコー成分を抑圧した近端信号のフーリエ係数の推定値が得られる。その推定値は、図４の逆フーリエ変換器６４へと送られ、近端信号へと合成され、出力端子６５から出力される。結果として、この合成された近端信号においては、エコーは抑圧される。
【００４５】
以上のフーリエ係数減算器６６ｍの動作を式を用いて説明する。近端信号のフーリエ係数をＳ、そのうち近端音声の成分をＡ、エコー成分をＥ、雑音成分をＮとする。ここには、
Ｓ＝Ａ＋Ｅ＋Ｎ                                      （式１）
の関係がある。また遠端信号のフーリエ係数をＲとする。時間軸があっているので、ＥとＲの位相はほぼ同じはずである。Ａがない場合、すなわち近端音声がない場合には、近端信号はＥ＋Ｎであり、すべて消していい信号である。この場合の信号を用いてＥ＋ＮをＲから推定し、近端音声がある場合に、近端信号からＥ＋Ｎを減算することを考える。音声検出の結果を使って、近端音声がない場合にのみＳ／Ｒを平滑した結果Ｐ１（平滑部７０５の出力に相当する）は、
Ｐ１  ＝  Ａｖ[Ｓ／Ｒ]  ＝  Ａｖ[（Ｅ＋Ｎ）／Ｒ]            （式２）
となる。ここでＡｖ[・]は平滑化をあらわす。このＰ１は、遠端信号Ｒのどの程度の割合がエコーとして漏れこむかを近似しており、エコー経路におけるエコーのゲインと言える。
【００４６】
従って、このＰ１にＲをかけた結果Ｐ２（乗算器７０７の出力に相当する）は、エコー成分および雑音成分の推定値になる。
Ｐ２  ＝  Ｐ１  ×  Ｒ
＝  Ｒ×Ａｖ[（Ｅ＋Ｎ）／Ｒ]  
＝  Ｅｘ[Ｅ＋Ｎ]                                （式３）
ここでＥｘ[・]は、推定値をあらわす。
【００４７】
このＰ２をＳから引いた結果Ｐ３（減算器７０６の出力に相当する）は、
Ｐ３  ＝  Ｓ  −  Ｐ２  
＝  Ｓ  −（Ｒ×Ａｖ[（Ｅ＋Ｎ）／Ｒ]）
＝  （Ａ＋Ｅ＋Ｎ）  −  Ｅｘ[Ｅ＋Ｎ]
＝  Ｅｘ[Ａ]                                          （式４）
となる。このＰ３においては、エコー成分Ｅや雑音成分Ｎが除去された、近端音声のフーリエ係数成分Ａの推定値が得られる。
【００４８】
図３にもどり、エコー経路におけるスピーカなどに歪がある場合に、本発明の実施例がどのように動作するかを説明する。歪がある場合、本発明の実施例では、スペクトルサブトラクション部６の周波数領域の非線形演算によって、エコーにおける歪による成分を除去している。周波数領域の非線形演算において重要な、信号成分の時間的変化を、線形エコーキャンセラ３が調整することによって、エコーにおける歪による成分を効果的に除去する。マイクロホン１の出力信号には、遠端信号そのものに加えて、遠端信号の歪のエコーが含まれる。この歪のエコーは、遠端信号のエコーの周波数成分の高調波として考えることができる。説明を簡単にするために、エコー成分Ｅが歪による高調波のみである場合を考える。式２および式３から分かるように、スペクトルサブトラクション部では、遠端信号のフーリエ変換成分Ｒがゼロでない限り、エコー成分Ｅを除去することが原理的には可能である。ここでエコー成分Ｅを除去するために重要なのは、エコー経路におけるエコーのゲインＰ１の推定精度である。歪による高調波の量は、遠端信号の性質、例えば振幅などによって時間的に大きく変化するため、Ｐ１において高い精度を得るためには、式１の右辺における分母、すなわち遠端信号のフーリエ変換成分Ｒの時間的変化が、分子におけるエコー成分Ｅの時間変化とできるだけ同様であることが望ましい。これらの時間的変化が大きく異なると、Ｐ１として高い精度を得ることができず、歪のエコーを大きく除去することができない。本発明の実施例においては、線形エコーキャンセラ３の出力信号に基づく値をＲとして用いるため、ＥとＲの時間的変化のタイミングはほぼ揃えられている。すなわちＰ１において高い推定精度を得るために望ましい状態に近い。したがってスペクトルサブトラクション部６において、歪により発生した高調波も大きく抑圧することができる。
【００４９】
また、本発明の第１の実施例には、図３の線形エコーキャンセラ３においてエコー経路の推定を誤った場合に、残留したエコーを除去する効果もある。前段落の説明では、説明の簡単のため、エコー成分Ｅが歪による高調波のみである場合を考えたが、歪によらない遠端信号のエコー成分、すなわち高調波でないエコー成分が存在する場合についても議論は同様であり、高調波でないエコー成分を抑圧することが可能である。例えばエコー経路の推定を誤り、図３における減算器４において、エコーを除去せずに、逆に付加してしまう場合がありうる。しかし、その場合にも、スペクトルサブトラクション部６において遠端信号の成分が除去されるため、エコーを抑圧することができる。
【００５０】
また、２入力スペクトルサブトラクション部６のこの効果を用いると、線形エコーキャンセラ３のタップ数を削減することによる演算量削減も可能である。図２６に示すように線形エコーキャンセラのみを用いた場合には、タップ数を削減することにより、エコー除去量が低下してくる。しかし図３に示す本発明の第１の実施例では、タップ数を削減してもエコー除去量の減少が少なく、実用的なエコー除去量が得られる。
【００５１】
以上説明してきたように、本発明の第１の実施例においては、線形エコーキャンセラ３と、スペクトルサブトラクション部６の周波数領域の非線形演算を組み合わせることによって、互いに不得手な点を補い合い、高性能を得ている。すなわち、スペクトルサブトラクション部６があることによって、エコー経路に歪がある場合や線形エコーキャンセラ３がエコー経路推定を誤った場合など、線形エコーキャンセラ３だけではエコーが十分に抑圧できない場合でも、エコーを大きく抑圧することができる。また、線形エコーキャンセラの出力を用いることによって、スペクトルサブトラクション部の周波数領域の演算では対応できない時間的なずれを気にせず、振幅だけの簡単な推定で、歪によって生じる高調波を抑圧することができる。
【００５２】
図７は、図４のスペクトルサブトラクション部６におけるフーリエ係数減算器６６ｍ（ｍ＝１〜Ｍ）の第２の構成例である。図５に示すフーリエ係数減算器の第１の構成例との差異は、絶対値計算部７０１から割算器７０２への信号経路に、平滑部７１０が挿入されていること、および、絶対値計算部７０４から割算器７０２への信号経路に、平滑部７１１が挿入されていることのみである。
【００５３】
平滑部７１０および平滑部７１１の構成例を図８に示す。図８は、いわゆるリーク積分器、あるいは１次ＩＩＲ型低域フィルタとよばれるものである。その動作は、図６に示す平滑部７０５の構成例と極めて類似しているので、図８を図６と比較しながら、その動作を説明する。図８と図６の差異は、乗算器８０２に供給される平滑化係数が、端子８０６において平滑化定数として供給されていることのみである。図６の構成例では、音声検出結果の影響を受けたのに対し、図８の構成例では、音声検出結果の影響を受けずに入力信号を平滑化する。
【００５４】
図７に示すフーリエ係数減算器６６ｍ（ｍ＝１〜Ｍ）の第２の構成例では、平滑部７１０および平滑部７１１によって、割算器７０２の２つの入力が平滑化されるため、割算器７０２の出力として平滑部７０５に入力される商も平滑化される。その結果、平滑部７０５の出力である推定値は、図５の第１の構成例より、図７の第２の構成例の方が安定した値が得られる。しかし第１の構成例でも第２の構成例でも、平滑部７０５の出力においてエコーの漏れこみ具合の推定値が得られるという機能については変わりない。したがって、フーリエ係数減算器６６ｍ（ｍ＝１〜Ｍ）として図７に示す第２の構成例を用いた場合にも、本発明の効果は、図５に示す第１の構成例を用いた場合と同様に得られる。
【００５５】
図７における平滑部７１０および平滑部７１１の別の構成例を図９に示す。図８と図９の差異は、乗算器８０２に供給される平滑化係数が、減算器８０１の出力信号を入力とする平滑化係数決定部８１０から供給されていることである。平滑化係数決定部８１０は、減算器８０１の出力信号が正である場合、すなわち出力が増加するときには、比較的大きな係数、例えば０．０１を供給し、減算器８０１の出力値が負である場合、すなわち入力が出力より小さく、出力が減少していくときには、比較的小さな係数、例えば０．００１を供給する。これらの時変の平滑化係数によって、平滑部出力端子８９９の値が増加する速度、すなわち、立ち上がりの速度は高く、減少する速度、すなわち、出力が立ち下がる速度は低くなる。実際の音声や音楽の振幅変化、すなわち包絡線は、立ち上がりが速く、立下りが遅い場合が多い。図９に示す平滑部の構成例では、このような包絡線に的確に追従することが可能であり、図７に示すフーリエ係数減算器６６ｍの構成例におけるエコーの漏れこみ具合の推定値の推定精度を改善することができる。
【００５６】
図５および図７における平滑部７０５の別の構成例を図１０に示す。図６と図１０の差異は、乗算器８０２に平滑化係数を供給する平滑化係数決定部８０９が、端子６７を経由してきた音声検出結果と、減算器８０１の出力信号とを入力とする平滑化係数決定部８０９によって置き換えられていることである。平滑化係数決定部８０９は、端子６７から供給される音声検出結果、および減算器８０１の出力信号の正負によって、異なる平滑化係数を供給する。音声がある場合には、極めて小さい非負係数、例えば０．０を供給する。音声（近端音声）がない場合、かつ、減算器８０１の出力信号が正である場合には、比較的大きな係数、例えば０．０１を供給する。音声がない場合、かつ、減算器８０１の出力値が負である場合、すなわち入力が出力より小さい場合には、比較的小さな係数、例えば０．００１を供給する。これらの時変の平滑化係数によって、平滑部出力端子８９９の値が増加する速度、すなわち、立ち上がりの速度は高く、減少する速度、すなわち、出力が立ち下がる速度は低くすることができる。実際の信号における包絡線に的確に追従することが可能であり、図５および図７に示すフーリエ係数減算器６６ｍの構成例におけるエコーの漏れこみ具合の推定値の推定精度を改善することができる。
【００５７】
図１１は本発明の第２の実施例のブロック図である。図３に示す第１の実施例との差異は、スペクトルサブトラクション部６に入力される信号として、第１の実施例では減算器４の出力を用いているのに対し、第２の実施例ではマイクロホン１の出力信号を用いていることである。減算器４の出力では、線形エコーキャンセラ３により、エコーの主要成分が除去されているのに対し、マイクロホン１の出力信号ではエコーは除去されていない。この差異は、エコーの主要成分の除去を、線形エコーキャンセラ３と減算器４とで行うか、スペクトルサブトラクション部６で行うかの差のみであり、歪に対する効果については、第１の実施例と全く同一である。従って、第２の実施例においても、音響系に歪がある場合や線形エコーキャンセラ３がエコー経路推定を誤った場合など、線形エコーキャンセラ３だけではエコーが十分に抑圧できない場合でも、エコーを大きく抑圧することができる。
【００５８】
なお、第１および第２の実施例におけるスペクトルサブトラクション部６の構成としては、これまで説明してきた構成例以外に、非特許文献２におけるスペクトラルサブトラクション（Spectral Subtraction）の構成や、非特許文献３におけるスペクトラルサブトラクション（Spectral Subtraction）の構成を用いることも可能である。
【００５９】
次に、図１の変換部１００としてスペクトルサプレッション部を用いた実施例について説明する。
【００６０】
図１２は本発明の第３の実施例のブロック図である。図３における第１の実施例との差異は、スペクトルサブトラクション部６が、スペクトルサプレッション部７によって置換されていることのみである。スペクトルサプレッション部７について図を用いて説明する。
【００６１】
図１３は、スペクトルサプレッション部７の構成を示すブロック図である。入力端子７２から、図１２における減算器４の出力信号が入力される。フーリエ変換器７０は、入力端子７２から入力された信号を受け、そのＭ点フーリエ変換を計算し、計算された結果を第１のフーリエ係数として、それぞれの周波数に対応するフーリエ係数乗算器７６ｍ（ｍ＝１〜Ｍ）に送る。一方、入力端子７３から、図１２における線形エコーキャンセラ３の出力信号が入力される。フーリエ変換器７１は、入力端子７３から入力された線形エコーキャンセラ出力信号を受け、そのＭ点フーリエ変換を計算し、計算された結果を第２のフーリエ係数として、それぞれの周波数に対応するフーリエ係数乗算器７６ｍに送る。フーリエ係数乗算器７６ｍでは、フーリエ変換器７０が出力した第１のフーリエ係数と、フーリエ変換器７１が出力した第２のフーリエ係数と、図１２における音声検出部５が出力した音声検出結果とを受け、エコー成分を減少させたフーリエ係数を計算し、計算結果を逆フーリエ変換器７４へ送る。逆フーリエ変換器７４は、フーリエ係数乗算器７６ｍ（ｍ＝１〜Ｍ）が出力したフーリエ係数群を受け、その逆フーリエ変換を計算し、計算結果の実数部を出力端子７５から出力する。フーリエ係数乗算器７６ｍ（ｍ＝１〜Ｍ）によって、出力端子７５においては、エコー成分が減少した信号が得られる。
【００６２】
次に、フーリエ係数乗算器７６ｍ（ｍ＝１〜Ｍ）のそれぞれの構成例と動作を、図１４を用いて説明する。図１４は、フーリエ係数乗算器７６ｍ（ｍ＝１〜Ｍ）の第１の構成例を示す図である。図１３におけるフーリエ変換器７０が出力した各周波数ごとの第１のフーリエ係数は、端子７３０を通じて、絶対値計算部７３１および乗算器７３７へ送られる。図１３におけるフーリエ変換器７１が出力した第２のフーリエ係数は、端子７３３を通じて、絶対値計算部７３４に送られる。絶対値計算部７３１は、第１のフーリエ係数を受けて、その絶対値を計算し、割算器７４２および割算器７４５に送る。絶対値計算部７３４は、第２のフーリエ係数を受けて、その絶対値を計算し、計算結果を割算器７４２および割算器７４５に送る。割算器７４２は、絶対値計算部７３１の計算結果と、絶対値計算部７３４の計算結果とを受けて、絶対値計算部７３１の計算結果を絶対値計算部７３４の計算結果で割った値を計算し、計算結果を平滑部７４３へと送る。
【００６３】
平滑部７４３は、割算器７４２から受けた計算結果を平滑化し、乗算器７４６へと送る。平滑部７４３における平滑化の時定数は、端子６７から入力される音声検出結果によって制御される。音声検出結果が、音声（近端音声）があることを示しているときには、平滑化の時定数を長く、あるいは無限とする。音声検出結果が、音声（近端音声）がないことを示しているときには、平滑化の時定数を短くする。平滑部７４３の構成例は、すでに説明した図６または図１０で表すことができ、その動作も同一である。平滑部７４３の出力値は、第１のフーリエ係数と第２のフーリエ係数の比の推定値となり、当該周波数におけるエコーの漏れこみ具合の推定値となる。
【００６４】
割算器７４５は、絶対値計算部７３１の計算結果と、絶対値計算部７３４の計算結果とを受けて、絶対値計算部７３４の計算結果を絶対値計算部７３１の計算結果で割った値を計算し、計算結果を乗算器７４６へと送る。
【００６５】
乗算器７４６は、平滑部７４３の出力と割算器７４５の出力とを受けて、それらを乗じた値を計算し、計算結果を平滑部７４７へと送る。平滑部７４７は、乗算器７４６の出力を受けて、その出力を平滑化して減算器７４４へと送る。減算器７４４は、平滑部７４７の計算結果を１．０から減じて、乗算器７３７へと送る。乗算器７３７は、減算器７４４が出力する値と、端子７３０を通じてフーリエ変換器７０から受けた第１のフーリエ係数の値とを乗じて、計算結果を端子７８９から出力する。端子７８９を通じて出力された計算結果は、図１３における逆フーリエ変換器７４へと送られる。
【００６６】
ここで減算器７４４が出力する値について式を用いて説明する。フーリエ係数減算部の説明で用いた式４の第２行目の全体をＳで割って平滑した結果Ｐ４は、式５のようにあらわされる。この式５の右辺は図１４において、減算器７４４が出力する値に他ならない。
Ｐ４  ＝  Ａｖ[Ｐ３／Ｓ]
＝  Ａｖ[１−｛（Ｒ／Ｓ）×Ａｖ[（Ｅ＋Ｎ）／Ｒ]｝]
＝  １  −  Ａｖ[｛（Ｒ／Ｓ）×Ａｖ[（Ｅ＋Ｎ）／Ｒ]｝]
（式５）
また、Ｐ４は、式４の３行目の全体をＳで割って平滑した結果として、
Ｐ４  ＝  Ａｖ[{（Ａ＋Ｅ＋Ｎ）  −  Ｅｘ[Ｅ＋Ｎ]}／Ｓ]
＝  Ａｖ[Ｅｘ[Ａ]／Ｓ]
＝  Ｅｘ[Ａ／Ｓ]
（式６）
のようにあらわせる。式６を式５と比較すると、減算器７４４の出力Ｐ４が、近端信号における近端音声の割合の推定値となることが分かる。
【００６７】
減算器７４４が出力する値を、乗算器７３７において、減算器４の出力信号、すなわち線形エコーキャンセラによりエコーを減じられた信号のフーリエ係数に乗じることにより、近端信号におけるエコー信号以外の信号、すなわちエコーを抑圧した近端音声のフーリエ係数の推定値が得られる。その推定値は、図１３の逆フーリエ変換器７４へと送られ、近端信号へと合成され、出力端子７５から出力される。結果として、この合成された近端信号においては、エコーは抑圧される。
【００６８】
エコー経路におけるスピーカなどに歪がある場合に、本発明の第３の実施例がどのように動作するかを説明する。式５および式６を用いて説明したように、Ｐ４は近端信号における近端音声の割合の推定値である。このＰ４を計算するにあたり、本発明の第1の実施例で用いたＰ３を用いている。すでに本発明の第1の実施例で説明したように、Ｐ３は、近端音声のフーリエ係数成分の推定値であり、エコー成分や雑音成分だけでなく、歪により発生した高調波のエコー成分も取り除かれている。従って、Ｐ４においても歪により発生した高調波のエコー成分の割合が取り除かれており、このＰ４を乗じて得られるフーリエ係数では、歪のエコー成分が抑圧される。
【００６９】
以上のように、図１２に示す第３の実施例においても、エコー経路に歪がある場合や線形エコーキャンセラ３がエコー経路推定を誤った場合など、線形エコーキャンセラ３だけではエコーが十分に抑圧できない場合でも、エコーを大きく抑圧することができる。
【００７０】
図１５は、図１３におけるフーリエ係数乗算器７６ｍ（ｍ＝１〜Ｍ）の第２の構成例である。図１４に示すフーリエ係数乗算器７６ｍの第１の構成例との差異は、絶対値計算部７３１から割算器７４２への信号経路に、平滑部７４０が挿入されていること、および、絶対値計算部７３４から割算器７４２への信号経路に、平滑部７４１が挿入されていることのみである。この差異は、図５に示すフーリエ係数減算器の第１の構成例と、図７に示すフーリエ係数減算器の第２の構成例との差異と同様であり、その効果も同様である。したがって、図１３におけるフーリエ係数乗算器７６ｍ（ｍ＝１〜Ｍ）として、図１５に示す第２の構成例を用いた場合にも、本発明の効果は同様に得られる。
【００７１】
図１６は本発明の第４の実施例のブロック図である。図１２に示す第３の実施例との差異は、スペクトルサプレッション部７に入力される信号として、第３の実施例では減算器４の出力を用いているのに対し、第４の実施例ではマイクロホン１の出力信号を用いていることである。この差異は、第１の実施例と第２の実施例との差異と同様であり、その効果も第３の実施例と同様である。
【００７２】
次に、図１における変換部１００に線形エコーキャンセラ３の出力の歪を強調した信号を第２の信号として入力する実施例について説明する。
【００７３】
図１７は本発明の第５の実施例のブロック図である。図３に示す第１の実施例との差異は、線形エコーキャンセラ３の出力と、スペクトルサブトラクション部６の入力の間に、歪発生部８が挿入されていることのみである。この歪発生部８は、線形エコーキャンセラ３の出力信号、すなわち遠端信号の周波数成分の高調波を積極的に発生させる。歪発生部８によって、音響系で生じる歪に類似した高調波が得られるため、遠端信号に含まれる高調波が少な過ぎる場合に、スペクトルサブトラクション部６でのエコー抑圧が容易になり、歪発生部８がない場合より高いエコー抑圧が得られる。
【００７４】
図１８は本発明の第６の実施例のブロック図である。図１１に示す第２の実施例との差異は、線形エコーキャンセラ３の出力と、スペクトルサブトラクション部６の入力の間に、歪発生部８が挿入されていることのみである。この差異は、第１の実施例と第５の実施例との差異と同一であり、その効果も同一である。
【００７５】
図１９は本発明の第７の実施例のブロック図である。図１２に示す第３の実施例との差異は、線形エコーキャンセラ３の出力と、スペクトルサプレッション部７の入力の間に、歪発生部８が挿入されていることのみである。この差異は、第１の実施例と第５の実施例との差異と同一であり、その効果も同一である。
【００７６】
図２０は本発明の第８の実施例のブロック図である。図１６に示す第４の実施例との差異は、線形エコーキャンセラ３の出力と、スペクトルサプレッション部７の入力の間に、歪発生部８が挿入されていることのみである。この差異は、第１の実施例と第５の実施例との差異と同一であり、その効果も同一である。
【００７７】
以上本発明の実施例について説明したが、本発明は以上の実施例にのみ限定されずその他各種の付加変更が可能である。例えば、以下のように付加変更することができる。
【００７８】
以上では、スペクトルサブトラクション部、および、スペクトルサプレッション部において、毎サンプルごとにフーリエ変換を行う場合について説明してきたが、毎サンプルでなくとも、一定間隔ごとにフレーム単位で処理することも可能である。またフレームをオーバーラップさせた処理も可能である。この際にオーバーラップセーブやオーバーラップアドなどの手法を用いて、演算量を削減することも可能である。オーバーラップセーブやオーバーラップアドなどの手法については、例えば、非特許文献４に記載されている。
【００７９】
以上では、スペクトルサブトラクション部、および、スペクトルサプレッション部において、フーリエ変換を行う場合について説明してきたが、フーリエ変換以外にも、コサイン変換や、フィルターバンクなどの線形変換を用いることも可能である。また、サブバンド領域に変換してから処理を行うことも可能である。これらの場合、フーリエ係数減算器、および、フーリエ係数乗算器は、用いる線形変換に対応して読み替えればよい。例えば、コサイン変換を用いた場合には、コサイン係数減算器、コサイン係数乗算器となる。それらの動作は、フーリエ変換の場合と同様である。
【００８０】
本発明における線形エコーキャンセラとして、変換領域エコーキャンセラを用い、さらにその変換領域が、スペクトルサブトラクション部またはスペクトルサプレッション部で同一の変換領域である場合には、演算量の削減およびその演算に伴う遅延時間の短縮が可能である。ここで変換領域エコーキャンセラとは、線形変換を行って展開された変換領域においてエコーキャンセラ動作を行い、逆線形変換によって元の領域に再合成するようなエコーキャンセラを表す。
【００８１】
線形エコーキャンセラとして非特許文献４に示されるフーリエ変換領域エコーキャンセラを用いた場合の例を図を用いて説明する。図２１は、本発明の第９の実施例である。この本発明の第９の実施例では、フーリエ変換領域において、エコーキャンセラとスペクトルサブトラクションを行っている。図３に示す第１の実施例との差異は、線形エコーキャンセラ３がエコーキャンセラ１３により実現され、スペクトルサブトラクション部６がスペクトルサブトラクション部１６により置換され、スペクトルサブトラクション部１６への入力信号のうち２つがエコーキャンセラ１３から出力される変換領域信号群１および変換領域信号群２に置換されていることである。
【００８２】
図２２は、本発明の第９の実施例におけるエコーキャンセラ１３の構成例を示すブロック図である。端子３１より入力された遠端信号は、フーリエ変換器３５によりフーリエ変換領域に展開され、各周波数ごとに適応フィルタ群３８へと送られる。図２１における減算器４から端子３３を経由して入力された減算結果は、フーリエ変換器３７によりフーリエ変換領域に展開され、各周波数ごとにそれぞれ乗算器３９ｍ（ｍ＝１〜Ｍ）へと送られる。乗算器３９ｍ（ｍ＝１〜Ｍ）のそれぞれは、フーリエ変換器３７から受けた信号に、端子３４から受けた音声検出結果を乗じて、その結果を適応フィルタ群３８へと送る。適応フィルタ群３８は、Ｍ個の適応フィルタから構成されており、フーリエ変換器３５から受けた信号群と、乗算器３９ｍ（ｍ＝１〜Ｍ）からの信号群を受けて、対応する信号を用いて適応フィルタの処理を行う。適応フィルタ処理により得られたそれぞれのフィルタ結果は、逆フーリエ変換器３６へと送られる。逆フーリエ変換器３６は、適応フィルタ群３８から得たフィルタ結果を集め、その逆フーリエ変換を計算し、端子３２から出力する。端子３２から出力される信号が、エコーキャンセラとしての出力である。
【００８３】
エコーキャンセラ１３は、エコーキャンセラとしての出力以外に、スペクトルサブトラクションのために、フーリエ変換器３７が出力する信号群を変換領域信号群１としてベクトル型出力端子４１から出力し、適応フィルタ群３８が出力するフィルタ結果群を変換領域信号群２としてベクトル型出力端子４２から出力する。変換領域信号群１および変換領域信号群２は、図２１におけるスペクトルサブトラクション部１６へと送られる。変換領域信号群１は、図２１における減算器４の出力信号をフーリエ変換したものとなる。また変換領域信号群２は、図２１においてエコーキャンセラ１３から減算器４へと向かう信号をフーリエ変換したものと解釈できる。
【００８４】
スペクトルサブトラクション部１６の構成および動作を、図を用いて説明する。図２３は、スペクトルサブトラクション部１６の構成例を示すブロック図である。本発明の第１の実施例で説明した図４に示すスペクトルサブトラクション部の構成例との差異は、２つの入力信号が変換領域信号群１および変換領域信号群２によって置換されていることおよび、図４におけるフーリエ変換器６０とフーリエ変換器６１が削除されていることである。図２２に示すエコーキャンセラの構成例で説明したように、変換領域信号群１は、図２１における減算器４の出力信号をフーリエ変換したものであり、変換領域信号群２は、図２１においてエコーキャンセラ１３から減算器４へと向かう信号をフーリエ変換したものである。これらは、図４に示すスペクトルサブトラクション部において、フーリエ係数減算器６６ｍ（ｍ＝１〜Ｍ）に入力される２つの信号と全く同一である。したがって、図２３に示すスペクトルサブトラクション部１６は、図４に示すスペクトルサブトラクション部と全く同一の信号を出力することができる。したがって、図２１に示す本発明の第９の実施例においても本発明の第１の実施例と同様の効果があることが分かる。スペクトルサブトラクション部１６への２つの入力信号がエコーキャンセラ１３からの変換領域信号群１および変換領域信号群２として直接接続されることにより、スペクトルサブトラクション部１６の内部におけるフーリエ変換を削減しながら、本発明の効果を得ることができる。
【００８５】
本発明の第９の実施例が、本発明の第１の実施例に対応するように、本発明の他の実施例を変換領域で実現することも可能である。また、フーリエ変換領域以外にコサイン変換領域などを用いることも可能である。
【００８６】
線形エコーキャンセラとして非特許文献４に示されるサブバンド領域エコーキャンセラを用い、かつ、スペクトルサブトラクション部またはスペクトルサプレッション部をサブバンド領域に変換してから処理を行う場合には、各処理および部分の接続においてサブバンド領域に変換するためのフィルタを省略し、サブバンド領域内で接続することが可能である。この例を、図を用いて説明する。図２４は、本発明の第１０の実施例を示すブロック図である。この本発明の第１０の実施例では、サブバンド領域において、エコーキャンセラとスペクトルサブトラクションを行っている。まず、マイクロホン１からの信号はサブバンド分析フィルタバンク９１においてＮ個の帯域に展開され、遠端信号はサブバンド分析フィルタバンク９２においてＮ個の帯域に展開される。展開された各帯域ごとに、エコーキャンセラ部９３ｎ、減算器９４ｎ、音声検出部９５ｎ、スペクトルサブトラクション部９６ｎ（ここでｎ＝１〜Ｎ）を有している。各帯域ごとのスペクトルサブトラクション部９６ｎの出力は、サブバンド合成フィルタバンク９９によって集められ、もとの信号領域へと逆変換され、近端信号として出力される。各帯域における、減算器９４ｎ、音声検出部９５ｎ、スペクトルサブトラクション部９６ｎ（ここでｎ＝１〜Ｎ）の処理は、エコーキャンセラのタップ数や、スペクトルサブトラクション部のフーリエ変換器の規模が異なるが、それ以外は図３に示す本発明の第１の実施例と同様に動作するので、その処理の詳細な説明は省略する。本発明の第１０の実施例では、すべての処理がサブバンド領域に変換されてから行われるため、線形エコーキャンセラ３における合成フィルタバンク、および、スペクトルサブトラクション部におけるサブバンド分析フィルタバンクを省略して接続することができる。この場合には、省略されたサブバンド分析フィルタバンクおよびサブバンド合成フィルタバンクに相当する演算量が削減され、またその演算に相当する遅延時間が短縮される。本発明の第１０の実施例におけるスペクトルサブトラクション部をスペクトルサプレッション部に置換した構成も可能である。また変換領域をサブバンド領域以外とした構成も可能である。
【００８７】
本発明の第１０の実施例が、本発明の第１の実施例に対応するように、本発明の他の実施例をサブバンド領域で実現することも可能である。また、フーリエ変換領域以外にコサイン変換領域などを用いることも可能である。
【００８８】
図２５は本発明の第１１の実施例を示すブロック図である。本発明の第１１の実施例では、エコーキャンセラおよびスペクトルサブトラクションをフーリエ変換領域で行っている。まず、マイクロホン１からの信号はフーリエ変換器１９１においてＭ個の帯域に展開され、遠端信号はフーリエ変換器１９２においてＭ個の帯域に展開される。展開された各帯域ごとに、エコーキャンセラ部１９３ｍ、減算器１９４ｍ、音声検出部１９５ｍ、フーリエ係数減算器６６ｍ（ここでｍ＝１〜Ｍ）を有している。各帯域ごとのフーリエ係数減算器６６ｍの出力は、逆フーリエ変換器１９９によって集められ、もとの信号領域へと逆変換され、近端信号として出力される。各帯域における、減算器１９４ｍ、音声検出部１９５ｍ（ここでｍ＝１〜Ｍ）の処理は、エコーキャンセラのタップ数が異なるが、それ以外は図３に示す本発明の第１の実施例と同様に動作するので、その処理の詳細な説明は省略する。本発明の第１０の実施例も本発明の第１１の実施例もともに変換領域において処理を行っているが、異なる点は、変換領域が異なるために帯域の数Ｍが多いこと、および、図２４におけるスペクトルサブトラクション部が、図２５ではフーリエ係数減算器６６ｍで置き換えられた形になっていることである。すなわちスペクトルサブトラクション部におけるフーリエ変換器および逆フーリエ変換器が不要となり、フーリエ係数減算器６６ｍのみでスペクトルサブトラクションに必要な動作を行っている。これは、本発明の第１１の実施例では、すべての処理がすでにフーリエ変換領域の多数の帯域に展開されているため、スペクトルサブトラクションを行うために改めてフーリエ変換を行う必要がなくなるからである。本発明の第１１の実施例では、省略されたフーリエ変換器および逆フーリエ変換器に相当する演算量が削減される。また、本発明の第１１の実施例におけるフーリエ係数減算器をフーリエ係数乗算器に置換した構成も可能である。
【００８９】
本発明の第１１の実施例が、本発明の第１の実施例に対応するように、本発明の他の実施例をフーリエ変換領域で実現することも可能である。また、フーリエ変換領域以外にコサイン変換領域などを用いることも可能である。
【００９０】
以上では、線形エコーキャンセラを用いた場合について説明してきたが、線形エコーキャンセラに代えて非線形エコーキャンセラを用いた場合についても、スペクトルサブトラクション部、または、スペクトルサプレッション部と組み合わせた場合に、本発明の効果は得られる。
【００９１】
以上、ハンズフリー電話器を応用例として、本発明の説明をしてきたが、ハンズフリー電話器だけでなく、スピーカから音楽が拡声されている環境における収音や、ハンドセットにおけるレシーバからのエコーが問題となるような収音においても、本発明を用いることができる。
【図面の簡単な説明】
【００９２】
【図１】本発明の実施の形態を示すブロック図である。
【図２】変換部の構成例を示すブロック図である。
【図３】本発明の第１の実施例を示すブロック図である。
【図４】スペクトルサブトラクション部の構成例を示すブロック図である。
【図５】フーリエ係数減算器の第１の構成例を示すブロック図である。
【図６】平滑部の構成例を示すブロック図である。
【図７】フーリエ係数減算器の第２の構成例を示すブロック図である。
【図８】平滑部の構成例を示すブロック図である。
【図９】平滑部の構成例を示すブロック図である。
【図１０】平滑部の構成例を示すブロック図である。
【図１１】本発明の第２の実施例を示すブロック図である。
【図１２】本発明の第３の実施例を示すブロック図である。
【図１３】スペクトルサプレッション部の構成例を示すブロック図である。
【図１４】フーリエ係数乗算器の第１の構成例を示すブロック図である。
【図１５】フーリエ係数乗算器の第２の構成例を示すブロック図である。
【図１６】本発明の第４の実施例を示すブロック図である。
【図１７】本発明の第５の実施例を示すブロック図である。
【図１８】本発明の第６の実施例を示すブロック図である。
【図１９】本発明の第７の実施例を示すブロック図である。
【図２０】本発明の第８の実施例を示すブロック図である。
【図２１】本発明の第９の実施例を示すブロック図である。
【図２２】エコーキャンセラの構成を示すブロック図である。
【図２３】スペクトルサブトラクション部の構成例を示すブロック図である。
【図２４】本発明の第１０の実施例を示すブロック図である。
【図２５】本発明の第１１の実施例を示すブロック図である。
【図２６】従来のエコー除去方法を示すブロック図である。
【図２７】線形エコーキャンセラの構成を示すブロック図である。
【符号の説明】
【００９３】
１：マイクロホン
２：スピーカ
３：線形エコーキャンセラ
４、９４ｎ（ｎ＝１〜Ｎ）、１９４ｍ（ｍ＝１〜Ｍ）：減算器
５、９５ｎ（ｎ＝１〜Ｎ）、１９５ｍ（ｍ＝１〜Ｍ）：音声検出部
６、９６ｎ（ｎ＝１〜Ｎ）：スペクトルサブトラクション部
７：スペクトルサプレッション部
３０：適応フィルタ
３８：適応フィルタ群
３５、３７、６０、６１、７０、７１、１９１，１９２：フーリエ変換器
３６、６４、７４，１９９：逆フーリエ変換器
６６ｍ（ｍ＝１〜Ｍ）：フーリエ係数減算器
９１、９２：サブバンド分析フィルタバンク
９３ｎ（ｎ＝１〜Ｎ）、１９３ｍ（ｍ＝１〜Ｍ）：エコーキャンセラ部
９９：サブバンド合成フィルタバンク
１００：変換部
１６０、１６１：周波数分割部
１６６ｍ（ｍ＝１〜Ｍ）：補正部
１６４：周波数合成部
７０１、７０４：絶対値計算部
７０２：割算器
７０５：平滑部
７０６：減算器
７０７：乗算器
７１０、７１１：平滑部
７６ｍ（ｍ＝１〜Ｍ）：フーリエ係数乗算器
７３１、７３４：絶対値計算部
７４２、７４５：割算器
７４０、７４１、７４３、７４７、：平滑部
７０６：減算器
７０７、７３７、７４６：乗算器
８：歪発生部
【図１】
2008245320.tif 000003
【図２】
2008245320.tif 000004
【図３】
2008245320.tif 000005
【図４】
2008245320.tif 000006
【図５】
2008245320.tif 000007
【図６】
2008245320.tif 000008
【図７】
2008245320.tif 000009
【図８】
2008245320.tif 000010
【図９】
2008245320.tif 000011
【図１０】
2008245320.tif 000012
【図１１】
2008245320.tif 000013
【図１２】
2008245320.tif 000014
【図１３】
2008245320.tif 000015
【図１４】
2008245320.tif 000016
【図１５】
2008245320.tif 000017
【図１６】
2008245320.tif 000018
【図１７】
2008245320.tif 000019
【図１８】
2008245320.tif 000020
【図１９】
2008245320.tif 000021
【図２０】
2008245320.tif 000022
【図２１】
2008245320.tif 000023
【図２２】
2008245320.tif 000024
【図２３】
2008245320.tif 000025
【図２４】
2008245320.tif 000026
【図２５】
2008245320.tif 000027
【図２６】
2008245320.tif 000028
【図２７】
2008245320.tif 000029