(57)【要約】【課題】  演算量を低減し、短時間でエコー抑圧を行う。【解決手段】  再生信号および収音信号をそれぞれ周波数分析し、ローカルピークにおける再生信号の周波数とローカルピークにおける収音信号の周波数との差が所定範囲内にあるときの各信号の周波数成分の振幅比から補正量を求め、次いで、再生信号の振幅スペクトルを補正量で補正したものと収音信号の振幅スペクトルとの大小判定に基づいて選択的に抑圧された収音信号の周波数成分（エコー抑圧信号の周波数成分）を時間領域に変換して出力信号を得る。【選択図】  図２
2006340189.tif 000002
【特許請求の範囲】
【請求項１】
入力された再生信号を所定の時間長（以下、「フレーム」という。）で周波数領域に変換して、再生信号の振幅スペクトル（以下、「再生信号振幅スペクトル」という。）を出力する再生信号周波数分析手段と、
入力された収音信号を所定のフレームで周波数領域に変換して、収音信号の振幅スペクトル（以下、「収音信号振幅スペクトル」という。）および位相スペクトル（以下、「収音信号位相スペクトル」という。）を出力する収音信号周波数分析手段と、
再生信号周波数分析手段によって出力された再生信号振幅スペクトルおよび収音信号周波数分析手段によって出力された収音信号振幅スペクトルから、再生信号振幅スペクトルのローカルピークにおける周波数と収音信号振幅スペクトルのローカルピークにおける周波数との差が所定の範囲内であるときの振幅比をそれぞれ求め、この各振幅比を、それぞれの振幅比が求められたときの周波数を含む周波数帯域の各周波数に対応する補正量として出力する補正量算出手段と、
再生信号周波数分析手段によって出力された再生信号振幅スペクトルを補正量算出手段によって出力された補正量で補正して、この補正された再生信号振幅スペクトルと収音信号周波数分析手段によって出力された収音信号振幅スペクトルとの大小判定を周波数領域の各周波数について行い、補正された再生信号振幅スペクトルが収音信号振幅スペクトルよりも大きいと判定されたときの周波数に対する収音信号振幅スペクトルの大きさを抑圧した収音信号振幅スペクトル（以下、「エコー抑圧信号振幅スペクトル」という。）を出力する目的成分選択出力手段と、
目的成分選択出力手段によって出力されたエコー抑圧信号振幅スペクトルおよび収音信号周波数分析手段によって出力された収音信号位相スペクトルから周波数領域における信号を合成し、当該信号を時間領域に変換して出力信号を出力するエコー抑圧信号出力手段と
を備えたことを特徴とするエコー抑圧装置。
【請求項２】
入力された複数チャンネルの再生信号を加算し、加算再生信号を出力する総和手段
を備え、
再生信号周波数分析手段は、
総和手段によって出力された加算再生信号を所定の時間長で周波数領域に変換して、加算再生信号の振幅スペクトルを再生信号振幅スペクトルとして出力するものである
ことを特徴とする請求項１に記載のエコー抑圧装置。
【請求項３】
再生信号周波数分析手段は、
入力された再生信号／総和手段によって出力された加算再生信号を所定の時間長（以下、「フレーム」という。）で周波数領域に変換して、再生信号／加算再生信号の振幅スペクトル（以下、「暫定再生信号振幅スペクトル」という。）を出力する暫定スペクトル出力手段と、
上記再生信号振幅スペクトルを出力するスペクトル平滑化手段と、
スペクトル平滑化手段によって出力された再生信号振幅スペクトルを記憶する記憶手段と
から構成され、
上記スペクトル平滑化手段は、
暫定スペクトル出力手段によって出力された暫定再生信号振幅スペクトルを、記憶手段に記憶される過去のフレームにおける暫定再生信号振幅スペクトルに基づいて平滑化したものを、再生信号振幅スペクトルとして出力するものである
ことを特徴とする請求項１または請求項２に記載のエコー抑圧装置。
【請求項４】
再生信号周波数分析手段は、
入力された複数チャンネルの再生信号をチャンネルごとに所定の時間長で周波数領域に変換して、各再生信号の振幅スペクトル（以下、「チャンネル再生信号振幅スペクトル」という。）を出力するものであり、
総和手段は、
上記再生信号周波数分析手段によって出力された再生信号ごとのチャンネル再生信号振幅スペクトルを加算して再生信号振幅スペクトルを出力するものである
ことを特徴とする請求項２に記載のエコー抑圧装置。
【請求項５】
総和手段は、
上記再生信号周波数分析手段によって出力された再生信号ごとのチャンネル再生信号振幅スペクトルを加算して暫定再生信号振幅スペクトルを出力するチャンネル加算手段と、
上記再生信号振幅スペクトルを出力する総和スペクトル平滑化手段と、
スペクトル平滑化手段によって出力された再生信号振幅スペクトルを記憶する格納手段と
から構成され、
上記総和スペクトル平滑化手段は、
チャンネル加算手段によって出力された暫定再生信号振幅スペクトルを、格納手段に記憶される過去のフレームにおける暫定再生信号振幅スペクトルに基づいて平滑化したものを、再生信号振幅スペクトルとして出力するものである
ことを特徴とする請求項４に記載のエコー抑圧装置。
【請求項６】
各再生信号および収音信号からダブルトーク状態であるか否かを判定するダブルトーク検出手段を備え、
補正量算出手段は、
再生信号周波数分析手段によって出力された再生信号振幅スペクトルおよび収音信号周波数分析手段によって出力された収音信号振幅スペクトルから、再生信号振幅スペクトルのローカルピークにおける周波数と収音信号振幅スペクトルのローカルピークにおける周波数との差が所定の範囲内であるときの振幅比をそれぞれ求め、この各振幅比を、それぞれの振幅比が求められたときの周波数を含む周波数帯域の各周波数に対応する暫定補正量とし、
ダブルトーク検出手段によってダブルトーク状態ではないと判定された場合には、各暫定補正量を周波数領域において平滑化したものを、周波数領域の各周波数に対応する補正量として出力し、
ダブルトーク検出手段によってダブルトーク状態であると判定された場合には、周波数領域の各周波数について、
暫定補正量と過去のフレームにおける補正量との差が所定の範囲内であるか否かを判定し（以下、「補正量判定」という。）、
補正量判定に合格した場合には、暫定補正量を過去のフレームにおける補正量に基づいて平滑化したものを、当該周波数に対応する補正量として出力し、
補正量判定に合格しなかった場合には、過去のフレームにおける補正量と同じ補正量を、当該周波数に対応する補正量として出力するものである
ことを特徴とする請求項１ないし請求項５に記載のエコー抑圧装置。
【請求項７】
目的成分選択出力手段によって出力されたエコー抑圧信号振幅スペクトルに所定の係数を乗じて出力する第１積算手段と、
収音信号周波数分析手段によって出力された収音信号振幅スペクトルに所定の係数を乗じて出力する第２積算手段と、
第１積算手段による出力と第２積算手段による出力とを加算した加算振幅スペクトルを出力する加算手段と
を備え、
エコー抑圧信号出力手段は、
加算手段によって出力された加算振幅スペクトルおよび収音信号周波数分析手段によって出力された収音信号位相スペクトルから周波数領域における信号を合成し、当該信号を時間領域に変換して出力信号を出力するものである
ことを特徴とする請求項１ないし請求項６に記載のエコー抑圧装置。
【請求項８】
目的成分選択出力手段は、
再生信号周波数分析手段によって出力された再生信号振幅スペクトルを補正量算出手段によって出力された補正量で補正して、この補正された再生信号振幅スペクトルと収音信号周波数分析手段によって出力された収音信号振幅スペクトルとの大小判定（以下、「閾値判定」という。）を周波数領域の各周波数について行い、
閾値判定において補正された再生信号振幅スペクトルが収音信号振幅スペクトルよりも大きくないと判定されたときの周波数に対する指標に所定の値（以下、「フラグ値」という。）を設定するとともに、閾値判定において補正された再生信号振幅スペクトルが収音信号振幅スペクトルよりも大きいと判定されたときの周波数に対する収音信号振幅スペクトルの大きさを抑圧した収音信号振幅スペクトルを候補スペクトルとし、
指標にフラグ値が設定された周波数（以下、「フラグ周波数」という。）について、Ｓ個の過去のフレームに対する周波数領域Ｒ（但し、Ｒ＝１，２，・・・，Ｓとし、Ｓは１以上の整数とする。）におけるフラグ周波数またはフラグ周波数を含む所定帯域の各周波数に対する指標にフラグ値が設定されているか否かを判定し（以下、「フラグ判定」という。）、フラグ判定においてフラグ値が設定されていないと判定された場合があるときのフラグ周波数に対する候補スペクトルの大きさを抑圧した候補スペクトルをエコー抑圧信号振幅スペクトルとして出力するものである
ことを特徴とする請求項１ないし請求項７に記載のエコー抑圧装置。
【請求項９】
エコー抑圧装置の再生信号周波数分析手段が、エコー抑圧装置に入力された再生信号を所定の時間長（以下、「フレーム」という。）で周波数領域に変換して、再生信号の振幅スペクトル（以下、「再生信号振幅スペクトル」という。）を出力する再生信号周波数分析ステップと、
エコー抑圧装置の収音信号周波数分析手段が、エコー抑圧装置に入力された収音信号を所定のフレームで周波数領域に変換して、収音信号の振幅スペクトル（以下、「収音信号振幅スペクトル」という。）および位相スペクトル（以下、「収音信号位相スペクトル」という。）を出力する収音信号周波数分析ステップと、
エコー抑圧装置の補正量算出手段が、再生信号周波数分析ステップにおいて出力された再生信号振幅スペクトルおよび収音信号周波数分析ステップにおいて出力された収音信号振幅スペクトルから、再生信号振幅スペクトルのローカルピークにおける周波数と収音信号振幅スペクトルのローカルピークにおける周波数との差が所定の範囲内であるときの振幅比をそれぞれ求め、この各振幅比を、それぞれの振幅比が求められたときの周波数を含む周波数帯域の各周波数に対応する補正量として出力する補正量算出ステップと、
エコー抑圧装置の目的成分選択出力手段が、再生信号周波数分析ステップにおいて出力された再生信号振幅スペクトルを補正量算出ステップにおいて出力された補正量で補正して、この補正された再生信号振幅スペクトルと収音信号周波数分析ステップにおいて出力された収音信号振幅スペクトルとの大小判定を周波数領域の各周波数について行い、補正された再生信号振幅スペクトルが収音信号振幅スペクトルよりも大きいと判定されたときの周波数に対する収音信号振幅スペクトルの大きさを抑圧した収音信号振幅スペクトル（以下、「エコー抑圧信号振幅スペクトル」という。）を出力する目的成分選択出力ステップと、
エコー抑圧装置のエコー抑圧信号出力手段が、目的成分選択出力ステップにおいて出力されたエコー抑圧信号振幅スペクトルおよび収音信号周波数分析ステップにおいて出力された収音信号位相スペクトルから周波数領域における信号を合成し、当該信号を時間領域に変換して出力信号を出力するエコー抑圧信号出力ステップと
を有することを特徴とするエコー抑圧方法。
【請求項１０】
エコー抑圧装置の総和手段が、エコー抑圧装置に入力された複数チャンネルの再生信号を加算し、加算再生信号を出力する総和ステップ
を有し、
再生信号周波数分析ステップは、
総和ステップにおいて出力された加算再生信号を所定の時間長で周波数領域に変換して、加算再生信号の振幅スペクトルを再生信号振幅スペクトルとして出力するものである
ことを特徴とする請求項９に記載のエコー抑圧方法。
【請求項１１】
再生信号周波数分析ステップは、
エコー抑圧装置のスペクトル平滑化手段が、エコー抑圧装置に入力された再生信号／総和ステップにおいて出力された加算再生信号を所定の時間長（以下、「フレーム」という。）で周波数領域に変換して、再生信号／加算再生信号の振幅スペクトル（以下、「暫定再生信号振幅スペクトル」という。）を出力する暫定スペクトル出力ステップと、
エコー抑圧装置のスペクトル平滑化手段が、上記再生信号振幅スペクトルを出力するスペクトル平滑化ステップと、
エコー抑圧装置の記憶手段が、スペクトル平滑化ステップにおいて出力された再生信号振幅スペクトルを記憶する記憶ステップと
からなり、
上記スペクトル平滑化ステップは、
暫定スペクトル出力ステップにおいて出力された暫定再生信号振幅スペクトルを、記憶手段に記憶される過去のフレームにおける暫定再生信号振幅スペクトルに基づいて平滑化したものを、再生信号振幅スペクトルとして出力するものである
ことを特徴とする請求項９または請求項１０に記載のエコー抑圧方法。
【請求項１２】
再生信号周波数分析ステップは、
エコー抑圧装置の再生信号周波数分析手段が、エコー抑圧装置に入力された複数チャンネルの再生信号をチャンネルごとに所定の時間長で周波数領域に変換して、各再生信号の振幅スペクトル（以下、「チャンネル再生信号振幅スペクトル」という。）を出力するものであり、
総和ステップは、
上記再生信号周波数分析ステップにおいて出力された再生信号ごとのチャンネル再生信号振幅スペクトルを加算して再生信号振幅スペクトルを出力するものである
ことを特徴とする請求項１０に記載のエコー抑圧方法。
【請求項１３】
総和ステップは、
エコー抑圧装置のチャンネル加算手段が、上記再生信号周波数分析ステップにおいて出力された再生信号ごとのチャンネル再生信号振幅スペクトルを加算して暫定再生信号振幅スペクトルを出力するチャンネル加算ステップと、
エコー抑圧装置の総和スペクトル平滑化手段が、上記再生信号振幅スペクトルを出力する総和スペクトル平滑化ステップと、
エコー抑圧装置の格納手段が、スペクトル平滑化ステップにおいて出力された再生信号振幅スペクトルを記憶する格納ステップと
からなり、
上記総和スペクトル平滑化ステップは、
チャンネル加算ステップにおいて出力された暫定再生信号振幅スペクトルを、格納手段に記憶される過去のフレームにおける暫定再生信号振幅スペクトルに基づいて平滑化したものを、再生信号振幅スペクトルとして出力するものである
ことを特徴とする請求項１２に記載のエコー抑圧方法。
【請求項１４】
エコー抑圧装置のダブルトーク検出手段が、各再生信号および収音信号からダブルトーク状態であるか否かを判定するダブルトーク検出ステップを有し、
補正量算出ステップは、
再生信号周波数分析ステップにおいて出力された再生信号振幅スペクトルおよび収音信号周波数分析ステップにおいて出力された収音信号振幅スペクトルから、再生信号振幅スペクトルのローカルピークにおける周波数と収音信号振幅スペクトルのローカルピークにおける周波数との差が所定の範囲内であるときの振幅比をそれぞれ求め、この各振幅比を、それぞれの振幅比が求められたときの周波数を含む周波数帯域の各周波数に対応する暫定補正量とし、
ダブルトーク検出ステップにおいてダブルトーク状態ではないと判定された場合には、各暫定補正量を周波数領域において平滑化したものを、周波数領域の各周波数に対応する補正量として出力し、
ダブルトーク検出ステップにおいてダブルトーク状態であると判定された場合には、周波数領域の各周波数について、
暫定補正量と過去のフレームにおける補正量との差が所定の範囲内であるか否かを判定し（以下、「補正量判定」という。）、
補正量判定に合格した場合には、暫定補正量を過去のフレームにおける補正量に基づいて平滑化したものを、当該周波数に対応する補正量として出力し、
補正量判定に合格しなかった場合には、過去のフレームにおける補正量と同じ補正量を、当該周波数に対応する補正量として出力するものである
ことを特徴とする請求項９ないし請求項１３に記載のエコー抑圧方法。
【請求項１５】
エコー抑圧装置の第１積算手段が、目的成分選択出力ステップにおいて出力されたエコー抑圧信号振幅スペクトルに所定の係数を乗じて出力する第１積算ステップと、
エコー抑圧装置の第２積算手段が、収音信号周波数分析ステップにおいて出力された収音信号振幅スペクトルに所定の係数を乗じて出力する第２積算手段と、
エコー抑圧装置の加算手段が、第１積算ステップにおける出力と第２積算ステップにおける出力とを加算した加算振幅スペクトルを出力する加算ステップと
を有し、
エコー抑圧信号出力ステップは、
加算ステップにおいて出力された加算振幅スペクトルおよび収音信号周波数分析ステップにおいて出力された収音信号位相スペクトルから周波数領域における信号を合成し、当該信号を時間領域に変換して出力信号を出力するものである
ことを特徴とする請求項９ないし請求項１４に記載のエコー抑圧方法。
【請求項１６】
目的成分選択出力ステップは、
再生信号周波数分析ステップにおいて出力された再生信号振幅スペクトルを補正量算出ステップにおいて出力された補正量で補正して、この補正された再生信号振幅スペクトルと収音信号周波数分析ステップにおいて出力された収音信号振幅スペクトルとの大小判定（以下、「閾値判定」という。）を周波数領域の各周波数について行い、
閾値判定において補正された再生信号振幅スペクトルが収音信号振幅スペクトルよりも大きくないと判定されたときの周波数に対する指標に所定の値（以下、「フラグ値」という。）を設定するとともに、閾値判定において補正された再生信号振幅スペクトルが収音信号振幅スペクトルよりも大きいと判定されたときの周波数に対する収音信号振幅スペクトルの大きさを抑圧した収音信号振幅スペクトルを候補スペクトルとし、
指標にフラグ値が設定された周波数（以下、「フラグ周波数」という。）について、Ｓ個の過去のフレームに対する周波数領域Ｒ（但し、Ｒ＝１，２，・・・，Ｓとし、Ｓは１以上の整数とする。）におけるフラグ周波数またはフラグ周波数を含む所定帯域の各周波数に対する指標にフラグ値が設定されているか否かを判定し（以下、「フラグ判定」という。）、フラグ判定においてフラグ値が設定されていないと判定された場合があるときのフラグ周波数に対する候補スペクトルの大きさを抑圧した候補スペクトルをエコー抑圧信号振幅スペクトルとして出力するものである
ことを特徴とする請求項９ないし請求項１５に記載のエコー抑圧方法。
【請求項１７】
請求項１から請求項８に記載されたエコー抑圧装置としてコンピュータを機能させるためのエコー抑圧プログラム。
【請求項１８】
請求項１７に記載のエコー抑圧プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、例えばモノラル、もしくは多チャネル音響再生系を有する通信会議システムに適用され、ハウリングの原因及び聴覚上の障害となる音響エコーを抑圧するエコー抑圧装置、エコー抑圧方法、エコー抑圧プログラムおよびその記録媒体に関する。
【背景技術】
【０００２】
図１８に示すように、従来のＮ(≧１の整数)チャンネルエコー抑圧方法は、Ｎチャンネルの再生信号ｘ１（ｋ）〜ｘＮ（ｋ）がスピーカ１１〜１Ｎからマイクロホン２へ回り込むエコーを抑圧（エコーの抑圧とは、エコーを必要十分に低減すること、あるいは消去することをいう。）した出力信号ｅ（ｋ）を、マイクロホン２で収音した収音信号ｙ（ｋ）から、スピーカ１１〜１Ｎとマイクロホン２間のエコー経路のインパルス応答を要素として持つ長さ（即ちタップ数）Ｌのベクトルｈ１〜ｈＮの疑似特性ｈ＾１（ｋ）〜ｈ＾Ｎ（ｋ）を保持する疑似エコー経路を実現する適応フィルタ３１〜３Ｎによって出力した擬似エコー信号ｄ＾１（ｋ）〜ｄ＾Ｎ（ｋ）を除去することで得ていた（非特許文献１参照）。ここで、再生信号ｘ１（ｋ）〜ｘＮ（ｋ）、収音信号ｙ（ｋ）、擬似エコー信号ｄ＾１（ｋ）〜ｄ＾Ｎ（ｋ）、出力信号ｅ（ｋ）はいずれも適宜に公知のサンプリング処理や量子化処理のされたディジタル信号であり、ｋは、所定間隔の離散的な時刻を指す数（サンプル点の番号）である。サンプリングとは、アナログの音声信号をディジタル信号に変換するために変数のある区間の値を１つの代表する値に置き換えることで、例えばサンプリング周波数１６ｋＨｚ（１秒間に１６０００回）で行われる。なお、スピーカ１１〜１Ｎに与える入力信号、マイクロホン２で受音された受音信号はアナログ信号であるから、ディジタル信号への変換（入力信号から再生信号への変換、受音信号から収音信号への変換）のためにＤ／Ａ変換器が必要となるが、図１８では示していない。
【０００３】
つまり、適応フィルタ３１〜３Ｎは、再生信号ｘ１（ｋ）〜ｘＮ（ｋ）と疑似特性ｈ＾１（ｋ）〜ｈ＾Ｎ（ｋ）との畳み込み演算によって疑似エコー信号ｄ＾１（ｋ）〜ｄ＾Ｎ（ｋ）を生成し、信号合成器４は、実際のエコー信号を含むマイクロホン２の収音信号（「エコー抑圧前信号」とも呼ぶ。）ｙ（ｋ）から疑似エコー信号ｄ＾１（ｋ）〜ｄ＾Ｎ（ｋ）を減算することで、エコー抑圧装置の出力信号（「エコー抑圧信号」とも呼ぶ。）ｅ（ｋ）を出力する。また、この従来のエコー抑圧装置では、再生信号ｘ１（ｋ）〜ｘＮ（ｋ）と出力信号ｅ（ｋ）とを用いて、疑似特性ｈ＾１（ｋ）〜ｈ＾Ｎ（ｋ）の特性を随時更新し、適応フィルタ３１〜３Ｎに設定している。
【０００４】
適応フィルタ３１〜３Ｎにおいて、例えば学習同定アルゴリズムを用いた場合の疑似特性ｈ＾１（ｋ）〜ｈ＾Ｎ（ｋ）の推定は、式（１）で表される。
【数１】
2006340189.tif 000003
【０００５】
ここで、チャンネルｎは１〜Ｎの間の自然数、ｘｎ（ｋ）＝［ｘｎ（ｋ），ｘｎ（ｋ−１），…，ｘｎ（ｋ―Ｌ＋１）］Ｔ（Ｔは転置行列であることを表す。）、ψは係数の更新幅を与えるステップサイズであり、０〜２の間の値をとる実数である。δは分母が０になることを防止するための微小な定数である。式（１）が示すように、前回の疑似特性ｈ＾１（ｋ−１）に対し更新量を加えて今回の疑似特性ｈ＾１（ｋ）を得る。
【非特許文献１】藤井哲郎、島田正治、“多チャンネル適応ディジタルフィルタ、”電子通信学会論文誌’８６／１０、Ｖｏｌ．Ｊ６９−Ａ  Ｎｏ．１０．
【発明の開示】
【発明が解決しようとする課題】
【０００６】
従来のエコー抑圧方法では、式（１）によって再生信号ｘ１（ｋ）〜ｘＮ（ｋ）のチャンネル数と同数の疑似特性ｈ＾１（ｋ）〜ｈ＾Ｎ（ｋ）を随時更新しているため、演算量が飛躍的に増大するという問題点があった。また、適応フィルタ３１〜３Ｎにおける擬似特性推定の収束には一定時間を要するため、学習途中において推定誤差が起こり、エコー推定精度が劣化するという問題点もあった。さらに適応フィルタの擬似特性の学習後も音響結合量（マイクロホンおよびスピーカ間の系の伝達関数の振幅によって定義され、各再生信号の振幅スペクトルと収音信号の振幅スペクトルとの比で表すことができる。）の急激な変化が生じた場合、受話シングルトーク中でさえもエコー抑圧精度が大きく劣化する問題点もあった。
【０００７】
本発明が解決しようとする課題は、上記の問題点に鑑み、演算量を低減し、短時間でエコー抑圧を行うエコー抑圧装置、エコー抑圧方法、エコー抑圧プログラムおよびその記録媒体を提供することである。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明は、再生信号および収音信号をそれぞれ周波数分析し、ローカルピークにおける再生信号の周波数とローカルピークにおける収音信号の周波数との差が所定範囲内にあるときの各信号の周波数成分の振幅比から補正量を求め、次いで、再生信号の振幅スペクトルを補正量で補正したものと収音信号の振幅スペクトルとの大小判定に基づいて選択的に抑圧された収音信号の周波数成分（エコー抑圧信号の周波数成分）を時間領域に変換して出力信号を得る。
【０００９】
また、本発明では、上記の再生信号を、複数チャンネルの各再生信号を加算したものとすることでもよい。あるいは、再生信号の周波数成分を、複数チャンネルの各再生信号の周波数成分を加算したものとすることでもよい。さらに、再生信号の周波数成分を、エコーを考慮して平滑化したものとすることでもよい。
【００１０】
さらに、本発明では、ローカルピークにおける再生信号の周波数とローカルピークにおける収音信号の周波数との差が所定範囲内にあるときの各信号の周波数成分の振幅比を暫定補正量とし、ダブルトーク状態の判定に基づき、ダブルトーク状態の場合およびダブルトーク状態ではない場合に分けて、暫定補正量を平滑化したものを補正量とすることでもよい。
【００１１】
さらに、本発明では、再生信号の振幅スペクトルを補正量で補正したものと収音信号の振幅スペクトルとの大小判定に基づいて選択的に抑圧された収音信号の周波数成分に所定割合で収音信号の周波数成分を付加して、これを時間領域に変換して出力信号を得るとしてもよい。
【００１２】
さらに、本発明では、再生信号の振幅スペクトルを補正量で補正したものと収音信号の振幅スペクトルとの大小判定に基づいて選択的に抑圧された収音信号の周波数成分を候補スペクトルとし、また、抑圧されなかったときの周波数（フラグ周波数）に対して所定の指標を設定し、過去のフレーム（周波数領域に変換する信号の時間長）に対する周波数領域におけるフラグ周波数ないしフラグ周波数を含む所定帯域の各周波数について指標設定の有無を判定し、この判定に基づいて選択的に抑圧された候補スペクトルを時間領域に変換して出力信号を得るとしてもよい。
【００１３】
また、本発明のエコー抑圧装置をコンピュータ上で機能させるエコー抑圧プログラムによって、コンピュータをエコー抑圧装置として作動処理させることができる。そして、このエコー抑圧プログラムを記録した、コンピュータ読み取り可能なプログラム記録媒体によって、他のコンピュータをエコー抑圧装置として機能させることや、エコー抑圧プログラムを流通させることなどが可能になる。
【発明の効果】
【００１４】
この発明によれば、再生信号および収音信号をそれぞれ周波数分析し、ローカルピークにおける再生信号の周波数とローカルピークにおける収音信号の周波数との差が所定範囲内にあるときの各信号の周波数成分の振幅比から補正量を求め、次いで、再生信号の振幅スペクトルを補正量で補正したものと収音信号の振幅スペクトルとの大小判定に基づいてエコー抑圧信号の周波数成分を算出するので、従来技術における適応フィルタを用いた演算に比較して演算量を十分低減でき、また、短時間でエコー抑圧を行うことができる。
【００１５】
さらに本発明の一面においては、ダブルトーク状態とそれ以外とで状態に応じた補正量を求めることで、シングルトーク状態に音響結合量が急激に変化したとしても頑健なエコー抑圧を実現できるという効果をも有する。
【発明を実施するための最良の形態】
【００１６】
以下にこの発明の実施形態を、図面を参照しながら説明するが、各図中の対応する部分は同一参照番号を付けて重複説明を省略する。
【００１７】
下記の各実施形態においては、説明の便宜から、本発明のエコー抑圧装置・方法が話者Ｃおよび話者Ｄによる双方向音声通信に用いられた場合を例示して説明する。従って、下記の説明および図面における「収音信号」とは、話者Ｃの話し声などの音声が音響信号収音手段であるマイクロホンによって収音されて得られるアナログ信号がディジタル信号に変換されたものを表し、「出力信号」とは、収音信号が後述の処理を受けて得られるディジタル信号（アナログ信号に変換されて話者Ｄ側へ送られることになるとする。）を表し、「再生信号」とは、話者Ｄ側から話者Ｃ側へ送られてきたアナログ信号をディジタル信号に変換した信号を表すものとする。また、いずれの信号も適宜に公知のサンプリング処理や量子化処理のされたディジタル信号（時間領域）であるとし、収音信号へのＡ／Ｄ変換や出力信号に対するＤ／Ａ変換などを実行するために必要となる構成要素（手段）は、いずれも公知技術の常套手段によって達成されるから、説明および図示を略する。
【００１８】
なお、話者２名（話者Ｃおよび話者Ｄ）による双方方向音声通信に限定されるものではなく、例えば音声会議やテレビ会議などのように、双方に複数名が存在する環境下における双方方向音声通信でもよい。また、マイクロホンで受音する音は、人の話し声などの音声に限定されず、楽音、雑音など一切の音を含む。
【００１９】
下記の各実施形態では、Ｎ（≧２）チャンネル音響再生系における再生信号がＮ個の場合を例にしている。これは、単チャンネル音響再生系として１個の再生信号の場合を排除するものではなく、この場合については適宜説明を加える。
【００２０】
下記の各実施形態においては、本発明のエコー抑圧装置の一例として、それがコンピュータによって実現されるとして説明する。もちろん、本発明のエコー抑圧装置は、いわゆる汎用コンピュータによって実現されるものとしての限定を受けない。例えば、本発明における処理主体となりえるＤＳＰ（Digital Signal Processor）やＣＰＵ（Central Processing Unit）、本発明における処理を実行するためのプログラムを保存したメモリなどの記憶装置、マイクロホン、スピーカなどを備えたハンズフリー通話装置として実現することも可能であり、また好適でもある。また、本発明のエコー抑圧方法を実装したハンズフリー通話装置は、後述の各実施形態において説明するコンピュータによって実施する場合とおよそ同様の構成によって実現可能であるから、ハンズフリー通話装置としての実施形態は、後述の各実施形態の説明によって明らかになる。
【００２１】
＜第１の実施形態＞
まず、本発明のエコー抑圧装置・方法の第１の実施形態を説明する。
図１は、第１の実施形態に係わるエコー抑圧装置１００のハードウェア構成を例示した構成ブロック図である。
図２は、第１の実施形態に係わるエコー抑圧装置１００におけるエコー抑圧の処理機能を例示する機能ブロック図である。
図３は、第１の実施形態に係わるエコー抑圧装置１００におけるエコー抑圧処理を示すフローチャートである。
【００２２】
図１に例示するように、第１の実施形態に係わるエコー抑圧装置１００は、キーボードなどが接続可能な入力部１１、液晶ディスプレイなどが接続可能な出力部１２〔これらは、上記のハンズフリー通話装置の場合には必ずしも必要ではない。〕、エコー抑圧装置１００の外部に通信可能な通信装置（例えばモデム）が接続可能な通信部１３、ＤＳＰ１４〔ＣＰＵでも良い。またキャッシュメモリなどを備えていてもよい。〕、メモリであるＲＡＭ（Random Access Memory）１５、ＲＯＭ（Read Only Memory）１６やハードディスクである外部記憶装置１７並びにこれらの入力部１１、出力部１２、通信部１３、ＤＳＰ１４、ＲＡＭ１５、ＲＯＭ１６、外部記憶装置１７間のデータのやり取りが可能なように接続するバス１８などを備えている。また必要に応じて、エコー抑圧装置１００に、ＣＤ−ＲＯＭなどの記憶媒体を読み書きできる装置（ドライブ）などを設けるとしてもよい〔外部記録媒体に対する読み書き装置は、上記のハンズフリー通話装置の場合には通常不要となる。〕。
【００２３】
さらにエコー抑圧装置１００には、例えば音声、音楽、雑音などの音を受音する音響信号収音手段（例えばマイクロホン）を接続可能であって、マイクロホンによって得られた（アナログ）信号の入力を受ける信号入力部、および、再生信号を音として出力する音響出力装置（例えばスピーカ）を接続可能であって、スピーカに入力する信号（再生信号をＤ／Ａ変換したもの）を出力するための信号出力部を設ける〔上記のハンズフリー通話装置の場合には、通常、マイクロホンおよびスピーカが必要的に備わる。〕。信号入力部にはマイクロホンが接続され、信号出力部にはスピーカが接続する。
【００２４】
エコー抑圧装置１００の外部記憶装置１７には、エコー抑圧のためのプログラムおよびこのプログラムの処理において必要となるデータなどが保存記憶されている〔外部記憶装置の無いハンズフリー通話装置の場合には、例えばプログラムを読み出し専用記憶装置であるＲＯＭに保存記憶させておけばよい。〕。また、これらのプログラムの処理によって得られるデータなどは、ＲＡＭなどに適宜に保存記憶される。
【００２５】
より具体的には、外部記憶装置１７には、Ｎ個の再生信号の加算をする総和部４Ａを実現するためのプログラム、Ｎ個の再生信号が加算された信号（以下、「加算再生信号」という。）を周波数領域に変換して振幅スペクトル（以下、「再生信号振幅スペクトル」という。）を求める再生信号周波数分析部１０１を実現するためのプログラム、収音信号を周波数領域に変換して振幅スペクトル（以下、「収音信号振幅スペクトル」という。）および位相スペクトル（以下、「収音信号位相スペクトル」という。）を求める収音信号周波数分析部１０２を実現するためのプログラム、収音信号およびＮ個の再生信号からダブルトーク状態であるか否かを判定するダブルトーク検出部１０６を実現するためのプログラム、後述する補正量を求める補正量算出部１０７を実現するためのプログラム、再生信号の振幅スペクトルを補正量で補正したものと収音信号の振幅スペクトルとの大小判定から選択的に抑圧された収音信号振幅スペクトル（以下、「エコー抑圧信号振幅スペクトル」という。）を求める目的成分選択出力部１０４を実現するためのプログラム、エコー抑圧信号振幅スペクトルと収音信号位相スペクトルとを合成し、さらに時間領域に変換して出力信号を得るエコー抑圧信号出力部１０５を実現するためのプログラム、が保存記憶されている。その他、これらのプログラムに基づく処理を制御するための制御プログラムも適宜に保存しておく。
【００２６】
第１の実施形態に係るエコー抑圧装置１００では、外部記憶装置１７〔あるいはＲＯＭなど〕に記憶された各プログラムとこの各プログラムの処理に必要なデータが必要に応じてＲＡＭ１５に読み込まれて、ＤＳＰ１４で解釈実行・処理される。その結果、ＤＳＰ１４が所定の機能（総和部、再生信号周波数分析部、収音信号周波数分析部、ダブルトーク検出部、補正量算出部、目的成分選出力部、エコー抑圧信号出力部）を実現することで、エコーの防止が実現される。
【００２７】
そこで次に、図２および図３を参照して、エコー抑圧装置１００におけるエコー抑圧処理の流れを順次説明する。
第１の実施形態のエコー抑圧装置１００は、総和部４Ａ、再生信号周波数分析部１０１、収音信号周波数分析部１０２、目的成分選択出力部１０４、エコー抑圧信号出力部１０５、ダブルトーク検出部１０６および補正量算出部１０７から構成される。
【００２８】
総和部４Ａは、Ｎ個のチャンネルの再生信号ｘ１（ｋ）〜ｘＮ（ｋ）を入力とし、各チャンネルの再生信号ｘ１（ｋ）〜ｘＮ（ｋ）をサンプル点ごとに加算した加算再生信号ｘ（ｋ）＝ΣＮｎ＝１ｘｎ（ｋ）を出力する（ステップＳ１）。ここで、ｋは、所定間隔の離散的な時刻を指す数（サンプル点の番号）である。サンプリングは、例えばサンプリング周波数１６ｋＨｚ（１秒間に１６０００回）で行われる。
【００２９】
再生信号周波数分析部１０１は、加算再生信号ｘ（ｋ）を入力として、この加算再生信号ｘ（ｋ）を所定の時間長（以下、「フレーム」という。）で短時間フーリエ変換し、所定の周波数領域（例えば、周波数ω＝１，・・・，Ωとする。Ωは、短時間フーリエ変換における周波数の上限である。換言すれば周波数ωは所定の周波数間隔で求めた振幅スペクトルの周波数成分の番号を示す数ということができる。）における振幅スペクトルを求め、これを再生信号振幅スペクトル｜Ｘ−ω｜として出力する（ステップＳ２）。
例えば、１６ｋＨｚでサンプリングした５１２個の加算再生信号ｘ（ｋ−５１１），…，ｘ（ｋ）を１フレームとし、加算再生信号ｘ（ｋ）をフレーム単位で、８ｋＨｚまでの周波数帯域をサンプル点数２５６で表した再生信号振幅スペクトル｜Ｘ−ω｜（ω＝１，…，２５６）へ変換する。
【００３０】
なお、上記の短時間フーリエ変換は、より正確には短時間離散フーリエ変換である。また、短時間（離散）フーリエ変換の実行処理は、例えば公知の高速フーリエ変換などの手法を用いることができる。さらに、短時間（離散）フーリエ変換においては、ハニング窓、ハミング窓などの公知の窓関数を用いることができる。以後、これらのことを踏まえて、単に短時間フーリエ変換ということにする。
【００３１】
再生信号が１つの場合、即ち、単チャンネル音響再生系の場合では、上記総和部４Ａは不要である。また、再生信号周波数分析部１０１は、この１個の再生信号を短時間フーリエ変換して振幅スペクトルを求め、これを再生信号振幅スペクトル｜Ｘ−ω｜として出力する。
【００３２】
収音信号周波数分析部１０２は、収音信号ｙ（ｋ）を入力として、この収音信号ｙ（ｋ）を所定のフレームで短時間フーリエ変換し、所定の周波数領域における振幅スペクトルおよび位相スペクトル、つまり収音信号振幅スペクトル｜Ｙω｜および収音信号位相スペクトルａｒｇ（Ｙω）を出力する（ステップＳ３）。ｋおよびωは上記の説明と同じである。なお、ａｒｇ（Ｙω）は０以上２π未満の実数である。
【００３３】
ダブルトーク検出部１０６は、各再生信号ｘ１（ｋ）〜ｘＮ（ｋ）（あるいは加算再生信号ｘ（ｋ））および収音信号ｙ（ｋ）から、ダブルトーク状態であるか否かを判定し、このダブルトーク状態判定結果を出力する（ステップＳ４）。ダブルトーク状態の判定は、公知の方法（例えば各信号のレベルを測定する。）によって実現される。
【００３４】
補正量算出部１０７は、ダブルトーク検出部１０６によるダブルトーク状態判定結果に基づき、以下の処理を実行するので、場合わけして叙述する。
【００３５】
≪ダブルトーク状態ではないと判定された場合≫
補正量算出部１０７は、まず、再生信号振幅スペクトル｜Ｘ−ω｜のローカルピーク（再生信号振幅スペクトルにおける極大値であり、一般的には複数ある。）のうち、所定の閾値以上の値（振幅スペクトルの大きさであり、一般的にはデシベルｄＢの単位で表される。）を持つローカルピークを与える周波数を求め、これらの周波数を再生信号ローカルピーク周波数ｆｘ（１）、・・・、ｆｘ（Ｐ）（Ｐは２以上の整数）として出力する（ステップＳ５ａ）。所定の閾値とは、エコー抑圧装置１００を使用する環境の雑音などによって異なり、音として認識できる程度の値（例えば、６０ｄＢ、１０００など）とする。この所定の閾値は、予め所定のプログラムに組み込まれて記述されるとしても、あるいは、入力部１１によってエコー抑圧装置１００に与えられるとしてもよい。
【００３６】
次に、補正量算出部１０７は、収音信号振幅スペクトル｜Ｙω｜のローカルピークのうち、所定の閾値（例えば、６０ｄＢ、１０００など。但し、ステップＳ５ａにおけるのと異なる値であってもよい。）以上の値を持つローカルピークを与える周波数を求め、これらの周波数を収音信号ローカルピーク周波数ｆｙ（１）、・・・、ｆｙ（Ｑ）（Ｑは２以上の整数）として出力する（ステップＳ６ａ）。なお、ここでの所定の閾値についても、エコー抑圧装置１００を使用する環境の雑音などによって異なり、音として認識できる程度の値とする。また、この所定の閾値は、予め所定のプログラムに組み込まれて記述されるとしても、あるいは、入力部１１によってエコー抑圧装置１００に与えられるとしてもよい。
【００３７】
ステップＳ５ａおよびステップＳ６ａの処理は、処理順序が逆でもよい。
【００３８】
次いで、補正量算出部１０７は、再生信号ローカルピーク周波数ｆｘ（１）、・・・、ｆｘ（Ｐ）および収音信号ローカルピーク周波数ｆｙ（１）、・・・、ｆｙ（Ｑ）のうち、例えばｆｘ（ｐ）（ローカルピーク番号ｐはＰ以下の自然数）とｆｙ（ｑ）（ローカルピーク番号ｑはＱ以下の自然数）との差が所定の範囲内である（例えばｆｙ（ｑ）−２＜ｆｘ（ｐ）＜ｆｙ（ｑ）＋２とする。）ときのローカルピーク補正量Ｌｆｘ（ｐ）を式（２）によって求めて出力する。
【数２】
2006340189.tif 000004
【００３９】
勿論、例えばｆｘ（ｐ）−２＜ｆｙ（ｑ）＜ｆｘ（ｐ）＋２であるときのローカルピーク補正量Ｌｆｙ（ｑ）を式（３）によって求めてもよい。
【数３】
2006340189.tif 000005
【００４０】
ここでｒは自然数であり、ローカルピーク補正量のローカルピーク番号を意味する。ｆｌ(ｒ)はローカルピーク補正量を求めたときの周波数（以下、「ローカルピーク補正量周波数」という。）である。このようにして全ての再生信号ローカルピーク周波数ｆｘ（１）〜ｆｘ（Ｐ）と収音信号ローカルピーク周波数ｆｙ（１）〜ｆｙ（Ｑ）とを比較して、全てのローカルピーク補正量を求めて出力する（ステップＳ７ａ）。要するに、再生信号振幅スペクトル｜Ｘ−ω｜のローカルピークが存在する周波数と収音信号振幅スペクトル｜Ｙω｜のローカルピークが存在する周波数とが所定の帯域内に存在する場合にはいずれか一方の周波数を、一致する場合にはそのときの周波数をローカルピーク補正量周波数ｆｌ（ｒ）として、このローカルピーク補正量周波数ｆｌ（ｒ）におけるローカルピーク補正量Ｌｆｌ（ｒ）を求めるのである。
【００４１】
なお、上記の所定の範囲は適宜に変更可能であり、上記例示した所定の範囲であるｆｙ（ｑ）−２＜ｆｘ（ｐ）＜ｆｙ（ｑ）＋２における「−２」「＋２」を「前差分量」「後差分量」と呼ぶことにすると、この前差分量と後差分量の絶対値は同じにする必要は無く、例えば、ｆｙ（ｑ）−３＜ｆｘ（ｐ）＜ｆｙ（ｑ）＋１やｆｙ（ｑ）＜ｆｘ（ｐ）＜ｆｙ（ｑ）＋４のように異なる差分量とすることもできる。そして、前差分量と後差分量は、予め所定のプログラムに組み込まれて記述されるとしても、あるいは、入力部１１によってエコー抑圧装置１００に与えられるとしてもよい。
【００４２】
次いで、補正量算出部１０７は、周波数ωとローカルピーク補正量周波数ｆｌ（ｒ）との関係がｆｌ（ｒ−１）＜ω≦ｆｌ（ｒ）となる範囲の暫定補正量ｚωを、上記ローカルピーク補正量Ｌｆｌ（ｒ）を用いて、式（４）によって求めて出力する。
【数４】
2006340189.tif 000006
【００４３】
このようにして、周波数領域の全ての周波数ωについて各周波数に対応する暫定補正量ｚωを求めて出力する（ステップＳ８ａ）。なお、暫定補正量ｚωは、例えば上記のようにフレームに対応する周波数領域におけるローカルピークではない周波数成分に近接する周波数成分のローカルピークから求められれば他の方法でもよい。
【００４４】
また、この実施形態では、周波数ωとローカルピーク補正量周波数ｆｌ（ｒ）との関係がｆｌ（ｒ−１）＜ω≦ｆｌ（ｒ）となる範囲の暫定補正量ｚωを上記の如く求めたが、この関係に限定されるものではない。要は、ローカルピーク補正量周波数ｆｌ（ｒ）を含む帯域で暫定補正量ｚωを求めればよく、例えば、ローカルピーク補正量周波数ｆｌ（ｒ−１）、ｆｌ（ｒ）、ｆ（ｒ＋１）について、μ＝（ｆｌ（ｒ−１）＋ｆｌ（ｒ））／２、τ＝（ｆｌ（ｒ）＋ｆｌ（ｒ＋１））／２とすると、μ＜ω≦τとなる周波数範囲の暫定補正量ｚωを、上記ローカルピーク補正量Ｌｆｌ（ｒ）を用いて、ｚω＝Ｌｆｌ（ｒ）としてもよい。
【００４５】
次いで、補正量算出部１０７は、周波数領域の全ての周波数ωについて各周波数に対応する補正量ｃωを式（５）によって求めて出力する（ステップＳ９）。
【数５】
2006340189.tif 000007
【００４６】
ここで、ω−１は周波数ωの１つ前の周波数を表し、νは周波数領域において（つまり、周波数軸方向）で平滑化する重み係数（例えば０．４）を表す。重み係数は、予め所定のプログラムに組み込まれて記述されるとしても、あるいは、入力部１１によってエコー抑圧装置１００に与えられるとしてもよい。
【００４７】
≪ダブルトーク状態ではないと判定された場合≫
補正量算出部１０７は、ステップＳ５ｂ〜ステップＳ８ｂの処理を実行する。ステップＳ５ｂ〜ステップＳ８ｂの処理は、上記ステップＳ５ａ〜ステップＳ８ａと同じ処理である（この実施形態では、ダブルトーク状態判定結果で処理系列が異なることを分かりやすくするため、ステップの表示記号をａとｂとに振り分けた）。
【００４８】
なお、ステップＳ５ａ〜ステップＳ８ａの処理およびステップＳ５ｂ〜ステップＳ８ｂの処理は、ステップＳ４の処理の後に実行されるとしなければならないものではない。例えば、ステップＳ５ａ〜ステップＳ８ａの処理（ステップＳ５ｂ〜ステップＳ８ｂの処理）をステップＳ４の処理の前に実行するとしてもよい。
【００４９】
ステップＳ８ｂの処理が実行された後、補正量算出部１０７は、条件Ａ「暫定補正量zωと１つ前のフレームにおける補正量ｃ’ωとの差が予め定めた範囲以内（例えば、０．５・ｃ’ω＜ｚω＜２・ｃ’ω）である。」を満たすか否かの判定（以下、「補正量判定」という。）をし、この補正量判定結果を出力する（ステップＳ１０）。なお、短時間フーリエ変換おける各フレームをｇ１、ｇ２、・・・、ｇｉ−１、ｇｉ、ｇｉ＋１、・・・とすると、現在のフレームがｇｉである場合、ｇｉ−１が１つ前のフレームである（１フレーム前ともいう。）。また、条件Ａにおける所定の範囲は、適宜に変更可能であり、予め所定のプログラムに組み込まれて記述されるとしても、あるいは、入力部１１によってエコー抑圧装置１００に与えられるとしてもよい。また、条件Ａにおいて差を求めるときのフレームは、１つ前のフレームではなく、例えば２つ前のフレームなどとすることでもよいし、あるいは、例えば「１つ前のフレームにおける補正量との差が所定範囲内であり、且つ、２つ前のフレームにおける補正量との差が所定範囲内である」というように複合的条件とすることでもよい。
【００５０】
ここで、上記の範囲を定めるのは、本発明では各チャンネル間の位相差を検出（計算）しないため、２つ以上の音が強めあう場合や弱めあう場合があるが、このような特定の周波数での誤動作、および近端話者（マイクロホン２に対する話者）が話した場合に、話者の音声の周波数成分によって補正量ｃωが大きくなりすぎたり小さくなりすぎたりすることを防止するためである。
【００５１】
次いで、補正量算出部１０７は、補正量判定結果が条件Ａを満たすと判定されたものである場合、ステップＳ１１の処理を、補正量判定結果が条件Ａを満たさないと判定されたものである場合、ステップＳ１２の処理を行う。
【００５２】
即ち、補正量算出部１０７は、補正量判定結果が条件Ａを満たすと判定されたものである場合、１フレーム前に算出された補正量ｃ’ωを用いて、周波数領域の全ての周波数ωについて各周波数に対応する補正量ｃωを式（６）によって求めて出力する（ステップＳ１１）。
【数６】
2006340189.tif 000008
【００５３】
ここで、λは時間軸（つまり、短時間フーリエ変換における各フレームを定める時刻の進行方向）で平滑化する重み係数（例えば０．８）である。なお、過去のフレームにおける補正量が未算出の場合、１フレーム前の補正量ｃ’ωは全ての周波数について例えば１とする。また、ここでの重み係数は、予め所定のプログラムに組み込まれて記述されるとしても、あるいは、入力部１１によってエコー抑圧装置１００に与えられるとしてもよい。
【００５４】
また、補正量算出部１０７は、補正量判定結果が条件Ａを満たさないと判定されたものである場合、周波数領域の全ての周波数ωについて各周波数に対応する補正量ｃωを式（７）によって求めて出力する（ステップＳ１２）。
【数７】
2006340189.tif 000009
【００５５】
なお、以上では、ダブルトーク検出部１０６によるダブルトーク状態判定結果に基づいて補正量ｃωを求めたが、エコー抑圧装置１００がダブルトーク検出部１０６を備えない場合は、上記の暫定補正量ｚωを補正量ｃωとして出力すればよい。
【００５６】
次に、エコー振幅スペクトル算出部１０４は、再生信号振幅スペクトル｜Ｘ−ω｜に補正量ｃωおよび補正係数β（後述する。）を乗じたβ・ｃω・｜Ｘ−ω｜と収音信号振幅スペクトル｜Ｙω｜との大小判定を周波数ωごとに行い、式（８）に従って、エコー抑圧信号振幅スペクトル｜Ｅω｜を求めて出力する（ステップＳ１４）。
【数８】
2006340189.tif 000010
【００５７】
つまり、目的成分選択出力部１０４は、周波数ωごとにβ・ｃω・｜Ｘ−ω｜と収音信号振幅スペクトル｜Ｙω｜との大小判定をし、β・ｃω・｜Ｘ−ω｜＜｜Ｙω｜が成立しない場合の周波数ωに対する収音信号振幅スペクトル｜Ｙω｜の大きさをεにする（大小判定によって選択的に収音信号振幅スペクトル｜Ｙω｜が抑圧される。）。この結果、周波数領域の全ての周波数ωについて大小判定がなされて選択的に抑圧された収音信号振幅スペクトル｜Ｙω｜が、エコー抑圧信号振幅スペクトル｜Ｅω｜として出力される。なお、大小判定は、β・ｃω・｜Ｘ−ω｜≦｜Ｙω｜でもよい。
【００５８】
この実施形態では、抑圧された収音信号振幅スペクトル｜Ｙω｜の大きさ（抑圧レベル）をεとした。このεは、通常０または０に近い値である。ε＝０の場合、エコーは消去されることになる。
【００５９】
補正係数βはｃω・｜Ｘ−ω｜を実際より小さく推定することによって生じる誤動作を軽減するために予め設定された値であり、この値は１よりやや大きく設定するのがよい（例えば、β＝２．５）。なお、βの値は、予め所定のプログラムに組み込まれて設定されるとしても、あるいは、入力部１１によってエコー抑圧装置１００に与えられるとしてもよい。もちろん、誤動作軽減が必要でなければβ＝１（つまり、ｃω・｜Ｘ−ω｜＜｜Ｙω｜の大小判定をする。）とすればよい。
【００６０】
エコー抑圧信号出力部１０５は、ステップＳ１４で出力された（周波数領域の全ての周波数ωに対応する）エコー抑圧信号振幅スペクトル｜Ｅω｜およびステップＳ３で出力された収音信号位相スペクトルａｒｇ（Ｙω）から周波数領域における信号を合成し、この信号を時間領域に短時間（離散）逆フーリエ変換して出力信号ｅ（ｋ）を出力する（ステップＳ１５）。
【００６１】
上記の説明では、目的成分選択出力部１０４が、再生信号振幅スペクトル｜Ｘ−ω｜に補正量ｃωおよび（必要に応じて）補正係数βを乗じたβ・ｃω・｜Ｘ−ω｜（以下、「推定エコー振幅スペクトル」という。）を求めて大小判定をするとしたが、目的成分選択出力部１０４ではなく、後述するエコー振幅スペクトル算出部１０３が推定エコー振幅スペクトルを求めて出力するようにしてもよい。このことを図４および図５を参照して説明するが、上記と同じ処理内容のステップには上記各ステップ番号と同一の符号を与え、異なる部分についてのみ説明する。
【００６２】
エコー抑圧装置１００の外部記憶装置１７には、推定エコー振幅スペクトルを求めるエコー振幅スペクトル算出部１０３を実現するためのプログラムも保存記憶される。このプログラムは、必要に応じてＲＡＭ１５に読み込まれて、ＤＳＰ１４で解釈実行・処理される。その結果、ＤＳＰ１４がエコー振幅スペクトル算出部としての機能を実現する。
【００６３】
上記ステップＳ１２に続いて、エコー振幅スペクトル算出部１０３は、再生信号振幅スペクトル｜Ｘ−ω｜および補正量ｃωから、周波数領域の全ての周波数ωについて各周波数に対応する推定エコー振幅スペクトル｜Ｄ＾ω｜を出力する（ステップＳ１３）。
推定エコー振幅スペクトル｜Ｄ＾ω｜は式（９）によって求められる。
【数９】
2006340189.tif 000011
【００６４】
次に、目的成分選択出力部１０４は、式（１０）に従って、エコー抑圧信号振幅スペクトル｜Ｅω｜を周波数ωごとに求めて出力する（ステップＳ１４’）。
【数１０】
2006340189.tif 000012
【００６５】
ただし、ΔＡωは、式（１１）で与えられる。
【数１１】
2006340189.tif 000013
【００６６】
つまり、この変形例における目的成分選択出力部１０４は、周波数ωごとにΔＡωと閾値１／βとの大小判定をし、ΔＡω＜１／βが成立しない場合の周波数ωに対する収音信号振幅スペクトル｜Ｙω｜の大きさをεにする（大小判定によって選択的に収音信号振幅スペクトル｜Ｙω｜が抑圧される。）。
【００６７】
＜第２の実施形態＞
次に、本発明のエコー抑圧装置・方法の第２の実施形態を説明する。
図６は、第２の実施形態における再生信号周波数分析部の処理機能を例示する機能ブロック図である。
図７は、第２の実施形態における再生信号周波数分析部の処理フローを示すフローチャートである。
なお、第２の実施形態に係わるエコー抑圧装置のハードウェア構成例は、第１の実施形態と同様であるから、図１を参照のこと。また、図６に示す第２の実施形態に係わる機能ブロック図のその他の部分については、第１の実施形態と同様であるから、例えば図２を参照のこと。
【００６８】
第１の実施形態では、再生信号振幅スペクトル｜Ｘ−ω｜は、加算再生信号（単チャンネル音響再生系の場合は１個の再生信号である。）の振幅スペクトルであるとしたが、再生信号振幅スペクトル｜Ｘ−ω｜は、当該振幅スペクトルをエコー経路の残響成分を考慮して平滑化を行った振幅スペクトルとすることもできる。この場合を第２の実施形態として、第１の実施形態と異なる部分について以下に説明する。
【００６９】
エコー抑圧装置１００の外部記憶装置１７には、Ｎ個の再生信号が加算された加算再生信号を周波数領域に変換して再生信号振幅スペクトルを求める再生信号周波数分析部１０１を実現するためのプログラムに替わり、暫定スペクトル出力部１０１ａを実現するためのプログラムおよびスペクトル平滑化部１０１ｂを実現するためのプログラムが記憶保存される。
これらのプログラムは、必要に応じてＲＡＭ１５に読み込まれて、ＤＳＰ１４で解釈実行・処理される。その結果、ＤＳＰ１４が所定の機能（暫定スペクトル出力部およびスペクトル平滑化部）を実現することになる。
【００７０】
第２の実施形態では、第１の実施形態における再生信号周波数分析部１０１が、図６に示すように、暫定スペクトル出力部１０１ａ、スペクトル平滑化部１０１ｂおよびメモリ１０１ｃによって置換された機能構成となっている。
【００７１】
まず、暫定スペクトル出力部１０１ａは、加算再生信号ｘ（ｋ）〔単チャンネル音響再生系の場合は１個の再生信号である。〕を入力として（ステップＳ２ａ）、この加算再生信号ｘ（ｋ）を所定のフレームで短時間フーリエ変換し、所定の周波数領域における振幅スペクトルを求め、これを暫定再生信号振幅スペクトル｜Ｘω｜として出力する（ステップＳ２ｂ）。
【００７２】
次に、スペクトル平滑化部１０１ｂは、上記暫定再生信号振幅スペクトル｜Ｘω｜を入力として、再生信号振幅スペクトル｜Ｘ−ω｜を出力する（ステップＳ２ｃ）。このステップＳ２ｃにおいて、再生信号振幅スペクトル｜Ｘ−ω｜を出力する処理は、次のようにして実行される。
【００７３】
再生信号振幅スペクトル｜Ｘ−ω｜は暫定再生信号振幅スペクトル｜Ｘω｜にエコー経路の残響成分を考慮させて平滑化を行ったスペクトルであり、式（１２）によって算出する。
【数１２】
2006340189.tif 000014
【００７４】
ここで、｜Ｘ−’ω｜は１フレーム前に算出された再生信号振幅スペクトルであり、メモリ１０１ｃに記憶保存されている。また、ξは、エコー抑圧装置１００を使用する場所の残響時間を考慮して暫定再生信号振幅スペクトル｜Ｘω｜に１フレーム前の再生信号振幅スペクトル｜Ｘ−’ω｜を付加する割合を表し、０〜１の範囲(例えば０．７)で値を設定する。このξの値は、予め所定のプログラムに組み込まれて設定されるとしても、あるいは、入力部１１によってエコー抑圧装置１００に与えられるとしてもよい。
【００７５】
つまり、スペクトル平滑化部１０１ｂは、暫定再生信号振幅スペクトル｜Ｘω｜の入力を受けると、メモリ１０１ｃに記憶保存されている１フレーム前に算出された再生信号振幅スペクトル｜Ｘ−’ω｜を読み込んで、式（１２）に従って再生信号振幅スペクトル｜Ｘ−ω｜を求めて、これを出力するのである。なお、再生信号振幅スペクトル｜Ｘ−ω｜の初期値は例えば０としておけばよい。
【００７６】
次に、スペクトル平滑化部１０１ｂは、ステップＳ２ｃで出力した再生信号振幅スペクトル｜Ｘ−ω｜をメモリ１０１ｃに記憶保存する（ステップＳ２ｄ）。このステップＳ２ｄでメモリ１０１ｃに記憶された再生信号振幅スペクトル｜Ｘ−ω｜は、次のフレームにおいて、「１フレーム前の再生信号振幅スペクトル｜Ｘ−’ω｜」として用いられることになる。
【００７７】
＜第３の実施形態＞
次に、本発明のエコー抑圧装置・方法の第３の実施形態を説明する。
図８は、第３の実施形態に係わるエコー抑圧装置１００’におけるエコー抑圧の処理機能を例示する機能ブロック図である。
図９は、第３の実施形態に係わるエコー抑圧装置１００’におけるエコー抑圧処理を示すフローチャートである。
なお、第３の実施形態に係わるエコー抑圧装置１００’のハードウェア構成例は、第１の実施形態と同様であるから、図１を参照のこと。
【００７８】
第１の実施形態では複数の再生信号ｘ１（ｋ）〜ｘＮ（ｋ）を加算した後に再生信号振幅スペクトル｜Ｘ−ω｜を算出したが、第３の実施形態では、各再生信号ｘ１（ｋ）〜ｘＮ（ｋ）の振幅スペクトル（以下、「チャンネル再生信号振幅スペクトル」という。）を算出した後に、周波数成分ωごとにチャンネル再生信号振幅スペクトルを加算する点が異なる。このように先に再生信号ごとのチャンネル再生信号振幅スペクトルを求めることで、チャンネル再生信号振幅スペクトルを算出するための再生信号周波数分析部１０１１〜１０１Ｎ（後述する。）の数は多くなるが、各再生信号間の位相差による強めあいや弱めあいの影響を避けることができる。
第１の実施形態と異なる点のみについて、以下に説明する。
【００７９】
エコー抑圧装置１００’の外部記憶装置には、Ｎ個の再生信号の加算をする総和部４Ａを実現するためのプログラムおよび、Ｎ個の再生信号が加算された加算再生信号を周波数領域に変換して再生信号振幅スペクトルを求める再生信号周波数分析部１０１を実現するためのプログラムに替わり、Ｎ個の再生信号周波数分析部１０１１〜１０１Ｎを実現するためのプログラムおよび、総和部４Ｂを実現するためのプログラムが記憶保存される。
これらのプログラムは、必要に応じてＲＡＭ１５に読み込まれて、ＤＳＰ１４で解釈実行・処理される。その結果、ＤＳＰ１４が所定の機能（再生信号周波数分析部、総和部）を実現することになる。
【００８０】
第３の実施形態では、第１の実施形態における総和部４Ａおよび再生信号周波数分析部１０１が、複数（Ｎ個）の再生信号周波数分析部１０１１〜１０１Ｎおよび総和部４Ｂによって置換された機能構成となっている（図８参照）。Ｎ個の再生信号周波数分析部１０１１〜１０１Ｎそれぞれは、再生信号ｘ１（ｋ）〜ｘＮ（ｋ）を所定のフレームで短時間フーリエ変換して、所定の周波数領域におけるチャンネル再生信号振幅スペクトル｜Ｘ１ω｜〜｜ＸＮω｜を得る（ステップＳ１’）。なお、Ｎ個の再生信号周波数分析部１０１１〜１０１Ｎそれぞれの処理機能自体は同じであるから、１つの再生信号周波数分析部が、Ｎ回の繰り返し処理によってＮ個の再生信号ｘ１（ｋ）〜ｘＮ（ｋ）からＮ個のチャンネル再生信号振幅スペクトル｜Ｘ１ω｜〜｜ＸＮω｜を得るようにしてもよい。
【００８１】
総和部４Ｂは、上記チャンネル再生信号振幅スペクトル｜Ｘ１ω｜〜｜ＸＮω｜を入力として、周波数ωごとにチャンネル再生信号振幅スペクトル｜Ｘ１ω｜〜｜ＸＮω｜を加算し、再生信号振幅スペクトル｜Ｘ−ω｜を式（１３）によって求めて出力する（ステップＳ２’）。残りの処理は、第１の実施形態と同じである。
【数１３】
2006340189.tif 000015
【００８２】
なお、単チャンネル音響再生系の場合は１個の再生信号であるから、総和部４Ｂは不要であり、さらには結局のところ第１の実施形態で説明した単チャンネル音響再生系の場合に相当することになるから、説明を省略する。
【００８３】
＜第４の実施形態＞
次に、本発明のエコー抑圧装置・方法の第４の実施形態を説明する。
図１０は、第４の実施形態における総和部の処理機能を例示する機能ブロック図である。
図１１は、第４の実施形態における総和部の処理フローを示すフローチャートである。
なお、第４の実施形態に係わるエコー抑圧装置のハードウェア構成例は、第１の実施形態と同様であるから、図１を参照のこと。また、図１０に示す第４の実施形態に係わる機能ブロック図のその他の部分については、第３の実施形態と同様であるから、例えば図８を参照のこと。
【００８４】
第３の実施形態では、再生信号振幅スペクトル｜Ｘ−ω｜は、チャンネル再生信号振幅スペクトル｜Ｘ１ω｜〜｜ＸＮω｜が加算された振幅スペクトルであるとしたが、再生信号振幅スペクトル｜Ｘ−ω｜は、当該振幅スペクトルをエコー経路の残響成分を考慮して平滑化を行った振幅スペクトルとすることもできる。この場合を第４の実施形態として、第３の実施形態と異なる部分について以下に説明する。
【００８５】
エコー抑圧装置１００’の外部記憶装置には、総和部４Ｂを実現するためのプログラムに替わり、チャンネル加算部４Ｂａを実現するためのプログラムおよび総和スペクトル平滑化部４Ｂｂを実現するためのプログラムが記憶保存される。
これらのプログラムは、必要に応じてＲＡＭ１５に読み込まれて、ＤＳＰ１４で解釈実行・処理される。その結果、ＤＳＰ１４が所定の機能（チャンネル加算部および総和スペクトル平滑化部）を実現することになる。
【００８６】
第４の実施形態では、第３の実施形態における総和部４Ｂが、図１０に示すように、チャンネル加算部４Ｂａ、総和スペクトル平滑化部４Ｂｂおよびメモリ４Ｂｃによって置換された機能構成となっている。
【００８７】
まず、チャンネル加算部４Ｂａは、各チャンネル再生信号振幅スペクトル｜Ｘ１ω｜〜｜ＸＮω｜を入力として（ステップＳ２’ａ）、この各チャンネル再生信号振幅スペクトル｜Ｘ１ω｜〜｜ＸＮω｜を周波数ωごとに加算して、これを暫定再生信号振幅スペクトル｜Ｘω｜として出力する（ステップＳ２’ｂ）。
【００８８】
次に、総和スペクトル平滑化部４Ｂｂは、上記暫定再生信号振幅スペクトル｜Ｘω｜を入力として、再生信号振幅スペクトル｜Ｘ−ω｜を出力する（ステップＳ２’ｃ）。このステップＳ２’ｃにおいて、再生信号振幅スペクトル｜Ｘ−ω｜を出力する処理は、次のようにして実行される。
【００８９】
再生信号振幅スペクトル｜Ｘ−ω｜は暫定再生信号振幅スペクトル｜Ｘω｜にエコー経路の残響成分を考慮させて平滑化を行ったスペクトルであり、式（１４）によって算出する。
【数１４】
2006340189.tif 000016
【００９０】
ここで、｜Ｘ−’ω｜は１フレーム前に算出された再生信号振幅スペクトルであり、メモリ４Ｂｃに記憶保存されている。また、ξは、第４の実施形態に係わるエコー抑圧装置１００’を使用する場所の残響時間を考慮して暫定再生信号振幅スペクトル｜Ｘω｜に１フレーム前の再生信号振幅スペクトル｜Ｘ−’ω｜を付加する割合を表し、０〜１の範囲(例えば０．７)で値を設定する。このξの値は、予め所定のプログラムに組み込まれて設定されるとしても、あるいは、入力部によってエコー抑圧装置１００’に与えられるとしてもよい。
【００９１】
つまり、総和スペクトル平滑化部４Ｂｂは、暫定再生信号振幅スペクトル｜Ｘω｜の入力を受けると、メモリ４Ｂｃに記憶保存されている１フレーム前に算出された再生信号振幅スペクトル｜Ｘ−’ω｜を読み込んで、式（１４）に従って再生信号振幅スペクトル｜Ｘ−ω｜を求めて、これを出力するのである。なお、再生信号振幅スペクトル｜Ｘ−ω｜の初期値は例えば０としておけばよい。
【００９２】
次に、総和スペクトル平滑化部４Ｂｂは、ステップＳ２’ｃで出力した再生信号振幅スペクトル｜Ｘ−ω｜をメモリ４Ｂｃに記憶保存する（ステップＳ２’ｄ）。このステップＳ２’ｄでメモリ４Ｂｃに記憶された再生信号振幅スペクトル｜Ｘ−ω｜は、次のフレームにおいて、「１フレーム前の再生信号振幅スペクトル｜Ｘ−’ω｜」として用いられることになる。
【００９３】
＜第５の実施形態＞
次に、本発明のエコー抑圧装置・方法の第５の実施形態を説明する。
図１２は、第５の実施形態に係わるエコー抑圧装置におけるエコー抑圧の処理機能を例示する機能ブロック図（部分図）である。
図１３は、第５の実施形態に係わるエコー抑圧装置におけるエコー抑圧処理を示すフローチャートである。
なお、第５の実施形態に係わるエコー抑圧装置のハードウェア構成例は、第１の実施形態と同様であるから、図１を参照のこと。また、図１２に部分図として示す第４の実施形態に係わる機能ブロック図のその他の部分については、第１の実施形態ないし第４の実施形態と同様であるから、例えば図２を参照のこと。
【００９４】
わずかな推定誤差が含まれることによってもミュージカルノイズや近端話者の音がこもるなどの問題が発生する。そこで、第５の実施形態では、このような問題を解決するために、エコー抑圧信号振幅スペクトルに収音信号振幅スペクトルを付加する。この付加の方法は、第１の実施形態から第４の実施形態までのいずれの実施形態と組み合わせることができるが、図１３には第１の実施形態と組み合わせた処理フローを示す。
ここでは第１の実施形態と異なる点のみについて、以下に説明する。
【００９５】
第５の実施形態に係わるエコー抑圧装置１００の外部記憶装置１７には、第１の実施形態において記憶保存されるプログラムなどに加え、第１積算部５Ｂを実現するためのプログラム、第２積算部５Ａを実現するためのプログラム、加算部６を実現するためのプログラムを実現するためのプログラムも保存記憶される。
これらのプログラムは、必要に応じてＲＡＭ１５に読み込まれて、ＤＳＰ１４で解釈実行・処理される。その結果、ＤＳＰ１４が所定の機能（第１積算部、第２積算部、加算部）を実現することになる。
【００９６】
エコー抑圧装置は、第１の実施形態のエコー抑圧装置１００における各処理部（収音信号周波数分析部や補正量算出部など）に加え、第１積算部５Ｂ、第２積算部５Ａ、加算部６を備えている（図１２参照）。
【００９７】
第２積算部５Ａは、収音信号振幅スペクトル｜Ｙω｜に（１−α）を積算して出力する（ステップＳ２１）。ここで、αはエコー抑圧信号振幅スペクトル｜Ｅω｜と収音信号振幅スペクトル｜Ｙω｜との比を予め定める値であり、例えば、α＝０．９９などの値である。なお、αの値は、予め所定のプログラムに組み込まれて設定されるとしても、あるいは、入力部１１によってエコー抑圧装置１００に与えられるとしてもよい。
【００９８】
第１積算部５Ｂは、ステップＳ１４（第１の実施形態を参照のこと。）で出力されたエコー抑圧信号振幅スペクトル｜Ｅω｜にαを積算する（ステップＳ２０）。
【００９９】
加算部６は、第２積算部５Ａによる出力と第１積算部５Ｂによる出力とを加算して、これを加算スペクトルとして出力する（ステップＳ２２）。
【０１００】
エコー抑圧信号出力部１０５は、ステップＳ２２で出力された加算スペクトル｜Ｅω｜およびステップＳ３で出力された収音信号位相スペクトルａｒｇ（Ｙω）から周波数領域における信号を合成し、この信号を時間領域に短時間（離散）逆フーリエ変換して出力信号ｅ（ｋ）を出力する（ステップＳ１５’）。
以上の他の処理は、第１の実施形態〜第４の実施形態と同じである。
【０１０１】
＜第６の実施形態＞
次に、本発明のエコー抑圧装置・方法の第６の実施形態を説明する。
図１４は、第６の実施形態に係わる目的成分選択出力部における処理フローを示すフローチャートである。
なお、第６の実施形態に係わるエコー抑圧装置のハードウェア構成例は、第１の実施形態と同様であるから、図１を参照のこと。
【０１０２】
上記各実施形態における目的成分選択出力部１０４において、ｃω・｜Ｘ−ω｜の誤推定によって目的成分選択誤差が生じ、ミュージカルノイズが発生する場合がある。第６の実施形態は、数フレーム前までの特徴量を用いて突発的な音響変化をミュージカルノイズとして抑圧する実施形態である。このミュージカルノイズ抑圧方法は、第１の実施形態から第５の実施形態までのいずれの実施形態とも組み合わせることができる。
ここでは第１の実施形態と異なる点のみについて、以下に説明する。
【０１０３】
以下においては、周波数領域における周波数ωがω＝１，２，・・・，Ωであるとして説明する。
まず、目的成分選択出力部１０４は、ω＝１の場合について（ステップＳ３０）、第１の実施形態で説明したβ・ｃω・｜Ｘ−ω｜と収音信号振幅スペクトル｜Ｙω｜との大小判定をする（ステップＳ３１）。
【０１０４】
ステップＳ３１の大小判定結果が「β・ｃω・｜Ｘ−ω｜＜｜Ｙω｜が成立しない」という場合には、目的成分選択出力部１０４は、このときの周波数（ω＝１）における収音信号振幅スペクトルの大きさをεにして抑圧する（式（１５）参照）（ステップＳ３２）。
【０１０５】
ステップＳ３１の大小判定結果が「β・ｃω・｜Ｘ−ω｜＜｜Ｙω｜が成立する」という場合には、目的成分選択出力部１０４は、このときの周波数（ω＝１）における収音信号振幅スペクトルは抑圧せず（式（１５）参照）、周波数ごとの指標ｆｇωに所定の値を設定する（ステップＳ３３）。
【数１５】
2006340189.tif 000017
【０１０６】
この実施形態では、所定の値を一律に１とする（式（１６）参照）。また、全ての周波数に対する指標ｆｇωの初期値を一律０としておく。なお、指標ｆｇωに設定する所定の値は、論理判断の処理を行うときの「目印」としての役割を担うにすぎないものであるから、いかなる値でもよいし、特定の１つの値に固定されるものではない。例えば、全ての周波数に対する指標ｆｇωの初期値を一律０としたならば、設定する値を０以外の値とすることもできる。さらには、いわゆる数字に限定されず、コンピュータにおいて論理判断の処理が可能なものであればアルファベットでもよい（例えば、文字列を変数として論理判断の処理を実行するようにプログラムを記述すればよい。）。
【数１６】
2006340189.tif 000018
【０１０７】
次に、目的成分選択出力部１０４は、周波数ωが周波数領域の上限周波数Ωであるか否かを判定する（ステップＳ３４）。この判定結果が「偽」である場合には、目的成分選択出力部１０４は、周波数ωに１を加え（ステップＳ３５）、ステップＳ３１〜ステップＳ３４の処理を繰り返す。この段階では周波数ω＝１なので、この周波数ωに１を加えた次の周波数ω＝２について、ステップＳ３１〜ステップＳ３４の処理を繰り返す。こうして、ステップＳ３４における判定結果が「真」となった場合には、周波数領域の各周波数について選択的に抑圧された収音信号振幅スペクトル｜Ｙω｜（以下、「候補スペクトル｜Ｊω｜」という。）が得られたことになり（ステップＳ３６）、また、収音信号振幅スペクトル｜Ｙω｜が抑圧されなかったときの全ての周波数について指標ｆｇωに１が設定されたことになる。
【０１０８】
続いて、目的成分選択出力部１０４は、周波数領域の各周波数について、下記の３つの条件を満たすか否かを判定する。各条件の判定結果が「偽」の場合には、このときの周波数に対する候補スペクトル｜Ｊω｜の大きさを抑圧する。
条件１：「指標ｆｇω＝１である。」
条件２：「１フレーム前の指標ｆｇ（１）ω＝１、もしくは指標ｆｇ（１）ω−１＝１、も
しくは指標ｆｇ（１）ω＋１＝１である。」
条件３：「２フレーム前の指標ｆｇ（２）ω＝１、もしくは指標ｆｇ（２）ω−１＝１、も
しくは指標ｆｇ（２）ω＋１＝１である。」
（なお、条件２および条件３の「もしくは」は論理和の判定である。）
【０１０９】
ここで、各条件における指標ｆｇ（Ｚ）ωは、Ｚフレーム前の指標を表す。また、各条件における指標ｆｇ（Ｚ）ω−１は周波数ω−１におけるＺフレーム前の指標を、指標ｆｇ（Ｚ）ω＋１は周波数ω＋１におけるＺフレーム前の指標を表す。
【０１１０】
また、ここでの条件の個数は２フレーム前までの３つであるとしたが、２フレーム前までに限定するものではなく、より一般的にＦ（≧１）フレーム前までと拡張する（条件数はＦ＋１個）ことが可能である。また、上記の各条件では、周波数ωの両隣の周波数ω−１、周波数ω＋１についてもその指標に設定される値について判定しているが、このように両隣の周波数における指標についても判定することに限定されるものではない。例えば、両隣を越えて広く周波数ω−ｉ、周波数ω−ｉ＋１、・・・、周波数ω＋ｊ−１、周波数ω＋ｊまでの範囲で各周波数における指標に設定される値ついて判定するとしてもよい（ここでのｉ、ｊは、整数とし、ｉ＝ｊでも、ｉ≠ｊでもよい。）。さらに、周波数ωを跨ぐ範囲にも限らず、例えば、周波数ω−ｉ、周波数ω−ｉ＋１、・・・、周波数ω−１、周波数ωまでの範囲で各周波数における指標に設定される値ついて判定するとしてもよい。
【０１１１】
つまり、目的成分選択出力部１０４は、まずω＝１の場合について（ステップＳ３７）、条件１の判定をする（ステップＳ３８）。この条件１の判定結果が「偽」の場合は、目的成分選択出力部１０４は、このときの周波数に対する候補スペクトル｜Ｊω｜の大きさをεにして抑圧する（ステップＳ４１）。
【０１１２】
ステップＳ３８における判定結果が「真」の場合は、目的成分選択出力部１０４は、条件２の判定をする（ステップＳ３９）。この条件２の判定結果が「偽」の場合は、目的成分選択出力部１０４は、このときの周波数に対する候補スペクトル｜Ｊω｜の大きさをεにして抑圧する（ステップＳ４１）。
【０１１３】
ステップＳ３９における判定結果が「真」の場合は、目的成分選択出力部１０４は、条件３の判定をする（ステップＳ４０）。この条件３の判定結果が「偽」の場合は、目的成分選択出力部１０４は、このときの周波数に対する候補スペクトル｜Ｊω｜の大きさをεにして抑圧する（ステップＳ４１）。
【０１１４】
ステップＳ４０における判定結果が「真」の場合、あるいは、ステップＳ４１の処理の実行後は、目的成分選択出力部１０４は、周波数ωが周波数領域の上限周波数Ωであるか否かを判定する（ステップＳ４２）。この判定結果が「偽」である場合には、目的成分選択出力部１０４は、周波数ωに１を加え（ステップＳ４３）、ステップＳ３８〜ステップＳ４２の処理を繰り返す。この段階では周波数ω＝１なので、この周波数ωに１を加えた次の周波数ω＝２について、ステップＳ３８〜ステップＳ４２の処理を繰り返す。こうして、ステップＳ４２における判定結果が「真」となった場合には、周波数領域の各周波数について選択的に抑圧された候補スペクトル｜Ｊω｜が得られたことになり、このときの候補スペクトルが、目的成分選択出力部１０４の出力するエコー抑圧信号振幅スペクトル｜Ｅω｜になる（ステップＳ４４）。
【０１１５】
なお、上記の説明では、目的成分選択出力部１０４は、ステップＳ３８における判定結果が「偽」の場合にステップＳ４１の処理を実行すると説明した。しかし、この実施形態では、指標ｆｇωに設定する所定の値を一律に１とし、全ての周波数に対する指標ｆｇωの初期値を一律０としたのであるから、ステップＳ３８の条件１の判定において判定結果が指標ｆｇω＝１ではない場合、このときの周波数に対する候補スペクトル｜Ｊω｜の大きさはステップＳ３２において既にεに抑圧されたものとなっており、ステップＳ４１の処理は冗長と言える。そこで、このような場合には、ステップＳ４１の処理を実行せず、ステップＳ４２の処理を実行するとしてもよい。
【０１１６】
さらに、上記の説明では、まず、周波数領域の各周波数について候補スペクトル｜Ｊω｜を求めるとともに指標ｆｇωの値を設定し、次いで、周波数領域の各周波数について条件１〜３の判定をして選択的に候補スペクトル｜Ｊω｜を抑圧すると説明したが、周波数領域の周波数ごとに、各種の判定を行って選択的に収音信号振幅スペクトルを抑圧してエコー抑圧信号振幅スペクトル｜Ｅω｜を得ることもできる。このことを図１５を参照して説明するが、上記と同じ処理内容のステップには上記各ステップ番号と同一の符号を与え、異なる部分についてのみ説明する。
【０１１７】
目的成分選択出力部１０４は、ステップＳ３２の処理を実行すると、ステップＳ３４ではなく、ステップＳ３５の処理を実行する。また、目的成分選択出力部１０４は、ステップＳ３３の処理を実行すると、ステップＳ３４の処理ではなく、ステップＳ３９の処理を実行する（ステップＳ３８の処理は省略できる。）。目的成分選択出力部１０４は、ステップＳ３９およびステップＳ４０の判定結果が「偽」の場合、ステップＳ４１ではなく、ステップＳ５０の処理を実行する。ステップＳ５０の処理の内容はステップＳ３２と同じである。目的成分選択出力部１０４は、ステップＳ４０の判定結果が「真」の場合、ステップＳ３４（ステップＳ４２と処理内容は同じ）の処理を実行する。このステップＳ３４の判定結果が「偽」の場合、目的成分選択出力部１０４は、ステップＳ３５の処理を実行する。ステップＳ３４の判定結果が「真」の場合には、選択的に抑圧された収音信号振幅スペクトル｜Ｅω｜が出力されたことになる。
【０１１８】
＜第７の実施形態＞
第７の実施形態は、上述した振幅スペクトルの抑圧レベルεが０の場合、エコー抑圧信号出力部１０５において、この抑圧レベルε＝０で抑圧された周波数におけるエコー抑圧信号振幅スペクトル（大きさはε＝０である。）と収音信号周波数分析部１０２によって出力された収音信号位相スペクトルａｒｇ（Ｙω）とを合成しても０になることを考慮したものである。
ここでは第１の実施形態を例にとって、第７の実施形態を説明する。図１６は、第７の実施形態に係わるエコー抑圧装置におけるエコー抑圧の処理機能を例示する図である。また、第１の実施形態と異なる部分についてのみ説明をする。
【０１１９】
第７の実施形態では、第１の実施形態に周波数領域変換部１０２ａが付加された機能構成となっている。
周波数領域変換部１０２ａは、収音信号ｙ（ｋ）を入力として、この収音信号ｙ（ｋ）を所定のフレームで所定の周波数領域に短時間フーリエ変換した周波数領域収音信号Ｙωを出力する。収音信号周波数分析部１０２は、周波数領域収音信号Ｙωを入力として、この周波数領域収音信号Ｙωの振幅スペクトル｜Ｙω｜を出力する。目的成分選択出力部１０４は、式（８）ではなく、式（１７）に従って、周波数領域エコー抑圧信号Ｅωを周波数ωごとに求めて出力する。
【数１７】
2006340189.tif 000019
【０１２０】
つまり、目的成分選択出力部１０４は、周波数ωごとにβ・ｃω・｜Ｘ−ω｜と収音信号振幅スペクトル｜Ｙω｜との大小判定との大小判定をし、β・ｃω・｜Ｘ−ω｜＜｜Ｙω｜が成立しない場合の周波数ωに対する周波数領域収音信号Ｙωを０にする（大小判定によって選択的に周波数領域収音信号Ｙωが抑圧される。）。なお、周波数領域収音信号Ｙωは複素数で与えられるので、実数部と虚数部の値をともに０にすればよい。この結果、周波数領域の全ての周波数ωについて大小判定がなされて選択的に抑圧された周波数領域収音信号Ｙωが、周波数領域エコー抑圧信号Ｅωとして出力される。
【０１２１】
エコー抑圧信号出力部１０５は、上記周波数領域エコー抑圧信号Ｅωを時間領域に短時間（離散）逆フーリエ変換して出力信号ｅ（ｋ）を出力する。
【０１２２】
以上の各実施形態の他、本発明であるエコー抑圧装置・方法は上述の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。また、上記エコー抑圧装置・方法において説明した処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されるとしてもよい。さらに、上記説明の式（５）、式（６）、式（１２）、式（１４）で示した補正量や振幅スペクトルの平滑化も、各式に基づく平滑化に限定する趣旨のものではなく、適宜に他の平滑化手法によることが可能である。
【０１２３】
また、上記エコー抑圧装置における処理機能をコンピュータによって実現する場合、エコー抑圧装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記エコー抑圧装置における処理機能がコンピュータ上で実現される。
【０１２４】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ（Random Access Memory）、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）等を、光磁気記録媒体として、ＭＯ（Magneto-Optical disc）等を、半導体メモリとしてＥＥＰ−ＲＯＭ（Electronically Erasable and Programmable-Read Only Memory）等を用いることができる。
【０１２５】
また、このプログラムの流通は、例えば、そのプログラムを記録したＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
【０１２６】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるＡＳＰ（Application Service Provider）型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの（コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等）を含むものとする。
【０１２７】
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、エコー抑圧装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【実施例】
【０１２８】
本発明者らは、本発明のエコー抑圧装置・方法の検証実験を行った。実験では、第４の実施形態に第５の実施形態と第６の実施形態を適用したエコー抑圧装置を用いて従来法との違いを確認した。なお、サンプリング周波数は１６ｋＨｚとし、残響時間２００ｍｓの部屋で実測したインパルス応答を２０４８点で打ち切って与えた。本発明のエコー抑圧装置では、周波数分析点数を５１２点と設定した。なお、適応フィルタはステップサイズ０．５、タップ数２０４８の学習アルゴリズムとした。送話音声存在区間は既知とし、適応フィルタでは、送話音声存在区間で適応を停止させた。図１７（ａ）〜（ｄ）に各信号の時間波形を示す。図１７（ａ）はエコー信号を、図１７（ｂ）は送話（収音）信号を、図１７（ｃ）は適応フィルタによるエコー抑圧信号を、図１７（ｄ）は本発明のエコー抑圧方法によるエコー抑圧信号を示している。区間Ａは受話シングルトーク状態、区間Ｂは送話シングルトーク状態、区間Ｃはダブルトーク状態、区間Ｄはステレオ信号の相関による適応フィルタの誤収束の影響を確認するために左右の再生信号を入れ換えた受話シングルトーク状態である。なお、再生信号を入れ換えた際に音響結合量が急激に大きくなるような信号とインパルス応答の組合せを用いた。図１７（ａ）〜（ｄ）から、区間Ａにおいて、適応フィルタではエコーの消し残りが区間の初期に多い事が分かる。これに対し、本発明によるエコー抑圧方法ではエコーを瞬時に抑圧できることを確認した。区間Ｂでは、出力信号の波形が送話信号の波形とほぼ同じであり、送話音声に悪影響がないことを確認できる。区間Ｃでは、本発明のエコー抑圧方法は送話信号の波形をほぼ復元していることが分かる。また、内観聴取からミュージカルノイズがほとんど無いことも確認した。区間Ｄでは、適応フィルタの場合、エコー経路の変動や急激な音響結合量の変化によってエコーの消し残りが増えることが分かる。これに対し、本発明のエコー抑圧方法では瞬時にエコーを抑圧し、エコー経路の変動及び音響結合量の急激な変化に頑健であることを確認した。このように、本発明のエコー抑圧方法を用いる事で、使用する部屋の環境の変化などにも即応でき、送話音声パワーを保持したままでエコーを瞬時に抑圧できることが分かった。
【産業上の利用可能性】
【０１２９】
本発明は、ハンズフリー通話、ハンズフリー音声認識などへの適用が可能である。
【図面の簡単な説明】
【０１３０】
【図１】第１の実施形態に係わるエコー抑圧装置１００のハードウェア構成を例示した構成ブロック図。
【図２】第１の実施形態に係わるエコー抑圧装置１００におけるエコー抑圧の処理機能を例示する機能ブロック図。
【図３】第１の実施形態に係わるエコー抑圧装置１００におけるエコー抑圧処理を示すフローチャート。
【図４】第１の実施形態の変形例に係わるエコー抑圧装置におけるエコー抑圧の処理機能を例示する機能ブロック図。
【図５】第１の実施形態の変形例に係わるエコー抑圧装置におけるエコー抑圧処理を示すフローチャート。
【図６】第２の実施形態における再生信号周波数分析部の処理機能を例示する機能ブロック図。
【図７】第２の実施形態における再生信号周波数分析部の処理フローを示すフローチャート。
【図８】第３の実施形態に係わるエコー抑圧装置１００’におけるエコー抑圧の処理機能を例示する機能ブロック図。
【図９】第３の実施形態に係わるエコー抑圧装置１００’におけるエコー抑圧処理を示すフローチャート。
【図１０】第４の実施形態における総和部の処理機能を例示する機能ブロック図。
【図１１】第４の実施形態における総和部の処理フローを示すフローチャート。
【図１２】第５の実施形態に係わるエコー抑圧装置におけるエコー抑圧の処理機能を例示する機能ブロック図（部分図）。
【図１３】第５の実施形態に係わるエコー抑圧装置におけるエコー抑圧処理を示すフローチャート。
【図１４】第６の実施形態に係わる目的成分選択出力部における処理フローを示すフローチャート。
【図１５】第６の実施形態に係わる目的成分選択出力部における処理フローの変形例を示すフローチャート（図１４）。
【図１６】第７の実施形態に係わるエコー抑圧装置におけるエコー抑圧の処理機能を例示する図。
【図１７】（ａ）は、検証実験におけるエコー信号の時間波形。（ｂ）は、検証実験における送話信号の時間波形。（ｃ）は、検証実験における適応フィルタによるエコー抑圧信号の時間波形。（ｄ）は、検証実験における本発明のエコー抑圧方法によるエコー信号の時間波形。
【図１８】従来の多チャンネルエコー抑圧装置の処理機能を例示する機能ブロック図。
【符号の説明】
【０１３１】
４Ａ  総和部
１０１  再生信号周波数分析部
１０２  収音信号周波数分析部
１０４  目的成分選択出力部
１０５  エコー抑圧信号出力部
１０６  ダブルトーク検出部
１０７  補正量算出部
【図１】
2006340189.tif 000020
【図２】
2006340189.tif 000021
【図３】
2006340189.tif 000022
【図４】
2006340189.tif 000023
【図５】
2006340189.tif 000024
【図６】
2006340189.tif 000025
【図７】
2006340189.tif 000026
【図８】
2006340189.tif 000027
【図９】
2006340189.tif 000028
【図１０】
2006340189.tif 000029
【図１１】
2006340189.tif 000030
【図１２】
2006340189.tif 000031
【図１３】
2006340189.tif 000032
【図１４】
2006340189.tif 000033
【図１５】
2006340189.tif 000034
【図１６】
2006340189.tif 000035
【図１７】
2006340189.tif 000036
【図１８】
2006340189.tif 000037