(57)【要約】【課題】  受話入力信号のエコー成分と送話入力信号との同期の不一致（同期ずれ）に対して、少ない計算量で、真の遅延量の変動に対して頑健で安定したエコー抑圧性能を発揮する信号処理装置及び信号処理プログラムを提供する。【解決手段】  遅延量推定部（ＴＤＥ）１２３は、受話信号記憶部（ＲＢＵＦＦ）１２１から出力された受話入力信号と送話信号記憶部（ＳＢＵＦＦ）１２２から出力された送話入力信号を用いて、遅延量Dを算出する。そして、遅延量量子化部(ＤＱ)１２４は、その遅延量Dを量子化する。エコーキャンセラ部（ＥＣ）１２７は、受話信号遅延処理部（ＲＤＰ）１２５から出力された遅延量Ｄの遅延がされた受話入力信号を参照し、Ａ／Ｄ変換器（Ａ／Ｄ）１８から出力された送話入力信号からエコー成分を抑圧し、そのエコー抑圧後の信号を通信部（ＣＯＭ）１１に出力する。【選択図】  図２
2008066782.tif 000002
【特許請求の範囲】
【請求項１】
第１の入力信号を記憶する第１の信号記憶手段と、
前記第１の入力信号のエコー成分が含まれた第２の入力信号を記憶する第２の信号記憶手段と、
前記第１の信号記憶手段に記憶された第１の入力信号と前記第２の信号記憶手段に記憶された第２の入力信号を用いて前記第２の入力信号に含まれるエコー成分の遅延量を推定する遅延量推定手段と、
前記第２の入力信号に含まれる少なくともエコー成分を抑圧するエコー抑圧手段とを有し、
前記遅延量推定手段は、前記推定された遅延量を所定の量子化ステップサイズで量子化し、
前記エコー抑圧手段は、前記遅延量推定手段によって量子化された遅延量分遅らせた前記第１の信号を参照信号としてエコー抑圧することを特徴とする信号処理装置。
【請求項２】
前記エコー抑圧手段は、適応フィルタを用いて前記エコー成分を推定し、その推定されたエコー成分を抑圧することを特徴とする請求項１に記載の信号処理装置。
【請求項３】
前記量子化ステップサイズは、前記適応フィルタのフィルタ長以下である、または、前記フィルタ長から事前に設定されたエコー抑圧に有効なエコー長を差し引いた長さ以下であることを特徴とする請求項２に記載の信号処理装置。
【請求項４】
前記エコー抑圧手段は、前記量子化された遅延量が変化した場合に、前記適応フィルタのフィルタ係数または適応学習のステップサイズを初期化することを特徴とする請求項３に記載の信号処理装置。
【請求項５】
前記エコー抑圧手段は、前記第１の入力信号を周波数領域に変換し、その周波数領域に変換された第１の入力信号を参照信号として周波数領域でエコー成分を推定し、その推定されたエコー成分を抑圧することを特徴とする請求項１に記載の信号処理装置。
【請求項６】
前記量子化ステップサイズは、前記第１の周波数領域変換手段で用いる窓関数の有効な窓長以下である、または、前記窓長からオーバーラップ分を差し引いた長さ以下であることを特徴とする請求項５に記載の信号処理装置。
【請求項７】
前記エコー抑圧手段は、前記量子化された遅延量が変化したことを検出した場合、内部状態を初期化することを特徴とする請求項１乃至請求項６のいずれか１項に記載の信号処理装置。
【請求項８】
前記遅延量推定手段は、前記第１の入力信号と前記第２の入力信号との相互相関を計算することにより、前記エコー成分の遅延量を推定することを特徴とする請求項１乃至請求項７のいずれか１項に記載の信号処理装置。
【請求項９】
第１の入力信号を記憶する第１の信号記憶手段と、
前記第１の入力信号のエコー成分が含まれた第２の入力信号を記憶する第２の信号記憶手段と、
前記第１の入力信号を所定の時間間隔ずらした異なる遅延量分遅らせた遅延入力信号を出力する遅延手段と、
前記遅延手段によって出力された異なる遅延入力信号を参照信号として前記第２の入力信号に含まれる少なくともエコー成分を推定する少なくとも２つのエコー推定手段と、
前記エコー推定手段によって推定された少なくとも２つのエコー成分から生成される少なくとも２つのエコー抑圧信号を用いて１つのエコー抑圧信号を生成するエコー抑圧手段とを有することを特徴とする信号処理装置。
【請求項１０】
前記第２の入力信号に含まれる背景雑音を推定する雑音推定手段を更に有し、
前記エコー抑圧手段は、前記エコー推定手段によって推定された少なくとも２つのエコー成分から生成されるエコー抑圧信号を用いて、前記雑音推定手段によって推定された背景雑音のパワーよりも大きく、信号のパワーが最小な前記エコー抑圧信号を生成することを特徴とする請求項９に記載の信号処理装置。
【請求項１１】
第１の入力信号を記憶する第１の信号記憶手段と、
前記第１の入力信号のエコー成分が含まれた第２の入力信号を記憶する第２の信号記憶手段と、
前記第１の入力信号を所定の時間間隔ずらした異なる遅延量分遅らせた遅延入力信号を出力する遅延手段と、
前記遅延手段によって出力された異なる遅延入力信号を参照信号として前記第２の入力信号に含まれる少なくともエコー成分を推定して出力する少なくとも２つのエコー推定手段と、
前記エコー推定手段から出力された少なくとも２つのエコー推定信号から１つのエコー推定信号を生成する信号生成手段と、
前記信号生成手段によって生成された１つのエコー推定信号を用いてエコー抑圧するエコー抑圧手段とを有することを特徴とする信号処理装置。
【請求項１２】
前記信号生成手段は、少なくとも２つの前記エコー推定信号から、前記第２の入力信号のパワーよりも小さく、信号のパワーが最大な前記エコー推定信号を生成することを特徴とする請求項１１に記載の信号処理装置。
【請求項１３】
少なくとも１つの前記エコー推定手段は、前記信号生成手段によって生成されたエコー推定信号に対応するエコー抑圧信号を用いてエコー成分を推定することを特徴とする請求項１２に記載の信号処理装置。
【請求項１４】
前記エコー推定手段は、適応フィルタを用いて前記エコー成分を推定することを特徴とする請求項９乃至請求項１３のいずれか１項に記載の信号処理装置。
【請求項１５】
前記所定の時間間隔は、前記適応フィルタのフィルタ長以下である、または、前記フィルタ長から事前に設定されたエコー抑圧に有効なエコー長を差し引いた長さ以下であることを特徴とする請求項１４に記載の信号処理装置。
【請求項１６】
前記エコー推定手段は、前記第１の入力信号を周波数領域に変換し、その変換された第１の入力信号を参照信号として周波数領域で前記エコー成分を推定することを特徴とする請求項９乃至請求項１３のいずれか１項に記載の信号処理装置。
【請求項１７】
前記所定の時間間隔は、前記第１の入力信号を周波数領域に変換する際に用いられる窓関数の有効な窓長以下である、または、前記窓長からオーバーラップ分を差し引いた長さ以下であることを特徴とする請求項１６に記載の信号処理装置。
【請求項１８】
前記所定の時間間隔は、前記第１の入力信号の入力フレーム長の倍数であることを特徴とする請求項１５または請求項１７に記載の信号処理装置。
【請求項１９】
前記第１の入力信号は受話入力信号であり、前記第２の入力信号はマイクから収音された送話入力信号であることを特徴とする請求項１乃至請求項１８のいずれか１項に記載の信号処理装置。
【請求項２０】
第１の入力信号と、前記第１の入力信号のエコー成分が含まれた第２の入力信号とから前記エコー成分を抑圧する信号処理プログラムであって、
前記第１の入力信号と、前記第２の入力信号とを用いて前記エコー成分の遅延量を推定し、その推定された遅延量を量子化する機能と、
前記量子化された遅延量分遅らせた前記第１の信号を参照信号として前記エコー成分を抑圧する機能とを有することを特徴とするコンピュータで利用される信号処理プログラム。
【請求項２１】
第１の入力信号と、前記第１の入力信号のエコー成分が含まれた第２の入力信号とから前記エコー成分を抑圧する信号処理プログラムであって、
前記第１の入力信号を所定の時間間隔ずらした異なる遅延量分遅らせた複数個の遅延入力信号を作成し、その作成された複数個の遅延入力信号をそれぞれ参照信号として前記第２の入力信号に含まれる複数個の少なくともエコー成分を推定する機能と、
前記推定された複数個のエコー成分からエコー抑圧信号を作成し、その作成されたエコー抑圧信号によって前記エコー成分を抑圧する機能とを有することを特徴とするコンピュータで利用される信号処理プログラム。
【請求項２２】
第１の入力信号と、前記第１の入力信号のエコー成分が含まれた第２の入力信号とから前記エコー成分を抑圧する信号処理プログラムであって、
前記第１の入力信号を所定の時間間隔ずらした異なる遅延量分遅らせた複数個の遅延入力信号を作成し、その作成された複数個の遅延入力信号をそれぞれ参照信号として前記第２の入力信号に含まれる複数個の少なくともエコー成分を推定する機能と、
前記推定された複数個のエコー成分から１つのエコー推定信号を生成する機能と、
前記生成されたエコー推定信号を用いてエコー抑圧する機能とを有することを特徴とするコンピュータで利用される信号処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、信号処理装置及び信号処理プログラムに係り、音声信号の高品質化処理に関する。
【背景技術】
【０００２】
近年のインターネットの普及に伴い、インターネットプロトコル（ＩＰ）を利用したＶｏＩＰ（Voice over IP）技術を利用した通話装置が実用化されてきている。こうしたＶｏＩＰ技術による通話装置は、Ａ／Ｄ変換やＤ／Ａ変換、符号化・復号化、音響エコー抑圧処理などの信号処理をソフトウェアによって実現することが多い。
【０００３】
そして、このようなソフトウェアによって実現された通話装置では、マルチタスク処理の可能なオペレーティングシステム（ＯＳ）、つまりマルチタスクＯＳが用いられることが多い。
【０００４】
マルチタスクＯＳでは、そのＯＳが、リアルタイムＯＳであるか、非リアルタイムＯＳであるかを問わず、各々の信号処理を別個独立のタスクとして処理する。そのため、呼によって送話入力信号に含まれる受話入力信号のエコー成分の真の遅延量が異なったり、同一呼内でも真の遅延量が変化したりして、受話入力信号によるエコー成分と送話入力信号の同期の不一致（同期ずれ）が発生する。この同期ずれのために、音響エコー抑圧処理が十分な性能を発揮できずに音声信号の品質が劣化するという問題があった。
【０００５】
このような受話入力信号によるエコー成分と送話入力信号との同期ずれに対応するために、例えば、両信号の相互相関値を算出して、その相互相関値が最大となる時間を算出し、その時間の近辺についてピッチの類似度が最大となる時間を遅延量として推定する技術が知られている（例えば、特許文献１参照。）。
【０００６】
また、両信号の相互相関値を算出して、その相互相関値が最大となる時間を算出し、その時間情報についてヒストグラムを求め、ヒストグラムで出現回数最大である時間を遅延量として推定する技術が知られている（例えば、特許文献２参照。）。
【特許文献１】特開２００４−２８２７００号公報（第６〜７頁、図５Ａ，図５Ｂ）
【特許文献２】特開２００４−２９７２３６号公報（第９〜１０頁、図６〜９）
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上述した特許文献１に開示されている方法では、相互相関値を算出した後にピッチの類似度を計算するため、計算量が多く必要になる。計算量が多い場合、マルチタスクＯＳでは受話入力信号によるエコー成分と送話入力信号との同期ずれがより頻繁に発生しやすくなるという問題点があった。
【０００８】
また、相互相関値最大とピッチの類似度を用いて遅延量を推定するため、細かな推定誤差が生じるとエコー抑圧処理が誤学習したり内部状態が誤って変化したりして、エコー抑圧効果が得られなくなる問題点があった。
【０００９】
また、特許文献２に開示されている方法では、ヒストグラムから頻度最大を求めるため、計算量が多く必要になる。また、同一呼内での真の遅延量の変動が発生した場合、遅延量を推定するのに遅れが生じエコー抑圧性能が劣化する問題点があった。
【００１０】
本発明は、上記問題点を解決するためになされたもので、受話入力信号のエコー成分と送話入力信号との同期の不一致（同期ずれ）に対して、少ない計算量で、真の遅延量の変動に対して頑健で安定したエコー抑圧性能を発揮する信号処理装置及び信号処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記目的を達成するために、本発明の信号処理装置は、第１の入力信号を記憶する第１の信号記憶手段と、前記第１の入力信号のエコー成分が含まれた第２の入力信号を記憶する第２の信号記憶手段と、前記第１の信号記憶手段に記憶された前記第１の入力信号と前記第２の信号記憶手段に記憶された前記第２の入力信号を用いて前記第２の入力信号に含まれるエコー成分の遅延量を推定する遅延量推定手段と、前記第２の入力信号に含まれる少なくともエコー成分を抑圧するエコー抑圧手段とを有し、前記遅延量推定手段は、前記遅延量を所定の量子化ステップサイズで量子化し、前記エコー抑圧手段は、前記量子化されした遅延量分遅らせた前記第１の信号を前記エコー抑圧手段の参照信号としてエコー抑圧することを特徴とする。
【発明の効果】
【００１２】
本発明によれば、受話入力信号のエコー成分と送話入力信号との同期の不一致（同期ずれ）に対して、少ない計算量で、真の遅延量の変動に対して頑健に安定したエコー抑圧性能を発揮する信号処理装置及び信号処理プログラムを提供することができる。
【発明を実施するための最良の形態】
【００１３】
以下に、本発明による信号処理装置及び信号処理プログラムの実施の形態を、図面を参照して説明する。
【００１４】
（第１の実施形態）
図１は、本発明の第１の実施形態に係る信号処理装置の構成を示すブロック図である。この信号処理装置は、通信部（ＣＯＭ）１１と、エコー抑圧処理部（ＥＣＰ）１２と、Ｄ／Ａ変換器（Ｄ／Ａ）１３と、受話増幅器１４と、スピーカ１５と、マイクロホン１６と、送話増幅器１７と、Ａ／Ｄ変換器（Ａ／Ｄ）１８とからなる。
【００１５】
図２は、エコー抑圧処理部（ＥＣＰ）１２の構成を示すブロック図である。このエコー抑圧処理部（ＥＣＰ）１２は、通信部（ＣＯＭ）１１と接続される受話信号記憶部（ＲＢＵＦＦ）１２１と、Ａ／Ｄ変換器（Ａ／Ｄ）１８と接続される送話信号記憶部（ＳＢＵＦＦ）１２２と、遅延量推定部（ＴＤＥ）１２３と、遅延量量子化部（ＤＱ）１２４と、受話信号遅延処理部（ＲＤＰ）１２５と、遅延量変化検出部（ＤＣＤ）１２６と、Ａ／Ｄ変換器（Ａ／Ｄ）１８及び通信部（ＣＯＭ）１１と接続されるエコーキャンセラ部（ＥＣ）１２７とからなる。
【００１６】
図３は、エコーキャンセラ部（ＥＣ）１２７の構成を示すブロック図である。このエコーキャンセラ部（ＥＣ）１２７は、受話信号遅延処理部（ＲＤＰ）１２５と接続される適応フィルタ部（ＡＦ）１２７ａと、Ａ／Ｄ変換器（Ａ／Ｄ）１８及び通信部（ＣＯＭ）１１と接続される信号減算処理部１２７ｂと、受話信号遅延処理部（ＲＤＰ）１２５及び遅延量変化検出部（ＤＣＤ）１２６と接続される適応フィルタ制御部（ＣＮＴ）１２７ｃとからなる。
【００１７】
上記のように構成された、本発明の第１の実施形態に係る信号処理装置の各部の動作を、図１〜図６を参照して説明する。
【００１８】
通信部（ＣＯＭ）１１は、通信相手から送信された符号化されたディジタル信号である受信データを受信し、事前に決められた処理時間の単位、つまり１フレーム（Ｆサンプル）ごとに復号化する。但し、このサンプリング周波数をｆＳ［Ｈｚ］とする。そして、通信部（ＣＯＭ）１１はこの復号化されたディジタル信号を１フレームごとに受話入力信号ｘ［ｎ］＝（ｘ［ｎＦ−Ｆ＋１］，ｘ［ｎＦ−Ｆ＋２］，・・・，ｘ［ｎＦ］）として出力する。ここで、ｎはフレームの番号を示し、１以上の整数とする。
【００１９】
なお、上記の等号を用いた記述は、１フレーム分の受話入力信号ｘ［ｎ］は、そのフレームを構成するサンプルが復号化されたＦ個の信号である、ｘ［ｎＦ−Ｆ＋１］と、ｘ［ｎＦ−Ｆ＋２］と、・・・、ｘ［ｎＦ］とから構成されることを示す。後述する、送話出力信号ｓ’［ｎ］、送話入力信号ｚ［ｎ］、擬似エコー信号ｙ’［ｎ］及び残差信号ｅ［ｎ］についても、同じ記述によって構成要素を示す。ただし、これらの信号を構成する要素の個数がＦ個と限るものではなく、Ｆ個でない場合には説明する。
【００２０】
また、通信部（ＣＯＭ）１１は、エコー抑圧処理部（ＥＣＰ）１２中の信号減算処理部１２７ｂから出力された送話出力信号ｓ’［ｎ］＝（ｓ’［ｎＦ−Ｆ＋１］，ｓ’［ｎＦ−Ｆ＋２］，・・・，ｓ’［ｎＦ］）を入力とし、符号化して、送信データとして通信相手に送信する。後述するように、送話出力信号ｓ’［ｎ］は、Ａ／Ｄ変換器（Ａ／Ｄ）１８によって１フレーム（Ｆサンプル）ごとにディジタル信号に変換された信号がエコー抑圧処理部（ＥＣＰ）１２によってエコー抑圧された信号である。
【００２１】
Ｄ／Ａ変換器（Ｄ／Ａ）１３は、通信部（ＣＯＭ）１１から出力された受話入力信号ｘ［ｎ］を入力とし、アナログ信号に変換して出力する。
【００２２】
受話増幅器１４は、Ｄ／Ａ変換器（Ｄ／Ａ）１３から出力されたアナログ信号を入力とし、増幅して出力する。
【００２３】
スピーカ１５は、受話増幅器１４から出力された増幅したアナログ信号を入力とし、音響空間へ信号ｘ（ｔ）として出力する。
【００２４】
マイクロホン１６は、上記のようにしてスピーカ１５から音響空間に出力された信号ｘ（ｔ）と、送話音声信号ｓ（ｔ）とが音響結合した信号ｚ（ｔ）を収音し、アナログ信号に変換して出力する。
【００２５】
送話増幅器１７は、マイクロホン１６から出力されたこのアナログ信号を入力とし、増幅して出力する。
【００２６】
Ａ／Ｄ変換器（Ａ／Ｄ）１８は、送話増幅器１７から出力された増幅されたアナログ信号を入力とし、１フレームごとにディジタル信号に変換し、送話入力信号ｚ［ｎ］＝（ｚ［ｎＦ−Ｆ＋１］，ｚ［ｎＦ−Ｆ＋２］，・・・，ｚ［ｎＦ］）として出力する。
【００２７】
エコー抑圧処理部（ＥＣＰ）１２は、Ａ／Ｄ変換器（Ａ／Ｄ）１８から出力された送話入力信号ｚ［ｎ］と、通信部（ＣＯＭ）１１から出力された受話入力信号ｘ［ｎ］を入力とし、送話入力信号ｚ［ｎ］からエコー成分を抑圧し、そのエコー抑圧後の信号を送話出力信号ｓ’［ｎ］＝（ｓ’［ｎＦ−Ｆ＋１］，ｓ’［ｎＦ−Ｆ＋２］，・・・，ｓ’［ｎＦ］）として出力する。
【００２８】
次に、図２を参照して、エコー抑圧処理部（ＥＣＰ）１２を構成する各部の動作を説明する。
【００２９】
受話信号記憶部（ＲＢＵＦＦ）１２１は、通信部（ＣＯＭ）１１から出力された１フレームごとの受話入力信号ｘ［ｎ］を入力とし、受話入力信号ｘ［ｎ］によるエコーと送話入力信号ｚ［ｎ］との真の遅延量Ｄ＊の最大変動幅ＤＭＡＸの予想値に基づいて事前に設定されたＬＤ＋ＤＭＡＸサンプル分の受話入力信号ｘＬ［ｎ］＝（ｘ［ｎＦ−ＬＤ−ＤＭＡＸ＋１］，ｘ［ｎＦ−ＬＤ−ＤＭＡＸ＋２］，・・・，ｘ［ｎＦ］）を格納して出力する。
【００３０】
ここで、ＬＤは、後述する遅延量推定部（ＴＤＥ）１２３において真の遅延量Ｄ＊を推定するのに十分な長さの事前に設定されたサンプル数であり、後述する適応フィルタ部（ＡＦ）１２７ａの適応フィルタのフィルタ長Ｎ（サンプル数で表される）以上（Ｎ≦ＬＤ）である。
【００３１】
送話信号記憶部（ＳＢＵＦＦ）１２２は、Ａ／Ｄ変換器（Ａ／Ｄ）１８から出力された送話入力信号ｚ［ｎ］を入力とし、ＬＤサンプル分の送話入力信号ｚＬ［ｎ］＝（ｚ［ｎＦ−ＬＤ＋１］，ｚ［ｎＦ−ＬＤ＋２］，・・・，ｚ［ｎＦ］）を格納して出力する。
【００３２】
遅延量推定部（ＴＤＥ）１２３は、受話信号記憶部（ＲＢＵＦＦ）１２１から出力されたＬＤ＋ＤＭＡＸサンプル分の受話入力信号ｘＬ［ｎ］と、送話信号記憶部（ＳＢＵＦＦ）１２２から出力されたＬＤサンプル分の送話入力信号ｚＬ［ｎ］を入力とし、相互相関最大となるサンプル値Ｄを求め、推定された遅延量として出力する。具体的には、まず受話入力信号ｘＬ［ｎ］と送話入力信号ｚＬ［ｎ］の相互相関値Ｐｘｚ（ｎ，ｄ）を以下の式１のように、０≦ｄ≦ＤＭＡＸの区間でｄを１サンプルずつずらし、各ｄに対応する相互相関値Ｐｘｚ（ｎ，ｄ）を算出する。
【数１】
2008066782.tif 000003
【００３３】
ここで、相互相関値Ｐｘｚ（ｎ，ｄ）を算出する時間間隔、すなわち遅延量推定部（ＴＤＥ）１２３を動作させる時間間隔は、ＬＤ個のサンプルに対応する時間以下であることが望ましい。次に、遅延量推定部（ＴＤＥ）１２３は、以下の式２のように相互相関値Ｐｘｚ（ｎ，ｄ）が最大となるサンプル値Ｄを求め、推定された遅延量として出力する。ここで関数max{・}は引数の最大を返す関数を表す。
【数２】
2008066782.tif 000004
【００３４】
遅延量量子化部(ＤＱ)１２４は、遅延量推定部（ＴＤＥ）１２３から出力された推定された遅延量Dを入力とし、量子化ステップサイズをＭとして、量子化された遅延量ＤＯＰＴ及び量子化された遅延量ＤＯＰＴの変化量ΔＤＯＰＴを算出して出力する。ここで、変化量は、前回遅延量推定部（ＴＤＥ）１２３が遅延量Dを推定した際の値との差である。
【００３５】
具体的には、事前に設定された実際のエコー長（エコー抑圧に有効なエコー長）をLとし、量子化ステップサイズＭはＭ＝Ｎ−Ｌとして設定する。
【００３６】
図４に、後述する適応フィルタ部（ＡＦ）１２７ａの適応フィルタが参照する受話入力信号の遅延を固定したときの抑圧可能な遅延量の最大値と最小値の差を示す。抑圧可能な遅延量の最大値と最小値の差はＮ−Ｌであるため、量子化ステップサイズをＮ−Ｌにすることで、真の遅延量Ｄ＊が変動したときも抑圧できない遅延量を無くすことができる。
【００３７】
そして、遅延量量子化部(ＤＱ)１２４は、量子化された遅延量ＤＯＰＴを以下の式３のように算出する。ここで関数ｆｌｏｏｒ{・}は小数点以下を切り捨てる関数を表す。
【数３】
2008066782.tif 000005
【００３８】
あるいは、量子化された遅延量ＤＯＰＴを、１≦Ｍ≦Ｎ−Ｌを満たし、かつ真の遅延量Ｄ＊の変動を捉える幅に設定してもよい。先と同様にＮ−Ｌ以下であれば、真の遅延量Ｄ＊が変動したときも抑圧できない遅延量を無くすことができる。
【００３９】
あるいはまた、事前に相互相関最大となる推定された遅延量Ｄと真の遅延量Ｄ＊との差をＤＨとして設定しておき、このＤＨを用いて、式４のように量子化された遅延量ＤＯＰＴを算出してもよい。相互相関最大となる推定された遅延量Ｄは、インパルス応答が大きい時刻の影響を受けて、必ずしも真の遅延量Ｄ＊と一致しないため、このようにすることにより、その不一致を解消することができる。相互相関最大となる推定された遅延量Ｄが真の遅延量Ｄ＊と一致しない例を図５に示し、エコーパスのインパルス応答ｈ（ｔ）とこのときの相互相関最大となる推定された遅延量Ｄ及び真の遅延量Ｄ＊を併せて示す。
【数４】
2008066782.tif 000006
【００４０】
図６に、式４で算出した量子化された遅延量ＤＯＰＴと相互相関最大となる推定された遅延量Ｄの階段状の関数を太線で示す。鎖線の直線や点線の直線は、遅延量Ｄを量子化しない従来の方式（例えば、Y. Lu, R. Fowler and L.Thompson, “Enhancing Echo Cancellation via Estimation of Delay” IEEE Trans. Signal Process., vol.53, no.11, pp.4159-4168 , Nov. 2005.に記載されている。）を示している。こうした従来の方式に比べると、量子化ステップサイズ内では相互相関最大となる推定された遅延量Ｄが揺らいでもエコーキャンセラ部（ＥＣ）１２７で用いる量子化された遅延量ＤＯＰＴは揺らがないようにできるため、遅延時間の推定揺らぎによるエコーキャンセラ部（ＥＣ）１２７への影響を低減することができる。
【００４１】
また、変化量ΔＤＯＰＴは、１フレーム前の量子化された遅延量ＤＯＰＴと現フレームでの量子化された遅延量ＤＯＰＴとの差（現フレームでの量子化された遅延量ＤＯＰＴから１フレーム前の量子化された遅延量ＤＯＰＴを減算した差の絶対値）として算出する。
【００４２】
受話信号遅延処理部（ＲＤＰ）１２５は、受話信号記憶部（ＲＢＵＦＦ）１２１から出力されたＬＤ＋ＤＭＡＸサンプル分の受話入力信号ｘＬ［ｎ］と、遅延量量子化部(ＤＱ)１２４から出力された量子化された遅延量ＤＯＰＴを入力とし、量子化された遅延量ＤＯＰＴサンプル分遅延したＦ＋Ｎサンプル分の受話入力信号ｘＮ［ｎ］＝（ｘ［ｎＦ−ＤＯＰＴ−Ｆ−Ｎ＋１］，ｘ［ｎＦ−ＤＯＰＴ−Ｆ−Ｎ＋２］，・・・，ｘ［ｎＦ−ＤＯＰＴ］）を出力する。
【００４３】
遅延量変化検出部（ＤＣＤ）１２６は、遅延量量子化部(ＤＱ)１２４から出力された変化量ΔＤＯＰＴを入力とし、変化量ΔＤＯＰＴが０でないか否かによって、または所定の正の値を越えるか否かによって、量子化された遅延量ＤＯＰＴが変化したか否かを検出し、初期化する状態か否かの情報である制御情報ＴＤＥｓｔａｔｅ［ｎ］をフレームごとに出力する。即ち、量子化された遅延量ＤＯＰＴが変化したと検出された場合には、制御情報ＴＤＥｓｔａｔｅ［ｎ］を初期化する状態に設定して出力する。量子化された遅延量ＤＯＰＴが変化しないと検出された場合には、制御情報ＴＤＥｓｔａｔｅ［ｎ］を初期化しない状態に設定して出力する。
【００４４】
エコーキャンセラ部（ＥＣ）１２７は、Ａ／Ｄ変換器（Ａ／Ｄ）１８から出力された送話入力信号ｚ［ｎ］と、受話信号遅延処理部（ＲＤＰ）１２５から出力された遅延された受話入力信号ｘＮ［ｎ］と、遅延量変化検出部（ＤＣＤ）１２６から出力された制御情報ＴＤＥｓｔａｔｅ［ｎ］とを入力とし、送話入力信号ｚ［ｎ］からエコー成分を抑圧し、そのエコー抑圧後の信号を送話出力信号ｓ’［ｎ］として出力する。
【００４５】
次に、図３を参照して、エコーキャンセラ部（ＥＣ）１２７を構成する各部の動作を説明する。
【００４６】
適応フィルタ部（ＡＦ）１２７ａは、長さＮのフィルタ係数ｈ［ｋ，ｉ］（ｋ＝０，１，・・・，Ｆ−１）（ｉ＝０，１，・・・，Ｎ−１）がサンプルｋごとに可変のトランスバーサルフィルタ（Transversal Filter）で構成される適応フィルタである。
【００４７】
適応フィルタ部（ＡＦ）１２７ａは、受話信号遅延処理部（ＲＤＰ）１２５から出力された遅延した受話入力信号ｘＮ［ｎ］と、信号減算処理部１２７ｂから出力されたエコー抑圧後の残差信号である送話出力信号ｓ’［ｎ］と、適応フィルタ制御部（ＣＮＴ）１２７ｃから出力されたサンプルｋごとの制御情報ＥＣｓｔａｔｅ［ｋ］（ｋ＝０，１，・・・，Ｆ−１）とを入力とし、制御情報ＥＣｓｔａｔｅ［ｋ］が学習停止状態でないことを示す場合はフィルタ係数ｈ［ｋ，ｉ］を適応学習し、制御情報ＥＣｓｔａｔｅ［ｋ］が学習停止状態であることを示す場合は、適応学習を行わない。
【００４８】
また、適応フィルタ部（ＡＦ）１２７ａは、受話信号遅延処理部（ＲＤＰ）１２５から出力された遅延した受話入力信号ｘＮ［ｎ］とフィルタ係数ｈ［ｋ，ｉ］を畳み込み演算することによって擬似エコー信号ｙ’［ｎ］＝（ｙ’［ｎＦ−Ｆ＋１］，ｙ’［ｎＦ−Ｆ＋２］，・・・，ｙ’［ｎＦ］）を算出して出力する。
【００４９】
適応フィルタ部（ＡＦ）１２７ａは、フィルタ係数ｈ［ｋ，ｉ］の更新幅を制御する固定あるいは可変のステップサイズμT［ｋ］（ｋ＝０，１，・・・，Ｆ−１）を用いてサンプルｋごとに適応学習を行う。
【００５０】
なお、適応フィルタ部（ＡＦ）１２７ａは、例えばＬＭＳ（Least-Mean-Square）アルゴリズム、ＮＬＭＳ（Normalized-Least-Mean-Square）アルゴリズム、学習同定法、ＩＰＮＬＭＳ（Improved-Proportinate-NLMS）アルゴリズム、アフィン射影（ＡＰ：Affine-Projection）アルゴリズム、逐次最小二乗（ＲＬＳ：Recursive-Least-Squares）アルゴリズムなどの線形適応アルゴリズムに基づく適応フィルタで構成されても良い。
【００５１】
また、適応フィルタ部（ＡＦ）１２７ａは、勾配制限型学習同定法（Gradient-limited Normalized-Least-Mean-Square）、適応ボルテラフィルタ（Adaptive Volterra Filter）などの非線形適応アルゴリズムに基づく適応フィルタで構成されても良い。また、本実施形態では時間領域型適応フィルタの例を示しているが、サブバンド型（帯域分割型）・周波数領域型で用いる適応フィルタで構成してもよい。
【００５２】
信号減算処理部１２７ｂは、Ａ／Ｄ変換器（Ａ／Ｄ）１８から出力された送話入力信号ｚ［ｎ］と、適応フィルタ部（ＡＦ）１２７ａから出力された擬似エコー信号ｙ’［ｎ］を入力とし、送話入力信号ｚ［ｎ］から擬似エコー信号ｙ’［ｎ］をサンプルごとに減算することでエコー成分を抑圧し、そのエコー抑圧後の残差信号である送話出力信号ｓ’［ｎ］を出力する。すなわち、ｓ’［ｎ］＝（ｚ［ｎＦ−Ｆ＋１］−ｙ’［ｎＦ−Ｆ＋１］，ｚ［ｎＦ−Ｆ＋２］−ｙ’［ｎＦ−Ｆ＋２］，・・・，ｚ［ｎＦ］−ｙ’［ｎＦ］）とする。この送話出力信号ｓ’［ｎ］は、エコーキャンセラ部（ＥＣ）１２７内の各部の他、通信部（ＣＯＭ）１１にも出力される。
【００５３】
適応フィルタ制御部（ＣＮＴ）１２７ｃは、受話信号遅延処理部（ＲＤＰ）１２５から出力された遅延した受話入力信号ｘＮ［ｎ］と、遅延量変化検出部（ＤＣＤ）１２６から出力された制御情報ＴＤＥｓｔａｔｅ［ｎ］と、信号減算処理部１２７ｂから出力された残差信号である送話出力信号ｓ’［ｎ］とを入力とし、サンプルｋごとに学習停止状態であるか否かの情報である制御情報ＥＣｓｔａｔｅ［ｋ］（ｋ＝０，１，・・・，Ｆ−１）を出力する。
【００５４】
具体的には、適応フィルタ制御部（ＣＮＴ）１２７ｃは、遅延した受話入力信号ｘＮ［ｎ］のパワー特性（パワー値またはピーク値であり、これらの値をパワー特性と称する。）ＰＸ［ｋ］（ｋ＝０，１，・・・，F−１）と送話出力信号ｓ’［ｎ］のパワー特性ＰＳ［ｋ］（ｋ＝０，１，・・・，Ｆ−１）とをサンプルｋごとに算出し、ＰＳ［ｋ］＞λ［ｋ］・ＰＸ［ｋ］となる場合に学習停止状態であると判定する。そして、上記不等式が成り立たない場合、学習停止状態でないと判定する。
【００５５】
ここで、λ［ｋ］（ｋ＝０，１，・・・，Ｆ−１）はエコーパスロスの推定値であり、フィルタ係数ｈ［ｋ，ｉ］（ｉ＝０，１，・・・，Ｎ−１）を適応学習したサンプルｋごとに算出し、適応学習が進めば小さくなり、適応学習が間違っていれば大きくなる可変量である。
【００５６】
そして、エコーキャンセラ部（ＥＣ）１２７は、フィルタ係数ｈ［ｋ，ｉ］（ｉ＝０，１，・・・，Ｎ−１）、ステップサイズμT［ｋ］、エコーパスロスの推定値λ［ｋ］、制御情報ＥＣｓｔａｔｅ［ｋ］、受話入力信号のパワー特性ＰＸ［ｋ］、送話出力信号のパワー特性ＰＳ［ｋ］の値を内部状態としてエコーキャンセラ部（ＥＣ）１２７内のメモリに保持している。ここで、内部状態とは少なくとも時間に従って変化する変数の値の集合を指し、これ以降説明を省略する。
【００５７】
併せて、適応フィルタ制御部（ＣＮＴ）１２７ｃは、遅延量変化検出部（ＤＣＤ）１２６から出力された制御情報ＴＤＥｓｔａｔｅ［ｎ］が初期化する状態であることを示す場合、エコーキャンセラ部（ＥＣ）１２７の内部状態、特にエコーパスロスの推定値λ［ｋ］及びステップサイズμT［ｋ］をそのフレームｎの始めに初期化する。
【００５８】
このように、量子化された遅延量ＤＯＰＴが変化した場合にエコーパスロスの推定値λ［ｋ］を初期化することで、真の遅延量Ｄ＊の変動の影響を含めた推定された遅延量の変動時に誤って学習停止状態であると判定してしまうことを防止し、エコー抑圧性能の劣化を防ぐことができる。また、量子化された遅延量ＤＯＰＴが変化した場合にステップサイズμT［ｋ］を初期化することで、真の遅延量Ｄ＊の変動の影響を含めた推定された遅延量の変動時に適応学習の速度を速めることができ、エコー抑圧性能の劣化を防ぐことができる。
【００５９】
なお、エコーキャンセラ部（ＥＣ）１２７は、適応フィルタ制御部（ＣＮＴ）１２７ｃを備えない構成であっても良い。この場合、適応フィルタ部（ＡＦ）１２７ａは、制御情報ＥＣｓｔａｔｅ［ｋ］が学習停止状態でないことを示す場合の動作をする。
【００６０】
上記のように構成された、第１の実施形態に係る信号処理装置の処理の流れを、図７〜図９を参照して説明する。図７は、信号処理装置全体の処理の流れを示すフローチャートであり、図８は、遅延量推定部（ＴＤＥ）１２３、遅延量量子化部（ＤＱ）１２４、受話信号遅延処理部（ＲＤＰ）１２５及び遅延量変化検出部（ＤＣＤ）１２６における処理の流れを示すフローチャートであり、図９は、エコーキャンセラ部（ＥＣ）１２７における処理の流れを示すフローチャートである。
【００６１】
図７において、発呼又は着呼があると、通信部（ＣＯＭ）１１は通信リンクを確立する処理を行い、また各パラメータや各バッファの初期化などの初期設定処理を行う（ステップＳ１００１）。通信リンクが確立することにより、通信相手と双方向通話が可能な状態となり、双方向の通話が開始されると、通信部（ＣＯＭ）１１中にあり図示しないデコーダは１フレームごとに復号化され受話入力信号ｘ［ｎ］として読み込む。また、マイクロホン１６を介して送話入力信号ｚ［ｎ］が読み込まれる。また、受話信号記憶部（ＲＢＵＦＦ）１２１は受話入力信号ｘ［ｎ］を格納し、送話信号記憶部（ＳＢＵＦＦ）１２２は送話入力信号ｚ［ｎ］を格納する（ステップＳ１００２）。
【００６２】
次に、遅延量算出処理として、受話信号記憶部（ＲＢＵＦＦ）１２１から出力された受話入力信号ｘＬ［ｎ］と、送話信号記憶部（ＳＢＵＦＦ）１２２から出力された送話入力信号ｚＬ［ｎ］とから、遅延量推定部（ＴＤＥ）１２３、遅延量量子化部（ＤＱ）１２４、受話信号遅延処理部（ＲＤＰ）１２５及び遅延量変化検出部（ＤＣＤ）１２６は、相互相関に基づいて算出した推定された遅延量Dを量子化ステップサイズＭで量子化し、量子化された遅延量ＤＯＰＴ及び量子化された遅延量ＤＯＰＴの変化量ΔＤＯＰＴを算出し、制御情報ＴＤＥｓｔａｔｅ［ｎ］を出力する（ステップＳ１００３）。
【００６３】
そして、受話信号遅延処理部（ＲＤＰ）１２５は、受話入力信号ｘＬ［ｎ］と量子化された遅延量ＤＯＰＴを入力とし、量子化された遅延量ＤＯＰＴサンプル分遅延した受話入力信号ｘＮ［ｎ］を出力する（ステップＳ１００４）。これら遅延した受話入力信号ｘＮ［ｎ］と送話入力信号ｚ［ｎ］を入力として、エコーキャンセラ部（ＥＣ）１２７はエコーキャンセラ処理を行う（ステップＳ１００５）。
【００６４】
そして、ステップＳ１００２からステップＳ１００５の処理を、通話が終了するまで行う（ステップＳ１００６）。
【００６５】
図８に示す遅延量推定部（ＴＤＥ）１２３、遅延量量子化部（ＤＱ）１２４、受話信号遅延処理部（ＲＤＰ）１２５及び遅延量変化検出部（ＤＣＤ）１２６の処理は次のように行われる。まず、遅延量推定部（ＴＤＥ）１２３は、受話信号記憶部（ＲＢＵＦＦ）１２１から出力された受話入力信号ｘＬ［ｎ］と送話信号記憶部（ＳＢＵＦＦ）１２２から出力された送話入力信号ｚＬ［ｎ］を用いて、０≦ｄ≦ＤＭＡＸの区間でｄを１サンプルずつずらし、各ｄに対応する相互相関値Ｐｘｚ（ｎ，ｄ）を算出する（ステップＳ１１０１）。
【００６６】
次に、遅延量推定部（ＴＤＥ）１２３は、相互相関値Ｐｘｚ（ｎ，ｄ）が最大となるサンプル値を推定された遅延量Dとして算出する（ステップＳ１１０２）。そして、遅延量量子化部(ＤＱ)１２４は、推定された遅延量Dを量子化ステップサイズＭで量子化し、量子化された遅延量ＤＯＰＴ及び量子化された遅延量ＤＯＰＴの変化量ΔＤＯＰＴを算出する。
【００６７】
また、遅延量変化検出部（ＤＣＤ）１２６は、変化量ΔＤＯＰＴから量子化された遅延量ＤＯＰＴが変化したかどうかを検出し、初期化する状態か否かの情報である制御情報ＴＤＥｓｔａｔｅ［ｎ］を出力する（ステップＳ１１０３）。
【００６８】
図９に示すエコーキャンセラ部（ＥＣ）１２７の処理は、次のように行われる。まず、適応フィルタ部（ＡＦ）１２７ａにより受話信号遅延処理部（ＲＤＰ）１２５から出力された遅延した受話入力信号ｘＮ［ｎ］とフィルタ係数ｈ［ｋ，ｉ］を畳み込むことによって擬似エコー信号ｙ’［ｎ］を算出し、信号減算処理部１２７ｂでは、送話入力信号ｚ［ｎ］から擬似エコー信号ｙ’［ｎ］を減算し、送話出力信号ｓ’［ｎ］を算出する（ステップＳ１２０１）。
【００６９】
次に、適応フィルタ制御部（ＣＮＴ）１２７ｃは適応フィルタ制御処理として、遅延量変化検出部（ＤＣＤ）１２６から出力された制御情報ＴＤＥｓｔａｔｅ［ｎ］に従ってエコーキャンセラ部（ＥＣ）１２７の内部状態を初期化し、また学習停止状態か否かの情報である制御情報ＥＣｓｔａｔｅ［ｋ］を出力する（ステップＳ１２０２）。
【００７０】
そして、適応フィルタ部（ＡＦ）１２７ａは適応フィルタ制御部（ＣＮＴ）１２７ｃから出力された制御情報ＥＣｓｔａｔｅ［ｋ］の制御を受けながら、フィルタ係数ｈ［ｋ，ｉ］を適応学習する処理を行い（ステップＳ１２０３）、エコーキャンセラ処理が終了する。
【００７１】
このようにしてエコーキャンセラ部（ＥＣ）１２７から出力された送話出力信号ｓ’［ｎ］は、通信部（ＣＯＭ）１１中のエンコーダによって１フレームごとに符号化され、この符号化によって得られたデータは、通信部（ＣＯＭ）１１を通じて、送信データとして通信相手に送信される。
【００７２】
上記では、エコーキャンセラ部（ＥＣ）１２７は時間領域型でサンプル毎に処理する方式として動作するものとして説明した。フィルタバンクなどの帯域分割フィルタなどを用いた帯域分割型エコーキャンセラを実現してもよい。
【００７３】
受話入力信号と送話入力信号の相互相関に基づいて遅延量を推定するときには、正確な遅延量を推定することは難しく、遅延量が小さい幅で誤って推定されてしまう遅延量の推定揺らぎが発生し、エコー抑圧性能が著しく劣化する場合がある。
【００７４】
以上説明した第１の実施形態に係る信号処理装置の動作によれば、遅延量量子化部（ＤＱ）１２４が遅延量量子化処理を行うため、量子化ステップサイズより小さい遅延量の推定誤差があった場合は、受話入力信号に含まれるエコー成分の遅延量が変化しないとみなされる。そのため、エコー抑圧処理の内部状態が安定し、遅延量の推定揺らぎがエコー抑圧処理に与える影響を低減することができるので、高品質な信号を出力することが可能である。
【００７５】
また、遅延量量子化部（ＤＱ）１２４の遅延量量子化処理により、遅延量推定部（ＴＤＥ）１２３で算出する推定された遅延量Dの推定精度は量子化ステップMで十分であるため、計算量を削減することができる。
【００７６】
（第２の実施形態）
第２の実施形態に係る信号処理装置が第１の実施形態に係る信号処理装置と異なる点は、エコー抑圧処理部（ＥＣＰ）１２を有さず、エコー抑圧処理部（ＥＣＰ）２２を有する点にあり、その他の部分は同じである。そこで、同じ部分については、同じ符号を付してその説明を省略する。
【００７７】
図１０は、本発明の第２の実施形態に係る信号処理装置のエコー抑圧処理部（ＥＣＰ）２２の構成を示すブロック図である。本発明の第２の実施形態に係る信号処理装置のエコー抑圧処理部（ＥＣＰ）２２が第１の実施形態に係る信号処理装置のエコー抑圧処理部（ＥＣＰ）１２と異なる点を以下に説明する。なお、第１の実施形態に係るエコー抑圧処理部（ＥＣＰ）１２と同じ部分については、同じ符号を付してその説明を省略する。
【００７８】
このエコー抑圧処理部（ＥＣＰ）２２は、通信部（ＣＯＭ）１１と接続される受話信号記憶部（ＲＢＵＦＦ）２２１と、Ａ／Ｄ変換器（Ａ／Ｄ）１８と接続される送話信号記憶部（ＳＢＵＦＦ）１２２と、遅延量推定部（ＴＤＥ）２２３と、遅延量量子化部（ＤＱ）２２４と、受話信号遅延処理部（ＲＤＰ）２２５と、遅延量変化検出部（ＤＣＤ）１２６と、Ａ／Ｄ変換器（Ａ／Ｄ）１８及び通信部（ＣＯＭ）１１と接続されるエコーキャンセラ部（ＥＣ）２２７とからなる。
【００７９】
図１１は、エコーキャンセラ部（ＥＣ）２２７の構成を示すブロック図である。このエコーキャンセラ部（ＥＣ）２２７は、受話信号遅延処理部（ＲＤＰ）２２５と接続される周波数領域変換処理部（ＦＴ）２２７ａと、周波数領域適応フィルタ部（ＦＤＡＦ）２２７ｂと、周波数領域逆変換処理部（ＩＦＴ）２２７ｃと、Ａ／Ｄ変換器（Ａ／Ｄ）１８と接続及び通信部（ＣＯＭ）１１と接続される信号減算処理部２２７ｄと、周波数領域変換処理部（ＦＴ）２２７ｅと、遅延量変化検出部（ＤＣＤ）１２６と接続される周波数領域適応フィルタ制御部（ＦＤＣＮＴ）２２７ｆとからなる。
【００８０】
上記のように構成された、本発明の第２の実施形態に係る信号処理装置の各部の動作を、図１０及び図１１を参照して説明する。
【００８１】
受話信号記憶部（ＲＢＵＦＦ）２２１は、通信部（ＣＯＭ）１１から出力された１フレームごとの受話入力信号ｘ［ｎ］を入力とし、受話入力信号ｘ［ｎ］によるエコーと送話入力信号ｚ［ｎ］との真の遅延量Ｄ＊の最大変動幅ＤＭＡＸの予想値に基づいて事前に設定されたＬＤ＋ＤＭＡＸサンプル分の受話入力信号ｘＬ２［ｎ］＝（ｘ［ｎＦ−ＬＤ−ＤＭＡＸ＋１］，ｘ［ｎＦ−ＬＤ−ＤＭＡＸ＋２］，・・・，ｘ［ｎＦ］）を格納して出力する。
【００８２】
ここで、ＬＤは、後述する遅延量推定部（ＴＤＥ）２２３において真の遅延量Ｄ＊を推定するのに十分な長さのサンプルであり、後述するエコーキャンセラ部（ＥＣ）２２７のブロックサイズＢ（サンプル数によって表される）以上（Ｂ≦ＬＤ）であるとする。
【００８３】
遅延量推定部（ＴＤＥ）２２３は、受話信号記憶部（ＲＢＵＦＦ）２２１から出力されたＬＤ＋ＤＭＡＸサンプル分の受話入力信号ｘＬ２［ｎ］と、送話信号記憶部（ＳＢＵＦＦ）１２２から出力されたＬＤサンプル分の送話入力信号ｚＬ［ｎ］を入力とし、相互相関最大となるサンプル値Ｄを求め、推定された遅延量として出力する。具体的には、まず受話入力信号ｘＬ２［ｎ］と送話入力信号ｚＬ［ｎ］の相互相関値Ｐｘｚ（ｎ，ｄ）をＬＤサンプル間隔で以下の式５のように、０≦ｄ≦ＤＭＡＸの区間でｄを１サンプルずつずらし、各ｄに対応する相互相関値Ｐｘｚ（ｎ，ｄ）を算出する。
【数５】
2008066782.tif 000007
【００８４】
次に、以下の式６のように相互相関値Ｐｘｚ（ｎ，ｄ）が最大となるサンプル値Ｄを求め、推定された遅延量として出力する。
【数６】
2008066782.tif 000008
【００８５】
遅延量量子化部(ＤＱ)２２４は、遅延量推定部（ＴＤＥ）２２３から出力された推定された遅延量Dを入力とし、量子化ステップサイズをＭとして、量子化された遅延量ＤＯＰＴ及び量子化された遅延量ＤＯＰＴの変化量ΔＤＯＰＴを算出して出力する。
【００８６】
量子化ステップサイズＭは、エコーキャンセラ部（ＥＣ）２２７のブロックサイズＢ（＝フィルタ長Ｎ）を参照する不等式１≦Ｍ≦Ｂを満たし、かつ真の遅延量Ｄ＊の変動を捉える幅に設定する。あるいは、実際のエコー長（エコー抑圧に有効なエコー長）をLとしたとき、エコー長Ｌを事前に測定して算出しておき、量子化ステップサイズＭをＭ＝Ｂ−Ｌとして設定する。
【００８７】
そして、遅延量量子化部(ＤＱ)２２４は、量子化された遅延量ＤＯＰＴを以下の式７のように算出する。
【数７】
2008066782.tif 000009
【００８８】
また、変化量ΔＤＯＰＴは、１フレーム前の量子化された遅延量ＤＯＰＴと現フレームでの量子化された遅延量ＤＯＰＴとの差として算出する。
【００８９】
受話信号遅延処理部（ＲＤＰ）２２５は、エコーキャンセラ部（ＥＣ）２２７のブロックサイズＢに対応して、受話信号記憶部（ＲＢＵＦＦ）２２１から出力されたＬＤ＋ＤＭＡＸサンプル分の受話入力信号ｘＬ２［ｎ］と、遅延量量子化部(ＤＱ)２２４から出力された量子化された遅延量ＤＯＰＴを入力とし、量子化された遅延量ＤＯＰＴサンプル分遅延した２Ｂ（＝２×Ｂ）サンプル分の受話入力信号ｘＢ［ｎ］＝（ｘ［ｎＦ−ＤＯＰＴ−２Ｂ＋１］，ｘ［ｎＦ−ＤＯＰＴ−２Ｂ＋２］，・・・，ｘ［ｎＦ−ＤＯＰＴ］）を出力する。
【００９０】
エコーキャンセラ部（ＥＣ）２２７は、Ａ／Ｄ変換器（Ａ／Ｄ）１８から出力された送話入力信号ｚ［ｎ］と、受話信号遅延処理部（ＲＤＰ）２２５から出力された遅延した受話入力信号ｘＢ［ｎ］を入力とし、オーバーラップ保存法（Overlap-Save Method）を用いてブロック適応フィルタを高速化した周波数領域適応フィルタアルゴリズムに基づいて、送話入力信号ｚ［ｎ］からエコー成分を抑圧し、そのエコー抑圧後の信号を送話出力信号ｓ’［ｎ］＝（ｓ’［ｎＦ−Ｆ＋１］，ｓ’［ｎＦ−Ｆ＋２］，・・・，ｓ’［ｎＦ］）として出力する。
【００９１】
ここで、エコーキャンセラ部（ＥＣ）２２７は、ブロックサイズＢを後述する適応フィルタのフィルタ長Ｎと等しくし、エコーキャンセラ部（ＥＣ）２２７のオーバーラップ保存法はエコーキャンセラ部（ＥＣ）２２７のフィルタ長Ｎの２倍をＦＦＴ（Fast Fourier Transform）点数にする５０％オーバーラップである。すなわち、Ｂ＝Ｎであり、エコーキャンセラ部（ＥＣ）２２７内でＦＦＴ変換する際のＦＦＴ点数は２Ｂである。
【００９２】
次に、図１１を参照して、エコーキャンセラ部（ＥＣ）２２７を構成する各部の動作を説明する。
【００９３】
周波数領域変換処理部（ＦＴ）２２７ａは、受話信号遅延処理部（ＲＤＰ）２２５から出力された遅延した２Ｂサンプル分の受話入力信号ｘＢ［ｎ］を入力とし、２Ｂ点ＦＦＴによって周波数領域に変換して、受話入力信号の周波数スペクトルＸＦＤＡＦ［ｎ，ω］を算出して出力する。
【００９４】
周波数領域適応フィルタ部（ＦＤＡＦ）２２７ｂは、フィルタ係数ＨＦＤＡＦ［ｎ，ω］が可変のトランスバーサルフィルタで構成される周波数領域の適応フィルタである。
【００９５】
また、周波数領域適応フィルタ部（ＦＤＡＦ）２２７ｂは、周波数領域変換処理部（ＦＴ）２２７ａから出力された受話入力信号の周波数スペクトルＸＦＤＡＦ［ｎ，ω］と、周波数領域変換処理部（ＦＴ）２２７ｅから出力されたエコー抑圧後の残差信号である送話出力信号の周波数スペクトルＳ´ＦＤＡＦ［ｎ，ω］と、周波数領域適応フィルタ制御部（ＦＤＣＮＴ）２２７ｆから出力された制御情報ＥＣｓｔａｔｅ［ｎ，ω］とを入力とし、制御情報ＥＣｓｔａｔｅ［ｎ，ω］が学習停止状態でないことを示す場合はフィルタ係数ＨＦＤＡＦ［ｎ，ω］をフレームｎ及び周波数帯域ωごとに適応学習し、制御情報ＥＣｓｔａｔｅ［ｎ，ω］が学習停止状態であることを示す場合は適応学習を行わない。このようにしてフィルタ係数ＨＦＤＡＦ［ｎ，ω］を算出して、周波数領域適応フィルタ部（ＦＤＡＦ）２２７ｂ内に記憶する。
【００９６】
また、周波数領域適応フィルタ部（ＦＤＡＦ）２２７ｂは、周波数領域変換処理部（ＦＴ）２２７ａから出力された受話入力信号の周波数スペクトルＸＦＤＡＦ［ｎ，ω］と、フィルタ係数ＨＦＤＡＦ［ｎ，ω］とを用いて擬似エコー信号の周波数スペクトルＹ’ＦＤＡＦ［ｎ，ω］をＹ’ＦＤＡＦ［ｎ，ω］＝ＨＦＤＡＦ［ｎ，ω］・ＸＦＤＡＦ［ｎ，ω］として算出して出力する。
【００９７】
周波数領域適応フィルタ部（ＦＤＡＦ）２２７ｂは、フィルタ係数ＨＦＤＡＦ［ｎ，ω］の更新幅を制御する可変のステップサイズμF［ｎ，ω］を用いて、適応学習を行う。
【００９８】
なお、周波数領域適応フィルタ部（ＦＤＡＦ）２２７ｂは、例えばＬＭＳアルゴリズム、ＮＬＭＳアルゴリズム、逐次最小二乗アルゴリズムなどの線形適応アルゴリズムに基づく適応フィルタで構成されても良い。
【００９９】
また、周波数領域適応フィルタ部（ＦＤＡＦ）２２７ｂは、勾配制限型学習同定法、適応ボルテラフィルタなどの非線形適応アルゴリズムに基づく適応フィルタで構成されても良い。
【０１００】
周波数領域逆変換処理部（ＩＦＴ）２２７ｃは、周波数領域適応フィルタ部（ＦＤＡＦ）２２７ｂから出力された擬似エコー信号の周波数スペクトルＹ’ＦＤＡＦ［ｎ，ω］を入力とし、２Ｂ点のＩＦＦＴ（Inverse Fast Fourier Transform）変換を行い、最終のＦサンプル分を擬似エコー信号ｙ’ＦＤＡＦ［ｎ］＝（ｙ’ＦＤＡＦ［ｎＦ−Ｆ＋１］，ｙ’ＦＤＡＦ［ｎＦ−Ｆ＋２］，・・・，ｙ’ＦＤＡＦ［ｎＦ］）として算出して出力する。
【０１０１】
信号減算処理部２２７ｄは、Ａ／Ｄ変換器（Ａ／Ｄ）１８から出力された送話入力信号ｚ［ｎ］と、周波数領域逆変換処理部（ＩＦＴ）２２７ｃから出力された擬似エコー信号ｙ’ＦＤＡＦ［ｎ］とを入力とし、送話入力信号ｚ［ｎ］から擬似エコー信号ｙ’ＦＤＡＦ［ｎ］をサンプルごとに減算することでエコー成分を抑圧し、そのエコー抑圧後の信号を送話出力信号ｓ’［ｎ］＝（ｓ’［ｎＦ−Ｆ＋１］，ｓ’［ｎＦ−Ｆ＋２］，・・・，ｓ’［ｎＦ］）＝（ｚ［ｎＦ−Ｆ＋１］−ｙ’ＦＤＡＦ［ｎＦ−Ｆ＋１］，ｚ［ｎＦ−Ｆ＋２］−ｙ’ＦＤＡＦ［ｎＦ−Ｆ＋２］，・・・，ｚ［ｎＦ］−ｙ’ＦＤＡＦ［ｎＦ］）として出力する。
【０１０２】
周波数領域変換処理部（ＦＴ）２２７ｅは、信号減算処理部２２７ｄから出力されたエコー抑圧後の残差信号である送話出力信号ｓ’［ｎ］を入力として、先頭から２Ｂ−Ｆサンプル分のゼロ詰めを行い、最終にＦサンプル分の送話出力信号ｓ’［ｎ］を配置して、２Ｂ点のＦＦＴ変換を行うことにより周波数領域に変換して、送話出力信号の周波数スペクトルＳ’ＦＤＡＦ［ｎ，ω］を算出して出力する。
【０１０３】
周波数領域適応フィルタ制御部（ＦＤＣＮＴ）２２７ｆは、周波数領域変換処理部（ＦＴ）２２７ａから出力された受話信号の周波数スペクトルＸＦＤＡＦ［ｎ，ω］と、周波数領域変換処理部（ＦＴ）２２７ｅから出力された残差信号である送話出力信号の周波数スペクトルＳ’ＦＤＡＦ［ｎ，ω］と、遅延量変化検出部（ＤＣＤ）１２６から出力された制御情報ＴＤＥｓｔａｔｅ［ｎ］とを入力とし、フレームｎ及び周波数帯域ωごとに学習停止状態であるか否かを示す情報である制御情報ＥＣｓｔａｔｅ［ｎ，ω］を出力する。
【０１０４】
具体的には、まず周波数領域適応フィルタ制御部（ＦＤＣＮＴ）２２７ｆは、受話信号のパワースペクトル｜ＸＦＤＡＦ［ｎ，ω］｜２と送話出力信号のパワースペクトル｜Ｓ’ＦＤＡＦ［ｎ，ω］｜２とをフレームｎ及び周波数帯域ωごとに算出する。そして、不等式｜Ｓ’ＦＤＡＦ［ｎ，ω］｜２＞λＦＤＡＦ［ｎ，ω］・｜ＸＦＤＡＦ［ｎ，ω］｜２が成り立つ場合に学習停止状態であると判定する。ここでλＦＤＡＦ［ｎ，ω］は、エコーパスロスの推定値であり、適応学習が進めば小さくなり、適応学習が間違っていれば大きくなる可変量である。また、λＦＤＡＦ［ｎ，ω］は、フィルタ係数ＨＦＤＡＦ［ｎ，ω］を適応学習したフレームｎ及び周波数帯域ωごとに更新して算出する。そして、上記不等式が成り立たない場合、学習停止状態でないと判定する。
【０１０５】
そして、エコーキャンセラ部（ＥＣ）２２７は、フィルタ係数ＨＦＤＡＦ［ｎ，ω］、ステップサイズμF［ｎ，ω］、エコーパスロスの推定値λＦＤＡＦ［ｎ，ω］、制御情報ＥＣｓｔａｔｅ［ｎ，ω］、受話信号のパワースペクトル｜ＸＦＤＡＦ［ｎ，ω］｜２、送話出力信号のパワースペクトル｜Ｓ’ＦＤＡＦ［ｎ，ω］｜２の値を内部状態としてエコーキャンセラ部（ＥＣ）２２７内のメモリに保持している。
【０１０６】
併せて、周波数領域適応フィルタ制御部（ＦＤＣＮＴ）２２７ｆは、遅延量変化検出部（ＤＣＤ）１２６から出力された制御情報ＴＤＥｓｔａｔｅ［ｎ］が初期化する状態であることを示す場合、エコーキャンセラ部（ＥＣ）２２７の内部状態、特にエコーパスロスの推定値λＦＤＡＦ［ｎ，ω］及びステップサイズμF［ｎ，ω］を初期化する。
【０１０７】
このように、量子化された遅延量ＤＯＰＴが変化した場合にエコーパスロスの推定値λＦＤＡＦ［ｎ，ω］を初期化することで、真の遅延量Ｄ＊の変動の影響を含めた推定された遅延量の変動時に誤って学習停止状態と判定してしまうのを防止し、エコー抑圧性能の劣化を防ぐことができる。また、量子化された遅延量ＤＯＰＴが変化した場合にステップサイズμF［ｎ，ω］を初期化することで、真の遅延量Ｄ＊の変動の影響を含めた推定された遅延量の変動時に適応学習の速度を速めることができ、エコー抑圧性能の劣化を防ぐことができる。
【０１０８】
なお、エコーキャンセラ部（ＥＣ）２２７は、本実施形態では勾配拘束のない（gradient unconstrained）周波数領域型適応フィルタで構成されるとしたが、勾配拘束のある（gradient constrained）周波数領域型適応フィルタで構成してもよい。またエコーキャンセラ部（ＥＣ）２２７は、本実施形態ではオーバーラップ保存法による例を示しているが、オーバーラップ加算法（Overlap-Add Method）で構成してもよい。またエコーキャンセラ部（ＥＣ）２２７は、本実施形態ではＦＦＴ変換を用いる例を示しているが、ＭＤＣＴ変換を用いてもよい。
【０１０９】
上記のように構成された、第２の実施形態に係る信号処理装置の処理の流れを、図１２〜図１４を参照して説明する。図１２は信号処理装置全体の処理の流れを示すフローチャートであり、図１３は遅延量推定部（ＴＤＥ）２２３、遅延量量子化部（ＤＱ）２２４、受話信号遅延処理部（ＲＤＰ）２２５及び遅延量変化検出部（ＤＣＤ）１２６における処理の流れを示すフローチャートである。
【０１１０】
図１４はエコーキャンセラ部（ＥＣ）２２７における処理の流れを示すフローチャートである。なお、図７〜図９を参照して説明した第１の実施形態に係る信号処理装置の動作と同じ動作ステップについては、同じ符号を付してその部分の説明を省略する。
【０１１１】
図１２においてステップＳ１００２後に、遅延量算出処理として、受話信号記憶部（ＲＢＵＦＦ）２２１から出力された受話入力信号ｘＬ２［ｎ］と、送話信号記憶部（ＳＢＵＦＦ）１２２から出力された送話入力信号ｚＬ［ｎ］とから、遅延量推定部（ＴＤＥ）２２３、遅延量量子化部（ＤＱ）２２４、受話信号遅延処理部（ＲＤＰ）２２５及び遅延量変化検出部（ＤＣＤ）１２６は、相互相関に基づいて算出した推定された遅延量Dを量子化ステップサイズＭで量子化し、量子化された遅延量ＤＯＰＴ及び量子化された遅延量ＤＯＰＴの変化量ΔＤＯＰＴを算出し、制御情報ＴＤＥｓｔａｔｅ［ｎ］を出力する（ステップＳ２００３）。
【０１１２】
そして、受話信号遅延処理部（ＲＤＰ）２２５は、受話入力信号ｘＬ２［ｎ］と量子化された遅延量ＤＯＰＴを入力とし、量子化された遅延量ＤＯＰＴサンプル分遅延した受話入力信号ｘＢ［ｎ］を出力する（ステップＳ２００４）。これら遅延した受話入力信号ｘＢ［ｎ］と送話入力信号ｚ［ｎ］を入力として、エコーキャンセラ部（ＥＣ）２２７はエコーキャンセラ処理を行う（ステップＳ２００５）。
【０１１３】
そして、ステップＳ１００６の判断処理によって、ステップＳ１００２からステップＳ２００５の処理を、通話が終了するまで行う。
【０１１４】
図１３に示す遅延量推定部（ＴＤＥ）２２３、遅延量量子化部（ＤＱ）２２４、受話信号遅延処理部（ＲＤＰ）２２５及び遅延量変化検出部（ＤＣＤ）１２６の処理は次のように行われる。まず、遅延量推定部（ＴＤＥ）２２３は、受話信号記憶部（ＲＢＵＦＦ）２２１から出力された受話入力信号ｘＬ２［ｎ］と送話信号記憶部（ＳＢＵＦＦ）１２２から出力された送話入力信号ｚＬ［ｎ］を用いて、０≦ｄ≦ＤＭＡＸの区間でｄを１サンプルずつずらし、各ｄに対応する相互相関値Ｐｘｚ（ｎ，ｄ）を算出する（ステップＳ２１０１）。
【０１１５】
次に、遅延量推定部（ＴＤＥ）２２３は、相互相関値Ｐｘｚ（ｎ，ｄ）が最大となるサンプル値を推定された遅延量Dとして算出する（ステップＳ２１０２）。そして、遅延量量子化部(ＤＱ)２２４は、推定された遅延量Dを量子化ステップサイズＭで量子化し、量子化された遅延量ＤＯＰＴ及び量子化された遅延量ＤＯＰＴの変化量ΔＤＯＰＴを算出する。また、遅延量変化検出部（ＤＣＤ）１２６は、変化量ΔＤＯＰＴから量子化された遅延量ＤＯＰＴが変化したかどうかを検出し、初期化する状態か否かの情報である制御情報ＴＤＥｓｔａｔｅ［ｎ］を出力する（ステップＳ２１０３）。
【０１１６】
図１４に示すエコーキャンセラ部（ＥＣ）２２７の処理は、次のように行われる。まず、周波数領域変換処理部（ＦＴ）２２７ａは、受話信号遅延処理部（ＲＤＰ）２２５から出力された遅延した受話入力信号ｘＢ［ｎ］をＦＦＴ変換によって周波数領域に変換して、受話入力信号の周波数スペクトルＸＦＤＡＦ［ｎ，ω］を算出する。
【０１１７】
次に、周波数領域適応フィルタ部（ＦＤＡＦ）２２７ｂは、受話入力信号の周波数スペクトルＸＦＤＡＦ［ｎ，ω］とフィルタ係数ＨＦＤＡＦ［ｎ，ω］を用いて擬似エコー信号の周波数スペクトルＹ’ＦＤＡＦ［ｎ，ω］を算出する。そして、周波数領域逆変換処理部（ＩＦＴ）２２７ｃは、擬似エコー信号の周波数スペクトルＹ’ＦＤＡＦ［ｎ，ω］にＩＦＦＴ変換を行い擬似エコー信号ｙ’ＦＤＡＦ［ｎ］を算出する。そして信号減算処理部２２７ｄは、送話入力信号ｚ［ｎ］から擬似エコー信号ｙ’ＦＤＡＦ［ｎ］を減算し、送話出力信号ｓ’［ｎ］を算出する（ステップＳ２２０１）。
【０１１８】
次に、周波数領域変換処理部（ＦＴ）２２７ｅは送話出力信号ｓ’［ｎ］をＦＦＴ変換によって周波数領域に変換し、周波数領域適応フィルタ制御部（ＦＤＣＮＴ）２２７ｆは適応フィルタ制御処理として、遅延量変化検出部（ＤＣＤ）１２６から出力された制御情報ＴＤＥｓｔａｔｅ［ｎ］に従ってエコーキャンセラ部（ＥＣ）２２７の内部状態を初期化し、また学習停止状態か否かの情報である制御情報ＥＣｓｔａｔｅ［ｎ，ω］を出力する（ステップＳ２２０２）。
【０１１９】
そして、周波数領域適応フィルタ部（ＦＤＡＦ）２２７ｂは、周波数領域適応フィルタ制御部（ＦＤＣＮＴ）２２７ｆから出力された制御情報ＥＣｓｔａｔｅ［ｎ，ω］の制御を受けながら、フィルタ係数ＨＦＤＡＦ［ｎ，ω］を適応学習する処理を行い（ステップＳ２２０３）、エコーキャンセラ処理が終了する。
【０１２０】
以上説明した第２の実施形態に係る信号処理装置の動作によれば、遅延量量子化部（ＤＱ）２２４が第１の実施形態の遅延量量子化部（ＤＱ）１２４と同様に遅延量量子化処理を行うため、高品質な信号を出力することが可能である。また、遅延量推定部（ＴＤＥ）２２３の遅延量Dを推定するための計算量を削減することができる。
【０１２１】
（第３の実施形態）
第３の実施形態に係る信号処理装置が第１の実施形態に係る信号処理装置と異なる点は、エコー抑圧処理部（ＥＣＰ）１２を有さず、エコー抑圧処理部（ＥＣＰ）３２を有する点にあり、その他の部分は同じである。そこで、同じ部分については、同じ符号を付してその説明を省略する。
【０１２２】
図１５は、本発明の第３の実施形態に係る信号処理装置のエコー抑圧処理部（ＥＣＰ）３２の構成を示すブロック図である。本発明の第３の実施形態に係る信号処理装置のエコー抑圧処理部（ＥＣＰ）３２が第１の実施形態に係る信号処理装置のエコー抑圧処理部（ＥＣＰ）１２と異なる点を以下に説明する。なお、第１の実施形態に係るエコー抑圧処理部（ＥＣＰ）１２と同じ部分については、同じ符号を付してその説明を省略する。
【０１２３】
このエコー抑圧処理部（ＥＣＰ）３２は、通信部（ＣＯＭ）１１と接続される受話信号記憶部（ＲＢＵＦＦ）３２１と、Ａ／Ｄ変換器（Ａ／Ｄ）１８と接続される送話信号記憶部（ＳＢＵＦＦ）１２２と、遅延量推定部（ＴＤＥ）３２３と、遅延量量子化部（ＤＱ）３２４と、受話信号遅延処理部（ＲＤＰ）３２５と、Ａ／Ｄ変換器（Ａ／Ｄ）１８及び通信部（ＣＯＭ）１１と接続されるエコーリダクション部（ＥＲ）３２７とからなる。
【０１２４】
図１６は、エコーリダクション部（ＥＲ）３２７の構成を示すブロック図である。このエコーリダクション部（ＥＲ）３２７は、受話信号遅延処理部（ＲＤＰ）３２５と接続される周波数領域変換処理部（ＦＴ）３２７ａと、Ａ／Ｄ変換器（Ａ／Ｄ）１８と接続される周波数領域変換処理部（ＦＴ）３２７ｂと、受話パワー算出部（ＰＯＷ）３２７ｃと、送話パワー算出部（ＰＯＷ）３２７ｄと、音響結合量推定部（ＡＣＬＥ）３２７ｅと、エコー量推定部（ＥＬＥ）３２７ｆと、周波数領域制御部（ＦＣＮＴ）３２７ｇと、ゲイン格納部（ＧＴＢＬ）３２７ｈと、エコー抑圧ゲイン算出部（ＧＣＡＬ）３２７ｉと、信号抑圧部（ＳＳ）３２７ｊと、通信部（ＣＯＭ）１１と接続される周波数領域逆変換処理部（ＩＦＴ）３２７Ｌとからなる。
【０１２５】
上記のように構成された、本発明の第３の実施形態に係る信号処理装置の各部の動作を、図１５〜図１７を参照して説明する。
【０１２６】
受話信号記憶部(ＲＢＵＦＦ)３２１は、通信部（ＣＯＭ）１１から出力された１フレームごとの受話入力信号ｘ［ｎ］を入力とし、受話入力信号ｘ［ｎ］によるエコーと送話入力信号ｚ［ｎ］との真の遅延量Ｄ＊の最大変動幅ＤＭＡＸの予想値に基づいて事前に設定されたＬＤ＋ＤＭＡＸサンプル分の受話入力信号ｘＬ３［ｎ］＝（ｘ［ｎＦ−ＬＤ−ＤＭＡＸ＋１］，ｘ［ｎＦ−ＬＤ−ＤＭＡＸ＋２］，・・・，ｘ［ｎＦ］）を格納して出力する。ここでＬＤは、後述する遅延量推定部（ＴＤＥ）３２３において真の遅延量Ｄ＊を推定するのに十分な長さのサンプル数であり、周波数領域変換処理部（ＦＴ）３２７ａにおけるＦＦＴ点数ＬＦ以上（ＬＦ≦ＬＤ）であるとする。
【０１２７】
遅延量推定部（ＴＤＥ）３２３は、受話信号記憶部（ＲＢＵＦＦ）３２１から出力されたＬＤ＋ＤＭＡＸサンプル分の受話入力信号ｘＬ３［ｎ］と、送話信号記憶部（ＳＢＵＦＦ）１２２から出力されたＬＤサンプル分の送話入力信号ｚＬ［ｎ］を入力とし、相互相関最大となるサンプル値Ｄを求め、推定された遅延量として出力する。具体的には、まず受話入力信号ｘＬ３［ｎ］と送話入力信号ｚＬ［ｎ］の相互相関値Ｐｘｚ（ｎ，ｄ）をＬＤサンプル間隔で以下の式８のように、０≦ｄ≦ＤＭＡＸの区間でｄを１サンプルずつずらし、各ｄに対応する相互相関値Ｐｘｚ（ｎ，ｄ）を算出する。
【数８】
2008066782.tif 000010
【０１２８】
次に、遅延量推定部（ＴＤＥ）３２３は、以下の式９のように相互相関値Ｐｘｚ（ｎ，ｄ）が最大となるサンプル値Ｄを求め、推定された遅延量として出力する。
【数９】
2008066782.tif 000011
【０１２９】
遅延量量子化部(ＤＱ)３２４は、遅延量推定部（ＴＤＥ）３２３から出力された推定された遅延量Dとエコーリダクション部（ＥＲ）３２７を構成する周波数領域変換処理部（ＦＴ）３２７ａの窓関数ｗ［ｉ］（ｉ＝０，１，・・・，ＬＦ）を入力とし、量子化ステップサイズをＭとして、量子化された遅延量ＤＯＰＴを算出して出力する。
【０１３０】
図１７に、周波数領域変換処理部（ＦＴ）３２７ａと、周波数領域変換処理部（ＦＴ）３２７ｂで用いる窓関数ｗ［ｉ］（ｉ＝０，１，・・・，ＬＦ）の例を示す。ここで窓関数ｗ［ｉ］が０であるときを除いた長さを、有効な窓長ＬＷとする。すなわち有効な窓長ＬＷは、周波数領域変換処理部（ＦＴ）３２７ａ及び周波数領域変換処理部（ＦＴ）３２７ｂのＦＦＴ点数ＬＦと比べると、ＬＷ≦ＬＦである。
【０１３１】
遅延量量子化部(ＤＱ)３２４は、量子化ステップサイズＭを、窓関数ｗ［ｉ］のオーバーラップ分をＬＯとしたとき、１≦Ｍ≦ＬＷ−ＬＯを満たし、かつ真の遅延量Ｄ＊の変動を捉えるように設定する。そして量子化された遅延量ＤＯＰＴを以下の式１０のように算出する。
【数１０】
2008066782.tif 000012
【０１３２】
このように、窓関数ｗ［ｉ］の有効な窓長ＬＷ及びオーバーラップ分ＬＯを参照して量子化ステップサイズＭを設定することで、有効な窓長ＬＷがＦＦＴ点数ＬＦよりも小さくなってしまう非対称窓である場合や、窓関数ｗ［ｉ］が時刻によって動的に変化した場合でも、遅延量の推定揺らぎがエコー抑圧処理に与える影響を低減することができる。
【０１３３】
受話信号遅延処理部（ＲＤＰ）３２５は、受話信号記憶部（ＲＢＵＦＦ）３２１から出力されたＬＤ＋ＤＭＡＸサンプル分の受話入力信号ｘＬ３［ｎ］と、遅延量量子化部(ＤＱ)３２４から出力された補正された遅延量ＤＯＰＴを入力とし、補正された遅延量ＤＯＰＴサンプル分遅延したＦサンプル分の受話入力信号ｘＷ［ｎ］＝（ｘ［ｎＦ−ＤＯＰＴ−Ｆ＋１］，ｘ［ｎＦ−ＤＯＰＴ−Ｆ＋２］，・・・，ｘ［ｎＦ−ＤＯＰＴ］）を出力する。
【０１３４】
次に、図１６を参照して、エコーリダクション部（ＥＲ）３２７を構成する各部の動作を説明する。
【０１３５】
エコーリダクション部（ＥＲ）３２７は、受話信号遅延処理部（ＲＤＰ）３２５から出力された遅延した受話入力信号ｘＷ［ｎ］と、Ａ／Ｄ変換器（Ａ／Ｄ）１８から出力された送話入力信号ｚ［ｎ］とを入力とし、送話入力信号ｚ［ｎ］からエコー成分を抑圧し、そのエコー抑圧後の信号を送話出力信号ｓ’［ｎ］＝（ｓ’［ｎＦ−Ｆ＋１］，ｓ’［ｎＦ−Ｆ＋２］，・・・，ｓ’［ｎＦ］）として１フレームごとに出力する。更に、窓関数ｗ［ｉ］を出力する。
【０１３６】
周波数領域変換処理部（ＦＴ）３２７ａは、受話信号遅延処理部（ＲＤＰ）３２５から出力された遅延した受話入力信号ｘＷ［ｎ］を入力とし、受話入力信号の周波数スペクトルＸ［ｎ，ω］を算出して出力する。具体的には、Ｆサンプル分の受話入力信号ｘＷ［ｎ］を用い、１フレーム過去の受話入力信号ｘＷ［ｎ−１］を併せ用い、また、零詰めなどによってＬＦサンプル分の信号を生成し、これに窓関数ｗ［ｉ］（ｉ＝０，１，・・・，ＬＦ）を窓掛けして、ＬＦ点のＦＦＴ変換によって周波数領域に変換して、受話入力信号の周波数スペクトルＸ［ｎ，ω］を算出して出力する。
【０１３７】
ここで以下式１１−１、式１１−２及び式１１−３は、Ｆ＝１６０，ＬＦ＝５１２のときの窓関数ｗ［ｉ］の一例を示す。このとき、有効な窓長はＬＷ＝２×Ｆ＝３２０、オーバーラップ分ＬＯ＝Ｆ＝１６０である。
【数１１】
2008066782.tif 000013
【０１３８】
また、周波数領域変換処理部（ＦＴ）３２７ａは、周波数領域変換処理部（ＦＴ）３２７ａによって用いられる窓関数ｗ［ｉ］を出力する。
【０１３９】
周波数領域変換処理部（ＦＴ）３２７ｂは、Ａ／Ｄ変換器（Ａ／Ｄ）１８から出力された送話入力信号ｚ［ｎ］を入力とし、送話入力信号の周波数スペクトルＺ［ｎ，ω］を算出して出力する。具体的には、Ｆサンプル分の送話入力信号ｚ［ｎ］を用い、１フレーム過去の送話入力信号ｚ［ｎ−１］を併せ用い、また、零詰めなどによってＬＦサンプル分の信号を生成し、これに窓関数ｗ［ｉ］（ｉ＝０，１，・・・，ＬＦ）を窓掛けして、ＬＦ点のＦＦＴ変換によって周波数領域に変換して、送話入力信号の周波数スペクトルＺ［ｎ，ω］を算出して出力する。
【０１４０】
受話パワー算出部（ＰＯＷ）３２７ｃは、周波数領域変換処理部（ＦＴ）３２７ａから出力された受話入力信号の周波数スペクトルＸ［ｎ，ω］を入力とし、そのパワースペクトルである受話パワースペクトル｜Ｘ［ｎ，ω］｜２を算出して出力する。そして、音響結合量は通常時間的に急に変化しないので、瞬時値を用いるよりもスムージングした値を用いた方が音響結合量を精度良く推定できるため、受話パワー算出部（ＰＯＷ）３２７ｃは、例えば、式１２に示すように１フレーム前の値｜ＸＳ［ｎ−１，ω］｜２を用いてスムージングした受話パワースペクトル｜ＸＳ［ｎ，ω］｜２を算出して出力する。ただし、αＸ［ω］は、０．７５〜０．９９９程度が望ましい。
【数１２】
2008066782.tif 000014
【０１４１】
送話パワー算出部（ＰＯＷ）３２７ｄは、周波数領域変換処理部（ＦＴ）３２７ｂから出力された送話入力信号の周波数スペクトルＺ［ｎ，ω］を入力とし、そのパワースペクトルである送話パワースペクトル｜Ｚ［ｎ，ω］｜２を算出して出力する。そして、音響結合量は通常時間的に急に変化しないので、瞬時値を用いるよりもスムージングした値を用いた方が音響結合量を精度良く推定できるため、送話パワー算出部（ＰＯＷ）３２７ｄは、例えば、式１３に示すように１フレーム前の値｜ＺＳ［ｎ−１，ω］｜２を用いてスムージングした送話パワースペクトル｜ＺＳ［ｎ，ω］｜２を算出して出力する。ただし、αＺ［ω］は、０．７５〜０．９９９程度が望ましい。
【数１３】
2008066782.tif 000015
【０１４２】
音響結合量推定部（ＡＣＬＥ）３２７ｅは、受話パワー算出部（ＰＯＷ）３２７ｃから出力されたスムージングされた受話パワースペクトル｜ＸＳ［ｎ，ω］｜２と、送話パワー算出部（ＰＯＷ）３２７ｄから出力されたスムージングされた送話パワースペクトル｜ＺＳ［ｎ，ω］｜２と、周波数領域制御部（ＦＣＮＴ）３２７ｇから出力された制御情報ＥＲｓｔａｔｅ［ｎ，ω］とを入力とし、周波数帯域ω毎に音響結合量｜Ｈ［ｎ，ω］｜２を例えば、以下の式１４によって算出する。
【数１４】
2008066782.tif 000016
【０１４３】
そして、音響結合量推定部（ＡＣＬＥ）３２７ｅは、以下の式１５のように１フレーム前の値を用いてスムージングした音響結合量｜ＨＳ［ｎ，ω］｜２を算出して出力する。ただし、αＨ［ω］は、０．０３〜０．９９程度が望ましい。
【数１５】
2008066782.tif 000017
【０１４４】
ここで、通話開始初期時、例えば通話開始から５秒間程度はαＨ［ω］を大きくすることで音響結合量｜ＨＳ［ｎ，ω］｜２の更新を速めておく。このようにすることで通話開始初期時は音響結合量が初期化されているので、通話開始初期時に抑圧量が少なくなってしまうのを防止することができる。
【０１４５】
ただし、周波数領域制御部（ＦＣＮＴ）３２７ｇから出力される制御情報ＥＲｓｔａｔｅ［ｎ，ω］が学習停止状態であることを示す場合、音響結合量推定部（ＡＣＬＥ）３２７ｅは、音響結合量を更新しないで１フレーム前の過去の音響結合量｜ＨＳ［ｎ−１，ω］｜２を用いる。
【０１４６】
エコー量推定部（ＥＬＥ）３２７ｆは、受話パワー算出部（ＰＯＷ）３２７ｃから出力されたスムージングされた受話パワースペクトル｜ＸＳ［ｎ，ω］｜２と、音響結合量推定部（ＡＣＬＥ）３２７ｅから出力された音響結合量｜ＨＳ［ｎ，ω］｜２とを入力とし、送話入力信号の周波数スペクトルＺ［ｎ，ω］に含まれるエコー量｜Ｙ［ｎ，ω］｜２を以下の式１６のように周波数帯域ω毎に推定する。
【数１６】
2008066782.tif 000018
【０１４７】
そして、エコー量推定部（ＥＬＥ）３２７ｆは、瞬時のエコー量｜Ｙ［ｎ，ω］｜２を用いるよりもスムージングした値を用いた方がエコー抑圧後の信号をより自然な信号にできるため、以下の式１７のように１フレーム前の値を用いてスムージングしたエコー量｜ＹＳ［ｎ，ω］｜２を周波数帯域ω毎に算出して出力する。ただし、αY［ω］は０．７〜０．９９程度が望ましい。
【数１７】
2008066782.tif 000019
【０１４８】
周波数領域制御部（ＦＣＮＴ）３２７ｇは、受話パワー算出部（ＰＯＷ）３２７ｃから出力されたスムージングされた受話パワースペクトル｜ＸＳ［ｎ，ω］｜２と、音響結合量推定部（ＡＣＬＥ）３２７ｅから出力された１フレーム前の音響結合量｜ＨＳ［ｎ−１，ω］｜２とを入力とし、フレームｎ及び周波数帯域ωごとに学習停止状態であるか否かの情報である制御情報ＥＲｓｔａｔｅ［ｎ，ω］を出力する。
【０１４９】
具体的には、音響結合量が急激に変化する場合、即ち、｜ＨＳ［ｎ，ω］｜２＞βＨ［ω］・｜ＨＳ［ｎ−１，ω］｜２が満たされる場合、または受話入力信号が十分に大きくない場合、即ち、｜ＸＳ［ｎ，ω］｜２＜βＸ［ω］が満たされる場合には、周波数領域制御部（ＦＣＮＴ）３２７ｇは、学習停止状態であると判定する。ただし、βＨ［ω］は０．９〜３０程度が望ましい。βＸ［ω］は３０ｄＢ〜４０ｄＢ程度が望ましい。一方、上記のいずれの場合でもない場合、学習停止状態にないと判定する。
【０１５０】
ゲイン格納部（ＧＴＢＬ）３２７ｈは、事前に設定された非線形エコー抑圧量を制御するパラメータγ［ω］を格納して出力する。ただし、γ［ω］は１．０〜２．０程度が望ましい。
【０１５１】
エコー抑圧ゲイン算出部（ＧＣＡＬ）３２７ｉは、送話パワー算出部（ＰＯＷ）３２７ｄから出力されたスムージングされた送話パワースペクトル｜ＺＳ［ｎ，ω］｜２と、エコー量推定部（ＥＬＥ）３２７ｆから出力されたスムージングしたエコー量｜ＹＳ［ｎ，ω］｜２と、ゲイン格納部（ＧＴＢＬ）３２７ｈから出力されたパラメータγ［ω］とを入力とし、エコー抑圧ゲインＧ［ｎ，ω］を算出して出力する。
【０１５２】
具体的には、エコー抑圧ゲイン算出部（ＧＣＡＬ）３２７ｉは、エコー抑圧ゲインＧ［ｎ，ω］をウィナー・フィルタ（Wiener Filter）法を用いて、式１８によって算出する。
【数１８】
2008066782.tif 000020
【０１５３】
また、エコー抑圧ゲイン算出部（ＧＣＡＬ）３２７ｉは、過剰なエコー抑圧により送話音声の品質が劣化するのを防止し、背景雑音の断続的な抑圧を防止するため、送話入力信号ｚ［ｎ］の有音区間ではない区間の信号レベルを用いて周波数帯域ごとに背景雑音レベルを算出しておき、エコー抑圧ゲインＧ［ｎ，ω］が背景雑音レベルよりも抑圧しないように制御しても構わない。
【０１５４】
信号抑圧部（ＳＳ）３２７ｊは、周波数領域変換処理部（ＦＴ）３２７ｂから出力された送話入力信号の周波数スペクトルＺ［ｎ，ω］と、エコー抑圧ゲイン算出部（ＧＣＡＬ）３２７ｉから出力されたエコー抑圧ゲインＧ［ｎ，ω］とを入力として、送話入力信号の周波数スペクトルＺ［ｎ，ω］のエコーを抑圧し、以下の式１９に示すように送話出力信号のスペクトルＳ’［ｎ，ω］として出力する。
【数１９】
2008066782.tif 000021
【０１５５】
周波数領域逆変換処理部（ＩＦＴ）３２７Ｌは、信号抑圧部（ＳＳ）３２７ｊから出力された送話出力信号の周波数スペクトルＳ’［ｎ，ω］を入力とし、送話出力信号ｓ’［ｎ］＝（ｓ’［ｎＦ−Ｆ＋１］，ｓ’［ｎＦ−Ｆ＋２］，・・・，ｓ’［ｎＦ］）を算出して通信部（ＣＯＭ）１１に出力する。
【０１５６】
具体的には、周波数領域逆変換処理部（ＩＦＴ）３２７Ｌは、送話出力信号の周波数スペクトルＳ’［ｎ，ω］をＬＦ点のＩＦＦＴ変換によって時間領域に変換して、周波数領域変換処理部（ＦＴ）３２７ｂの窓関数ｗ［ｉ］（ｉ＝０，１，・・・，ＬＦ）による窓掛けに対応して、オーバーラップ分ＬＯサンプルは適宜過去のフレームの送話出力信号ｓ’［ｎ］を現在フレームの送話出力信号ｓ’［ｎ］に重ね合わせることによりオーバーラップを戻す処理を行い、送話出力信号ｓ’［ｎ］＝（ｓ’［ｎＦ−Ｆ＋１］，ｓ’［ｎＦ−Ｆ＋２］，・・・，ｓ’［ｎＦ］）を算出して出力する。
【０１５７】
上記のように構成された、第３の実施形態に係る信号処理装置の処理の流れを、図１８〜図２０を参照して説明する。図１８は、信号処理装置全体の処理の流れを示すフローチャートであり、図１９は遅延量推定部（ＴＤＥ）３２３、遅延量量子化部（ＤＱ）３２４及び受話信号遅延処理部（ＲＤＰ）３２５における処理の流れを示すフローチャートであり、図２０はエコーリダクション部（ＥＲ）３２７における処理の流れを示すフローチャートである。なお、図７〜図９を参照して説明した第１の実施形態に係る信号処理装置の動作と同じ動作ステップについては、同じ符号を付してその部分の説明を省略する。
【０１５８】
図１８において、ステップＳ１００２後に、遅延量算出処理として、受話信号記憶部（ＲＢＵＦＦ）３２１から出力された受話入力信号ｘＬ３［ｎ］と、送話信号記憶部（ＳＢＵＦＦ）１２２から出力された送話入力信号ｚＬ［ｎ］から、遅延量推定部（ＴＤＥ）３２３及び遅延量量子化部（ＤＱ）３２４及び受話信号遅延処理部（ＲＤＰ）３２５は、相互相関に基づいて算出した推定された遅延量Dを量子化ステップサイズＭで量子化し、量子化された遅延量ＤＯＰＴを算出して出力する（ステップＳ３００３）。
【０１５９】
そして、受話信号遅延処理部（ＲＤＰ）３２５は、受話入力信号ｘＬ３［ｎ］と量子化された遅延量ＤＯＰＴを入力とし、量子化された遅延量ＤＯＰＴサンプル分遅延した受話入力信号ｘＷ［ｎ］を出力する（ステップＳ３００４）。これら遅延した受話入力信号ｘＷ［ｎ］と送話入力信号ｚ［ｎ］を入力として、エコーリダクション部（ＥＲ）３２７はエコーリダクション処理を行う（ステップＳ３００５）。
【０１６０】
そして、ステップＳ１００６の判断処理によって、ステップＳ３００２からステップＳ３００５の処理を、通話が終了するまで行う。
【０１６１】
図１９に示す遅延量推定部（ＴＤＥ）３２３、遅延量量子化部（ＤＱ）３２４及び受話信号遅延処理部（ＲＤＰ）３２５の処理は次のように行われる。まず、遅延量推定部（ＴＤＥ）３２３は、受話信号記憶部（ＲＢＵＦＦ）３２１から出力された受話入力信号ｘＬ３［ｎ］と送話信号記憶部（ＳＢＵＦＦ）１２２から出力された送話入力信号ｚＬ［ｎ］を用いて、０≦ｄ≦ＤＭＡＸの区間でｄを１サンプルずつずらし、各ｄに対応する相互相関値Ｐｘｚ（ｎ，ｄ）を算出する（ステップＳ３１０１）。
【０１６２】
次に、遅延量推定部（ＴＤＥ）３２３は、相互相関値Ｐｘｚ（ｎ，ｄ）が最大となるサンプル値を推定された遅延量Dとして算出する（ステップＳ３１０２）。そして、遅延量量子化部(ＤＱ)３２４は、推定された遅延量Dを量子化ステップサイズＭで量子化し、量子化された遅延量ＤＯＰＴを算出する（ステップＳ３１０３）。
【０１６３】
図２０に示すエコーリダクション部（ＥＲ）３２７の処理は、次のように行われる。まず、周波数領域変換処理部（ＦＴ）３２７ａ、周波数領域変換処理部（ＦＴ）３２７ｂは、それぞれＦサンプル分の受話入力信号ｘＷ［ｎ］、送話入力信号ｚ［ｎ］を用い、１フレーム過去の信号を併せ用い、また零詰めによってＬＦサンプル分の信号を生成し、周波数領域に変換するためのバッファである受話フレーム、送話フレームを更新する（ステップＳ３２０１ｒ、Ｓ３２０１ｓ）。
【０１６４】
次に、周波数領域変換処理部（ＦＴ）３２７ａは受話フレームに格納されているＬＦサンプル分の信号に窓関数ｗ［ｉ］を窓掛けして、ＬＦ点のＦＦＴ変換によって周波数領域に変換して、受話入力信号の周波数スペクトルＸ［ｎ，ω］を算出する（ステップＳ３２０２ｒ）。そして、受話パワー算出部（ＰＯＷ）３２７ｃは受話パワースペクトル｜Ｘ［ｎ，ω］｜２及びスムージングされた受話パワースペクトル｜ＸＳ［ｎ，ω］｜２を算出する（ステップＳ３２０３ｒ）。
【０１６５】
同様に、周波数領域変換処理部（ＦＴ）３２７ｂは送話フレームに格納されているＬＦサンプル分の信号に窓関数ｗ［ｉ］を窓掛けして、ＬＦ点のＦＦＴ変換によって周波数領域に変換して、送話入力信号の周波数スペクトルＺ［ｎ，ω］を算出して（ステップＳ３２０２ｓ）、送話パワー算出部（ＰＯＷ）３２７ｄは送話パワースペクトル｜Ｚ［ｎ，ω］｜２及びスムージングされた送話パワースペクトル｜ＺＳ［ｎ，ω］｜２を算出する（ステップＳ３２０３ｓ）。
【０１６６】
そして、周波数領域制御部（ＦＣＮＴ）３２７ｇは制御情報ＥＲｓｔａｔｅ［ｎ，ω］を出力し、音響結合量推定部（ＡＣＬＥ）３２７ｅは、スムージングされた受話パワースペクトル｜ＸＳ［ｎ，ω］｜２とスムージングされた送話パワースペクトル｜ＺＳ［ｎ，ω］｜２と、制御情報ＥＲｓｔａｔｅ［ｎ，ω］とを入力として音響結合量｜ＨＳ［ｎ，ω］｜２を算出する（ステップＳ３２０４）。
【０１６７】
エコー量推定部（ＥＬＥ）３２７ｆは、音響結合量｜Ｈs［ｎ，ω］｜２とスムージングした受話パワースペクトル｜ＸＳ［ｎ，ω］｜２とを入力として送話入力信号に含まれるエコー量｜ＹＳ［ｎ，ω］｜２を推定する（ステップＳ３２０５）。
【０１６８】
次に、エコー抑圧ゲイン算出部（ＧＣＡＬ）３２７ｉは、送話パワー算出部（ＰＯＷ）３２７ｄから出力されたスムージングされた送話パワースペクトル｜ＺＳ［ｎ，ω］｜２と、エコー量推定部（ＥＬＥ）３２７ｆから出力されたスムージングしたエコー量｜ＹＳ［ｎ，ω］｜２と、ゲイン格納部（ＧＴＢＬ）３２７ｈから出力されたパラメータγ［ω］とを入力として、エコー抑圧ゲインＧ［ｎ，ω］を算出する（ステップＳ３２０６）。
【０１６９】
そして、信号抑圧部（ＳＳ）３２７ｊは、送話入力信号の周波数スペクトルＺ［ｎ，ω］と、エコー抑圧ゲイン算出部（ＧＣＡＬ）３２７ｉで算出されたエコー抑圧ゲインＧ［ｎ，ω］を入力として、送話入力信号の周波数スペクトルＺ［ｎ，ω］のエコー成分を抑圧する（ステップＳ３２０７）。
【０１７０】
最終的に、周波数領域逆変換処理部（ＩＦＴ）３２７Ｌは、信号抑圧部（ＳＳ）３２７ｊから出力された送話出力信号の周波数スペクトルＳ’［ｎ，ω］を周波数逆変換処理し、オーバーラップを戻す処理をすることによって送話出力信号ｓ’［ｎ］を算出して（ステップＳ３２０８）、エコーリダクション処理が終了する。
【０１７１】
上記では、エコーリダクション部（ＥＲ）３２７はＦＦＴ変換による周波数領域変換で周波数帯域毎に処理する方式として動作するものとして説明した。ＦＦＴ変換による周波数帯域をグループでまとめて周波数帯域グループ毎に処理する方式や、ＭＤＣＴ変換を用いる方式や、フィルタバンクなどの帯域分割フィルタなどの周波数領域型エコー抑圧処理を実現してもよい。
【０１７２】
以上説明した第３の実施形態に係る信号処理装置の動作によれば、遅延量量子化部（ＤＱ）３２４が第１の実施形態の遅延量量子化部（ＤＱ）１２４と同様に遅延量量子化処理を行うため、高品質な信号を出力することが可能である。また、遅延量推定部（ＴＤＥ）３２３の遅延量Dを推定するための計算量を削減することができる。
【０１７３】
さらに、遅延量量子化部（ＤＱ）３２４の遅延量量子化処理において、窓関数ｗ［ｉ］の有効な窓長ＬＷを参照して量子化ステップサイズＭを設定することで、有効な窓長ＬＷがＦＦＴ点数ＬＦよりも小さくなる非対称窓である場合や、窓関数ｗ［ｉ］が時刻によって動的に変化した場合でも、遅延量の推定揺らぎがエコー抑圧処理に与える影響を低減することができる。
【０１７４】
（第４の実施形態）
第４の実施形態に係る信号処理装置が第１の実施形態に係る信号処理装置と異なる点は、エコー抑圧処理部（ＥＣＰ）１２を有さず、エコー抑圧処理部（ＥＣＰ）４２を有する点にあり、その他の部分は同じである。そこで、同じ部分については、同じ符号を付してその説明を省略する。
【０１７５】
図２１は、本発明の第４の実施形態に係る信号処理装置のエコー抑圧処理部（ＥＣＰ）４２の構成を示すブロック図である。このエコー抑圧処理部（ＥＣＰ）４２は、受話信号記憶部（ＲＢＵＦＦ）４２１と、受話信号遅延処理部（ＲＤＰ）４２５１と、受話信号遅延処理部（ＲＤＰ）４２５２と、信号選択部（ＳＥＬ）４２８と、第１のエコーキャンセラ部（ＥＣ１）４２７１と、第２のエコーキャンセラ部（ＥＣ２）４２７２とからなる。
【０１７６】
そして、第１のエコーキャンセラ部（ＥＣ１）４２７１は、周波数領域変換処理部（ＦＴ）４２７１ａと、周波数領域適応フィルタ部（ＦＤＡＦ）４２７１ｂと、周波数領域逆変換処理部（ＩＦＴ）４２７１ｃと、信号減算処理部４２７１ｄと、周波数領域変換処理部（ＦＴ）４２７１ｅと、周波数領域適応フィルタ制御部（ＦＤＣＮＴ）４２７１ｆとからなる。
【０１７７】
同様に、第２のエコーキャンセラ部（ＥＣ２）４２７２は、周波数領域変換処理部（ＦＴ）４２７２ａと、周波数領域適応フィルタ部（ＦＤＡＦ）４２７２ｂと、周波数領域逆変換処理部（ＩＦＴ）４２７２ｃと、信号減算処理部４２７２ｄと、周波数領域変換処理部（ＦＴ）４２７２ｅと、周波数領域適応フィルタ制御部（ＦＤＣＮＴ）４２７２ｆとからなる。
【０１７８】
実際のエコー長（エコー抑圧に有効なエコー長）をL、第１のエコーキャンセラ部（ＥＣ１）４２７１及び第２のエコーキャンセラ部（ＥＣ２）４２７２のブロックサイズを共にＢとしたとき、１≦ＭＤ≦Ｂ−Ｌを満たす時間シフト幅ＭＤを事前に設定する。本実施例では、エコーキャンセラ部は第１のエコーキャンセラ部（ＥＣ１）４２７１及び第２のエコーキャンセラ部（ＥＣ２）４２７２の２つであるが、エコーキャンセラ部の数ｑと受話入力信号ｘ［ｎ］によるエコーと送話入力信号ｚ［ｎ］との真の遅延量Ｄ＊の最大変動幅ＤＭＡＸには、ＤＭＡＸ≦ｑ・ＭＤの関係が成り立つように、設定された時間シフト幅ＭＤの値によってエコーキャンセラ部の数ｑを設定する。
【０１７９】
上記のように構成された、本発明の第４の実施形態に係る信号処理装置のエコー抑圧処理部（ＥＣＰ）４２の各部の動作を、図２１を参照して説明する。
【０１８０】
受話信号記憶部（ＲＢＵＦＦ）４２１は、通信部（ＣＯＭ）１１から出力された１フレームごとの受話入力信号ｘ［ｎ］を入力とし、第１のエコーキャンセラ部（ＥＣ１）４２７１及び第２のエコーキャンセラ部（ＥＣ２）４２７２のブロックサイズＢを参照して、２Ｂ＋ＭＤサンプル分の受話入力信号ｘＢ０［ｎ］＝（ｘ［ｎＦ−２Ｂ−ＭＤ＋１］，ｘ［ｎＦ−２Ｂ−ＭＤ＋２］，・・・，ｘ［ｎＦ］）を格納して出力する。
【０１８１】
受話信号遅延処理部（ＲＤＰ）４２５１は、受話信号記憶部（ＲＢＵＦＦ）４２１から出力された２Ｂ＋ＭＤサンプル分の受話入力信号ｘＢ０［ｎ］を入力とし、２Ｂサンプル分の受話入力信号ｘＢ１［ｎ］＝（ｘ［ｎＦ−２Ｂ＋１］，ｘ［ｎＦ−２Ｂ＋２］，・・・，ｘ［ｎＦ］）を出力する。
【０１８２】
受話信号遅延処理部（ＲＤＰ）４２５２は、受話信号記憶部（ＲＢＵＦＦ）４２１から出力された２Ｂ＋ＭＤサンプル分の受話入力信号ｘＢ０［ｎ］を入力とし、ｘＢ０［ｎ］の中でもより過去の時間に相当する２Ｂサンプル分の受話入力信号ｘＢ２［ｎ］＝（ｘ［ｎＦ−２Ｂ−ＭＤ＋１］，ｘ［ｎＦ−２Ｂ−ＭＤ＋２］，・・・，ｘ［ｎＦ−ＭＤ］）を出力する。すなわち、受話信号遅延処理部（ＲＤＰ）４２５１から出力された受話入力信号ｘＢ１［ｎ］よりもＭＤサンプル分過去に相当する受話入力信号をｘＢ２［ｎ］として出力する。
【０１８３】
第１のエコーキャンセラ部（ＥＣ１）４２７１は、Ａ／Ｄ変換器（Ａ／Ｄ）１８から出力された送話入力信号ｚ［ｎ］と、受話信号遅延処理部（ＲＤＰ）４２５１から出力された受話入力信号ｘＢ１［ｎ］を入力とし、オーバーラップ保存法を用いてブロック適応フィルタを高速化した周波数領域適応フィルタアルゴリズムに基づいて、送話入力信号ｚ［ｎ］からエコー成分を抑圧し、そのエコー抑圧後の信号を残差信号ｅ１［ｎ］＝（ｅ１［ｎＦ−Ｆ＋１］，ｅ１［ｎＦ−Ｆ＋２］，・・・，ｅ１［ｎＦ］）＝（ｚ［ｎＦ−Ｆ＋１］−ｙ’ＦＤＡＦ［ｎＦ−Ｆ＋１］，ｚ［ｎＦ−Ｆ＋２］−ｙ’ＦＤＡＦ［ｎＦ−Ｆ＋２］，・・・，ｚ［ｎＦ］−ｙ’ＦＤＡＦ［ｎＦ］）として出力する。
【０１８４】
また、第２のエコーキャンセラ部（ＥＣ２）４２７２は、Ａ／Ｄ変換器（Ａ／Ｄ）１８から出力された送話入力信号ｚ［ｎ］と、受話信号遅延処理部（ＲＤＰ）４２５２から出力された受話入力信号ｘＢ２［ｎ］を入力とし、オーバーラップ保存法を用いてブロック適応フィルタを高速化した周波数領域適応フィルタアルゴリズムに基づいて、送話入力信号ｚ［ｎ］からエコー成分を抑圧し、そのエコー抑圧後の信号を残差信号ｅ２［ｎ］＝（ｅ２［ｎＦ−Ｆ＋１］，ｅ２［ｎＦ−Ｆ＋２］，・・・，ｅ２［ｎＦ］）として出力する。
【０１８５】
ここで、第１のエコーキャンセラ部（ＥＣ１）４２７１及び第２のエコーキャンセラ部（ＥＣ２）４２７２は、ブロックサイズＢをフィルタ長Ｎと等しくし、第１のエコーキャンセラ部（ＥＣ１）４２７１及び第２のエコーキャンセラ部（ＥＣ２）４２７２のオーバーラップ保存法はフィルタ長Ｎの２倍をＦＦＴ点数にする５０％オーバーラップである。すなわち、Ｂ＝Ｎであり、ＦＦＴ点数は２Ｂである。
【０１８６】
周波数領域変換処理部（ＦＴ）４２７１ａは、受話信号遅延処理部（ＲＤＰ）４２５１から出力された２Ｂサンプル分の受話入力信号ｘＢ１［ｎ］を入力とし、２Ｂ点ＦＦＴによって周波数領域に変換して、受話入力信号の周波数スペクトルＸ１［ｎ，ω］を算出して出力する。
【０１８７】
同様に、周波数領域変換処理部（ＦＴ）４２７２ａは、受話信号遅延処理部（ＲＤＰ）４２５２から出力された２Ｂサンプル分の受話入力信号ｘＢ２［ｎ］を入力とし、２Ｂ点ＦＦＴによって周波数領域に変換して、受話入力信号の周波数スペクトルＸ２［ｎ，ω］を算出して出力する。
【０１８８】
周波数領域適応フィルタ部（ＦＤＡＦ）４２７１ｂは、フィルタ係数Ｈ１［ｎ，ω］が可変のトランスバーサルフィルタで構成される周波数領域の適応フィルタである。そして、、周波数領域変換処理部（ＦＴ）４２７１ａから出力された受話入力信号の周波数スペクトルＸ１［ｎ，ω］と、周波数領域変換処理部（ＦＴ）４２７１ｅから出力されたエコー抑圧後の残差信号の周波数スペクトルＥ１［ｎ，ω］と、周波数領域適応フィルタ制御部（ＦＤＣＮＴ）４２７１ｆから出力された制御情報ＥＣ１ｓｔａｔｅ［ｎ，ω］とを入力とし、制御情報ＥＣ１ｓｔａｔｅ［ｎ，ω］が学習停止状態でないことを示す場合はフィルタ係数Ｈ１［ｎ，ω］をフレームｎ及び周波数帯域ωごとに適応学習し、制御情報ＥＣ１ｓｔａｔｅ［ｎ，ω］が学習停止状態であることを示す場合は適応学習を行わない。このようにしてフィルタ係数Ｈ１［ｎ，ω］を算出して出力する。
【０１８９】
また、周波数領域適応フィルタ部（ＦＤＡＦ）４２７１ｂは、周波数領域変換処理部（ＦＴ）４２７１ａから出力された受話入力信号の周波数スペクトルＸ１［ｎ，ω］と、フィルタ係数Ｈ１［ｎ，ω］とを用いて擬似エコー信号の周波数スペクトルＹ’１［ｎ，ω］をＹ’１［ｎ，ω］＝Ｈ１［ｎ，ω］・Ｘ１［ｎ，ω］として算出して出力する。
【０１９０】
そして、周波数領域適応フィルタ部（ＦＤＡＦ）４２７１ｂは、フィルタ係数Ｈ１［ｎ，ω］の更新幅を制御する可変のステップサイズμF１［ｎ，ω］を用いて、適応学習を行う。
【０１９１】
同様に、周波数領域適応フィルタ部（ＦＤＡＦ）４２７２ｂは、フィルタ係数Ｈ２［ｎ，ω］が可変のトランスバーサルフィルタで構成される周波数領域の適応フィルタである。そして、周波数領域変換処理部（ＦＴ）４２７２ａから出力された受話入力信号の周波数スペクトルＸ２［ｎ，ω］と、周波数領域変換処理部（ＦＴ）４２７２ｅから出力されたエコー抑圧後の残差信号の周波数スペクトルＥ２［ｎ，ω］と、周波数領域適応フィルタ制御部（ＦＤＣＮＴ）４２７２ｆから出力された制御情報ＥＣ２ｓｔａｔｅ［ｎ，ω］とを入力とし、制御情報ＥＣ２ｓｔａｔｅ［ｎ，ω］が学習停止状態でないことを示す場合はフィルタ係数Ｈ２［ｎ，ω］をフレームｎ及び周波数帯域ωごとに適応学習し、制御情報ＥＣ２ｓｔａｔｅ［ｎ，ω］が学習停止状態であることを示す場合は適応学習を行わない。このようにしてフィルタ係数Ｈ２［ｎ，ω］を算出して出力する。
【０１９２】
また、周波数領域適応フィルタ部（ＦＤＡＦ）４２７２ｂは、周波数領域変換処理部（ＦＴ）４２７２ａから出力された受話入力信号の周波数スペクトルＸ２［ｎ，ω］と、フィルタ係数Ｈ２［ｎ，ω］とを用いて擬似エコー信号の周波数スペクトルＹ’２［ｎ，ω］をＹ’２［ｎ，ω］＝Ｈ２［ｎ，ω］・Ｘ２［ｎ，ω］として算出して出力する。
【０１９３】
そして、周波数領域適応フィルタ部（ＦＤＡＦ）４２７２ｂは、フィルタ係数Ｈ２［ｎ，ω］の更新幅を制御する可変のステップサイズμF２［ｎ，ω］を用いて、適応学習を行う。
【０１９４】
周波数領域適応フィルタ部（ＦＤＡＦ）４２７１ｂ及び周波数領域適応フィルタ部（ＦＤＡＦ）４２７２ｂは、例えばＬＭＳアルゴリズム、ＮＬＭＳアルゴリズム、逐次最小二乗アルゴリズムなどの線形適応アルゴリズムに基づく適応フィルタや勾配制限型学習同定法、適応ボルテラフィルタなどの非線形適応アルゴリズムに基づく適応フィルタで構成される。
【０１９５】
周波数領域逆変換処理部（ＩＦＴ）４２７１ｃは、周波数領域適応フィルタ部（ＦＤＡＦ）４２７１ｂから出力された擬似エコー信号の周波数スペクトルＹ’１［ｎ，ω］を入力とし、２Ｂ点のＩＦＦＴ変換を行い、最終のＦサンプル分を擬似エコー信号ｙ’１［ｎ］＝（ｙ’１［ｎＦ−Ｆ＋１］，ｙ’１［ｎＦ−Ｆ＋２］，・・・，ｙ’１［ｎＦ］）として算出して出力する。
【０１９６】
同様に、周波数領域逆変換処理部（ＩＦＴ）４２７２ｃは、周波数領域適応フィルタ部（ＦＤＡＦ）４２７２ｂから出力された擬似エコー信号の周波数スペクトルＹ’２［ｎ，ω］を入力とし、２Ｂ点のＩＦＦＴ変換を行い、最終のＦサンプル分を擬似エコー信号ｙ’２［ｎ］＝（ｙ’２［ｎＦ−Ｆ＋１］，ｙ’２［ｎＦ−Ｆ＋２］，・・・，ｙ’２［ｎＦ］）として算出して出力する。
【０１９７】
信号減算処理部４２７１ｄは、Ａ／Ｄ変換器（Ａ／Ｄ）１８から出力された送話入力信号ｚ［ｎ］と、周波数領域逆変換処理部（ＩＦＴ）４２７１ｃから出力された擬似エコー信号ｙ’１［ｎ］とを入力とし、送話入力信号ｚ［ｎ］から擬似エコー信号ｙ’１［ｎ］をサンプルごとに減算することでエコー成分を抑圧し、そのエコー抑圧後の残差信号をｅ１［ｎ］＝（ｅ１［ｎＦ−Ｆ＋１］，ｅ１［ｎＦ−Ｆ＋２］，・・・，ｅ１［ｎＦ］）＝（ｚ［ｎＦ−Ｆ＋１］−ｙ’１［ｎＦ−Ｆ＋１］，ｚ［ｎＦ−Ｆ＋２］−ｙ’１［ｎＦ−Ｆ＋２］，・・・，ｚ［ｎＦ］−ｙ’１［ｎＦ］）として出力する。
【０１９８】
同様に、信号減算処理部４２７２ｄは、Ａ／Ｄ変換器（Ａ／Ｄ）１８から出力された送話入力信号ｚ［ｎ］と、周波数領域逆変換処理部（ＩＦＴ）４２７２ｃから出力された擬似エコー信号ｙ’２［ｎ］とを入力とし、そのエコー抑圧後の残差信号ｅ２［ｎ］＝（ｅ２［ｎＦ−Ｆ＋１］，ｅ２［ｎＦ−Ｆ＋２］，・・・，ｅ２［ｎＦ］）＝（ｚ［ｎＦ−Ｆ＋１］−ｙ’２［ｎＦ−Ｆ＋１］，ｚ［ｎＦ−Ｆ＋２］−ｙ’２［ｎＦ−Ｆ＋２］，・・・，ｚ［ｎＦ］−ｙ’２［ｎＦ］）を出力する。
【０１９９】
周波数領域変換処理部（ＦＴ）４２７１ｅは、信号減算処理部４２７１ｄから出力されたエコー抑圧後の残差信号ｅ１［ｎ］を入力として、先頭から２Ｂ−Ｆサンプル分のゼロ詰めを行い、最終にＦサンプル分の残差信号ｅ１［ｎ］を配置して、２Ｂ点のＦＦＴ変換を行うことにより周波数領域に変換して、送話出力信号の周波数スペクトルＥ１［ｎ，ω］を算出して出力する。
【０２００】
同様に、周波数領域変換処理部（ＦＴ）４２７２ｅは、信号減算処理部４２７２ｄから出力されたエコー抑圧後の残差信号ｅ２［ｎ］を入力として、先頭から２Ｂ−Ｆサンプル分のゼロ詰めを行い、最終にＦサンプル分のｅ２［ｎ］を配置して、２Ｂ点のＦＦＴ変換を行うことにより周波数領域に変換して、送話出力信号の周波数スペクトルＥ２［ｎ，ω］を算出して出力する。
【０２０１】
周波数領域適応フィルタ制御部（ＦＤＣＮＴ）４２７１ｆは、周波数領域変換処理部（ＦＴ）４２７１ａから出力された受話信号の周波数スペクトルＸ１［ｎ，ω］と、周波数領域変換処理部（ＦＴ）４２７１ｅから出力された残差信号の周波数スペクトルＥ１［ｎ，ω］とを入力とし、フレームｎ及び周波数帯域ωごとに学習停止状態であるか否かの情報である制御情報ＥＣ１ｓｔａｔｅ［ｎ，ω］を出力する。
【０２０２】
具体的には、まず周波数領域適応フィルタ制御部（ＦＤＣＮＴ）４２７１ｆは、受話信号のパワースペクトル｜Ｘ１［ｎ，ω］｜２と残差信号のパワースペクトル｜Ｅ１［ｎ，ω］｜２とをフレームｎ及び周波数帯域ωごとに算出する。そして、不等式｜Ｅ１［ｎ，ω］｜２＞λ１［ｎ，ω］・｜Ｘ１［ｎ，ω］｜２が成り立つ場合に学習停止状態であると判定する。一方、この不等式が成り立たない場合、学習停止状態でないと判定する。
【０２０３】
ここでλ１［ｎ，ω］は、エコーパスロスの推定値であり、適応学習が進めば小さくなり、適応学習が間違っていれば大きくなる可変量である。また、λ１［ｎ，ω］は、フィルタ係数Ｈ１［ｎ，ω］を適応学習したフレームｎ及び周波数帯域ωごとに更新して算出する。
【０２０４】
同様に、周波数領域適応フィルタ制御部（ＦＤＣＮＴ）４２７２ｆは、周波数領域変換処理部（ＦＴ）４２７２ａから出力された受話信号の周波数スペクトルＸ２［ｎ，ω］と、周波数領域変換処理部（ＦＴ）４２７２ｅから出力された残差信号の周波数スペクトルＥ２［ｎ，ω］とを入力とし、フレームｎ及び周波数帯域ωごとに学習停止状態であるか否かの情報である制御情報ＥＣ２ｓｔａｔｅ［ｎ，ω］を出力する。
【０２０５】
具体的には、まず周波数領域適応フィルタ制御部（ＦＤＣＮＴ）４２７２ｆは、受話信号のパワースペクトル｜Ｘ２［ｎ，ω］｜２と残差信号のパワースペクトル｜Ｅ２［ｎ，ω］｜２とをフレームｎ及び周波数帯域ωごとに算出する。そして、不等式｜Ｅ２［ｎ，ω］｜２＞λ２［ｎ，ω］・｜Ｘ２［ｎ，ω］｜２が成り立つ場合に学習停止状態であると判定する。一方、この不等式が成り立たない場合、学習停止状態でないと判定する。
【０２０６】
ここでλ２［ｎ，ω］は、エコーパスロスの推定値であり、適応学習が進めば小さくなり、適応学習が間違っていれば大きくなる可変量である。また、λ２［ｎ，ω］は、フィルタ係数Ｈ２［ｎ，ω］を適応学習したフレームｎ及び周波数帯域ωごとに更新して算出する。
【０２０７】
第１のエコーキャンセラ部（ＥＣ１）４２７１及び第２のエコーキャンセラ部（ＥＣ２）４２７２は、本実施形態では勾配拘束のない周波数領域型適応フィルタの例を示しているが、勾配拘束のある周波数領域型適応フィルタで構成してもよい。また本実施形態では、オーバーラップ保存法による例を示しているが、オーバーラップ加算法で構成してもよい。また本実施形態では、ＦＦＴ変換を用いる例を示しているが、ＭＤＣＴ変換を用いて構成してもよい。
【０２０８】
信号選択部（ＳＥＬ）４２８は、第１のエコーキャンセラ部（ＥＣ１）４２７１から出力された残差信号ｅ１［ｎ］＝（ｅ１［ｎＦ−Ｆ＋１］，ｅ１［ｎＦ−Ｆ＋２］，・・・，ｅ１［ｎＦ］）と、第２のエコーキャンセラ部（ＥＣ２）４２７２から出力された残差信号ｅ２［ｎ］＝（ｅ２［ｎＦ−Ｆ＋１］，ｅ２［ｎＦ−Ｆ＋２］，・・・，ｅ２［ｎＦ］）を入力として、送話出力信号ｓ’［ｎ］＝（ｓ’［ｎＦ−Ｆ＋１］，ｓ’［ｎＦ−Ｆ＋２］，・・・，ｓ’［ｎＦ］）を算出して、通信部（ＣＯＭ）１１に出力する。
【０２０９】
具体的には、信号選択部（ＳＥＬ）４２８は、フレーム単位の残差信号ｅ１［ｎ］のパワー（残差信号ｅ１［ｎ］のＦサンプル分の２乗和。）と、フレーム単位の残差信号ｅ２［ｎ］のパワー（残差信号ｅ２［ｎ］のＦサンプル分の２乗和。）とを比較し、パワーの少ない方の信号をそのまま送話出力信号ｓ’［ｎ］とする。
【０２１０】
ここで、適応アルゴリズムは、背景雑音レベルを超えたエコー抑圧ができないため、２つの残差信号は、エコー抑圧処理によって背景雑音が変動するような不自然な音にはならない。また、このように２つの残差信号をパワー比較によって選択することで、よりエコー抑圧された信号を送話出力信号として出力することができる。
【０２１１】
上記のように構成された、第４の実施形態に係る信号処理装置の処理の流れを、図２２〜図２３を参照して説明する。図２２は信号処理装置全体の処理の流れを示すフローチャートであり、図２３は第１のエコーキャンセラ部（ＥＣ１）４２７１及び第２のエコーキャンセラ部（ＥＣ２）４２７２における処理の流れを示すフローチャートである。なお、図７〜図９を参照して説明した第１の実施形態に係る信号処理装置の動作と同じ動作ステップについては、同じ符号を付してその部分の説明を省略する。
【０２１２】
図２２において、ステップＳ１００２後に、バッファ処理として、受話信号記憶部（ＲＢＵＦＦ）４２１から出力された受話入力信号ｘＢ０［ｎ］を入力とし、受話信号遅延処理部（ＲＤＰ）４２５１は受話入力信号ｘＢ１［ｎ］を出力し、受話信号遅延処理部（ＲＤＰ）４２５２は受話入力信号ｘＢ２［ｎ］を出力する（ステップＳ４００４）。
【０２１３】
そして、第１のエコーキャンセラ部（ＥＣ１）４２７１は受話入力信号ｘＢ１［ｎ］と送話入力信号ｚ［ｎ］を入力として、第２のエコーキャンセラ部（ＥＣ２）４２７２は受話入力信号ｘＢ２［ｎ］と送話入力信号ｚ［ｎ］を入力として、エコーキャンセラ処理を行う（ステップＳ４００５）。
【０２１４】
信号選択部（ＳＥＬ）４２８は、第１のエコーキャンセラ部（ＥＣ１）４２７１から出力された残差信号ｅ１［ｎ］と、第２のエコーキャンセラ部（ＥＣ２）４２７２から出力された残差信号ｅ２［ｎ］を入力として、送話出力信号ｓ’［ｎ］を算出して出力する（ステップＳ４００７）。
【０２１５】
そして、ステップＳ１００６の判断処理によって、ステップＳ１００２からステップＳ４００７の処理を、通話が終了するまで行う。
【０２１６】
図２３に示す第１のエコーキャンセラ部（ＥＣ１）４２７１及び第２のエコーキャンセラ部（ＥＣ２）４２７２の処理は、次のように行われる。
【０２１７】
まず、周波数領域変換処理部（ＦＴ）４２７１ａは、受話信号遅延処理部（ＲＤＰ）４２５１から出力された受話入力信号ｘＢ１［ｎ］をＦＦＴ変換によって周波数領域に変換して、受話入力信号の周波数スペクトルＸ１［ｎ，ω］を算出する。
【０２１８】
次に、周波数領域適応フィルタ部（ＦＤＡＦ）４２７１ｂは、受話入力信号の周波数スペクトルＸ１［ｎ，ω］とフィルタ係数Ｈ１［ｎ，ω］を用いて擬似エコー信号の周波数スペクトルＹ’１［ｎ，ω］を算出する。そして、周波数領域逆変換処理部（ＩＦＴ）４２７１ｃは、擬似エコー信号の周波数スペクトルＹ’１［ｎ，ω］にＩＦＦＴ変換を行い擬似エコー信号ｙ’１［ｎ］を算出する。そして信号減算処理部４２７１ｄは、送話入力信号ｚ［ｎ］から擬似エコー信号ｙ’１［ｎ］を減算し、残差信号ｅ１［ｎ］を算出する（ステップＳ４２０１−１）。
【０２１９】
同様にして、周波数領域変換処理部（ＦＴ）４２７２ａは、受話信号遅延処理部（ＲＤＰ）４２５２から出力された受話入力信号ｘＢ２［ｎ］をＦＦＴ変換によって周波数領域に変換して、受話入力信号の周波数スペクトルＸ２［ｎ，ω］を算出する。
【０２２０】
次に、周波数領域適応フィルタ部（ＦＤＡＦ）４２７２ｂは、受話入力信号の周波数スペクトルＸ２［ｎ，ω］とフィルタ係数Ｈ２［ｎ，ω］を用いて擬似エコー信号の周波数スペクトルＹ’２［ｎ，ω］を算出する。そして、周波数領域逆変換処理部（ＩＦＴ）４２７２ｃは、擬似エコー信号の周波数スペクトルＹ’２［ｎ，ω］にＩＦＦＴ変換を行い擬似エコー信号ｙ’２［ｎ］を算出する。そして信号減算処理部４２７２ｄは、送話入力信号ｚ［ｎ］から擬似エコー信号ｙ’２［ｎ］を減算し、残差信号ｅ２［ｎ］を算出する（ステップＳ４２０１−２）。
【０２２１】
次に、周波数領域変換処理部（ＦＴ）４２７１ｅは残差信号ｅ１［ｎ］をＦＦＴ変換によって周波数領域に変換し、周波数領域適応フィルタ制御部（ＦＤＣＮＴ）４２７１ｆは適応フィルタ制御処理として、学習停止状態であるか否かの情報である制御情報ＥＣ１ｓｔａｔｅ［ｎ，ω］を出力する（ステップＳ４２０２−１）。
【０２２２】
同様に、周波数領域変換処理部（ＦＴ）４２７２ｅは残差信号ｅ２［ｎ］をＦＦＴ変換によって周波数領域に変換し、周波数領域適応フィルタ制御部（ＦＤＣＮＴ）４２７２ｆは適応フィルタ制御処理として、学習停止状態であるか否かの情報である制御情報ＥＣ２ｓｔａｔｅ［ｎ，ω］を出力する（ステップＳ４２０２−２）。
【０２２３】
そして、周波数領域適応フィルタ部（ＦＤＡＦ）４２７１ｂは、周波数領域適応フィルタ制御部（ＦＤＣＮＴ）４２７１ｆから出力された制御情報ＥＣ１ｓｔａｔｅ［ｎ，ω］の制御を受けながら、フィルタ係数Ｈ１［ｎ，ω］を適応学習する処理を行う（ステップＳ４２０３−１）。
【０２２４】
同様に、周波数領域適応フィルタ部（ＦＤＡＦ）４２７２ｂは、周波数領域適応フィルタ制御部（ＦＤＣＮＴ）４２７２ｆから出力された制御情報ＥＣ２ｓｔａｔｅ［ｎ，ω］の制御を受けながら、フィルタ係数Ｈ２［ｎ，ω］を適応学習する処理を行い（ステップＳ４２０３−２）、エコーキャンセラ処理が終了する。
【０２２５】
上記では、エコーキャンセラ部は第１のエコーキャンセラ部（ＥＣ１）４２７１及び第２のエコーキャンセラ部（ＥＣ２）４２７２の２つであるが、エコーキャンセラ部の数ｑをｑ＞２とした場合も、上記と同様に構成され動作する。
【０２２６】
上記では、第１のエコーキャンセラ部（ＥＣ１）４２７１及び第２のエコーキャンセラ部（ＥＣ２）４２７２は、ＦＦＴ変換を用いたブロック処理適応フィルタを高速処理する方式としての勾配拘束のない周波数領域型適応フィルタの例を示しているが、勾配拘束のある周波数領域型適応フィルタで構成してもよい。
【０２２７】
また、第１のエコーキャンセラ部（ＥＣ１）４２７１及び第２のエコーキャンセラ部（ＥＣ２）４２７２は、本実施形態ではＦＦＴ変換を用いたオーバーラップ保存法による例を示しているが、オーバーラップ加算法で構成したりＭＤＣＴ変換を用いたりしてもよい。
【０２２８】
さらに、第１のエコーキャンセラ部（ＥＣ１）４２７１及び第２のエコーキャンセラ部（ＥＣ２）４２７２は、本実施例と同様に、これらのフィルタ長をＮ、実際のエコー長（エコー抑圧に有効なエコー長）をLとしたときに、受話信号遅延処理部（ＲＤＰ）４２５１から出力される受話入力信号よりも、１≦ＭＤ≦Ｎ−Ｌを満たす時間シフト幅ＭＤサンプル分過去に相当する受話入力信号を受話信号遅延処理部（ＲＤＰ）４２５２から出力することで、時間領域型のサンプル処理適応フィルタで構成してもよい。
【０２２９】
以上説明した第４の実施形態に係る信号処理装置の動作により、第１のエコーキャンセラ部（ＥＣ１）４２７１及び第２のエコーキャンセラ部（ＥＣ２）４２７２に異なる遅延量となる受話入力信号を入力して、エコー抑圧処理し、そのエコー抑圧処理結果を信号選択部（ＳＥＬ）４２８で所定の選択基準に従って選択することにより、遅延量の推定を行わないため、遅延量の推定精度にエコー抑圧処理性能を依存させなくすることができ、真の遅延量Ｄ＊の変動時においても安定したエコー抑圧処理性能が得られ、真の遅延量Ｄ＊の変動に対して頑健にすることができる。
【０２３０】
なお、上記の説明は、エコー抑圧処理部（ＥＣＰ）４２は、２つのエコーキャンセラ部、即ち、第１のエコーキャンセラ部（ＥＣ１）４２７１及び第２のエコーキャンセラ部（ＥＣ２）４２７２を有する場合を主にしたが、３つ以上のエコーキャンセラ部を有しても良い。
【０２３１】
３つ以上のエコーキャンセラ部を有する場合、それぞれのエコーキャンセラ部の入力は、過去に異なる時間さかのぼった受話入力信号であって、例えば、エコー抑圧処理部（ＥＣＰ）４２がそれぞれのエコーキャンセラ部に対応して有する受話信号遅延処理部から出力される。また、信号選択部（ＳＥＬ）４２８は、それぞれのエコーキャンセラ部から出力された残差信号のパワーを比較し、最もパワーが少ない残差信号を送話出力信号ｓ’［ｎ］とする。
【０２３２】
複数のエコーキャンセラ部を有し、それぞれのエコーキャンセラ部の入力を過去に異なる時間さかのぼった受話入力信号とすることで、いずれかのエコーキャンセラ部に真の遅延量Ｄ＊に相当する受話入力信号を入力することができるため、真の遅延量Ｄ＊の変動時においても安定したエコー抑圧処理性能が得られ、真の遅延量Ｄ＊の変動に対して頑健にすることができる。
【０２３３】
（第４の実施形態の変形例）
本発明の第４の実施形態の変形例に係る信号処理装置が第４の実施形態に係る信号処理装置と異なる点は、エコー抑圧処理部（ＥＣＰ）４２に代えて、エコー抑圧処理部（ＥＣＰ）４２２を有する点である。図２４は、本発明の第４の実施形態の変形例に係る信号処理装置のエコー抑圧処理部（ＥＣＰ）４２２の構成を示すブロック図である。
【０２３４】
エコー抑圧処理部（ＥＣＰ）４２２がエコー抑圧処理部（ＥＣＰ）４２と異なる点は、第１のエコーキャンセラ部（ＥＣ１）４２７１の周波数領域変換処理部（ＦＴ）４２７１ａ及び第２のエコーキャンセラ部（ＥＣ２）４２７２の周波数領域変換処理部（ＦＴ）４２７２ａに代えて周波数領域変換処理部（ＦＴ）４２７ａを有し、また、受話信号遅延処理部（ＲＤＰ）４２５２を有しない点にある。
【０２３５】
更に、周波数領域変換処理部（ＦＴ）４２７ａの出力を第１のエコーキャンセラ部（ＥＣ１）４２７１の周波数領域適応フィルタ部（ＦＤＡＦ）４２７１ｂ及び周波数領域適応フィルタ制御部（ＦＤＣＮＴ）４２７１ｆ、更に、第２のエコーキャンセラ部（ＥＣ２）４２７２の周波数領域適応フィルタ部（ＦＤＡＦ）４２７２ｂ及び周波数領域適応フィルタ制御部（ＦＤＣＮＴ）４２７２ｆに入力させる点にあり、その他の部分は同じである。
【０２３６】
そこで、このエコー抑圧処理部（ＥＣＰ）４２２で、エコー抑圧処理部（ＥＣＰ）４２と同じ部分については、同じ符号を付してその説明を省略する。
【０２３７】
周波数領域変換処理部（ＦＴ）４２７ａは、受話信号遅延処理部（ＲＤＰ）４２５１から出力された２Ｂサンプル分の受話入力信号ｘＢ１［ｎ］＝（ｘ［ｎＦ−２Ｂ＋１］，ｘ［ｎＦ−２Ｂ＋２］，・・・，ｘ［ｎＦ］）を入力とし、２Ｂ点ＦＦＴ変換によって周波数領域に変換して、受話入力信号の周波数スペクトルＸ１［ｎ，ω］を算出して、第１のエコーキャンセラ部（ＥＣ１）４２７１の周波数領域適応フィルタ部（ＦＤＡＦ）４２７１ｂ及び周波数領域適応フィルタ制御部（ＦＤＣＮＴ）４２７１ｆへ出力する。
【０２３８】
また、周波数領域変換処理部（ＦＴ）４２７ａは、１フレーム前の受話入力信号の周波数スペクトルＸ１［ｎ−１，ω］をＸ２［ｎ，ω］として、第２のエコーキャンセラ部（ＥＣ２）４２７２の周波数領域適応フィルタ部（ＦＤＡＦ）４２７２ｂ及び周波数領域適応フィルタ制御部（ＦＤＣＮＴ）４２７２ｆへ出力する。
【０２３９】
ここで、周波数領域変換処理部（ＦＴ）４２７ａは、受話入力信号の周波数スペクトルＸ１［ｎ，ω］と１フレーム前の受話入力信号の周波数スペクトルＸ１［ｎ−１，ω］を出力することで、１フレーム分だけ異なる遅延量となる受話入力信号を第１のエコーキャンセラ部（ＥＣ１）４２７１及び第２のエコーキャンセラ部（ＥＣ２）４２７２に出力することができる。
【０２４０】
周波数領域変換処理部（ＦＴ）４２７ａは、本実施形態では受話入力信号の周波数スペクトルＸ１［ｎ，ω］と１フレーム前の受話入力信号の周波数スペクトルＸ１［ｎ−１，ω］を出力する例を示した。実際のエコー長（エコー抑圧に有効なエコー長）をLとしたとき、２つの受話入力信号の時間シフト幅ＭＤは１≦ＭＤ≦Ｂ−Ｌを満たすＭＤサンプルずれていればよく、ここでは１フレーム分の遅延量すなわちＭＤ＝Ｆに相当する例を示した。
【０２４１】
２つの受話入力信号の時間シフト幅ＭＤは１≦ＭＤ≦Ｂ−Ｌを満たせばＦの倍数でも構わないため、その場合において周波数領域変換処理部（ＦＴ）４２７ａは数フレーム前の受話入力信号の周波数スペクトルを出力しても構わない。
【０２４２】
以上説明した第４の実施形態の変形例に係る信号処理装置の動作により、第４の実施形態と比べると、エコー抑圧処理部（ＥＣＰ）４２に代えてエコー抑圧処理部（ＥＣＰ）４２２は周波数領域変換処理部（ＦＴ）４２７２ａを有しないため、計算量を削減することができる。
【０２４３】
なお、エコー抑圧処理部（ＥＣＰ）４２２は、２つのエコーキャンセラ部、即ち、第１のエコーキャンセラ部（ＥＣ１）４２７１及び第２のエコーキャンセラ部（ＥＣ２）４２７２を有するとしたが、３つ以上のエコーキャンセラ部を有しても良い。
【０２４４】
３つ以上のエコーキャンセラ部を有する場合、それぞれのエコーキャンセラ部の入力は、過去に１フレームずつさかのぼった受話入力信号の周波数スペクトルであって、例えば、周波数領域変換処理部（ＦＴ）４２７ａから出力される。また、信号選択部（ＳＥＬ）４２８の動作は、既に説明した通りである。
【０２４５】
複数のエコーキャンセラ部を有し、それぞれのエコーキャンセラ部の入力を過去に異なる時間さかのぼった受話入力信号とすることで、いずれかのエコーキャンセラ部に真の遅延量Ｄ＊に相当する受話入力信号を入力することができるため、真の遅延量Ｄ＊の変動時においても安定したエコー抑圧処理性能が得られ、真の遅延量Ｄ＊の変動に対して頑健にすることができる。
【０２４６】
（第５の実施形態）
第５の実施形態に係る信号処理装置が第１の実施形態に係る信号処理装置と異なる点は、エコー抑圧処理部（ＥＣＰ）１２を有さず、エコー抑圧処理部（ＥＣＰ）５２を有する点にあり、その他の部分は同じである。そこで、同じ部分については、同じ符号を付してその説明を省略する。
【０２４７】
図２５は、本発明の第５の実施形態に係る信号処理装置のエコー抑圧処理部（ＥＣＰ）５２の構成を示すブロック図である。このエコー抑圧処理部（ＥＣＰ）５２は、通信部（ＣＯＭ）１１と接続される受話信号記憶部（ＲＢＵＦＦ）５２１と、受話信号遅延処理部（ＲＤＰ）５２５１と、受話信号遅延処理部（ＲＤＰ）５２５２と、第１のエコーリダクション部（ＥＲ１）５２７１と、第２のエコーリダクション部（ＥＲ２）５２７２と、Ａ／Ｄ変換器（Ａ／Ｄ）１８と接続される周波数領域変換処理部（ＦＴ）５２７ｂと、送話パワー算出部（ＰＯＷ）５２７ｄと、通信部（ＣＯＭ）１１と接続される周波数領域逆変換処理部（ＩＦＴ）５２７Ｌと、信号選択部（ＳＥＬ）５２８と、雑音推定部（ＮＥ）５２９とからなる。
【０２４８】
図２６は、第Ｑのエコーリダクション部（ＥＲＱ）５２７Ｑ（ここで、Ｑは、１または２。）の構成を示すブロック図である。第Ｑのエコーリダクション部（ＥＲＱ）５２７Ｑは、受話信号遅延処理部（ＲＤＰ）５２５Ｑと接続される周波数領域変換処理部（ＦＴ）５２７Ｑａと、受話パワー算出部（ＰＯＷ）５２７Ｑｃと、送話パワー算出部（ＰＯＷ）５２７ｄと接続される音響結合量推定部（ＡＣＬＥ）５２７Ｑｅと、エコー量推定部（ＥＬＥ）５２７Ｑｆと、周波数領域制御部（ＦＣＮＴ）５２７Ｑｇと、ゲイン格納部（ＧＴＢＬ）５２７Ｑｈと、送話パワー算出部（ＰＯＷ）５２７ｄと接続されるエコー抑圧ゲイン算出部（ＧＣＡＬ）５２７Ｑｉと、信号選択部（ＳＥＬ）５２８と接続される信号抑圧部（ＳＳ）５２７Ｑｊとからなる。
【０２４９】
周波数領域変換処理部（ＦＴ）５２７ｂと、第Ｑのエコーリダクション部（ＥＲＱ）５２７Ｑの周波数領域変換処理部（ＦＴ）５２７Ｑａ（ここで、Ｑは、１または２。）で用いる窓関数ｗ［ｉ］（ｉ＝０，１，・・・，ＬＦ）は、図１７に示した第３の実施形態に係る周波数領域変換処理部（ＦＴ）３２７ａと、周波数領域変換処理部（ＦＴ）３２７ｂで用いられる窓関数と同様である。窓関数ｗ［ｉ］の有効な窓長をＬＷ（窓関数ｗ［ｉ］が０であるときを除いた長さ）、窓関数ｗ［ｉ］のオーバーラップ分をＬＯとしたとき、１≦ＭＤ≦ＬＷ−ＬＯを満たす時間シフト幅ＭＤを事前に設定する。
【０２５０】
本実施例では、エコーリダクション部は第１のエコーリダクション部（ＥＲ１）５２７１及び第２のエコーリダクション部（ＥＲ２）５２７２の２つであるが、エコーリダクション部の数ｑと受話入力信号ｘ［ｎ］によるエコーと送話入力信号ｚ［ｎ］との真の遅延量Ｄ＊の最大変動幅ＤＭＡＸには、ＤＭＡＸ≦ｑ・ＭＤの関係が成り立つように、設定された時間シフト幅ＭＤの値によってエコーリダクション部の数ｑを設定する。
【０２５１】
上記のように構成された、本発明の第５の実施形態に係る信号処理装置のエコー抑圧処理部（ＥＣＰ）５２の各部の動作を、図２５及び図２６を参照して説明する。
【０２５２】
受話信号記憶部（ＲＢＵＦＦ）５２１は、通信部（ＣＯＭ）１１から出力された１フレームごとの受話入力信号ｘ［ｎ］を入力とし、第１のエコーリダクション部（ＥＲ１）５２７１及び第２のエコーリダクション部（ＥＲ２）５２７２の窓関数ｗ［ｉ］の有効な窓長ＬＷを参照して、ＬＷ＋ＭＤサンプル分の受話入力信号ｘＷ０［ｎ］＝（ｘ［ｎＦ−ＬＷ−ＭＤ＋１］，ｘ［ｎＦ−ＬＷ−ＭＤ＋２］，・・・，ｘ［ｎＦ］）を格納して出力する。
【０２５３】
受話信号遅延処理部（ＲＤＰ）５２５１は、受話信号記憶部（ＲＢＵＦＦ）５２１から出力されたＬＷ＋ＭＤサンプル分の受話入力信号ｘＷ０［ｎ］を入力とし、ＬＷサンプル分の受話入力信号ｘＷ１［ｎ］＝（ｘ［ｎＦ−ＬＷ＋１］，ｘ［ｎＦ−ＬＷ＋２］，・・・，ｘ［ｎＦ］）を出力する。
【０２５４】
受話信号遅延処理部（ＲＤＰ）５２５２は、受話信号記憶部（ＲＢＵＦＦ）５２１から出力されたＬＷ＋ＭＤサンプル分の受話入力信号ｘＷ０［ｎ］を入力とし、ｘＷ０［ｎ］の中でもより過去の時間に相当するＬＷサンプル分の受話入力信号ｘＷ２［ｎ］＝（ｘ［ｎＦ−ＬＷ−ＭＤ＋１］，ｘ［ｎＦ−ＬＷ−ＭＤ＋２］，・・・，ｘ［ｎＦ−ＭＤ］）を出力する。すなわち、受話信号遅延処理部（ＲＤＰ）５２５１から出力された受話入力信号ｘＷ１［ｎ］よりもＭＤサンプル分過去に相当する受話入力信号をｘＷ２［ｎ］として出力する。
【０２５５】
周波数領域変換処理部（ＦＴ）５２７ｂは、Ａ／Ｄ変換器（Ａ／Ｄ）１８から出力された送話入力信号ｚ［ｎ］を入力とし、送話入力信号の周波数スペクトルＺ［ｎ，ω］を算出して出力する。具体的には、ＬＷサンプル分の送話入力信号ｚ［ｎ］を用い、また、１フレーム過去の送話入力信号ｚ［ｎ−１］を併せ用い、零詰めなどによりＬＦサンプル分の信号を生成し、これに窓関数ｗ［ｉ］（ｉ＝０，１，・・・，ＬＦ）を窓掛けして、ＬＦ点のＦＦＴ変換によって周波数領域に変換して、送話入力信号の周波数スペクトルＺ［ｎ，ω］を算出して出力する。
【０２５６】
送話パワー算出部（ＰＯＷ）５２７ｄは、周波数領域変換処理部（ＦＴ）５２７ｂから出力された送話入力信号の周波数スペクトルＺ［ｎ，ω］を入力とし、そのパワースペクトルである送話パワースペクトル｜Ｚ［ｎ，ω］｜２を算出する。そして、音響結合量は通常時間的に急に変化しないので、瞬時値を用いるよりもスムージングした値を用いた方が音響結合量を精度良く推定できるため、送話パワー算出部（ＰＯＷ）５２７ｄは、例えば、式２０に示すように１フレーム前の値｜ＺＳ［ｎ−１，ω］｜２を用いてスムージングした送話パワースペクトル｜ＺＳ［ｎ，ω］｜２を算出して出力する。ただし、αＺ［ω］は、０．７５〜０．９９９程度が望ましい。
【数２０】
2008066782.tif 000022
【０２５７】
第１のエコーリダクション部（ＥＲ１）５２７１は、受話信号遅延処理部（ＲＤＰ）５２５１から出力された受話入力信号ｘＷ１［ｎ］と、Ａ／Ｄ変換器（Ａ／Ｄ）１８から出力された送話入力信号ｚ［ｎ］とを入力とし、送話入力信号ｚ［ｎ］からエコー成分を抑圧したエコー抑圧後の信号のスペクトルをＳ’１［ｎ，ω］として１フレームごとに出力する。
【０２５８】
また、第２のエコーリダクション部（ＥＲ２）５２７２は、受話信号遅延処理部（ＲＤＰ）５２５２から出力された受話入力信号ｘＷ２［ｎ］と、Ａ／Ｄ変換器（Ａ／Ｄ）１８から出力された送話入力信号ｚ［ｎ］とを入力とし、送話入力信号ｚ［ｎ］からエコー成分を抑圧したエコー抑圧後の信号のスペクトルをＳ’２［ｎ，ω］として１フレームごとに出力する。
【０２５９】
次に、図２６を参照して、第Ｑのエコーリダクション部（ＥＲＱ）５２７Ｑ（ここで、Ｑは、１または２。）を構成する各部の動作を説明する。
【０２６０】
周波数領域変換処理部（ＦＴ）５２７Ｑａは、受話信号遅延処理部（ＲＤＰ）５２５Ｑから出力された受話入力信号ｘＷＱ［ｎ］を入力とし、受話入力信号の周波数スペクトルＸＱ［ｎ，ω］を算出して出力する。具体的には、ＬＷサンプル分の受話入力信号ｘＷＱ［ｎ］を用い、１フレーム過去の受話入力信号ｘＷＱ［ｎ−１］を併せ用い、零詰めなどによりＬＦサンプル分の信号を生成し、これに窓関数ｗ［ｉ］（ｉ＝０，１，・・・，ＬＦ）を窓掛けして、ＬＦ点のＦＦＴ変換によって周波数領域に変換して、受話入力信号の周波数スペクトルＸＱ［ｎ，ω］を算出して出力する。
【０２６１】
受話パワー算出部（ＰＯＷ）５２７Ｑｃは、周波数領域変換処理部（ＦＴ）５２７Ｑａから出力された受話入力信号の周波数スペクトルＸＱ［ｎ，ω］を入力とし、そのパワースペクトルである受話パワースペクトル｜ＸＱ［ｎ，ω］｜２を算出する。そして、音響結合量は通常時間的に急に変化しないので、瞬時値を用いるよりもスムージングした値を用いた方が音響結合量を精度良く推定できるため、受話パワー算出部（ＰＯＷ）５２７Ｑｃは、例えば、式２１に示すように１フレーム前の値｜ＸＱＳ［ｎ−１，ω］｜２を用いてスムージングした受話パワースペクトル｜ＸＱＳ［ｎ，ω］｜２を算出して出力する。ただし、αＱＸ［ω］は、０．７５〜０．９９９程度が望ましい。
【数２１】
2008066782.tif 000023
【０２６２】
音響結合量推定部（ＡＣＬＥ）５２７Ｑｅは、受話パワー算出部（ＰＯＷ）５２７Ｑｃから出力されたスムージングされた受話パワースペクトル｜ＸＱＳ［ｎ，ω］｜２と、送話パワー算出部（ＰＯＷ）５２７ｄから出力されたスムージングされた送話パワースペクトル｜ＺＳ［ｎ，ω］｜２と、周波数領域制御部（ＦＣＮＴ）５２７Ｑｇから出力された制御情報ＥＲＱｓｔａｔｅ［ｎ，ω］とを入力とし、周波数帯域ω毎に音響結合量｜ＨＱ［ｎ，ω］｜２を例えば、以下の式２２によって算出する。
【数２２】
2008066782.tif 000024
【０２６３】
そして、音響結合量推定部（ＡＣＬＥ）５２７Ｑｅは、以下の式２３のように１フレーム前の値を用いてスムージングした音響結合量｜ＨＱＳ［ｎ，ω］｜２を算出して出力する。ただし、αＱＨ［ω］は、０．０３〜０．９９程度が望ましい。
【数２３】
2008066782.tif 000025
【０２６４】
ここで、通話開始初期時、例えば通話開始から５秒間程度はαＱＨ［ω］を大きくすることで音響結合量｜ＨＱＳ［ｎ，ω］｜２の更新を速めておく。このようにすることで通話開始初期時は音響結合量が初期化されているので、通話開始初期時に抑圧量が少なくなることを防止することができる。
【０２６５】
ただし、周波数領域制御部（ＦＣＮＴ）５２７Ｑｇから出力される制御情報ＥＲＱｓｔａｔｅ［ｎ，ω］が学習停止状態であることを示す場合、音響結合量推定部（ＡＣＬＥ）５２７Ｑｅは、音響結合量を更新しないで１フレーム前の過去の音響結合量｜ＨＱＳ［ｎ−１，ω］｜２を用いる。
【０２６６】
エコー量推定部（ＥＬＥ）５２７Ｑｆは、受話パワー算出部（ＰＯＷ）５２７Ｑｃから出力されたスムージングされた受話パワースペクトル｜ＸＱＳ［ｎ，ω］｜２と、音響結合量推定部（ＡＣＬＥ）５２７Ｑｅから出力された音響結合量｜ＨＱＳ［ｎ，ω］｜２とを入力とし、送話入力信号の周波数スペクトルＺ［ｎ，ω］に含まれるエコー量｜ＹＱ［ｎ，ω］｜２を以下の式２４のように周波数帯域ω毎に推定する。
【数２４】
2008066782.tif 000026
【０２６７】
そして、エコー量推定部（ＥＬＥ）５２７Ｑｆは、瞬時のエコー量｜ＹＱ［ｎ，ω］｜２を用いるよりもスムージングした値を用いた方がエコー抑圧後の信号をより自然な信号にできるため、以下の式２５のように１フレーム前の値を用いてスムージングしたエコー量｜ＹＱＳ［ｎ，ω］｜２を周波数帯域ω毎に算出して出力する。ただし、αＱY［ω］は０．７〜０．９９程度が望ましい。
【数２５】
2008066782.tif 000027
【０２６８】
周波数領域制御部（ＦＣＮＴ）５２７Ｑｇは、受話パワー算出部（ＰＯＷ）５２７Ｑｃから出力されたスムージングされた受話パワースペクトル｜ＸＱＳ［ｎ，ω］｜２と、音響結合量推定部（ＡＣＬＥ）５２７Ｑｅから出力された１フレーム前の音響結合量｜ＨＱＳ［ｎ−１，ω］｜２とを入力とし、フレームｎ及び周波数帯域ωごとに学習停止状態であるか否かを示す情報である制御情報ＥＲＱｓｔａｔｅ［ｎ，ω］を出力する。
【０２６９】
具体的には、周波数領域制御部（ＦＣＮＴ）５２７Ｑｇは、音響結合量が急激に変化する場合、即ち、｜ＨＱＳ［ｎ，ω］｜２＞βＱＨ［ω］・｜ＨＱＳ［ｎ−１，ω］｜２が満たされる場合、または受話入力信号が十分に大きくない場合、即ち、｜ＸＱＳ［ｎ，ω］｜２＜βＱＸ［ω］が満たされる場合には、学習停止状態であると判定する。一方、これらの場合のいずれにも該当しない場合、学習停止状態でないと判定する。ただし、βＱＨ［ω］は０．９〜３０程度が望ましい。βＱＸ［ω］は３０ｄＢ〜４０ｄＢ程度が望ましい。
【０２７０】
ゲイン格納部（ＧＴＢＬ）５２７Ｑｈは、事前に設定された非線形エコー抑圧量を制御するパラメータγＱ［ω］を格納して出力する。ただし、γＱ［ω］は１．０〜２．０程度が望ましい。
【０２７１】
エコー抑圧ゲイン算出部（ＧＣＡＬ）５２７Ｑｉは、送話パワー算出部（ＰＯＷ）５２７ｄから出力されたスムージングされた送話パワースペクトル｜ＺＳ［ｎ，ω］｜２と、エコー量推定部（ＥＬＥ）５２７Ｑｆから出力されたスムージングしたエコー量｜ＹＱＳ［ｎ，ω］｜２と、ゲイン格納部（ＧＴＢＬ）５２７Ｑｈから出力されたパラメータγＱ［ω］とを入力とし、エコー抑圧ゲインＧＱ［ｎ，ω］を算出して出力する。
【０２７２】
具体的には、エコー抑圧ゲイン算出部（ＧＣＡＬ）５２７Ｑｉは、エコー抑圧ゲインＧＱ［ｎ，ω］をウィナー・フィルタ法を用いて、式２６によって算出する。
【数２６】
2008066782.tif 000028
【０２７３】
信号抑圧部（ＳＳ）５２７Ｑｊは、周波数領域変換処理部（ＦＴ）５２７ｂから出力された送話入力信号の周波数スペクトルＺ［ｎ，ω］と、エコー抑圧ゲイン算出部（ＧＣＡＬ）５２７Ｑｉから出力されたエコー抑圧ゲインＧＱ［ｎ，ω］とを入力として、送話入力信号の周波数スペクトルＺ［ｎ，ω］のエコーを抑圧し、以下の式２７に示すように送話出力信号のスペクトルＳ’Ｑ［ｎ，ω］として出力する。
【数２７】
2008066782.tif 000029
【０２７４】
図２５を参照して、エコー抑圧処理部（ＥＣＰ）５２を構成する各部の動作の説明に戻る。
【０２７５】
雑音推定部（ＮＥ）５２９は、周波数領域変換処理部（ＦＴ）５２７ｂから出力された送話入力信号の周波数スペクトルＺ［ｎ，ω］を入力とし、送話入力信号ｚ［ｎ］の有音区間ではない区間のスペクトルを測定し、周波数帯域ωごとに周波数スペクトルに含まれる雑音レベル｜Ｎ［ｎ，ω］｜２を推定し、雑音の周波数スペクトルＮ［ｎ，ω］を算出して出力する。
【０２７６】
信号選択部（ＳＥＬ）５２８は、第１のエコーリダクション部（ＥＲ１）５２７１の信号抑圧部（ＳＳ）５２７１ｊから出力された送話出力信号のスペクトルＳ’１［ｎ，ω］と、第２のエコーリダクション部（ＥＲ２）５２７２の信号抑圧部（ＳＳ）５２７２ｊから出力された送話出力信号のスペクトルＳ’２［ｎ，ω］と、雑音推定部（ＮＥ）５２９から出力された雑音の周波数スペクトルＮ［ｎ，ω］とを入力として、送話出力信号の周波数スペクトルＳ’［ｎ，ω］を算出して出力する。
【０２７７】
具体的には、送話出力信号のパワースペクトル｜Ｓ’１［ｎ，ω］｜２及び｜Ｓ’２［ｎ，ω］｜２が雑音レベル｜Ｎ［ｎ，ω］｜２よりも大きい場合は、信号選択部（ＳＥＬ）５２８は、送話出力信号のパワースペクトル｜Ｓ’１［ｎ，ω］｜２及び｜Ｓ’２［ｎ，ω］｜２でパワーが小さい方の周波数スペクトルを周波数帯域ωごとに選択する。
【０２７８】
また、送話出力信号のパワースペクトル｜Ｓ’１［ｎ，ω］｜２及び｜Ｓ’２［ｎ，ω］｜２が雑音レベル｜Ｎ［ｎ，ω］｜２よりも小さい場合は、信号選択部（ＳＥＬ）５２８は、エコー抑圧処理によって過剰に背景雑音を抑圧して不自然な音にならないように、雑音の周波数スペクトルＮ［ｎ，ω］を選択する。
【０２７９】
あるいは、信号選択部（ＳＥＬ）５２８は、送話入力信号ｚ［ｎ］が有音区間である場合は、送話出力信号のパワースペクトル｜Ｓ’１［ｎ，ω］｜２及び｜Ｓ’２［ｎ，ω］｜２でパワーが小さい方の周波数スペクトルを周波数帯域ωごとに選択し、送話入力信号ｚ［ｎ］が有音区間ではない場合は、雑音の周波数スペクトルＮ［ｎ，ω］を選択しても良い。
【０２８０】
周波数領域逆変換処理部（ＩＦＴ）５２７Ｌは、信号選択部（ＳＥＬ）５２８から出力された送話出力信号の周波数スペクトルＳ’［ｎ，ω］を入力とし、送話出力信号ｓ’［ｎ］＝（ｓ’［ｎＦ−Ｆ＋１］，ｓ’［ｎＦ−Ｆ＋２］，・・・，ｓ’［ｎＦ］）を算出して、通信部（ＣＯＭ）１１に出力する。
【０２８１】
具体的には、周波数領域逆変換処理部（ＩＦＴ）５２７Ｌは、送話出力信号の周波数スペクトルＳ’［ｎ，ω］をＬＦ点のＩＦＦＴ変換によって時間領域に変換して、周波数領域変換処理部（ＦＴ）５２７ｂの窓関数ｗ［ｉ］（ｉ＝０，１，・・・，ＬＦ）による窓掛けを参照して、オーバーラップ分ＬＯサンプルは適宜過去のフレームの送話出力信号ｓ’［ｎ］を現在フレームの送話出力信号ｓ’［ｎ］に重ね合わせるることによりオーバーラップを戻す処理を行い、送話出力信号ｓ’［ｎ］＝（ｓ’［ｎＦ−Ｆ＋１］，ｓ’［ｎＦ−Ｆ＋２］，・・・，ｓ’［ｎＦ］）を算出して出力する。
【０２８２】
上記のように構成された、第５の実施形態に係る信号処理装置の処理の流れを、図２７〜図２８を参照して説明する。図２７は信号処理装置全体の処理の流れを示すフローチャートであり、図２８は第１のエコーリダクション部（ＥＲ１）５２７１及び第２のエコーリダクション部（ＥＲ２）５２７２における処理の流れを示すフローチャートである。なお、図７〜図９を参照して説明した第１の実施形態に係る信号処理装置及び図１８〜図２０を参照して説明した第３の実施形態に係る信号処理装置の動作と同じ動作ステップについては、同じ符号を付してその部分の説明を省略する。
【０２８３】
図２７においてステップＳ１００２後に、バッファ処理として、受話信号記憶部（ＲＢＵＦＦ）５２１から出力された受話入力信号ｘｗ０［ｎ］を入力とし、受話信号遅延処理部（ＲＤＰ）５２５１は受話入力信号ｘｗ１［ｎ］を出力し、受話信号遅延処理部（ＲＤＰ）５２５２は受話入力信号ｘｗ２［ｎ］を出力する（ステップＳ５００４）。
【０２８４】
そして、第１のエコーリダクション部（ＥＲ１）５２７１は受話入力信号ｘｗ１［ｎ］と送話入力信号ｚ［ｎ］を入力として、第２のエコーリダクション部（ＥＲ２）５２７２は受話入力信号ｘｗ２［ｎ］と送話入力信号ｚ［ｎ］を入力として、エコーリダクション処理を行う（ステップＳ５００５）。
【０２８５】
信号選択部（ＳＥＬ）５２８は、第１のエコーリダクション部（ＥＲ１）５２７１から出力された送話出力信号のスペクトルＳ’１［ｎ，ω］と、第２のエコーリダクション部（ＥＲ２）５２７２から出力された送話出力信号のスペクトルＳ’２［ｎ，ω］を入力として、送話出力信号の周波数スペクトルＳ’［ｎ，ω］を算出して出力する（ステップＳ５００７）。
【０２８６】
そして、周波数領域逆変換処理部（ＩＦＴ）５２７Ｌは、信号選択部（ＳＥＬ）５２８から出力された送話出力信号の周波数スペクトルＳ’［ｎ，ω］を入力とし、送話出力信号ｓ’［ｎ］を算出して出力する（ステップＳ５００８）。
【０２８７】
そして、ステップＳ１００６の判断処理によって、ステップＳ１００２からステップＳ５００８の処理を、通話が終了するまで行う。
【０２８８】
図２８に示す第１のエコーリダクション部（ＥＲ１）５２７１及び第２のエコーリダクション部（ＥＲ２）５２７２の処理は、次のように行われる。まず、周波数領域変換処理部（ＦＴ）５２７１ａ、周波数領域変換処理部（ＦＴ）５２７２ａ、周波数領域変換処理部（ＦＴ）５２７ｂは、それぞれＬＷサンプル分の受話入力信号ｘＷ１［ｎ］、受話入力信号ｘＷ２［ｎ］、送話入力信号ｚ［ｎ］を用い、１フレーム過去の信号を用いたり、零詰めしたりしてＬＦサンプル分の信号を生成し、周波数領域に変換するためのバッファである受話フレーム、送話フレームをそれぞれ更新する（ステップＳ５２０１ｒ−１、Ｓ５２０１ｒ−２、Ｓ５２０１ｓ）。
【０２８９】
次に、周波数領域変換処理部（ＦＴ）５２７１ａ、周波数領域変換処理部（ＦＴ）５２７２ａは受話フレームに格納されているＬＦサンプル分の信号に窓関数ｗ［ｉ］を窓掛けして、ＬＦ点のＦＦＴ変換によって周波数領域に変換して、それぞれ受話入力信号の周波数スペクトルＸ１［ｎ，ω］、Ｘ２［ｎ，ω］を算出する（ステップＳ５２０２ｒ−１、ステップＳ５２０２ｒ−２）。そして、受話パワー算出部（ＰＯＷ）５２７１ｃ、受話パワー算出部（ＰＯＷ）５２７２ｃはそれぞれ受話パワースペクトル｜Ｘ１［ｎ，ω］｜２、｜Ｘ２［ｎ，ω］｜２及びスムージングされた受話パワースペクトル｜Ｘ１Ｓ［ｎ，ω］｜２、｜Ｘ２Ｓ［ｎ，ω］｜２を算出する（ステップＳ５２０３ｒ−１、Ｓ５２０３ｒ−２）。
【０２９０】
一方、ステップＳ３２０２ｓの周波数領域変換処理部（ＦＴ）５２７ｂによる周波数スペクトルＺ［ｎ，ω］の算出及びステップＳ３２０３ｓの送話パワー算出部（ＰＯＷ）５２７ｄによる送話パワースペクトル｜ＺＳ［ｎ，ω］｜２の算出が行われる。
【０２９１】
そして、ステップＳ５２０３ｒ−１の処理、ステップＳ５２０３ｒ−２の処理及びステップＳ３２０３ｓの処理に続いて、周波数領域制御部（ＦＣＮＴ）５２７１ｇは制御情報ＥＲ１ｓｔａｔｅ［ｎ，ω］を出力し、周波数領域制御部（ＦＣＮＴ）５２７２ｇは制御情報ＥＲ２ｓｔａｔｅ［ｎ，ω］を出力する。
【０２９２】
続いて、音響結合量推定部（ＡＣＬＥ）５２７１ｅは、スムージングされた受話パワースペクトル｜Ｘ１Ｓ［ｎ，ω］｜２とスムージングされた送話パワースペクトル｜ＺＳ［ｎ，ω］｜２と、制御情報ＥＲ１ｓｔａｔｅ［ｎ，ω］とを入力として音響結合量｜Ｈ１Ｓ［ｎ，ω］｜２を算出する（ステップＳ５２０４−１）。
【０２９３】
同様に、音響結合量推定部（ＡＣＬＥ）５２７２ｅは、スムージングされた受話パワースペクトル｜Ｘ２Ｓ［ｎ，ω］｜２とスムージングされた送話パワースペクトル｜ＺＳ［ｎ，ω］｜２と、制御情報ＥＲ２ｓｔａｔｅ［ｎ，ω］とを入力として音響結合量｜Ｈ２Ｓ［ｎ，ω］｜２を算出する（ステップＳ５２０４−２）。
【０２９４】
その後、エコー量推定部（ＥＬＥ）５２７１ｆは、音響結合量｜Ｈ１Ｓ［ｎ，ω］｜２とスムージングした受話パワースペクトル｜Ｘ１Ｓ［ｎ，ω］｜２とを入力として送話入力信号に含まれるエコー量｜Ｙ１Ｓ［ｎ，ω］｜２を推定する（ステップＳ５２０５−１）。同様に、エコー量推定部（ＥＬＥ）５２７２ｆは、音響結合量｜Ｈ２Ｓ［ｎ，ω］｜２とスムージングした受話パワースペクトル｜Ｘ２Ｓ［ｎ，ω］｜２とを入力として送話入力信号に含まれるエコー量｜Ｙ２Ｓ［ｎ，ω］｜２を推定する（ステップＳ５２０５−２）。
【０２９５】
次に、エコー抑圧ゲイン算出部（ＧＣＡＬ）５２７１ｉは、送話パワー算出部（ＰＯＷ）５２７ｄから出力されたスムージングされた送話パワースペクトル｜ＺＳ［ｎ，ω］｜２と、エコー量推定部（ＥＬＥ）５２７１ｆから出力されたスムージングしたエコー量｜Ｙ１Ｓ［ｎ，ω］｜２と、ゲイン格納部（ＧＴＢＬ）５２７１ｈから出力されたパラメータγ１［ω］とを入力として、エコー抑圧ゲインＧ１［ｎ，ω］を算出する（ステップＳ５２０６−１）。
【０２９６】
同様に、エコー抑圧ゲイン算出部（ＧＣＡＬ）５２７２ｉは、送話パワー算出部（ＰＯＷ）５２７ｄから出力されたスムージングされた送話パワースペクトル｜ＺＳ［ｎ，ω］｜２と、エコー量推定部（ＥＬＥ）５２７２ｆから出力されたスムージングしたエコー量｜Ｙ２Ｓ［ｎ，ω］｜２と、ゲイン格納部（ＧＴＢＬ）５２７２ｈから出力されたパラメータγ２［ω］とを入力として、エコー抑圧ゲインＧ２［ｎ，ω］を算出する（ステップＳ５２０６−２）。
【０２９７】
そして最終的に、信号抑圧部（ＳＳ）５２７１ｊは、送話入力信号の周波数スペクトルＺ［ｎ，ω］と、エコー抑圧ゲイン算出部（ＧＣＡＬ）５２７１ｉで算出されたエコー抑圧ゲインＧ１［ｎ，ω］を入力として、送話入力信号の周波数スペクトルＺ［ｎ，ω］のエコー成分を抑圧した送話出力信号の周波数スペクトルＳ’１［ｎ，ω］を出力する（ステップＳ５２０７−１）。
【０２９８】
同様に、信号抑圧部（ＳＳ）５２７２ｊは、送話入力信号の周波数スペクトルＺ［ｎ，ω］と、エコー抑圧ゲイン算出部（ＧＣＡＬ）５２７２ｉで算出されたエコー抑圧ゲインＧ２［ｎ，ω］を入力として、送話入力信号の周波数スペクトルＺ［ｎ，ω］のエコー成分を抑圧した送話出力信号の周波数スペクトルＳ’２［ｎ，ω］を出力して（ステップＳ５２０７−２）、エコーリダクション処理が終了する。
【０２９９】
上記では、エコーリダクション部は第１のエコーリダクション部（ＥＲ１）５２７１及び第２のエコーリダクション部（ＥＲ２）５２７２の２つであるが、エコーリダクション部の数ｑをｑ＞２とした場合も、上記と同様に構成され動作する。
【０３００】
上記では、第１のエコーリダクション部（ＥＲ１）５２７１及び第２のエコーリダクション部（ＥＲ２）５２７２は、ＦＦＴ変換による周波数領域変換で周波数帯域毎に処理する方式として動作するものとして説明した。ＦＦＴ変換による周波数帯域をグループでまとめて周波数帯域グループ毎に処理する方式や、ＭＤＣＴ変換を用いる方式や、フィルタバンクなどの帯域分割フィルタなどの周波数領域型エコー抑圧処理を実現してもよい。
【０３０１】
以上説明した第５の実施形態に係る信号処理装置の動作により、第１のエコーリダクション部（ＥＲ１）５２７１及び第２のエコーリダクション部（ＥＲ２）５２７２に異なる遅延量となる受話入力信号を入力して、エコー抑圧処理させる。そして、信号選択部（ＳＥＬ）５２８は、雑音推定部（ＮＥ）５２９で推定された雑音レベルよりもパワースペクトルが大きい限りにおいて、複数のエコー抑圧処理後の信号の周波数スペクトルからパワー最小を基準として１つの信号を選択する。
【０３０２】
この処理によれば、遅延量の推定を行わないため、遅延量の推定精度にエコー抑圧処理性能を依存させなくすることができ、真の遅延量Ｄ＊の変動時においても安定したエコー抑圧処理性能が得られ、真の遅延量Ｄ＊の変動に対して頑健にすることができ、背景雑音の断続的な抑圧を防止し、過剰なエコー抑圧により送話音声の品質が劣化するのを防止することができる。
【０３０３】
なお、上記の説明は、エコー抑圧処理部（ＥＣＰ）５２は、２つのエコーリダクション部、即ち、第１のエコーリダクション部（ＥＲ１）５２７１及び第２のエコーリダクション部（ＥＲ２）５２７２を有する場合を主にしたが、３つ以上のエコーリダクション部を有しても良い。
【０３０４】
３つ以上のエコーリダクション部を有する場合、それぞれのエコーリダクション部の入力は、過去に異なる時間さかのぼった受話入力信号であって、例えば、エコー抑圧処理部（ＥＣＰ）５２がそれぞれのエコーリダクション部に対応して有する受話信号遅延処理部から出力される。
【０３０５】
また、３つ以上のエコーリダクション部を有する場合、信号選択部（ＳＥＬ）５２８は、それぞれのエコーリダクション部から出力された送話出力信号のパワースペクトルが雑音推定部（ＮＥ）５２９から出力された雑音レベルより大きい場合、上記送話出力信号のパワースペクトルでパワーが最も小さい信号を周波数帯域ωごとに選択する。
【０３０６】
一方、上記送話出力信号のパワースペクトルが雑音推定部（ＮＥ）５２９から出力された雑音レベルより小さい場合、信号選択部（ＳＥＬ）５２８は、雑音の周波数スペクトルＮ［ｎ，ω］を選択する。
【０３０７】
または、信号選択部（ＳＥＬ）５２８は、送話入力信号ｚ［ｎ］が有音区間である場合は、上記送話出力信号のパワースペクトルでパワーが最も小さい信号を周波数帯域ωごとに選択し、送話入力信号ｚ［ｎ］が有音区間でない場合、雑音の周波数スペクトルＮ［ｎ，ω］を選択しても良い。
【０３０８】
複数のエコーキャンセラ部を有し、それぞれのエコーキャンセラ部の入力を過去に異なる時間さかのぼった受話入力信号とすることで、いずれかのエコーキャンセラ部に真の遅延量Ｄ＊に相当する受話入力信号を入力することができるため、真の遅延量Ｄ＊の変動時においても安定したエコー抑圧処理性能が得られ、真の遅延量Ｄ＊の変動に対して頑健にすることができる。
【０３０９】
（第６の実施形態）
第６の実施形態に係る信号処理装置が第４の実施形態の変形例に係る信号処理装置と異なる点は、エコー抑圧処理部（ＥＣＰ）４２２を有さず、エコー抑圧処理部（ＥＣＰ）６２を有する点にあり、その他の部分は同じである。そこで、同じ部分については、同じ符号を付してその説明を省略する。また、エコー抑圧処理部（ＥＣＰ）６２を構成する部分であり、第４の実施形態の変形例に係るエコー抑圧処理部（ＥＣＰ）４２２を構成する部分と同じである部分については、同じ符号を付してその説明を省略する。
【０３１０】
図２９は、本発明の第６の実施形態に係る信号処理装置のエコー抑圧処理部（ＥＣＰ）６２の構成を示すブロック図である。このエコー抑圧処理部（ＥＣＰ）６２は、受話信号記憶部（ＲＢＵＦＦ）４２１と、受話信号遅延処理部（ＲＤＰ）４２５１と、周波数領域変換処理部（ＦＴ）４２７ａと、第１のエコーキャンセラ部（ＥＣ１）６２７１と、第２のエコーキャンセラ部（ＥＣ２）６２７２と、周波数領域逆変換処理部（ＩＦＴ）６２７ｃと、周波数領域変換処理部（ＦＴ）６２７ｅと、周波数領域変換処理部（ＦＴ）６２７ｇと、制御部（ＣＯＮＴ）６２７ｈと、第１の信号選択部（ＳＥＬ１）６２７ｉと、第２の信号選択部（ＳＥＬ２）６２７ｊとからなる。
【０３１１】
そして、第１のエコーキャンセラ部（ＥＣ１）６２７１は、周波数領域適応フィルタ部（ＦＤＡＦ）６２７１ｂと、信号減算処理部６２７１ｄと、周波数領域適応フィルタ制御部（ＦＤＣＮＴ）６２７１ｆとからなる。同様に、第２のエコーキャンセラ部（ＥＣ２）６２７２は、周波数領域適応フィルタ部（ＦＤＡＦ）６２７２ｂと、信号減算処理部６２７２ｄと、周波数領域適応フィルタ制御部（ＦＤＣＮＴ）６２７２ｆとからなる。
【０３１２】
実際のエコー長（エコー抑圧に有効なエコー長）をL、２つのエコーキャンセラ部のブロックサイズを共にＢとしたとき、１≦ＭＤ≦Ｂ−Ｌを満たす時間シフト幅ＭＤを事前に設定する。本実施例ではエコーキャンセラ部は第１のエコーキャンセラ部（ＥＣ１）６２７１及び第２のエコーキャンセラ部（ＥＣ２）６２７２の２つであるが、エコーキャンセラ部の数ｑと受話入力信号ｘ［ｎ］によるエコーと送話入力信号ｚ［ｎ］との真の遅延量Ｄ＊の最大変動幅ＤＭＡＸには、ＤＭＡＸ≦ｑ・ＭＤの関係が成り立つように、設定された時間シフト幅ＭＤの値によってエコーキャンセラ部の数ｑを設定する。
【０３１３】
上記のように構成された、本発明の第６の実施形態に係る信号処理装置の各部の動作を、図２９を参照して説明する。
【０３１４】
周波数領域変換処理部（ＦＴ）６２７ｇは、Ａ／Ｄ変換器（Ａ／Ｄ）１８から出力された送話入力信号ｚ［ｎ］を入力として、先頭から２Ｂ−Ｆサンプル分のゼロ詰めを行い、最終にＦサンプル分の送話入力信号ｚ［ｎ］を配置して、２Ｂ点のＦＦＴ変換を行うことにより周波数領域に変換して、送話入力信号の周波数スペクトルＺ［ｎ，ω］を算出して出力する。
【０３１５】
第１のエコーキャンセラ部（ＥＣ１）６２７１は、周波数領域変換処理部（ＦＴ）４２７ａから出力された受話入力信号の周波数スペクトルＸ１［ｎ，ω］と、第２の信号選択部（ＳＥＬ２）６２７ｊから出力された送話出力信号の周波数スペクトルＳ’［ｎ，ω］と、周波数領域変換処理部（ＦＴ）６２７ｇから出力された送話入力信号の周波数スペクトルＺ［ｎ，ω］とを入力とし、擬似エコー信号の周波数スペクトルＹ’１［ｎ，ω］とパワースペクトル差｜Ｅ１［ｎ，ω］｜２を算出して出力する。
【０３１６】
同様に、第２のエコーキャンセラ部（ＥＣ２）６２７２は、周波数領域変換処理部（ＦＴ）４２７ａから出力された受話入力信号の周波数スペクトルＸ２［ｎ，ω］と、第２の信号選択部（ＳＥＬ２）６２７ｊから出力された送話出力信号の周波数スペクトルＳ’［ｎ，ω］と、周波数領域変換処理部（ＦＴ）６２７ｇから出力された送話入力信号の周波数スペクトルＺ［ｎ，ω］とを入力とし、擬似エコー信号の周波数スペクトルＹ’２［ｎ，ω］とパワースペクトル差｜Ｅ２［ｎ，ω］｜２を算出して出力する。
【０３１７】
ここで、第１のエコーキャンセラ部（ＥＣ１）６２７１及び第２のエコーキャンセラ部（ＥＣ２）６２７２は、５０％オーバーラップのオーバーラップ保存法を用いてブロック適応フィルタを高速化した周波数領域適応フィルタアルゴリズムに基づいており、フィルタ長ＮはブロックサイズＢと等しく、ＦＦＴ点数は２Ｂである。
【０３１８】
周波数領域適応フィルタ部（ＦＤＡＦ）６２７１ｂは、フィルタ係数Ｈ１［ｎ，ω］が可変のトランスバーサルフィルタで構成される周波数領域の適応フィルタである。
【０３１９】
そして、周波数領域適応フィルタ部（ＦＤＡＦ）６２７１ｂは、周波数領域変換処理部（ＦＴ）４２７ａから出力された受話入力信号の周波数スペクトルＸ１［ｎ，ω］と、第２の信号選択部（ＳＥＬ２）６２７ｊから出力された送話出力信号の周波数スペクトルＳ’［ｎ，ω］と、周波数領域適応フィルタ制御部（ＦＤＣＮＴ）６２７１ｆから出力された制御情報ＥＣ１ｓｔａｔｅ［ｎ，ω］とを入力とし、制御情報ＥＣ１ｓｔａｔｅ［ｎ，ω］が学習停止状態でないことを示す場合はフィルタ係数Ｈ１［ｎ，ω］をフレームｎ及び周波数帯域ωごとに適応学習し、制御情報ＥＣ１ｓｔａｔｅ［ｎ，ω］が学習停止状態であることを示す場合は適応学習を行わない。このようにしてフィルタ係数Ｈ１［ｎ，ω］を算出する。
【０３２０】
また、周波数領域適応フィルタ部（ＦＤＡＦ）６２７１ｂは、周波数領域変換処理部（ＦＴ）４２７ａから出力された受話入力信号の周波数スペクトルＸ１［ｎ，ω］と、フィルタ係数Ｈ１［ｎ，ω］とを用いて擬似エコー信号の周波数スペクトルＹ’１［ｎ，ω］をＹ’１［ｎ，ω］＝Ｈ１［ｎ，ω］・Ｘ１［ｎ，ω］として算出して出力する。
【０３２１】
そして、周波数領域適応フィルタ部（ＦＤＡＦ）６２７１ｂは、フィルタ係数Ｈ１［ｎ，ω］の更新幅を制御する可変のステップサイズμF１［ｎ，ω］を用いて、適応学習を行う。
【０３２２】
周波数領域適応フィルタ部（ＦＤＡＦ）６２７２ｂは、周波数領域適応フィルタ部（ＦＤＡＦ）６２７１ｂと同じ動作をする処理部であり、フィルタ係数Ｈ２［ｎ，ω］が可変のトランスバーサルフィルタで構成される周波数領域の適応フィルタである。
【０３２３】
そして、周波数領域適応フィルタ部（ＦＤＡＦ）６２７２ｂは、周波数領域変換処理部（ＦＴ）４２７ａから出力された受話入力信号の周波数スペクトルＸ２［ｎ，ω］と、第２の信号選択部（ＳＥＬ２）６２７ｊから出力された送話出力信号の周波数スペクトルＳ’［ｎ，ω］と、周波数領域適応フィルタ制御部（ＦＤＣＮＴ）６２７２ｆから出力された制御情報ＥＣ２ｓｔａｔｅ［ｎ，ω］とを入力とし、制御情報ＥＣ２ｓｔａｔｅ［ｎ，ω］が学習停止状態でないことを示す場合はフィルタ係数Ｈ２［ｎ，ω］をフレームｎ及び周波数帯域ωごとに適応学習し、制御情報ＥＣ２ｓｔａｔｅ［ｎ，ω］が学習停止状態であることを示す場合は適応学習を行わない。このようにしてフィルタ係数Ｈ２［ｎ，ω］を算出する。
【０３２４】
また同様に、周波数領域適応フィルタ部（ＦＤＡＦ）６２７２ｂは、周波数領域変換処理部（ＦＴ）４２７ａから出力された受話入力信号の周波数スペクトルＸ２［ｎ，ω］と、フィルタ係数Ｈ２［ｎ，ω］とを用いて擬似エコー信号の周波数スペクトルＹ’２［ｎ，ω］をＹ’２［ｎ，ω］＝Ｈ２［ｎ，ω］・Ｘ２［ｎ，ω］として算出して出力する。
【０３２５】
そして同様に、周波数領域適応フィルタ部（ＦＤＡＦ）６２７２ｂは、フィルタ係数Ｈ２［ｎ，ω］の更新幅を制御する可変のステップサイズμF２［ｎ，ω］を用いて、適応学習を行う。
【０３２６】
周波数領域適応フィルタ部（ＦＤＡＦ）６２７１ｂ及び周波数領域適応フィルタ部（ＦＤＡＦ）６２７２ｂは、例えばＬＭＳアルゴリズム、ＮＬＭＳアルゴリズム、逐次最小二乗アルゴリズムなどの線形適応アルゴリズムに基づく適応フィルタや勾配制限型学習同定法、適応ボルテラフィルタなどの非線形適応アルゴリズムに基づく適応フィルタで構成される。
【０３２７】
信号減算処理部６２７１ｄは、周波数領域変換処理部（ＦＴ）６２７ｇから出力された送話入力信号の周波数スペクトルＺ［ｎ，ω］と、周波数領域適応フィルタ部（ＦＤＡＦ）６２７１ｂから出力された擬似エコー信号の周波数スペクトルＹ’１［ｎ，ω］とを入力とし、｜Ｚ［ｎ，ω］｜２−｜Ｙ’１［ｎ，ω］｜２をパワースペクトル差｜Ｅ１［ｎ，ω］｜２として算出して出力する。
【０３２８】
信号減算処理部６２７２ｄは、信号減算処理部６２７１ｄと同じ動作をする処理部であり、周波数領域変換処理部（ＦＴ）６２７ｇから出力された送話入力信号の周波数スペクトルＺ［ｎ，ω］と、周波数領域適応フィルタ部（ＦＤＡＦ）６２７２ｂから出力された擬似エコー信号の周波数スペクトルＹ’２［ｎ，ω］とを入力とし、｜Ｚ［ｎ，ω］｜２−｜Ｙ’２［ｎ，ω］｜２をパワースペクトル差｜Ｅ２［ｎ，ω］｜２として算出して出力する。
【０３２９】
制御部（ＣＯＮＴ）６２７ｈは、信号減算処理部６２７１ｄから出力されたパワースペクトル差｜Ｅ１［ｎ，ω］｜２と、信号減算処理部６２７２ｄから出力されたパワースペクトル差｜Ｅ２［ｎ，ω］｜２とを入力とし、第１のエコーキャンセラ部（ＥＣ１）６２７１及び第２のエコーキャンセラ部（ＥＣ２）６２７２のどちらのエコーキャンセラ部が選択されたかを示す制御情報ＥＣｃｏｎｔｒｏｌ［ｎ，ω］を出力する。
【０３３０】
具体的には、制御部（ＣＯＮＴ）６２７ｈは、全周波数をまとめて、全周波数のパワースペクトル差｜Ｅ１［ｎ，ω］｜２の和が全周波数のパワースペクトル差｜Ｅ２［ｎ，ω］｜２の和よりも小さい場合は、制御情報ＥＣｃｏｎｔｒｏｌ［ｎ，ω］には、全周波数で第１のエコーキャンセラ部（ＥＣ１）６２７１を選択した旨を設定して出力する。そして、全周波数のパワースペクトル差｜Ｅ２［ｎ，ω］｜２の和が全周波数のパワースペクトル差｜Ｅ１［ｎ，ω］｜２の和よりも小さい場合は、制御情報ＥＣｃｏｎｔｒｏｌ［ｎ，ω］には、全周波数で第２のエコーキャンセラ部（ＥＣ２）６２７２を選択した旨を設定して出力する。
【０３３１】
または、周波数ωごとに制御情報ＥＣｃｏｎｔｒｏｌ［ｎ，ω］を設定して出力する。即ち、パワースペクトル差｜Ｅ１［ｎ，ω］｜２がパワースペクトル差｜Ｅ２［ｎ，ω］｜２よりも小さい場合は、制御情報ＥＣｃｏｎｔｒｏｌ［ｎ，ω］には、その周波数ωでは第１のエコーキャンセラ部（ＥＣ１）６２７１を選択した旨を設定する。そして、パワースペクトル差｜Ｅ２［ｎ，ω］｜２がパワースペクトル差｜Ｅ１［ｎ，ω］｜２よりも小さい場合は、制御情報ＥＣｃｏｎｔｒｏｌ［ｎ，ω］には、その周波数ωでは第２のエコーキャンセラ部（ＥＣ２）６２７２を選択した旨を設定する。
【０３３２】
第１の信号選択部（ＳＥＬ１）６２７ｉは、周波数領域適応フィルタ部（ＦＤＡＦ）６２７１ｂから出力された擬似エコー信号の周波数スペクトルＹ’１［ｎ，ω］と、周波数領域適応フィルタ部（ＦＤＡＦ）６２７２ｂから出力された擬似エコー信号の周波数スペクトルＹ’２［ｎ，ω］と、制御部（ＣＯＮＴ）６２７ｈから出力された制御情報ＥＣｃｏｎｔｒｏｌ［ｎ，ω］とを入力とし、制御情報ＥＣｃｏｎｔｒｏｌ［ｎ，ω］が示す選択されたエコーキャンセラ部から出力された擬似エコー信号の周波数スペクトルを擬似エコー信号の周波数スペクトルＹ’［ｎ，ω］として出力する。
【０３３３】
つまり、第１の信号選択部（ＳＥＬ１）６２７ｉは、制御情報ＥＣｃｏｎｔｒｏｌ［ｎ，ω］が第１のエコーキャンセラ部（ＥＣ１）６２７１を選択した旨である場合はＹ’［ｎ，ω］＝Ｙ’１［ｎ，ω］、制御情報ＥＣｃｏｎｔｒｏｌ［ｎ，ω］が第２のエコーキャンセラ部（ＥＣ２）６２７２を選択した旨である場合はＹ’［ｎ，ω］＝Ｙ’２［ｎ，ω］とする。
【０３３４】
周波数領域逆変換処理部（ＩＦＴ）６２７ｃは、第１の信号選択部（ＳＥＬ１）６２７ｉから出力された擬似エコー信号の周波数スペクトルＹ’［ｎ，ω］を入力とし、２Ｂ点のＩＦＦＴ変換を行い、最終のＦサンプル分を擬似エコー信号ｙ’［ｎ］＝（ｙ’［ｎＦ−Ｆ＋１］，ｙ’［ｎＦ−Ｆ＋２］，・・・，ｙ’［ｎＦ］）として算出して出力する。
【０３３５】
信号減算処理部６２７ｄは、Ａ／Ｄ変換器（Ａ／Ｄ）１８から出力された送話入力信号ｚ［ｎ］と、周波数領域逆変換処理部（ＩＦＴ）６２７ｃから出力された擬似エコー信号ｙ’［ｎ］とを入力とし、送話入力信号ｚ［ｎ］から擬似エコー信号ｙ’［ｎ］をサンプルｎごとに減算することでエコー成分を抑圧し、そのエコー抑圧後の残差信号を送話出力信号ｓ’［ｎ］＝（ｓ’［ｎＦ−Ｆ＋１］，ｓ’［ｎＦ−Ｆ＋２］，・・・，ｓ’［ｎＦ］）＝（ｚ［ｎＦ−Ｆ＋１］−ｙ’［ｎＦ−Ｆ＋１］，ｚ［ｎＦ−Ｆ＋２］−ｙ’［ｎＦ−Ｆ＋２］，・・・，ｚ［ｎＦ］−ｙ’［ｎＦ］）として出力する。この送話出力信号ｓ’［ｎ］は、エコー抑圧処理部（ＥＣＰ）６２内の各部の他、通信部（ＣＯＭ）１１にも出力される。
【０３３６】
周波数領域変換処理部（ＦＴ）６２７ｅは、信号減算処理部６２７ｄから出力されたエコー抑圧後のを送話出力信号ｓ’［ｎ］を入力として、先頭から２Ｂ−Ｆサンプル分のゼロ詰めを行い、最終にＦサンプル分の送話出力信号ｓ’［ｎ］を配置して、２Ｂ点のＦＦＴ変換を行うことにより周波数領域に変換して、送話出力信号の周波数スペクトルＳ’［ｎ，ω］を算出して出力する。
【０３３７】
第２の信号選択部（ＳＥＬ２）６２７ｊは、周波数領域変換処理部（ＦＴ）６２７ｅから出力された送話出力信号の周波数スペクトルＳ’［ｎ，ω］と、制御部（ＣＯＮＴ）６２７ｈから出力された制御情報ＥＣｃｏｎｔｒｏｌ［ｎ，ω］とを入力とし、送話出力信号の周波数スペクトルＳ’［ｎ，ω］を制御情報ＥＣｃｏｎｔｒｏｌ［ｎ，ω］に従って選択されたエコーキャンセラ部へ出力する。
【０３３８】
すなわち、制御情報ＥＣｃｏｎｔｒｏｌ［ｎ，ω］が第１のエコーキャンセラ部（ＥＣ１）６２７１を選択した旨である場合は、第２の信号選択部（ＳＥＬ２）６２７ｊは、送話出力信号の周波数スペクトルＳ’［ｎ，ω］を第１のエコーキャンセラ部（ＥＣ１）６２７１の周波数領域適応フィルタ部（ＦＤＡＦ）６２７１ｂ及び周波数領域適応フィルタ制御部（ＦＤＣＮＴ）６２７１ｆへ出力する。またこの場合、第２のエコーキャンセラ部（ＥＣ２）６２７２の周波数領域適応フィルタ制御部（ＦＤＣＮＴ）６２７２ｆの制御情報ＥＣ２ｓｔａｔｅ［ｎ，ω］を学習停止状態にしてもよい。
【０３３９】
また、制御情報ＥＣｃｏｎｔｒｏｌ［ｎ，ω］が第２のエコーキャンセラ部（ＥＣ２）６２７２を選択した旨である場合は、第２の信号選択部（ＳＥＬ２）６２７ｊは、送話出力信号の周波数スペクトルＳ’［ｎ，ω］を第２のエコーキャンセラ部（ＥＣ２）６２７２の周波数領域適応フィルタ部（ＦＤＡＦ）６２７２ｂ及び周波数領域適応フィルタ制御部（ＦＤＣＮＴ）６２７２ｆへ出力する。またこの場合、第１のエコーキャンセラ部（ＥＣ１）６２７１の周波数領域適応フィルタ制御部（ＦＤＣＮＴ）６２７１ｆの制御情報ＥＣ１ｓｔａｔｅ［ｎ，ω］を学習停止状態にしてもよい。
【０３４０】
あるいは、第２の信号選択部（ＳＥＬ２）６２７ｊは、制御情報ＥＣｃｏｎｔｒｏｌ［ｎ，ω］が第１のエコーキャンセラ部（ＥＣ１）６２７１及び第２のエコーキャンセラ部（ＥＣ２）６２７２のどちらを選択した旨である場合であっても、送話出力信号の周波数スペクトルＳ’［ｎ，ω］を第１のエコーキャンセラ部（ＥＣ１）６２７１及び第２のエコーキャンセラ部（ＥＣ２）６２７２それぞれに出力してもよい。
【０３４１】
上記のように構成された、第６の実施形態に係る信号処理装置の処理の流れを、図３０を参照して説明する。なお、図７〜図９を参照して説明した第１の実施形態に係る信号処理装置の動作と同じ動作ステップについては、同じ符号を付してその部分の説明を省略する。
【０３４２】
図３０において、ステップＳ１００２後に、バッファ処理として、受話信号記憶部（ＲＢＵＦＦ）４２１から出力された受話入力信号ｘＢ０［ｎ］を入力とし、受話信号遅延処理部（ＲＤＰ）４２５１は受話入力信号ｘＢ１［ｎ］を出力する。
【０３４３】
そして、周波数領域変換処理部（ＦＴ）４２７ａは、受話信号遅延処理部（ＲＤＰ）４２５１から出力された受話入力信号ｘＢ１［ｎ］をＦＦＴ変換によって周波数領域に変換して、受話入力信号の周波数スペクトルＸ１［ｎ，ω］を算出する。
【０３４４】
また、周波数領域変換処理部（ＦＴ）４２７ａは、１フレーム前の受話入力信号の周波数スペクトルＸ１［ｎ−１，ω］をＸ２［ｎ−１，ω］として出力する。さらに、周波数領域変換処理部（ＦＴ）６２７ｇは、送話入力信号ｚ［ｎ］をＦＦＴ変換によって周波数領域に変換して、送話入力信号の周波数スペクトルＺ［ｎ，ω］を算出する（ステップＳ６００４）。
【０３４５】
次に、周波数領域適応フィルタ部（ＦＤＡＦ）６２７１ｂは、受話入力信号の周波数スペクトルＸ１［ｎ，ω］とフィルタ係数Ｈ１［ｎ，ω］を用いて擬似エコー信号の周波数スペクトルＹ’１［ｎ，ω］を算出する。そして、信号減算処理部６２７１ｄは、擬似エコー信号の周波数スペクトルＹ’１［ｎ，ω］と送話入力信号の周波数スペクトルＺ［ｎ，ω］を入力としてパワースペクトル差｜Ｅ１［ｎ，ω］｜２を算出する（ステップＳ６００９−１）。
【０３４６】
同様に、周波数領域適応フィルタ部（ＦＤＡＦ）６２７２ｂは、受話入力信号の周波数スペクトルＸ２［ｎ，ω］とフィルタ係数Ｈ２［ｎ，ω］を用いて擬似エコー信号の周波数スペクトルＹ’２［ｎ，ω］を算出する。そして、信号減算処理部６２７２ｄは、擬似エコー信号の周波数スペクトルＹ’２［ｎ，ω］と送話入力信号の周波数スペクトルＺ［ｎ，ω］を入力としてパワースペクトル差｜Ｅ２［ｎ，ω］｜２を算出する（ステップＳ６００９−２）。
【０３４７】
そして、制御部（ＣＯＮＴ）６２７ｈは、パワースペクトル差｜Ｅ１［ｎ，ω］｜２とパワースペクトル差｜Ｅ２［ｎ，ω］｜２を入力とし、制御情報ＥＣｃｏｎｔｒｏｌ［ｎ，ω］を出力する（ステップＳ６００７）。
【０３４８】
周波数領域逆変換処理部（ＩＦＴ）６２７ｃは、擬似エコー信号の周波数スペクトルＹ’［ｎ，ω］にＩＦＦＴ変換を行い擬似エコー信号ｙ’［ｎ］を算出する。そして信号減算処理部６２７ｄは、送話入力信号ｚ［ｎ］から擬似エコー信号ｙ’［ｎ］を減算し、送話出力信号ｓ’［ｎ］を算出する（ステップＳ６２０１）。
【０３４９】
周波数領域変換処理部（ＦＴ）６２７ｅは送話出力信号ｓ’［ｎ］をＦＦＴ変換によって周波数領域に変換する。第２の信号選択部（ＳＥＬ２）６２７ｊは、送話出力信号の周波数スペクトルＳ’［ｎ，ω］を制御情報ＥＣｃｏｎｔｒｏｌ［ｎ，ω］に従って選択されたエコーキャンセラ部へ出力する。周波数領域適応フィルタ制御部（ＦＤＣＮＴ）６２７１ｆ及び周波数領域適応フィルタ制御部（ＦＤＣＮＴ）６２７２ｆは適応フィルタ制御処理として、学習停止状態か否かの情報である制御情報ＥＣ１ｓｔａｔｅ［ｎ，ω］及び制御情報ＥＣ２ｓｔａｔｅ［ｎ，ω］をそれぞれ出力する（ステップＳ６２０２）。
【０３５０】
そして、周波数領域適応フィルタ部（ＦＤＡＦ）６２７１ｂは、周波数領域適応フィルタ制御部（ＦＤＣＮＴ）６２７１ｆから出力された制御情報ＥＣ１ｓｔａｔｅ［ｎ，ω］の制御を受けながら、フィルタ係数Ｈ１［ｎ，ω］を適応学習する処理を行う。
【０３５１】
同様に、周波数領域適応フィルタ部（ＦＤＡＦ）４２７２ｂは、周波数領域適応フィルタ制御部（ＦＤＣＮＴ）４２７２ｆから出力された制御情報ＥＣ２ｓｔａｔｅ［ｎ，ω］の制御を受けながら、フィルタ係数Ｈ２［ｎ，ω］を適応学習する処理を行う（ステップＳ６２０３）。
【０３５２】
ただし、制御情報ＥＣｃｏｎｔｒｏｌ［ｎ，ω］が全周波数をまとめて判定される場合は、周波数領域適応フィルタ部（ＦＤＡＦ）６２７１ｂか周波数領域適応フィルタ部（ＦＤＡＦ）４２７２ｂの選択されたエコーキャンセラ部の方しか適応学習する処理を行わない。
【０３５３】
そして、ステップＳ１００６の判断処理によって、ステップＳ１００２からステップＳ６２０３の処理を、通話が終了するまで行う。
【０３５４】
上記では、エコーキャンセラ部は第１のエコーキャンセラ部（ＥＣ１）６２７１及び第２のエコーキャンセラ部（ＥＣ２）６２７２の２つであるが、エコーキャンセラ部の数ｑをｑ＞２とした場合も、上記と同様に構成され動作する。
【０３５５】
上記では、第１のエコーキャンセラ部（ＥＣ１）６２７１及び第２のエコーキャンセラ部（ＥＣ２）６２７２は、ＦＦＴ変換を用いたブロック処理適応フィルタを高速処理する方式としての勾配拘束のない周波数領域型適応フィルタの例を示しているが、勾配拘束のある周波数領域型適応フィルタで構成してもよい。また第１のエコーキャンセラ部（ＥＣ１）６２７１及び第２のエコーキャンセラ部（ＥＣ２）６２７２は、本実施形態ではＦＦＴ変換を用いたオーバーラップ保存法による例を示しているが、オーバーラップ加算法で構成したりＭＤＣＴ変換を用いたりしてもよい。
【０３５６】
以上説明した第６の実施形態に係る信号処理装置のエコー抑圧処理部（ＥＣＰ）６２の動作により、第１のエコーキャンセラ部（ＥＣ１）６２７１及び第２のエコーキャンセラ部（ＥＣ２）６２７２に異なる遅延量となる受話入力信号を入力して、エコー抑圧処理し、そのエコー抑圧処理結果を第１の信号選択部（ＳＥＬ１）６２７ｉで所定の選択基準に従って選択することにより、遅延量の推定を行わない。
【０３５７】
そのため、遅延量の推定精度にエコー抑圧処理性能を依存させなくすることができ、真の遅延量Ｄ＊の変動時においても安定したエコー抑圧処理性能が得られ、真の遅延量Ｄ＊の変動に対して頑健にすることができる。また、第４の実施形態の変形例と比べると、エコー抑圧処理部（ＥＣＰ）４２２に代えてエコー抑圧処理部（ＥＣＰ）６２はＩＦＦＴ変換の回数が少なくなっているため、計算量を削減することができる。
【０３５８】
なお、エコー抑圧処理部（ＥＣＰ）６２は、２つのエコーキャンセラ部、即ち、第１のエコーキャンセラ部（ＥＣ１）６２７１及び第２のエコーキャンセラ部（ＥＣ２）６２７２を有するとしたが、３つ以上のエコーキャンセラ部を有しても良い。
【０３５９】
３つ以上のエコーキャンセラ部を有する場合、それぞれのエコーキャンセラ部の入力は、エコー抑圧処理部（ＥＣＰ）４２２が３つ以上のエコーキャンセラ部を有する場合の動作で説明した通りである。
【０３６０】
また、３つ以上のエコーキャンセラ部を有する場合、制御部（ＣＯＮＴ）６２７ｈは、全周波数のパワースペクトル差の和が最も小さいパワースペクトルを出力したエコーキャンセラ部を、全周波数で選択した旨を制御情報ＥＣｃｏｎｔｒｏｌ［ｎ，ω］に設定する。または、周波数ωごとに最小のパワースペクトルを出力したエコーキャンセラ部を選択した旨を制御情報ＥＣｃｏｎｔｒｏｌ［ｎ，ω］に設定する。
【０３６１】
複数のエコーキャンセラ部を有し、それぞれのエコーキャンセラ部の入力を過去に異なる時間さかのぼった受話入力信号とすることで、いずれかのエコーキャンセラ部に真の遅延量Ｄ＊に相当する受話入力信号を入力することができるため、真の遅延量Ｄ＊の変動時においても安定したエコー抑圧処理性能が得られ、真の遅延量Ｄ＊の変動に対して頑健にすることができる。
【０３６２】
（第７の実施形態）
第７の実施形態に係る信号処理装置が第６の実施形態に係る信号処理装置と異なる点は、エコー抑圧処理部（ＥＣＰ）６２を有さず、エコー抑圧処理部（ＥＣＰ）７２を有する点にあり、その他の部分は同じである。そこで、同じ部分については、同じ符号を付してその説明を省略する。
【０３６３】
また、エコー抑圧処理部（ＥＣＰ）７２を構成する部分であり、第６の実施形態に係るエコー抑圧処理部（ＥＣＰ）６２を構成する部分と同じである部分については、同じ符号を付してその説明を省略する。
【０３６４】
図３１は、本発明の第７の実施形態に係る信号処理装置のエコー抑圧処理部（ＥＣＰ）７２の構成を示すブロック図である。
【０３６５】
このエコー抑圧処理部（ＥＣＰ）７２は、受話信号記憶部（ＲＢＵＦＦ）４２１と、受話信号遅延処理部（ＲＤＰ）４２５１と、周波数領域変換処理部（ＦＴ）４２７ａと、第１のエコーキャンセラ部（ＥＣ１）７２７１と、第２のエコーキャンセラ部（ＥＣ２）７２７２と、周波数領域逆変換処理部（ＩＦＴ）６２７ｃと、周波数領域変換処理部（ＦＴ）６２７ｅと、周波数領域変換処理部（ＦＴ）６２７ｇと、制御部（ＣＯＮＴ）７２７ｈと、第１の信号選択部（ＳＥＬ１）６２７ｉと、第２の信号選択部（ＳＥＬ２）６２７ｊとからなる。
【０３６６】
そして、第１のエコーキャンセラ部（ＥＣ１）７２７１は、周波数領域適応フィルタ部（ＦＤＡＦ）６２７１ｂと、周波数領域適応フィルタ制御部（ＦＤＣＮＴ）６２７１ｆとからなり、同様に第２のエコーキャンセラ部（ＥＣ２）７２７２は、周波数領域適応フィルタ部（ＦＤＡＦ）６２７２ｂと、周波数領域適応フィルタ制御部（ＦＤＣＮＴ）６２７２ｆとからなる。
【０３６７】
ここで、実際のエコー長（エコー抑圧に有効なエコー長）をL、２つのエコーキャンセラ部のブロックサイズを共にＢとしたとき、１≦ＭＤ≦Ｂ−Ｌを満たす時間シフト幅ＭＤを事前に設定する。本実施例ではエコーキャンセラ部は第１のエコーキャンセラ部（ＥＣ１）７２７１及び第２のエコーキャンセラ部（ＥＣ２）７２７２の２つであるが、エコーキャンセラ部の数ｑと受話入力信号ｘ［ｎ］によるエコーと送話入力信号ｚ［ｎ］との真の遅延量Ｄ＊の最大変動幅ＤＭＡＸには、ＤＭＡＸ≦ｑ・ＭＤの関係が成り立つように、設定された時間シフト幅ＭＤの値によってエコーキャンセラ部の数ｑを設定する。
【０３６８】
上記のように構成された、本発明の第７の実施形態に係る信号処理装置の各部の動作を、図３１を参照して説明する。
【０３６９】
第１のエコーキャンセラ部（ＥＣ１）７２７１は、周波数領域変換処理部（ＦＴ）４２７ａから出力された受話入力信号の周波数スペクトルＸ１［ｎ，ω］と、第２の信号選択部（ＳＥＬ２）６２７ｊから出力された送話出力信号の周波数スペクトルＳ’［ｎ，ω］とを入力とし、擬似エコー信号の周波数スペクトルＹ’１［ｎ，ω］を算出して出力する。
【０３７０】
同様に、第２のエコーキャンセラ部（ＥＣ２）７２７２は、周波数領域変換処理部（ＦＴ）４２７ａから出力された受話入力信号の周波数スペクトルＸ２［ｎ，ω］と、第２の信号選択部（ＳＥＬ２）６２７ｊから出力された送話出力信号の周波数スペクトルＳ’［ｎ，ω］とを入力とし、擬似エコー信号の周波数スペクトルＹ’２［ｎ，ω］を算出して出力する。
【０３７１】
ここで、第１のエコーキャンセラ部（ＥＣ１）７２７１及び第２のエコーキャンセラ部（ＥＣ２）７２７２は、５０％オーバーラップのオーバーラップ保存法を用いてブロック適応フィルタを高速化した周波数領域適応フィルタアルゴリズムに基づいており、フィルタ長ＮはブロックサイズＢと等しく、ＦＦＴ点数は２Ｂである。
【０３７２】
制御部（ＣＯＮＴ）７２７ｈは、第１のエコーキャンセラ部（ＥＣ１）７２７１の周波数領域適応フィルタ部（ＦＤＡＦ）６２７１ｂから出力された擬似エコー信号の周波数スペクトルＹ’１［ｎ，ω］と、第２のエコーキャンセラ部（ＥＣ２）７２７２の周波数領域適応フィルタ部（ＦＤＡＦ）６２７２ｂから出力された擬似エコー信号の周波数スペクトルＹ’２［ｎ，ω］と、周波数領域変換処理部（ＦＴ）６２７ｇから出力された送話入力信号の周波数スペクトルＺ［ｎ，ω］とを入力とし、第１のエコーキャンセラ部（ＥＣ１）７２７１及び第２のエコーキャンセラ部（ＥＣ２）７２７２のどちらのエコーキャンセラ部が選択されたかを示す制御情報ＥＣｃｏｎｔｒｏｌ［ｎ，ω］を出力する。
【０３７３】
具体的には、制御部（ＣＯＮＴ）７２７ｈは、送話入力信号のパワースペクトル｜Ｚ［ｎ，ω］｜２の全周波数の和よりも擬似エコー信号のパワースペクトル｜Ｙ’１［ｎ，ω］｜２の全周波数の和が小さく、かつ擬似エコー信号のパワースペクトル｜Ｙ’１［ｎ，ω］｜２の全周波数の和が擬似エコー信号のパワースペクトル｜Ｙ’２［ｎ，ω］｜２の全周波数の和よりも大きい場合は、制御情報ＥＣｃｏｎｔｒｏｌ［ｎ，ω］には全周波数で第１のエコーキャンセラ部（ＥＣ１）７２７１を選択した旨を設定する。
【０３７４】
一方、送話入力信号のパワースペクトル｜Ｚ［ｎ，ω］｜２の全周波数の和よりも擬似エコー信号のパワースペクトル｜Ｙ’２［ｎ，ω］｜２の全周波数の和が小さく、かつ擬似エコー信号のパワースペクトル｜Ｙ’２［ｎ，ω］｜２の全周波数の和が擬似エコー信号のパワースペクトル｜Ｙ’１［ｎ，ω］｜２の全周波数の和よりも大きい場合は、制御部（ＣＯＮＴ）７２７ｈは、制御情報ＥＣｃｏｎｔｒｏｌ［ｎ，ω］には全周波数で第２のエコーキャンセラ部（ＥＣ２）７２７２を選択した旨を設定する。
【０３７５】
または、送話入力信号のパワースペクトル｜Ｚ［ｎ，ω］｜２よりも擬似エコー信号のパワースペクトル｜Ｙ’１［ｎ，ω］｜２が小さく、かつ擬似エコー信号のパワースペクトル｜Ｙ’１［ｎ，ω］｜２が擬似エコー信号のパワースペクトル｜Ｙ’２［ｎ，ω］｜２よりも大きい場合は、制御部（ＣＯＮＴ）７２７ｈは、制御情報ＥＣｃｏｎｔｒｏｌ［ｎ，ω］には周波数ωごとに第１のエコーキャンセラ部（ＥＣ１）７２７１を選択した旨を設定する。
【０３７６】
そして、送話入力信号のパワースペクトル｜Ｚ［ｎ，ω］｜２よりも擬似エコー信号のパワースペクトル｜Ｙ’２［ｎ，ω］｜２が小さく、かつ擬似エコー信号のパワースペクトル｜Ｙ’２［ｎ，ω］｜２が擬似エコー信号のパワースペクトル｜Ｙ’１［ｎ，ω］｜２よりも大きい場合は、制御部（ＣＯＮＴ）７２７ｈは、制御情報ＥＣｃｏｎｔｒｏｌ［ｎ，ω］には周波数ωごとに第２のエコーキャンセラ部（ＥＣ２）７２７２を選択した旨を設定する。
【０３７７】
上記のように構成された、第７の実施形態に係る信号処理装置の処理の流れを、図３２を参照して説明する。なお、図３０を参照して説明した第６の実施形態に係る信号処理装置の動作と同じ動作ステップについては、同じ符号を付してその部分の説明を省略する。
【０３７８】
図３２においてステップＳ６００４後に、周波数領域適応フィルタ部（ＦＤＡＦ）６２７１ｂは、エコー成分推定処理として、受話入力信号の周波数スペクトルＸ１［ｎ，ω］とフィルタ係数Ｈ１［ｎ，ω］を用いて擬似エコー信号の周波数スペクトルＹ’１［ｎ，ω］を算出する（ステップＳ７００９−１）。
【０３７９】
同様に、周波数領域適応フィルタ部（ＦＤＡＦ）６２７２ｂは、エコー成分推定処理として、受話入力信号の周波数スペクトルＸ２［ｎ，ω］とフィルタ係数Ｈ２［ｎ，ω］を用いて擬似エコー信号の周波数スペクトルＹ’２［ｎ，ω］を算出する（ステップＳ７００９−２）。
【０３８０】
そして、制御部（ＣＯＮＴ）７２７ｈは、擬似エコー信号の周波数スペクトルＹ’１［ｎ，ω］と、擬似エコー信号の周波数スペクトルＹ’２［ｎ，ω］と、送話入力信号の周波数スペクトルＺ［ｎ，ω］とを入力とし、第１のエコーキャンセラ部（ＥＣ１）７２７１及び第２のエコーキャンセラ部（ＥＣ２）７２７２のどちらのエコーキャンセラ部が選択されたかを示す制御情報ＥＣｃｏｎｔｒｏｌ［ｎ，ω］を出力する（ステップＳ７００７）。そして、ステップＳ６２０１の信号減算処理以降を行う。
【０３８１】
上記では、エコーキャンセラ部は第１のエコーキャンセラ部（ＥＣ１）７２７１及び第２のエコーキャンセラ部（ＥＣ２）７２７２の２つであるが、エコーキャンセラ部の数ｑをｑ＞２とした場合も、上記と同様に構成され動作する。
【０３８２】
上記では、第１のエコーキャンセラ部（ＥＣ１）７２７１及び第２のエコーキャンセラ部（ＥＣ２）７２７２は、ＦＦＴ変換を用いたブロック処理適応フィルタを高速処理する方式としての勾配拘束のない周波数領域型適応フィルタの例を示しているが、勾配拘束のある周波数領域型適応フィルタで構成してもよい。
【０３８３】
また、第１のエコーキャンセラ部（ＥＣ１）７２７１及び第２のエコーキャンセラ部（ＥＣ２）７２７２は、本実施形態ではＦＦＴ変換を用いたオーバーラップ保存法による例を示しているが、オーバーラップ加算法で構成したりＭＤＣＴ変換を用いたりしてもよい。
【０３８４】
以上説明した第７の実施形態に係る信号処理装置の動作により、第１のエコーキャンセラ部（ＥＣ１）７２７１及び第２のエコーキャンセラ部（ＥＣ２）７２７２に異なる遅延量となる受話入力信号を入力して、エコー抑圧処理し、そのエコー抑圧処理結果を第１の信号選択部（ＳＥＬ１）６２７ｉで送話入力信号よりも小さい限りにおいてパワー最大基準で選択することにより、遅延量の推定を行わないため、遅延量の推定精度にエコー抑圧処理性能を依存させなくすることができ、真の遅延量Ｄ＊の変動時においても安定したエコー抑圧処理性能が得られ、真の遅延量Ｄ＊の変動に対して頑健にすることができる。また、第６の実施形態と比べると、エコー抑圧処理部（ＥＣＰ）６２に代えてエコー抑圧処理部（ＥＣＰ）７２は周波数領域での信号減算処理が少なくなっているため、計算量を削減することができる。
【０３８５】
なお、エコー抑圧処理部（ＥＣＰ）７２は、２つのエコーキャンセラ部、即ち、第１のエコーキャンセラ部（ＥＣ１）７２７１及び第２のエコーキャンセラ部（ＥＣ２）７２７２を有するとしたが、３つ以上のエコーキャンセラ部を有しても良い。
【０３８６】
３つ以上のエコーキャンセラ部を有する場合、それぞれのエコーキャンセラ部の入力は、エコー抑圧処理部（ＥＣＰ）４２２が３つ以上のエコーキャンセラ部を有する場合の動作で説明した通りである。
【０３８７】
また、３つ以上のエコーキャンセラ部を有する場合、制御部（ＣＯＮＴ）７２７ｈは、送話入力信号のパワースペクトルの全周波数の和よりもパワースペクトルの全周波数の和が小さい擬似エコー信号を出力するエコーキャンセラ部があれば、その中で、最大のパワースペクトルの擬似エコー信号を出力するエコーキャンセラ部を全周波数で選択した旨を制御情報ＥＣｃｏｎｔｒｏｌ［ｎ，ω］に設定する。または、周波数ωごとに、同様に設定する。
【０３８８】
複数のエコーキャンセラ部を有し、それぞれのエコーキャンセラ部の入力を過去に異なる時間さかのぼった受話入力信号とすることで、いずれかのエコーキャンセラ部に真の遅延量Ｄ＊に相当する受話入力信号を入力することができるため、真の遅延量Ｄ＊の変動時においても安定したエコー抑圧処理性能が得られ、真の遅延量Ｄ＊の変動に対して頑健にすることができる。
【０３８９】
（第８の実施形態）
第８の実施形態に係る信号処理装置が第５の実施形態に係る信号処理装置と異なる点は、エコー抑圧処理部（ＥＣＰ）５２を有さず、エコー抑圧処理部（ＥＣＰ）８２を有する点にあり、その他の部分は同じである。そこで、同じ部分については、同じ符号を付してその説明を省略する。
【０３９０】
図３３は、本発明の第８の実施形態に係る信号処理装置のエコー抑圧処理部（ＥＣＰ）８２の構成を示すブロック図である。第８の実施形態に係るエコー抑圧処理部（ＥＣＰ）８２は、第５の実施形態に係るエコー抑圧処理部（ＥＣＰ）５２と同じ部分を有している。そこで、同じ部分については、同じ符号を付してその説明を省略する。
【０３９１】
このエコー抑圧処理部（ＥＣＰ）８２は、受話信号記憶部（ＲＢＵＦＦ）５２１と、受話信号遅延処理部（ＲＤＰ）５２５１と、受話信号遅延処理部（ＲＤＰ）５２５２と、第１のエコーリダクション部（ＥＲ１）８２７１と、第２のエコーリダクション部（ＥＲ２）８２７２と、周波数領域変換処理部（ＦＴ）５２７ｂと、送話パワー算出部（ＰＯＷ）５２７ｄと、周波数領域逆変換処理部（ＩＦＴ）５２７Ｌと、ゲイン格納部（ＧＴＢＬ）３２７ｈと、エコー抑圧ゲイン算出部（ＧＣＡＬ）３２７ｉと、信号抑圧部（ＳＳ）３２７ｊと、信号選択部（ＳＥＬ）８２８とからなる。
【０３９２】
図３４は、第Ｑのエコーリダクション部（ＥＲＱ）８２７Ｑ（ここで、Ｑは、１または２。）の構成を示すブロック図である。第Ｑのエコーリダクション部（ＥＲＱ）８２７Ｑは、周波数領域変換処理部（ＦＴ）５２７Ｑａと、受話パワー算出部（ＰＯＷ）５２７Ｑｃと、音響結合量推定部（ＡＣＬＥ）５２７Ｑｅと、エコー量推定部（ＥＬＥ）５２７Ｑｆと、周波数領域制御部（ＦＣＮＴ）５２７Ｑｇとからなる。
【０３９３】
上記のように構成された、本発明の第８の実施形態に係る信号処理装置のエコー抑圧処理部（ＥＣＰ）８２の各部の動作を、図３３及び図３４を参照して説明する。
【０３９４】
第Ｑのエコーリダクション部（ＥＲＱ）８２７Ｑは、受話信号遅延処理部（ＲＤＰ）５２５Ｑから出力された受話入力信号ｘＷＱ［ｎ］と、送話パワー算出部（ＰＯＷ）５２７ｄから出力された送話入力信号のパワースペクトル｜Ｚ［ｎ，ω］｜２とを入力とし、スムージングしたエコー量｜ＹＱＳ［ｎ，ω］｜２を算出して出力する。
【０３９５】
信号選択部（ＳＥＬ）８２８は、第１のエコーリダクション部（ＥＲ１）８２７１のエコー量推定部（ＥＬＥ）５２７１ｆから出力されたエコー量｜Ｙ１Ｓ［ｎ，ω］｜２と第２のエコーリダクション部（ＥＲ２）８２７２の、エコー量推定部（ＥＬＥ）５２７２ｆから出力されたエコー量｜Ｙ２Ｓ［ｎ，ω］｜２と、送話パワー算出部（ＰＯＷ）５２７ｄから出力された送話入力信号のパワースペクトル｜Ｚ［ｎ，ω］｜２とを入力とし、エコー量｜ＹＳ［ｎ，ω］｜２を算出して出力する。
【０３９６】
具体的には、信号選択部（ＳＥＬ）８２８は、送話入力信号のパワースペクトル｜Ｚ［ｎ，ω］｜２の全周波数の和よりもエコー量｜Ｙ１Ｓ［ｎ，ω］｜２の全周波数の和が小さく、かつエコー量｜Ｙ１Ｓ［ｎ，ω］｜２の全周波数の和がエコー量｜Ｙ２Ｓ［ｎ，ω］｜２の全周波数の和よりも大きい場合は、全周波数で第１のエコーリダクション部（ＥＲ１）８２７１の出力を選択して、エコー量｜ＹＳ［ｎ，ω］｜２は、エコー量｜Ｙ１Ｓ［ｎ，ω］｜２であるとして出力する。
【０３９７】
一方、送話入力信号のパワースペクトル｜Ｚ［ｎ，ω］｜２の全周波数の和よりもエコー量｜Ｙ２Ｓ［ｎ，ω］｜２の全周波数の和が小さく、かつエコー量｜Ｙ２Ｓ［ｎ，ω］｜２の全周波数の和がエコー量｜Ｙ１Ｓ［ｎ，ω］｜２の全周波数の和よりも大きい場合は、信号選択部（ＳＥＬ）８２８は、全周波数で第２のエコーリダクション部（ＥＲ２）８２７２の出力を選択して、エコー量｜ＹＳ［ｎ，ω］｜２は、エコー量｜Ｙ２Ｓ［ｎ，ω］｜２であるとして出力する。
【０３９８】
または、送話入力信号のパワースペクトル｜Ｚ［ｎ，ω］｜２よりもエコー量｜Ｙ１Ｓ［ｎ，ω］｜２が小さく、かつエコー量｜Ｙ１Ｓ［ｎ，ω］｜２がエコー量｜Ｙ２Ｓ［ｎ，ω］｜２よりも大きい場合は、信号選択部（ＳＥＬ）８２８は、周波数ωごとに第１のエコーリダクション部（ＥＲ１）８２７１の出力を選択して、周波数ωごとにエコー量｜ＹＳ［ｎ，ω］｜２は、エコー量｜Ｙ１Ｓ［ｎ，ω］｜２であるとして出力する。
【０３９９】
一方、送話入力信号のパワースペクトル｜Ｚ［ｎ，ω］｜２よりもエコー量｜Ｙ２Ｓ［ｎ，ω］｜２が小さく、かつエコー量｜Ｙ２Ｓ［ｎ，ω］｜２がエコー量｜Ｙ１Ｓ［ｎ，ω］｜２よりも大きい場合は、信号選択部（ＳＥＬ）８２８は、周波数ωごとに第２のエコーリダクション部（ＥＲ２）８２７２の出力を選択して、周波数ωごとにエコー量｜ＹＳ［ｎ，ω］｜２は、エコー量｜Ｙ２Ｓ［ｎ，ω］｜２であるとして出力する。
【０４００】
上記のように構成された、第８の実施形態に係る信号処理装置の処理の流れを、図３５〜図３６を参照して説明する。図３５は信号処理装置全体の処理の流れを示すフローチャートであり、図３６は第１のエコーリダクション部（ＥＲ１）８２７１及び第２のエコーリダクション部（ＥＲ２）８２７２における処理の流れを示すフローチャートである。なお、図２７〜図２８を参照して説明した第５の実施形態に係る信号処理装置の動作と同じ動作ステップについては、同じ符号を付してその部分の説明を省略する。
【０４０１】
図３５においてステップＳ５００４後に、第１のエコーリダクション部（ＥＲ１）８２７１はスムージングしたエコー量｜Ｙ１Ｓ［ｎ，ω］｜２を算出し、第２のエコーリダクション部（ＥＲ２）８２７２はスムージングしたエコー量｜Ｙ２Ｓ［ｎ，ω］｜２を算出する（ステップＳ８００５）。
【０４０２】
そして、信号選択部（ＳＥＬ）８２８は、エコー量｜Ｙ１Ｓ［ｎ，ω］｜２と、エコー量｜Ｙ２Ｓ［ｎ，ω］｜２と、送話入力信号のパワースペクトル｜Ｚ［ｎ，ω］｜２とを入力とし、エコー量｜ＹＳ［ｎ，ω］｜２を算出する（ステップＳ８００７）。そして、ステップＳ３２０６のエコー抑圧ゲイン算出処理を行う。
【０４０３】
図３６に示す第１のエコーリダクション部（ＥＲ１）８２７１及び第２のエコーリダクション部（ＥＲ２）８２７２の処理は、次のように行われる。ステップＳ５２０５−１及びステップＳ５２０５−２のエコー量推定処理までを行った後、エコーリダクション処理が終了する。
【０４０４】
上記では、エコーキャンセラ部は第１のエコーリダクション部（ＥＲ１）８２７１及び第２のエコーリダクション部（ＥＲ２）８２７２の２つであるが、エコーキャンセラ部の数ｑをｑ＞２とした場合も、上記と同様に構成され動作する。
【０４０５】
上記では、第１のエコーリダクション部（ＥＲ１）８２７１及び第２のエコーリダクション部（ＥＲ２）８２７２はＦＦＴ変換による周波数領域変換で周波数帯域毎に処理する方式として動作するものとして説明した。ＦＦＴ変換による周波数帯域をグループでまとめて周波数帯域グループ毎に処理する方式や、ＭＤＣＴ変換を用いる方式や、フィルタバンクなどの帯域分割フィルタなどの周波数領域型エコー抑圧処理を実現してもよい。
【０４０６】
以上説明した第８の実施形態に係る信号処理装置の動作により、第５の実施形態に係る信号処理装置の動作と同様に、第１のエコーリダクション部（ＥＲ１）８２７１及び第２のエコーリダクション部（ＥＲ２）８２７２に異なる遅延量となる受話入力信号を入力して、エコー抑圧処理し、それらのエコー抑圧処理結果から信号選択部（ＳＥＬ）８２８が選択することにより、遅延量の推定を行わないため、遅延量の推定精度にエコー抑圧処理性能を依存させなくすることができる。
【０４０７】
なお、上記の説明は、エコー抑圧処理部（ＥＣＰ）８２は、２つのエコーリダクション部、即ち、第１のエコーリダクション部（ＥＲ１）８２７１及び第２のエコーリダクション部（ＥＲ２）８２７２を有する場合を主にしたが、３つ以上のエコーリダクション部を有しても良い。
【０４０８】
３つ以上のエコーリダクション部を有する場合、それぞれのエコーリダクション部の入力は、エコー抑圧処理部（ＥＣＰ）５２が３つ以上のエコーリダクション部を有する場合の動作で説明した通りである。
【０４０９】
また、３つ以上のエコーリダクション部を有する場合、信号選択部（ＳＥＬ）８２８は、送話入力信号のパワースペクトルの全周波数の和よりも全周波数の和が小さいエコー量を出力するエコーリダクション部の中で、最大のエコー量を出力するエコーリダクション部の出力を選択する。または、周波数ωごとに、送話入力信号のパワースペクトルより小さく、かつ、最大のエコー量を出力するエコーリダクション部の出力を選択する。
【０４１０】
複数のエコーキャンセラ部を有し、それぞれのエコーキャンセラ部の入力を過去に異なる時間さかのぼった受話入力信号とすることで、いずれかのエコーキャンセラ部に真の遅延量Ｄ＊に相当する受話入力信号を入力することができるため、真の遅延量Ｄ＊の変動時においても安定したエコー抑圧処理性能が得られ、真の遅延量Ｄ＊の変動に対して頑健にすることができる。
【０４１１】
（その他の実施形態）
なお、本発明は通話装置に適用されるものであって、通話装置は、通話機能を有する装置全般をいい、例えば、ハンズフリー通話機能を有するハンズフリー通話装置や、電話機、インターフォン、携帯電話、ＰＨＳ、ＶｏＩＰソフトウェア、ＶｏＩＰシステム、ＴＶ会議システムなどを含む。
【０４１２】
上記各実施の形態は、受話出力信号が送話入力信号に回り込み音響結合することで発生していたエコーを受話入力信号を参照として送話入力信号から抑圧する構成であったが、送話出力信号が図示しない遠端において回り込んで音響結合したエコーを送話出力信号を参照として受話入力信号から抑圧する構成としてもよい。
【０４１３】
少なくともエコー成分を低減させる信号処理の例として、エコーキャンセラ、エコーリダクションを挙げて説明した。このように記載したのは一般的な呼称であるからであり、本発明はこれら呼称に限定されるものではない。また、本発明の要旨を逸脱しない範囲でこれらの信号処理の組み合わせにおいても実施し得ることが可能である。
【０４１４】
本発明は、上記各実施の形態に限ることなく、その他、実施段階ではその要旨を逸脱しない範囲で種々の変形を実施し得ることが可能である。さらに、上記各実施形態には、種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組合せにより種々の発明が抽出され得る。
【０４１５】
また、例えば各実施形態に示される全構成要件から幾つかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。本発明は装置のみならず、当該装置の機能を実現する方法やプログラムとしても成立する。
【図面の簡単な説明】
【０４１６】
【図１】本発明の第１の実施形態に係る信号処理装置の構成を示すブロック図。
【図２】本発明の第１の実施形態に係るエコー抑圧処理部（ＥＣＰ）の構成を示すブロック図。
【図３】本発明の第１の実施形態に係るエコーキャンセラ部（ＥＣ）の構成を示すブロック図。
【図４】本発明の第１の実施形態に係るエコー成分の抑圧可能な遅延量の範囲を示す図。
【図５】本発明の第１の実施形態に係るエコーパスのインパルス応答の一例を示す図。
【図６】本発明の第１の実施形態に係るエコー成分の量子化された遅延量と推定された遅延量の関係を示す図。
【図７】本発明の第１の実施形態に係る信号処理装置の処理を示すフローチャート。
【図８】本発明の第１の実施形態に係るエコー抑圧処理部（ＥＣＰ）の遅延量に関する処理を示すフローチャート。
【図９】本発明の第１の実施形態に係るエコーキャンセラ部（ＥＣ）の処理を示すフローチャート。
【図１０】本発明の第２の実施形態に係る信号処理装置のエコー抑圧処理部（ＥＣＰ）の構成を示すブロック図。
【図１１】本発明の第２の実施形態に係るエコーキャンセラ部（ＥＣ）の構成を示すブロック図。
【図１２】本発明の第２の実施形態に係る信号処理装置の処理を示すフローチャート。
【図１３】本発明の第２の実施形態に係るエコー抑圧処理部（ＥＣＰ）の遅延量に関する処理を示すフローチャート。
【図１４】本発明の第２の実施形態に係るエコーキャンセラ部（ＥＣ）の処理を示すフローチャート。
【図１５】本発明の第３の実施形態に係る信号処理装置のエコー抑圧処理部（ＥＣＰ）の構成を示すブロック図。
【図１６】本発明の第３の実施形態に係るエコーリダクション部（ＥＲ）の構成を示すブロック図。
【図１７】本発明の第３の実施形態に係る周波数領域変換処理部（ＦＴ）で用いられる窓関数の一例を示す図。
【図１８】本発明の第３の実施形態に係る信号処理装置の処理を示すフローチャート。
【図１９】本発明の第３の実施形態に係るエコー抑圧処理部（ＥＣＰ）の遅延量に関する処理を示すフローチャート。
【図２０】本発明の第３の実施形態に係るエコーリダクション部（ＥＲ）の処理を示すフローチャート
【図２１】本発明の第４の実施形態に係る信号処理装置のエコー抑圧処理部（ＥＣＰ）の構成を示すブロック図
【図２２】本発明の第４の実施形態に係る信号処理装置の処理を示すフローチャート。
【図２３】本発明の第４の実施形態に係る第１のエコーキャンセラ部（ＥＣ１）及び第２のエコーキャンセラ部（ＥＣ２）の処理を示すフローチャート。
【図２４】本発明の第４の実施形態の変形例に係る信号処理装置のエコー抑圧処理部（ＥＣＰ）の構成を示すブロック図。
【図２５】本発明の第５の実施形態に係る信号処理装置のエコー抑圧処理部（ＥＣＰ）の構成を示すブロック図。
【図２６】本発明の第５の実施形態に係る第１のエコーリダクション部（ＥＲ１）及び第２のエコーリダクション部（ＥＲ２）の構成を示すブロック図
【図２７】本発明の第５の実施形態に係る信号処理装置の処理を示すフローチャート。
【図２８】本発明の第５の実施形態に係る第１のエコーリダクション部（ＥＲ１）及び第２のエコーリダクション部（ＥＲ２）の処理のフローチャート。
【図２９】本発明の第６の実施形態に係る信号処理装置のエコー抑圧処理部（ＥＣＰ）の構成を示すブロック図。
【図３０】本発明の第６の実施形態に係る信号処理装置の処理を示すフローチャート。
【図３１】本発明の第７の実施形態に係る信号処理装置のエコー抑圧処理部（ＥＣＰ）の構成を示すブロック図。
【図３２】本発明の第７の実施形態に係る信号処理装置の処理を示すフローチャート。
【図３３】本発明の第８の実施形態に係る信号処理装置のエコー抑圧処理部（ＥＣＰ）の構成を示すブロック図。
【図３４】本発明の第８の実施形態に係る第１のエコーリダクション部（ＥＲ１）及び第２のエコーリダクション部（ＥＲ２）の構成を示すブロック図。
【図３５】本発明の第８の実施形態に係る信号処理装置の処理を示すフローチャート。
【図３６】本発明の第８の実施形態に係る第１のエコーリダクション部（ＥＲ１）及び第２のエコーリダクション部（ＥＲ２）の処理のフローチャート。
【符号の説明】
【０４１７】
１１  通信部（ＣＯＭ）
１２、２２、３２、４２、４２２、５２、６２、７２、８２  エコー抑圧処理部（ＥＣＰ）
１２１、２２１、３２１、４２１、５２１  受話信号記憶部（ＲＢＵＦＦ）
１２２  送話信号記憶部（ＳＢＵＦＦ）
１２３、２２３、３２３  遅延量推定部（ＴＤＥ）
１２４、２２４、３２４  遅延量量子化部（ＤＱ）
１２５、２２５、３２５、４２５１、４２５２、５２５１、５２５２  受話信号遅延処理部（ＲＤＰ）
１２６  遅延量変化検出部（ＤＣＤ）
１２７、２２７  エコーキャンセラ部（ＥＣ）
１２７ａ  適応フィルタ部（ＡＦ）
１２７ｂ、２２７ｄ、４２７１ｄ、４２７２ｄ、６２７ｄ、６２７１ｄ、６２７２ｄ  信号減算処理部
１２７ｃ  適応フィルタ制御部（ＣＮＴ）
１３  Ｄ／Ａ変換器（Ｄ／Ａ）
１８  Ａ／Ｄ変換器（Ａ／Ｄ）
２２７ａ、２２７ｅ、３２７ａ、３２７ｂ、４２７ａ、５２７ｂ、６２７ｅ、６２７ｇ、４２７１ａ、４２７１ｅ、４２７２ａ、４２７２ｅ、５２７１ａ、５２７２ａ  周波数領域変換処理部（ＦＴ）
２２７ｂ、４２７１ｂ、４２７２ｂ、６２７１ｂ、６２７２ｂ  周波数領域適応フィルタ部（ＦＤＡＦ）
２２７ｃ、３２７Ｌ、４２７１ｃ、４２７２ｃ、５２７Ｌ、６２７ｃ  周波数領域逆変換処理部（ＩＦＴ）
２２７ｆ、４２７１ｆ、４２７２ｆ、６２７１ｆ、６２７２ｆ  周波数領域適応フィルタ制御部（ＦＤＣＮＴ）
３２７  エコーリダクション部（ＥＲ）
３２７ｃ、５２７１ｃ、５２７２ｃ  受話パワー算出部（ＰＯＷ）
３２７ｄ、５２７ｄ  送話パワー算出部（ＰＯＷ）
３２７ｅ、５２７１ｅ、５２７２ｅ  音響結合量推定部（ＡＣＬＥ）
３２７ｆ、５２７１ｆ、５２７２ｆ  エコー量推定部（ＥＬＥ）
３２７ｇ、５２７１ｇ、５２７２ｇ  周波数領域制御部（ＦＣＮＴ）
３２７ｈ、５２７１ｈ、５２７２ｈ  ゲイン格納部（ＧＴＢＬ）
３２７ｉ、５２７１ｉ、５２７２ｉ  エコー抑圧ゲイン算出部（ＧＣＡＬ）
３２７ｊ、５２７１ｊ、５２７２ｊ  信号抑圧部（ＳＳ）
４２８、５２８、８２８  信号選択部（ＳＥＬ）
４２７１、６２７１、７２７１  第１のエコーキャンセラ部（ＥＣ１）
４２７２、６２７２、７２７２  第２のエコーキャンセラ部（ＥＣ２）
５２７１、８２７１  第１のエコーリダクション部（ＥＲ１）
５２７２、８２７２  第２のエコーリダクション部（ＥＲ２）
５２９  雑音推定部（ＮＥ）
６２７ｈ、７２７ｈ  制御部（ＣＯＮＴ）
６２７ｉ  第１の信号選択部（ＳＥＬ１）
６２７ｊ  第２の信号選択部（ＳＥＬ２）
【図１】
2008066782.tif 000030
【図２】
2008066782.tif 000031
【図３】
2008066782.tif 000032
【図４】
2008066782.tif 000033
【図５】
2008066782.tif 000034
【図６】
2008066782.tif 000035
【図７】
2008066782.tif 000036
【図８】
2008066782.tif 000037
【図９】
2008066782.tif 000038
【図１０】
2008066782.tif 000039
【図１１】
2008066782.tif 000040
【図１２】
2008066782.tif 000041
【図１３】
2008066782.tif 000042
【図１４】
2008066782.tif 000043
【図１５】
2008066782.tif 000044
【図１６】
2008066782.tif 000045
【図１７】
2008066782.tif 000046
【図１８】
2008066782.tif 000047
【図１９】
2008066782.tif 000048
【図２０】
2008066782.tif 000049
【図２１】
2008066782.tif 000050
【図２２】
2008066782.tif 000051
【図２３】
2008066782.tif 000052
【図２４】
2008066782.tif 000053
【図２５】
2008066782.tif 000054
【図２６】
2008066782.tif 000055
【図２７】
2008066782.tif 000056
【図２８】
2008066782.tif 000057
【図２９】
2008066782.tif 000058
【図３０】
2008066782.tif 000059
【図３１】
2008066782.tif 000060
【図３２】
2008066782.tif 000061
【図３３】
2008066782.tif 000062
【図３４】
2008066782.tif 000063
【図３５】
2008066782.tif 000064
【図３６】
2008066782.tif 000065