(57)【要約】【課題】エコー除去装置の性能の改善を図る。【解決手段】伝送路推定値を確定部、保留部および更新部に分ける。伝送路推定値の更新部を、伝送路推定値の確定部、保留部および更新部の全てを用いて求められるエコー推定値からの誤差により更新する。一定期間毎に、伝送路推定値の確定部および保留部を合わせた推定値が伝送路推定値の確定部単体の推定値よりも良いと判断されるか否かにより、伝送路推定値の確定部、保留部および更新部を更新する。良いと判断されるときのみ、保留部を確定部に累積加算する。更新部を保留部に代入する。また、良いと判断されるとき、確定部、保留部および更新部の全てを用いて求められるエコー推定値からの誤差を出力として選択し、良くないと判断されるとき、確定部のみを用いて求められるエコー推定値からの誤差を出力として選択する。【選択図】図１
2013030868.tif 000002
【特許請求の範囲】
【請求項１】
伝送路推定値更新処理部と、出力選択部とを備え、
上記伝送路推定値更新処理部は、
伝送路推定値を確定部、保留部および更新部に分け、
上記伝送路推定値の確定部、保留部および更新部の全てを用いて求められるエコー推定値からの誤差により上記伝送路推定値の更新部の更新を行い、
一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いと判断されるとき、上記伝送路推定値の保留部を上記伝送路推定値の確定部に累積加算し、上記伝送路推定値の更新部を上記伝送路推定値の保留部に代入し、その後に、該更新部をゼロクリアし、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないと判断されるとき、上記伝送路推定値の更新部を上記伝送路推定値の保留部に代入し、その後に、該更新部をゼロクリアし、
上記出力選択部は、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いと判断されるとき、上記伝送路推定値の確定部、保留部および更新部の全てを用いて求められるエコー推定値からの誤差を出力音声信号として選択し、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないと判断されるとき、上記伝送路推定値の確定部のみを用いて求められるエコー推定値からの誤差を出力音声信号として選択する
エコー除去装置。
【請求項２】
上記伝送路推定値更新処理部は、
上記更新部を第１の更新部とし、該第１の更新部とは別の第２の更新部をさらに用意し、
上記伝送路推定値の確定部および第２の更新部を用いて求められるエコー推定値からの誤差により上記伝送路推定値の第２の更新部の更新を行い、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いと判断されるとき、上記伝送路推定値の保留部を上記伝送路推定値の確定部に累積加算し、上記伝送路推定値の第１の更新部を上記伝送路推定値の保留部に代入し、その後に、該第１更新部および上記第２の更新部をゼロクリアし、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないと判断されるとき、上記伝送路推定値の第２の更新部を上記伝送路推定値の保留部に代入し、その後に、該第２の更新部および上記第１の更新部をゼロクリアする
請求項１に記載のエコー除去装置。
【請求項３】
上記一定期間毎に、上記伝送路推定値の確定部および保留部を用いて求められるエコー推定値からの誤差と、上記伝送路推定の確定部のみを用いて求められるエコー推定値からの誤差とに基づいて、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いか否かを判断する判断部をさらに備える
請求項１に記載のエコー除去装置。
【請求項４】
上記伝送路推定値更新処理部は、
上記伝送路推定値の確定部、保留部および更新部を記憶する伝送路推定値記憶部と、
入力音声信号と上記伝送路推定値の確定部とを用いて第１のエコー推定値を得ると共に、上記入力音声信号と上記伝送路推定値の確定部、保留部および更新部の全てを用いて第３のエコー推定値を得るエコー推定値取得部と、
収音信号から上記第１のエコー推定値を差し引いて第１の誤差信号を得ると共に、上記収音信号から上記第３のエコー推定値を差し引いて第３の誤差信号を得る誤差信号取得部と、
上記第３の誤差信号に基づいて、上記伝送路推定値の更新部を更新する第１の伝送路推定値更新部と、
上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いとき、上記伝送路推定値の保留部を上記伝送路推定値の確定部に累積加算し、上記伝送路推定値の更新部を上記伝送路推定値の保留部に代入し、その後に、該更新部をゼロクリアし、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないとき、上記伝送路推定値の更新部を上記伝送路推定値の保留部に代入し、その後に、該更新部をゼロクリアする第２の伝送路推定値更新部とを有し、
上記出力選択部は、
上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いとき、上記第３の誤差信号を出力音声信号として選択し、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないとき、上記第１の誤差信号を上記出力音声信号として選択する
請求項１に記載のエコー除去装置。
【請求項５】
上記伝送路推定値記憶部は、上記更新部を第１の更新部とし、該第１の更新部とは別の第２の更新部をさらに記憶し、
上記エコー推定値取得部は、上記入力音声信号と上記伝送路推定値の確定部および第２の更新部とを用いて第４のエコー推定値を得、
上記誤差信号取得部は、上記収音信号から上記第４のエコー推定値を差し引いて第４の誤差信号を得、
上記第４の誤差信号に基づいて、上記伝送路推定値の第２の更新部を更新する第３の伝送路推定値更新部をさらに備え、
上記第２の伝送路推定値更新部は、
上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いとき、上記伝送路推定値の保留部を上記伝送路推定値の確定部に累積加算し、上記伝送路推定値の第１の更新部を上記伝送路推定値の保留部に代入し、その後に、該第１の更新部および上記第２の更新部をゼロクリアし、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないとき、上記伝送路推定値の第２の更新部を上記伝送路推定値の保留部に代入し、その後に、該第２の更新部および上記第１の更新部をゼロクリアする
請求項４に記載のエコー除去装置。
【請求項６】
上記エコー推定値取得部は、上記入力音声信号と上記伝送路推定値の確定部および保留部とを用いて第２のエコー推定値をさらに得、
上記誤差信号取得部は、上記収音信号から上記第２のエコー推定値を差し引いて第２の誤差信号をさらに得、
上記一定期間毎に、直前の一定期間における、上記収音信号のエネルギーＥＮ１と、上記第１の誤差信号のエネルギーＥＮ２と、上記第２の誤差信号のエネルギーＥＮ３と、上記第３の誤差信号のエネルギーＥＮ４とを得るエネルギー取得部をさらに備え、
ＥＮ２／ＥＮ３＞１．０、またはＥＮ（ＥＮ４、ＥＮ２またはＥＮ３）／ＥＮ１＜＜１．０かつＥＮ２／ＥＮ３＞〜１．０であるとき、上記直前の一定期間では、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いと判断する判断部をさらに備える
請求項４に記載のエコー除去装置。
【請求項７】
伝送路推定値更新処理ステップと、出力選択ステップとを有し、
上記伝送路推定値更新処理ステップでは、
伝送路推定値を確定部、保留部および更新部に分け、
上記伝送路推定値の確定部、保留部および更新部の全てを用いて求められるエコー推定値からの誤差により上記伝送路推定値の更新部の更新を行い、
一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いと判断されるとき、上記伝送路推定値の保留部を上記伝送路推定値の確定部に累積加算し、上記伝送路推定値の更新部を上記伝送路推定値の保留部に代入し、その後に、該更新部をゼロクリアし、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないと判断されるとき、上記伝送路推定値の更新部を上記伝送路推定値の保留部に代入し、その後に、該更新部をゼロクリアし、
上記出力選択ステップでは、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いと判断されるとき、上記伝送路推定値の確定部、保留部および更新部の全てを用いて求められるエコー推定値からの誤差を出力音声信号として選択し、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないと判断されるとき、上記伝送路推定値の確定部のみを用いて求められるエコー推定値からの誤差を出力音声信号として選択する
エコー除去方法。
【請求項８】
コンピュータを、伝送路推定値更新処理手段および出力選択手段として機能させるプログラムであって、
上記伝送路推定値更新処理手段は、
伝送路推定値を確定部、保留部および更新部に分け、
上記伝送路推定値の確定部、保留部および更新部の全てを用いて求められるエコー推定値からの誤差により上記伝送路推定値の更新部の更新を行い、
一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いと判断されるとき、上記伝送路推定値の保留部を上記伝送路推定値の確定部に累積加算し、上記伝送路推定値の更新部を上記伝送路推定値の保留部に代入し、その後に、該更新部をゼロクリアし、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないと判断されるとき、上記伝送路推定値の更新部を上記伝送路推定値の保留部に代入し、その後に、該更新部をゼロクリアし、
上記出力手段は、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いと判断されるとき、上記伝送路推定値の確定部、保留部および更新部の全てを用いて求められるエコー推定値からの誤差を出力音声信号として選択し、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないと判断されるとき、上記伝送路推定値の確定部のみを用いて求められるエコー推定値からの誤差を出力音声信号として選択する
プログラム。
【請求項９】
コンピュータを、伝送路推定値更新処理手段および出力選択手段として機能させるプログラムを記録した記録媒体であって、
上記伝送路推定値更新処理手段は、
伝送路推定値を確定部、保留部および更新部に分け、
上記伝送路推定値の確定部、保留部および更新部の全てを用いて求められるエコー推定値からの誤差により上記伝送路推定値の更新部の更新を行い、
一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いと判断されるとき、上記伝送路推定値の保留部を上記伝送路推定値の確定部に累積加算し、上記伝送路推定値の更新部を上記伝送路推定値の保留部に代入し、その後に、該更新部をゼロクリアし、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないと判断されるとき、上記伝送路推定値の更新部を上記伝送路推定値の保留部に代入し、その後に、該更新部をゼロクリアし、
上記出力手段は、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いと判断されるとき、上記伝送路推定値の確定部、保留部および更新部の全てを用いて求められるエコー推定値からの誤差を出力音声信号として選択し、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないと判断されるとき、上記伝送路推定値の確定部のみを用いて求められるエコー推定値からの誤差を出力音声信号として選択する、
記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、エコー除去装置、エコー除去方法、プログラムおよび記録媒体に関し、特に、ダブルトークなどの外乱がある場合にもエコー除去を良好に行い得るエコー除去装置などに関する。
【背景技術】
【０００２】
例えば、電話システム、あるいはテレビ会議システムなど、マイクロホンによる収音信号を双方向で通信するシステムでは、エコーの発生により、通話品質が低下することが知られている。例えば、遠端（far end：相手側）で収音された音声信号が近端（near end：自分側）のスピーカーで出力され、その再生音声が近端のマイクロホンに回りこんで収音された場合に、遠端にエコーとして戻る。また、例えば、近端で収音された音声信号が遠端のスピーカーで出力され、その再生音声が遠端のマイクロホンに回りこんで収音された場合に、近端にエコーとして戻る。
【０００３】
図１５は、エコーの発生原理を概略的に示している。図１５において、破線の経路は、遠端で収音された音声信号ｙｆによるエコー発生の経路を示している。すなわち、遠端において音声Ｖｆがマイクロホンで収音されて得られた音声信号ｙｆが近端のスピーカーに供給されて再生される。この再生音声はスピーカーからマイクロホンの音響特性ｈｎを経て近端のマイクロホンに回り込んで収音される。そして、この収音による音声信号ｙｎが遠端のスピーカーにエコーとして戻って再生される。
【０００４】
同様に、図１５において、一定鎖線の経路は、近端で収音された音声信号ｙｎによるエコー発生の経路を示している。すなわち、近端において音声Ｖｎがマイクロホンで収音されて得られた音声信号ｙｎが遠端のスピーカーに供給されて再生される。この再生音声はスピーカーからマイクロホンの音響特性ｈｆを経て遠端のマイクロホンに回り込んで収音される。そして、この収音による音声信号ｙｆが近端のスピーカーにエコーとして戻って再生される。
【０００５】
従来、遠端および近端で回り込みの音響特性を推定し、エコー成分をキャンセルする（差し引く）ことが行われている。図１６は、エコーキャンセルの原理を概略的に示している。近端では、遠端から送られてくる音声信号から伝達特性推定ベクトル［ｈｎ（ハット）］に基づいてエコー推定値が求められる。そして、このエコー推定値がマイクロホンで収音されて得られた音声信号ｙｎから差し引かれ、遠端にはエコー成分が除去された音声信号が送られる。
【０００６】
一方、遠端では、近端から送られてくる音声信号から伝達特性推定ベクトル［ｈｆ（ハット）］に基づいてエコー推定値が求められる。そして、このエコー推定値がマイクロホンで収音されて得られた音声信号ｙｆから差し引かれ、近端にはエコー成分が除去された音声信号が送られる。
【０００７】
ここで、伝達特性推定ベクトルは、ＬＭＳ（Least Mean Square）に代表される適応アルゴリズムにより更新される。図１７は、ＬＭＳアルゴリズムを利用して伝達特性推定ベクトルを更新するように構成されたエコー除去装置（エコーキャンセラ）２００の構成例を示している。以下の説明では、このエコー除去装置２００は近端に配置されたものであるとして説明する。
【０００８】
このエコー除去装置２００は、バッファ部２０１と、レジスタ部２０２と、減算器２０３と、乗算器２０４と、係数器２０５と、加算器２０６を有している。なお、図１７において、スピーカーＳＰは、遠端から送られてくる入力音声信号ｘkを再生し、再生音声を出力する。また、図１７において、マイクロホンＭＣは、近端の音声ｎkを収音する。なお、このマイクロホンＭＣには、スピーカーＳＰからの再生音声が音響特性ｈを経て回り込んで収音される。
【０００９】
バッファ部２０１は、入力音声信号ｘkを一時的に蓄積し、エコーの長さをカバーできるサンプル数Ｎでベクトル化された入力音声信号ベクトルｘk＝（ｘk-N-1，，，ｘk-2，ｘk-1，ｘk）を出力する。ここで、ｘkは、現在のサンプルを示している。例えば、サンプル数Ｎは、入力音声信号ｘkのサンプリング周波数が８ｋＨｚで、エコーの長さが１０ｍsecであれば、「８０」となる。
【００１０】
レジスタ部２０２は、Ｎ次の伝達特性推定ベクトルｈ（ハット）を記憶する。また、このレジスタ部２０２は、バッファ部２０１から出力される入力音声信号ベクトルｘk＝（ｘk-N-1，，，ｘk-2，ｘk-1，ｘk）と、このＮ次の伝達特性推定ベクトル［ｈ（ハット）］との内積をとって、エコー推定値ｙk（ハット）を求める。ここで、内積をとることは畳み込み演算を行うことに相当し、エコー推定値ｙk（ハット）は、以下の（１）式のように求められる。
【００１１】
【数１】
2013030868.tif 000003
【００１２】
減算器２０３は、マイクロホンＭＣで収音されて得られた音声信号ｙkから、レジスタ部２０２で求められたエコー推定値ｙk（ハット）を差し引き、誤差信号ｅkを求める。この誤差信号ｅkは、エコー成分がキャンセルされた出力音声信号ｎk（ハット）として遠端に送られる。
【００１３】
乗算器２０４は、バッファ部２０１から出力される入力音声信号ベクトルｘk＝（ｘk-N-1，，，ｘk-2，ｘk-1，ｘk）と減算器２０３で求められた誤差信号ｅkとの積をとる。係数器２０５は、乗算器２０４の出力に適切な重みμ（例えば０．０１など）を掛ける。加算器２０６は、レジスタ部２０２に記憶されているＮ次の伝達特性推定ベクトルｈ（ハット）に、係数器２０５の出力（Ｎ次元ベクトル）を累積加算する。レジスタ部２０２は、この累積加算値を、新たなＮ次の伝達特性推定ベクトルｈ（ハット）として記憶し、記憶内容を更新する。
【００１４】
図１７に示すエコー除去装置２００の動作を説明する。遠端から送られてくる入力音声信号ｘkは、バッファ部２０１に供給される。このバッファ部２０１では、入力音声信号ｘkが一時的に蓄積され、エコーの長さをカバーできるサンプル数Ｎでベクトル化された入力音声信号ベクトルｘk＝（ｘk-N-1，，，ｘk-2，ｘk-1，ｘk）が得られる。この入力音声信号ベクトルｘkは、レジスタ部２０２および積算器２０４に供給される。
【００１５】
レジスタ部２０２には、Ｎ次の伝達特性推定ベクトルｈ（ハット）が記憶されている。そして、このレジスタ部２０２では、バッファ部２０１からのＮ次の入力音声信号ベクトルｘk＝（ｘk-N-1，，，ｘk-2，ｘk-1，ｘk）と、このＮ次の伝達特性推定ベクトルｈ（ハット）との内積がとられ、エコー推定値ｙk（ハット）が求められる（（１）式参照）。このエコー推定値ｙk（ハット）は、減算器２０３に供給される。
【００１６】
減算器２０３では、マイクロホンＭＣで収音されて得られた音声信号ｙkから、エコー推定値ｙk（ハット）が差し引かれ、誤差信号ｅkが求められる。この誤差信号ｅkは、エコー成分がキャンセルされた出力音声信号ｎk（ハット）として遠端に送られる。また、この誤差信号ｅkは乗算器２０４に供給される。
【００１７】
乗算器２０４では、入力音声信号ベクトルｘk＝（ｘk-N-1，，，ｘk-2，ｘk-1，ｘk）と誤差信号ｅkとの積がとられる。この乗算器２０４の出力は、係数器２０５で適切な重みμが掛けられた後に、加算器２０６に供給される。この加算器２０６では、レジスタ部２０２に記憶されているＮ次の伝達特性推定ベクトルｈ（ハット）に、係数器２０５の出力（Ｎ次元ベクトル）が累積加算される。そして、レジスタ部２０２では、この累積加算値が、新たなＮ次の伝達特性推定ベクトルｈ（ハット）として記憶され、この伝達特性推定ベクトルｈ（ハット）の更新が行われる。
【００１８】
図１７に示すエコー除去装置２００において、レジスタ部２０２に記憶される伝達特性推定ベクトルｈ（ハット）の推定は、遠端からの音声を参照信号とするので無音でないときに伝達特性推定が行われる。通常、会話は交互に行われるが、遠端の音声と同時に近端の音声ｎkが発音されると、伝達特性推定に関して近端の音声ｎkは外乱となり、伝達特性推定値を乱すことになる。これによりエコーの十分なキャンセルが得られなかったり、遠端に届ける音声が歪んだりする。例えば、特許文献１には、外乱の発生を検出し、その区間は適応アルゴリズムの更新をとめることで、対処することが記載されている。
【先行技術文献】
【特許文献】
【００１９】
【特許文献１】特開２００６−２７０７０９号公報
【発明の概要】
【発明が解決しようとする課題】
【００２０】
特許文献１に記載される対処方法では、（１）外乱の発生の検出を精度よく行うことが難しい、（２）外乱の発生を検出したときにはすでに適応アルゴリズムの更新が進んでしまっていて伝達特性推定ベクトルが乱れてしまっている、という困難があり、エコー除去装置の性能の改善は難しかった。
【００２１】
本技術の目的は、エコー除去装置の性能の改善を図ることにある。
【課題を解決するための手段】
【００２２】
本技術の概念は、
伝送路推定値更新処理部と、出力選択部とを備え、
上記伝送路推定値更新処理部は、
伝送路推定値を確定部、保留部および更新部に分け、
上記伝送路推定値の確定部、保留部および更新部の全てを用いて求められるエコー推定値からの誤差により上記伝送路推定値の更新部の更新を行い、
一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いと判断されるとき、上記伝送路推定値の保留部を上記伝送路推定値の確定部に累積加算し、上記伝送路推定値の更新部を上記伝送路推定値の保留部に代入し、その後に、該更新部をゼロクリアし、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないと判断されるとき、上記伝送路推定値の更新部を上記伝送路推定値の保留部に代入し、その後に、該更新部をゼロクリアし、
上記出力選択部は、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いと判断されるとき、上記伝送路推定値の確定部、保留部および更新部の全てを用いて求められるエコー推定値からの誤差を出力音声信号として選択し、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないと判断されるとき、上記伝送路推定値の確定部のみを用いて求められるエコー推定値からの誤差を出力音声信号として選択する
エコー除去装置にある。
【００２３】
本技術においては、伝送路推定値更新処理部と出力選択部とが備えられる。伝送路推定値更新処理部では、伝送路推定値が確定部、保留部および更新部に分けられる。そして、伝送路推定値更新処理部では、伝送路推定値の更新部は、伝送路推定値の確定部、保留部および更新部の全てを用いて求められるエコー推定値からの誤差により更新される。
【００２４】
また、伝送路推定値更新処理部では、一定期間毎に、伝送路推定値の確定部および保留部を合わせた推定値が伝送路推定値の確定部単体の推定値よりも良いと判断されるか否かにより、伝送路推定値の確定部、保留部および更新部が以下のように更新される。すなわち、良いと判断されるとき、保留部が確定部に累積加算され、更新部が保留部に代入され、その後に、この更新部はゼロクリアされる。一方、良くないと判断されるとき、更新部は保留部に代入され、その後に、この更新部はゼロクリアされる。このとき、保留部は確定部に累積加算されない。
【００２５】
また、出力選択部は、一定期間毎に、伝送路推定値の確定部および保留部を合わせた推定値が伝送路推定値の確定部単体の推定値よりも良いと判断されるか否かにより、出力音声信号が以下のように選択される。すなわち、良いと判断されるとき、伝送路推定値の確定部、保留部および更新部の全てを用いて求められるエコー推定値からの誤差が出力音声信号として選択される。一方、良くないと判断されるとき、伝送路推定値の確定部のみを用いて求められるエコー推定値からの誤差が出力音声信号として選択される。
【００２６】
このように、本技術においては、一定期間毎に、伝送路推定値の更新部が伝送路推定値の保留部に代入されるが、伝送路推定値の確定部および保留部を合わせた推定値が伝送路推定値の確定部単体の推定値よりも良くないと判断されるとき、伝送路推定値の保留部は伝送路推定値の確定部に累積加算されない。そのため、外乱があっても伝送路推定値の確定部は乱されることがなく、外乱に強いものとなる。
【００２７】
また、本技術においては、伝送路推定値の確定部および保留部を合わせた推定値が伝送路推定値の確定部単体の推定値よりも良くないと判断されるとき、伝送路推定値の確定部のみを用いて求められるエコー推定値からの誤差が出力音声信号として選択される。そのため、エコー成分がキャンセルされた出力音声信号として安定したものを得ることができる。
【００２８】
また、本技術においては、伝送路推定値の更新部は、伝送路推定値の確定部、保留部および更新部の全てを用いて求められるエコー推定値からの誤差により更新される。そのため、伝送路推定値の確定部、保留部および更新部の全体としての伝送路推定は従来と同じであり、収束特性を劣化させることはない。
【００２９】
なお、本技術において、例えば、伝送路推定値更新処理部は、更新部を第１の更新部とし、この第１の更新部とは別の第２の更新部をさらに用意し、伝送路推定値の確定部および第２の更新部を用いて求められるエコー推定値からの誤差により伝送路推定値の第２の更新部の更新を行い、一定期間毎に、伝送路推定値の確定部および保留部を合わせた推定値が伝送路推定値の確定部単体の推定値よりも良いと判断されるとき、伝送路推定値の保留部を伝送路推定値の確定部に累積加算し、伝送路推定値の第１の更新部を伝送路推定値の保留部に代入し、その後に、この第１更新部および第２の更新部をゼロクリアし、一定期間毎に、伝送路推定値の確定部および保留部を合わせた推定値が伝送路推定値の確定部単体の推定値よりも良くないと判断されるとき、伝送路推定値の第２の更新部を伝送路推定値の保留部に代入し、その後に、この第２の更新部および第１の更新部をゼロクリアする、ようにされてもよい。
【００３０】
この場合、一定期間毎に、伝送路推定値の確定部および保留部を合わせた推定値が伝送路推定値の確定部単体の推定値よりも良くないと判断されるとき、第２の更新部が保留部に代入される。この第２の更新部は、伝送路推定値の確定部および第２の更新部を用いて求められるエコー推定値からの誤差により更新されている。そのため、外乱による伝送路推定値の乱れのある保留部の影響のない更新を行うことができ、外乱後即座に精度のよい伝送路推定を継続できる。
【００３１】
また、本技術において、例えば、一定期間毎に、伝送路推定値の確定部および保留部を用いて求められるエコー推定値からの誤差と、伝送路推定の確定部のみを用いて求められるエコー推定値からの誤差とに基づいて、伝送路推定値の確定部および保留部を合わせた推定値が伝送路推定値の確定部単体の推定値よりも良いか否かを判断する判断部をさらに備える、ようにされてもよい。
【００３２】
また、本技術において、例えば、
上記伝送路推定値更新処理部は、
上記伝送路推定値の確定部、保留部および更新部を記憶する伝送路推定値記憶部と、
入力音声信号と上記伝送路推定値の確定部とを用いて第１のエコー推定値を得ると共に、上記入力音声信号と上記伝送路推定値の確定部、保留部および更新部の全てを用いて第３のエコー推定値を得るエコー推定値取得部と、
収音信号から上記第１のエコー推定値を差し引いて第１の誤差信号を得ると共に、上記収音信号から上記第３のエコー推定値を差し引いて第３の誤差信号を得る誤差信号取得部と、
上記第３の誤差信号に基づいて、上記伝送路推定値の更新部を更新する第１の伝送路推定値更新部と、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いとき、上記伝送路推定値の保留部を上記伝送路推定値の確定部に累積加算し、上記伝送路推定値の更新部を上記伝送路推定値の保留部に代入し、その後に、該更新部をゼロクリアし、上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないとき、上記伝送路推定値の更新部を上記伝送路推定値の保留部に代入し、その後に、該更新部をゼロクリアする第２の伝送路推定値更新部とを有し、
上記出力選択部は、
上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いとき、上記第３の誤差信号を出力音声信号として選択し、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないとき、上記第１の誤差信号を上記出力音声信号として選択する、
ようにされてもよい。
【００３３】
本技術において、伝送路推定値は、確定部、保留部および更新部の３つに分けられて、それぞれが伝送路推定値記憶部に記憶されている。エコー推定値取得部により、第１のエコー推定値および第３のエコー推定値が得られる。第１のエコー推定値は、入力音声信号と伝送路推定値の確定部とを用いることで得られる。第３のエコー推定値は、入力音声信号と伝送路推定値の確定部、保留部および更新部の全てを用いることで得られる。
【００３４】
誤差信号取得部により、第１の誤差信号および第３の誤差信号が得られる。第１の誤差信号は、収音信号から第１のエコー推定値が差し引かれることで得られる。第３の誤差信号は、収音信号から第３のエコー推定値が差し引かれることで得られる。第１の伝送路推定値更新部により、第３の誤差信号に基づいて、伝送路推定値の更新部が更新される。この更新には、ＬＭＳ等の適応アルゴリズムが用いられる。第２の伝送路推定値更新部により、伝送路推定値の確定部および保留部を合わせた推定値が伝送路推定値の確定部単体の推定値よりも良いか否かの判断結果に基づいて、一定期間毎に、伝送路推定値が更新される。
【００３５】
例えば、エコー推定値取得部は、入力音声信号と伝送路推定値の確定部および保留部とを用いて第２のエコー推定値をさらに得、誤差信号取得部は、収音信号から第２のエコー推定値を差し引いて第２の誤差信号をさらに得、一定期間毎に、直前の一定期間における、収音信号のエネルギーＥＮ１と、第１の誤差信号のエネルギーＥＮ２と、第２の誤差信号のエネルギーＥＮ３と、第３の誤差信号のエネルギーＥＮ４とを得るエネルギー取得部をさらに備え、ＥＮ２／ＥＮ３＞１．０、またはＥＮ（ＥＮ４、ＥＮ２またはＥＮ３）／ＥＮ１＜＜１．０かつＥＮ２／ＥＮ３＞〜１．０であるとき、直前の一定期間では、伝送路推定値の確定部および保留部を合わせた推定値が伝送路推定値の確定部単体の推定値よりも良いと判断する判断部をさらに備える、ようにされてもよい。
【００３６】
第２の伝送路推定値更新部により、良いと判断されるとき、伝送路推定値の保留部が伝送路推定値の確定部に累積加算され、伝送路推定値の更新部が伝送路推定値の保留部として代入され、その後に、この更新部がゼロクリアされる。一方、良くないと判断されるとき、伝送路推定値の更新部が伝送路推定値の保留部として代入され、その後に、この更新部がゼロクリアされる。
【００３７】
そして、出力選択部により、上述の判断結果に基づいて、一定期間毎に、エコーがキャンセルされた音声信号として出力すべき出力音声信号の選択がなされる。この場合、良いと判断されるとき、第３の誤差信号が出力音声信号として選択される。一方、良くないと判断されるとき、第１の誤差信号が出力音声信号として選択される。
【００３８】
このように、本技術においては、一定期間毎に、伝送路推定値の更新部が伝送路推定値の保留部に代入されるが、直前の一定期間が外乱期間であったと判断されるとき、伝送路推定値の保留部は伝送路推定値の確定部に累積加算されない。そのため、外乱があっても伝送路推定値の確定部は乱されることがなく、外乱に強いものとなる。
【００３９】
また、本技術においては、直前の一定期間が外乱期間であったと判断されるとき、第１の誤差信号が出力音声信号として選択される。この第１の誤差信号は、収音信号から伝送路推定値の確定部のみで求められる第１のエコー推定値が差し引かれて得られたものであり、エコー成分がキャンセルされた出力音声信号として安定したものを得ることができる。
【００４０】
また、本技術においては、第３のエコー推定値は、入力音声信号と、伝送路推定値の確定部、保留部および更新部の全てを用いることで得られたものであり、第３の誤差信号は収音信号から第３のエコー推定値が差し引かれて得られたものである。そして、この第３の誤差信号に基づいて伝送路推定値の更新部が更新される。そのため、伝送路推定値の確定部、保留部および更新部の全体としての伝送路推定は従来と同じであり、収束特性を劣化させることはない。
【００４１】
なお、本技術において、例えば、伝送路推定値記憶部は、更新部を第１の更新部とし、この第１の更新部とは別の第２の更新部をさらに記憶し、エコー推定値取得部は、入力音声信号と伝送路推定値の確定部および第２の更新部とを用いて第４のエコー推定値を得、誤差信号取得部は、収音信号から第４のエコー推定値を差し引いて第４の誤差信号を得、第４の誤差信号に基づいて、伝送路推定値の第２の更新部を更新する第３の伝送路推定値更新部をさらに備え、第２の伝送路推定値更新部は、伝送路推定値の確定部および保留部を合わせた推定値が伝送路推定値の確定部単体の推定値よりも良いとき、伝送路推定値の保留部を伝送路推定値の確定部に累積加算し、伝送路推定値の第１の更新部を伝送路推定値の保留部に代入し、その後に、この第１の更新部および第２の更新部をゼロクリアし、伝送路推定値の確定部および保留部を合わせた推定値が伝送路推定値の確定部単体の推定値よりも良くないとき、伝送路推定値の第２の更新部を伝送路推定値の保留部に代入し、その後に、この第２の更新部および第１の更新部をゼロクリアする、ようにされてもよい。
【００４２】
この場合、伝送路推定値の確定部および保留部を合わせた推定値が伝送路推定値の確定部単体の推定値よりも良くないと判断されるとき、伝送路推定値の第２の更新部が伝送路推定値の保留部に代入される。この第２の更新部は、収音信号から、入力音声信号と伝送路推定値の確定部および第２の更新部とを用いることで得られた第４のエコー推定値が差し引かれて得られた第４の誤差信号に基づいて更新されている。そのため、外乱による伝送路推定値の乱れのある保留部の影響のない更新を行うことができ、外乱後即座に精度のよい伝送路推定を継続できる。
【発明の効果】
【００４３】
本技術によれば、エコー除去装置の性能の改善を図ることができる。
【図面の簡単な説明】
【００４４】
【図１】本技術の第１の実施の形態としてのエコー除去装置の構成例を示すブロック図である。
【図２】エコー除去装置を構成する評価部の構成例を示すブロック図である。
【図３】伝達特性推定ベクトルの確定部ｈfix（ハット）、保留部ｈsusp（ハット）、更新部ｈadapt（ハット）と、第１、第２、第３の誤差信号ｅ(1)k，ｅ(2)k，ｅ(3)kのエネルギーと、制御信号ＣＮ１，ＣＮ２と、出力選択の推移例を示す図である。
【図４】エコー除去装置におけるエコー除去の処理手順の一例を示すフローチャート（１／２）である。
【図５】エコー除去装置におけるエコー除去の処理手順の一例を示すフローチャート（２／２）である。
【図６】第１〜第３のエコー推定値を求める処理の詳細を示すフローチャートである。
【図７】第１〜第３の誤差信号を求める処理の詳細を示すフローチャートである。
【図８】直前の一定期間が外乱期間であったか否かを判断する処理の詳細を示すフローチャートである。
【図９】本技術の第２の実施の形態としてのエコー除去装置の構成例を示すブロック図である。
【図１０】伝達特性推定ベクトルの確定部ｈfix（ハット）、保留部ｈsusp（ハット）、更新部ｈadapt（ハット）、更新部ｈspare(ハット)と、第１、第２、第３の誤差信号ｅ(1)k，ｅ(2)k，ｅ(3)kのエネルギーと、制御信号ＣＮ１，ＣＮ２と、出力選択の推移例を示す図である。
【図１１】エコー除去装置におけるエコー除去の処理手順の一例を示すフローチャート（１／２）である。
【図１２】エコー除去装置におけるエコー除去の処理手順の一例を示すフローチャート（２／２）である。
【図１３】第１〜第４のエコー推定値を求める処理の詳細を示すフローチャートである。
【図１４】第１〜第４の誤差信号を求める処理の詳細を示すフローチャートである。
【図１５】エコーの発生原理を概略的に示す図である。
【図１６】エコーキャンセルの原理を概略的に示す図である。
【図１７】ＬＭＳアルゴリズムを利用して伝達特性推定ベクトルを更新するように構成されたエコー除去装置（エコーキャンセラ）の構成例を示すブロック図である。
【発明を実施するための形態】
【００４５】
以下、発明を実施するための形態（以下、「実施の形態」とする）について説明する。なお、説明を以下の順序で行う。
１．第１の実施の形態
２．第２の実施の形態
３．変形例
【００４６】
＜１．第１の実施の形態＞
［エコー除去装置の構成例］
図１は、第１の実施の形態としてのエコー除去装置（エコーキャンセラ）１００の構成例を示している。このエコー除去装置１００は、ＬＭＳアルゴリズムを利用して伝達特性推定ベクトルを更新するように構成されている。以下の説明では、このエコー除去装置１００は近端（near end）に配置されたものであるとして説明する。
【００４７】
このエコー除去装置１００は、バッファ部１０１と、評価部１０２と、出力選択部１０３を有している。また、エコー除去装置１００は、レジスタ部１１１と、減算器１１２と、加算器１１３を有している。また、エコー除去装置１００は、レジスタ部１２１と、加算器１２２と、減算器１２３と、接続スイッチ１２４を有している。さらに、エコー除去装置１００は、レジスタ部１３１と、加算器１３２と、減算器１３３と、乗算器１３４と、係数器１３５と、加算器１３６を有している。
【００４８】
ここで、レジスタ部１１１，１２１，１３１は、伝送路推定値記憶部を構成している。また、レジスタ部１１１，１２１，１３１、加算器１２２，１３２は、エコー推定値取得部を構成している。また、減算器１１２，１２３，１３３は、誤差信号取得部を構成している。また、評価部１０２は、外乱判断部を構成している。また、乗算器１３４，係数器１３５、加算器１３６、レジスタ部１３１は、第１の伝送路推定値更新部を構成している。さらに、評価部１０２、接続スイッチ１２４、レジスタ部１１１，１２１，１３１は、第２の伝送路推定値更新部を構成している。
【００４９】
なお、図１において、スピーカーＳＰは、遠端（far end）から送られてくる入力音声信号ｘkを再生し、再生音声を出力する。また、図１において、マイクロホンＭＣは、近端の音声ｎkを収音する。なお、このマイクロホンＭＣには、スピーカーＳＰからの再生音声が音響特性ｈを経て回り込んで収音される。
【００５０】
バッファ部１０１は、入力音声信号ｘkを一時的に蓄積し、エコーの長さをカバーできるサンプル数Ｎでベクトル化された入力音声信号ベクトルｘk＝（ｘk-N-1，，，ｘk-2，ｘk-1，ｘk）を出力する。ここで、ｘkは、現在のサンプルを示している。例えば、サンプル数Ｎは、入力音声信号ｘkのサンプリング周波数が８ｋＨｚで、エコーの長さが１０ｍsecであれば、「８０」となる。
【００５１】
レジスタ部１１１は、Ｎ次の伝達特性推定ベクトル（伝送路推定値）の確定部ｈfix（ハット）を記憶する。また、このレジスタ部１１１は、バッファ部１０１から出力される入力音声信号ベクトルｘk＝（ｘk-N-1，，，ｘk-2，ｘk-1，ｘk）と、このＮ次の伝達特性推定ベクトルの確定部ｈfix（ハット）との内積をとる。ここで、内積をとることは畳み込み演算を行うことに相当する。このレジスタ部１１１で求められる内積値Ｆ１は、そのまま第１のエコー推定値ｙ(1)k（ハット）となる。
【００５２】
減算器１１２は、マイクロホンＭＣで収音されて得られた音声信号ｙk、つまり収音信号ｙkから、レジスタ部１１１で求められた第１のエコー推定値ｙ(1)k（ハット）を差し引き、第１の誤差信号ｅ(1)kを求める。加算器１１３は、レジスタ部１２１から接続スイッチ１２４を通じてＮ次の伝達特性推定ベクトルの保留部ｈsusp（ハット）が供給されるとき、レジスタ部１１１に記憶されている確定部ｈfix（ハット）に、その保留部ｈsusp（ハット）を累積加算する。
【００５３】
レジスタ部１１１は、タイミング信号ＴＳに基づいて、一定期間毎に、加算器１１３の出力を、新たなＮ次の伝達特性推定ベクトルの確定部ｈfix（ハット）として記憶し、記憶内容を更新する。ここで、一定期間は、例えば、サンプル数Ｍ毎の期間とされる。例えば、一定期間が１秒間であるとき、入力音声信号ｘkのサンプリング周波数が８ｋＨｚであれば、Ｍ＝「８０００」となる。
【００５４】
レジスタ部１２１は、Ｎ次の伝達特性推定ベクトルの保留部ｈsusp（ハット）を記憶する。また、このレジスタ部１２１は、バッファ部１０１から出力される入力音声信号ベクトルｘk＝（ｘk-N-1，，，ｘk-2，ｘk-1，ｘk）と、このＮ次の伝達特性推定ベクトルの保留部ｈsusp（ハット）との内積をとる。ここで、内積をとることは畳み込み演算を行うことに相当する。
【００５５】
また、レジスタ部１２１は、タイミング信号ＴＳに基づいて、一定期間毎に、レジスタ部１３１に記憶されているＮ次の伝達特性推定ベクトルの更新部ｈadapt（ハット）を、保留部ｈsusp（ハット）として記憶する。すなわち、更新部ｈadapt（ハット）は、一定期間毎に、保留部ｈsusp（ハット）に代入される。なお、更新部ｈadapt（ハット）は、この代入によって保留部ｈsusp（ハット）が更新された後にゼロクリアされる。
【００５６】
加算器１２２は、レジスタ部１１１で求められた内積値Ｆ１とレジスタ部１２１で求められた内積値Ｇ１とを加算し、第２のエコー推定値ｙ(2)k（ハット）を求める。減算器１２３は、収音信号ｙkから、加算器１２２で求められた第２のエコー推定値ｙ(2)k（ハット）を差し引き、第２の誤差信号ｅ(2)kを求める。
【００５７】
接続スイッチ１２４は、レジスタ部１２１に記憶されているＮ次の伝達特性推定ベクトルの保留部ｈsusp（ハット）を、加算器１１３に選択的に供給する。接続スイッチ１２４は、評価部１０２で得られる制御信号ＣＮ１に基づいて、接続あるいは非接続の状態となる。すなわち、接続スイッチ１２４は、評価部１０２で直前の一定期間が外乱期間でなかったと判断されるとき接続状態となり、逆に、評価部１０２で直前の一定期間が外乱期間であったと判断されるとき非接続状態となる。
【００５８】
レジスタ部１３１は、Ｎ次の伝達特性推定ベクトルの更新部ｈadapt（ハット）を記憶する。また、このレジスタ部１３１は、バッファ部１０１から出力される入力音声信号ベクトルｘk＝（ｘk-N-1，，，ｘk-2，ｘk-1，ｘk）と、このＮ次の伝達特性推定ベクトルの更新部ｈadapt（ハット）との内積をとる。
【００５９】
加算器１３２は、レジスタ部１３１で求められた内積値Ｈ１と、加算器１２２で求められた第２のエコー推定値ｙ(2)k（ハット）とを加算し、第３のエコー推定値ｙ(3)k（ハット）を求める。減算器１３３は、収音信号ｙkから、加算器１３２で求められた第３のエコー推定値ｙ(3)k（ハット）を差し引き、第３の誤差信号ｅ(3)kを求める。
【００６０】
乗算器１３４は、バッファ部１０１から出力される入力音声信号ベクトルｘk＝（ｘk-N-1，，，ｘk-2，ｘk-1，ｘk）と減算器１３３で求められた第３の誤差信号ｅ(3)kとの積をとる。係数器１３５は、乗算器１３４の出力に適切な重みμ（例えば０．０１など）を掛ける。加算器１３６は、レジスタ部１３１に記憶されているＮ次の伝達特性推定ベクトルの更新部ｈadapt（ハット）に、係数器１３５の出力（Ｎ次元ベクトル）を累積加算する。レジスタ部１３１は、この累積加算値を、新たなＮ次の伝達特性推定ベクトルの更新部ｈadapt（ハット）として記憶し、記憶内容を更新する。
【００６１】
出力選択部１０３は、減算器１１２で求められる第１の誤差信号ｅ(1)kまたは減算器１３３で求められる第３の誤差信号ｅ(3)kを、出力音声信号ｎk（ハット）として、選択的に出力する。出力選択部１０３は、評価部１０２で得られる制御信号ＣＮ２に基づいて、第１の誤差信号ｅ(1)kの選択状態あるいは第３の誤差信号ｅ(3)kの選択状態となる。
【００６２】
すなわち、出力選択部１０３は、評価部１０２で直前の一定期間が外乱期間でなかったと判断されるとき、第３の誤差信号ｅ(3)kの選択状態となる。また、出力選択部１０３は、評価部１０２で直前の一定期間が外乱期間であったと判断されるとき、第１の誤差信号ｅ(1)kの選択状態となる。ダブルトークなど外乱がない場合は、第３の誤差信号ｅ(3)kは、エコーキャンセルの精度がより高いものになる。また、第１の誤差信号ｅ(1)kは、外乱があっても、エコーキャンセルが安定して行われたものになる。
【００６３】
評価部１０２は、一定期間毎に、伝達特性推定ベクトルの確定部ｈfix（ハット）および保留部ｈsusp（ハット）を合わせた推定値が、伝達特性推定ベクトルの確定部ｈfix（ハット）単体の推定値よりも良いか否かを判断する。この実施の形態において、評価部１０２は、この判断として、以下に詳述するように、一定期間毎に、直前の一定期間が外乱期間であったか否かを判断する。
【００６４】
ここで、非外乱期間との判断は、確定部ｈfix（ハット）および保留部ｈsusp（ハット）を合わせた推定値が確定部ｈfix（ハット）単体の推定値よりも良いとの判断に対応する。一方、外乱期間との判断は、確定部ｈfix（ハット）および保留部ｈsusp（ハット）を合わせた推定値が確定部ｈfix（ハット）単体の推定値よりも良いとの判断に対応する。
【００６５】
評価部１０２は、その判断結果に応じて、制御信号ＣＮ１，ＣＮ２を出力する。制御信号ＣＮ１は、上述したように、接続スイッチ１２４を接続あるいは非接続の状態に制御する。制御信号ＣＮ２は、上述したように、出力選択部１０３を第１の誤差信号ｅ(1)kの選択状態あるいは第３の誤差信号ｅ(3)kの選択状態に制御する。
【００６６】
［評価部の構成例］
図２は、評価部１０２の構成例を示している。この評価部１０２は、収音信号ｙk、第１の誤差信号ｅ(1)k、第２の誤差信号ｅ(2)kおよび第３の誤差信号ｅ(3)kを利用して、一定期間毎に、直前の一定期間が外乱期間であったか否かを判断する。この評価部１０２は、絶対値二乗演算部１５１〜１５４と、加算器１６１〜１６４と、レジスタ１７１〜１７４と、制御出力部１８１を有している。
【００６７】
絶対値二乗演算部１５１は、収音信号ｙkに対して、サンプルデータ毎に、絶対値二乗演算を施してエネルギーを求める。加算器１６１は、レジスタ１７１の保持値に対して、絶対値二乗演算部１５１の出力を加算し、その加算出力をレジスタ１７１に供給して新たに保持させる。レジスタ１７１の保持値は、各一定期間の最初に、ゼロクリアされる。そのため、レジスタ１７１は、各一定期間の最後に、当該一定期間における収音信号ｙkのエネルギーＥＮ１を保持した状態となる。
【００６８】
絶対値二乗演算部１５２は、減算器１１２で求められた第１の誤差信号ｅ(1)kに対して、サンプルデータ毎に、絶対値二乗演算を施してエネルギーを求める。加算器１６２は、レジスタ１７２の保持値に対して、絶対値二乗演算部１５２の出力を加算し、その加算出力をレジスタ１７２に供給して新たに保持させる。レジスタ１７２の保持値は、各一定期間の最初に、ゼロクリアされる。そのため、レジスタ１７２は、各一定期間の最後に、当該一定期間における第１の誤差信号ｅ(1)kのエネルギーＥＮ２を保持した状態となる。
【００６９】
絶対値二乗演算部１５３は、減算器１２３で求められた第２の誤差信号ｅ(2)kに対して、サンプルデータ毎に、絶対値二乗演算を施してエネルギーを求める。加算器１６３は、レジスタ１７３の保持値に対して、絶対値二乗演算部１５３の出力を加算し、その加算出力をレジスタ１７３に供給して新たに保持させる。レジスタ１７３の保持値は、各一定期間の最初に、ゼロクリアされる。そのため、レジスタ１７３は、各一定期間の最後に、当該一定期間における第２の誤差信号ｅ(2)kのエネルギーＥＮ３を保持した状態となる。
【００７０】
絶対値二乗演算部１５４は、減算器１３３で求められた第３の誤差信号ｅ(3)kに対して、サンプルデータ毎に、絶対値二乗演算を施してエネルギーを求める。加算器１６４は、レジスタ１７４の保持値に対して、絶対値二乗演算部１５４の出力を加算し、その加算出力をレジスタ１７４に供給して新たに保持させる。レジスタ１７４の保持値は、各一定期間の最初に、ゼロクリアされる。そのため、レジスタ１７４は、各一定期間の最後に、当該一定期間における第３の誤差信号ｅ(3)kのエネルギーＥＮ４を保持した状態となる。
【００７１】
制御出力部１８１は、一定期間毎に、上述のエネルギーに基づいて、直前の一定期間が外乱期間であったか否かを判断し、制御信号ＣＮ１，ＣＮ２の値を決定する。制御出力部１８１は、ＥＮ２／ＥＮ３＞１．０、またはＥＮ（ＥＮ４、ＥＮ２またはＥＮ３）／ＥＮ１＜＜１．０かつＥＮ２／ＥＮ３＞〜１．０であるとき、直前の一定期間は外乱期間でなかったと判断し、ＣＮ１＝１、ＣＮ２＝１とする。制御出力部１８１は、その他のときは、直前の一定期間は外乱期間であったと判断し、ＣＮ１＝０、ＣＮ２＝０とする。
【００７２】
ＥＮ２／ＥＮ３＞１は、確定部ｈfix（ハット）のみによる第１のエコー推定値ｙ(1)k（ハット）よりも、確定部ｈfix（ハット）、保留部ｈsusp（ハット）の合算による第２のエコー推定値ｙ(2)k（ハット）の方が誤差を小さくし得ることを意味する。この場合には、保留部ｈsusp（ハット）が確定部ｈfix（ハット）をより精度の高い有効なものにするとみなせる。また、ＥＮ（ＥＮ４、ＥＮ２またはＥＮ３）／ＥＮ１＜＜１かつＥＮ２／ＥＮ３＞〜１は、保留部ｈsusp（ハット）が誤差を小さくするかは判別が難しいが、誤差信号が十分に小さく、ダブルトークなどの外乱がないまたは小さいというということを意味する。
【００７３】
なお、上述では、制御信号ＣＮ１，ＣＮ２の値を同じ判断基準で決めているが、必ずしも同じでなくてもよい。例えば、制御信号ＣＮ２に関しては、ＥＮ（ＥＮ４、ＥＮ２またはＥＮ３）／ＥＮ１＜＜１．０かつＥＮ２／ＥＮ３＞〜１．０であるときのみ、直前の一定期間は外乱期間でなかったと判断し、ＣＮ２＝１とするようにしてもよい。あるいは、例えば、制御信号ＣＮ１に関しては、ＥＮ２／ＥＮ３＞１．０であるときのみ、直前の一定期間は外乱期間でなかったと判断し、ＣＮ１＝１とするようにしてもよい。
【００７４】
［エコー除去装置の動作］
図１に示すエコー除去装置１００の動作を説明する。遠端から送られてくる入力音声信号ｘkは、バッファ部１０１に供給される。このバッファ部１０１では、入力音声信号ｘkが一時的に蓄積され、エコーの長さをカバーできるサンプル数Ｎでベクトル化された入力音声信号ベクトルｘk＝（ｘk-N-1，，，ｘk-2，ｘk-1，ｘk）が得られる。この入力音声信号ベクトルｘkは、レジスタ部１１１，１２１，１３１と、乗算器１３４に供給される。
【００７５】
レジスタ部１１１には、Ｎ次の伝達特性推定ベクトルの確定部ｈfix（ハット）が記憶されている。そして、このレジスタ部１１１では、バッファ部１０１からのＮ次の入力音声信号ベクトルｘk＝（ｘk-N-1，，，ｘk-2，ｘk-1，ｘk）と、この確定部ｈfix（ハット）との内積値Ｆ１が求められ、第１のエコー推定値ｙ(1)k（ハット）とされる。
【００７６】
この第１のエコー推定値ｙ(1)k（ハット）は、減算器１１２に供給される。また、減算器１１２には、収音信号（マイクロホンＭＣで収音されて得られた音声信号）ｙkが供給される。この減算器１１２では、収音信号ｙkから、第１のエコー推定値ｙ(1)k（ハット）が差し引かれ、第１の誤差信号ｅ(1)kが求められる。この第１の誤差信号ｅ(1)kは、評価部１０２および出力選択部１０３に供給される。
【００７７】
レジスタ部１２１には、Ｎ次の伝達特性推定ベクトルの保留部ｈsusp（ハット）が記憶されている。そして、このレジスタ部１２１では、バッファ部１０１からのＮ次の入力音声信号ベクトルｘk＝（ｘk-N-1，，，ｘk-2，ｘk-1，ｘk）と、保留部ｈsusp（ハット）との内積値Ｇ１が求められる。この内積値Ｇ１は加算器１２２に供給される。加算器１２２には、レジスタ部１１１で求められた内積値Ｆ１も供給される
【００７８】
加算器１２２では、内積値Ｆ１と内積値Ｇ１とが加算され、第２のエコー推定値ｙ(2)k（ハット）が求められる。この第２のエコー推定値ｙ(2)k（ハット）は減算器１２３に供給される。また、減算器１２３には、収音信号ｙkが供給される。この減算器１２３では、収音信号ｙkから、第２のエコー推定値ｙ(2)k（ハット）が差し引かれ、第２の誤差信号ｅ(2)kが求められる。この第２の誤差信号ｅ(2)kは、評価部１０２に供給される。
【００７９】
レジスタ部１３１には、Ｎ次の伝達特性推定ベクトルの更新部ｈadapt（ハット）が記憶されている。そして、このレジスタ部１３１では、バッファ部１０１からのＮ次の入力音声信号ベクトルｘk＝（ｘk-N-1，，，ｘk-2，ｘk-1，ｘk）と、更新部ｈadapt（ハット）との内積値Ｈ１が求められる。この内積値Ｈ１は加算器１３２に供給される。この加算器１３２には、加算器１２２で求められた第２のエコー推定値ｙ(2)k（ハット）、従って内積値Ｆ１および内積値Ｇ１の加算値も供給される。
【００８０】
加算器１３２では、内積値Ｈ１と第２のエコー推定値ｙ(2)k（ハット）とが加算され、第３のエコー推定値ｙ(3)k（ハット）が求められる。この第３のエコー推定値ｙ(3)k（ハット）は減算器１３３に供給される。また、減算器１３３には、収音信号ｙkが供給される。この減算器１３３では、収音信号ｙkから、第３のエコー推定値ｙ(3)k（ハット）が差し引かれ、第３の誤差信号ｅ(3)kが求められる。この第３の誤差信号ｅ(3)kは、評価部１０２、出力選択部１０３および乗算器１３４に供給される。
【００８１】
乗算器１３４では、入力音声信号ベクトルｘk＝（ｘk-N-1，，，ｘk-2，ｘk-1，ｘk）と第３の誤差信号ｅ(3)kとの積がとられる。この乗算器１３４の出力は、係数器１３５で適切な重みμが掛けられた後に、加算器１３６に供給される。この加算器１３６では、レジスタ部１３１に記憶されているＮ次の伝達特性推定ベクトルの更新部ｈadapt（ハット）に、係数器１３５の出力（Ｎ次元ベクトル）が累積加算される。
【００８２】
そして、レジスタ部１３１には、この累積加算値が新たな更新部ｈadapt（ハット）として記憶され、この更新部ｈadapt（ハット）の更新が行われる。このような、レジスタ部１３１における更新部ｈadapt（ハット）の更新は、入力音声信号ｘkのサンプル毎に行われる。
【００８３】
評価部１０２（図２参照）では、音声信号ｙk、第１の誤差信号ｅ(1)k、第２の誤差信号ｅ(2)kおよび第３の誤差信号ｅ(3)kに基づいて、一定期間毎に、直前の一定期間が外乱期間であったか否かが判断される。そして、評価部１０２からは、一定期間毎に、その判断結果に応じた制御信号ＣＮ１，ＣＮ２が出力される。例えば、直前の一定期間が外乱期間でなかったと判断されるときは、ＣＮ１＝１、ＣＮ２＝１とされ、直前の一定期間が外乱期間であったと判断されるときは、ＣＮ１＝０、ＣＮ２＝０とされる。
【００８４】
評価部１０２から出力される制御信号ＣＮ１は、接続スイッチ１２４に供給される。接続スイッチ１２４は、制御信号ＣＮ１に基づいて、接続あるいは非接続の状態に制御される。すなわち、接続スイッチ１２４は、評価部１０２で直前の一定期間が外乱期間でなかったと判断されるとき接続状態とされ、逆に、評価部１０２で直前の一定期間が外乱期間であったと判断されるとき非接続状態とされる。
【００８５】
評価部１０２から出力される制御信号ＣＮ２は、出力選択部１０３に供給される。出力選択部１０３は、制御信号ＣＮ２に基づいて、第１の誤差信号ｅ(1)kの選択状態あるいは第３の誤差信号ｅ(3)kの選択状態に制御される。すなわち、出力選択部１０３は、評価部１０２で直前の一定期間が外乱期間でなかったと判断されるとき、第３の誤差信号ｅ(3)kの選択状態とされる。逆に、出力選択部１０３は、評価部１０２で直前の一定期間が外乱期間であったと判断されるとき、第１の誤差信号ｅ(1)kの選択状態とされる。
【００８６】
評価部１０２で直前の一定期間が外乱期間でなかったと判断されるとき、上述したように、接続スイッチ１２４は制御信号ＣＮ１に基づいて接続状態とされる。そのため、レジスタ部１２１に記憶されているＮ次の伝達特性推定ベクトルの保留部ｈsusp（ハット）は、接続スイッチ１２４を通じて加算器１１３に供給される。そして、加算器１１３では、レジスタ部１１１に記憶されているＮ次の伝達特性推定ベクトルの確定部ｈfix（ハット）に、保留部ｈsusp（ハット）が累積加算される。そして、レジスタ部１１１では、タイミング信号ＴＳに基づいて、その累積加算値が、新たな確定部ｈfix（ハット）として記憶され、記憶内容が更新される。
【００８７】
また、このとき、レジスタ部１２１には、タイミング信号ＴＳに基づいて、レジスタ部１３１に記憶されているＮ次の伝達特性推定ベクトルの更新部adapt（ハット）が、新たな保留部ｈsusp（ハット）として記憶される。すなわち、更新部adapt（ハット）が保留部ｈsusp（ハット）に代入される。なお、レジスタ部１３１に記憶されているＮ次の伝達特性推定ベクトルの更新部adapt（ハット）は、このように保留部ｈsusp（ハット）に代入された後に、ゼロクリアされる。
【００８８】
また、このとき、上述したように、出力選択部１０３は制御信号ＣＮ２に基づいて第３の誤差信号ｅ(3)kの選択状態とされる。そのため、出力選択部１０３からは、第３の誤差信号ｅ(3)kが出力音声信号ｎk（ハット）として出力される。ダブルトークなど外乱がない場合は、第３の誤差信号ｅ(3)kは、エコーキャンセルの精度がより高いものになるからである。
【００８９】
一方、評価部１０２で直前の一定期間が外乱期間であったと判断されるとき、上述したように接続スイッチ１２４が制御信号ＣＮ１に基づいて非接続状態とされる。そのため、レジスタ部１１１に記憶されているＮ次の伝達特性推定ベクトルの確定部ｈfix（ハット）は更新されない。
【００９０】
また、このとき、レジスタ部１２１には、タイミング信号ＴＳに基づいて、レジスタ部１３１に記憶されているＮ次の伝達特性推定ベクトルの更新部adapt（ハット）が、新たな保留部ｈsusp（ハット）として記憶される。すなわち、更新部adapt（ハット）が保留部ｈsusp（ハット）に代入される。なお、レジスタ部１３１に記憶されているＮ次の伝達特性推定ベクトルの更新部adapt（ハット）は、このように保留部ｈsusp（ハット）に代入された後に、ゼロクリアされる。
【００９１】
また、このとき、上述したように、出力選択部１０３は制御信号ＣＮ２に基づいて第１の誤差信号ｅ(1)kの選択状態とされる。そのため、出力選択部１０３からは、第１の誤差信号ｅ(1)kが出力音声信号ｎk（ハット）として出力される。第１の誤差信号ｅ(1)kは、外乱があっても、エコーキャンセルが安定して行われたものになっているからである。
【００９２】
図３は、伝達特性推定ベクトルの確定部ｈfix（ハット）、保留部ｈsusp（ハット）、更新部ｈadapt（ハット）、第１、第２、第３の誤差信号ｅ(1)k，ｅ(2)k，ｅ(3)kのエネルギー、出力選択などの推移例を示している。この図３において、（１）、（２）、・・・は、それぞれ、上述の一定期間を示している。
【００９３】
期間（１）〜（４）は、初期状態からの収束過程である。収束過程であるので誤差はだんだん小さくなる。第２の誤差信号ｅ(2)kのエネルギーは第１の誤差信号のｅ(1)kのエネルギーより小さく、保留部ｈsusp（ハット）は確定部ｈfix（ハット）に順次累積加算され（「○」印参照）、徐々に収束に向かっている。
【００９４】
すなわち、期間（１）の終了時点において、直前の一定期間は外乱期間でなかったと判断され、保留部ｈsusp（ハット）は確定部ｈfix（ハット）に累積加算されて、確定部ｈfix（ハット）が更新される。また、このとき、更新部ｈadapt（ハット）が保留部ｈsusp（ハット）に代入され、この代入後に更新部ｈadapt（ハット）はゼロクリアされる。このことは、期間（２）〜（４）の終了時点においても同様である。
【００９５】
期間（５）〜（６）では、外乱が入力されている。第１、第２、第３の誤差信号ｅ(1)k，ｅ(2)k，ｅ(3)kのエネルギーはいずれも外乱により大きく、更新部ｈadapt（ハット）は乱れた値となっている。そのため、保留部ｈsusp（ハット）は確定部ｈfix（ハット）に累積加算されず（「×」印参照）、外乱の影響を避けている。なお、期間（５）の保留部ｈsusp（ハット）は外乱の起こる前の適切な値であるが、安全のため加算されない。
【００９６】
すなわち、期間（５）の終了時点において、直前の一定期間は外乱期間であったと判断され、保留部ｈsusp（ハット）は確定部ｈfix（ハット）に累積加算されない。また、このとき、、更新部ｈadapt（ハット）が保留部ｈsusp（ハット）に代入され、この代入後に更新部ｈadapt（ハット）はゼロクリアされる。このことは、期間（６）の終了時点においても同様である。
【００９７】
期間（７）では、外乱の入力が終わっている。しかし、保留部ｈsusp（ハット）は、外乱で乱された値である。第１、第２、第３の誤差信号ｅ(1)k，ｅ(2)k，ｅ(3)kのエネルギーは全体としては小さくなる。しかし、外乱の影響を残す保留部ｈsusp（ハット）の影響を含む第２の誤差信号ｅ(2)kのエネルギーは、第１の誤差信号ｅ(1)kのエネルギーより大きくなる。
【００９８】
そのため、期間（７）の終了時点において、直前の一定期間は外乱期間であったと判断され、保留部ｈsusp（ハット）は確定部ｈfix（ハット）に累積加算されず、外乱の影響を避けている。また、このとき、更新部ｈadapt（ハット）が保留部ｈsusp（ハット）に代入され、この代入後に更新部ｈadapt（ハット）はゼロクリアされる。
【００９９】
期間（８）〜では、確定部ｈfix（ハット）、保留部ｈsusp（ハット）および更新部ｈadapt（ハット）の全ては外乱の影響をまったく受けていないものになっており、通常の動作が継続される。すなわち、期間（８）の終了時点において、直前の一定期間は外乱期間でなかったと判断され、保留部ｈsusp（ハット）は確定部ｈfix（ハット）に累積加算されて、確定部ｈfix（ハット）が更新される。また、このとき、更新部ｈadapt（ハット）が保留部ｈsusp（ハット）に代入され、この代入後に更新部ｈadapt（ハット）はゼロクリアされる。このことは、以降の期間においても同様である。
【０１００】
図４、図５のフローチャートは、図１に示すエコー除去装置１００におけるエコー除去の処理手順の一例を示している。エコー除去装置１００は、ステップＳＴ１において、処理を開始し、ステップＳＴ２において、ｋ＝１に設定し、その後に、ステップＳＴ３の処理に移る。
【０１０１】
エコー除去装置１００は、ステップＳＴ３において、第１のエコー推定値ｙ(1)k（ハット）、第２のエコー推定値ｙ(2)k（ハット）および第３のエコー推定値ｙ(3)k（ハット）を生成する。図６のフローチャートは、このステップＳＴ３の処理の詳細を示している。
【０１０２】
エコー除去装置１００は、ステップＳＴ２１において、処理を開始し、その後にステップＳＴ２２の処理に移る。このステップＳＴ２２において、エコー除去装置１００は、遠端から送られてくる入力音声信号ｘkをベクトル化し、入力音声信号ベクトルｘk＝（ｘk-N-1，，，ｘk-2，ｘk-1，ｘk）を生成する。
【０１０３】
次に、エコー除去装置１００は、ステップＳＴ２３において、入力音声信号ベクトルｘkと伝達特性特性ベクトルの確定部ｈfix（ハット）との内積をとって、内積値Ｆ１を求める。また、エコー除去装置１００は、ステップＳＴ２４において、入力音声信号ベクトルｘkと伝達特性特性ベクトルの保留部ｈsusp（ハット）との内積をとって、内積値Ｇ１を求める。さらに、エコー除去装置１００は、ステップＳＴ２５において、入力音声信号ベクトルｘkと伝達特性特性ベクトルの更新部ｈadapt（ハット）との内積をとって、内積値Ｈ１を求める。なお、ステップＳＴ２３からステップＳＴ２５の処理順は、図示の順に限定されない。
【０１０４】
次に、エコー除去装置１００は、ステップＳＴ２６において、ステップＳＴ２３で求められた内積値Ｆ１を、第１のエコー推定値ｙ(1)kとする。また、エコー除去装置１００は、このステップＳＴ２６において、ステップＳＴ２３で求められた内積値Ｆ１とステップＳＴ２４で求められた内積値Ｇ１との加算値を、第２のエコー推定値ｙ(2)kとする。さらに、エコー除去装置１００は、このステップＳＴ２６において、第２のエコー推定値ｙ(2)kとステップＳＴ２５で求められた内積値Ｈ１との加算値を、第３のエコー推定値ｙ(3)kとする。エコー除去装置１００は、ステップＳＴ２６の処理の後、ステップＳＴ２７において、処理を終了する。
【０１０５】
図４に戻って、エコー除去装置１００は、ステップＳＴ３の処理の後、ステップＳＴ４の処理に移る。このステップＳＴ４において、エコー除去装置１００は、第１の誤差信号第１の誤差信号ｅ(1)k、第２の誤差信号ｅ(2)kおよび第３の誤差信号ｅ(3)kを生成する。図７のフローチャートは、このステップＳＴ４の処理の詳細を示している。
【０１０６】
エコー除去装置１００は、ステップＳＴ３１において、処理を開始し、その後にステップＳＴ３２の処理に移る。このステップＳＴ３２において、エコー除去装置１００は、収音信号（マイクロホンＭＣで収音して得られた音声信号）ｙkから第１のエコー推定値ｙ(1)k（ハット）を差し引き、第１の誤差信号ｅ(1)kを求める。
【０１０７】
次に、エコー除去装置１００は、ステップＳＴ３３において、収音信号ｙkから第２のエコー推定値ｙ(2)k（ハット）を差し引き、第２の誤差信号ｅ(2)kを求める。また、エコー除去装置１００は、ステップＳＴ３４において、収音信号ｙkから第３のエコー推定値ｙ(３)k（ハット）を差し引き、第３の誤差信号ｅ(3)kを求める。エコー除去装置１００は、ステップＳＴ３４の処理の後、ステップＳＴ３５において、処理を終了する。なお、ステップＳＴ３２からステップＳＴ３４の処理順は、図示の順に限定されない。
【０１０８】
図４に戻って、エコー除去装置１００は、ステップＳＴ４の処理の後、ステップＳＴ５の処理に移る。このステップＳＴ５において、エコー除去装置１００は、収音信号ｙk、さらには第１の誤差信号ｅ(1)k、第２の誤差信号ｅ(2)k、第３の誤差信号ｅ(3)kのそれぞれ対して、その絶対値二乗（エネルギー）を求めて累積加算する。
【０１０９】
次に、エコー除去装置１００は、ステップＳＴ６において、ＬＭＳアルゴリズムにより、第３の誤差信号ｅ(3)kに基づいて、伝達特性推定ベクトルの更新部ｈadapt（ハット）を更新する。エコー除去装置１００は、このステップＳＴ６の処理の後、ステップＳＴ７の処理に移る。
【０１１０】
ステップＳＴ７において、エコー除去装置１００は、ｋ＝Ｍであるか否か、つまり一定期間（サンプル数Ｍの期間）を経過したか否かを判断する。ｋ＝Ｍでないとき、エコー除去装置１００は、ステップＳＴ８において、ｋを１だけ増加し、その後に、ステップＳＴ３に戻って、上述したと同様の処理を繰り返し実行する。一方、ｋ＝Ｍであるとき、エコー除去装置１００は、ステップＳＴ９の処理に移る
【０１１１】
ステップＳＴ９において、エコー除去装置１００は、直前の一定期間が外乱期間であったか否かを判断する。エコー除去装置１００は、直前の一定期間における、収音信号ｙk、第１の誤差信号ｅ(1)k、第２の誤差信号ｅ(2)k、第３の誤差信号ｅ(3)kのそれぞれのエネルギーＥＮ１，ＥＮ２，ＥＮ３，ＥＮ４に基づいて判断する（図２参照）。図８のフローチャートは、このステップＳＴ９の処理の詳細を示している。
【０１１２】
エコー除去装置１００は、ステップＳＴ４１において、処理を開始し、その後にステップＳＴ４２の処理に移る。このステップＳＴ４２において、エコー除去装置１００は、ＥＮ２／ＥＮ３＞１．０であるか否かを判断する。このステップＳＴ４２で条件を満たさないとき、エコー除去装置１００は、ステップＳＴ４３において、ＥＮ４／ＥＮ１＜＜１．０かつＥＮ２／ＥＮ３＞〜１．０であるか否かを判断する。
【０１１３】
ステップＳＴ４２で条件を満たすとき、あるいはステップＳＴ４３で条件を満たすとき、エコー除去装置１００は、ステップＳＴ４４において、直前の一定期間が外乱期間でなかったと判断し、その後に、ステップＳＴ４５において、処理を終了する。一方、ステップＳＴ４３で条件を満たさないとき、エコー除去装置１００は、ステップＳＴ４６において、直前の一定期間が外乱期間であったと判断し、その後に、ステップＳＴ４５において、処理を終了する。
【０１１４】
なお、ステップＳＴ４３のＥＮ４／ＥＮ１＜＜１．０におけるＥＮ４の代わりに、ＥＮ２あるいはＥＮ３を用いてもよい。
【０１１５】
図４に戻って、エコー除去装置１００は、ステップＳＴ９の処理の後、ステップＳＴ１０（図５参照）の処理に移る。このステップＳＴ１０において、ステップＳＴ９における判断が外乱期間であったか否かを見る。外乱期間でなかったとの判断のとき、エコー除去装置１００は、ステップＳＴ１１の処理に移る。このステップＳＴ１１において、エコー除去装置１００は、伝達特性推定ベクトルの保留部ｈsusp（ハット）を、伝達特性推定ベクトルの確定部ｈfix（ハット）に累積加算する。
【０１１６】
次に、エコー除去装置１００は、ステップＳＴ１２において、伝達特性推定ベクトルの更新部ｈadapt（ハット）を、伝達特性推定ベクトルの保留部ｈsusp（ハット）に代入し、その後に、その更新部ｈadapt（ハット）をゼロクリアする。そして、エコー除去装置１００は、ステップＳＴ１３において、第３の誤差信号ｅ(3)kを、出力音声信号ｎk（ハット）として選択する。エコー除去装置１００は、このステップＳＴ１３の処理の後、ステップＳＴ２に戻り、上述したと同様の次の一定期間の処理に移る。
【０１１７】
一方、ステップＳＴ１０において、外乱期間であったとの判断のとき、エコー除去装置１００は、ステップＳＴ１４の処理に移る。このステップＳＴ１４において、エコー除去装置１００は、伝達特性推定ベクトルの更新部ｈadapt（ハット）を、伝達特性推定ベクトルの保留部ｈsusp（ハット）に代入し、その後に、その更新部ｈadapt（ハット）をゼロクリアする。そして、エコー除去装置１００は、ステップＳＴ１５において、第１の誤差信号ｅ(1)kを、出力音声信号ｎk（ハット）として選択する。エコー除去装置１００は、このステップＳＴ１５の処理の後、ステップＳＴ２に戻り、上述したと同様の次の一定期間の処理に移る。
【０１１８】
上述したように、図１に示すエコー除去装置１００においては、一定期間毎に、伝達特性推定ベクトル（伝送路推定値）の更新部ｈadapt（ハット）が伝送路推定値の保留部ｈsusp（ハット）として代入される。しかし、直前の一定期間が外乱期間であったと判断されるとき、伝達特性推定ベクトルの保留部ｈsusp（ハット）は、伝達特性推定ベクトルの確定部ｈfix（ハット）に累積加算されない。そのため、外乱があっても伝達特性推定ベクトルの確定部ｈfix（ハット）は乱されることがなく、外乱に強いものとなる。
【０１１９】
また、図１に示すエコー除去装置１００においては、直前の一定期間が外乱期間であったと判断されるとき、第１の誤差信号ｅ(1)kが出力音声信号として選択される。この第１の誤差信号ｅ(1)kは、収音信号ｙkから伝達特性推定ベクトルの確定部ｈfix（ハット）のみで求められる第１のエコー推定値ｙ(1)k（ハット）が差し引かれて得られたものである。そのため、エコー成分がキャンセルされた出力音声信号ｎk(ハット)として安定したものを得ることができる。
【０１２０】
また、図１に示すエコー除去装置１００においては、第３のエコー推定値ｙ(3)k（ハット）は、入力音声信号ベクトル（入力音声信号）ｘkと、伝達特性推定ベクトルの全てを用いることで得られたものである。ここで、伝達特性推定ベクトルの全てとは、確定部ｈfix（ハット）、保留部ｈsusp（ハット）および更新部ｈadapt（ハット）の全てである。そして、第３の誤差信号ｅ(3)kは、収音信号ｙkからこの第３のエコー推定値ｙ(3)k（ハット）が差し引かれて得られたものである。そして、この第３の誤差信号ｅ(3)kに基づいて、伝達特性推定ベクトルの更新部ｈadapt（ハット）が更新される。そのため、、伝達特性推定ベクトルの確定部ｈfix（ハット）、保留部ｈsusp（ハット）および更新部ｈadapt（ハット）の全体としての伝送路推定は従来と同じであり、収束特性を劣化させることはない。
【０１２１】
＜２．第２の実施の形態＞
［エコー除去装置の構成例］
図９は、第２の実施の形態としてのエコー除去装置（エコーキャンセラ）１００Ａの構成例を示している。この図９において、図１と対応する部分には同一符号を付し、適宜、その詳細説明は省略する。このエコー除去装置１００Ａも、図１に示すエコー除去装置１００と同様に、ＬＭＳアルゴリズムを利用して伝達特性推定ベクトルを更新するように構成されている。以下の説明では、このエコー除去装置１００Ａは近端（near end）に配置されたものであるとして説明する。
【０１２２】
このエコー除去装置１００Ａは、バッファ部１０１と、評価部１０２と、出力選択部１０３を有している。また、エコー除去装置１００Ａは、レジスタ部１１１と、減算器１１２と、加算器１１３を有している。また、エコー除去装置１００Ａは、レジスタ部１２１と、加算器１２２と、減算器１２３と、接続スイッチ１２４と、セレクタ１２５を有している。また、エコー除去装置１００Ａは、レジスタ部１３１と、加算器１３２と、減算器１３３と、乗算器１３４と、係数器１３５と、加算器１３６を有している。さらに、エコー除去装置１００Ａは、レジスタ部１４１と、加算器１４２と、減算器１４３と、乗算器１４４と、係数器１４５と、加算器１４６を有している。
【０１２３】
セレクタ１２５は、レジスタ部１３１に記憶されている伝達特性推定ベクトルの更新部ｈadapt（ハット）、あるいはレジスタ部１４１に記憶されている伝達特性推定ベクトルの更新部ｈspare（ハット）を、レジスタ部１２１に選択的に供給する。ここで、更新部ｈadapt（ハット）は第１の更新部を構成し、更新部ｈspare（ハット）は第２の更新部を構成する。
【０１２４】
セレクタ１２５は、評価部１０２で得られる制御信号ＣＮ１に基づいて、更新部ｈadapt（ハット）の選択状態あるいは更新部ｈspare（ハット）の選択状態となる。すなわち、セレクタ１２５は、評価部１０２で直前の一定期間が外乱期間でなかったと判断されるとき、更新部ｈadapt（ハット）の選択状態となる。また、セレクタ１２５は、評価部１０２で直前の一定期間が外乱期間であったと判断されるとき、更新部ｈspare（ハット）の選択状態となる。
【０１２５】
レジスタ部１２１は、タイミング信号ＴＳに基づいて、一定期間毎に、セレクタ１２５を通じて供給される更新部adapt（ハット）あるいは更新部spare（ハット）を、保留部ｈsusp（ハット）として記憶する。すなわち、更新部adapt（ハット）あるいは更新部spare（ハット）は、一定期間毎に、保留部ｈsusp（ハット）に代入される。なお、更新部adapt（ハット）および更新部spare（ハット）の双方は、この代入によって保留部ｈsusp（ハット）が更新された後にゼロクリアされる。
【０１２６】
レジスタ部１４１は、Ｎ次の伝達特性推定ベクトルの更新部ｈspare（ハット）を記憶する。また、このレジスタ部１４１は、バッファ部１０１から出力される入力音声信号ベクトルｘk＝（ｘk-N-1，，，ｘk-2，ｘk-1，ｘk）と、このＮ次の伝達特性推定ベクトルの更新部ｈspare（ハット）との内積をとる。
【０１２７】
加算器１４２は、レジスタ部１４１で求められた内積値Ｋ１と、レジスタ部１１１で求められた内積値Ｆ１とを加算し、第４のエコー推定値ｙ(4)k（ハット）を求める。減算器１４３は、収音信号（マイクロホンＭＣで収音されて得られた音声信号）ｙkから、加算器１４２で求められた第４のエコー推定値ｙ(4)k（ハット）を差し引き、第４の誤差信号ｅ(4)kを求める。
【０１２８】
乗算器１４４は、バッファ部１０１から出力される入力音声信号ベクトルｘk＝（ｘk-N-1，，，ｘk-2，ｘk-1，ｘk）と減算器１４３で求められた第４の誤差信号ｅ(4)kとの積をとる。係数器１４５は、乗算器１４４の出力に適切な重みμ（例えば０．０１など）を掛ける。加算器１４６は、レジスタ部１４１に記憶されているＮ次の伝達特性推定ベクトルの更新部ｈspare（ハット）に、係数器１４５の出力（Ｎ次元ベクトル）を累積加算する。レジスタ部１４１は、この累積加算値を、新たなＮ次の伝達特性推定ベクトルの更新部ｈspare（ハット）として記憶し、記憶内容を更新する。
【０１２９】
図９に示すエコー除去装置１００Ａのその他は、図１に示すエコー除去装置１００と同様に構成される。
【０１３０】
［エコー除去装置の動作］
図９に示すエコー除去装置１００Ａの動作を説明する。遠端から送られてくる入力音声信号ｘkは、バッファ部１０１に供給される。このバッファ部１０１では、入力音声信号ｘkが一時的に蓄積され、エコーの長さをカバーできるサンプル数Ｎでベクトル化された入力音声信号ベクトルｘk＝（ｘk-N-1，，，ｘk-2，ｘk-1，ｘk）が得られる。この入力音声信号ベクトルｘkは、レジスタ部１１１，１２１，１３１，１４１と、乗算器１３４，１４４に供給される。
【０１３１】
レジスタ部１１１には、Ｎ次の伝達特性推定ベクトルの確定部ｈfix（ハット）が記憶されている。そして、このレジスタ部１１１では、バッファ部１０１からのＮ次の入力音声信号ベクトルｘk＝（ｘk-N-1，，，ｘk-2，ｘk-1，ｘk）と、この確定部ｈfix（ハット）との内積値Ｆ１が求められ、第１のエコー推定値ｙ(1)k（ハット）とされる。この第１のエコー推定値ｙ(1)k（ハット）は、減算器１１２に供給される。
【０１３２】
この第１のエコー推定値ｙ(1)k（ハット）は、減算器１１２に供給される。また、減算器１１２には、収音信号（マイクロホンＭＣで収音されて得られた音声信号）ｙkが供給される。この減算器１１２では、収音信号ｙkから、第１のエコー推定値ｙ(1)k（ハット）が差し引かれ、第１の誤差信号ｅ(1)kが求められる。この第１の誤差信号ｅ(1)kは、評価部１０２および出力選択部１０３に供給される。
【０１３３】
レジスタ部１２１には、Ｎ次の伝達特性推定ベクトルの保留部ｈsusp（ハット）が記憶されている。そして、このレジスタ部１２１では、バッファ部１０１からのＮ次の入力音声信号ベクトルｘk＝（ｘk-N-1，，，ｘk-2，ｘk-1，ｘk）と、保留部ｈsusp（ハット）との内積値Ｇ１が求められる。この内積値Ｇ１は加算器１２２に供給される。加算器１２２には、レジスタ部１１１で求められた内積値Ｆ１も供給される
【０１３４】
加算器１２２では、内積値Ｆ１と内積値Ｇ１とが加算され、第２のエコー推定値ｙ(2)k（ハット）が求められる。この第２のエコー推定値ｙ(2)k（ハット）は減算器１２３に供給される。また、減算器１２３には、収音信号ｙkが供給される。この減算器１２３では、収音信号ｙkから、第２のエコー推定値ｙ(2)k（ハット）が差し引かれ、第２の誤差信号ｅ(2)kが求められる。この第２の誤差信号ｅ(2)kは、評価部１０２に供給される。
【０１３５】
レジスタ部１３１には、Ｎ次の伝達特性推定ベクトルの更新部ｈadapt（ハット）が記憶されている。そして、このレジスタ部１３１では、バッファ部１０１からのＮ次の入力音声信号ベクトルｘk＝（ｘk-N-1，，，ｘk-2，ｘk-1，ｘk）と、更新部ｈadapt（ハット）との内積値Ｈ１が求められる。この内積値Ｈ１は加算器１３２に供給される。この加算器１３２には、加算器１２２で求められた第２のエコー推定値ｙ(2)k（ハット）、従って内積値Ｆ１および内積値Ｇ１の加算値も供給される。
【０１３６】
加算器１３２では、内積値Ｈ１と第２のエコー推定値ｙ(2)k（ハット）とが加算され、第３のエコー推定値ｙ(3)k（ハット）が求められる。この第３のエコー推定値ｙ(3)k（ハット）は減算器１３３に供給される。また、減算器１３３には、収音信号ｙkが供給される。この減算器１３３では、収音信号ｙkから、第３のエコー推定値ｙ(3)k（ハット）が差し引かれ、第３の誤差信号ｅ(3)kが求められる。この第３の誤差信号ｅ(3)kは、評価部１０２、出力選択部１０３および乗算器１３４に供給される。
【０１３７】
乗算器１３４では、入力音声信号ベクトルｘk＝（ｘk-N-1，，，ｘk-2，ｘk-1，ｘk）と第３の誤差信号ｅ(3)kとの積がとられる。この乗算器１３４の出力は、係数器１３５で適切な重みμが掛けられた後に、加算器１３６に供給される。この加算器１３６では、レジスタ部１３１に記憶されているＮ次の伝達特性推定ベクトルの更新部ｈadapt（ハット）に、係数器１３５の出力（Ｎ次元ベクトル）が累積加算される。
【０１３８】
そして、レジスタ部１３１には、この累積加算値が新たな更新部ｈadapt（ハット）として記憶され、この更新部ｈadapt（ハット）の更新が行われる。このような、レジスタ部１３１における更新部ｈadapt（ハット）の更新は、入力音声信号ｘkのサンプル毎に行われる。
【０１３９】
レジスタ部１４１には、Ｎ次の伝達特性推定ベクトルの更新部ｈspare（ハット）が記憶されている。そして、このレジスタ部１４１では、バッファ部１０１からのＮ次の入力音声信号ベクトルｘk＝（ｘk-N-1，，，ｘk-2，ｘk-1，ｘk）と、更新部ｈspare（ハット）との内積値Ｋ１が求められる。この内積値Ｋ１は加算器１４２に供給される。この加算器１４２には、レジスタ部１１１で求められた内積値Ｆ１（第１のエコー推定値ｙ(1)k（ハット））も供給される。
【０１４０】
加算器１４２では、内積値Ｋ１と内積値Ｆ１とが加算され、第４のエコー推定値ｙ(4)k（ハット）が求められる。この第４のエコー推定値ｙ(4)k（ハット）は減算器１４３に供給される。また、減算器１４３には、収音信号ｙkが供給される。この減算器１４３では、収音信号ｙkから、第４のエコー推定値ｙ(4)k（ハット）が差し引かれ、第４の誤差信号ｅ(4)kが求められる。この第４の誤差信号ｅ(4)kは、乗算器１４４に供給される。
【０１４１】
乗算器１４４では、入力音声信号ベクトルｘk＝（ｘk-N-1，，，ｘk-2，ｘk-1，ｘk）と第４の誤差信号ｅ(4)kとの積がとられる。この乗算器１４４の出力は、係数器１４５で適切な重みμが掛けられた後に、加算器１４６に供給される。この加算器１４６では、レジスタ部１４１に記憶されているＮ次の伝達特性推定ベクトルの更新部ｈspare（ハット）に、係数器１４５の出力（Ｎ次元ベクトル）が累積加算される。
【０１４２】
そして、レジスタ部１４１には、この累積加算値が新たな更新部ｈspare（ハット）として記憶され、この更新部ｈspare（ハット）の更新が行われる。このような、レジスタ部１３１における更新部ｈspare（ハット）の更新は、入力音声信号ｘkのサンプル毎に行われる。
【０１４３】
評価部１０２（図２参照）では、音声信号ｙk、第１の誤差信号ｅ(1)k、第２の誤差信号ｅ(2)kおよび第３の誤差信号ｅ(3)kに基づいて、一定期間毎に、直前の一定期間が外乱期間であったか否かが判断される。そして、評価部１０２からは、一定期間毎に、その判断結果に応じた制御信号ＣＮ１，ＣＮ２が出力される。例えば、直前の一定期間が外乱期間でなかったと判断されるときは、ＣＮ１＝１、ＣＮ２＝１とされ、直前の一定期間が外乱期間であったと判断されるときは、ＣＮ１＝０、ＣＮ２＝０とされる。
【０１４４】
評価部１０２から出力される制御信号ＣＮ１は、接続スイッチ１２４に供給される。接続スイッチ１２４は、制御信号ＣＮ１に基づいて、接続あるいは非接続の状態に制御される。すなわち、接続スイッチ１２４は、評価部１０２で直前の一定期間が外乱期間でなかったと判断されるとき接続状態とされ、逆に、評価部１０２で直前の一定期間が外乱期間であったと判断されるとき非接続状態とされる。
【０１４５】
また、評価部１０２から出力される制御信号ＣＮ１は、セレクタ１２５に供給される。セレクタ１２５は、制御信号ＣＮ１に基づいて、更新部ｈadapt（ハット）の選択状態あるいは更新部ｈspare（ハット）の選択状態とされる。すなわち、セレクタ１２５は、評価部１０２で直前の一定期間が外乱期間でなかったと判断されるとき、更新部ｈadapt（ハット）の選択状態とされる。また、セレクタ１２５は、評価部１０２で直前の一定期間が外乱期間であったと判断されるとき、更新部ｈspare（ハット）の選択状態とされる。
【０１４６】
評価部１０２から出力される制御信号ＣＮ２は、出力選択部１０３に供給される。出力選択部１０３は、制御信号ＣＮ２に基づいて、第１の誤差信号ｅ(1)kの選択状態あるいは第３の誤差信号ｅ(3)kの選択状態に制御される。すなわち、出力選択部１０３は、評価部１０２で直前の一定期間が外乱期間でなかったと判断されるとき、第３の誤差信号ｅ(3)kの選択状態とされる。逆に、出力選択部１０３は、評価部１０２で直前の一定期間が外乱期間であったと判断されるとき、第１の誤差信号ｅ(1)kの選択状態とされる。
【０１４７】
評価部１０２で直前の一定期間が外乱期間でなかったと判断されるとき、上述したように接続スイッチ１２４が制御信号ＣＮ１に基づいて接続状態とされる。そのため、レジスタ部１２１に記憶されているＮ次の伝達特性推定ベクトルの保留部ｈsusp（ハット）は、接続スイッチ１２４を通じて加算器１１３に供給される。そして、加算器１１３では、レジスタ部１１１に記憶されているＮ次の伝達特性推定ベクトルの確定部ｈfix（ハット）に、保留部ｈsusp（ハット）が累積加算される。そして、レジスタ部１１１では、タイミング信号ＴＳに基づいて、その累積加算値が、新たな確定部ｈfix（ハット）として記憶され、記憶内容が更新される。
【０１４８】
また、このとき、上述したように、セレクタ１２５は制御信号ＣＮ１に基づいて更新部ｈadapt（ハット）の選択状態とされ、レジスタ部１３１に記憶されている伝達特性推定ベクトルの更新部adapt（ハット）がレジスタ部１２１に供給される。そのため、レジスタ部１２１には、タイミング信号ＴＳに基づいて、レジスタ部１３１に記憶されているＮ次の伝達特性推定ベクトルの更新部adapt（ハット）が、新たな保留部ｈsusp（ハット）として記憶される。すなわち、更新部adapt（ハット）が保留部ｈsusp（ハット）に代入される。なお、更新部spare（ハット）および更新部spare（ハット）の双方は、この代入によって保留部ｈsusp（ハット）が更新された後にゼロクリアされる。
【０１４９】
また、このとき、上述したように、出力選択部１０３は制御信号ＣＮ２に基づいて第３の誤差信号ｅ(3)kの選択状態とされる。そのため、出力選択部１０３からは、第３の誤差信号ｅ(3)kが出力音声信号ｎk（ハット）として出力される。ダブルトークなど外乱がない場合は、第３の誤差信号ｅ(3)kは、エコーキャンセルの精度がより高いものになるからである。
【０１５０】
一方、評価部１０２で直前の一定期間が外乱期間であったと判断されるとき、上述したように接続スイッチ１２４が制御信号ＣＮ１に基づいて非接続状態とされる。そのため、レジスタ部１１１に記憶されているＮ次の伝達特性推定ベクトルの確定部ｈfix（ハット）は更新されない。
【０１５１】
また、このとき、上述したように、セレクタ１２５は制御信号ＣＮ１に基づいて更新部ｈspare（ハット）の選択状態とされ、レジスタ部１４１に記憶されている伝達特性推定ベクトルの更新部spare（ハット）がレジスタ部１２１に供給される。そのため、レジスタ部１２１には、タイミング信号ＴＳに基づいて、レジスタ部１４１に記憶されているＮ次の伝達特性推定ベクトルの更新部spare（ハット）が、新たな保留部ｈsusp（ハット）として記憶される。すなわち、更新部spare（ハット）が保留部ｈsusp（ハット）に代入される。なお、更新部spare（ハット）および更新部spare（ハット）の双方は、この代入によって保留部ｈsusp（ハット）が更新された後にゼロクリアされる。
【０１５２】
また、このとき、上述したように、出力選択部１０３は制御信号ＣＮ２に基づいて第１の誤差信号ｅ(1)kの選択状態とされる。そのため、出力選択部１０３からは、第１の誤差信号ｅ(1)kが出力音声信号ｎk（ハット）として出力される。第１の誤差信号ｅ(1)kは、外乱があっても、エコーキャンセルが安定して行われたものになっているからである。
【０１５３】
図１０は、伝達特性推定ベクトルの確定部ｈfix（ハット）、保留部ｈsusp（ハット）、更新部ｈadapt（ハット）、更新部ｈspare(ハット)、第１、第２、第３の誤差信号ｅ(1)k，ｅ(2)k，ｅ(3)kのエネルギー、出力選択などの推移例を示している。この図１０において、（１）、（２）、・・・は、それぞれ、上述の一定期間を示している。
【０１５４】
期間（１）〜（４）は、初期状態からの収束過程である。収束過程であるので誤差はだんだん小さくなる。第２の誤差信号ｅ(2)kのエネルギーは第１の誤差信号のｅ(1)kのエネルギーより小さく、保留部ｈsusp（ハット）は確定部ｈfix（ハット）に順次累積加算され（「○」印参照）、徐々に収束に向かっている。
【０１５５】
すなわち、期間（１）の終了時点において、直前の一定期間は外乱期間でなかったと判断され、保留部ｈsusp（ハット）は確定部ｈfix（ハット）に累積加算されて、確定部ｈfix（ハット）が更新される。また、このとき、更新部ｈadapt（ハット）が保留部ｈsusp（ハット）に代入され、この代入後に、更新部ｈadapt（ハット）および更新部ｈspare（ハット）はゼロクリアされる。このことは、期間（２）〜（４）の終了時点においても同様である。
【０１５６】
期間（５）〜（６）では、外乱が入力されている。第１、第２、第３の誤差信号ｅ(1)k，ｅ(2)k，ｅ(3)kのエネルギーはいずれも外乱により大きく、更新部ｈadapt（ハット）は乱れた値となっている。そのため、保留部ｈsusp（ハット）は確定部ｈfix（ハット）に累積加算されず（「×」印参照）、外乱の影響を避けている。なお、期間（５）の保留部ｈsusp（ハット）は外乱の起こる前の適切な値であるが、安全のため加算されない。
【０１５７】
すなわち、期間（５）の終了時点において、直前の一定期間は外乱期間であったと判断され、保留部ｈsusp（ハット）は確定部ｈfix（ハット）に累積加算されない。また、このとき、更新部ｈspare（ハット）が保留部ｈsusp（ハット）に代入され、この代入後に、更新部ｈadapt（ハット）および更新部ｈspare（ハット）はゼロクリアされる。このことは、期間（６）の終了時点においても同様である。
【０１５８】
期間（７）では、外乱の入力が終わっている。しかし、保留部ｈsusp（ハット）は、外乱で乱された値である。第１、第２、第３の誤差信号ｅ(1)k，ｅ(2)k，ｅ(3)kのエネルギーは全体としては小さくなる。しかし、外乱の影響を残す保留部ｈsusp（ハット）の影響を含む第２の誤差信号ｅ(2)kのエネルギーは、第１の誤差信号ｅ(1)kのエネルギーより大きくなる。
【０１５９】
そのため、期間（７）の終了時点において、直前の一定期間は外乱期間であったと判断され、保留部ｈsusp（ハット）は確定部ｈfix（ハット）に累積加算されず、外乱の影響を避けている。また、このとき、更新部ｈspare（ハット）が保留部ｈsusp（ハット）に代入される。すなわち、この場合、保留部ｈsusp（ハット）に代入されるのは、更新部ｈadapt（ハット）ではなく、外乱の影響のない更新部ｈspare（ハット）とされる。この代入後に、更新部ｈadapt（ハット）更新部ｈspare（ハット）はゼロクリアされる。
【０１６０】
期間（８）〜では、確定部ｈfix（ハット）、保留部ｈsusp（ハット）、更新部ｈadapt（ハット）および更新部ｈspare（ハット）の全ては外乱の影響をまったく受けていないものになっており、通常の動作が継続される。すなわち、期間（８）の終了時点において、直前の一定期間は外乱期間でなかったと判断され、保留部ｈsusp（ハット）は確定部ｈfix（ハット）に累積加算されて、確定部ｈfix（ハット）が更新される。また、このとき、更新部ｈadapt（ハット）が保留部ｈsusp（ハット）に代入され、この代入後に、更新部ｈadapt（ハット）および更新部ｈspare（ハット）はゼロクリアされる。このことは、以降の期間においても同様である。
【０１６１】
図１１、図１２のフローチャートは、図１に示すエコー除去装置１００Ａにおけるエコー除去の処理手順の一例を示している。エコー除去装置１００Ａは、ステップＳＴ５１において、処理を開始し、ステップＳＴ５２において、ｋ＝１に設定し、その後に、ステップＳＴ５３の処理に移る。
【０１６２】
エコー除去装置１００Ａは、ステップＳＴ５３において、第１のエコー推定値ｙ(1)k（ハット）、第２のエコー推定値ｙ(2)k（ハット）、第３のエコー推定値ｙ(3)k（ハット）および第４のエコー推定値ｙ(4)k（ハット）を生成する。図１３のフローチャートは、このステップＳ５３の処理の詳細を示している。
【０１６３】
エコー除去装置１００Ａは、ステップＳＴ７１において、処理を開始し、その後にステップＳＴ７２の処理に移る。このステップＳＴ７２において、エコー除去装置１００Ａは、遠端から送られてくる入力音声信号ｘkをベクトル化し、入力音声信号ベクトルｘk＝（ｘk-N-1，，，ｘk-2，ｘk-1，ｘk）を生成する。
【０１６４】
次に、エコー除去装置１００Ａは、ステップＳＴ７３において、入力音声信号ベクトルｘkと伝達特性特性ベクトルの確定部ｈfix（ハット）との内積をとって、内積値Ｆ１を求める。また、エコー除去装置１００Ａは、ステップＳＴ７４において、入力音声信号ベクトルｘkと伝達特性特性ベクトルの保留部ｈsusp（ハット）との内積をとって、内積値Ｇ１を求める。
【０１６５】
また、エコー除去装置１００Ａは、ステップＳＴ７５において、入力音声信号ベクトルｘkと伝達特性特性ベクトルの更新部ｈadapt（ハット）との内積をとって、内積値Ｈ１を求める。さらに、エコー除去装置１００Ａは、ステップＳＴ７６において、入力音声信号ベクトルｘkと伝達特性特性ベクトルの更新部ｈspare（ハット）との内積をとって、内積値Ｋ１を求める。なお、ステップＳＴ７３からステップＳＴ７６の処理順は、図示の順に限定されない。
【０１６６】
次に、エコー除去装置１００Ａは、ステップＳＴ７７において、ステップＳＴ７３で求められた内積値Ｆ１を、第１のエコー推定値ｙ(1)kとする。また、エコー除去装置１００Ａは、このステップＳＴ７７において、ステップＳＴ７３で求められた内積値Ｆ１とステップＳＴ７４で求められた内積値Ｇ１との加算値を、第２のエコー推定値ｙ(2)kとする。
【０１６７】
さらに、エコー除去装置１００Ａは、このステップＳＴ７７において、ステップＳＴ７３で求められた内積値Ｆ１と、ステップＳＴ７６で求められた内積値Ｋ１との加算値を、第４のエコー推定値ｙ(4)kとする。エコー除去装置１００Ａは、ステップＳＴ７７の処理の後、ステップＳＴ７８において、処理を終了する。
【０１６８】
図１１に戻って、エコー除去装置１００Ａは、ステップＳＴ５３の処理の後、ステップＳＴ５４の処理に移る。このステップＳＴ５４において、エコー除去装置１００Ａは、第１の誤差信号ｅ(1)k、第２の誤差信号ｅ(2)k、第３の誤差信号ｅ(3)kおよび第４の誤差信号ｅ(4)kを生成する。図１４のフローチャートは、このステップＳＴ５４の処理の詳細を示している。
【０１６９】
エコー除去装置１００Ａは、ステップＳＴ８１において、処理を開始し、その後にステップＳＴ８２の処理に移る。このステップＳＴ８２において、エコー除去装置１００Ａは、収音信号（マイクロホンＭＣで収音して得られた音声信号）ｙkから第１のエコー推定値ｙ(1)k（ハット）を差し引き、第１の誤差信号ｅ(1)kを求める。
【０１７０】
次に、エコー除去装置１００Ａは、ステップＳＴ８３において、収音信号ｙkから第２のエコー推定値ｙ(2)k（ハット）を差し引き、第２の誤差信号ｅ(2)kを求める。また、エコー除去装置１００Ａは、ステップＳＴ８４において、収音信号ｙkから第３のエコー推定値ｙ(３)k（ハット）を差し引き、第３の誤差信号ｅ(3)kを求める。さらに、エコー除去装置１００Ａは、ステップＳＴ８５において、収音信号ｙkから第４のエコー推定値ｙ(4)k（ハット）を差し引き、第４の誤差信号ｅ(4)kを求める。エコー除去装置１００Ａは、ステップＳＴ８５の処理の後、ステップＳＴ８６において、処理を終了する。なお、ステップＳＴ８２からステップＳＴ８５の処理順は、図示の順に限定されない。
【０１７１】
図１１に戻って、エコー除去装置１００Ａは、ステップＳＴ５４の処理の後、ステップＳＴ５５の処理に移る。このステップＳＴ５５において、エコー除去装置１００Ａは、収音信号ｙk、さらには第１の誤差信号ｅ(1)k、第２の誤差信号ｅ(2)k、第３の誤差信号ｅ(3)kのそれぞれ対して、その絶対値二乗（エネルギー）を求めて累積加算する。
【０１７２】
次に、エコー除去装置１００Ａは、ステップＳＴ５６において、ＬＭＳアルゴリズムにより、第３の誤差信号ｅ(3)kに基づいて、伝達特性推定ベクトルの更新部ｈadapt（ハット）(第１の更新部)を更新する。また、エコー除去装置１００Ａは、ステップＳＴ５６において、ＬＭＳアルゴリズムにより、第４の誤差信号ｅ(4)kに基づいて、伝達特性推定ベクトルの更新部ｈspare（ハット）（第２の更新部）を更新する。エコー除去装置１００Ａは、このステップＳＴ５６の処理の後、ステップＳＴ５７の処理に移る。
【０１７３】
ステップＳＴ５７において、エコー除去装置１００Ａは、ｋ＝Ｍであるか否か、つまり一定期間（サンプル数Ｍの期間）を経過したか否かを判断する。ｋ＝Ｍでないとき、エコー除去装置１００Ａは、ステップＳＴ５８において、ｋを１だけ増加し、その後に、ステップＳＴ５３に戻って、上述したと同様の処理を繰り返し実行する。一方、ｋ＝Ｍであるとき、エコー除去装置１００Ａは、ステップＳＴ５９の処理に移る
【０１７４】
ステップＳＴ５９において、エコー除去装置１００Ａは、直前の一定期間が外乱期間であったか否かを判断する。エコー除去装置１００Ａは、直前の一定期間における、収音信号ｙk、第１の誤差信号ｅ(1)k、第２の誤差信号ｅ(2)k、第３の誤差信号ｅ(3)kのそれぞれのエネルギーＥＮ１，ＥＮ２，ＥＮ３，ＥＮ４に基づいて判断する。このステップＳＴ５９の処理は、上述した図４のフローチャートのステップＳＴ９の処理を同じである（図８参照）。
【０１７５】
次に、エコー除去装置１００Ａは、ステップＳＴ５９の処理の後、ステップＳＴ６０（図１２参照）の処理に移る。このステップＳＴ６０において、ステップＳＴ５９における判断が外乱期間であったか否かを見る。外乱期間でなかったとの判断のとき、エコー除去装置１００Ａは、ステップＳＴ６１の処理に移る。このステップＳＴ６１において、エコー除去装置１００Ａは、伝達特性推定ベクトルの保留部ｈsusp（ハット）を、伝達特性推定ベクトルの確定部ｈfix（ハット）に累積加算する。
【０１７６】
次に、エコー除去装置１００Ａは、ステップＳＴ６２において、伝達特性推定ベクトルの更新部ｈadapt（ハット）（第１の更新部）を、伝達特性推定ベクトルの保留部ｈsusp（ハット）に代入する。そして、その後に、エコー除去装置１００Ａは、このステップＳＴ６２において、更新部ｈadapt（ハット）および伝達特性推定ベクトルの更新部ｈspare（ハット）（第２の更新部）をゼロクリアする。そして、エコー除去装置１００Ａは、ステップＳＴ６３において、第３の誤差信号ｅ(3)kを、出力音声信号ｎk（ハット）として選択する。エコー除去装置１００Ａは、このステップＳＴ６３の処理の後、ステップＳＴ５２に戻り、上述したと同様の次の一定期間の処理に移る。
【０１７７】
一方、ステップＳＴ６０において、外乱期間であったとの判断のとき、エコー除去装置１００Ａは、ステップＳＴ６４の処理に移る。このステップＳＴ６４において、エコー除去装置１００Ａは、伝達特性推定ベクトルの更新部ｈspare（ハット）（第２の更新部）を、伝達特性推定ベクトルの保留部ｈsusp（ハット）に代入する。そして、その後に、エコー除去装置１００Ａは、このステップＳＴ６４において、更新部ｈspare（ハット）および伝達特性推定ベクトルの更新部ｈadapt（ハット）（第１の更新部）をゼロクリアする。そして、エコー除去装置１００Ａは、ステップＳＴ６５において、第１の誤差信号ｅ(1)kを、出力音声信号ｎk（ハット）として選択する。エコー除去装置１００Ａは、このステップＳＴ６５の処理の後、ステップＳＴ５２に戻り、上述したと同様の次の一定期間の処理に移る。
【０１７８】
上述したように、図９に示すエコー除去装置１００Ａにおいては、一定期間毎に、伝達特性推定ベクトル（伝送路推定値）の更新部ｈadapt（ハット）あるいは更新部ｈspare（ハット）が伝送路推定値の保留部ｈsusp（ハット）として代入される。しかし、直前の一定期間が外乱期間であったと判断されるとき、伝達特性推定ベクトルの保留部ｈsusp（ハット）は、伝達特性推定ベクトルの確定部ｈfix（ハット）に累積加算されない。そのため、外乱があっても伝達特性推定ベクトルの確定部ｈfix（ハット）は乱されることがなく、外乱に強いものとなる。
【０１７９】
また、図９に示すエコー除去装置１００Ａにおいては、直前の一定期間が外乱期間であったと判断されるとき、第１の誤差信号ｅ(1)kが出力音声信号として選択される。この第１の誤差信号ｅ(1)kは、収音信号ｙkから伝達特性推定ベクトルの確定部ｈfix（ハット）のみで求められる第１のエコー推定値ｙ(1)k（ハット）が差し引かれて得られたものである。そのため、エコー成分がキャンセルされた出力音声信号ｎk(ハット)として安定したものを得ることができる。
【０１８０】
また、図９に示すエコー除去装置１００Ａにおいては、第３のエコー推定値ｙ(3)k（ハット）は、入力音声信号ベクトル（入力音声信号）ｘkと、伝達特性推定ベクトルの全てを用いることで得られたものである。ここで、伝達特性推定ベクトルの全てとは、確定部ｈfix（ハット）、保留部ｈsusp（ハット）および更新部ｈadapt（ハット）の全てである。そして、第３の誤差信号ｅ(3)kは収音信号ｙkからこの第３のエコー推定値ｙ(3)k（ハット）が差し引かれて得られたものであり、この第３の誤差信号ｅ(3)kに基づいて伝達特性推定ベクトルの更新部ｈadapt（ハット）が更新される。そのため、伝達特性推定ベクトルの確定部ｈfix（ハット）、保留部ｈsusp（ハット）および更新部ｈadapt（ハット）の全体としての伝送路推定は従来と同じであり、収束特性を劣化させることはない。
【０１８１】
また、図９に示すエコー除去装置１００Ａにおいては、直前の一定期間が外乱期間であったと判断されるとき、伝達特性推定ベクトルの更新部ｈspare（ハット）が、伝達特性推定ベクトルの保留部ｈsusp（ハット）に代入される。この更新部ｈspare（ハット）は、収音信号ｙkから第４のエコー推定値ｙ(4)k（ハット）が差し引かれて得られた第４の誤差信号ｅ(4)kに基づいて更新されている。そして、この第４のエコー推定値ｙ(4)k（ハット）は、入力音声信号ｘkと伝達特性推定ベクトルの確定部ｈfix（ハット）および更新部ｈspare（ハット）とを用いることで得られたものである。そのため、外乱による伝送路推定値の乱れのある保留部ｈsusp（ハット）の影響のない更新を行うことができ、外乱後即座に精度のよい伝送路推定を継続できる。
【０１８２】
＜３．変形例＞
なお、上述実施の形態においては、評価部１０２は、音声信号ｙk、第１の誤差信号ｅ(1)k、第２の誤差信号ｅ(2)kおよび第３の誤差信号ｅ(3)kのエネルギーに基づいて、一定期間毎に、直前の一定期間が外乱期間であったか否かの判断を行っている。しかし、評価部１０２における判断の仕方は、これに限定されない。
【０１８３】
外乱を受けているとき、伝送路推定値は乱され、以前の期間に対して大きな変動を受けることが予想される。そこで、例えば、評価部１０２は、以下の（２）式に示す伝達特性推定ベクトルの更新部ｈadapt（ハット）の変化（距離二乗）を求め、直前の一定期間が外乱期間であったか否かの判断を行うことも考えられる。
【０１８４】
【数２】
2013030868.tif 000004
【０１８５】
また、上述実施の形態においては、伝達特性推定ベクトルの更新アルゴリズムとしてＬＭＳアルゴリズムを用いたものを示した。しかし、更新アルゴリズムはこのＬＭＳアルゴリズムに限定されるものではなく、ＲＬＳアルゴリズムなどのその他の適応アルゴリズムを用いることができることは勿論である。
【０１８６】
また、本技術は、以下のような構成を取ることもできる。
（１）伝送路推定値更新処理部と、出力選択部とを備え、
上記伝送路推定値更新処理部は、
伝送路推定値を確定部、保留部および更新部に分け、
上記伝送路推定値の確定部、保留部および更新部の全てを用いて求められるエコー推定値からの誤差により上記伝送路推定値の更新部の更新を行い、
一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いと判断されるとき、上記伝送路推定値の保留部を上記伝送路推定値の確定部に累積加算し、上記伝送路推定値の更新部を上記伝送路推定値の保留部に代入し、その後に、該更新部をゼロクリアし、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないと判断されるとき、上記伝送路推定値の更新部を上記伝送路推定値の保留部に代入し、その後に、該更新部をゼロクリアし、
上記出力選択部は、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いと判断されるとき、上記伝送路推定値の確定部、保留部および更新部の全てを用いて求められるエコー推定値からの誤差を出力音声信号として選択し、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないと判断されるとき、上記伝送路推定値の確定部のみを用いて求められるエコー推定値からの誤差を出力音声信号として選択する
エコー除去装置。
（２）上記伝送路推定値更新処理部は、
上記更新部を第１の更新部とし、該第１の更新部とは別の第２の更新部をさらに用意し、
上記伝送路推定値の確定部および第２の更新部を用いて求められるエコー推定値からの誤差により上記伝送路推定値の第２の更新部の更新を行い、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いと判断されるとき、上記伝送路推定値の保留部を上記伝送路推定値の確定部に累積加算し、上記伝送路推定値の第１の更新部を上記伝送路推定値の保留部に代入し、その後に、該第１更新部および上記第２の更新部をゼロクリアし、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないと判断されるとき、上記伝送路推定値の第２の更新部を上記伝送路推定値の保留部に代入し、その後に、該第２の更新部および上記第１の更新部をゼロクリアする
前記（１）に記載のエコー除去装置。
（３）上記一定期間毎に、上記伝送路推定値の確定部および保留部を用いて求められるエコー推定値からの誤差と、上記伝送路推定の確定部のみを用いて求められるエコー推定値からの誤差とに基づいて、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いか否かを判断する判断部をさらに備える
前記（１）または（２）に記載のエコー除去装置。
（４）上記伝送路推定値更新処理部は、
上記伝送路推定値の確定部、保留部および更新部を記憶する伝送路推定値記憶部と、
入力音声信号と上記伝送路推定値の確定部とを用いて第１のエコー推定値を得ると共に、上記入力音声信号と上記伝送路推定値の確定部、保留部および更新部の全てを用いて第３のエコー推定値を得るエコー推定値取得部と、
収音信号から上記第１のエコー推定値を差し引いて第１の誤差信号を得ると共に、上記収音信号から上記第３のエコー推定値を差し引いて第３の誤差信号を得る誤差信号取得部と、
上記第３の誤差信号に基づいて、上記伝送路推定値の更新部を更新する第１の伝送路推定値更新部と、
上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いとき、上記伝送路推定値の保留部を上記伝送路推定値の確定部に累積加算し、上記伝送路推定値の更新部を上記伝送路推定値の保留部に代入し、その後に、該更新部をゼロクリアし、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないとき、上記伝送路推定値の更新部を上記伝送路推定値の保留部に代入し、その後に、該更新部をゼロクリアする第２の伝送路推定値更新部とを有し、
上記出力選択部は、
上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いとき、上記第３の誤差信号を出力音声信号として選択し、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないとき、上記第１の誤差信号を上記出力音声信号として選択する
前記（１）から（３）のいずれかに記載のエコー除去装置。
（５）上記伝送路推定値記憶部は、上記更新部を第１の更新部とし、該第１の更新部とは別の第２の更新部をさらに記憶し、
上記エコー推定値取得部は、上記入力音声信号と上記伝送路推定値の確定部および第２の更新部とを用いて第４のエコー推定値を得、
上記誤差信号取得部は、上記収音信号から上記第４のエコー推定値を差し引いて第４の誤差信号を得、
上記第４の誤差信号に基づいて、上記伝送路推定値の第２の更新部を更新する第３の伝送路推定値更新部をさらに備え、
上記第２の伝送路推定値更新部は、
上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いとき、上記伝送路推定値の保留部を上記伝送路推定値の確定部に累積加算し、上記伝送路推定値の第１の更新部を上記伝送路推定値の保留部に代入し、その後に、該第１の更新部および上記第２の更新部をゼロクリアし、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないとき、上記伝送路推定値の第２の更新部を上記伝送路推定値の保留部に代入し、その後に、該第２の更新部および上記第１の更新部をゼロクリアする
前記（４）に記載のエコー除去装置。
（６）上記エコー推定値取得部は、上記入力音声信号と上記伝送路推定値の確定部および保留部とを用いて第２のエコー推定値をさらに得、
上記誤差信号取得部は、上記収音信号から上記第２のエコー推定値を差し引いて第２の誤差信号をさらに得、
上記一定期間毎に、直前の一定期間における、上記収音信号のエネルギーＥＮ１と、上記第１の誤差信号のエネルギーＥＮ２と、上記第２の誤差信号のエネルギーＥＮ３と、上記第３の誤差信号のエネルギーＥＮ４とを得るエネルギー取得部をさらに備え、
ＥＮ２／ＥＮ３＞１．０、またはＥＮ（ＥＮ４、ＥＮ２またはＥＮ３）／ＥＮ１＜＜１．０かつＥＮ２／ＥＮ３＞〜１．０であるとき、上記直前の一定期間では、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いと判断する判断部をさらに備える
前記（４）または（５）に記載のエコー除去装置。
（７）伝送路推定値更新処理ステップと、出力選択ステップとを有し、
上記伝送路推定値更新処理ステップでは、
伝送路推定値を確定部、保留部および更新部に分け、
上記伝送路推定値の確定部、保留部および更新部の全てを用いて求められるエコー推定値からの誤差により上記伝送路推定値の更新部の更新を行い、
一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いと判断されるとき、上記伝送路推定値の保留部を上記伝送路推定値の確定部に累積加算し、上記伝送路推定値の更新部を上記伝送路推定値の保留部に代入し、その後に、該更新部をゼロクリアし、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないと判断されるとき、上記伝送路推定値の更新部を上記伝送路推定値の保留部に代入し、その後に、該更新部をゼロクリアし、
上記出力選択ステップでは、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いと判断されるとき、上記伝送路推定値の確定部、保留部および更新部の全てを用いて求められるエコー推定値からの誤差を出力音声信号として選択し、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないと判断されるとき、上記伝送路推定値の確定部のみを用いて求められるエコー推定値からの誤差を出力音声信号として選択する
エコー除去方法。
（８）コンピュータを、伝送路推定値更新処理手段および出力選択手段として機能させるプログラムであって、
上記伝送路推定値更新処理手段は、
伝送路推定値を確定部、保留部および更新部に分け、
上記伝送路推定値の確定部、保留部および更新部の全てを用いて求められるエコー推定値からの誤差により上記伝送路推定値の更新部の更新を行い、
一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いと判断されるとき、上記伝送路推定値の保留部を上記伝送路推定値の確定部に累積加算し、上記伝送路推定値の更新部を上記伝送路推定値の保留部に代入し、その後に、該更新部をゼロクリアし、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないと判断されるとき、上記伝送路推定値の更新部を上記伝送路推定値の保留部に代入し、その後に、該更新部をゼロクリアし、
上記出力手段は、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いと判断されるとき、上記伝送路推定値の確定部、保留部および更新部の全てを用いて求められるエコー推定値からの誤差を出力音声信号として選択し、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないと判断されるとき、上記伝送路推定値の確定部のみを用いて求められるエコー推定値からの誤差を出力音声信号として選択する
プログラム。
（９）コンピュータを、伝送路推定値更新処理手段および出力選択手段として機能させるプログラムを記録した記録媒体であって、
上記伝送路推定値更新処理手段は、
伝送路推定値を確定部、保留部および更新部に分け、
上記伝送路推定値の確定部、保留部および更新部の全てを用いて求められるエコー推定値からの誤差により上記伝送路推定値の更新部の更新を行い、
一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いと判断されるとき、上記伝送路推定値の保留部を上記伝送路推定値の確定部に累積加算し、上記伝送路推定値の更新部を上記伝送路推定値の保留部に代入し、その後に、該更新部をゼロクリアし、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないと判断されるとき、上記伝送路推定値の更新部を上記伝送路推定値の保留部に代入し、その後に、該更新部をゼロクリアし、
上記出力手段は、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良いと判断されるとき、上記伝送路推定値の確定部、保留部および更新部の全てを用いて求められるエコー推定値からの誤差を出力音声信号として選択し、
上記一定期間毎に、上記伝送路推定値の確定部および保留部を合わせた推定値が上記伝送路推定値の確定部単体の推定値よりも良くないと判断されるとき、上記伝送路推定値の確定部のみを用いて求められるエコー推定値からの誤差を出力音声信号として選択する、
記録媒体。
【符号の説明】
【０１８７】
１００，１００Ａ・・・エコー除去装置
１０１・・・バッファ部
１０２・・・評価部
１０３・・・出力選択部
１１１，１２１，１３１，１４１・・・レジスタ部
１１２，１２３，１３３，１４３・・・減算器
１１３，１２２，１３２，１３６，１４２，１４６・・・加算器
１２４・・・接続スイッチ
１２５・・・セレクタ
１３４，１４４・・・乗算器
１３５，１４５・・・係数器
【図１】
2013030868.tif 000005
【図２】
2013030868.tif 000006
【図３】
2013030868.tif 000007
【図４】
2013030868.tif 000008
【図５】
2013030868.tif 000009
【図６】
2013030868.tif 000010
【図７】
2013030868.tif 000011
【図８】
2013030868.tif 000012
【図９】
2013030868.tif 000013
【図１０】
2013030868.tif 000014
【図１１】
2013030868.tif 000015
【図１２】
2013030868.tif 000016
【図１３】
2013030868.tif 000017
【図１４】
2013030868.tif 000018
【図１５】
2013030868.tif 000019
【図１６】
2013030868.tif 000020
【図１７】
2013030868.tif 000021