(57)【要約】【課題】本願は、適応リアルタイム音響エコーキャンセル方法およびシステムを対象とする。【解決手段】本方法は、複数のスピーカ604、及び、第1の場所において生成される音及び該複数のスピーカによって生成される音響エコーを含む複数のマイクロフォンデジタル信号のうちの1つを生成する複数のマイクロフォン606を備えた第1の場所102から第2の場所104に伝送されるマイクロフォンデジタル信号において音響エコーを低減することを対象とする。本方法は、それぞれマイクロフォンとスピーカとの間の1つのエコーパス702に対応する複数の近似インパルス応答を求めることと、それぞれスピーカのうちの1つによって再生されるデジタル信号を多数の近似インパルス応答で畳み込むことに対応する複数の近似音響エコーを求めることとを含み、マイクロフォンデジタル信号のうちの少なくとも1つにおける音響エコーが、対応する近似音響エコーに基づいて低減される。【選択図】図６
2010527181.tif 000002
【特許請求の範囲】
【請求項１】
第１の場所（１０２）から第２の場所（１０４）に伝送される複数のマイクロフォンデジタル信号において音響エコーを低減する方法であって、
前記第１の場所に配置される複数のスピーカ（６０４）、および、それぞれ前記第１の場所において生成される音および該複数のスピーカによって生成される音響エコーを含む前記複数のマイクロフォンデジタル信号のうちの１つを生成する複数のマイクロフォン（６０６）を設けることと、
前記複数のマイクロフォンのそれぞれと前記複数のスピーカのそれぞれとの間の１つのエコーパス（７０２）に対応する近似インパルス応答を求めることと、
それぞれ前記複数のスピーカのうちの１つによって再生されるデジタル信号を多数の前記近似インパルス応答で畳み込むことに対応する複数の近似音響エコーを求めることと、
前記対応する近似音響エコーに基づいて、前記マイクロフォンデジタル信号のうちの少なくとも１つにおいて前記音響エコーを低減することと
を含む音響エコーを低減する方法。
【請求項２】
前記近似インパルス応答を求めることは、
前記第１の場所においてのみ音声信号が生成されるタイプと、
前記第２の場所においてのみ音声信号が生成されるタイプと、
前記第１の場所および前記第２の場所において同時に音声信号が生成されるタイプと、
前記第１の場所または前記第２の場所のいずれにおいても音声信号が生成されないタイプのうちの１つとして、各前記エコーパスに関連付けられる音声伝送のタイプを特定することと
をさらに含む請求項１に記載の方法。
【請求項３】
前記各マイクロフォンデジタル信号のそれぞれにおいて前記音響エコーを低減することは、以下のように、制御済みデジタル信号を求めることであって、
【数１】
2010527181.tif 000183
ただし、
ｊ∈｛１，Ｋ  Ｊ｝はマイクロフォンのインデックス(index)であり、
ｉ∈｛１，Ｋ  Ｉ｝はスピーカのインデックスであり、
ＴｒＮｄは決定期間長Ｎｄの打切り演算子であり、
ＩＦＦＴは逆高速フーリエ変換であり、
「
【数２】
2010527181.tif 000184
」は２つのベクトルの成分毎の乗算であり、
【数３】
2010527181.tif 000185
は周波数領域マイクロフォンデジタル信号であり、
【数４】
2010527181.tif 000186
は周波数領域デジタル信号であり、
【数５】
2010527181.tif 000187
は周波数領域近似インパルス応答ベクトルであり、
【数６】
2010527181.tif 000188
は周波数領域近似音響エコーである
制御済みデジタル信号を求めること
をさらに含む請求項１に記載の方法。
【請求項４】
前記周波数領域近似インパルス応答ベクトルを求めることは、
【数７】
2010527181.tif 000189
を計算することであって、ただし、
ＦＦＴは高速フーリエ変換であり、
【数８】
2010527181.tif 000190
は音声伝送の前記タイプに依存する近似インパルス応答ベクトルである、計算することをさらに含む、請求項３に記載の方法。
【請求項５】
前記近似インパルス応答ベクトル
【数９】
2010527181.tif 000191
を計算することは、
前記第１の場所と前記第２の場所との間で信号が伝送されないとき、または前記第１の場所から前記第２の場所に信号が伝送されるときに、
【数１０】
2010527181.tif 000192
を割り当てることであって、ただし、
【数１１】
2010527181.tif 000193
はｍ−１によって特定される先行する決定期間に関連付けられる近似インパルス応答ベクトルである割り当てることと、
前記第１の場所と前記第２の場所との間で信号が同時に伝送されるときに、最も高い信号対雑音比を有するＫ個の最新の近似インパルス応答
【数１２】
2010527181.tif 000194
を有するインパルス応答データ構造から前記近似インパルス応答ベクトル
【数１３】
2010527181.tif 000195
を選択することと、
前記第２の場所から前記第１の場所にのみ信号が伝送されるときに、
【数１４】
2010527181.tif 000196
によって与えられる再帰式を利用することであって、ただし、
【数１５】
2010527181.tif 000197
はｍによって特定される決定期間に関連付けられるシャドーインパルス応答ベクトルであり、
【数１６】
2010527181.tif 000198
はｍ−１によって特定される先行する決定期間に関連付けられる近似インパルス応答ベクトルであり、
γｉｊ，ｍはインパルス応答ステップサイズである、利用することと
をさらに含む、請求項４に記載の方法。
【請求項６】
前記インパルス応答ステップサイズγｉｊ，ｍは、
【数１７】
2010527181.tif 000199
を計算することであって、ただし、
【数１８】
2010527181.tif 000200
であり、
Ｍ回の決定期間にわたって、
【数１９】
2010527181.tif 000201
の場合に、
ｃｉｊ，ｍ＝ｍａｘ{＝ｃｉｊ，ｍ−１−４０００，４００}
であり、そうでない場合には、
ｃｉｊ，ｍ＝ｍａｘ{＝ｃｉｊ，ｍ−１＋１，４００００}
である
計算すること
をさらに含む請求項５に記載の方法。
【請求項７】
前記インパルス応答ステップサイズγｉｊ，ｍは、γ＿ｓｃａｌｅｉｊ（ｍ）が「１」より大きいときに、
【数２０】
2010527181.tif 000202
を設定することであって、ただし、
【数２１】
2010527181.tif 000203
であり、
【数２２】
2010527181.tif 000204
はシャドーインパルスベクトル
【数２３】
2010527181.tif 000205
の第ｎの要素であり、Λｉｊ（ｍ）［ｎ］は信頼領域ベクトル
【数２４】
2010527181.tif 000206
の第ｎの要素である
設定すること
をさらに含む請求項６に記載の方法。
【請求項８】
前記シャドーインパルス応答ベクトルを再帰的に計算することは、
【数２５】
2010527181.tif 000207
によって与えられる再帰式を利用することであって、ただし、
【数２６】
2010527181.tif 000208
はシャドーミスマッチベクトルであり、
【数２７】
2010527181.tif 000209
はｍ−１によって特定される先行する決定期間に関連付けられるシャドーインパルス応答ベクトルであり、
μｉｊ，ｍはシャドー更新ステップサイズである
利用すること
をさらに含む請求項５に記載の方法。
【請求項９】
前記シャドーミスマッチベクトルを計算することは、
【数２８】
2010527181.tif 000210
によって与えられる再帰式を利用することであって、
ただし、
ｍは決定期間に関連付けられる整数であり、
Ｌはベクトル成分の数であり、
ＩＦＦＴは逆フーリエ変換演算子であり、
ＴｒＬはサイズＬの打切り演算子であり、
【数２９】
2010527181.tif 000211
は音声信号に対応する周波数領域ベクトルであり、
【数３０】
2010527181.tif 000212
は周波数領域シャドーエラーベクトルであり、
【数３１】
2010527181.tif 000213
であり、ここで以下のことが成り立ち、
【数３２】
2010527181.tif 000214
は
【数３３】
2010527181.tif 000215
によって与えられる周波数領域ベクトル
【数３４】
2010527181.tif 000216
の平均スペクトルの成分であり、
【数３５】
2010527181.tif 000217
は
【数３６】
2010527181.tif 000218
によって与えられる周波数領域シャドーエラーベクトル
【数３７】
2010527181.tif 000219
の平均スペクトルの成分であり、
λは安定化定数であり、
【数３８】
2010527181.tif 000220
であり、
Ｍｉ，ｘ２（ｍ）は前記デジタル信号に関連付けられる最大エネルギーであり、
Ｍｊ，ｙ２（ｍ）は前記マイクロフォンデジタル信号に関連付けられる最大エネルギーである
利用することをさらに含む請求項８に記載の方法。
【請求項１０】
前記シャドー更新ステップサイズμｉｊ，ｍは、μ＿ｓｃａｌｅｉｊ（ｍ）が＞１であるときに、
μｉｊ，ｍ＝０．２を設定し、
そうでない場合には、
【数３９】
2010527181.tif 000221
を設定することであって、ただし、
【数４０】
2010527181.tif 000222
であり、
【数４１】
2010527181.tif 000223
は前記シャドーミスマッチベクトル
【数４２】
2010527181.tif 000224
の第ｎの要素であり、Λｉｊ（ｍ）［ｎ］は信頼領域ベクトル
【数４３】
2010527181.tif 000225
の第ｎの要素であり、
【数４４】
2010527181.tif 000226
である
設定すること
をさらに含む請求項８に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は音響エコーキャンセルに関し、詳細には、マルチチャネル音声通信システムにおいて音響エコーを低減するための方法およびシステムに関する。
【背景技術】
【０００２】
インターネット、電子プレゼンテーション、ボイスメールおよび音声会議通信システムのような通信媒体への関心が高まりつつあることによって、高忠実度の音声技術および通信技術に対する要求が増大している。
現在、個人および企業が、これらの通信媒体を用いて効率性および生産性を高め、同時にコストおよび複雑性を低減している。
たとえば、音声会議通信システムによれば、ヘッドセットを装着することなく、またはハンドヘルド通信デバイスを使用することなく、第１の場所にいる一人または複数人の個人が、全二重通信線を通じて概ねリアルタイムに、他の場所にいる一人または複数人の個人と同時に会話できるようになる。
【０００３】
多くの音声会議通信システムにおいて、音声信号が大量のデータを搬送し、広範囲の周波数を利用する。
最新の音声会議通信システムは、感知可能な歪み、背景雑音および他の望ましくない音声アーティファクト(artifact)を含まない、「モノチャネル」とも呼ばれる単一のチャネルを介して音声信号の明瞭な伝送を提供しようと試みる。
１つの一般的なタイプの望ましくない音声アーティファクトは音響エコーである。
音響エコーは、１つの場所においてマイクロフォンおよびスピーカが結合することに起因して、伝送された音声信号が音声会議通信システムを通じてループするときに生じる可能性がある。
図１は、１つの例示的な２地点間モノチャネル音声会議通信システム１００の概略図を示す。
音声会議通信システム１００は、近い部屋１０２および遠い部屋１０４を含む。
近い部屋１０２において生成される声のような音がマイクロフォン１０６によって検出され、遠い部屋１０４において生成される音がマイクロフォン１０８によって検出される。
マイクロフォン１０６および１０８はそれぞれ、音をｘ（ｔ）およびｙ（ｔ）によって表される信号に変換する。
ただし、ｔは時間を表す。
【０００４】
マイクロフォン１０６は、近い部屋１０２において生成される多くの異なる音を検出する可能性があり、その中にはスピーカ１１４によって出力される音が含まれる。
マイクロフォン１０６によって生成されるアナログ信号は以下の式によって表される。
ｙ（ｔ）＝ｓ（ｔ）＋ｆ（ｘ（ｔ））＋ν（ｔ）
ただし、
ｓ（ｔ）は、近い部屋１０２において生成される音を表すアナログ信号であり、
ν（ｔ）は、マイクロフォンまたは通信チャネル１１０において外乱によって引き起こされる雑音または外来信号を表すアナログ信号であり、たとえば、それはスピーカ１１６から出力される耳障りなブーンといううなり音を生成する場合があり、
ｆ（ｘ（ｔ））は、音響エコーを表すアナログ信号である。
音響エコーｆ（ｘ（ｔ））は、近い部屋１０２における音響的な伝搬遅延、並びに通信チャネル１１０および１１２を介するアナログ信号ｘ（ｔ）のラウンドトリップ伝送遅延の両方に起因する。
アナログ信号ｙ（ｔ）によって生成される音は、遠い部屋１０４内のスピーカ１１６から出力される。
信号ｙ（ｔ）の振幅における増幅または利得、および音響エコーｆ（ｘ（ｔ））の大きさによっては、遠い部屋１０４においてマイクロフォン１０８に話しかけている人が、信号ｓ（ｔ）によって搬送される音のほかに、音響エコーｆ（ｘ（ｔ））によって生成される音の結果としてスピーカ１１６から生じるエコーまたは耳障りな高ピッチのハウリング音を聞く場合がある。
音声会議通信システムの設計者および製造者は、種々の方法で音響エコーを補償しようと試みてきた。
１つの補償技法は、音響エコーを低減するフィルタリングシステムを利用する。
典型的には、フィルタリングシステムは、音声信号受信場所における条件変化に適応する適応フィルタを利用する。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
近年になって、音声会議の使用感を向上させることを目指して、マルチチャネル音声通信システムを開発することへの関心が高まってきた。
これらのシステムは、第１の場所および第２の場所において、複数のマイクロフォンおよびスピーカを用いる。
しかしながら、それぞれの場所において複数のマイクロフォンおよびスピーカを用いることによって、数百ミリ秒の通信時間だけ隔てて音響エコーが引き起こされ、それが、マルチチャネル音声会議通信システムを開発することへの障害になっている。
たとえば、設計者および製造者は、スピーカを励振する前に、無相関の励振信号に対して非線形関数を利用する方法を開発した。
しかしながら、この非線形性は最終的に、空間的な音声使用感を劣化させる。
音声会議通信システムの設計者、製造者および使用者は、リアルタイムに音声信号から音響エコーを確実に除去することができ、且つ音声信号受信場所における条件変化に迅速的に適応することができるマルチチャネル音声会議通信方法およびシステムが必要であることを認識している。
【課題を解決するための手段】
【０００６】
本発明の種々の実施形態は、適応リアルタイム音響エコーキャンセル方法およびシステムを対象とする。
本発明の１つの方法実施の形態は、第１の場所から第２の場所に伝送される複数のマイクロフォンデジタル信号において音響エコーを低減することを対象とする。
第１の場所は、複数のスピーカおよび複数のマイクロフォンを備え、該複数のマイクロフォンのそれぞれは、第１の場所において生成される音および該複数のスピーカによって生成される音響エコーを含む、複数のマイクロフォンデジタル信号のうちの１つを生成する。
本方法は、近似インパルス応答を求めることを含み、各近似インパルス応答は、複数のマイクロフォンのそれぞれと複数のスピーカのそれぞれとの間の１つのエコーパスに対応する。
本方法は、複数の近似音響エコーを求めることも含み、各近似音響エコーは、複数のスピーカのうちの１つによって再生されるデジタル信号を多数の近似インパルス応答で畳み込むことに対応する。
マイクロフォンデジタル信号のうちの少なくとも１つにおける音響エコーが、対応する近似音響エコーに基づいて低減される。
【図面の簡単な説明】
【０００７】
【図１】１つの例示的な２地点間音声会議通信システムの概略図である。
【図２Ａ】アナログ信号からデジタル信号への変換を示す図である。
【図２Ｂ】アナログ信号からデジタル信号への変換を示す図である。
【図２Ｃ】アナログ信号からデジタル信号への変換を示す図である。
【図３】スピーカのインパルス励振のプロット、およびそのインパルス励振に応答して結果としてマイクロフォンの出力において生じる部屋全体のインパルス応答のプロットを示す図である。
【図４Ａ】入力デジタル信号をマイクロフォンインパルス応答で畳み込むことによってマイクロフォンから出力されるデジタル信号を求める例を示す図である。
【図４Ｂ】入力デジタル信号をマイクロフォンインパルス応答で畳み込むことによってマイクロフォンから出力されるデジタル信号を求める例を示す図である。
【図４Ｃ】入力デジタル信号をマイクロフォンインパルス応答で畳み込むことによってマイクロフォンから出力されるデジタル信号を求める例を示す図である。
【図４Ｄ】入力デジタル信号をマイクロフォンインパルス応答で畳み込むことによってマイクロフォンから出力されるデジタル信号を求める例を示す図である。
【図５】畳み込み済みデジタル信号を得るために、デジタル信号を５成分インパルス応答で畳み込むことを示す図である。
【図６】本発明の一実施形態を表す混合マルチチャネル音声通信システムのブロック図である。
【図７】本発明の一実施形態による、図６に示されるスピーカとマイクロフォンとの間の音響結合を示す図である。
【図８】本発明の一実施形態による、マルチチャネルエコー制御ユニットによって実行される音響エコーキャンセルのブロック図である。
【図９】本発明の一実施形態による、近似インパルス応答ベクトルに関連付けられる決定期間および決定エポックのプロットを示す図である。
【図１０】第１の場所から第２の場所に伝送される複数の音声信号において音響エコーを低減するための本発明の一実施形態を表す制御フロー図である。
【図１１Ａ】本発明の一実施形態を表す、図１０のステップ１００８において呼び出されるルーチン「制御状態を求める」のための制御フロー図である。
【図１１Ｂ】本発明の一実施形態を表す、図１０のステップ１００８において呼び出されるルーチン「制御状態を求める」のための制御フロー図である。
【図１１Ｃ】本発明の一実施形態を表す、図１０のステップ１００８において呼び出されるルーチン「制御状態を求める」のための制御フロー図である。
【図１２】本発明の一実施形態を表す、図１０のステップ１００９において呼び出されるルーチン「残留エコー抑圧」ための制御フロー図である。
【図１３Ａ】本発明の一実施形態を表す、図１０のステップ１０１５において呼び出されるルーチン「
【数１】
2010527181.tif 000003
を求める」のための制御フロー図である。
【図１３Ｂ】本発明の一実施形態を表す、４つのタイプの制御状態の場合の増幅エネルギー対時間の１つのプロットを示す図である。
【図１３Ｃ】本発明の一実施形態を表す、４つのタイプの制御状態の場合の増幅エネルギー対時間の１つのプロットを示す図である。
【図１４Ａ】本発明の一実施形態を表す、図１４のステップ１３０４において呼び出されるルーチン「
【数２】
2010527181.tif 000004
を計算する」のための制御フロー図である。
【図１４Ｂ】本発明の一実施形態を表す、探索空間内に配置される超楕円領域の２次元の図である。
【図１５】本発明の一実施形態を表す、図１４のステップ１４０４において呼び出されるルーチン「
【数３】
2010527181.tif 000005
を求める」のための制御フロー図である。
【図１６】本発明の一実施形態を表す、図１４のステップ１４０６において呼び出されるルーチン「μｉｊ，ｍを求める」のための制御フロー図である。
【図１７】本発明の一実施形態を表す、図１４のステップ１４０７において呼び出されるルーチン「γｉｊ，ｍを求める」のための制御フロー図である。
【発明を実施するための形態】
【０００８】
本発明の種々の実施形態は、マルチチャネル音声通信システムにおけるリアルタイム適応音響エコーキャンセル方法を対象とする。
詳細には、これらの方法は、マルチチャネル音声通信システムを介して第１の場所と第２の場所との間で伝送される複数の音声信号内の音響エコーを低減する。
本発明の通信システム実施形態は、電子プレゼンテーション、ボイスメール、音声会議通信システム、または第１の場所と第２の場所との間で音声信号を伝送することができる任意の他のタイプの通信システムとすることができる。
第１の場所および第２の場所において、複数のマイクロフォンおよびスピーカが用いられる。
本発明の方法実施形態は、マイクロフォンとスピーカとの間の音響結合毎に制御状態を計算する。
その制御状態は、以下の４つのタイプの通信、（１）第１の場所からのみ音が伝送される；（２）第２の場所からのみ音が伝送される；（３）第１の場所と第２の場所との間で同時に音が伝送される；および（４）第１の場所と第２の場所との間で音が伝送されない、のうちの１つのタイプを特徴付ける。
その後、その方法は、第１の場所に配置されるマイクロフォンによって検出される信号毎に、制御状態に基づいて近似音響エコーを計算する。
その方法は、第２の場所から第１の場所に伝送されるデジタル信号のそれぞれから、対応する計算された近似音響エコーを減算し、それらの信号が第１の場所において出力される前に、これらの信号の利得を調整する。
【０００９】
本発明の実施形態は本来は数学的であり、このため、多数の式およびグラフ表示を参照しながら下記で説明される。
音響エコーキャンセルの技術分野の熟練者にとっては、本発明の実施形態を十分に説明すると共に特徴付けるのに数式だけで十分であるかもしれないが、以下の論考に含まれる、さらに図式的で問題志向の例、および制御フロー図による手法は、本発明が種々の経歴を有する読者にとって理解しやすいように、本発明の多くの実施形態のうちの１つだけを例示するように意図される。
本発明の種々の実施形態の説明を理解するのを助けるために、最初のサブセクションにおいて、デジタル信号、インパルス応答および畳み込みの概説が提供される。
第２のサブセクションにおいて、本発明の実施形態が提供される。
【００１０】
デジタル信号、インパルス応答および畳み込みの概説：
このセクションは、モノチャネル音声伝送システムにおけるデジタル信号、インパルス応答および畳み込みの概括的な説明を提供するように意図される。
その後、このサブセクションにおいて導入される概念を用いて、次のサブセクションにおいて下記で説明されるマルチチャネル音響エコー実施形態における音声チャネルのそれぞれが説明される。用語「マイクロフォン」は、音を信号に変換する変換器または任意の適切なデバイスを指している。
「スピーカ」は、信号を音に変換することができる任意の適切なデバイスを指している。
【００１１】
マイクロフォンによって受信される音は、時間依存性の、絶えず変化する電圧を含むアナログ信号に変換される。
デジタルコンピュータを用いてアナログ信号を処理するために、そのアナログ信号は最初に、アナログ信号に含まれる不可欠な情報を最小限に変更したデジタル信号に変換される。
デジタル信号は、電子的に、磁気的に、または光学的に格納することができ、コンピュータプログラム内に符号化される論理演算を用いて処理することができる。
【００１２】
図２Ａ〜図２Ｃは、アナログ信号のデジタル信号への変換を示す。
図２Ａおよび図２Ｂでは、横軸２０２のような横軸は時間を表し、縦軸２０４のような縦軸は、ボルト単位のアナログ信号振幅を表す。
図２Ａは、時間依存性の、絶えず変化するアナログ信号ｘ（ｔ）２０６のプロットである。
アナログ信号ｘ（ｔ）２０６は最初に、離散的なサンプリング時刻において、アナログ信号ｘ（ｔ）の振幅を測定することによってサンプリングされる。
アナログ信号に含まれる不可欠な情報が失われるのを防ぐために、サンプリング時刻間の持続時間は一般的に、連続したサンプリング時刻間でアナログ信号がほとんど変化しないほど十分に短くなるように選択される。
図２Ｂは、図２Ａ内のアナログ信号２０６をサンプリングすることによって得られるサンプリング済み信号２０８のプロットである。
サンプリング時間は数十分の１秒であり、サンプリング済み信号２０８は、サンプリング時刻間で一定の信号振幅を仮定することによって、ステップ関数として近似される。
たとえば、定振幅領域２１０は、サンプリング時刻０．２秒と０．３秒との間で−１．９ボルトの一定値を表す。
【００１３】
効率的に、且つ都合よくデジタル信号を処理するために、時間および大きさの両方の値が整数であることが望ましい。
それゆえ、ステップ関数内の各ステップの振幅およびサンプリング時刻を表す整数値を生成するために、各定振幅領域の値に第１の定数を乗算することによって、且つサンプリング時刻に第２の定数を乗算することによって、整数符号化されたデジタル信号が生成される。
整数値化されたサンプリング時刻は「時刻サンプル」と呼ばれ、整数値化された振幅は「デジタル振幅」と呼ばれる。
結果として生成されたデジタル信号は、ｘ［ｎ］によって関数で表すことができる。
ただし、ｎは独立変数であり、時刻サンプル領域を表す。
図２Ｃは、図２Ｂ内のサンプリング済み信号２０８から得られるデジタル信号のプロットである。
図２Ｃでは、横軸２１２は、時刻サンプル領域であり、縦軸２１４は、デジタル信号軸である。
グラフ内の各点は、スケールされたサンプリング時刻におけるデジタル信号のスケールされた振幅を表す量子化された値を表す。
たとえば、座標（２，−１９）の点ｘ［２］２１６は、図２Ｂのステップ２１０を表す。
【００１４】
デジタル信号ｘ［ｎ］は、一般的に、一連のインパルスと見なすことができ、各インパルスは固有の成分に対応する。
表記ｘ［ｎ］は、デジタル信号の「成分」と呼ばれるデジタル信号の単一のインパルスを表すために用いることもできる。
ただし、ｎは特定の時刻サンプルを表す。
各成分は、単一の時刻サンプルにおける振幅を表す単一の値を除いて全て０のサンプル値を含む信号であり、それは数学的には以下の式によって表される。
ｘ［ｎ］＝ｄδ［ｎ−ｐ］
ただし、
ｄはインパルスの振幅、すなわち強さを表す整数倍率であり、
ｐは時刻サンプルであり、
δは以下の式によって定義されるδ関数である。
【００１５】
【数４】
2010527181.tif 000006
【００１６】
たとえば、図２Ｃでは、成分ｘ［０］２１８は１０δ［ｐ］に等しく、成分ｘ［２］２１６は−１９δ［２−ｐ］に等しい。
言い換えると、デルタ関数δ［ｎ−ｐ］内のｐは時刻サンプルシフトを表し、ｎ−ｐは時刻サンプルｎに対する時刻サンプルを表す。
【００１７】
デジタルインパルス応答ｈ［ｎ］は、マイクロフォンへの入力が単位インパルスδ［ｎ］であるときにマイクロフォンから出力されるデジタル信号である。
ただし、ｐは「０」であり、ｄは「１」に等しい。
マイクロフォンのインパルス応答は、非常に持続時間が短い音のインパルスをマイクロフォンに加えて、マイクロフォンによって出力される信号を測定することによって求めることができる。
マイクロフォンのインパルス応答は、以下のようにベクトルによって表すこともできる。
【００１８】
【数５】
2010527181.tif 000007
【００１９】
ただし、
ｈｎ［・］はインパルス応答成分であり、
Ｌはインパルス応答を構成する成分の数である。
【００２０】
図３は、インパルスｘ［ｎ］のプロット、およびインパルスｘ［ｎ］に応答して生成される部屋全体のインパルス応答ｈ［ｎ］のプロットである。
インパルス応答ｈ［ｎ］は、スピーカによって生成される音インパルス、および室内で反射され、マイクロフォンによって受信されるインパルスの音を含む。
図３において、インパルスプロット３０２は、仮想的なマイクロフォン３０４に入力されるインパルスｘ［ｎ］を表す。
インパルスｘ［ｎ］３０２は、ｎ＝０における単一の０でない点３０６を除いて全て０を含み、それはｄδ［ｎ−ｐ］によって表される。
この場合、ｄは「１」に等しく、ｐは「０」に等しいので、インパルスはδ［ｎ］によって表すことができる。
インパルス３０２に応答して、マイクロフォン３０４は、インパルス応答プロット３０８によって表されるインパルス応答ｈ［ｎ］を出力する。
インパルス応答３０８は、点３１０〜３１２によって表される３つの０でないデジタル信号を除いて全て０を含む。
１つのインパルスへの実際のデジタルインパルス応答は典型的には、図３に示されるように、そのインパルス内に含まれる数よりも多くの数の０でない成分を含む。
インパルス応答３０８は、３成分ベクトルによって表すことができる。
【００２１】
【数６】
2010527181.tif 000008
【００２２】
典型的には、インパルス応答を求めるために用いられるインパルスは、スピーカによって部屋の中に出力され、マイクロフォンによって検出される。
スピーカ、部屋およびマイクロフォンは「システム」と呼ばれ、関連付けられるインパルス応答は「システムインパルス応答」と呼ぶことができる。
システムのスピーカによって生成されるデジタル信号は、スピーカによって生成される音を表すデジタル信号ｘ［ｎ］をシステムのインパルス応答ｈ［ｎ］で畳み込むことによって求められる。
畳み込み済みのデジタル信号はｘｃ［ｎ］によって表される。
図４Ａ〜図４Ｄは、システムから出力されるデジタル信号ｘｃ［ｎ］を生成するために、仮想的なスピーカによって生成される３成分デジタル信号ｘ［ｎ］をインパルス応答ｈ［ｎ］で畳み込む一実施例をグラフで与える。
図４Ａは、仮想的なシステムによって生成される２成分インパルス応答例ｈ［ｎ］４０２のプロットである。
インパルス応答ｈ［ｎ］は、時間と共に変化しないものと仮定される。
【００２３】
図４Ｂは、時刻サンプル「０」におけるデジタル信号ｘ［ｎ］の第１の成分のプロットである。
第１の成分は、スケールされたインパルス２δ［０］４０４によって表される。
システムは、インパルス２δ［ｎ］４０４に応答して、時刻サンプル「０」において第１の成分４０６を含むインパルス応答ｈ［ｎ］を出力し、後の時刻サンプル「１」において第２の成分４０８を出力する。
インパルス２δ［ｎ］４０４に対するインパルス応答は基本的に、インパルス倍率「２」を乗算した成分を有する、図４Ａのインパルス応答である。
【００２４】
図４Ｃは、後の時刻サンプル「１」においてシステムに入力されるデジタル信号ｘ［ｎ］の第２の成分のプロットである。
第２の成分は、インパルスδ［ｎ−１］４１０によって表される。
システムは、インパルスδ［ｎ−１］４１０に応答して、時刻サンプル「１」において第３の成分４１２を含むインパルス応答を出力し、後の時刻サンプル「２」において第４の成分４１４を出力する。
インパルスδ［ｎ−１］４１０に対するインパルス応答は基本的に、「１」倍だけシフトした成分時刻サンプルを有する、図４Ａのインパルス応答である。
第２の成分４０８および第３の成分４１２は同じ時刻サンプル「１」において生じるので、時刻サンプル「１」における出力である第５の成分４１６を得るために、成分４０８および４１２の振幅は加算される。
【００２５】
図４Ｄは、時刻サンプル「２」においてシステムに入力されるデジタル信号ｘ［ｎ］の第３の成分のプロットである。
第２の成分は、インパルス−２δ［ｎ−２］４１８によって表される。
システムは、インパルス−２δ［ｎ−２］に応答して、時刻サンプル「２」において第６の成分４２０を含むインパルス応答を出力し、後の時刻サンプル「３」において第７の成分４２２を出力する。
インパルス−２δ［ｎ−２］４１８に対するインパルス応答は基本的に、倍率「−２」を乗算した成分、および「２」倍だけシフトした成分時刻サンプルを有する、図４Ａのインパルス応答である。
第５の成分４１４および第６の成分４２０は同じ時刻サンプル「２」において生じるので、時刻サンプル「２」における出力である第８の成分４２４を与えるために、成分４１４および４２０の振幅は加算される。
【００２６】
３成分入力デジタル信号ｘ［ｎ］を２成分インパルス応答ｈ［ｎ］で畳み込むことによって、４成分デジタル信号ｘｃ［ｎ］が出力されることに留意されたい。
一般的に、Ｎ成分入力デジタル信号ｘ［ｎ］をＬ成分インパルス応答ｈ［ｎ］で畳み込むことによって、Ｎ＋Ｌ−１成分の畳み込み済みデジタル信号ｘｃ［ｎ］が与えられる。
【００２７】
図４Ｄにおける畳み込み済みデジタル信号ｘｃ［ｎ］４２６の成分は、インパルス応答の２成分ベクトル表現と、以下の式によって与えられるデジタル信号ｘ［ｎ］の各成分に対応する２成分ベクトルとのスカラー積またはドット積を計算することによって求めることもできる。
【００２８】
【数７】
2010527181.tif 000009
【００２９】
列ベクトル
【００３０】
【数８】
2010527181.tif 000010
【００３１】
および
【００３２】
【数９】
2010527181.tif 000011
【００３３】
内の成分の順序は、時間順序において互いに逆である。
たとえば、列ベクトル
【００３４】
【数１０】
2010527181.tif 000012
【００３５】
において、第１の成分ｈ［０］が第２の成分ｈ［１］よりも時間的に前に現れ、一方、列ベクトル
【００３６】
【数１１】
2010527181.tif 000013
【００３７】
において、第１の成分ｘ［ｎ］が第２の成分ｘ［ｎ−１］よりも時間的に後に現れる。
負の値を有する時刻サンプルに対応するベクトル
【００３８】
【数１２】
2010527181.tif 000014
【００３９】
の成分は値「０」を割り当てられることに留意されたい。
たとえば、図４Ｄの第１の成分４０６は、以下の式によって計算される。
【００４０】
【数１３】
2010527181.tif 000015
【００４１】
ただし、成分ｘ［−１］は値「０」を割り当てられ、上付き文字Ｔは、行列の転置演算を特定する。
第２の成分４１６、第３の成分４２４および第４の成分４２２は以下のように計算される。
【００４２】
【数１４】
2010527181.tif 000016
【００４３】
一般的に、畳み込み済みデジタル信号の成分ｘｃ［ｎ］は数学的に以下の式によって求められる。
【００４４】
【数１５】
2010527181.tif 000017
【００４５】
ただし、「＊」は畳み込みを表す記号であり、
【００４６】
【数１６】
2010527181.tif 000018
【００４７】
である。
畳み込み済み信号成分ｘｃ［ｎ］を計算するために、デジタル信号ｘ［ｎ］の成分のうちの先行して得られたＬ個のデジタル信号成分が用いられ、負の値を有する時刻サンプルに対応するベクトル
【００４８】
【数１７】
2010527181.tif 000019
【００４９】
の成分は値「０」を割り当てられる。
畳み込みは以下のように表すこともできる。
【００５０】
【数１８】
2010527181.tif 000020
【００５１】
図５は、プロット５０４内に表示される畳み込み済みデジタル信号を得るために、プロット５０２内に表示されるデジタル信号を５成分インパルス応答で畳み込むことを示す。
プロット５０２および５０４において、横軸５０６のような横軸は時刻サンプル軸であり、縦軸５０８のような縦軸はデジタル数軸である。
プロット５０４内の畳み込み済みデジタル信号サンプル５１０は、図５に示されるように得られ、数学的には以下の式によって表される。
【００５２】
【数１９】
2010527181.tif 000021
【００５３】
上述した畳み込みの例では、インパルス応答は、時間領域内の各時刻サンプルにおいて一定のままであるものと仮定される。
しかしながら、実際には、システムのインパルス応答は多くの場合に、部屋の条件に依存する。
言い換えると、システムのインパルス応答は、部屋の条件が変化するのに応じて、経時的に変化する場合がある。
たとえば、部屋内で音が生成されていないシステムのインパルス応答は、後に部屋内で音が生成される時点の同じシステムのインパルス応答とは異なる。
【００５４】
本発明の実施形態：
本発明の種々の実施形態は、第１の場所と第２の場所との間で伝送される複数の音声信号において音響エコーを低減するための、適応的で、リアルタイムの音響エコーキャンセル方法およびシステムを対象とする。
音響エコーキャンセル方法およびシステムの実施形態の概説が最初に説明され、その後、本発明の多くの実施形態のうちの１つが説明される。
本発明の実施形態は、多数のブロック図、制御フロー図、数式およびグラフ表示を参照しながら説明される。
【００５５】
１．混合マルチチャネル音声通信システムにおける音響エコーキャンセルの概説：
図６は、本発明の一実施形態を表す、混合マルチチャネル音声通信システム６００のブロック図を示す。
混合マルチチャネル音声通信システム６００は、マルチチャネルエコー制御ユニット（「ＭＥＣＵ」）６０２と、近い部屋１０２内に配置されるＩ個のスピーカ６０４およびＪ個のマイクロフォン６０６とを備える。
ただし、ＩおよびＪはそれぞれ、スピーカの全数およびマイクロフォンの全数を表す自然数である。
遠い部屋１０４において生成されるデジタル信号ｘ１［ｎ］，...，ｘｌ［ｎ］がＭＥＣＵ６０２に伝送され、近い部屋１０２内に配置されるスピーカ６０４を通じて同時に再生される。
マイクロフォン６０６が、近い部屋１０２内に位置する人々、音声デバイスおよび他の雑音発生源によって生成された音を検出し、且つスピーカ６０４から生じる音によって生成される残響音またはエコーを検出する。
スピーカ６０４とマイクロフォン６０６との間の音響結合が、図７を参照しながら下記で説明される。
マイクロフォン６０６によって検出された音は、Ｊ個のマイクロフォンデジタル信号ｙ１［ｎ］，...，ｙＪ［ｎ］の形でＭＥＣＵ６０２に伝送される。
図８を参照しながら下記でさらに詳細に説明されるＭＥＣＵ６０２は、Ｊ個の処理済みデジタル信号ｒ１［ｎ］，...，ｒＪ［ｎ］を得るために、マイクロフォンデジタル信号ｙ１［ｎ］，...，ｙＪ［ｎ］を処理する。
それらの処理済みデジタル信号は、音響エコーおよび背景雑音が概ねない信号であり、遠い部屋１０４に伝送される。
【００５６】
本発明の以下の説明では、表記｛・｝Ｎは、Ｎ個のデジタル信号から成る集合を表す簡潔な方法として導入される。
ただし、Ｎは集合内の要素の数である。
たとえば、デジタル信号ｘ１［ｎ］，...，ｘＩ［ｎ］は、代わりに、｛ｘｉ［ｎ］｝Ｉによって表すこともできる。
【００５７】
任意の所与の時刻サンプルｎにおいて、近い部屋１０２内に配置される各スピーカと各マイクロフォンとの間に結合が存在する場合がある。
この結合は、「エコーパス」と呼ばれ、第ｉのスピーカおよび第ｊのマイクロフォンの音響結合毎に、時間と共に変化する実数値インパルス応答ベクトル
【００５８】
【数２０】
2010527181.tif 000022
【００５９】
が存在する。
ただし、ｉ∈｛１，...，Ｉ｝はスピーカのインデックス  (index)であり、ｊ∈｛１，...，Ｊ｝はマイクロフォンのインデックスである。
図７は、本発明の一実施形態を表す、図６に示される、スピーカ６０４とマイクロフォン６０６との間の音響結合を示す。
図７に示されるように、スピーカおよびマイクロフォンを結合するエコーパスのうちの１６個が線によって表されており、これらの１６個のエコーパスのうちの４個が対応するインパルス応答ベクトル
【００６０】
【数２１】
2010527181.tif 000023
【００６１】
をラベル付けされている。
たとえば、時刻サンプルｎにおいて、第２のスピーカ７０４と第１のマイクロフォン７０６との間のエコーパス７０２に関連付けられるインパルス応答ベクトルは
【００６２】
【数２２】
2010527181.tif 000024
【００６３】
である。
第ｉのスピーカを通じて再生され、第ｊのマイクロフォンによって検出される特定のデジタル信号ｘｉ［ｎ］の残響バージョンまたはエコーは、
【００６４】
【数２３】
2010527181.tif 000025
【００６５】
によって表される。
第ｊのマイクロフォンによって検出されるデジタル信号｛ｘｉ［ｎ］｝Ｉに関連付けられる全エコーは以下の式によって与えられる。
【００６６】
【数２４】
2010527181.tif 000026
【００６７】
図６および図７に示されるように、マイクロフォン６０６はＪ個のマイクロフォンデジタル信号｛ｘｊ［ｎ］｝ＪをＭＥＣＵ６０２に伝送する。
ただし、各マイクロフォンデジタル信号は以下の式によって特徴付けられ、
ｙｊ［ｎ］＝ｓｊ［ｎ］＋ｅｊ［ｎ］
ｓｊ［ｎ］は、近い部屋１０２内に位置する人々、音声デバイスおよび他の雑音発生源によって生成された局所音源信号を表す。
【００６８】
本発明の方法およびシステム実施形態は、マイクロフォンデジタル信号毎に、局所音源信号｛ｓｊ［ｎ］｝Ｊに対して大きな歪みを引き起こすことなく、対応するマイクロフォンデジタル信号｛ｙｊ［ｎ］｝Ｊから、音響エコー｛ｅｊ［ｎ］｝Ｊを概ねキャンセルすることを対象とする。
図８は、本発明の一実施形態を表す、図６に示されるＭＥＣＵ６０２によって実行される音響エコーキャンセルのブロック図を示す。
ＭＥＣＵ６０２は、入力チャネル８０４〜８０６およびマイクロフォンチャネル８１０〜８０８を推定および追跡ブロック８０２に接続する矢印によって示されるように、デジタル信号｛ｘｉ［ｎ］｝Ｉおよびマイクロフォンデジタル信号｛ｙｊ［ｎ］｝Ｊを受信する推定および追跡ブロック８０２を含む。
推定および追跡ブロック８０２は、近似インパルス応答ベクトルを生成して、
【００６９】
【数２５】
2010527181.tif 000027
【００７０】
を生成し、それに応じて、それらは、Ｊ個の適応フィルタにおいてマイクロフォンデジタル信号｛ｙｊ［ｎ］｝Ｊから減算され、それらのフィルタのうちの３つが破線の枠８１２〜８１４によって表される。
しかしながら、時刻サンプルｎ毎に近似インパルス応答ベクトル
【００７１】
【数２６】
2010527181.tif 000028
【００７２】
を生成するのではなく、本発明の方法実施形態は、インパルス応答ベクトル
【００７３】
【数２７】
2010527181.tif 000029
【００７４】
が、「コヒーレンス時間」と呼ばれる多数の時刻サンプルＮｃにわたってほとんど変化しないという仮定に基づく。
言い換えると、インパルス応答ベクトル毎に、Ｎｃ個の時刻サンプルにわたる最大偏差は、以下の式によって制限される。
【００７５】
【数２８】
2010527181.tif 000030
【００７６】
ただし、Ｅは、インパルスに応答してマイクロフォンによって生成される最大増幅エネルギーまたは利得を表す。
結果として、本発明の方法は、時刻サンプルｎ毎に近似インパルス応答ベクトルの集合
【００７７】
【数２９】
2010527181.tif 000031
【００７８】
を求める代わりに、Ｎｄ個の時刻サンプル毎の開始時点において、
【００７９】
【数３０】
2010527181.tif 000032
【００８０】
によって表される近似インパルス応答ベクトルの集合を計算する。
ただし、Ｎｄ＜＜ＮＣであり、ｍは正の整数である。
Ｎｄ個の時刻サンプルに伴う時間間隔は「決定期間」と呼ばれ、決定期間の開始時点は「決定エポック」と呼ばれる。
【００８１】
図９は、本発明の実施形態を表す、近似インパルス応答ベクトルに関連付けられる決定期間および決定エポックのプロットを示す。
図９において、横軸９０２は時間軸を表し、構造９０４〜９０７はデジタル信号を表しており、エコーパスのためのインパルス応答を近似する。
縦方向の各線分は時刻サンプルに関連付けられるデジタル信号またはインパルス応答を表す。
詳細には、構造９０４内の縦方向の線分は、ｎ＋１個の連続したインパルス応答ベクトル
【００８２】
【数３１】
2010527181.tif 000033
【００８３】
を表し、構造９０５内の縦方向の線分は、ｎ＋１個のマイクロフォンデジタル信号ｙｊ［ｎ］を表し、構造９０６内の縦方向の線分は、ｎ＋１個のデジタル信号ｘｉ［ｎ］を表す。
図８において、決定期間は６時刻サンプルから構成され、それぞれの開始時点は破線９０８〜９１０のうちの１つによって特定される。
本発明の方法実施形態によれば、推定および追跡ブロック８０２は、各決定期間の開始時点において、近似インパルス応答ベクトルの新たな集合
【００８４】
【数３２】
2010527181.tif 000034
【００８５】
を生成する。
たとえば、決定期間９１２中に、推定および追跡ブロック８０２が、決定期間９１２のための残響デジタル信号
【００８６】
【数３３】
2010527181.tif 000035
【００８７】
を求めるために用いられる近似インパルス応答ベクトル
【００８８】
【数３４】
2010527181.tif 000036
【００８９】
を生成するものと仮定する。
次の決定期間９１４の開始時点９０８において、推定および追跡ブロック８０２は、新たな近似インパルス応答ベクトル
【００９０】
【数３５】
2010527181.tif 000037
【００９１】
を生成し、その後、その新たな近似インパルス応答ベクトルを用いて、決定期間９１４の次のＮｄ個の時刻サンプルのための残響デジタル信号
【００９２】
【数３６】
2010527181.tif 000038
【００９３】
が求められる。
一般的に、決定期間ｍＮｄの開始時点において、近似インパルス応答ベクトルの集合
【００９４】
【数３７】
2010527181.tif 000039
【００９５】
が、時間間隔［ｍＮｄ，（ｍ＋１）Ｎｄ−１］内の時刻サンプルｎ毎の近似インパルス応答ベクトルとして計算される。
【００９６】
図８に戻ると、適応フィルタ８１２〜８１４は、Ｊ個の適応フィルタのうちの最初の２つおよび最後のフィルタを表しており、該フィルタのそれぞれは、近似的な残響デジタル信号
【００９７】
【数３８】
2010527181.tif 000040
【００９８】
を得るために、デジタル信号｛ｘｉ［ｎ］｝Ｉを推定および追跡ブロック８０２によって生成される対応する近似インパルス応答ベクトル
【００９９】
【数３９】
2010527181.tif 000041
【０１００】
で畳み込むことを表す。
たとえば、適応フィルタ８１２は、デジタル信号｛ｘｉ［ｎ］｝Ｉを、近似インパルス応答ベクトル
【０１０１】
【数４０】
2010527181.tif 000042
【０１０２】
でそれぞれ畳み込むことを表しており、それは、近似的な残響デジタル信号
【０１０３】
【数４１】
2010527181.tif 000043
【０１０４】
を与える。
一般的に、第ｊの適応フィルタは、近似的な残響デジタル信号
【０１０５】
【数４２】
2010527181.tif 000044
【０１０６】
を得るために、デジタル信号｛ｘｉ［ｎ］｝Ｉを近似インパルス応答ベクトル
【０１０７】
【数４３】
2010527181.tif 000045
【０１０８】
でそれぞれ畳み込むことを表す。
【０１０９】
Ｊ個の適応フィルタのそれぞれに関連付けられる残響デジタル信号を加算することによって、Ｊ個の近似音響エコーから成る集合
【０１１０】
【数４４】
2010527181.tif 000046
【０１１１】
が生成される。
ただし、各ベクトルは以下の式によって与えられる。
【０１１２】
【数４５】
2010527181.tif 000047
【０１１３】
Ｊ個の近似音響エコー
【０１１４】
【数４６】
2010527181.tif 000048
【０１１５】
は、生成されるのに応じて、加算接合部８１６〜８１８のような加算接合部においてマイクロフォンデジタル信号｛ｙｊ［ｎ］｝Ｊのそれぞれから減算され、結果として、Ｊ個の制御済みデジタル信号
【０１１６】
【数４７】
2010527181.tif 000049
【０１１７】
が生成され、それらの信号の各要素は以下の式によって与えられる。
【０１１８】
【数４８】
2010527181.tif 000050
【０１１９】
その差
【０１２０】
【数４９】
2010527181.tif 000051
【０１２１】
は「残留エコー」と呼ばれる。
推定および追跡ブロック８０２によって実行される本発明の方法実施形態は、残留エコーを低減することを対象とする。
また、推定および追跡ブロック８０２は、制御済みデジタル信号
【０１２２】
【数５０】
2010527181.tif 000052
【０１２３】
のそれぞれの非線形処理も制御する。
たとえば、マイクロフォンチャネル８０８〜８１０内に非線形処理ブロック（「ＮＰＢ」）８２０〜８２２が配置されており、それらは、推定および追跡ブロック８０２によって実行されるＪ個の非線形処理のうちの３つを表す。
ＮＰＢは、Ｊ個の処理済みデジタル信号｛ｒｊ［ｎ］｝Ｊを生成するために、対応する制御済みデジタル信号によって搬送される背景雑音および任意の残留エコーを減衰させる。
【０１２４】
図６を参照しながら上述したように、ＭＥＣＵ６０２はＪ個の処理済みデジタル信号｛ｒｊ［ｎ］｝Ｊを生成し、それらは、音響エコーおよび背景雑音が概ねない遠い部屋１０４に伝送される。
【０１２５】
図６に示されるように、ＭＥＣＵ６０２は、近い部屋１０２の外に配置することができる。
実際に、本発明の特定の実施形態では、ＭＥＣＵ６０２は、隣の部屋に、同じ建物内の一室に、または近い部屋１０２から数十、さらには数千マイルも離れて位置する部屋内に配置することができる。
本発明の他の実施形態では、ＭＥＣＵ６０２は、近い部屋１０２内に配置することができる。
本発明の他の実施形態では、遠い部屋１０４から近い部屋１０２に伝送されるデジタル信号｛ｘｉ［ｎ］｝Ｉ内の音響エコーをキャンセルするために、第２のＭＥＣＵを備えることができる。
【０１２６】
ＩＩ．実施態様：
推定および追跡ブロック８０２は、近い部屋１０２と推定および追跡ブロック８０２との間で伝送される信号のための直流（「ＤＣ」）オフセット除去も含む場合がある。
ＤＣオフセットは、電気的な干渉によって引き起こされることが多い低周波の歪みである。
この電気的な干渉は、一定の電圧を生成し、それにより、スピーカから出力される音の中にクリック音およびポップ音を引き起こす可能性がある。
ＤＣオフセット除去は、以下のように、遠い部屋１０４において生成されるデジタル信号｛ｘｉ［ｎ］｝ＩのそれぞれにおけるＤＣオフセットを補正し、
ｘｉ［ｎ］＝ａｘｉ［ｎ−１］＋．５（１＋ａ）（ｘｉ，ｒｅｃ［ｎ］−ｘｉ，ｒｅｃ［ｎ−１］）
以下のように、近い部屋１０２において生成されるマイクロフォンデジタル信号｛ｙｊ［ｎ］｝ＪのそれぞれにおけるＤＣオフセットを補正する。
ｙｊ［ｎ］＝ａｙｊ［ｎ−１］＋．５（１＋ａ）（ｙｊ，ｍｉｃ［ｎ］−ｙｊ，ｍｉｃ［ｎ−１］）
ただし、ａは約０．９〜０．９９９９の範囲の定数である。
【０１２７】
図１０〜図１６および以下の論考において示される制御フロー図は、マイクロフォンデジタル信号｛ｙｊ［ｎ］｝Ｊ内の音響エコーを低減すると共に、関連付けられる処理済みデジタル信号｛ｒｊ［ｎ］｝Ｊを生成するための多くの方法実施形態のうちの１つの実施形態の説明を提供する。
【０１２８】
図１０は、近い部屋１０２から遠い部屋１０４まで伝送される複数の音声信号内の音響エコーを低減するための本発明の一実施形態を表す制御フロー図を示す。
図１０のステップ１００１では、下記で記述される式において用いられるパラメータが初期化される。
表１〜表３は、或る特定の用途において用いられる場合があるこれらのパラメータおよび関連付けられる初期値例を示す。
表１〜表３において示される値は、部屋の構成に依存し、それゆえ、変わることがあることに留意されたい。
【０１２９】
表１は、本発明の方法実施形態の動作中に典型的には変更されないままである定数を示す。
また、表１は、定数のそれぞれに関連付けられる値例も含む。
【０１３０】
【表１】
2010527181.tif 000053
【０１３１】
表１において示されるパラメータに関連付けられる値は、近い部屋および遠い部屋の種々の条件、および部屋の構成に基づいて調整できることに留意されたい。
パラメータＰは、図１０のステップ１００４を参照しながら下記で説明されるデジタル信号ベクトル
【０１３２】
【数５１】
2010527181.tif 000054
【０１３３】
内のデジタル信号ｙｊ（ｍ）［ｎ］の数である。
パラメータＮは、周波数領域ベクトル
【０１３４】
【数５２】
2010527181.tif 000055
【０１３５】
および
【０１３６】
【数５３】
2010527181.tif 000056
【０１３７】
内のデジタル信号の数である。
パラメータβ、η、λ、Ｋ１およびＫ２は、図１０〜図１４を参照しながら下記で説明される式の項に相対的重要度または重みを割り当てるために用いられる値である。
パラメータＧｍａｘおよびＧｍｉｎは、Ｊ個のマイクロフォンのそれぞれに関連付けられる最大利得および最小利得である。
パラメータＭは、図１０を参照しながら下記で説明されるダブルトーク中に用いられる。
【０１３８】
表２は、図１１〜図１２を参照しながら下記で説明される方法の反復中に変化する可変パラメータのための初期値を示す。
【０１３９】
【表２】
2010527181.tif 000057
【０１４０】
パラメータ
【０１４１】
【数５４】
2010527181.tif 000058
【０１４２】
および
【０１４３】
【数５５】
2010527181.tif 000059
【０１４４】
はそれぞれ、デジタル信号ｘｉ（ｍ）［ｎ］およびｙｊ（ｍ）［ｎ］に関連付けられる短期エネルギー分散(variance)である。
パラメータ
【０１４５】
【数５６】
2010527181.tif 000060
【０１４６】
は制御済みデジタル信号
【０１４７】
【数５７】
2010527181.tif 000061
【０１４８】
内のエネルギーに関連付けられる短期エネルギー分散である。
パラメータ
【０１４９】
【数５８】
2010527181.tif 000062
【０１５０】
および
【０１５１】
【数５９】
2010527181.tif 000063
【０１５２】
はそれぞれ、デジタル信号ｘｉ（ｍ）［ｎ］およびｙｊ（ｍ）［ｎ］に関連付けられる長期エネルギー分散である。
パラメータ
【０１５３】
【数６０】
2010527181.tif 000064
【０１５４】
は雑音に関連付けられる長期エネルギー分散である。
パラメータＭｉ，ｘ２（０）およびＭｊ，ｙ２（０）は、デジタル信号ｘｉ（ｍ）［ｎ］およびｙｊ（ｍ）［ｎ］に関連付けられる最大二乗エネルギーである。
パラメータＧ（０）は、図１２を参照しながら下記で説明される初期利得適応値である。
【０１５５】
表３は、図１３〜図１４を参照しながら下記で説明される方法の反復中に変化するベクトル
【０１５６】
【数６１】
2010527181.tif 000065
【０１５７】
および
【０１５８】
【数６２】
2010527181.tif 000066
【０１５９】
の成分のための初期値を示す。
【０１６０】
【表３】
2010527181.tif 000067
【０１６１】
ベクトル
【０１６２】
【数６３】
2010527181.tif 000068
【０１６３】
はベクトル
【０１６４】
【数６４】
2010527181.tif 000069
【０１６５】
に関連付けられる初期平均スペクトルであり、ベクトル
【０１６６】
【数６５】
2010527181.tif 000070
【０１６７】
はベクトル
【０１６８】
【数６６】
2010527181.tif 000071
【０１６９】
に関連付けられる初期平均スペクトルであり、それらは、図１４Ａのステップ１４０２を参照しながら下記で説明される。
ベクトル
【０１７０】
【数６７】
2010527181.tif 000072
【０１７１】
は図１４Ａのステップ１４０５を参照しながら下記で説明される発展信頼領域（evolving trust region）を定義する。
ベクトル
【０１７２】
【数６８】
2010527181.tif 000073
【０１７３】
は図１４Ａのステップ１４０８を参照しながら下記で説明される初期シャドーインパルス応答ベクトルである。
ベクトル
【０１７４】
【数６９】
2010527181.tif 000074
【０１７５】
は図１４Ａのステップ１４０９を参照しながら下記で説明される初期近似インパルス応答ベクトルである。
【０１７６】
ステップ１００２においてｆｏｒループが始まると、ステップ１００３〜１０１５が決定エポックｍ毎に繰り返される。
ステップ１００３においてｆｏｒループが始まると、時刻サンプルｎ毎にステップ１００４〜１０１２が繰り返される。
ステップ１００４では、推定および追跡ユニット８０２が遠い部屋１０４から出力されるＩ個のデジタル信号｛ｘｉ（ｍ）［ｎ］｝Ｉ、および近い部屋１０２から出力されるＪ個のデジタル信号｛ｙｊ（ｍ）［ｎ］｝Ｊを受信する。
ステップ１００５では、デジタル信号ベクトルの集合
【０１７７】
【数７０】
2010527181.tif 000075
【０１７８】
が形成される。
ただし、各デジタル信号ベクトルは、デジタル信号ｘｉ（ｍ）［ｎ］およびＬ＋Ｐ−１個の先行するデジタル信号ｘｉ  （ｍ）［ｎ］から形成される（Ｌ＋Ｐ）成分デジタル信号ベクトル
【０１７９】
【数７１】
2010527181.tif 000076
【０１８０】
である。
またステップ１００５では、マイクロフォンデジタル信号ベクトルの集合
【０１８１】
【数７２】
2010527181.tif 000077
【０１８２】
が形成される。
ただし、各マイクロフォンデジタル信号ベクトルは、マイクロフォンデジタル信号ｙｊ（ｍ）［ｎ］およびＰ−１個の先行するデジタル信号ｙｊ（ｍ）［ｎ］から形成されるＰ成分マイクロフォンデジタル信号ベクトル
【０１８３】
【数７３】
2010527181.tif 000078
【０１８４】
である。
ステップ１００６では、集合
【０１８５】
【数７４】
2010527181.tif 000079
【０１８６】
および
【０１８７】
【数７５】
2010527181.tif 000080
【０１８８】
内の各ベクトルに高速フーリエ変換（「ＦＦＴ」）が適用され、それによって対応する周波数領域ベクトルの集合
【０１８９】
【数７６】
2010527181.tif 000081
【０１９０】
および
【数７７】
2010527181.tif 000082
【０１９１】
が得られる。
ただし、ベクトル要素は以下の式によって与えられる。
【０１９２】
【数７８】
2010527181.tif 000083
【０１９３】
ＦＦＴおよび対応する逆高速フーリエ変換（「ＩＦＦＴ」）は、時刻サンプル領域において畳み込みを実行するのを避けるために用いられることが多いタイプのフーリエ変換である。
ＦＦＴおよびＩＦＦＴを用いることは、時刻サンプル領域においてデジタル信号を畳み込むことよりも数百倍、さらには数千倍速くなり得る。
デジタル信号処理の分野のための多くの参考文献のうちの１つにすぎないが、多数の異なるＦＦＴ方法およびＩＦＦＴ方法が、A. Oppenhiemer、R. SchaferおよびJ. Buck著「Discrete-Time Signal Processing（第２版）」（Prentice Hall, Inc.,（1999-2000））において記述される。
上記で参照された書籍から、またはこの分野における多くの他の教本、論文および雑誌記事から、さらなる詳細を入手することができる。
ステップ１００７では、制御済みデジタル信号ベクトルの集合
【０１９４】
【数７９】
2010527181.tif 000084
【０１９５】
が計算される。
ただし、各制御済みデジタル信号ベクトルは以下のように計算される。
【０１９６】
【数８０】
2010527181.tif 000085
【０１９７】
ただし、
【０１９８】
【数８１】
2010527181.tif 000086
【０１９９】
は長さＮｄの打切り演算子であり、
「
【０２００】
【数８２】
2010527181.tif 000087
【０２０１】
」は２つのベクトルの成分毎の乗算を表し、
【０２０２】
【数８３】
2010527181.tif 000088
【０２０３】
であり、
【０２０４】
【数８４】
2010527181.tif 000089
【０２０５】
は第ｊのマイクロフォンデジタル信号内の周波数領域音響エコーを表す。
３つ組（１，２，３）および（３，１，２）の成分毎の乗算は以下のように表される。
【０２０６】
【数８５】
2010527181.tif 000090
【０２０７】
ステップ１００８では、ルーチン「制御状態を求める」が呼び出され、該ルーチンは、近い部屋１０２と遠い部屋１０４との間に存在する可能性がある４つのタイプの音声信号伝送を特定する。
４つのタイプの音声信号伝送は、「制御状態」（「ＣＳ」）と呼ばれ、以下のように特定される：（１）近端の部屋１０２からのみ音声信号が出力され、ＳＮＥＯによって表される；（２）遠端の部屋１０４からのみ音声信号が出力され、ＳＦＥＯによって表される；（３）近端の部屋１０２および遠端の部屋１０４の両方から同時に音声信号が出力され、「ダブルトーク」呼ばれ、ＳＤＴよって表される；（４）近端の部屋１０２および遠端の部屋１０４から音声信号が出力されず、ＳＮＳによって表される。
ステップ１００９では、Ｊ個の利得補正された処理済みデジタル信号｛ｒｊ（ｍ）［ｎ］｝Ｊを計算するために、ルーチン「残留エコー抑圧」が呼び出される。
ステップ１０１０では、処理済みデジタル信号｛ｒｊ（ｍ）［ｎ］｝Ｊが遠い部屋１０４に伝送される。
ステップ１０１１では、ｎが（ｍ＋１）Ｎｄ−１以下であるとき、制御がステップ１０１２に移り、そうでない場合には、制御はステップ１０１３に移る。
ステップ１０１２では、時刻サンプルｎが「１」だけインクリメントされ、ステップ１００４〜１０１１が繰り返される。
言い換えると、Ｎｄ決定期間中に、近似インパルス応答ベクトル
【０２０８】
【数８６】
2010527181.tif 000091
【０２０９】
は更新されない。
ステップ１０１３では、別の決定エポックｍが入手可能であるとき、制御がステップ１０１４に移り、そうでない場合には、ルーチン「｛ｒｊ［ｎ］｝Ｊを求める」が終了される。
ステップ１０１４では、決定エポックｍが「１」だけインクリメントされる。ステップ１０１５では、ルーチン「
【０２１０】
【数８７】
2010527181.tif 000092
【０２１１】
を求める」が呼び出される。
言い換えると、Ｎｄ個の決定エポックを有する新たな決定期間が開始され、近似インパルス応答ベクトルが更新される。
【０２１２】
図１１Ａ〜図１１Ｃは、本発明の一実施形態を表す、図１０のステップ１００８において呼び出されるルーチン「制御状態を求める」のための制御フロー図を示す。
図１１Ａのステップ１１０１においてｆｏｒループが始まると、インデックスｉ∈｛１，...，Ｉ｝毎にステップ１１０２〜１１１４が繰り返される。
ステップ１１０２では、ベクトル
【０２１３】
【数８８】
2010527181.tif 000093
【０２１４】
に関連付けられる平均二乗エネルギーが以下のように計算され、
【０２１５】
【数８９】
2010527181.tif 000094
【０２１６】
その平均二乗エネルギーに関して長期エネルギー分散が以下の式によって再帰的に求められる。
【０２１７】
【数９０】
2010527181.tif 000095
【０２１８】
ステップ１１０３〜１１０７では、デジタル信号ベクトル
【０２１９】
【数９１】
2010527181.tif 000096
【０２２０】
に関連付けられる最大二乗エネルギーＭｉ，ｘ２（ｍ）が求められる。
ステップ１１０３では、最大二乗エネルギーＭｉ，ｘ２（ｍ−１）が平均二乗エネルギーＥｉ，ｘ２（ｍ）未満である場合には、制御がステップ１１０４に移り、そうでない場合には、制御はステップ１１０５に移る。
ステップ１１０４では、最大二乗エネルギーは以下の式によって計算され、
【０２２１】
【数９２】
2010527181.tif 000097
【０２２２】
制御はステップ１１０８に移る。
ステップ１１０５では、平均二乗エネルギーＥｉ，ｘ２（ｍ）が０．１Ｍｉ，ｘ２（ｍ−１）よりも大きいとき、制御がステップ１１０６に移り、そうでない場合には、制御はステップ１１０７に移る。
ステップ１１０６では、最大二乗エネルギーが以下の式によって計算され、
【０２２３】
【数９３】
2010527181.tif 000098
【０２２４】
制御はステップ１１０８に移る。
ステップ１１０７では、最大二乗エネルギーＭｉ，ｘ２（ｍ）が、先行する決定期間からのＭｉ，ｘ２（ｍ−１）の値を割り当てられる。
ステップ１１０８〜１１１３では、ブール論理値「真」および「偽」がブール変数Ｔ１ｉ、Ｔ２ｉに割り当てられる。
ステップ１１０８では、長期分散
【０２２５】
【数９４】
2010527181.tif 000099
【０２２６】
が０．０１Ｍｉ，ｘ２（ｍ）以上であるとき、制御がステップ１１０９に移り、Ｔ１ｉが「真」に設定され、そうでない場合には、制御はステップ１１１０に移り、Ｔ１ｉは「偽」に設定される。
ステップ１１１１では、平均二乗エネルギーＥｉ，ｘ２（ｍ）が０．０１Ｍｉ，ｘ２（ｍ）以上であるとき、制御がステップ１１１２に移り、Ｔ２ｉが「真」に設定され、そうでない場合には、制御はステップ１１１４に移り、Ｔ２ｉは「偽」に設定される。
ステップ１１１４では、ｉがＩよりも大きい場合には、制御が図１１Ｂのステップ１１１６に移り、そうでない場合には、制御はステップ１１１５に移る。
ステップ１１１５では、ｉが「１」だけインクリメントされ、ステップ１１０２〜１１１４が繰り返される。
【０２２７】
図１１Ｂのステップ１１１６においてｆｏｒループが始まると、インデックスｊ∈｛１，...，Ｊ｝毎にステップ１１１７〜１１３１が繰り返される。
ステップ１１１６では、以下のように、
【０２２８】
【数９５】
2010527181.tif 000100
【０２２９】
およびシャドーエラーベクトル
【０２３０】
【数９６】
2010527181.tif 000101
【０２３１】
に関して平均エネルギーが計算され、
【０２３２】
【数９７】
2010527181.tif 000102
【０２３３】
以下の式によって、それらの平均二乗エネルギーに関して長期エネルギー分散が再帰的に求められる。
【０２３４】
【数９８】
2010527181.tif 000103
【０２３５】
ステップ１１１８〜１１２２では、デジタル信号ベクトル
【０２３６】
【数９９】
2010527181.tif 000104
【０２３７】
に関連付けられる最大二乗エネルギーＭｉ，ｙ２（ｍ）が求められる。
ステップ１１１８では、最大二乗エネルギーＭｉ，ｙ２（ｍ−１）が平均二乗エネルギーＥｉ，ｙ２（ｍ）未満であるとき、制御がステップ１１１９に移り、そうでない場合には、制御はステップ１１２０に移る。
ステップ１１１９では、最大二乗エネルギーが、以下の式によって計算され、
Ｍｉ，ｙ２（ｍ）＝ｍｉｎ{Ｅｉ，ｙ２（ｍ），１０Ｍｉ，ｙ２（ｍ−１）}
制御がステップ１１２３に移る。
ステップ１１２０では、平均二乗エネルギーＥｉ，ｙ２（ｍ）が０．１Ｍｉ，ｙ２（ｍ−１）よりも大きいときに、制御がステップ１１２１に移り、そうでない場合には、制御はステップ１１２１に移る。
ステップ１１２１では、最大二乗エネルギーが以下の式によって計算され、
Ｍｉ，ｙ２（ｍ）＝０．９９９Ｍｉ，ｙ２（ｍ−１）＋０．００１Ｅｉ，ｙ２（ｍ）
制御がステップ１１２３に移る。
ステップ１１２３〜１１２８では、ブール論理値「真」および「偽」が、ブール変数Ｔ３ｊ、Ｔ４ｊに割り当てられる。
ステップ１１２３では、平均二乗エネルギー
【０２３８】
【数１００】
2010527181.tif 000105
【０２３９】
が、
【０２４０】
【数１０１】
2010527181.tif 000106
【０２４１】
以上であるとき、制御がステップ１１２４に移り、Ｔ３ｊが「真」に設定され、そうでない場合には、制御はステップ１１２５に移り、Ｔ３ｊは「偽」に設定される。
ステップ１１２６では、長期分散
【０２４２】
【数１０２】
2010527181.tif 000107
【０２４３】
が０．０１Ｍｉ，ｙ２（ｍ）以上であるときに、制御がステップ１１２７に移り、Ｔ４ｊが「真」に設定され、そうでない場合には、制御はステップ１１２８に移り、Ｔ４ｊは「偽」に設定される。
ステップ１１２９では、以下の式に従って、エコーリターンロスエンハンスメント値（「ＥＲＬＥ」）が計算される。
【０２４４】
【数１０３】
2010527181.tif 000108
【０２４５】
ただし、
【０２４６】
【数１０４】
2010527181.tif 000109
【０２４７】
は平均二乗エネルギーＥｉ，ｘ２（ｍ）および
【０２４８】
【数１０５】
2010527181.tif 000110
【０２４９】
にそれぞれ関連付けられる短期分散である。
ＥＲＬＥを用いて、システムが状態ＳＦＥＯにあるときに音響エコーキャンセルの性能を測定することができ、システムが図１３Ａのステップ１３０９において下記で説明されるダブルトークにあるときに近似インパルス応答ベクトルを求めることができる。
ステップ１１３０では、ｊがＪよりも大きいとき、制御が図１１Ｃのステップ１１３２に移り、そうでない場合には、制御はステップ１１３１に移る。
ステップ１１３１では、ｊが「１」だけインクリメントされ、ステップ１１１７〜１１３０が繰り返される。
【０２５０】
図１１Ｃのステップ１１３２においてｆｏｒループが始まると、ｊ∈｛１，...，Ｊ｝毎にステップ１１３３〜１１４５が繰り返される。
ステップ１１３３においてｆｏｒループが始まると、ｉ∈｛１，...，Ｉ｝毎にステップ１１３４〜１１４３が繰り返される。
ステップ１１３４〜１１４１では、図１１Ａのステップ１１０８〜１１１３および図１１Ｂのステップ１１２３〜１１２８において求められたブール論理値を用いて、エコーパス毎の制御状態ＣＳｉｊが求められる。
ステップ１１３４では、Ｔ１ｉおよびＴ３ｊが「真」であり、且つＴ２ｉおよびＴ４ｊが「偽」であるときに、制御がステップ１１３５に移り、ＣＳｉｊがＳＮＥＯを割り当てられ、そうでない場合には、制御はステップ１１３６に移る。
ステップ１１３６では、Ｔ１ｉおよびＴ４ｊが「真」であり、且つＴ２ｉが「偽」である場合には、制御がステップ１１３７に移り、ＣＳｉｊがＳＮＳを割り当てられ、そうでない場合には、制御はステップ１１３８に移る。
ステップ１１３８では、Ｔ２ｉが「真」であり、且つＴ１ｉ、Ｔ３ｊおよびＴ４ｊが「偽」である場合には、制御がステップ１１３９に移り、ＣＳｉｊがＳＦＥＯを割り当てられ、そうでない場合には、制御はステップ１１４０に移る。
ステップ１１４０では、Ｔ２ｉおよびＴ３ｊが「真」であり、且つＴ１ｉおよびＴ４ｊが「偽」である場合には、制御がステップ１１４１に移り、ＣＳｉｊがＳＤＴを割り当てられ、そうでない場合には、制御はステップ１１４２に移る。
ステップ１１４２では、ｉがＩよりも大きいとき、制御がステップ１１４４に移り、そうでない場合には、制御はステップ１１４３に移る。
ステップ１１４３では、ｉが「１」だけインクリメントされ、ステップ１１３４〜１１４２が繰り返される。
ステップ１１４４において、ｊがＪよりも大きいとき、｛ＣＳｉｊ｝ＩＪおよび｛ＥＲＬＥｊ（ｍ）｝Ｊが返され、そうでない場合には、ステップ１１４５において、ｊが「１」だけインクリメントされ、ステップ１１３３〜１１４４が繰り返される。
【０２５１】
図１２は、本発明の一実施形態を表す、図１０のステップ１００９において呼び出されるルーチン「残留エコー抑圧」のための制御フロー図である。
ステップ１２０１においてｆｏｒループが始まると、インデックスｊ毎にステップ１２０２〜１２０７が繰り返される。
音声伝送の制御状態を用いて、処理済みデジタル信号｛ｒｊ（ｍ）［ｎ］｝Ｊのそれぞれにおける利得が補正される。
たとえば、ダブルトーク中に、または近い部屋１０２においてのみ音声信号が生成されるとき、制御済みデジタル信号
【０２５２】
【数１０６】
2010527181.tif 000111
【０２５３】
によって得られる利得は、遠い部屋１０４においてのみ音声信号が生成されるとき、または音声信号が全く伝送されないときよりも大きい。
制御済みデジタル信号が得ることができる利得の最大量および最小量はそれぞれ、定数ＧｍａｘおよびＧｍｉｎによって表される。
ステップ１２０２〜１２０５は、各処理済みデジタル信号｛ｒｊ（ｍ）［ｎ］｝Ｊのそれぞれにおける利得を調整する。
ステップ１２０２において、ダブルトークであるとき、または近い部屋１０２においてのみ音が生成されるとき、制御がステップ１２０３に移り、そうでない場合には、制御はステップ１２０４に移る。
ステップ１２０３では、以下のように、利得が計算される。
Ｇ（ｍ）＝Ｋ２Ｇ（ｍ−１）＋（１−Ｋ２）Ｇｍａｘ
ただし、Ｋ２は、Ｇ（ｍ−１）に対して、最大利得Ｇｍａｘよりも低い相対的重要度を割り当てる重みである。
ステップ１２０４では、その利得は以下のように計算される。
Ｇ（ｍ）＝Ｋ１Ｇ（ｍ−１）＋（１−Ｋ１）Ｇｍｉｎ
ただし、Ｋ１は、Ｇ（ｍ−１）に対して、最小利得Ｇｍｉｎよりも相対的に高い重要度を割り当てる重みである。
ステップ１２０５において、第ｊの処理済みデジタル信号は以下の式によって求められる。
【０２５４】
【数１０７】
2010527181.tif 000112
【０２５５】
ステップ１２０６では、ｊがＪ以下であるとき、制御がステップ１２０７に移り、ｊが「１」だけインクリメントされ、そうでない場合には、処理済みデジタル信号｛ｒｊ（ｍ）［ｎ］｝Ｊが返される。
【０２５６】
図１３Ａは、本発明の一実施形態を表す、図１０のステップ１０１５において呼び出されるルーチン「
【０２５７】
【数１０８】
2010527181.tif 000113
【０２５８】
を求める」のための制御フロー図である。
ステップ１３０２においてｆｏｒループが始まると、ｉ∈｛１，...，Ｉ｝毎にステップ１３０２〜１３１３が繰り返される。
ステップ１３０２においてｆｏｒループが始まると、ｊ∈｛１，...，Ｊ｝毎にステップ１３０３〜１３１１が繰り返される。
ステップ１３０３では、ＣＳｉｊがＳＦＥＯであるとき、制御がステップ１３０４に移り、そうでない場合には、制御はステップ１３０５に移る。
ステップ１３０４では、ルーチン「
【０２５９】
【数１０９】
2010527181.tif 000114
【０２６０】
を計算する」が呼び出され、近似インパルス応答ベクトル
【０２６１】
【数１１０】
2010527181.tif 000115
【０２６２】
が計算される。
ステップ１３０５において、ＣＳｉｊがＳＮＥＯまたはＳＮＳであるとき、制御がステップ１３０６に移り、そうでない場合には、制御はステップ１３０７に移る。
ステップ１３０６では、先行するインパルス応答
【０２６３】
【数１１１】
2010527181.tif 000116
【０２６４】
内の対応する値にベクトル
【０２６５】
【数１１２】
2010527181.tif 000117
【０２６６】
内の要素を割り当てることによって、インパルス応答ベクトルが更新され、先行する決定期間からのシャドーインパルス応答ベクトル
【０２６７】
【数１１３】
2010527181.tif 000118
【０２６８】
内の対応する要素にシャドーインパルス応答ベクトル
【０２６９】
【数１１４】
2010527181.tif 000119
【０２７０】
内の要素を割り当てることによってシャドーインパルス応答ベクトルが更新される。
ステップ１３０７、１３０８および１３０９を用いて、図１３Ｂ〜図１３Ｃを参照しながら下記で説明されるように、ダブルトークの存在を誤って解釈するのを防ぐ。
ステップ１３０７において、「カウント」が「０」に等しくないとき、制御がステップ１３０７に移り、そうでない場合には、制御はステップ１３０９に移る。
ステップ１３０８では、「カウント」が「１」だけデクリメントされ、制御がステップ１３０６に移る。
ステップ１３０９では、集合
【０２７１】
【数１１５】
2010527181.tif 000120
【０２７２】
によって表されるインパルス応答データ構造から、ダブルトークのための近似インパルス応答ベクトル
【０２７３】
【数１１６】
2010527181.tif 000121
【０２７４】
が選択される。
ステップ１３１０では、「カウント」が値Ｍを割り当てられる。
値Ｍは１０、１２、１５、１８または任意の他の適切な値とすることができる。
ステップ１３１０では、ｊがＪよりも大きいとき、制御がステップ１３１２に移り、そうでない場合には、制御はステップ１３１１に移る。
ステップ１３１１では、ｉが「１」だけインクリメントされ、ステップ１３０２〜１３１０が繰り返される。
ステップ１３１２では、ｉがＩよりも大きい場合には、近似インパルス応答ベクトルの集合
【０２７５】
【数１１７】
2010527181.tif 000122
【０２７６】
が返され、そうでない場合には、制御はステップ１３１３に移り、ｊが「１」だけインクリメントされる。
【０２７７】
Ｉ×Ｊ個のインパルス応答データ構造が存在し、異なるエコーパス毎に１つのインパルス応答データ構造が存在することに留意されたい。
各データ構造は、最も高い信号対雑音比を有する、Ｋ個の最新の近似インパルス応答を含む。
決定エポックｍの下付き文字は、インパルス応答ベクトルがデータ構造に追加された順序に対応する。
たとえば、ステップ１３０９のデータ構造では、インパルス応答ベクトル
【０２７８】
【数１１８】
2010527181.tif 000123
【０２７９】
は、そのデータ構造内に最も長く存在しており、インパルス応答ベクトル
【０２８０】
【数１１９】
2010527181.tif 000124
【０２８１】
は、そのデータ構造に直前に追加された。
ダブルトーク中に信号対雑音比は急激に劣化するので、ダブルトーク中に近似インパルス応答ベクトルは更新されないことに留意されたい。
雑音が増加すると、近似インパルス応答ベクトルが歪む。
この歪みを回避するために、近似インパルス応答ベクトル
【０２８２】
【数１２０】
2010527181.tif 000125
【０２８３】
は、対応するインパルス応答データ構造から選択される。
本発明の種々の実施形態において、近似インパルス応答ベクトルは、任意の数の異なる判定基準に基づいて選択することができる。
たとえば、本発明の一実施形態では、ステップ１３０９において、いずれのインパルス応答ベクトルが最も大きな対応する
【０２８４】
【数１２１】
2010527181.tif 000126
【０２８５】
を有するかに従って、１つの近似インパルス応答ベクトルを選択することができる。
本発明の別の実施形態では、ステップ１３０９において、いずれの近似インパルス応答ベクトルがデータ構造内で最も長く存在しているかに基づいて、対応するデータ構造から近似インパルス応答ベクトルを選択することができ、その近似インパルス応答ベクトルは
【０２８６】
【数１２２】
2010527181.tif 000127
【０２８７】
である。
【０２８８】
図１３Ａの制御フロー図において、対応するエコーパスにおいて伝送される雑音を誤ってＳＤＴと解釈するのを防ぐために、ステップ１３０７、１３０８および１３０６がＭ回にわたって繰り返される。
図１３Ｂ〜図１３Ｃは、本発明の一実施形態を表す、４つのタイプの制御状態のための増幅エネルギー対時間の２つのプロットを示す。
図１３Ｂ〜図１３Ｃにおいて、縦軸１３１４のような縦軸は、近い部屋１０２と遠い部屋１０４との間で伝送される信号に関連付けられる増幅エネルギーを表し、横軸１３１５のような横軸は時刻を表し、破線１３１６のような水平な破線は、ダブルトークしきい値エネルギーＥｔｈに対応する。
曲線１３１８および１３２０は、近い部屋１０２と遠い部屋１０４との間で伝送される信号に関連付けられる増幅エネルギーを表す。
ダブルトークしきい値エネルギーＥｔｈより低い増幅エネルギーは、ＳＦＥＯ、ＳＮＥＯまたはＳＮＳ制御状態に対応する。
ピーク１３２２はダブルトークから生じる増幅エネルギーに対応し、それはダブルトークしきい値Ｅｔｈよりも大きい。
しかしながら、ピーク１３２４は、近い部屋１０２または遠い部屋１０４において生成されるエコーパス雑音に対応する。
ダブルトークが実際には発生していない場合であっても、増幅エネルギーがダブルトークしきい値エネルギーＥｔｈを超えているので、この雑音が発生した当初には、ダブルトークが発生したかのように見える。
短い持続時間の雑音をダブルトークと誤って解釈するのを防ぐために、時刻１３２６において、ステップ１３０６、１３０７および１３０５を参照しながら説明された変数「カウント」でカウントダウンが始まり、ダブルトークがＭ回繰り返されたことが確認されるまで、ステップ１３０８においてデータ構造
【０２８９】
【数１２３】
2010527181.tif 000128
【０２９０】
から近似インパルス応答ベクトルを選択するのを防ぐ。
言い換えると、本発明の方法は、Ｍ回の決定期間にわたってダブルトークが生じなかったかのように動作し続ける。
図１３Ｂの時刻１３２８において示されるように、Ｍ回繰り返した後に増幅エネルギーが減少している場合には、ダブルトークのための近似インパルス応答ベクトルを不適切に選択するのが回避されている。
言い換えると、図１３Ｃの時刻１３３０における曲線１３２０において示されるように、Ｍ回繰り返した後に、増幅エネルギーが増加している場合には、ステップ１３０９において、ダブルトークのための近似インパルス応答ベクトルが選択される。
【０２９１】
図１４〜図１７を参照しながらここで説明される方法はエコーパス毎に繰り返される。
図１４Ａは、本発明の一実施形態を表す、図１４のステップ１３０４において呼び出されるルーチン「
【０２９２】
【数１２４】
2010527181.tif 000129
【０２９３】
を計算する」のための制御フロー図である。
ステップ１４０１では、周波数領域依存ベクトルを得るために、シャドーインパルス応答ベクトル
【０２９４】
【数１２５】
2010527181.tif 000130
【０２９５】
にＦＦＴが適用される。
【０２９６】
【数１２６】
2010527181.tif 000131
【０２９７】
ステップ１４０２では、周波数領域シャドーエラーベクトルが以下のように計算される。
【０２９８】
【数１２７】
2010527181.tif 000132
【０２９９】
ただし、ＴｒＰは長さＰの打切り演算子であり、
【０３００】
【数１２８】
2010527181.tif 000133
【０３０１】
である。
ステップ１４０３では、シャドーエラーベクトルを得るために、周波数領域シャドーエラーベクトルにＩＦＦＴが適用される。
【０３０２】
【数１２９】
2010527181.tif 000134
【０３０３】
ステップ１４０４では、シャドーミスマッチベクトル
【０３０４】
【数１３０】
2010527181.tif 000135
【０３０５】
を計算するために、ルーチン「
【０３０６】
【数１３１】
2010527181.tif 000136
【０３０７】
を求める」が呼び出される。
ステップ１４０５では、以下の再帰式に従って、発展信頼領域ベクトルが求められる。
【０３０８】
【数１３２】
2010527181.tif 000137
【０３０９】
パラメータηは重み係数である。
信頼領域ベクトル
【０３１０】
【数１３３】
2010527181.tif 000138
【０３１１】
を用いて、ステップ１４０６において呼び出されるルーチン「μｉｊ，ｍを求める」においてシャドー更新ステップサイズμｉｊ，ｍが計算される。
また、信頼領域ベクトル
【０３１２】
【数１３４】
2010527181.tif 000139
【０３１３】
を用いて、ステップ１４０７において呼び出されるルーチン「γｉｊ，ｍを求める」において適応ステップサイズγｉｊ，ｍが計算される。
ステップ１４０８では、ステップ１４０４において求められたシャドーミスマッチベクトル
【０３１４】
【数１３５】
2010527181.tif 000140
【０３１５】
およびステップ１４０６において求められたシャドー更新ステップサイズμｉｊ，ｍを用いて、シャドーインパルス応答ベクトルが再帰的に計算される。
【０３１６】
【数１３６】
2010527181.tif 000141
【０３１７】
ステップ１４０９では、ステップ１４０７において求められた適応ステップサイズγｉｊ，ｍを用いて、以下のように、近似インパルス応答ベクトルが再帰的に計算される。
【０３１８】
【数１３７】
2010527181.tif 000142
【０３１９】
パラメータγｉｊ，ｍは重み係数として用いられる。
ステップ１４１０では、ＥＲＬＥｊ（ｍ）がしきい値Ｃよりも大きいとき、制御がステップ１４１１に移る。
しきい値Ｃは、１０、１２、１５または近似インパルス応答ベクトル
【０３２０】
【数１３８】
2010527181.tif 000143
【０３２１】
を重み付けするための任意の他の適切な値とすることができる。
ステップ１４１１では、図１３Ａのステップ１３０９を参照しながら上記で説明されたインパルス応答データ構造
【０３２２】
【数１３９】
2010527181.tif 000144
【０３２３】
が更新される。
【０３２４】
インパルス応答ベクトルは、インパルス応答データ構造内に、ｍ１＞ｍ２＞...＞ｍＫ−１＞ｍＫのように決定エポック値が大きくなる順序に配列される。
ただし、決定エポックｍＫは、最も長い時間にわたってデータ構造内に存在している近似インパルス応答ベクトルに対応し、決定エポックｍ１は、直前にデータ構造に追加された近似インパルス応答ベクトルに対応する。
本発明の一実施形態では、データ構造からインパルス応答ベクトル
【０３２５】
【数１４０】
2010527181.tif 000145
【０３２６】
を除去し、ステップ１４０９において計算されたデータ構造に、直前に計算されたインパルス応答ベクトル
【０３２７】
【数１４１】
2010527181.tif 000146
【０３２８】
を追加することによって、ステップ１４１１においてデータ構造を更新することができ、それにより以下のインパルス応答データ構造が与えられる。
【０３２９】
【数１４２】
2010527181.tif 000147
【０３３０】
本発明の他の実施形態では、ステップ１４１１において、各近似インパルス応答ベクトルに関連付けられるＥＲＬＥ値の大きさに従ってデータ構造を更新することができる。
ステップ１４０９において計算された、直前に計算された近似インパルス応答ベクトルの追加に対応すると共に、ステップ１４１０においてＥＲＬＥがしきい値条件を満たすようにするために、たとえば、関連するＥＲＬＥ値が最も小さな近似インパルス応答ベクトルが、そのデータ構造から除去される。
【０３３１】
ステップ１４０６において呼び出されるルーチン「μｉｊ，ｍを求める」によって求められるシャドー更新ステップサイズμｉｊ，ｍは、ステップ１４０８において求められたシャドーインパルス応答ベクトル
【０３３２】
【数１４３】
2010527181.tif 000148
【０３３３】
が、Ｌ次元探索空間(search space)Ｕ内にある発展「信頼領域」内に存在するのを概ね確実にする。
シャドーインパルス応答ベクトル
【０３３４】
【数１４４】
2010527181.tif 000149
【０３３５】
毎に、探索空間Ｕ内にある１つの別個の信頼領域が存在する。
その信頼領域は、探索空間Ｕ内にある、超円領域、超楕円領域、超立方領域、または任意の他の超次元領域のような多くの異なる超次元形状を有することができる。
【０３３６】
図１４Ｂを参照しながら説明される本発明の一実施形態では、信頼領域は、探索空間Ｕ内に存在する超楕円領域であると仮定される。
図１４Ｂは、本発明の一実施形態を表す、探索空間Ｕ１４２２内に位置する超楕円領域１４２０の２次元表示を提供する。
図１４Ｂにおいて、領域１４２０および１４２２は２次元において表されるが、実際には、これらの領域は、実際
【０３３７】
【数１４５】
2010527181.tif 000150
【０３３８】
のＬ次元ベクトル部分空間であり、
【０３３９】
【数１４６】
2010527181.tif 000151
【０３４０】
の原点を中心にして配置される。
超楕円領域１４２０の形状は、ステップ１４０５において計算される信頼領域ベクトル
【０３４１】
【数１４７】
2010527181.tif 000152
【０３４２】
によって決定され、この例では、そのベクトルは超楕円領域１４２０の形状を定義する超楕円ベクトルである。
言い換えると、図１４Ｂに示されるように、点によって表される予め求められた６つのシャドーインパルス応答ベクトルが、ベクトル
【０３４３】
【数１４８】
2010527181.tif 000153
【０３４４】
に関連付けられる超楕円領域１４２０内に存在する。
後続の超楕円体規定ベクトル
【０３４５】
【数１４９】
2010527181.tif 000154
【０３４６】
が求められるとき、関連する領域は探索空間Ｕ１４２２内で向きを変えるが、この新たな向きの楕円領域も概ね楕円形状を保持するので、この超楕円領域１４２０は「発展する」超楕円領域と呼ばれる。
図１５を参照しながら下記で説明されるように、シャドー更新ステップサイズμｉｊ，ｍは超楕円体規定ベクトル
【０３４７】
【数１５０】
2010527181.tif 000155
【０３４８】
の関数であるので、再帰式
【０３４９】
【数１５１】
2010527181.tif 000156
【０３５０】
に従って計算された、新たに計算されたシャドーインパルス応答ベクトル
【０３５１】
【数１５２】
2010527181.tif 000157
【０３５２】
は新たな向きの超楕円領域内に入る。
図１４Ｂに示されるように、ベクトル１４２４によって示されるように、シャドーミスマッチベクトル
【０３５３】
【数１５３】
2010527181.tif 000158
【０３５４】
の大きさおよび方向が大きいとき、ベクトル１４２６によって示されるように、シャドー更新ステップサイズμｉｊ，ｍがシャドーミスマッチベクトル
【０３５５】
【数１５４】
2010527181.tif 000159
【０３５６】
を小さくし、その方向を変更する。
結果として、シャドーインパルス応答ベクトル
【０３５７】
【数１５５】
2010527181.tif 000160
【０３５８】
は新たな向きの超楕円領域１４２８内に入る。
【０３５９】
本発明の他の実施形態では、シャドーインパルス応答ベクトルを更新するために、単一のシャドー更新ステップサイズμｉｊ，ｍを計算するのではなく、結果として生成されるシャドーインパルス応答ベクトルが信頼領域内に入るように、シャドーインパルス応答ベクトル
【０３６０】
【数１５６】
2010527181.tif 000161
【０３６１】
に加えられる第２のベクトルを計算することによって、シャドーインパルス応答ベクトルの大きさを変更して信頼領域内に入るようにすることができることに留意されたい。
【０３６２】
図１５は、本発明の一実施形態を表す、図１４のステップ１４０４において呼び出されるルーチン「
【０３６３】
【数１５７】
2010527181.tif 000162
【０３６４】
を求める」のための制御フロー図である。
ステップ１５０１では、周波数領域ベクトル
【０３６５】
【数１５８】
2010527181.tif 000163
【０３６６】
の平均スペクトルが以下のように計算され、
【０３６７】
【数１５９】
2010527181.tif 000164
【０３６８】
周波数領域シャドーエラーベクトル
【０３６９】
【数１６０】
2010527181.tif 000165
【０３７０】
の平均スペクトルが以下のように計算される。
【０３７１】
【数１６１】
2010527181.tif 000166
【０３７２】
ただし、以下の式が成り立つ。
【０３７３】
【数１６２】
2010527181.tif 000167
【０３７４】
パラメータβは重み係数である。
ステップ１５０２では、図１１において計算される最大エネルギーを用いて、以下の値が求められる。
【０３７５】
【数１６３】
2010527181.tif 000168
【０３７６】
ステップ１５０３〜１５０６では、Ｎ成分周波数領域プレコンディショニングベクトル
【０３７７】
【数１６４】
2010527181.tif 000169
【０３７８】
の要素が求められる。
ステップ１５０３においてｆｏｒループが始まると、周波数領域のインデックスｋ毎にステップ１５０４〜１５０６が繰り返される。
ステップ１５０４では、プレコンディショニングベクトル
【０３７９】
【数１６５】
2010527181.tif 000170
【０３８０】
の要素が以下のように計算される。
【０３８１】
【数１６６】
2010527181.tif 000171
【０３８２】
ただし、ｋは０〜Ｎ−１の範囲にある。
ステップ１５０５では、ｋがＮ−１未満であるとき、制御がステップ１５０６に移り、そうでない場合には、制御はステップ１５０７に移る。
ステップ１５０６では、インデックスｋが値「１」だけインクリメントされる。
ステップ１５０７では、ベクトル
【０３８３】
【数１６７】
2010527181.tif 000172
【０３８４】
が以下のように計算される。
【０３８５】
【数１６８】
2010527181.tif 000173
【０３８６】
ただし、ＴｒＬはサイズＬの打切り演算子であり、
【０３８７】
【数１６９】
2010527181.tif 000174
【０３８８】
である。
【０３８９】
図１６は、本発明の一実施形態を表す、図１４のステップ１４０６において呼び出されるルーチン「μｉｊ，ｍを求める」のための制御フロー図である。
ステップ１６０１では、パラメータ
【０３９０】
【数１７０】
2010527181.tif 000175
【０３９１】
が以下のように計算される。
【０３９２】
【数１７１】
2010527181.tif 000176
【０３９３】
ステップ１６０２では、
【０３９４】
【数１７２】
2010527181.tif 000177
【０３９５】
が値「１」よりも大きいとき、制御がステップ１６０３に移り、そうでない場合には、制御はステップ１６０４に移る。
ステップ１６０３では、μｉｊ，ｍが値
【０３９６】
【数１７３】
2010527181.tif 000178
【０３９７】
を割り当てられる。
ステップ１６０４では、μｉｊ，ｍが値「０．２」を割り当てられる。
【０３９８】
図１７は、本発明の一実施形態を表す、図１４のステップ１４０７において呼び出されるルーチン「γｉｊ，ｍを求める」のための制御フロー図である。
ステップ１７０１では、パラメータγ＿ｓｃａｌｅｉｊ（ｍ）が以下のように計算される。
【０３９９】
【数１７４】
2010527181.tif 000179
【０４００】
ステップ１７０２では、
【０４０１】
【数１７５】
2010527181.tif 000180
【０４０２】
であるとき、且つＭ個の時刻サンプル後に、制御がステップ１７０３に移り、そうでない場合には、制御はステップ１７０４に移る。
ステップ１７０３では、パラメータｃｉｊ，ｍが以下のように再帰的に計算される。
ｃｉｊ，ｍ＝ｍａｘ{＝ｃｉｊ，ｍ−１−４０００，４００}
ステップ１７０４では、パラメータｃｉｊ，ｍが以下のように再帰的に計算される。
ｃｉｊ，ｍ＝ｍａｘ{＝ｃｉｊ，ｍ−１＋１，４００００}
ステップ１７０５では、以下の式に従って、γｉｊ，ｍが値を割り当てられる。
【０４０３】
【数１７６】
2010527181.tif 000181
【０４０４】
ただし、νｉｊ，ｍは図１５のステップ１５０２において計算される。
ステップ１７０６では、γ＿ｓｃａｌｅｉｊ（ｍ）が「１」より大きいとき、制御がステップ１７０７に移る。
ステップ１７０７では、γｉｊ，ｍが以下の値を割り当てられる。
【０４０５】
【数１７７】
2010527181.tif 000182
【０４０６】
本発明が１つの実施形態に関して説明されてきたが、本発明の方法はこの実施形態には限定されない。
たとえば、本発明の他の実施形態では、音響エコーキャンセルは、マイクロフォンデジタル信号の一部にのみ適用される場合がある。
詳細には、本発明の音響エコーキャンセル方法は、全てのマイクロフォンデジタル信号に適用するのではなく、振幅が或る所定のしきい値よりも高いマイクロフォンデジタル信号にのみ適用することができる。
【０４０７】
これまでの説明は、本発明の完全な理解を提供するために、説明の目的上、特殊な用語を使用した。
しかしながら、本発明を実施するのに、具体的な細部が不要であることは当業者には明らかになるであろう。
本発明の特定の実施形態のこれまでの説明は、例示および説明の目的のために提示された。
それらの実施形態は、本発明を包括的に述べることも、本発明を開示されるのと全く同じ形態に限定することも意図していない。
上記の教示に鑑みて、多くの変更および変形が可能であることは明らかである。
それらの実施形態は、本発明の原理およびその実用的な用途を最もよく説明し、それにより、当業者が、意図される特定の用途に合わせるように種々の変更を加えて、本発明および種々の実施形態を最大限に利用できるようにするために、図示および説明される。
本発明の範囲は、以下の特許請求の範囲およびそれらの均等物によって規定されることが意図されている。
【符号の説明】
【０４０８】
１００・・・２地点間モノチャネル音声会議通信システム，
１０２・・・近い部屋，
１０４・・・遠い部屋，
１０６，１０８・・・マイクロフォン，
１１０，１１２・・・通信チャネル，
１１４・・・スピーカ、
６００・・・混合マルチチャネル音声通信システム，
６０２・・・マルチチャネルエコー制御ユニット（ＭＥＣＵ），
６０４・・・スピーカ，
６０６・・・マイクロフォン，
【図１】
2010527181.tif 000227
【図２Ａ】
2010527181.tif 000228
【図２Ｂ】
2010527181.tif 000229
【図２Ｃ】
2010527181.tif 000230
【図３】
2010527181.tif 000231
【図４Ａ】
2010527181.tif 000232
【図４Ｂ】
2010527181.tif 000233
【図４Ｃ】
2010527181.tif 000234
【図４Ｄ】
2010527181.tif 000235
【図５】
2010527181.tif 000236
【図６】
2010527181.tif 000237
【図７】
2010527181.tif 000238
【図８】
2010527181.tif 000239
【図９】
2010527181.tif 000240
【図１０】
2010527181.tif 000241
【図１１Ａ】
2010527181.tif 000242
【図１１Ｂ】
2010527181.tif 000243
【図１１Ｃ】
2010527181.tif 000244
【図１２】
2010527181.tif 000245
【図１３Ａ】
2010527181.tif 000246
【図１３Ｂ】
2010527181.tif 000247
【図１３Ｃ】
2010527181.tif 000248
【図１４Ａ】
2010527181.tif 000249
【図１４Ｂ】
2010527181.tif 000250
【図１５】
2010527181.tif 000251
【図１６】
2010527181.tif 000252
【図１７】
2010527181.tif 000253
【国際調査報告】
2010527181.tif 000254
2010527181.tif 000255