説明

雑音抑圧装置、雑音抑圧方法およびプログラム

【課題】入力信号から雑音信号の推定を行って雑音信号を選択的に低減する際の音質の向上を図る。
【解決手段】雑音抑圧ゲイン算出部32は、事後SNRと事前SNRとから、各帯域の雑音抑圧ゲインを算出する。事前SNR算出部31は、直前フレームおよび現在フレームの事後SNRと、直前フレームの雑音抑圧ゲインと、重み係数α(k,b)を用いて、各帯域の事前SNRを算出する。α算出部30で算出される各帯域の重み係数α(k,b)は、信号の状態に応じて適応的に変化させられる。つまり、重み係数α(k,b)は、雑音と判定される帯域bにあっては最大値αMAX(b)に近づいていくように更新され、非雑音と判定される帯域bにあっては直ちに最小値αMIN(b)とされる。これにより、雑音抑圧ゲイン生成部15で算出される各帯域の雑音抑圧ゲインの精度(追従性)を高めることができ、音質の向上を図ることができる。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、雑音抑圧装置、雑音抑圧方法およびプログラムに関し、特に、入力信号から雑音信号の推定を行って雑音信号を選択的に低減した出力信号を得る雑音抑圧装置等に関する。
【背景技術】
【0002】
近年、VoIP(Voice over Internet Protocol)や携帯電話などの通信機器やICレコーダなど、マイクロホンで収音した人間の音声をAD(Analog to Digital)変換し、デジタル信号として伝送・記録したうえで再生を行う電子機器が広く普及している。これらの電子機器の使用時には周囲環境から発せられる音がマイクに混入し音声を聞き取る妨げとなる。
【0003】
そこで、従来、携帯電話などにおいては、入力信号から雑音信号の推定を行い、雑音信号を選択的に低減する雑音抑圧技術が導入されてきた。この種の雑音抑圧技術は、例えば、非特許文献1などに開示されている。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】Yariv Ephraim and David Malarah, ”SpeechEnhancementUsing a Minimum Mean Square Error Short-Time Spectral Amplitude Estimator”,IEEE Transactions on Accoustics, Speech, And Signal Processing,Vol. ASSP-32, No. 6, December1994 pp1109-1121.
【発明の概要】
【発明が解決しようとする課題】
【0005】
上述の雑音抑圧技術においては、入力信号が複数帯域に分割され、帯域毎に、信号の帯域パワーと推定された雑音の帯域パワーとからSNRが算出され、この算出されたSNRが平滑化され、この平滑化されたSNRに基づいて雑音抑圧ゲインが決定される。この場合、平滑化係数αは固定値である0.98で扱うことが推奨されているが、速い信号変化に追従できない。結果として、雑音抑圧ゲインに誤差が生じ、音声の冒頭がつぶれてしまうなど音質劣化の原因となる。一方、追従速度を速めるために平滑化係数αに小さな値を用いると、こんどはミュージカルノイズとよばれる聴感上耳障りな副作用が生じ、音質が劣化する。
【0006】
この発明の目的は、入力信号から雑音信号の推定を行って雑音信号を選択的に低減する際の音質の向上を図ることにある。
【課題を解決するための手段】
【0007】
この発明の概念は、
入力信号を所定フレーム長のフレームに分割してフレーム化するフレーム化部と、
上記フレーム化部で得られたフレーム化信号を複数の帯域に分割して帯域分割信号を得る帯域分割部と、
上記帯域分割部で得られた各帯域分割信号から帯域パワーを得る帯域パワー算出部と、
上記フレーム化信号の特性に基づいて、各帯域の帯域分割信号が雑音か否かを判定する雑音判定部と、
上記帯域パワー算出部で得られた各帯域分割信号の帯域パワーと上記雑音判定部の判定結果から、各帯域の雑音の帯域パワーを推定する雑音帯域パワー推定部と、
上記帯域パワー算出部で得られた各帯域分割信号の帯域パワーと上記雑音帯域パワー推定部で推定された各帯域の雑音の帯域パワーに基づいて、各帯域の雑音抑圧ゲインを決定する雑音抑圧ゲイン決定部と、
上記帯域分割部で得られた各帯域分割信号に、上記雑音抑圧ゲイン決定部で決定された各帯域の雑音抑圧ゲインを適用して雑音が抑圧された帯域分割信号を得る雑音抑圧部と、
上記雑音抑圧部で得られた各帯域分割信号を帯域合成して雑音抑圧されたフレーム化信号を得る帯域合成部と、
上記帯域合成部で得られた各フレームのフレーム化信号をフレーム合成して雑音を抑圧した出力信号を得るフレーム合成部とを備え、
上記雑音抑圧ゲイン決定部は、
帯域毎に、上記帯域パワー算出部で得られた各帯域分割信号の帯域パワーと上記雑音帯域パワー推定部で推定された各帯域の雑音の帯域パワーとからSNRを算出するSNR算出部と、
帯域毎に、上記SNR算出部で算出されたSNRを平滑化するSNR平滑化部とを有し、
上記SNR平滑部で平滑化された各帯域のSNRに基づいて、各帯域の雑音抑圧ゲインを決定し、
上記SNR平滑化部は、
平滑化の係数を、上記雑音判定部の判定結果および周波数帯域に基づいて変更する
雑音抑圧装置にある。
【0008】
この発明において、フレーム化部により、入力信号は所定時間長のフレームに分割されてフレーム化される。そして、帯域分割部により、フレーム化信号が複数の帯域に分割されて帯域分割信号が得られる。例えば、この帯域分割部では、フレーム化信号に対して高速フーリエ変換が施されて周波数領域の信号とされて、複数帯域に分割される。
【0009】
帯域パワー算出部により、帯域分割部で得られた各帯域分割信号から帯域パワーが得られる。この場合、例えば、フーリエ変換で得られる複素スペクトルからパワースペクトルが算出され、パワースペクトルの帯域内の最大値あるいは平均値などが代表値、つまり帯域パワーとされる。
【0010】
雑音判定部により、フレーム化信号の特性に基づいて、各帯域の帯域分割信号が雑音か否かが判定される。例えば、各帯域が順次判定帯域とされ、この判定帯域の帯域分割信号の現在のフレームと過去のフレームとの帯域パワーが比較され、該帯域パワーの変動が閾値内にあるとき、この判定帯域は雑音と判定される。この判定は、雑音のパワーはフレーム間で一定であり、逆にパワー変動が大きい信号は雑音ではないとの仮定に基づいている。
【0011】
また、例えば、フレーム化信号におけるゼロクロス幅のヒストグラムに基づいて、各帯域が雑音か否か判定される。例えば、雑音でないときには、同様の波形が繰り返されることから、所定のゼロクロス幅の度数が大きくなる。そのため、ゼロクロス幅のヒストグラムに基づいて、各帯域が雑音か否の判定が可能となる。
【0012】
また、例えば、フレーム化信号におけるゼロクロス幅のヒストグラムに基づいて、各帯域が雑音か否かの最初の判定が行われる。この最初の判定において、各帯域が雑音と判定されるとき、次の判定が行われる。次の判定では、各帯域が順次判定帯域とされ、この判定帯域の帯域分割信号の現在のフレームと過去のフレームとが比較され、変動が閾値内にあるとき、この判定帯域は雑音と判定される。このような2段階の判定により、雑音判定の精度が高められる。
【0013】
各帯域が雑音か否かの判定を、帯域分割信号の状態を監視して行う判定だけでは不十分な場合がある。例えば、帯域パワーの定常性を検出して雑音と判定しようとする場合、特に帯域分割の帯域幅が広いようなケースではトーン性の信号と雑音の区別がつかない。そこで、フレーム全体で雑音か否かの判定を行って、これと帯域ごとの判定を組み合わせることで、最終的な雑音判定精度を高めることが可能となる。
【0014】
雑音帯域パワー推定部により、帯域パワー算出部で得られた各帯域分割信号の帯域パワーと雑音判定部の判定結果から、各帯域の雑音帯域パワーが推定される。例えば、雑音と判定される帯域の雑音帯域パワーの推定は、前のフレームの雑音の帯域パワーの推定値と帯域分割信号の帯域パワーを重み付け加算して更新することで行われる。
【0015】
雑音抑圧ゲイン決定部により、帯域パワー算出部で得られた各帯域分割信号の帯域パワーと雑音帯域パワー推定部で推定された各帯域の雑音の帯域パワーに基づいて、各帯域の雑音抑圧ゲインが決定される。この場合、雑音抑圧ゲイン決定部は、帯域毎に、帯域パワー算出部で得られた各帯域分割信号の帯域パワーと雑音帯域パワー推定部で推定された各帯域の雑音の帯域パワーとからSNRを算出するSNR算出部と、帯域毎に、SNR算出部で算出されたSNRを平滑化するSNR平滑化部とを有する構成とされる。
【0016】
雑音抑圧ゲイン決定部では、SNR平滑部で平滑化された各帯域のSNRに基づいて、各帯域の雑音抑圧ゲインが決定される。この場合、平滑化の係数は、雑音判定部の判定結果および周波数帯域に基づいて変更される。
【0017】
例えば、雑音抑圧ゲイン決定部では、帯域毎に、現在のフレームの信号の帯域パワーと推定された雑音の帯域パワーの比が第1のSNRとされ、直前フレームの信号の帯域のパワーと雑音抑圧ゲインが乗算された量と直前フレームの推定された雑音の帯域パワーの比が第2のSNRとされる。そして、雑音抑圧ゲイン決定部では、第1のSNRと第2のSNRとが用いられて雑音抑圧ゲインが決定される。
【0018】
なお、雑音抑圧ゲイン決定部では、SNR平滑化部で平滑化された各帯域のSNRと共に、SNR算出部で算出されたSNRに基づいて、各帯域の雑音抑圧ゲインが決定される、ようにしてもよい。
【0019】
雑音抑圧部により、帯域分割部で得られた各帯域分割信号に、雑音抑圧ゲイン決定部で決定された各帯域の雑音抑圧ゲインが適用されて、雑音が抑圧された帯域分割信号が得られる。そして、帯域合成部により、雑音抑圧部で得られた各帯域分割信号が帯域合成されて雑音抑圧されたフレーム化信号が得られ、フレーム合成部により、帯域合成部で得られた各フレームのフレーム化信号がフレーム合成されて、雑音が抑圧された出力信号が得られる。
【0020】
このように、この発明においては、帯域毎に、平滑化SNRに基づいて雑音抑圧ゲインが決定されるが、その平滑化係数が雑音判定部の判定結果および帯域に基づいて変更される。例えば、各フレーム、各帯域で、非雑音と判定される場合の平滑化係数(α)は小さい値へと変更され、雑音と判定される場合の平滑化係数(α)は大きい値へと変更される。これにより、信号の時間変化が激しい区間での平滑化SNRの追従性を改善でき、また、信号の時間変化が少ない区間での平滑化SNRの無用な変化を抑制できる。そのため、各帯域の雑音抑圧ゲインの精度を高めることができ、音質の劣化を少なく抑えることができる。
【0021】
この発明において、例えば、雑音抑圧ゲイン決定部で決定された雑音抑圧ゲインが予め設定された下限値より小さくなるとき、雑音抑圧ゲインの値をこの下限値に修正する雑音抑圧ゲイン修正部をさらに備え、雑音抑圧部は、雑音抑圧ゲイン修正部で修正された雑音抑圧ゲインを用いる、ようにされる。
【0022】
この場合、下限値は帯域別に設定される。例えば、非雑音の信号が音声である場合に、音声信号が含まれる確率の高い帯域については雑音抑圧ゲインの下限値が高めの値に設定される。そして、雑音抑圧ゲイン決定部で決定された雑音抑圧ゲインが下限値を下回った場合は下限値で置き換えられる。これにより、雑音抑圧ゲイン決定部で決定された雑音抑圧ゲインの誤差があっても聴感上の音質劣化が少なくされる。
【0023】
また、この発明の他の概念は、
複数チャネルの入力信号をそれぞれ所定フレーム長のフレームに分割してフレーム化する複数のフレーム化部と、
上記複数のフレーム化部で得られたフレーム化信号をそれぞれ複数の帯域に分割して帯域分割信号を得る複数の帯域分割部と、
上記複数の帯域分割部で得られた各帯域分割信号からそれぞれ帯域パワーを得る複数の帯域パワー算出部と、
上記複数チャネルのフレーム化信号の特性に基づいて、各帯域が雑音か否かを判定する雑音判定部と、
上記複数の帯域パワー算出部で得られた各帯域分割信号の帯域パワーと上記雑音判定部の判定結果からそれぞれ各帯域の雑音の帯域パワーを推定する複数の雑音帯域パワー推定部と、
上記複数の帯域パワー算出部で得られた各帯域分割信号の帯域パワーと上記複数の雑音帯域パワー推定部で推定された各帯域の雑音の帯域パワーに基づいてそれぞれ各帯域の雑音抑圧ゲインを決定する複数の雑音抑圧ゲイン決定部と、
上記複数の帯域分割部で得られた各帯域分割信号に、上記複数の雑音抑圧ゲイン決定部で決定された各帯域の雑音抑圧ゲインを適用してそれぞれ雑音が抑圧された帯域分割信号を得る複数の雑音抑圧部と、
上記複数の雑音抑圧部で得られた各帯域分割信号を帯域合成してそれぞれ雑音抑圧されたフレーム化信号を得る複数の帯域合成部と、
上記複数の帯域合成部で得られた各フレームのフレーム化信号をフレーム合成してそれぞれ雑音を抑圧した出力信号を得る複数のフレーム合成部とを備え、
上記雑音抑圧ゲイン決定部は、
帯域毎に、上記帯域パワー算出部で得られた各帯域分割信号の帯域パワーと上記雑音帯域パワー推定部で推定された各帯域の雑音の帯域パワーとからSNRを算出するSNR算出部と、
帯域毎に、上記SNR算出部で算出されたSNRを平滑化するSNR平滑化部とを有し、
上記SNR平滑部で平滑化された各帯域のSNRに基づいて、各帯域の雑音抑圧ゲインを決定し、
上記SNR平滑化部は、
平滑化の係数を、上記雑音判定部の判定結果および周波数帯域に基づいて変更する
雑音抑圧装置にある。
【0024】
この発明においては、雑音判定部により、各チャネルにおいて、各帯域の雑音抑圧ゲインが決定されて、雑音抑圧処理が行われる。複数チャネルのフレーム化信号の特性に基づいて、各帯域が雑音か否かが判定される。例えば、各帯域が順次判定帯域とされ、判定帯域について各チャネルで雑音か否かが判定され、全てのチャネルで雑音と判定されるとき、この判定帯域は雑音であると判定される。各チャネルにおいて、フレーム毎に各帯域の雑音抑圧ゲインを決定する際には、雑音判定部の判定結果が共通に用いられる。
【0025】
このように、この発明においては、複数チャネル(例えば、ステレオ信号の場合の左右チャネル)における雑音の帯域パワーの推定誤差により複数チャネルの雑音抑圧ゲインに意図しない振幅差が発生することが抑制され、複数チャネルの不整合による定位の破壊が回避される。
【発明の効果】
【0026】
この発明によれば、入力信号から雑音信号の推定を行って雑音信号を選択的に低減する際の音質の劣化を少なく抑えることができる。
【図面の簡単な説明】
【0027】
【図1】この発明の第1の実施の形態としての雑音抑圧装置の構成例を示すブロック図である。
【図2】有声音検出部のゼロクロス幅計算部における計算動作を説明するための図である。
【図3】フレーム化信号が音声(非雑音)である場合における、信号波形(各サンプルの振幅)と、ゼロクロス幅のヒストグラムの一例を示す図である。
【図4】フレーム化信号が音声(雑音)である場合における、信号波形(各サンプルの振幅)と、ゼロクロス幅のヒストグラムの一例を示す図である。
【図5】雑音・非雑音判定部の判定処理の手順を説明するためのフローチャートである。
【図6】α算出部で算出される重み係数α(k,b)の推移例を示す図である。
【図7】この発明の第2の実施の形態としての雑音抑圧装置の構成例を示すブロック図である。
【図8】雑音抑圧装置を構成する雑音抑圧ゲイン生成部の構成例を示すブロック図である。
【図9】雑音・非雑音判定部の判定処理の手順を説明するためのフローチャートである。
【図10】雑音抑圧処理をソフトウェアで行うコンピュータ装置の構成例を示す図である。
【発明を実施するための形態】
【0028】
以下、発明を実施するための形態(以下、「実施の形態」とする)について説明する。なお、説明を以下の順序で行う。
1.第1の実施の形態
2.第2の実施の形態
3.変形例
【0029】
<1.第1の実施の形態>
[雑音抑圧装置]
図1は、第1の実施の形態としての雑音抑圧装置10の構成例を示している。この雑音抑圧装置10は、信号入力端子11と、フレーム化部12と、窓がけ部13と、高速フーリエ変換部14と、雑音抑圧ゲイン生成部15を有している。また、この雑音抑圧装置10は、フーリエ係数修正部16と、逆高速フーリエ変換部17と、窓がけ部18と、オーバーラップ加算部19と、信号出力端子20を有している。
【0030】
信号入力端子11は、入力信号y(n)を供給する端子である。この入力信号y(n)は、標本化周波数がfsのデジタル信号である。フレーム化部12は、信号入力端子11に供給される入力信号y(n)を、フレーム毎の処理を行うために、所定フレーム長、例えばフレーム長がNfサンプルのフレームに分割してフレーム化する。例えば、k番目のフレームの信号のn番目のサンプルは、yf(k,n)と表記される。フレーム化部12におけるフレーム化処理においては、隣接フレームをオーバーラップさせてもよい。
【0031】
窓がけ部13は、フレーム化信号yf(k,n)に分析窓wana(n)による窓がけを行う。窓がけ部13は、分析窓wana(n)として、例えば、以下の(1)式で定義されるものを用いる。Nwは、窓長である。
【数1】

【0032】
高速フーリエ変換部14は、窓がけ部13で窓がけされたフレーム化信号yf(k,n)に対して、高速フーリエ変換(FFT:Fast Fouriertransform)処理を施し、時間領域信号を周波数領域信号に変換する。雑音抑圧ゲイン生成部15は、フレーム化処理で得られたフレーム化信号yf(k,n)と、高速フーリエ変換処理で得られた各フーリエ係数(各周波数スペクトル)とに基づいて、各フーリエ係数に対応した雑音抑圧ゲインを生成する。この各フーリエ係数に対応した雑音抑圧ゲインは、周波数軸上のフィルタを構成する。この雑音抑圧ゲイン生成部15の詳細については、後述する。
【0033】
フーリエ係数修正部16は、高速フーリエ変換処理で得られた各フーリエ係数と、雑音抑圧ゲイン生成部15で生成された各フーリエ係数に対応した雑音抑圧ゲインの積をとることで係数修正を行う。つまり、フーリエ係数修正部16は、周波数軸上で、雑音を抑圧するためのフィルタ計算を行う。
【0034】
逆高速フーリエ変換部17は、係数修正された各フーリエ係数に対して、逆高速フーリエ変換(IFFT:Inverse Fast Fourier transform)処理を施す。この逆高速フーリエ変換部17は、上述の高速フーリエ変換部14とは逆の処理を行い、周波数領域信号を時間領域信号に変換する。
【0035】
窓がけ部18は、逆高速フーリエ変換部17で得られた雑音抑圧されたフレーム化信号に合成窓wsyn(n)による窓がけを行う。窓がけ部18は、合成窓wsyn(n)として、例えば、以下の(2)式で定義されるものを用いる。
【数2】

【0036】
なお、窓がけ部13における分析窓wana(n)および窓がけ部18における合成窓wsyn(n)の形状は任意でよい。しかし、一連の分析・合成系において、完全再構成条件を満たすものを用いることが望ましい。
【0037】
オーバーラップ加算部19は、窓がけ部18で窓がけされた各フレームのフレーム化信号のフレーム境界部分について重ね合わせを行って、雑音が抑圧された出力信号を得る。信号出力端子20は、オーバーラップ加算部19で得られた出力信号を出力する。
【0038】
雑音抑圧装置10の動作を簡単に説明する。信号入力端子11に入力信号y(n)が供給され、この入力信号y(n)は、フレーム化部12に供給される。このフレーム化部12では、フレーム毎に処理を行うために、入力信号y(n)がフレーム化される。つまり、このフレーム化部12では、入力信号y(n)が、所定フレーム長、例えばフレーム長がNfサンプルのフレームに分割される。フレーム毎のフレーム化信号yf(k,n)は、窓がけ部13に、順次供給される。
【0039】
窓がけ部13では、後述する高速フーリエ変換部14で安定したフーリエ係数を得るために、フレーム化信号yf(k,n)に分析窓wana(n)による窓がけが行われる。このように窓がけされたフレーム化信号yf(k,n)は、高速フーリエ変換部14に供給される。この高速フーリエ変換部14では、窓がけされたフレーム化信号yf(k,n)に対して、高速フーリエ変換処理が施され、時間領域信号から周波数領域信号に変換される。高速フーリエ変換処理で得られた各フーリエ係数(各周波数スペクトル)は、フーリエ係数修正部16に供給される。
【0040】
フレーム化部12で得られたフレーム毎のフレーム化信号yf(k,n)は、雑音抑圧ゲイン生成部15に供給される。また、高速フーリエ変換部14で得られたフレーム毎の各フーリエ係数は、雑音抑圧ゲイン生成部15に供給される。雑音抑圧ゲイン生成部15では、フレーム毎に、フレーム化信号yf(k,n)と各フーリエ係数とに基づいて、各フーリエ係数に対応した雑音抑圧ゲインが生成される。この各フーリエ係数に対応した雑音抑圧ゲインは、フーリエ係数修正部16に供給される。
【0041】
フーリエ係数修正部16では、フレーム毎に、高速フーリエ変換部14で高速フーリエ変換処理されて得られた各フーリエ係数と、雑音抑圧ゲイン生成部15で生成された各フーリエ係数に対応した雑音抑圧ゲインの積が取られて係数修正が行われる。つまり、このフーリエ係数修正部16では、周波数軸上で、雑音を抑圧するためのフィルタ計算が行われる。係数修正された各フーリエ係数は、逆高速フーリエ変換部17に供給される。
【0042】
逆高速フーリエ変換部17では、フレーム毎に、係数修正された各フーリエ係数に対して、逆高速フーリエ変換処理が施され、周波数領域信号が時間領域信号に変換される。逆高速フーリエ変換部17で得られたフレーム化信号は、窓がけ部18に供給される。この窓がけ部18では、フレーム毎に、逆高速フーリエ変換部17で得られた雑音抑圧されたフレーム化信号に合成窓wsyn(n)による窓がけが行われる。
【0043】
窓がけ部18で窓がけされた各フレームのフレーム化信号は、オーバーラップ加算部19に供給される。このオーバーラップ加算部19では、各フレームのフレーム化信号のフレーム境界部分について重ね合わせが行われて、雑音が抑圧された出力信号が得られる。そして、この出力信号は、信号出力端子20に出力される。
【0044】
[雑音抑圧ゲイン生成部]
雑音抑圧ゲイン生成部15の詳細を説明する。この雑音抑圧ゲイン生成部15は、基本的には、上述した非特許文献1などに開示されている雑音抑圧技術を用いて、雑音抑圧ゲインを生成する。最初に、この雑音抑圧技術の概要を以下に説明する。
【0045】
この雑音抑圧技術では、第kフレーム、b番目の帯域の入力帯域信号をY(k,b)としたとき、以下の(3)式に示されるように、雑音抑圧ゲインG(k,b)が用いられて、雑音を抑圧した帯域信号X(k,b)が得られる。雑音抑圧ゲインG(k,b)は、事前SNR「ξ(k,b)」および事後SNR「γ(k,b)」から計算される。
X(k,b)=G(k,b)Y(k,b) ・・・(3)
【0046】
事後SNR「γ(k,b)」は、入力信号の帯域パワーをB(k,b)、雑音の推定帯域パワーをD(k,b)とするとき、以下の(4)式により計算される。
γ(k,b)=B(k,b)/D(k,b) ・・・(4)
【0047】
事前SNR「ξ(k, b)」は、重み係数(平滑化係数)αを用いて、以下の(5)式により計算される。
ξ(k,b)=αG(k-1,b)γ(k?1,b)+(1-α)P[γ(k,b)-1] ・・・(5)
【0048】
ここで、P[・]は、以下の(6)式のように定義される演算子である。
【数3】

【0049】
雑音抑圧ゲインG(k,b)は、事前SNR「ξ(k, b)」および事後SNR「γ(k,b)」を用いて、以下の(7)式のように計算される。In(x) は第一種変形ベッセル関数である。
【数4】

【0050】
雑音抑圧ゲインは事前SNRおよび事後SNRの推定値から計算されるため、推定精度は雑音抑圧の適切さに直接的な影響を及ぼす。中でも、雑音の帯域パワー推定値D(k,b)は、SNR推定値全てに影響を及ぼすため、この推定精度向上は装置全体の性能向上を目指すうえで重要な課題となる。
【0051】
雑音の帯域パワーに推定誤差が無いと仮定した場合も、上述の事前SNRの計算方法((5)式参照)において、非特許文献1では、α=0.98と固定値で扱うことを推奨しており、速い信号変化に推定が追従できない。結果として、雑音抑圧ゲインG(k,b)の推定誤差が生じ、音声の冒頭がつぶれてしまうなど音質劣化の原因となる。一方、追従速度を速めるためにαに小さな値を用いると、こんどはミュージカルノイズと呼ばれる聴感上耳障りな副作用が生じ、音質が劣化してしまうという問題がある。
【0052】
雑音抑圧ゲイン生成部15は、基本的には、上述した非特許文献1などに開示されている雑音抑圧技術を用いる。しかし、雑音の帯域パワーを精度良く推定するとともに、信号の状態に応じて適応的な係数変更を行うことで、最適な雑音抑圧ゲインG(k,b)の生成を行い得るものとされる。
【0053】
雑音抑圧ゲイン生成部15は、帯域分割部21と、帯域パワー算出部22と、有声音検出部23と、雑音・非雑音判定部27と、雑音帯域パワー推定部28を有している。また、雑音抑圧ゲイン生成部15は、事後SNR算出部29と、α算出部30と、事前SNR算出部31と、雑音抑圧ゲイン算出部32と、雑音抑圧ゲイン修正部33と、フィルタ構成部34を有している。
【0054】
帯域分割部21は、高速フーリエ変換部14で高速フーリエ変換処理されて得られた各周波数スペクトル(各フーリエ係数)を、例えば、25の周波数帯域に分割する。表1は、帯域分割の一例を示している。バンド番号は、各帯域を識別するために付された番号である。各周波数帯域は、人間の聴覚システムが、高域ほど知覚分解能が劣化するという聴覚心理の研究から得られた知見に基づいている。
【0055】
【表1】

【0056】
帯域パワー算出部22は、帯域分割部21で分割された帯域毎に、周波数スペクトルから帯域パワーB(k,b)を算出する。ここで、(k,b)は、第kフレーム、b番目の帯域を示している。帯域パワー算出部22は、帯域パワーB(k,b)を算出する方法として、各周波数スペクトルからパワースペクトルをそれぞれ算出し、周波数レンジ内で最大値を求め、この最大値を代表値としてB(k,b)とする方法を用いる。なお、帯域パワー算出部22は、帯域パワーB(k,b)を算出する方法として、各周波数スペクトルからパワースペクトルをそれぞれ算出し、周波数レンジ内における平均値を求め、この平均値を代表値としてB(k,b)とする方法を用いてもよい。
【0057】
有声音検出部23は、フレーム化部12で得られたフレーム化信号yf(k,n)に基づいて、フレーム毎に、有声音が含まれているか否かを示す有声音フラグFv(k)を出力する。この有声音検出部23は、ゼロクロス幅計算部24、ヒストグラム計算部25および有声音フラグ算出部26を有している。
【0058】
ゼロクロス幅計算部24は、フレーム化された連続するサンプル間で符号が、例えば正から負、あるいは負から正というように逆転する箇所、または、逆の符号を有するサンプル間で0という値を有するサンプルが存在する箇所をゼロクロス点として検出する。そして、ゼロクロス幅計算部24は、図2に示すように、隣接するゼロクロス点の間のサンプル数を計算してLz(0),Lz(1),・・・,Lz(m)のようにゼロクロス幅として記録する。
【0059】
ヒストグラム計算部25は、ゼロクロス幅計算部24からゼロクロス幅Lz(p)を受け取って、フレーム内における分布を調べる。例えば、10サンプルおきに20領域で統計を取る場合、ヒストグラム計算部25は、初期値として、Hz(q)=0(0≦q<20)とする。そして、ヒストグラム計算部25は、以下の(8)式のように、ヒストグラムHz(q)を得る。
【0060】
【数5】

【0061】
有声音フラグ算出部26は、ヒストグラム計算部25で得られた度数Hz(q)が最大値となるインデックス(階級)qpeakを求める。そして、有声音フラグ算出部26は、インデックスqpeakの度数Hz(q)を、そのインデックスqpeakのしきい値Th(q)と比較し、以下の(9)式に示すように、有声音フラグFv(k)を設定する。ここで、各インデックスは、各ゼロクロス幅レンジを示す。
【0062】
【数6】

【0063】
図3(a),(b)は、フレーム化信号yf(k,n)が音声(非雑音)である場合における、信号波形(各サンプルの振幅)と、ゼロクロス幅のヒストグラムの一例を示している。音声(非雑音)の場合、同様の波形が繰り返され、所定のゼロクロス幅レンジの度数が大きくなる。そのため、Hz(q)>Th(q)となり、有声音フラグFv(k)は、Fv(k)=1に設定される。ここで、しきい値Th(q)は、ゼロクロス幅レンジ(インデックス)毎に設定されており、ゼロクロス幅の小さなゼロクロス幅レンジに対応するTh(q)ほど大きな値とされている。
【0064】
一方、図4(a),(b)は、フレーム化信号yf(k,n)が雑音である場合における、信号波形(各サンプルの振幅)と、ゼロクロス幅のヒストグラムの一例を示している。雑音の場合、ゼロクロス幅の小さなゼロクロス幅レンジの度数が大きくなる。そのため、Hz(q)≦Th(q)となり、有声音フラグFv(k)は、Fv(k)=0に設定される。
【0065】
雑音・非雑音判定部27は、フレーム毎に、有声音検出部23で得られた有声音フラグFv(k)と、帯域パワー算出部22で算出された各帯域の帯域パワーB(k,b)を用いて、各帯域の雑音帯域フラグFnz(k,b)を設定する。雑音・非雑音判定部27は、図5のフローチャートに示す判定処理を、フレーム毎に、各帯域において、実行する。
【0066】
雑音・非雑音判定部27は、ステップST1において、判定処理を開始し、システムの初期化を行う。この初期化において、雑音・非雑音判定部27は、雑音候補フレーム連続カウンタCn(b)を、Cn(b)=0に初期化しておく。
【0067】
次に、雑音・非雑音判定部27は、ステップST2の処理に移る。このステップST2において、雑音・非雑音判定部27は、有声音フラグFv(k)が0より大きいか否か、つまり、Fv(k)=1であるか否かを判断する。Fv(k)=1であるとき、つまり現在フレームkが有声音であるとき、雑音・非雑音判定部27は、ステップST3において、雑音候補フレーム連続カウンタCn(b)をクリアし、Cn(b)=0とする。そして、雑音・非雑音判定部27は、現在帯域bは雑音でないと判定し、ステップST4において、雑音帯域フラグFnz(k,b)を、Fnz(k,b)=0とし、その後に、ステップST5において、判定処理を終了する。
【0068】
ステップST2でFv(k)=0であるとき、つまり現在フレームkが有声音でないとき、雑音・非雑音判定部27は、ステップST6の処理に移る。このステップST6において、雑音・非雑音判定部27は、現在フレームkの帯域パワーB(k,b)と、直前フレームk−1の帯域パワーB(k-1,b)のパワー比を求める。そして、雑音・非雑音判定部27は、このステップST6において、パワー比が、低レベル側のしきい値TpL(b)と高レベル側のしきい値TpH(b)との間に収まっているか否かを判断する。
【0069】
雑音・非雑音判定部27は、パワー比がしきい値間に収まっているとき、現在帯域bを雑音の候補とし、パワー比がしきい値間に収まっていないとき、現在帯域bは雑音でないと判定する。この判定は、雑音信号のパワーは一定であり、逆にパワー変動が激しい信号は雑音でないとの仮定に基づいている。
【0070】
パワー比がしきい値間に収まっていないとき、つまり、現在帯域bは雑音でないと判定するとき、雑音・非雑音判定部27は、ステップST3において、雑音候補フレーム連続カウンタCn(b)をクリアし、Cn(b)=0とする。そして、雑音・非雑音判定部27は、ステップST4において、Fnz(k,b)=0とし、その後に、ステップST5において、判定処理を終了する。
【0071】
一方、パワー比がしきい値間に収まっているとき、つまり、現在帯域bを雑音の候補とするとき、雑音・非雑音判定部27は、ステップST7の処理に移る。このステップST7において、雑音・非雑音判定部27は、雑音候補フレーム連続カウンタCn(b)を、1だけカウントアップする。
【0072】
そして、雑音・非雑音判定部27は、ステップST8において、雑音候補フレーム連続カウンタCn(b)が、しきい値Tcを超えたか否かを判定する。Cn(b)>Tcでないとき、雑音・非雑音判定部27は、現在帯域bは雑音でないと判定し、ステップST4において、Fnz(k,b)=0とし、その後に、ステップST5において、判定処理を終了する。
【0073】
一方、Cn(b)>Tcであるとき、雑音・非雑音判定部27は、ステップST9の処理に移る。このステップST9において、雑音・非雑音判定部27は、現在帯域bが雑音であると判定し、雑音帯域フラグFnz(k,b)を、Fnz(k,b)=1にセットし、その後に、ステップST5において、判定処理を終了する。
【0074】
上述の図5のフローチャートの判定処理では、有声音検出部23で得られた有声音フラグFv(k)を用いてフレーム全体で一つの雑音・非雑音判定を行い、これと帯域毎の判定を組み合わせることで、最終的な判定結果としている。これは、帯域毎の信号の状態を監視して行う判定だけでは不十分な場合があるからである。例えば、帯域パワーの定常性を検出して雑音と判定しようとする場合、特に帯域分割の帯域幅が広いようなケースではトーン性の信号と雑音の区別がつかない。したがって、図5のフローチャートの判定処理を行うことで、帯域毎の雑音判定精度を高めることができる。
【0075】
図1に戻って、雑音帯域パワー推定部28は、フレーム毎に、各帯域の雑音帯域パワー推定値D(k,b)を推定する。雑音帯域パワー推定部28は、雑音・非雑音判定部27で設定された雑音帯域フラグFnz(k,b)に基づいて、Fnz(k,b)=1である帯域、つまり雑音の帯域についてのみ、雑音帯域パワー推定値D(k,b)の更新を行う。
【0076】
雑音帯域パワー推定部28における雑音帯域パワー推定値D(k,b)の更新方法の例としては、例えば、以下の(10)式に示すように、帯域パワーB(k,b)を使用し、指数重みμnzを用いて更新する方法が考えられる。μnz の値は、0.9から1.0程度の間で、雑音帯域パワー推定値D(k,b)が実際の雑音の変化に追従し、なおかつ、聴感上違和感が無い程度に、設定されることが望ましい。
【0077】
【数7】

【0078】
事後SNR算出部29は、以下の(11)式に基づき、入力信号の帯域パワーB(k,b)と、雑音帯域パワーの推定値D(k,b)を用いて、フレーム毎に、各帯域の事後SNR「γ(k,b)」を算出する。なお、この(11)式は、上述した(4)式と同じものである。この事後SNR算出部29は、SNR算出部を構成している。
γ(k,b)=B(k,b)/D(k,b) ・・・(11)
【0079】
事前SNR算出部31は、以下の(12)式に基づき、フレーム毎に、各帯域の事前SNR「ξ(k,b)」を算出する。この場合、事前SNR算出部31は、直前フレームおよび現在フレームの事後SNR「γ(k-1,b),γ(k,b)」と、直前フレームの雑音抑圧ゲインG′(k-1,b)と、重み係数αを用いる。なお、この(12)式は、雑音抑圧ゲインG(k-1,b)がリミッタ処理による修正後の雑音抑圧ゲインG′(k-1,b)に変わっていることを除き、上述した(5)式と同じものである。
ξ(k,b)=αG′(k-1,b)γ(k-1,b)+(1-α)P[γ(k,b)-1] ・・・(12)
【0080】
α算出部30は、上述の(12)式における重み係数αを、定数ではなく、フレームと周波数帯域で変動する重み係数α(k,b)として、(13)式に基づいて、算出する。αMAX(b)およびαMIN(b)は、それぞれ、帯域ごとに設定された重み係数α(k,b)の最大値および最小値である。重み係数α(k,b)を(13)式に基づいて算出する場合、雑音と判定される帯域bにあっては、重み係数α(k,b)は最大値αMAX(b)に近づいていき、非雑音と判定される帯域bにあっては、最小値αMIN(b)となる。図6は、重み係数α(k,b)の推移例を示している。
【0081】
【数8】

【0082】
上述の(12)式におけるαを、上述のα(k,b)を用いた形に書き直すと、以下の(14)式のようになる。
ξ(k,b)=α(k-1,b)G′(k-1,b)γ(k?1,b)+(1-α(k,b))P[γ(k,b)-1]
・・・(14)
【0083】
事前SNR算出部31は、上述の(14)式に基づき、事前SNR「ξ(k,b)」の算出を行う。上述した重み係数α(k,b)の算出の仕組みにより、音声など一般的に変化の激しい非雑音に対しては追従が早く、一方、定常性を仮定している雑音に対してはゆっくり追従するよう、事前SNR「ξ(k,b)」の計算がされるようになる。この事前SNR算出部31は、SNR平滑部を構成している。
【0084】
雑音抑圧ゲイン算出部32は、事後SNR算出部29で算出された事後SNR「γ(k,b)」と事前SNR算出部31で算出された事前SNR「ξ(k,b)」とから、以下の(15)式に基づいて、フレーム毎に、各帯域の雑音抑圧ゲインG(k,b)を算出する。なお、この(15)式は、上述した(7)式と同じものである。
【数9】

【0085】
雑音抑圧ゲイン修正部33は、雑音抑圧ゲイン算出部32で算出された雑音抑圧ゲインG(k,b)に、帯域毎に予め設定してある雑音抑圧ゲインの下限値GMIN(b)に基づいてリミッタをかけ、修正された雑音抑圧ゲインG′(k,b)を算出する。以下の(16)式は、雑音抑圧ゲイン修正部33におけるリミッタ処理を表している。
【数10】

【0086】
この雑音抑圧ゲイン修正部33は、聴感上の雑音低減量を最大化しつつも、雑音推定における過大見積りに起因して雑音抑圧ゲインが小さくなりすぎないようにするために設けられている。ここで、下限値GMIN(b)は、対象音源の性質や聴覚心理に基づいて、帯域別に設定される。例えば、非雑音の信号が音声である場合に、音声信号が含まれる確率の高い帯域については雑音抑圧ゲインの下限値が高めの値に設定される。雑音抑圧ゲインG(k,b)が下限値GMIN(b)を下回った場合は、この下限値GMIN(b)で置き換えられる。これにより、雑音抑圧ゲインG(k,b)の誤差があっても聴感上の音質劣化が少なくされる。
【0087】
フィルタ構成部34は、雑音抑圧ゲイン修正部33で修正されたフレーム毎の各帯域の雑音抑圧ゲインG′(k,b)から、フレーム毎に、各フーリエ係数に対応した雑音抑圧ゲインを算出し、周波数軸上のフィルタを構成する。算出方法は、帯域分割部21でフーリエ係数を帯域分割したのと逆写像して得られたものをそのまま用いる単純な方法でもよいが、ゲインが周波数軸上で不連続にならないように上述の方法で得られたものをさらに周波数軸上でスムージングする方法でもよい。
【0088】
雑音抑圧ゲイン生成部15の動作を簡単に説明する。高速フーリエ変換部14でフレーム毎に高速フーリエ変換処理されて得られた各周波数スペクトル(各フーリエ係数)は、帯域分割部21に供給される。この帯域分割部21では、フレーム毎に、各周波数スペクトルが、例えば、25の周波数帯域に分割される(表1参照)。
【0089】
帯域分割部21で帯域分割されて得られた各帯域の周波数スペクトルは、フレーム毎に、帯域パワー算出部22に供給される。この帯域パワー算出部22では、フレーム毎に、各帯域の帯域パワーB(k,b)が算出される。例えば、帯域b内の各周波数スペクトルに対応したパワースペクトルがそれぞれ算出され、その最大値あるいは平均値が帯域パワーB(k,b)とされる。
【0090】
また、フレーム化部12で得られたフレーム化信号yf(k,n)は、有声音検出部23に供給される。この有声音検出部23では、フレーム化信号yf(k,n)に基づいて、フレーム毎に、有声音が含まれているか否かを示す有声音フラグFv(k)が得られる。有声音検出部23では、フレーム全体の雑音・非雑音の判定が行われ、非雑音と判定されるときはFv(k)=1とされ、雑音と判定されるときはFv(k)=0とされる。ここで、有声音検出部23における雑音・非雑音の判定は、フレーム化信号yf(k,n)に基づいてゼロクロス幅が検出され、このゼロクロス幅のヒストグラムが計算されることで行われる。
【0091】
有声音検出部23で得られたフレーム毎の有声音フラグFv(k)は、雑音・非雑音判定部27に供給される。また、帯域パワー算出部22で算出されたフレーム毎の各帯域の帯域パワーB(k,b)は、雑音・非雑音判定部27に供給される。この雑音・非雑音判定部27では、フレーム毎に、有声音フラグFv(k)と、各帯域の帯域パワーB(k,b)を用いて、各帯域の雑音帯域フラグFnz(k,b)が設定される(図5参照)。この場合、有声音フラグFv(k)が1であってフレーム全体として非雑音と判定されているときは、全ての帯域が雑音でないと判定され、全ての帯域でFnz(k,b)=0とされる。
【0092】
また、有声音フラグFv(k)が0であってフレーム全体として雑音と判定されているときは、帯域毎に、帯域パワーの定常性検出により雑音か非雑音かの判定が行われる。帯域パワーに定常性があって、その帯域が雑音候補と判定されるとき、その帯域の雑音候補フレーム連続カウンタCn(b)がカウントアップされる。そして、そのカウント値がしきい値Tcを超えるとき、その帯域は雑音であると判定され、Fnz(k,b)=1とされる。
【0093】
一方、帯域パワーに定常性がなく、その帯域が非雑音と判定されるとき、Fnz(k,b)=0とされる。また、帯域パワーに定常性があって、その帯域が雑音候補と判定されても、雑音候補フレーム連続カウンタCn(b)のカウント値がしきい値Tc以下のとき、その帯域は非雑音であると判定され、Fnz(k,b)=0とされる。
【0094】
雑音・非雑音判定部27でフレーム毎に設定された各帯域の雑音帯域フラグFnz(k,b)は雑音帯域パワー推定部28に供給される。また、帯域パワー算出部22でフレーム毎に算出された各帯域の帯域パワーB(k,b)は、雑音帯域パワー推定部28に供給される。この雑音帯域パワー推定部28では、フレーム毎に、各帯域の雑音帯域パワー推定値D(k,b)が推定される。
【0095】
この雑音帯域パワー推定部28では、雑音帯域フラグFnz(k,b)に基づいて、Fnz(k,b)=1である帯域、つまり雑音の帯域についてのみ、雑音帯域パワー推定値D(k,b)の更新が行われる。例えば、帯域パワーB(k,b)が使用され、指数重みμnzが用いられて更新される((10)式参照)。μnz の値は、0.9から1.0程度の間で、雑音帯域パワー推定値D(k,b)が実際の雑音の変化に追従し、なおかつ、聴感上違和感が無い程度に、設定される。
【0096】
雑音帯域パワー推定部28でフレーム毎に推定された各帯域の雑音帯域パワー推定値D(k,b)は、事後SNR算出部29に供給される。また、帯域パワー算出部22でフレーム毎に算出された各帯域の帯域パワーB(k,b)は、事後SNR算出部29に供給される。事後SNR算出部29では、フレーム毎に、帯域パワーB(k,b)と、雑音帯域パワーの推定値D(k,b)が用いられて、各帯域の事後SNR「γ(k,b)」が算出される((11)式参照)。
【0097】
雑音・非雑音判定部27でフレーム毎に設定された各帯域の雑音帯域フラグFnz(k,b)は、α算出部30に供給される。このα算出部30では、フレーム毎に、各帯域の事前SNR「ξ(k,b)」の算出((14)式参照)のための重み係数α(k,b)が算出される。重み係数α(k,b)は、雑音と判定される帯域bにあっては、最大値αMAX(b)に近づいていくように更新され、非雑音と判定される帯域bにあっては、直ちに最小値αMIN(b)とされる((13)式、図6参照)。
【0098】
事後SNR算出部29でフレーム毎に算出された各帯域の事後SNR「γ(k,b)」は、事前SNR算出部31に供給される。また、α算出部30でフレーム毎に算出された各帯域の重み係数α(k,b)は、事前SNR算出部31に供給される。さらに、雑音抑圧ゲイン修正部33で修正された直前フレームの各帯域の雑音抑圧ゲインG′(k,b)は、事前SNR算出部31に供給される。事前SNR算出部31では、フレーム毎に、各帯域の事前SNR「ξ(k, b)」が算出される((14)式参照)。この場合、直前フレームおよび現在フレームの事後SNR「γ(k?1,b),γ(k,b)」と、直前フレームの雑音抑圧ゲインG′(k-1,b)と、重み係数α(k,b)が用いられる。
【0099】
上述したように、α算出部30で算出される各帯域の重み係数α(k,b)は、雑音と判定される帯域bにあっては、最大値αMAX(b)に近づいていくように更新され、非雑音と判定される帯域bにあっては、直ちに最小値αMIN(b)とされる。そのため、音声など一般的に変化の激しい非雑音に対しては追従が早く、一方、定常性を仮定している雑音に対してはゆっくり追従するよう、事前SNR「ξ(k,b)」が計算される。
【0100】
事後SNR算出部29でフレーム毎に算出された各帯域の事後SNR「γ(k,b)」は、雑音抑圧ゲイン算出部32に供給される。また、事前SNR算出部31でフレーム毎に算出された各帯域の事前SNR「ξ(k, b)」は、雑音抑圧ゲイン算出部32に供給される。雑音抑圧ゲイン算出部32では、フレーム毎に、事後SNR「γ(k,b)」と事前SNR「ξ(k,b)」とから、各帯域の雑音抑圧ゲインG(k,b)が算出される((15)式参照)。
【0101】
雑音抑圧ゲイン算出部32でフレーム毎に算出された各帯域の雑音抑圧ゲインG(k,b)は、雑音抑圧ゲイン修正部33に供給される。この雑音抑圧ゲイン修正部33では、フレーム毎に、各帯域の雑音抑圧ゲインG(k,b)に対して、帯域毎に予め設定してある雑音抑圧ゲインの下限値GMIN(b)に基づいてリミッタがかけられ、修正された雑音抑圧ゲインG′(k,b)が算出される。
【0102】
雑音抑圧ゲイン修正部33でフレーム毎に修正された各帯域の雑音抑圧ゲインG′(k,b)は、フィルタ構成部34に供給される。このフィルタ構成部34では、フレーム毎に、各帯域の雑音抑圧ゲインG′(k,b)から、各フーリエ係数に対応した雑音抑圧ゲインが算出される。このようにフィルタ構成部34でフレーム毎に算出された各フーリエ係数に対応した雑音抑圧ゲインは、雑音抑圧ゲイン生成部15の出力としてフーリエ係数修正部16に供給される。
【0103】
上述したように、図1に示す雑音抑圧装置10において、雑音抑圧ゲイン生成部15の雑音抑圧ゲイン算出部32では、事後SNR「γ(k,b)」と事前SNR「ξ(k,b)」とから、各帯域の雑音抑圧ゲインG(k,b)が算出される。また、事前SNR算出部31では、各帯域の事前SNR「ξ(k,b)」が算出される。この場合、直前フレームおよび現在フレームの事後SNR「γ(k?1,b),γ(k,b)」と、直前フレームの雑音抑圧ゲインG′(k-1,b)と、重み係数α(k,b)が用いられる。
【0104】
α算出部30で算出される各帯域の重み係数α(k,b)は、信号の状態に応じて適応的に変化させられる。つまり、重み係数α(k,b)は、雑音と判定される帯域b(Fnz(k,b)=1)にあっては最大値αMAX(b)に近づいていくように更新され、非雑音と判定される帯域b(Fnz(k,b)=0)にあっては直ちに最小値αMIN(b)とされる。そのため、音声など一般的に変化の激しい非雑音に対しては追従が早く、一方、定常性を仮定している雑音に対してはゆっくり追従するよう、事前SNR「ξ(k,b)」が計算される。
【0105】
そのため、雑音抑圧ゲイン生成部15で算出される各帯域の雑音抑圧ゲインG(k,b)の精度(追従性)を高めることができる。したがって、例えば、音声信号の冒頭など信号の変化が激しい箇所で発生する音質劣化を抑制でき、定常雑音の区間など信号の変化がゆるやかな箇所ではミュージカルノイズを抑制でき、音質向上を図ることができる。
【0106】
また、上述したように、図1に示す雑音抑圧装置10において、雑音抑圧ゲイン生成部15の雑音・非雑音判定部27では、有声音フラグFv(k)と、各帯域の帯域パワーB(k,b)を用いて、各帯域の雑音帯域フラグFnz(k,b)が設定される。つまり、雑音と非雑音が混合した信号においても非雑音と重複しない帯域の雑音に関しては検出できる。また、雑音帯域パワー推定部28では、雑音帯域フラグFnz(k,b)に基づいて、Fnz(k,b)=1である帯域、つまり雑音の帯域についてのみ、雑音帯域パワー推定値D(k,b)の更新が行われる。そのため、雑音帯域パワー推定値D(k,b)の推定における時間追従性を改善できると共に、推定精度を高めることができる。したがって、結果的に雑音抑圧ゲインの精度を高めることができ、音質向上を図ることができる。
【0107】
また、上述したように、図1に示す雑音抑圧装置10において、雑音抑圧ゲイン生成部15の雑音・非雑音判定部27では、有声音フラグFv(k)と、各帯域の帯域パワーB(k,b)を用いて、各帯域の雑音帯域フラグFnz(k,b)が設定される。つまり、雑音・非雑音判定部27では、有声音フラグFv(k)によるフレーム全体での雑音・非雑音判定が行われ、これと帯域パワーの定常性検出による帯域毎の判定が組み合わせられることで、最終的な判定結果が得られる。したがって、帯域毎の雑音・非雑音の判定精度を高めることができる。
【0108】
また、上述したように、図1に示す雑音抑圧装置10において、雑音抑圧ゲイン生成部15の雑音抑圧ゲイン修正部33では、修正された雑音抑圧ゲインG′(k,b)が算出される。この場合、各帯域の雑音抑圧ゲインG(k,b)に対して、帯域毎に予め設定してある雑音抑圧ゲインの下限値GMIN(b)に基づいてリミッタがかけられて、修正が行われる。したがって、聴感上の雑音低減量を最大化しつつも、推定誤差などによる音質劣化を最小限に抑えることができる。
【0109】
なお、図1に示す雑音抑圧装置10において、雑音抑圧ゲイン生成部15の雑音・非雑音判定部27では、有声音フラグFv(k)と、各帯域の帯域パワーB(k,b)を用いて、各帯域の雑音帯域フラグFnz(k,b)が設定される。しかし、雑音・非雑音判定部27では、フレーム毎に、有声音フラグFv(k)あるいは各帯域の帯域パワーB(k,b)のいずれかのみを用いて、各帯域の雑音帯域フラグFnz(k,b)を設定することも考えられる。
【0110】
有声音フラグFv(k)のみを用いて各帯域の雑音帯域フラグFnz(k,b)を設定する場合、雑音・非雑音判定部27では、例えば、図5のフローチャートにおいて、ステップST6の処理を除いた判定処理が行われる。一方、各帯域の帯域パワーB(k,b)のいずれかのみを用いて各帯域の雑音帯域フラグFnz(k,b)を設定する場合、雑音・非雑音判定部27では、例えば、図5のフローチャートにおいて、ステップST2の処理を除いた判定処理が行われる。
【0111】
<2.第2の実施の形態>
[雑音抑圧装置]
図7は、第2の実施の形態としての雑音抑圧装置10Sの構成例を示している。図1に示す雑音抑圧装置10がモノラル信号の雑音抑圧に適用した場合の構成例であるのに対して、この雑音抑圧装置10Sはステレオ信号の雑音抑圧に適用した場合の構成例である。この図7において、図1と対応する部分には、同一符号、あるいは同一符号に「L」、「R」の文字を添えて示し、適宜、その詳細説明を省略する。ステレオ信号に適用する際には、基本的にはモノラル信号の処理を各チャネルに行えばよい。しかし、ステレオ信号の場合は推定誤差などの要因により処理結果の定位が崩れてしまうなどの弊害が発生する。そのため、ステレオ信号に対応するための対策が施される。
【0112】
この雑音抑圧装置10Sは、左チャネル(Lch)処理系100Lと、右チャネル(Rch)処理系100Lと、雑音抑圧ゲイン生成部15Sとから構成されている。左チャネル処理系100Lおよび右チャネル処理系100Lは、それぞれ、図1に示す雑音抑圧装置10における信号入力端子11から信号出力端子20までの処理系と同様に構成されている。
【0113】
すなわち、左チャネル処理系100Lは、信号入力端子11Lと、フレーム化部12Lと、窓がけ部13Lと、高速フーリエ変換部14Lを有している。また、この左チャネル処理系100Lは、フーリエ係数修正部16Lと、逆高速フーリエ変換部17Lと、窓がけ部18Lと、オーバーラップ加算部19Lと、信号出力端子20Lを有している。
【0114】
また、右チャネル処理系100Rは、信号入力端子11Rと、フレーム化部12Rと、窓がけ部13Rと、高速フーリエ変換部14Rを有している。また、この右チャネル処理系100Rは、フーリエ係数修正部16Rと、逆高速フーリエ変換部17Rと、窓がけ部18Rと、オーバーラップ加算部19Rと、信号出力端子20Rを有している。
【0115】
雑音抑圧ゲイン生成部15Sは、フレーム毎に、左チャネル処理系100Lの各フーリエ係数に対応した雑音抑圧ゲインと、右チャネル処理系100Rの各フーリエ係数に対応した雑音抑圧ゲインを生成する。この雑音抑圧ゲイン生成部15Sは、左チャネル処理系100Lおよび右チャネル処理系100Rの各フーリエ係数に対応した雑音抑圧ゲインGfL (k,f),GfR (k,f)を生成する。この場合、雑音抑圧ゲイン生成部15Sは、フレーム化信号および各フーリエ係数(各周波数スペクトル)に基づいて、それぞれのチャネルの雑音抑圧ゲインGfL (k,f),GfR (k,f)を生成する。この雑音抑圧ゲイン生成部15Sの詳細については、後述する。
【0116】
雑音抑圧装置10Sの動作を簡単に説明する。左チャネル処理系100Lにおいて、信号入力端子11Lに左チャネルの入力信号yL(n)が供給され、この入力信号yL(n)は、フレーム化部12Lに供給される。このフレーム化部12Lでは、フレーム毎に処理を行うために、入力信号yL(n)がフレーム化される。つまり、このフレーム化部12Lでは、入力信号yL(n)が、所定フレーム長、例えばフレーム長がNfサンプルのフレームに分割される。フレーム毎のフレーム化信号yfL(k,n)は、窓がけ部13Lに、順次供給される。
【0117】
窓がけ部13Lでは、後述する高速フーリエ変換部14Lで安定したフーリエ係数を得るために、フレーム化信号yfL(k,n)に分析窓wana(n)による窓がけが行われる。このように窓がけされたフレーム化信号yfL(k,n)は、高速フーリエ変換部14Lに供給される。この高速フーリエ変換部14Lでは、窓がけされたフレーム化信号yfL(k,n)に対して、高速フーリエ変換処理が施され、時間領域信号から周波数領域信号に変換される。高速フーリエ変換処理で得られた各フーリエ係数(各周波数スペクトル)YfL(k,f)は、フーリエ係数修正部16Lに供給される。なお、(k,f)は、k番目のフレームのf番目の周波数を示している。
【0118】
また、右チャネル処理系100Rにおいて、信号入力端子11Rに右チャネルの入力信号yR(n)が供給され、この入力信号yR(n)は、フレーム化部12Rに供給される。このフレーム化部12Rでは、フレーム毎に処理を行うために、入力信号yR(n)がフレーム化される。つまり、このフレーム化部12Rでは、入力信号yR(n)が、所定フレーム長、例えばフレーム長がNfサンプルのフレームに分割される。フレーム毎のフレーム化信号yfR(k,n)は、窓がけ部13Rに、順次供給される。
【0119】
窓がけ部13Rでは、後述する高速フーリエ変換部14Rで安定したフーリエ係数を得るために、フレーム化信号yfR(k,n)に分析窓wana(n)による窓がけが行われる。このように窓がけされたフレーム化信号yfR(k,n)は、高速フーリエ変換部14Rに供給される。この高速フーリエ変換部14Rでは、窓がけされたフレーム化信号yfR(k,n)に対して、高速フーリエ変換処理が施され、時間領域信号から周波数領域信号に変換される。高速フーリエ変換処理で得られた各フーリエ係数(各周波数スペクトル)YfR(k,f)は、フーリエ係数修正部16Rに供給される。なお、(k,f)は、k番目のフレームのf番目の周波数を示している。
【0120】
フレーム化部12L,12Rで得られたフレーム毎のフレーム化信号yfL(k,n),yfR(k,n)は、雑音抑圧ゲイン生成部15Sに供給される。また、高速フーリエ変換部14L,14Rで得られたフレーム毎のフーリエ係数YfL(k,n),YfR(k,n)は、雑音抑圧ゲイン生成部15Sに供給される。雑音抑圧ゲイン生成部15Sでは、フレーム毎に、フレーム化信号yfL(k,n),yfR(k,n)とフーリエ係数YfL(k,n),YfR(k,n)に基づいて、左右チャネルに共通の、各フーリエ係数に対応した雑音抑圧ゲインが生成される。
【0121】
また、左チャネル処理系100Lにおいて、フーリエ係数修正部16Lでは、フレーム毎に、高速フーリエ変換部14Lで高速フーリエ変換処理されて得られた各フーリエ係数YfL(k,n)の修正が行われる。この場合、各フーリエ係数YfL(k,n)と、雑音抑圧ゲイン生成部15Sで生成された各フーリエ係数に対応した雑音抑圧ゲインGfL(k,f)の積が取られて係数修正が行われる。つまり、このフーリエ係数修正部16Lでは、周波数軸上で、雑音を抑圧するためのフィルタ計算が行われる。係数修正された各フーリエ係数は、逆高速フーリエ変換部17Lに供給される。
【0122】
逆高速フーリエ変換部17Lでは、フレーム毎に、係数修正された各フーリエ係数に対して、逆高速フーリエ変換処理が施され、周波数領域信号が時間領域信号に変換される。逆高速フーリエ変換部17Lで得られたフレーム化信号は、窓がけ部18Lに供給される。この窓がけ部18Lでは、フレーム毎に、逆高速フーリエ変換部17Lで得られたフレーム化信号に合成窓wsyn(n)による窓がけが行われる。
【0123】
窓がけ部18Lで窓がけされた各フレームのフレーム化信号は、オーバーラップ加算部19Lに供給される。このオーバーラップ加算部19Lでは、各フレームのフレーム化信号のフレーム境界部分について重ね合わせが行われて、雑音が抑圧された出力信号が得られる。そして、この出力信号は、左チャネル処理系100Lの信号出力端子20Lに出力される。
【0124】
また、右チャネル処理系100Rにおいて、フーリエ係数修正部16Rでは、フレーム毎に、高速フーリエ変換部14Rで高速フーリエ変換処理されて得られた各フーリエ係数YfR(k,n)の修正が行われる。この場合、各フーリエ係数YfR(k,n)と、雑音抑圧ゲイン生成部15Sで生成された各フーリエ係数に対応した雑音抑圧ゲインGfR(k,f)の積が取られて係数修正が行われる。つまり、このフーリエ係数修正部16Rでは、周波数軸上で、雑音を抑圧するためのフィルタ計算が行われる。係数修正された各フーリエ係数は、逆高速フーリエ変換部17Rに供給される。
【0125】
逆高速フーリエ変換部17Rでは、フレーム毎に、係数修正された各フーリエ係数に対して、逆高速フーリエ変換処理が施され、周波数領域信号が時間領域信号に変換される。逆高速フーリエ変換部17Rで得られたフレーム化信号は、窓がけ部18Rに供給される。この窓がけ部18Rでは、フレーム毎に、逆高速フーリエ変換部17Rで得られたフレーム化信号に合成窓wsyn(n)による窓がけが行われる。
【0126】
窓がけ部18Rで窓がけされた各フレームのフレーム化信号は、オーバーラップ加算部19Rに供給される。このオーバーラップ加算部19Rでは、各フレームのフレーム化信号のフレーム境界部分について重ね合わせが行われて、雑音が抑圧された出力信号が得られる。そして、この出力信号は、右チャネル処理系100Rの信号出力端子20Rに出力される。
【0127】
[雑音抑圧ゲイン生成部]
雑音抑圧ゲイン生成部15Sの詳細を説明する。図8は、雑音抑圧ゲイン生成部15Sの構成例を示している。この図8において、図1と対応する部分には、同一符号、あるいは同一符号に「L」、「R」、「S」の文字を添えて示し、適宜、その詳細説明を省略する。ここで、「L」は左チャネル側の処理部分を示し、「R」は右チャネル側の処理部分を示し、「S」は左右チャネルの共通処理部分を示す。
【0128】
雑音抑圧ゲイン生成部15Sは、帯域分割部21L,21Rと、帯域パワー算出部22L,22Rと、有声音検出部23L,23Rと、雑音・非雑音判定部27Sと、雑音帯域パワー推定部28L,28Rを有している。また、雑音抑圧ゲイン生成部15Sは、事後SNR算出部29L,29Rと、α算出部30Sと、事前SNR算出部31L,31Rと、雑音抑圧ゲイン算出部32L,32Rと、雑音抑圧ゲイン修正部33L,33Rと、フィルタ構成部34L,34Rを有している。
【0129】
帯域分割部21L,21Rは、図1に示す雑音抑圧装置10における雑音抑圧ゲイン生成部15の帯域分割部21と同様に構成されている。帯域分割部21L,21Rは、高速フーリエ変換部14L,14Rで得られた各周波数スペクトル(各フーリエ係数)YfL(k,f),YfR(k,f)を、例えば、25の周波数帯域に分割する(表1参照)。帯域パワー算出部22L,22Rは、図1に示す雑音抑圧装置10における雑音抑圧ゲイン生成部15の帯域パワー算出部22と同様に構成されている。帯域パワー算出部22L,22Rは、帯域分割部21L,21Rで分割された帯域毎に、周波数スペクトルから帯域パワーBL(k,b),BR(k,b)を算出する。
【0130】
有声音検出部23L,23Rは、図1に示す雑音抑圧装置10における雑音抑圧ゲイン生成部15の有声音検出部23と同様に構成されている。有声音検出部23L,23Rは、フレーム化部12L,12Rで得られたフレーム化信号yfL(k,n),yfR(k,n)に基づいて、フレーム毎に、有声音が含まれているか否かを示す有声音フラグFvL(k),FvR(k)を出力する。
【0131】
雑音・非雑音判定部27Sは、図1に示す雑音抑圧装置10における雑音抑圧ゲイン生成部15の雑音・非雑音判定部27とほぼ同様に構成されている。この雑音・非雑音判定部27Sは、ステレオ対応とされており、フレーム毎に、左右チャネル共通の各帯域の雑音帯域フラグFnz(k,b)を設定する。
【0132】
雑音・非雑音判定部27Sは、各帯域の雑音帯域フラグFnz(k,b)を設定する。この場合、雑音・非雑音判定部27Sは、有声音検出部23L,23Rで得られた有声音フラグFvL(k),FvR(k)と、帯域パワー算出部22L,22Rで算出された各帯域の帯域パワーBL(k,b),BR(k,b)を用いる。雑音・非雑音判定部27Sは、図9のフローチャートに示す判定処理を、フレーム毎に、各帯域において、実行する。
【0133】
雑音・非雑音判定部27Sは、ステップST11において、判定処理を開始し、システムの初期化を行う。この初期化において、雑音・非雑音判定部27Sは、雑音候補フレーム連続カウンタCn(b)を、Cn(b)=0に初期化しておく。
【0134】
次に、雑音・非雑音判定部27Sは、ステップST12の処理に移る。このステップST12において、雑音・非雑音判定部27Sは、有声音フラグFvL(k)が0より大きいか否か、つまり、FvL(k)=1であるか否かを判断する。また、このステップST12において、雑音・非雑音判定部27Sは、有声音フラグFvR(k)が0より大きいか否か、つまり、FvR(k)=1であるか否かを判断する。
【0135】
FvL(k)=1、かつFvR(k)=1であるとき、つまり現在フレームkが左右チャネル共に有声音であるとき、雑音・非雑音判定部27Sは、ステップST13において、雑音候補フレーム連続カウンタCn(b)をクリアし、Cn(b)=0とする。そして、雑音・非雑音判定部27Sは、現在帯域bは雑音でないと判定し、ステップST14において、雑音帯域フラグFnz(k,b)を、Fnz(k,b)=0とし、その後に、ステップST15において、判定処理を終了する。
【0136】
ステップST12でFvL(k)=1、かつFvR(k)=1でないとき、つまり現在フレームkの少なくとも左右チャネルのいずれかが有声音でないとき、雑音・非雑音判定部27Sは、ステップST16の処理に移る。このステップST16において、雑音・非雑音判定部27Sは、左チャネル側の現在フレームkの帯域パワーBL(k,b)と、直前フレームk−1の帯域パワーBL(k-1,b)のパワー比を求める。また、このステップST16において、雑音・非雑音判定部27Sは、右チャネル側の現在フレームkの帯域パワーBR(k,b)と、直前フレームk−1の帯域パワーBR(k-1,b)のパワー比を求める。
【0137】
そして、雑音・非雑音判定部27Sは、このステップST16において、左右チャネルのパワー比の双方が低レベル側のしきい値TpL(b)と高レベル側のしきい値TpH(b)との間に収まっているか否かを判断する。すなわち、TpL(b)< BL(k,b)/ BL(k-1,b)<TpH(b)、かつTpL(b)< BR(k,b)/ BR(k-1,b)< TpH(b)であるか否かを判断する。
【0138】
雑音・非雑音判定部27Sは、左右チャネルのパワー比の双方がしきい値間に収まっているとき、現在帯域bを雑音の候補とし、左右チャネルのパワー比の双方がしきい値間に収まっていないとき、現在帯域bは雑音でないと判定する。この判定は、雑音信号のパワーは一定であり、逆にパワー変動が激しい信号は雑音でないとの仮定に基づいている。
【0139】
左右チャネルのパワー比の双方がしきい値間に収まっていないとき、雑音・非雑音判定部27Sは、ステップST13において、雑音候補フレーム連続カウンタCn(b)をクリアし、Cn(b)=0とする。そして、雑音・非雑音判定部27Sは、現在帯域bは雑音でないと判定し、ステップST14において、Fnz(k,b)=0とし、その後に、ステップST15において、判定処理を終了する。
【0140】
一方、左右チャネルのパワー比の双方がしきい値間に収まっているとき、つまり、現在帯域bを雑音の候補とするとき、雑音・非雑音判定部27Sは、ステップST17の処理に移る。このステップST17において、雑音・非雑音判定部27Sは、雑音候補フレーム連続カウンタCn(b)を、1だけカウントアップする。
【0141】
そして、雑音・非雑音判定部27Sは、ステップST18において、雑音候補フレーム連続カウンタCn(b)が、しきい値Tcを超えたか否かを判定する。Cn(b)>Tcでないとき、雑音・非雑音判定部27Sは、現在帯域bは雑音でないと判定し、ステップST14において、Fnz(k,b)=0とし、その後に、ステップST15において、判定処理を終了する。
【0142】
一方、Cn(b)>Tcであるとき、雑音・非雑音判定部27Sは、ステップST19の処理に移る。このステップST19において、雑音・非雑音判定部27Sは、現在帯域bが雑音であると判定し、雑音帯域フラグFnz(k,b)を、Fnz(k,b)=1にセットし、その後に、ステップST15において、判定処理を終了する。
【0143】
図8に戻って、雑音帯域パワー推定部28L,28Rは、図1に示す雑音抑圧装置10における雑音抑圧ゲイン生成部15の雑音帯域パワー推定部28と同様に構成されている。雑音帯域パワー推定部28L,28Rは、フレーム毎に、各帯域の雑音帯域パワー推定値DL(k,b),DR(k,b)を推定する。雑音帯域パワー推定部28L,28Rは、Fnz(k,b)=1である帯域、つまり雑音の帯域についてのみ、雑音帯域パワー推定値DL(k,b),DR(k,b)の更新を行う((10)式参照)。この場合、雑音帯域パワー推定部28L,28Rは、雑音・非雑音判定部27Sで設定された左右チャネル共通の雑音帯域フラグFnz(k,b)に基づいて、処理を行う。
【0144】
事後SNR算出部29L,29Rは、図1に示す雑音抑圧装置10における雑音抑圧ゲイン生成部15の事後SNR算出部29と同様に構成されている。事後SNR算出部29L,29Rは、フレーム毎に、各帯域の事後SNR「γL(k,b),γR(k,b)」を算出する((11)式参照)。この場合、事後SNR算出部29L,29Rは、入力信号の帯域パワーBL(k,b),BR(k,b)と、雑音帯域パワーの推定値DL(k,b),DR(k,b)を用いる。
【0145】
事前SNR算出部31L,31Rは、図1に示す雑音抑圧装置10における雑音抑圧ゲイン生成部15の事前SNR算出部31と同様に構成されている。事前SNR算出部31L,31Rは、フレーム毎に、各帯域の事前SNR「ξL(k,b),ξR(k,b)」を算出する((14)式参照)。
【0146】
ここで、事前SNR算出部31Lは、各帯域の事前SNR「ξL(k,b)」を算出する。この場合、事前SNR算出部31Lは、直前フレームおよび現在フレームの事後SNR「γL(k-1,b),γL(k,b)」と、直前フレームの雑音抑圧ゲインG′L(k-1,b)と、左右チャネル共通の重み係数α(k,b)を用いる。また、事前SNR算出部31Rは、各帯域の事前SNR「ξR(k,b)」を算出する。この場合、事前SNR算出部31Rは、直前フレームおよび現在フレームの事後SNR「γR(k-1,b),γR(k,b)」と、直前フレームの雑音抑圧ゲインG′R(k-1,b)と、左右チャネル共通の重み係数α(k,b)を用いる。
【0147】
α算出部30Sは、図1に示す雑音抑圧装置10におけるα算出部30と同様に構成され、事前SNR算出部31L,31Rで用いられる左右チャネル共通の重み係数α(k,b)を算出する。このα算出部30Sは、定数ではなく、フレームと帯域で変動する重み係数α(k,b)として算出する((13)式参照)。この重み係数α(k,b)は、雑音と判定される帯域b(Fnz(k,b)=1)にあっては、重み係数α(k,b)は最大値αMAX(b)に近づいていき、非雑音と判定される帯域b(Fnz(k,b)=0)にあっては、最小値αMIN(b)となる。
【0148】
雑音抑圧ゲイン算出部32L,32Rは、図1に示す雑音抑圧装置10における雑音抑圧ゲイン生成部15の雑音抑圧ゲイン算出部32と同様に構成されている。雑音抑圧ゲイン算出部32L,32Rは、フレーム毎に、各帯域の雑音抑圧ゲインGL(k,b),GR(k,b)を算出する((15)式参照)。この場合、雑音抑圧ゲイン算出部32L,32Rは、事後SNR「γL(k,b),γR(k,b)」と、事前SNR「ξL(k,b),ξR(k,b)」とから、各帯域の雑音抑圧ゲインGL(k,b),GR(k,b)を算出する。
【0149】
雑音抑圧ゲイン修正部33L,33Rは、図1に示す雑音抑圧装置10における雑音抑圧ゲイン生成部15の雑音抑圧ゲイン修正部33と同様に構成されている。雑音抑圧ゲイン修正部33L,33Rは、フレーム毎に、雑音抑圧ゲイン算出部32L,32Rで算出された雑音抑圧ゲインGL(k,b),GR(k,b)の修正を行う。つまり、雑音抑圧ゲイン修正部33L,33Rは、修正された雑音抑圧ゲインG′L(k,b),G′R(k,b)を算出する((16)式参照)。この場合、雑音抑圧ゲイン修正部33L,33Rは、雑音抑圧ゲインGL(k,b),GR(k,b)に、帯域毎に予め設定してある雑音抑圧ゲインの下限値GMIN(b)に基づいてリミッタをかける。
【0150】
フィルタ構成部34L,34Rは、図1に示す雑音抑圧装置10における雑音抑圧ゲイン生成部15のフィルタ構成部34と同様に構成されている。フィルタ構成部34L,34Rは、フレーム毎に、雑音抑圧ゲイン修正部33で修正された各帯域の雑音抑圧ゲインG′L(k,b),G′R(k,b)から、各フーリエ係数に対応した雑音抑圧ゲインGfL(k,f),GfR(k,f)を算出する。この場合、フィルタ構成部34L,34Rは、周波数軸上のフィルタを構成する。
【0151】
雑音抑圧ゲイン生成部15Sの動作を簡単に説明する。高速フーリエ変換部14L,14Rでフレーム毎に高速フーリエ変換処理されて得られた各周波数スペクトル(各フーリエ係数)YfL(k,f),YfR(k,f)は、帯域分割部21L,21Rに供給される。この帯域分割部21L,21Rでは、フレーム毎に、各周波数スペクトルYfL(k,f),YfR(k,f)が、例えば、25の周波数帯域に分割される(表1参照)。
【0152】
帯域分割部21L,21Rで帯域分割されて得られた各帯域の周波数スペクトルは、フレーム毎に、帯域パワー算出部22L,22Rに供給される。この帯域パワー算出部22L,22Rでは、フレーム毎に、各帯域の帯域パワーBL(k,b),BR(k,b)が算出される。例えば、帯域b内の各周波数スペクトルに対応したパワースペクトルがそれぞれ算出され、その最大値あるいは平均値が帯域パワーBL(k,b),BR(k,b)とされる。
【0153】
また、フレーム化部12L,12Rで得られたフレーム化信号yfL(k,n),yfR(k,n)は、有声音検出部23L,23Rに供給される。この有声音検出部23L,23Rでは、フレーム化信号yfL(k,n),yfR(k,n)に基づいて、フレーム毎に、有声音が含まれているか否かを示す有声音フラグFvL(k),FvR(k)が得られる。有声音検出部23L,23Rでは、フレーム全体の雑音・非雑音の判定が行われ、非雑音と判定されるときはFvL(k),FvR(k)=1とされ、雑音と判定されるときはFvL(k),FvR(k)=0とされる。ここで、有声音検出部23L,23Rにおける雑音・非雑音の判定は、フレーム化信号yfL(k,n),yfR(k,n)に基づいてゼロクロス幅が検出され、このゼロクロス幅のヒストグラムが計算されることで行われる。
【0154】
有声音検出部23L,23Rで得られたフレーム毎の有声音フラグFvL(k),FvR(k)は、雑音・非雑音判定部27Sに供給される。また、帯域パワー算出部22L,22Rで算出されたフレーム毎の各帯域の帯域パワーBL(k,b),BR(k,b)は、雑音・非雑音判定部27Sに供給される。この雑音・非雑音判定部27Sでは、フレーム毎に、有声音フラグFvL(k),FvR(k)と、各帯域の帯域パワーBL(k,b),BR(k,b)を用いて、左右チャネル共通の各帯域の雑音帯域フラグFnz(k,b)が、設定される(図9参照)。
【0155】
この場合、FvL(k)=1、かつFvR(k)=1であって、左右チャネルの双方でフレーム全体として非雑音と判定されているときは、全ての帯域が雑音でないと判定され、全ての帯域でFnz(k,b)=0とされる。
【0156】
また、FvL(k)=1、かつFvR(k)=1ではなく、左右チャネルの双方でフレーム全体として非雑音と判定されていないときは、帯域毎に、帯域パワーの定常性検出により雑音か非雑音かの判定が行われる。左右チャネルの双方で帯域パワーに定常性があって、その帯域が雑音候補と判定されるとき、その帯域の雑音候補フレーム連続カウンタCn(b)がカウントアップされる。そして、そのカウント値がしきい値Tcを超えるとき、その帯域は雑音であると判定され、Fnz(k,b)=1とされる。
【0157】
一方、左右チャネルの双方、あるいはいずれかで帯域パワーに定常性がなく、その帯域が非雑音と判定されるとき、Fnz(k,b)=0とされる。また、左右チャネルの双方で帯域パワーに定常性があって、その帯域が雑音候補と判定されても、雑音候補フレーム連続カウンタCn(b)のカウント値がしきい値Tc以下のとき、その帯域は非雑音であると判定され、Fnz(k,b)=0とされる。
【0158】
雑音・非雑音判定部27Sでフレーム毎に設定された左右チャネル共通の各帯域の雑音帯域フラグFnz(k,b)は、α算出部30Sに供給される。このα算出部30Sでは、フレーム毎に、各帯域の事前SNR「ξL(k,b),ξR(k,b)」の算出のための、左右チャネル共通の重み係数α(k,b)が算出される((13)式参照)。この場合、雑音と判定される帯域b(Fnz(k,b)=1)にあっては、重み係数α(k,b)は最大値αMAX(b)に近づいていくように更新され、非雑音と判定される帯域b(Fnz(k,b)=0)にあっては、直ちに最小値αMIN(b)とされる。
【0159】
雑音・非雑音判定部27Sでフレーム毎に設定された左右チャネル共通の各帯域の雑音帯域フラグFnz(k,b)は雑音帯域パワー推定部28L,28Rに供給される。また、帯域パワー算出部22L,22Rでフレーム毎に算出された各帯域の帯域パワーBL(k,b),BR(k,b)は、雑音帯域パワー推定部28L,28Rに供給される。この雑音帯域パワー推定部28L,28Rでは、フレーム毎に、各帯域の雑音帯域パワー推定値DL(k,b),DR(k,b)が推定される。
【0160】
この雑音帯域パワー推定部28L,28Rでは、雑音帯域フラグFnz(k,b)に基づいて、Fnz(k,b)=1である帯域、つまり雑音の帯域についてのみ、雑音帯域パワー推定値DL(k,b),DR(k,b)の更新が行われる。例えば、帯域パワーBL(k,b),BR(k,b)が使用され、指数重みμnzが用いられて更新される((10)式参照)。μnz の値は、0.9から1.0程度の間で、雑音帯域パワー推定値DL(k,b),DR(k,b)が実際の雑音の変化に追従し、なおかつ、聴感上違和感が無い程度に、設定される。
【0161】
雑音帯域パワー推定部28L,28Rでフレーム毎に推定された各帯域の雑音帯域パワー推定値DL(k,b),DR(k,b)は、事後SNR算出部29L,29Rに供給される。また、帯域パワー算出部22L,22Rでフレーム毎に算出された各帯域の帯域パワーBL(k,b),BR(k,b)は、事後SNR算出部29L,29Rに供給される。事後SNR算出部29L,29Rでは、フレーム毎に、各帯域の事後SNR「γL(k,b),γR(k,b)」が算出される((11)式参照)。この場合、帯域パワーBL(k,b),BR(k,b)と、雑音帯域パワーの推定値DL(k,b),DR(k,b)が用いられる。
【0162】
事後SNR算出部29L,29Rでフレーム毎に算出された各帯域の事後SNR「γL(k,b),γR(k,b)」は、事前SNR算出部31L,31Rに供給される。また、α算出部30Sでフレーム毎に算出された左右チャネル共通の各帯域の重み係数α(k,b)は、事前SNR算出部31L,31Rに供給される。さらに、雑音抑圧ゲイン修正部23L,23Rで修正された直前フレームの各帯域の雑音抑圧ゲインG′L(k,b),G′R(k,b)は、事前SNR算出部31L,31Rに供給される。
【0163】
事前SNR算出部31L,31Rでは、各帯域の事前SNR「ξL(k, b),ξR(k, b)」が算出される((14)式参照)。事前SNR算出部31Lでは、フレーム毎に、各帯域の事前SNR「ξL(k, b)」が算出される。この場合、直前フレームおよび現在フレームの事後SNR「γL(k-1,b),γL(k,b)」と、直前フレームの雑音抑圧ゲインG′L(k-1,b)と、重み係数α(k,b)が用いられる。また、事前SNR算出部31Rでは、各帯域の事前SNR「ξR(k,b)」が算出される。この場合、フレーム毎に、直前フレームおよび現在フレームの事後SNR「γR(k-1,b),γR(k,b)」と、直前フレームの雑音抑圧ゲインG′R(k-1,b)と、重み係数α(k,b)が用いられる。
【0164】
上述したように、左右チャネル共通の各帯域の重み係数α(k,b)は、雑音と判定される帯域bにあっては、最大値αMAX(b)に近づいていくように更新され、非雑音と判定される帯域bにあっては、直ちに最小値αMIN(b)とされる。そのため、音声など一般的に変化の激しい非雑音に対しては追従が早く、一方、定常性を仮定している雑音に対してはゆっくり追従するよう、事前SNR「ξL(k,b),ξR(k,b)」が計算される。
【0165】
事後SNR算出部29L,29Rでフレーム毎に算出された各帯域の事後SNR「γL(k,b),γR(k,b)」は、雑音抑圧ゲイン算出部32L,32Rに供給される。また、事前SNR算出部31L,31Rでフレーム毎に算出された各帯域の事前SNR「ξL(k, b),ξR(k, b)」は、雑音抑圧ゲイン算出部32L,32Rに供給される。雑音抑圧ゲイン算出部32L,32Rでは、フレーム毎に、事後SNR「γL(k,b),γR(k,b)」と事前SNR「ξL(k, b),ξR(k, b)」とから、各帯域の雑音抑圧ゲインGL(k,b),GR(k,b)が算出される((15)式参照)。
【0166】
雑音抑圧ゲイン算出部32L,32Rでフレーム毎に算出された各帯域の雑音抑圧ゲインGL(k,b),GR(k,b)は、雑音抑圧ゲイン修正部33L,33Rに供給される。この雑音抑圧ゲイン修正部33L,33Rでは、フレーム毎に、修正された雑音抑圧ゲインG′L(k,b),G′R(k,b)が算出される。この場合、各帯域の雑音抑圧ゲインGL(k,b),GR(k,b)に対して、帯域毎に予め設定してある雑音抑圧ゲインの下限値GMIN(b)に基づいてリミッタがかけられる。
【0167】
雑音抑圧ゲイン修正部33L,33Rでフレーム毎に修正された各帯域の雑音抑圧ゲインG′L(k,b),G′R(k,b)は、フィルタ構成部34L,34Rに供給される。このフィルタ構成部34L,34Rでは、フレーム毎に、各帯域の雑音抑圧ゲインG′L(k,b),G′R(k,b)から、各フーリエ係数に対応した雑音抑圧ゲインGfL(k,f),GfR(k,f)が算出される。このようにフィルタ構成部34L,34Rでフレーム毎に算出された各フーリエ係数に対応した雑音抑圧ゲインは、雑音抑圧ゲイン生成部15Sの出力としてフーリエ係数修正部16L,16Rに供給される。
【0168】
上述したように、図7に示す雑音抑圧装置10Sはステレオ信号に適用した場合の構成例であるが、雑音抑圧ゲイン生成部15Sは、基本的に、図1に示す雑音抑圧装置10の雑音抑圧ゲイン生成部15と同様に構成されている。したがって、図7に示す雑音抑圧装置10Sにおいても、図1に示す雑音抑圧装置10と同様の効果を得ることができる。
【0169】
また、図7に示す雑音抑圧装置10Sにおいて、雑音抑圧ゲイン生成部15Sの雑音・非雑音判定部27Sでは、フレーム毎に、左右チャネル共通の各帯域の雑音帯域フラグFnz(k,b)が、設定される。この場合、有声音フラグFvL(k),FvR(k)と、各帯域の帯域パワーBL(k,b),BR(k,b)を用いられる。そして、雑音帯域パワー推定部28L,28Rでは、フレーム毎に、雑音・非雑音判定部27Sで設定された左右チャネル共通の各帯域の雑音帯域フラグFnz(k,b)が使用されて、各帯域の雑音帯域パワー推定値DL(k,b),DR(k,b)が推定される。
【0170】
このように、左右チャネルの雑音・非雑音の判定を共通にし、雑音帯域パワー推定部28L,28Rで共通の判定結果が用いられる。したがって、図7に示す雑音抑圧装置10Sにおいて、雑音抑圧ゲイン生成部15Sでは、左右チャネルの雑音帯域パワー推定値DL(k,b),DR(k,b)の推定誤差により雑音抑圧ゲインGL(k,b),GR(k,b)に意図しない振幅差が発生することを抑制できる。そして、これにより、左右チャネルの不整合による定位の破壊を回避できる。
【0171】
なお、図7に示す雑音抑圧装置10Sは、ステレオ信号の雑音抑圧に適用した場合の構成例である。詳細説明は省略するが、3チャネル以上の多チャンネル信号の雑音抑圧に適用する雑音抑圧装置も、各チャネルの雑音・非雑音の判定を共通にして、同様に構成できることは勿論である。
【0172】
<3.変形例>
なお、上述実施の形態における雑音抑圧装置10,10Sは、ハードウェアで構成できる他、同様の処理をソフトウェアで行うこともできる。図10は、ソフトウェアで処理を行うコンピュータ装置50の構成例を示している。このコンピュータ装置50は、CPU181、ROM182、RAM183およびデータ入出力部(データI/O)184により構成されている。
【0173】
ROM182には、CPU181の処理プログラム、その他の必要なデータが格納されている。RAM183は、CPU181のワークエリアとして機能する。CPU181は、ROM182に格納されている処理プログラムを必要に応じて読み出し、読み出した処理プログラムをRAM183に転送して展開し、当該展開された処理プログラムを読み出して、雑音抑圧処理を実行する。
【0174】
このコンピュータ装置50においては、入力信号(モノラル信号、ステレオ信号)は、データI/O184を介して入力され、RAM183に蓄積される。このRAM183に蓄積された入力信号に対して、CPU181により、上述実施の形態と同様の雑音抑圧処理が行われる。そして、処理結果としての雑音が抑圧された出力信号は、データI/O184を介して外部に出力される。
【産業上の利用可能性】
【0175】
この発明は、例えば、VoIPや携帯電話などの通信機器やICレコーダなど、マイクロホンで収音した人間の音声をAD変換し、デジタル信号として伝送・記録したうえで再生を行う電子機器に適用できる。
【符号の説明】
【0176】
10,10S・・・雑音抑圧装置
11,11L,11R・・・信号入力端子
12,12L,12R・・・フレーム化部
13,13L,13R・・・窓がけ部
14,14L,14R・・・高速フーリエ変換部
15,15S・・・雑音抑圧ゲイン生成部
16,16L,16R・・・フーリエ係数修正部
17,17L,17R・・・逆高速フーリエ変換部
18,18L,18R・・・窓がけ部
19,19L,19R・・・オーバーラップ加算部
20,20L,20R・・・信号出力端子
21,21L,21R・・・帯域分割部
22,22L,22R・・・帯域パワー算出部
23,23L,23R・・・有声音検出部
24・・・ゼロクロス幅計算部
25・・・ヒストグラム計算部
26・・・有声音フラグ算出部
27,27S・・・雑音・非雑音判定部
28,28L,28R・・・雑音帯域パワー推定部
29,29L,29R・・・事後SNR算出部
30,30S・・・α算出部
31,31L,31R・・・事前SNR算出部
32,32L,32R・・・雑音抑圧ゲイン算出部
33,33L,33R・・・雑音抑圧ゲイン修正部
34,34L,34R・・・フィルタ構成部
50・・・コンピュータ装置
100L・・・左チャネル処理系
100R・・・右チャネル処理系

【特許請求の範囲】
【請求項1】
入力信号を所定フレーム長のフレームに分割してフレーム化するフレーム化部と、
上記フレーム化部で得られたフレーム化信号を複数の帯域に分割して帯域分割信号を得る帯域分割部と、
上記帯域分割部で得られた各帯域分割信号から帯域パワーを得る帯域パワー算出部と、
上記フレーム化信号の特性に基づいて、各帯域が雑音か否かを判定する雑音判定部と、
上記帯域パワー算出部で得られた各帯域分割信号の帯域パワーと上記雑音判定部の判定結果から、各帯域の雑音の帯域パワーを推定する雑音帯域パワー推定部と、
上記帯域パワー算出部で得られた各帯域分割信号の帯域パワーと上記雑音帯域パワー推定部で推定された各帯域の雑音の帯域パワーに基づいて、各帯域の雑音抑圧ゲインを決定する雑音抑圧ゲイン決定部と、
上記帯域分割部で得られた各帯域分割信号に、上記雑音抑圧ゲイン決定部で決定された各帯域の雑音抑圧ゲインを適用して雑音が抑圧された帯域分割信号を得る雑音抑圧部と、
上記雑音抑圧部で得られた各帯域分割信号を帯域合成して雑音抑圧されたフレーム化信号を得る帯域合成部と、
上記帯域合成部で得られた各フレームのフレーム化信号をフレーム合成して雑音を抑圧した出力信号を得るフレーム合成部とを備え、
上記雑音抑圧ゲイン決定部は、
帯域毎に、上記帯域パワー算出部で得られた各帯域分割信号の帯域パワーと上記雑音帯域パワー推定部で推定された各帯域の雑音の帯域パワーとからSNRを算出するSNR算出部と、
帯域毎に、上記SNR算出部で算出されたSNRを平滑化するSNR平滑化部とを有し、
上記SNR平滑部で平滑化された各帯域のSNRに基づいて、各帯域の雑音抑圧ゲインを決定し、
上記SNR平滑化部は、
平滑化の係数を、上記雑音判定部の判定結果および周波数帯域に基づいて変更する
雑音抑圧装置。
【請求項2】
上記雑音抑圧ゲイン決定部は、
上記SNR平滑化部で平滑化された各帯域のSNRと共に、上記SNR算出部で算出されたSNRに基づいて、各帯域の雑音抑圧ゲインを決定する
請求項1に記載の雑音抑圧装置。
【請求項3】
上記雑音抑圧ゲイン決定部は、
帯域毎に、現在のフレームの信号の帯域パワーと上記推定された雑音の帯域パワーの比を第1のSNRとし、直前フレームの信号の帯域のパワーと雑音抑圧ゲインを乗算した量と直前フレームの推定された雑音の帯域パワーの比を第2のSNRとし、上記第1のSNRと上記第2のSNRとを用いて雑音抑圧ゲインを決定する
請求項1に記載の雑音抑圧装置。
【請求項4】
上記雑音判定部は、
各帯域を判定帯域とし、該判定帯域の帯域分割信号の現在のフレームと過去のフレームとの帯域パワーを比較し、該帯域パワーの変動が閾値内にあるとき該判定帯域を雑音と判定する
請求項1に記載の雑音抑圧装置。
【請求項5】
上記フレーム化部で得られたフレーム化信号におけるゼロクロス幅のヒストグラムを算出するヒストグラム算出部を、さらに、備え、
上記雑音判定部は、
上記ヒストグラム算出部で算出されたヒストグラムに基づいて各帯域が雑音か否かを判定する
請求項1に記載の雑音抑圧装置。
【請求項6】
上記フレーム化部で得られたフレーム化信号におけるゼロクロス幅のヒストグラムを算出するヒストグラム算出部を、さらに、備え、
上記雑音判定部は、上記ヒストグラム算出部で算出されたヒストグラムに基づいて雑音と判定する場合であって、各帯域を順次判定帯域として、該判定帯域の帯域分割信号の現在のフレームと過去のフレームとの間の変動が閾値内にあるとき、該判定帯域を雑音と判定する
請求項1に記載の雑音抑圧装置。
【請求項7】
上記雑音抑圧ゲイン決定部で決定された雑音抑圧ゲインが予め設定された下限値より小さくなるとき、雑音抑圧ゲインの値を該下限値に修正する雑音抑圧ゲイン修正部をさらに備え、
上記雑音抑圧部は、上記雑音抑圧ゲイン修正部で修正された雑音抑圧ゲインを用いる
請求項1に記載の雑音抑圧装置。
【請求項8】
複数チャネルの入力信号をそれぞれ所定フレーム長のフレームに分割してフレーム化する複数のフレーム化部と、
上記複数のフレーム化部で得られたフレーム化信号をそれぞれ複数の帯域に分割して帯域分割信号を得る複数の帯域分割部と、
上記複数の帯域分割部で得られた各帯域分割信号からそれぞれ帯域パワーを得る複数の帯域パワー算出部と、
上記複数チャネルのフレーム化信号の特性に基づいて、各帯域が雑音か否かを判定する雑音判定部と、
上記複数の帯域パワー算出部で得られた各帯域分割信号の帯域パワーと上記雑音判定部の判定結果からそれぞれ各帯域の雑音の帯域パワーを推定する複数の雑音帯域パワー推定部と、
上記複数の帯域パワー算出部で得られた各帯域分割信号の帯域パワーと上記複数の雑音帯域パワー推定部で推定された各帯域の雑音の帯域パワーに基づいてそれぞれ各帯域の雑音抑圧ゲインを決定する複数の雑音抑圧ゲイン決定部と、
上記複数の帯域分割部で得られた各帯域分割信号に、上記複数の雑音抑圧ゲイン決定部で決定された各帯域の雑音抑圧ゲインを適用してそれぞれ雑音が抑圧された帯域分割信号を得る複数の雑音抑圧部と、
上記複数の雑音抑圧部で得られた各帯域分割信号を帯域合成してそれぞれ雑音抑圧されたフレーム化信号を得る複数の帯域合成部と、
上記複数の帯域合成部で得られた各フレームのフレーム化信号をフレーム合成してそれぞれ雑音を抑圧した出力信号を得る複数のフレーム合成部とを備え、
上記雑音抑圧ゲイン決定部は、
帯域毎に、上記帯域パワー算出部で得られた各帯域分割信号の帯域パワーと上記雑音帯域パワー推定部で推定された各帯域の雑音の帯域パワーとからSNRを算出するSNR算出部と、
帯域毎に、上記SNR算出部で算出されたSNRを平滑化するSNR平滑化部とを有し、
上記SNR平滑部で平滑化された各帯域のSNRに基づいて、各帯域の雑音抑圧ゲインを決定し、
上記SNR平滑化部は、
平滑化の係数を、上記雑音判定部の判定結果および周波数帯域に基づいて変更する
雑音抑圧装置。
【請求項9】
上記雑音判定部は、各帯域を順次判定帯域とし、該判定帯域について各チャネルで雑音か否かを判定し、全てのチャネルで雑音と判定するとき、該判定帯域は雑音であると判定する
請求項8に記載の雑音抑圧装置。
【請求項10】
入力信号を所定フレーム長のフレームに分割してフレーム化するフレーム化ステップと、
上記フレーム化ステップで得られたフレーム化信号を複数の帯域に分割して帯域分割信号を得る帯域分割ステップと、
上記帯域分割ステップで得られた各帯域分割信号から帯域パワーを得る帯域パワー算出ステップと、
上記フレーム化信号の特性に基づいて、帯域毎に雑音か否かを判定する雑音判定ステップと、
上記帯域パワー算出ステップで得られた各帯域分割信号の帯域パワーと上記雑音判定ステップの判定結果から、各帯域の雑音の帯域パワーを推定する雑音帯域パワー推定ステップと、
上記帯域パワー算出ステップで得られた各帯域分割信号の帯域パワーと上記雑音帯域パワー推定ステップで推定された各帯域の雑音の帯域パワーに基づいて、各帯域の雑音抑圧ゲインを決定する雑音抑圧ゲイン決定ステップと、
上記帯域分割ステップで得られた各帯域分割信号に、上記雑音抑圧ゲイン決定ステップで決定された各帯域の雑音抑圧ゲインを適用して雑音が抑圧された帯域分割信号を得る雑音抑圧ステップと、
上記雑音抑圧ステップで得られた各帯域分割信号を帯域合成して雑音抑圧されたフレーム化信号を得る帯域合成ステップと、
上記帯域合成ステップで得られた各フレームのフレーム化信号をフレーム合成して雑音を抑圧した出力信号を得るフレーム合成ステップとを備え、
上記雑音抑圧ゲイン決定ステップでは、
帯域毎に、上記帯域パワー算出ステップで得られた帯域分割信号の帯域パワーと上記雑音帯域パワー推定ステップで推定された帯域の雑音の帯域パワーとからSNRを算出し、該算出されたSNRを平滑化し、該平滑化されたSNRに基づいて雑音抑圧ゲインを決定し、平滑化の係数を上記雑音判定ステップの判定結果および周波数帯域に基づいて変更する
雑音抑圧方法。
【請求項11】
コンピュータを、
入力信号を所定フレーム長のフレームに分割してフレーム化するフレーム化手段と、
上記フレーム化手段で得られたフレーム化信号を複数の帯域に分割して帯域分割信号を得る帯域分割手段と、
上記帯域分割手段で得られた各帯域分割信号から帯域パワーを得る帯域パワー算出手段と、
上記フレーム化信号の特性に基づいて、帯域毎に雑音か否かを判定する雑音判手段と、
上記帯域パワー算出手段で得られた各帯域分割信号の帯域パワーと上記雑音判定手段の判定結果から、各帯域の雑音の帯域パワーを推定する雑音帯域パワー推定手段と、
上記帯域パワー算出手段で得られた各帯域分割信号の帯域パワーと上記雑音帯域パワー推定手段で推定された各帯域の雑音の帯域パワーに基づいて、各帯域の雑音抑圧ゲインを決定する雑音抑圧ゲイン決定手段と、
上記帯域分割手段で得られた各帯域分割信号に、上記雑音抑圧ゲイン決定手段で決定された各帯域の雑音抑圧ゲインを適用して雑音が抑圧された帯域分割信号を得る雑音抑圧手段と、
上記雑音抑圧手段で得られた各帯域分割信号を帯域合成して雑音抑圧されたフレーム化信号を得る帯域合成手段と、
上記帯域合成手段で得られた各フレームのフレーム化信号をフレーム合成して雑音を抑圧した出力信号を得るフレーム合成手段として機能させ、
上記雑音抑圧ゲイン決定手段は、
帯域毎に、上記帯域パワー算出手段で得られた各帯域分割信号の帯域パワーと上記雑音帯域パワー推定手段で推定された各帯域の雑音の帯域パワーとからSNRを算出するSNR算出手段と、
帯域毎に、上記SNR算出手段で算出されたSNRを平滑化するSNR平滑化手段とを有し、
上記SNR平滑手段で平滑化された各帯域のSNRに基づいて、各帯域の雑音抑圧ゲインを決定し、
上記SNR平滑化手段は、
平滑化の係数を、上記雑音判定手段の判定結果および周波数帯域に基づいて変更する
プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate