(57)【要約】【課題】本発明の課題は、所望信号に対する遅延がなく、低演算量で出力歪が少ない信号消去を実現することのできる信号処理方法、信号処理装置、並びに信号処理プログラムを提供することである。【解決手段】本発明の信号処理方法は、適応フィルタの係数を順に複数まとめて複数の係数グループを生成し、前記複数の係数グループにおける係数代表値を求め、前記係数代表値を用いて前記係数グループ内の各係数の係数更新ステップサイズを制御することを特徴とする。【選択図】図１
2010152021.tif 000002
【特許請求の範囲】
【請求項１】
適応フィルタの係数を順に複数まとめて複数の係数グループを生成し、
前記複数の係数グループにおける係数代表値を求め、
前記係数代表値を用いて前記係数グループ内の各係数の係数更新ステップサイズを制御し、前記係数更新ステップサイズを用いて係数を更新する
ことを特徴とする信号処理方法。
【請求項２】
前記複数の係数グループにおける参照信号代表値を求め、
前記係数代表値と前記参照信号代表値を用いて前記係数グループ内の各係数の係数更新ステップサイズを制御し、
前記係数更新ステップサイズを用いて係数を更新する
ことを特徴とする請求項１に記載の信号処理方法。
【請求項３】
前記係数代表値を規格化して複数の規格化係数代表値を求め、
前記複数の規格化係数代表値を用いて前記係数グループ内の係数に対する係数更新ステップサイズを制御し、
前記係数更新ステップサイズを用いて係数を更新する
ことを特徴とする請求項１又は２に記載の信号処理方法。
【請求項４】
前記参照信号代表値を規格化して複数の規格化参照信号代表値を求め、
前記複数の規格化参照信号代表値を用いて前記係数グループ内の係数に対する係数更新ステップサイズを制御し、
前記係数更新ステップサイズを用いて係数を更新する
ことを特徴とする請求項２又は３に記載の信号処理方法。
【請求項５】
前記適応フィルタが収束した後に係数更新ステップサイズを制御し、
前記係数更新ステップサイズを用いて係数を更新する
ことを特徴とする請求項１乃至４のいずれか１項に記載の信号処理方法。
【請求項６】
前記適応フィルタの係数値の変化率を検出し、前記変化率が予め定められた値より小さくなったときに前記係数更新ステップサイズを制御し、
前記係数更新ステップサイズを用いて係数を更新する
ことを特徴とする請求項５に記載の信号処理方法。
【請求項７】
第１の信号（所望信号）と第２の信号(雑音)とが混在した主信号から第２の信号の推定値を減算して第１の信号の推定値を生成し、
前記第２の信号と相関のある参照信号を入力として前記主信号に含まれる第２の信号の推定値を適応フィルタによって求め、
前記適応フィルタの係数更新ステップサイズを請求項１乃至６のいずれか１項に記載の方法で制御することを特徴とする信号消去の方法。
【請求項８】
前記第１の信号の推定値及び前記第２の信号の推定値に基づいて前記主信号における第１の信号対第２の信号の比の推定値を求め、
前記主信号における第１の信号対第２の信号の比の推定値を用いて請求項１乃至６のいずれか１項に記載の方法で前記適応フィルタの係数更新ステップサイズを制御し、
前記係数更新ステップサイズを用いて係数を更新することを特徴とする信号消去の方法。
【請求項９】
第１の信号（所望信号）と第２の信号(雑音)とが混在した主信号から第２の信号の第１の推定値(推定雑音)を減算して第１の信号の第１の推定値を生成し、
前記第２の信号と前記第１の信号とが混在した参照信号から第１の信号の第２の推定値(推定クロストーク)を減算して第２の信号の第２の推定値を生成し、
前記第２の信号の第２の推定値を入力として前記主信号に含まれる第２の信号を第１の適応フィルタによって推定して前記第２の信号の第１の推定値(推定雑音)を求め、
前記第１の信号の第１の推定値を入力として前記参照信号に含まれる第１の信号を第２の適応フィルタによって推定して前記第１の信号の第２の推定値(推定クロストーク)を求め、
前記第１の適応フィルタ及び前記第２の適応フィルタのステップサイズを請求項１乃至６のいずれか１項に記載の方法で制御し、
前記係数更新ステップサイズを用いて第１及び第２の適応フィルタの係数を更新することを特徴とする信号消去の方法。
【請求項１０】
前記第１の信号の第１の推定値及び前記第２の信号の第１の推定値に基づいて前記主信号における第１の信号対第２の信号比の推定値、
更に前記第１の信号の第２の推定値及び前記第２の信号の第２の推定値に基づいて前記参照信号における第１の信号対第２の信号比の推定値をそれぞれ求め、
前記主信号における第１の信号対第２の信号比の推定値を用いて請求項１乃至６のいずれか１項に記載の方法で前記第１の適応フィルタのステップサイズを制御し、
前記参照信号における第１の信号対第２の信号比の推定値を用いて請求項１乃至６のいずれか１項に記載の方法で前記第２の適応フィルタのステップサイズを制御し、
前記係数更新ステップサイズを用いて第１及び第２の適応フィルタの係数を更新する
ことを特徴とする信号消去の方法。
【請求項１１】
前記第１の信号が近端信号であり、前記第２の信号がエコーである
ことを特徴とする請求項７乃至８のいずれか１項に記載の信号消去の方法。
【請求項１２】
前記第１の信号が所望信号であり、前記第２の信号が雑音である
ことを特徴とする請求項７乃至１０のいずれか１項に記載の信号消去の方法。
【請求項１３】
適応フィルタの係数を順に複数まとめて複数の係数グループを生成し、
前記複数の係数グループにおける係数代表値を求め、
前記係数代表値を用いて前記係数グループ内の各係数の係数更新ステップサイズを制御するステップサイズ制御回路を少なくとも具備し、
前記係数更新ステップサイズを用いて係数を更新することを特徴とする信号処理装置。
【請求項１４】
前記複数の係数グループにおける参照信号代表値を求め、
前記係数代表値と前記参照信号代表値を用いて前記係数グループ内の各係数の係数更新ステップサイズを制御するステップサイズ制御回路を具備し、
前記係数更新ステップサイズを用いて係数を更新することを特徴とする請求項１３に記載の信号処理装置。
【請求項１５】
前記係数代表値を規格化して複数の規格化係数代表値を求め、
前記複数の規格化係数代表値を用いて前記係数グループ内の係数に対する係数更新ステップサイズを制御するステップサイズ制御回路を具備し、
前記係数更新ステップサイズを用いて係数を更新する
ことを特徴とする請求項１３又は１４に記載の信号処理装置。
【請求項１６】
前記参照信号代表値を規格化して複数の規格化参照信号代表値を求め、
前記複数の規格化参照信号代表値を用いて前記係数グループ内の係数に対する係数更新ステップサイズを制御するステップサイズ制御回路を具備し、
前記係数更新ステップサイズを用いて係数を更新する
ことを特徴とする請求項１４又は１５に記載の信号処理装置。
【請求項１７】
前記適応フィルタが収束した後に係数更新ステップサイズを制御するステップサイズ制御回路を具備し、
前記係数更新ステップサイズを用いて係数を更新する
ことを特徴とする請求項１３乃至１６のいずれか１項に記載の信号処理装置。
【請求項１８】
前記適応フィルタの係数値の変化率を検出し、前記変化率が予め定められた値より小さくなったときに収束したと判定するステップサイズ制御回路を具備し、
前記係数更新ステップサイズを用いて係数を更新する
ことを特徴とする請求項１７に記載の信号処理装置。
【請求項１９】
第１の信号（所望信号）と第２の信号(雑音)が混在した主信号から第２の信号の推定値を減算して第１の信号の推定値を求める第１の減算器と、
前記第２の信号と相関のある参照信号を入力として前記主信号に含まれる第２の信号の推定値を求める第１の適応フィルタと、
請求項１３乃至１８のいずれか１項に記載のステップサイズ制御回路を具備し、
前記係数更新ステップサイズを用いて前記第１の適応フィルタの係数を更新する
ことを特徴とする信号処理装置。
【請求項２０】
第１の信号（所望信号）と第２の信号(雑音)が混在した主信号から第２の信号の第１の推定値(推定雑音)を減算して第１の信号の第１の推定値を求める第１の減算器と、
前記第２の信号と前記第１の信号が混在した参照信号から第１の信号の第２の推定値(推定クロストーク)を減算して第２の信号の第２の推定値を求める第２の減算器と、
前記第２の信号の第２の推定値を入力として前記主信号に含まれる第２の信号を推定して前記第２の信号の第１の推定値(推定雑音)を求める第１の適応フィルタと、
前記第１の信号の第１の推定値を入力として前記参照信号に含まれる第１の信号を推定して前記第１の信号の第２の推定値(推定クロストーク)を求める第２の適応フィルタと、
請求項１３乃至１８のいずれか１項に記載のステップサイズ制御回路を具備し、
前記第１及び第２の係数更新ステップサイズを用いてそれぞれ前記第１及び第２の適応フィルタの係数を更新することを特徴とする信号処理装置。
【請求項２１】
前記第１の信号が近端信号であり、前記第２の信号がエコーである
ことを特徴とする請求項１９に記載の信号処理装置。
【請求項２２】
前記第１の信号が所望信号であり、前記第２の信号が雑音である
ことを特徴とする請求項１９又は２０に記載の信号処理装置。
【請求項２３】
コンピュータに、
適応フィルタの係数を順に複数まとめて複数の係数グループを生成する処理と、
前記複数の係数グループにおける係数代表値を求める処理と、
前記係数代表値を用いて前記係数グループ内の各係数の係数更新ステップサイズを制御する処理と、
前記係数更新ステップサイズを用いて係数を更新する処理と、
を実行させることを特徴とする信号処理プログラム。
【請求項２４】
コンピュータに、
前記複数の係数グループにおける参照信号代表値を求める処理と、
前記係数代表値と前記参照信号代表値を用いて前記係数グループ内の各係数の係数更新ステップサイズを制御する処理と、
を実行させることを特徴とする請求項２３に記載の信号処理プログラム。
【請求項２５】
前記係数代表値を求める処理は、
前記係数代表値を規格化して複数の規格化係数代表値を求める処理であることを特徴とする請求項２３又は２４に記載の信号処理プログラム。
【請求項２６】
前記参照信号代表値を求める処理は、前記参照信号代表値を規格化して複数の規格化参照信号代表値を求める処理であることを特徴とする請求項２４又は２５に記載の信号処理プログラム。
【請求項２７】
前記係数更新ステップサイズを制御する処理は、
前記適応フィルタの収束を検出する処理を含み、
前記適応フィルタが収束した後に実行することを特徴とする請求項２３乃至２６のいずれか１項に記載の信号処理プログラム。
【請求項２８】
前記適応フィルタの収束を検出する処理は、
前記適応フィルタの係数値の変化率を評価する処理と、
前記変化率が予め定められた値より小さくなったときに収束したと判定する処理を含むことを特徴とする請求項２７に記載の信号処理プログラム。
【請求項２９】
コンピュータに、
第１の信号（所望信号）と第２の信号(雑音)が混在した主信号から第２の信号の推定値を減算して第１の信号の推定値を求める処理と、
前記第２の信号と相関のある参照信号を入力として適応フィルタによって前記主信号に含まれる第２の信号の推定値を求める処理と、
請求項２３乃至２８のいずれか１項に記載のステップサイズ制御処理と、
前記係数更新ステップサイズで前記適応フィルタの係数を更新する処理と、
を実行させることを特徴とする信号処理プログラム。
【請求項３０】
コンピュータに、
第１の信号（所望信号）と第２の信号(雑音)が混在した主信号から第２の信号の第１の推定値(推定雑音)を減算して第１の信号の第１の推定値を求める処理と、
前記第２の信号と前記第１の信号が混在した参照信号から第１の信号の第２の推定値(推定クロストーク)を減算して第２の信号の第２の推定値を求める処理と、
前記第２の信号の第２の推定値を入力として第１の適応フィルタによって前記主信号に含まれる第２の信号を推定して前記第２の信号の第１の推定値(推定雑音)を求める処理と、
前記第１の信号の第１の推定値を入力として第２の適応フィルタによって前記参照信号に含まれる第１の信号を推定して前記第１の信号の第２の推定値(推定クロストーク)を求める処理と、
請求項２３乃至２８のいずれか１項に記載のステップサイズ制御処理と、
前記代及び第２の係数更新ステップサイズでそれぞれ前記第１及び第２の適応フィルタの係数を更新する処理と、
を実行せることを特徴とする信号処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、信号処理方法、信号処理装置、並びに信号処理プログラムに関し、特にマイクロホン、ハンドセット、通信路等から入力された所望信号に混在する雑音や妨害信号などを適応フィルタによって消去し、または所望信号を強調するための方法、装置、並びにプログラムに関するものである。
【背景技術】
【０００２】
マイクロホンやハンドセット等から入力された音声信号は、音声符号化や音声認識処理の対象となる。情報圧縮度の高い狭帯域音声符号化装置や音声認識装置等において、このような背景雑音が重畳された音声信号の音声符号化や音声認識を行う上で、大きな問題となる。上記のように音響的に重畳した雑音の消去を目的とした信号処理装置として、特許文献１、２、３には、適応フィルタを用いた２入力型雑音消去装置が開示されている。
【０００３】
上記特許文献１、２、３に開示されている２入力型雑音消去装置は、雑音源から音声入力端子に至る音響経路（ノイズパス）のインパルス応答を近似する適応フィルタを用いて、音声入力端子において混入する雑音成分に対応した擬似雑音を生成する。そして、音声入力端子に入力された受信信号（主信号）からこの擬似雑音を差し引くことによって、雑音成分を抑圧するように動作する。ここで、受信信号とは、音声信号と雑音とが混在した信号のことであり、一般に、マイクロホンやハンドセットから音声入力端子に供給される。適応フィルタには、参照入力端子に供給される参照信号を入力する。ここで、参照信号とは雑音源における雑音成分と相関のある信号であり、雑音源近傍において捕捉される。このように、雑音源近傍において参照信号を捕捉することで、参照信号は雑音源における雑音成分とほぼ等しいとみなすことができる。
【０００４】
適応フィルタの係数は、受信信号から擬似雑音を差し引いた誤差と参照入力端子に入力された参照信号との相関をとることにより修正される。このような適応フィルタの係数修正アルゴリズムとしては、特許文献１、２、３には、「ＬＭＳアルゴリズム（Ｌｅａｓｔ  Ｍｅａｎ−Ｓｑｕａｒｅ  Ａｌｇｏｒｉｔｈｍ）」や「ＬＩＭ（Ｌｅａｒｎｉｎｇ  ｄｅｎｔｉｆｉｃａｔｉｏｎ  Ｍｅｔｈｏｄ）」が開示されている。
【０００５】
ＬＭＳアルゴリズムやＬＩＭは、勾配法と呼ばれるアルゴリズムの一種であり、係数更新の速度と精度は、係数更新ステップサイズと呼ばれる定数に依存する。係数更新ステップサイズと誤差との積によってフィルタ係数を更新するが、誤差に含まれる所望信号は係数更新を妨害し、その影響を低減するためには、係数更新ステップサイズを極めて小さな値に設定する必要がある。しかし、係数更新ステップサイズが小さい場合、適応フィルタ係数の環境変化への追従性が低下する。このため、誤差が増大したり、所望信号に歪が生じたりする。
【０００６】
この問題に対して、特許文献１、２、３には、係数更新ステップサイズの適応制御を行う雑音消去装置が記載されている。特許文献１、２、３の雑音消去装置は２つの適応フィルタを備えており、第１の適応フィルタを用いて推定した主信号における信号対雑音比を用いて、第２の適応フィルタの係数更新ステップサイズを制御し、第２の適応フィルタによって雑音の消去された信号を出力とする。音声信号が雑音より大きいときには小さな係数更新ステップサイズを、逆の状態では大きな係数更新ステップサイズを使用することによって、適応フィルタの環境変化への追従性を高め、雑音消去後の信号における歪を低減することができる。
【０００７】
第１の適応フィルタは、第２の適応フィルタと同様に動作するが、第１の適応フィルタの係数更新ステップサイズは第２の適用フィルタの係数更新ステップサイズよりも大きな値に設定される。このため、第１の適応フィルタの出力は、環境変化への追従性が高いが、雑音の推定精度が第２の適応フィルタよりも劣る。このように動作する第１の適応フィルタの出力は、変化によく追従する擬似雑音であり、また主信号と第１の適応フィルタの差分は、擬似所望信号であるとみなすことができる。これにより、上記の信号に基づいて、主信号における所望信号対雑音比を推定することができる。この比が大きな値であるときは所望信号による妨害が大きいので小さな係数更新ステップサイズを、小さな値であるときは妨害が小さいので大きな係数更新ステップサイズを、適応フィルタ２に適用することによって、十分な環境変化への追従性と雑音消去後の信号における低歪を同時に達成することができる。
【０００８】
適応フィルタ２に供給される参照信号、及び適応フィルタの出力である擬似雑音を消去する際に用いられる主信号は、それぞれ遅延されている。これは、適応フィルタ１を用いた所望信号対雑音比を推定する際の推定遅延を補償するためである。この遅延が適用されない場合、主信号における所望信号対雑音比の推定値は正しい値よりも遅れて得られることになり、正しい係数更新ステップサイズ制御を行うことができない。このため、雑音消去後の信号における残留雑音が増大し、さらに歪が増大する。
【０００９】
これまでの説明では、雑音源近傍において参照信号の捕捉を行うことによって、参照信号は雑音そのものである仮定してきた。しかし、現実にはこの条件を満たすことが困難である。このような場合には、参照信号は雑音とそれに混入する所望信号から構成される。このような参照信号に対する所望信号の混入成分はクロストークと呼ばれる。クロストークが存在する際の雑音消去において、十分な環境変化への追従性と雑音消去後の信号における低歪を同時に達成するための構成が、特許文献４に開示されている。
【００１０】
雑音の消去と同様に、係数更新ステップサイズを制御するための第３の適応フィルタとクロストークを消去するための第４の適応フィルタを導入する。所望信号源から参照入力端子に至る音響経路（クロストークパス）のインパルス応答を近似する第３及び第４の適応フィルタを用いて、参照入力端子において混入する所望信号成分に対応した擬似所望信号を生成し、参照入力端子に入力された受信信号（参照信号）からこの擬似所望信号を差し引くことによって、所望信号成分（クロストーク）を抑圧するように動作する。第３の適応フィルタの出力は、変化によく追従する所望信号成分（クロストーク）であり、また参照信号と第３の適応フィルタの差分は、擬似雑音であるとみなすことができる。そこで、これらの信号に基づいて、参照信号における所望信号対雑音比を推定することができる。この比が大きな値であるときは雑音による係数更新に対する妨害が大きいので小さな係数更新ステップサイズを、小さな値であるときは妨害が小さいので大きな係数更新ステップサイズを、適応フィルタ４に適用することによって、十分な環境変化への追従性とクロストーク消去後の信号における低歪を同時に達成することができる。
【００１１】
特許文献４に開示されている構成では、さらに第１と第３の適応フィルタの係数更新ステップサイズを、主信号と参照信号の比によって近似した「主信号における所望信号対雑音比」と「参照信号における所望信号対雑音比」を用いて制御する。第１と第３の適応フィルタの係数更新ステップサイズをこのように制御することによって、主信号や参照信号における広範囲な所望信号対雑音比の入力信号に対して、環境変化への追従性が高く、出力歪の少ない雑音消去を達成することができる。
【００１２】
一方、スピーカにおける再生信号がマイクへ回り込むことによって生じる音響エコーや通信回線の２線４線変換において送信側から受信側へ送信信号が回り込むことによって生じる回線エコーの消去を対象として、非特許文献１に「ＰＮＬＭＳアルゴリズム（Ｐｒｏｐｏｒｔｉｏｎａｔｅ  Ｎｏｒｍａｌｉｚｅｄ  Ｌｅａｓｔ  Ｍｅａｎ−Ｓｑｕａｒｅ  Ａｌｇｏｒｉｔｈｍ）」が開示されている。
【００１３】
ＰＮＬＭＳアルゴリズムは、フィルタ係数値に応じた係数更新ステップサイズを用いて係数更新を行うことにより、高速な収束を達成する。しかし、ＰＮＬＭＳアルゴリズムでは、エコー消去後の信号における歪については全く議論されておらず、その存在についても言及されていない。
【００１４】
ＰＮＬＭＳアルゴリズムは、本来、小さな係数における係数更新を抑圧し、信号の統計的な性質に基づいた小さな係数の不確実な更新が引き起こす妨害によって、より重要な大きな係数の更新が妨害されることを防ぐ。このため、適応フィルタ係数全体として評価したときに、収束の高速化が達成される。
【００１５】
しかしながら、環境変化への追従の観点からは、ＰＮＬＭＳアルゴリズムは望ましい特性を示さないことが理解できる。例えば、小さな値を有する係数に変化が生じた場合、この係数に適用される係数更新ステップサイズが小さいために、変化への追従には時間がかかる。このため、適応フィルタ係数全体として評価したときに、環境変化への追従に遅れを生じ、出力信号における歪を引き起こす。
【特許文献１】特開平８−２４１０８６
【特許文献２】特開平１０-２１５１９３
【特許文献３】特開２０００-１７２２９９
【特許文献４】ＷＯ２００５/０２４７８７
【非特許文献１】Ｄｏｎａｌｄ  Ｌ．  Ｄｕｔｔｗｅｉｌｅｒ，“Ｐｒｏｐｏｒｔｉｏｎａｔｅ  Ｎｏｒｍａｌｉｚｅｄ  Ｌｅａｓｔ−Ｍｅａｎ−Ｓｑｕａｒｅｓ  Ａｄａｐｔａｔｉｏｎ  ｉｎ  Ｅｃｈｏ  Ｃａｎｃｅｌｅｒｓ，”  ＩＥＥＥ  ＴＲＡＮＳＡＣＴＩＯＮＳ  ＯＮ  ＳＰＥＥＣＨ  ＡＮＤ  ＡＵＤＩＯ  ＰＲＯＣＥＳＳＩＮＧ，ＶＯＬ．８，ＮＯ．５，２０００，ｐｐ．５０８−５１８
【発明の開示】
【発明が解決しようとする課題】
【００１６】
上述の通り、特許文献１に開示されている構成では、第２の適応フィルタに対して、主信号が遅延されている。これは、雑音抑圧装置の出力信号である雑音抑圧された所望信号が遅延されていることを表している。双方向通信においては、所望信号の遅延により通話が不自然になる。また、第２の適応フィルタの係数更新ステップサイズを制御するために、第１の適応フィルタを必要とし、所要演算量が増大する。クロストークに対応できる特許文献４に開示されている構成でも同様に、雑音消去後の主信号が遅延されている。
【００１７】
また、第２と第４の適応フィルタの係数更新ステップサイズを制御するために、第１と第３の適応フィルタを必要とし、さらに所要演算量が増大する。また、非特許文献１に開示されたＰＮＬＭＳアルゴリズムでは、環境変化への追従性が不十分で、出力歪を引き起こすという問題がある。
【００１８】
本発明の目的は、所望信号に対する遅延がなく、低演算量で出力歪が少ない信号消去を実現することのできる信号処理方法、信号処理装置、並びに信号処理プログラムを提供することである。
【課題を解決するための手段】
【００１９】
本発明の信号処理方法は、適応フィルタの係数を順に複数まとめて複数の係数グループを生成し、前記複数の係数グループにおける係数代表値を求め、前記係数代表値を用いて前記係数グループ内の各係数の係数更新ステップサイズを制御することを特徴とする。
【００２０】
また、本発明の信号処理装置は、適応フィルタの係数を順に複数まとめて複数の係数グループを生成し、前記複数の係数グループにおける係数代表値を求め、前記係数代表値を用いて前記係数グループ内の各係数の係数更新ステップサイズを制御するステップサイズ制御回路を少なくとも具備し、前記係数更新ステップサイズを用いて適応フィルタの係数を更新することを特徴とする。
【００２１】
さらに、本発明の信号処理プログラムは、コンピュータに、適応フィルタの係数を順に複数まとめて複数の係数グループを生成する処理と、前記複数の係数グループにおける係数代表値を求める処理と、前記係数代表値を用いて前記係数グループ内の各係数の係数更新ステップサイズを制御する処理と、前記係数更新ステップサイズを用いて係数を更新する処理と、を実行させることを特徴とする。
【発明の効果】
【００２２】
本発明では、適応フィルタの係数を順に複数まとめて複数の係数グループを生成し、これらの係数グループにおける係数代表値を求め、これらの係数代表値を用いて前記係数グループ内の各係数の係数更新ステップサイズを制御する。各係数に対する係数更新ステップサイズは近傍にある同一係数グループ内の他の係数に対する係数更新ステップサイズと等しく、大きな係数値が多い係数グループに属する係数値に対しては大きな値に、小さな係数値が多い係数グループに属する係数値に対しては小さな値になるように制御される。従って、同一係数グループに属する極端に大きな係数値を有する係数も極端に小さな係数値を有する係数も、他の係数グループ内係数と同じ係数更新ステップサイズで、平均的に更新される。
【００２３】
また、本発明では、係数グループにおける参照信号代表値を求め、これらの参照信号代表値と前記係数代表値とを用いて前記係数グループ内の各係数の係数更新ステップサイズを制御する。参照信号サンプルの振幅が大きく、更新対象の係数値が小さいときにも、係数更新による係数値の変化量が過大になることを防止し、誤差に対する妨害成分が無視できないときに、誤った係数更新が行われない。
【００２４】
さらに、本発明では、前記代表値に加えて、所望信号対消去対象信号の比の推定値を用いて前記適応フィルタの係数更新ステップサイズを制御する。係数更新に用いる誤差に対する妨害である所望信号が相対的に大きいときは小さな係数更新ステップサイズを、小さいときには大きな係数更新ステップサイズを用いる。本発明では、誤差に対する妨害成分が無視できないときにも誤った係数更新が行われることがない。このため、所望信号に対する遅延がなく、低演算量で出力歪が少ない信号消去を実現することができる。
【発明を実施するための最良の形態】
【００２５】
本発明を実施するための最良の実施形態について説明する。最初に、本発明に基づく信号処理装置を、音声信号を処理する装置として実現化した形態、特に、雑音消去装置として実現した例を挙げて説明する。しかしながら、以下の各実施形態の信号処理装置は、その構成を変更することなく、雑音消去装置以外の各種の信号処理装置として用いることができることは、いうまでもない。
【００２６】
図１に示す本発明の最良の実施形態の信号処理装置は、音声入力を行うマイクロホン１と、参照信号を入力するマイクロホン２と、出力端子７と、マイクロホン１から入力される主信号xP(k)から第１の擬似信号を減算して第１の誤差を生成する第１の減算器３と、マイクロホン２から入力される参照信号xR(k)を入力として第１の擬似信号を生成して第１の誤差が最小となるように係数を更新する第１の適応フィルタ５と、第１の適応フィルタ５から受けた係数値を用いて係数更新ステップサイズを計算し、第１の適応フィルタ５に帰還するステップサイズ制御回路８と、を備えている。第１の減算器３からの第１の誤差e１(k)は、雑音が消去された音声信号として、出力端子７にも出力されている。ここに、kは時刻を表す指標である。
【００２７】
最良の実施形態における動作は、ステップサイズ制御回路８を除いて、特許文献１に記載された構成と等しいので、詳細は省略する。ステップサイズ制御回路８は、適応フィルタ５から係数ベクトルＷ１(k)を受け、係数更新ステップサイズΜ１(k)を求める。ステップサイズ制御回路８は、求めた係数更新ステップサイズΜ１(k)を、適応フィルタ５に帰還する。
【００２８】
Ｗ１(k)とΜ１(k)は、次式で与えられる。
〈数１〉
Ｗ１(k)＝[ｗ１(０, k), ｗ１(１, k), …, ｗ１(Ｎ１-１, k)]
〈数２〉
Μ１(k)＝[μ1(０, k), μ1(１, k), …, μ1(Ｎ１-１, k)]
ここで、Ｎ１は適応フィルタ５のタップ数を表す１以上の整数である。
【００２９】
ステップサイズ制御回路８は、係数ベクトルＷ１(k)を、まずＬ個のサブベクトル（係数グループ）に分割する。分割に際しては、予め定められたサイズのサブベクトルに分割することができる。また、等しいサイズのサブベクトルに等分割してもよいし、何らかの指標に基づいて不等分割してもよい。この指標としては、例えば、係数絶対値の分散を用いることができる。同一サブベクトル内の係数絶対値分散が小さいときは大きなサブベクトルサイズを、大きいときは小さなサブベクトルサイズを適用して分割する。このような分散とサブベクトルサイズの関係は、予め関数または対応表を定めておき、係数更新に応じてサブベクトルサイズを計算する。
【００３０】
このようにして生成したサブベクトルをＷS1(j, k), j=０, １, …, Ｌ-１とすると
〈数３〉
Ｗ１(k)＝[ＷS1(０, k), ＷS1(１, k), …, ＷS1(Ｌ-１, k)]
となる。ＬS等分割の場合には、ｊ番目のサブベクトルは、次式で与えられる。
〈数４〉
ＷS１(j,k)＝[ｗ１(jＬ/ＬS, k), ｗ１(jＬ/ＬS+１, k), …, ｗ１((j+１)Ｌ/ＬS-１, k)] (j=０, １, …, Ｌ-１)
ここにＬSは、Ｌ/ＬSが整数となるような整数値である。
【００３１】
次に、各サブベクトル（係数グループ）内で係数の代表値を求める。代表値としては、最大値、最小値、中央値、平均値、分散などを用いることができる。ｊ番目のサブベクトルに対する代表値ｗREP1(j, k)は、最大値を代表値とするとき、
〈数５〉
ｗREP１(j,k)＝ｍａｘ｛|ｗ１(jＬ/ＬS, k)|, |ｗ１(jＬ/ＬS+１, k)|, …, |ｗ１((j+１)Ｌ/ＬS-１, k)|｝
で与えられる。ここに、ｍａｘ｛・｝は最大値を求める演算子である。同様に、最小値と中央値も最小値演算子又は中央値演算子によって求めることができる。これらの演算子は、要素の大きさに基づいた並べ替えと最大、最小、又は中央に対応した値の選択によって実現することができる。
【００３２】
また、平均値をｊ番目のサブベクトルに対する代表値ｗREP1(j, k)とするときには、
〈数６〉
2010152021.tif 000003
となる。ここに、ａｖｅ｛・｝は平均値を求める演算子である。分散についても、同様に定義に従って計算することができる。
【００３３】
これまでの説明では、各係数値の絶対値に対して係数代表値を求めた。しかし、絶対値の代わりに２乗値を用いても、同様の効果を得ることができる。特に、信号処理専用チップを用いて演算を行う際には、２乗値の計算の方が絶対値の計算よりも容易であるので、２乗値の方が適している。
【００３４】
図２は、Ｌ＝７、代表値として係数グループ内係数の最大値を選択した場合の係数値と係数グループ(サブベクトル)を示す。係数グループ１、２、３、４は、単一係数から係数グループが構成されている。係数グループ０、５、６は、複数の係数から構成されている。いずれの係数グループにおいても、係数グループ内の係数絶対値の最大値が選択され、係数代表値となっている。これらの係数代表値は、四角印で表されており、丸印で表されている一般の係数とは容易に区別できる。
【００３５】
このようにして計算したサブベクトルの代表値ｗREP1(j, k), j=０, １, …, Ｌ-１ を用いて、ｗREP1(j, k)に対応した係数更新ステップサイズを計算する。第１の例は、各サブベクトルの代表値の最大値を求め、その最大値に対する各サブベクトル代表値の割合を求め、この割合で基本となる係数更新ステップサイズμ０を重みづけて係数更新ステップサイズとする方法である。すなわち、各サブベクトルに対応した係数更新ステップサイズμ１(j, k)を、次式で求める。
〈数７〉
μ1(j, k)＝ｗREP1(j, k)/max{ｗREP1(j, k)}・μ0
前記割合は０と１の間の値を取るので、最大の係数はμ0で、それ以外の係数はμ0よりも小さな係数更新ステップサイズで更新されることになる。
【００３６】
第２の例は、各サブベクトルの代表値の平均値を求め、その平均値に対する各サブベクトル代表値の割合を求め、この割合で基本となる係数更新ステップサイズμ0を重みづけて係数更新ステップサイズとする方法である。すなわち、各サブベクトルに対応した係数更新ステップサイズμ1(j, k)を、次式で求める。
〈数８〉
μ1(j, k)＝ｗREP1(j, k)/ave{ｗREP1(j, k)}・μ0
【００３７】
以上説明したように、本発明を実施するための最良の実施形態は、各係数が属する係数サブグループの代表値を用いて決定した係数更新ステップサイズを用いて係数更新を行うので、前記代表値が小さい係数には小さな係数更新ステップサイズが、大きい係数には大きな係数更新ステップサイズが適用される。このため、誤差に対する妨害成分が無視できないときにも誤った係数更新が行われず、所望信号に対する遅延がなく、低演算量で出力歪が少ない信号消去を実現することができる。
【００３８】
次に本発明を実施するための第２の実施形態について説明する。
【００３９】
図３は、本発明の第２の実施形態を表すブロック図である。本発明の最良の実施形態を表すブロック図である図１と比較すると、ステップサイズ制御回路８がステップサイズ制御回路９で置換されている。ステップサイズ制御回路９は、適応フィルタ５及びマイクロホン２からそれぞれ係数ベクトルＷ１(k)と参照信号xR(k)を受け、係数更新ステップサイズΜ１(k)を求める。ステップサイズ制御回路９は、求めた係数更新ステップサイズΜ１(k)を、適応フィルタ５に帰還する。
【００４０】
ＬＭＳ及びＮＬＭＳアルゴリズムによる係数更新では、係数更新量が参照信号サンプルの振幅に比例する。従って、参照信号サンプルの振幅が大きく、更新対象の係数値が小さいときには、相対的に係数更新による係数値の変化量が大きくなり、誤差に対する妨害成分が無視できないときには、誤った係数更新が行われることになる。この観点から、第２の実施形態では、最良の実施形態で用いた係数代表値に加えて、各サブベクトルの参照信号パワーの代表値を用いる。参照信号サンプルが大きいときに係数更新ステップサイズを小さくするように、係数代表値の場合とは逆に、参照信号に対する前記割合の逆数で基本となる係数更新ステップサイズμ０を重みづける。
【００４１】
最良の実施形態と同様に、時刻kにおける適応フィルタ５の参照信号ベクトルＸ１(k)を次のように定義する。
〈数９〉
Ｘ１(k)＝[x１(０,k), x１(１,k), …, x１(Ｎ１-１, k)]
【００４２】
次に、各サブベクトル内における参照信号の代表値を求める。代表値としては、最大値、最小値、中央値、平均値、分散などを用いることができる。ｊ番目のサブベクトルに対する代表値xREP１(j, k)は、最大値を代表値とするとき、
〈数１０〉
xREP1(j, k)＝ｍａｘ｛|x１(jＬ/ＬS, k)|, |x１(jＬ/ＬS+１, k)|, …, |x１((j+１)Ｌ/ＬS-１, k)|｝
で与えられる。
同様に、最小値と中央値も最小値演算子又は中央値演算子によって求めることができる。また、平均値をｊ番目のサブベクトルに対する代表値xREP1(j, k)とするときには、
〈数１１〉
2010152021.tif 000004
となる。分散についても、同様に定義に従って計算することができる。係数値の場合と同様に、絶対値の代わりに２乗値を用いても、同様の効果を得ることができる。
【００４３】
このようにして計算したサブベクトルの参照信号代表値xREP1(j, k), j=０, １, …, Ｌ-１と係数代表値ｗREP1(j, k), j=０, １, …, Ｌ-１を用いて、xREP1(j, k)とｗREP1(j, k)に対応した係数更新ステップサイズを計算する。第１の例は、各サブベクトルの参照信号代表値と係数代表値の最大値を求め、それらの最大値に対する各サブベクトルの参照信号代表値と係数代表値の割合をそれぞれ求め、これらの割合で基本となる係数更新ステップサイズμ0を重みづけて係数更新ステップサイズとする方法である。すなわち、各サブベクトルに対応した係数更新ステップサイズμ1(j, k)を、次式で求める。
〈数１２〉
μ1(j, k)＝[ｗREP1(j, k) max{xREP1(j, k)}]/[max{ｗREP1(j, k)} xREP1(j, k)]・μ0
この式から明らかなように、係数代表値だけを用いた場合と同様に最大の係数はμ0で、それ以外の係数はμ0よりも小さな係数更新ステップサイズで更新されることになる。
【００４４】
第２の例は、各サブベクトルの参照信号代表値と係数代表値の平均値を求め、それらの平均値に対する各サブベクトルの参照信号代表値と係数代表値の割合をそれぞれ求め、これらの割合で基本となる係数更新ステップサイズμ0を重みづけて係数更新ステップサイズとする方法である。すなわち、各サブベクトルに対応した係数更新ステップサイズμ1(j, k)を、次式で求める。
〈数１３〉
μ1(j, k)＝[ｗREP1(j, k) ave{xREP1(j, k)}]/[ave{ｗREP1(j, k)} xREP1(j, k)]・μ0
【００４５】
以上説明したように、本発明を実施するための第２の実施形態は、各係数が属する係数サブグループの係数代表値と参照信号代表値を用いて決定した係数更新ステップサイズを用いて係数更新を行うので、前記係数代表値が小さい係数には小さな係数更新ステップサイズが、大きい係数には大きな係数更新ステップサイズが適用される。また、前記参照信号代表値が小さい係数には大きな係数更新ステップサイズが、大きい係数には小さな係数更新ステップサイズが適用される。このため、誤差に対する妨害成分が無視できないときにも誤った係数更新が行われず、所望信号に対する遅延がなく、低演算量で出力歪が少ない信号消去を実現することができる。
【００４６】
なお、これまでの説明では、係数代表値と参照信号代表値の決定方法として、同じ方法を用いる場合について説明してきたが、これらは異なってもよい。例えば、係数代表値を各サブグループ内の平均値に基づいて決定し、参照信号代表値を各サブグループ内の最大値に基づいて決定することができる。また、各サブグループ内の値に基づいて最大値、最小値、中央値、平均値、分散などを求める際に、極端な外れ値を除外して計算をすることができる。具体的には、予め定められた閾値よりも大きいものや小さいものを除外したり、最初に平均値を求め、その平均値に対する割合として前記閾値を設定したりすることができる。このような外れ値を除外して計算することによって、代表値に対する極端な外れ値の悪影響を避けることができ、より一層、出力歪が少ない信号消去を実現することができる。
【００４７】
さらに、最良の実施形態と第２の実施形態では、係数更新ステップサイズを、係数代表値に基づいて制御する方法と係数代表値及び参照信号代表値の双方に基づいて制御する方法について説明した。しかし、参照信号代表値だけに基づいて制御を行うことも可能であり、前記２形態と同様の効果を有する。特に、参照信号代表値に基づく制御は、参照信号パワー総和を用いるＮＬＭＳアルゴリズムに類似している。しかし、ＮＬＭＳアルゴリズムでは、サブベクトルに分割せず、参照信号ベクトル全体を一括して取り扱う。このため、参照信号ベクトル内に参照信号値の偏りがあると、サブベクトル単位で見たときに、不適切な値になっているサブベクトルが存在する可能性がある。本発明では、サブベクトル単位で参照信号を評価して係数更新ステップサイズに反映させるために、参照信号値の偏りによる悪影響を避けることができる。
【００４８】
次に本発明を実施するための第３の実施形態について説明する。
【００４９】
図４は、本発明の第３の実施形態を表すブロック図である。本発明の最良の実施形態を表すブロック図である図１と比較すると、ステップサイズ制御回路８がステップサイズ制御回路１０で置換されている。ステップサイズ制御回路１０には、適応フィルタ５及び減算器３からそれぞれ係数ベクトルＷ１(k)と第１の誤差e１(k)に加えて、適応フィルタ５の出力であるn１(k)が供給されている。ステップサイズ制御回路１０は、これらの信号に基づいて、係数更新ステップサイズΜ１(k)を求める。ステップサイズ制御回路１０は、求めた係数更新ステップサイズΜ１(k)を、適応フィルタ５に帰還する。ステップサイズ制御回路１０は、係数グループにおける係数代表値に加えて、主信号xP(k)における所望信号と雑音の比の推定値に基づいて、係数更新ステップサイズを計算する。
【００５０】
ステップサイズ制御回路１０において、係数値に基づいて複数の係数グループ内係数に対する係数更新ステップサイズを決定する過程は、すでに本発明の最良の実施形態として説明した通りである。従って、ここでは、主信号xP(k)における所望信号と雑音の比の推定値を求める過程について、詳細に説明する。
【００５１】
図５は、ステップサイズ制御回路１０の構成を表すブロック図である。ステップサイズ制御回路１０は、電力平均回路１０１及び１０２、ＳＮＲ推定回路１０３、及びステップサイズ計算回路１０４から構成される。電力平均回路１０１には第１の誤差e１(k)が、電力平均回路１０２には適応フィルタ５の出力である第１の擬似信号n１(k)が、それぞれ供給されている。電力平均回路１０１は、供給された第１の誤差e１(k)を２乗してe１２(k)を求める。電力平均回路１０１は、さらにその平均値e１２(k)バーを求めて、ＳＮＲ推定回路１０３に供給する。e１２(k)バーは、次式で求めることができる。
〈数１４〉
2010152021.tif 000005
ここに、Ｒは平均値を求めるために用いるサンプル数を表す自然数である。平均値はまた、次式で表される漏れ積分演算によって求めてもよい。
〈数１５〉
e１２(k)バー＝γ・e１２(k-１)バー＋(１―γ)・e１２(k)
ここに、γは０＜γ＜１を満たす定数である。
【００５２】
電力平均回路１０２は、供給された第１の擬似信号n１(k)を２乗してn１２(k)を求める。電力平均回路１０２は、さらにその平均値n１２(k)バーを求めて、ＳＮＲ推定回路１０３に供給する。平均値は、数式１４及び数式１５に示した方法で求めることができる。電力平均回路１０１及び１０２は、絶対値平均回路でそれぞれ置換してもよい。その際、ＳＮＲ推定回路１０３における計算は、本来得られる値を２倍する必要がある。
【００５３】
ＳＮＲ推定回路１０３は、電力平均回路１０１から供給されたe１２(k)バーと電力平均回路１０２から供給されたn１２(k)バーの比e１２(k)バー/n１２(k)バーを求め、その対数log１０{e１２(k)バー/n１２(k)バー}を、主信号における所望信号対雑音比ＳＮＲ１(k)としてステップサイズ計算回路１０４に供給する。すなわち、
〈数１６〉
ＳＮＲ１(k)＝log１０{e１２(k)バー/n１２(k)バー}
である。
【００５４】
ステップサイズ計算回路１０４は、主信号における所望信号対雑音比ＳＮＲ１(k)と適応フィルタ５から供給された係数ベクトルＷ１(k)を入力として、係数更新ステップサイズΜ１(k)を計算する。ここに、Μ１(k)は数式１７で表される。
〈数１７〉
Μ１(k)＝ｍ１(k)・[μ1(０, k), μ1(１, k), …, μ1(Ｎ-１, k)]
ｍ１(k)は、主信号における所望信号対雑音比ＳＮＲ１(k)によって定められる項、μ1(j, k), j=０, １, …, Ｌ-１は、係数ベクトルＷ１(k)に基づいて本発明の最良の実施形態で説明した数式７又は数式８などの方法によって定められる項である。
【００５５】
ｍ１(k)は、ＳＮＲ１ｍｉｎ＜ＳＮＲ１(k)＜ＳＮＲ１ｍａｘで単調減少する関数ｆ１(v)の値として求める。ここに、ＳＮＲ１ｍｉｎ、ＳＮＲ１ｍａｘは、ＳＮＲ１ｍｉｎ＜ＳＮＲ１ｍａｘを満たす定数である。この関係は、数式１８〜数式２０で表すことができる。
〈数１８〉
ｍ１(k)＝ｍ１ｍａｘ  （ＳＮＲ１(k)＜ＳＮＲ１ｍｉｎ）
〈数１９〉
ｍ１(k)＝ｆ１（ＳＮＲ１(k)）  （ＳＮＲ１ｍｉｎ≦ＳＮＲ１(k)≦ＳＮＲ１ｍａｘ） 
〈数２０〉
ｍ１(k)＝ｍ１ｍｉｎ  （ＳＮＲ１(k)＞ＳＮＲ１ｍａｘ）
ただし、ｍ１ｍｉｎ、ｍ１ｍａｘは、ｍ１ｍｉｎ＜ｍ１ｍａｘを満たす定数である。
【００５６】
単調減少関数ｆ１(v)は、例えば、数式２１〜数式２３で表すことができる。
〈数２１〉
ｆ１（ｘ）＝−Ａ・ｘ＋Ｂ
〈数２２〉
Ａ＝（ｍ１ｍａｘ−ｍ１ｍｉｎ）/（ＳＮＲ１ｍａｘ−ＳＮＲ１ｍｉｎ）
〈数２３〉
Ｂ＝｛ｍ１ｍａｘ＋ｍ１ｍｉｎ＋Ａ・（ＳＮＲ１ｍａｘ＋ＳＮＲ１ｍｉｎ）｝/２
【００５７】
単調減少関数は、ＳＮＲ１(k)が大きいときに小さな、小さなときに大きなｍ１(k)を得ることが目的であるので、数式２１〜数式２３に示した１次関数以外に、高次関数や三角関数などの非線形関数またはそれらの組合せで表現されるさらに複雑な関数などを用いてもよい。以上の手続きで、ステップサイズ計算回路１０４は、数式１７によって求められたΜ１(k)をステップサイズとして出力する。
【００５８】
以上説明したように、本発明を実施するための第３の実施形態は、各係数が属する係数サブグループの係数代表値と主信号xP(k)における所望信号と雑音の比の推定値を用いて決定した係数更新ステップサイズを用いて係数更新を行うので、前記係数代表値が小さい係数には小さな係数更新ステップサイズが、大きい係数には大きな係数更新ステップサイズが適用される。また、全係数に共通に、所望信号と雑音の比の推定値が小さいときには大きな係数更新ステップサイズが、大きいときには小さな係数更新ステップサイズが適用される。このため、誤差に対する妨害成分が無視できないときにも誤った係数更新が行われず、所望信号に対する遅延がなく、低演算量で出力歪が少ない信号消去を実現することができる。
【００５９】
次に本発明を実施するための第４の実施形態について説明する。
【００６０】
図６は、本発明の第４の実施形態を表すブロック図である。本発明の第３の実施形態を表すブロック図である図４と比較すると、ステップサイズ制御回路１０がステップサイズ制御回路１１で置換されている。ステップサイズ制御回路１１には、適応フィルタ５から係数ベクトルＷ１(k)と出力n１(k)が、減算器３から第１の誤差e１(k)が、マイクロホン２から参照信号xR(k)が供給されている。ステップサイズ制御回路１１は、係数ベクトルＷ１(k)、第１の誤差e１(k)、適応フィルタ５の出力n１(k)、及び参照信号xR(k)に基づいて係数更新ステップサイズΜ１(k)を求める。ステップサイズ制御回路１１は、求めた係数更新ステップサイズΜ１(k)を、適応フィルタ５に帰還する。
【００６１】
ステップサイズ制御回路１０は、係数グループにおける係数代表値に加えて、参照信号代表値及び主信号xP(k)における所望信号と雑音の比の推定値に基づいて、係数更新ステップサイズΜ１(k)を計算する。ここに、Μ１(k)は数式２４で表される。
〈数２４〉
Μ１(k)＝ｍ１(k)・[μ1(０, k), μ1(１, k), …, μ1(Ｎ１-１, k)]
ｍ１(k)は、主信号における所望信号対雑音比ＳＮＲ１(k)によって定められる項であり、本発明の第３の実施形態で説明した数式１８〜数式２０などの方法によって定められる。μ1(j, k), j=０, １, …, Ｌ-１は、係数ベクトルＷ１(k)と参照信号ベクトルＸ１(k)に基づいて、本発明の第２の実施形態で説明した数式１２又は数式１３などの方法によって定められる項である。
【００６２】
以上説明したように、本発明を実施するための第４の実施形態は、各係数が属する係数サブグループの係数代表値と参照信号代表値、及び主信号xP(k)における所望信号と雑音の比の推定値を用いて決定した係数更新ステップサイズを用いて係数更新を行うので、前記係数代表値が小さい係数には小さな係数更新ステップサイズが、大きい係数には大きな係数更新ステップサイズが適用される。また、前記参照信号代表値が小さい係数には大きな係数更新ステップサイズが、大きい係数には小さな係数更新ステップサイズが適用される。さらに、全係数に共通に、所望信号と雑音の比の推定値が小さいときには大きな係数更新ステップサイズが、大きいときには小さな係数更新ステップサイズが適用される。このため、誤差に対する妨害成分が無視できないときにも、誤った係数更新が行われず、所望信号に対する遅延がなく、低演算量で出力歪が少ない信号消去を実現することができる。
【００６３】
次に、本発明を実施するための第５の実施形態について説明する。
【００６４】
図７は、本発明の第５の実施形態を表すブロック図である。図７に示す本発明の第５の実施形態の信号処理装置は、音声入力を行うマイクロホン１と、参照信号を入力する入力端子１７と、出力端子７と、マイクロホン１から入力される主信号xP(k)から擬似エコーを減算して第１の誤差を生成する第１の減算器３と、入力端子１７から入力される参照信号xR(k)を入力として擬似エコーを生成して第１の誤差が最小となるように係数を更新する第１の適応フィルタ５と、第１の適応フィルタ５から受けた係数値を用いて係数更新ステップサイズを計算し、第１の適応フィルタ５に帰還するステップサイズ制御回路８と、を備えている。第１の減算器３からの第１の誤差e１(k)は、エコーが消去された音声信号として、出力端子７にも出力されている。また、入力端子１７から入力される参照信号xR(k)は、スピーカ１６に供給されている。スピーカ１６は、参照信号xR(k)を音響信号に変換して、音響空間へ放射する。この音響信号は、音響空間を伝搬してマイクロホン１に到達し、主信号xP(k)の一部として減算器３に供給される。このようなスピーカからマイクロホンへの音響信号の回り込みは、音響エコーとして知られている。また、同様の現象が、通信路における２線４線変換の４線側において生じることも、回線エコーとして知られている。すなわち、本発明の第５の実施形態はエコーキャンセラとして動作する。
【００６５】
本発明を実施するための第５の実施形態である図７は、最良の実施形態である図１と、参照信号xR(k)がマイクロホン２ではなく入力端子１７から供給されることを除いて全く等しい構成であり、動作も等しい。このため、動作の詳細な説明は省略する。
【００６６】
次に、本発明を実施するための第６の実施形態について説明する。
【００６７】
図８は、本発明の第６の実施形態を表すブロック図である。図８に示す本発明の第６の実施形態の信号処理装置は、音声入力を行うマイクロホン１と、参照信号を入力する入力端子１７と、出力端子７と、マイクロホン１から入力される主信号xP(k)から擬似エコーを減算して第１の誤差を生成する第１の減算器３と、入力端子１７から入力される参照信号xR(k)を入力として擬似エコーを生成して第１の誤差が最小となるように係数を更新する第１の適応フィルタ５と、第１の適応フィルタ５から受けた係数値及び入力端子１７から受けた参照信号を用いて係数更新ステップサイズを計算し、第１の適応フィルタ５に帰還するステップサイズ制御回路９と、を備えている。第１の減算器３からの第１の誤差e１(k)は、エコーが消去された音声信号として、出力端子７にも出力されている。また、入力端子１７から入力される参照信号xR(k)は、スピーカ１６に供給されている。スピーカ１６は、参照信号xR(k)を音響信号に変換して、音響空間へ放射する。この音響信号は、音響空間を伝搬してマイクロホン１に到達し、主信号xP(k)の一部として減算器３に供給される。すなわち、本発明の第６の実施形態はエコーキャンセラとして動作する。
【００６８】
本発明を実施するための第６の実施形態である図８は、第２の実施形態である図３と、参照信号xR(k)がマイクロホン２ではなく入力端子１７から供給されることを除いて全く等しい構成であり、動作も等しい。このため、動作の詳細な説明は省略する。
【００６９】
次に、本発明を実施するための第７の実施形態について説明する。
【００７０】
図９は、本発明の第７の実施形態を表すブロック図である。図９に示す本発明の第７の実施形態の信号処理装置は、音声入力を行うマイクロホン１と、参照信号を入力する入力端子１７と、出力端子７と、マイクロホン１から入力される主信号xP(k)から擬似エコーを減算して第１の誤差を生成する第１の減算器３と、入力端子１７から入力される参照信号xR(k)を入力として擬似エコーを生成して第１の誤差が最小となるように係数を更新する第１の適応フィルタ５と、第１の適応フィルタ５から受けた係数値及び入力端子１７から受けた参照信号を用いて係数更新ステップサイズを計算し、第１の適応フィルタ５に帰還するステップサイズ制御回路１０と、を備えている。第１の減算器３からの第１の誤差e１(k)は、エコーが消去された音声信号として、出力端子７にも出力されている。また、入力端子１７から入力される参照信号xR(k)は、スピーカ１６に供給されている。スピーカ１６は、参照信号xR(k)を音響信号に変換して、音響空間へ放射する。この音響信号は、音響空間を伝搬してマイクロホン１に到達し、主信号xP(k)の一部として減算器３に供給される。すなわち、本発明の第７の実施形態はエコーキャンセラとして動作する。
【００７１】
本発明を実施するための第７の実施形態である図９は、第３の実施形態である図４と、参照信号xR(k)がマイクロホン２ではなく入力端子１７から供給されることを除いて全く等しい構成であり、動作も等しい。このため、動作の詳細な説明は省略する。
【００７２】
次に、本発明を実施するための第８の実施形態について説明する。
【００７３】
図１０は、本発明の第８の実施形態を表すブロック図である。図１０に示す本発明の第８の実施形態の信号処理装置は、音声入力を行うマイクロホン１と、参照信号を入力する入力端子１７と、出力端子７と、マイクロホン１から入力される主信号xP(k)から擬似エコーを減算して第１の誤差を生成する第１の減算器３と、入力端子１７から入力される参照信号xR(k)を入力として擬似エコーを生成して第１の誤差が最小となるように係数を更新する第１の適応フィルタ５と、第１の適応フィルタ５から受けた係数値、入力端子１７から受けた参照信号、減算器３から受けた第１の誤差、及び適応フィルタ５の出力を用いて係数更新ステップサイズを計算し、第１の適応フィルタ５に帰還するステップサイズ制御回路１１と、を備えている。第１の減算器３からの第１の誤差e１(k)は、エコーが消去された音声信号として、出力端子７にも出力されている。また、入力端子１７から入力される参照信号xR(k)は、スピーカ１６に供給されている。スピーカ１６は、参照信号xR(k)を音響信号に変換して、音響空間へ放射する。この音響信号は、音響空間を伝搬してマイクロホン１に到達し、主信号xP(k)の一部として減算器３に供給される。すなわち、本発明の第８の実施形態はエコーキャンセラとして動作する。
【００７４】
本発明を実施するための第８の実施形態である図１０は、第４の実施形態である図６と、参照信号xR(k)がマイクロホン２ではなく入力端子１７から供給されることを除いて全く等しい構成であり、動作も等しい。このため、動作の詳細な説明は省略する。
【００７５】
次に、本発明を実施するための第９の実施形態について説明する。
【００７６】
図１１は、本発明の第９の実施形態を表すブロック図である。図１１に示す本発明の第９の実施形態の信号処理装置は、音声入力を行うマイクロホン１と、参照信号を入力するマイクロホン２と、出力端子７と、マイクロホン１から入力される主信号xP(k)から第１の擬似信号を減算して第１の誤差を生成する第１の減算器３と、マイクロホン２から入力される参照信号xR(k)から第２の擬似信号を減算して第２の誤差を生成する第２の減算器４と、減算器３の出力である第１の誤差e１(k)を入力として第２の擬似信号を生成して第２の誤差が最小となるように係数を更新する第２の適応フィルタ６と、減算器４の出力である第２の誤差e２(k)を入力として第１の擬似信号を生成して第１の誤差が最小となるように係数を更新する第１の適応フィルタ５と、第１の適応フィルタ５から受けた係数値を用いて第１の係数更新ステップサイズを、第２の適応フィルタ６から受けた係数値を用いて第２の係数更新ステップサイズを計算し、それぞれを第１の適応フィルタ５と第２の適応フィルタ６に帰還するステップサイズ制御回路１２と、を備えている。第１の減算器３からの第１の誤差e１(k)は、雑音が消去された音声信号として、出力端子７にも出力されている。
【００７７】
本発明を実施するための第９の実施形態である図１１は、最良の実施形態である図１に、適応フィルタ６と減算器４が追加され、ステップサイズ制御回路８がステップサイズ制御回路１２に置換されたことを除いて全く等しい構成である。このため、これらの相違点に関する動作だけを詳細に説明し、共通部分の説明は省略する。
【００７８】
適応フィルタ６と減算器４は、参照信号に対する所望信号の混入成分、すなわちクロストークを消去するために導入されている。二つの適応フィルタを用いた雑音とクロストークの消去に関しては、特許文献４に詳細な動作が記述されている。本発明を実施するための最良の実施形態で説明したように、雑音を消去するための適応フィルタ５は、第１の誤差e１(k)に誤差以外の妨害信号が含まれる際にも、妨害に対して頑健でなければならない。同様に、クロストークを消去するための適応フィルタ６は、第２の誤差e２(k)に誤差以外の妨害信号が含まれる際にも、妨害に対して頑健でなければならない。このため、ステップサイズ制御回路１２は、適応フィルタ５のための係数更新ステップサイズに加えて、適応フィルタ６のための係数更新ステップサイズも計算する。なお、適応フィルタ５のための係数更新ステップサイズの計算法については、本発明を実施するための最良の実施形態において説明したので、ここでは省略する。
【００７９】
ステップサイズ制御回路１２は、適応フィルタ６から係数ベクトルＷ２(k)を受け、ステップサイズΜ２(k)を求める。Ｗ２(k)とΜ２(k)は、次式で与えられる。
〈数２５〉
Ｗ２(k)＝[ｗ２(０, k), ｗ２(１, k), …, ｗ２(Ｎ２-１, k)]
〈数２６〉
Μ２(k)＝[μ2(０,k), μ2(１, k), …, μ2(Ｎ２-１, k)]
ここに、Ｎ２は適応フィルタ６のタップ数を表す１以上の整数である。
【００８０】
ステップサイズ制御回路１２は、係数ベクトルＷ２(k)を、まずＬ個のサブベクトル（係数グループ）に分割する。分割に際しては、予め定められたサイズのサブベクトルに分割することができる。分割方法については、既に最良の実施形態で説明したとおりである。
【００８１】
このようにして生成したサブベクトルをＷS2
(j, k), j=０, １, …, Ｌ-１とすると、
〈数２７〉
Ｗ２(k)＝[ＷS2(０, k), ＷS2(１, k), …, ＷS2(Ｌ-１, k)]
となる。ＬS等分割の場合には、ｊ番目のサブベクトルは、次式で与えられる。
〈数２８〉
ＷS2(j, k)＝[ｗ２(jＬ/ＬS, k), ｗ２(jＬ/ＬS+１, k), …, ｗ２((j+１)Ｌ/ＬS-１, k)] (j=０, １, …, Ｌ-１)
ここにＬSは、Ｌ/ＬSが整数となるような整数値である。
【００８２】
次に、各サブベクトル（係数グループ）内で係数の代表値を求める。代表値としては、最大値、最小値、中央値、平均値、分散などを用いることができる。ｊ番目のサブベクトルに対する代表値ｗREP2(j, k)は、最大値を代表値とするとき、
〈数２９〉
ｗREP2(j, k)＝ｍａｘ｛|ｗ２(jＬ/ＬS, k)|, |ｗ２(jＬ/ＬS+１, k)|, …, |ｗ２((j+１)Ｌ/ＬS-１, k)|｝
で与えられる。同様に、最小値と中央値も最小値演算子又は中央値演算子によって求めることができる。
【００８３】
また、平均値をｊ番目のサブベクトルに対する代表値ｗREP2(j, k)とするときには、
〈数３０〉
2010152021.tif 000006
となる。分散についても、同様に定義に従って計算することができる。既に最良の実施形態で説明したとおり、各係数の絶対値の代わりに２乗値を用いて、係数代表値を求めてもよい。
【００８４】
このようにして計算したサブベクトルの代表値ｗREP2(j, k), j=０, １, …,  Ｌ-１を用いて、cREP2(j, k)に対応した係数更新ステップサイズを計算する。第１の例は、各サブベクトルの代表値の最大値を求め、その最大値に対する各サブベクトル代表値の割合を求め、この割合で基本となる係数更新ステップサイズμ0を重みづけて係数更新ステップサイズとする方法である。すなわち、各サブベクトルに対応した係数更新ステップサイズμ2(j, k)を、次式で求める。
〈数３１〉
μ2(j, k)＝ｗREP2(j, k)/max{ｗREP2(j, k)}・μ0
前記割合は０と１の間の値を取るので、最大の係数はμ0で、それ以外の係数はμ0よりも小さな係数更新ステップサイズで更新されることになる。
【００８５】
第２の例は、各サブベクトルの代表値の平均値を求め、その平均値に対する各サブベクトル代表値の割合を求め、この割合で基本となる係数更新ステップサイズμ0を重みづけて係数更新ステップサイズとする方法である。すなわち、各サブベクトルに対応した係数更新ステップサイズμ2(j, k)を、次式で求める。
〈数３２〉
μ2(j, k)＝ｗREP2(j, k)/ave{ｗREP2(j, k)}・μ0
【００８６】
以上説明したように、本発明を実施するための第９の実施形態は、雑音消去用の適応フィルタとクロストーク消去用の適応フィルタの双方で、それぞれに属する係数サブグループの代表値を用いて係数更新ステップサイズを決定する。これらの係数更新ステップサイズを用いて係数更新を行うので、前記代表値が小さい係数には小さな係数更新ステップサイズが、大きい係数には大きな係数更新ステップサイズが適用される。このため、誤差に対する妨害成分が無視できないときにも、誤った係数更新が行われず、所望信号に対する遅延がなく、低演算量で出力歪が少ない信号消去を実現することができる。
【００８７】
次に、本発明を実施するための第１０の実施形態について説明する。
【００８８】
図１２は、本発明の第１０の実施形態を表すブロック図である。本発明の第９の実施形態を表すブロック図である図１１と比較すると、ステップサイズ制御回路１２がステップサイズ制御回路１３で置換されている。ステップサイズ制御回路１３は、適応フィルタ５及び減算器４からそれぞれ係数ベクトルＷ１(k)と第２の誤差e２(k)を受け、係数更新ステップサイズΜ１(k)を求める。また、ステップサイズ制御回路１３は、適応フィルタ６及び減算器３からそれぞれ係数ベクトルＷ２(k)と第１の誤差e１(k)を受け、係数更新ステップサイズΜ２(k)を求める。ここで、減算器３及び４の出力である第１と第２の誤差は、それぞれ適応フィルタ６及び５の参照入力信号となっている。ステップサイズ制御回路１３は、求めた係数更新ステップサイズΜ１(k)及びΜ２(k)を、適応フィルタ５及び６にそれぞれ帰還する。ステップサイズ制御回路１３は、係数グループにおける係数代表値と参照信号代表値に基づいて、適応フィルタ５及び６の係数更新ステップサイズを計算する。
【００８９】
本発明を実施するための第１０の実施形態である図１２は、第２の実施形態である図３に、適応フィルタ６と減算器４が追加され、ステップサイズ制御回路９がステップサイズ制御回路１３に置換されたことを除いて全く等しい構成である。このため、これらの相違点に関する動作だけを詳細に説明し、共通部分の説明は省略する。
【００９０】
本発明を実施するための第９の実施形態である図１１と同様に、ステップサイズ制御回路１３は、適応フィルタ５のための係数更新ステップサイズに加えて、適応フィルタ６のための係数更新ステップサイズも計算する。なお、適応フィルタ５のための係数更新ステップサイズの計算法については、本発明を実施するための第２の実施形態において説明したので、ここでは省略する。
【００９１】
第２の実施形態と同様に、時刻kにおける適応フィルタ６の参照信号ベクトルＸ２(k)を次のように定義する。
〈数３３〉
Ｘ２(k)＝[x２(０, k), x２(１, k), …, x２(Ｎ２-１, k)]
【００９２】
次に、各サブベクトル内における参照信号の代表値を求める。代表値としては、最大値、最小値、中央値、平均値、分散などを用いることができる。ｊ番目のサブベクトルに対する代表値xREP2(j, k)は、最大値を代表値とするとき、
〈数３４〉
xREP2(j, k)＝ｍａｘ｛|x２(jＬ/ＬS, k)|, |x２(jＬ/ＬS+１, k)|, …, |x２((j+１)Ｌ/ＬS-１, k)|｝
で与えられる。同様に、最小値と中央値も最小値演算子又は中央値演算子によって求めることができる。
【００９３】
また、平均値をｊ番目のサブベクトルに対する代表値xREP2(j, k)とするときには、
〈数３５〉
2010152021.tif 000007
となる。分散についても、同様に定義に従って計算することができる。
【００９４】
これまでの説明では、各参照信号値の絶対値に対して参照信号代表値を求めた。しかし、係数値の場合と同様に、絶対値の代わりに２乗値を用いても、同様の効果を得ることができる。
【００９５】
このようにして計算したサブベクトルの参照信号代表値xREP2(j, k), j=０, １, …, Ｌ-１と係数代表値ｗREP2(j, k), j=０, １, …,Ｌ-１を用いて、xREP2(j, k)とｗREP2(j, k)に対応した係数更新ステップサイズを計算する。第１の例は、各サブベクトルの参照信号代表値と係数代表値の最大値を求め、それらの最大値に対する各サブベクトルの参照信号代表値と係数代表値の割合をそれぞれ求め、これらの割合で基本となる係数更新ステップサイズμ0を重みづけて係数更新ステップサイズとする方法である。すなわち、各サブベクトルに対応した係数更新ステップサイズμ2(j, k)を、次式で求める。
〈数３６〉
μ2(j, k)＝[ｗREP2(j, k) max{xREP2(j, k)}]/[max{ｗREP2(j, k)} xREP2(j, k)]・μ0
【００９６】
この式から明らかなように、係数代表値だけを用いた場合と同様に最大の係数はμ0で、それ以外の係数はμ0よりも小さな係数更新ステップサイズで更新されることになる。
【００９７】
第２の例は、各サブベクトルの参照信号代表値と係数代表値の平均値を求め、それらの平均値に対する各サブベクトルの参照信号代表値と係数代表値の割合をそれぞれ求め、これらの割合で基本となる係数更新ステップサイズμ0を重みづけて係数更新ステップサイズとする方法である。すなわち、各サブベクトルに対応した係数更新ステップサイズμ2(j, k)を、次式で求める。
〈数３７〉
μ２(j, k)＝[ｗREP2(j, k) ave{xREP2(j, k)}]/[ave{ｗREP2(j, k)} xREP2(j, k)]・μ0
【００９８】
以上説明したように、本発明を実施するための第１０の実施形態は、雑音消去用の適応フィルタとクロストーク消去用の適応フィルタの双方で、それぞれに属する係数サブグループの参照信号代表値と係数代表値を用いて係数更新ステップサイズを決定する。これらの係数更新ステップサイズを用いて係数更新を行うので、前記係数代表値が小さい係数には小さな係数更新ステップサイズが、大きい係数には大きな係数更新ステップサイズが適用される。また、前記参照信号代表値が小さい係数には大きな係数更新ステップサイズが、大きい係数には小さな係数更新ステップサイズが適用される。このため、誤差に対する妨害成分が無視できないときにも、誤った係数更新が行われず、所望信号に対する遅延がなく、低演算量で出力歪が少ない信号消去を実現することができる。
【００９９】
次に、本発明を実施するための第１１の実施形態について説明する。
【０１００】
図１３は、本発明の第１１の実施形態を表すブロック図である。本発明の第９の実施形態を表すブロック図である図１１と比較すると、ステップサイズ制御回路１２がステップサイズ制御回路１４で置換されている。ステップサイズ制御回路１４には、適応フィルタ５から係数ベクトルＷ１(k)及び出力n１(k)が、減算器３から第１の誤差e１(k)が供給されている。ステップサイズ制御回路１４は、これらの信号に基づいて、係数更新ステップサイズΜ１(k)を求める。また、ステップサイズ制御回路１４には、適応フィルタ６から係数ベクトルＷ２(k)及び出力n２(k)が、減算器４から第２の誤差e２(k)が供給されている。ステップサイズ制御回路１４は、これらの信号に基づいて、係数更新ステップサイズΜ２(k)を求める。ステップサイズ制御回路１４は、求めた係数更新ステップサイズΜ１(k)及びΜ２(k)を、適応フィルタ５及び６にそれぞれ帰還する。ステップサイズ制御回路１４は、係数グループにおける係数代表値に加えて、主信号xP(k)における所望信号と雑音の比の推定値又は参照信号xR(k)における所望信号と雑音の比の推定値に基づいて、適応フィルタ５又は６の係数更新ステップサイズを計算する。
【０１０１】
本発明を実施するための第１１の実施形態である図１３は、第３の実施形態である図４に、適応フィルタ６と減算器４が追加され、ステップサイズ制御回路１０がステップサイズ制御回路１４に置換されたことを除いて全く等しい構成である。このため、これらの相違点に関する動作だけを詳細に説明し、共通部分の説明は省略する。
【０１０２】
本発明を実施するための第１０の実施形態である図１２と同様に、ステップサイズ制御回路１４は、適応フィルタ５のための係数更新ステップサイズに加えて、適応フィルタ６のための係数更新ステップサイズも計算する。なお、適応フィルタ５のための係数更新ステップサイズの計算法については、本発明を実施するための第３の実施形態において説明したので、ここでは省略する。
【０１０３】
ステップサイズ制御回路１４において、係数値に基づいて複数の係数グループ内係数に対する係数更新ステップサイズを決定する過程は、すでに本発明の第９の実施形態として説明した通りである。従って、ここでは、参照信号xR(k)における所望信号と雑音の比の推定値を求める過程について、詳細に説明する。
【０１０４】
図１４は、ステップサイズ制御回路１４の構成を表すブロック図である。ステップサイズ制御回路１４は、電力平均回路１０１、１０２、１４１及び１４２、ＳＮＲ推定回路１０３及び１４３、並びにステップサイズ計算回路１０４及び１４４から構成される。電力平均回路１０１及び１０２、ＳＮＲ推定回路１０３、及びステップサイズ計算回路１０４の動作については、図５を参照して既に説明した。これらの構成要素と全く同様に、電力平均回路１４１及び１４２、ＳＮＲ推定回路１４３、及びステップサイズ計算回路１４４は動作する。
【０１０５】
電力平均回路１４１には第２の誤差e２(k)が、電力平均回路１４２には適応フィルタ６の出力である第２の擬似信号n２(k)が、それぞれ供給されている。電力平均回路１４１は、供給された第２の誤差e２(k)を２乗してe２２(k)を求める。電力平均回路１４１は、さらにその平均値e２２(k)バーを求めて、ＳＮＲ推定回路１４３に供給する。e２２(k)バーは、次式で求めることができる。
〈数３８〉
2010152021.tif 000008
平均値はまた、次式で表される漏れ積分演算によって求めてもよい。
〈数３９〉
e２２(k)バー＝γ・e２２(k-１)バー＋(１―γ)・e２２(k)
【０１０６】
電力平均回路１４２は、供給された第２の擬似信号ｎ２(k)を２乗してｎ２２(k)を求める。電力平均回路１４２は、さらにその平均値ｎ２２(k)バーを求めて、ＳＮＲ推定回路１４３に供給する。平均値は、数式３８及び数式３９に示した方法で求めることができる。電力平均回路１４１及び１４２は、絶対値平均回路でそれぞれ置換してもよい。その際、ＳＮＲ推定回路１４３における計算は、本来得られる値を２倍する必要がある。
【０１０７】
ＳＮＲ推定回路１４３は、電力平均回路１４１から供給されたe２２(k)バーと電力平均回路１４２から供給されたｎ２２(k)バーの比e２２(k)バー/ｎ２２(k)バーを求め、その対数log１０{e２２(k)バー/ｎ２２(k)バー}を、第２の所望信号対雑音比ＳＮＲ２(k)としてステップサイズ計算回路１４４に供給する。すなわち、
〈数４０〉
ＳＮＲ２(k)＝log１０{e２２(k)バー/ｎ２２(k)バー}
である。
【０１０８】
ステップサイズ計算回路１３４は、参照信号における所望信号対雑音比ＳＮＲ２(k)と適応フィルタ６から供給された係数ベクトルＷ２(k)を入力として、係数更新ステップサイズΜ２(k)を計算する。ここに、Μ２(k)は数式４１で表される。
〈数４１〉
Μ２(k)＝ｍ２(k)・[μ2(０, k), μ2(１, k), …, μ2(Ｎ２-１, k)]
ｍ２(k)は、参照信号における所望信号対雑音比ＳＮＲ２(k)によって定められる項、μ2(j, k), j=０, １, …, Ｌ-１は、係数ベクトルＷ２(k)に基づいて本発明の第９の実施形態で説明した数式３１又は数式３２などの方法によって定められる項である。
【０１０９】
ｍ２(k)は、ＳＮＲ２ｍｉｎ＜ＳＮＲ２(k)＜ＳＮＲ２ｍａｘで単調増加する関数ｆ２(v)の値として求める。ここに、ＳＮＲ２ｍｉｎ、ＳＮＲ２ｍａｘは、ＳＮＲ２ｍｉｎ＜ＳＮＲ２ｍａｘを満たす定数である。この関係は、数式４２〜数式４４で表すことができる。
〈数４２〉
ｍ２(k)＝ｍ２ｍｉｎ  （ＳＮＲ２(k)＜ＳＮＲ２ｍｉｎ）
〈数４３〉
ｍ２(k)＝ｆ２（ＳＮＲ２(k)）  （ＳＮＲ２ｍｉｎ≦ＳＮＲ２(k)≦ＳＮＲ２ｍａｘ）
〈数４４〉
ｍ２(k)＝ｍ２ｍａｘ（ＳＮＲ２(k)＞ＳＮＲ２ｍａｘ）
ただし、ｍ２ｍｉｎ、ｍ２ｍａｘは、ｍ２ｍｉｎ＜ｍ２ｍａｘを満たす定数である。
【０１１０】
単調増加関数ｆ２(v)は、例えば、数式４５〜数式４７で表すことができる。
〈数４５〉
ｆ２（ｘ）＝Ｃ・ｘ＋Ｄ
〈数４６〉
Ｃ＝（ｍ２ｍａｘ−ｍ２ｍｉｎ）/（ＳＮＲ２ｍａｘ−ＳＮＲ２ｍｉｎ）
〈数４７〉
Ｄ＝｛ｍ２ｍａｘ＋ｍ２ｍｉｎ＋Ｃ・（ＳＮＲ２ｍａｘ＋ＳＮＲ２ｍｉｎ）｝/２
【０１１１】
単調増加関数は、ＳＮＲ２(k)が大きいときに大きな、小さなときに小さなｍ２(k)を得ることが目的であるので、数式４５〜数式４７に示した１次関数以外に、高次関数や三角関数などの非線形関数またはそれらの組合せで表現されるさらに複雑な関数などを用いてもよい。以上の手続きで、ステップサイズ計算回路１４４は、数式４１によって求められたΜ２(k)をステップサイズとして出力する。
【０１１２】
以上説明したように、本発明を実施するための第１１の実施形態は、雑音消去用の適応フィルタとクロストーク消去用の適応フィルタの双方で、それぞれに属する係数サブグループの係数代表値と主信号xP(k)又は参照信号xR(k)における所望信号と雑音の比の推定値を用いて決定した係数更新ステップサイズを用いて係数更新を行うので、前記係数代表値が小さい係数には小さな係数更新ステップサイズが、大きい係数には大きな係数更新ステップサイズが適用される。また、雑音を消去するための適応フィルタ５には、所望信号と雑音の比の推定値が小さいときには大きな係数更新ステップサイズが、大きいときには小さな係数更新ステップサイズが適用される。また、クロストークを消去するための適応フィルタ６には、所望信号と雑音の比の推定値が小さいときには小さな係数更新ステップサイズが、大きいときには大きな係数更新ステップサイズが適用される。このため、誤差に対する妨害成分が無視できないときにも、誤った係数更新が行われず、所望信号に対する遅延がなく、低演算量で出力歪が少ない信号消去を実現することができる。
【０１１３】
次に本発明を実施するための第１２の実施形態について説明する。
【０１１４】
図１５は、本発明の第１２の実施形態を表すブロック図である。本発明の第１１の実施形態を表すブロック図である図１４と比較すると、ステップサイズ制御回路１４がステップサイズ制御回路１５で置換されている。
【０１１５】
ステップサイズ制御回路１５には、適応フィルタ５から係数ベクトルＷ１(k)と出力n１(k)、減算器３から第１の誤差e１(k)が供給されている。また、ステップサイズ制御回路１５には、適応フィルタ６から係数ベクトルＷ２(k)と出力ｎ２(k)、減算器４から第２の誤差e２(k)が供給されている。ステップサイズ制御回路１５は、係数ベクトルＷ１(k)、第１の誤差e１(k)、適応フィルタ５の出力ｎ１(k)、及び適応フィルタ５の参照入力信号である第２の誤差e２(k)に基づいて、係数更新ステップサイズΜ１(k)を求める。また、ステップサイズ制御回路１５は、係数ベクトルＣ２(k)、第２の誤差e２(k)、適応フィルタ６の出力ｎ２(k)、及び適応フィルタ６の参照入力信号である第１の誤差e１(k)に基づいて、係数更新ステップサイズΜ２(k)を求める。ステップサイズ制御回路１５は、求めた係数更新ステップサイズΜ１(k)及びΜ２(k)を、適応フィルタ５及び６にそれぞれ帰還する。
【０１１６】
ステップサイズ制御回路１５は、適応フィルタの各係数グループにおける係数代表値と参照信号代表値に加えて、主信号xP(k)における所望信号と雑音の比の推定値又は参照信号xR(k)における所望信号と雑音の比の推定値に基づいて、適応フィルタ５及び６の係数更新ステップサイズΜ１(k)及びΜ２(k)を計算する。
【０１１７】
本発明を実施するための第１２の実施形態である図１５は、第４の実施形態である図６に、適応フィルタ６と減算器４が追加され、ステップサイズ制御回路１１がステップサイズ制御回路１５に置換されたことを除いて全く等しい構成である。このため、これらの相違点に関する動作だけを詳細に説明し、共通部分の説明は省略する。
【０１１８】
本発明を実施するための第１１の実施形態である図１３と同様に、ステップサイズ制御回路１５は、適応フィルタ５のための係数更新ステップサイズに加えて、適応フィルタ６のための係数更新ステップサイズも計算する。なお、適応フィルタ５のための係数更新ステップサイズの計算法については、本発明を実施するための第４の実施形態において説明したので、ここでは省略する。
【０１１９】
ステップサイズ制御回路１５は、係数グループにおける係数代表値に加えて、参照信号代表値及び参照信号xR(k)における所望信号と雑音の比の推定値に基づいて、係数更新ステップサイズΜ２(k)を計算する。ここに、Μ２(k)は数式４８で表される。
〈数４８〉
Μ２(k)＝ｍ２(k)・[μ2(０, k), μ2(１, k), …, μ2(Ｎ２１-１, k)]
ｍ２(k)は、参照信号における所望信号対雑音比ＳＮＲ２(k)によって定められる項、μ2(j, k), j=０, １, …, Ｌ-１は、係数ベクトルＷ２(k)と参照信号ベクトルＸ２(k)に基づいて、本発明の第１０の実施形態で説明した数式３６又は数式３７などの方法によって定められる項である。
【０１２０】
以上説明したように、本発明を実施するための第１２の実施形態は、雑音消去用の適応フィルタとクロストーク消去用の適応フィルタの双方で、それぞれに属する係数サブグループの係数代表値と参照信号代表値、及び主信号xP(k)における所望信号と雑音の比の推定値を用いて決定した係数更新ステップサイズを用いて係数更新を行うので、前記係数代表値が小さい係数には小さな係数更新ステップサイズが、大きい係数には大きな係数更新ステップサイズが適用される。また、前記参照信号代表値が小さい係数には大きな係数更新ステップサイズが、大きい係数には小さな係数更新ステップサイズが適用される。さらに、全係数に共通に、雑音を消去するための適応フィルタ５には、所望信号と雑音の比の推定値が小さいときには大きな係数更新ステップサイズが、大きいときには小さな係数更新ステップサイズが適用される。一方、クロストークを消去するための適応フィルタ６には、所望信号と雑音の比の推定値が小さいときには小さな係数更新ステップサイズが、大きいときには大きな係数更新ステップサイズが適用される。このため、誤差に対する妨害成分が無視できないときにも、誤った係数更新が行われず、所望信号に対する遅延がなく、低演算量で出力歪が少ない信号消去を実現することができる。
【０１２１】
これまで説明した本発明の最良の実施形態から第１２の実施形態において、適応フィルタの係数が収束するまでは、予め定められた係数更新ステップサイズを用い、適応フィルタが収束した後に係数更新ステップサイズを各実施形態で説明した方法で制御することもできる。その際には、適応フィルタの収束を判定しなければならない。収束の判定には、係数ベクトルに関する情報を用いることができる。
【０１２２】
例えば、全タップにおいて、係数ベクトルのノルム、すなわち係数２乗値総和を求め、このノルムの変化率を評価すると、収束を判定することができる。適応フィルタが収束すると、係数ベクトルのノルムはほぼ一定値になり、その増加率はゼロに極めて近い値となる。特に、係数初期値をゼロに設定してから係数更新を開始したときは、前記ノルムはゼロから始まって増加し、最終的には飽和する。従って、変化率は増加率に等しい。この増加率は、始めは高く、収束に近づくに連れて低くなる。このため、この増加率が予め定められた値より小さくなったときに、適応フィルタが収束したと判定することができる。
【０１２３】
適応フィルタ係数の収束判定を、前記係数グループ毎に独立に行うこともできる。このときは、前記係数ベクトルの代わりに係数グループ内の係数からなるサブベクトルのノルムの変化率や増加率を評価することで、該当する係数グループの収束を判定することができる。適応フィルタが音響空間の伝達関数を近似する際には、係数の位置するタップの遅延が大きいほど係数の値が小さく、収束が速い。このため、係数グループ毎に独立に収束判定を行うことで、係数による収束時間の不均一性に合わせた正確な収束判定を行うことができる。
【０１２４】
上記、係数値を用いた適応フィルタの収束判定において、極端に大きな値や小さな値を有する外れ値の係数を除外するもできる。外れ値の除外により、これら極端な値の係数値による好ましくない影響を避け、正確な収束判定を行うことができる。
【０１２５】
ここに説明した係数値に基づく収束判定以外にも、適応フィルタの収束判定には、出力誤差の減少、誤差の自己相関の減少、誤差と参照信号の相関の減少、誤差と主信号の相関の減少などを利用できることが、広く文献を通して知られている。
【０１２６】
以上説明した本発明に基づく信号処理装置は、ソフトウェアによって実現することもできる。すなわち、上述した各実施形態の信号処理装置における各回路の処理動作をソフトウェアにおけるステップまたは手続きとして構成することで、信号処理に用いられるプログラムを構成することができる。そのようなプログラムは、信号処理装置あるいは雑音消去装置を構成するＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）などのプロセッサで実行される。
【０１２７】
さらには、そのようなプログラムからなるプログラムプロダクトあるいはそのようなプログラムを格納した記憶媒体も、本発明の範疇に含まれる。
【図面の簡単な説明】
【０１２８】
【図１】本発明の最良の実施形態の信号処理装置の構成を示すブロック図である。
【図２】係数値と係数グループ、及び係数代表値の関係を表す図である。
【図３】本発明の第２の実施形態の信号処理装置の構成を示すブロック図である。
【図４】本発明の第３の実施形態の信号処理装置の構成を示すブロック図である。
【図５】ステップサイズ制御回路の第１の構成を表す図である。
【図６】本発明の第４の実施形態の信号処理装置の構成を示すブロック図である。
【図７】本発明の第５の実施形態の信号処理装置の構成を示すブロック図である。
【図８】本発明の第６の実施形態の信号処理装置の構成を示すブロック図である。
【図９】本発明の第７の実施形態の信号処理装置の構成を示すブロック図である。
【図１０】本発明の第８の実施形態の信号処理装置の構成を示すブロック図である。
【図１１】本発明の第９の実施形態の信号処理装置の構成を示すブロック図である。
【図１２】本発明の第１０の実施形態の信号処理装置の構成を示すブロック図である。
【図１３】本発明の第１１の実施形態の信号処理装置の構成を示すブロック図である。
【図１４】ステップサイズ制御回路の第２の構成を表す図である。
【図１５】本発明の第１２の実施形態の信号処理装置の構成を示すブロック図である。
【符号の説明】
【０１２９】
１，２  マイクロホン
３，４  減算器
５，６  適応フィルタ
７  出力端子
８，９，１０，１１，１２，１３，１４，１５  ステップサイズ制御回路
１６  スピーカ
１７  入力端子
１０１，１０２，１４１，１４２  電力平均回路
１０３，１４３  ＳＮＲ推定回路
１０４，１４４  ステップサイズ計算回路
【図１】
2010152021.tif 000009
【図２】
2010152021.tif 000010
【図３】
2010152021.tif 000011
【図４】
2010152021.tif 000012
【図５】
2010152021.tif 000013
【図６】
2010152021.tif 000014
【図７】
2010152021.tif 000015
【図８】
2010152021.tif 000016
【図９】
2010152021.tif 000017
【図１０】
2010152021.tif 000018
【図１１】
2010152021.tif 000019
【図１２】
2010152021.tif 000020
【図１３】
2010152021.tif 000021
【図１４】
2010152021.tif 000022
【図１５】
2010152021.tif 000023