(57)【要約】【課題】エコー抑圧のための処理量を削減する。【解決手段】  エコー抑圧処理を行う処理部（エコー抑圧処理部８）が提供される。この処理部では、第１および第２のチャンネル（４−1、４−２）毎に推定される伝達関数（Ｈ１’、Ｈ２’）からチャンネル間の伝達関数差（ΔＨ’）が決定される。この伝達関数差を適用して前記第１または前記第２のチャンネルのいずれか一方の伝達関数（たとえば、Ｈ２’）が決定される。この伝達関数（Ｈ２’）を用いてエコー抑圧処理が行われる。【選択図】        図１
2015130606.tif 000002
【特許請求の範囲】
【請求項１】
第１および第２のチャンネル毎に推定した伝達関数からチャンネル間の伝達関数差を決定し、この伝達関数差を適用して前記第１または前記第２のチャンネルのいずれか一方の伝達関数を決定し、該伝達関数を用いてエコー抑圧処理を行う処理部を備えることを特徴とする音声通信装置。
【請求項２】
前記処理部は、通信開始から所定時間または通信中の所定時間に前記伝達関数差を決定する学習処理と、前記所定時間の経過後、前記学習処理で決定した前記伝達関数差を前記第１または前記第２のチャンネルのいずれか一方に適用して伝達関数を決定する処理を含む適用処理とを行うことを特徴とする請求項１に記載の音声通信装置。
【請求項３】
前記処理部は、前記音声通信装置の起動時、出荷時または環境変化時に前記学習処理を行うことを特徴とする請求項１または請求項２に記載の音声通信装置。
【請求項４】
コンピュータに実行させるための音響補正プログラムであって、
第１および第２のチャンネル毎に計算される伝達関数からチャンネル間の伝達関数差を決定し、
前記伝達関数差を適用して前記第１または前記第２のチャンネルのいずれか一方の伝達関数を決定し、該伝達関数を用いてエコーを抑圧する
処理を前記コンピュータに実行させるための音響補正プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示の技術はたとえば、ステレオ信号を用いる音声通信のエコー抑圧技術に関する。
【背景技術】
【０００２】
スマートフォンなどの多機能端末やＰＣの音声通信ではＩＰ電話システムが実用化されている。この電話システムでは、音声コーデックを利用してステレオ信号を処理する高品質な通信が普及している。このような音声通信では、スピーカのステレオ再生出力がマイクロフォンを通して送話側に回り込むことによる音響エコーを生じ、この音響エコーが通話品質を低下させる。
【０００３】
このようなステレオ通話システムに関し、２つのスピーカの再生音が混合されて収音されるマイクロフォンからの入力信号に対し、エコー抑圧処理を施すことが知られている（たとえば、特許文献１）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−４４６０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、ステレオ信号による音響エコーを抑圧する場合、チャンネル毎にスピーカからマイクロフォンまでの伝達関数を推定し、各伝達関数を用いて推定エコーをチャンネル毎に推定し、この推定エコーを入力信号から減算する処理が行われる。
【０００６】
このエコー抑圧処理では、通信開始から終了までの継続した通信中の各信号について個別に伝達関数を算出し、この算出に基づいて推定エコーを算出している。一方で、このような伝達関数の算出を利用するエコー抑圧処理では伝達関数の推定処理が処理の大半を占める。このため、各音響信号から伝達関数を推定し、各伝達関数を用いて推定エコーを推定することは、処理量が増大するという課題がある。
【０００７】
そこで、本開示の技術の目的は上記課題に鑑み、エコー抑圧のための処理量を削減することにある。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本開示の一側面によれば、エコー抑圧処理を行う処理部が提供される。この処理部では、第１および第２のチャンネル毎に推定される伝達関数からチャンネル間の伝達関数差が決定される。この伝達関数差を適用して前記第１または前記第２のチャンネルのいずれか一方の伝達関数が決定される。この伝達関数を用いてエコー抑圧処理が行われる。
【発明の効果】
【０００９】
本開示の技術によれば、音声通信に実施されるエコー抑圧の処理量を削減することができる。
【図面の簡単な説明】
【００１０】
【図１】第１の実施の形態に係る音響補正装置の一例を示す図である。
【図２】エコー抑圧処理機能の一例を示す図である。
【図３】エコー抑圧の処理手順の一例を示すフローチャートである。
【図４】第２の実施の形態に係る音声通信装置の一例を示す図である。
【図５】音声通信装置のハードウェアの一例を示す図である。
【図６】エコー抑圧処理機能の一例を示す図である。
【図７】学習モードから適用モードへのモード切替えの一例を示す図である。
【図８】モード切替え機能の一例を示す図である。
【図９】学習機能の一例を示す図である。
【図１０】伝達関数差計算機能の一例を示す図である。
【図１１】伝達関数差の計算処理内容の一例を示す図である。
【図１２】伝達関数差学習機能の一例を示す図である。
【図１３】適用機能の一例を示す図である。
【図１４】伝達関数差読込み機能の一例を示す図である。
【図１５】伝達関数差適用機能の一例を示す図である。
【図１６】伝達関数差の適用処理内容の一例を示す図である。
【図１７】伝達関数の決定から推定エコーの決定およびエコー減算の各機能の一例を示す図である。
【図１８】入力信号のエコー抑圧処理を示す図である。
【図１９】エコー抑圧処理の処理手順を示すフローチャートである。
【図２０】処理学習時間判定機能、伝達関数差算出機能および伝達関数差学習機能の実施例を示す図である。
【図２１】伝達関数差読込み機能および伝達関数適用機能の実施例を示す図である。
【図２２】実施例に係るエコー抑圧の処理手順を示すフローチャートである。
【図２３】第３の実施の形態に係る音声通信装置の出荷前の処理手順の一例を示すフローチャートである。
【図２４】音声通信装置の出荷後の処理手順の一例を示すフローチャートである。
【図２５】第４の実施の形態に係る音声通信装置の一例を示す図である。
【図２６】エコー抑圧処理機能の一例を示す図である。
【図２７】学習機能の一例を示す図である。
【図２８】環境変化検出機能の一例を示す図である。
【図２９】環境変化学習判定機能の一例を示す図である。
【図３０】環境変化学習モードを含むモード切替えの一例を示す図である。
【図３１】環境変化処理の処理手順を示すフローチャートである。
【図３２】他の実施の形態に係る音声通信装置の一例を示す図である。
【図３３】他の実施の形態に係るカラオケ用音声通信装置を示す図である。
【発明を実施するための形態】
【００１１】
〔第１の実施の形態〕
【００１２】
図１は、第１の実施の形態に係る音響補正装置の一例を示している。この音響補正装置２は、本開示の音声通信装置の一例である。この音響補正装置２では、入力信号に含まれるエコーを抑圧により音響補正を行う。
【００１３】
この音響補正装置２には、第１のチャンネル４−１、第２のチャンネル４−２およびエコー抑圧処理部８が含まれる。
【００１４】
チャンネル４−１には第１のスピーカ１０−１が接続されている。このスピーカ１０−１にはチャンネル４−１から音響信号Ａ１が出力され、音響信号Ａ１の音響変換出力Ａ１ｏｕｔが再生される。この音響信号Ａ１がステレオ信号のたとえば、左チャンネル信号であれば、左チャンネルの音響変換出力が再生される。
【００１５】
チャンネル４−２には第２のスピーカ１０−２が接続されている。このスピーカ１０−２にはチャンネル４−２から音響信号Ａ２が出力され、音響信号Ａ２の音響変換出力Ａ２ｏｕｔが再生される。この音響信号Ａ２がステレオ信号のたとえば、右チャンネル信号であれば、右チャンネルの音響変換出力が再生される。つまり、この実施の形態では第１および第２のスピーカ１０−１、１０−２を用いて２つのチャンネルの音響信号が再生される。各再生音響信号は異なってもよいし同一でもよい。
【００１６】
入力系統６にはマイクロフォン１２が接続されている。マイクロフォン１２は入力音響を電気信号に変換する。このマイクロフォン１２からの入力信号Ｓｉｎが入力系統６に加えられる。
【００１７】
このマイクロフォン１２がスピーカ１０−１、１０−２と共通の音響空間に設置された場合、マイクロフォン１２と各スピーカ１０−１、１０−２には音響伝送路１４−１、１４−２が形成される。各音響伝送路１４−１、１４−２は空間だけでなく、スピーカ１０−１、１０−２およびマイクロフォン１２を備える筐体などの音響伝達媒体が含まれる。音響伝送路１４−１の持つ伝達関数Ｈ１に応じて音響エコーＥ１がマイクロフォン１２に入る。同様に、音響伝送路１４−２の持つ伝達関数Ｈ２に応じて音響エコーＥ２がマイクロフォン１２に入る。
【００１８】
したがって、マイクロフォン１２の入力信号Ｓｉｎは、音声信号Ｓに音響エコーＥ１、Ｅ２が加わり、
Ｓｉｎ＝Ｓ＋Ｅ１＋Ｅ２                  ・・・(1) 
となる。
【００１９】
エコー抑圧処理部８は本開示の処理部の一例であり、入力信号Ｓｉｎにエコー抑圧処理を施し、出力信号Ｓｏｕｔを出力する。
【００２０】
図２は、エコー抑圧処理部８が果たすエコー抑圧処理機能１６の一例を示している。このエコー抑圧処理機能１６には第１の伝達関数決定機能１８−１、第２の伝達関数決定機能１８−２、伝達関数差決定機能２０、伝達関数差適用機能２２、エコー決定機能２４およびエコー減算機能２６が含まれる。
【００２１】
伝達関数決定機能１８−１では、チャンネル４−１側において、音響信号Ａ１および入力信号Ｓｉｎから推定される伝達関数Ｈ１’を決定し、伝達関数差決定機能２０に提供する。伝達関数決定機能１８−２では、チャンネル４−２側において、音響信号Ａ２からおよび入力信号Ｓｉｎから推定される伝達関数Ｈ２’を決定し、伝達関数差決定機能２０に提供する。伝達関数差決定機能２０は、伝達関数Ｈ１’、Ｈ２’からチャンネル４−１、４−２間の伝達関数差ΔＨ’を決定する。
【００２２】
伝達関数差適用機能２２では、一方のチャンネル４−１の伝達関数Ｈ１’に伝達関数差ΔＨ’を適用して推定される伝達関数Ｈ２’’を決定する。
【００２３】
エコー決定機能２４では、伝達関数Ｈ１’を用いて推定エコーＥ１’を決定し、伝達関数Ｈ２’’を用いて推定エコーＥ２’’を決定する。
【００２４】
そして、エコー減算機能２６では、入力信号Ｓｉｎから推定エコーＥ１’、Ｅ２’’を減算し、出力信号Ｓｏｕｔを出力する。この出力信号Ｓｏｕｔは、
Ｓｏｕｔ＝Ｓｉｎ−（Ｅ１’＋Ｅ２’’）
≒Ｓ                                        ・・・(2) 
となる。これにより、入力信号Ｓｉｎに含まれる音響エコーＥ１、Ｅ２が抑圧された出力信号Ｓｏｕｔが得られる。
【００２５】
図３は、エコー抑圧処理の処理手順の一例を示している。この処理手順はたとえば、既述の音響補正装置２に搭載されるコンピュータによって実行される本開示の音響補正プログラムの一例である。
【００２６】
この処理手順では、チャンネル４−１、４−２毎に推定される伝達関数Ｈ１’、Ｈ２’が決定され（Ｓ１０１）、各伝達関数Ｈ１’、Ｈ２’を用いてチャンネル４−１、４−２間の伝達関数差ΔＨ’が決定される（Ｓ１０２）。
【００２７】
この伝達関数差ΔＨ’を一方のチャンネルたとえば、チャンネル４−１の伝達関数Ｈ１’に適用し、他方のチャンネル４−２の伝達関数Ｈ２’’が決定される（Ｓ１０３）。
【００２８】
伝達関数Ｈ１’により推定される推定エコーＥ１’が決定され、伝達関数Ｈ２’’により推定される推定エコーＥ２’’が決定される（Ｓ１０４）。
【００２９】
エコー抑圧処理（１０５）では、入力信号Ｓｉｎから推定エコーＥ１’、Ｅ２’’が減算され、音響エコーＥ１、Ｅ２が抑圧された出力信号Ｓｏｕｔが得られる。
【００３０】
＜第１の実施の形態の効果＞
【００３１】
(1) 各チャンネル４−１、４−２間の伝達関数差ΔＨ’を決定し、この伝達関数差ΔＨ’を一方のチャンネル４−１の伝達関数Ｈ１’に適用することで他方のチャンネル４−２の伝達関数Ｈ２’’を決定する。この伝達関数Ｈ１’により推定された推定エコーＥ１’、伝達関数Ｈ２’’により推定された推定エコーＥ２’’を用いてエコー抑圧処理を行う。つまり、このような推定エコーＥ２’’を用いるエコー抑圧処理では、常時、伝達関数Ｈ２’から推定エコーＥ２’を決定する処理を省略できる。
【００３２】
(2) 伝達関数差ΔＨ’を適用して決定される伝達関数Ｈ２’’から推定エコーＥ２’’を決定し、これをエコー抑圧処理に用いるので、従前のエコー抑圧処理に比較し、処理量を片チャンネル分だけ削減できる。
【００３３】
(3) このようなエコー抑圧処理では、２チャンネルの処理量をモノラルの場合とほぼ同等の処理量まで削減できる。
【００３４】
なお、上記実施の形態の伝達関数Ｈ２’’、推定エコーＥ２’’の決定に代え、伝達関数差ΔＨ’をチャンネル４−２の伝達関数Ｈ２’に適用し、チャンネル４−１の伝達関数Ｈ１’’、推定エコーＥ１’’を決定してもよい。
【００３５】
〔第２の実施の形態〕
【００３６】
図４は、第２の実施の形態に係る音声通信装置の一例としてノート型パーソナルコンピュータ（以下単に「ＰＣ」を称する）を示している。
【００３７】
このＰＣ２８では本体部３０および表示筐体３２が備えられる。本体部３０はたとえば、机上に静置される。この本体部３０にはヒンジ部３４を介して開閉可能に表示筐体３２が支持されている。この表示筐体３２は図４に示すように、本体部３０に対してたとえば、９０度以上の開角度を以て拡開状態に維持される。
【００３８】
この表示筐体３２の中央には表示画面３６が設置されている。この表示画面３６は一例として表示筐体３２の前面中央に配置されている。この表示画面３６の下側とヒンジ部３４との間には、放音孔３８−１、３８−２および収音孔４０が設置されている。各放音孔３８−１、３８−２は、表示画面３６の下方の左右に配置されている。放音孔３８−１には左側のスピーカ１０−１が配置され、放音孔３８−２には右側のスピーカ１０−２が配置されている。各放音孔３８−１、３８−２の間には間隔Ｗが設けられている。この間隔Ｗ内の中央には収音孔４０が配置され、この収音孔４０にはマイクロフォン１２が配置されている。この収音孔４０の配置は一例であり、表示筐体３２の下縁左側、下縁右側、上縁中央、上縁左側、上縁右側のいずれであってもよい。
【００３９】
一方のスピーカ１０−１から音響信号Ａ１の音響変換出力が得られる。他方のスピーカ１０−２から音響信号Ａ２の音響変換出力が得られる。ユーザの入力音声がマイクロフォン１２に収音され、音声信号Ｓが得られる。その際、マイクロフォン１２にはスピーカ１０−１からの音響エコーＥ１、スピーカ１０−２からの音響エコーＥ２が収音される。
【００４０】
図５は、ＰＣ２８のハードウェアの一例を示している。図１と同一部分には同一符号を付してある。このＰＣ２８には、プロセッサ４４、メモリ４６、ネットワーク送受信部４８、オーディオ出力部５０、オーディオ入力部５２が含まれる。
【００４１】
プロセッサ４４は、メモリ４６に格納されているＯＳ（Operating System）や各種の情報処理を実行する。この情報処理には、本開示の音響補正プログラムの実行などの音声処理が含まれる。音響補正プログラムの実行では、入力信号Ｓｉｎのエコー抑圧処理が行われる。
【００４２】
メモリ４６にはプログラム記憶部５４、データ記憶部５６、ＲＡＭ（Random-Access Memory）５８が含まれる。このメモリ４６にはハードディスク装置や半導体メモリなど、情報の記録媒体が用いられる。プログラム記憶部５４には、ＯＳや音響補正プログラムが格納される。データ記憶部５６には各種のデータが格納され、データベースが構築される。ＲＡＭ５８はプロセッサ４４で実行されるプログラムの展開など、各種の情報処理のワークエリアとしての記憶領域を有する。
【００４３】
ネットワーク送受信部４８は基地局装置などのネットワーク装置に対する信号送信、ネットワーク装置からの信号受信を行う。この実施の形態では、ネットワーク送受信部４８に無線通信手段の一例としてネットワークハブ６０が無線により接続されている。これにより、ネットワーク装置との信号の送受信はネットワークハブ６０を介して行われる。
【００４４】
このネットワークハブ６０はＰＣ２８の外部機器であり、外部のネットワークと無線通信により接続される。この場合、無線通信手段としてネットワークハブ６０を外部機器として備えているが、ＰＣ２８の内部装置として無線通信部を備えることにより、基地局やネットワークとの無線通信を行ってもよい。場合によっては、無線だけでなく、有線により外部のネットワークと接続してもよい。
【００４５】
オーディオ出力部５０にはステレオスピーカとしてスピーカ１０−１、１０−２が接続されている。オーディオ出力部５０は、プロセッサ４４の情報処理に基づき、無線通信により得られるステレオ信号の音響信号Ａ１、Ａ２の出力処理を行う。この出力処理では、プロセッサ４４からのデジタル信号のアナログ変換の後、出力信号を増幅して出力する。音響信号Ａ１がスピーカ１０−１に加えられ、スピーカ１０−１から音響変換出力として再生される。同様に、音響信号Ａ２がスピーカ１０−２に加えられ、スピーカ１０−２から音響変換出力として再生される。
【００４６】
オーディオ入力部５２にはマイクロフォン１２が接続されている。マイクロフォン１２は収音入力を電気信号に変換する。オーディオ入力部５２には、プロセッサ４４の制御によりマイクロフォン１２からの入力信号Ｓｉｎが取り込まれ、デジタル信号に変換される。
【００４７】
＜エコー抑圧処理機能１６＞
【００４８】
図６は、ＰＣ２８のエコー抑圧処理機能１６の一例を示している。この図６に開示されるエコー抑圧処理機能１６には、モード切替え機能６２、学習機能６４および適用機能６６が含まれる。モード切替え機能６２はたとえば、通信開始から一定時間の経過前に学習機能６４に維持し、該一定時間経過により適用機能６６に切り替える。学習機能６４は、ＰＣ２８の起動時、出荷時または環境変化時から一定時間に実行してもよい。
【００４９】
学習機能６４ではたとえば、通信開始から一定時間Ｔでチャンネル間の伝達関数差を推定し、その伝達関数差の値を学習する。
【００５０】
適用機能６６では、学習機能６４で得られた伝達関数差を一方のチャンネルの伝達関数に適用して他方のチャンネルの伝達関数を決定する。この伝達関数を用いて推定エコーを決定し、この推定エコーを用いてエコー抑圧処理を行う。
【００５１】
＜モード切替え機能６２＞
【００５２】
図７は、モード切替え機能６２の一例を示している。このモード切替え機能６２では、時間監視機能６８、初期学習時間判定機能７０および判定結果保持機能７２が含まれる。
【００５３】
時間監視機能６８では、起動開始から既述の一定時間ｔの経過監視として時間計測を行う。起動開始から一定時間ｔ＝Ｔが経過したとき、時間監視機能６８からその計測出力が得られ、この出力が初期学習時間判定機能７０に提供される。
【００５４】
初期学習時間判定機能７０はたとえば、起動から既述の一定時間ｔ＝Ｔまでの一定時間Ｔに初期学習判定を行い、その判定結果を出力する。この初期学習時間判定機能７０では通話開始からの経過時間ｔ〔ｓｅｃ〕を取得する。通話開始ｔ＝０からの一定時間ｔ＝Ｔが初期学習時間に設定される。これにより、初期学習時間判定機能７０ではその判定結果を出力する。この判定結果は判定結果保持機能７２により保持される。
【００５５】
図８は、モード切替えの一例を示している。学習モードＭ１では、時刻ｔｓ＝０の通話開始により、学習機能６４が開始される。時刻ｔｓ＝０から所定時間Ｔが経過した時点ｔｃでモード切替え機能６２により、学習モードＭ１から適用モードＭ２に切り替えられる。適用モードＭ２では既述の適用機能６６が実行される。この適用モードＭ２は、通話終了の時刻ｔｅまで継続する。
【００５６】
＜学習機能６４＞
【００５７】
図９は、学習機能６４の一例を示している。この学習機能６４には高速フーリエ変換機能７４−１、７４−２、７４−３、伝達関数決定機能７６−１、７６−２、学習処理機能７８、乗算機能８０−１、８０−２、推定エコー加算機能８２、エコー減算機能８４、逆高速フーリエ変換機能８６が含まれる。
【００５８】
高速フーリエ変換機能７４−１は、音響信号Ａ１の周波数成分に対する分布を抽出する手段の一例である。この高速フーリエ変換機能７４−１は、離散フーリエ変換をプロセッサ４４により高速に計算する公知のアルゴリズムである。この高速フーリエ変換機能７４−１では、音響信号Ａ１の伝達関数Ｈ１を推定する前提処理として、音響信号Ａ１にいずれの周波数成分がどれだけ含まれているかを演算により求め、周波数成分に対する振幅分布を抽出する。この高速フーリエ変換機能７４−１により音響信号Ａ１から効率的な周波数成分の抽出処理が行われる。高速フーリエ変換機能７４−２においても、音響信号Ａ２に対して同様の処理が行われる。高速フーリエ変換機能７４−３では、入力信号Ｓｉｎに対して同様の処理を行う。
【００５９】
伝達関数決定機能７６−１では、高速フーリエ変換機能７４−１、７４−３の各高速フーリエ変換出力を用いてスピーカ１０−１からマイクロフォン１２に至る伝送路１４−１の伝達関数Ｈ１’を決定する。伝達関数決定機能７６−２では、高速フーリエ変換機能７４−２、７４−３の各高速フーリエ変換出力を用いてスピーカ１０−１からマイクロフォン１２に至る伝送路１４−２の伝達関数Ｈ２’を決定する。この伝達関数決定機能７６−２では伝達関数決定機能７６−１と同様の処理により伝達関数の推定処理を行い、推定された伝達関数を決定する。したがって、学習機能６４の実行時、伝達関数決定機能７６−１および伝達関数決定機能７６−２から、伝達関数Ｈ１’、Ｈ２’が学習処理機能７８に提供される。
【００６０】
この学習処理機能７８は、既述の学習モードＭ１で、伝達関数差を計算して学習し、その伝達関数差を蓄積する処理機能である。この学習処理機能７８には伝達関数差計算機能８８、伝達関数差学習機能９０および伝達関数差学習データベース９２が含まれる。
【００６１】
伝達関数差計算機能８８は、伝達関数決定機能７６−１から提供された伝達関数Ｈ１’、伝達関数決定機能７６−２から提供された伝達関数Ｈ２’の差である伝達関数差ΔＨ’を計算する。
【００６２】
伝達関数差学習機能９０は、伝達関数差計算機能８８で一定時間Ｔに計算される伝達関数差ΔＨ’を学習し、その学習値を伝達関数差学習データベース９２に格納する。
【００６３】
伝達関数差学習データベース９２は、データ記憶部５６に構築されている。この伝達関数差学習データベース９２には伝達関数差ΔＨ’から伝達関数差学習機能９０で求められる学習データが格納される。つまり、ＲＡＭ５８からデータ記憶部５６へ学習データの読込みが行われる。一定時間Ｔの経過後、この伝達関数差学習データベース９２から伝達関数差の学習データが適用機能６６に提供される。
【００６４】
学習モードＭ１において、乗算機能８０−１には、高速フーリエ変換機能７４−１のフーリエ変換出力および伝達関数Ｈ１’が提供される。乗算機能８０−１では、フーリエ変換出力と伝達関数Ｈ１’の乗算により推定エコーＥ１’が求められ、推定エコー加算機能８２に提供される。
【００６５】
同様に、乗算機能８０−２には、高速フーリエ変換機能７４−２のフーリエ変換出力および伝達関数Ｈ２’が提供される。乗算機能８０−２では、フーリエ変換出力と伝達関数Ｈ２’の乗算により推定エコーＥ２’が求められ、推定エコー加算機能８２に提供される。
【００６６】
推定エコー加算機能８２では、推定エコーＥ１’、Ｅ２’を加算し、この加算結果をエコー減算機能８４に提供する。
【００６７】
エコー減算機能８４はエコー抑圧処理機能の一例である。このエコー減算機能８４では高速フーリエ変換機能７４−３による入力信号Ｓｉｎのフーリエ変換出力に対し、推定エコーＥ１’、Ｅ２’の減算処理を行う。つまり、入力信号Ｓｉｎの推定エコーＥ１’、Ｅ２’の減算によるエコー抑圧処理が実行される。この処理結果が逆高速フーリエ変換機能８６に提供される。
【００６８】
逆高速フーリエ変換機能８６にはエコー減算機能８４の出力が提供される。これにより、エコー抑圧処理が施された出力信号Ｓｏｕｔが学習機能６４から出力される。
【００６９】
図１０は、伝達関数差計算機能８８の一例を示している。伝達関数差計算機能８８には、伝達関数決定機能７６−１から伝達関数Ｈ１’、伝達関数決定機能７６−２から伝達関数Ｈ２’が提供される。これら伝達関数Ｈ１’、Ｈ２’は複素スペクトルである。伝達関数差計算機能８８では、伝達関数Ｈ１’、Ｈ２’から伝達関数差ΔＨ’が算出される。この伝達関数差ΔＨ’はたとえば、伝達関数Ｈ２’からＨ１’を減算することにより求められる。この算出式は次の通りである。
ΔＨ’＝Ｈ２’−Ｈ１’                  ・・・(3) 
【００７０】
このような計算により求められた伝達関数差ΔＨ’は、伝達関数差学習機能９０に提供される。
【００７１】
図１１は、伝達関数差計算機能８８の処理内容の一例を示している。図１１のＡは、横軸に周波数、縦軸に電力をとり、伝達関数Ｈ１’の変化を示している。図１１のＢは、同様に伝達関数Ｈ２’の変化を示している。図１１のＣは、伝達関数Ｈ２’から伝達関数Ｈ１’を減算して求められた伝達関数差ΔＨ’を示している。この伝達関数差ΔＨ’は周波数に対する電力レベルの変化として表される。
【００７２】
図１２のＡは、伝達関数差学習機能９０の一例を示している。伝達関数差計算機能８８から提供される伝達関数差ΔＨ’は瞬時値である。伝達関数差学習機能９０ではこの瞬時値と、伝達関数差学習データベース９２から既存の学習データである伝達関数差
【数１】
2015130606.tif 000003
を読み込み、学習処理を行う。この学習処理では、式(4) に示す通りである。
【数２】
2015130606.tif 000004
このように伝達関数差学習機能９０では、伝達関数差計算機能８８で計算されるフレームごとの瞬時値である伝達関数差ΔＨ’を更新係数αにより学習する。この学習処理により得られた学習データがメモリ４６の伝達関数差学習データベース９２に格納される。なお、伝達関数差学習データベース９２から既存の学習データがない場合には、初期値の伝達関数差
【数３】
2015130606.tif 000005
が学習データに用いられる。
【００７３】
図１２のＢは、伝達関数差学習データテーブル９２０の一例を示している。この伝達関数差学習データテーブル９２０は伝達関数差学習データベース９２に構築される。この伝達関数差学習データテーブル９２０には、伝達関数Ｈ１’、Ｈ２’、更新係数α、瞬時値である伝達関数差ΔＨ’およびその学習値が格納される。更新係数αは一定値であり、他の値は学習モードＭ１で更新される。
【００７４】
＜適用機能６６＞
【００７５】
図１３は、適用機能６６の一例を示している。この適用機能６６は適用モードＭ２で実行され、学習機能６４で得られた伝達関数差の学習データを適用する。この適用機能６６において、図９の学習機能６４と同一部分には同一符号を付し、その説明を割愛する。
【００７６】
この適用機能６６は適用処理機能９４を備える。この適用処理機能９４には伝達関数差学習データベース９２、伝達関数差読込み機能９６および伝達関数差適用機能９８が含まれている。
【００７７】
図１４は、伝達関数差読込み機能９６の一例を示している。この伝達関数差読込み機能９６では、伝達関数差学習データベース９２から伝達関数差学習値
【数４】
2015130606.tif 000006
を読み込み、この伝達関数差学習値
【数５】
2015130606.tif 000007
を伝達関数差適用機能９８に提供する。
【００７８】
図１５は、伝達関数差適用機能９８の一例を示している。この伝達関数差適用機能９８には、伝達関数差読込み機能９６からの伝達関数差学習値
【数６】
2015130606.tif 000008
と、伝達関数決定機能７６−１から伝達関数Ｈ１’が提供される。この伝達関数差適用機能９８では伝達関数Ｈ１’に伝達関数差学習値
【数７】
2015130606.tif 000009
を適用し、伝達関数Ｈ２’’を演算により決定する。この伝達関数Ｈ２’’は、
【数８】
2015130606.tif 000010
で表すことができる。
【００７９】
図１６は、伝達関数差適用機能９８の処理内容を示している。図１６のＡは、横軸に周波数、縦軸に電力をとり、伝達関数Ｈ１’の変化を示している。図１６のＢは、同様に伝達関数差学習値
【数９】
2015130606.tif 000011
の変化を示している。図１６のＣは、伝達関数Ｈ１’に伝達関数差学習値
【数１０】
2015130606.tif 000012
を加算して求められた伝達関数Ｈ２’’を示している。
【００８０】
図１７は、乗算機能８０−１、８０−２、推定エコー加算機能８２およびエコー減算機能８４を示している。
【００８１】
乗算機能８０−１では、音響信号Ａ１の周波数変換出力および伝達関数Ｈ１’の提供を受け、これらを乗算し、推定エコーＥ１’が算出される。
【００８２】
乗算機能８０−２では、音響信号Ａ２の周波数変換出力および伝達関数Ｈ２’’の提供を受け、これらを乗算し、推定エコーＥ２’’が算出される。
【００８３】
推定エコー加算機能８２では、各推定エコーＥ１’、Ｅ２’’の提供を受け、両者を加算し、推定エコー〔Ｅ１’＋Ｅ２’’〕が得られる。
【００８４】
そして、エコー減算機能８４では、この推定エコー〔Ｅ１’＋Ｅ２’’〕の提供を受け、入力信号Ｓｉｎから推定エコー〔Ｅ１’ ＋Ｅ２’’〕を減算する。
【００８５】
このエコー減算機能８４のエコー減算出力をＳｎとすれば、このエコー減算出力Ｓｎは、
Ｓｎ＝Ｓｉｎ−（Ｅ１’ ＋Ｅ２’’）                ・・・(6) 
となる。つまり、入力信号Ｓｉｎが推定エコー〔Ｅ１’ ＋Ｅ２’’〕で抑圧されたエコー減算出力Ｓｎが逆高速フーリエ変換機能８６に提供される。
【００８６】
図１８は、エコー減算機能８４の処理内容の一例を示している。図１８のＡは入力信号Ｓｉｎの周波数変換出力である。この入力信号Ｓｉｎには音響エコーＥ１、Ｅ２が含まれている。図１８のＢは、推定エコー〔Ｅ１’＋Ｅ２’’〕を示している。入力信号Ｓｉｎから推定エコー〔Ｅ１’ ＋Ｅ２’’〕を減算すると、図１８のＣに示すように、音響エコーＥ１、Ｅ２が抑圧され、入力信号Ｓｉｎの音声信号Ｓに等しい出力信号Ｓｏｕｔが得られる。
【００８７】
＜エコー抑圧処理＞
【００８８】
図１９は、エコー抑圧処理の処理手順の一例を示している。この処理手順は、本開示の音響補正プログラムの一例である。
【００８９】
この処理手順ではたとえば、起動開始により学習モードに移行し、学習機能６４が実行される。この起動開始により、信号の取得が行われる（Ｓ２０１）。この信号の取得により、音響信号Ａ１、Ａ２および入力信号Ｓｉｎが取得される。音響信号Ａ１、Ａ２および入力信号Ｓｉｎには、周波数変換として個別に高速フーリエ変換が行われる（Ｓ２０２）。この高速フーリエ変換により、信号の周波数成分毎のレベルが求められる。
【００９０】
この高速フーリエ変換の後、伝達関数決定機能７６−１により伝達関数Ｈ１’の決定が行われる（Ｓ２０３）。この伝達関数Ｈ１’を用いて推定エコーＥ１’が決定される（Ｓ２０４）。
【００９１】
そして、学習モードか否かの判定を行い（Ｓ２０５）、学習モードであれば（Ｓ２０５のＹＥＳ）、伝達関数Ｈ２’の決定が行われる（Ｓ２０６）。伝達関数Ｈ１’、Ｈ２’を用いることにより、チャンネル４−１、４−２間の伝達関数差ΔＨ’が算出される（Ｓ２０７）。伝達関数差学習機能９０では、伝達関数差ΔＨ’の学習が行われる（Ｓ２０８）。この伝達関数学習値は、伝達関数差学習データベース９２に格納される（Ｓ２０９）。
【００９２】
この学習モードでは、伝達関数Ｈ２’を用いることにより推定エコーＥ２’が決定される（Ｓ２１０）。推定エコーＥ１’、Ｅ２’の加算が行われ（Ｓ２１１）、入力信号Ｓｉｎから推定エコー（Ｅ１’＋Ｅ２’）が減算される（Ｓ２１２）。この減算結果には逆高速フーリエ変換が行われ（Ｓ２１３）、出力信号Ｓｏｕｔが出力される。
【００９３】
Ｓ２０５において、適用モードであれば（Ｓ２０５のＮＯ）、伝達関数差学習データベース９２から伝達関数差学習値
【数１１】
2015130606.tif 000013
を読み込む（Ｓ２１４）。この伝達関数差学習値
【数１２】
2015130606.tif 000014
を適用し（Ｓ２１５）、推定された伝達関数Ｈ２’’を決定する（Ｓ２１６）。
【００９４】
この伝達関数Ｈ２’’の決定の後、この伝達関数Ｈ２’’を用いて推定された推定エコーＥ２’’を決定する（Ｓ２１７）。
【００９５】
Ｓ２０４で決定された推定エコーＥ１’と、Ｓ２１７で決定された推定エコーＥ２’’が加算される（Ｓ２１８）。これにより、推定エコー（Ｅ１’＋Ｅ２’’）が得られる。入力信号Ｓｉｎから推定エコー（Ｅ１’＋Ｅ２’’）が減算され（Ｓ２１９）、その減算結果に逆高速フーリエ変換が行われ（Ｓ２２０）、出力信号Ｓｏｕｔが出力される。
【００９６】
＜第２の実施の形態の効果＞
【００９７】
(1) 第２の実施の形態においても、第１の実施の形態で述べた機能を実現しており、第１の実施の形態と同様にエコー処理の処理量を削減でき、第１の実施の形態と同様の効果が得られる。
【００９８】
(2) 既述したように、この実施の形態では通話開始からの所定時間Ｔの学習モードＭ１で伝達関数差ΔＨ’を学習し、その学習値を適用モードＭ２で適用している。このため、実際の音響信号Ａ１、Ａ２および入力信号Ｓｉｎから算出された伝達関数Ｈ１’、Ｈ２’を用いて伝達関数差ΔＨ’を求めており、正確な伝達関数差ΔＨ’が得られる。適用モードＭ２では、斯かる伝達関数差ΔＨ’を適用するのでエコー処理の処理量が低減される。
【００９９】
(3) 通話開始など、起動の度に学習モードＭ１で新たに伝達関数差ΔＨ’を推定し、学習して決定するので、現状に則した伝達関数差ΔＨ’により求めた推定エコーによってエコー抑圧を行うことができる。
【０１００】
(4) 学習モードＭ１では、適用モードＭ２と異なり、伝達関数差の学習に用いられる伝達関数Ｈ１’、Ｈ２’を用いて推定エコーＥ１’、Ｅ２’が決定され、この推定エコーＥ１’、Ｅ２’を用いてエコー抑圧が行われる。このため、学習モードＭ１から適用モードＭ２まで間断なくエコー処理を行うことができる。
【０１０１】
＜実施例＞
【０１０２】
図２０は、初期学習時間判定機能７０、伝達関数差計算機能８８および伝達関数差学習機能９０の実施例を示している。
【０１０３】
この実施例の初期学習時間判定機能７０では図２０のＡに示すように、初期学習時間Ｔの間、初期区間フラグInitFlagを１に設定する。この間初期区間フラグInitFlagを数式で表現すれば、
【数１３】
2015130606.tif 000015
となる。初期区間フラグInitFlagが既述の判定結果保持機能７２に提供されて保持される。この一定時間Ｔはたとえば、Ｔ＝１０〔ｓｅｃ〕である。この一定時間Ｔの長さは、音響信号Ａ１、Ａ２から伝達関数ＨL’，ＨR’を推定し且つその値を決定できる時間であればよい。
【０１０４】
伝達関数差計算機能８８では図２０のＢに示すように、ステレオ信号の左音響信号をＡL、右音響信号をＡRとすれば、複素スペクトルの伝達関数ＨL’（ｗ），ＨR’（ｗ）を定義できる。伝達関数差計算機能８８では伝達関数ＨL’（ｗ），ＨR’（ｗ）から左右チャンネル間の伝達関数差ΔＨ’（ｗ）が算出される。この伝達関数差ΔＨ’（ｗ）は、
ΔＨ’（ｗ）＝ＨR’（ｗ）−ＨL’（ｗ）                      ・・・(8) 
から求められる。
【０１０５】
伝達関数差学習機能９０では図２０のＣに示すように、伝達関数差ΔＨ’（ｗ）を更新係数αで伝達関数差学習値
【数１４】
2015130606.tif 000016
として学習する。更新係数αは０．０＜α＜１．０の範囲で任意に設定すればよく、たとえば、α＝０．９とする。また、伝達関数差学習値の初期値は０．０とすればよい。これを数式で表現すれば、
【数１５】
2015130606.tif 000017
となる。この学習値は、伝達関数差学習データベース９２に格納されて保存される。
【０１０６】
図２１は、実施例に係る伝達関数差読込み機能９６および伝達関数差適用機能９８の一例を示している。
【０１０７】
伝達関数差読込み機能９６は図２１のＡに示すように、伝達関数差学習データベース９２から伝達関数差学習値
【数１６】
2015130606.tif 000018
を読み込み、伝達関数差適用機能９８に提供する。
【０１０８】
伝達関数差適用機能９８では図２１のＢに示すように、伝達関数ＨLと伝達関数差学習値
【数１７】
2015130606.tif 000019
を適用して計算し、伝達関数ＨR’が決定される。
【０１０９】
この処理を数式で表現すれば、
【数１８】
2015130606.tif 000020
となる。
【０１１０】
図２２は、実施例に係るエコー抑圧の処理手順の一例を示している。
【０１１１】
この処理手順ではたとえば、起動開始により学習モードに移行し、学習機能６４が実行される。この起動開始により、信号の取得が行われる（Ｓ３０１）。この信号の取得により、入力信号Ｓｉｎ（Ｓ３０１）およびステレオ信号の音響信号ＡL、ＡR（Ｓ３０２）が取得される。音響信号ＡL、ＡRおよび入力信号Ｓｉｎには、周波数変換として個別に高速フーリエ変換が行われる（Ｓ３０３）。
【０１１２】
この高速フーリエ変換の後、伝達関数決定機能７６−１により推定された伝達関数ＨL’の決定が行われる（Ｓ３０４）。この伝達関数ＨL’を用いて推定される推定エコーＥL’が決定される（Ｓ３０５）。
【０１１３】
そして、学習モードか否かの判定を行い（Ｓ３０６）、学習モードであれば（Ｓ３０６のＹＥＳ）、伝達関数ＨR’の決定が行われる（Ｓ３０７）。伝達関数ＨL’、ＨR’を用いることにより、各チャンネル間の伝達関数差ΔＨ’が算出される（Ｓ３０８）。伝達関数差学習機能９０では、伝達関数差ΔＨ’の学習が行われる（Ｓ３０９）。この伝達関数学習値は、伝達関数差学習データベース９２に格納される（Ｓ３１０）。
【０１１４】
この学習モードでは、伝達関数ＨR’を用いることにより推定エコーＥR’が決定される（Ｓ３１１）。推定エコーＥL’、ＥR’の加算が行われ（Ｓ３１２）、入力信号Ｓｉｎから推定エコー（ＥL’＋ＥR’）が減算される（Ｓ３１３）。この減算結果には逆高速フーリエ変換が行われ（Ｓ３１４）、出力信号Ｓｏｕｔが出力される。
【０１１５】
Ｓ３０６において、適用モードであれば（Ｓ３０６のＮＯ）、伝達関数差学習データベース９２から伝達関数差学習値
【数１９】
2015130606.tif 000021
を読み込む（Ｓ３１５）。この伝達関数差学習値
【数２０】
2015130606.tif 000022
を適用し（Ｓ３１６）、伝達関数ＨR’’を決定する（Ｓ３１７）。
【０１１６】
この伝達関数ＨR’’の決定の後、この伝達関数ＨR’’を用いて推定エコーＥR’’の決定が行われる（Ｓ３１８）。
【０１１７】
Ｓ３０５で決定された推定エコーＥL’と、Ｓ３１８で決定された推定エコーＥR’’が加算される（Ｓ３１９）。これにより、推定エコー（ＥL’＋ＥR’’）が決定される。入力信号Ｓｉｎから推定エコー（ＥL’＋ＥR’’）が減算され（Ｓ３３２０）、その減算結果に逆高速フーリエ変換が行われ（Ｓ３２１）、出力信号Ｓｏｕｔが出力される。
【０１１８】
＜実施例の効果＞
【０１１９】
(1) この実施例においても、第２の実施の形態と同様の処理を行っているので、第２の実施の形態と同様の効果が得られる。
【０１２０】
(2) この実施例では、左右チャンネルのステレオ信号を処理し、エコー抑圧処理を行っているので、ステレオ音響の再生により高品位な通話品質が得られる。
【０１２１】
〔第３の実施の形態〕
【０１２２】
図２３は、第３の実施の形態に係る音声通信装置の一例としてＰＣ２８の出荷前の処理手順の一例を示している。この実施の形態においてもＰＣ２８は既述のエコー抑圧処理機能１６を備えている。この処理手順では、出荷前の処理として第２の実施の形態における学習モードが実行される。
【０１２３】
ＰＣ２８の出荷前には、学習機能６４が実行される。起動開始により、入力信号Ｓｉｎの取得（Ｓ４０１）、音響信号Ａ１、Ａ２の取得（Ｓ４０２）が行われる。入力信号Ｓｉｎおよび音響信号Ａ１、Ａ２には、周波数変換として個別に高速フーリエ変換が行われる（Ｓ４０３）。
【０１２４】
この高速フーリエ変換の後、伝達関数決定機能７６−１により伝達関数Ｈ１’の決定が行われる（Ｓ４０４）。この伝達関数Ｈ１’を用いて推定エコーＥ１’が決定される（Ｓ４０５）。また、伝達関数決定機能７６−２により伝達関数Ｈ２’の決定が行われる（Ｓ４０６）。伝達関数Ｈ１’、Ｈ２’を用いることにより、チャンネル４−１、４−２間の伝達関数差ΔＨ’が算出される（Ｓ４０７）。伝達関数差学習機能９０では、伝達関数差ΔＨ’の学習が行われる（Ｓ４０８）。この伝達関数差学習値は、伝達関数差学習データベース９２に格納される（Ｓ４０９）。
【０１２５】
図２４は、ＰＣ２８の出荷後の処理手順の一例を示している。この処理手順では、第２の実施の形態における適用モードが実行される。
【０１２６】
この処理手順では、起動開始により、入力信号Ｓｉｎの取得（Ｓ５０１）、音響信号Ａ１、Ａ２の取得（Ｓ５０２）が行われる。入力信号Ｓｉｎおよび音響信号Ａ１、Ａ２には、周波数変換として個別に高速フーリエ変換が行われる（Ｓ５０３）。
【０１２７】
この高速フーリエ変換の後、伝達関数Ｈ１’の決定が行われ（Ｓ５０４）、この伝達関数Ｈ１’を用いて推定エコーＥ１’が決定される（Ｓ５０５）。
【０１２８】
そして、伝達関数差学習データベース９２から伝達関数差学習値
【数２１】
2015130606.tif 000023
を読み込み（Ｓ５０６）、この伝達関数差学習値
【数２２】
2015130606.tif 000024
を適用し（Ｓ５０７）、伝達関数Ｈ２’’が決定される（Ｓ５０８）。
【０１２９】
この伝達関数Ｈ２’’の決定の後、この伝達関数Ｈ２’’を用いて推定エコーＥ２’’の決定が行われる（Ｓ５０９）。
【０１３０】
Ｓ５０５で決定された推定エコーＥ１’と、Ｓ５０９で決定された推定エコーＥ２’’が加算される（Ｓ５１０）。これにより、推定エコー（Ｅ１’＋Ｅ２’’）が決定される。入力信号Ｓｉｎから推定エコー（Ｅ１’＋Ｅ２’’）が減算され（Ｓ５１１）、その減算結果に逆高速フーリエ変換が行われ（Ｓ５１２）、出力信号Ｓｏｕｔが出力される。
【０１３１】
＜第３の実施の形態の効果＞
【０１３２】
出荷前の学習処理で得られた伝達関数差を出荷後の適用処理で適用するので、出荷後の学習処理を削減でき、エコー処理の処理量を削減できる。
【０１３３】
なお、この実施の形態においても、適用モードＭ２の処理の後、新たな起動の際に伝達関数差の学習を行ってもよい。
【０１３４】
〔第４の実施の形態〕
【０１３５】
図２５は、第４の実施の形態に係る音声通信装置の一例としてＰＣ２８のハードウェアの一例を示している。図２５において、図５と同一部分には同一符号を付してある。
【０１３６】
この実施の形態のＰＣ２８では、周囲の環境変化を検出し、環境変化が生じたと判断した場合には伝達関数差ΔＨ’を再学習する。斯かるＰＣ２８には加速度変化を検出する加速度センサ１００が含まれる。この加速度センサ１００は加速度変化によりＰＣ２８の設置環境の変化を検出する環境変化検出手段の一例である。
【０１３７】
この実施の形態のＰＣ２８においても、既述のエコー抑圧処理機能１６（図６）が実現される。このエコー抑圧機能１６には図２６に示すように、モード切替え機能６２、学習機能６４’および適用機能６６’が含まれる。学習機能６４’では、環境変化を検出したことによる伝達関数差ΔＨを学習する。適用機能６６’では、学習機能６４’で学習した伝達関数差ΔＨを推定エコーの決定に適用する。
【０１３８】
図２７は、加速度センサ１００を備えるＰＣ２８のプロセッサ４４の学習機能６４’の一例を示している。図２７において、図９と同一部分には同一符号を付し、その説明を割愛する。
【０１３９】
この学習処理機能７８には、環境変化検出機能１０２および環境変化学習判定機能１０４が含まれる。環境変化検出機能１０２は、既述の学習モードＭ１と同様に環境変化学習モードを実行し、加速度センサ１００により環境変化を表す加速度を検出する。環境変化学習判定機能１０４は、環境変化検出機能１０２から提供される環境変化を用いて伝達関数差ΔＨを学習し、その学習値を伝達関数差学習データベース９２に格納する。
【０１４０】
モード切替え機能６２および適用機能６６’は第２の実施の形態と同様であるので、その説明を割愛する。この場合の適用機能６６’では、環境変化に対応する伝達関数差が推定エコーの推定に用いられる。
【０１４１】
図２８は、環境変化検出機能１０２の一例を示している。この環境変化検出機能１０２には、加速度センサ１００の検出値ａと経過時間ｔが提供される。
【０１４２】
この環境変化検出機能１０２において、加速度検出値ａから加速度の絶対値｜ａ｜が計算され、その絶対値が一定の閾値Ａ以上であれば、検出開始からの環境変化検出時間ｔ［ｓｅｃ］＝ｔacc ［ｓｅｃ］としてデータ記憶部５６に記憶される。
【０１４３】
この環境変化検出時間ｔacc ［ｓｅｃ］を数式で表現すると、
【数２３】
2015130606.tif 000025
となる。閾値Ａは、環境変化が予想される一定値たとえば、５〔ｍ／ｓｅｃ2 〕とすればよい。
【０１４４】
図２９は、環境変化学習判定機能１０４の一例を示している。
【０１４５】
環境変化学習判定機能１０４では、通話開始から経過時間ｔ［ｓｅｃ］を取得し、環境変化検出時間ｔacc ［ｓｅｃ］から一定時間Ｔ［ｓｅｃ］以上経過しているかどうかが判定される。その判定結果として学習フラグaccFlag が設定される。
【０１４６】
この学習フラグaccFlag を数式で表現すると、
【数２４】
2015130606.tif 000026
となる。ただし、Ｔ［ｓｅｃ］は環境変化を伝達関数の変化に反映させる際の基準時間としてたとえば、１０［ｓｅｃ］とする。
【０１４７】
図３０は、環境変化学習モードを含むモード切替えの一例を示している。この環境変化学習モードは適用モードＭ２から切り替えられる。
【０１４８】
図３０に示すように、適用モードＭ２が実行されている際に時刻ｔ１で環境変化が検出されると、環境変化学習モードＭ３に切り替えられる。この環境変化学習モードＭ３では時刻ｔ１から時刻ｔ２の一定時間Ｔで実行される。この一定時間Ｔの経過後、環境変化学習モードＭ３から適用モードＭ２に切り替えられる。この適用モードＭ２では、環境変化学習モードＭ３で得られた伝達関数差ΔＨを適用し、伝達関数Ｈ２’’を推定し、この伝達関数Ｈ２’’が適用されて推定エコーＥ２’’が決定される。これに基づき、推定エコーＥ２’’を用いたエコー抑圧処理が実行される。
【０１４９】
図３１は、第４の実施の形態に係るエコー抑圧処理の処理手順の一例を示している。この処理手順には、環境変化処理を含む本開示の音響補正プログラムの一例である。
【０１５０】
この処理手順ではたとえば、起動開始により学習モードに移行し、学習機能６４が実行される。この起動開始により、入力信号Ｓｉｎが取得され（Ｓ６０１）、音響信号Ａ１、Ａ２が取得される（Ｓ６０２）。音響信号Ａ１、Ａ２および入力信号Ｓｉｎには、周波数変換として個別に高速フーリエ変換が行われる（Ｓ６０３）。この高速フーリエ変換により、信号の周波数成分毎のレベルが求められる。
【０１５１】
この高速フーリエ変換の後、伝達関数推定機能７６−１により伝達関数Ｈ１’の決定が行われる（Ｓ６０４）。この伝達関数Ｈ１’を用いて推定エコーＥ１’が決定される（Ｓ６０５）。
【０１５２】
そして、学習モードか否かの判定を行い（Ｓ６０６）、学習モードであれば（Ｓ６０６のＹＥＳ）、伝達関数Ｈ２’の決定が行われる（Ｓ６０７）。伝達関数Ｈ１’、Ｈ２’を用いることにより、チャンネル４−１、４−２間の伝達関数差ΔＨ’が算出される（Ｓ６０８）。伝達関数差学習機能９０では、伝達関数差ΔＨ’の学習が行われる（Ｓ６０９）。この伝達関数学習値は、伝達関数差学習データベース９２に格納される（Ｓ６１０）。
【０１５３】
この学習モードでは、伝達関数Ｈ２’を用いることにより推定エコーＥ２’が決定される（Ｓ６１１）。推定エコーＥ１’、Ｅ２’の加算が行われ（Ｓ６１２）、入力信号Ｓｉｎから推定エコー（Ｅ１’＋Ｅ２’）が減算される（Ｓ６１３）。この減算結果には逆高速フーリエ変換が行われ（Ｓ６１４）、出力信号Ｓｏｕｔが出力される。
【０１５４】
Ｓ６０６において、学習モードでなければ（Ｓ６０６のＮＯ）、環境変化の検出を行う（Ｓ６１５）。この環境変化の検出に基づき、環境変化学習モードかを判定する（Ｓ６１６）。環境変化学習モードであれば（Ｓ６１６のＹＥＳ）、環境変化の検出に基づき、学習モードと同様の処理であるＳ６０７、Ｓ６０８、Ｓ６０９、Ｓ６１０、Ｓ６１１、Ｓ６１２、Ｓ６１３、Ｓ６１４を実行する。
【０１５５】
Ｓ６１６において、適用モードであれば（Ｓ６１６のＮＯ）、伝達関数差学習データベース９２から伝達関数差学習値
【数２５】
2015130606.tif 000027
を読み込む（Ｓ６１７）。この伝達関数差学習値
【数２６】
2015130606.tif 000028
を適用し（Ｓ６１８）、伝達関数Ｈ２’’を決定する（Ｓ６１９）。
【０１５６】
この伝達関数Ｈ２’’の決定の後、この伝達関数Ｈ２’’を用いて推定エコーＥ２’’の決定が行われる（Ｓ６２０）。
【０１５７】
Ｓ６０５で決定された推定エコーＥ１’と、Ｓ６２０で決定された推定エコーＥ２’’が加算される（Ｓ６２１）。これにより、推定エコー（Ｅ１’＋Ｅ２’’）が決定される。入力信号Ｓｉｎから推定エコー（Ｅ１’＋Ｅ２’’）が減算され（Ｓ６２２）、その減算結果に逆高速フーリエ変換を行われ（Ｓ６２３）、出力信号Ｓｏｕｔが出力される。
【０１５８】
＜第４の実施の形態の効果＞
【０１５９】
(1) 環境変化に則して伝達関数差を再度学習し、推定エコーを決定し、エコー抑圧処理を行うので、環境に対応したエコー抑圧効果を得ることができる。
【０１６０】
(2) 環境に応じた通話品質を得ることができる。
【０１６１】
(3) 第４の実施の形態においても、第２の実施の形態と同様の処理を行うので、第２の実施の形態と同様の効果が得られる。
【０１６２】
なお、この実施の形態では通話開始から環境変化検出モードを実行しているが、適用モードＭ２の実行中に環境変化を監視し、環境変化学習モードＭ３に移行し、伝達関数差を再度学習してもよい。その際、第２の実施の形態で述べたように、環境変化学習モードＭ３では実際に得られる音響信号Ａ１、Ａ２および入力信号Ｓｉｎから推定される伝達関数差を用いて推定エコーを決定し、エコー抑圧処理を実行すればよい。
【０１６３】
〔他の実施の形態〕
【０１６４】
(1) 上記実施の形態では、伝達関数差ΔＨ’を用いてＨ１’から伝達関数Ｈ２’’を決定しているが、Ｈ２’から伝達関数Ｈ１’’を決定し、推定エコーＥ１’’をエコー抑圧に用いてもよい。この場合、伝達関数Ｈ１’は、伝達関数Ｈ２’からΔＨ’を減算すればよい。これを数式で示すと、
Ｈ１’＝Ｈ２’−ΔＨ’                ・・・(13)
となる。
【０１６５】
(2) 上記実施の形態では、第１および第２のチャンネルや、左右チャンネルを備えるステレオ信号の処理を例示したが、本開示の技術はこれに限定されない。本開示の技術は５．１チャンネルなど２チャンネルを超える多数チャンネルの音声通信や音響処理に用いてもよい。
【０１６６】
(3) 上記実施の形態では、ＰＣ２８がエコー抑圧処理機能を備えているが、本開示の技術はこれに限定されない。図３２に示すように、ＰＣ２８の外部装置としてエコー抑圧処理装置１０６を備える音声通信装置１０８としてもよい。この場合、エコー抑圧処理装置１０６には既述のプロセッサ４４やメモリ４６と同様にプロセッサ１４４やメモリ１４６を備えればよい。メモリ１４６はプログラム記憶部１５４、データ記憶部１５６およびＲＡＭ１５８を備える。そして、プロセッサ１４４は入出力部１１０によりＰＣ２８と連係し、第２の実施の形態に係る既述のエコー抑圧処理機能１６を実現すればよい。
【０１６７】
斯かる構成とすれば、通信機能を備える既存のＰＣ２８にエコー抑圧処理装置１０６を接続すれば、既述のエコー抑圧処理を実行することができる。
【０１６８】
(4) 上記実施の形態では、音声通信装置としてＰＣ２８や音声通信装置１０８を例示したが、本開示の技術はこれに限定されない。図３３に示すように、既述のエコー抑圧機能を備えるＰＣ２８がカラオケ用音声通信装置１１２に適用してもよい。
【０１６９】
(5) 上記実施の形態では、音声通信装置としてＰＣ２８を例示したが、本開示の技術はスマートフォンなどの多機能端末のほか、電話会議システム、放送装置や拡声装置などの通信技術に適用してもよい。
【０１７０】
以上説明したように、本開示の技術に関し、好ましい実施の形態等について説明した。本開示の技術は、上記記載に限定されるものではない。特許請求の範囲に記載され、または発明を実施するための形態に開示された技術の要旨に基づき、当業者において様々な変形や変更が可能である。斯かる変形や変更が、本開示の技術の範囲に含まれることは言うまでもない。
【符号の説明】
【０１７１】
２  音響補正装置
４−１、４−２  チャンネル
６  入力系統
８  エコー抑圧処理部
１０−１、１０−２  スピーカ
１２  マイクロフォン
１４−１、１４−２  音響伝送路
１６  エコー抑圧処理機能
１８−１  第１の伝達関数決定機能
１８−２  第２の伝達関数決定機能
２０  伝達関数差決定機能
２２  伝達関数差適用機能
２４  エコー決定機能
２６  エコー減算機能
２８  ＰＣ
３０  本体部
３２  表示筐体
３４  ヒンジ部
３６  表示画面
３８−１、３８−２  放音孔
４０  収音孔
４４  プロセッサ
４６  メモリ
４８  ネットワーク送受信部
５０  オーディオ出力部
５２  オーディオ入力部
５４  プログラム記憶部
５６  データ記憶部
５８  ＲＡＭ
６０  ネットワークハブ
６２  モード切替え機能
６４  学習機能
６６  適用機能
６８  時間監視機能
７０  初期学習時間判定機能
７２  判定結果保持機能
７４−１、７４−２、７４−３  高速フーリエ変換機能
７６−１、７６−２  伝達関数決定機能
７８  学習処理機能
８０−１、８０−２  乗算機能
８２  推定エコー加算機能
８４  エコー減算機能
８６  逆高速フーリエ変換機能
８８  伝達関数差計算機能
９０  伝達関数差学習機能
９２  伝達関数差学習データベース
９４  適用処理機能
９６  伝達関数差読込み機能
９８  伝達関数差適用機能
Ａ１、Ａ２  音響信号
Ｈ１、Ｈ２  伝達関数
ΔＨ’  伝達関数差
Ｓ  音響入力
Ｅ１、Ｅ２  音響エコー
Ｅ１’、Ｅ２’、Ｅ２’’  推定エコー
Ｓｉｎ  入力音響信号（入力信号）
Ｓｏｕｔ  出力音響信号（出力信号）
１００  加速度センサ
１０２  環境変化検出機能
１０４  環境変化学習判定機能
１０６  エコー抑圧処理装置
１０８  音声通信装置
１１０  入出力部
１１２  カラオケ用音声通信装置
１４４  プロセッサ
１４６  メモリ
１５４  プログラム記憶部
１５６  データ記憶部
１５８  ＲＡＭ
【図１】
2015130606.tif 000029
【図２】
2015130606.tif 000030
【図３】
2015130606.tif 000031
【図４】
2015130606.tif 000032
【図５】
2015130606.tif 000033
【図６】
2015130606.tif 000034
【図７】
2015130606.tif 000035
【図８】
2015130606.tif 000036
【図９】
2015130606.tif 000037
【図１０】
2015130606.tif 000038
【図１１】
2015130606.tif 000039
【図１２】
2015130606.tif 000040
【図１３】
2015130606.tif 000041
【図１４】
2015130606.tif 000042
【図１５】
2015130606.tif 000043
【図１６】
2015130606.tif 000044
【図１７】
2015130606.tif 000045
【図１８】
2015130606.tif 000046
【図１９】
2015130606.tif 000047
【図２０】
2015130606.tif 000048
【図２１】
2015130606.tif 000049
【図２２】
2015130606.tif 000050
【図２３】
2015130606.tif 000051
【図２４】
2015130606.tif 000052
【図２５】
2015130606.tif 000053
【図２６】
2015130606.tif 000054
【図２７】
2015130606.tif 000055
【図２８】
2015130606.tif 000056
【図２９】
2015130606.tif 000057
【図３０】
2015130606.tif 000058
【図３１】
2015130606.tif 000059
【図３２】
2015130606.tif 000060
【図３３】
2015130606.tif 000061