(57)【要約】【課題】エコー経路が急峻に変化し、エコー信号の遅延が変わった場合でも、特段の装置規模を大きくすることなく、速やかにエコーを追従し、除去することができるエコーキャンセラを提供する。【解決手段】本発明のエコーキャンセラは、適応フィルタを含む擬似エコー生成手段を備えるものであり、周波数マスキング効果によりマスキングされる特定周波数成分を含む参照信号を形成してエコー経路に出力し、さらに送話信号から参照信号に由来する特定周波数成分のエコー成分を検出し、特定周波数成分を含む参照信号の形成タイミングと、送話信号中の特定周波数成分のエコー成分の検出タイミングとに基づいてエコー経路の初期遅延量を求める初期遅延推定手段と、初期遅延推定手段からのエコー経路の初期遅延量を受話信号に付与して擬似エコー生成手段に与える遅延付与手段とを備えることを特徴とする。【選択図】      図１
2010206515.tif 000002
【特許請求の範囲】
【請求項１】
適応フィルタを含む擬似エコー生成手段が受話信号に基づいて擬似エコー信号を生成し、エコー消去手段が送話信号から擬似エコー信号を減算することにより、送話信号からエコー信号を消去するエコーキャンセラにおいて、
周波数マスキング効果によりマスキングされる特定周波数成分を含む参照信号を形成してエコー経路に出力し、さらに送話信号から上記参照信号に由来する上記特定周波数成分のエコー成分を検出し、上記特定周波数成分を含む上記参照信号の形成タイミングと、上記送話信号中の上記特定周波数成分のエコー成分の検出タイミングとに基づいてエコー経路の初期遅延量を求める初期遅延推定手段と、
上記初期遅延推定手段からの上記エコー経路の初期遅延量を上記受話信号に付与して上記擬似エコー生成手段に与える遅延付与手段と
を備えることを特徴とするエコーキャンセラ。
【請求項２】
上記初期遅延推定手段は、上記受話信号から上記特定周波数成分を間欠的に除去することで、上記特定周波数成分を含む上記参照信号を形成することを特徴とする請求項１に記載のエコーキャンセラ。
【請求項３】
上記初期遅延推定手段は、特定周波数断続部、特定周波数波形再現部及び遅延量判定部とを備え、
上記特定周波数断続部が、
上記受話信号から、少なくとも１種類の周波数成分についてディジタルフーリエ変換を行なう受話側ディジタルフーリエ変換部と、
ディジタルフーリエ変換された周波数成分を保持する受話側周波数成分保持部と、
上記受話側周波数成分保持部に保持される、少なくとも１種類の周波数成分について逆ディジタルフーリエ変換を行なう受話側逆ディジタルフーリエ変換部と、
上記受話信号を保持する受話信号保持部と、
上記受話信号保持部から出力される上記受話信号から、上記受話側逆ディジタルフーリエ変換部から出力される上記各周波数成分を間欠的に除去する周波数成分除去部と
を有し、
上記特定周波数波形再現部が、
上記送話信号から、少なくとも１種類の周波数成分についてディジタルフーリエ変換を行なう送話側ディジタルフーリエ変換部と、
ディジタルフーリエ変換された周波数成分を保持する周波数成分保持部と、
上記周波数成分保持部に保持される、少なくとも１種類の周波数成分について逆ディジタルフーリエ変換を行なう送話側逆ディジタルフーリエ変換部と
を有し、
上記遅延量判定部が、上記特定周波数断続部からの出力信号と、上記特定周波数波形再現部からの出力信号とのパワー又はレベルの急変時刻差に基づいて上記エコー経路の初期遅延量を求める
ことを特徴とする請求項１又は２に記載のエコーキャンセラ。
【請求項４】
上記遅延量判定部が、上記特定周波数断続部からの出力信号の上記特定周波数成分の除去に係るパワー又はレベルの急降下時刻と、上記特定周波数波形再現部からの出力信号の上記特定周波数成分のパワー又はレベルの急上昇時刻との差を、上記エコー経路の初期遅延量とすることを特徴とする請求項３に記載のエコーキャンセラ。
【請求項５】
上記受話側逆ディジタルフーリエ変換部と、上記周波数成分除去部との間に設けられ、上記受話信号から検出した音声の検出結果に応じて接続切替を行なう切替部を更に備え、
上記遅延量判定部が、上記切替部の切替時刻と、上記特定周波数波形再現部からの出力信号の上記特定周波数成分のパワー又はレベルの急上昇時刻との差を、上記エコー経路の初期遅延量とすることを特徴とする請求項３に記載のエコーキャンセラ。
【請求項６】
上記初期遅延推定手段による上記特定周波数成分を含む上記参照信号の形成タイミングと、上記初期遅延推定手段が求めた上記エコー経路の初期遅延量とに基づいて、上記適応フィルタの有効フィルタ長を求めるフィルタ長推定手段を更に備えることを特徴とする請求項１〜５のいずれかに記載のエコーキャンセラ。
【請求項７】
上記受話信号からパワー又はレベルの強い周波数を求め、この周波数を用いて、上記特定周波数断続部で特定する周波数を決定する周波数決定部を更に備えることを特徴とする請求項１〜６のいずれかに記載のエコーキャンセラ。
【請求項８】
上記周波数決定部が、上記受話信号から求めたパワー又はレベルの強い周波数に対して周波数を角速度Δωだけずらした角速度ωを求め、この角速度ωを、受話側ディジタルフーリエ変換部、受話側逆ディジタルフーリエ変換部、送話側ディジタルフーリエ変換部及び送話側逆ディジタルフーリエ変換部に与えることを特徴とする請求項７に記載のエコーキャンセラ。
【請求項９】
上記周波数決定部において、上記角速度Δωは、０＜Δω≦０．２ωに設定されることを特徴とする請求項８に記載のエコーキャンセラ。
【請求項１０】
上記周波数決定部が、上記受話信号から求めたパワー又はレベルの強い周波数を高周波数側にずらすことを特徴とする請求項８又は９に記載のエコーキャンセラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、エコーキャンセラに関し、例えば、パーソナルコンピュータに搭載するエコーキャンセラに適用し得るものである。
【背景技術】
【０００２】
近年、例えばインターネットのようなＩＰネットワークを利用して音声信号を通信するＶｏＩＰを用いたＩＰ電話が普及している。この一例として、パーソナルコンピュータ（ＰＣ）上で動作するソフトフォンと呼ばれるＩＰ電話も利用されている。このソフトフォンでは、ＰＣに内蔵されるサウンドデバイス（Ａ／Ｄ変換器やＤ／Ａ変換器などを含む）を用いて音声の入出力を行っている。
【０００３】
従来のサウンドデバイスを用いたエコーキャンセラの処理について図２を参照して説明する。
【０００４】
図２において、図示しない遠端話者からの音声データは、インターネット１００を通じてネットワーク端末装置１１５（例えばＰＣ等）内の回線インターフェース１１４に入力される。
【０００５】
そして、音声データは、復号器１０１で音声波形信号（以後、音声信号という）に復号される。音声信号は音声出力ドライバ１０２に入力され、音声出力ドライバ１０２の出力信号はネットワーク端末装置１１５に装備されたサウンドボード１０３の途切れ緩衝用蓄積バッファ１０４に入力される。
【０００６】
途切れ緩衝用蓄積バッファ１０４は過去に蓄積された音声信号から順にディジタル−アナログ変換器（以後、Ｄ／Ａという）１０５に出力し、Ｄ／Ａ１０５は信号をアナログ信号に変換してスピーカ端子１１６を通じてスピーカ１０６とアナログ−ディジタル変換器（以後、Ａ／Ｄという）１０８に出力する。
【０００７】
スピーカ１０６で放射された音声信号はマイクロフォン１０７に回り込み、Ａ／Ｄ１０８に入力される。Ａ／Ｄ１０８に入力された信号のうち、Ｄ／Ａ１０５から直接入力された信号は途切れ緩衝用蓄積バッファ１０９を経由して信号ｒ（ｋ）として、音声入力ドライバ１１０内の適応フィルタ１１１に入力される。
【０００８】
一方、スピーカ１０６を経由してＡ／Ｄ１０８に入力された信号は途切れ緩衝用蓄積バッファ１０９を経由して加算器１１２に入力される。適応フィルタ１１１では、信号ｒ（ｋ）と信号ｆ（ｋ）を入力として打ち消し信号（擬似エコー信号）ｓ（ｋ）を作成する。この信号ｓ（ｋ）の作成に関しては、信号ｆ（ｋ）を最小にする適応アルゴリズム、例えば公知のＮＬＭＳアルゴリズムなどが使われるが、ｆ（ｋ）を最小にする適応アルゴリズムであれば種々の方法を適用することができる。
【０００９】
加算器１１２では、スピーカ１０６から入力された信号（すなわち、エコー信号）と擬似エコー信号ｓ（ｋ）を相殺し、これにより得られた信号ｆ（ｋ）を適応フィルタ１１１及び符号化器１１３に出力する。また、符号化器１１３では、音声信号をインターネット１００に出力するため、音声データをパケット整形して変換し、回線インターフェース１１４を通じてインターネット１００に出力する。
【００１０】
ところで、ネットワーク端末装置１１５が、例えばＰＣ等のように通信処理の他にもいろいろな処理を実行する装置である場合、エコーキャンセラにとって不都合が発生する。
【００１１】
これは、例えばＰＣのような汎用装置では、通信のようなリアルタイム性を必要とする処理の他にも、色々なアプリケーションプログラムを実行させており、計算資源（例えばＰＣＵやメモリなどのリソース）を使用しているから、音声出力ドライバ１０２や音声入力ドライバ１１０は一旦処理を待機させることが発生するからである。
【００１２】
通常、音声処理の待機はそのまま音声信号の断絶につながる。そこで、従来技術では途切れ緩衝用蓄積バッファ１０４及び１０９に予め音声データを蓄積しておき、音声処理の待機が発生しても、その間、途切れ緩衝用蓄積バッファ１０４及び１０９に蓄積済みの音声信号をＤ／Ａ１０５やＡ／Ｄ１０８に出力し、音声の途切れを防ぐようになっている。なお、この途切れ緩衝用蓄積バッファ１０４及び１０９に蓄積されるデータがなくなれば音声データの出力ができなくなる。
【００１３】
また、逆に音声出力ドライバ１０２や音声入力ドライバ１０９は動作しているのに、何らかの原因により途切れ緩衝用蓄積バッファ１０４及び１０９の出力が待機される場合がある。この場合、途切れ緩衝用蓄積バッファ１０４及び１０９にデータが流れ込むが、データ出力できないために、蓄積データが溜まってしまい蓄積量が飽和してしまう。この飽和中に、途切れ緩衝用蓄積バッファ１０４及び１０９に入力すると、そのデータを蓄積できず、破棄されてしまう。
【００１４】
こうした、途切れ緩衝用蓄積バッファ１０４及び１０９のデータの枯渇や飽和は、音声信号として双方とも音声の途切れという現象になって現れる。
【００１５】
さらに、このような音声信号の途切れや、途切れ緩衝用蓄積バッファ１０４及び１０９の蓄積量変動は、適応フィルタ１１１を用いたエコー除去にとって性能劣化にも繋がる。その理由は次の通りである。
【００１６】
通常エコー除去のための適応フィルタ１１１（エコーキャンセラ）は、復号器１０１の出力と音声入力ドライバ１０９の出力を各々適応フィルタ１１１の入力として動作するように実装される。
【００１７】
そのため、信号経路として音声出力ドライバ１０２から始まって、途切れ緩衝用蓄積バッファ１０４、スピーカ１０６、マイク１０７を経由して途切れ緩衝用蓄積バッファ１０９、音声入力ドライバ１１０に至るまでの経路は、２つの途切れ緩衝用バッファ１０４及び１０９の蓄積量変化（遅延変化）と、音声の途切れ（バッファの枯渇や飽和）がエコー経路の時変動と要因となる。
【００１８】
公知のように適応フィルタ１１１は、エコー経路が時間不変である前提が成り立つときに効果を発揮するので、エコー経路に時間変動があると性能が大きく劣化することになる。
【００１９】
図２において、従来のエコーキャンセラは、Ｄ／Ａ１０５の出力から直接Ａ／Ｄ１０８に信号を入力し、Ａ／Ｄ１０８からの出力を途切れ緩衝用蓄積バッファ１０９を経由して適応フィルタ１１１に入力するようにする。すなわち、途切れ緩衝用蓄積バッファ１０９で途切れ（枯渇）、飽和の影響を受けた後の信号をアダプティブフィルタの参照入力信号ｒ（ｋ）として入力する。
【００２０】
またその一方で、途切れ緩衝用蓄積バッファ１０９で途切れ（枯渇）、飽和の影響が反映されているエコー信号を加算器１１２に入力するようにする。
【００２１】
このように、適応フィルタ１１１の入力にも途切れ緩衝用蓄積バッファ１０９の影響を取り込むことで、見かけ上、送受信の２つの経路上の途切れ緩衝用蓄積バッファ１０９の影響を相殺することができ、適応フィルタ１１１にとってエコー経路の時変動をなくすことでエコー除去能力の劣化を防止している。
【先行技術文献】
【特許文献】
【００２２】
【特許文献１】特開２００４−４０５８９号公報
【特許文献２】特開２００７−１８９５４３号公報
【特許文献３】特開２０００−２９５４６１号公報
【非特許文献】
【００２３】
【非特許文献１】小野測器，技術レポート「音質評価とは:５ラウドネス計算の基となる考え方」，２００９年１月３１日検索，http://www.onosokki.co.jp/HP-WK/c_support/newsreport/soundquality/soundquality_2.htm
【発明の概要】
【発明が解決しようとする課題】
【００２４】
しかしながら、図２に示す従来技術では、エコー除去のため、スピーカ１０６からマイクロフォン１０７までを結線させる必要があり、専用のサウンドボード１０３を用いる必要がある。そのため、装置として高価なものになってしまうおそれがある。
【００２５】
また、専用ボードを使用せずに済ませたい場合には、ステレオで動作する一方のチャンネルのスピーカ１０６用出力と他方のチャンネルのマイク端子とを電線で接続する必要がある。そのため、本来のステレオサウンドを用いることができなくなってしまうという欠点がある。さらにその上、エコーキャンセラの参照信号をマイクロフォン側の信号から採取するように変更する必要があり、ユーザがこれを実行するのはハードウェア的にもソフトウェア的にも大変困難であった。
【００２６】
これらの不都合は、エコー経路の急峻な変化に起因するものである。そこで、本願発明者等は、特許文献２において、大まかな参照入力信号とエコー信号の特性、すなわち参照入力信号のパワーのエンベロープとエコー信号のエンベロープとを用いてエンベロープ同士で適応フィルタを駆動し、適応的に初期遅延を推定してエコーキャンセラのタップを配置して初期遅延の時間変動に追従する技術を提案した。
【００２７】
しかし、エンベロープ特性を用いるためには、音声信号においてエンベロープが音声波形の様子を特徴的に表すまでの区間のデータを確保してからでないと相関関係が精度よく計算できないおそれが生じ得る。
【００２８】
これは、元来緩やかに変動するものである音声エンベロープというものを算出するためには不可避な時間遅延が生じるから、エコー経路に上記のようなＰＣ等のバッファのような跳躍的な遅延変化がかなりの頻度で前触れ無く発生する場合には、エンベロープ相関による追従性能が追いつかず、エコーを除去できないおそれがあるからである。
【００２９】
本発明は、上記課題に鑑み、サウンドボードは汎用のものを使うことができ、特段のハードウェア的改造をすることなく、途切れ緩衝用蓄積バッファの状態によってエコーの遅延が変わっても速やかにエコーを追従、除去できるエコーキャンセラを提供することを目的とする。
【課題を解決するための手段】
【００３０】
本発明のエコーキャンセラは、適応フィルタを含む擬似エコー生成手段が受話信号に基づいて擬似エコー信号を生成し、エコー消去手段が送話信号から擬似エコー信号を減算することにより、送話信号からエコー信号を消去するエコーキャンセラにおいて、（１）周波数マスキング効果によりマスキングされる特定周波数成分を含む参照信号を形成してエコー経路に出力し、さらに送話信号から参照信号に由来する特定周波数成分のエコー成分を検出し、特定周波数成分を含む参照信号の形成タイミングと、送話信号中の特定周波数成分のエコー成分の検出タイミングとに基づいてエコー経路の初期遅延量を求める初期遅延推定手段と、（２）初期遅延推定手段からのエコー経路の初期遅延量を受話信号に付与して擬似エコー生成手段に与える遅延付与手段とを備えることを特徴とする。
【発明の効果】
【００３１】
本発明によれば、エコー経路が急峻に変化し、エコー信号の遅延が変わった場合でも、特段の装置規模を大きくすることなく、速やかにエコーを追従し、除去することができる。
【図面の簡単な説明】
【００３２】
【図１】第１の実施形態のエコーキャンセラ及び周辺構成の構成を示す構成図である。
【図２】従来のエコーキャンセラの構成を示す構成図である。
【図３】第１の実施形態の初期遅延推定部の内部構成を示す内部構成図である。
【図４】エコー経路のインパルス応答の様子を説明する説明図である。
【図５】遅延量判定部が推定する遅延量を説明する説明図である。
【図６】第２の実施形態のエコーキャンセラ及び周辺構成の構成を示す構成図である。
【図７】第２の実施形態の遅延及び適応フィルタ長推定部の内部構成を示す内部構成図である。
【図８】遅延及び適応フィルタ長推定部が推定するタップ長を説明する説明図である。
【図９】第３の実施形態のエコーキャンセラ及び周辺構成の構成を示す構成図である。
【図１０】第３の実施形態のパラメータ推定部の内部構成を示す内部構成図である。
【発明を実施するための最良の形態】
【００３３】
（Ａ）第１の実施形態
以下では、本発明のエコーキャンセラの実施形態を、図面を参照しながら説明する。
【００３４】
第１の実施形態は、例えばＰＣ上のソフトフォン（例えばハンズフリー通話装置）において、適用フィルタを設けてエコーを打ち消すエコーキャンセラに、本発明を適用した実施形態を例示して説明する。
【００３５】
（Ａ−１）第１の実施形態の構成
（Ａ−１−１）全体構成
第１の実施形態のエコーキャンセラは、例えば、専用ボードとして構築されたものであっても良く、又ＤＳＰ（ディジタルシグナルプロセッサ）へのエコーキャンセルプログラムの書き込みによって実現されたものであっても良く、又ＣＰＵと、ＣＰＵが実行するソフトウェアによって実現されたものであっても良いが、機能的には図１で示すことができる。
【００３６】
図１は、第１の実施形態のエコーキャンセラ及びその周辺構成を示す構成図である。
【００３７】
図１において、エコーキャンセラ１は、音声出力ドライバ５及び音声入力ドライバ１５を介して、サウンドボード８と接続している。図１において、右側が近端話者（すなわち利用者）側であり、左側が図示しないネットワーク（例えばインターネット等）と接続し遠端話者側である。
【００３８】
エコーキャンセラ１は、遅延付与部２、適応フィルタ（ＡＤＦ）３、初期遅延推定部４、エコー打消し加算器１６を少なくとも有する。
【００３９】
なお、受信側入力端子Ｒｉｎ（以後、Ｒｉｎという）からは、図示しない復号器により復号されたディジタル音声信号が入力され、また送信側出力端子Ｓｏｕｔ（以後、Ｓｏｕｔという）からは、図示しない符号化器により符号化されたパケットがネットワークを通じて遠端話者に送出される。
【００４０】
また、サウンドボード８は、受信データ途切れ緩衝用蓄積バッファ６、ディジタル−アナログ変換器（Ｄ／Ａ）７、スピーカ１０と接続するスピーカ出力端子９、マイクロフォン１１と接続するマイク端子１２、アナログ−ディジタル変換器（Ａ／Ｄ）１３、送信データ途切れ緩衝用蓄積バッファ１４を少なくとも有する。
【００４１】
初期遅延推定器４は、Ｒｉｎから受信入力信号ｘ（ｎ）と、送信側入力端子Ｓｉｎ（以後、Ｓｉｎ）からエコー信号ｙ１（ｎ）とを入力し、これらの信号に基づいてエコー経路の初期遅延を推定して遅延付与部２に与えるものであり、その詳細な構成は後述する。
【００４２】
ここで、エコー経路の初期遅延とは、受信出力端子Ｒｏｕｔ（以後、Ｒｏｕｔ）から、音声出力ドライバ５、受信データ途切れ緩衝用蓄積バッファ６、Ｄ／Ａ７、スピーカ出力端子９、スピーカ１０、マイクロフォン１１、マイク端子１２、Ａ／Ｄ１３、送信データ途切れ緩衝用蓄積バッファ１４、音声入力ドライバ１５を経由して、エコー打消し加算器１６に入力するまでの経路遅延をいう。
【００４３】
遅延付与部２は、初期遅延推定部４により推定された遅延量に応じて、Ｒｉｎからの信号ｘ（ｎ）に遅延を与えて適応フィルタ３に与えるものである。
【００４４】
適応フィルタ（ＡＤＦ）３は、遅延付与部２により遅延付与された信号ｘ（ｎ）と、エコー打消し加算器１６から出力される残差信号ｅ（ｎ）とを入力し、逐次ｅ（ｎ）のパワーが最小となるように擬似エコー信号ｙ´（ｎ）を作成し、これを打消し加算器１６に出力するものである。
【００４５】
打消し加算器１６は、Ｓｉｎから入力された送信入力信号ｙ１（ｎ）から擬似エコー信号ｙ´（ｎ）を減算して、エコー成分を除去した残差信号ｅ（ｎ）を出力するものである。
【００４６】
音声出力ドライバ５は、Ｒｏｕｔからの送信出力信号を受信データ途切れ緩衝用蓄積バッファ６に出力すると共に、受信データ途切れ緩衝用蓄積バッファ６の蓄積量を制御するものである。
【００４７】
受信データ途切れ緩衝用蓄積バッファ６は、音声出力ドライバ５の制御を受けて所定の蓄積量だけ蓄積したデータを古いものから順にＤ／Ａ７に出力するものである。
【００４８】
Ｄ／Ａ７は、受信データ途切れ緩衝用蓄積バッファ６からのディジタルデータをアナログ信号に変換して、スピーカ出力端子９を介してスピーカ１０に出力するものである。
【００４９】
Ａ／Ｄ１３は、マイク端子１２を介してマイクロフォン１１が捕捉した音声信号を入力し、アナログ信号をディジタルデータに変換して送信データ途切れ緩衝用蓄積バッファ１４に出力するものである。
【００５０】
送信データ途切れ緩衝用蓄積バッファ１４は、音声入力ドライバ１５の制御を受けて、所定の蓄積量だけ蓄積したデータを古いものから順に音声入力ドライバ１５に出力するものである。
【００５１】
音声入力ドライバ１５は、送信データ途切れ緩衝用蓄積バッファ１４からの信号をＳｉｎに出力すると共に、送信データ途切れ緩衝用蓄積バッファ１４の蓄積量を制御するものである。
【００５２】
（Ａ−１−２）初期遅延推定部４の内部構成
続いて、初期遅延推定部４の詳細な内部構成について説明する。図３は、初期遅延推定部４の内部構成を示す内部構成図である。
【００５３】
図３において、第１の実施形態の初期遅延推定部４は、音声検出器（ＶＡＤ）１９、特定周波数断続部１７、タイミング制御部１ａ、遅延判定部１ｂ、送信側特定周波数波形再現部１８とを少なくとも有する。
【００５４】
また、特定周波数断続部１７は、受信側時間／周波数変換部１７０、データ保持部１７１、受信側単成分ディジタルフーリエ変換部（以後、ＤＦＴ部）１７２、受信側特定周波数成分保持部１７３、受信側周波数／時間変換部１７４、受信側単成分逆ディジタルフーリエ変換部（逆ＤＦＴ部）１７５、逆ＤＦＴ正規化部１７６、スイッチ１７７、純成分キャンセル加算器１７８を少なくとも有する。
【００５５】
さらに、送信側特定周波数波形再現部１８は、送信側時間／周波数変換部１８０、送信側単成分ディジタルフーリエ変換部（以後、ＤＦＴ部）１８１、送信側特定周波数成分保持部１８２、送信側周波数／時間変換部１８４、送信側単成分逆ディジタルフーリエ変換部（以後、逆ＤＦＴ部）１８３を少なくとも有する。
【００５６】
上述したように、第１の実施形態の初期遅延推定部４は、エコー経路の初期遅延を求めるものであるが、このエコー経路の初期遅延を求める基本概念を以下に説明する。
【００５７】
初期遅延推定部４は、後述するように人間の聴覚特性における周波数マスキング効果に鑑みてエコー経路の初期遅延を求めるものである。
【００５８】
この周波数マスキング効果とは、簡潔に説明すると、人間の聴覚において、強い周波数成分の近傍の周波数成分はマスクされてしまい、マスクされた周波数成分が聞こえなくなる効果をいう。なお、周波数マスキング効果については、例えば非特許文献１に詳しい。
【００５９】
この周波数マスキング効果には、さらに興味深い性質がある。それは、前述のように何か特に強い周波数成分があったとき、その成分を開始点として、高い周波数成分側に、マスクの効果を発揮し易いというものである。
【００６０】
このことは、周波数成分が平坦ではなく、強弱のある信号では、その強い成分の近傍の周波数的にやや高い周波数成分は、聴覚感覚的にはあたかもないように振る舞っているということである。
【００６１】
そこで、第１の実施形態の初期遅延推定部４は、このような周波数マスキング効果に鑑み、特定周波数断続部１７が音声信号中の人間の音声の第１ピークである１ｋＨｚ近辺と第２ピークである２ｋＨｚ近辺との間から選択した単独（トーン）の周波数を選択し、周波数マスキング効果により人間が検知できない当該周波数成分信号（これを遅延推定参照信号ともいう）を利用する。
【００６２】
特定周波数断続部１７は、通常の可聴周波数信号（すなわち、可聴域の特定周波数成分）を断続的に消滅させた信号を参照信号ｘ＿ref（ｎ）として、Ｒｏｕｔに出力するものである。このように、可聴域の特定の１種類の周波数成分を初期遅延の推定に用いるので、特段のハードウェア的な結線や改造が不要である。
【００６３】
なお、特定周波数成分である遅延推定参照信号は、スピーカ１０から放出され、音響結合によるエコー経路を介して、マイクロフォン１１に入り込む。その結果、この遅延推定参照信号に相当する特定周波数成分がｙ１（ｎ）中に含まれてＳｉｎに入力される。
【００６４】
送信側特定周波数波形再現部１８は、Ｓｉｎからのエコー信号ｙ１（ｎ）を入力し、このエコー信号ｙ１（ｎ）に含まれ得る特定周波数を再現して、遅延量判定部１ｂに与えるものである。
【００６５】
遅延量判定部１ｂは、上述した遅延推定参照信号ｘ_ref（ｎ）の信号レベルの急降下点の時刻ｔxoffを求め、さらにエコー信号中に含まれる遅延推定参照信号に相当する特定周波数成分の信号レベルを検出して、このレベル上昇検出点の時刻ｔytonを求め、この時刻ｔxoffと時刻ｔytonとの差分から、エコー経路の初期遅延量Ｔｉｄ´を求めて、遅延付与部２に出力するものである。このようにすることで、遅延付与部２がＡＤＦ３の遅延推定参照信号の独自に遅延部分Ｔｉｄ´を補償し、ＡＤＦ３が初期遅延量の変動に擾乱されないようにする。
【００６６】
また、第１の実施形態の初期遅延推定部４は、特定周波数断続部１７に純成分キャンセル加算器１７８を備える。
【００６７】
この純成分キャンセル加算器１７８は、単一周波数でディジタルフーリエ変換又は逆ディジタルフーリエ変換で発生した特定周波数成分（例えば第ｉ周波数成分）を音声信号に反転加算して、音声信号から特定周波数成分だけをキャンセルするものである。
【００６８】
通常、このような単一周波数を除去あるいは抽出するためには、例えば膨大の次数を持つディジタル帯域阻止ＦＩＲフィルタやＩＩＲフィルタが必要となる。
【００６９】
しかし、第１の実施形態では、純成分キャンセル加算器１７８が音声信号から単一周波数成分をキャンセルするようにしたので、従来のような高次の帯域処理フィルタ等を具備することなく、簡単な複素三角関数の乗算と時間波形の減算だけで、理想的に単独の周波数成分を除去あるいは抽出することができ、さらに周波数選択性能に優れるだけでなく演算コストも従来技術にくらべ大幅に軽減することができる。
【００７０】
（Ａ−２）第１の実施形態の動作
次に、第１の実施形態のエコーキャンセラにおける処理を、図面を参照しながら説明する。
【００７１】
まず、Ｒｉｎから入力された信号ｘ（ｎ）はエコーキャンセラ１に入力される。またＲｏｕｔから出力された信号は、音声出力ドライバ５を介して、受信データ途切れ緩衝用蓄積バッファ６に与えられる。
【００７２】
このとき、汎用装置（例えばＰＣ等）が音声処理よりも優先度の高いプログラムが実行状態にあるときには、音声出力ドライバ５は待機状態となり、受信データ途切れ緩衝用蓄積バッファ６に対してデータｘ（ｎ）の出力がなされない。
【００７３】
この間、受信データ途切れ緩衝用蓄積バッファ６に予め蓄積されたデータが、Ｄ／Ａ７に出力される。そのため、音声出力ドライバ５からの出力がなくても、見かけ上、音声が欠けないように、スピーカ１０に対して音声データが出力される。なお、受信データ途切れ緩衝用蓄積バッファ６が完全に枯渇すれば音声データはなくなってしまう。
【００７４】
ただし、音声出力ドライバ５の待機状態が復帰さえすれば、音声信号ｘ（ｎ）は大きな遅延を受けながらも、やがてはスピーカ１０から出力される。つまり現象としてば「音声遅れ」または「音声の間あき」になる。
【００７５】
その一方、なんらかの都合で、Ｄ／Ａ７による変換出力が待機するときは、逆に受信データ途切れ緩衝用蓄積バッファ６の蓄積容量が足りなくなり、飽和状態となると音声出力ドライバ５からの出力データは、蓄積することができず、破棄されてしまい、もはやスピーカ１０からは出力されることはなく。すなわち「音声欠け」となる。
【００７６】
上述のように、受信データ途切れ緩衝用蓄積バッファ６では、データの音声信号が極力途切れないようにデータの蓄積と出力を行う。すなわち、受信データ途切れ緩衝用蓄積バッファ６は、音声出力ドライバ５からの制御信号に応じた蓄積量だけ一旦蓄積し、その後古いものから順にＤ／Ａ７に音声信号を出力するようにする。
【００７７】
Ｄ／Ａ７は、ディジタル音声信号をアナログ信号に変換して、スピーカ出力端子９を経由してスピーカ１０に出力する。スピーカ１０は、音声信号を空間に放出する。
【００７８】
スピーカ１０から空間に放射された音声信号の一部は、エコー信号ｙとなってマイクロフォン１１にもれこむ。マイクロフォン１１に入力された信号はマイク端子１２を経由してＡ／Ｄ１３に入力され、ディジタル信号ｙ（ｎ）に変換される。
【００７９】
ディジタル信号に変換された信号ｙ（ｎ）は送信データ途切れ緩衝用蓄積バッファ１４に出力される。送信データ途切れ緩衝用蓄積バッファ１４は、データの音声信号が途切れないようにデータの蓄積を行う。
【００８０】
ここで、マイクロフォン１１側でもスピーカ１０側で説明したと同じような状態が発生する場合があり、マイク１１側での動作を説明しておく。
【００８１】
汎用装置（例えばＰＣ等）が音声処理よりも優先度の高いプログラムを実行しようとするときは、Ａ／Ｄ１３は送信データ途切れ緩衝用蓄積バッファ１４に対してデータを出力できずに待機する。
【００８２】
この間、送信データ途切れ緩衝用蓄積バッファ１４に予め蓄積されたデータが音声入力ドライバ１５に出力され、Ａ／Ｄ１３からの出力がなくても、見かけ上、音声が欠けないように、音声入力ドライバ１５に対して音声データを出力する。なお、送信データ途切れ緩衝用蓄積バッファ１４が完全に枯渇すれば音声データはなくなってしまう。
【００８３】
ただし、音声入力ドライバ１５の待機状態が復帰さえすれば、音声は大きな遅延を受けながらも、やがては音声入力ドライバ１５から出力される。つまり現象としては送信する音声の「音声遅れ」または「音声の間あき」になる。
【００８４】
その一方、なんらかの都合で、音声入力ドライバ１５が待機するときは、送信データ途切れ緩衝用蓄積バッファ１４は、音声入力ドライバ１５にデータ出力できないので、逆に送信データ途切れ緩衝用蓄積バッファ１４の蓄積容量が足りなくなり、飽和状態になると、Ａ／Ｄ１３からの出力データは、蓄積されず、破棄されてしまい、もはや音声入力ドライバ１５に出力されなくなる。すなわち、「音声欠け」となる。
【００８５】
このような音声欠けや音声遅れが極力発生しないように、送信データ途切れ緩衝用蓄積バッファ１４や受信データ途切れ緩衝用蓄積バッファ６の蓄積量は予めネットワーク端末設計者によって適宜設定される。
【００８６】
上述したように、送信データ途切れ緩衝用蓄積バッファ１４は、音声欠けがないように、音声入力ドライバ１５からの制御信号に応じた蓄積分だけ蓄積したあと、古いデータから順に音声入力ドライバ１５に音声データを出力する。
【００８７】
音声入力ドライバ１５は、エコー信号ｙ１（ｎ）をＳｉｎに出力する。Ｓｉｎは、信号をエコー打消し加算器１６に出力する。エコー打消し加算器１６では適応フィルタ３の出力ｙ´（ｎ）とｙ１（ｎ）を相殺する。ここで、ｋをデータの順番とすると、エコー打消し加算器１６は、ｙ´（ｋ）とｙ１（ｋ）とを相殺する。
【００８８】
エコー打消し加算器１６の出力ｅ（ｎ）は、適応フィルタ３に出力される。適応フィルタ３は、信号ｘ（ｎ）と残差信号ｅ（ｎ）を入力として、逐次ｅ（ｎ）のパワーが最小になるように、擬似エコー信号ｙ´（ｎ）を出力する。この擬似エコー信号ｙ´（ｎ）の作成方法は、種々の方法を適用することができるが、例えば、公知の学習同定法などの係数更新アルゴリズムを用いる方法を適用でき、ｅ（ｎ）のパワーを最小にするアルゴリズムであれば広く適用することができる。
【００８９】
エコー打消し加算器１６からの出力はＳｏｕｔに出力され、図示しない符号化器により符号化されて、遠端話者に向けて出力される。
【００９０】
初期遅延推定部４には、Ｒｉｎからの信号ｘ（ｎ）と、エコー信号ｙ１（ｎ）とが入力される。
【００９１】
初期遅延推定部４は、この信号ｘ（ｎ）とエコー信号ｙ１（ｎ）とに基づいて、次のようにしてエコー信号経路の初期遅延を推定する。この初期遅延推定部４の動作について図３を用いて説明する。
【００９２】
初期遅延推定部４は、ｘ（ｎ）、ｙ１（ｎ）を用いて、以下に説明するエコー経路の初期遅延を計算する。
【００９３】
まず、遠端話者からの音声信号ｘ（ｎ）は、ＶＡＤ１９と特定周波数断続部１７に入力される。
【００９４】
ＶＡＤ１９では、入力された信号が音声であるか否かの判定を行う。この音声検出方法としては、例えば、｜ｘ（ｎ）｜の短期平均ｘ＿ｓｈｏｒｔ（ｋ）、長期平均ｘ＿ｌｏｎｇ（ｋ）を式（１）、式（２）を用いて計算し、下記の式（３）の条件が成立したときに、「音声あり」とする。
【００９５】
ｘ_short（k）＝（1.0-δｓ）・ｘ_short（k-1）＋δｓ・|ｘ（ｎ）|  …（１）
ｘ_long（k）＝（1.0-δｌ）・ｘ_long（k-1）＋δｌ・|ｘ（ｎ）|  …（２）
ただし
０＜δｓ≦１．０
０＜δｌ（Ｌの小文字）≦１．０
（条件１）
ｘ_short（k）≧ｘ_long（k）＋ＶＡＤ＿ｍ      （ｄＢ）      …（３）
ここで、δｓ、δｌは、平均の追従の速さを決定する定数である。δｓ、δｌが大きいと時間変動に敏感に反応する代わりに背景ノイズの影響を受け易くなり、小さいと大まかな成分に追従し、ノイズの影響には鈍感になる。
【００９６】
ｋは計算順序を表しており、式（１）〜式（３）に関してｎが意味すると同じようにサンプル順と同じタイミングとしてもよい。このときは、式（１）〜式（３）のｋをｎと同じにしてよい。特に言及しない限り式（１）〜（３）以外のｋはｎと異なる。
【００９７】
第１の実施形態では、例えば、δｓについては時間相当で２０ｍｓに相当する定数、δｌについては５秒に相当する定数を用いて、ＶＡＤ＿ｍは６ｄＢに相当する閾値を用いた。
【００９８】
すなわち、式（３）は、ｄＢ表現をしなければ、通常表記で
ｘ_short（k）≧ｘ_long（k）×ＶＡＤ＿ｍｌｉｎ      …（３）
（ＶＡＤ＿ｍｌｉｎは２．０）
として表しても同じである。
【００９９】
ＶＡＤ１９では、上記のようにして音声を検出するが、ＶＡＤ１９は、信号中の音声を検出できればどのような方法を適用してもよい。
【０１００】
音声検出器１９は、音声を検出すると、タイミング制御部１ａに音声検出信号Ｖを出力する。タイミング制御部１ａは、後述するタイミングでスイッチ１７７のＯＮ／ＯＦＦを行う。
【０１０１】
遠端からの音声信号ｘ（ｎ）は、特定周波数断続部１７に入力される。まず、ｘ（ｎ）は、データ保持部１７１及び受信側時間／周波数変換部１７０に出力される。
【０１０２】
受信側時間／周波数変換部１７０では、ＤＦＴ部１７２が予め定められた周波数成分だけを下記のようにして取り出す。
【０１０３】
ここで、理解容易のために、単一の周波数を処理する場合を例示するものとし、通常のディジタルフーリエ変換（ＤＦＴ）を説明する。
【０１０４】
ディジタルフーリエ変換は、すでに多くの信号処理技術に用いられている手法であり、時間軸の信号と周波数軸の信号との間で変換する方法として最も良く知られている手法である。時間軸波形を周波数成分に変換するディジタルフーリエ変換は、式（４）のように表され、逆に周波数軸を時間軸に変換する手法は逆ディジタルフーリエ変換であり、式（５）のように表す。
【数１】
2010206515.tif 000003
【０１０５】
式（４）の右辺は、周波数軸での第ｍ番目の成分が計算できることを示し、式（５）の右辺は、時間軸の第ｎサンプルが右辺から計算できることを示している。ここで小文字ｊは複素数の演算であることを表している。式（５）の係数１／Ｎは、逆変換の際に時間波形がもとのとおりに再現されるような定数であり、図３では逆ＤＦＴ正規化部１７６がこれを行う。
【０１０６】
第１の実施形態では、式（５）で除算したが、式（４）と式（５）での軸の変換は可逆変換であるので、ディジタルフーリエ変換と逆ディジタルフーリエ変換との両方で√Ｎを計算し１／√Ｎを乗算するようにしてもよい。すなわち、上記の変換は可逆変換であるから、一旦ディジタルフーリエ変換した周波数成分を逆ディジタルフーリエ変換すれば、時間軸の波形は元通り復元される。
【０１０７】
また、第１の実施形態では、式（４）、式（５）のうち第ｉ成分だけに限定して用いる。第１の実施形態では、この中で、第ｉ成分だけをディジタルフーリエ変換し、さらに逆ディジタルフーリエ変換するが、受信側単成分ディジタルフーリエ変換部１７２で式（６）を実行し、受信側周波数／時間変換部１７４で式（７）を実行する。
【０１０８】
つまり、受信側単成分ディジタルフーリエ変換部１７２は、予め定められた連続Ｎサンプルのデータについて、式（５）のときと異なり、Ｍ＝０，１，２，…，Ｎ−１のうち、第ｉ周波数成分、Ｍ＝ｉすなわち、ｘ（ｉ）の計算だけについて実行する。
【数２】
2010206515.tif 000004
【０１０９】
受信側単成分ディジタルフーリエ変換部１７２で計算された結果である第ｉ成分の周波数成分ｘ（ｉ）が、特定周波数成分保持部１７３に保持される。
【０１１０】
ここで、第ｉ成分の選択方法については、ｉは人間の音声の第ｉピークである１ｋＨｚ近辺と、第２ピークである２ｋＨｚ近辺との間に選択される。例えば、第１の実施形態では、１．６ｋＨｚを第ｉ成分としたが、これに限定されるものではない。また、第１の実施形態では、サンプリング周波数を１６ｋＨｚとし、Ｎを１０サンプルとした。
【０１１１】
特定周波数成分保持部１７３は、第ｉ成分のデータｘ（ｉ）を受信側周波数／時間変換部１７４に出力する。そして、受信側周波数／時間変換部１７４は式（７）を実行する。
【数３】
2010206515.tif 000005
【０１１２】
受信側周波数／時間変換部１７４では、受信側単成分逆ディジタルフーリエ変換部１７５が、特定周波数成分保持部１７３からの周波数成分ｘ（ｉ）についてのみ周波数逆変換（逆ディジタルフーリエ変換）を行い、Ｎサンプル分の時間波形を再現する。
【０１１３】
ここで、式（７）より、周波数逆変換によって再現される波形は、第ｉ周波数成分を持つ信号であり、音声信号に含まれるディジタルフーリエ変換における第ｉ周波数成分の純成分を持つ信号、すなわち第ｉ成分トーン波形である。
【０１１４】
つまり、式（６）、式（７）の過程で音声信号中に含まれている第ｉ周波数成分だけを抜き出し、時間波形に復元したものである。
【０１１５】
受信側周波数／時間変換部１７４からの出力ｘ´（ｎ）は、スイッチ１７７に出力される。
【０１１６】
スイッチ１７７では、タイミング制御部１ａの制御に従って、以下のタイミングで開閉する。
【０１１７】
タイミング制御部１ａは、ＶＡＤ１９から音声検出信号Ｖが入力されると、図示しないカウンタをインクリメントする。そして、タイミング制御部１ａは、音声検出から始まって最初のＮサンプルの間はスイッチ１７７を閉じる信号Ｓｏｎをスイッチ１７７に出力する。それ以外の場合、タイミング制御部１ａは、信号Ｓｏｎを出力しない。
【０１１８】
スイッチ１７７は、タイミング制御部１ａから信号Ｓｏｎが入力されたときにはスイッチ１７７を閉じ、受信側周波数／時間変換部１７４からの信号を純成分キャンセル加算器１７８に透過する。つづくＮサンプルの区間ではスイッチ１７７には何も出力しない。
【０１１９】
ここで、Ｎサンプルの区間は、音声が定常信号とみなさせる時間長に設定するのが望ましく、例えば１０ｍｓ〜３０ｍｓ程度の時間長に設定することが望ましい。
【０１２０】
スイッチ１７７は、タイミング制御部１ａから信号Ｓｏｎが出力されないときにはスイッチ１７７を開放する。
【０１２１】
次に、タイミング制御部１ａは、最初のＮサンプル区間が過ぎると、次のＮサンプル区間ではスイッチ１７７を開放する。
【０１２２】
タイミング制御部１ａ及びスイッチ１７７は、上記動作を、音声信号が検出されている間、順次繰り返す。
【０１２３】
純成分キャンセル加算器１７８には、スイッチ１７７からの出力ｘ´ｓｗ（ｎ）が入力される。また、純成分キャンセル加算器１７８には、データ保持部１７１からの出力ｘｈ（ｎ）が入力される。
【０１２４】
そして、純成分キャンセル加算器１７８は、スイッチ１７７からの出力ｘ´ｓｗ（ｎ）と、データ保持部１７１からの出力ｘｈ（ｎ）とを加算する。また、純成分キャンセル加算器１７８の出力はＲｏｕｔに出力される。
【０１２５】
ここで、データ保持部１７１は、遠端話者からの入力信号ｘ（ｎ）を一定時間（すなわちＮサンプル時間分）だけ保持して遅延させる処理を行う。
【０１２６】
この一定時間Ｎは、ディジタルフーリエ変換を行うサンプル数に等しくする。これは、純成分キャンセル加算器１７８において、音声信号波形そのものと、第ｉ成分抽出波形ｘ´（ｎ）とを加算する際に、これらのタイミングを一致させるためである。
【０１２７】
また、純成分キャンセル加算器１７８の出力はＲｏｕｔに出力される。Ｒｏｕｔに出力された信号は、上述したように、Ｄ／Ａ７でアナログ信号に変換された後、スピーカ１０から放射され、図示しない近端話者への音声信号として供されるとともに、その一部は音響結合によってマイクロフォン１１にエコー信号ｙとなって入力される。
【０１２８】
マイクロフォン１１に入力されたエコー信号ｙは、Ａ／Ｄ１３でディジタル変換され、送信データ途切れ緩衝用蓄積バッファ１４及び音声入力ドライバ１５を経由して、ｙ１（ｎ）としてエコーキャンセラ１のＳｉｎに入力される。
【０１２９】
Ｓｉｎからの信号は、初期遅延推定部４の送信側特定周波数波形再現部１８に入力される。
【０１３０】
送信側特定周波数波形再現部１８に入力されたエコー信号ｙ１（ｎ）は、受信側と同様に、式（８）のようにＤＦＴ部１８１で周波数の第ｉ成分だけを抽出して再現される。
【０１３１】
ここで、第ｉ成分は、受信側で選択された第ｉ成分と同一成分であるようにすることが重要である。
【数４】
2010206515.tif 000006
【０１３２】
ＤＦＴ部１８１で再現されたｙ１（ｉ）が特定周波数成分保持部１８２に出力されると、特定周波数成分保持部１８２は、ｙ１（ｉ）を一旦保持する。
【０１３３】
特定周波数成分保持部１８２の出力は、受信側と同様に逆ＤＦＴ部１８３で時間波形ｙｔ（ｎ）に逆ディジタルフーリエ変換される。
【数５】
2010206515.tif 000007
【０１３４】
この逆ＤＦＴ部１８３で逆ディジタルフーリエ変換されたｙｔ（ｎ）は、遅延量判定部１ｂに出力される。
【０１３５】
遅延量判定部１ｂは、タイミング制御部１ａからタイミング信号Ｔが入力され、タイミング制御部１ａの制御により、エコー経路の初期遅延を推定するものである。
【０１３６】
図４は、エコー経路のインパルス応答の様子を説明する説明図である。図４において、エコー経路の時間の早い部分に振幅が小さい部分があり、時間Ｔｉｄで振幅が最大となる。そして時間Ｔｉｄ経過後に、振幅が徐々に小さくなっていく散乱応答が時刻Ｔｄｓだけ続く様子が示されている。
【０１３７】
遅延量判定部１ｂは、図４に示す初期遅延時間Ｔｉｄ部分を、遅延付与部２が挿入する遅延量に相当する遅延量となるように制御し、ＡＤＦ３の図示しないフィルタ係数を割り当てないようにして、ＡＤＦ３が初期遅延の変動によっていちいち擾乱を受けないようにするものである。
【０１３８】
図５は、遅延量判定部１ｂが推定する遅延量を説明する説明図である。
【０１３９】
図５（Ａ）は、ＶＡＤ１９による音声検出信号Ｖのタイムチャートである。また、遅延量判定部１ｂにはタイミング制御部１ａからタイミング信号Ｔが入力されており、図５（Ｂ）はスイッチ１７７の開閉タイミングを示す。
【０１４０】
図５（Ｂ）及び（Ｃ）において、スイッチ１７７が閉じている場合、遅延量判定部１ｂは、スイッチ１７７から受信側周波数／時間変換部１７４の出力ｘ´ｓｗ（ｎ）が入力される。このスイッチ１７７からの出力は、上述したように、第ｉ周波数成分を持つトーン信号である。
【０１４１】
ところで、スイッチ１７７が閉じている場合、純成分キャンセル加算器１７８において、音声信号から第ｉ成分が減算される。そのため、純成分キャンセル加算器１７８の出力の音声信号の中には第ｉ周波数成分ｘ（ｉ）が除去されている。
【０１４２】
当然、遅延推定参照信号が時間軸に変換されて、スピーカ１０から放射された結果のエコー信号ｙにも、第ｉ周波数成分は存在しない。
【０１４３】
しかし、次のＮサンプル区間では、スイッチ１７７が開放しているから（図５（Ｂ）、（ｃ）参照）、純成分キャンセル加算器１７８において、音声信号から第ｉ成分が減算されず、エコー信号にも第ｉ周波数成分が存在することとなる（図５（Ｄ）参照）。
【０１４４】
そこで、遅延量判定部１ｂは、このエコー信号中に含まれる第ｉ周波数成分の存在を検出し、次のようにして遅延量を求める。
【０１４５】
まず、遅延量判定部１ｂは、送信側特定周波数波形再現部１８の出力ｙｔ（ｎ）から第ｉ周波数成分を検出する。この検出方法は、ＶＡＤ１９による音声検出方法と同様の方法を適用することができる。
【０１４６】
次に、遅延量判定部１ｂは、スイッチ１７７から入力される信号ｘ´ｓｗ（ｎ）から第ｉ周波数成分を検出する。この検出方法も、ＶＡＤ１９による音声検出方法と同様の方法を適用することができる。
【０１４７】
そして、遅延量判定部１ｂは、スイッチ１７７から信号ｘ´ｓｗ（ｎ）の出力検出がなくなった時刻ｔxoff（図５（Ｃ）参照）から、送信側特定周波数波形再現部１８からの信号ｙｔ（ｎ）が検出された時刻ｔytonまでの時間Ｔｉｄ´を遅延量として遅延付与部２に出力する。
【０１４８】
ここで、エコー経路の初期遅延量Ｔｉｄ´を求める方法について、遅延量推定部１ｂは、スイッチ１７７からの信号ｘ´ｓｗ（ｎ）のレベル又はパワーの急降下時刻と、エコー信号から抽出した第ｉ周波数成分信号のレベル又はパワーの急上昇時刻との差を初期遅延Ｔｉｄ´としてもよい。
【０１４９】
また、別の方法としては、遅延量判定部１ｂは、スイッチ１７７の閉から開への開放時刻と、エコー信号から抽出した特定周波数信号のレベル又はパワーの急上昇時刻との差を初期遅延Ｔｉｄ´としてもよい。
【０１５０】
その後、遅延付与部２では、遅延量Ｔｉｄ´に相当するサンプル数の遅延を信号ｘ（ｎ）に与えてＡＤＦ３に出力する。
【０１５１】
また、ＡＤＦ３では、遅延付与部２により遅延付与されたｘ（ｎ）とエコー信号ｙ１（ｎ）と残差信号ｅ（ｎ）から公知のＮＬＭＳアルゴリズムを用いて擬似エコー信号ｙ´（ｎ）を作成する。ここで、エコー推定アルゴリズムは、エコーを推定できれば種々のアルゴリズムを広く適用することができる。
【０１５２】
（Ａ−３）第１の実施形態の効果
以上のように、第１の実施形態によれば、聴覚マスキング効果を用いて、初期遅延推定のための遅延推定参照信号をスピーカに出力するようにし、さらに周波数マスキング効果のために近端話者に気づかれず、マイクロフォンに再入力されたエコー信号の中から遅延推定参照信号に由来する特定周波数成分のエコー成分を取り出すようにした。
【０１５３】
そして、遅延推定参照信号発生タイミング若しくは遅延推定参照信号の成分除去タイミングと、エコー信号から遅延推定参照信号に由来する特定周波数成分の検出タイミングとに基づいてエコー経路の初期遅延を求めることで、この遅延量を補償することができる。その結果、適応フィルタが初期遅延の変換に擾乱されることがないエコーキャンセラを提供できる。
【０１５４】
また、第１の実施形態によれば、初期遅延の変動があっても、初期遅延判定部が速やかにエコー初期遅延の変化に追従して、遅延不要部に遅延を付与することができる。そのため、途切れ緩衝用蓄積バッファの蓄積時間の変動を打ち消すことができ、適応フィルタは変動した初期遅延以外の部分（すなわち時間不変）のエコー経路部分だけを推定でき、途切れ緩衝用蓄積バッファの変動等の変動があっても速やかにエコー信号を除去することができる。
【０１５５】
さらに、第１の実施形態では、単一周波数でのディジタルフーリエ変換又はその逆変換で発生した所定の単独の第ｉ周波数信号からなる時間信号ｘ´（ｎ）を純成分キャンセル加算器で、音声信号に加算して特定周波数成分だけを信号中からキャンセルするようにしたので、高次の帯域処理フィルタを具備することなく、簡単な複素三角関数の乗算と時間波形の減算だけで、単独の周波数成分を除去あるいは抽出することができ、また演算コストも大幅に軽減できる。
【０１５６】
（Ｂ）第２の実施形態
次に、本発明のエコーキャンセラの第２の実施形態について図面を参照しながら説明する。
【０１５７】
例えば、ハンズフリー通話装置用の音響エコーキャンセラに適用した場合を例示する。このような場合、エコー経路の初期遅延部分は、上述したようにパソコン動作などの機械的な動作で前触れなく変動することが多く、遅延量の変化が極めて急峻である。
【０１５８】
実際には、このような遅延量の変化のほかにも、種々のエコー経路の変動要素がある。例えば、音響エコー経路では、通話を行なっている近端話者自体の動きを考慮する必要がある。なぜなら、近端話者はハンズフリー通話を行なっている間、身じろぎなどをするのは通常であり、これを受けてエコー経路の散乱応答時間部分が変動することも珍しくない。
【０１５９】
第２の実施形態は、このような事実に鑑みたものである。
【０１６０】
（Ｂ−１）第２の実施形態の構成
図６は、第２の実施形態のエコーキャンセラ及びその周辺構成を示す構成図である。
【０１６１】
第２の実施形態が、第１の実施形態と異なる点は、初期遅延推定部４の代わりに遅延および適応フィルタ長推定部２０を備える点と、ＡＤＦ３の代わりにＡＤＦ２１を備える点である。
【０１６２】
遅延および適応フィルタ長推定部２０は、Ｒｉｎから信号ｘ（ｎ）と、Ｓｉｎからエコー信号ｙ１（ｎ）とを入力して、エコー経路の初期遅延を推定すると共に、適応フィルタ（ＡＤＦ）２１の有効タップ長（有効フィルタ長）を推定するものである。
【０１６３】
遅延および適応フィルタ長推定部２０は、遠端からの音声信号が到来するたびに、エコー経路の初期遅延及び適応フィルタ２１の有効タップ長を計算する。これにより、常時正しいエコー経路の初期遅延及び推定エコー経路が求まる。
【０１６４】
適応フィルタ２１は、予め全体のタップ長（フィルタ長）が設けられており、遅延および適応フィルタ長推定部２０から推定されたタップ長を受け取り、このタップ長の適応フィルタとして動作するものである。
【０１６５】
図７は、第２の実施形態の遅延および適応フィルタ長推定部２０の内部構成を示す内部構成図である。
【０１６６】
第２の実施形態の遅延および適応フィルタ長推定部２０が、第１の実施形態の初期遅延推定部４と異なる点は、遅延量判定部１ｂの代わりに遅延量およびタップ長判定部２２を備える点である。
【０１６７】
遅延量およびタップ長判定部２２は、第１の実施形態のエコー経路の初期遅延を推定すると共に、遅延推定参照信号発生タイミング若しくはこの遅延推定参照信号の成分除去のタイミングと、推定済みの初期遅延とに基づいて、エコー散乱時間をカバーする適応フィルタの有効フィルタ長（タップ長）を求めるものであり、このフィルタ長をＡＤＦ２１に与えるものである。
【０１６８】
（Ｂ−２）第２の実施形態の動作
次に、第２の実施形態のエコーキャンセラにおける処理の動作について図面を参照しながら説明する。
【０１６９】
第２の実施形態では、遅延および適応フィルタ長推定部２０が備える遅延量およびタップ長判定部２２の処理動作が、第１の実施形態の動作と異なる。そのため、以下では、遅延および適応フィルタ長推定部２０の処理動作を中心に説明する。
【０１７０】
なお、図６及び図７で、図１及び図３で付した番号と同じ番号を付した構成要件の処理動作は、第１の実施形態と同じであるから割愛する。
【０１７１】
図６において、遅延および適応フィルタ長推定部２０は、第１の実施形態と同様にして、エコー経路の初期遅延を推定し、この推定した遅延量Ｔｉｄ´を遅延付与部２に与える。
【０１７２】
また、遅延および適応フィルタ長推定部２０は、ＡＤＦ２１のタップ長（すなわち有効フィルタ長）を計算してＡＤＦ２１に与える。
【０１７３】
以下では、特に遅延および適応フィルタ長推定部２０によるタップ長の推定処理を説明する。図８は、タップ長推定の説明図である。
【０１７４】
図８において、遅延量及びタップ長推定部２２は、ｔxoffを検出すると、図８（ｃ）のように、次にスイッチ１７７が閉じられた時刻ｔxonから、エコー信号から抽出された第ｉ周波数成分の信号レベルを計算するものである。
【０１７５】
この信号レベルの計算方法としては、種々の方法を適用することができ、例えば、入力サンプルの絶対値の平均を計算する方法を適用しても良いし、又ＶＡＤ１９で説明したように、平滑定数を用いた巡回式を用いて平滑レベルを計算する方法を適用するようにしても良い。
【０１７６】
また、遅延量及びタップ長推定部２２は、時刻ｔxonからＴｉｄ´相当の時刻サンプルまでの第ｉ周波数成分の信号レベルＩｖ＿ｈを計算して保持する（図８（Ｅ）参照）。
【０１７７】
次に、遅延量及びタップ長推定部２２は、時刻ｔxonからＴｉｄ´相当の時刻サンプル時点の時刻をＴｌｖ＿ｈとする。また、遅延量及びタップ長推定部２２は、時刻ｔxonからＴｌｖ＿ｈまでの期間で計算したレベルから、式（１０）を満たすようなタップ長終点レベルｌｖ＿ｌにエコー信号のレベルが降下する時刻Ｔｌｖ＿ｌを検出する。
【０１７８】
判定閾値＝２０・ｌｏｇ（ｌｖ＿ｌ／ｌｖ＿ｈ）    …（１０）
第２の実施形態では、判定閾値を「−４０（ｄＢ）」としがこれに限定されるものではない。
【０１７９】
式（１０）は、ｌｖ＿ｌがｌｖ＿ｈよりもレベルで４０ｄＢ降下した点を判定することを表している。すなわち、ｌｖ＿ｌは、図４に示したエコー経路の初期遅延部分が終わり、散乱応答部分Ｔｄｓに達し、なおかつ、散乱応答の大部分（例えば４０ｄＢ相当分）が終わったことを意味する。
【０１８０】
次に、遅延量およびタップ長判定部２２は、Ｔｌｖ＿ｈとＴｌｖ＿ｌとの時間差（相当サンプル差）に基づいて式（１１）に従って有効タップ長ＬＯＣを計算し、ＡＤＦ２１に出力する。
【０１８１】
ＬＯＣ＝Ｔｌｖ＿ｌ−Ｔｌｖ＿ｈ      …（１１）
ＡＤＦ２１は、入力されたタップ長ＬＯＣに従い、予め余裕を持って実装された全体フィルタ長Ｌのうち、フィルタ長ＬＯＣを用いて、前述したＮＬＭＳ等アルゴリズムを用いた適応フィルタ動作を行って、擬似エコー信号ｙ´（ｎ）の作成を行う。
【０１８２】
第２の実施形態では、Ｌ＝５１２としたがこれに限定しない。したがって、選択フィルタ長ＬＯＣと全体フィルタ長Ｌの関係は式（１２）のようであり、もし式（１１）で計算したＬＯＣがＬ以上であったときにはＬＯＣはＬを上限に制限されたあと、ＡＤＦ２１に出力される。
【０１８３】
ＬＯＣ≦Ｌ      …（１２）
したがって、このときＡＤＦ２１はタップ長Ｌの適応フィルタとして動作してエコーキャンセルを行う。
【０１８４】
（Ｂ−３）第２の実施形態の効果
以上のように、第２の実施形態によれば、第１の実施形態の効果に加えて、遅延量およびタップ長判定部２２がＡＤＦ２１の有効タップ長も推定することができ、ＡＤＦが全体フィルタ長のうち推定されたタップ長を用いて擬似エコー信号を作成することにより、ＡＤＦ２１のタップを有効に機能させることができ、適切にフィルタ長を小さくすることができる。
【０１８５】
また、第２の実施形態は、例えば、ハンズフリー通話装置用の音響エコーキャンセラに適用した場合に、実際に生じ得るエコー経路の変動要素にも対処できるようにした。つまり、ＡＤＦ２１のタップ長は短いほうが収束速度が速いことから、純粋遅延Ｔｉｄ分のタップは遅延量およびタップ長判定部２２が補償し、エコー散乱時間Ｔｄｓの有効成分の部分を最小限にＡＤＦ２１が受け持ってエコーを除去できる。
【０１８６】
また、第２の実施形態によれば、エコー経路の初期遅延の変動があった場合や、近端話者の動きによってエコー経路の散乱応答部分が変化した場合でも、演算コストを小さく抑えたまま、エコーキャンセラのエコー打消し追従速度が高速にできるため、消費電力も小さく、エコー打消し性能にも優れたエコーキャンセラを実現できる。
【０１８７】
（Ｃ）第３の実施形態
次に、本発明のエコーキャンセラの第３の実施形態について図面を参照しながら説明する。
【０１８８】
第１及び第２の実施形態では、時間／周波数変換と周波数／時間変換に用いる周波数を固定の周波数として説明した。
【０１８９】
しかし、実際のところ、遠端話者は声質がさまざまであるから、遠端話者の音声周波数成分もさまざまであり、必ずしも事前設定した固定の周波数で時間／周波数変換と周波数／時間変換して作成した遅延推定参照信号ｘ＿ｒｅｆ（ｎ）が、実際の遠端話者の音声信号の周波数成分にうまくマスクされる範囲に入らないことも考えられる。
【０１９０】
そこで、第３の実施形態では、上記問題にも対応できるように、時間／周波数変換と周波数／時間変換に用いる周波数を自動的に設定できるようにする。
【０１９１】
（Ｃ−１）第３の実施形態の構成
図９は、第３の実施形態のエコーキャンセラ及び周辺構成の構成を示す構成図である。
【０１９２】
第３の実施形態が第２の実施形態と異なる点は、遅延量及び適応フィルタ長推定部２０に代えてパラメータ推定部３０を備える点である。
【０１９３】
図１０は、第３の実施形態のパラメータ推定部３０の内部構成を示す内部構成図である。
【０１９４】
図１０のパラメータ推定部３０が、図７の遅延量及び適応フィルタ長推定部２０の内部構成と異なる点は、新たに周波数決定部３１を備える点である。それ以外の構成要素は第１及び第２の実施形態と同じであるので、ここでの詳細な説明を省略する。
【０１９５】
周波数決定部３１は、Ｒｉｎから信号ｘ（ｎ）とＶＡＤ１９から音声検出信号Ｖとを入力して、後述する特定周波数ｆ１を決定するものである。また、周波数決定部３１は、後述する計算方法により特定周波数ｆ１の角速度ωを、受信側ＤＦＴ１７２及び受信側逆ＤＦＴ１７５と、送信側ＤＦＴ１８１及び送信側逆ＤＦＴ１８３とに与えるものである。
【０１９６】
（Ｃ−２）第３の実施形態の動作
次に、第３の実施形態のエコーキャンセラにおける処理の動作について図面を参照しながら説明する。
【０１９７】
以下では、パラメータ推定部３０が備える周波数決定部３１の処理動作を中心に説明する。それ以外の構成要素の処理動作は、第１及び第２の実施形態と同じであるのでここでの詳細な説明は省略する。
【０１９８】
周波数決定部３１は、ＶＡＤ１９から音声信号検出信号Ｖを入力する。周波数決定部３１は、入力された遠端の音声信号のうち、周波数成分が最も強い周波数ｆ１を計算する。
【０１９９】
ここで、周波数ｆ１の計算方法としては、種々の方法を適用することができるが、例えば、特許文献３に記載されている方法を適用することができ、入力された信号のうち最もパワーの強い成分を計算する方法を適用することができる。
【０２００】
なお、特許文献３では、入力信号中の最もパワーの強い周波数成分ｆ１の検出後、さらにこの検出した周波数成分ｆ１が呼制御信号やＦＡＸ信号のいずれかに相当するかどうかを推定している。しかし、第３の実施形態では、その周波数成分ｆ１を検出できればよいので、その周波数成分ｆ１がどのような信号であるかの推定を行なわずに適用できる。
【０２０１】
また、周波数決定部３１は、周波数成分ｆ１を検出した後、式（１３）に従って角速度ωを求める。
【０２０２】
ω＝２πｆ１＋Δω      …（１３）
第３の実施形態では、非特許文献１の「文献Ａの５．５臨界帯域幅」で開示されている周波数マスキングの効果がよく発揮される周波数臨界帯域幅内に参照信号周波数が形成されるべく、Δω＝０．１５ω（ｒａｄ／ｓｅｃ）としたが、これに限定されるものでない。
【０２０３】
ただし、周波数マスキング効果の有効性からΔωは式（１４）の関係であることが望ましい。
【０２０４】
０＜Δω≦０．２ω        …（１４）
周波数決定部３１は、ＶＡＤ１９から音声ありを示す音声検出信号Ｖを出力する期間と、それに続くしばらくの期間Ｔ＿ｈｏｌｄだけ、式（１３）で計算したωを、受信側ＤＦＴ１７２及び受信側逆ＤＦＴ１７５と、送信側ＤＦＴ１８１及び送信側逆ＤＦＴ１８３とに与えるものである。
【０２０５】
この期間Ｔ＿ｈｏｌｄを設けたのは、送信側に入力されるエコー信号がエコー経路の遅延を受けて入力されるため、これを考慮したからである。また、第３の実施形態では、Ｔ＿ｈｏｌｄを０．５ｓｅｃとしたがこれに限定されるものではない。
【０２０６】
従って、ωは、音声検出期間＋Ｔ＿ｈｏｌｄの期間の間だけ周波数決定部３１から出力される。
【０２０７】
受信側ＤＦＴ１７２及び受信側逆ＤＦＴ１７５と、送信側ＤＦＴ１８１及び送信側逆ＤＦＴ１８３とは、ωを用いて前述のようにディジタルフーリエ変換とその逆変換を用いて、各々時間／周波数変換と、周波数／時間変換とを行うが、その変換の様子は第１の実施形態で説明したので、ここでの説明は省略する。
【０２０８】
（Ｃ−３）第３の実施形態の効果
以上のように、第３の実施形態によれば、第１及び第２の実施形態の効果に加えて、時間／周波数変換と周波数／時間変換とに用いる周波数を自動的に設定することができるので、利用者がωの選択に関する事前知識や経験による機器の初期設定をしなくても自動的に最適なωの値を設定することができる。
【０２０９】
その結果、エコー経路の初期遅延及び適応フィルタのフィルタ長を最適に推定することができるので、エコー経路の初期遅延変動や散乱応答の変動に追従できるエコーキャンセラを提供できる。
【０２１０】
（Ｄ）他の実施形態
第１〜第３の実施形態では、ｔxoffを検出するのに、打ち消し用トーン信号レベルの急降下点をレベル検出して計算するようにしたが、これに代えて、タイミング制御部１ａからのスイッチ１７７ＯＦＦの時刻を直接用いるようにしても良い。その際には、受信側のレベル計算処理と長期平均、短期平均によるｘ´ｓｗ（ｉ）の降下点検出を省くことができ、装置規模、ソフトウェア規模をさらに小さくすることができる。
【０２１１】
第３の実施形態では、第２の実施形態の遅延及び適応フィルタ長推定部に周波数決定部を設けた場合を例示したが、第１の実施形態の初期遅延推定部に周波数決定部を設けても同様の効果を奏する。
【符号の説明】
【０２１２】
１…エコーキャンセラ、２…遅延付与部、３及び２１…ＡＤＦ、４…初期遅延推定部、
５…音声出力ドライバ、６…受信データ途切れ緩衝用蓄積バッファ、
７…ディジタル／アナログ変換器（Ｄ／Ａ）、８…サウンドボード、
９…スピーカ出力端子、１０…スピーカ、１１…マイクロフォン、１２…マイク端子、
１３…アナログ／ディジタル変換器（Ａ／Ｄ）、
１４…送信データ途切れ緩衝用蓄積バッファ、１５…音声入力ドライバ、
１６…エコー打消し加算器、
２０…遅延及び適応フィルタ長推定部、
３０…パラメータ推定部、
１７…特定周波数断続部、
１７０…受信側時間／周波数変換部、１７１…データ保持部、
１７２…受信側単成分ディジタルフーリエ変換（ＤＦＴ）部、
１７３…特定周波数成分保持部、１７４…受信側周波数／時間変換部、
１７５…受信側単成分逆ディジタルフーリエ変換（逆ＤＦＴ）部、
１７６…逆ＤＦＴ正規化部、１７７…スイッチ、１７８…純成分キャンセル加算器、
１８…送信側特定周波数波形再現部、
１８０…送信側時間／周波数変換部、
１８１…送信側単成分ディジタルフーリエ変換（ＤＦＴ）部、
１８２…特定周波数成分保持部、
１８３…送信側単成分逆ディジタルフーリエ変換（逆ＤＦＴ）部、
１８４…送信側周波数／時間変換部、
１９…音声検出部（ＶＡＤ）、１ａ…タイミング制御部、１ｂ…遅延量判定部、
２２…遅延量及びタップ長判定部、３３…周波数決定部。
【図１】
2010206515.tif 000008
【図２】
2010206515.tif 000009
【図３】
2010206515.tif 000010
【図４】
2010206515.tif 000011
【図５】
2010206515.tif 000012
【図６】
2010206515.tif 000013
【図７】
2010206515.tif 000014
【図８】
2010206515.tif 000015
【図９】
2010206515.tif 000016
【図１０】
2010206515.tif 000017