(57)【特許請求の範囲】
【請求項１】
第１のマイク及び第２のマイクと、
受話音声を出力するレシーバと、
前記レシーバとは独立して所望の音声を出力するスピーカと、
前記第１のマイクからの入力信号に基づいて、前記レシーバから出力される受話音又は前記スピーカから出力されるスピーカ出力音の伝達特性の学習方法を選択する学習方法選択部と、
前記第１及び第２のマイクから入力された入力信号に基づいて前記第１のマイクの指向性を制御し、前記第１のマイクから入力された入力信号における前記受話音の到来方向又は前記スピーカ出力音の到来方向からの入力信号を算出する指向性制御部と、
前記学習方法選択部で選択した学習方法に従い、前記第１のマイクから入力された入力信号、もしくは前記指向性制御部で算出した前記受話音の到来方向又は前記スピーカ出力音の到来方向からの入力信号を用いて、伝達特性を算出して学習する伝達特性学習部と、
学習した前記伝達特性を用いて、前記第１のマイクから入力された入力信号に含まれるエコー成分を抑圧するエコー抑圧部と、
を備えることを特徴とする通信装置。
【請求項２】
前記学習方法選択部は、
前記第１のマイクから入力された入力信号に含まれる音声の発生元の組合せに応じて、前記伝達特性を学習するか否か、及び学習する場合の学習方法を選択し決定する、
ことを特徴とする請求項１に記載の通信装置。
【請求項３】
前記レシーバ、前記スピーカ、前記第１及び第２のマイクを配設した筐体と、
前記筐体の向きを検出する検出部と、を更に備え、
前記学習方法選択部は、
前記第１のマイクから入力された入力信号に含まれる音声の発生元の組合せと、前記検出部の検出結果から算出した前記筐体の向きの変化量とに応じて、前記伝達特性を学習するか否か、及び学習する場合の学習方法を選択し決定する、
ことを特徴とする請求項１に記載の通信装置。
【請求項４】
前記レシーバから出力させる学習用レシーバ出力信号及び前記スピーカから出力させる学習用スピーカ出力信号を生成する学習用出力信号生成部を更に備え、
前記学習方法選択部は、前記伝達特性の学習方法として、前記学習用レシーバ出力信号を前記レシーバから出力して伝達特性を学習する学習方法、及び前記学習用スピーカ出力信号を前記スピーカから出力して伝達特性を学習する学習方法を選択可能である、
ことを特徴とする請求項１に記載の通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通話可能な通信装置に係わる。
【背景技術】
【０００２】
携帯電話端末等の通話可能な通信装置には、マイクで収音した音声信号（マイク入力信号）に含まれるエコー成分を抑圧する、エコーキャンセラを備えたものがある。
【０００３】
マイク入力信号に含まれるエコー成分の１つに、レシーバから出力された受話音（レシーバ出力音）がある。エコーキャンセラは、レシーバから出力する受話信号（レシーバ出力信号）、及びレシーバ-マイク間の音の伝達経路における音の伝達特性に基づいて、マイク入力信号に含まれる受話音成分をエコー成分として抑圧する。
【０００４】
通信装置で通話をする際、レシーバ-マイク間における音の伝達特性は、通信装置の周囲の状態（環境）等により動的に変化する。そのため、エコーキャンセラは、通話中、定期的に伝達特性を算出して学習し、エコー成分を抑圧する。レシーバ-マイク間の伝達特性は、レシーバ出力信号と、そのレシーバ出力信号をレシーバから出力したときにマイクで収音されるレシーバ出力音の音声信号とを用いて算出する。
【０００５】
また、上記の通信装置には、レシーバとは別のスピーカを備え、通話中、レシーバから受話音を出力するとともに、スピーカからマスキング音を出力可能な構成のものもある。スピーカが発するマスキング音は、通信装置の利用者が通信装置（通話相手）に向かって話している内容を、利用者の周囲にいる人が聞き取りにくくするための音である。このマスキング音には、例えば、マイク入力信号に含まれる利用者の声に似た音声、音楽、自然環境音（鳥のさえずり等）等が用いられる。
【０００６】
このマスキング音は利用者の周囲に放射状に拡散するので、マスキング音の一部は利用者が使用している通信装置のマイクで収音される。すなわち、マスキング音を出力しながら通話した場合、マイク入力信号にはマスキング音が含まれる。
【０００７】
マスキング音を含むマイク入力信号を送話信号として通話相手の通信装置に送信すると、通話相手の通信装置のレシーバからは利用者の声及びマスキング音を含む受話音が出力される。そのため、通話相手が利用者の声（話の内容）を聞き取りにくくなることがある。
【０００８】
また、利用者の通信装置から通話相手の通信装置に送信する送話信号にマスキング音が含まれる場合、通話相手の通信装置を経由して利用者の通信装置に戻ってきたマスキング音がレシーバから出力される。そのため、利用者側で、スピーカから出力されたマスキング音と、レシーバから出力されたマスキング音とによるエコーが生じることがある。
【０００９】
マスキング音による上記の事態を抑制する方法の１つとして、通信装置（筐体）内に、マイクとスピーカとを空間的に隔てる隔壁を設けることが知られている（例えば、特許文献１を参照。）。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２００６−１４８３７８号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
上述のようにスピーカからマスキング音を出力した場合、そのマスキング音の一部は、通信装置の外部空間を伝搬してマイクで収音されるので、マイク入力信号には通信装置の外部空間を伝播したマスキング音が含まれる。このような通信装置の外部空間を伝播したマスキング音が含まれるマイク入力信号を送話信号として通話相手の通信装置に送信すると、通話相手が利用者の声を聞き取りにくくなる、又は利用者側でエコーが生じるといった事態が生じる恐れがある。
【００１２】
したがって、上述のレシーバ及びスピーカを備えた通信装置では、マイク入力信号に含まれるマスキング音も、エコー成分として、レシーバ出力音と同様の方法で抑圧する必要がある。
【００１３】
ところが、レシーバ-マイク間とスピーカ-マイク間とでは、音の伝達経路が異なり、音の伝達特性も異なる。そのため、レシーバからの受話音及びスピーカからのマスキング音によるエコーを抑圧するには、それぞれの伝達経路における音の伝達特性を学習する必要がある。
【００１４】
しかしながら、上記の通信装置では、レシーバから出力した音のみがマイク入力音に含まれるような状態で伝達特性を算出し、学習している。そのため、受話音及びマスキング音を同時に出力している場合等、マイク入力信号に伝達経路の異なる複数の音が含まれている場合に、それぞれの伝達経路における伝達特性を同時に学習することができない。したがって、伝達経路の異なる複数の音がマイクに入力される場合には、マイク入力信号に含まれる受話音及びマスキング音（エコー成分）を適切に抑圧することができない。
【００１５】
本発明の１つの側面に係る目的は、マイクで収音した音声信号に伝達経路の異なる複数の音が含まれる場合にも伝達特性を学習してエコーを抑圧することが可能な通信装置を提供することである。
【課題を解決するための手段】
【００１６】
本発明の１つの態様の通信装置は、第１のマイク及び第２のマイクと、受話音声を出力するレシーバと、前記レシーバとは独立して所望の音声を出力するスピーカと、前記第１のマイクからの入力信号に基づいて、前記レシーバから出力される受話音又は前記スピーカから出力されるスピーカ出力音の伝達特性の学習方法を選択する学習方法選択部と、前記第１及び第２のマイクから入力された入力信号に基づいて前記第１のマイクの指向性を制御し、前記第１のマイクから入力された入力信号における前記受話音の到来方向又は前記スピーカ出力音の到来方向からの入力信号を算出する指向性制御部と、前記学習方法選択部で選択した学習方法に従い、前記第１のマイクから入力された入力信号、もしくは前記指向性制御部で算出した前記受話音の到来方向又は前記スピーカ出力音の到来方向からの入力信号を用いて、伝達特性を算出して学習する伝達特性学習部と、学習した前記伝達特性を用いて、前記第１のマイクから入力された入力信号に含まれるエコー成分を抑圧するエコー抑圧部と、を備える。
【発明の効果】
【００１７】
上述の態様によれば、マイクで収音した音声信号に伝達経路の異なる複数の音が含まれる場合にも伝達特性を学習してエコーを抑圧することができる。
【図面の簡単な説明】
【００１８】
【図１Ａ】本発明の第１の実施形態に係る通信装置の構成例を示す模式図である。
【図１Ｂ】図１Ａの通信装置を用いて通話しているときの様子を示す模式図である。
【図２】第１の実施形態に係る通信装置におけるエコーの抑圧方法を示すフローチャートである。
【図３】図２の入力内容判定処理の処理手順を示すフローチャートである。
【図４】図３の周囲騒音検出処理の処理手順を示すフローチャートである。
【図５】伝達特性の学習定義テーブルの一例を示す図である。
【図６Ａ】図２の伝達特性学習処理の処理手順を示すフローチャート（その１）である。
【図６Ｂ】図２の伝達特性学習処理の処理手順を示すフローチャート（その２）である。
【図７】方法ＣＲ１で伝達特性Ｈｒを学習する処理の処理手順を示すフローチャートである。
【図８】マイクで収音した音の到来方向の算出方法を説明する模式図である。
【図９】レシーバ方向αｒに指向性を制御するゲイン算出テーブル及びスピーカ方向αｓに指向性を制御するゲイン算出テーブルを示す模式図である。
【図１０】図７の指向性制御処理の処理手順を示すフローチャートである。
【図１１】方法ＣＲ１で学習した伝達特性の一例を示す模式図である。
【図１２】方法ＣＳ１で伝達特性Ｈｓを学習する処理の処理手順を示すフローチャートである。
【図１３】方法ＣＲ０で伝達特性Ｈｒを学習する処理の処理手順を示すフローチャートである。
【図１４】方法ＣＳ０で伝達特性Ｈｓを学習する処理の処理手順を示すフローチャートである。
【図１５】方法ＣＲ２で伝達特性Ｈｒを学習する処理の処理手順を示すフローチャートである。
【図１６】学習用レシーバ出力信号の生成方法を示すフローチャートである。
【図１７】方法ＣＳ２で伝達特性Ｈｓを学習する処理の処理手順を示すフローチャートである。
【図１８】第１の実施の形態に係る通信装置の主要な機能構成を示すブロック図である。
【図１９】図１８の送話音声処理部の機能構成を示すブロック図である。
【図２０】本発明の第２の実施の形態に係るエコーの抑圧方法で用いる学習定義テーブルを示す模式図である。
【図２１】第２の実施の形態に係るエコーの抑圧方法を示すフローチャートである。
【図２２】図２１の経路変化判定処理の処理手順を示すフローチャートである。
【図２３】傾斜角度θｘの算出方法を説明する模式図である。
【図２４Ａ】図２１の伝達特性学習処理の処理手順を示すフローチャート（その１）である。
【図２４Ｂ】図２１の伝達特性学習処理の処理手順を示すフローチャート（その２）である。
【図２５】第２の実施の形態に係る通信装置の主要な機能構成を示すブロック図である。
【図２６】図２５の送話音声処理部の機能構成を示すブロック図である。
【発明を実施するための形態】
【００１９】
以下、図面を参照しながら、本発明の実施形態を詳細に説明する。
【００２０】
（第１の実施形態）
図１Ａは、本発明の第１の実施形態に係る通信装置の構成例を示す模式図である。図１Ｂは、図１Ａの通信装置を用いて通話しているときの様子を示す模式図である。
【００２１】
本実施形態に係る通信装置は、携帯電話端末等、無線通信による通話が可能な装置である。図１Ａに示すように、通信装置１００は、第１のマイク１０、第２のマイク１１、レシーバ１２、スピーカ１３、及び筐体１４を備える。
【００２２】
第１のマイク１０は、通話時に、通話相手の通信装置に送信する利用者の音声等の音声を収音する。レシーバ１２は、通話相手の通信端末から受信した音声信号を音声（受話音）として出力する。第１のマイク１０及びレシーバ１２は、筐体１４の第１の面側に、筐体１４の外方に向けて配設されている。
【００２３】
第２のマイク１１は、通話時に、通信装置１００の周囲の音（周囲騒音）、後述する指向性制御等の処理に用いるレシーバ出力音及びスピーカ出力音を収音する。スピーカ１３は、通話時に、後述するマスキング音を出力する。また、スピーカ１３は、例えばハンズフリー通話時には、レシーバ１２の代わりに通話相手の通信端末から受信した音声信号を受話音として出力する。第２のマイク１１及びスピーカ１３は、筐体１４の第１の面とは反対の第２の面側に、筐体１４の外方に向けて配設されている。
【００２４】
また、通信装置１００は、プリント回路板１５や、図示しない操作デバイス、表示デバイス、無線通信デバイス等を備える。
【００２５】
この通信装置１００を用いて通話をする際、通信装置１００は、図１Ｂに示すように、電話回線網２００を介して通話相手の通信端末３００と接続される。通話中、通信装置１００の利用者４００が発した音声５０１は、第１のマイク１０で収音され、電話回線網２００を介して通話相手の通信装置３００に送信される。また、通話相手の通信装置３００が備えるマイクで収音した通話相手の音声は、電話回線網２００を介して利用者４００の通信装置１００に送信され、レシーバ１２から受話音５０２として出力される。
【００２６】
利用者４００が通信装置１００を用いて通話をしている場合、利用者４００の音声５０１の一部は、第１のマイク１０で収音されず、利用者４００の周囲に拡散する。そのため、利用者４００の周囲に第三者６００がいる場合、第三者６００に利用者４００の音声５０１が聞こえてしまう。このように利用者４００の音声５０１の一部が周囲に拡散すると、第三者６００が利用者４００の音声５０１を不快に感じたり、利用者４００の発した個人情報が第三者６００に聞き取られたりする恐れがある。
【００２７】
このような事態を防ぐため、本実施形態の通信端末１００は、図１Ｂに示すように、通話中、スピーカ１３からマスキング音５０３を出力することができるようになっている。マスキング音５０３は、周囲にいる第三者６００が利用者４００の音声５０１を聞き取りにくくするための音であり、例えば、利用者４００の音声５０１と似た音、音楽、自然環境音等が用いられる。
【００２８】
この種の通信装置１００では、通話中、図１Ａに示したように、レシーバ１２から出力した受話音５０２の一部が伝達経路（レシーバ-マイク間経路）ＴＲ１を伝達し、第１のマイク１０で収音される。第１のマイク１０で収音した音声信号（以下「第１のマイク入力信号」ともいう。）に含まれる受話音５０２は、通信装置１００が通話相手の通信装置３００から受信した音声信号を音声に変換したものである。そのため、受話音５０２を含む第１のマイク入力信号を通話相手の通信端末３００に送信した場合、通話相手側でエコーが生じる恐れがある。
【００２９】
また、通話中、スピーカ１３からマスキング音５０３を出力している場合には、図１Ａに示したように、マスキング音５０３の一部が伝達経路（スピーカ-マイク間経路）ＴＲ２を伝達し、第１のマイク１０で収音される。マスキング音５０３は、利用者４００の声５０１を聞き取りにくくする音である。そのため、マスキング音５０３を含む第１のマイク入力信号を通話相手の通信端末３００に送信した場合、通話相手が通話の内容（利用者４００が話した内容）を聞き取りにくくなる恐れがある。さらに、マスキング音５０３を含む第１のマイク入力信号を通話相手の通信装置３００に送信した場合、マスキング音５０３が、通信装置３００のレシーバ-マイク間経路を経由して利用者４００の通信装置１００に戻り、レシーバ１２から出力されることがある。その場合、スピーカ１３から出力されたマスキング音５０３と、レシーバ１２から出力されたマスキング音とにより、利用者４００側でエコーが生じる恐れがある。
【００３０】
したがって、通信装置１００では、第１のマイク入力信号に含まれる受話音及びマスキング音を抑圧し、受話音及びマスキング音によるエコーを抑圧するとともに、通話内容を聞き取りにくくなる事態を防ぐ必要がある。本実施形態の通信装置１００では、以下に説明する方法で、受話音及びマスキング音によるエコーを抑圧する。なお、以下の説明は、通話相手の通信端末から受信した音声信号をレシーバ１２から出力する状態で通話をしているときのエコーの抑圧方法である。また、以下の説明では、受話音等のレシーバ１２から出力された音声をレシーバ出力音、マスキング音等のスピーカ１３から出力された音声をスピーカ出力音という。また、以下の説明では、第１のマイク入力信号に含まれる受話音及びマスキング音、すなわち第１のマイク入力信号のうちのエコーの原因になる成分をエコー成分という。
【００３１】
＜エコーの抑圧方法の概要＞
図２は、第１の実施形態に係る通信装置におけるエコーの抑圧方法を示すフローチャートである。
【００３２】
本実施形態に係る通信装置１００では、エコーを抑圧するため、図２に示すように、まず、現フレーム（時刻ｔ）のマイクからの入力信号、レシーバ出力信号、スピーカ出力信号を取得する（ステップＳ１）。マイクからの入力信号は、第１のマイク１０で収音した音声信号（第１のマイク入力信号）、及び第２のマイク１１で収音した音声信号（第２のマイク入力信号）である。また、レシーバ出力信号は、レシーバ１２から出力する音声信号であり、スピーカ出力信号は、スピーカ１３から出力する音声信号である。
【００３３】
次に、第１のマイク入力信号に対する入力内容判定処理を行う（ステップＳ２）。ステップＳ２では、第１のマイク入力信号の入力内容として周囲騒音の有無、利用者の声の有無、レシーバ出力音の有無、及びスピーカ出力音の有無を判定し、その組合せをフラグで表す。言い換えると、ステップＳ２では、第１のマイク入力信号に含まれる有意な音声の出所（発生元）を特定する。
【００３４】
図３は、図２の入力内容判定処理の処理手順を示すフローチャートである。図４は、図３の周囲騒音検出処理の処理手順を示すフローチャートである。
【００３５】
ステップＳ２（入力内容判定処理）では、図３に示すように、まず、第１のマイク入力信号、レシーバ出力信号、及びスピーカ出力信号を入力する（ステップＳ２０１）。なお、レシーバ出力信号及びスピーカ出力信号は、ステップＳ１で取得できた出力信号のみを入力する。
【００３６】
次に、ステップＳ２０１で入力した信号にスピーカ出力信号が有るかを判定する（ステップＳ２０２）。スピーカ出力信号は、ステップＳ２の処理を行っている通信装置自身が生成し、出力する信号である。そのため、第１のマイク入力信号におけるスピーカ出力音の有無は、通信装置自身が出力しているスピーカ出力信号の有無により判定する。スピーカ出力信号が有る場合（ステップＳ２０２；Ｙｅｓ）は、スピーカ出力音の有無を表すフラグs_flagを１にする（ステップＳ２０３）。一方、スピーカ出力信号が無い場合（ステップＳ２０２；Ｎｏ）は、スピーカ出力信号の有無を表すフラグs_flagを０にする（ステップＳ２０４）。
【００３７】
次に、第１のマイク入力信号に対する利用者音声検出処理を行う（ステップＳ２０５）。ステップＳ２０５では、周知の音声検出方法を用いて、第１のマイク入力信号から利用者の声の検出を試みる。そして、利用者の声を検出した場合は、利用者の声の有無を表すフラグm_flagを１にする。一方、利用者の声を検出しなかった場合は、利用者の声の有無を表すフラグm_flagを０にする。
【００３８】
次に、第１のマイク入力信号に対するレシーバ出力音検出処理を行う（ステップＳ２０６）。ステップＳ２０６では、周知の音声検出方法を用いて、第１のマイク入力信号からレシーバ出力音の検出を試みる。そして、レシーバ出力音を検出した場合は、レシーバ出力音の有無を表すフラグr_flagを１にする。一方、レシーバ出力音を検出しなかった場合は、レシーバ出力音の有無を表すフラグr_flagを０にする。
【００３９】
次に、第１のマイク入力信号に対する周囲騒音検出処理を行う（ステップＳ２０７）。ステップＳ２０７では、図４に示すように、まず、利用者音声検出処理の結果である利用者の声の有無を表すフラグm_flagの値を取得し（ステップＳ２０７１）、フラグm_flagが１であるか判定する（ステップＳ２７０２）。
【００４０】
フラグm_flagが１ではない場合（ステップＳ２７０２；Ｎｏ）は、次に、第１のマイク入力信号のパワーＰ（ｔ）を算出する（ステップＳ２７０３）。第１のマイク入力信号のパワーＰ（ｔ）は、周知の算出方法で算出する。
【００４１】
次に、算出したパワーＰ（ｔ）を用いて、第１のマイク入力信号の騒音パワーＮＰ（ｔ）を算出する（ステップＳ２０７４）。騒音パワーＮＰ（ｔ）は、例えば、下記の数式（１）を用いて算出する。
ＮＰ（ｔ）＝α・ＮＰ（ｔ−１）＋（１−α）・Ｐ（ｔ）  ・・・（１）
【００４２】
数式（１）において、ＮＰ（ｔ−１）は１つ前（時刻ｔ−１）のフレームにおける第１のマイク入力信号の騒音パワーであり、ｔ＝０の場合は、予め定めた初期値を用いる。また、αは重み係数であり、０＜α＜１の任意の値である。
【００４３】
一方、フラグm_flagが１である場合（ステップＳ２７０２；Ｙｅｓ）は、１つ前（時刻ｔ−１）のフレームにおける騒音パワーＮＰ（ｔ−１）を、時刻ｔのフレームにおける騒音パワーＮＰ（ｔ）とする（ステップＳ２０７５）。ｔ＝０の場合、ステップＳ２０７５では、予め定めた初期値を騒音パワーＮＰ（ｔ）として用いる。
【００４４】
次に、騒音パワーＮＰ（ｔ）が予め定めた閾値ＴＨ１よりも大きいか判定する（ステップＳ２０７６）。ＮＰ（ｔ）＞ＴＨ１の場合（ステップＳ２０７６；Ｙｅｓ）は、周囲騒音の有無を表すフラグn_flagを１にする（ステップＳ２０７７）。一方、ＮＰ（ｔ）≦ＴＨ１の場合（ステップＳ２０７６；Ｎｏ）は、周囲騒音の有無を表すフラグn_flagを０にする（ステップＳ２０７８）。なお、ステップＳ２０７６の判定に用いる閾値ＴＨ１は、適宜変更可能であり、例えば周知の周囲騒音検出方法で用いる閾値の中から選択すればよい。
【００４５】
上記の手順により周囲騒音の有無を表すフラグn_flagを０又は１に決定したら、騒音パワーＮＰ（ｔ）を通信装置１００のバッファに格納する（ステップＳ２０７９）。これで周囲騒音検出処理（ステップＳ２０７）が終了する。
【００４６】
そして、図３に示した周囲騒音検出処理（ステップＳ２０７）が終了すると、入力内容判定処理（ステップＳ２）が終了する。
【００４７】
入力内容判定処理（ステップＳ２）により、第１のマイク入力信号の入力内容を判定し、４つのフラグn_flag、m_flag、r_flag、s_flagの値が決定したら、次に、図２に示すように、伝達特性学習処理を行う（ステップＳ３）。
【００４８】
伝達特性学習処理では、第１のマイク入力信号の入力内容の判定結果に基づいて、伝達特性を学習するか否かと、学習する場合の学習方法（伝達特性の算出方法）とを決定する。そして、学習する場合は、決定した学習方法に従って伝達特性を算出し、学習する。本実施形態では、第１のマイク入力信号の入力内容と、伝達特性を学習するか否か及び学習する場合の学習方法との関係を、例えば図５に示した学習定義テーブルのように定義する。
【００４９】
図５は、伝達特性の学習定義テーブルの一例を示す図である。
図５に示した学習定義テーブルでは、４つのフラグn_flag、m_flag、r_flag、s_flagの値の組合せが（０，１，１，０）、（０，０，１，１）、（０，０，１，０）、及び（０，０，０，０）の場合にのみ、レシーバ-マイク間経路の伝達特性Ｈｒを学習する。また、伝達特性Ｈｒの学習方法として方法ＣＲ０、ＣＲ１、及びＣＲ２の３つの方法を用意し、４つのフラグn_flag、m_flag、r_flag、s_flagの値の組合せに応じて学習方法を切り替える。方法ＣＲ０〜ＣＲ２は、後述するように、伝達特性Ｈｒの算出に用いる入力信号が異なる。
【００５０】
同様に、図５に示した学習定義テーブルでは、４つのフラグn_flag、m_flag、r_flag、s_flagの値の組合せが（０，１，０，１）、（０，０，１，１）、（０，０，０，１）、及び（０，０，０，０）の場合にのみ、スピーカ-マイク間経路の伝達特性Ｈｓを学習する。また、伝達特性Ｈｓの学習方法として方法ＣＳ０、ＣＳ１、及びＣＳ２の３つの方法を用意し、４つのフラグn_flag、m_flag、r_flag、s_flagの値の組合せに応じて、学習方法を切り替える。方法ＣＳ０〜ＣＳ２は、後述するように、伝達特性Ｈｓの算出に用いる入力信号が異なる。
【００５１】
上記の伝達特性学習処理を終えると、次に、エコー抑圧処理を行う（ステップＳ４）。
エコー抑圧処理では、予め用意された伝達特性関数（初期値）、又は伝達特性学習処理で学習した伝達特性Ｈｒ，Ｈｓに基づいて擬似エコー信号を生成し、第１のマイク入力信号から擬似エコー信号を減算する処理を行う。擬似エコー信号は、レシーバ出力信号及び伝達特性Ｈｒ、又はスピーカ出力信号及び伝達特性Ｈｓから見積もったエコー成分である。
【００５２】
レシーバ出力音及びスピーカ出力音のいずれか一方のみが第１のマイク入力信号に含まれる場合は、含まれる出力音と対応する伝達特性に基づいて擬似エコー信号を生成して、第１のマイク入力信号から減算する。また、レシーバ出力音及びスピーカ出力音が第１のマイク入力信号に含まれる場合は、伝達特性Ｈｒに基づいた第１の擬似エコー信号、及び伝達特性Ｈｓに基づいた第２の擬似エコー信号を生成し、第１のマイク入力信号から順次減算する。
【００５３】
エコー抑圧処理において、擬似エコー信号は、周知のエコー抑圧方法における生成方法により生成すればよい。また、擬似エコー信号を減算する処理は、周知のエコー抑圧方法における減算方法を用いて行えばよい。
【００５４】
エコー抑圧処理が終了すると、通話が終了したか判定する（ステップＳ５）。通話が終了していない場合（ステップＳ５；Ｎｏ）、ステップＳ１に戻り、ステップＳ１〜Ｓ４の処理を繰り返す。通話が終了した場合（ステップＳ５；Ｙｅｓ）、エコーを抑圧する処理を終了する。
【００５５】
なお、図２には示していないが、エコー抑圧処理（ステップＳ５）によりエコー成分を抑圧した第１のマイク入力信号は、ノイズリダクション又はノイズキャンセル等のノイズ抑圧処理を行った後、送話信号として通話相手の通信装置に向けて送信する。
【００５６】
＜伝達特性学習処理の詳細＞
次に、伝達特性学習処理（ステップＳ３）で行う処理を詳しく説明する。
【００５７】
本実施形態の通信装置１００では、学習定義テーブルに従って伝達特性Ｈｒ、Ｈｓを学習するため、伝達特性学習処理として図６Ａ及び図６Ｂに示すような処理を行う。
【００５８】
図６Ａは、図２の伝達特性学習処理の処理手順を示すフローチャート（その１）である。図６Ｂは、図２の伝達特性学習処理の処理手順を示すフローチャート（その２）である。
【００５９】
伝達特性学習処理（ステップＳ３）では、図６Ａに示すように、まず、入力内容判定処理の結果である４つのフラグn_flag、m_flag、r_flag、s_flagの値を取得する（ステップＳ３０１）。
【００６０】
次に、取得した４つのフラグのうちの周囲騒音の有無を表すフラグn_flagの値が１であるかを判定する（ステップＳ３０２）。フラグn_flagの値が１である場合（ステップＳ３０２；Ｙｅｓ）、図６Ａ及び図６Ｂに示したように、伝達特性を学習することなく伝達特性学習処理を終了する。
【００６１】
フラグn_flagが１ではない場合（ステップＳ３０２；Ｎｏ）、次に、他の３つのフラグm_flag、r_flag、及びs_flagの値について、m_flag＝１∧r_flag＝１∧s_flag＝１であるか判定する（ステップＳ３０３）。m_flag＝１∧r_flag＝１∧s_flag＝１である場合（ステップＳ３０３；Ｙｅｓ）、伝達特性を学習することなく伝達特性学習処理を終了する。
【００６２】
m_flag＝１∧r_flag＝１∧s_flag＝１ではない場合（ステップＳ３０３；Ｎｏ）、次に、フラグm_flag及びr_flagの値について、m_flag＝１∧r_flag＝１であるか判定する（ステップＳ３０４）。m_flag＝１∧r_flag＝１である場合（ステップＳ３０４；Ｙｅｓ）、図６Ａに示したように、方法ＣＲ１で伝達特性Ｈｒを学習する（ステップＳ３０５）。ステップＳ３０５で伝達特性Ｈｒを学習したら、伝達特性学習処理を終了する。
【００６３】
m_flag＝１∧r_flag＝１ではない場合（ステップＳ３０４；Ｎｏ）、次に、フラグm_flag及びs_flagの値について、m_flag＝１∧s_flag＝１であるか判定する（ステップＳ３０６）。m_flag＝１∧s_flag＝１である場合（ステップＳ３０６；Ｙｅｓ）、図６Ａに示したように、方法ＣＳ１で伝達特性Ｈｓを学習する（ステップＳ３０７）。ステップＳ３０７で伝達特性Ｈｓを学習したら、伝達特性学習処理を終了する。
【００６４】
m_flag＝１∧s_flag＝１ではない場合（ステップＳ３０６；Ｎｏ）、次に、フラグr_flag及びs_flagの値について、r_flag＝１∧s_flag＝１であるか判定する（ステップＳ３０８）。r_flag＝１∧s_flag＝１である場合（ステップＳ３０８；Ｙｅｓ）、図６Ａに示したように、方法ＣＲ１で伝達特性Ｈｒを学習し、方法ＣＳ１で伝達特性Ｈｓを学習する（ステップＳ３０９）。ステップＳ３０９で伝達特性Ｈｒ及びＨｓを学習したら、伝達特性学習処理を終了する。
【００６５】
r_flag＝１∧s_flag＝１ではない場合（ステップＳ３０８；Ｎｏ）、次に、図６Ｂに示すように、フラグm_flagの値が１であるか判定する（ステップＳ３１０）。フラグm_flagの値が１である場合（ステップＳ３１０；Ｙｅｓ）、図６Ｂに示したように、伝達特性を学習することなく伝達特性学習処理を終了する。
【００６６】
フラグm_flagの値が１ではない場合（ステップＳ３１０；Ｎｏ）、次に、フラグr_flagの値が１であるか判定する（ステップＳ３１１）。フラグr_flagの値が１である場合（ステップＳ３１１；Ｙｅｓ）、図６Ｂに示したように、方法ＣＲ０で伝達特性Ｈｒを学習する（ステップＳ３１２）。ステップＳ３１２で伝達特性Ｈｒを学習したら、伝達特性学習処理を終了する。
【００６７】
フラグr_flagの値が１ではない場合（ステップＳ３１１；Ｎｏ）、次に、フラグs_flagの値が１であるか判定する（ステップＳ３１３）。フラグs_flagの値が１である場合（ステップＳ３１３；Ｙｅｓ）、図６Ｂに示したように、方法ＣＳ０で伝達特性Ｈｓを学習する（ステップＳ３１４）。ステップＳ３１４で伝達特性Ｈｓを学習したら、伝達特性学習処理を終了する。
【００６８】
フラグs_flagの値が１ではない場合（ステップＳ３１３；Ｎｏ）、図６Ｂに示したように、方法ＣＲ２で伝達特性Ｈｒを学習し（ステップＳ３１５）、方法ＣＳ２で伝達特性Ｈｓを学習する（ステップＳ３１６）。ステップＳ３１５及びステップＳ３１６で伝達特性Ｈｒ及びＨｓを学習したら、伝達特性学習処理を終了する。
【００６９】
続けて、伝達特性学習処理における伝達特性Ｈｒ，Ｈｓの学習方法について順に説明する。
【００７０】
＜方法ＣＲ１で伝達特性Ｈｒを学習する処理＞
図７は、方法ＣＲ１で伝達特性Ｈｒを学習する処理の処理手順を示すフローチャートである。
【００７１】
方法ＣＲ１で伝達特性Ｈｒを学習する処理は、図５及び図６Ａに示したように、第１のマイク入力信号の入力内容を表す４つのフラグn_flag、m_flag、r_flag、s_flagの値が（０，１，１，０）の場合、及び（０，０，１，１）の場合に行う。すなわち、方法ＣＲ１は、第１のマイク入力信号にレシーバ出力音及び利用者の声のみが含まれる場合、又はレシーバ出力音及びスピーカ出力音のみが含まれる場合のレシーバ-マイク間経路の伝達特性Ｈｒの学習方法である。
【００７２】
レシーバ-マイク間経路の伝達特性Ｈｒは、レシーバ出力信号と、そのレシーバ出力信号をレシーバから出力したときの第１のマイク入力信号とを用いて算出する。この際、第１のマイク入力信号にレシーバ出力音のほかに利用者の声又はスピーカ出力音が含まれると、算出した伝達特性Ｈｒの信頼度が低くなる。そのため、方法ＣＲ１で伝達特性Ｈｒを学習する際には、第１のマイクの指向性をレシーバ方向に制御し、第１のマイク入力信号に含まれる音声のうちのレシーバ方向から到来する成分をレシーバ出力音とみなして伝達特性Ｈｒを算出する。なお、レシーバ方向とは、第１のマイクで収音されるレシーバ出力音の到来方向である。
【００７３】
方法ＣＲ１で伝達特性Ｈｒを学習する処理の一つであるステップＳ３０５では、図７に示すように、まず、レシーバ出力信号をレシーバから出力する（ステップＳ３０５１）。このステップＳ３０５１のレシーバ出力信号は、通話時における受話信号である。
【００７４】
次に、第１及び第２のマイク入力信号を取得する（ステップＳ３０５２）。
次に、第１のマイク入力信号のうちのレシーバ方向αｒからの入力信号を算出する指向性制御処理を行う（ステップＳ３０５３）。
【００７５】
そして、レシーバ出力信号と、レシーバ方向αｒからの入力信号とを用い、レシーバ-マイク間の伝達特性Ｈｒを算出して学習する（ステップＳ３０５４）。
【００７６】
この図７に示した処理手順におけるステップＳ３０５３及びＳ３０５４の処理について、詳しく説明する。
【００７７】
図８は、マイクで収音した音の到来方向の算出方法を説明する模式図である。
図９は、レシーバ方向αｒに指向性を制御するゲイン算出テーブル及びスピーカ方向αｓに指向性を制御するゲイン算出テーブルを示す模式図である。
【００７８】
図１０は、図７の指向性制御処理の処理手順を示すフローチャートである。
図１１は、方法ＣＲ１で学習した伝達特性の一例を示す模式図である。
【００７９】
第１のマイク１０で収音した音の到来方向θは、第１のマイク１０で収音した音と、第２のマイク１１で収音した音との位相差から求めることができる。また、第１のマイク１０やレシーバ１２は筐体１４の所定位置に配設されているので、レシーバ方向αｒは、第１のマイク１０とレシーバ１２との位置関係から特定できる。
【００８０】
そのため、第１のマイク入力信号について、周波数ｆごとに到来方向θ（ｆ）を求め、到来方向θ（ｆ）がレシーバ方向αｒから大きくずれている周波数成分を抑圧することで、第１のマイクの指向性をレシーバ方向αｒに制御することができる。
【００８１】
本実施形態に係る通信装置１００は、図１に示したように、第１のマイク１０及び第２のマイク１１を備える。この第１のマイク１０及び第２のマイク１１が、図８に示すように、基準面７００に対し距離ｄで配置されている場合、距離ｄ、音声５０２の到来角度θ、両マイク１０，１１の入力信号５０２ａ，５０２ｂの時間差τの関係は、音速をｃとして下記の数式（２）で表される。
θ＝ａｒｃｓｉｎ（ｃτ／ｄ）  ・・・（２）
【００８２】
よって、第１のマイク入力信号における周波数ｆの音の到来方向θ（ｆ）は、第１のマイク入力信号及び第２のマイク入力信号から算出することができる。
【００８３】
また、第１のマイク入力信号における周波数ｆの音の到来方向θ（ｆ）がレシーバ方向αｒと一致する場合、又はレシーバ方向αｒの近傍である場合、その周波数ｆの音は、レシーバから出力された音である可能性が高い。逆に、到来方向θ（ｆ）がレシーバ方向αｒから大きくずれている場合、その周波数ｆの音は、レシーバから出力された音ではないと考えられる。そのため、本実施形態では、図９の（ａ）に示したようなゲイン算出テーブルに基づいて、到来方向θ（ｆ）の音に抑圧ゲインＧｒ（ｆ）を適用し、第１のマイク入力信号のうちの到来方向θ（ｆ）がレシーバ方向αｒから大きくずれている成分を抑圧する。これにより、第１のマイク入力信号のうちのレシーバ方向αｒからの入力信号が得られる。
【００８４】
図９の（ａ）に示したゲイン算出テーブルは、第１のマイク１０の指向性をレシーバ方向αｒに制御する場合の音の到来方向θと抑圧ゲインＧとの対応関係を抑圧ゲイン関数Ｇｒとしてグラフ化したものである。レシーバ方向αｒは、周囲騒音、利用者の声、及びスピーカ出力音が無い状態で、第１のマイク１０で収音されるレシーバ出力音の到来方向を求めたときのピーク方向である。そして、レシーバ出力音の到来方向は、レシーバ方向αｒを中心とし、ある程度の広がりを持っている。そのため、このレシーバ出力音の到来方向の広がりを考慮し、抑圧ゲイン関数Ｇｒにも、下記の数式（３）〜（６）に示すように、レシーバ方向αｒを中心とした広がりを持たせる。
Ｇｒ＝０  （θ≦Ｌ１，Ｌ４≦θの場合）  ・・・（３）
Ｇｒ＝１−（Ｌ２−θ）／（Ｌ２−Ｌ１）  （Ｌ１＜θ＜Ｌ２の場合）  ・・・（４）
Ｇｒ＝１  （Ｌ２≦θ≦Ｌ３の場合）  ・・・（５）
Ｇｒ＝（Ｌ４−θ）／（Ｌ４−Ｌ３）  （Ｌ３＜θ＜Ｌ４の場合）・・・（６）
【００８５】
Ｌ１、Ｌ２、Ｌ３、及びＬ４の値は、例えば、Ｌ４−Ｌ１＝０．２π（ラジアン）、αｒ−Ｌ１＝０．１π（ラジアン）、Ｌ２−Ｌ１＝Ｌ４−Ｌ３＝０．０５π（ラジアン）となるようにする。なお、Ｌ１、Ｌ２、Ｌ３、及びＬ４は、適宜変更可能である。さらに、Ｌ１、Ｌ２、Ｌ３、及びＬ４は、抑圧ゲイン関数Ｇｒがレシーバ方向αｒを中心として非対称となるようにしてもよい。
【００８６】
なお、第１のマイク入力信号に対する指向性制御は、方法ＣＳ１で伝達特性Ｈｓを学習する際にも行う。方法ＣＳ１で伝達特性Ｈｓを学習する際には、図９の（ｂ）に示すように、スピーカ方向αｓ（≠αｒ）を中心とし、Ｌ５〜Ｌ８の値で規定される広がりを持つ抑圧ゲイン関数Ｇｓを用いる。
【００８７】
さて、方法ＣＲ１で伝達特性Ｈｒを学習する処理における指向性制御処理（図７のステップＳ３０５３）では、上記の指向性制御方法を踏まえ、図１０に示したような処理を行う。まず、第１のマイク入力信号の周波数分析（ステップＳ３０５３ａ）、及び第２のマイク入力信号の周波数分析（ステップＳ３０５３ｂ）を行う。
【００８８】
ステップＳ３０５３ａでは、第１のマイク入力信号に対するフーリエ変換により、周波数ｆごとのスペクトルＲｅ１（ｆ）及びＩｍ１（ｆ）を算出する。同様に、ステップＳ３０５３ｂでは、第２のマイク入力信号に対するフーリエ変換により、周波数ｆごとのスペクトルＲｅ２（ｆ）及びＩｍ２（ｆ）を算出する。なお、Ｒｅ１（ｆ）及びＲｅ２（ｆ）はそれぞれスペクトルの実部、Ｉｍ１（ｆ）及びＩｍ２（ｆ）はそれぞれスペクトルの虚部である。また、スペクトルＲｅ１（ｆ），Ｉｍ１（ｆ）及びＲｅ２（ｆ），Ｉｍ２（ｆ）は、所定の周波数間隔、例えば３１．２５Ｈｚ間隔で算出する。
【００８９】
次に、第１のマイク入力信号と第２のマイク入力信号との位相差を、周波数ｆごとに算出する（ステップＳ３０５３ｃ）。ステップＳ３０５３ｃでは、下記の数式（７）〜（９）により、周波数ｆの入力信号の位相差Δβ（ｆ）を算出する。
β１（ｆ）＝ａｒｃｔａｎ（Ｉｍ１（ｆ）／Ｒｅ１（ｆ））  ・・・（７）
β２（ｆ）＝ａｒｃｔａｎ（Ｉｍ２（ｆ）／Ｒｅ２（ｆ））  ・・・（８）
Δβ（ｆ）＝β１（ｆ）−β２（ｆ）  ・・・（９）
【００９０】
次に、各周波数ｆの音の到来方向θ（ｆ）を算出する（ステップＳ３０５３ｄ）。到来方向θ（ｆ）は、位相差Δβ（ｆ）及び音速ｃを用いて、下記の数式（１０）により算出する。
θ（ｆ）＝ａｒｃｓｉｎ（ｃ・Δｂ（ｆ）／ｆ）  ・・・（１０）
【００９１】
次に、図９の（ａ）に示したようなゲイン算出テーブルを用いて、到来方向θ（ｆ）と対応する抑圧ゲインＧｒ（ｆ）を算出する（ステップＳ３０５３ｅ）。
【００９２】
次に、抑圧ゲインＧｒ（ｆ）を周波数ｆの入力信号に適用し、レシーバ方向αｒからの入力信号を算出する（ステップＳ３０５３ｆ）。ステップＳ３０５３ｆでは、例えば、ステップＳ３０５３ａで求めた各周波数ｆのスペクトルＲｅ１（ｆ），Ｉｍ１（ｆ）に抑圧ゲインＧｒ（ｆ）を掛け合わせる。これにより、第１のマイク入力信号のうちの、到来方向θ（ｆ）がレシーバ方向αｒから大きくずれている周波数成分が抑圧される。そのため、抑圧ゲインＧ（ｆ）を適用した第１のマイク入力信号は、レシーバ方向αｒからの入力信号、言い換えると第１のマイクの指向性をレシーバ方向αｒに制御して入力した入力信号とみなすことができる。
【００９３】
ステップＳ３０５３ｆの処理が終了すると、指向性制御処理（図７のステップＳ３０５３）が終了し、次に、伝達特性Ｈｒを算出して学習する処理（ステップＳ３０５４）を行う。
【００９４】
ステップＳ３０５４では、下記の数式（１１）により、時刻ｔにおける周波数ｆの音のスペクトル振幅値Ｈｒ（ｆ，ｔ）を、周波数ｆごとに算出する。
Ｈｒ（ｆ，ｔ）＝γｃ（Ｍｒ（ｆ，ｔ）／Ｒ（ｆ，ｔ））
＋（１−γｃ）Ｈｒ（ｔ−１）  ・・・（１１）
【００９５】
数式（１１）において、Ｍｒ（ｆ，ｔ）は、時刻ｔのレシーバ方向αｒからの入力信号における周波数ｆの音のスペクトル振幅値である。Ｍｒ（ｆ，ｔ）には、ステップＳ５０３５ｆで算出した値を代入する。また、Ｒ（ｆ，ｔ）は、時刻ｔのレシーバ出力信号における周波数ｆの音のスペクトル振幅値である。Ｒ（ｆ，ｔ）には、レシーバ出力信号を周波数分析（フーリエ変換）して求めた値を代入する。また、Ｈｒ（ｆ，ｔ−１）は、１つ前（時刻ｔ−１）のフレームでエコーの抑圧に用いたレシーバ-マイク間経路の伝達特性Ｈｒにおける、周波数ｆの音のスペクトル振幅値である。ｔ＝０又はｔ−１以前に伝達特性Ｈｓを学習していない場合、Ｈｒ（ｆ，ｔ−１）には、予め定めた初期値を用いる。ｔ−１以前に伝達特性Ｈｓを学習している場合、Ｈｒ（ｆ，ｔ−１）には、直前に学習した値を代入する。さらに、γｃは、更新係数であり、０＜γｃ＜１の任意の値に設定される。
【００９６】
数式（１１）により算出した各周波数ｆのスペクトル振幅値Ｈｒ（ｆ，ｔ）の集合が時刻ｔにおけるレシーバ-マイク間経路の伝達特性Ｈｒとなる。そして、時刻ｔ−１における伝達特性Ｈｒを時刻ｔにおける伝達特性Ｈｒに置換すると、図７のステップＳ３０５４の処理が終了する。伝達特性Ｈｒは、図１１に示すような伝達特性関数テーブルとして、通信装置１００が備えるバッファ等の記憶部に格納される。
【００９７】
なお、上記の方法ＣＲ１で伝達特性Ｈｒを学習する処理は、図６ＡのステップＳ３０５だけでなく、ステップＳ３０９でも行う。ステップＳ３０９で行う伝達特性Ｈｒの学習処理は、ステップＳ３０５と同じ処理でよい。
【００９８】
このように、方法ＣＲ１で伝達特性Ｈｒを学習する際には、第１のマイク１０の指向性をレシーバ方向αｒに制御する。そのため、第１のマイク入力信号にレシーバ-マイク間経路を含む複数の経路からの音が含まれる場合でも、レシーバ-マイク間経路を伝達したレシーバ出力音のみを擬似的に抽出できる。したがって、第１のマイク入力信号に伝達経路の異なる複数の音が含まれる場合でも、学習したレシーバ-マイク間経路の伝達特性Ｈｒの信頼性を確保できる。
【００９９】
＜方法ＣＳ１で伝達特性Ｈｓを学習する処理＞
図１２は、方法ＣＳ１で伝達特性Ｈｓを学習する処理の処理手順を示すフローチャートである。
【０１００】
方法ＣＳ１で伝達特性Ｈｓを学習する処理は、図５及び図６Ａに示したように、第１のマイク入力信号の入力内容を表す４つのフラグn_flag、m_flag、r_flag、s_flagの値が（０，１，０，１）の場合、及び（０，０，１，１）の場合に行う。すなわち、方法ＣＳ１は、第１のマイク入力信号にスピーカ出力音及び利用者の声のみが含まれる場合、又はスピーカ出力音及びレシーバ出力音のみが含まれる場合のスピーカ-マイク間経路の伝達特性Ｈｓの学習方法である。
【０１０１】
スピーカ-マイク間経路の伝達特性Ｈｓは、スピーカ出力信号と、そのスピーカ出力信号をスピーカから出力したときの第１のマイク入力信号とを用いて算出する。この際、第１のマイク入力信号にスピーカ出力音のほかに利用者の声又はレシーバ出力音が含まれると、算出した伝達特性Ｈｓの信頼度が低くなる。そのため、方法ＣＳ１で伝達特性Ｈｓを学習する際には、第１のマイクの指向性をスピーカ方向に制御し、第１のマイク入力信号に含まれる音声のうちのスピーカ方向から到来する成分をスピーカ出力音とみなして伝達特性Ｈｓを算出する。なお、スピーカ方向とは、第１のマイクで収音されるスピーカ出力音の到来方向のことである。
【０１０２】
方法ＣＳ１で伝達特性Ｈｓを学習する処理の一つであるステップＳ３０７では、図１２に示すように、まず、スピーカ出力信号をスピーカから出力する（ステップＳ３０７１）。このステップＳ３０７１のスピーカ出力信号は、マスキング音として用いる音声の音声信号である。
【０１０３】
次に、第１及び第２のマイク入力信号を取得する（ステップＳ３０７２）。
次に、第１のマイク入力信号のうちのスピーカ方向αｓからの入力信号を算出する指向性制御処理を行う（ステップＳ３０７３）。ステップＳ３０７３の処理は、図１０のステップＳ３０５３ａ〜Ｓ３０５３ｆの処理と同様の手順で行う。なお、ステップＳ３０５３ｅに相当する処理では、抑圧ゲイン関数Ｇｒの代わりに、図９の（ｂ）に示した抑圧ゲイン関数Ｇｓを用いる。
【０１０４】
そして、スピーカ出力信号と、スピーカ方向αｓからの入力信号とを用い、スピーカ-マイク間の伝達特性Ｈｓを算出して学習する（ステップＳ３０７４）。
【０１０５】
ステップＳ３０７４では、下記の数式（１２）により、時刻ｔにおける周波数ｆの音のスペクトル振幅値Ｈｓ（ｆ，ｔ）を、周波数ｆごとに算出する。
Ｈｓ（ｆ，ｔ）＝γｃ（Ｍｓ（ｆ，ｔ）／Ｓ（ｆ，ｔ））
＋（１−γｃ）Ｈｓ（ｔ−１）  ・・・（１２）
【０１０６】
数式（１２）において、Ｍｓ（ｆ，ｔ）は、時刻ｔのスピーカ方向αｓからの入力信号における周波数ｆの音のスペクトル振幅値である。Ｍｓ（ｆ，ｔ）には、ステップＳ５０３７で算出した値を代入する。また、Ｓ（ｆ，ｔ）は、時刻ｔのスピーカ出力信号における周波数ｆの音のスペクトル振幅値である。Ｓ（ｆ，ｔ）には、スピーカ出力信号を周波数分析（フーリエ変換）して求めた値を代入する。また、Ｈｓ（ｆ，ｔ−１）は、１つ前（時刻ｔ−１）のフレームでエコーの抑圧に用いたスピーカ-マイク間経路の伝達特性Ｈｓにおける、周波数ｆの音のスペクトル振幅値である。ｔ＝０又はｔ−１以前に伝達特性Ｈｓを学習していない場合、Ｈｓ（ｆ，ｔ−１）には、予め定めた初期値を用いる。ｔ−１以前に伝達特性Ｈｓを学習している場合、Ｈｓ（ｆ，ｔ−１）には、直前に学習した値を代入する。さらに、γｃは、更新係数であり、０＜γｃ＜１の任意の値に設定される。
【０１０７】
数式（１２）により算出した各周波数ｆのスペクトル振幅値Ｈｓ（ｆ，ｔ）の集合が時刻ｔにおけるスピーカ-マイク間経路の伝達特性Ｈｓとなる。そして、時刻ｔ−１における伝達特性Ｈｓを時刻ｔにおける伝達特性Ｈｓに置換すると、方法ＣＳ１で伝達特性Ｈｓを学習する処理が終了する。伝達特性Ｈｓは、図１１に示したような伝達特性関数テーブルとして、伝達特性Ｈｒについての伝達特性関数テーブルとともに通信装置１００が備えるバッファ等の記憶部に格納される。
【０１０８】
なお、上記の方法ＣＳ１で伝達特性Ｈｓを学習する処理は、図６ＡのステップＳ３０７だけでなく、ステップＳ３０９でも行う。ステップＳ３０９で行う伝達特性Ｈｓの学習処理は、ステップＳ３０５と同じ処理でよい。
【０１０９】
このように、方法ＣＳ１で伝達特性Ｈｓを学習する際には、第１のマイク１０の指向性をスピーカ方向αｓに制御する。そのため、第１のマイク入力信号にスピーカ-マイク間経路を含む複数の経路からの音が含まれる場合でも、スピーカ-マイク間経路を伝達したスピーカ出力音のみを擬似的に抽出できる。したがって、第１のマイク入力信号に伝達経路の異なる複数の音が含まれる場合でも、学習したスピーカ-マイク間経路の伝達特性Ｈｓの信頼性を確保できる。
【０１１０】
＜方法ＣＲ０で伝達特性Ｈｒを学習する処理＞
図１３は、方法ＣＲ０で伝達特性Ｈｒを学習する処理の処理手順を示すフローチャートである。
【０１１１】
方法ＣＲ０で伝達特性Ｈｒを学習する処理は、図５、図６Ａ及び図６Ｂに示したように、第１のマイク入力信号の入力内容を表す４つのフラグn_flag、m_flag、r_flag、s_flagの値が（０，０，１，０）の場合に行う。すなわち、方法ＣＲ０は、第１のマイク入力信号にレシーバ出力音のみが含まれる場合のレシーバ-マイク間経路の伝達特性Ｈｒの学習方法である。
【０１１２】
第１のマイク入力信号にレシーバ-マイク間経路とは異なる他の経路からの音が含まれない場合、第１のマイク入力信号をそのまま伝達特性Ｈｒの算出に用いることができる。そのため、方法ＣＲ０で伝達特性Ｈｒを学習する際には、第１のマイクの指向性を制御する必要がない。
【０１１３】
方法ＣＲ０で伝達特性Ｈｒを学習する処理では、図１３に示すように、まずレシーバ出力信号をレシーバから出力し（ステップＳ３１２１）、第１のマイク入力信号を取得する（ステップＳ３１２２）。
【０１１４】
そして、レシーバ出力信号と、第１のマイク入力信号とを用い、レシーバ-マイク間の伝達特性Ｈｒを算出して学習する（ステップＳ３１２３）。
【０１１５】
ステップＳ３１２３では、下記の数式（１３）により、時刻ｔにおける周波数ｆの音のスペクトル振幅値Ｈｒ（ｆ，ｔ）を、周波数ｆごとに算出する。
Ｈｒ（ｆ，ｔ）＝γｃ（Ｍ（ｆ，ｔ）／Ｒ（ｆ，ｔ））
＋（１−γｃ）Ｈｒ（ｔ−１）  ・・・（１３）
【０１１６】
数式（１３）において、Ｍ（ｆ，ｔ）は、時刻ｔの入力信号における周波数ｆの音のスペクトル振幅値である。Ｍ（ｆ，ｔ）には、ステップＳ３１２２で取得した第１のマイク入力信号を周波数分析（フーリエ変換）して求めた値を代入する。また、Ｒ（ｆ，ｔ）は、時刻ｔのレシーバ出力信号における周波数ｆの音のスペクトル振幅値である。Ｒ（ｆ，ｔ）には、レシーバ出力信号を周波数分析（フーリエ変換）して求めた値を代入する。また、Ｈｒ（ｆ，ｔ−１）は、１つ前（時刻ｔ−１）のフレームでエコーの抑圧に用いたレシーバ-マイク間経路の伝達特性Ｈｒにおける、周波数ｆの音のスペクトル振幅値である。ｔ＝０又はｔ−１以前に伝達特性Ｈｓを学習していない場合、Ｈｒ（ｆ，ｔ−１）には、予め定めた初期値を用いる。ｔ−１以前に伝達特性Ｈｓを学習している場合、Ｈｒ（ｆ，ｔ−１）には、直前に学習した値を代入する。さらに、γｃは、更新係数であり、０＜γｃ＜１の任意の値に設定される。
【０１１７】
数式（１３）により算出した各周波数ｆのスペクトル振幅値Ｈｒ（ｆ，ｔ）の集合が時刻ｔにおけるレシーバ-マイク間経路の伝達特性Ｈｒとなる。そして、時刻ｔ−１における伝達特性Ｈｒを時刻ｔにおける伝達特性Ｈｒに置換すると、方法ＣＲ０で伝達特性Ｈｒを学習する処理が終了する。伝達特性Ｈｒは、図１１に示すような伝達特性関数テーブルとして、通信装置１００が備えるバッファ等の記憶部に格納される。
【０１１８】
このように、第１のマイク入力信号に含まれる音声がレシーバ出力音のみである場合には、第１のマイク入力信号をそのまま用いて伝達特性Ｈｒを算出することができる。そのため、第１のマイク入力信号の入力内容に基づいて伝達特性Ｈｒの学習方法を切り替えることにより、指向性制御処理による処理負荷の増大を抑えつつ、信頼性の高い伝達特性Ｈｒを算出し学習できる。
【０１１９】
＜方法ＣＳ０で伝達特性Ｈｓを学習する処理＞
図１４は、方法ＣＳ０で伝達特性Ｈｓを学習する処理の処理手順を示すフローチャートである。
【０１２０】
方法ＣＳ０で伝達特性Ｈｓを学習する処理は、図５、図６Ａ及び図６Ｂに示したように、第１のマイク入力信号の入力内容を表す４つのフラグn_flag、m_flag、r_flag、s_flagの値が（０，０，０，１）の場合に行う。すなわち、方法ＣＳ０は、第１のマイク入力信号にスピーカ出力音のみが含まれる場合のスピーカ-マイク間経路の伝達特性Ｈｓの学習方法である。
【０１２１】
第１のマイク入力信号にスピーカ-マイク間経路とは異なる他の経路からの音が含まれない場合、第１のマイク入力信号をそのまま伝達特性Ｈｓの算出に用いることができる。そのため、方法ＣＳ０で伝達特性Ｈｓを学習する際には、第１のマイクの指向性を制御する必要がない。
【０１２２】
方法ＣＳ０で伝達特性を学習する処理では、図１４に示すように、まずスピーカ出力信号をスピーカから出力し（ステップＳ３１４１）、第１のマイク入力信号を取得する（ステップＳ３１４２）。
【０１２３】
そして、スピーカ出力信号と、第１のマイク入力信号とを用い、スピーカ-マイク間の伝達特性Ｈｓを算出して学習する（ステップＳ３１４３）。
【０１２４】
ステップＳ３１４３では、下記の数式（１４）により、時刻ｔにおける周波数ｆの音のスペクトル振幅値Ｈｓ（ｆ，ｔ）を、周波数ｆごとに算出する。
Ｈｓ（ｆ，ｔ）＝γｃ（Ｍ（ｆ，ｔ）／Ｒ（ｆ，ｔ））
＋（１−γｃ）Ｈｓ（ｔ−１）  ・・・（１４）
【０１２５】
数式（１４）において、Ｍ（ｆ，ｔ）は、時刻ｔの入力信号における周波数ｆの音のスペクトル振幅値である。Ｍ（ｆ，ｔ）には、ステップＳ３１２２で取得した第１のマイク入力信号を周波数分析（フーリエ変換）して求めた値を代入する。また、Ｒ（ｆ，ｔ）は、時刻ｔのレシーバ出力信号における周波数ｆの音のスペクトル振幅値である。Ｒ（ｆ，ｔ）には、レシーバ出力信号を周波数分析（フーリエ変換）して求めた値を代入する。また、Ｈｓ（ｆ，ｔ−１）は、１つ前（時刻ｔ−１）のフレームでエコーの抑圧に用いたスピーカ-マイク間経路の伝達特性Ｈｓにおける、周波数ｆの音のスペクトル振幅値である。ｔ＝０又はｔ−１以前に伝達特性Ｈｓを学習していない場合、Ｈｓ（ｆ，ｔ−１）には、予め定めた初期値を用いる。ｔ−１以前に伝達特性Ｈｓを学習している場合、Ｈｓ（ｆ，ｔ−１）には、直前に学習した値を代入する。さらに、γｃは、更新係数であり、０＜γｃ＜１の任意の値に設定される。
【０１２６】
数式（１４）により算出した各周波数ｆのスペクトル振幅値Ｈｓ（ｆ，ｔ）の集合が時刻ｔにおけるスピーカ-マイク間経路の伝達特性Ｈｓとなる。そして、時刻ｔ−１における伝達特性Ｈｓを時刻ｔにおける伝達特性Ｈｓに置換すると、方法ＣＳ０で伝達特性Ｈｓを学習する処理が終了する。伝達特性Ｈｓは、図１１に示すような伝達特性関数テーブルとして、通信装置１００が備えるバッファ等の記憶部に格納される。
【０１２７】
このように、第１のマイク入力信号に含まれる音声がスピーカ出力音のみである場合には、第１のマイク入力信号をそのまま用いて伝達特性Ｈｓを算出することができる。そのため、第１のマイク入力信号の入力内容に基づいて伝達特性Ｈｓの学習方法を切り替えることにより、指向性制御処理による処理負荷の増大を抑えつつ、信頼性の高い伝達特性Ｈｓを算出し学習できる。
【０１２８】
＜方法ＣＲ２で伝達特性Ｈｒを学習する処理＞
図１５は、方法ＣＲ２で伝達特性Ｈｒを学習する処理の処理手順を示すフローチャートである。図１６は、学習用レシーバ出力信号の生成処理を示すフローチャートである。
【０１２９】
方法ＣＲ２で伝達特性Ｈｒを学習する処理は、図５、図６Ａ及び図６Ｂに示したように、第１のマイク入力信号の入力内容を表す４つのフラグn_flag、m_flag、r_flag、s_flagの値が（０，０，０，０）の場合に行う。すなわち、方法ＣＲ２は、第１のマイク入力信号に有意な音が含まれない場合のレシーバ-マイク間経路の伝達特性Ｈｒの学習方法である。
【０１３０】
第１のマイク入力信号にレシーバ-マイク間経路の音が含まれない状況では、第１のマイク入力信号を用いてレシーバ-マイク間経路の伝達特性Ｈｒを算出することができない。そのため、方法ＣＲ２で伝達特性Ｈｒを学習する際には、第１のマイク入力信号にレシーバ出力音が含まれるようにする必要がある。そこで、本実施形態では、第１のマイク入力信号にレシーバ-マイク間経路の音が含まれない状況では、学習用レシーバ出力信号を生成してレシーバから出力し、第１のマイク入力信号にレシーバ出力音のみが含まれる状態にする。
【０１３１】
方法ＣＲ２で伝達特性Ｈｒを学習する処理では、図１５に示すように、まず学習用レシーバ出力信号の生成処理を行い（ステップＳ３１５１）、生成した学習用レシーバ出力信号をレシーバから出力する（ステップＳ３１５２）。
【０１３２】
ステップＳ３１５１では、図１６に示したように、第１のマイク入力信号を取得し（ステップＳ３１５１ａ）、取得した入力信号の音量を調節して学習用レシーバ信号とする（ステップＳ３１５１ｂ）。ステップＳ３１５１ｂでは、例えば取得した第１のマイク入力信号の音量を＋３ｄＢ増幅した信号を学習用レシーバ信号とする。
【０１３３】
ステップＳ３１５１ａで取得する第１のマイク入力信号は、上記のように、レシーバ出力音等の有意な音を含まない音声信号である。しかしながら、第１のマイク入力信号は、完全な無音信号ではなく、入力内容判定処理において検出されないレベルの小さな音を含む音声信号である。そして、その小さな音は、通信装置１００の周囲で発生した音である。そのため、第１のマイク入力信号の音量を増幅した学習用レシーバ出力信号をレシーバから出力することで、通信装置１００の周囲にいる利用者及び第三者に不快感を与えることのない自然なレシーバ出力音を出力することができる。
【０１３４】
学習用レシーバ出力信号をレシーバから出力したら、次に、改めて第１のマイク入力信号を取得する（ステップＳ３１５３）。そして、学習用レシーバ出力信号と、第１のマイク入力信号とを用い、レシーバ-マイク間経路の伝達特性Ｈｒを算出して学習する（ステップＳ３１５４）。ステップＳ３１５３で取得する第１のマイク入力信号は、学習用レシーバ出力音のみを含む音声信号である。そのため、ステップＳ３１５３で取得する第１のマイク入力信号を用いることで、レシーバ-マイク間経路の伝達特性Ｈｒを算出できる。
【０１３５】
ステップＳ３１５４では、下記の数式（１５）により、時刻ｔにおける周波数ｆの音のスペクトル振幅値Ｈｒ（ｆ，ｔ）を、周波数ｆごとに算出する。
Ｈｒ（ｆ，ｔ）＝γｃ（Ｍ（ｆ，ｔ）／ＲＩ（ｆ，ｔ））
＋（１−γｃ）Ｈｒ（ｔ−１）  ・・・（１５）
【０１３６】
数式（１５）において、Ｍ（ｆ，ｔ）は、時刻ｔの入力信号における周波数ｆの音のスペクトル振幅値である。Ｍ（ｆ，ｔ）には、ステップＳ３１５３で取得した第１のマイク入力信号を周波数分析（フーリエ変換）して求めた値を代入する。また、ＲＩ（ｆ，ｔ）は、時刻ｔのレシーバ出力信号における周波数ｆの音のスペクトル振幅値である。ＲＩ（ｆ，ｔ）には、学習用レシーバ出力信号を周波数分析（フーリエ変換）して求めた値を代入する。また、Ｈｒ（ｆ，ｔ−１）は、１つ前（時刻ｔ−１）のフレームでエコーの抑圧に用いたレシーバ-マイク間経路の伝達特性Ｈｒにおける、周波数ｆの音のスペクトル振幅値である。ｔ＝０又はｔ−１以前に伝達特性Ｈｒを学習していない場合、Ｈｒ（ｆ，ｔ−１）には、予め定めた初期値を用いる。ｔ−１以前に伝達特性Ｈｒを学習している場合、Ｈｒ（ｆ，ｔ−１）には、直前に学習した値を代入する。さらに、γｃは、更新係数であり、０＜γｃ＜１の任意の値に設定される。
【０１３７】
数式（１５）により算出した各周波数ｆのスペクトル振幅値Ｈｒ（ｆ，ｔ）の集合が時刻ｔにおけるレシーバ-マイク間経路の伝達特性Ｈｒとなる。そして、時刻ｔ−１における伝達特性Ｈｒを時刻ｔにおける伝達特性Ｈｒに置換することで、方法ＣＲ２で伝達特性Ｈｒを学習する処理が終了する。伝達特性Ｈｒは、図１１に示すような伝達特性関数テーブルとして、通信装置１００が備えるバッファ等の記憶部に格納される。
【０１３８】
このように、方法ＣＲ２で伝達特性Ｈｒを学習する際には、学習用レシーバ出力信号と、学習用レシーバ出力音のみを含む第１のマイクからの入力信号とを用いてレシーバ-マイク間経路の伝達特性を算出する。これにより、レシーバから受話音を出力していない、あるいは受話音の音量が非常に小さい場合にも、信頼性の高い伝達特性Ｈｒを算出し学習することができる。
【０１３９】
また、方法ＣＲ２で伝達特性Ｈｒを学習することにより、第１のマイク入力信号に有意な音声が含まれない状況で生じる伝達特性Ｈｒの変化に追従できる。そのため、通話中、伝達特性Ｈｒを信頼性の高い状態に維持できる。
【０１４０】
＜方法ＣＳ２で伝達特性Ｈｒを学習する処理＞
図１７は、方法ＣＳ２で伝達特性Ｈｓを学習する処理の処理手順を示すフローチャートである。
【０１４１】
方法ＣＳ２で伝達特性Ｈｒを学習する処理は、図５、図６Ａ及び図６Ｂに示したように、第１のマイク入力信号の入力内容を表す４つのフラグn_flag、m_flag、r_flag、s_flagの値が（０，０，０，０）の場合に行う。すなわち、方法ＣＳ２は、第１のマイク入力信号に有意な音が含まれない場合のスピーカ-マイク間経路の伝達特性Ｈｓの学習方法である。
【０１４２】
第１のマイクの入力信号にスピーカ-マイク間経路の音が含まれない状況では、第１のマイク入力信号を用いてスピーカ-マイク間経路の伝達特性Ｈｓを算出することができない。そのため、方法ＣＳ２で伝達特性Ｈｓを学習する際には、第１のマイク入力信号にスピーカ出力音が含まれるようにする必要がある。そこで、本実施形態では、第１のマイク入力信号にスピーカ-マイク間経路の音が含まれない状況では、学習用スピーカ出力信号を生成してスピーカから出力し、第１のマイク入力信号にスピーカ出力音のみが含まれる状態にする。
【０１４３】
方法ＣＲ２で伝達特性を学習する処理では、図１７に示すように、まず学習用スピーカ出力信号の生成処理を行い（ステップＳ３１６１）、生成した学習用スピーカ出力信号をスピーカから出力する（ステップＳ３１６２）。
【０１４４】
ステップＳ３１６１では、方法ＣＳ２で伝達特性Ｈｒを学習する場合と同様に、第１のマイク入力信号を取得し、取得した入力信号の音量を調節して学習用スピーカ信号とする（図１６を参照。）。この際、学習用スピーカ出力信号は、学習用レシーバ出力信号よりも大きな音、例えば取得した第１のマイク入力信号の音量を＋６ｄＢ増幅した信号とする。
【０１４５】
ステップＳ３１６１で取得する第１のマイク入力信号は、上記のように、スピーカ出力音等の有意な音を含まない音声信号である。しかしながら、第１のマイク入力信号は、完全な無音信号ではなく、入力内容判定処理において検出されないレベルの小さな音を含む音声信号である。そして、その小さな音は、通信装置１００の周囲で発生した音である。そのため、第１のマイク入力信号の音量を増幅した学習用スピーカ出力信号をスピーカから出力することで、通信装置１００の周囲にいる利用者及び第三者に不快感を与えることのない自然なスピーカ出力音を出力することができる。
【０１４６】
学習用スピーカ出力信号をスピーカから出力したら、次に、改めて第１のマイク入力信号を取得する（ステップＳ３１６３）。そして、学習用スピーカ出力信号と、第１のマイク入力信号とを用い、スピーカ-マイク間経路の伝達特性Ｈｓを算出して学習する（ステップＳ３１６４）。ステップＳ３１６３で取得する第１のマイク入力信号は、学習用スピーカ出力音のみを含む音声信号である。そのため、ステップＳ３１６３で取得する第１のマイク入力信号を用いることで、スピーカ-マイク間経路の伝達特性Ｈｓを算出できる。
【０１４７】
ステップＳ３１６４では、下記の数式（１６）により、時刻ｔにおける周波数ｆの音のスペクトル振幅値Ｈｓ（ｆ，ｔ）を、周波数ｆごとに算出する。
Ｈｓ（ｆ，ｔ）＝γｃ（Ｍ（ｆ，ｔ）／ＳＩ（ｆ，ｔ））
＋（１−γｃ）Ｈｓ（ｔ−１）  ・・・（１６）
【０１４８】
数式（１６）において、Ｍ（ｆ，ｔ）は、時刻ｔの入力信号における周波数ｆの音のスペクトル振幅値である。Ｍ（ｆ，ｔ）には、ステップＳ３１６３で取得した第１のマイク入力信号を周波数分析（フーリエ変換）して求めた値を代入する。また、ＳＩ（ｆ，ｔ）は、時刻ｔのスピーカ出力信号における周波数ｆの音のスペクトル振幅値である。ＳＩ（ｆ，ｔ）には、学習用スピーカ出力信号を周波数分析（フーリエ変換）して求めた値を代入する。また、Ｈｓ（ｆ，ｔ−１）は、１つ前（時刻ｔ−１）のフレームでエコーの抑圧に用いたスピーカ-マイク間経路の伝達特性Ｈｓにおける、周波数ｆの音のスペクトル振幅値である。ｔ＝０又はｔ−１以前に伝達特性Ｈｒを学習していない場合、Ｈｒ（ｆ，ｔ−１）には、予め定めた初期値を用いる。ｔ−１以前に伝達特性Ｈｒを学習している場合、Ｈｒ（ｆ，ｔ−１）には、直前に学習した値を代入する。さらに、γｃは、更新係数であり、０＜γｃ＜１の任意の値に設定される。
【０１４９】
数式（１６）により算出した各周波数ｆのスペクトル振幅値Ｈｓ（ｆ，ｔ）の集合が時刻ｔにおけるスピーカ-マイク間経路の伝達特性Ｈｓとなる。そして、時刻ｔ−１における伝達特性Ｈｓを時刻ｔにおける伝達特性Ｈｓに置換すると、方法ＣＳ２で伝達特性Ｈｓを学習する処理が終了する。伝達特性Ｈｓは、図１１に示すような伝達特性関数テーブルとして、通信装置１００が備えるバッファ等の記憶部に格納される。
【０１５０】
このように、方法ＣＳ２で伝達特性Ｈｓを学習する際には、学習用スピーカ出力信号と、学習用スピーカ出力音のみを含む第１のマイク入力信号とを用いてスピーカ-マイク間経路の伝達特性を算出する。これにより、スピーカからマスキング音を出力していない場合にも、信頼性の高い伝達特性Ｈｓを算出し学習することができる。
【０１５１】
また、方法ＣＳ２で伝達特性Ｈｓを学習することにより、第１のマイク入力信号に有意な音声が含まれない状況で生じる伝達特性Ｈｓの変化に追従できる。そのため、通話中、伝達特性Ｈｓを信頼性の高い状態に維持できる。
【０１５２】
以上のように、本実施形態のエコーの抑圧方法における伝達特性学習処理では、第１のマイク入力信号の入力内容に応じて伝達特性Ｈｒ，Ｈｓの学習方法を切り替える。そのため、通信装置及びその周囲の状況に応じた適切な伝達特性Ｈｒ，Ｈｓを学習することができる。
【０１５３】
特に、レシーバ出力音を含む伝達経路の異なる複数の音が第１のマイク入力信号に含まれる場合の伝達特性Ｈｒは、第１のマイクの指向性をレシーバ方向に制御した入力信号を用いて算出する。また、スピーカ出力音を含む伝達経路の異なる複数の音が第１のマイク入力信号に含まれる場合の伝達特性Ｈｓは、第１のマイクの指向性をスピーカ方向に制御した入力信号を用いて算出する。そのため、伝達経路の異なる複数の音が第１のマイク入力信号に含まれる場合でも、適切な伝達特性Ｈｒ，Ｈｓを算出することができる。
【０１５４】
したがって、上記のエコーの抑圧方法を適用した通信装置は、マイクで収音した音声信号に伝達経路の異なる複数音が含まれる場合にも伝達特性Ｈｒ，Ｈｓを学習しエコーを適切に抑圧することができる。
【０１５５】
さらに、第１のマイク入力信号に学習対象の伝達経路とは異なる経路の音が含まれる場合にのみ、第１のマイクの指向性を制御して伝達特性を学習する。そのため、指向性を制御する処理による処理負荷の増大を抑えつつ、信頼性の高い伝達特性を算出できる。
【０１５６】
加えて、本実施形態のエコーの抑圧方法における伝達特性学習処理では、第１のマイク入力信号からレシーバ出力音及びスピーカ出力音が検出されなかった場合に、学習用レシーバ出力音及び学習用スピーカ音を用いて伝達特性Ｈｒ，Ｈｓを学習する。そのため、第１のマイク入力信号に有意な音声が含まれない状況で生じる伝達特性Ｈｒ，Ｈｓの変化に追従でき、通話中、伝達特性Ｈｒ，Ｈｓを信頼性の高い状態に維持できる。
【０１５７】
＜通信装置の機能構成＞
図１８は、第１の実施形態に係る通信装置の主要な機能構成を示すブロック図である。図１９は、図１８の送話信号処理部の機能構成を示すブロック図である。
【０１５８】
本実施形態に係る通信装置１００は、図１に示したように、第１のマイク１０、第２のマイク１１、レシーバ１２、及びスピーカ１３を備える。また、通信装置１００は、図１８に示すように、音声処理部２０、記憶部３０、アンテナ４０、ＲＦ送受信部４１、ベースバンド部４２、Ｄ／Ａコンバータ４３，４５，４８、Ａ／Ｄコンバータ４４，４６，４７、及び増幅器４９，５０，５１，５２を備える。
【０１５９】
音声処理部２０は、通話中の音声信号の処理を行う。音声処理部２０は、受話信号処理部２１、送話信号処理部２２、及びスピーカ出力信号処理部２３や、バッファ（図１９参照）を備える。本実施形態における音声処理部２０は、Digital Signal Processor（ＤＳＰ）等のプロセッサに所定のプログラムを実行させることで実現される。すなわち、以下に説明する受話信号処理部２１、送話信号処理部２２、及びマスキング音生成部２３は、プロセッサが所定のプログラム処理を行うことで実現される。
【０１６０】
受話信号処理部２１は、通話相手の通信装置から受信した受話信号に対して所定の処理をし、レシーバ出力信号としてレシーバ１２に出力する。受話信号は、アンテナ４０で受信した後、ＲＦ送受信部４１で復調され、Ａ／Ｄコンバータ４４、ベースバンド部４２を介して、受話信号処理部２１に入力される。レシーバ出力信号は、Ｄ／Ａコンバータ４５、増幅器４９を介してレシーバ１２に伝送され、レシーバ出力音として通信装置１００の外部に出力される。また、受話信号処理部２１は、上述の方法ＣＲ２で伝達特性Ｈｒを学習する際には、学習用レシーバ出力信号をレシーバ１２に出力する。
【０１６１】
送話信号処理部２２は、通話中、第１のマイク１０で収音した音声信号（第１のマイク入力信号６１）に対し、エコー抑圧処理を含む所定の処理をし、送話信号としてＲＦ送受信部４１に向けて出力する。第１のマイク入力信号６１は、増幅器５０、Ａ／Ｄコンバータ４６を介して送話音声処理部２２に入力される。送話信号は、ベースバンド部４２、Ｄ／Ａコンバータ４３を介してＲＦ送受信部４１に伝送される。ＲＦ送受信部４１に伝送された送話信号は、変調され、アンテナ４０から通信装置１００の外部に出力される。
【０１６２】
スピーカ出力信号処理部２３は、通話中、マスキング音として用いる音声信号や学習用スピーカ出力信号等のスピーカ出力信号をスピーカ１３に出力する。スピーカ出力信号は、Ｄ／Ａコンバータ４８、増幅器５２を介してスピーカ１３に伝送され、マスキング音又は学習用スピーカ出力音として通信装置１００の外部に出力される。
【０１６３】
記憶部３０は、ＤＲＡＭ等のメモリであり、ゲイン算出テーブル３１、伝達特性関数テーブル３２の初期値等を記憶する。ゲイン算出テーブル３１は、図９に示した抑圧ゲイン関数Ｇｒ，Ｇｓをテーブル化したデータである。伝達特性関数テーブル３２は、レシーバ-マイク間経路の伝達特性Ｈｒ及びスピーカ-マイク間経路の伝達特性Ｈｓの初期値であり、図１１に示したような周波数ｆとスペクトル振幅値との関係をテーブル化したデータである。
【０１６４】
通信装置１００において、上述の伝達特性Ｈｒ，Ｈｓの学習やエコーの抑圧は、送話信号処理部２２で行う。そのため、送話信号処理部２２には、第１のマイク入力信号６１に加え、第２のマイク１１で収音した音声信号（第２のマイク入力信号６２）が入力される。第２のマイク入力信号６２は、増幅器５１、Ａ／Ｄコンバータ４７を介して送話信号処理部２２に入力される。また、送話信号処理部２２には、受話音声処理部２１からレシーバ出力信号６３が入力される。さらに、マスキング音を出力している場合、送話信号処理部２２には、スピーカ出力信号処理部２３からマスキング音として用いるスピーカ出力信号６４が入力される。
【０１６５】
これらの入力信号６１，６２，６３，６４を用いて伝達特性Ｈｒ，Ｈｓの学習やエコーの抑圧を行う送話信号処理部２２は、図１９に示すように、入力内容判定部２２１、伝達特性学習部２２２、指向性制御部２２３、エコー抑圧部２２４、及びバッファ２２５を備える。バッファ２２５は、騒音パワーＮＰ（ｔ）２２５ａ、ゲイン算出テーブル２２５ｂ、伝達特性関数テーブル２２５ｃ等を保持する。
【０１６６】
入力内容判定部２２１は、バッファ２２５の騒音パワーＮＰ（ｔ）２２５ａ等を参照して上述の入力内容判定処理を行い、第１のマイク入力信号６１の入力内容を表す４つのフラグn_flag、m_flag、r_flag、s_flagの値を伝達特性学習部２２２に渡す。
【０１６７】
伝達特性学習部２２２は、第１のマイク入力信号の入力内容に基づいて伝達特性Ｈｒ，Ｈｓの学習方法を選択する学習方法選択部を内包し、学習方法選択部で選択した学習方法に従って伝達特性Ｈｒ，Ｈｓを学習する。学習方法選択部は、４つのフラグn_flag、m_flag、r_flag、s_flagの値を用いて図６Ａ及び図６Ｂに示した判定処理を行い、伝達特性Ｈｒ，Ｈｓを学習するか否か、及び学習する場合の学習方法を決定する。学習方法選択部において伝達特性Ｈｒ，Ｈｓを学習しないと決定した場合、伝達特性学習部２２２は、学習しないことを表すフラグ等の信号をエコー抑圧部２２４に渡す。伝達特性Ｈｒ，Ｈｓを学習する場合、伝達特性学習部２２２は、決定した学習方法（方法ＣＲ０〜ＣＲ２及びＣＳ０〜ＣＳ２）に従って伝達特性を算出する。伝達特性学習部２２２は、伝達特性を算出すると、バッファ２２５の伝達特性関数テーブル２２５ｃを算出した伝達特性に基づくテーブルに置換する。
【０１６８】
なお、方法ＣＲ１又はＣＳ１で伝達特性を学習する場合、伝達特性学習部２２２は、指向性制御部２２３と連携して伝達特性Ｈｒ又はＨｓを算出する。指向性制御部２２３は、第１及び第２のマイク入力信号６１，６２とゲイン算出テーブル２２５ｂとを用いて図７及び図１０に示した処理を行い、第１のマイク入力信号６１のうちのレシーバ方向αｒ又はスピーカ方向αｓからの入力信号を算出する。また、方法ＣＲ２で伝達特性Ｈｒを学習する場合、伝達特性学習部２２２は、学習用レシーバ出力信号を生成し、受話音声処理部２１に渡す。さらに、方法ＣＳ２で伝達特性Ｈｓを学習する場合、伝達特性学習部２２２は、学習用スピーカ出力信号を生成し、スピーカ出力信号処理部２３に渡す。
【０１６９】
エコー抑圧部２２４は、レシーバ出力信号６３、スピーカ出力信号６４、及びバッファ２２５の伝達特性関数テーブル２２５ｃを用いて、第１のマイク入力信号６１に含まれるエコー成分を抑圧する。エコー抑圧部２２４は、まず、第１のマイク入力信号６１にレシーバ出力音やスピーカ出力音が含まれるかを判定する。レシーバ出力音が含まれる場合は、レシーバ出力信号６３及びレシーバ-マイク間経路の伝達特性Ｈｒから第１の擬似エコー信号を算出し、第１のマイク入力信号６１から第１の擬似エコー信号を減算する。また、スピーカ出力音が含まれる場合は、スピーカ出力信号６４及びスピーカ-マイク間経路の伝達特性Ｈｓから第２の擬似エコー信号を算出し、第１のマイク入力信号６１から第２の擬似エコー信号を減算する。なお、レシーバ出力音及びスピーカ出力音が含まれる場合は、第１の擬似エコー信号及び第２の擬似エコー信号を順次減算する。第１の擬似エコー信号及び第２の擬似エコー信号は、周知のエコー抑圧方法における擬似エコー信号の算出方法のいずれかを用いればよい。また、第１のマイク入力信号６１から擬似エコー信号を減算する方法も、周知のエコー抑圧方法における減算方法のいずれかを用いればよい。
【０１７０】
エコー抑圧部２２４でエコー成分を抑圧した第１のマイク入力信号６１は、例えば図示しないノイズ抑制部により周囲騒音等のノイズ成分を抑圧した後、送話信号としてベースバンド部４２に出力される。
【０１７１】
以上説明したように、第１の実施形態に係る通信装置及びエコー抑圧方法によれば、第１のマイク入力信号の入力内容（言い換えると、第１のマイク入力信号に含まれる有意な音声の発生元の組合せ）に応じて伝達特性の学習方法を切り替える。そのため、通信装置１００の状態及び周囲の状況に応じた適切な学習方法で伝達特性を学習できる。
【０１７２】
また、第１のマイク入力信号に伝達経路の異なる複数の音が含まれる場合には、伝達特性を学習する伝達経路の方向にマイクの指向性を制御することで、学習対象の経路とは異なる経路の音を抑圧する。そのため、第１のマイク入力信号に伝達経路の異なる複数の音が含まれる場合でも、信頼度の高い伝達特性を算出して学習できる。したがって、伝達経路の異なる複数の音が入力される状況で通話をしている場合にも、エコー成分を適切に抑圧でき、送話品質の劣化を抑圧できる。さらに、第１のマイク入力信号に学習対象の経路とは異なる経路の音が含まれる場合にのみ、第１のマイクの指向性を制御して伝達特性を学習する。そのため、指向性を制御する処理による処理負荷の増大を抑えつつ、信頼性の高い伝達特性を算出できる。
【０１７３】
加えて、第１のマイク入力信号に有意な音が含まれない状態（すなわち入力内容が無音状態）の場合には、学習用レシーバ出力信号及び学習用スピーカ出力信号を生成して伝達特性Ｈｒ，Ｈｓを学習する。そのため、入力内容が無音状態から他の状態に切り替わった際に、直前に学習した伝達特性Ｈｒ，Ｈｓを用いてエコーを抑圧することができる。したがって、例えば無音状態の間に通信装置の向き等が変化し伝達特性Ｈｒ，Ｈｓが変化した場合でも、伝達特性の変化に追従でき、エコー成分を適切に抑圧できる。
【０１７４】
なお、伝達特性学習処理で伝達特性を学習するか否か、及び学習する場合の学習方法を決定する処理は、図６Ａ及び図６Ｂに示した方法に限らず、他の方法で決定してもよい。例えば、入力内容判定処理の判定結果を表す４つのフラグn_flag、m_flag、r_flag、s_flagの値の組合せをキーとして、図５に示した学習定義テーブルを検索して決定してもよい。
【０１７５】
また、伝達特性Ｈｒ，Ｈｓを学習する条件や、学習方法は、図５の学習定義テーブルに示した組合せに限らず、適宜変更可能である。
【０１７６】
（第２の実施形態）
図２０は、本発明の第２の実施形態に係るエコーの抑圧方法で用いる学習定義テーブルを示す模式図である。
【０１７７】
本実施形態では、伝達特性の学習による通信装置１００の処理負荷や遅延を軽減するエコーの抑圧方法を説明する。本実施形態でも、伝達特性を学習するか否か、及び学習する場合の学習方法は、図２０に示したような学習定義テーブルで与えられる。図２０に示した学習定義テーブルにおいて、伝達特性Ｈｒ，Ｈｓを学習する第１のマイク入力信号の入力内容の組合せや学習方法は、図５に示した学習定義テーブルと同じである。しかしながら、図２０に示した学習定義テーブルでは、入力内容の組合せに応じて、常に伝達特性を学習する場合と、経路変化が有った場合にのみ伝達特性を学習する場合とに分けられている。具体的には、図２０の定義番号１３及び１６のように伝達特性Ｈｒ，Ｈｓの両方を学習する場合は、経路変化が有る場合にのみ学習する。経路変化の有り無しは、加速度センサ等の動き検出センサの値の変化量に基づいて判断し、通信装置の向きが大きく変動した場合に経路変化有りと判断する。
【０１７８】
＜エコーの抑圧方法の概要＞
図２１は、第２の実施形態に係るエコーの抑圧方法を示すフローチャートである。
【０１７９】
本実施形態に係るエコーの抑圧方法では、図２１に示すように、まず、現フレーム（時刻ｔ）のマイクからの入力信号、レシーバ出力信号、スピーカ出力信号、及び加速度センサの出力信号を取得する（ステップＳ１’）。
【０１８０】
次に、第１のマイク１０からの入力信号（第１のマイク入力信号）に対する入力内容判定処理を行う（ステップＳ２）。ステップＳ２では、第１の実施形態で説明した手順により、第１のマイク入力信号の入力内容として周囲騒音の有無、利用者の声の有無、レシーバ出力音の有無、及びスピーカ出力音の有無を判定し、その組合せをフラグで表す。
【０１８１】
次に、加速度センサの出力信号を用いて、伝達経路の変化の有無を判定する経路変化判定処理を行う（ステップＳ６）。
【０１８２】
図２２は、図２１の経路変化判定処理の処理手順を示すフローチャートである。図２３は、傾斜角度θｘの算出方法を説明する模式図である。
【０１８３】
ステップＳ６の経路変化判定処理では、図２２に示すように、まず、加速度センサの出力信号（ｘ、ｙ、ｚ軸の加速度）を入力する（ステップＳ６０１）
次に、加速度センサの出力信号を用いて、時刻ｔにおけるｘ軸の傾斜角度θ（ｔ）を算出する（ステップＳ６０３）とともに、時刻ｔにおけるｙ軸の傾斜角度θ（ｔ）を算出する。
【０１８４】
ｘ軸の傾斜角度θｘ（ｔ）は、例えば、図２３に示すように、加速度センサの出力信号のうちのｘ軸及びｚ軸の加速度を用いて算出する。また、図示は省略するが、ｙ軸の傾斜角度θｙ（ｔ）は、加速度センサの出力信号のうちのｙ軸及びｚ軸の加速度を用いて算出する。なお、傾斜角度θｘ（ｔ）及びθｙ（ｔ）は、図２３に示したような算出方法に限らず、使用する加速度センサの出力信号の出力形式に応じて適宜変更する。
【０１８５】
傾斜角度θｘ（ｔ）及びθｙ（ｔ）を算出したら、次に、時刻ｔ−１から時刻ｔまでの期間におけるｘ軸の傾斜角度θｘの変化量Δθｘ、及び時刻ｔ−１から時刻ｔまでの期間におけるｙ軸の傾斜角度θｙの変化量Δθｙを算出する（ステップＳ６０４）。時刻ｔ−１における傾斜角度θｘ（ｔ−１）及びθｙ（ｔ−１）は、１つ前（時刻ｔ−１）のフレームにおいて加速度センサの出力信号に基づく経路変化判定処理をした際に、ステップＳ６０２及びＳ６０３で算出した傾斜角度である。なお、通話を開始した直後等、１つ前（時刻ｔ−１）の傾斜角度θｘ（ｔ−１）及びθｙ（ｔ−１）を算出していないときには、予め定めておいた傾斜角度θｘ及びθｙの初期値（例えば０度）を用いる。
【０１８６】
次に、ｘ軸の傾斜角度の変化量｜Δθｘ｜が閾値ＴＨ２より大きいか判断する（ステップＳ６０５）。変化量｜Δθｘ｜が閾値ＴＨ２より大きい場合（ステップＳ６０５；Ｙｅｓ）、伝達経路に変化有りと判断し、伝達経路の変化の有無を表すフラグa_flagを１にする（ステップＳ６０６）。
【０１８７】
変化量｜Δθｘ｜が閾値ＴＨ２以下の場合（ステップＳ６０５；Ｎｏ）、次に、ｙ軸の傾斜角度の変化量｜Δθｙ｜が閾値ＴＨ２より大きいか判断する（ステップＳ６０７）。変化量｜Δθｙ｜が閾値ＴＨ２より大きい場合（ステップＳ６０７；Ｙｅｓ）、伝達経路に変化が有ったと判断し、伝達経路の変化の有無を表すフラグa_flagを１にする（ステップＳ６０６）。閾値ＴＨ２には、傾斜角度（伝達経路）の変化に伴い伝達特性に変化が生じる値（例えば１０度程度）を用いる。なお、閾値ＴＨ２は、適用する通信装置の構成に応じて適宜変更可能である。
【０１８８】
一方、変化量｜Δθｙ｜も閾値ＴＨ２以下の場合（ステップＳ６０７；Ｎｏ）、伝達経路に変化が無いと判断し、伝達経路の変化の有無を表すフラグa_flagを０にする（ステップＳ６０８）。
【０１８９】
ステップＳ６０６又はＳ６０８によりフラグa_flagの値を決定したら、時刻ｔにおけるｘ軸の傾斜角度θｘ（ｔ）及びｙ軸の傾斜角度θｙ（ｔ）を通信装置が備えるバッファ等の記憶部に格納し、経路変化判定処理を終了する。
【０１９０】
経路変化判定処理が終了したら、次に、伝達特性学習処理を行う（ステップＳ３’）。
本実施形態の伝達特性学習処理では、入力内容判定処理の判定結果及び経路変化判定処理の判定結果に基づいて、伝達特性を学習するか否かと、学習する場合の学習方法（伝達特性の算出方法）とを決定する。そして、学習する場合は、決定した学習方法に従って伝達特性を算出し、学習する。本実施形態では、上記のように図２０に示した学習定義テーブルに従って伝達特性を学習するか否か及び学習する場合の学習方法を決定する。学習する場合の各学習方法（方法ＣＲ０〜ＣＲ２及びＣＳ０〜ＣＳ２）は、第１の実施形態で説明したとおりである。
【０１９１】
上記の伝達特性学習処理を終えると、次に、エコー抑圧処理を行う（ステップＳ４）。エコー抑圧処理では、第１の実施形態で説明したとおりの処理を行う。
【０１９２】
エコー抑圧処理が終了すると、通話が終了したか判定する（ステップＳ５）。通話が終了していない場合（ステップＳ５；Ｎｏ）、ステップＳ１に戻り、ステップＳ１〜Ｓ４の処理を繰り返す。通話が終了した場合（ステップＳ５；Ｙｅｓ）、エコーを抑圧する処理を終了する。
【０１９３】
なお、図２１には示していないが、エコー抑圧処理（ステップＳ５）によりエコーを抑圧した第１のマイク入力信号は、ノイズリダクション又はノイズキャンセル等のノイズ抑圧処理を行った後、送話信号として通話相手の通信装置に向けて送信する。
【０１９４】
＜伝達特性学習処理の処理手順＞
図２４Ａは、図２１の伝達特性学習処理の処理手順を示すフローチャート（その１）である。
【０１９５】
図２４Ｂは、図２１の伝達特性学習処理の処理手順を示すフローチャート（その２）である。
【０１９６】
本実施形態の伝達特性学習処理では、図２４Ａに示すように、まず、入力内容判定処理の結果である４つのフラグn_flag、m_flag、r_flag、s_flagの値、及び経路変化判定処理の結果であるフラグa_flagの値を取得する（ステップＳ３０１’）。
【０１９７】
次に、取得した５つのフラグのうちの周囲騒音の有無を表すフラグn_flagの値が１であるかを判定する（ステップＳ３０２）。フラグn_flagの値が１である場合（ステップＳ３０２；Ｙｅｓ）、図２４Ａ及び図２４Ｂに示したように、伝達特性を学習することなく伝達特性学習処理を終了する。
【０１９８】
フラグn_flagが１ではない場合（ステップＳ３０２；Ｎｏ）、次に、入力内容を表す他の３つのフラグm_flag、r_flag、及びs_flagの値について、m_flag＝１∧r_flag＝１∧s_flag＝１であるか判定する（ステップＳ３０３）。m_flag＝１∧r_flag＝１∧s_flag＝１である場合（ステップＳ３０３；Ｙｅｓ）、伝達特性を学習することなく伝達特性学習処理を終了する。
【０１９９】
m_flag＝１∧r_flag＝１∧s_flag＝１ではない場合（ステップＳ３０３；Ｎｏ）、次に、フラグm_flag及びr_flagの値について、m_flag＝１∧r_flag＝１であるか判定する（ステップＳ３０４）。m_flag＝１∧r_flag＝１である場合（ステップＳ３０４；Ｙｅｓ）、図２４Ａに示したように、方法ＣＲ１で伝達特性Ｈｒを学習する（ステップＳ３０５）。ステップＳ３０５で行う処理は、第１の実施形態で説明したとおりである。ステップＳ３０５で伝達特性Ｈｒを学習したら、伝達特性学習処理を終了する。
【０２００】
m_flag＝１∧r_flag＝１ではない場合（ステップＳ３０４；Ｎｏ）、次に、フラグm_flag及びs_flagの値について、m_flag＝１∧s_flag＝１であるか判定する（ステップＳ３０６）。m_flag＝１∧s_flag＝１である場合（ステップＳ３０６；Ｙｅｓ）、図２４Ａに示したように、方法ＣＳ１で伝達特性Ｈｓを学習する（ステップＳ３０７）。ステップＳ３０７で行う処理は、第１の実施形態で説明したとおりである。ステップＳ３０７で伝達特性Ｈｓを学習したら、伝達特性学習処理を終了する。
【０２０１】
m_flag＝１∧s_flag＝１ではない場合（ステップＳ３０６；Ｎｏ）、次に、フラグr_flag及びs_flagの値について、r_flag＝１∧s_flag＝１であるか判定する（ステップＳ３０８）。r_flag＝１∧s_flag＝１である場合（ステップＳ３０８；Ｙｅｓ）、続けて経路変化の有無を表すフラグa_flagの値が１であるか判定する（ステップＳ３２０）。そして、フラグa_flagの値が１ではない場合（ステップＳ３２０；Ｎｏ）、伝達特性を学習することなく伝達特性学習処理を終了する。一方、フラグa_flagの値が１である場合（ステップＳ３２０；Ｙｅｓ）、方法ＣＲ１で伝達特性Ｈｒを学習し、方法ＣＳ１で伝達特性Ｈｓを学習する（ステップＳ３０９）。ステップＳ３０９で行う処理は、第１の実施形態で説明したとおりである。ステップＳ３０９で伝達特性Ｈｒ，Ｈｓを学習したら、伝達特性学習処理を終了する。
【０２０２】
r_flag＝１∧s_flag＝１ではない場合（ステップＳ３０８；Ｎｏ）、次に、図２４Ｂに示すように、フラグm_flagの値が１であるか判定する（ステップＳ３１０）。フラグm_flagの値が１である場合（ステップＳ３１０；Ｙｅｓ）、図２４Ｂに示したように、伝達特性を学習することなく伝達特性学習処理を終了する。
【０２０３】
フラグm_flagの値が１ではない場合（ステップＳ３１０；Ｎｏ）、次に、フラグr_flagの値が１であるか判定する（ステップＳ３１１）。フラグr_flagの値が１である場合（ステップＳ３１１；Ｙｅｓ）、図２４Ｂに示したように、方法ＣＲ０で伝達特性Ｈｒを学習する（ステップＳ３１２）。ステップＳ３１２で行う処理は、第１の実施形態で説明したとおりである。ステップＳ３１２で伝達特性Ｈｒを学習したら、伝達特性学習処理を終了する。
【０２０４】
フラグr_flagの値が１ではない場合（ステップＳ３１１；Ｎｏ）、次に、フラグs_flagの値が１であるか判定する（ステップＳ３１３）。フラグs_flagの値が１である場合（ステップＳ３１３；Ｙｅｓ）、図２４Ｂに示したように、方法ＣＳ０で伝達特性Ｈｓを学習する（ステップＳ３１４）。ステップＳ３１４で行う処理は、第１の実施形態で説明したとおりである。ステップＳ３１４で伝達特性Ｈｓを学習したら、伝達特性学習処理を終了する。
【０２０５】
フラグs_flagの値が１ではない場合（ステップＳ３１３；Ｎｏ）、図２４Ｂに示したように、続けて経路変化の有無を表すフラグa_flagの値が１であるか判定する（ステップＳ３２１）。そして、フラグa_flagの値が１ではない場合（ステップＳ３２１；Ｎｏ）、伝達特性を学習することなく伝達特性学習処理を終了する。一方、フラグa_flagの値が１である場合（ステップＳ３２０；Ｙｅｓ）、方法ＣＲ２で伝達特性Ｈｒを学習し（ステップＳ３１５）、方法ＣＳ２で伝達特性Ｈｓを学習する（ステップＳ３１６）。ステップＳ３１５及びＳ３１６で行う処理は、第１の実施形態で説明したとおりである。ステップＳ３１５及びステップＳ３１６で伝達特性Ｈｒ及びＨｓを学習したら、伝達特性学習処理を終了する。
【０２０６】
以上のように、本実施形態のエコーの抑圧方法における伝達特性学習処理では、第１のマイク入力信号の入力内容に応じて伝達特性Ｈｒ，Ｈｓの学習方法を切り替える。そのため、通信装置及びその周囲の状況に応じた適切な伝達特性Ｈｒ，Ｈｓを学習することができる。
【０２０７】
特に、レシーバ出力音を含む伝達経路の異なる複数の音が第１のマイク入力信号に含まれる場合の伝達特性Ｈｒは、第１のマイクの指向性をレシーバ方向に制御した入力信号を用いて算出する。また、スピーカ出力音を含む伝達経路の異なる複数の音が第１のマイク入力信号に含まれる場合の伝達特性Ｈｓは、第１のマイクの指向性をスピーカ方向に制御した入力信号を用いて算出する。そのため、伝達経路の異なる複数の音が第１のマイク入力信号に含まれる場合でも、適切な伝達特性Ｈｒ，Ｈｓを算出することができる。
【０２０８】
したがって、上記のエコーの抑圧方法を適用した通信装置は、マイクで収音した音声信号に伝達経路の異なる複数音が含まれる場合にも伝達特性Ｈｒ，Ｈｓを学習しエコーを適切に抑圧することができる。
【０２０９】
さらに、第１のマイク入力信号に学習対象の伝達経路とは異なる経路の音が含まれる場合にのみ、第１のマイクの指向性を制御して伝達特性を学習する。そのため、指向性を制御する処理による処理負荷の増大を抑えつつ、信頼性の高い伝達特性を算出できる。
【０２１０】
しかも、本実施形態のエコーの抑圧方法における伝達特性学習処理では、伝達経路の変化が伝達特性の変化を伴うような大きな変化である場合にのみ伝達特性Ｈｒ及びＨｓを学習する。すなわち、伝達特性Ｈｒ，Ｈｓが実質的に変化しないときには学習しない。そのため、伝達特性の学習による通信装置１００の処理負荷や遅延を軽減することができる。
【０２１１】
加えて、本実施形態のエコーの抑圧方法における伝達特性学習処理では、第１のマイク入力信号からレシーバ出力音及びスピーカ出力音が検出されなかった場合に、学習用レシーバ出力音及び学習用スピーカ音を用いて伝達特性Ｈｒ，Ｈｓを学習する。そのため、第１のマイク入力信号に有意な音声が含まれない状況で生じる伝達特性Ｈｒ，Ｈｓの変化に追従でき、通話中、伝達特性Ｈｒ，Ｈｓを信頼性の高い状態に維持できる。
【０２１２】
＜通信装置の機能構成＞
図２５は、第２の実施形態に係る通信装置の主要な機能構成を示すブロック図である。図２６は、図２５の送話信号処理部の機能構成を示すブロック図である。
【０２１３】
本実施形態に係る通信装置１００は、図２５に示すように、第１のマイク１０、第２のマイク１１、レシーバ１２、及びスピーカ１３を備える。また、通信装置１００は、音声処理部２０、記憶部３０、アンテナ４０、ＲＦ送受信部４１、ベースバンド部４２、Ｄ／Ａコンバータ４３，４５，４８、Ａ／Ｄコンバータ４４，４６，４７、及び増幅器４９，５０，５１，５２、並びに動き検出部７０を備える。
【０２１４】
音声処理部２０は、通話中の音声信号の処理を行う。音声処理部２０は、受話信号処理部２１、送話信号処理部２２、及びスピーカ出力信号処理部２３や、バッファ（図１９参照）を備える。本実施形態における音声処理部２０は、Digital Signal Processor（ＤＳＰ）等のプロセッサに所定のプログラムを実行させることで実現される。すなわち、以下に説明する受話信号処理部２１、送話信号処理部２２、及びマスキング音生成部２３は、プロセッサが所定のプログラム処理を行うことで実現される。
【０２１５】
受話信号処理部２１は、通話相手の通信装置から受信した受話信号に対して所定の処理をし、レシーバ出力信号としてレシーバ１２に出力する。受話信号は、アンテナ４０で受信した後、ＲＦ送受信部４１で復調され、Ａ／Ｄコンバータ４４、ベースバンド部４２を介して、受話信号処理部２１に入力される。レシーバ出力信号は、Ｄ／Ａコンバータ４５、増幅器４９を介してレシーバ１２に伝送され、レシーバ出力音として通信装置１００の外部に出力される。また、受話信号処理部２１は、上述の方法ＣＲ２で伝達特性Ｈｒを学習する際には、学習用レシーバ出力信号をレシーバ１２に出力する。
【０２１６】
送話信号処理部２２は、通話中、第１のマイク１０で収音した音声信号（第１のマイク入力信号６１）に対し、エコー抑圧処理を含む所定の処理をし、送話信号としてＲＦ送受信部４１に向けて出力する。第１のマイク入力信号６１は、増幅器５０、Ａ／Ｄコンバータ４６を介して送話音声処理部２２に入力される。送話信号は、ベースバンド部４２、Ｄ／Ａコンバータ４３を介してＲＦ送受信部４１に伝送される。ＲＦ送受信部４１に伝送された送話信号は、変調され、アンテナ４０から通信装置１００の外部に出力される。
【０２１７】
スピーカ出力信号処理部２３は、通話中、マスキング音として用いる音声信号や学習用スピーカ出力信号等のスピーカ出力信号をスピーカ１３に出力する。スピーカ出力信号は、Ｄ／Ａコンバータ４８、増幅器５２を介してスピーカ１３に伝送され、マスキング音又は学習用スピーカ出力音として通信装置１００の外部に出力される。
【０２１８】
記憶部３０は、ＤＲＡＭ等のメモリであり、ゲイン算出テーブル３１、伝達特性関数テーブル３２の初期値等を記憶する。ゲイン算出テーブル３１は、図９に示した抑圧ゲイン関数Ｇｒ，Ｇｓをテーブル化したデータである。伝達特性関数テーブル３２は、レシーバ-マイク間経路の伝達特性Ｈｒ及びスピーカ-マイク間経路の伝達特性Ｈｓの初期値であり、図１１に示したような周波数ｆとスペクトル振幅値との関係をテーブル化したデータである。また、図示は省略しているが、記憶部３０は、そのほかに、傾斜角度θｘ及びθｙの算出に用いる算出テーブル等を記憶する。
【０２１９】
動き検出部７０は、通信装置１００の動き（向きの変化）の検出に用いる加速度センサ等の動き検出センサである。
【０２２０】
通信装置１００において、上述の伝達特性Ｈｒ，Ｈｓの学習やエコーの抑圧は、送話信号処理部２２で行う。そのため、送話信号処理部２２には、第１のマイク入力信号６１に加え、第２のマイク入力信号６２が入力される。第２のマイク入力信号６２は、増幅器５１、Ａ／Ｄコンバータ４７を介して送話信号処理部２２に入力される。また、送話信号処理部２２には、受話音声処理部２１からレシーバ出力信号６３が入力される。さらに、マスキング音を出力している場合、送話信号処理部２２には、スピーカ出力信号処理部２３からマスキング音として用いるスピーカ出力信号６４が入力される。加えて、送話信号処理部２２には、動き検出部７０から検出結果（例えば加速度センサで検出したｘ、ｙ、ｚ軸の加速度）が入力される。
【０２２１】
これらの入力信号６１，６２，６３，６４及び検出結果を用いて伝達特性Ｈｒ，Ｈｓの学習やエコーの抑圧を行う送話信号処理部２２は、図２６に示すように、入力内容判定部２２１、伝達特性学習部２２２、指向性制御部２２３、エコー抑圧部２２４、及びバッファ２２５を備える。バッファ２２５は、騒音パワーＮＰ（ｔ）２２５ａ、ゲイン算出テーブル２２５ｂ、伝達特性関数テーブル２２５ｃのほか、図示しない傾斜角度θｘ（ｔ）及びθｙ（ｔ）等を保持する。
【０２２２】
入力内容判定部２２１は、バッファ２２５の騒音パワーＮＰ（ｔ）２２５ａ等を参照して上述の入力内容判定処理を行い、第１のマイク入力信号６１の入力内容を表す４つのフラグn_flag、m_flag、r_flag、s_flagの値を伝達特性学習部２２２に渡す。
【０２２３】
伝達特性学習部２２２は、第１のマイク入力信号の入力内容に基づいて伝達特性Ｈｒ，Ｈｓの学習方法を選択する学習方法選択部を内包し、学習方法選択部で選択した学習方法に従って伝達特性Ｈｒ，Ｈｓを学習する。学習方法選択部は、４つのフラグn_flag、m_flag、r_flag、s_flagの値を用いて図６Ａ及び図６Ｂに示した判定処理を行い、伝達特性Ｈｒ，Ｈｓを学習するか否か、及び学習する場合の学習方法を決定する。学習方法選択部において伝達特性Ｈｒ，Ｈｓを学習しないと決定した場合、伝達特性学習部２２２は、学習しないことを表すフラグ等の信号をエコー抑圧部２２４に渡す。伝達特性Ｈｒ，Ｈｓを学習する場合、伝達特性学習部２２２は、決定した学習方法（方法ＣＲ０〜ＣＲ２及びＣＳ０〜ＣＳ２）に従って伝達特性を算出する。伝達特性学習部２２２は、伝達特性を算出すると、バッファ２２５の伝達特性関数テーブル２２５ｃを算出した伝達特性に基づくテーブルに置換する。
【０２２４】
なお、方法ＣＲ１又はＣＳ１で伝達特性を学習する場合、伝達特性学習部２２２は、指向性制御部２２３と連携して伝達特性Ｈｒ又はＨｓを算出する。指向性制御部２２３は、第１及び第２のマイク入力信号６１，６２とゲイン算出テーブル２２５ｂとを用いて図７及び図１０に示した処理を行い、第１のマイク入力信号６１のうちのレシーバ方向αｒ又はスピーカ方向αｓからの入力信号を算出する。また、方法ＣＲ２で伝達特性Ｈｒを学習する場合、伝達特性学習部２２２は、学習用レシーバ出力信号を生成し、受話音声処理部２１に渡す。さらに、方法ＣＳ２で伝達特性Ｈｓを学習する場合、伝達特性学習部２２２は、学習用スピーカ出力信号を生成し、スピーカ出力信号処理部２３に渡す。
【０２２５】
エコー抑圧部２２４は、レシーバ出力信号６３、スピーカ出力信号６４、及びバッファ２２５の伝達特性関数テーブル２２５ｃを用いて、第１のマイク入力信号６１に含まれるエコー成分を抑圧する。エコー抑圧部２２４は、まず、第１のマイク入力信号６１にレシーバ出力音やスピーカ出力音が含まれるかを判定する。レシーバ出力音が含まれる場合は、レシーバ出力信号６３及びレシーバ-マイク間経路の伝達特性Ｈｒから第１の擬似エコー信号を算出し、第１のマイク入力信号６１から第１の擬似エコー信号を減算する。また、スピーカ出力音が含まれる場合は、スピーカ出力信号６４及びスピーカ-マイク間経路の伝達特性Ｈｓから第２の擬似エコー信号を算出し、第１のマイク入力信号６１から第２の擬似エコー信号を減算する。なお、レシーバ出力音及びスピーカ出力音が含まれる場合は、第１の擬似エコー信号及び第２の擬似エコー信号を順次減算する。第１の擬似エコー信号及び第２の擬似エコー信号は、周知のエコー抑圧方法における擬似エコー信号の算出方法のいずれかを用いればよい。また、第１のマイク入力信号６１から擬似エコー信号を減算する方法も、周知のエコー抑圧方法における減算方法のいずれかを用いればよい。
【０２２６】
エコー抑圧部２２４でエコー成分を抑圧した第１のマイク入力信号６１は、例えば図示しないノイズ抑制部により周囲騒音等のノイズ成分を抑圧した後、送話信号としてベースバンド部４２に出力される。
【０２２７】
以上説明したように、第２の実施形態に係る通信装置及びエコー抑圧方法によれば、第１のマイク入力信号の入力内容（言い換えると、第１のマイク入力信号に含まれる有意な音声の発生元の組合せ）に応じて伝達特性の学習方法を切り替える。そのため、通信装置１００の状態及び周囲の状況に応じた適切な学習方法で伝達特性を学習できる。
【０２２８】
また、第１のマイク入力信号に伝達経路の異なる複数の音が含まれる場合には、伝達特性を学習する伝達経路の方向にマイクの指向性を制御することで、学習対象の経路とは異なる経路の音を抑圧する。そのため、第１のマイク入力信号に伝達経路の異なる複数の音が含まれる場合でも、信頼度の高い伝達特性を算出して学習できる。したがって、伝達経路の異なる複数の音が入力される状況で通話をしている場合にも、エコー成分を適切に抑圧でき、送話品質の劣化を抑圧できる。さらに、第１のマイク入力信号に学習対象の経路とは異なる経路の音が含まれる場合にのみ、第１のマイクの指向性を制御して伝達特性を学習する。そのため、指向性を制御する処理による処理負荷の増大を抑えつつ、信頼性の高い伝達特性を算出できる。
【０２２９】
しかも、本実施形態のエコーの抑圧方法における伝達特性学習処理では、伝達経路の変化が伝達特性の変化を伴うような大きな変化である場合にのみ伝達特性Ｈｒ及びＨｓを学習する。すなわち、伝達特性Ｈｒ，Ｈｓが実質的に変化しないときには学習しない。そのため、伝達特性の学習による通信装置１００の処理負荷や遅延を軽減することができる。
【０２３０】
加えて、第１のマイク入力信号に有意な音が含まれない状態（すなわち入力内容が無音状態）の場合には、学習用レシーバ出力信号及び学習用スピーカ出力信号を生成して伝達特性Ｈｒ，Ｈｓを学習する。そのため、入力内容が無音状態から他の状態に切り替わった際に、直前に学習した伝達特性Ｈｒ，Ｈｓを用いてエコーを抑圧することができる。したがって、例えば無音状態の間に通信装置の向き等が変化し伝達特性Ｈｒ，Ｈｓが変化した場合でも、伝達特性の変化に追従でき、エコー成分を適切に抑圧できる。
【０２３１】
なお、伝達特性学習処理で伝達特性を学習するか否か、及び学習する場合の学習方法を決定する処理は、図２４Ａ及び図２４Ｂに示した方法に限らず、他の方法で決定してもよい。例えば、入力内容判定処理の判定結果を表す４つのフラグn_flag、m_flag、r_flag、s_flagの値の組合せをキーとして、図２０に示した学習定義テーブルを検索して決定してもよい。
【０２３２】
また、伝達特性Ｈｒ，Ｈｓを学習する条件や、学習方法は、図２０の学習定義テーブルに示した組合せに限らず、適宜変更可能である。
【０２３３】
また、本実施形態では、上述のように、図２６に示した伝達特性学習部２２２において、経路変化判定処理を行っている。しかしながら、経路変化判定処理は、これに限らず、入力内容判定部２２１で行ってもよいし、入力内容判定部２２１及び伝達特性学習部２２２とは独立した経路変化判定部で行ってもよい。
【０２３４】
以上記載した各実施例を含む実施形態に関し、さらに以下の付記を開示する。
（付記１）
第１のマイク及び第２のマイクと、
受話音声を出力するレシーバと、
前記レシーバとは独立して所望の音声を出力するスピーカと、
前記第１のマイクからの入力信号に基づいて、前記レシーバから出力される受話音又は前記スピーカから出力されるスピーカ出力音の伝達特性の学習方法を選択する学習方法選択部と、
前記第１及び第２のマイクから入力された入力信号に基づいて前記第１のマイクの指向性を制御し、前記第１のマイクから入力された入力信号における前記受話音の到来方向又は前記スピーカ出力音の到来方向からの入力信号を算出する指向性制御部と、
前記学習方法選択部で選択した学習方法に従い、前記第１のマイクから入力された入力信号、もしくは前記指向性制御部で算出した前記受話音の到来方向又は前記スピーカ出力音の到来方向からの入力信号を用いて、伝達特性を算出して学習する伝達特性学習部と、
学習した前記伝達特性を用いて、前記第１のマイクから入力された入力信号に含まれるエコー成分を抑圧するエコー抑圧部と、
を備えることを特徴とする通信装置。
（付記２）
前記学習方法選択部は、
前記第１のマイクから入力された入力信号に含まれる音声の発生元の組合せに応じて、前記伝達特性を学習するか否か、及び学習する場合の学習方法を選択し決定する
ことを特徴とする付記１に記載の通信装置。
（付記３）
前記学習方法選択部は、前記入力信号に含まれる音声の発生元の組合せとして、利用者の声の有無、前記受話音の有無、及び前記スピーカ出力音の有無の組合せを用い、
前記入力信号に前記受話音と、前記利用者の声又は前記スピーカ出力音とが含まれる場合には、前記受話音の到来方向からの入力信号を用いた伝達特性の学習方法を選択し、
前記入力信号に前記レシーバ音と、前記利用者の声又は前記受話音とが含まれる場合には、前記受話音の到来方向からの入力信号を用いた伝達特性の学習方法を選択する、
ことを特徴とする付記２に記載の通信装置。
（付記４）
前記レシーバ、前記スピーカ、前記第１及び第２のマイクを配設した筐体と、
前記筐体の向きを検出する検出部と、を更に備え、
前記学習方法選択部は、
前記第１のマイクから入力された入力信号に含まれる音声の発生元の組合せと、前記検出部の検出結果から算出した前記筐体の向きの変化量とに応じて、前記伝達特性を学習するか否か、及び学習する場合の学習方法を選択し決定する
ことを特徴とする付記１に記載の通信装置。
（付記５）
前記レシーバから出力させる学習用レシーバ出力信号及び前記スピーカから出力させる学習用スピーカ出力信号を生成する学習用出力信号生成部を更に備え、
前記学習方法選択部は、前記伝達特性の学習方法として、前記学習用レシーバ出力信号を前記レシーバから出力して伝達特性を学習する学習方法、及び前記学習用スピーカ出力信号を前記スピーカから出力して伝達特性を学習する学習方法を選択可能である、
ことを特徴とする付記１に記載の通信装置。
（付記６）
前記学習方法選択部は、前記第１のマイクから入力された入力信号に前記受話音及び前記スピーカ出力音、並びに利用者の声が含まれない場合に、前記学習用レシーバ出力信号又は前記学習用スピーカ出力信号を用いて伝達特性を学習する学習方法を選択し、
前記学習用出力信号生成部は、前記第１のマイクから入力された入力信号の音量を調節して前記学習用レシーバ出力信号又は前記学習用スピーカ出力信号する、
ことを特徴とする付記５に記載の通信装置。
（付記７）
前記指向性制御部は、前記第１及び第２のマイクから入力された入力信号を周波数毎の信号に分離し、各周波数の信号の到来方向を両信号の位相差から算出した後、前記信号の到来方向と、前記受話音の到来方向又は前記スピーカ出力音の到来方向との差に応じた抑圧ゲインを適用し、前記受話音の到来方向からの入力信号又は前記スピーカ出力音の到来方向からの入力信号を算出する、
ことを特徴とする付記１に記載の通信装置。
（付記８）
前記学習方法選択部は、前記入力信号に周囲騒音が含まれる場合には伝達特性を学習しないと決定し、
前記エコー抑圧部は、前記伝達特性を学習しないときには、予め用意された伝達特性又は以前に学習した伝達特性を用いて前記エコー成分を抑圧する
ことを特徴とする付記１に記載の通信装置。
【符号の説明】
【０２３５】
１００  通信装置
２００  電話回線網
３００  通話相手の通信装置
４００  利用者
５０１  利用者の音声
５０２  受話音
５０３  マスキング音
６００  第三者
１０  第１のマイク
１１  第２のマイク
１２  レシーバ
１３  スピーカ
１４  筐体
１５  プリント回路板
２０  音声処理部
２１  受話信号処理部
２２  送話信号処理部
２２１  入力内容判定部
２２２  伝達特性学習部
２２３  指向性制御部
２２４  エコー抑圧部
２２５  バッファ
２３  スピーカ出力信号処理部
３０  記憶部
３１  ゲイン算出テーブル
３２  伝達特性関数テーブルの初期値
４０  アンテナ
４１  ＲＦ送受信部
４２  ベースバンド部
４３，４５，４８  Ｄ／Ａコンバータ
４４，４６，４７  Ａ／Ｄコンバータ
４９，５０，５１，５２  増幅器
６１  第１のマイク入力信号
６２  第２のマイク入力信号
６３  レシーバ出力信号
６４  スピーカ出力信号
７０  動き検出部
【図１Ａ】
0006357987.tif 000002
【図１Ｂ】
0006357987.tif 000003
【図２】
0006357987.tif 000004
【図３】
0006357987.tif 000005
【図４】
0006357987.tif 000006
【図５】
0006357987.tif 000007
【図６Ａ】
0006357987.tif 000008
【図６Ｂ】
0006357987.tif 000009
【図７】
0006357987.tif 000010
【図８】
0006357987.tif 000011
【図９】
0006357987.tif 000012
【図１０】
0006357987.tif 000013
【図１１】
0006357987.tif 000014
【図１２】
0006357987.tif 000015
【図１３】
0006357987.tif 000016
【図１４】
0006357987.tif 000017
【図１５】
0006357987.tif 000018
【図１６】
0006357987.tif 000019
【図１７】
0006357987.tif 000020
【図１８】
0006357987.tif 000021
【図１９】
0006357987.tif 000022
【図２０】
0006357987.tif 000023
【図２１】
0006357987.tif 000024
【図２２】
0006357987.tif 000025
【図２３】
0006357987.tif 000026
【図２４Ａ】
0006357987.tif 000027
【図２４Ｂ】
0006357987.tif 000028
【図２５】
0006357987.tif 000029
【図２６】
0006357987.tif 000030