(57)【要約】【課題】再生手段と収音手段との間の音響経路が非線形で、かつ、音量の変動が大きい場合でも、少ない演算量で安定かつ十分にエコーを消去し、よって通話品質の劣化を防ぐことができる反響消去方法を提供する。【解決手段】所定の方法により受話信号を複数の成分に分割し、当該成分ごとに、各成分の大きさに応じて生成した乗算係数がそれぞれ設定された複数の適応フィルタを用いて疑似エコーを生成し、これを収音信号から差し引くことによりエコーが消去された送話信号を得る。【選択図】図３
2011166239.tif 000002
【特許請求の範囲】
【請求項１】
所定の方法により受話信号を複数の成分に分割し、当該成分ごとに、各成分の大きさに応じて生成した乗算係数がそれぞれ設定された複数の適応フィルタを用いて疑似エコーを生成し、これを収音信号から差し引くことによりエコーが消去された送話信号を得る反響消去方法。
【請求項２】
請求項１に記載の反響消去方法であって、
時間領域の受話信号
【数４２】
2011166239.tif 000044
（ｎは時刻を表す整数、Ｌはフレーム長）をＫ個の周波数成分Ｘ(ｋ) （ｋ＝１,２,・・・,Ｋ、Ｋは２以上の整数）に変換する第１周波数変換ステップと、
上記周波数成分Ｘ(ｋ)ごとにＭｋ個（Ｍｋはｋの値に応じた正の整数）の乗算係数βk,m（ｍ＝１,２,・・・, Ｍｋ）を、各周波数成分の大きさに応じて生成する乗算係数生成ステップと、
上記周波数成分Ｘ(ｋ)ごとにそれぞれ用意されたＭｋ個の適応フィルタにおいて、当該適応フィルタのフィルタ係数Ｈk,mと上記乗算係数βk,mと上記周波数成分Ｘ(ｋ)とを用いて、適応フィルタごとの疑似エコーＹ'(ｋ,１), Ｙ'(ｋ,２),・・・, Ｙ'(ｋ, Ｍｋ)を求め、これらを合算して周波数成分Ｘ(ｋ)に対するトータルでの疑似エコーＹ'(ｋ)を生成する疑似エコー生成ステップと、
時間領域の収音信号
【数４３】
2011166239.tif 000045
をＫ個の周波数成分Ｙ(ｋ)に変換する第２周波数変換ステップと、
上記周波数成分Ｙ(ｋ)から上記疑似エコーＹ'(ｋ)を差し引いて差信号Ｅ(ｋ)を生成する差信号生成ステップと、
上記差信号Ｅ(１), Ｅ(２),・・・,Ｅ(Ｌ／２＋１),Ｅ*(Ｌ／２),Ｅ*(Ｌ／２−１),・・・,Ｅ*(２)（＊は複素共役を表す）を合成し時間領域の送話信号
【数４４】
2011166239.tif 000046
に変換する周波数逆変換ステップと、
上記適応フィルタのフィルタ係数Ｈk,mを、上記差信号Ｅ(ｋ)と上記周波数成分Ｘ(ｋ)と上記乗算係数βk,mとを用いて更新するフィルタ係数更新ステップと、
を実行する反響消去方法。
【請求項３】
請求項１に記載の反響消去方法であって、
時間領域の受話信号
【数４５】
2011166239.tif 000047
（ｎは時刻を表す整数、Ｌはフレーム長）をＫ個の周波数成分Ｘ(ｋ) （ｋ＝１,２,・・・,Ｋ、Ｋは２以上の整数）に変換する第１周波数変換ステップと、
上記周波数成分Ｘ(ｋ)ごとにＭｋ個（Ｍｋはｋの値に応じた正の整数）の乗算係数βk,m（ｍ＝１,２,・・・, Ｍｋ）を、各周波数成分の大きさに応じて生成する乗算係数生成ステップと、
上記周波数成分Ｘ(ｋ)ごとにそれぞれ用意されたＭｋ個の適応フィルタにおいて、当該適応フィルタのフィルタ係数Ｈk,mと上記乗算係数βk,mと上記周波数成分Ｘ(ｋ)とを用いて、適応フィルタごとの疑似エコーＹ'(ｋ,１), Ｙ'(ｋ,２),・・・, Ｙ'(ｋ, Ｍｋ)を求め、これらを合算して周波数成分Ｘ(ｋ)に対するトータルでの疑似エコーＹ'(ｋ)を生成する疑似エコー生成ステップと、
Ｋ個の上記疑似エコーＹ'(１), Ｙ'(２),・・・, Ｙ'(Ｋ)を合成し時間領域の疑似エコー
【数４６】
2011166239.tif 000048
に変換する周波数逆変換ステップと、
上記周波数逆変換ステップで得られた時間領域の疑似エコーの要素のうち後半のＬ個
【数４７】
2011166239.tif 000049
を抽出するブロック抽出ステップと、
上記ブロック抽出ステップで抽出したＬ個の要素を、収音信号
【数４８】
2011166239.tif 000050
の対応する各要素からそれぞれ差し引くことにより、送話信号
【数４９】
2011166239.tif 000051
を生成する送話信号生成ステップと、
上記送話信号の先頭にＬ個のゼロを付加し、ゼロ付加送話信号
【数５０】
2011166239.tif 000052
を生成するゼロ付加ステップと、
上記ゼロ付加送話信号を、Ｋ個の周波数成分Ｅ'(ｋ)に変換する第２周波数変換ステップと、
上記周波数成分Ｘ(ｋ)と上記ゼロ付加送話信号の周波数成分Ｅ'(ｋ)とから更新係数Ｓ(ｋ)を計算する更新係数計算ステップと、
上記適応フィルタのフィルタ係数Ｈk,mを、上記更新係数Ｓ(ｋ)と上記周波数成分Ｘ(ｋ)と上記乗算係数βk,mとを用いて更新するフィルタ係数更新ステップと、
を実行する反響消去方法。
【請求項４】
請求項１乃至３のいずれかに記載の反響消去方法であって、
上記乗算係数を、複数の周波数成分Ｘ(ｋ)の大きさをまとめて評価することにより生成することを特徴とする反響消去方法。
【請求項５】
請求項１に記載の反響消去方法であって、
受話信号ｘ(ｎ)（ｎは時刻を表す整数）をＫ個の帯域成分ｘｋ（ｋ＝１,２,・・・,Ｋ、Ｋは２以上の整数）に分割する第１帯域分割ステップと、
上記帯域成分ｘｋごとにＭｋ個（Ｍｋはｋの値に応じた正の整数）の乗算係数βk,m（ｍ＝１,２,・・・, Ｍｋ）を、各帯域成分の大きさに応じて生成する乗算係数生成ステップと、
上記帯域成分ｘｋごとにそれぞれ用意されたＭｋ個の適応フィルタにおいて、当該適応フィルタのフィルタ係数と上記乗算係数βk,mと上記帯域成分ｘｋとを用いて、それぞれ疑似エコー
【数５１】
2011166239.tif 000053
を求め、これらを合算して疑似エコーｙ'ｋを生成する疑似エコー生成ステップと、
収音信号ｙ(ｎ)をＫ個の帯域成分ｙｋに分割する第２帯域分割ステップと、
上記帯域成分ｙｋから上記疑似エコーｙ'ｋを差し引いて差信号ｅｋを生成する差信号生成ステップと、
Ｋ個の上記差信号ｅ１,ｅ２,・・・,ｅＫを合成し時間領域の送話信号ｅ(ｎ)に変換する帯域合成ステップと、
上記適応フィルタのフィルタ係数を、上記差信号ｅｋと上記帯域成分ｘｋと上記乗算係数βk,mとを用いて更新するフィルタ係数更新ステップと、
を実行する反響消去方法。
【請求項６】
所定の方法により受話信号を複数の成分に分割し、当該成分ごとに、各成分の大きさに応じて生成した乗算係数がそれぞれ設定された複数の適応フィルタを用いて疑似エコーを生成し、これを収音信号から差し引くことによりエコーが消去された送話信号を得る反響消去装置。
【請求項７】
請求項１乃至５のいずれかに記載の反響消去方法をコンピュータに実行させるためのプログラム。
【請求項８】
請求項１乃至５のいずれかに記載の反響消去方法をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声信号の通信に際し効果的なエコー消去を行うための、適応フィルタ技術による反響消去方法、反響消去装置、プログラム、および記録媒体に関する。
【背景技術】
【０００２】
エコーキャンセラ（反響除去装置）は、ハンズフリー通話装置などにおいてマイクロホンなどの収音手段により音声を収音する際に、スピーカなどの再生手段から放音され部屋の音響特性などを経て収音信号に混入したエコー成分を推定し、収音信号から差し引くことで、エコー成分が抑制された高品質な音声信号を確保するために用いられる装置である。
【０００３】
従来のエコーキャンセラの技術として、例えば非特許文献１の「線形適応フィルタ」を用いた周波数領域エコーキャンセラや非特許文献２の「Volterraフィルタを用いた非線形エコーキャンセラ」が挙げられる。
【０００４】
非特許文献１に示された技術による反響除去装置１０の機能構成例を図１５に示す。反響除去装置１０は、時間領域の受話信号をフーリエ変換により周波数領域の成分に分割する第１周波数変換部１１０と、受話信号の各周波数成分から疑似エコーを生成し、かつ、受話信号と差信号とから自身のフィルタ係数を逐次更新する適応フィルタ１３と、時間領域の収音信号をフーリエ変換により周波数領域の成分に分割する第２周波数変換部１４０と、周波数成分ごとに収音信号から疑似エコーを差し引いた差信号を生成する差信号生成部１５０と、周波数成分ごとの各差信号を逆フーリエ変換により合成して時間領域の送話信号を生成する周波数逆変換部１６０とから構成される。動作原理は以下のとおりである。
【０００５】
【数１】
2011166239.tif 000003
【０００６】
とする（Ｌはフレーム長で２以上の整数、Ｔは転置）。これらのフーリエ変換をそれぞれ、
【０００７】
【数２】
2011166239.tif 000004
【０００８】
とする（この場合、フーリエ変換の周波数分割数Ｋ＝Ｌ／２＋１）。周波数領域の適応フィルタのフィルタ係数を、
【０００９】
【数３】
2011166239.tif 000005
【００１０】
となり、適応フィルタのフィルタ係数の更新は、
【００１１】
【数４】
2011166239.tif 000006
【００１２】
またμは更新量を制御するステップサイズ（０＜μ＜２）である。
次に、非特許文献２のエコーキャンセラの動作原理について説明する。非特許文献２のエコーキャンセラでは、線形の適応フィルタ
【００１３】
【数５】
2011166239.tif 000007
【００１４】
以外に、Volterra級数の高次項に対応する適応フィルタを用意し、その入力として受話信号に処理を加えたものを用いる。例えば、時刻ｎの２次のVolterraフィルタとその入力は、ｘの過去Ｌ２サンプル分を考慮すると、
【００１５】
【数６】
2011166239.tif 000008
【００１６】
と計算される。
【先行技術文献】
【非特許文献】
【００１７】
【非特許文献１】M.Dentino, J.McCool and B.Widrow,"Adaptive Filtering in Frequency Domain", Proceedings of the IEEE, 1978, Vol.66, No.12, p.1658
【非特許文献２】A.Stenger, L.Trautmann and R.Rabenstein,"Nonlinear acoustic echo cancellation with 2nd order adaptive volterra filters", International Conference on Acoustics, Speech, and Signal Processing, 1999, Vol.2, p.877-880
【発明の概要】
【発明が解決しようとする課題】
【００１８】
ハンズフリー通話装置において、スピーカの径が小さいなどの理由から、スピーカとマイクロホンとの間の音響経路が非線形になる場合がある。しかしこのような場合にも、非特許文献１のフィルタは音響経路の線形性を仮定して線形なエコーしか推定しないため、送話信号に非線形なエコーが残ってしまい通話品質が劣化する。また、非特許文献２のフィルタでは音響経路が非線形な場合も考慮されるが、高次項を考慮すると次数のべき乗でフィルタ長が長くなり演算量が多くなる。加えて、実測では定常音には高い性能を発揮するものの、音量に変動が大きい音声では推定が不安定になって効果が得られないことがあり、エコーキャンセラとして実用化するには問題が残る。
【００１９】
本発明の目的は、再生手段と収音手段との間の音響経路が非線形で、かつ、音量の変動が大きい場合でも、少ない演算量で安定かつ十分にエコーを消去し、よって通話品質の劣化を防ぐことができる反響消去方法を提供することにある。
【課題を解決するための手段】
【００２０】
本発明の反響消去方法は、所定の方法により受話信号を複数の成分に分割し、当該成分ごとに、各成分の大きさに応じて生成した乗算係数がそれぞれ設定された複数の適応フィルタを用いて疑似エコーを生成し、これを収音信号から差し引くことによりエコーが消去された送話信号を得る。
【発明の効果】
【００２１】
本発明の反響消去方法は、「帯域ごとの特徴に注目し、帯域ごとに用意するフィルタ数を別にする」とともに、「帯域ごとに複数のフィルタを用意し、それらの線形結合の係数を入力の音量により変化させる」という技術的特徴を具体的構成及び処理に反映したものである。これにより、個々のフィルタは固定値を推定していても、全体としては変動するインパルス応答を精度よく推定することができる。そのため、再生手段と収音手段との間の音響経路が非線形で、かつ、音量の変動が大きい場合でも、音響経路を経由したエコーに近い疑似エコーを生成できるため、安定かつ十分にエコーを消去することができ、よって通話品質の劣化を防ぐことができる。また、帯域ごとに適した個数のフィルタを用意することができるため、メモリの効率化を図ることができる。更に、構成がシンプルであるため、少ない演算量で実現することができる。
【図面の簡単な説明】
【００２２】
【図１】反響消去装置１００の構成例を示すブロック図。
【図２】複合適応フィルタ部１３０の構成例を示すブロック図。
【図３】反響消去装置１００に係る反響消去方法の処理フロー例を示す図。
【図４】反響消去装置２００の構成例を示すブロック図。
【図５】複合適応フィルタ部２３０の構成例を示すブロック図。
【図６】反響消去装置２００に係る反響消去方法の処理フロー例を示す図。
【図７】反響消去装置３００の構成例を示すブロック図。
【図８】反響消去装置４００の構成例を示すブロック図。
【図９】複合適応フィルタ部４３０の構成例を示すブロック図。
【図１０】反響消去装置４００に係る反響消去方法の処理フロー例を示す図。
【図１１】５種類の音量で測定したインパルス応答の例を示す図。
【図１２】図１１のＡで示す部分の拡大図。
【図１３】図１１のＢで示す部分の拡大図。
【図１４】本発明の反響消去方法と従来の反響消去方法との平均エコー消去量の比較を示す図。
【図１５】従来技術による反響消去装置１０の構成例を示すブロック図。
【発明を実施するための形態】
【００２３】
以下、本発明の実施の形態について、詳細に説明する。
【実施例１】
【００２４】
図１に実施例１の反響消去装置１００の構成例を、図３に当該装置を用いた反響消去方法による処理フロー例を示す。
【００２５】
反響消去装置１００は、第１周波数変換部１１０とＫ個（Ｋは周波数成分の数）の乗算係数計算部１２０とＫ個の複合適応フィルタ部１３０と第２周波数変換部１４０とＫ個の差信号生成部１５０と周波数逆変換部１６０とを備える。また、ｋ番目（ｋ＝１、２、・・・、Ｋ）の複合適応フィルタ部１３０は、図２に示すようにＭｋ個（Ｍｋはｋの値に応じた正の整数）の適応フィルタ１３１とそれらの出力を加算する加算部１３２とを備える。なお、第１周波数変換部１１０と第２周波数変換部１４０と差信号生成部１５０と周波数逆変換部１６０は従来の反響除去装置１０と同様の役割を果たす。
【００２６】
第１周波数変換部１１０は、時刻ｎの時の時間領域の受話信号
【００２７】
【数７】
2011166239.tif 000009
【００２８】
（Ｌはフレーム長）が入力され、フレーム単位で離散フーリエ変換により周波数分析を行い、Ｋ個の周波数成分Ｘ(１)、Ｘ(２)、・・・、Ｘ(Ｋ)に分割して出力する（Ｓ１）。ここで、ＫはＬ／２＋１である。フレームシフトとフレーム長の設定の仕方や周波数分析方法には様々なものがあるが、例えばフレーム長Ｌに対してフレームシフトＬ／２とし、周波数分析の際には長さＬのハミング窓
ｗ(ｉ)＝０．５４−０．４６ｃｏｓ(２πｎ／Ｌ）
を用いて、
【００２９】
【数８】
2011166239.tif 000010
【００３０】
と計算することができる。
【００３１】
乗算係数計算部１２０と複合適応フィルタ部１３０は周波数成分Ｘ(ｋ)ごとに設けられる。周波数成分Ｘ(ｋ)に対応するｋ番目の乗算係数計算部１２０は、第１周波数変換部１１０で得られた周波数成分Ｘ(ｋ)の大きさである絶対値|Ｘ(ｋ)|と、予め設定したＭｋ−１個の閾値ｖk,j（ｖk,jは正の実数でｖk,j-1＜ｖk,j（ｊ＝２、・・・、Ｍｋ−１））とを用いて、Ｍｋ個の乗算係数βk,m（ｍ＝１,２,・・・, Ｍｋ）を生成する（Ｓ２）。乗算係数βk,mは周波数成分Ｘ(ｋ)に対し、Ｍｋ個の適応フィルタ１３１（のフィルタ係数）をそれぞれいかなる重みで適用するかを設定する係数である。また、閾値ｖk,jは|Ｘ(ｋ)|の値に応じてＭｋ個の適応フィルタ１３１のうちいずれを適用するかを画するものである。そのため、Ｍｋ＝２の時は閾値は１つだけであり、Ｍｋ＝１の時は閾値は存在しない（つまり複合適応フィルタ部１３０は単一適応フィルタである）。
【００３２】
Ｍｋが２以上である時、乗算係数βk,mは具体的には以下のように求める。なお、ｉは除外されている部分を除き、ｉ＝１，２，・・・，Ｍｋである。
【００３３】
【数９】
2011166239.tif 000011
【００３４】
また、閾値ｖk,jは例えば、周波数成分の絶対値|Ｘ(ｋ)|の取りうる最大値を線形または対数スケールでＭｋ等分し、
【００３５】
【数１０】
2011166239.tif 000012
【００３６】
とするなどにより求める。
【００３７】
なお、閾値ｖk,jと適応フィルタ１３１の個数Ｍｋは、それぞれｋに依存せず同一の値としてもよいし、ｋによって値を変えてもよい。Ｍｋは、|Ｘ(ｋ)|の大きさの変化に応じ、通常２〜１０程度の値を用いる。
【００３８】
周波数成分Ｘ(ｋ)に対応するｋ番目の複合適応フィルタ部１３０のｍ番目の適応フィルタ１３１のフィルタ係数はＨk,mであり、当該適応フィルタ１３１は、対応する乗算係数βk,mと周波数成分Ｘ(ｋ)とを用い、例えば次式により当該ｍ番目の適応フィルタ１３１による疑似エコーＹ'(ｋ,ｍ)を求める（Ｓ３）。
【００３９】
【数１１】
2011166239.tif 000013
【００４０】
なお、適応フィルタ１３１はフィルタ係数Ｈk,mを、乗算係数βk,mと周波数成分Ｘ(ｋ)と差信号Ｅ(ｋ)とを用いて更新するが、それについては後述する。
【００４１】
加算部１３２は、適応フィルタ１３１ごとの疑似エコーＹ'(ｋ,１)、Ｙ'(ｋ,２)、・・・、Ｙ'(ｋ,Ｍｋ)を加算し、周波数成分Ｘ(ｋ)に基づくトータルでの疑似エコーＹ'(ｋ)を生成する。
【００４２】
第２周波数変換部１４０は、時刻ｎの時の時間領域の収音信号
【００４３】
【数１２】
2011166239.tif 000014
【００４４】
が入力され、フレーム単位で離散フーリエ変換によりＫ個の周波数成分Ｙ(１)、Ｙ(２)、・・・、Ｙ(Ｋ)に変換して出力する（Ｓ４）。ここで、ＫはＬ／２＋１である。具体的な変換方法としては第１周波数変換部１１０の説明で例示したものが挙げられる。
【００４５】
差信号生成部１５０は周波数成分ごとに合計Ｋ個設けられ、それぞれ収音信号の周波数成分Ｙ(ｋ)から疑似エコーＹ'(ｋ)を差し引いて差信号Ｅ(ｋ)を生成する（Ｓ５）。
【００４６】
周波数逆変換部１６０は、各周波数成分の差信号Ｅ(１), Ｅ(２),・・・,Ｅ(Ｌ／２＋１),Ｅ*(Ｌ／２),Ｅ*(Ｌ／２−１),・・・,Ｅ*(２)（＊は複素共役を表す）を逆フーリエ変換により周波数合成し、時間領域の送話信号
【００４７】
【数１３】
2011166239.tif 000015
【００４８】
を生成する（Ｓ６）。周波数分析を周波数変換部１１０の説明で例示した方法で行った場合、合成の際には隣り合う２つのフレームからの再合成結果を加算して、
【００４９】
【数１４】
2011166239.tif 000016
【００５０】
【数１５】
2011166239.tif 000017
【００５１】
により計算する。なお、Ｘｎ(ｋ)はｘ(ｎ−Ｌ＋１)からｘ(ｎ)の信号で計算された周波数分析値であり、Ｘn-L/2(ｋ)はｘ(ｎ−３Ｌ／２＋１)からｘ(ｎ−Ｌ／２)の信号で計算された周波数分析値であり、Ｘn+L/2(ｋ)はｘ(ｎ−Ｌ／２＋１)からｘ(ｎ＋Ｌ／２)の信号で計算された周波数分析値である。
【００５２】
反響消去装置１００への収音信号、受話信号の入力が続いている間、周波数成分Ｘ(ｋ)に対応するｋ番目の複合適応フィルタ部１３０のｍ番目の適応フィルタ１３１は、差信号生成部１５０で生成された差信号Ｅ(ｋ)と受話信号の周波数成分Ｘ(ｋ)と乗算係数βk,mとを用いて逐次、フィルタ係数Ｈk,mを更新する（Ｓ７）。フレーム番号をｔとし、更新前のフィルタ係数をＨk,m(ｔ)とした時、更新後のフィルタ係数Ｈk,m(ｔ＋１)は次式により求めることができる。
【００５３】
【数１６】
2011166239.tif 000018
【００５４】
ここで、＊は複素共役を表し、Ｐｔ(ｋ)は平滑化された信号パワーで
【００５５】
【数１７】
2011166239.tif 000019
【００５６】
である。また、μは更新量を制御するステップサイズ（０＜μ＜２）であり、αは平滑化のための定数（０＜α＜１）である。
【００５７】
なお、以上の説明においては、絶対値|Ｘ(ｋ)|が各周波数成分Ｘ(ｋ)の大きさを示す値であるとして数式に適用したが、適用する大きさを示す値は必ずしも|Ｘ(ｋ)|である必要はなく、例えば|Ｘ(ｋ)|２など他の値を用いてもよい。以下の実施例でも同様である。
【００５８】
以上、説明した本発明の反響消去装置１００及びこれを用いた反響消去方法は、「帯域ごとの特徴に注目し、帯域ごとに用意するフィルタ数を別にする」とともに、「帯域ごとに複数のフィルタを用意し、それらの線形結合の係数を入力の音量により変化させる」という技術的特徴を具体的構成及び処理に反映したものである。これにより、個々のフィルタは固定値を推定していても、全体としては変動するインパルス応答を精度よく推定することができる。そのため、再生手段と収音手段との間の音響経路が非線形で、かつ、音量の変動が大きい場合でも、音響経路を経由したエコーに近い疑似エコーを生成できるため、安定かつ十分にエコーを消去することができ、よって通話品質の劣化を防ぐことができる。また、帯域ごとに適した個数のフィルタを用意することができるため、メモリの効率化を図ることができる。更に、構成がシンプルであるため、少ない演算量で実現することができる。
【実施例２】
【００５９】
周波数領域のエコーキャンセラのバリエーションである参考文献１の構成に本発明の構成を応用することができる。参考文献１の構成は周波数領域での計算精度がより高く得られる構成である。実施例２の反響消去装置２００は参考文献１の構成に本発明の構成を応用した構成例であり、図４にそのブロック図を、図６に当該装置を用いた反響消去方法による処理フロー例を示す。
〔参考文献１〕E.R.Ferrara,"Fast Implimentation of LMS Adaptive Filters", IEEE Transactions on Acoustics, Speech, and Signal Processing, 1980, Vol.28, No.4, p.474-475
【００６０】
反響消去装置２００は、第１周波数変換部２１０とＫ個（Ｋは周波数成分の数）の乗算係数計算部１２０とＫ個の複合適応フィルタ部２３０と周波数逆変換部２６０とブロック抽出部２７０とゼロ付加部２８０と第２周波数変換部２４０と更新係数計算部２９０とを備える。また、ｋ番目（ｋ＝１、２、・・・、Ｋ）の複合適応フィルタ部２３０は、図５に示すようにＭｋ個（Ｍｋはｋの値に応じた正の整数）の適応フィルタ２３１とそれらの出力を加算する加算部１３２とを備える。なお、実施例１の反響消去装置１００と同じ符号を付した乗算係数計算部１２０と加算部１３２は反響消去装置１００と同じものであるため、詳細な説明は省略する。
【００６１】
第１周波数変換部２１０は、時刻ｎの時の時間領域の受話信号
【００６２】
【数１８】
2011166239.tif 000020
【００６３】
（Ｌはフレーム長）が入力され、フレーム単位で離散フーリエ変換により周波数分析を行い、Ｋ個の周波数成分Ｘ(１)、Ｘ(２)、・・・、Ｘ(Ｋ)に変換して出力する（Ｓ１１）。ここで、Ｋは２Ｌである。実施例１の第１周波数変換部１１０との相違は、取り込むフレーム長が２Ｌとなっている点にある。
【００６４】
続いて、実施例１と同様に、乗算係数計算部１２０にて乗算係数βk,mを生成し（Ｓ１２）、適応フィルタ２３１にて疑似エコーＹ'(ｋ,ｍ)を求め、加算部１３２にてＭｋ個の適応フィルタごとの疑似エコーＹ'(ｋ,ｍ)を加算して周波数成分Ｘ(ｋ)に基づくトータルでの疑似エコーＹ'(ｋ)を生成する（Ｓ１３）。適応フィルタ２３１での疑似エコーＹ'(ｋ,ｍ)の生成方法は実施例１と同じであるが、フィルタ係数の更新方法が異なるため異なる符号を付している。なお、フィルタ係数の更新方法については後述する。
【００６５】
周波数逆変換部２６０は、各周波数成分の疑似エコーＹ'(１), Ｙ'(２),・・・, Ｙ'(Ｋ)を逆フーリエ変換により周波数合成し、時間領域の疑似エコー
【００６６】
【数１９】
2011166239.tif 000021
【００６７】
を生成する（Ｓ１４）。
ブロック抽出部２７０は、周波数逆変換部２６０で得られた時間領域の疑似エコーの要素のうち後半のＬ個
【００６８】
【数２０】
2011166239.tif 000022
【００６９】
を抽出する（Ｓ１５）。
差信号生成部２５０は周波数成分ごとに合計Ｋ個設けられ、ブロック抽出部２７０で抽出したＬ個の要素を、収音信号
【００７０】
【数２１】
2011166239.tif 000023
【００７１】
の対応する各要素からそれぞれ差し引くことにより、送話信号
【００７２】
【数２２】
2011166239.tif 000024
【００７３】
を生成する（Ｓ１６）。
【００７４】
反響消去装置２００への収音信号、受話信号の入力が続いている間、周波数成分Ｘ(ｋ)に対応するｋ番目の複合適応フィルタ部２３０のｍ番目の適応フィルタ２３１は逐次フィルタ係数Ｈk,mを更新する。更新に際し、反響消去装置２００は以下の処理を実行する。
【００７５】
ゼロ付加部２８０は、差信号生成部２５０で生成された送話信号の先頭にＬ個のゼロを付加し、ゼロ付加送話信号
【００７６】
【数２３】
2011166239.tif 000025
【００７７】
を生成する（Ｓ１７）。
【００７８】
第２周波数変換部２４０は、ゼロ付加部２８０で生成されたゼロ付加送話信号が入力され、フレーム単位で離散フーリエ変換によりＫ個の周波数成分Ｅ'(１)、Ｅ'(２)、・・・、Ｅ'(Ｋ)に変換して出力する（Ｓ１８）。ここで、Ｋは２Ｌである。実施例１の第２周波数変換部１４０との相違は、取り込むフレーム長が２Ｌとなっている点にある。
【００７９】
更新係数計算部２９０は、ゼロ付加送話信号の周波数成分Ｅ'(ｋ)と受話信号の周波数成分Ｘ(ｋ)とから更新係数Ｓ(ｋ)を生成する（Ｓ１９）。具体的には、
【００８０】
【数２４】
2011166239.tif 000026
【００８１】
により生成する。
【００８２】
そして、周波数成分Ｘ(ｋ)に対応するｋ番目の複合適応フィルタ部２３０のｍ番目の適応フィルタ２３１は、更新係数Ｓ(ｋ)と受話信号の周波数成分Ｘ(ｋ)と乗算係数βk,mとを用いて逐次、フィルタ係数Ｈk,mを更新する（Ｓ２０）。フレーム番号をｔとし、更新前のフィルタ係数をＨk,m(ｔ)とした時、更新後のフィルタ係数Ｈk,m(ｔ＋１)は次式により求めることができる。
【００８３】
【数２５】
2011166239.tif 000027
【００８４】
ここで、Ｐｔ(ｋ)は平滑化された信号パワーで
【００８５】
【数２６】
2011166239.tif 000028
【００８６】
である。また、μは更新量を制御するステップサイズ（０＜μ＜２）であり、αは平滑化のための定数（０＜α＜１）である。
【００８７】
実施例２の構成は、実施例１の構成で得られる効果に加え、実施例１の構成に比べ周波数領域での計算精度が高いため、エコー消去量をより大きくすることができる。
【実施例３】
【００８８】
実施例３は、実施例１、２における乗算係数計算部１２０を乗算係数計算部３２０に置き換えた構成である。図７にその構成例である反響除去装置３００を示す。実施例１、２においては、乗算係数計算部１２０において乗算係数βk,mを周波数成分Ｘ(ｋ)ごとに計算したが、いくつかの周波数成分をまとめて評価することで、音量に相当する値の変化が緩やかになり、各周波数の変化に過敏にならず安定した乗算係数の計算を行うことができる。
【００８９】
具体的には、乗算係数計算部３２０における計算についてのみ、Ｋ＝Ｌ／２＋１とする代わりに、
【００９０】
【数２７】
2011166239.tif 000029
【００９１】
のように、Ｌｋ−Ｌk-1個ずつ周波数成分を束ねたものの組数をＫと定義する（Ｌ１,・・・,Ｌｋは２以上の整数で０＝Ｌ０＜Ｌ１＜・・・＜ＬＫ＝Ｌ／２＋１）。そして、実施例１、２の乗数係数計算部１２０においてはβk,mをＸ(ｋ)の絶対値を用いて計算するが、実施例３の乗数係数計算部３２０においては
【００９２】
【数２８】
2011166239.tif 000030
【００９３】
乗算係数をこのように求めることから、各適応フィルタにおいて当該乗算係数を適用するに際し、束ねられた周波数成分に係る乗算係数βk,mはＬｉ＜ｋ≦Ｌi+1（０≦ｉ≦Ｋ−１）の範囲において同一の値となる。例えば、図７に示すようにＸ(１)とＸ(２)とを乗算係数計算部３２０において束ねて評価した場合、
【００９４】
【数２９】
2011166239.tif 000031
【００９５】
となる。
【００９６】
なお、例えば音量変化の大きい周波数領域では束ねないか又は少なく束ね、音量変化の小さい周波数領域では多く束ねるなどにより、効率的にメモリを使用することができる。
【実施例４】
【００９７】
図８に実施例４の反響消去装置４００の構成例を、図１０に当該装置を用いた反響消去方法による処理フロー例を示す。
【００９８】
反響消去装置４００は、第１帯域分割部４１０とＫ個（Ｋは帯域分割数）の乗算係数計算部４２０とＫ個の複合適応フィルタ部４３０と第２帯域分割部４４０とＫ個の差信号生成部４５０と帯域合成部４６０とを備える。また、ｋ番目（ｋ＝１、２、・・・、Ｋ）の複合適応フィルタ部４３０は、図９に示すようにＭｋ個（Ｍｋはｋの値に応じた正の整数）の適応フィルタ４３１とそれらの出力を加算する加算部４３２とを備える。実施例１の反響消去装置１００との相違の核心は、第１、第２周波数変換部１１０、１４０が第１、第２帯域分割部４１０、４４０に置き換わり、周波数逆変換部１６０が帯域合成部４６０に置き換わっている点にある。すなわち、実施例１の反響消去装置１００では入力信号を周波数領域に変換し、処理を周波数領域で行った上で時間領域に逆変換するのに対し、実施例４の反響消去装置４００では周波数領域に変換することなく時間領域において処理を行う点が異なる。その他の相違点は、すべて上記の処理領域の相違に起因し、乗算係数計算部、複合適応フィルタ部及び差信号生成部が果たす機能そのものは実施例１と同様である。
【００９９】
第１帯域分割部４１０は、時刻ｎの時の時間領域の受話信号ｘ(ｎ)（ｎは時刻を表す整数）をＫ個の帯域成分ｘｋ（ｋ＝１,２,・・・,Ｋ、Ｋは２以上の整数）に分割する（Ｓ２１）。帯域成分への分割方法は、例えば参考文献２で開示された方法、すなわちｋ番目の帯域成分を、
【０１００】
【数３０】
2011166239.tif 000032
【０１０１】
により計算する。なお、Ｍは帯域制限をした信号を間引きする間隔で２以上の整数、Ｉは間引き後の信号の数で２以上の整数、ｒはｎ／Ｍ、ｆ(ｉ)は１≦ｉ≦Ｍ・Ｉで定義されるローパスフィルタで通過域が［−π／Ｋ、π／Ｋ］であるものである。
〔参考文献２〕牧野昭二、「サブバンド信号処理 −実時間動作化の奥の手−」、日本音響学会誌、２０００年、５６巻１２号、p.845-851
乗算係数計算部４２０は、帯域成分ｘｋ(ｒ)ごとにＭｋ個の乗算係数βk,m（ｍ＝１,２,・・・, Ｍｋ）を、各帯域成分の大きさに応じて生成する（Ｓ２２）。具体的には以下のように生成する。
【０１０２】
第１帯域分割部４１０から出力される帯域成分ｘｋ(ｒ)に基づく帯域成分ベクトル
【０１０３】
【数３１】
2011166239.tif 000033
【０１０４】
を用い、まず各信号の音量Ｐｋ(ｒ)を計算する。なお、ＬはＭ個間隔の間引きを行った後のフィルタタップ長で２以上の整数であり、間引き前後のタップ長を同一にするならばＩ＝Ｌであるが、原理的には必ずしもＩ＝Ｌである必要はない。音量Ｐｋ(ｒ)としては、例えばベクトルのＬ２ノルムを用い、
【０１０５】
【数３２】
2011166239.tif 000034
【０１０６】
により計算する。そしてこのＰｋ(ｒ)と予め設定したＭｋ−１個の閾値ｖk,j（ｖk,jは正の実数でｖk,j-1＜ｖk,j（ｊ＝２、・・・、Ｍｋ−１））とを用いて、Ｍｋ個の乗算係数βk,m（ｍ＝１,２,・・・, Ｍｋ）を生成する。
【０１０７】
Ｍｋが２以上である時、乗算係数βk,mは具体的には以下のように求める。なお、ｉは除外されている部分を除き、ｉ＝１，２，・・・，Ｍｋである。
【０１０８】
【数３３】
2011166239.tif 000035
【０１０９】
また、閾値ｖk,jは例えば、ノルムＰｋ(ｒ)の取りうる最大値を線形または対数スケールでＭｋ等分し、
【０１１０】
【数３４】
2011166239.tif 000036
【０１１１】
とするなどにより求める。
【０１１２】
なお、ｖk,jとＭｋはそれぞれｋに依存せず同一の値としてもよいし、ｋによって値を変えてもよい。
【０１１３】
帯域成分ｘｋ(ｒ)に対応するｋ番目の複合適応フィルタ部４３０のｍ番目の適応フィルタ４３１のフィルタ係数はベクトル
【０１１４】
【数３５】
2011166239.tif 000037
【０１１５】
であり、当該適応フィルタ４３１は、対応する乗算係数βk,mと帯域成分ベクトル
【０１１６】
【数３６】
2011166239.tif 000038
【０１１７】
とを用い、例えば次式により当該適応フィルタ４３１による疑似エコーｙ'k,m(ｒ)を求める（Ｓ２３）。
【０１１８】
【数３７】
2011166239.tif 000039
【０１１９】
なお、適応フィルタ４３１は
【０１２０】
【数３８】
2011166239.tif 000040
【０１２１】
差信号ｅｋ(ｒ)とを用いて更新するが、それについては後述する。
【０１２２】
加算部４３２は、適応フィルタ４３１ごとの疑似エコー
【０１２３】
【数３９】
2011166239.tif 000041
【０１２４】
を加算し、帯域成分ｘｋ(ｒ)に基づくトータルでの疑似エコーｙ'ｋ(ｒ)を生成する。
【０１２５】
第２帯域分割部４４０は、第１帯域分割部４１０と同じ方法により時刻ｎの時の時間領域の収音信号ｙ(ｎ)（ｎは時刻を表す整数）をＫ個の帯域成分ｙｋ(ｒ)（ｋ＝１,２,・・・,Ｋ、Ｋは２以上の整数）に分割する（Ｓ２４）。
差信号生成部４５０は帯域成分ごとに合計Ｋ個設けられ、それぞれ収音信号の帯域成分ｙｋ(ｒ)から疑似エコーｙ'ｋ(ｒ)を差し引いて差信号ｅｋ(ｒ)を生成する（Ｓ２５）。
【０１２６】
帯域合成部４６０は、各帯域成分の差信号ｅ１(ｒ),ｅ２(ｒ),・・・,ｅＫ(ｒ)を帯域合成し、送話信号ｅ(ｎ)を生成する（Ｓ２６）。帯域合成は例えば、
【０１２７】
【数４０】
2011166239.tif 000042
【０１２８】
により行う。
【０１２９】
反響消去装置４００への収音信号、受話信号の入力が続いている間、帯域成分ｘｋ(ｒ)に対応するｋ番目の複合適応フィルタ部４３０のｍ番目の適応フィルタ４３１は、差信号生成部４５０で生成された差信号ｅｋ(ｒ)と
【０１３０】
【数４１】
2011166239.tif 000043
【０１３１】
により求めることができる。
ここで、μは更新量を制御するステップサイズ（０＜μ＜２）でり、δは微小な正の定数である。
【０１３２】
《実験結果》
本発明が有効である理由の説明のため、以下に実験結果を示す。
まず、非線形歪がインパルス応答に及ぼす影響を調べるために、振幅の異なる複数のＭ系列を用いてインパルス応答の測定を行った。図１１にＭ系列を用いて測定した５つのインパルス応答を示す。振幅の小さいＭ系列で測定したものから順にインパルス応答１〜５と表記する。各インパルス応答は同じ概形であるが正確な値は異なっていることがわかる。
【０１３３】
点線で囲んだ部分Ａ、Ｂを拡大したものをそれぞれ図１２、図１３に示す。図１２では９５０Ｈｚ付近のプロットを表示している。この図では入力のＭ系列の振幅を大きくすればするほど応答の値が小さくなっている。また、図１３では２３００Ｈｚ付近のプロットを表示している。この図では入力のＭ系列の振幅を大きくすればするほど応答の値が大きくなっている。
【０１３４】
このように、入力信号の大きさにより周波数特性に違いが生じ、しかも帯域ごとに挙動が異なることがわかる。
【０１３５】
次に、平均反響消去量による従来法と本発明の方法との性能比較を行った。まず、音声信号を実環境で再生・収録し、実施例２をＰＣ上のプログラムとして実装した。次に、収録した音声信号をシミュレーションにかけて時間方向に平均した反響消去量を算出した。なお、周波数方向の分割数Ｋは８であり、Ｌ＝１０２４である。結果を図１４に示す。単一フィルタ（従来法）では反響消去量が１３．４９５ｄＢであったのに対し、フィルタを全帯域で２つずつ又は４つずつ用意した場合ではそれぞれ１４．２２７ｄＢ、１４．２５７ｄＢであった。
【０１３６】
一方、帯域ごとにフィルタの個数を２個から４個の間で変化させることで１４．２６０ｄＢの反響消去量を得ることができた。このときのフィルタ切替の閾値は、フィルタが全周波数で４個の場合と同じ値を使用した（例えば、フィルタを２つ用いる周波数では、フィルタを４つ用いる周波数での閾値３つのうち１つのみを用いた）。フィルタに必要なメモリ量は、全周波数でフィルタが４個の場合を１００とした場合、フィルタが２個の場合は５０であり、フィルタの個数を２個から４個の間で変化させた場合は７５であった。このことから、全帯域に多く（この場合は４個）のフィルタを用意するよりも、帯域ごとに個数を最適化した方がメモリ使用量を減らすことができ、かつ同等かそれ以上の反響消去量を得ることができることがわかる。
【０１３７】
上記反響消去方法をコンピュータによって実現する場合、割当制御部が担う処理機能はプログラムによって記述される。そしてパソコンや携帯端末上で、入力手段や各種記憶手段とＣＰＵとのデータのやりとりを通じてこのプログラムを実行することにより、ハードウェアとソフトウェアが協働し、上記処理機能がコンピュータ上で実現されて本発明の反響消去方法の作用効果を奏する。なおこの場合、処理機能の少なくとも一部をハードウェア的に実現することとしてもよい。また、上記の各種処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
【０１３８】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよいが、具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、ＤＶＤ（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）型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの（コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等）を含むものとする。
【図１】
2011166239.tif 000054
【図２】
2011166239.tif 000055
【図３】
2011166239.tif 000056
【図４】
2011166239.tif 000057
【図５】
2011166239.tif 000058
【図６】
2011166239.tif 000059
【図７】
2011166239.tif 000060
【図８】
2011166239.tif 000061
【図９】
2011166239.tif 000062
【図１０】
2011166239.tif 000063
【図１２】
2011166239.tif 000064
【図１３】
2011166239.tif 000065
【図１４】
2011166239.tif 000066
【図１５】
2011166239.tif 000067
【図１１】
2011166239.tif 000068