(57)【要約】【課題】受話信号ｘ（ｎ）と収音信号ｚ（ｎ）のみを用いてダブルトーク状態を判定する反響消去装置及びその判定方法、そのプログラム、及びその記録媒体の提供。【解決手段】ダブルトーク状態判定手段は、受話発話判定計数手段と収音発話判定計数手段とダブルトーク状態判定部とで構成され、受話発話判定計数手段は、受話信号の短時間フレーム毎の受話指標値が、閾値ｘｔｈより大きい状態の連続するフレーム数を求め、収音発話判定計数手段は、収音信号の短時間フレーム毎の収音指標が、閾値ｚｔｈより大きい状態の連続するフレーム数を求め、ダブルトーク状態判定部は、受話発話判定計数手段と収音発話判定計数手段で求められたそれぞれの連続するフレーム数の大小比較により、ダブルトーク状態か受話のみの受話シングルトーク状態かを判定する。【選択図】図１
2008131593.tif 000002
【特許請求の範囲】
【請求項１】
受話端と送話端から同時に通話信号が入力される同時通話であるダブルトーク状態か、送話端に通話信号が入力されず受話端のみに通話信号が入力される受話シングルトーク状態かを判定するダブルトーク状態判定手段を備えた反響消去装置において、
上記受話端と送話端から入力される離散化された受話信号ｘ（ｎ）と収音信号ｚ（ｎ）に対して、ｎは自然数、
上記受話信号ｘ（ｎ）の短時間フレーム毎の受話指標値が、閾値ｘｔｈと比較して発話の連続する上記短時間フレーム数を計数する受話発話判定計数手段と、
上記収音信号ｚ（ｎ）の短時間フレーム毎の収音指標が、閾値ｚｔｈと比較して発話の連続する上記短時間フレーム数を計数する収音発話判定計数手段と、
上記受話発話判定計数手段と上記収音発話判定計数手段で求められたそれぞれの上記計数値の大小比較により、ダブルトーク状態か受話シングルトーク状態かを判定するダブルトーク状態判定部と、
を具備する反響消去装置。
【請求項２】
請求項１に記載の反響消去装置において、
上記受話発話判定計数手段は、
各受話信号ｘ（ｎ）の上記短時間フレーム内のパワー又は振幅の絶対値の総和あるいはそれらの平均値を上記受話指標値として求める受話指標値計算部と、
上記受話指標値が上記閾値ｘｔｈより大又は閾値ｘｔｈ以上であれば受話発話フラグを出力する受話発話判定部と、
上記受話発話判定部が出力する上記受話発話フラグの連続するフレーム数ｃｘ（ｋ）を計数する受話発話カウンターと、を備え、
上記収音発話判定計数手段は、
各収音信号ｚ（ｎ）の上記短時間フレーム内のパワー又は振幅の絶対値の総和あるいはそれらの平均値を上記収音指標値として求める収音指標値計算部と、
上記収音指標値が上記閾値ｚｔｈより大又は閾値ｚｔｈ以上であれば収音発話フラグを出力する収音発話判定部と、
上記収音発話判定部が出力する上記収音発話フラグの連続するフレーム数ｃｚ（ｋ）を計数する収音発話カウンターと、を備え、
上記ダブルトーク状態判定部は、上記計数したｃｘ（ｋ）と上記計数したｃｚ（ｋ）を入力し、ｃｚ（ｋ）がｃｘ（ｋ）より大きければダブルトーク状態と判定し、上記ｃｚ(ｋ)がｃｘ（ｋ）より小さいか、等しければ受話シングルトーク状態と判定するものであることを特徴とする反響消去装置。
【請求項３】
請求項１に記載された反響消去装置において、
上記受話信号ｘ（ｎ）を短時間フレーム毎に離散周波数領域信号に変換する受話信号周波数分析部と、
上記収音信号ｚ（ｎ）を短時間フレーム毎に離散周波数領域信号に変換する収音信号周波数分析部と、を備え、
上記離散周波数領域受話信号と上記離散周波数領域収音信号とが入力され、これらの両信号の上記短時間フレーム毎の相関値を計算する相関部と、
を備え、
上記ダブルトーク状態判定部は、上記計数したｃｘ（ｋ）と上記計数したｃｚ（ｋ）と上記相関値を入力として、
ダブルトーク状態を判定するものであることを特徴とする反響消去装置。
【請求項４】
請求項３に記載された反響消去装置において、
上記相関部は、受話信号パワー計算部と収音信号パワー計算部と相関計算部を備え、
上記受話信号パワー計算部は、上記離散周波数領域受話信号の各周波数成分のパワーを計算する受話離散パワー計算部と、上記離散周波数領域受話信号のパワーを複数の周波数バンドに分割する受話バンド分割部と、上記受話バンド分割部で分割したバンド毎に上記離散周波数領域受話信号のパワーを平均して受話バンド平均パワーを求める受話バンド平均化部を含むものであり、
上記収音信号パワー計算部は、上記離散周波数領域収音信号の各周波数成分のパワーを計算する収音離散パワー計算部と、上記離散周波数領域収音信号のパワーを複数の周波数バンドに分割する収音バンド分割部と、上記収音バンド分割部で分割したバンド毎に上記離散周波数領域収音信号のパワーを平均して収音バンド平均パワーを求める収音バンド平均化部を含むものであり、
上記相関計算部は、上記受話バンド平均パワーと上記収音バンド平均パワーの上記短時間フレーム毎の相関値を計算して上記相関値とするものであり、
上記ダブルトーク状態判定部は、上記相関値と上記計数値ｃｘ（ｋ）とｃｚ（ｋ）とが入力され、ｃｘ（ｋ）とｃｚ（ｋ）の小さい方が閾値ｔｈｄに対して大きいか否かによって、ダブルトーク状態の判定方法を切り替えるものである
ことを特徴とする反響消去装置。
【請求項５】
受話端と送話端から同時に信号が入力される同時通話であるダブルトーク状態か、送話端に通話信号が入力されず受話端のみに通話信号が入力される受話シングルトーク状態かを判定するダブルトーク状態判定方法において、
上記受話端と送話端から入力される離散化された受話信号ｘ（ｎ）と収音信号ｚ（ｎ）に対して、
上記受話信号ｘ（ｎ）の短時間フレーム毎の受話指標値が、閾値ｘｔｈより大きい状態を計数する過程と、
上記収音信号ｚ（ｎ）の短時間フレーム毎の収音指標が、閾値ｚｔｈより大きい状態を計数する過程と、
上記受話発話判定計数手段と上記収音発話判定計数手段で求められたそれぞれの上記計数値の大小比較により、ダブルトーク状態か受話シングルトーク状態かを判定する過程と
を含むことを特徴とするダブルトーク状態判定方法。
【請求項６】
請求項５に記載のダブルトーク状態判定方法において、
上記ダブルトーク状態か受話シングルトーク状態かを判定する過程は、
上記受話信号ｘ（ｎ）の短時間フレーム毎のエネルギー又は振幅の絶対値に対応する受話指標が、閾値ｘｔｈより大きい状態の連続するフレーム数ｃｘ（ｋ）を求める過程と、
上記収音信号ｚ（ｎ）の短時間フレーム毎のエネルギー又は振幅の絶対値に対応する収音指標が、閾値ｚｔｈより大きい状態の連続するフレーム数ｃｚ（ｋ）を求める過程と、
上記求めたｃｘ（ｋ）とｃｚ（ｋ）を入力し、ｃｚ（ｋ）がｃｘ（ｋ）より大きければダブルトーク状態と判定する過程と、
を含むことを特徴とするダブルトーク状態判定方法。
【請求項７】
請求項６に記載のダブルトーク状態判定方法において、
上記短時間フレームに分割された時間領域の受話信号ｘ（ｋ）と収音信号ｚ（ｋ）をそれぞれ離散周波数領域受話信号Ｘ（ｋ，ｆ＊）（＊＝１，２，‥‥，Ｎ）と離散周波数領域収音信号Ｚ（ｋ，ｆ＊）に変換する過程と、
上記短時間フレームにおける上記離散周波数領域受話信号Ｘ（ｋ，ｆ＊）と上記離散周波数領域収音信号Ｚ（ｋ，ｆ＊）との相関値を求める過程と、
上記受話発話カウンターの計数値ｃｘ（ｋ）と収音発話カウンターの計数値ｃｚ（ｋ）と上記相関値を入力としてダブルトーク状態を判定する判定過程と、
を含むことを特徴とするダブルトーク状態判定方法。
【請求項８】
請求項６に記載のダブルトーク状態判定方法において、
上記短時間フレームに分割された時間領域の受話信号ｘ（ｋ）と収音信号ｚ（ｋ）をそれぞれ離散周波数領域受話信号Ｘ（ｋ，ｆ＊）（＊＝１，２，‥‥，Ｎ）と離散周波数領域収音信号Ｚ（ｋ，ｆ＊）に変換する過程と、
上記離散周波数領域受話信号Ｘ（ｋ，ｆ＊）を複数の周波数バンドに分割して受話バンド列を生成する過程と、
上記離散周波数領域収音信号Ｚ（ｋ，ｆ＊）を複数の周波数バンドに分割して収音バンド列を生成する過程と、
上記短時間フレームにおける上記受話バンド列Ｘ（ｋ，ｍ＊）と上記収音バンド列Ｚ（ｋ，ｍ＊）との相関値を求める過程と、
上記受話発話カウンターの計数値ｃｘ（ｋ）と収音発話カウンターの計数値ｃｚ（ｋ）と上記相関値を入力としてダブルトーク状態を判定する判定過程と、
を含むことを特徴とするダブルトーク状態判定方法。
【請求項９】
請求項１乃至４の何れかに記載した各装置としてコンピュータを機能させるための装置プログラム
【請求項１０】
請求項９に記載した何れかのプログラムを記録したコンピュータで読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、音声会議、ＴＶ会議等の拡声通話系で発生するスピーカからマイクロホンへ回り込む反響信号を抑圧する反響消去装置において、双方向で同時に発話が起こるダブルトーク状態を検出する方法、その方法を用いた反響消去装置、そのプログラム及びその記録媒体に関する。
【背景技術】
【０００２】
拡声通話系では、受話信号をスピーカを用いて再生し、発話信号をマイクロホンを用いて収音して相手側に送信する。この時、受話信号を再生するスピーカとマイクロホンとの音響結合により、スピーカから再生された信号がマイクロホンに回り込み、エコー信号としてマイクロホン入力信号に混入する。このエコー信号は、音響エコーとして通話品質の劣化を招く、また、ハウリング発生の原因にもなる。
反響路（音響）結合量推定方法及び推定した反響路結合量を利用した従来の反響消去装置の一つとして、特許文献１に開示されているものが知られている。この従来技術を図１３を参照して説明する。スピーカ等の受話手段２とマイクロホン等の送話手段４を用いたハンズフリー拡声通話を行なう自分側を近端、図示しない通信路を挟んで会話を行なう相手側を遠端とする。図１３は、近端に配置された反響消去装置８００を示している。
【０００３】
反響消去装置８００は、反響消去部８０と損失制御部９０とからなる。遠端の相手（話者）から通信路を経由して受話端８に受信された受話信号ｘ（ｎ）は、反響消去装置８００を介して受話手段２から拡声音として空間に放射される。ここでｎは離散時間を示す。その拡声音は反響路６を介して反響し、エコー信号ｙ（ｎ）として送話手段４に収音される。
送話手段４で収音された入力信号ｚ（ｎ）（以降、収音信号ｚ（ｎ）と称す）は、送話端９より反響消去部８０に入力される。
【０００４】
反響消去部８０は、例えば受話信号ｘ（ｎ）と誤差信号ｅ（ｎ）（後述する）とから適応フィルタ係数ｈ＾（ｎ）を生成する推定手段８２と、受話信号ｘ（ｎ）と適応フィルタ係数ｈ＾（ｎ）から擬似エコー信号ｙ＾（ｎ）を生成する擬似反響路８４と、収音信号ｚ（ｎ）から擬似エコーｙ＾（ｎ）を減算する減算器８６からなる。
収音信号ｚ（ｎ）は、通話状態によってエコー信号ｙ（ｎ）と送話信号ｓ（ｎ）で構成される。ただし、受話信号ｘ（ｎ）がない場合には、同時にエコー信号ｙ（ｎ）が存在することはない。今、受話信号ｘ（ｎ）だけの場合の収音信号ｚ（ｎ）は、ｚ（ｎ）＝ｙ＾（ｎ）である。この場合に、擬似反響路８４が生成する擬似エコー信号ｙ＾（ｎ）が反響路６のインパルス応答を正しく模擬していれば、エコー信号ｙ（ｎ）に擬似エコー信号ｙ＾（ｎ）が近づくので、減算器８６の出力である誤差信号ｅ（ｎ）は小さくなる。
【０００５】
このように誤差信号ｅ（ｎ）が小さくなるように適応アルゴリズムにより推定手段８２が適応フィルタ係数ｈ＾（ｎ）を生成する。代表的なアルゴリズムとしては、最小二乗法（ＬＭＳ：Least-Mean-Squares）や学習同定法（ＮＬＭＳ：Normalized LMS）などが知られている。
減算器８６の出力信号である誤差信号ｅ（ｎ）は、損失制御部９０に入力される。
損失制御部９０は、受話側と送話側で同時に発話するダブルトーク状態を判定するダブルトーク状態判定手段９２と、受話端８と反響消去部８０の間の通信路に挿入される損失器９８と、反響消去部８０と相手側への通信路に収音信号ｚ（ｎ）を出力する出力端７との間に挿入される損失器９９と、ダブルトーク状態でないときの受話信号ｘ（ｎ）と収音信号ｚ（ｎ）とからの損失量を計算する損失量決定手段９４と、それぞれの損失器９８と９９に受話信号ｘ（ｎ）と誤差信号ｅ（ｎ）とに基づき判定された通話状態に対応して損失量を挿入する損失量制御手段９６とからなる。
【０００６】
ダブルトーク状態判定手段９２には、受話信号ｘ（ｎ）と収音信号ｚ（ｎ）と誤差信号ｅ（ｎ）とが入力される。受話信号ｘ（ｎ）は短時間パワー値Ｐｘ（ｋ）計算部９２１で、収音信号ｚ（ｎ）は短時間パワー値Ｐｚ（ｋ）計算部９２２で、誤差信号ｅ（ｎ）は短時間パワー値Ｐｅ（ｋ）計算部９２３で、それぞれの短時間パワー値が計算される。ｋは短時間区間の番号を表わす。
受話信号ｘの短時間パワー値Ｐｘ（ｋ）は、受話区間判定部９２５に入力される。受話信号短時間パワー値Ｐｘ（ｋ）が閾値ｘｔｈより大の場合、受話区間判定部９２５は受話信号ｘ（ｎ）中に発話信号ありと判定する。
【０００７】
収音信号ｚの短時間パワー値Ｐｚ（ｋ）は、閾値設定部９２７に入力される。エコーレベル設定部９２７では、１以下に設定された定数Ｔｈと短時間パワー値Ｐｚ（ｋ）を乗算して（Ｔｈ×Ｐｚ（ｋ））、その結果を閾値として設定する。
受話区間判定部９２５の判定結果と、閾値と誤差信号の短時間パワー値Ｐｅ（ｋ）とがダブルトーク状態判定部９２９に入力される。ダブルトーク状態判定部９２９は、受話信号短時間パワー値Ｐｘ（ｋ）が所定の閾値ｘｔｈを超えた場合において、閾値よりも誤差信号短時間パワー値Ｐｅ（ｋ）が小さければダブルトーク状態ではないと判定する（Ｐｘ（ｋ）＞ｘｔｈで且つ、Ｐｅ（ｋ）＜Ｔｈ×Ｐｚ（ｋ））。また同様に受話信号短時間パワー値Ｐｘ（ｋ）が所定の閾値ｘｔｈを超えた場合において、閾値（Ｔｈ×Ｐｚ（ｋ））よりも、誤差信号短時間パワー値Ｐｅ（ｋ）が大きければダブルトーク状態か又は反響路６が変化しているものと判定する（Ｐｘ（ｋ）＞ｘｔｈで且つ、Ｐｅ（ｋ）＞Ｔｈ×Ｐｚ（ｋ））。
【０００８】
このダブルトーク状態判定手段９２の判定結果と、受話信号短時間パワー値Ｐｘ（ｋ）と収音信号短時間パワー値Ｐｚ（ｋ）とが損失量決定手段９４に入力される。
損失量決定手段９４は、ダブルトーク状態ではない時に例えば収音信号短時間パワー値Ｐｚ（ｋ）と受話信号短時間パワー値Ｐｘ（ｋ）とから反響路結合量（Ｐｚ（ｋ）/Ｐｘ（ｋ））を求め、その逆数を損失量として決定する。その損失量は損失量制御手段９６に入力される。
損失量制御手段９６は、受話信号ｘ（ｎ）と誤差信号ｅ（ｎ）とを用いて送受話状態の判定を行なう。受話信号ｘ（ｎ）のみの通信状態と判定された場合、損失量制御手段９６は送話側の損失器９９に損失を挿入する。送話信号ｓ（ｎ）のみの通信状態と判断された場合、損失量制御手段９６は受話側の損失器９８に損失を挿入する。ダブルトーク状態の時には、送受話双方に損失は挿入されない。
【０００９】
以上のように動作することで遠端と近端を一巡する通信路（ループ）の利得が１を超えてハウリングが発生することを防止している。
【特許文献１】特許第３２６８５７２号、図５
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら従来の方法では、ダブルトーク状態ではない（すなわちシングルトーク状態）場合を判定し、その時にのみ反響結合量を決定する。ここで、適応アルゴリズムにより推定手段８２が生成する適応フィルタ係数ｈ＾（ｎ）に大きな誤差がある場合、ダブルトーク状態の判定を誤ることがある。ダブルトーク状態の判定を誤ると通話品質が劣化する。
シングルトーク状態であるのに、ダブルトーク状態と誤判定された場合には、損失器９８と９９に損失が挿入されないので、誤差信号ｅ（ｎ）がそのまま遠端側に送信されてしまう。ダブルトーク状態であった場合に受話シングルトーク状態と誤判定された場合には、送話側の損失器９９に損失が挿入されるので発話に途切れが発生してしまう。
【００１１】
このダブルトーク状態の誤判定は、上記したように推定手段８２による適応フィルタ係数ｈ＾（ｎ）に大きな誤差がある場合に起こり得る。その誤差は、例えば話者が移動したりマイクロホンの位置を移動させたりすることで、反響路６のインパルス応答が変化することで発生する。つまり、適応フィルタ係数ｈ＾（ｎ）の学習が充分進んだ状況では、擬似反響路８４が生成する擬似エコー信号ｙ＾（ｎ）と、反響路６におけるエコー信号ｙ（ｎ）とは等しい。しかし、反響路６のインパルス応答が変化すると、新たな反響路６に基づくエコー信号ｙ（ｎ）が変化するので、擬似エコー信号ｙ＾（ｎ）との間に大きな誤差が発生することがある。新たな適応フィルタ係数ｈ＾（ｎ）を推定手段８２が学習するのに例えば約２秒程度の時間が必要なので、この間にダブルトーク状態の誤判定が発生することがある。
【００１２】
この誤判定を避けるには、適応フィルタ係数ｈ＾（ｎ）による擬似エコーｙ＾（ｎ）を減算した誤差信号ｅ（ｎ）を用いないで判定すればよい。つまり、受話信ｘ（ｎ）と収音信号ｚ（ｎ）のみを用いてダブルトーク状態を判定することができればよい。
この発明は、このような課題に鑑みてなされたものであり、受話信号ｘ（ｎ）と収音信号ｚ（ｎ）のみを用いてダブルトーク状態を判定することができる反響消去装置及びその判定方法、そのプログラム、及びその記録媒体を提供することを目的とする。
【課題を解決するための手段】
【００１３】
この発明による反響消去装置は、受話端と送話端から同時に信号が入力される同時通話であるダブルトーク状態か、受話のみの受話シングルトーク状態かを判定するダブルトーク状態判定手段を含み、
上記受話端と送話端から入力される離散化された受話信号ｘ（ｎ）と収音信号ｚ（ｎ）に対して、ｎは自然数、
上記ダブルトーク状態判定手段は、受話発話判定計数手段と収音発話判定計数手段とダブルトーク状態判定部とで構成され、
受話発話判定計数手段は、受話信号の短時間フレーム毎の受話指標値を、閾値ｘｔｈと比較して発話の連続するフレーム数を求め、
収音発話判定計数手段は、収音信号の短時間フレーム毎の収音指標値を、閾値ｚｔｈと比較して発話の連続するフレーム数を求め、
ダブルトーク状態判定部は、受話発話判定計数手段と収音発話判定計数手段で求められたそれぞれの連続するフレーム数の大小比較により、ダブルトーク状態か受話のみの受話シングルトーク状態かを判定するものである。
【発明の効果】
【００１４】
この発明の反響消去装置によれば、上記短時間フレーム毎に通話状態を判断することができ、受話信号ｘ（ｎ）と収音信号ｚ（ｎ）のみを用いてダブルトーク状態の判定を正しく行なうことが可能である。これにより、擬似反響路の推定に大きな誤差がある場合でも、送話信号の途切れをなくし、エコー信号の送信を抑えることができる。
【発明を実施するための最良の形態】
【００１５】
以下、この発明の実施の形態を図面を参照して説明する。複数の図面中同一のものには同じ参照符号を付し、説明は繰り返さない。
【実施例１】
【００１６】
この発明の実施例１のダブルトーク状態判定手段２０を含む反響消去装置１００の機能構成例を図１に示し、図１中のダブルトーク状態判定手段２０の実施例１の機能構成例を図２に示す。実施例１の反響消去装置１００は、先に図１１に示した従来の反響消去装置８００と、ダブルトーク状態判定手段２０のみが異なり、その他の各部の動作は同じ場合を例としている。また、図１も自分側の近端の反響消去装置１００を示す点は同じである。したがって、ここではダブルトーク状態判定手段２０の動作について説明する。ダブルトーク状態判定手段２０の主要な処理の流れを図３に示す。
【００１７】
ダブルトーク状態判定手段２０には、受話信号ｘ（ｎ）と送話手段４の出力信号である収音信号ｚ（ｎ）が入力される。（ｎ）は、例えば１６ｋＨｚでサンプリングされた離散化された信号であることを表わす自然数である。
ダブルトーク状態判定手段２０は、受話発話判定計数手段２２と、収音発話判定計数手段２４とダブルトーク状態判定部３２とから構成される。
受話信号ｘ（ｎ）が入力される受話発話判定計数手段２２と、収音信号ｚ（ｎ）が入力される収音発話判定計数手段２４とは、基本的な構成が同じである。そこで、受話発話判定計数手段２２の動作を中心に説明を行い。異なる部分については、追記して説明する。
【００１８】
受話信号ｘ（ｎ）が入力される受話発話判定計数手段２２は、受話信号ｘ（ｎ）を短時間フレーム（後述する）に分割するフレーム分割部２６と、短時間フレーム毎のエネルギー又は振幅の絶対値に対応する受話指標値を計算する受話指標値計算部２８と、受話指標値が閾値ｘｔｈより大であるフレームを判定する受話発話判定部２９と、受話指標が閾値ｘｔｈよりも大である連続するフレームを計数する受話発話カウンター３０とからなる。
例えば１６ｋＨｚでサンプリングされた受話信号ｘ（ｎ）は、フレーム分割部２６において短時間フレームに分割される。短時間フレームの分割は、例えば受話信号ｘ（ｎ）を１６０個数えたら計数値を１累進するｘ（ｎ）カウンター２６１で行なわれる。つまり、ｘ（ｎ）カウンター２６１の計数値ｋによって受話信号ｘ（ｎ）は、短時間フレームに分割される。この例の場合、１フレームの長さは１０ｍｓである。
【００１９】
フレーム分割部２６は、ｘ（ｎ）カウンター２６１の計数値ｋと受話信号ｘ（ｎ）を受話指標値計算部２８に出力する（図３、ステップＳ１０）。
受話指標値計算部２８は、同一の短時間フレーム内の受話信号ｘ（ｎ）のパワーの累積をパワー計算部２８１で求め、その短時間フレーム内パワーを平均化部２８３で平均することで当該短時間フレーム内のパワーの平均値Ｐｘｍ（ｋ）を求める（ステップＳ１２）。求めた当該短時間フレーム内のパワーの平均値Ｐｘｍ（ｋ）は受話発話判定部２９に入力される。その短時間フレーム内のパワーの平均値Ｐｘｍ（ｋ）と、レジスタ２９２内の実験的に求める閾値ｘｔｈとを、比較部２９１で比較し、パワーの平均値が閾値ｘｔｈ以上の場合（ステップＳ１４がＹｅｓ）、つまり発話ありの場合、比較部２９１は受話信号発話フラグｆｘ（ｋ）＝１を受話発話カウンター３０に出力する。パワーの平均値が閾値ｘｔｈより小さい発話なしの場合、比較部２９１は受話信号発話フラグｆｘ（ｋ）＝０を受話発話カウンター３０に出力する。短時間フレーム内のパワーの平均値Ｐｘｍ（ｋ）が、レジスタ２９２内の閾値ｘｔｈよりも大（ステップＳ１４の不等号が＞でもよい）の時に発話ありとしてもよい。
【００２０】
ここで短時間フレーム内のパワーは、平均化部２８３で平均せずに累積値でもよい。また、受話信号ｘ（ｎ）の振幅の絶対値の累積を累積振幅絶対値算出部２８２で求め、それを平均化部２８３で平均した受話信号ｘ（ｎ）の振幅の絶対値を用いてもよい。あるいは、平均せず累積振幅絶対値を用いてもよい。更に、発話区間の判定方法としては、音声区間の検出方法として従来から用いられている振幅の零交叉数を用いてもよい。つまり発話音声があるとなしで振幅の零交叉数が異なることを利用してもよい。また、後述する実施例２のように受話信号ｘ（ｎ）と収音信号ｚ（ｎ）をそれぞれ周波数分析する方法においては、雑音区間のスペクトルと発話がある区間のスペクトルとの差から発話区間を判定してもよい。従来の発話検出方法の何れを用いてもよい。このように受話指標値計算部２８において求める受話指標値は各種のものが考えられる。何れの値を受話指標値にするかによって受話発話判定部２９内のレジスタ２９２に格納する閾値ｘｔｈの値も異なるものとなる。
【００２１】
受話信号発話フラグｆｘ（ｋ）が入力される受話発話カウンター３０は、受話信号発話フラグｆｘ（ｋ）が連続する時の、短時間フレームの数を計数する（ステップＳ１６）。
受話発話カウンター３０の初期値は０と（ｃｘ（０）＝０）とする。ｋフレーム目で受話信号発話フラグが発話ありの場合、受話発話カウンター３０の計数値は、１フレーム前の計数値ｃｘ（ｋ−１）に＋１される（ステップＳ１６、ｃｘ（ｋ）＝ｃｘ（ｋ−１）＋１）。
逆にｋフレーム目で受話信号発話フラグｆｘ（ｋ）が発話なしの場合（ｆｘ（ｋ）＝０）、受話発話カウンター３０の計数値は０にリセットされる（ステップＳ１８、ｃｘ（ｋ）＝０）。つまり受話発話カウンター３０は、受話信号側の連続する発話フレーム数を計数することになる。
【００２２】
収音信号ｚ（ｘ）が入力される収音発話判定計数手段２４も上記した受話発話判定計数手段２２と、実験的に求められる閾値ｚｔｈの値が異なるだけで全く同じ動作である。したがって、受話発話判定計数手段２２と同一の構成には、受話発話判定計数手段２２の参照符号にダッシュ（’）を付けて図２中に表記することで、収音発話判定計数手段２４の説明を省略する（以降も同様とする）。
つまり、収音発話カウンター３０’は、収音信号側の連続する発話フレーム数を計数することになる。受話発話カウンター３０の計数値ｃｘ（ｋ）と、収音発話カウンター３０’の計数値ｃｚ（ｋ）は、ダブルトーク状態判定部３２に入力される。
【００２３】
ダブルトーク状態判定部３２は、受話発話カウンター３０の計数値ｃｘ（ｋ）が０より大（ステップＳ２０でＹｅｓ、ｃｘ（ｋ）＞０）で、且つ収音発話カウンター３０’の計数値ｃｚ（ｋ）が０より大（ステップＳ２２でＹｅｓ、ｃｚ（ｋ）＞０）の時、すなわち受話信号ｘ（ｎ）と収音信号ｚ（ｎ）と共に発話ありのとき、ダブルトーク状態か受話シングルトーク状態かを第１状態判定部３２０が判定する。
一般に、受話シングルトーク状態であれば、受話信号発話開始からその直後に収音信号（この場合、エコー信号ｙ（ｎ）のみ）の発話開始となる。つまり、受話シングルトーク状態であれば、エコー信号ｙ（ｎ）は受話信号ｘ（ｎ）より遅れるため、受話発話カウンター３０の計数値ｃｘ（ｋ）が０より大になる前に、収音発話カウンター３０’の計数値ｃｚ（ｋ）が０より大になることはない。従って、受話シングルトーク状態では受話発話カウンター３０の計数値ｃｘ（ｋ）より収音発話カウンター３０’の計数値ｃｚ（ｋ）の値が大きくなることはない。
【００２４】
これらを鑑みて、ダブルトーク状態を次のように判定する。受話発話カウンター３０の計数値ｃｘ（ｋ）から、収音発話カウンター３０’の計数値ｃｚ（ｋ）を引き算した値が負の場合（ステップＳ２４がＹｅｓ）にダブルトーク状態と判定し、ダブルトーク状態判定フラグｆｄ（ｋ）をｆｄ（ｋ）＝１（ステップＳ２６）として損失量決定手段９４に出力する。
逆に受話発話カウンター３０の計数値ｃｘ（ｋ）から、収音発話カウンター３０’の計数値ｃｚ（ｋ）を引き算した値が、０以上の場合（ステップＳ２４がＮｏ、ｃｘ（ｋ）−ｃｚ（ｋ）≧０）に受話シングルトーク状態と判定し、ダブルトーク状態判定フラグｆｄ（ｋ）をｆｄ（ｋ）＝０（ステップＳ２８）として損失量決定手段９４に出力する。
【００２５】
以上述べたダブルトーク状態判定部３２の動作のタイムチャートを図４に示す。図４の横方向は時間であり、目盛り一つが１個の短時間フレームを表わす。この例の場合、短時間フレームは１０ｍｓである。縦方向は受話信号発話フラグｆｘ（ｋ）と収音信号発話フラグｆｚ（ｋ）の１，０の状態、その１，０の状態の中に数字で受話発話カウンター３０と収音発話カウンター３０’の計数値を示す。その計数値の下に受話発話カウンター３０の計数値ｃｘ（ｋ）から、収音発話カウンター３０’の計数値ｃｚ（ｋ）を引き算した値を示す。
【００２６】
今、ある時刻に受話信号ｘ（ｎ）が発生し、その受話指標値が閾値ｘｔｈよりも大であると、その短時間フレームから受話発話カウンター３０は、計数を開始する。図４（ａ）に受話発話状態が１秒継続したした後に、受話信号ｘ（ｎ）がない状態があって、再び受話信号ｘ（ｎ）が発生した状況を示す。
最初の受話発話カウンター３０の計数開始時が受話シングルトーク状態であるとすると、図４（ａ）に示す様に、収音信号発話フラグｆｚ（ｋ）は同じフレームか遅れたフレームでｆｚ（ｋ）＝１になる。したがって、受話発話カウンター３０の計数値ｃｘ（ｋ）から、収音発話カウンター３０’の計数値ｃｚ（ｋ）を引き算した値は、負になることがない。ダブルトーク状態判定部３２は、この状態を受話シングルトーク状態と判断する。
【００２７】
逆に先に収音信号発話フラグｆｚ（ｋ）が発話あり（ｆｚ（ｋ）＝１）となって、収音発話カウンター３０’が計数を開始し、その後に、受話発話カウンター３０が遅れて計数を開始した場合を考える。この場合は、受話発話カウンター３０の計数値ｃｘ（ｋ）から、収音発話カウンター３０’の計数値ｃｚ（ｋ）を引き算した値は、負になる。この状態をダブルトーク状態と判断する。
なお、反響消去部８０としては、適応フィルタを用いる場合に限らず他の方法を用いてもよい。また、例えば、損失器９９において収音信号ｚ（ｎ）がスペクトラム制御されるなどの構成もあり、損失器９８，９９も図１に示すものに限られない。
【００２８】
一般的に音声会議やＴＶ会議等の場面においては、遠端と近端は同時に発話することはない。つまり、相手の話を聞いてから自分が発言する場合には上記した実施例１の構成で、十分正しくダブルトーク状態の判定を行なうことが可能である。
しかし、議論が白熱して来ると、相手が発言を終了する前に自分が発言をしてしまうことがしばしば起こり得る。そのような状況でも正確にダブルトーク状態を判定できるようにした実施例２を次に説明する。
【実施例２】
【００２９】
図４（ｂ）に相手が発言を終了する前に自分が発言をした場合のダブルトーク状態判定部３２の動作タイムチャートを示す。横方向と縦方向、及び横方向の目盛りの関係も上記した図４（ａ）と同じである。
最初の受話発話カウンター３０の計数開始時が受話シングルトーク状態であれば、収音信号発話フラグｆｚ（ｋ）は同じフレームか遅れたフレームで遅れてｆｚ（ｋ）＝１になる。図４（ｂ）では図４（ａ）よりも反響路６における遅延量が大きく、収音信号発話フラグｆｚ（ｋ）が１フレーム遅れてｆｚ（ｋ）＝１になる状況を示している。この状態では、受話発話カウンター３０の計数値ｃｘ（ｋ）から、収音発話カウンター３０’の計数値ｃｚ（ｋ）を引き算した値は、１になり受話シングルトーク状態と判定される。
【００３０】
この判定は上記した実施例１に示した構成で正確に行なわれるが、一度受話シングルトーク状態と判定された後に、自分側（収音側）がｃｚ（ｋ）＝９７の時刻に発話したとすると、ダブルトーク状態であるにも関わらず受話発話カウンター３０の計数値ｃｘ（ｋ）から、収音発話カウンター３０’の計数値ｃｚ（ｋ）を引き算した値は、１のままであり受話シングルトーク状態の判定が継続してしまう。したがって、収音側の損失器９９に損失が挿入された状態が維持されるので送話信号ｓ（ｎ）が通らない。
実施例２は、このような状況でも正確なダブルトーク状態の判定が行なえるようにしたものである。実施例２のダブルトーク状態判定手段５０の機能構成例を図５に示す。
【００３１】
実施例２のダブルトーク状態判定手段５０では、受話信号ｘ（ｎ）を短時間フレーム毎に周波数分析する受話信号周波数分析部５６と、収音信号ｚ（ｎ）を短時間フレーム毎に周波数分析する収音信号周波数分析部５６’と、それぞれの周波数分析された受話信号と収音信号の短時間フレーム間同士の相関を求める相関部５４０と、が実施例１のダブルトーク状態判定手段２０に加えられている。加えられた各部とダブルトーク状態判定部５８以外の各部の動作は実施例１と同じである。ここでは、加えられた各部とダブルトーク状態判定部５８の動作を説明する。
【００３２】
受話信号周波数分析部５６にはフレーム分割部２６から分割された受話信号ｘ（ｋ）と短時間フレームが入力される。受話信号周波数分析部５６は、周知の技術である短時間離散フーリエ変換などで、短時間フレーム内の受話信号ｘ（ｎ）が、例えばｆ１〜ｆＮまでのＮ個の周波数に対応するＮ個の離散周波数領域信号Ｘ（ｋ，ｆ１）、‥‥、Ｘ（ｋ，ｆｎ）、‥‥Ｘ（ｋ，ｆＮ）に変換される。
受話信号パワー計算部５４において、離散周波数領域受話信号Ｘ（ｋ，ｆ＊）（＊＝１，２，‥‥，Ｎ）は、受話離散パワー計算部５４１で、各離散周波数受話信号Ｘ（ｋ，ｆ＊）のそれぞれのパワーが計算され、各パワーを要素とする受話パワーベクトルＰＸＶｋ＝[ＰＸ（ｋ，ｆ１），ＰＸ（ｋ，ｆ２），‥‥，ＰＸ（ｋ，ｆＮ）]が求められる。
【００３３】
収音信号ｚ（ｘ）側のフレーム分割部２６’から収音信号ｚ（ｎ）と短時間フレームが入力される収音信号周波数分析部５６’と収音信号パワー計算部５４’の動作も、受話信号ｘ（ｎ）側と全く同じであり、収音信号パワー計算部５４’を構成する収音離散パワー計算部５４１’で収音パワーベクトルＰＺＶｋ＝[ＰＸ（ｋ，ｆ１），ＰＸ（ｋ，ｆ２），‥‥，ＰＸ（ｋ，ｆＮ）]が求められる。
受話パワーベクトルＰＸＶｋ＝[ＰＸ（ｋ，ｆ１），ＰＸ（ｋ，ｆ２），‥‥，ＰＸ（ｋ，ｆＮ）]と収音パワーベクトルＰＺＶｋ＝[ＰＸ（ｋ，ｆ１），ＰＸ（ｋ，ｆ２），‥‥，ＰＸ（ｋ，ｆＮ）]は相関計算部５２に入力され、それぞれの相関値ＣＸＺ（ｋ）がＣＸＺ（ｋ）＝（ＰＸＶｋ・ＰＺＶｋ）/｜ＰＸＶｋ｜｜ＰＺＶｋ）｜で計算される。ここで「・」はベクトルの内積を表わす。この相関値ＣＸＺ（ｋ）は、正規化された値であり０〜１までの値を持つ。
【００３４】
相関値ＣＸＺ（ｋ）は、ダブルトーク状態判定部５８に入力される。ダブルトーク状態判定部５８には、相関値ＣＸＺ（ｋ）の他に、上記した受話発話カウンター３０の計数値ｃｘ（ｋ）と、収音発話カウンター３０’の計数値ｃｚ（ｋ）とが入力される。
ダブルトーク状態判定部５８は、受話発話カウンター３０の計数値ｃｘ（ｋ）が０より大で、且つ収音発話カウンター３０’の計数値ｃｚ（ｋ）も０より大の場合には、受話信号ｘ（ｎ）と収音信号ｚ（ｎ）ともに発話ありと判定する（図３、ステップＳ２２のＹｅｓ）。この場合、ダブルトーク状態判定部５８はダブルトーク状態か受話シングルトーク状態かを判定する。その処理を図３に破線で示す。
【００３５】
受話発話カウンター３０の計数値ｃｘ（ｋ）と収音発話カウンター３０’の計数値ｃｚ（ｋ）の小さい方の値が閾値ｔｈｄ以下の場合は、実施例１に示した発話状態に基づく判定を第１状態判定部３２０が行なう（ステップＳ３０のＹｅｓ）。ここで閾値ｔｈｄは、例えば１秒程度に相当するフレーム値を設定する。この例の場合、フレーム長が１０ｍｓであるので閾値ｔｈｄ＝１００とする。
ステップＳ３０で受話発話カウンター３０の計数値ｃｘ（ｋ）と収音発話カウンター３０’の計数値ｃｚ（ｋ）の小さい方の値が閾値ｔｈｄより大きいと状態判定選択部５８１で判断されると、ダブルトーク状態判定部５８の第２状態判定部５８２が、相関値ＣＸＺ（ｋ）を参照してダブルトーク状態であるか否かを判定する。
【００３６】
相関値ＣＸＺ（ｋ）は、短時間フレーム毎の受話パワーベクトルＰＸＶｋと収音パワーベクトルＰＺＶｋとの相関が高いと１に近い値をとる。したがって、受話シングルトーク状態では、相関値ＣＸＺ（ｋ）は１に近い値になる。そこでステップＳ３２で閾値ｔｈｃと、相関値ＣＸＺ（ｋ）とを比較して、閾値ｔｈｃよりも相関値ＣＸＺ（ｋ）が大であれば受話シングルトーク状態と判定（ステップＳ３４）し、相関値ＣＸＺ（ｋ）が、閾値ｔｈｃよりも小さければ、ダブルトーク状態と判定する（ステップＳ３６）。
このように受話信号ｘ（ｎ）と収音信号ｚ（ｎ）とをそれぞれ周波数領域信号に変換して、その相関を取ることで、相手の発言が終了する前に自分が発言をする様な状況でも正しくダブルトーク状態を判定することが出来る。又、ダブルトーク状態から受話シングルトーク状態に変化した時も同様に判定することが出来る。
【００３７】
なお、受話パワーベクトルＰＸＶｋと収音パワーベクトルＰＺＶｋの相関を、フレーム内の同一の離散周波数毎に求める例で説明を行ったが、この発明はこの例に限定されない。離散周波数領域受話信号Ｘ（ｋ，ｆ＊）の振幅を用いて短時間フレーム間の相関を求めてもよい。その場合、受話離散パワー計算部５４１は、離散周波数領域受話信号Ｘ（ｋ，ｆ＊）の振幅を求める受話離散振幅部５４１として機能する。
この場合、上記した受話パワーベクトルは、受話振幅ベクトルＸＶｋ＝[Ｘ（ｋ，ｆ１），Ｘ（ｋ，ｆ２），‥‥，Ｘ（ｋ，ｆＮ）]となり、収音振幅ベクトルＺＶｋ＝[Ｘ（ｋ，ｆ１），Ｘ（ｋ，ｆ２），‥‥，Ｘ（ｋ，ｆＮ）]と共に相関計算部５２に入力される。それぞれの相関値ＣＸＺ（ｋ）は、それぞれの振幅ベクトルの内積をそれぞれの振幅の絶対値の積で除算されて計算される（ＣＸＺ（ｋ）＝（ＸＶｋ・ＺＶｋ）/｜ＸＶｋ｜｜ＺＶｋ｜）。
【００３８】
又、周波数領域信号の外形や包絡の相関を求めることも考えられる。
離散周波数領域信号Ｘ（ｋ，ｆ＊）を、受話信号パワー計算部５４の受話バンド分割部５４２で、例えば３個（Ｘ（ｋ，ｆ１）〜Ｘ（ｋ，ｆ３））ずつ、或いは５個乃至１０個ずつ等間隔に分割する。
離散周波数領域信号Ｘ（ｋ，ｆ＊）の分割については色々な方法が考えられる。例えば、音声は一般的に低い周波数領域に特徴が出易いので、周波数の低い領域では少ない数の離散周波数領域信号Ｘ（ｋ，ｆ＊）に分割し、周波数の高い領域では数多くの離散周波数領域信号Ｘ（ｋ，ｆ＊）に分割しても良い。
【００３９】
つまり、周波数の対数の関係で、離散周波数領域信号Ｘ（ｋ，ｆ＊）を分割する。又は、人間の聴感に合わせたメルスケールに対応させて分割することで、より聴感特性を考慮した分割にすることが出来る。
受話バンド分割部５４２で平滑された離散周波数ｆ＊を集約バンドｍｉ（ｉ＝１〜ｗ）で表わし、受話バンド列と称す。
受話平滑部５４２で分割された受話バンド列である離散周波数領域信号Ｘ（ｋ，ｍ＊）は、受話バンド平均化部５４３に入力され、バンド毎の受話バンドパワーベクトルＰＸＶｋ＝[ＰＸ（ｋ，ｍ１），ＰＸ（ｋ，ｍ２），‥‥，ＰＸ（ｋ，ｍｗ）]が計算される。
【００４０】
同様に収音バンド列Ｚ（ｋ，ｍ＊）から、収音バンドパワーベクトルＰＺＶｋ＝[ＰＺ（ｋ，ｍ１），ＰＺ（ｋ，ｍ２），‥‥，ＰＺ（ｋ，ｍｗ）]が計算される。
相関計算部５２は、フレーム内の集約バンド同士の相関値ＣＸＺ（ｋ）をＣＸＺ（ｋ）＝（ＰＸＶｋ・ＰＺＶｋ）/｜ＰＸＶｋ｜｜ＰＺＶｋ）｜で計算する。
このように離散周波数領域信号を分割バンド毎に平均化してフレーム間の相関を取ることで、ダブルトーク状態の判定動作の安定化を図ることができる。
なお
、離散周波数領域信号のパワーベクトル同士の相関を取る例を説明したが、離散周波数領域信号の包絡を求めた後に、周波数領域毎の包絡の代表値を求め、その代表値の相関値を求める方法も考えられる。その例を実施例３に示す。
【実施例３】
【００４１】
実施例３のダブルトーク状態判定手段６０の機能構成例を図６に示す。
実施例３のダブルトーク状態判定手段６０は、図５に示した実施例２のダブルトーク状態判定手段５０に対して、受話信号スペクトル包絡計算部６２が追加され、受話信号バンドパワー計算部６４の機能構成が変わっている点のみが異なる。ここでは、その異なる点のみを説明する。
受話信号周波数分析部５６で周波数領域の信号に変換された離散周波数領域受話信号Ｘ（ｋ，ｆ＊）は、受話信号スペクトル包絡計算部６２に入力される。受話信号スペクトル包絡計算部６２は、例えばケプストラム分析を用いたスペクトル包絡や、線形予測ケプストラム分析を用いたスペクトル包絡や、線形予測を用いたスペクトル包絡を計算する。
【００４２】
ケプストラム分析を用いたスペクトル包絡の求め方は、例えば参考文献「デジタル音声処理、著者：古井貞煕、東海大学出版会、４５頁」等に記載されている。
受話信号スペクトル包絡計算部６２で計算されたスペクトル包絡の一例を、模式的に図７に示す。図７の横軸は周波数であり縦軸はスペクトルの振幅を表わす。このスペクトル包絡が受話信号バンドパワー計算部６４を構成する周波数バンド毎受話代表値生成部６４１に入力される。
周波数バンド毎受話代表値生成部６４１は、図７に●で示す代表値を上記した集約バンドｍｉ（ｉ＝１〜ｗ）毎に計算する。集約バンドｍｉを受話包絡バンド列と称す。周波数バンド毎受話代表値生成部６４１で計算された受話包絡バンド列毎の代表スペクトルは、例えば受話包絡バンド列毎の平均値であり、受話代表値パワー計算部６４２でパワーに計算される。受話側、収音側の代表値パワーベクトルは相関計算部５２に入力される。相関値の求め方は上記したと同様な方法で求めることが出来る。
なお、相関値は上記代表スペクトルの振幅値を用いて求めてもよい。
【００４３】
例えば線形予測ケプストラム分析を用いたスペクトル包絡は、スペクトルのピークが強調される（参考文献４８頁）ので、音声の相関が取り易くなる効果が期待できる。
以上述べたように、相関は、スペクトルの振幅値、バンド毎の平均値、スペクトル包絡の包絡バンド毎の代表振幅値、スペクトル包絡の包絡バンド毎のパワー値の何れで計算してもよい。
【実施例４】
【００４４】
他のダブルトーク状態判定部７０の機能構成例を図１１に示し、その動作の主要な処理の流れを図１２に示す。図１２は図３のステップＳ２２以降の流れを示す。ダブルトーク状態判定部７０は、実施例１で説明した発話状態に基づく判定と、実施例２及び３で説明した相関値に基づいた判定とを組み合わせてダブルトーク状態の判定を行なう。
ダブルトーク状態判定部７０は、第１状態判定部７２と第２状態判定部７４と受話状態判定部７６とからなり、相関値ＣＸＺ（ｋ）と、受話発話カウンター３０の計数値ｃｘ（ｋ）と、収音発話カウンター３０’の計数値ｃｚ（ｋ）とが入力される。
【００４５】
ダブルトーク状態判定部７０は、受話発話カウンター３０の計数値ｃｘ（ｋ）が０より大で、且つ収音発話カウンター３０’の計数値ｃｚ（ｋ）も０より大の場合（図３のステップＳ２２でＹｅｓと判定された場合）に、動作を開始する。
第１状態判定部７２では、発話状態に基づく判定を行う。受話発話カウンター３０の計数値ｃｘ（ｋ）から収音発話カウンター３０’の計数値ｃｚ（ｋ）を引き算した値が負の場合、ダブルトーク状態と判定する（ステップＳ４０、Ｙｅｓ）。ここで、ｃｘ（ｋ）とｃｚ（ｋ）の小さい方の値が閾値ｔｈｄ以下の場合（ステップＳ４２、Ｙｅｓ）には、第１状態判定部７２内の重み付け部７２ａがダブルトークスコアｓｄ１（ｋ）＝ｓ１とする（ステップＳ４４）。ｃｘ（ｋ）とｃｚ（ｋ）の小さい方の値が閾値ｔｈｄより大きい場合には（ステップＳ４２、Ｎｏ）、第１状態判定部７２内の重み付け部７２ａは、ダブルトークスコアｓｄ１＝ｓ２とする（ステップＳ４６）。例えば、ｓ１＝５、ｓ２＝０とする。
【００４６】
受話発話カウンター３０の計数値ｃｘ（ｋ）から収音発話カウンター３０’の計数値ｃｚ（ｋ）を引き算した値が、０以上の場合には受話シングルトーク状態と判定する（ステップＳ４０、Ｎｏ）。ここで、ｃｘ（ｋ）とｃｚ（ｋ）の小さい方の値が閾値ｔｈｄ以下の場合（ステップＳ４８、Ｙｅｓ）には、第１状態判定部７２内の重み付け部７２ａがダブルトークスコアｓｄ１（ｋ）＝ｓ３とする（ステップＳ５０）。ｃｘ（ｋ）とｃｚ（ｋ）の小さい方の値が閾値ｔｈｄより大きい場合には（ステップＳ４８、Ｎｏ）、第１状態判定部７２内の重み付け部７２ａは、ダブルトークスコアｓｄ１＝ｓ４とする（ステップＳ５２）。例えば、ｓ３＝−５、ｓ４＝０とする。
【００４７】
第２状態判定部７４では相関値ＣＸＺ（ｋ）に基づいた判定を行う。相関値ＣＸＺ（ｋ）が閾値ｔｈｃ以上の場合は、相関が高く、受話シングルトーク状態と判定する（ステップＳ５４、Ｙｅｓ）。ここで、ｃｘ（ｋ）とｃｚ（ｋ）の小さい方の値が閾値ｔｈｄ以下の場合（ステップＳ５６、Ｙｅｓ）には、第２状態判定部７４内の重み付け部７４ａがダブルトークスコアｓｄ２（ｋ）＝ｓ５とする（ステップＳ５８）。ｃｘ（ｋ）とｃｚ（ｋ）の小さい方の値が閾値ｔｈｄより大きい場合には（ステップＳ５６、Ｎｏ）、第２状態判定部７４内の重み付け部７４ａは、ダブルトークスコアｓｄ２＝ｓ６とする（ステップＳ６０）。例えば、ｓ５＝−２、ｓ６＝−５とする。
【００４８】
相関値ＣＸＺ（ｋ）が閾値ｔｈｃよりも小さい場合、ダブルトーク状態と判定する（ステップＳ５４、Ｎｏ）。ここで、ｃｘ（ｋ）とｃｚ（ｋ）の小さい方の閾値ｔｈｄ以下の場合には、（ステップＳ６２、Ｙｅｓ）には、第２状態判定部７４内の重み付け部７４ａがダブルトークスコアｓｄ２（ｋ）＝ｓ７とする（ステップＳ６４）。ｃｘ（ｋ）とｃｚ（ｋ）の小さい方の値が閾値ｔｈｄより大きい場合には（ステップＳ６２、Ｎｏ）、第２状態判定部７４内の重み付け部７４ａは、ダブルトークスコアｓｄ２＝ｓ８とする（ステップＳ６６）。例えば、ｓ７＝２、ｓ８＝５とする。ここで、相関値ＣＸＺ（ｋ）に対する閾値を複数設けて、ダブルトークスコアｓｄ２（ｋ）を更に細かく重み付けしてもよい。
【００４９】
受話状態決定部７６には、第１状態判定部７２によるダブルトークスコアｓｄ１（ｋ）と、第２状態判定部７４によるダブルトークスコアｓｄ２（ｋ）とが入力される。ｓｄ１（ｋ）とｓｄ２（ｋ）は、受話状態決定部７６内のスコア加算部７６ａで合計され、総合ダブルトークスコアｓｄａが計算される。
総合ダブルトークスコアｓｄａとダブルトークスコア閾値ｔｈｓとを比較し、ｓｄａ（ｋ）が閾値ｔｈｓ以上の場合には、ダブルトーク状態と判定（ステップＳ７０、Ｙｅｓ）し、ダブルトーク判定フラグｆｄ（ｋ）＝１として損失量決定手段９４に出力する（ステップＳ７２）。ｓｄａ（ｋ）が閾値ｔｈｓより小さい場合には、受話シングルトーク状態と判定してｆｄ（ｋ）＝０として損失量決定手段９４に出力する（ステップＳ７４）。
【００５０】
以上述べたようにダブルトーク状態の判定を、第１状態判定部７２の計数値による判定と、第２状態判定部７４の相関値による判定とを組み合わせて行なってもよい。
シミュレーション結果
実施例１のダブルトーク状態判定手段におけるダブルトーク状態の判定結果をシミュレーションした結果を図８に示す。
「シミュレーション条件
マイクロホンとスピーカとの間隔：２０ｃｍ（条件１はこの間隔に固定、条件２はマイクロホンをスピーカから１ｍ程度離して動かし続けた状態とした。）
サンプリングレート：１６ｋＨｚ
フレーム：２０ｍｓ」
条件１は、上記したようにマイクロホンとスピーカの位置を固定し、反響消去部８０が反響路６のインパルス応答を充分に学習した状態である。条件１における受話信号ｘ（ｎ）を図８（ａ）に、収音信号ｚ（ｎ）を図８（ｂ）に、誤差信号ｅ（ｎ）図８（ｃ）に示す。
【００５１】
図８の横軸は時間（秒）であり、縦軸は正規化した振幅である。
反響消去部８０がエコー信号ｙ（ｎ）を充分消去しているので、誤差信号ｅ（ｎ）が小さい。
この条件１の状態からマイクロホンの位置をランダムに動かし続けた条件２における受話信号ｘ（ｎ）を図９（ａ）に、収音信号ｚ（ｎ）を図９（ｂ）に、誤差信号ｅ（ｎ）図９（ｃ）に示す。横軸と縦軸の関係は図８と同じである。
条件２では、反響消去部８０の推定手段８２が適応アルゴリズムにより生成する適応フィルタ係数ｈ＾（ｎ）が、反響路６の変化に追従することが出来ないので誤差信号ｅ（ｎ）が大きい。
【００５２】
条件２における従来方法と実施例１の判定結果を、図１０に示す。図１０（ａ）にシミュレーション条件を示す。図１０（ｂ）は誤差信号ｅ（ｎ）を判定に用いる従来方法による判定結果である。図１０（ｃ）は実施例１による判定結果である。
図１０の横軸はフレームナンバー（フレーム数）であり、この例では１フレームが２０ｍｓであるので０〜１０秒間を表わす。縦軸は判定結果を示し、０：無音区間、１：受話シングルトーク状態、２：ダブルトーク状態を表わす。
図１０（ａ）から分かるようにダブルトーク状態は無い状況でシミュレーションしているのにも関わらず、従来方法では１秒、２秒、３秒、４秒付近を中心に、誤判定が発生する。
【００５３】
その従来方法に対して実施例１の結果は、シミュレーション条件と同じ判定結果が得られている。
このように実施例１のダブルトーク状態判定手段を用いたダブルトーク状態判定装置によれば、受話信号ｘ（ｎ）と収音信号ｚ（ｎ）のみを用いてダブルトーク状態の判定を行なうので、精度の良い判定が可能である。
以上の各実施例の他、この発明である各装置及び方法は上述の実施形態に限定されるものではなく、この発明の趣旨を逸脱しない範囲で適宜変更が可能である。また、上記装置及び方法において説明した処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されるとしてもよい。
【００５４】
また、上記各装置における処理機能をコンピュータによって実現する場合、反響消去装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記反響消去装置における処理機能がコンピュータ上で実現される。
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ（Random Access Memory）、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）等を、光磁気記録媒体として、ＭＯ（Magneto Optical disc）等を、半導体メモリとしてＥＥＰ−ＲＯＭ（Electronically Erasable and Programmable-Read Only Memory）等を用いることができる。
【００５５】
また、このプログラムの流通は、例えば、そのプログラムを記録したＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記録装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記録装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるＡＳＰ（Application Service Provider）型のサービスによって、上述の処理を実行する構成としてもよい。なお、この形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの（コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等）を含むものとする。
【００５６】
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、各装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【図面の簡単な説明】
【００５７】
【図１】この発明の実施例１のダブルトーク状態判定手段２０を含む反響消去装置１００の機能構成例を示す図。
【図２】この発明の実施例１のダブルトーク状態判定手段２０の機能構成例を示す図。
【図３】ダブルトーク状態判定手段２０の主要な処理の流れを示す図。
【図４】ダブルトーク状態判定部３２の動作のタイムチャートの一例を示す、図４（ａ）に受話シングルトーク状態とダブルトーク状態を示す、図４（ｂ）ダブルトーク状態を誤判定する状態を示す図である。
【図５】この発明の実施例２のダブルトーク状態判定手段５０の機能構成例を示す図。
【図６】この発明の実施例３のダブルトーク状態判定手段６０の機能構成例を示す図。
【図７】受話信号スペクトル包絡計算部６２で計算されたスペクトル包絡の一例を、模式的に示す図。
【図８】実施例１のダブルトーク状態判定手段におけるダブルトーク状態の判定結果をシミュレーションした条件１の結果を示す、図８（ａ）は受話信号ｘ（ｎ）、図８（ｂ）は、収音信号ｚ（ｎ）、図８（ｃ）は誤差信号ｅ（ｎ）を示す図である。
【図９】実施例１のダブルトーク状態判定手段におけるダブルトーク状態の判定結果をシミュレーションした条件２の結果を示す、図９（ａ）は受話信号ｘ（ｎ）、図９（ｂ）は、収音信号ｚ（ｎ）、図９（ｃ）は誤差信号ｅ（ｎ）を示す図である。
【図１０】ダブトーク状態の判定結果を示す、図１０（ａ）は正しい判定結果、図１０（ｂ）は誤差信号ｅ（ｎ）を判定に用いる従来方法による判定結果、図１０（ｃ）は実施例１のダブルトーク状態判定手段による判定結果を示す図である。
【図１１】ダブルトーク状態判定部７０の機能構成例を示す図。
【図１２】ダブルトーク状態判定部７０の主要な処理の流れを示す図。
【図１３】近端に配置された従来の反響消去装置８００を示す図。
【図１】
2008131593.tif 000003
【図２】
2008131593.tif 000004
【図３】
2008131593.tif 000005
【図４】
2008131593.tif 000006
【図５】
2008131593.tif 000007
【図６】
2008131593.tif 000008
【図７】
2008131593.tif 000009
【図８】
2008131593.tif 000010
【図９】
2008131593.tif 000011
【図１０】
2008131593.tif 000012
【図１１】
2008131593.tif 000013
【図１２】
2008131593.tif 000014
【図１３】
2008131593.tif 000015