(58)【調査した分野】(Int.Cl.,DB名)
上記各帯域雑音推定装置が、上記瞬時帯域雑音パワー推定値を時間平滑化し、上記帯域雑音パワー推定値を得る平滑化手段をさらに具備することを特徴とする請求項1に記載の雑音推定装置。
上記尤度関数は、上記事後SNRと上記予測事後SNRが等しいときに最大となり、上記事後SNRと上記予測事後SNRの差が大きくなるにつれて0に収束することを特徴とする請求項1〜4のいずれかに記載の雑音推定装置。
上記事前確率は、上記事後SNRが非負に限定されていて、上記事後SNRが0のときに最大となり、上記事後SNRが大きくなるにつれて0に収束することを特徴とする請求項1〜6のいずれかに記載の雑音推定装置。
上記コンピュータが機能させられる上記各帯域雑音推定装置が、上記瞬時帯域雑音パワー推定値を時間平滑化する平滑化手段をさらに具備することを特徴とする請求項14に記載の雑音推定プログラム。
【背景技術】
【0002】
自然環境において雑音はいたる所に存在するため、一般に実世界で観測される音声は種々の発信元からの雑音を含む。雑音を含んで観測された入力音声から音声だけを強調させるために、様々な雑音抑圧方法が開発されている。これらのうちのほとんどは、抑圧すべき雑音を推定して、入力音声に含まれている雑音を抑圧する方法である。本発明は、雑音の推定に関するものであり、特に、周波数領域で雑音のパワーを推定しようとしたものである。
【0003】
もっとも単純な従来の雑音推定方法は、音声が存在しない区間で入力スペクトルを平均する方法である。しかし、この方法は事前に音声が存在しない区間を推定しなければならない。そのため、音声が存在する区間を推定する「音声区間検出(Voice Activity Detection:VAD)」という技術も盛んに開発されているが、完全なVADは未だ達成されていない。音声区間の推定を誤ると、推定雑音が目的音声を含んでしまうため、強調音声や残留雑音を歪ませるという問題が生じる。また、この方法は雑音区間でしか雑音を推定しないため、長い音声区間があると雑音の変化に追従できないという欠点もある。
【0004】
このような背景から、音声区間でも継続して雑音を推定する雑音推定方法が開発されている(非特許文献1、非特許文献2、特許文献1参照)。非特許文献1、非特許文献2及び特許文献1に記載の雑音抑圧方法を適用した雑音抑圧装置(以下、従来の雑音抑圧装置と呼ぶ)の機能的構成は、いずれも、
図5に示す機能ブロック図で表すことができる。
【0005】
従来の雑音抑圧装置100は、帯域分割手段101、K(Kは例えば256)個の帯域処理手段102
0〜102
K−1及び信号復元手段103を有する。帯域処理手段102
0〜102
K−1の添え字は帯域番号を表す。帯域分割手段101は、フィルタバンクに代表される任意の帯域分割手法又はフーリエ変換に代表される任意の周波数解析手法によって、入力音声(この明細書においては、適宜、各種信号や各種成分における「信号」や「成分」を省略して表現している)をK個の帯域に分割し、得られたK個の帯域入力音声は各帯域処理手段102
0〜102
K−1にそれぞれ与えられる。なお、入力音声等のデジタル信号は、サンプル単位で処理される他、適宜、10ms等のフレーム単位でも処理される。
【0006】
各帯域処理手段102
0〜102
K−1はそれぞれ、担当する帯域が異なるが、同様な処理を行うものである。帯域処理手段102(102
0〜102
K−1)は、
図6に示すように、帯域雑音推定手段201及び雑音抑圧手段202を有する。帯域雑音推定手段202は、帯域ごとに雑音のパワーを推定し、得られた帯域雑音パワーを雑音抑圧手段202に与える。雑音抑圧手段202は、帯域入力音声と帯域雑音パワーを用いて、帯域入力音声中の音声成分を強調し、得られた帯域強調音声を
図5の信号復元手段103に与える。信号復元手段103は、帯域分割手段101で用いた帯域分割手法又は周波数解析手法に対応する信号復元手法を用いて、帯域強調音声から時間波形を再構成し、得られた強調音声を出力する。
【0007】
以下、帯域雑音推定手段201が実行する従来の雑音推定方法(非特許文献1、非特許文献2及び特許文献1に記載の雑音抑圧方法)を詳述する。以下では、簡単のために、帯域入力音声のパワーを入力パワーと呼び、帯域雑音パワーを雑音パワーと呼び、帯域番号を省略することとする。
【0008】
非特許文献1に記載の雑音推定方法は、入力パワーの時間方向のピークが目的音声の存在を表す一方で、谷が平滑化した雑音パワーの推定に使えるという発見に基づいている。具体的には、現在から所定時間(T秒)過去までの入力パワーの最小値を、第1の雑音パワー推定値とする。しかし、第1の雑音パワー推定値はバイアスを有しており、真の雑音パワーよりも小さくなる性質を持つ。このバイアスは、第1の雑音パワー推定値の期待値から推定され、得られたバイアス推定値を用いて第1の雑音パワー推定値を補正して、第2の雑音パワー推定値(最終的な推定値)を得る。
【0009】
非特許文献2に記載の雑音推定方法は、目的音声と雑音の複素スペクトルの分布がいずれも平均0の複素正規分布に従うという仮説に基づいて、雑音の複素スペクトルの分散の最尤推定値を雑音パワー推定値とする。この仮説に基づくと、入力音声の複素スペクトルの分布は、音声の複素スペクトルの分散と雑音の複素スペクトルの分散の和を分散とする平均0の複素正規分布となる。ここに現在の入力が劣化音声と雑音のどちらであるかに関する隠れ変数を導入して、忘却係数を伴ったオンラインEM(Expectation Maximization)アルゴリズムを適用することで、雑音の複素スペクトルの最尤推定値を算出することができる。
【0010】
特許文献1に記載の雑音推定方法は、入力パワーに適切な重み係数を乗じて、得られた加重入力パワーを所定時間(T秒)分だけ記憶しておき、記憶された加重入力パワーの平均値を雑音パワー推定値とする。適切な重み係数は、現在の入力パワーを直前の雑音パワー推定値で除した事後SNR(SNRはSignal−to−Noise Ratio)によって算出される。具体的には、事後SNRが所定の値G1以下では重み係数を1とし、事後SNRがG1以上では事後SNRに反比例するように重み係数を設定し、事後SNRが所定の値G2以上では重み係数を0とする。また、重み係数が0の場合には、加重入力パワーは記憶しない。
【発明を実施するための形態】
【0027】
(A)各実施形態により本発明の目的を達成できる理由
第1の実施形態及び変形実施形態の説明に先立ち、各実施形態に至った考え方や、各実施形態により本発明の目的である雑音パワーを安定的に推定できる理由を説明する。
【0028】
なお、以下でも、引き続いて、帯域入力音声のパワーを入力パワー若しくは帯域入力パワーと呼び、帯域ごとに推定された雑音のパワーを雑音パワー若しくは帯域雑音パワーと呼び、基本的には帯域番号を付さないで説明するが、以下で説明する雑音推定方法は帯域ごとに行われることに注意する。すなわち、帯域ごとに行われる処理は同様であるが、入力される帯域入力音声や出力される雑音パワー推定値は帯域ごとで異なる値となっている。
【0029】
雑音推定方法において最も注意しなければならない点は、雑音推定値が目的音声を含まないようにすることである。仮に、雑音推定値が目的音声を含むと、例えば、後段の雑音抑圧処理によって得られる強調音声が歪んだり小さくなったりしてしまい、強調音声の明瞭度や単語了解度を向上させるという雑音抑圧処理の目的を果たせない。
【0030】
一方、雑音推定には、非定常な雑音も推定できる性能を求められることもある。しかし、非定常雑音と音声とを区別するのは難しいため、非定常雑音を推定する性能と雑音推定値が音声を含まない性能との間にはトレードオフの関係がある。それゆえ、今までは、安定性の高い雑音推定方法は定常雑音しか推定できず、非定常雑音を推定できる雑音推定方法は雑音推定値が音声を含んでしまって安定性が低くなる、という課題があった。
【0031】
そこで、各実施形態では、推定対象を定常雑音に限定することによって、より高い安定性を有する雑音推定を実現する。このために、最大事後確率(Maximum A Posteriori:MAP)推定の枠組みを用いる。ここで、雑音の定常性とは、雑音の確率分布(確率密度関数)が時間によって変化しないことを呼んでいる。
【0032】
後で雑音の定常性を導入するので、時刻tにおいて、過去の雑音パワーN
t−1、N
t−2、…が観測された条件の下で、現在の雑音パワーN
tの事後確率が最大となるように雑音パワーN
tを算出する問題を考える。但し、パワーは対数尺度の方が扱い易いので、これ以降は、帯域雑音対数パワー^N
t=10log
10N
tについて考える。ここで、帯域雑音対数パワーの単位がデシベルとなるような対数変換を行っているが、対数の底はネイピア数や2でも良く、10倍しなくても良く、10以外の他の任意の定数係数を乗じても良い。
【0033】
帯域雑音対数パワーN
tには、まだ、集音環境やマイク感度による自由度が残っている。これを正規化するために、ここでは帯域雑音対数パワーを直接扱うのでなく、帯域雑音対数パワーを帯域入力対数パワーから減じた(すなわち、雑音パワーで入力パワーを除した)事後SNRを使うこととする。
【0034】
推定対象である時刻tでの事後SNR^γ
tは、帯域入力対数パワーを^X
tとおくと、(1)式で表される。雑音の定常性を導入するために、時刻tの帯域入力対数パワー^X
tを所定時間だけ過去の帯域雑音対数パワー^N
t−mで減じた、(2)式で表される予測事後SNRγ
t|t−mを導入する。ここで、時間差mは任意であるが、直前の値(直前フレームの値)、すなわち、m=1の帯域雑音対数パワーN
t−1を用いるのが最良である。さらに、(3)式で表される過去の平均事後SNR ̄γ
t−1を導入する。
【数1】
【0035】
平均事後SNR ̄γ
t−1を導入する意図は、事後SNRの潜在的な分布が集音時の雑音レベルの大小の影響を受けることをモデルに組み込むためである。例えば、事後SNRが20dBや30dBとなることは、無響室のような雑音がほとんど存在しない環境ではよくあるが、工事現場のような音声がほとんど聞き取れないような劣悪な環境ではほとんど生じない。
【0036】
以上の3つの事後SNRを使うと、最大化すべき事後確率は、(4)式の左辺に記述しているように、予測事後SNR^γ
t|t−mと過去の平均事後SNR ̄γ
t−1とが確定している条件下で事後SNR^γ
tが生じる確率となり、これをベイズの定理で展開すると、(4)式の右辺が得られる。
【数2】
【0037】
(4)式の最大化は事後SNR^γ
tに対して行うので、右辺の分母は最大化には影響しない。また、右辺におけるp( ̄γ
t−1)は、集音時の雑音レベルの潜在的な確率を意味しているが、どのような環境で集音するかは不確定であるのが普通なので、一様分布を仮定することにする。これにより、3つの確率の乗算で表されている(4)式の右辺の分子における、前側の2つの確率の乗算値の最大化を図れば良い。さらに、MAP推定は、線形な事後確率よりも対数事後確率を最大化する方が簡単なケースが多いことも考慮する。このような考慮を加えることにより、事後SNR^γ
tの最適値を算出する評価関数J
map(^γ
t)を、(5)式で定義することとした。
【数3】
【0038】
(5)式の右辺第1項は、事後SNR^γ
tの対数尤度関数である。また、(5)式の右辺第1項は、現在(時刻t)の事後SNR^γ
tと、現在の帯域入力対数パワー^X
tを所定時間だけ過去の帯域雑音対数パワー^N
t−mで減じた事後SNR^γ
t|t−mの関係、言い換えると、現在の帯域雑音対数パワー^N
tと、時間差mだけ過去の帯域雑音対数パワー^N
t−mが生じた場合における現在の帯域雑音対数パワーの推定値^N
t|t−mの関係を表していることから、これは雑音の定常性を表している。条件に、1単位時間だけ過去の平均事後SNR ̄γ
t−1が含まれているが、対数尺度では雑音の定常性の特性は、過去の平均事後SNR ̄γ
t−1に依らず不変と考えられる(線形尺度で雑音パワーの時間変化量を考えると、過去の平均事後SNRと比例するが、対数尺度では対数雑音パワーの時間変化率を考えているためである)。従って、(5)式は、(6)式のように書き直すことができる。
【数4】
【0039】
(6)式の右辺第2項は、過去の平均事後SNR ̄γ
t−1を条件とした現在の事後SNR^γ
tの対数事前確率、すなわち、平均事後SNRが ̄γ
t−1である集音環境における現在の事後SNR^γ
tの出現確率を意味している。
【0040】
尤度関数及び事前確率は、互いの極端な最適化を抑制し是正する働きを持つ。定常性を表す尤度関数だけを使って最適化すると、最も高い定常性が得られる^γ
t=^γ
t|t−mが解となるので事後SNRが更新されなくなる。また、先天的な出現確率を表す事前確率だけを使って最適化すると、常に事前確率が最も高くなる^γ
tが解となるので定常性が考慮されなくなる。それに対して、(6)式によって最適化すると、定常性と先天的な出現確率の両方を満たそうとするため、極端ではない適切な解を得ることができる。
【0041】
今、(6)式の最適解が^γ
*tであるとする。現在の帯域入力(対数)パワー^Xtと共にこの最適解^γ
*tを(1)式に適用すると、(7)式に示すように、最適解を適用した帯域雑音対数パワー^N
*tが得られる。帯域雑音パワーN
tと帯域雑音対数パワー^N
tとの間には、上述したように、^N
t=10log
10N
tという関係があり、この関係式を(7)式に代入することにより、帯域雑音パワーの推定値(最適値)N
*tは、(8)式で表される。
【数5】
【0042】
ここで、(8)式は、帯域雑音対数パワー^N
tの単位がデシベルであることが前提となっているが、上述したように、対数変換を他の方法で行った場合には、底や定数倍の値などがその方法に対応した異なる式を、(8)式の代わりに使うこととなる。
【0043】
ところで、(8)式の帯域雑音パワーの推定値N
*tは、瞬時的な推定誤差を含んでいる((7)式の帯域雑音対数パワーの推定値^N
*tも同様)。必ずしも瞬時的な推定誤差の除去は必要ではないが、時間平滑化することによって、その推定誤差の影響を軽減することができる。そのため、MAP推定によって得られた帯域雑音パワーの推定値N
*tを帯域雑音パワーの瞬時推定値として時間平滑化し、最終的な帯域雑音パワーの推定値 ̄N
*tを得ることとした。時間平滑化方法は限定されないが、例えば、(9)式に示すような直前所定期間の帯域雑音パワーの瞬時推定値N
*tの平均値を求めるものであっても良く、また例えば、(10)式に示すような直前の平滑化された値 ̄N
*t−1と今回の帯域雑音パワーの最適値N
*t−1との重み付け加算値を求めるものであっても良い(αは重み付け係数)。
【数6】
【0044】
以上では、帯域雑音パワーの瞬時推定値N
*tを時間平滑化する場合を示したが、帯域雑音対数パワーの瞬時推定値^N
*tの段階で時間平滑化を行うようにしても良い。この場合には、時間平滑化により得られた帯域雑音対数パワーの推定値に対して、上述した(8)式を適用して線形尺度に変換して、帯域雑音パワーの推定値 ̄N
*tを得ることとなる。
【0045】
次に、(6)式に示す評価関数J
map(^γ
t)を規定する尤度関数と事前確率の具体的な関数形(後述する各実施形態の説明では確率モデル情報と呼んでいる)を考える。
【0046】
尤度関数p(^γ
t|t−m|^γ
t)は、(1)式及び(2)式を代入することにより、p(^X
t−^N
t−m|^X
t−^N
t)と書くことができる。この書き換えた尤度関数をp(^N
t−m|^N
t)と比較すると、一方の関数の帯域雑音対数パワー^N
t−m及び^N
tの符号を反転させて同じだけ平行移動させたものが他方の関数となっているから、確率密度関数の分布形状は同様であり、p(^γ
t|t−m|^γ
t)に代えてp(^N
t−m|^N
t)を考慮しても良いことが分かる。この関数p(^N
t−m|^N
t)は、現在の帯域雑音対数パワー^N
tが確定した条件の下での時間差m分(mフレーム)だけ過去の帯域雑音対数パワー^N
t−mの出現確率であるから、定常性を考慮すると、^N
t−m=^N
tで最も大きな確率となり、過去の帯域雑音対数パワー^N
t−mが現在の帯域雑音対数パワー^N
tから離れるほど確率は小さくなるべきである(言い換えると、|^N
t−m−^N
t|→∞でp(^N
t−m|^N
t)→0となるベきである)。すなわち、帯域雑音対数パワー^N
tの尤度関数p(^N
t−m|^N
t)として、左右対称の山形状の確率密度関数を適用すれば良い。
【0047】
このような左右対称の山形状の確率密度関数の代表は正規分布である。そこで、帯域雑音対数パワー^N
tの尤度関数(N
t−mの条件付き確率密度関数)p(^N
t−m|^N
t)を正規分布でモデリングすると、(11)式で表すことができる。(11)式において、σ
2は正規分布の分散パラメータであり、定常性の強さを表す。例えば、σ
2として42を適用できる。
【数7】
【0048】
また、より柔軟なモデルとして、尤度関数p(^N
t−m|^N
t)に、(12)式に示すような一般化正規分布を選択することも可能である。(12)式において、Γ(・)はガンマ関数であり、αとβは定常性の特性を決めるパラメータである。例えば、α=7.6、β=1.9を適用できる。
【数8】
【0049】
以上の2例以外にも、^N
t−m=^N
tで最も大きな確率となり、|^N
t−m−^N
t|→∞でp(^N
t−m|^N
t)→0となるような任意の確率密度関数を、尤度関数p(^N
t−m|^N
t)として選択することができる。
【0050】
事後SNRで表現される尤度関数p(^γ
t|t−m|^γ
t)は、(11)式又は(12)式の変数(帯域雑音対数パワーの部分)^N
t−m−^N
tを、(13)式のように変形することによって得ることができる。
【数9】
【0051】
次に、(6)式に示す評価関数J
map(^γ
t)を規定する事前確率について考察する。すなわち、過去の平均事後SNR ̄γ
t−1を条件とした現在の事後SNR^γ
tの事前確率p(^γ
t| ̄γ
t−1)について考察する。
【0052】
第1に、(1)式で表される現在の事後SNR^γ
tの取り得る値の範囲について考察する。入力音声は、音声と雑音の両方を含んでいるので帯域入力対数パワー^X
tは帯域雑音対数パワー^N
tより小さくならないので、事後SNR^γ
tは非負である。第2に、音声のスパース性(出現がまばらである性質)について考察する。一般に、音声の時間周波数表現はスパースであることから、帯域入力対数パワー^X
tが帯域雑音対数パワー^N
tと等しくなる頻度が高いため、出現確率が一番高いのは、事後SNR^γ
tが0(dB)のときである。第3に、高SNRの出現確率について考察する。音声の大きさは有限であるから帯域入力対数パワー^X
tも有限であり、一方、雑音は、音声に比してスパース性が弱いために小さな値を取り難くなるので、事前確率p(^γ
t| ̄γ
t−1)は^γ
t→∞で0に収束する。
【0053】
以上の3つの考察より、過去の平均事後SNR ̄γ
t−1を条件とした現在の事後SNR^γ
tの事前確率p(^γ
t| ̄γ
t−1)の候補の一つとして、(14)式に示す指数分布を選ぶことは自然である(但し、後述するように指数分布に限定されない)。
【数10】
【0054】
(14)式において、λ
tは分布の広がりを表すパラメータであり、λ
tが小さいほど分布の広がりは大きい。平均事後SNR ̄γ
t−1が大きくなるほど現在の事後SNR^γ
tも大きな値を取り易くなるから、パラメータλ
tは平均事後SNR ̄γ
t−1に反比例するか、平均事後SNR ̄γ
t−1と負の相関を持つように決定する。例えば、パラメータλ
tを(15)式に従って算出する。
【数11】
【0055】
以上では、事前確率p(^γ
t| ̄γ
t−1)として指数分布を適用可能であることを説明したが、指数分布以外にも、上述した3つの考察が示す条件を満たす任意の確率密度関数を事前確率として選択することができる。例えば、ガンマ分布や片側正規分布や、より柔軟な片側一般化正規分布を適用できる。
【0056】
次に、(6)式に示す評価関数J
map(^γ
t)を最大化する事後SNR^γ
tの最適解^γ
*tを求める方法を説明する。最適解^γ
*tは、評価関数J
map(^γ
t)を最大化する現在の事後SNR^γ
tであるから、(6)式の右辺を現在の事後SNR^γ
tで微分した式が0となるような現在の事後SNR^γ
*tを求めれば良い。
【0057】
(6)式に示す評価関数J
map(^γ
t)における尤度関数に(11)式に示す正規分布を適用し、事前確率に(14)式に示す指数分布を適用した場合、最適解^γ
*tは、(16)式のように求めることができる。また、(6)式に示す評価関数J
map(^γ
t)における尤度関数に(12)式に示す一般化正規分布を適用し、事前確率に(14)式に示す指数分布を適用した場合、最適解^γ
*tは、(17)式のように求めることができる。(16)式及び(17)式において、max{a,b}はaとbの大きい方を選択する関数であり、第1の考察で説明した非負を実現するために導入した関数である。
【数12】
【0058】
いずれの場合も、予測事後SNR^γ
t|t−mからある値を減じたものが最適解^γ
*tとなっている。すなわち、(16)式においては(19)式のように、(17)式においては(20)式のように係数^r
tを決めると、(16)式及び(17)式は共に(21)式のように表現することができる。なお、係数^r
tは(18)式に示すように、係数r
tの対数である。
【数13】
【0059】
この(21)式と上述した(7)式とより、帯域雑音対数パワーの瞬時推定値^N
*tは(22)式によって算出でき、この(22)式と、対数尺度から線形尺度への変換式(例えば、(18)式参照)とから、帯域雑音パワーの瞬時推定値N
*tは(23)式によって算出できる。(22)式及び(23)式において、min{a,b}はaとbの小さい方を選択する関数である。
【数14】
【0060】
(23)式から、帯域雑音パワーの瞬時推定値は、過去の平均事後SNRに対して最適な割合で常に増大するが、帯域入力パワーより大きくなることはないことが分かる。増大の継続と帯域入力パワーを上限としていることで、集音環境が少しずつ変化する場合や雑音が急激に小さくなった場合には速やかに追従することができる。一方、雑音が急激に大きくなった場合には、環境の変化直後は平均事後SNRが大きくなるために追従が遅れるが、雑音パワー瞬時推定値を増大させ続けることで次第に環境に適応していくことができる。
【0061】
(23)式は滑らかでないmin関数を含むため、推定値に小刻みな変動が生じて聴感上不自然になる恐れがある。そのため、上述した(9)式や(10)式に示したように、これを時間平滑化することが好ましく、時間平滑化することによりさらに自然で安定な帯域雑音パワーの推定値を得ることができる。
【0062】
(B)第1の実施形態
以下、本発明による雑音推定装置、方法及びプログラムの第1の実施形態を、図面を参照しながら説明する。
【0063】
(B−1)第1の実施形態の構成
第1の実施形態の雑音推定装置は、異なる帯域入力音声が入力される帯域分割数の帯域雑音推定装置を有する。各帯域雑音推定装置は同様な機能的な構成を有する。ここで、各帯域雑音推定装置若しくは雑音推定装置は、ハードウェアで構成することも可能であり、また、CPUが実行するソフトウェア(帯域雑音推定プログラム若しくは雑音推定プログラム)とCPUとで実現することも可能であるが、いずれの実現方法を採用した場合であっても、同様な機能ブロック図で表すことができる。
【0064】
図1は、第1の実施形態の雑音推定装置を構築する、ある一つの帯域雑音推定装置の構成を示す機能ブロック図である。
【0065】
図1において、第1の実施形態の帯域雑音推定装置300は、パワー算出手段301、確率モデル保持手段302、事後確率最大化手段303及び平滑化手段304を有する。
【0066】
第1の実施形態の雑音推定装置へ帯域分割されていない入力音声が入力される場合であれば、図示しない帯域分割手段によって帯域を分割し、帯域入力音声をそれぞれ帯域雑音推定装置300(300
0〜300
K−1)へ与える。また、前段の処理装置から第1の実施形態の雑音推定装置へ帯域別の入力音声が与えられる場合であれば、入力された帯域入力音声をそれぞれ帯域雑音推定装置300(300
0〜300
K−1)へ与える。
【0067】
図示しない帯域分割手段は、従来の技術の項で説明した帯域分割手段101と同様なものであり、例えば、デジタル信号でなる入力音声をフレーム単位に帯域分割するものである。帯域分割手段は、入力音声の帯域を等分割するものであっても良く、入力音声の帯域を不等分分割するものであっても良い。不等分分割には、直交ミラーフィルタ(QMF)やウェーブレット変換等を適用することができる。
【0068】
各帯域雑音推定装置300はそれぞれ、自己に割り当てられた帯域入力音声に対し、上述の考え方に従って、その帯域入力音声に含まれている雑音を推定するものである。
【0069】
帯域雑音推定装置300のパワー算出手段301は、帯域入力音声のパワーを算出し、得られた帯域入力パワーを事後確率最大化手段303に与えるものである。パワーの算出方法は限定されるものではない。例えば、帯域入力音声の現在から所定時間過去までのサンプル値の2乗和や絶対値和を帯域入力パワーとする方法を適用することができる。また、帯域入力音声の値を正値に変化する他の方法をパワー算出方法として適用するようにしても良い。
【0070】
確率モデル保持手段302は、事前に設計された雑音の定常性に関する確率モデルの情報(以下、単に確率モデルと呼ぶ)を保持しておくものであり、保持している確率モデルを事後確率最大化手段303に与える。第1の実施形態における確率モデルは、MAP推定に基づいたモデルであり、上述した考え方に従ったモデルである。確率モデルの設計例については、動作の説明の項で明らかにする。
【0071】
事後確率最大化手段303は、現在の帯域入力パワーと、平滑化手段304から出力された所定時間だけ過去(例えば、数フレーム前)の帯域雑音パワーの推定値、及び、確率モデル保持手段302に保持されている確率モデルに基づいて、帯域雑音パワーのMAP推定を行い、得られた瞬時帯域雑音パワー推定値(帯域雑音パワー瞬時推定値)を平滑化手段304に与えるものである。
【0072】
平滑化手段304は、瞬時帯域雑音パワー推定値を時間平滑化し、得られた帯域雑音パワー推定値を、事後確率最大化手段303にフィードバックすると共に、当該帯域雑音推定装置300の出力として送出するものである。平滑化方法は、限定されるものではないが、例えば、(9)式に示したように直前所定期間の瞬時帯域雑音パワー推定値の平均値を求めるものであっても良く、また例えば、(10)式に示したように直前の平滑化された値と今回の瞬時帯域雑音パワー推定値との重み付け加算値を求めるものであっても良い。
【0073】
なお、第1の実施形態は、帯域別の雑音パワー推定値の組を、後段の処理部が利用する場合(例えば、雑音抑圧)を想定しているが、帯域別の雑音パワー推定値を統合した後、時間領域の信号に変換して後段の処理部へ与えるようにしても良い。
【0074】
(B−2)第1の実施形態の動作
次に、第1の実施形態の雑音推定装置の動作(雑音推定方法)を説明する。
【0075】
第1の実施形態の雑音推定装置に入力された入力音声は、図示しない帯域分割手段において帯域分割され、得られたK個の帯域入力音声はそれぞれ、対応する各帯域処理手段300(300
0〜300
K−1)に与えられる。
【0076】
各帯域入力音声に含まれている雑音は、帯域入力音声に対応する帯域雑音推定装置300
0〜300
K−1によって推定され、得られた帯域雑音パワー推定値がそれぞれ、帯域雑音推定装置300
0〜300
K−1から出力される。
【0077】
各帯域雑音推定手段300内では、以下のような処理が実行される。
【0078】
帯域入力音声はパワー算出手段301に与えられ、パワー算出手段301によって帯域入力音声のパワーが算出され、得られた帯域入力パワーが事後確率最大化手段303に与えられる。
【0079】
事前に設計された雑音の定常性に関する確率モデル(の情報)は、確率モデル保持手段302に保持されており、その確率モデルは事後確率最大化手段303に与えられる。
【0080】
第1の実施形態における確率モデルとは、上述した(6)式における尤度関数p(^γ
t|t−m|^γ
t)と事前確率p(^γ
t| ̄γ
t−m)の関数形と、これら関数のパラメータとを意味する。
【0081】
第1の実施形態において、時間差mは、1単位時間、すなわちm=1とする。
【0082】
尤度関数p(^γ
t|t−1|^γ
t)は、確率密度関数としてとらえた場合には現在の事後SNRが確定した条件の下で予測事後SNRが観測される確率であり、現在の事後SNRを変数とする。該尤度関数には、予測事後SNRが現在の事後SNRと等しいときに最大となり、予測事後SNRが現在の事後SNRから離れるほど0に近づくような任意の確率密度関数を選択することができるが、ここでは、例として、上述した(11)式に示した平均値が0の正規分布を適用する。正規分布は分散パラメータσ
2を有しており、例えば、分散パラメータσ
2として42を適用できる。
【0083】
事前確率p(^γ
t| ̄γ
t−1)は、過去の平均事後SNRの下で現在の事後SNRが観測される潜在的な確率である。該事前確率には、現在の事後SNRが非負で定義され、現在の事後SNRが0dBのときに最大となり、現在の事後SNRが大きくなるほど0に近付くような任意の確率密度関数を選択することができるが、ここでは、例として、上述した(14)式に示した指数分布を適用する。指数分布は、速度パラメータλ
tを有している。速度パラメータλ
tは過去の平均事後SNRにより変化する。速度パラメータλ
tの算出方法は、過去の平均事後SNRと反比例の関係になる、又は、負の比例関係になる任意の方法を選択することができるが、一例として、上述した(15)式に従って算出されたものを適用する。
【0084】
確率モデルは任意のタイミングで変更することが可能である。また、その変更は、分散パラメータσ
2の値や(15)式の数値を更新するだけでも良く、速度パラメータλ
tの算出方法を変更しても良く、尤度関数p(^γ
t|t−1|^γ
t)や事前確率p(^γ
t| ̄γ
t−1)の関数形を変更しても良く、時間差mを変更しても良い。
【0085】
事後確率最大化手段303において、現在の帯域入力パワー、所定時間過去の帯域雑音パワー推定値、及び、確率モデル保持手段302に保持されている確率モデルに基づいて、雑音パワーのMAP推定が実行され、得られた雑音パワー瞬時推定値が平滑化手段304に与えられる。
【0086】
図2は、第1の実施形態における事後確率最大化手段303の詳細構成を示す機能ブロック図である。
【0087】
事後確率最大化手段303は、帯域雑音パワー推定値遅延部401、帯域入力パワー遅延部402、事後SNR算出部403、平滑化部404、係数決定部405、乗算部406及び比較部407を有する。
【0088】
パワー算出手段301から与えられた帯域入力パワーは、乗算部407に与えられると共に、帯域入力パワー遅延部402を介して単位処理時間(例えば1フレーム時間)だけ遅延された後に事後SNR算出部403に与えられる。また、平滑化手段304から与えられた帯域雑音パワー推定値は、帯域雑音パワー推定値遅延部401を介して単位処理時間だけ遅延された後に事後SNR算出部403及び乗算部406に与えられる。さらに、確率モデル保持手段302から与えられた確率モデルは係数決定部405に与えられる。
【0089】
事後SNR算出部403においては、前回入力された帯域入力パワーが前回算出された帯域雑音パワー推定値で除算され、これにより、前回の事後SNRが算出され、平滑部404に与えられる。
【0090】
平滑化部404には、事後SNR算出部403から与えられた過去の事後SNRが少なくとも1つ以上記憶されている。そして、平滑化部404において、記憶されている過去の事後SNRが適用されて、新たに与えられた前回の事後SNRが時間平滑化され、得られた平均事後SNRが係数決定部405に与えられる。
【0091】
平滑化部404による時間平滑化の方法は限定されるものではなく、任意の方法を適用することができる。時間平滑化の代表的な方法には、移動平均法と時定数フィルタ(リーク積分とも呼ばれる)があるが、ここでは、例として移動平均法を使うこととする。現在の時刻をtとして、T個の過去の事後SNRを使う場合、現在の事後SNRをγ
tと書くことにすると、移動平均法による前回までの平均事後SNRγ
t−1は(24)式で定義される。例えば、Tは20とする。なお、(24)式の代わりに(25)式の更新則を使うと、加減算を(T−3)回だけ減らせて効率を向上させることができる。
【数15】
【0092】
係数算出部405においては、確率モデル保持手段302から与えられた確率モデルのパラメータ(第1の実施形態の場合σ
2及びλ
t)と平滑化部404から与えられた平均事後SNR ̄γ
t−1とに基づいて、雑音増幅係数r
tが算出され、得られた雑音増幅係数r
tが乗算部406に与えられる。第1の実施形態では、確率モデルにおける尤度関数として正規分布を適用しているので、雑音増幅係数r
tは、上述した(19)式によって算出される。
【0093】
乗算部406においては、帯域雑音パワー推定値遅延部401から与えられた前回の帯域雑音パワー推定値に、係数決定部405から得られた雑音増幅係数r
tが乗算されて帯域雑音パワー暫定推定値が算出し、得られた帯域雑音パワー暫定推定値が比較部407へ与えられる。
【0094】
比較部407においては、パワー算出手段301から与えられた現在の帯域入力パワーと乗算部406から与えられた帯域雑音パワー暫定推定値とが比較され、小さい方が帯域雑音パワー瞬時推定値として選択され、得られた雑音パワー瞬時推定値が平滑化手段304へ与えられる。すなわち、(23)式の演算が比較部407によって実行されている。
【0095】
図1に戻り、平滑化手段304には、事後確率最大化手段303から与えられた帯域雑音パワー瞬時推定値が少なくとも1つ以上記憶されている。そして、平滑化手段304において、記憶されている帯域雑音パワー瞬時推定値が適用されて、新たに与えられた帯域雑音パワー瞬時推定値が時間平滑化され、得られた雑音パワー推定値は事後確率最大化手段303にフィードバックされると共に当該帯域雑音推定装置300からの出力として送出される。
【0096】
平滑化手段304による時間平滑化の方法も限定されるものではなく、任意の方法を適用して良い。例えば、移動平均法を適用することができる。
【0097】
(B−3)第1の実施形態の効果
第1の実施形態によれば、定常な帯域雑音パワーを安定的に推定することができる。仮に、第1の実施形態の雑音推定装置を、雑音抑圧装置(
図5及び
図6参照)に組み込んだ場合には、強調音声の歪みを小さく抑えることができる。
【0098】
(C)第2の実施形態
次に、本発明による雑音推定装置、方法及びプログラムの第2の実施形態を、図面を参照しながら説明する。
【0099】
第2の実施形態の雑音推定装置も、異なる帯域入力音声が入力される帯域分割数の帯域雑音推定装置を有する。
図3は、第2の実施形態の雑音推定装置を構築する、ある一つの帯域雑音推定装置の構成を示す機能ブロック図であり、第1の実施形態に係る
図1との同一、対応部分には同一、対応符号を付して示している。
【0100】
図3において、第2の実施形態の帯域雑音推定装置300Aも、パワー算出手段301、確率モデル保持手段302、事後確率最大化手段303A及び平滑化手段304を有し、事後確率最大化手段303Aが第1の実施形態の事後確率最大化手段303と異なっている。
【0101】
図4は、第2の実施形態における事後確率最大化手段303Aの詳細構成を示す機能ブロック図であり、第1の実施形態に係る
図2との同一、対応部分には同一、対応符号を付して示している。
【0102】
図4において、事後確率最大化手段303Aは、帯域雑音パワー推定値遅延部401、帯域入力パワー遅延部402、事後SNR算出部403、係数決定部405、乗算部406及び比較部407を有する。
【0103】
すなわち、第2の実施形態における事後確率最大化手段303Aは、第1の実施形態における事後確率最大化手段303に比較すると、平滑部404が設けられていない点が異なる。従って、事後SNR算出部403から出力される前回の事後SNRが係数決定部405に直接与えられるようになされており、係数決定部405において前回の事後SNRが適用されて雑音増幅係数r
tが決定される。
【0104】
以上の点を除けば、第2の実施形態の帯域雑音推定装置300Aは、第1の実施形態の帯域雑音推定装置300と同様である。
【0105】
前回の事後SNRを時間平滑化しないことは、第1の実施形態の説明で言及した時間平滑化の演算式である(24)式若しくは(25)式のTの部分に「1」を代入したことと同じである。これは、前回までの平均事後SNRの代表として、前回の事後SNRを選んでいることを意味する。平均事後SNRは、現在の集音環境を推測するパラメータの一つであり、時間平滑化を行わないことで情報量が減少し集音環境の推定値という意味での推定精度は低下するが、これにより生じる推定誤差は後段の平滑化手段304で低減されるので、その影響は小さい。一方で、時間平滑化しないことは処理量低減とリソース削減のメリットを生じる。
【0106】
第2の実施形態によれば、より少ない処理量とリソースで定常な雑音パワーを安定的に推定することができる。
【0107】
(D)他の実施形態
以上でも、種々の変形実施形態に言及したが、さらに、以下に例示するような変形実施形態を挙げることができる。
【0108】
上記各実施形態においては、全ての帯域の確率モデル保持手段が同じ確率モデルの情報を保持しているものを示したが、帯域によって、確率モデルの情報が異なっていても良い。例えば、尤度関数に正規分布を適用する場合であっても、分散パラメータσ
2として、帯域毎に異なる値を設定するようにしても良い。また、尤度関数として、帯域毎に、正規分布を適用するか一般化正規分布を適用するかを設定するようにしても良い。さらに、事前確率の確率密度関数に指数分布を適用する場合において、パラメータλ
tとして、帯域毎に異なる値を設定するようにしても良い。さらにまた、事前確率の確率密度関数として、帯域毎に、指数分布、ガンマ分布、片側正規分布、片側一般化正規分布等のいずれを適用するかを設定するようにしても良い。
【0109】
上記各実施形態においては、帯域雑音推定装置300、300Aにおける確率モデル保持手段302が1個の確率モデル情報を保持している場合を示したが、複数の確率モデル情報を保持しておき、適用するものを選択できるようにしても良い。例えば、利用者の選択操作に応じて、適用する確率モデル情報を定めるようにしても良い。また例えば、帯域入力パワーについての予め定められている統計量を複数算出し、算出した統計量に基づいて、各統計量が属する段階の組合せ(適用条件)と確率モデル情報とを対応付けたテーブルをアクセスして適用する確率モデル情報を定めるようにしても良い。
【0110】
上記各実施形態においては、分割された全ての分割帯域で雑音推定を行うように説明したが、雑音推定する分割帯域が一部であっても良い。例えば、高周波数寄りの分割帯域、低周波数寄りの分割帯域、中央の分割帯域、全分割帯域等の中から、利用者が雑音推定する分割帯域を選択できるようにしても良い。
【0111】
第1の実施形態においては、各帯域雑音推定装置300が平滑化手段304を備える場合を示したが、平滑化手段304を省略するようにしても良い。