(57)【要約】【課題】  入力信号のレベルの変動に依存せずに入力信号の特有な状態を検出でき、又は、特有な状態の検出時間を短縮できるようにする。【解決手段】  本発明の信号状態検出装置は、主信号及び不要信号を含む不要信号消去対象信号と、不要信号消去対象信号から不要信号を消去するために、適応フィルタを用いて形成された擬似不要信号との相関度合を表す値を算出する相関算出手段と、算出された相関度合を表す値の変化傾向を算出する変化傾向算出手段と、相関算出手段への入力信号レベルに応じて、閾値を変化させる閾値可変手段と、算出された変化傾向と変化された閾値とに基づいて、第１の状態か第２の状態かを判定する状態検出手段とを有する。【選択図】      図１
2008187680.tif 000002
【特許請求の範囲】
【請求項１】
主信号及び主信号以外の不要な信号である不要信号を含む不要信号消去対象信号と、上記不要信号消去対象信号から上記不要信号を消去するために、適応フィルタを用いて形成された擬似不要信号との相関度合を表す値を算出する相関算出手段と、
上記相関算出手段により算出された値の変化傾向を算出する変化傾向算出手段と、
上記相関算出手段への一方又は両方の入力信号のレベルに応じて、閾値を変化させる閾値可変手段と、
上記変化傾向算出手段により算出された変化傾向と、上記閾値可変手段により変化された閾値とに基づいて、第１の状態か第２の状態かを判定する状態検出手段と
を有することを特徴とする信号状態検出装置。
【請求項２】
主信号及び主信号以外の不要な信号である不要信号を含む不要信号消去対象信号と、上記不要信号消去対象信号から上記不要信号を消去するために、適応フィルタを用いて形成された擬似不要信号との相関度合を表す値を算出する相関算出手段と、
上記相関算出手段への一方又は両方の入力信号のレベルに応じて、閾値を変化させる閾値可変手段と、
上記相関算出手段により算出された値と、上記閾値可変手段により変化された閾値とに基づいて、第１の状態か第２の状態かを判定する状態検出手段と
を有することを特徴とする信号状態検出装置。
【請求項３】
主信号及び主信号以外の不要な信号である不要信号を含む不要信号消去対象信号と、上記不要信号消去対象信号から上記不要信号を消去するために、適応フィルタを用いて形成された擬似不要信号との相関度合を表す値を算出する相関算出手段と、
上記相関算出手段により算出された値の変化傾向を算出する変化傾向算出手段と、
上記変化傾向算出手段により算出された変化傾向と、予め設定されている閾値とに基づいて、第１の状態か第２の状態かを判定する状態検出手段と
を有することを特徴とする信号状態検出装置。
【請求項４】
上記相関算出手段は、不要信号消去対象信号と擬似不要信号との相関行列を算出し、算出した相関行列の行列式の値を、相関度合を表す値として算出することを特徴とする請求項１〜３のいずれかに記載の信号状態検出装置。
【請求項５】
上記状態検出手段は、上記適応フィルタの適応動作を継続する第１の状態か停止する第２の状態かを判定することを特徴とする請求項１〜４のいずれかに記載の信号状態検出装置。
【請求項６】
請求項１〜５のいずれかに記載の信号状態検出装置をダブルトーク検出装置として有し、上記ダブルトーク検出装置に、上記擬似不要信号として擬似エコー信号を入力すると共に、上記不要信号消去対象信号として送話信号を入力することを特徴とするエコーキャンセラ。
【請求項７】
コンピュータを、
主信号及び主信号以外の不要な信号である不要信号を含む不要信号消去対象信号と、上記不要信号消去対象信号から上記不要信号を消去するために、適応フィルタを用いて形成された擬似不要信号との相関度合を表す値を算出する相関算出手段と、
上記相関算出手段により算出された値の変化傾向を算出する変化傾向算出手段と、
上記相関算出手段への一方又は両方の入力信号のレベルに応じて、閾値を変化させる閾値可変手段と、
上記変化傾向算出手段により算出された変化傾向と、上記閾値可変手段により変化された閾値とに基づいて、第１の状態か第２の状態かを判定する状態検出手段と
して機能させることを特徴とする信号状態検出プログラム。
【請求項８】
コンピュータを、
主信号及び主信号以外の不要な信号である不要信号を含む不要信号消去対象信号と、上記不要信号消去対象信号から上記不要信号を消去するために、適応フィルタを用いて形成された擬似不要信号との相関度合を表す値を算出する相関算出手段と、
上記相関算出手段への一方又は両方の入力信号のレベルに応じて、閾値を変化させる閾値可変手段と、
上記相関算出手段により算出された値と、上記閾値可変手段により変化された閾値とに基づいて、第１の状態か第２の状態かを判定する状態検出手段と
して機能させることを特徴とする信号状態検出プログラム。
【請求項９】
コンピュータを、
主信号及び主信号以外の不要な信号である不要信号を含む不要信号消去対象信号と、上記不要信号消去対象信号から上記不要信号を消去するために、適応フィルタを用いて形成された擬似不要信号との相関度合を表す値を算出する相関算出手段と、
上記相関算出手段により算出された値の変化傾向を算出する変化傾向算出手段と、
上記変化傾向算出手段により算出された変化傾向と、予め設定されている閾値とに基づいて、第１の状態か第２の状態かを判定する状態検出手段と
して機能させることを特徴とする信号状態検出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、信号状態検出装置及び信号状態検出プログラムに関し、例えば、エコーキャンセラやノイズキャンセラに適用し得るものである。また、他の本発明はエコーキャンセラに関する。
【背景技術】
【０００２】
電話端末における通話時に、通話品質を悪化させる要因の一つとしてエコーが挙げられる。エコーを防止するためによく用いられる方法が、電話端末にエコーキャンセラを備える方法である。エコーキャンセラとは、遠端側から送信されてきた信号に、適応フィルタ処理などを施して擬似エコー信号を生成し、回り込んだエコーから擬似エコー信号を減算することでエコーを除去するものである。図４は、ハイブリッド回路による回線エコーを、エコーキャンセラにより消去する構成について示した図である。また、図５は、音響空間による音響エコーを、エコーキャンセラにより消去する構成について示した図である。
【０００３】
しかし、エコーキャンセラの適応フィルタには、近端側と遠端側の双方に音声が存在するダブルトーク状態になると、フィルタの係数が発散し、エコーを消去することができなくなってしまうという問題がある。そのため、ダブルトーク状態にあるか否かを判定し、ダブルトーク状態である場合には、適応フィルタのフィルタ係数の更新動作を停止し、ダブルトーク状態でない場合（例えばシングルトーク状態の場合）には、フィルタ係数更新の動作を継続する、という方法が取られる。そこで、ダブルトーク状態検出のための具体的な方法として、特許文献１のようなダブルトーク状態の検出方法が提案されている。
【０００４】
図６は、特許文献１に記載のダブルトーク状態を検出する方法を実現した、従来のエコーキャンセラ６００の機能的構成を示すブロック図である。ダブルトーク検出部６０１において、相関行列計算部６０１ａが、例えば、下記の（１）式のような相関行列（の各要素）を計算し、行列式計算部６０１ｂが、得られた相関行列の行列式を計算する。得られた行列式と、判定閾値記憶部６０１ｃに記憶されている所定の閾値に基づいて、状態判定部６０１ｄが、ダブルトーク状態であるか否かを判定する。（１）式に示す相関行列の行列式の値は、ダブルトーク状態になると、非ダブルトーク状態の場合と比べて、きわめて大きなピーク値を持ち、且つ、その状態が継続する特性を有するため、ダブルトーク状態を検出することが可能となっている。
【数１】
2008187680.tif 000003
【０００５】
尚、上記の（１）式における記号の意味は、図７に示す通りである。エコー源信号（遠端入力信号）をＳ＿０、エコーをＳ＿１、ダブルトーク信号（近端話者信号）をＤ、送話信号（エコーとダブルトーク信号の和）をＰ（＝Ｓ＿１＋Ｄ）、適応フィルタのフィルタ係数をｗで表しており、（１）式では、それぞれを横ベクトルとしている。擬似エコー信号は上記の（２）式（ｗとＳ＿０の畳み込み）によって示されている。本明細書では、エコーキャンセラからの距離に応じて、「近端」、「遠端」と表現している。
【０００６】
また、（１）式における２×２の相関行列において、１行１列の要素は送話信号Ｐの自己相関を、１行２列及び２行１列の要素は擬似エコー信号と送話信号との相互相関を、２行２列の要素は擬似エコー信号の自己相関を表している。
【特許文献１】特表２００４−５１７５７９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来のエコーキャンセラ６００のダブルトーク検出部６０１は、判定閾値記憶部６０１ｃに記憶された固定的な閾値に基づいて、状態判定部６０１ｄが、ダブルトーク状態の判定を行っているため、エコーキャンセラ６００のへの各種入力信号の値が変動した場合には、ダブルトーク状態であるにも関わらずダブルトーク状態と判定されない、あるいは、非ダブルトーク状態であるにも関わらず非ダブルトーク状態と判定されないなどの、誤判定が発生する場合があるという問題点があった。
【０００８】
また、状態判定部６０１ｄは、行列式計算部６０１ｂから入力される行列式の値が、所定の閾値を超えた場合に、ダブルトーク状態を検出しているため、ダブルトーク状態になっても行列式の値が閾値を超えるまでは検出ができず、ダブルトーク状態となってから検出するまでの時間が、長時間化する場合があるという問題点もあった。
【０００９】
そのため、入力信号レベルの変動に依存せずに信号状態を検出でき、又は、信号状態の変化時に迅速にそのことを検出できる信号状態検出装置、エコーキャンセラ及び信号状態検出プログラムが望まれている。
【課題を解決するための手段】
【００１０】
第１の本発明の信号状態検出装置は、（１）主信号及び主信号以外の不要な信号である不要信号を含む不要信号消去対象信号と、上記不要信号消去対象信号から上記不要信号を消去するために、適応フィルタを用いて形成された擬似不要信号との相関度合を表す値を算出する相関算出手段と、（２）上記相関算出手段により算出された値の変化傾向を算出する変化傾向算出手段と、（３）上記相関算出手段への一方又は両方の入力信号のレベルに応じて、閾値を変化させる閾値可変手段と、（４）上記変化傾向算出手段により算出された変化傾向と、上記閾値可変手段により変化された閾値とに基づいて、第１の状態か第２の状態かを判定する状態検出手段とを有することを特徴とする。
【００１１】
第２の本発明の信号状態検出装置は、（１）主信号及び主信号以外の不要な信号である不要信号を含む不要信号消去対象信号と、上記不要信号消去対象信号から上記不要信号を消去するために、適応フィルタを用いて形成された擬似不要信号との相関度合を表す値を算出する相関算出手段と、（２）上記相関算出手段への一方又は両方の入力信号のレベルに応じて、閾値を変化させる閾値可変手段と、（３）上記相関算出手段により算出された値と、上記閾値可変手段により変化された閾値とに基づいて、第１の状態か第２の状態かを判定する状態検出手段とを有することを特徴とする。
【００１２】
第３の本発明の信号状態検出装置は、（１）主信号及び主信号以外の不要な信号である不要信号を含む不要信号消去対象信号と、上記不要信号消去対象信号から上記不要信号を消去するために、適応フィルタを用いて形成された擬似不要信号との相関度合を表す値を算出する相関算出手段と、（２）上記相関算出手段により算出された値の変化傾向を算出する変化傾向算出手段と、（３）上記変化傾向算出手段により算出された変化傾向と、予め設定されている閾値とに基づいて、第１の状態か第２の状態かを判定する状態検出手段とを有することを特徴とする。
【００１３】
第４の本発明のエコーキャンセラは、第１〜第３の本発明のいずれかの信号状態検出装置をダブルトーク検出装置として有し、上記ダブルトーク検出装置に、上記擬似不要信号として擬似エコー信号を入力すると共に、上記不要信号消去対象信号として送話信号を入力することを特徴とする。
【００１４】
第５の本発明の信号状態検出プログラムは、コンピュータを、（１）主信号及び主信号以外の不要な信号である不要信号を含む不要信号消去対象信号と、上記不要信号消去対象信号から上記不要信号を消去するために、適応フィルタを用いて形成された擬似不要信号との相関度合を表す値を算出する相関算出手段と、（２）上記相関算出手段により算出された値の変化傾向を算出する変化傾向算出手段と、（３）上記相関算出手段への一方又は両方の入力信号のレベルに応じて、閾値を変化させる閾値可変手段と、（４）上記変化傾向算出手段により算出された変化傾向と、上記閾値可変手段により変化された閾値とに基づいて、第１の状態か第２の状態かを判定する状態検出手段として機能させることを特徴とする。
【００１５】
第６の本発明の信号状態検出プログラムは、コンピュータを、（１）主信号及び主信号以外の不要な信号である不要信号を含む不要信号消去対象信号と、上記不要信号消去対象信号から上記不要信号を消去するために、適応フィルタを用いて形成された擬似不要信号との相関度合を表す値を算出する相関算出手段と、（２）上記相関算出手段への一方又は両方の入力信号のレベルに応じて、閾値を変化させる閾値可変手段と、（３）上記相関算出手段により算出された値と、上記閾値可変手段により変化された閾値とに基づいて、第１の状態か第２の状態かを判定する状態検出手段として機能させることを特徴とする。
【００１６】
第７の本発明の信号状態検出プログラムは、コンピュータを、（１）主信号及び主信号以外の不要な信号である不要信号を含む不要信号消去対象信号と、上記不要信号消去対象信号から上記不要信号を消去するために、適応フィルタを用いて形成された擬似不要信号との相関度合を表す値を算出する相関算出手段と、（２）上記相関算出手段により算出された値の変化傾向を算出する変化傾向算出手段と、（３）上記変化傾向算出手段により算出された変化傾向と、予め設定されている閾値とに基づいて、第１の状態か第２の状態かを判定する状態検出手段として機能させることを特徴とする。
【発明の効果】
【００１７】
本発明によれば、入力信号レベルの変動に依存せずに信号状態を検出でき、又は、信号状態の変化時に迅速にそのことを検出できるようになる。
【発明を実施するための最良の形態】
【００１８】
（Ａ）第１の実施形態
以下、本発明による信号状態検出装置、エコーキャンセラ及び信号状態検出プログラムの第１の実施形態を、図面を参照しながら詳述する。なお、第１の実施形態の信号状態検出装置及び信号状態検出プログラムは、ダブルトーク検出装置及びダブルトーク検出プログラムである。
【００１９】
（Ａ−１）第１の実施形態の構成
図２は、第１の実施形態に係るダブルトーク検出装置の構成を、第１の実施形態に係るエコーキャンセラの構成と共に示すブロック図である。
【００２０】
エコーキャンセラ１００は、ダブルトーク検出部１０１、適応フィルタ制御部１０２及び適応フィルタ部１０３を有している。
【００２１】
適応フィルタ部１０３は、遠端側から送信された信号に、適応フィルタ処理などを施して擬似エコー信号を生成し、減算器１０４及びダブルトーク検出部１０１に入力するものである。
【００２２】
減算器１０４は、送話信号（近端入力信号：近端側から遠端側への信号）から、適応フィルタ部１０３が生成した擬似エコー信号を減算し、エコーを消去するものである。
【００２３】
適応フィルタ制御部１０２は、適応フィルタ部１０３の適応動作を制御するものであり、制御内容を、ダブルトーク検出部１０１から入力される信号をも利用して決定するものである。適応フィルタ制御部１０２は、例えば、ダブルトーク検出部１０１から、ダブルトーク状態を検出した旨の信号が入力されると、適応フィルタ部１０３を制御して、フィルタ係数の更新を停止させ、非ダブルトーク状態を検出した旨の信号が入力されると、フィルタ係数の更新を継続又は再開させる。
【００２４】
ダブルトーク検出部１０１は、ダブルトーク状態か非ダブルトーク状態を検出するものであり、相関行列計算部１０１ａ、行列式計算部１０１ｂ、判定閾値記憶部１０１ｃ、状態判定部１０１ｄ、判定閾値正規化部１０１ｅを有している。ダブルトーク検出部１０１は、例えば、パソコンや組み込みシステムなどの情報処理装置に、ダブルトーク検出プログラムをインストールすることで構築することができるが、機能的には、図２に示すことができる。なお、ダブルトーク検出部１０１をハードロジックなどで構成するようにしても良い。
【００２５】
相関行列計算部１０１ａは、送話信号と、適応フィルタ部１０３から入力される擬似エコー信号に基づいて、例えば、上記の（１）式のような相関行列（の各要素）を計算し、行列式計算部１０１ｂ及び判定閾値正規化部１０１ｅに入力するものである。
【００２６】
行列式計算部１０１ｂは、相関行列計算部１０１ａから入力された相関行列の行列式を計算し、得られた行列式（の値）を状態判定部１０１ｄに入力するものである。
【００２７】
第１の実施形態の場合、相関行列計算部１０１ａ及び行列式計算部１０１ｂが、送話信号と擬似エコー信号との相関度合を捉える相関算出手段となっている。
【００２８】
判定閾値正規化部１０１ｅは、相関行列計算部１０１ａから入力された相関行列（の要素）の情報に基づいて、判定閾値記憶部１０１ｃに記憶されている閾値を正規化し、状態判定部１０１ｄへ正規化した閾値を入力するものである。判定閾値正規化部１０１ｅが、閾値を正規化する方法としては、例えば、判定閾値記憶部１０１ｃに記憶されている値を、相関行列計算部１０１ａが得た相関行列の１行１列の要素（上記（１）式参照）で除算する方法を挙げることができる。
【００２９】
なお、図示は省略しているが、閾値を正規化する方法として、エコー源信号（遠端入力信号：遠端側から近端側への信号）を取得して、その信号レベルに基づいた値で除算する方法や、送話信号とエコー源信号の信号レベルの和に基づいた値で除算する方法などを挙げることができる。
【００３０】
判定閾値記憶部１０１ｃは、判定閾値正規化部１０１ｅが正規化する対象の閾値を記憶しているものである。
【００３１】
状態判定部１０１ｄは、行列式計算部１０１ｂと判定閾値正規化部１０１ｅから入力された値に基づいて、ダブルトーク状態か否かを判定するものである。状態判定部１０１ｄは、行列式計算部１０１ｂから入力された行列式の値が、判定閾値正規化部１０１ｅから入力された、正規化された閾値よりも大きな値である場合に、ダブルトーク状態と判定する。
【００３２】
（Ａ−２）第１の実施形態の動作
次に、以上のような構成を有する第１の実施形態のエコーキャンセラ１００におけるダブルトーク状態の検出動作を説明する。
【００３３】
まず、相関行列計算部１０１ａにおいて、送話信号及び擬似エコー信号に基づいて、上記の（１）式のような相関行列の各要素について計算し、相関行列（の各要素）を行列式計算部１０１ｂ、及び、判定閾値正規化部１０１ｅへ入力する。
【００３４】
相関行列が入力されると、行列式計算部１０１ｂは、入力された相関行列の行列式を計算して、計算結果を状態判定部１０１ｄに入力する。
【００３５】
判定閾値正規化部１０１ｅは、相関行列計算部１０１ａから、相関行列（の要素）が入力されると、判定閾値記憶部１０１ｃに記憶された閾値を、入力された相関行列（の要素）に基づいて正規化し、正規化した閾値を状態判定部１０１ｄに入力する。
【００３６】
判定閾値正規化部１０１ｅから正規化された閾値、行列式計算部１０１ｂから行列式の値が入力されると、状態判定部１０１ｄは、それらの値を比較して、ダブルトーク状態であるか否かを判定し、結果を適応フィルタ制御部１０２に入力する。
【００３７】
（Ａ−３）第１の実施形態の効果
第１の実施形態によれば、ダブルトーク検出部１０１が、判定閾値正規化部１０１ｅを有することによって、判定閾値記憶部１０１ｃに記憶された閾値を、送話信号等のレベル変動に応じた値に正規化し、その値に基づいて状態判定部１０１ｄが、ダブルトーク状態か否かの判定をすることが可能となる。これにより、エコーキャンセラ１００に入力される入力信号等の変動の状況によらず、ダブルトーク状態を正しく検出をすることが可能となる。
【００３８】
（Ｂ）第２の実施形態
以下、本発明による信号状態検出装置、エコーキャンセラ及び信号状態検出プログラムの第２の実施形態を、図面を参照しながら詳述する。なお、第２の実施形態の信号状態検出装置及び信号状態検出プログラムは、ダブルトーク検出装置及びダブルトーク検出プログラムである。
【００３９】
（Ｂ−１）第２の実施形態の構成
図３は、第２の実施形態に係るダブルトーク検出装置の構成を、第２の実施形態に係るエコーキャンセラの構成と共に示すブロック図である。
【００４０】
エコーキャンセラ２００は、ダブルトーク検出部２０１、適応フィルタ制御部２０２、適応フィルタ部２０３を有している。
【００４１】
適応フィルタ制御部２０２、適応フィルタ部２０３、減算器２０４については、第１の実施形態の適応フィルタ制御部１０２、適応フィルタ部１０３、減算器１０４と同様であるので、説明を省略する。
【００４２】
ダブルトーク検出部２０１は、ダブルトーク状態か非ダブルトーク状態かを検出するものであり、相関行列計算部２０１ａ、行列式計算部２０１ｂ、判定閾値記憶部２０１ｃ、状態判定部２０１ｄ、行列式勾配計算部２０１ｅを有している。
【００４３】
ダブルトーク検出部２０１は、例えば、パソコンや組み込みシステムなどの情報処理装置に、ダブルトーク検出プログラムをインストールすることで構築することができ、機能的には、図３に示すことができる。なお、ダブルトーク検出部１０１をハードロジックなどで構成するようにしても良い。
【００４４】
相関行列計算部２０１ａは、第１の実施形態の相関行列計算部１０１ａと、ほぼ同様の構成であるので、説明を省略する。第１の実施形態において、相関行列計算部１０１ａは、行列式計算部１０１ｂと判定閾値正規化部１０１ｅに得られた相関行列を入力しているが、第２の実施形態においては、行列式計算部２０１ｂにのみ入力する点で異なっている。
【００４５】
行列式計算部２０１ｂは、第１の実施形態の行列式計算部１０１ｂとほぼ同様の構成であるので、説明を省略する。行列式計算部２０１ｂは、得られた行列式の値を、行列式勾配計算部２０１ｅに入力する点において、第１の実施形態の行列式計算部１０１ｂと異なっている。
【００４６】
行列式勾配計算部２０１ｅは、行列式計算部２０１ｂから与えられた行列式（の値）の変化についてその勾配（傾き）を計算し、計算結果を状態判定部２０１ｄに入力するものである。例えば、時刻が異なる２つの行列式の値とから、その変化の割合（勾配）を計算する。ここで、２つの行列式の値は取得したタイミングは問われないものであるが、一方の値として最新の値を適用するようにしても良い。行列式勾配計算部２０１ｅが、計算する値は、下記の（３）式により表すことができる。尚、Ｒは、行列式計算部２０１ｂが出力する上記（１）式に示す相関行列の行列式の値を表し、Δ｜Ｒ｜は、行列式勾配計算部２０１ｅが出力する勾配の値を表すものである。また、ｔ２＞ｔ１であり、ｔ１は、過去に行列式計算部２０１ｂから値を取得した時間を表し、ｔ２は、最新の値を取得した時間を表すものとする。
【数２】
2008187680.tif 000004
【００４７】
判定閾値記憶部２０１ｃは、状態判定部２０１ｄが、ダブルトーク状態の判定をするための閾値を記憶するものである。
【００４８】
状態判定部２０１ｄは、行列式勾配計算部２０１ｅが得た行列式の勾配と判定閾値記憶部２０１ｃに記憶された値に基づいて、ダブルトーク状態か否かを判定するものである。状態判定部２０１ｄは、行列式勾配計算部２０１ｅから入力された勾配値が、判定閾値記憶部２０１ｃに記憶された閾値よりも大きな値である場合に、ダブルトーク状態と判定する。
【００４９】
（Ｂ−２）第２の実施形態の動作
次に、以上のような構成を有する第２の実施形態のエコーキャンセラ２００における、ダブルトーク状態の検出動作を説明する。
【００５０】
まず、相関行列計算部２０１ａにおいて、送話信号及び擬似エコー信号に基づいて、上記の（１）式のような相関行列の各要素を計算し、得られた相関行列（の各要素）を、行列式計算部２０１ｂへ入力する。
【００５１】
相関行列が入力されると、行列式計算部２０１ｂは、その行列式を計算して計算結果を行列式勾配計算部２０１ｅに入力する。
【００５２】
行列式の計算結果が入力されると、行列式勾配計算部２０１ｅは、過去に入力された値と、最新に入力された値に基づいて、勾配の値を計算し、その結果を状態判定部２０１ｄに入力する。
【００５３】
勾配の値が入力されると、状態判定部２０１ｄは、判定閾値記憶部２０１ｃに記憶された閾値と、行列式勾配計算部２０１ｅから入力された勾配値を比較して、ダブルトーク状態であるか否かを判定し、結果を適応フィルタ制御部２０２に入力する。
【００５４】
（Ｂ−３）第２の実施形態の効果
第２の実施形態によれば、ダブルトーク検出部２０１において、行列式勾配計算部２０１ｅが、行列式計算部２０１ｂが計算する行列式の値に基づいてその変化の割合を勾配として計算し、状態判定部２０１ｄが、判定閾値記憶部２０１ｃに記憶された値と比較してダブルトーク状態であるか否かを判定する。これにより、行列式計算部２０１ｂが計算する行列式の値の変化について、ピークが現れるよりも前に、ダブルトーク状態を検出することができるので、ダブルトーク状態をより短時間で検出することが可能となる。
【００５５】
（Ｃ）第３の実施形態
以下、本発明による信号状態検出装置、エコーキャンセラ及び信号状態検出プログラムの第３の実施形態を、図面を参照しながら詳述する。なお、第１の実施形態の信号状態検出装置及び信号状態検出プログラムは、ダブルトーク検出装置及びダブルトーク検出プログラムである。
【００５６】
（Ｃ−１）第３の実施形態の構成
図１は、第３の実施形態に係るダブルトーク検出装置の構成を、第３の実施形態に係るエコーキャンセラの構成と共に示すブロック図である。
【００５７】
エコーキャンセラ３００は、ダブルトーク検出部３０１、適応フィルタ制御部３０２、適応フィルタ部３０３を有している。
【００５８】
適応フィルタ制御部３０２、適応フィルタ部３０３、減算器３０４については、第１の実施形態の適応フィルタ制御部１０２、適応フィルタ部１０３、減算器１０４と同様であるのでその説明を省略する。
【００５９】
ダブルトーク検出部３０１は、ダブルトーク状態か非ダブルトーク状態かを検出するものであり、相関行列計算部３０１ａ、行列式計算部３０１ｂ、判定閾値記憶部３０１ｃ、状態判定部３０１ｄ、行列式勾配計算部３０１ｅ、判定閾値正規化部３０１ｆを有している。ダブルトーク検出部３０１は、例えば、パソコンや組み込みシステムなどの情報処理装置に、ダブルトーク検出プログラムをインストールすることで構築することができ、機能的には、図１に示すことができる。なお、ダブルトーク検出部１０１をハードロジックなどで構成するようにしても良い。
【００６０】
相関行列計算部３０１ａは、第２の実施形態の相関行列計算部２０１ａとほぼ同様の構成であるので、説明を省略する。相関行列計算部３０１ａは、得られた相関行列を、行列式計算部３０１ｂだけでなく、判定閾値正規化部３０１ｆにも入力する点において、第２の実施形態の相関行列計算部２０１ａと異なっている。
【００６１】
行列式計算部３０１ｂ、行列式勾配計算部３０１ｅは、第２の実施形態の行列式計算部２０１ｂ、行列式勾配計算部２０１ｅと同様の構成であるので説明を省略する。
【００６２】
判定閾値記憶部３０１ｃは、第２の実施形態の判定閾値記憶部２０１ｃとほぼ同様の構成である。判定閾値正規化部３０１ｆに接続して、記憶した情報を参照させる点において、第２の実施形態の判定閾値記憶部２０１ｃと異なっている。
【００６３】
判定閾値正規化部３０１ｆは、相関行列計算部３０１ａから入力された相関行列（の要素）に基づいて、判定閾値記憶部３０１ｃに記憶された閾値を正規化し、状態判定部３０１ｄへ正規化した閾値を入力するものである。判定閾値正規化部３０１ｆが、正規化する方法としては、第１の実施形態で説明した方法を適用できる。
【００６４】
判定閾値記憶部３０１ｃは、判定閾値正規化部３０１ｆが、正規化する対象の閾値を記憶するものである。
【００６５】
状態判定部３０１ｄは、行列式計算部３０１ｂと判定閾値正規化部３０１ｆから入力された値に基づいて、ダブルトーク状態か否かを判定するものである。行列式計算部３０１ｂから入力された行列式の値が、判定閾値正規化部３０１ｆから入力された正規化された閾値よりも大きな値である場合に、ダブルトーク状態と判定する。
【００６６】
（Ｃ−２）第３の実施形態の動作
次に、以上のような構成を有する第３の実施形態のエコーキャンセラ３００における、ダブルトーク状態の検出動作を説明する。
【００６７】
相関行列計算部３０１ａにおいて、送話信号、擬似エコー信号に基づいて、上記の（１）式のような相関行列（の各要素）を計算し、得られた相関行列を行列式計算部３０１ｂへ入力する。
【００６８】
相関行列が入力されると、行列式計算部３０１ｂは、入力された相関行列の行列式を計算し、計算結果を行列式勾配計算部３０１ｅに入力する。
【００６９】
相関行列の行列式の値が入力されると、行列式勾配計算部３０１ｅは、過去に入力された値と、最新に入力された値に基づいて、その勾配の値を計算し、結果を状態判定部３０１ｄに入力する。
【００７０】
判定閾値正規化部３０１ｆは、相関行列計算部３０１ａから相関行列の要素が入力されると、判定閾値記憶部３０１ｃに記憶された閾値を、相関行列の要素に基づいて正規化し、正規化した閾値を、状態判定部３０１ｄに入力する。
【００７１】
判定閾値正規化部３０１ｆから正規化した閾値が入力され、行列式勾配計算部３０１ｅから勾配の値が入力されると、状態判定部３０１ｄは、それらの値を比較し、ダブルトーク状態であるか否かを判定し、結果を適応フィルタ制御部３０２に入力する。
【００７２】
（Ｃ−３）第３の実施形態の効果
第３の実施形態のエコーキャンセラ３００は、第１の実施形態の判定閾値正規化部１０１ｅ、及び、第２の実施形態の行列式勾配計算部２０１ｅと同様の手段である行列式勾配計算部３０１ｅ、及び、判定閾値正規化部３０１ｆを有している。これにより、第１の実施形態と第２の実施形態の効果を、併せて奏することが可能となる。すなわち、エコーキャンセラ３００に入力される入力信号等の変動の状況によらず、ダブルトーク状態の判定が可能で、且つ、ダブルトーク状態の検出時間を短縮することが可能となる。
【００７３】
（Ｄ）他の実施形態
上記各実施形態だけなく、更に、以下に例示するような実施形態も挙げることができる。
【００７４】
（Ｄ−１）上記各実施形態において、１サンプル毎に、相関行列計算部１０１ａ、２０１ａ、３０１ａが、行列式計算部１０１ｂ、２０１ｂ、３０１ｂへ相関行列を入力しても良いし、複数サンプル毎に入力しても良い。
【００７５】
複数サンプル毎に入力を行う場合には、例えば、相関行列計算部１０１ａ、２０１ａ、３０１ａの動作として、上記の（１）式の相関行列の各要素に複数サンプルの平均値を用いる方法が挙げられる。例えば、１０サンプル毎に判定する場合において、上記の（１）式の１行１列の要素については、下記の（４）式により求められる値として、行列式計算部１０１ｂ、２０１ｂ、３０１ｂに結果を入力する。下記の（４）式は、上記の（１）式の１０サンプル分の算術平均を取ることによって、平均値を計算する式である（「ｉ」は時間を表す）。同様な計算を相関行列のすべての要素に行うことにより、相関行列の平均値が得られる。
【数３】
2008187680.tif 000005
【００７６】
また、複数サンプルの平均値を用いる方法としては、重み付き平均値（加重平均）により求めても良い。例えば、新しいサンプル程重み付けを大きくするなどの方法が挙げられる。
【００７７】
（Ｄ−２）第１の実施形態においては、状態判定部１０１ｄの判定においては、行列式の値を用いているが、相関行列から得られる同様な量であれば、行列式の値に限定されるものではなく、例えば、相関行列から得られる固有値などを状態判定に用いるようにしても良い。例えば、上記（１）式の相関行列に係る固有値をλとすると、下記の（５）式による方程式を解くことで相関行列Ｒの固有値λの値を得ることができる。尚、Ｅは単位行列を表すものである。
【数４】
2008187680.tif 000006
【００７８】
また、第２の実施形態、第３の実施形態においては、状態判定部２０１ｄ、３０１ｄの判定について、行列式勾配計算部２０１ｅ、３０１ｆにより算出される勾配の値を用いているが、上記の（１）式のような行列式に基づいて算出した勾配に限定されるものではなく、同様の相関行列から得られる量であれば良い。例えば、上記（５）式により求められる固有値の勾配を用いることが挙げられる。
【００７９】
（Ｄ−３）上記各実施形態においては、（１）式に示す相関行列の行列式に基づいて、ダブルトーク状態か否かを判定したが、ダブルトーク状態になると、非ダブルトーク状態の場合と比べて、きわめて大きなピーク値を持つ等の、同様の特性を有するものであれば、（１）式以外の式で表される相関行列の行列式（や行列式の勾配）を用いるようにしても良い。
【００８０】
また、上記各実施形態においては、上記の（１）式のような相関行列に基づいた値により、ダブルトーク状態の判定をしているが、適応フィルタによる擬似エコー信号と、送話信号の相関度合に基づいた値であれば、相関行列に基づいた値でなくても良い。
【００８１】
（Ｄ−４）上記各実施形態においては、ダブルトーク検出部１０１、２０１、３０１は、ダブルトーク状態の検出のみを目的として備えているが、同様の構成をエコー経路の変動の検出に用いても良い。上記の特許文献１に記載の、従来のエコーキャンセラ６００が有するダブルトーク検出部６０１は、エコー経路の変動についても、ダブルトークと同様の手段により検出することが可能であるため、上記の各実施形態のダブルトーク検出部１０１、２０１、３０１も同様に、エコー経路変動について検出が可能である。よって、本発明のダブルトーク検出部１０１、２０１、３０１はエコー経路の変動の検出に関しても、上記の各実施形態と同様の効果を奏する。
【００８２】
（Ｄ−５）上記各実施形態においては、非ダブルトーク状態からダブルトーク状態への変化と、ダブルトーク状態から非ダブルトーク状態への変化とを同様な方法で検出するものを示したが、非ダブルトーク状態からダブルトーク状態への変化の検出方法と、ダブルトーク状態から非ダブルトーク状態への変化の検出方法とが異なっていても良い。例えば、非ダブルトーク状態からダブルトーク状態への変化の検出方法として、行列式の勾配を状態検出に利用する第２の実施形態で説明した方法を適用し、ダブルトーク状態から非ダブルトーク状態への変化の検出方法として、行列式を状態検出に利用する第１の実施形態で説明した方法を適用するようにしても良い。
【００８３】
（Ｄ−６）上記各実施形態において、各手段は、時間領域に基づいて演算を行っているが、周波数領域で演算を行うことに置き換えても良い。
【００８４】
（Ｄ−７）上記各実施形態のダブルトーク検出部１０１、２０１、３０１と同様な構成は、エコーキャンセラだけでなく、適応フィルタを用いて、主信号以外の不要な信号を消去する他の装置にも適用することができる。例えば、ノイズキャンセラ（背景雑音消去装置）に適用することが可能である。
【００８５】
ノイズキャンセラにおいては、白色雑音などの基準信号を、適応動作する適応フィルタを用いた擬似ノイズ生成装置を通過させて擬似ノイズを生成させ、背景雑音を含む主信号からを擬似ノイズを減算することで背景雑音を消去する。そのため、擬似ノイズを擬似エコー信号と同様に扱い、背景雑音を含む主信号を送話信号と同様に扱うことにより、上記各実施形態のダブルトーク検出部１０１、２０１、３０１と同様な構成により、適応フィルタの適応動作を継続しても良い状態か停止させる状態かを検出することができ、その際に上記の各実施形態と同様の効果を奏することが可能となる。
【図面の簡単な説明】
【００８６】
【図１】第３の実施形態の全体構成を示すブロック図である。
【図２】第１の実施形態の全体構成を示すブロック図である。
【図３】第２の実施形態の全体構成を示すブロック図である。
【図４】回線エコーを、エコーキャンセラにより消去する構成について示した説明図である。
【図５】音響エコーを、エコーキャンセラにより消去する構成について示した説明図である。
【図６】従来のエコーキャンセラの機能的構成を示すブロック図である。
【図７】従来のエコーキャンセラの説明に用いる記号の説明図である。
【符号の説明】
【００８７】
３００…エコーキャンセラ、３０１…ダブルトーク検出部、３０１ａ…相関行列計算部、３０１ｂ…行列式計算部、３０１ｃ…判定閾値記憶部、３０１ｄ…状態判定部、３０１ｅ…行列式勾配計算部、３０１ｆ…判定閾値正規化部。
【図１】
2008187680.tif 000007
【図２】
2008187680.tif 000008
【図３】
2008187680.tif 000009
【図４】
2008187680.tif 000010
【図５】
2008187680.tif 000011
【図６】
2008187680.tif 000012
【図７】
2008187680.tif 000013