(57)【特許請求の範囲】
【請求項１】
収音信号に含まれる反響信号を用いて再生信号の遅延量を推定するエコー消去装置であって、
時間領域の前記再生信号と時間領域の前記収音信号との相関値を、前記収音信号のフレーム番号とサンプル番号を変化させながら各フレームの各サンプルに対して求める相関値算出部と、
前記相関値が最大となるときの収音信号のフレーム番号とサンプル番号を用いて、遅延値を算出する遅延値算出部と、
前記遅延値に基づき前記再生信号を遅延させる信号蓄積部と、
前記遅延された再生信号を用いて、前記収音信号から反響信号を消去するエコー消去部と、
を含み、
前記相関値算出部は、
時間領域の前記再生信号を所定の範囲毎に合算し、時間領域の前記収音信号を前記所定の範囲毎に合算し、
合算した前記再生信号と合算した前記収音信号とのエリア相関値を、各フレームの各前記所定の範囲に対して求め、
時間領域の前記再生信号と時間領域の前記収音信号との相関値を、前記収音信号のフレーム番号を変化させ、かつ、前記エリア相関値が最大となるときの所定の範囲を中心とする前後数サンプルの範囲内でサンプル番号を変化させながら、各フレームの各サンプルに対して求める、
エコー消去装置。
【請求項２】
収音信号に含まれる反響信号を用いて再生信号の遅延量を推定するエコー消去装置であって、
周波数領域の前記再生信号と周波数領域の前記収音信号とを用いて、前記収音信号のフレーム番号を変化させながら、各フレームの各サンプルに対して相関値を求める相関値算出部と、
前記相関値が最大となるときの収音信号のフレーム番号とサンプル番号を用いて、遅延値を算出する遅延値算出部と、
前記遅延値に基づき前記再生信号を遅延させる信号蓄積部と、
前記遅延された再生信号を用いて、前記収音信号から反響信号を消去するエコー消去部と、
信号バッファに蓄積されている前記再生信号の内、現フレームを含めて過去数フレームを出力する第二信号出力部と、を含み、
前記相関値算出部は、過去数フレームの前記再生信号と前記収音信号とを用いて、過去数フレームの前記再生信号のフレーム番号と前記収音信号のフレーム番号を変化させながら、各再生信号と各収音信号の各組合せの各サンプルに対して相関値を求める、
エコー消去装置。
【請求項３】
収音信号に含まれる反響信号を用いて再生信号の遅延量を推定するエコー消去装置であって、
周波数領域の前記再生信号と周波数領域の前記収音信号とを用いて、前記収音信号のフレーム番号を変化させながら、各フレームの各サンプルに対して相関値を求める相関値算出部と、
前記相関値が最大となるときの収音信号のフレーム番号とサンプル番号を用いて、遅延値を算出する遅延値算出部と、
前記遅延値に基づき前記再生信号を遅延させる信号蓄積部と、
前記遅延された再生信号を用いて、前記収音信号から反響信号を消去するエコー消去部と、
信号バッファに蓄積されている前記再生信号の内、現フレームを含めて過去数フレームを出力する第二信号出力部と、
前記相関値を蓄積する相関蓄積部とを含み、
前記相関値算出部は、過去数フレームの前記再生信号と前記収音信号とを用いて、過去数フレームの前記再生信号のフレーム番号と前記収音信号のフレーム番号を変化させながら、各再生信号と各収音信号の各組合せの各サンプルに対して相関値を求め、
βを０以上１以下の実数とし、前記遅延値算出部は、前記相関値が最大となるときの収音信号のサンプル番号ｎｍａｘと蓄積された相関値ｃ−ｆｏｌｄを用いて、前記相関値ｃｆを
【数２４】
0005235226.tif 000025
として平滑化し、平滑化した相関値ｃ−ｆと当該相関値ｃ−ｆが最大となるときの収音信号のフレーム番号を用いて、遅延値を算出する、
エコー消去装置。
【請求項４】
収音信号に含まれる反響信号を用いて再生信号の遅延量を推定するエコー消去装置であって、
周波数領域の前記再生信号と周波数領域の前記収音信号とを用いて、前記収音信号のフレーム番号を変化させながら、各フレームの各サンプルに対して相関値を求める相関値算出部と、
前記相関値が最大となるときの収音信号のフレーム番号とサンプル番号を用いて、遅延値を算出する遅延値算出部と、
前記遅延値に基づき前記再生信号を遅延させる信号蓄積部と、
前記遅延された再生信号を用いて、前記収音信号から反響信号を消去するエコー消去部と、を含み、
前記相関値算出部は、周波数領域の前記再生信号Ｘｍの大きさに応じて、ゲインを生成し、当該ゲインと前記再生信号Ｘｍと前記収音信号とを用いて、前記収音信号のフレーム番号を変化させながら、各フレームの各サンプルに対して相関値を求める、
エコー消去装置。
【請求項５】
収音信号に含まれる反響信号を用いて再生信号の遅延量を推定するエコー消去装置であって、
周波数領域の前記再生信号と周波数領域の前記収音信号とを用いて、前記収音信号のフレーム番号を変化させながら、各フレームの各サンプルに対して相関値を求める相関値算出部と、
前記相関値が最大となるときの収音信号のフレーム番号とサンプル番号を用いて、遅延値を算出する遅延値算出部と、
前記遅延値に基づき前記再生信号を遅延させる信号蓄積部と、
前記遅延された再生信号を用いて、前記収音信号から反響信号を消去するエコー消去部と、
信号バッファに蓄積されている前記再生信号の内、現フレームを含めて過去数フレームを出力する第二信号出力部と、を含み、
前記相関値算出部は、過去数フレームの前記再生信号と前記収音信号とを用いて、過去数フレームの前記再生信号のフレーム番号と前記収音信号のフレーム番号を変化させながら、各再生信号と各収音信号の各組合せの各サンプルに対して相関値を求め、
さらに、前記相関値算出部は、周波数領域の前記再生信号Ｘｍの大きさに応じて、ゲインを生成し、当該ゲインと前記再生信号Ｘｍと前記収音信号とを用いて、前記収音信号のフレーム番号を変化させながら、各フレームの各サンプルに対して相関値を求める、
エコー消去装置。
【請求項６】
収音信号に含まれる反響信号を用いて再生信号の遅延量を推定するエコー消去装置であって、
周波数領域の前記再生信号と周波数領域の前記収音信号とを用いて、前記収音信号のフレーム番号を変化させながら、各フレームの各サンプルに対して相関値を求める相関値算出部と、
前記相関値が最大となるときの収音信号のフレーム番号とサンプル番号を用いて、遅延値を算出する遅延値算出部と、
前記遅延値に基づき前記再生信号を遅延させる信号蓄積部と、
前記遅延された再生信号を用いて、前記収音信号から反響信号を消去するエコー消去部と、
信号バッファに蓄積されている前記再生信号の内、現フレームを含めて過去数フレームを出力する第二信号出力部と、を含み、
前記相関値算出部は、過去数フレームの前記再生信号と前記収音信号とを用いて、過去数フレームの前記再生信号のフレーム番号と前記収音信号のフレーム番号を変化させながら、各再生信号と各収音信号の各組合せの各サンプルに対して相関値を求め、
前記第二信号出力部は、信号バッファに蓄積されている前記再生信号の内、現フレームを含めて過去数フレームを出力する際に、Ａフレーム毎の過去のフレームを出力する、
エコー消去装置。
【請求項７】
請求項１から６の何れかに記載のエコー消去装置であって、
所定数の前記遅延値を受け取り、最も頻度の高い遅延値を遅延推定値として出力する遅延出力部をさらに含み、
前記信号蓄積部は、前記遅延値に基づき得られる前記遅延推定値に応じて前記再生信号を遅延させる、
エコー消去装置。
【請求項８】
請求項１から６の何れかに記載のエコー消去装置であって、
αを減衰係数とし、前記遅延値ｄｍａｘと前回推定した遅延推定値ｄ’ｅｓｔとを用いて、今回の遅延推定値ｄｅｓｔを
dest=(1-α)dmax+αd’est (20)
として出力する遅延出力部をさらに含む、
エコー消去装置。
【請求項９】
請求項７記載のエコー消去装置であって、
前記遅延値算出部は、前記相関値が最大となるときの収音信号のフレーム番号を遅延値として算出する、
エコー消去装置。
【請求項１０】
請求項１から９の何れかに記載のエコー消去装置としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、収音信号に含まれる反響信号を用いて再生信号の遅延量を推定し、反響信号を消去する技術に関する。
【背景技術】
【０００２】
ハンズフリーによる双方向通話を行う際に、エコー消去装置が通常用いられる。エコー消去装置では、スピーカへ出力する再生信号を参照信号として用い、部屋の反響特性を模擬したフィルタリングを行い、疑似反響信号を生成し、疑似反響信号をマイクロホンの収音信号から差し引くことでエコーを消去する。
【０００３】
フィルタリングを行う際に用いる適応フィルタの更新アルゴリズムの一つとしてNormalized Least Mean Square（ＮＬＭＳ）アルゴリズムが知られている（非特許文献１参照）。このアルゴリズムはエコー消去装置においても最も頻繁に使われるものの一つである。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Simon Haykin, "Adaptive Filter Theory", Prentice Hall Internation al Inc, 1996, third edition, p.432-437.
【発明の概要】
【発明が解決しようとする課題】
【０００５】
通常は、このＮＬＭＳアルゴリズムによってエコー消去が可能である。しかし、スピーカの再生信号からマイクロホンの収音信号までの遅延が長大である場合、反響信号の到達時間が適応フィルタのタップ長よりも長くなり、適応フィルタは反響路を模擬できず、エコー消去量が大幅に低下することがある。また、長大な遅延に対応するために適応フィルタのタップ長を長大に設定する方法も考えられるが、その場合、適応フィルタにおける演算量が非常に大きくなってしまう。
【０００６】
遅延が長大となる例として、家庭用ディジタルＴＶを用いてＴＶ会議システムを構築する場合等がある。家庭用ディジタルＴＶにおいて、入力された映像と音声の同期を取る必要があるため、映像の表示にかかる時間だけ音声の出力が遅くなることがある。こういった機器にエコー消去装置を接続してハンズフリー通話を行う場合、スピーカの再生信号からマイクロホンの収音信号に含まれる反響信号の間の遅延がかなり大きなものになる。
【０００７】
そのため、部屋の残響に対応するための短いサイズのメモリしか持たない一般のエコー消去装置では、エコーを全く消去することができない、または、エコーの消去量が不十分となる。また、メモリサイズを大きくすればエコーを消去することが可能にはなるが、非常に長いフィルタの計算をしなければならず、演算量が非常に多くかかりフィルタの推定速度も著しく低下する。加えて、製品毎に遅延量は様々なため、予め固定値を指定しておくことができない。
【０００８】
本発明は、反響信号を用いて再生信号の遅延量を推定し、反響信号を消去する技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記の課題を解決するために、本発明の第一の態様によれば、時間領域のディジタル再生信号のある離散時刻ｔから始まる連続するｒ個（但し、ｒは複数）のサンプルによる列をフレーム再生信号として求め、時間領域のディジタル収音信号の離散時刻ｔを含む互いに異なる複数の時刻それぞれから始まる連続するｒ個のサンプルによる列それぞれをフレーム収音信号として求め、フレーム再生信号を周波数領域信号に変換して周波数領域再生信号として求め、複数のフレーム収音信号それぞれを周波数領域信号に変換して複数の周波数領域収音信号として求め、周波数領域再生信号と複数の周波数領域収音信号それぞれとの類似性の指標を算出し、算出した類似性の指標が周波数領域再生信号と周波数領域収音信号との類似性が最も高くなることを示す、周波数領域再生信号と周波数領域収音信号が対応する時刻の差を遅延値として求め、遅延値に基づき再生信号を遅延させ、遅延された再生信号を用いて、収音信号から反響信号を消去する。
【００１０】
上記の課題を解決するために、本発明の第一の態様によれば、時間領域のディジタル収音信号のある離散時刻ｔから始まる連続するｒ個（但し、ｒは複数）のサンプルによる列をフレーム収音信号として求め、時間領域のディジタル再生信号の離散時刻ｔを含む互いに異なる複数の時刻それぞれから始まる連続するｒ個のサンプルによる列それぞれをフレーム再生信号として求め、フレーム収音信号を周波数領域信号に変換して周波数領域収音信号として求め、複数のフレーム再生信号それぞれを周波数領域信号に変換して複数の周波数領域再生信号として求め、周波数領域収音信号と複数の周波数領域再生信号それぞれとの類似性の指標を算出し、算出した類似性の指標が周波数領域収音信号と周波数領域再生信号との類似性が最も高くなることを示す、周波数領域収音信号と周波数領域再生信号が対応する時刻の差を遅延値として求め、遅延値に基づき再生信号を遅延させ、遅延された再生信号を用いて、再生信号から反響信号を消去する。
【００１１】
上記の課題を解決するために、本発明の第三の態様によれば、時間領域のディジタル再生信号のある離散時刻ｔから始まる連続するｒ個（ｒは複数）のサンプルによる列をフレーム再生信号として求め、時間領域のディジタル収音信号の離散時刻ｔを含む互いに異なる複数の時刻それぞれから始まる連続するｒ個のサンプルによる列それぞれをフレーム収音信号として求め、フレーム再生信号と複数のフレーム収音信号それぞれとの類似性の指標を算出し、算出した類似性の指標がフレーム再生信号とフレーム収音信号との類似性が最も高くなることを示す、フレーム再生信号とフレーム収音信号が対応する時刻の差を遅延値として求め、遅延値に基づき再生信号を遅延させ、遅延された再生信号を用いて、収音信号から反響信号を消去する。
【００１２】
上記の課題を解決するために、本発明の第四の態様によれば、収音信号に含まれる反響信号を用いて再生信号の遅延量を推定する。時間領域の再生信号と時間領域の収音信号との相関値を、収音信号のフレーム番号とサンプル番号を変化させながら各フレームの各サンプルに対して求め、相関値が最大となるときの収音信号のフレーム番号とサンプル番号を用いて、遅延値を算出し遅延値に基づき再生信号を遅延させ、遅延された再生信号を用いて、収音信号から反響信号を消去する。
【００１３】
上記の課題を解決するために、本発明の第五の態様によれば、収音信号に含まれる反響信号を用いて再生信号の遅延量を推定する。周波数領域の再生信号と周波数領域の収音信号とを用いて、収音信号のフレーム番号を変化させながら、各フレームの各サンプルに対して相関値を求め、相関値が最大となるときの収音信号のフレーム番号とサンプル番号を用いて、遅延値を算出し遅延値に基づき再生信号を遅延させ、遅延された再生信号を用いて、収音信号から反響信号を消去する。
【発明の効果】
【００１４】
本発明は、反響信号を用いて再生信号の遅延量を推定することができ、メモリサイズ及び演算量の増加させることなく、反響信号を消去できるという効果を奏する。
【図面の簡単な説明】
【００１５】
【図１】第一、二、六、七、八、十実施形態の遅延推定装置の機能ブロック図。
【図２】第一、二、六、七、八、十実施形態の遅延推定装置の処理フロー図。
【図３】第一、二、六実施形態の遅延推定部の機能ブロック図。
【図４】第一、二実施形態の遅延推定部の処理フロー図。
【図５】相関値算出部１１５の処理フロー図。
【図６】相関値算出部の処理内容を説明するための図。
【図７】相関値が最大となるときの収音信号のフレーム番号とサンプル番号を求める方法を説明するための図。
【図８】信号蓄積部１８０の機能ブロック図。
【図９】信号蓄積部１８０の処理フロー図。
【図１０】エコー消去部９０の機能ブロック図。
【図１１】相関値算出部２１５の処理フロー図。
【図１２】相関値算出部２１５の合算処理、エリア相関値算出処理の処理フロー図。
【図１３】第三、九実施形態の遅延推定装置の機能ブロック図。
【図１４】第三、九実施形態の遅延推定装置の処理フロー図。
【図１５】第三、九実施形態の遅延推定部の機能ブロック図。
【図１６】遅延推定部３１０の処理フロー図。
【図１７】エコー消去部９４の機能ブロック図。
【図１８】第四、五実施形態の遅延推定装置の機能ブロック図。
【図１９】第四、五実施形態の遅延推定装置の処理フロー図。
【図２０】信号蓄積部４８０の機能ブロック図。
【図２１】第四、五実施形態の遅延推定装置の機能ブロック図。
【図２２】第四実施形態の遅延推定装置の機能ブロック図。
【図２３】相関値算出部４１５の処理フロー図。
【図２４】相関値算出部４１５において相関値を求める方法を説明するための図。
【図２５】相関値算出部５１５の処理フロー図。
【図２６】相関値算出部４１５において相関値を求める方法を説明するための図。
【図２７】遅延推定部６１０の処理フロー図。
【図２８】遅延推定部７１０の機能ブロック図。
【図２９】遅延推定部７１０の処理フロー図。
【図３０】遅延推定部８１０の機能ブロック図。
【図３１】第八、十実施形態の遅延推定装置の処理フロー図。
【図３２】第九実施形態の遅延推定装置の処理フロー図。
【図３３】第十実施形態においてγ＝１．０のシミュレーション結果を示す図。
【図３４】図３３の各時刻で最大である相関から現在の遅延値を計算した図。
【図３５】第十実施形態においてγ＝５．０のシミュレーション結果を示す図。
【図３６】図３５の各時刻で最大である相関から現在の遅延値を計算した図。
【発明を実施するための形態】
【００１６】
以下、本発明の実施形態について、説明する。
【００１７】
＜第一実施形態に係る遅延推定装置１００＞
第一実施形態に係るエコー消去装置は、遅延推定装置１００とエコー消去部９０とを含む。エコー消去部９０は従来技術を用いてエコーを消去すればよいので、主に、図１及び図２を用いて第一実施形態に係る遅延推定装置１００を説明する。遅延推定装置１００は遅延推定部１１０と信号蓄積部１８０とを含む。
【００１８】
遅延推定部１１０は、時間領域のディジタル収音信号（以下、単に「収音信号」という）ｙ（ｎ）と時間領域のディジタル再生信号（以下、単に「再生信号」または「受話信号」という）ｘ（ｎ）とを受け取り、収音信号ｙ（ｎ）に含まれる反響信号を用いて再生信号ｘ（ｎ）の遅延量を推定する（ｓ１１０）。ここで、ｎはディジタル信号のサンプル番号を表し、例えばサンプリング周波数が４８０００Ｈｚの信号の場合、ｎは４８０００分の１秒ごとに１増える値である。
【００１９】
信号蓄積部１８０は、推定された遅延量（以下「遅延推定値」ｄｅｓｔに応じて、再生信号ｘ（ｎ）を遅延させて、出力する（ｓ１８０）。
【００２０】
エコー消去部９０は、遅延された再生信号を用いて、収音信号ｙ（ｎ）から反響信号を消去し（ｓ９０）、送話信号ｅ（ｎ）を送話端４に出力する。
【００２１】
ここで、収音信号ｙ（ｎ）はマイクロホン３により収音されるディジタル信号であり、再生信号ｘ（ｎ）はスピーカ２２で再生されるディジタル信号である。ｎはサンプル番号またはそのサンプルに対応する時刻を示す。
【００２２】
同一空間内にスピーカ２２とマイクロホン３とが存在する場合、スピーカ２２とマイクロホン３との間には音響的な伝達経路である反響路ｈ（ｎ）が生じる。再生音がこの反響路ｈ（ｎ）を介してマイクロホン３により収音される。マイクロホン３で収音される音の内、スピーカ２２の再生音に起因する音を反響音といい、反響音に起因する信号を反響信号という。よって、収音信号には反響信号が含まれる。遅延推定装置１００は、この反響信号を利用して遅延量を推定する。
【００２３】
遅延推定装置１００は、受話端１を介して、再生信号ｘ（ｎ）を受信する。なお、再生装置２も再生信号ｘ（ｎ）を受信する。再生装置２は、例えば、家庭用ディジタルＴＶであり、図示しない映像データも受信する。遅延部２１において、再生信号と映像データとの同期を取る。その際、映像データの表示にかかる時間だけ再生信号の出力を遅くする。スピーカ２２は、同期後の再生信号を受信し、再生する。再生音は、反響路ｈ（ｔ）を介してマイクロホン３により収音される。マイクロホン３は収音信号ｙ（ｎ）を遅延推定装置１００及びエコー消去部９０に出力する。なお、同期後の映像データは図示しない表示部に表示される。
【００２４】
以下、各部の詳細を説明する。
【００２５】
＜遅延推定部１１０＞
図３及び図４を用いて遅延推定部１１０を説明する。遅延推定部１１０は、フレーム化部１１１と、ベクトル化部１１２と、無音区間判定部１１３と、相関値算出部１１５と、遅延値算出部１１７と、遅延出力部１１９とを含む。
【００２６】
（フレーム化部１１１）
フレーム化部１１１は、時間領域のディジタル再生信号ｘ（ｎ）を受け取り、ある離散時刻ｔから始まる連続するｒ個（ｒは複数）のサンプルによる列をフレーム化し（ｓ１１１）、フレーム単位の再生信号ｘｍをベクトル化部１１２に出力する。以下ではｒ＝２Ｌ（Ｌは正の整数）として説明する。なお、ｍはフレーム番号及びそのフレーム番号に対応する時刻（以下「フレーム時刻」という）を表す。
【００２７】
同様に、フレーム化部１１１は、時間領域のディジタル収音信号ｙ（ｎ）を受け取り、前記離散時刻ｔを含む互いに異なる複数の時刻それぞれから始まる連続するｒ個のサンプルによる列をフレーム化し、フレーム単位の収音信号ｙｍを無音区間判定部１１３に出力する。以下では、Ｌ個のサンプルに相当する時刻ずつずらした複数の時刻それぞれから始まる連続する２Ｌ個のサンプルによる列をフレーム化するものとして説明する。例えば以下のようにフレーム化する。
xm=[x(mL-2L+1),x(mL-2L+2),…,x(mL)]T
ym=[y(mL-2L+1),y(mL-2L+2),…,y(mL)]T
なお、・Ｔは行列・の転置行列を表す。
【００２８】
（ベクトル化部１１２）
ベクトル化部１１２は、フレーム単位の再生信号ｘｍを受け取り、再生信号ｘｍの前半Ｌ個を切り出して、ベクトル
x'mT=[x(mL-2L+1),x(mL-2L+2),…,x(mL-L)]
を生成し（ｓ１１２）、無音区間判定部１１３と相関値算出部１１５に出力する。
【００２９】
（無音区間判定部１１３）
無音区間判定部１１３は、再生信号ｘｍを用いて、再生信号ｘｍが無音区間か否かを判定する（ｓ１１３ａ）。例えば、無音区間判定部１１３は、再生信号ｘｍから得られるベクトルｘ’ｍを受け取り、ベクトルｘ’ｍのパワー||ｘ’ｍ||２を算出し、閾値Ｔｘ以上か否かを判定する。なお、||・||は・のＬ２ノルムを表す。閾値Ｔｘ以上の場合には、無音区間ではないと判定し、閾値Ｔｘ未満の場合には、無音区間であると判定する。無音区間判定部１１３は、パワー||ｘ’ｍ||２が閾値Ｔｘ以上の場合、そのときのｍをｍ０として相関値算出部１１５に出力する（ｓ１１３ｂ）。閾値Ｔｘは再生信号に含まれるノイズの影響を小さくするために用いる。無音か小さな声では閾値Ｔｘを下回り、通常の音量の音声で閾値Ｔｘを超えるように閾値Ｔｘを設定する。
【００３０】
なお、閾値Ｔｘ未満の場合には、次の再生信号ｘ（ｎ）と収音信号ｙ（ｎ）を受け取り、フレーム化処理（ｓ１１１）、ベクトル化処理（ｓ１１２）、無音区間判定処理（ｓ１１３ａ）を繰り返す。
【００３１】
受け取った全ての再生信号ｘ（ｎ）と収音信号ｙ（ｎ）に対して、相関値算出部１１５以降の処理を行ってもよいが、通常反響音はある程度大きな再生音の場合に生じるので、そのような場合にのみ遅延量を推定すれば十分効果を得ることができる。よって、このように無音区間判定部１１３において、無音区間でないと判定されたフレームに対してのみ、以降の処理を行うことで、演算量を減らすことができる。
【００３２】
（相関値算出部１１５）
相関値算出部１１５は、再生信号ｘ’ｍＴと収音信号ｙｍとを受け取り、その相関値ｃｆ（ｎ）を、収音信号ｙｍのフレーム番号とサンプル番号を変化させながら、各フレームｍの各サンプルｎに対して算出する（ｓ１１５）。
【００３３】
図５を用いて相関値算出部１１５の処理内容をより詳細に説明する。例えば、相関値算出部１１５は、無音区間ではないと判定したフレーム番号ｍ０を受け取り、以下のベクトル
【００３４】
【数１】
0005235226.tif 000002
【００３５】
を定義する（ｓ１１５ａ）。ここで０ｎはｎ個の０が並んだベクトルを表す。さらに、以下の式により、フレームｍのｎ番目のサンプルの相関値ｃｆ（ｎ）を算出する（ｓ１１５ｃ）。
【００３６】
【数２】
0005235226.tif 000003
【００３７】
但し、ＤＦを想定する最大遅延をフレーム数で表したものとし、ｍ０≦ｍ≦ｍ０＋ＤＦ−１とし、ｆ＝ｍ−ｍ０とする（ｓ１１５ｂ）。よって、０≦ｆ≦ＤＦ−１である。なお、ｘ＾ｍ（ｉ）、ｙ＾ｍ（ｉ）はそれぞれベクトルｘ＾ｍ、ｙ＾ｍのｉ番目の要素を表し、記号＾は直前の文字の頭上に附されるものとする。図６に示すように、式（３）において、ｎの値を０からＬ−１に変化させ（ｓ１１５ｂ、ｓ１１５ｄ，ｓ１１５ｅ）、ベクトルｘ＾ｍ＝［ｘ’ｍ０Ｔ］（但し、下付き文字ｍ０はｍ０を表す）と収音信号ｙ＾ｍ＝［ｙｍ（１＋ｎ），…，ｙｍ（Ｌ＋ｎ）］の相関値を算出する（ｓ１１５ｃ）。さらにフレーム番号ｍを、ｍ０からｍ０＋ＤＦ−１まで変化させ（図４のｓ１１３ｂ、図５のｓ１１５ｆ、ｓ１１５ｇ）、各フレームｍの各サンプルｎ毎の相関値ｃｆ（ｎ）を算出する。言い換えると、フレーム時刻が１フレーム進む毎に、つまりｍが１増えるごとに、ｘ＾ｍは一定の値（式（１）及び図６参照、ｘ＾ｍはｍ０のときの値から変化しない）を保持するのに対し、ｙ＾ｍは値が変化するため（式（２）及び図６参照、ｙ＾ｍはフレーム時刻ｍに応じて変化し、さらにサンプル番号ｎも変化する）、その時間差の異なる信号との相関を順に取っていく。想定する最大遅延をＤｓサンプル（例えば、サンプリング周波数を１６ｋＨｚとし、最大遅延を２００ｍｓと想定したとき、Ｄｓ＝３２００である）としたとき、（ｍ−ｍ０）Ｌ＞Ｄｓとなるｍ＝ｍ１＝ｍ０＋ＤＦ-１までｃｆを計算する（つまり、ｍ０≦ｍ≦ｍ１＝ｍ０＋ＤＦ-１）。
【００３８】
相関値算出部１１５は、式（３）を用いて、ＤＦ×Ｌ個の相関値ｃｆ（ｎ）を算出し、算出した相関値の中で最大の相関値となるときのフレーム番号をｆｍａｘとし、最大の相関値となるときのサンプル番号をｎｍａｘとして遅延値算出部１１７に出力する（図７参照）。
【００３９】
上記では、式（３）の相関値で説明を行ったが、相関値に限らず再生信号からなるサンプル列と収音信号からなるサンプル列との類似性の指標を表すものであればよい。この観点から相関値算出部を類似性算出部と呼んでもよい。
【００４０】
（遅延値算出部１１７）
遅延値算出部１１７は、相関値が最大となるときの収音信号のフレーム番号ｆｍａｘとサンプル番号ｎｍａｘを受け取り、これを用いて、例えば以下の式により遅延値ｄｍａｘを算出し、遅延出力部１１９へ出力する（ｓ１１７）。
【００４１】
【数３】
0005235226.tif 000004
【００４２】
言い換えると、遅延値算出部１１７は、相関値算出部１１５で算出した類似性の指標が最も高くなることを示す、再生信号からなるサンプル列と収音信号からなるサンプル列が対応する時刻の差を遅延値として求める。
【００４３】
（遅延出力部１１９）
遅延出力部１１９は、所定数の遅延値を受け取り、最も頻度の高い遅延値を遅延推定値として出力する（ｓ１１９ｅ）。
【００４４】
例えば、遅延出力部１１９は、Ｄｓの長さを持つ配列ｄｈを用意し、０で初期化する（ｓ１１９ａ）。遅延出力部１１９は、遅延値ｄｍａｘを受け取ると、配列ｄｈのインデックスがｄｍａｘ番目の要素の数を１増やす（ｓ１１９ｂ）。Ｔｓｕｍ個の遅延値ｄｍａｘを取得するまで、上記処理（ｓ１１１〜ｓ１１７、ｓ１１９ｂ）を繰り返す（ｓ１１９ｃ、ｓ１１９ｄ）。このような処理を行うことで、配列ｄｈは遅延推定値の候補のヒストグラムとなる。そして、Ｔｓｕｍ個の遅延値ｄｍａｘを取得したとき（言い換えると、配列ｄｈの要素の合計がＴｓｕｍとなったとき）に、配列ｄｈの全要素の中で一番大きな値をとる配列の要素を探索し、その要素のインデックスを遅延推定値ｄｅｓｔとして出力する（ｓ１１９ｅ）。Ｔｓｕｍはヒストグラムの最頻値が常に真値となるために必要な計算回数を表し、推定値のばらつき方によって数回から数十回分の計算を行うように設定する。このような構成とすることで、誤差によって遅延推定値がばらつくことを大幅に軽減できる。
【００４５】
＜信号蓄積部１８０＞
信号蓄積部１８０は、遅延推定値ｄｅｓｔに応じて、再生信号ｘ（ｎ）を遅延させて、遅延再生信号ｘ（ｎ’）を出力する。例えば、信号蓄積部１８０は、信号格納部１８１と信号バッファ１８３と第一信号出力部１８５とを含む（図８、図９参照）。
【００４６】
信号バッファ１８３は長さＤのサンプルを保持できるバッファである（Ｄ≧Ｄｓであればよく、通常Ｄ＝Ｄｓとすればよい）。信号格納部１８１は、再生信号ｘ（ｎ）を受け取り、信号バッファ１８３上の古いサンプルから順に上書きする形で保存する（ｓ１８１）。第一信号出力部１８５は、遅延推定値ｄｅｓｔを受け取り、この遅延推定値ｄｅｓｔに基づいて、現在のサンプルｘ（ｎ）から数えてｄｅｓｔ＋２Ｌ-１サンプル古いものからｄｅｓｔサンプル古いものまで計２Ｌ個出力する（ｓ１８５）。つまり、２Ｌ個の遅延再生信号ｘ（ｎ’）（但し、ｎ−ｄｅｓｔ−２Ｌ＋１）≦ｎ’≦ｎ−ｄｅｓｔ）を出力する。
【００４７】
＜エコー消去部９０＞
エコー消去部９０は、例えば、従来技術を用いてエコーを消去すればよい。エコー消去部９０は、遅延再生信号ｘ（ｎ’）を用いて、収音信号ｙ（ｎ）から反響信号を消去し、送話信号ｅ（ｎ）を送話端４に出力する。再生信号ｘ（ｎ）ではなく、遅延再生信号ｘ（ｎ’）を用いる点が従来技術と異なるが、その他の点は従来技術と同様である。例えば、図１０のようにエコー推定部を用い、非特許文献１記載の適応フィルタによって収音信号から疑似エコー信号を差し引いてエコー消去をする方法や、特許３４２０７０５号公報のように収音信号にエコー抑圧ゲインをかけてエコーを抑圧する方法がある。
【００４８】
例えば、図１０に示すように、エコー消去部９０は、エコー推定部９１と減算部９３を含む構成であってもよい。エコー推定部９１において、非特許文献１記載の適応フィルタを用いて、遅延再生信号ｘ（ｎ’）により疑似反響信号ｙ’（ｎ）を生成する。次に、減算部９３において収音信号ｙ（ｎ）から疑似反響信号ｙ’（ｎ）を差し引いてエコーを消去した送話信号ｅ（ｎ）を求め、出力する。なお、エコー推定部９１は送話信号ｅ（ｎ）を受け取り、適応フィルタのフィルタ係数の更新の際に利用する。
【００４９】
＜効果＞
本実施形態は、遅延推定部において、反響信号を用いて再生信号の遅延量を推定することができる。さらに、信号蓄積部では、推定した遅延量に基づき、再生信号と遅延させて出力することができる。
【００５０】
エコー消去部において、遅延再生信号を用いて、エコーを消去することで、遅延の影響によるエコー消去部の性能劣化を、フィルタタップ長を増やさずに防ぐことができる。フィルタタップ長を増やさないので、演算量の増加を防ぐことができる。加えて、製品毎の遅延量を推定することができるため、製品毎に適切な遅延量を推定し、エコーを消去することができる。さらに、フレーム毎の処理のため、ＩＰ電話のようなパケット単位で処理するアプリケーションへの適用が容易である。
【００５１】
なお、エコー消去装置の内部に上述した遅延推定装置を組込み、遅延再生信号を出力するのではなく、適応フィルタの開始位置を調整する構成としてもよい。遅延再生信号を出力する場合と同様に、必要な演算量を増加させることなく、エコー消去性能を維持することができる。なお、本実施形態では、一定長のフレーム単位でスピーカの再生信号とマイクロホンの収音信号の相関を計算し、各フレームの相関値の大小によって遅延量を柔軟に決定することができる。
【００５２】
＜その他の変形例＞
遅延推定装置１００が受信する再生信号及び収音信号がアナログ信号の場合には、図示しないＡＤ変換部において、アナログ再生信号ｘ（ｔ）及びアナログ収音信号ｙ（ｔ）（ｔは時刻を表す）を、それぞれ所定のサンプリング周波数（例えば１６ｋＨｚ）でサンプリングし、各サンプルを量子化し、ディジタル受話信号サンプルｘ（ｎ）及びディジタル収音信号ｙ（ｎ）に変換する構成としてもよい。
【００５３】
遅延推定装置１００はベクトル化部１１２を含まなくともよい。その場合には、ｘ’ｍに代えてｘｍを用いて無音区間判定処理（ｓ１１３ａ）、相関値算出処理（ｓ１１５）を行えばよい。
【００５４】
遅延推定装置１００は遅延出力部１１９を含まず、遅延値算出部１１７の出力値であるｄｍａｘをそのまま遅延推定部１１０の遅延推定値ｄｅｓｔとして出力する構成としてもよい。遅延推定値が不安定になるが、推定速度が速くなるという効果がある。なお、以下に説明する実施形態においても同様である。
【００５５】
＜第二実施形態に係る遅延推定装置２００＞
第一実施形態と異なる部分についてのみ説明する。図１及び図２を用いて第二実施形態に係る遅延推定装置２００を説明する。
【００５６】
遅延推定装置２００は、遅延推定部２１０と信号蓄積部１８０とを含む。遅延推定部２１０の構成及び処理内容が第一実施形態と異なる。遅延推定部２１０は、収音信号ｙ（ｎ）と再生信号ｘ（ｎ）とを受け取り、収音信号ｙ（ｎ）に含まれる反響信号を用いて再生信号ｘ（ｎ）の遅延量を推定する（ｓ２１０）。遅延推定部２１０内の相関値算出部２１５の構成及び処理内容（ｓ２１５）が第一実施形態と異なる（図３及び図４参照）。以下、図１１及び図１２を用いて詳細を説明する。
【００５７】
＜相関値算出部２１５＞
相関値算出部２１５は、無音区間判定部１１３において無音区間でないと判定された再生信号ｘ’ｍＴを所定の範囲Ｉ毎に合算し、収音信号ｙｍを所定の範囲Ｉ毎に合算する（ｓ２１５ｂ）。例えば、以下の式により合算する（ｘ＾ｍ、ｙ＾ｍについては式（１）、式（２）参照）。
【００５８】
【数４】
0005235226.tif 000005
【００５９】
ｍｉｎ｛・｝は集合・の最小値を返す関数である。つまり、再生信号ｘ＾ｍ及び収音信号ｙ＾ｍをそれぞれ、Ｌ’Ｉ個またはＬ’Ｉ＋１個のエリアに区切り、エリア毎に合算する（ｓ２１５ｂ−１〜ｓ２１５ｂ−４）。
【００６０】
さらに、相関値算出部２１５は、合算された再生信号ｘ−ｍ（ｎ）と合算された収音信号ｙ−ｍ（ｎ）とのエリア相関値を、各フレームの各所定の範囲に対して求める（ｓ２１５ｃ）。なお、記号−は直前の文字の頭上に附されるものとする。例えば、以下の式によりエリア相関値ｃ’ｆを求める。
【００６１】
【数５】
0005235226.tif 000006
【００６２】
つまり、合算された再生信号ｘ−ｍ＝［ｘ−ｍ０（１），…，ｘ−ｍ０（ＬＩ）］と合算された収音信号ｙ−ｍ＝［ｙ−ｍ０（１＋ｎ），…，ｙ−ｍ０（ＬＩ＋ｎ）］（但し、ｎは変化し、０≦ｎ≦ＬＩ−１である。また、式（２）より収音信号はフレーム時刻ｍの変化に応じて信号が変化する）までのエリア相関値を算出する（ｓ２１５ｃ−１〜ｓ２１５ｃ−４）。
【００６３】
相関値算出部２１５は、式（１０）を用いて、ＤＦ×ＬＩ個の相関値ｃ’ｆ（ｎ）を算出し、フレーム毎に算出した相関値の中で最大の相関値となるときのサンプル番号をｎ’ｍａｘとして求める。フレーム毎にｎ’ｍａｘを求めるため、ＤＦ個のサンプル番号ｎ’ｍａｘを求める。
【００６４】
次に相関値算出部２１５は、再生信号ｘｍと収音信号ｙｍとの相関値ｃｆを求める（ｓ２１５ｅ）。その際、収音信号のフレーム番号ｍを変化させる。さらに、エリア相関値ｃ’ｆが最大となるときの所定の範囲（この例では、サンプル番号ｎ’ｍａｘから始まるＩ個のサンプル）を中心とする前後数サンプルの範囲内でサンプル番号を変化させながら、各フレームの各サンプルに対して相関値ｃｆを求める。例えば、ｎｌｏｗ＝ｎ’ｍａｘ−Ｍ（但し、ｎｌｏｗ＜１のときｎｌｏｗ＝１とする）からｎｈｉｇｈ＝ｎ’ｍａｘ＋Ｍ（但し、ｎｈｉｇｈ＞Ｌのときｎｈｉｇｈ＝Ｌとする）の範囲で再生信号ｘ＾ｍと収音信号ｙ＾ｍとの相関値を求める（ｓ２１５ｄ〜ｓ２１５ｇ）。例えば以下の式により求める。
【００６５】
【数６】
0005235226.tif 000007
【００６６】
Ｍはｎ’ｍａｘの周辺で相関の最大値があると思われる範囲を示す。つまり、エリア相関値ｃ’ｆを用いて遅延のおおよその値を計算し、その後、相関値ｃｆから正確な遅延値を求める。
【００６７】
＜効果＞
このような構成とすることで、第一実施形態と同様の効果を得ることができる。さらに、１フレームあたり第一実施形態ではＬタップの相関計算がＬ回必要だったのが、ＬＩタップの相関計算がＬＩ回（式（１０）参照）とＬタップの相関計算が２Ｍ＋１回（式（３）参照）で済むようになる。例えばＬ＝３２０、Ｉ＝１０、Ｍ＝５０のとき、その計算量はおおよそ１／３となる。
【００６８】
＜第三実施形態に係る遅延推定装置３００＞
第一実施形態と異なる部分のみ説明する。第三実施形態に係るエコー消去装置は、遅延推定装置１００とエコー消去部９４とを含む。エコー消去部９４は従来技術を用いてエコーを消去すればよいので、主に、図１３及び図１４を用いて第三実施形態に係る遅延推定装置３００を説明する。遅延推定装置３００は遅延推定部３１０と信号蓄積部３８０とを含む。遅延推定装置３００は、周波数領域変換部８１及び８２、エコー消去部９４、時間領域変換部８３を備えるエコー消去装置の内部に組込まれているものとする。
【００６９】
周波数領域変換部８１及び８２は、それぞれ時間領域の再生信号ｘ（ｎ）及び収音信号ｙ（ｎ）を周波数領域の再生信号Ｘｍ及び収音信号Ｙｍに変換し（ｓ８１、ｓ８２）、再生信号Ｘｍを遅延推定部３１０と信号蓄積部３８０とに出力し、収音信号Ｙｍを遅延推定部３１０とエコー消去部９４とに出力する。例えば、以下の式により変換する。
【００７０】
【数７】
0005235226.tif 000008
【００７１】
ｗは長さ２Ｌのハミング窓等である。
【００７２】
遅延推定部３１０は、周波数領域の再生信号Ｘｍと収音信号Ｙｍとを受け取り、収音信号ｙ（ｎ）に含まれる反響信号を用いて再生信号ｘ（ｎ）の遅延量を推定する（ｓ３１０）。
【００７３】
信号蓄積部３８０は、遅延推定値ｄｅｓｔに応じて、再生信号Ｘｍを遅延させて、出力する（ｓ３８０）。
【００７４】
エコー消去部９４は、遅延された再生信号を用いて、収音信号Ｙｍから反響信号を消去し（ｓ９４）、送話信号Ｅｍを時間領域変換部８３に出力する。
【００７５】
時間領域変換部８３は、周波数領域の送話信号Ｅｍを時間領域の送話信号ｅ（ｎ）に変換し、送話端４に出力する。例えば、以下の式により変換する。
【００７６】
【数８】
0005235226.tif 000009
【００７７】
以下、各部の詳細を説明する。
【００７８】
＜遅延推定部３１０＞
図１５及び図１６を用いて遅延推定部３１０を説明する。遅延推定部３１０は、無音区間判定部３１３と相関値算出部３１５と遅延値算出部１１７と遅延出力部３１９とを含む。
【００７９】
（無音区間判定部３１３）
無音区間判定部３１３は、再生信号Ｘｍを受け取り、再生信号Ｘｍが無音区間か否かを判定する（ｓ３１３ａ）。例えば、無音区間判定部３１３は、再生信号Ｘｍのパワー||Ｘｍ||を算出し、閾値Ｔｘ以上か否かを判定する。無音区間判定部３１３は、パワー||Ｘｍ||が閾値Ｔｘ以上の場合、そのときのフレーム番号ｍをｍ０とし、再生信号ＸｍをＸｍ０として相関値算出部３１５に出力する（ｓ３１３ｂ）。
【００８０】
（相関値算出部３１５）
相関値算出部３１５は、無音区間判定部において無音区間でないと判定された再生信号Ｘｍ０と収音信号Ｙｍと受け取り、これらの値を用いて、相関値を求める（ｓ３１５）。その際、収音信号のフレーム番号を変化させながら相関値を求めることで、各フレームの各サンプルに対して相関値を求める。例えば以下の式により相関値を求める。
【００８１】
【数９】
0005235226.tif 000010
【００８２】
但し、＊は複素共役を表し、ｍ０≦ｍ≦ｍ０＋ＤＦ−１である。
ｃ〜ｆ（但し、記号〜は直前の文字の頭上に附されるものとする）の前半Ｌ個を
【００８３】
【数１０】
0005235226.tif 000011
【００８４】
と定義する。相関値算出部３１５は、式（１４）を用いて、ＤＦ×２Ｌ個の相関値ｃ〜ｆ（ｎ）を算出し、式（１５）により、ＤＦ×Ｌ個の相関値ｃｆ（ｎ）を取得する（ｓ３１５ａ〜ｓ３１５ｃ）。取得した相関値ｃｆ（ｎ）の中で最大の相関値となるときのフレーム番号をｆｍａｘとし、最大の相関値となるときのサンプル番号をｎｍａｘとして遅延値算出部１１７に出力する。
【００８５】
１フレームあたり第一実施形態の場合、式（３）において、Ｌタップの相関計算がＬ回必要であったが、本実施形態では、式（１４）において要素数の２Ｌ回の計算を行うだけでよい。
【００８６】
なお上記では、式（１４）及び式（１５）の相関値で説明を行ったが、第一実施形態の場合と同様に、相関値に限らず周波数領域の再生信号と収音信号との類似性の指標を表すものであればよい。
【００８７】
（遅延出力部３１９）
遅延出力部３１９は、遅延値算出部１１７から所定数の遅延値を受け取り、遅延出力部１１９と同様の方法により、最も頻度の高い遅延値を遅延推定値ｄｅｓｔとして求める（ｓ１１９ａ〜ｓ１１９ｅ）。
【００８８】
さらに、遅延出力部３１９は、以下のｄ’ｅｓｔを求める。
【００８９】
【数１１】
0005235226.tif 000012
【００９０】
遅延出力部３１９は、ｄ’ｅｓｔを改めてｄｅｓｔとし（つまり、ｄｅｓｔにｄ’ｅｓｔを代入し）、信号蓄積部３８０に出力する（ｓ３１９ｆ）。信号蓄積部３８０には、Ｌサンプル毎の周波数領域の再生信号が蓄積されているが、このような構成とすることで、Ｌの倍数の遅延を再現することができる。
【００９１】
＜信号蓄積部３８０＞
信号蓄積部３８０は、遅延推定値ｄｅｓｔに応じて、再生信号Ｘｍを遅延させて、周波数領域の遅延再生信号Ｘｍ’（但し、ｍ’＝ｍ−ｄｅｓｔ／Ｌ）を出力する（ｓ３８０）。再生信号ｘ（ｎ）に代えて再生信号Ｘｍを用いる以外は、信号蓄積部１８０と同様である。
【００９２】
＜エコー消去部９４＞
エコー消去部９４は、遅延された再生信号を用いて、収音信号Ｙｍから反響信号を消去し（ｓ９４）、送話信号Ｅｍを時間領域変換部８３に出力する。例えば、図１７に示すように、エコー消去部９４は、エコー抑圧ゲイン計算部９５と乗算部９７を含む構成であってもよい。エコー抑圧ゲイン計算部９５において、特許３４２０７０５号公報記載の従来技術を用いて、遅延再生信号Ｘｍ’と収音信号Ｙｍによりエコー抑圧ゲインＧｍを求める。次に乗算部９７において収音信号Ｙｍにエコー抑圧ゲインＧｍを乗じてエコーを抑圧し、抑圧後の送話信号Ｅｍを出力する。
【００９３】
＜効果＞
このような構成とすることで、第一実施形態と同様の効果を得ることができる。さらに、エコー消去装置で用いる周波数領域の再生信号及び収音信号を利用することで、遅延推定時の相関計算の演算量を低く抑えることができる。
【００９４】
＜その他の変形例＞
周波数領域変換部８１及び８２において、式（１）、式（２）を用いて、以下の式により、得られる周波数領域の再生信号及び収音信号であってもよい。
【００９５】
【数１２】
0005235226.tif 000013
【００９６】
この信号であっても遅延推定装置３００は、同様の効果を奏する。さらに、式（１４）において、Ｌ回の計算を行うだけでよく、ｃｆを定義しなおす必要がなくなる。なお、以下に説明する第四実施形態においても同様である。
【００９７】
本実施形態では、遅延推定装置がエコー消去装置の内部に組込まれているものとしたが、組込みでなくともよい。その場合には、遅延推定装置内部に周波数領域変換部と時間領域変換部を含む構成とすればよい。
【００９８】
＜第四実施形態に係る遅延推定装置４００＞
第三実施形態と異なる部分についてのみ説明する。図１８及び図１９を用いて第四実施形態に係る遅延推定装置４００を説明する。
【００９９】
遅延推定装置４００は、遅延推定部４１０と信号蓄積部４８０を含む。遅延推定部４１０及び信号蓄積部４８０の構成及び処理内容がそれぞれ第三実施形態と異なる。遅延推定部４１０は、収音信号ＹｍとＤＦ個の再生信号Ｘｍ，Ｘｍ-1，…，Ｘｍ-ＤＦ＋１とを受け取り、収音信号Ｙｍに含まれる反響信号を用いて再生信号Ｘｍの遅延量を推定する（ｓ４１０）。但し、下付き文字ＤＦは、ＤＦを表す。
【０１００】
＜信号蓄積部４８０＞
信号蓄積部４８０は、遅延推定値ｄｅｓｔに応じて、再生信号Ｘｍを遅延させて、出力する（ｓ４８０）。信号蓄積部４８０は、例えば、信号格納部４８１と信号バッファ４８３と第一信号出力部４８５と第二信号出力部４８７とを含む（図２０参照）。
【０１０１】
信号バッファ４８３はＤ個の周波数領域の再生信号を保持できるバッファである（Ｄ≧ＤFであればよく、通常Ｄ＝ＤFとすればよい）。信号格納部４８１は、再生信号Ｘｍを受け取り、信号バッファ４８３上の古い再生信号から順に上書きする形で保存する。
【０１０２】
第二信号出力部４８７は、現フレームｍを含めてＤＦ個の再生信号Ｘｍ，Ｘｍ-1，…，Ｘｍ-ＤＦ＋１を信号バッファ４８３から取得し、遅延推定部４１０に出力する。
【０１０３】
また、信号蓄積部４８０の第一信号出力部４８５は、遅延推定値ｄｅｓｔに応じて、再生信号Ｘｍを遅延させて、周波数領域の遅延再生信号Ｘｍ’（但し、ｍ’＝ｍ−ｄｅｓｔ／Ｌ）を出力する。
【０１０４】
＜遅延推定部４１０＞
遅延推定部４１０は、相関値算出部４１５と遅延値算出部１１７と遅延出力部３１９とを含む。相関値算出部４１５の構成及び処理内容（図２２のｓ４１５）が第三実施形態と異なる。
【０１０５】
（相関値算出部４１５）
相関値算出部４１５は、過去ＤＦ個の再生信号Ｘｍ，Ｘｍ-1，…，Ｘｍ-ＤＦ＋１と収音信号Ｙｍとを用いて、ＤＦ個の再生信号Ｘｍ，Ｘｍ-1，…，Ｘｍ-ＤＦ＋１のフレーム番号と収音信号Ｙｍのフレーム番号を変化させながら、各再生信号と各収音信号の各組合せの各サンプルに対して相関値を求める（ｓ４１５）。相関値算出部４１５は、図２３に示す各処理を行う。
【０１０６】
相関値算出部４１５において各値に初期値を設定する（ｓ４１５ａ、ｓ４１５ｂ）。
【０１０７】
収音信号ＹｍとＤＦ個の再生信号Ｘｍ，Ｘｍ-1，…，Ｘｍ-ＤＦ＋１とを受け取る。但し、ｍがＤＦ未満の場合には（ｓ４１５ｃ）、取得可能な再生信号のみ受け取る。
【０１０８】
ｍがＤＦ未満の場合には（ｓ４１５ｃ）、取得した再生信号と収音信号Ｙｍとの相関値を算出する（ｓ４１５ｄ−１〜ｓ４１５ｄ−３）。相関値の算出方法は第三実施形態と同様である。
【０１０９】
【数１３】
0005235226.tif 000014
【０１１０】
但し、０≦ｆ≦ｍ−１である。
【０１１１】
取得した再生信号と同数の相関値を算出し、以下の処理を行う（ｓ４１５ｅ、ｓ４１５ｆ、ｓ４１５ｇ−１〜ｓ４１５ｇ−５）。
i=m-f
for f=0〜m-1
if cf(nf)>ctmp(i)
ctmp(i)=cf(nf)
ntemp(i)=nf
ftemp(i)=f
end
end
ｍがＤＦ以上となるまで上記の処理を繰り返す（ｓ４１５ｐ）。
【０１１２】
ｍがＤＦ以上の場合には（ｓ４１５ｃ）、ＤＦ個の再生信号Ｘｍ，Ｘｍ-1，…，Ｘｍ-ＤＦ＋１と収音信号Ｙｍとの相関値ｃｆを算出する（ｓ４１５ｈ−１〜ｓ４１５ｈ−３）。
【０１１３】
【数１４】
0005235226.tif 000015
【０１１４】
但し、０≦ｆ≦ＤＦ−１である。
【０１１５】
ｍがＤＦ以上の場合には（ｓ４１５ｆ）、ｍをＤＦで割ったあまりをｒとし（ｓ４１５ｉ）、ｉを以下のように設定する（ｓ４１５ｊ−１〜ｓ４１５ｊ−３）。
【０１１６】
【数１５】
0005235226.tif 000016
【０１１７】
さらに、以下の処理を行う（ｓ４１５ｊ−１〜ｓ４１５ｊ−３、ｓ４１５ｋ−１〜ｓ４１５ｋ−４）。
for f=0〜DF-1
if cf(nf)>ctmp(i)
ctmp(i)=cf(nf)
ntemp(i)=nf
ftemp(i)=f
end
end
過去ＤＦ回の相関計算と比較が終了したインデックスｒ＋１を用いて、
nmax=ntemp(r+1)        
fmax=ftemp(r+1)        (19)
として、遅延値算出部１１７に出力する（ｓ４１５ｍ）。図２４は、ｍ＝ＤＦ（ｒ＝０）のときのｃｔｍｐのｃｆ、ｃｔｍｐ（ｉ）、ｎｔｅｍｐ（ｉ）、ｆｔｅｍｐ（ｉ）を記憶する記憶部の状態を示す。このとき、ｃ０とｃｔｍｐ（０）とを比較し、ｃ１とｃｔｍｐ（ＤＦ−１）とを比較し、ｃ２とｃｔｍｐ（ＤＦ−２）とを比較し、…、ｃＤＦ−１とｃｔｍｐ（１）とを比較する。比較の結果、ｃｆのほうが大きい場合には、ｃｔｍｐを更新する。全ての比較、更新を終えると、ｒ＋１に対応するｎｔｅｍｐ（ｉ）、ｆｔｅｍｐ（ｉ）を出力する。この例では、ｒ＝０なので、ｎｔｅｍｐ（１）、ｆｔｅｍｐ（１）をｎｍａｘ、ｆｍａｘとして出力する。本実施形態ではＤＦ回の比較処理を行ったｃｔｍｐに対応するｆｍａｘとｎｍａｘを出力したいので、ｒ＋１のときのｃｔｍｐ（ｉ）に対応するｎｔｅｍｐ（ｉ）、ｆｔｅｍｐ（ｉ）を出力する。次のフレームを受け取った場合には、上記処理を行い、ｎｔｅｍｐ（２）、ｆｔｅｍｐ（２）をｎｍａｘ、ｆｍａｘとして出力する。
【０１１８】
計算が終了したｃｔｍｐ（ｉ）、ｎｔｍｐ（ｉ）、ｆｔｍｐ（ｉ）は０で初期化し（ｓ４１５ｎ）、ｃｔｍｐ（ｉ）には次フレームに入力される新たな再生信号Ｘｍ＋１と各収音信号Ｙｍ＋１の相関値を格納していく。相関値算出部４１５は、ｓ４１５ｂ〜ｓ４１５ｐの処理を繰り返す（ｓ４１５ｐ）。
【０１１９】
言い換えると、相関値算出部４１５では、周波数領域収音信号Ｙｍと複数の周波数領域再生信号Ｘｍ，Ｘｍ-1，…，Ｘｍ-ＤＦ＋１それぞれとの類似性の指標を算出する。
【０１２０】
＜効果＞
このような構成とすることで、第三実施形態と同様の効果を得ることができる。ｃｔｍｐの各要素は一つのＸｍに対応しており、あるＸｍ”を固定したままＹｍ”，Ｙｍ”＋１，…，Ｙｍ”＋ＤＦ-１との相関を計算する、という第三実施形態の演算を同時並行でＤＦ回行うことができる。よって、第三実施形態よりも高速に遅延推定値が得られる。
【０１２１】
＜その他の変形例＞
第四実施形態において、遅延推定装置４００は、無音区間判定部４１３（図２１において破線で示す）を含んでもよい。無音区間判定部４１３は、ＤＦ個の再生信号Ｘｍ，Ｘｍ-1，…，Ｘｍ-ＤＦ＋１を受け取り、再生信号Ｘｉのパワーが閾値以下か否かを判定し、閾値以上の再生信号のみ遅延推定部４１０に出力する（ｓ４１３、図２２において破線で示す）。再生信号Ｘｉのパワーが小さい、つまり再生信号が無音もしくはある閾値以下のパワーしかない場合に、対応する相関値ｃｆの計算を行わない構成となる。Ｘｉのパワーが小さい場合は相関値ｃｆがノイズの影響を受けやすくなるが、このような構成とすることで、頑強な推定が可能となる。閾値は例えば信号の定格レベルの−１０ｄＢなどと設定する。
【０１２２】
＜第五実施形態に係る遅延推定装置５００＞
第四実施形態と異なる部分についてのみ説明する。第五実施形態に係る遅延推定装置５００を説明する。遅延推定部５１０内の相関値算出部５１５の処理内容が遅延推定装置４００とは異なる（ｓ５１０、ｓ５１５、図１８、図１９、図２１、図２２参照）。図２５のｓ５１５ｈ−２、ｓ５１５ｄ−２に示すように、相関を計算するＸｉをＡ（Ａは２以上の整数）フレーム毎にしか用いない。例えばＡ＝３の時、ｍ番目のフレームの時刻においてＸｍとＹｍの相関、Ｘｍ-ＡとＹｍの相関、Ｘｍ-２ＡとＹｍの相関というように計算し、ｍ＋１番目のフレームの時刻においてはＸｍとＹｍ＋１の相関、Ｘｍ-ＡとＹｍ＋１の相関、Ｘｍ-２ＡとＹｍ＋１の相関というように計算する。このようにしても、相関計算に用いられるＸｉは間引かれるが、同一のＸｉに対する異なる遅延に対応する相関値は間引かれない（図２６参照）。
【０１２３】
＜効果＞
このような構成とすることで、第四実施形態と同様の効果を得ることができる。なお、Ａフレームに１回しかｄｍａｘの計算がされないため、第四実施形態に比べてＴｓｕｍ個の遅延値を推定するためにＡ倍の時間がかかるが（言い換えると、遅延推定値ｄｅｓｔの推定速度が１／Ａに減少する）、その分演算量も相関計算部分に関しては１／Ａに減少する。遅延推定装置の処理能力に応じて適宜設定すればよい。
【０１２４】
＜第六実施形態に係る遅延推定装置６００＞
第一実施形態と異なる部分についてのみ説明する。図１、図２、図３、図２７を用いて第六実施形態に係る遅延推定装置６００を説明する。遅延推定装置６００内の遅延推定部６１０の構成及び処理内容（ｓ６１０）が第一実施形態とは異なる。さらに詳しくいうと、遅延推定部６１０内の遅延出力部６１９の処理内容（ｓ６１９）が異なる。
【０１２５】
遅延出力部６１９は入力されたｄｍａｘを用いて
dest=(1-α)dmax+αd’est    (20)
として出力する（図２７のｓ６１９）。なお、ｄ’ｅｓｔは前回推定したｄｅｓｔの値である。αは減衰係数で、０．９程度の値を用いる。
【０１２６】
＜効果＞
このような構成により第一実施形態と同様の効果を得ることができる。なお、この場合、遅延出力部１１９のようにＴｓｕｍ回の推定が行われるまで待たずに、真値に近い値を維持することができる。第二〜五実施形態の遅延出力部を同様の構成としてもよい。
【０１２７】
＜第七実施形態に係る遅延推定装置７００＞
第一実施形態と異なる部分についてのみ説明する。図１、図２、図２８、図２９を用いて第七実施形態に係る遅延推定装置７００を説明する。遅延推定装置７００内の遅延推定部７１０の構成及び処理内容（ｓ７１０）が第一実施形態とは異なる。さらに詳しくいうと、遅延推定部７１０内の遅延値算出部７１７と遅延出力部７１９の処理内容（図２９のｓ７１７、ｓ７１９ａ、ｓ７１９ｅ）が異なる。
【０１２８】
遅延値算出部７１７はｄｍａｘの代わりにｆｍａｘを遅延値として出力する。
【０１２９】
遅延出力部７１９は、ＤＦの長さを持つ配列ｄｈを用意し、０で初期化する（ｓ７１９ａ）。遅延出力部１１９は、遅延値ｆｍａｘを受け取ると、配列ｄｈのインデックスがｆｍａｘ番目の要素の数を１増やす（ｓ７１９ｂ）。Ｔｓｕｍ個の遅延値ｄｍａｘを取得するまで、処理を繰り返す。Ｔｓｕｍ回の推定を終了したところで、全要素の中で一番大きな値をとるインデックスｉｍａｘ（０≦ｉｍａｘ≦ＤＦ−１）に対し、
dest=imaxL    (21)
を出力する。
【０１３０】
＜効果＞
このような構成とすることで第一実施形態と同様の効果を得ることができる。なお、遅延推定値の正確な値は求まらないが、フレーム内の細かい誤差を無視してフレームごとに集約することで、推定が安定するメリットがある。第二〜六実施形態の遅延値算出部、遅延出力部を同様の構成としてもよい。
【０１３１】
＜第八実施形態に係る遅延推定装置８００＞
第一実施形態と異なる部分についてのみ説明する。図１、図２、図３０、図３１を用いて第八実施形態に係る遅延推定装置８００を説明する。遅延推定装置８００内の遅延推定部８１０の構成及び処理内容（ｓ８１０）が第一実施形態とは異なる。さらに詳しくいうと、遅延推定部８１０は相関蓄積部８１６をさらに含み、遅延値算出部８１７の処理内容（図３１のｓ８１７）が異なる。相関蓄積部８１６は、前回算出した相関値ｃ−ｆ ｏｌｄを蓄積する。
【０１３２】
遅延値算出部８１７は、求めた相関値ｃｆからそのままｄｍａｘを計算するのではなく、定数β（０≦β≦１）を用いてｃｆの時間変化を平滑化したｃ−ｆを用いてｆｍａｘおよびｄｍａｘを計算する。具体的には、遅延値算出部８１７は、相関蓄積部８１６から蓄積された（前回計算された）平滑化した相関値ｃ−ｆ ｏｌｄを取得し、これを用いて、以下の式により平滑化した相関値ｃ−ｆを求める（ｓ８１７）。
【０１３３】
【数１６】
0005235226.tif 000017
【０１３４】
但し、０≦ｆ≦ＤＦ−１とする。
【０１３５】
さらに、遅延値算出部８１７は、平滑化した相関値ｃ−ｆを用いて、以下の式により、ｆｍａｘを計算する。さらにｆｍａｘを用いてｄｍａｘを計算し、ｄｍａｘを出力する。
【０１３６】
【数１７】
0005235226.tif 000018
【０１３７】
＜効果＞
このような構成とすることによって、第一実施形態と同様の効果を得ることができる。さらに、時間平滑化によって外乱音声等によるｃｆの値の一時的な乱れを防ぐことができる。第二〜七実施形態の遅延値算出部を同様の構成としてもよい。なお、第四実施形態のように相関値を毎時刻計算する場合には、平滑化した相関値ｃ−ｆoldは１フレーム前の値であるが、そうでない場合は、数フレーム前の値となることもある。
【０１３８】
＜第九実施形態に係る遅延推定装置９００＞
第三実施形態に係る遅延推定装置３００と異なる部分についてのみ説明する。遅延推定部９１０の相関値算出部９１５の処理内容が異なる（図１３、図１４のｓ９１０、図１５及び図３２参照）。
【０１３９】
相関値算出部９１５は、再生信号Ｘｍ０と収音信号Ｙを受け取り、再生信号Ｘｍ０の大きさに応じてゲインＧｍ０を求める（ｓ９１５ａ）。例えば、以下のようにして求める。
【０１４０】
【数１８】
0005235226.tif 000019
【０１４１】
但し、閾値Ｔｇ１＞Ｔｇ２の正の値であり、０≦γ＜１である。Ｔｇ１は通常会話において最も大きな周波数成分の値付近に設定し、Ｔｇ２は通常会話においてスペクトルの谷に当たる部分の値付近に設定する。
【０１４２】
相関値算出部９１５は、受け取った再生信号Ｘｍ０と収音信号Ｙと、求めたゲインＧｍ０を用いて、相関を以下のように求める（ｓ９１５ｂ）。
【０１４３】
【数１９】
0005235226.tif 000020
【０１４４】
＜効果＞
このような構成とすることで第三実施形態と同様の効果を得ることができる。さらに、あまり大きすぎる再生信号の周波数成分に関しては、時間領域へ戻したときの相関値に影響が大きすぎるため低減し、小さい再生信号の周波数成分に関してもＳＮ比が悪く外乱の影響を受けやすいため、寄与を低くすることができ、より精度の高い推定が可能となる。第四実施形態の遅延値算出部を同様の構成としてもよい。
【０１４５】
＜その他の変形例＞
なお、時間領域で相関を計算する場合でも、ｘ（ｎ）の周波数領域の値を求め、ゲインＧｍ０を設計した後、同様の特性を持つ時間領域のフィルタを求めてｘをフィルタリングすることで同様の効果が得られる。
【０１４６】
＜第十実施形態に係る遅延推定装置＞
第八実施形態に係る遅延推定装置８００と異なる部分についてのみ説明する。本実施形態では、第八実施形態の遅延値算出部で用いていたβの値を可変とする。図１、図２、図３０、図３１を用いて第十実施形態に係る遅延推定装置１０００を説明する。遅延推定装置１０００内の遅延推定部１０１０の構成及び処理内容（ｓ１０１０）が第八実施形態とは異なる。さらに詳しくいうと、遅延推定部１０１０内部の遅延値算出部１０１７の処理内容（ｓ１０１７）が第八実施形態と異なる。遅延値算出部１０１７は図示しない相関差分計算部と平滑係数切替部とを含む。
【０１４７】
ｃ−ｆのあるフレームｍでの値をｃ−ｆ（ｍ）とし、相関差分計算部は、相関蓄積部からｃ−ｆ（ｍ）とｃ−ｆ（ｍ−１）を受け取り、
【０１４８】
【数２０】
0005235226.tif 000021
【０１４９】
を計算する。Δｃ−ｆ（ｍ）は遅延が変動していない場合は、それぞれの遅延において（各ｆにおいて）おおよそ同じ挙動をする。それに対し、遅延が変動した場合、今まで遅延の真値に近いｆに対応するｃ−ｆは急激に値が減少し、新しい遅延の真値に近いｆに対応するｃ−ｆは急激に値が上昇する。つまり、Δｃ−ｆ（ｍ）の正負がｆによって、異なり、かつ、大きさが大きくなる。
【０１５０】
また、相関差分計算部は、細やかな時間変動の影響を除くため、以下の式を計算し、Δｃ−ｆ（ｍ）を定義しなおす。
【０１５１】
【数２１】
0005235226.tif 000022
【０１５２】
なお、Ｉｗは正の整数でｃ−ｆを加算するフレーム幅である。例えばＩｗは１０程度の値とする。相関差分計算部は、Δｃ−ｆ（ｍ）を平滑係数切替部に送信する。
【０１５３】
平滑係数切替部は、
【０１５４】
【数２２】
0005235226.tif 000023
【０１５５】
という値を求める。なお、ｓｇｎ（・）は・の符号（１もしくは−１）を表す。そして、
【０１５６】
【数２３】
0005235226.tif 000024
【０１５７】
という条件判定を行う。Ｔｃは相関が大きく変動していることを判定する閾値、Ｔｓは相関の時間差分の正負がそろっていないことを判定する閾値である。例えば、Ｉｗ＝１０、ＤＦ＝２０程度のときにＴｃ＝１０程度の値とする。また、−ＤＦ≦ＳΔ≦ＤＦであり、ＤＦ＝２０のときに、Ｔｓ＝１０程度とする。
【０１５８】
平滑係数切替部は、式（３５）の条件を満たしたときのみ、第八実施形態のβを以下の式によりβ２に置き換える。
β2=1-γ(1-β)    (36)
γは１以上の実数で、βの値が小さくなることで平滑化の効果が小さくなり、遅延変動への追随が速くなる。例えば、γ＝５．０とする。なお、平滑係数切替部は、βをβ２に置き換えた後に、上記条件を満たさなくなった場合には、β２をβに戻す。遅延値算出部８１７は、βまたはβ２を用いて、式（２２）を計算し、ｃ−ｆを求める。他の処理は第八実施形態と同様である。
【０１５９】
＜効果＞
このような構成とすることで第八実施形態と同様の効果を得ることができる。なお、第八実施形態において、ｃｆの時間変化を平滑化すると述べているが、平滑化をかければかけるほど遅延変動に対して追随が遅くなるというデメリットがあるが、本実施形態であれば、遅延が変動した際に追随を速くし、遅延が変動していない場合は平滑化を強めにして外乱に強くするという処理を遅延値算出部に追加している。
【０１６０】
［シミュレーション結果］
図３３、図３４に第五、七、八、十実施形態を組み合わせた構成の遅延推定装置（但し、γ＝１．０とし、第四実施形態の変形例で説明した無音区間判定部４１３を備える）の計算機上のシミュレーション結果を示す。再生信号は１６ｋＨｚサンプリングの音声データで、Ｌ＝１６０（＝１０ｍｓ）、ＤＦ＝２０、Ａ＝５（第五実施形態の間引き）、Ｔｓｕｍ＝６、β＝０．９５（平滑係数）とした。遅延を１２．５秒と４２秒の位置で変動させ、相関の変化と推定遅延の推移をプロットした。図３４の推定遅延のグラフは、図３３の各時刻で最大である相関から現在の遅延値を計算したものである。図３３は３通りの遅延に対応する相関値の変動を表し、ｃ１、ｃ６、ｃ１1、はそれぞれ１０ｍｓ、６０ｍｓ、１１０ｍｓの遅延に対応する相関値の変動を表す。０秒から１２．５秒までは遅延は１０ｍｓ程度であり、ｃ１の値（太線）が最大になれば正しい遅延が推定されることになる。図３３のプロットもそのようになっている。また図３４プロットも遅延真値と推定遅延値が一致している。同様に、１２．５秒から４２秒は遅延が１１０ｍｓ程度、４２秒から６０秒までは遅延が６０ｍｓ程度であり、それぞれ正しい遅延（極太線、太点線）が推定されている。ただし、推定遅延値が遅延の推定値になるには１０秒程度の推定時間がかかっている。
【０１６１】
同様の実験を、第十実施形態のγ＝５．０として実験を行った。図３５、図３６に結果を示す。遅延が変動した際の相関値の増加・減少の傾斜が大きくなっており、遅延の変動にすばやく追従している。そのため、図３６の推定遅延値も、実際の遅延変動から２秒程度で推定が行えている。追従を大きくするには、βの値をもともと小さくしておけばよいが、そうすると遅延変動が起きていない部分の推定値の変動まで大きくなってしまう。この実験では、２回の遅延変動の周辺以外は安定した相関の計算が行われているため、推定速度と安定性の両立が行えている。
【０１６２】
＜プログラム及び記録媒体＞
上述した遅延推定装置は、コンピュータにより機能させることもできる。この場合はコンピュータに、目的とする装置（各種実施例で図に示した機能構成をもつ装置）として機能させるためのプログラム、またはその処理手順（各実施例で示したもの）の各過程をコンピュータに実行させるためのプログラムを、ＣＤ−ＲＯＭ、磁気ディスク、半導体記憶装置などの記録媒体から、あるいは通信回線を介してそのコンピュータ内にダウンロードし、そのプログラムを実行させればよい。
【０１６３】
＜その他の変形例＞
本発明は上記の実施形態及び変形例に限定されるものではない。例えば、上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
【図１】
0005235226.tif 000026
【図２】
0005235226.tif 000027
【図３】
0005235226.tif 000028
【図４】
0005235226.tif 000029
【図５】
0005235226.tif 000030
【図６】
0005235226.tif 000031
【図７】
0005235226.tif 000032
【図８】
0005235226.tif 000033
【図９】
0005235226.tif 000034
【図１０】
0005235226.tif 000035
【図１１】
0005235226.tif 000036
【図１２】
0005235226.tif 000037
【図１３】
0005235226.tif 000038
【図１４】
0005235226.tif 000039
【図１５】
0005235226.tif 000040
【図１６】
0005235226.tif 000041
【図１７】
0005235226.tif 000042
【図１８】
0005235226.tif 000043
【図１９】
0005235226.tif 000044
【図２０】
0005235226.tif 000045
【図２１】
0005235226.tif 000046
【図２２】
0005235226.tif 000047
【図２３】
0005235226.tif 000048
【図２４】
0005235226.tif 000049
【図２５】
0005235226.tif 000050
【図２６】
0005235226.tif 000051
【図２７】
0005235226.tif 000052
【図２８】
0005235226.tif 000053
【図２９】
0005235226.tif 000054
【図３０】
0005235226.tif 000055
【図３１】
0005235226.tif 000056
【図３２】
0005235226.tif 000057
【図３３】
0005235226.tif 000058
【図３４】
0005235226.tif 000059
【図３５】
0005235226.tif 000060
【図３６】
0005235226.tif 000061