(57)【特許請求の範囲】
【請求項１】
１個以上のマイクで取得した音情報における複数フレーム間のスペクトルの相関値を算出する相関算出部と、
前記音情報における少なくとも１つの対象フレームの音レベルを表す絶対量としてのパワー値を算出するパワー算出部と、
前記対象フレームの前記パワー値としきい値を比較し、前記パワー値が等しいか大きい場合に所定の更新速度を示す値を、前記パワー値が小さい場合に前記所定の更新速度より遅い更新速度を示す値を設定し、前記対象フレームを含むフレーム間の相関値を用いて、記録部に記録された雑音モデルの更新の要否を決定する更新決定部と、
前記決定にしたがって、前記対象フレームをどの程度反映させるかの設定された更新速度を示す値に基づいて前記音情報を前記雑音モデルに反映させる更新部とを備え、
前記更新決定部は、前記雑音モデル更新の要否を、前記相関値を相関値に関するしきい値と比較することにより決定し、前記相関値に関するしきい値は、前記対象フレームの前記パワー値によって決められる、雑音推定装置。
【請求項２】
少なくとも２個のマイクで取得した音情報から、前記少なくとも２個のマイク間のレベル差を算出するレベル差算出部と、
前記少なくとも２個のマイクで取得した音情報から、前記少なくとも２個のマイク間の位相差を算出する位相差算出部とをさらに備え、
前記更新決定部は、前記パワー値が前記しきい値に等しいか大きい場合には、前記レベル差が所定の範囲以内にある場合に、算出された前記位相差が位相差に関するしきい値を超える場合に前記遅い更新速度を示す値を設定する、請求項１に記載の雑音推定装置。
【請求項３】
前記更新決定部は、前記雑音モデル更新度合いを、前記対象フレームの前記パワー値に応じて決定する、請求項１に記載の雑音推定装置。
【請求項４】
前記更新部は、前記更新決定部が、前記雑音モデル更新が不要と判断した場合、前記対象フレームから一定時間内のフレームについては前記雑音モデルの更新を行わない、請求項１に記載の雑音推定装置。
【請求項５】
１個以上のマイクで取得した音情報における複数フレーム間のスペクトルの相関値を算出する相関算出処理と、
前記音情報における少なくとも１つの対象フレームの音レベルを表す絶対量としてのパワー値を算出するパワー算出処理と、
前記対象フレームの前記パワー値としきい値を比較し、前記パワー値が等しいか大きい場合に所定の更新速度を示す値を、前記パワー値が小さい場合に前記所定の更新速度より遅い更新速度を示す値を設定し、前記対象フレームを含むフレーム間の相関値を、前記対象フレームの前記パワー値によって決められる相関値に関するしきい値と比較することにより、記録部に記録された雑音モデルの更新の要否を決定する更新決定処理と、
前記決定にしたがって、前記対象フレームをどの程度反映させるかの設定された更新速度を示す値に基づいて前記音情報を前記雑音モデルに反映させる更新処理とを、コンピュータに実行させる雑音推定プログラム。
【請求項６】
コンピュータが、１個以上のマイクで取得した音情報における複数フレーム間のスペクトルの相関値を算出する相関算出工程と、
コンピュータが、前記音情報における少なくとも１つの対象フレームの音レベルを表す絶対量としてのパワー値を算出するパワー算出工程と、
コンピュータが、前記対象フレームの前記パワー値としきい値を比較し、前記パワー値が等しいか大きい場合に所定の更新速度を示す値を、前記パワー値が小さい場合に前記所定の更新速度より遅い更新速度を示す値を設定し、前記対象フレームを含むフレーム間の相関値を、前記対象フレームの前記パワー値によって決められる相関値に関するしきい値と比較することにより、記録部に記録された雑音モデルの更新の要否を決定する更新決定工程と、
コンピュータが、前記決定にしたがって、前記対象フレームをどの程度反映させるかの設定された更新速度を示す値に基づいて前記音情報を前記雑音モデルに反映させる更新工程と含む、雑音推定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マイクで取得した音に対する雑音抑圧処理（ノイズキャンセラ）に使用可能な雑音モデルを推定する技術に関する。
【背景技術】
【０００２】
従来、マイクで受音した音信号の雑音抑圧処理のため、入力された音信号の対象となる区間が音声区間か否か、あるいは定常か非定常かを判断する方法が開示されている。例えば、背音を表す信号を含むフレームが定常的か非定常的かを判定する方法として、スペクトルの変化が小さい場合の連続するフレーム数を計測し、その値がしきい値以上の場合に定常雑音と判定する方法がある（例えば、下記特許文献１参照）。
【０００３】
また、音声区間であるか否かの評価方法として、隣接するフレーム間のスペクトルの相関係数を用いる方法がある(例えば、下記特許文献２参照)。あるいは音響信号を自動判別するための定常性・非定常性の特徴量として相関係数を用いるものが開示されている(例えば、下記特許文献３参照)。
【０００４】
また、従来の雑音抑圧処理として、スペクトルから雑音バイアスの値を差し引くことで雑音を抑圧する方法（スペクトルサブトラクション法：例えば、下記特許文献４参照）、推定された雑音の目標値が、雑音抑圧後のスペクトルより大きな場合は、雑音抑圧後のスペクトルを目標値に補正することで、出力信号の歪みを抑制する方法（例えば、下記特許文献５参照）がある。このように雑音抑圧処理では、雑音の推定値が様々な用途で用いられる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特表平８−５０５７１５号公報
【特許文献２】国際公開第２００４／１１１９９６号パンフレット
【特許文献３】特開２００４−２４０２１４号公報
【特許文献４】米国特許第４，８９７，８７８号明細書
【特許文献５】特開２００７−１８３３０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ここで、推定された雑音を表すデータである雑音モデルを作成するには、入力された音のうち雑音区間における音情報を用いるのが有効である。そのため、例えば、入力信号における処理対象の区間が、定常か非定常か、あるいは音声区間か否かを判定し、その判定結果と入力信号に基づいて雑音モデルを推定する方法が考えられる。
【０００７】
しかしながら、母音区間（特に長母音）や小声で話している区間が複数連続する場合、これらの区間ではパワースペクトルは一定になる傾向がある。そのため、上記従来技術を用いて、このような母音区間や小声区間のパワースペクトルを計算して、定常雑音か否かを判定する場合、その区間が定常雑音と判断されることがある。この判断に従って、母音区間や小声区間の音声スペクトルを用いて雑音モデルを更新し、そのような雑音モデルを用いて雑音抑圧処理を実行すると、母音区間や小声区間における音声成分を雑音として抑圧してしまう。ゆえに、本発明は、雑音推定において、母音区間や小声区間のような音声区間が、雑音モデルに反映されるのを抑えることを目的とする。
【課題を解決するための手段】
【０００８】
本願開示の雑音推定装置は、１個以上のマイクで取得した音情報における複数フレーム間のスペクトルの相関値を算出する相関算出部と、前記音情報における少なくとも１つの対象フレームの音レベルを表すパワー値を算出するパワー算出部と、前記対象フレームのパワー値、および前記対象フレームを含むフレーム間の相関値を用いて、記録部に記録された雑音モデルに対して対象フレームをどの程度反映させるかを示す更新度合いまたは雑音モデルの更新の要否を決定する更新決定部と、前記決定にしたがって、前記音情報を前記雑音モデルに反映させる更新部とを備える。
【発明の効果】
【０００９】
本願明細書の開示によれば、雑音推定処理において、音声区間が、雑音モデルに反映されるのを抑えることができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、第１の実施形態にかかる雑音推定装置を含む雑音抑制装置の構成を示す機能ブロック図である。
【図２】図２は、雑音推定装置の動作例を示すフローチャートである。
【図３Ａ】図３Ａは、母音区間における連続する２フレームのスペクトルの例を示す図である。
【図３Ｂ】図３Ｂは、定常雑音区間における連続する２フレームのスペクトルの例を示す図である。
【図４Ａ】図４Ａは、更新度合いの計算の変形例を説明するための図である。
【図４Ｂ】図４Ａは、更新度合いの計算の変形例を説明するための図である。
【図５】図５は、第２の実施形態にかかる雑音推定装置を含む雑音抑制装置の構成を示す機能ブロック図である。
【図６】図６は、雑音推定装置の動作例を示すフローチャートである。
【発明を実施するための形態】
【００１１】
（第１の実施形態）
［雑音抑制装置２０の構成例］
図１は、第１の実施形態にかかる雑音推定装置１０を含む雑音抑制装置２０の構成を示す機能ブロック図である。図１に示す雑音抑制装置２０は、マイク１から音情報を取得し、雑音を抑制した音声信号を出力する装置である。雑音抑制装置２０は、例えば、携帯電話機や音声入力機能付きカーナビゲーション装置等に設けることができる。なお、雑音推定装置１０や雑音抑制装置２０の用途は上記例に限定されず、その他のユーザからの音声を受け付ける機能を有する機器に設けることができる。
【００１２】
雑音抑制装置２０は、音情報取得部２、フレーム処理部３、スペクトル算出部４、雑音推定装置１０および雑音抑圧部１１を備える。
【００１３】
音情報取得部２は、筐体に装着されたマイク１で受音されるアナログの信号をディジタル信号に変換する。ＡＤ変換の前にサンプリング周波数に従ったＬＰＦ（アンチエイリアジングフィルタと呼ぶ）をアナログの音信号に掛けておくことが好ましい。音情報取得部２は、ＡＤ変換器を含んでもよい。
【００１４】
フレーム処理部３は、ディジタル信号をフレーム化する。これにより、ディジタル信号で表される音波形は、時系列の複数のフレーム単位に分割されて切り出される。フレーム化処理は、例えば、予め決められたサンプル長(フレーム長と呼ばれる)の区間を取り出して分析する処理を、区間をオーバーラップさせながら分析する区間を一定長(フレームシフト長と呼ばれる)進めて繰り返し実行する処理とすることができる。一例として、フレーム長は２０〜３０ｍｓ程度、フレームシフト長は１０〜２０ｍｓとすることができる。取り出したフレームに対して分析窓と呼ばれる重みが掛けられる。分析窓としては、例えば、ハニング窓、ハミング窓等がよく使われる。なお、フレーム化処理は特定のものに限定されず、その他、音声情報処理や音響処理で用いられる種々の手法を用いることができる。
【００１５】
スペクトル算出部４は、音波形の各フレームのＦＦＴを実行することにより、各フレームのスペクトルを算出する。なお、スペクトル算出部４は、ＦＦＴの代わりに、フィルタバンクを用い、フィルタバンクにより得られる複数の帯域の波形を時間領域で処理してもよい。また、ＦＦＴの代わりに、他の時間領域から周波数領域への変換（ウェーブレット変換等）を用いてもよい。
【００１６】
このように、音情報取得部２、フレーム処理部３およびスペクトル算出部４により、マイク１が受音した音情報は、フレーム毎（分析窓毎）のスペクトルまたは波形のデータとして、雑音推定装置１０で利用可能になる。雑音推定装置１０は、各フレームのスペクトルまたは波形のデータを受け付けて、記録部１２に記録された雑音モデルを更新する。これにより、雑音モデルは、マイク１により取得された音情報に応じて更新される。
【００１７】
雑音抑圧部１１は、雑音モデルを用いて雑音抑圧処理を実行する。雑音モデルは、例えば、雑音スペクトルの推定値を表すデータであり、より具体的には、時間変化の小さい周囲雑音のスペクトルの平均的な値とすることができる。雑音抑圧部１１は、スペクトル算出部４で算出された各フレームのスペクトルの値から雑音モデルで示される雑音のスペクトルの値を引くことにより、雑音成分が除去されたスペクトルを算出することができる。雑音モデルには、時間変化の大きい非定常雑音や音声の情報は含まれないことが好ましい。このような雑音モデルを用いた雑音抑圧処理により、定常雑音が抑制された音声信号を出力することができる。なお、雑音モデルを用いた雑音抑制処理は上記例に限定されない。
【００１８】
［雑音推定装置１０の構成例］
雑音推定装置１０は、スペクトル変化算出部５、相関算出部６、パワー算出部７、更新決定部８および更新部９を備える。
【００１９】
スペクトル変化算出部５は、マイク１により取得された音における少なくとも一部の区間におけるスペクトルの時間変化を算出する。スペクトル変化算出部５は、例えば、スペクトル算出部４においてＦＦＴ処理によって得られた各フレームの複素スペクトルを、パワースペクトルに変換する。そして、前のフレームのパワースペクトルを記録しておき、現フレームのパワースペクトルとの差分を算出する。例えば、スペクトル変化算出部５は、１フレーム前に保存しておいたパワースペクトルと現フレームのパワースペクトルとの差分を算出する。これにより、フレーム間のパワースペクトルの変化を計算することができる。
【００２０】
更新決定部８は、スペクトル変化算出部５が算出したスペクトルの時間変化を基に、その区間の音を雑音モデルに反映させる更新を行うか否かを判定することができる。例えば、現フレームのスペクトルが、前のフレームのスペクトルに比べて所定値以上変化していると判断した場合、更新決定部８は、現クレームの情報を雑音モデルに反映させる必要はないと決定することができる。
【００２１】
相関算出部６は、１個以上のマイクで取得した音情報における複数フレーム間のスペクトルの相関値を算出する。相関値は、フレーム間のスペクトルの相関の度合いを表す値である。例えば、時間的に近接するフレーム間のスペクトルの相関係数を相関値として計算することができる。近接するフレーム間の相関係数に限られず、例えば、複数フレームにわたる相関係数の和または代表値（例えば、平均値）等を相関値として計算してもよい。
【００２２】
パワー算出部７は、少なくとも１つの対象フレームの音レベルを表すパワー値を算出する。これにより、現フレームのパワー値が求められる。フレームのパワー値は、例えば、フレームにおける音の時系列波形の振幅を用いて求めることができる。具体的には、フレーム内のサンプル値の二乗和をパワー値として計算することができる。なお、パワー値の計算は、これに限られない。パワー算出部７は、例えば、スペクトル算出部４により算出されたスペクトルを用いてフレームのパワー値を計算することもできる。
【００２３】
更新決定部８は、対象フレームのパワー値、および対象フレームを含むフレーム間の相関値とを用いて、記録部１２に記録された雑音モデルに対して対象フレームをどの程度反映させるかを示す更新度合いまたは雑音モデルの更新の要否を決定する。更新度合いは、例えば、更新速度を示す値、より具体的には、時定数で表すことができるが、これらに限定されない。更新部９は、更新決定部８による決定にしたがって、マイクから取得した音情報を雑音モデルに反映させる。
【００２４】
このように、更新決定部８は、対象フレームのパワー値および、対象フレームを含むフレーム間の相関値を用いるので、対象フレームの母音区間らしさを、フレームの音レベルに応じて適切に判断することができる。そのため、対象フレームの母音区間らしさに応じて、更新度合いまたは更新の有無を適切に制御することができる。そのため、母音や小声の区間の音情報が、誤って雑音モデルの更新に用いられるのを抑えることができる。その結果、推定雑音を表すデータである雑音モデルに、母音や小声の成分が含まれることが抑えられる。特に、雑音モデルを定常雑音モデルとする場合、母音や小声の区間は、誤って定常雑音区間と判断されて、定常雑音モデルの更新にして用いられる可能性が高いが、本実施形態１によれば、母音や小声の区間の音情報が定常雑音モデルへ反映されるのが効果的に抑えられる。
【００２５】
上記構成において、更新決定部８は、雑音モデル更新の要否を、前記相関値をしきい値と比較することにより決定することができる。そして、このしきい値は、パワー算出部７が算出した対象フレームのパワー値によって決めることができる。具体的には、更新決定部８は、現フレームパワーの値に従って、相関値を用いた雑音モデル更新要否を判断する処理のパラメータを制御することができる。これにより、例えば、低フレームパワー時（静かな環境・小声）と高フレームパワー時（雑音環境・通常発話時）それぞれの場合において、母音らしさを考慮した雑音モデル更新要否のための最適な際のパラメータ設定が可能となる。
【００２６】
このように、フレームのパワー値という絶対量を用いて雑音モデル更新の要否の基準となるしきい値を制御することで、定常雑音レベルやＳＮＲ等のような推定値を用いて雑音モデル更新を制御する場合に比べて、安定した雑音モデル推定が可能になる。すなわち、適切な雑音モデルを安定して推定することができる。
【００２７】
また、更新決定部８は、雑音モデルの更新度合いを、対象フレームのパワー値に応じて決定することもできる。具体的には、更新決定部８は、パワー算出部７が算出した現フレームのパワー値に従って、雑音モデルの更新速度（一例として時定数）を制御することができる。
【００２８】
このように、フレームのパワー値という絶対量を用いて更新度合いを制御することにより、安定した雑音モデルの推定が可能になる。例えば、低フレームパワー時（静かな環境・小声）と高フレームパワー時（雑音環境・通常発話時）それぞれの場合において最適な更新度合いでの雑音モデル更新が可能となる。その結果、安定に雑音モデルを推定することが可能となる。
【００２９】
［雑音推定装置１０の動作例］
図２は、雑音推定装置１０の動作例を示すフローチャートである。図２に示す例は、雑音推定装置１０が、マイク１で受音した音情報のフレーム単位のスペクトルを、スペクトル算出部４から受け取って、雑音モデルを更新する処理の一例である。
【００３０】
まず、スペクトル変化算出部５は、前フレームと現フレームとのパワースペクトルの差分（変化量）を計算する（Ｏｐ１）。パワースペクトルの差分の値がしきい値ＴPOW以下（Ｏｐ２でＹｅｓ）である場合に、現フレームは定常雑音の可能性ありと判断して、現フレームのパワースペクトルを用いて雑音モデルを更新するための処理（Ｏｐ３〜Ｏｐ９）が実行される。なお、このＯｐ２の判断処理では、例えば、長母音や小声の音声のように、スペクトル変化が小さい音声も定常雑音と判断される可能性がある。そのため、以降の処理Ｏｐ３〜Ｏｐ８では、これらのスペクトル変化の小さい音声は雑音モデルの更新に使われないよう制御される。一方、パワースペクトルの差分の値がしきい値ＴPOWを超える（Ｏｐ２でＮｏ）場合、すなわち、前フレームからの現フレームのスペクトルの変化が大きい場合は、現フレームは定常雑音でないと判断され、現フレームのパワースペクトルは雑音モデルの更新に使用されない。
【００３１】
Ｏｐ２でＹｅｓの場合、パワー算出部７が、現フレームのパワー値を算出する（Ｏｐ３）。現フレームのパワー値は、入力音のレベルを表す値である。例えば、パワー算出部７は、フレーム処理部３で切り出された現フレームの波形を用いてパワー値を計算することができる。具体例としては、下記のように、フレーム内のＮ個のサンプルをx(n)としてフレームのパワーを下記式（１）で求めることができる。
【００３２】
【数１】
0005870476.tif 000002
【００３３】
上記式において、例えばサンプリングレートが８ｋＨｚでフレーム長が３２ｍｓであればＮの値は２５６となる。ｄＢ単位に変換するのは、低フレームパワーか高フレームパワーかを判断するためのしきい値の調整を容易にするためである。
【００３４】
更新決定部８は、パワー算出部７が算出した現フレームのパワー値がしきい値Ｔｈ１より小さいか否かを判断する（Ｏｐ４）。しきい値Ｔｈ１は、現フレームが低フレームパワーか、高フレームパワーかを判断するためのしきい値の一例である。しきい値Ｔｈ１は、予め記録部１２に記録しておくことができ、例えば、５０ｄＢＡ（騒音レベルがＡ特性のときのフレームパワー値）に設定することができる。
【００３５】
更新決定部８は、現フレームのパワー値によって、雑音モデル更新処理におけるパラメータを制御する。具体的には、音モデル更新要否決定（母音検出）のためのしきい値、および更新度合いを制御するパラメータ（時定数と呼ぶ）が現レフ−ムのパワー値によって決定される。
【００３６】
下記表１は、雑音モデル更新処理におけるパラメータ値の一例である。低フレームパワー時は、現フレームのパワー値がしきい値Ｔｈ１より小さい場合であり、高フレームパワー時は、現フレームのパワー値がしきい値Ｔｈ１以上の場合とすることができる。相関係数のしきい値Ｔｈ２は、直前のフレームと現フレームとの相関係数を用いて母音区間か否かを判断して、雑音モデル更新の要否を決定するためのしきい値の一例である。時定数は、雑音モデルの更新速度を示す値の一例である。
【００３７】
【表１】
0005870476.tif 000003
【００３８】
低フレームパワー時は、雑音区間の相関係数も小声区間の相関係数も小さくなる傾向があるため、上記表１の例のように、しきい値Ｔｈ２を高フレームパワー時に比べて小さめに設定することが好ましい。逆に高フレームパワー時には、雑音区間の相関係数が大きくなるので、しきい値を低フレームパワー時よりも大きめに設定することが好ましい。しきい値Ｔｈ２、時定数の値は予め記録部１２に記録しておくことができる。
【００３９】
また、低フレームパワー時は定常雑音のレベルが小さい静かな環境であり、このような環境では音声区間を定常雑音区間と誤って更新したときの、雑音モデルの推定値に占める音声成分の割合が大きくなる。その結果、雑音モデルを用いた雑音抑圧で、音声を定常雑音とみなして抑圧することにより、雑音抑圧後の音声の歪みへ与える影響が大きくなる。そこで、上記表１の例のように、低フレームパワー時に雑音モデルの更新の時定数を大きくし、更新を遅くすることができる。時定数を大きくし、音声が定常雑音区間と誤って判断されたとしても、雑音モデルの推定値に占める音声の割合を減らすことができる。その結果、音声歪みの悪影響を抑えることができる。なお、時定数は予備実験に基づいて設定することができる。時定数が１に近いほど更新速度は遅くなる。
【００４０】
図２に示す例では、Ｏｐ４において、現フレームパワーがしきい値Ｔｈ１以上と判断された場合、すなわち、現フレームが高フレームパワー区間と判断されたときは、Ｔｈ２＝０．７、時定数＝０．９（通常）に設定される（Ｏｐ５）。現フレームが低フレームパワー区間と判断された場合（Ｏｐ４でＮｏの場合）、Ｔｈ２＝０．５、時定数＝０．９９９（通常より遅い更新速度）に設定される（Ｏｐ６）。
【００４１】
なお、本実施形態では、更新決定部８の処理の分岐により、現フレームパワーに応じた雑音モデル更新のパラメータの設定を行っているが、雑音モデル更新の制御方法はこれに限られない。例えば、記録部１２に、現フレームパワーの値と、相関係数および時定数の組とを対応付けるデータまたは関数を記録しておき、更新決定部８が、このデータを参照することにより、または、関数の処理を実行することにより、現フレームパワーに応じたパラメータを決定することができる。また、現フレームのパワー値の評価も上記例のように、低フレームパワーと高フレームパワーの２段階に限定されず、３段階以上で評価することもできる。
【００４２】
次に、相関算出部６は、直前のフレームと現フレーム間のスペクトルの相関係数を計算し、しきい値を超えれば母音区間、下回れば定常雑音区間と判断する（Ｏｐ７、Ｏｐ８）。相関係数は、例えば、下記式（２）によって算出することができる。
【００４３】
【数２】
0005870476.tif 000004
【００４４】
上記例では、相関係数は−１から１の値を取る。相関係数が１に近いほど相関が高く０に近いほど相関がないことを意味している。(相関係数が−１に近い場合には逆相関があると言うことができる)。図３Ａは、母音区間における連続する２フレームのスペクトルの例、図３Ｂは、定常雑音区間における連続する２フレームのスペクトルの例を示す図である。図３Ａおよび図３Ｂでは、線Ｐは前フレームのスペクトル、線Ｃは現フレームのスペクトルを示す。図３Ａに示す２フレーム間のスペクトルの相関係数は０．８４、図３Ｂに示す２フレーム間のスペクトルの相関係数は−０．０９である。このように、母音区間では複数フレームに渡ってスペクトルが比較的ゆっくり変化する音声特有の傾向があるため、連続する２フレームのスペクトルの形状は変化が少なく相関係数が0.84と高い値になっている。これに対し、定常雑音区間では、周囲からランダムに到来するため、連続する２フレーム間のスペクトル形状は似ておらず相関係数が０に近くなっている。
【００４５】
本実施形態では前フレームと現フレームとの相関を求めているが、フレームシフト長が短い場合(例えば、５ｍｓや１０ｍｓの場合)には、母音区間では２フレーム過去のフレームとの相関係数も大きくなるので、母音区間検出に２フレーム過去のフレームとの相関係数を使用することも可能である。このように、相関係数の算出に用いるフレームは、現フレームと直前のフレームに限定されない。
【００４６】
更新決定部８は、相関係数がＴｈ２より小さい場合（Ｏｐ８でＹｅｓ）、現フレームは雑音区間であると判断して、現フレームを用いて雑音モデルを更新することを決定する。相関係数がＴｈ２以上の場合（Ｏｐ８でＮｏ）、雑音モデルの更新はしないこと決定する。すなわち、更新決定部８は、Ｏｐ７で算出された現フレームと前フレーム間のスペクトルとの相関係数を、しきい値Ｔｈ２と比較し、相関係数がしきい値Ｔｈ２を下回れば定常雑音区間、上回れば母音区間と判断することができる。この相関係数は上記式を複数の周波数帯域について計算し、周波数帯域ごとにしきい値Ｔｈ２と比較することができる。しきい値も周波数帯域ごとに設けられてもよい。定常雑音区間と判定された周波数帯域についてのみ、セットされた時定数に従って雑音モデルの更新を行うようにすることができる。
【００４７】
Ｏｐ８でＹｅｓの場合、更新部９は、定常雑音区間と判定されたフレームのスペクトルを用いて、Ｏｐ５またはＯｐ６で決めたれた時定数で雑音モデルを更新する。例えば、時定数がαの場合には、現フレームのパワースペクトルの値Ｓ(ω)を使い、周波数ωにおける雑音モデルmodel(ω)を、周波数ごとに、下記式（３）を用いて更新することができる。この処理は、雑音モデルを平均化することに相当する。
【００４８】
【数３】
0005870476.tif 000005
【００４９】
なお、雑音モデルの更新処理は、上記式（３）を用いた処理に限られない。例えば、時定数αは周波数ごとに設定された値α（ω）を用いることができる。また、上記処理では、相関係数がしきい値Ｔｈ２を上回った場合には、母音区間として雑音モデルを更新しない構成になっているが、相関係数がしきい値を上回った場合には更新の時定数を1.0（実質更新は行われない値）に設定した上で、更新部９の処理を実行する構成にしてもよい。
【００５０】
上記のＯｐ１〜Ｏｐ９の処理は、全てのフレームについて終了するまで（Ｏｐ１０でＹｅｓと判断されるまで）繰り返される。すなわち、時間軸上に並ぶフレームごとに、順次上記Ｏｐ１〜Ｏｐ９の処理が実行される。
【００５１】
上記のように、図２に示す動作例では、Ｏｐ３で算出された現フレームパワーの値によって、相関係数を用いて雑音モデルの更新有無を判断する際のしきい値と、雑音モデルの更新速度とを制御している。これにより、雑音モデルへの母音区間の影響を抑えることができる。また、上記動作例では、スペクトルの相関係数による母音検出を雑音モデルの推定に単に用いるだけでなく、現フレームパワーによって雑音モデル更新要否判断のしきい値や雑音モデルの更新の時定数を切り替えている。これは、最適なしきい値や雑音モデルの更新度合いは、現フレームパワーの値によって異なるという知見に基づくものである。
【００５２】
雑音モデルの推定値やＳＮＲ（入力音と雑音モデルの差）を用いて、しきい値や雑音モデル更新処理を切り替える方法だと、推定値を用いて雑音を推定することになるので、安定動作を保証できない。これに対し、上記実施形態のように、現フレームパワーの絶対量を用いることにより、推定処理結果に依存しない安定な雑音推定処理が可能になる。
【００５３】
［変形例］
図４Ａおよび図４Ｂは、更新決定部８による更新度合いの計算の変形例を説明するための図である。図４Ａは、低フレームパワーの場合の、相関係数と時定数との関係の例を示す。図４Ｂは、高フレームパワーの場合の、相関係数と時定数との関係の例を示す。図４Ａおよび図４Ｂに示す例では、相関係数のしきい値が、２箇所(Ｔｈ２−１、Ｔｈ２−２)で設定されている。相関係数が上のしきい値Ｔｈ２−２以上の場合、更新決定部８は、更新の時定数を１．０として雑音モデルの更新を止める。相関係数が下のしきい値Ｔｈ２−１以下の場合、時定数は０．９９９に設定される。相関係数が下のしきい値Ｔｈ２−１と上のしきい値Ｔｈ２−２との間の場合は、更新決定部８は、相関係数の値に応じて連続的に更新の時定数が増加するように、時定数を決定する。このように、２つのしきい値Ｔｈ２−１、Ｔｈ２−２の間のグレーゾーンを設けることができる。
【００５４】
また、更新決定部８は、相関係数が更新しない領域の値になった場合に、例えば、後に続く６フレームは相関係数の値がＴｈ２−２を下回っても強制的に更新の時定数を１．０に設定することができる。これにより、更新決定部８が雑音モデル更新が不要と判断した場合に、更新部９が対象フレームから一定時間内のフレームについては雑音モデルの更新を行わないようにすることができる。
【００５５】
すなわち、更新決定部８は、相関係数を用いて現フレームが音声区間であると判定した場合、その現フレーム以降の数フレームに渡って強制的に音声区間の更新速度を雑音モデルの更新に適用することができる。これにより、音素と音素の渡りや子音区間等、母音らしさが出にくくなる音声区間が雑音モデルの更新に用いられることを抑えることができる。このように、いわゆるガードフレームを設けることにより、相関係数の値が小さくなる傾向にある、異なる母音間の渡りや、子音を定常雑音区間として誤って雑音モデルの更新に使用することが抑制される。
【００５６】
（第２の実施形態）
図５は、第２の実施形態にかかる雑音推定装置１０ａを含む雑音抑制装置２０ａの構成を示す機能ブロック図である。図５において、図１と同じブロックには同じ番号を付している。図５に示す雑音抑制装置２０ａは、２台のマイク１ａ、１ｂから受音された音情報を受け付ける。
【００５７】
マイク１ａ、１ｂの形態は特定のものに限定されないが、ここでは、一例として、マイク１ａ、１ｂが、携帯電話の正面と背面にマイクが装備されたマイクアレイで構成される場合について説明する。音情報取得部２は、２台のマイク１ａ、１ｂにて受音されたアナログ信号を受け取る。２台のマイク１ａ、１ｂそれぞれのアナログ信号は、それぞれアンチエイリアジングフィルタに掛られた後、ディジタル信号に変換される。フレーム処理部３およびスペクトル算出部４は、２台のマイク１ａ、１ｂで受音したそれぞれのディジタル信号それぞれに対して、上記第１の実施形態と同様に、フレーム化処理およびパワースペクトル算出処理を実行する。
【００５８】
［雑音抑制装置２０ａの構成例］
また、雑音推定装置１０ａは、２台のマイク１ａ、１ｂで取得した音情報から、マイク間のレベル差を算出するレベル差算出部１３をさらに備える。レベル差算出部１３は、例えば、スペクトル算出部４から、マイク１ａ、１ｂそれぞれのチャンネルのスペクトルを受け取り、それぞれのチャンネルについて、各フレームのパワースペクトルを計算する。これにより、マイク１ａ、１ｂそれぞれのチャンネルについて、フレーム毎に音レベルを計算することができる。マイク１ａのチャンネルの音レベルと、マイク１ｂのチャンネルの音レベルとの差分をフレーム毎かつ周波数毎に計算することでマイクのチャンネル間のレベル差をフレーム毎かつ周波数毎に計算することができる。あるいは、マイク１ａ、１ｂそれぞれのチャンネルにおける音情報の波形信号からフレーム毎に、周波数毎ではなく帯域全体(例えば8kHzサンプリングの場合には0〜4kHz)の音のレベルを計算することもできる。この場合、フレームの音のレベル計算は、上記第１の実施形態におけるパワー算出部７の現フレームのパワー値計算と同様にすることもできる。
【００５９】
更新決定部８ａは、レベル差算出部１３が算出したレベル差をさらに用いて、雑音モデルの更新度合いまたは更新要否を決定する。この構成により、更新決定部８は、２つのマイクが受音した音のレベル差に応じてマイク近傍で発声された音声らしさを判断することができる。そのため、例えば、このマイク近傍で発声された音声らしさに基づいて雑音モデルの更新速度を制御することができる。具体的には、更新決定部８ａは、２個のマイク間のレベル差がしきい値より大きい区間には、マイクの近傍で発声された音声の区間と判断して、その判断に応じて雑音モデル更新の度合いを示す時定数を適切に制御することができる。そのため、音声の成分が雑音モデルに含まれるのを抑えることができる。
【００６０】
さらに、雑音推定装置１０ａは、２台のマイク１ａ、１ｂで取得した音情報からマイク間の位相差を算出する位相差算出部１４をさらに備える。位相差算出部１４は、スペクトル算出部４から、マイク１ａ、１ｂそれぞれのチャンネルの複素スペクトルを受け取り、マイク１ａのチャンネルの複素スペクトルと、マイク１ｂのチャンネルの複素スペクトルとの位相差を、フレーム毎かつ周波数毎に、計算する。これにより、マイク１ａ、１ｂのチャンネル間の位相差スペクトルを算出することができる。位相差スペクトルから、例えば、音の到来方向（音源の方向）を周波数毎に判断することができる。
【００６１】
更新決定部８ａは、位相差算出部１４が計算した位相差をさらに用いて、雑音モデルの更新度合いまたは更新要否を決定する。更新決定部８ａは、例えば、位相差に基づいてユーザの口方向から発声された音声らしさを判定し、ユーザの口方向から発声された音声らしさに基づいて雑音モデルの更新速度を制御することができる。このように、２個のマイク間の位相差から得られる音声らしさに基づいて雑音モデルの更新の時定数を適切に制御することができる。その結果、雑音モデルにユーザの口方向から発声した音声成分が含まれることを抑えることができる。
【００６２】
図５に示す例では、レベル差算出部１３および位相差算出部１４は、マイク１ａおよびマイク１ｂ双方のチャンネルのスペクトルをそれぞれ受け取る。これに対して、パワー算出部７、スペクトル変化算出部５、相関算出部６および雑音抑制部１１は、マイク１ａまたはマイク１ｂいずれかのチャンネルのスペクトルを受け取って処理を行うことができる。例えば、携帯電話の場合は、マイク１ａ、マイク１ｂのうち携帯電話の正面に設けられたマイクのチャネルの信号のみを、パワー算出部７、スペクトル変化算出部５、相関算出部６および雑音抑制部１１で用いる構成とすることができる。
【００６３】
図５に示す例では、雑音推定装置１０ａは、レベル差算出部１３および位相差算出部１４の双方を備えているが、これらのうち少なくとも１つを備える構成であってもよい。また、更新決定部８ａは、パワー算出部７が算出したパワー値に応じて、更新度合いまたは前記更新要否の決定にレベル差および／または位相差をさらに用いるか否かを切り替える構成とすることもできる。これにより、例えば、現フレームパワー値に従って、近傍で発声された音声らしさとユーザの口方向から発声された音声らしさの情報を、雑音モデルの更新度合いの制御に使用するか否かを切り替えることが可能になる。その結果、低フレームパワー時（静かな環境・小声）と高フレームパワー時（雑音環境・通常発話時）それぞれの場合において最適な雑音モデルの更新が可能となる。ひいては、安定に雑音モデルを推定することが可能となる。
【００６４】
［雑音推定装置１０ａの動作例］
図６は、雑音推定装置１０ａの動作例を示すフローチャートである。図６において、図２に示す処理と同じ処理には同じ番号を付している。図６に示す動作は、図２に示す第１の実施形態の動作に対して、高フレームパワー時（Ｏｐ４でＹｅｓの場合）のユーザ音声検出処理（Ｏｐ４１〜Ｏｐ４４）が追加されたものになっている。
【００６５】
図６に示す例では、現フレームパワーがしきい値Ｔｈ１以下である場合、レベル差算出部１３がマイク間の音のレベル差を算出し（Ｏｐ４１）、更新決定部８ａは、２台のマイク間のレベル差の情報を用いて、現フレームの音声区間らしさを判断する（Ｏｐ４２）。
【００６６】
例えば、ユーザがマイク近傍で発声した場合、口に近い方のマイクと遠い方のマイクのレベルに差が生じる。これを利用して、Ｏｐ４２において、更新決定部８ａは、２マイク間にレベル差があれば、そのフレームのスペクトルは近傍音声として雑音モデルの更新に用いないようにする。
【００６７】
具体的には、マイク１ａのチャンネルの現フレームの音レベルと、マイク１ｂのチャンネルの現フレームの音とのレベル差がＴｈ３より大きく、かつＴｈ４より小さい場合（Ｏｐ４２でＹｅｓの場合）に、更新決定部８ａは、現フレームは音声区間ではないと判断することができる。Ｏｐ４２でＮｏの場合は、現フレームは、音声区間であると判断され、現フレームで雑音モデルを更新しないと決定される。ここで、２つのしきい値Ｔｈ３、Ｔｈ４（Ｔｈ３＜Ｔｈ４）が設けられている。例えば、Ｔｈ３は正面のマイク近傍での発声による音声区間であるか否かを判断するためのしきい値、Ｔｈ４は背面のマイク近傍での発声による音声区間であるか否かを判断するためのしきい値とすることができる。
【００６８】
Ｏｐ４２でＹｅｓの場合、位相差算出部１４がマイク間の位相差を算出し（Ｏｐ４３）、更新決定部８ａが、２台のマイク間の位相差の情報を用いて、現フレームの音声区間らしさを判断する（Ｏｐ４４）。
【００６９】
Ｏｐ４３、Ｏｐ４４の動作により、例えば、ある区間のフレームについて、マイク１ａ、１ｂそれぞれのチャンネル間の位相差から推定される音の到来方向がユーザの口方向である場合に、その区間のフレームのスペクトルはユーザ音声として雑音モデルの更新に用いないようにすることができる。具体的には、現フレームを含む区間におけるマイク１ａ、１ｂそれぞれのチャンネル間の平均位相差が、しきい値Ｔｈ５より大きい場合（Ｏｐ４４でＹｅｓの場合）、現フレームは雑音区間の可能性があると判断され、雑音モデルの更新処理（Ｏｐ５以降）が行われる。Ｏｐ４４でＮｏの場合は、現フレームは音声区間と判断され、現フレームでの雑音モデルの更新は行わないと決定される。例えば、Ｔｈ５はユーザの正面からの発声を検出するためのしきい値とすることができる。
【００７０】
なお、図６に示す例では、低フレームパワー時（Ｏｐ４でＮｏの場合）は、２マイク間のレベル差と位相差の情報によるユーザ音声検出処理（Ｏｐ４１〜Ｏｐ４４）を行わないように制御している。これにより、低フレームパワー時のユーザ音声が小声であるために、ＳＮＲが悪くレベル差や位相差が乱れやすくなり、安定にユーザ音声を検出できない状態となるのを避けることができる。
【００７１】
さらに図６に示す例では、レベル差算出部１３で算出されるレベル差および位相差算出部１４で算出される位相差スペクトルは、周波数毎に求められる。そのため、周波数毎にしきい値Ｔｈ３、Ｔｈ４およびＴｈ５と比較し、周波数毎に雑音モデルを更新するか否かを決定することができる。
【００７２】
このように、本実施形態によれば、２台のマイクからの音声情報から得られるユーザの口方向を示す位相差や、マイクと口の距離を示すレベル差を、音声区間の判定に使用することができる。その結果、雑音モデルの更新にユーザ音声成分が使われるのを抑えることができる。なお、マイクの数は２台に限られず、３台以上のマイクがある構成においても、同様に、マイク間の音レベル差や位相差を計算し、雑音モデルの更新制御に用いることができる。
【００７３】
［コンピュータ構成、その他］
上記第１および第２の実施形態における雑音抑制装置２０，２０ａ、および雑音推定装置１０，１０ａは、コンピュータを用いて具現化することができる。雑音抑制装置２０，２０ａ、や雑音推定装置１０，１０ａを構成するコンピュータは、少なくともＣＰＵ、ＤＳＰ（Digital Signal Processor）等のプロセッサ、ＲＯＭ、ＲＡＭ等のメモリを備える。上記の音情報取得部２、フレーム処理部３、スペクトル算出部４、雑音推定装置１０、雑音抑圧部１１、スペクトル変化算出部５、相関算出部６、パワー算出部７、更新決定部８，８ａおよび更新部９、レベル差算出部１３および位相差算出部１４の各機能は、ＣＰＵがメモリに記録されたプログラムを実行することによって実現することもできる。また、上記各機能をプログラムおよび各種データが組み込まれた１または２以上のＤＳＰにより実現することもできる。記録部１２は、雑音抑制装置２０，２０ａがアクセス可能なメモリによって実現することができる。
【００７４】
また、これらの各機能をコンピュータに実行させるためのコンピュータ読取可能なプログラムおよびそのプログラムを記録した記録媒体も本発明の実施形態に含まれる。この記録媒体は、一時的でないもの(non-transitory)であり、信号そのもののような一時的なメディア（transitory media）を含まない。
【００７５】
なお、雑音抑制装置２０，２０ａ、および雑音推定装置１０，１０ａが組み込まれた携帯電話やカーナビゲーションシステム等の電子機器も本発明の実施形態に含まれる。
【００７６】
上記第１および第２の実施形態によれば、スペクトルの時間変化を用いた手法だけでは判別が難しい母音区間や小声区間を判別して、雑音モデルの更新に使われないようにすることができる。そのため、雑音モデルを用いた雑音抑圧処理によって処理音声が歪むのを抑制することが可能となる。
【符号の説明】
【００７７】
１      マイク
２      音情報取得部
３      フレーム処理部
４      スペクトル算出部
１０    雑音推定装置
１１    雑音抑圧部
１２    記録部
１３    レベル差算出部
１４    位相差算出部
２０    雑音抑制装置
【図１】
0005870476.tif 000006
【図２】
0005870476.tif 000007
【図３Ａ】
0005870476.tif 000008
【図３Ｂ】
0005870476.tif 000009
【図４Ａ】
0005870476.tif 000010
【図４Ｂ】
0005870476.tif 000011
【図５】
0005870476.tif 000012
【図６】
0005870476.tif 000013