(57)【要約】【課題】出力信号に雑音を発生することがなく、主観的な音質に優れた強調音声を得ることのできる雑音抑圧の方法及び装置を提供することである。また、あらゆる背景雑音に対して適切な抑圧係数を用いることによって、十分高い強調音声の品質を達成できる雑音抑圧の方法及び装置を提供することである。【解決手段】強調音声パワースペクトルと推定雑音パワースペクトルに基づいて無音部用係数を計算する無音部用係数計算部と、有音部用係数を記憶する有音部用係数記憶部と、得られた無音部用係数と有音部用係数をもとに後抑圧係数を計算するための後抑圧係数計算部を有する。【選択図】図１
2006337415.tif 000002
【特許請求の範囲】
【請求項１】
入力信号を周波数領域信号に変換し、該周波数領域信号に基づいて抑圧係数を定め、前記周波数領域信号に基づいて音声と雑音の相対関係を求め、該音声と雑音の相対関係に基づいて補正係数を定め、該補正係数を前記抑圧係数に重みづけし補正抑圧係数を求め、該補正抑圧係数を前記周波数領域信号に重みづけすることによって、雑音を抑圧する際に、前記周波数領域信号に基づいて補正係数を計算して定めることを特徴とする雑音抑圧の方法。
【請求項２】
前記補正係数を定める際に、前記周波数領域信号に基づいて第一仮補正係数を求め、該第一仮補正係数と予め定められた第二仮補正係数に基づいて計算することを特徴とする請求項１に記載の雑音抑圧の方法。
【請求項３】
前記第一仮補正係数を求める際に、前記抑圧係数を前記周波数領域信号に重みづけし重みつき周波数領域信号を求め、該重みつき周波数領域信号に基づいて定めることを特徴とする請求項１又は２に記載の雑音抑圧の方法。
【請求項４】
前記第一仮補正係数を求める際に、前記周波数領域信号に基づいて推定雑音を求め、該推定雑音に基づいて定めることを特徴とする請求項１乃至３のいずれかに記載の雑音抑圧の方法。
【請求項５】
前記補正係数を求める際に、前記周波数領域信号に基づいて第二仮補正係数を求め、該第二仮補正係数と前記第一仮補正係数に基づいて定めることを特徴とする請求項１乃至４にいずれかに記載の雑音抑圧の方法。
【請求項６】
入力信号を周波数領域信号に変換し、該周波数領域信号に基づいて抑圧係数を定め、該抑圧係数と最小抑圧係数を比較し、値が大きい方を補正抑圧係数とし、該補正抑圧係数を前記周波数領域信号に重みづけすることによって、雑音を抑圧する際に、前記周波数領域信号に基づいて音声と雑音の相対関係を求め、該音声と雑音の相対関係に基づいて前記最小抑圧係数を求めることを特徴とする雑音抑圧の方法。
【請求項７】
前記最小抑圧係数を求める際に、予め定められた第一仮最小抑圧係数と予め定められた第二仮最小抑圧係数に基づいて定めることを特徴とする請求項６に記載の雑音抑圧の方法。
【請求項８】
前記最小抑圧係数を求める際に、前記周波数領域信号から第一仮最小抑圧係数と第二仮最小抑圧係数を求め、該第一仮最小抑圧係数と該第二仮最小抑圧係数に基づいて定めることを特徴とする請求項７に記載の雑音抑圧の方法。
【請求項９】
入力信号を周波数領域信号に変換し、該周波数領域信号に基づいて抑圧係数を定め、該抑圧係数と前記周波数領域信号に基づいて補正抑圧係数を求め、該補正抑圧係数を前記周波数領域信号に重みづけすることによって、雑音を抑圧する際に、前記抑圧係数を前記周波数領域信号に重みづけして重みつき周波数領域信号を求め、該重みつき周波数領域信号に基づいて前記補正抑圧係数を求めることを特徴とする雑音抑圧の方法。
【請求項１０】
入力信号を周波数領域信号に変換する変換部と、該周波数領域信号に基づいて抑圧係数を定める抑圧係数計算部と、前記周波数領域信号に基づいて音声と雑音の相対関係を求める相対関係計算部と、該音声と雑音の相対関係と前記周波数領域信号に基づいて補正係数を計算して定める補正係数計算部と、該補正係数を前記周波数領域信号に重みづけし補正抑圧係数を求める抑圧係数補正部と、該補正抑圧係数を前記周波数領域信号に重みづけする重みづけ演算部と、を有することを特徴とする雑音抑圧の装置。
【請求項１１】
前記補正係数計算部は、前記周波数領域信号に基づいて第一仮補正係数を求める第一仮補正係数計算部と、予め定められた第二仮補正係数を記憶する第二仮補正係数記憶部を含むことを特徴とする請求項１０に記載の雑音抑圧の装置。
【請求項１２】
前記第一仮補正係数計算部は、前記抑圧係数を前記周波数領域信号に重みづけし重みつき周波数領域信号を求める重み付け演算部を含むことを特徴とする請求項１０又は１１に記載の雑音抑圧の装置。
【請求項１３】
前記第一仮補正係数計算部は、前記周波数領域信号に基づいて推定雑音を求める推定雑音計算部を含むことを特徴とする請求項１０乃至１２にいずれかに記載の雑音抑圧の装置。
【請求項１４】
前記補正係数計算部は、前記周波数領域信号に基づいて第二仮補正係数を求める第二仮補正係数計算部を含むことを特徴とする請求項１０乃至１３のいずれかに記載の雑音抑圧の装置。
【請求項１５】
入力信号を周波数領域信号に変換する変換部と、該周波数領域信号に基づいて抑圧係数を定める抑圧係数計算部と、該抑圧係数と最小抑圧係数を比較し、値が大きい方を補正抑圧係数とする補正抑圧係数計算部と、該補正抑圧係数を前記周波数領域信号に重みづけする重みづけ演算部と、を少なくとも有し、補正抑圧係数計算部は、前記周波数領域信号に基づいて音声と雑音の相対関係を求める相対関係計算部と、該音声と雑音の相対関係に基づいて前記最小抑圧係数を求める最小抑圧係数計算部を含むことを特徴とする雑音抑圧の装置。
【請求項１６】
前記最小抑圧係数部は、予め定められた第一仮最小抑圧係数を記憶する第一仮最小抑圧係数記憶部と、予め定められた第二仮最小抑圧係数を記憶する第二仮最小抑圧係数記憶部を含むことを特徴とする請求項１５に記載の雑音抑圧の装置。
【請求項１７】
前記最小抑圧係数部は、前記周波数領域信号から第一仮最小抑圧係数を求める第一仮最小抑圧係数計算部と、前記周波数領域信号から第二仮最小抑圧係数を求める第二仮最小抑圧係数計算部を含むことを特徴とする請求項１６に記載の雑音抑圧の装置。
【請求項１８】
入力信号を周波数領域信号に変換する変換部と、該周波数領域信号に基づいて抑圧係数を定める抑圧係数計算部と、該抑圧係数と前記周波数領域信号に基づいて補正抑圧係数を求める抑圧係数補正部と、該補正抑圧係数を前記周波数領域信号に重みづけする重みづけ演算部と、を少なくとも有し、抑圧係数補正部は、前記抑圧係数を前記周波数領域信号に重みづけして重みつき周波数領域信号を求める第二の重み付け演算部を含むことを特徴とする雑音抑圧の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所望の音声信号に重畳されている雑音を抑圧するための雑音抑圧の方法及び装置に関する。
【背景技術】
【０００２】
ノイズ・サプレッサは、所望の音声信号に重畳されている雑音(ノイズ)を抑圧する技術であり、周波数領域に変換した入力信号を用いて雑音成分のパワースペクトルを推定し、この推定パワースペクトルを入力信号から差し引くことにより、所望の音声信号に混在する雑音を抑圧するように動作する。雑音成分のパワースペクトルを継続的に推定することにより、非定常な雑音の抑圧にも適用することができる。ノイズ・サプレッサとしては、例えば、特許文献１に記載されている方式がある。図３６に、特許文献１に記載されたノイズ・サプレッサの構成を示す。
【０００３】
入力端子11には、劣化音声信号(所望音声信号と雑音の混在する信号)が、サンプル値系列として供給される。劣化音声信号サンプルは、フレーム分割部1に供給され、K/2サンプル毎のフレームに分割される。ここに、Kは偶数とする。フレームに分割された劣化音声信号サンプルは、窓がけ処理部2に供給され、窓関数w(t)との乗算が行なわれる。第nフレームの入力信号yn(t) (t=0, 1, ..., K/2-1) に対するw(t)で窓がけされた信号yn(t)バーは、次式で与えられる。
【０００４】
【数１】
2006337415.tif 000003
また、連続する2フレームの一部を重ね合わせ(オーバラップ)して窓がけすることも広く行なわれている。オーバラップ長としてフレーム長の50%を仮定すれば、t=0, 1, ..., K/2-1 に対して、
【０００５】
【数２】
2006337415.tif 000004
で得られるyn(t)バー (t=0, 1, ..., K-1)が、窓がけ処理部2の出力となる。実数信号に対しては、左右対称窓関数が用いられる。また、窓関数は、抑圧係数を1に設定したときの入力信号と出力信号が計算誤差を除いて一致するように設計される。これは、w(t)+w(t+K/2)=1
となることを意味する。
【０００６】
以後、連続する2フレームの50%をオーバラップして窓がけする場合を例として説明を続ける。w(t)としては、例えば次式に示すハニング窓を用いることができる。
【０００７】
【数３】
2006337415.tif 000005
窓がけされた出力yn(t)バーは、フーリエ変換部3に供給され、劣化音声スペクトルYn(k)に変換される。劣化音声スペクトルYn(k)は位相と振幅に分離され、劣化音声位相スペクトル arg Yn(k)は逆フーリエ変換部9に、劣化音声振幅スペクトル|Yn(k)|は、多重乗算部13と多重乗算部16に供給される。
【０００８】
多重乗算部13は、供給された劣化音声振幅スペクトル|Yn(k)|を用いて劣化音声パワースペクトルを計算し、推定雑音計算部5、周波数別SNR(信号対雑音比)計算部6及び重みつき劣化音声計算部14に伝達する。重みつき劣化音声計算部14は、多重乗算部13から供給された劣化音声パワースペクトルを用いて重みつき劣化音声パワースペクトルを計算し、推定雑音計算部5に伝達する。推定雑音計算部5は、劣化音声パワースペクトル、重みつき劣化音声パワースペクトル、及びカウンタ4から供給されるカウント値を用いて雑音のパワースペクトルを推定し、推定雑音パワースペクトルとして周波数別SNR計算部6に伝達する。周波数別SNR計算部6は、入力された劣化音声パワースペクトルと推定雑音パワースペクトルを用いて周波数別にSNRを計算し、後天的SNRとして推定先天的SNR計算部7と雑音抑圧係数生成部8に供給する。
【０００９】
推定先天的SNR計算部7は、入力された後天的SNR、及び抑圧係数補正部15から供給された補正抑圧係数を用いて先天的SNRを推定し、推定先天的SNRとして、雑音抑圧係数生成部8に伝達する。雑音抑圧係数生成部8は、入力として供給された後天的SNR、推定先天的SNR及び音声非存在確率記憶部21から供給される音声非存在確率を用いて雑音抑圧係数を生成し、抑圧係数として抑圧係数補正部15に伝達する。抑圧係数補正部15は、入力された推定先天的SNRと抑圧係数を用いて抑圧係数を補正し、補正抑圧係数Gn(k)バーとして多重乗算部16に供給する。多重乗算部16は、フーリエ変換部3から供給された劣化音声振幅スペクトル|Yn(k)|を、抑圧係数補正部15から供給された補正抑圧係数Gn(k)バーで重み付けすることによって強調音声振幅スペクトル|Xn(k)|バーを求め、逆フーリエ変換部9に伝達する。 |Xn(k)|バーは、式(4)で与えられる。
【００１０】
【数４】
2006337415.tif 000006
逆フーリエ変換部9は、多重乗算部16から供給された強調音声振幅スペクトル|Xn(k)|バーとフーリエ変換部3から供給された劣化音声位相スペクトル arg Yn(k)を乗算して、強調音声Xn(k)バーを求める。すなわち、
【００１１】
【数５】
2006337415.tif 000007
を実行する。
【００１２】
得られた強調音声Xn(k)バーに逆フーリエ変換を施し、1フレームがKサンプルから構成される時間領域サンプル値系列xn(t)バー (t=0, 1, ..., K-1)として、フレーム合成部10に伝達する。フレーム合成部10は、xn(t)バーの隣接する2フレームからK/2サンプルずつを取り出して重ね合わせ、
【００１３】
【数６】
2006337415.tif 000008
によって、 強調音声xn(t)ハットを得る。 得られた強調音声xn(t)ハット (t=0, 1, ..., K-1)が、フレーム合成部10の出力として、出力端子12に伝達される。
【００１４】
図３７は、図３６に含まれる多重乗算部13の構成を示すブロック図である。多重乗算部13は、乗算器13010〜1301K-1、分離部1302、1303、多重化部1304を有する。多重化された状態で図３６のフーリエ変換部3から供給された劣化音声振幅スペクトルは、分離部1302及び1303において周波数別のKサンプルに分離され、それぞれ乗算器13010〜1301K-1に供給される。乗算器13010〜1301K-1は、それぞれ入力された信号を2乗し、多重化部1304に伝達する。多重化部1304は、入力された信号を多重化し、劣化音声パワースペクトルとして出力する。
【００１５】
図３８は重みつき劣化音声計算部14の構成を示すブロック図である。重みつき劣化音声計算部14は、推定雑音記憶部1401、周波数別SNR計算部1402、多重非線形処理部1405、及び多重乗算部1404を有する。推定雑音記憶部1401は、図３６の推定雑音計算部5から供給される推定雑音パワースペクトルを記憶し、1フレーム前に記憶された推定雑音パワースペクトルを周波数別SNR計算部1402へ出力する。周波数別SNR計算部1402は、推定雑音記憶部1401から供給される推定雑音パワースペクトルと図３６の多重乗算部13から供給される劣化音声パワースペクトルを用いてSNRを各周波数毎に求め、多重非線形処理部1405に出力する。多重非線形処理部1405は、周波数別SNR計算部
1402 から供給されるSNRを用いて重み係数ベクトルを計算し、重み係数ベクトルを多重乗算部 1404 に出力する。
【００１６】
多重乗算部1404は、図３６の多重乗算部13から供給される劣化音声パワースペクトルと、多重非線形処理部1405から供給される重み係数ベクトルの積を周波数毎に計算し、重みつき劣化音声パワースペクトルを図３６の推定雑音記憶部 5 に出力する。多重乗算部1404の構成は、既に図３７を用いて説明した多重乗算部13に等しいので、詳細な説明は省略する。
【００１７】
図３９は、図３８に含まれる周波数別SNR計算部1402の構成を示すブロック図である。周波数別SNR計算部1402は、除算部 14210〜1421K-1、分離部1422、1423、多重化部1424を有する。図３６の多重乗算部13から供給される劣化音声パワースペクトルは、分離部1422に伝達される。図３８の推定雑音記憶部1401から供給される推定雑音パワースペクトルは、分離部1423に伝達される。劣化音声パワースペクトルは分離部1422において、推定雑音パワースペクトルは分離部1423において、それぞれ周波数成分に対応したKサンプルに分離され、それぞれ除算部14210〜1421K-1に供給される。除算部14210〜1421K-1では、式(7)に従って、供給された劣化音声パワースペクトルを推定雑音パワースペクトルで除算して周波数別SNRγn(k)ハットを求め、多重化部1424に伝達する。
【００１８】
【数７】
2006337415.tif 000009
ここに、λn-1(k)は1フレーム前に記憶された推定雑音パワースペクトルである。多重化部1424は、伝達されたK個の周波数別SNRを多重化して、図３８の多重非線形処理部1405へ伝達する。
【００１９】
次に、図４０を参照しながら、図３８の多重非線形処理部1405の構成と動作について詳しく説明する。図４０は、重みつき劣化音声計算部14に含まれる多重非線形処理部1405の構成を示すブロック図である。多重非線形処理部1405は、分離部1495、非線形処理部 14850 〜 1485K-1、及び多重化部1475を有する。分離部1495は、図３８の周波数別SNR計算部1402から供給されるSNRを周波数別のSNRに分離し、非線形処理部 14850 〜 1485K-1 に出力する。非線形処理部 14850 〜 1485K-1 は、それぞれ入力値に応じた実数値を出力する非線形関数を有する。
【００２０】
図４１に、非線形関数の例を示す。f1 を入力値としたとき、図４１に示される非線形関数の出力値f2は、
【００２１】
【数８】
2006337415.tif 000010
で与えられる。但し、a と b は任意の実数である。
【００２２】
非線形処理部 14850 〜 1485K-1 は、分離部1495から供給される周波数別SNRを、非線形関数によって処理して重み係数を求め、多重化部1475に出力する。すなわち、非線形処理部 14850 〜 1485K-1 は SNR に応じた1 から 0 までの重み係数を出力する。SNRが小さい時は 1 を、大きい時は 0 を出力する。多重化部1475は、非線形処理部 14850 〜 1485K-1 から出力された重み係数を多重化し、重み係数ベクトルとして多重乗算部1404に出力する。
【００２３】
図３８の多重乗算部 1404 で劣化音声パワースペクトルと乗算される重み係数は、 SNR に応じた値になっており、SNR が大きい程、すなわち劣化音声に含まれる音声成分が大きい程、重み係数の値は小さくなる。推定雑音の更新には一般に劣化音声パワースペクトルが用いられるが、推定雑音の更新に用いる劣化音声パワースペクトルに対して、SNR に応じた重みづけを行うことで、劣化音声パワースペクトルに含まれる音声成分の影響を小さくすることができ、より精度の高い雑音推定を行うことができる。なお、重み係数の計算に非線形関数を用いた例を示したが、非線形関数以外にも線形関数や高次多項式など、他の形で表されるSNRの関数を用いる事も可能である。
【００２４】
図４２は、図３６に含まれる推定雑音計算部 5 の構成を示すブロック図である。雑音推定計算部5は、分離部 501、502、多重化部 503、及び周波数別推定雑音計算部 5040 〜 504K-1 を有する。分離部 501 は、図３６の重みつき劣化音声計算部14から供給される重みつき劣化音声パワースペクトルを周波数別の重みつき劣化音声パワースペクトルに分離し、周波数別推定雑音計算部 5040 〜 504K-1 にそれぞれ供給する。分離部 502 は、図３６の多重乗算部13から供給される劣化音声パワースペクトルを周波数別の劣化音声パワースペクトルに分離し、周波数別推定雑音計算部 5040 〜 504K-1 にそれぞれ出力する。周波数別推定雑音計算部 5040 〜 504K-1 は、分離部 501 から供給される周波数別重みつき劣化音声パワースペクトル、分離部 502 から供給される周波数別劣化音声パワースペクトル、及び図３６のカウンタ4から供給されるカウント値から周波数別推定雑音パワースペクトルを計算し、多重化部 503
へ出力する。多重化部503は、周波数別推定雑音計算部 5040
〜 504K-1 から供給される周波数別推定雑音パワースペクトルを多重化し、推定雑音パワースペクトルを図３６の周波数別SNR計算部6と重みつき劣化音声計算部14へ出力する。周波数別推定雑音計算部 5040 〜 504K-1 の構成と動作の詳細な説明は、図４３を参照しながら行う。
【００２５】
図４３は、図４２に含まれる周波数別推定雑音計算部 5040 〜 504K-1 の構成を示すブロック図である。周波数別推定雑音計算部504は、更新判定部520、レジスタ長記憶部5041、推定雑音記憶部5042、スイッチ5044、シフトレジスタ5045、加算器5046、最小値選択部5047、除算部5048、カウンタ5049を有する。スイッチ5044には、図４２の分離部501から、周波数別重みつき劣化音声パワースペクトルが供給されている。スイッチ5044が回路を閉じたときに、周波数別重みつき劣化音声パワースペクトルは、シフトレジスタ5045に伝達される。シフトレジスタ5045は、更新判定部520から供給される制御信号に応じて、内部レジスタの記憶値を隣接レジスタにシフトする。シフトレジスタ長は、後述するレジスタ長記憶部5041に記憶されている値に等しい。シフトレジスタ5045の全レジスタ出力は、加算器5046に供給される。加算器5046は、供給された全レジスタ出力を加算して、加算結果を除算部5048に伝達する。
【００２６】
一方、更新判定部520には、カウント値、周波数別劣化音声パワースペクトル及び周波数別推定雑音パワースペクトルが供給されている。更新判定部520は、カウント値が予め設定された値に到達するまでは常に“１”を、到達した後は入力された劣化音声信号が雑音であると判定されたときに“１”を、それ以外のときに“０”を出力し、カウンタ5049、スイッチ5044、及びシフトレジスタ5045に伝達する。スイッチ5044は、更新判定部から供給された信号が“１”のときに回路を閉じ、“０”のときに開く。カウンタ5049は、更新判定部から供給された信号が“１”のときにカウント値を増加し、“０”のときには変更しない。シフトレジスタ5045は、更新判定部から供給された信号が“１”のときにスイッチ5044から供給される信号サンプルを1サンプル取り込むと同時に、内部レジスタの記憶値を隣接レジスタにシフトする。最小値選択部5047には、カウンタ5049の出力とレジスタ長記憶部5041の出力が供給されている。
【００２７】
最小値選択部5047は、供給されたカウント値とレジスタ長のうち、小さい方を選択して、除算部5048に伝達する。除算部5048は、加算器5046から供給された周波数別劣化音声パワースペクトルの加算値をカウント値又はレジスタ長の小さい方の値で除算し、商を周波数別推定雑音パワースペクトルλn(k)として出力する。Bn(k)
(n=0, 1, ..., N-1)をシフトレジスタ5045に保存されている劣化音声パワースペクトルのサンプル値とすると、λn(k)は、
【００２８】
【数９】
2006337415.tif 000011
で与えられる。
【００２９】
ただし、Nはカウント値とレジスタ長のうち、小さい方の値である。カウント値はゼロから始まって単調に増加するので、最初はカウント値で除算が行なわれ、後にはレジスタ長で除算が行なわれる。レジスタ長で除算が行なわれることは、シフトレジスタに格納された値の平均値を求めることになる。最初は、シフトレジスタ5045に十分多くの値が記憶されていないために、実際に値が記憶されているレジスタの数で除算する。実際に値が記憶されているレジスタの数は、カウント値がレジスタ長より小さいときはカウント値に等しく、カウント値がレジスタ長より大きくなると、レジスタ長と等しくなる。
【００３０】
図４４は、図４３に含まれる更新判定部520の構成を示すブロック図である。更新判定部520は、論理和計算部5201、比較部5203、5205、閾値記憶部5204、5206、閾値計算部5207を有する。図３６のカウンタ4から供給されるカウント値は、比較部5203に伝達される。閾値記憶部5204の出力である閾値も、比較部5203に伝達される。比較部5203は、供給されたカウント値と閾値を比較し、カウント値が閾値より小さいときに“１”を、カウント値が閾値より大きいときに“０”を、論理和計算部5201に伝達する。
【００３１】
一方、閾値計算部 5207 は、図４３の推定雑音記憶部 5042 から供給される周波数別推定雑音パワースペクトルに応じた値を計算し、閾値として閾値記憶部 5206 に出力する。最も簡単な閾値の計算方法は、周波数別推定雑音パワースペクトルの定数倍である。その他に、高次多項式や非線形関数を用いて閾値を計算することも可能である。閾値記憶部 5206 は、閾値計算部 5207 から出力された閾値を記憶し、1フレーム前に記憶された閾値を比較部 5205 へ出力する。比較部 5205 は、閾値記憶部 5206 から供給される閾値と図４２の分離部 502 から供給される周波数別劣化音声パワースペクトルを比較し、周波数別劣化音声パワースペクトルが閾値よりも小さければ“１”を、大きければ“０”を論理和計算部 5201 に出力する。
【００３２】
すなわち、推定雑音パワースペクトルの大きさをもとに、劣化音声信号が雑音であるか否かを判別している。論理和計算部 5201 は、比較部 5203 の出力値と比較部 5205 の出力値との論理和を計算し、計算結果を図４３のスイッチ5044、シフトレジスタ5045及びカウンタ5049に出力する。このように、初期状態や無音区間だけでなく、有音区間でも劣化音声パワーが小さい場合には、更新判定部 520 は“０”を出力する。すなわち、推定雑音の更新が行われる。閾値の計算は各周波数毎に行われるため、各周波数毎に推定雑音の更新を行うことができる。
【００３３】
図４５は、図３６に含まれる推定先天的SNR計算部7の構成を示すブロック図である。推定先天的SNR計算部7は、多重値域限定処理部701、後天的SNR記憶部702、抑圧係数記憶部703、多重乗算部704、705、重み記憶部706、多重重みつき加算部707、加算器708を有する。図３６の周波数別SNR計算部6から供給される後天的SNRγn(k) (k=0, 1, ..., K-1)は、後天的SNR記憶部702と加算器708に伝達される。後天的SNR記憶部702は、第nフレームにおける後天的SNRγn(k)を記憶すると共に、第n-1フレームにおける後天的SNRγn-1(k)を多重乗算部705に伝達する。
【００３４】
図３６の抑圧係数補正部15から供給される補正抑圧係数Gn(k)バー (k=0, 1, ..., K-1)は、抑圧係数記憶部703に伝達される。抑圧係数記憶部703は、第nフレームにおける補正抑圧係数Gn(k)バーを記憶すると共に、第n-1フレームにおける補正抑圧係数Gn-1(k)バーを多重乗算部704に伝達する。多重乗算部704は、供給されたGn(k)バーを2乗してG2n-1(k)バーを求め、多重乗算部705に伝達する。多重乗算部705は、G2n-1(k)バーとγn-1(k)をk=0, 1,
..., K-1に対して乗算してG2n-1(k)バーγn-1 (k)を求め、結果を多重重み付き加算部707に過去の推定SNR 922として伝達する。多重乗算部704及び705の構成は、既に図３７を用いて説明した多重乗算部13に等しいので、詳細な説明は省略する。
【００３５】
加算器708の他方の端子には-1が供給されており、加算結果γn(k)-1が多重値域限定処理部701に伝達される。多重値域限定処理部701は、加算器708から供給された加算結果γn(k)-1に値域限定演算子P[・]による演算を施し、結果であるP[γn(k)-1]を多重重みつき加算部707に瞬時推定SNR 921として伝達する。ただし、P[x]は式(10)で定められる。
【００３６】
【数１０】
2006337415.tif 000012
多重重みつき加算部707には、また、重み記憶部706から重み923が供給されている。多重重みつき加算部707は、これらの供給された瞬時推定SNR 921、過去の推定SNR 922、重み923を用いて推定先天的SNR 924を求める。重み923をαとし、ξn(k)ハットを推定先天的SNR とすると、ξn(k)ハットは、式(11)によって計算される。
【００３７】
【数１１】
2006337415.tif 000013
ここに、G2-1(k)γ-1(k)バー=1とする。
【００３８】
図４６は、図４５に含まれる多重値域限定処理部701の構成を示すブロック図である。多重値域限定処理部701は、定数記憶部7011、最大値選択部70120〜7012K-1、分離部7013、多重化部7014を有する。分離部7013には、図４５の加算器708から、γn(k)-1が供給される。分離部7013は、供給されたγn(k)-1をK個の周波数別成分に分離し、最大値選択部70120〜7012K-1に供給する。最大値選択部70120〜7012K-1の他方の入力には、定数記憶部7011からゼロが供給されている。最大値選択部70120〜7012K-1は、γn(k)-1をゼロと比較し、大きい方の値を多重化部7014へ伝達する。この最大値選択演算は、式(10)を実行することに相当する。多重化部7014は、これらの値を多重化して出力する。
【００３９】
図４７は、図４５に含まれる多重重みつき加算部707の構成を示すブロック図である。多重重みつき加算部707は、重みつき加算部70710〜7071K-1、分離部7072、7074、多重化部7075を有する。分離部7072には、図４５の多重値域限定処理部701から、P[γn(k)-1]が瞬時推定SNR921として供給される。分離部7072は、P[γn(k)-1]をK個の周波数別成分に分離し、周波数別瞬時推定SNR9210〜921K-1として、重みつき加算部70710〜7071K-1に伝達する。分離部7074には、図４５の多重乗算部705から、G2n-1(k)バーγn-1(k)が過去の推定SNR922として供給される。
【００４０】
分離部7074は、G2n-1(k)バーγn-1(k)をK個の周波数別成分に分離し、過去の周波数別推定SNR 9220〜922K-1として、重みつき加算部70710〜7071K-1に伝達する。一方、重みつき加算部70710〜7071K-1には、重み923も供給される。重みつき加算部70710〜7071K-1は、式(11)によって表される重みつき加算を実行し、周波数別推定先天的SNR 9240〜924K-1を多重化部7075に伝達する。多重化部7075は、周波数別推定先天的SNR 9240〜924K-1を多重化し、推定先天的SNR 924として出力する。重みつき加算部 70710〜7071K-1 の動作と構成については、次に図４８を参照しながら説明する。
【００４１】
図４８は、図４７に含まれる重みつき加算部7071の構成を示すブロック図である。重みつき加算部7071は、乗算器7091、7093、定数乗算器7095、加算器7092、7094を有する。図４７の分離部7072から周波数別瞬時推定SNR921が、図４７の分離部7074から過去の周波数別SNR922が、図４５の重み記憶部706から重み923が、それぞれ入力として供給される。値αを有する重み923は、定数乗算器7095と乗算器7093に伝達される。定数乗算器7095は入力信号を-1倍して得られた-αを、加算器7094に伝達する。加算器7094のもう一方の入力としては１が供給されており、加算器7094の出力は両者の和である１-αとなる。１-αは乗算器7091に供給されて、もう一方の入力である周波数別瞬時推定SNR P[γn(k)-1]
と乗算され、積である(１-α)P[γn(k)-1]が加算器7092に伝達される。一方、乗算器7093では、重み923として供給されたαと過去の推定SNR922が乗算され、積であるαG2n-1(k)バーγn-1(k)が加算器7092に伝達される。加算器7092は、(１-α)P[γn(k)-1]とαG2n-1(k)バーγn-1(k)の和を、周波数別推定先天的SNR 924として出力する。
【００４２】
図４９は、図３６に含まれる雑音抑圧係数生成部8を示すブロック図である。雑音抑圧係数生成部 8 は、MMSE STSA ゲイン関数値計算部 811、一般化尤度比計算部 812、及び抑圧係数計算部 814 を有する。以下、特許文献１に記載されている計算式をもとに、抑圧係数の計算方法を説明する。
【００４３】
フレーム番号をn、周波数番号をkとし、 γn(k) を図３６の周波数別SNR 計算部
6 から供給される周波数別後天的SNR、ξn(k) ハットを図３６の推定先天的SNR計算部 7 から供給される周波数別推定先天的SNR、q を図３６の音声非存在確率記憶部21から供給される音声非存在確率とする。また、ηn(k) = ξn(k)ハット/ (1-q)、vn(k)
= (ηn(k)γn(k))/(1+ηn(k))  とする。MMSE STSA ゲイン関数値計算部 811 は、図３６の周波数別SNR計算部 6 から供給される後天的SNR
γn(k)、図３６の推定先天的SNR計算部 7 から供給される推定先天的SNR ξn(k)
ハット及び図３６の音声非存在確率記憶部21から供給される音声非存在確率 qをもとに、各周波数毎にMMSE STSAゲイン関数値を計算し、抑圧係数計算部 814 に出力する。各周波数毎のMMSE STSAゲイン関数値 Gn(k) は、
【００４４】
【数１２】
2006337415.tif 000014
で与えられる。
【００４５】
ここに、I0(z)
は0次変形ベッセル関数、I1(z) は1次変形ベッセル関数 である。変形ベッセル関数については、非特許文献１に記載されている。
【００４６】
一般化尤度比計算部 812 は、図３６の周波数別SNR計算部 6 から供給される後天的SNR γn(k)、図３６の推定先天的SNR計算部 7 から供給される推定先天的SNR ξn(k) ハット及び図３６の音声非存在確率記憶部 21から供給される音声非存在確率qをもとに、周波数毎に一般化尤度比を計算し、抑圧係数計算部 814 に出力する。周波数毎の一般化尤度比Λn(k) は、
【００４７】
【数１３】
2006337415.tif 000015
で与えられる。
【００４８】
抑圧係数計算部 814 は、MMSE STSA ゲイン関数値計算部 811 から供給される MMSE STSA ゲイン関数値Gn(k)と一般化尤度比計算部 812 から供給される一般化尤度比Λn(k)から周波数毎に抑圧係数を計算し、図３６の抑圧係数補正部 15 へ出力する。周波数毎の抑圧係数Gn(k)バーは、
【００４９】
【数１４】
2006337415.tif 000016
で与えられる。周波数別にSNRを計算する代わりに、複数の周波数から構成される帯域に共通なSNRを求めて、これを用いることも可能である。
【００５０】
図５０は、図３６に含まれる抑圧係数補正部15を示すブロック図である。抑圧係数補正部 15 は、周波数別抑圧係数補正部15010〜1501K-1、分離部 1502、1503 及び多重化部
1504 を有する。
【００５１】
分離部
1502 は、図３６の推定先天的SNR計算部 7 から供給される推定先天的SNRを周波数別成分に分離し、それぞれ周波数別抑圧係数補正部15010〜1501K-1に出力する。分離部 1503 は、図３６の抑圧係数生成部8から供給される抑圧係数を周波数別成分に分離し、それぞれ周波数別抑圧係数補正部 15010〜1501K-1に出力する。周波数別抑圧係数補正部15010〜1501K-1は、分離部 1502 から供給される周波数別推定先天的SNRと、分離部 1503 から供給される周波数別抑圧係数から、周波数別補正抑圧係数を計算し、多重化部 1504 へ出力する。多重化部 1504 は、周波数別抑圧係数補正部15010〜1501K-1 から供給される周波数別補正抑圧係数を多重化し、補正抑圧係数として図３６の多重乗算部 16 と推定先天的SNR計算部7へ出力する。
【００５２】
次に図５１を参照しながら、周波数別抑圧係数補正部15010〜1501K-1 の構成と動作について詳細に説明する。
【００５３】
図５１は、抑圧係数補正部 15 に含まれる周波数別抑圧係数補正部15010〜1501K-1の構成を示すブロック図である。周波数別抑圧係数補正部
1501 は、最大値選択部 1591、抑圧係数下限値記憶部
1592、閾値記憶部 1593、比較部 1594、スイッチ 1595、修正値記憶部 1596 及び乗算器 1597 を有する。
【００５４】
比較部1594は、閾値記憶部 1593 から供給される閾値と、図５０の分離部 1502 から供給される周波数別推定先天的 SNR を比較し、周波数別推定先天的SNRが閾値よりも大きければ“０”を、小さければ“１”をスイッチ 1595 に供給する。スイッチ 1595 は、図５０の分離部1503から供給される周波数別抑圧係数を、比較部 1594 の出力値が“１”のときに乗算器 1597 に出力し、“０”のときに最大値選択部1591に出力する。すなわち、周波数別推定先天的SNRが閾値よりも小さいときに、抑圧係数の補正が行われる。乗算器 1597 は、スイッチ 1595 の出力値と修正値記憶部 1596 の出力値との積を計算し、最大値選択部1591に出力する。
【００５５】
一方、抑圧係数下限値記憶部 1592 は、記憶している抑圧係数の下限値を、最大値選択部 1591 に供給する。最大値選択部 1591 は、図５０の分離部 1503 から供給される周波数別抑圧係数、又は乗算器 1597 で計算された積と、抑圧係数下限値記憶部 1592 から供給される抑圧係数下限値とを比較し、大きい方の値を図５０の多重化部 1504 に出力する。すなわち、抑圧係数は抑圧係数下限値記憶部 1592 が記憶する下限値よりも必ず大きい値になる。
【特許文献１】特開2002-204175
【非特許文献１】1985年、数学辞典、岩波書店、374.Gページ
【非特許文献２】1979 年12 月、プロシーディングス・オブ・ザ・アイ・イー・イー・イー、第67 巻、第12 号(PROCEEDINGS OF THE IEEE, VOL.67,NO.12, PP.1586-1604, DEC, 1979)、1586 〜1604 ページ
【非特許文献３】1979 年4 月、アイ・イー・イー・イー・トランザクションズ・オン・アクースティクス・スピーチ・アンド・シグナル・プロセシング、第27巻、第2号(IEEETRANSACTIONS ON ACOUSTICS, SPEECH, AND SIGNAL PROCESSING,VOL.27, NO.2,PP.113-120, APR, 1979)、113〜120 ページ
【発明の開示】
【発明が解決しようとする課題】
【００５６】
これまで説明した従来の方法では、音声区間と雑音区間を区別せずに、常に同一の計算方法で求めた抑圧係数を用いて雑音抑圧を行っていた。このため、音声区間で音声歪みが発生し、雑音区間での抑圧が不十分になるという問題があった。
【００５７】
本発明の目的は、音声区間と雑音区間を区別し、それぞれに適した計算方法で求めた抑圧係数を用いて雑音抑圧を行うことによって、音声区間での音声歪みを低減し、雑音区間において十分な抑圧を達成することのできる雑音抑圧の方法及び装置を提供することである。
【課題を解決するための手段】
【００５８】
本発明の雑音抑圧の方法及び装置では、無音部用係数と有音部係数に基づき、雑音抑圧後に更に抑圧を行う後抑圧を用いることを特徴とする。
【００５９】
より具体的には、強調音声パワースペクトルと推定雑音パワースペクトルに基づいて無音部用係数を計算する無音部用係数計算部と、有音部用係数を記憶する有音部用係数記憶部と、得られた無音部用係数と有音部用係数をもとに後抑圧係数を計算するための後抑圧係数計算部を備えていることを特徴とする。
【発明の効果】
【００６０】
本発明では、強調音声パワースペクトルと推定雑音パワースペクトルに基づいて計算された無音部用係数と、有音部用係数を用いて抑圧係数を補正するので、音声区間では有音部用係数に基づき抑圧を弱め、雑音区間では強調音声パワースペクトルと推定雑音パワースペクトルに応じた無音部用係数に基づき抑圧を強めるように後抑圧を行うことが可能となり、音声区間では歪みが少なく雑音区間では残留雑音が少ない強調音声を得ることができる。
【発明を実施するための最良の形態】
【００６１】
図１は本発明の最良の実施の形態を示すブロック図である。図１と従来例である図３６とは、強調音声振幅スペクトル補正部18を除いて同一である。以下、これらの相違点を中心に詳細な動作を説明する。
【００６２】
強調音声振幅スペクトル補正部18には、フーリエ変換部3から劣化音声振幅スペクトル、推定雑音計算部5から推定雑音パワースペクトル、多重乗算部16から強調音声振幅スペクトル、そして抑圧係数補正部15から補正抑圧係数がそれぞれ供給されている。強調音声振幅スペクトル補正部18は、これらの劣化音声振幅スペクトル、推定雑音パワースペクトル、強調音声振幅スペクトル、補正抑圧係数を用いて強調音声振幅スペクトルを補正し、逆フーリエ変換部9へ伝達する。強調音声振幅スペクトル補正部18の構成と動作の詳細な説明は、図２を参照しながら行う。
【００６３】
図２は強調音声振幅スペクトル補正部18の構成を示すブロック図である。強調音声振幅スペクトル補正部18は、多重乗算部170、173、音声存在確率計算部171、後抑圧係数計算部182を有する。多重乗算部170は、図１の多重乗算部16から供給される強調音声振幅スペクトルを用いて、強調音声パワースペクトルを計算し、音声存在確率計算部171へ伝達する。音声存在確率計算部171は、多重乗算部170及び図１の推定雑音計算部5から供給される強調音声パワースペクトル及び推定雑音パワースペクトルを用いて、音声存在確率を計算し、後抑圧係数計算部182に伝達する。音声存在確率計算部に供給されている強調音声パワースペクトルと推定雑音パワースペクトルは、共に劣化音声振幅スペクトルから計算されている。従って、音声存在確率は、本質的には劣化音声パワースペクトルを基に計算されていると言える。
【００６４】
後抑圧係数計算部182は、音声存在確率計算部171から供給された音声存在確率と、図１の抑圧係数補正部15から供給された補正抑圧係数と、図１の推定雑音計算部5から供給された推定雑音と、図１の抑圧係数補正部15から供給された補正抑圧係数を用いて、後抑圧係数を計算し、多重乗算部173に伝達する。多重乗算部173は、図１のフーリエ変換部から供給された劣化音声振幅スペクトルを、後抑圧係数計算部172から供給された後抑圧係数で重みづけすることによって補正強調音声振幅スペクトルを求め、図１の逆フーリエ変換部9に伝達する。多重乗算部170、173の構成は、図３７を用いて説明した多重乗算部13に等しいので、詳細な説明は省略する。
【００６５】
音声存在確率計算部171及び後抑圧係数計算部182の構成と動作の詳細な説明は、図３及び図５を参照しながら行う。
【００６６】
図３は音声存在確率計算部171の構成を示すブロック図である。音声存在確率計算部171は、分離部1700、1708、平均値計算部1701、1709、対数計算部1702、1710、乗算部1703、1711、平滑化係数記憶部1704、1706、平滑化部1705、1707、関数値計算部1712、1713、平均指標計算部1714、瞬時指標計算部1715、加算部1716を有する。
【００６７】
分離部1700は、図２の多重乗算部170から供給される強調音声パワースペクトルを周波数別強調音声パワースペクトルに分離し、平均値計算部 1701 へ出力する。平均値計算部1701は、強調音声パワースペクトル|Xn(k)|2バーのk=0からK-1に対する総和をKで除算し、計算結果を対数計算部1702へ伝達する。対数計算部1702は、平均値計算部1701から入力された平均値の対数を計算し、乗算器1703へ伝達する。乗算器1703は、供給された対数値を定数倍して、強調音声パワーPEnを求め、平滑化部1705、1707へ供給する。すなわち、第nフレームの強調音声パワーPEnは、
【００６８】
【数１５】
2006337415.tif 000017
で与えられる。
【００６９】
一方、分離部1708は、図１の雑音推定計算部5から供給された推定雑音パワースペクトルを周波数別推定雑音パワースペクトルに分離し、平均値計算部 1709 へ出力する。平均値計算部 1709は、周波数別推定雑音パワースペクトルλn(k)のk=0からK-1に対する総和をKで除算し、計算結果を対数計算部1710へ伝達する。対数計算部1710は、平均値計算部1709から供給された平均値の対数を計算し、乗算器1711へ伝達する。乗算器1711は、供給された対数値を定数倍して、推定雑音パワーPNnを求め、関数値計算部1712、1713へ供給する。すなわち、第nフレームの推定雑音パワーPNnは、
【００７０】
【数１６】
2006337415.tif 000018
2006337415.tif 000019
で与えられる。
【００７１】
入力信号に音声がどの程度含まれているかを表す指標は、推定雑音パワーPNnと強調音声パワーPEnの相対関係をもとに計算される。強調音声パワーPEnが推定雑音パワーPNnよりも大きければ、指標は音声の存在確率が高いことを示す。一般的に、推定雑音パワーPNnと強調音声パワーPEnは非定常信号であるため、音声区間において推定雑音パワーPNnが強調音声パワーPEnよりも大きくなる場合が発生する。逆に、雑音区間でも推定雑音パワーPNnが強調音声パワーPEnよりも大きくなることがある。従って、それぞれのパワーを補正せずに指標計算に用いると、誤った音声存在確率が得られる可能性がある。このため、音声存在確率計算の精度を向上するには、推定雑音パワーPNnと強調音声パワーPEnを適切に補正することが望ましい。また、複数の補正方法を導入し、複数の指標をもとに音声存在確率を計算すれば、精度は更に向上する。
【００７２】
本実施例では、強調音声パワーPEnは平滑化部1715と1716において平滑化処理を用いて、推定雑音パワーPNnは関数値計算部 1712と1713において適切な関数を用いて、指標計算に適した値に補正される。指標としては、分析区間長がそれぞれ異なる瞬時指標と平均指標の二種類が計算される。
【００７３】
平滑化部1705は、平滑化係数記憶部1704から供給された平滑化係数を用いて、乗算器1703から供給された強調音声パワーPEnを時間方向に平滑化し、第一の平滑強調音声パワーを瞬時指標計算部1715へ供給する。平滑化部1707も同様に、平滑化係数記憶部1706から供給された平滑化係数を用いて、乗算器1703から供給された強調音声パワーPEnを時間方向に平滑化し、第二の平滑強調音声パワーを平均指標計算部1714へ供給する。基本的に、平滑化係数記憶部1704に記憶されている係数の方が、平滑化係数記憶部1706の係数よりも小さくなるように設定される。これは、平滑化係数の値が小さい程、平滑化部の時間方向平滑化効果が小さくなり、瞬時指標の計算に適しているためである。
【００７４】
関数値計算部1713は、乗算器1711から供給された推定雑音パワーPNnから第一の関数値を計算し、瞬時指標計算部1715へ供給する。関数値計算部1712も同様に、乗算器1711から供給された推定雑音パワーPNnから第二の関数値を計算し、平均指標計算部1714へ供給する。関数値の計算には、ダイナミックレンジの圧縮や拡大を行うために線形又は非線形関数や、分散を低減するために平滑化が用いられる。ダイナミックレンジの圧縮や拡大、分散の低減により、推定雑音パワーPNnの非定常性に起因する指標計算の精度劣化を低減できる。また、演算量を低減するために、関数値計算を省略し、推定雑音パワーPNnをそのまま指標計算に利用することも可能である。関数値計算部1712と1713では、例えば次のような関数が利用される。
【００７５】
【数１７】
2006337415.tif 000020
但し、PNn
ハットは関数値、afcとbfcは実数である。
【００７６】
瞬時指標計算部1715は、平滑化部1705から供給された第一の平滑強調音声パワーと、関数値計算部1713から供給された第一の関数値を用いて、瞬時指標を計算し、加算部1716へ供給する。平均指標計算部1714は、平滑化部1707から供給された第二の平滑強調音声パワーと、関数値計算部1712から供給された第二の関数値を用いて、平均指標を計算し、加算部1716へ供給する。指標の計算には、強調音声パワーPEnと推定雑音パワーPNnの比を計算し、その比に応じて数値を大きくする方法が利用される。具体例としては、次のような計算方法が挙げられる。
【００７７】
【数１８】
2006337415.tif 000021
但し、IDXn
は指標、PEn バーは平滑強調音声パワー、PNn ハットは関数値である。また、θidx、aidxとbidxは実数で、aidxはbidx以上の値を有する。
【００７８】
比を計算するときに分母に定数を加えると、分母の値が定数よりも小さくならないので、比を計算する際に発散を防止できる。この他にも、強調音声パワーPEnと推定雑音パワーPNnの差や、差を強調音声パワーPEnで正規化した値を用いて計算することもできるが、詳細は省略する。
【００７９】
加算部1716は、平均指標計算部1714及び瞬時指標計算部1715から供給された平均指標及び瞬時指標の和を計算し、音声存在確率として図２の後抑圧係数計算部172へ伝達する。音声存在確率の計算には、加算以外にも、重みつき加算や乗算を用いることが可能である。音声存在確率の精度を改善するために、分析区間が異なる3種類以上の指標を計算しても良い。また、1種類の指標だけを利用し、計算を簡略化することも可能である。
【００８０】
平滑化部1705の構成と動作の詳細な説明は、図４を用いて行う。
【００８１】
図４は、図３の平滑化部1705の構成を示すブロック図である。平滑化部1705は、定数乗算器1741、乗算器1743、1744、加算器1742、1745、遅延器1746を有する。図３の乗算器1703から強調音声パワーPEnが、図３の平滑化係数記憶部1704から平滑化係数が、それぞれ入力として供給される。値δを有する平滑化係数は、定数乗算器1741と乗算器1744に伝達される。定数乗算器1741は、入力信号を-1倍して-δとし、これを加算器1742に伝達する。加算器1742のもう一方の入力としては１が供給されており、加算器1742の出力は両者の和である１-δとなる。１-δは乗算器1743に供給されて、もう一方の入力である強調音声パワー PEn と乗算され、積である(１-δ)PEnが加算器1745に伝達される。
【００８２】
一方、乗算器1744では、平滑化係数として供給されたδと遅延器1746から供給された１フレーム前の平滑化強調音声パワーPEn-1バーが乗算され、積であるδPEn-1バーが加算器1745に伝達される。加算器1745は、(１-δ)PEnとδPEn-1バーの和を遅延器1746と図３の瞬時指標計算部1715に、平滑化強調音声パワーPEnバーとして、出力する。以上の計算は、式(19)によって表すことができる。
【００８３】
【数１９】
2006337415.tif 000022
平滑化部1707の構成は、平滑化部1705と同じである。但し、平滑化部1707は、平滑化係数記憶部 1706 から供給される平滑化係数を用いて、平滑化強調音声パワーを計算する。また、平滑化部1705と1707では、式(19)の他に、移動平均を利用することも可能である。
【００８４】
図５は、図２の後抑圧係数計算部182の構成を示すブロック図である。後抑圧係数計算部182は、分離部1722、周波数別後抑圧係数計算部18210〜1821K-1、多重化部1723を有する。分離部1722は、図１の抑圧係数補正部5から供給された補正抑圧係数を周波数別補正抑圧係数に分離し、周波数別後抑圧係数計算部18210〜1821K-1に伝達する。周波数別後抑圧係数計算部18210〜1821K-1は、図２の音声存在確率計算部171、図１の多重乗算部16及び推定雑音計算部5からそれぞれ供給される音声存在確率、強調音声振幅スペクトル、推定雑音パワースペクトル、及び分離部1722から供給される周波数別補正抑圧係数を用いて、周波数別後抑圧係数を計算し、多重化部1723に伝達する。
【００８５】
周波数別後抑圧係数計算部18210〜1821K-1の構成と動作の詳細な説明は、図６を参照しながら行う。
【００８６】
図６は、図５の周波数別後抑圧係数計算部18210〜1821K-1の構成を示すブロック図である。周波数別後抑圧係数計算部1821は、有音部用係数記憶部1831、無音部用係数計算部1832、係数計算部1833、乗算器1834を有する。周波数別後抑圧係数計算部1821は、音声存在確率に応じて、周波数別後抑圧係数を計算する。音声存在確率が低ければ、無音部用係数の寄与率が高い係数を用いて、周波数別後抑圧係数の値を小さくする。このため、雑音区間での残留雑音を更に低減できる。逆に、音声存在確率が高い場合には、有音部用係数の寄与率が高い係数を用いて、周波数別後抑圧係数が周波数別補正抑圧係数と同等の値になるように補正する。また、周波数別後抑圧係数が周波数別補正抑圧係数よりも少し大きくなるように補正しても良い。以上から、音声存在確率が高い場合には、音声の過剰抑圧を防止できる。本実施例では、係数は各周波数毎に計算しているが、全帯域で共通の係数を求め、その係数を周波数別補正抑圧係数に適用すれば、係数の計算に必要な演算量を低減できる。
【００８７】
係数計算部1833は、有音部用係数記憶部1831と無音部用係数計算部1832からそれぞれ出力される有音部用係数と無音部用係数、及び図２の音声存在確率計算部171から供給される音声存在確率をもとに、係数を計算する。
【００８８】
音声存在確率をp、有音部用係数をFV、無音部用係数をFU
とした場合に、係数計算部1833から出力される係数Fは、式(20)で与えられる。
【００８９】
【数２０】
2006337415.tif 000023
係数の計算では、音声存在確率が大きければ、係数計算部1833の出力値に対する有音部用係数の寄与率を大きくする。式(20)の計算方法では、音声存在確率をそのまま寄与率として利用している。
【００９０】
また、式(21)に示すように、適当な関数FSFC、GSFCを用いて有音部用と無音部用の係数を補正してから、音声存在確率を寄与率として利用することも可能である。
【００９１】
【数２１】
2006337415.tif 000024
この他にも、音声存在確率が予め定められた値以上の場合は、有音部用係数を係数計算部1833から出力することもできる。そして、乗算器1834は、図５の分離部1722から供給される周波数別補正抑圧係数と、係数計算部1833から供給される係数の積を計算し、周波数別後抑圧係数として図５の多重化部1723に伝達する。
【００９２】
無音部用係数計算部1832は、図２の音声存在確率計算部171、図１の多重乗算部16及び推定雑音計算部1からそれぞれ供給される音声存在確率、強調音声振幅スペクトル、推定雑音パワースペクトルを用いて、無音部用係数を求め、係数計算部1833へ供給する。雑音区間の残留雑音を低減するため、有音部用係数よりも小さな値を出力するように無音部用係数計算部1832を設計する。
【００９３】
無音部用係数計算部1832の構成と動作の詳細な説明は、図７を用いて行う。
【００９４】
図７は、図６の無音部用係数計算部1832の構成を示すブロック図である。無音部用係数計算部1832は、分離部1850、1855、平均値計算部1851、1856、音声パワー混合部1852、平滑化部1853、平滑化係数記憶部1854、平滑信号記憶部1858、除算部1857、1862、対数計算部1859、定数乗算部1860、係数計算部
1861、指数計算部1863を有する。
【００９５】
分離部1850は、図１の多重乗算部16から供給される強調音声パワースペクトルを周波数別強調音声パワースペクトルに分離し、平均値計算部 1851 へ伝達する。平均値計算部 1851は、周波数別強調音声パワースペクトル|Xn(k)|2バーのk=0からK-1に対する総和をKで除算し、強調音声パワーとして音声パワー混合部1852へ伝達する。音声パワー混合部1852は、平均値計算部1851から供給される強調音声パワーと、平滑信号記憶部1858から供給される1フレーム前の平滑強調音声パワーを、図２の音声存在確率計算部171から供給される音声存在確率に応じて混合し、混合した信号を平滑化部1853へ伝達する。混合の際、音声存在確率が高ければ、平均電力計算部1851から供給される強調音声平均パワーの比率を高くし、低ければ、平滑信号記憶部1858から供給される平滑強調音声パワーの比率を高くする。
【００９６】
平滑化部1853は、平滑化係数記憶部 1854 から供給される平滑化係数に応じて、音声パワー混合部1852から供給された混合信号を平滑化し、平滑強調音声パワーとして平滑信号記憶部1858と除算部1857に伝達する。音声パワー混合部の機能から明らかなように、音声存在確率が低い区間では、平滑化部1853は、1フレーム前の平滑強調音声パワーが多く含まれた信号を用いて、平滑強調音声パワーを計算する。従って、平滑強調音声パワーは殆ど更新されない。このため、平滑部1853からは、雑音区間においても、音声区間で計算された強調音声パワーが常に出力される。一方、音声存在確率が高い区間では、平滑化部1853は、強調音声平均パワーが多く含まれた信号を用いて、平滑強調音声パワーを計算する。
【００９７】
音声パワー混合部1852で利用されている音声存在確率は、図２の音声存在確率計算部171から供給されており、強調音声パワースペクトルと推定雑音パワースペクトルを基に計算されている。無音部用係数計算部1832にも、強調音声パワースペクトルと推定雑音パワースペクトルが入力されているので、音声パワー混合部1852で利用する音声存在確率を無音部用係数計算部1832の内部でも計算することが可能である。
【００９８】
また、図２の音声存在確率計算部171の場合と同様に、強調音声パワースペクトルと推定雑音パワースペクトルは、劣化音声振幅スペクトルをもとに計算されているので、音声パワー混合部1852で利用されている音声存在確率は、本質的には劣化音声振幅スペクトルから求められているといえる。
【００９９】
一方、分離部1855は、図１の推定雑音計算部5から供給された推定雑音パワースペクトルを周波数別推定雑音パワースペクトルに分離し、平均値計算部 1856 へ出力する。平均値計算部 1856は、周波数別推定雑音パワースペクトルλn(k)のk=0からK-1に対する総和をKで除算し、計算結果を推定雑音平均パワーとして除算部1857へ伝達する。除算部1857は、平滑化部1853から供給される強調音声平均パワーを、平均値計算部 1856から供給される推定雑音平均パワーで除算し、除算結果を対数計算部1859へ伝達する。対数計算部1859は、除算部1857から供給された除算結果の対数を計算し、対数値を定数乗算部1860へ伝達する。
【０１００】
この定数乗算部1860は、対数計算部1859から供給された対数値を定数倍して、演算結果を係数計算部1861に伝達する。係数計算部1861は、定数乗算部1860の出力から係数を求め、除算部1862へ伝達する。除算部1862のもう一方の入力としては10が供給されているので、除算部1862は、係数計算部1861から供給された係数を10で除算し、除算結果を指数計算部1863へ伝達する。指数部計算部1863は、除算部1862の出力の指数を計算し、演算結果を無音部用係数として図６の係数計算部1833へ伝達する。
【０１０１】
除算部1857の演算結果は、強調音声平均パワーと推定雑音パワーの比、すなわちSNRに相当する。従って、係数計算部1861は、SNRをもとに無音部の抑圧度を計算していることになる。SNRを計算する目的は、音声存在確率計算部171で求めた音声存在確率の信頼度を、係数の計算に反映することである。SNRが高い場合、すなわち音声存在確率の信頼度が高い場合には、音声を誤って抑圧する可能性が小さいので、係数を小さくし、抑圧度を増加させる。一方、音声存在確率の信頼度が低い場合には、音声を誤って抑圧することを防ぐため、係数を大きくし、抑圧度を減少させる。SNRから係数を求めることが重要なので、計算を簡略化するために、対数計算部1859と指数計算部1863のどちらか一方、もしくは両方を省略することが可能である。
【０１０２】
また、予め適切に設定した定数を推定雑音平均パワーに加算してから除算を行えば、除算結果の発散を防ぐことができる。除算ではなく、除算の近似演算を利用しても、発散を防止できる。
【０１０３】
本実施例では、強調音声平均パワーと推定雑音パワーを計算する際に、全帯域のパワースペクトルの平均値を用いたが、適当な帯域幅を持ったサブバンド毎に計算したパワースペクトルの平均値を用いる方法も有効である。各帯域毎に平均値を計算するので、全帯域の平均値を用いた場合よりも、各帯域で正確なSNRを計算することが可能になる。
【０１０４】
図８に、図７の係数計算部1861で係数を計算する際に用いる非線形関数の例を示す。fcm を入力値としたとき、図８に示される非線形関数の出力値 gcm は、式(22)で与えられる。
【０１０５】
【数２２】
2006337415.tif 000025
但し、acm,
bcm, ccm, dcmは正の実数である。
【０１０６】
fcm
が大きくなれば gcm が小さくなることが、式(22)の非線形関数に求められる条件である。式(22)の他にも、この条件を満たすような線形関数や高次多項式、重みつき加算を含む任意の関数を用いることができる。
【０１０７】
図９は本発明の第２の実施の形態を示すブロック図である。図９と第１の実施例である図１とは、強調音声振幅スペクトル補正部28を除いて同一である。強調音声振幅スペクトル補正部28の構成と動作の詳細な説明は、図１０を参照しながら行う。
【０１０８】
図１０は強調音声振幅スペクトル補正部28の構成を示すブロック図である。図２に示した強調音声振幅スペクトル補正部18とは、後抑圧係数計算部182が後抑圧係数計算部282に置換されていることを除いて同一である。後抑圧係数計算部282の構成と動作の詳細な説明は、図１１を参照しながら行う。
【０１０９】
図１１は後抑圧係数計算部282の構成を示すブロック図である。図５に示した後抑圧係数計算部182とは、周波数別後抑圧係数計算部18210〜1821K-1が周波数別後抑圧係数計算部28210〜2821K-1に置換されていることを除いて同一である。周波数別後抑圧係数計算部28210〜2821K-1の構成と動作の詳細な説明は、図１２を参照しながら行う。
【０１１０】
図１２は、図１１の周波数別後抑圧係数計算部28210〜2821K-1の構成を示すブロック図である。図６に示した周波数別後抑圧係数計算部1821とは、有音部用係数記憶部1831が有音部用係数計算部2831に置換されていることを除いて同一である。無音部用係数だけでなく、有音部用係数も計算するので、図６の周波数別後抑圧係数計算部よりも有音部で高音質を達成できる。
【０１１１】
有音部用係数計算部2831は、図９の多重乗算部16及び推定雑音計算部5からそれぞれ供給される強調音声パワースペクトルと推定雑音パワースペクトルを用いて、有音部用係数を求め、係数計算部1833へ供給する。推定雑音パワーが強調音声パワーよりも大きい場合、又は両パワーの大きさが同等の場合には、有音部用係数計算部2831は、推定雑音と強調音声のパワー比に応じて、1.0以上の値を出力する。これは、補正抑圧係数が適切な値よりも小さくなっている可能性があるので、音声区間で過剰抑圧となることを防ぐために行う。一方、推定雑音が強調音声よりも小さい場合には、音声区間で過剰抑圧が発生する可能性は低い。そこで、推定雑音と強調音声のパワー比とは無関係に、1.0以上の適切な定数値を出力する。
【０１１２】
図１３は本発明の第３の実施の形態を示すブロック図である。図１３と第１の実施例である図１とは、強調音声振幅スペクトル補正部17を除いて同一である。後述するように、強調音声振幅スペクトル補正部17と18の違いは、後抑圧係数の計算を行う際に、強調音声振幅スペクトル補正部17が推定雑音パワースペクトルと強調音声パワースペクトルを利用しないところである。強調音声振幅スペクトル補正部17の構成と動作の詳細な説明は、図１４を参照しながら行う。
【０１１３】
図１４は強調音声振幅スペクトル補正部17の構成を示すブロック図である。図２に示した強調音声振幅スペクトル補正部18とは、後抑圧係数計算部182が後抑圧係数計算部172に置換されていることを除いて同一である。以下、この相違点を中心に詳細な動作を説明する。
【０１１４】
後抑圧係数計算部172は、音声存在確率計算部171から供給された音声存在確率と、図１３の抑圧係数補正部15から供給された補正抑圧係数を用いて、後抑圧係数を計算し、多重乗算部173に伝達する。後抑圧係数計算部172の構成と動作の詳細な説明は、図１５を用いて行う。
【０１１５】
図１５は後抑圧係数計算部172の構成を示すブロック図である。図５に示した後抑圧係数計算部182とは、周波数別後抑圧係数計算部18210〜1821K-1が周波数別後抑圧係数計算部17210〜1721K-1に置換されていることを除いて同一である。以下、この相違点を中心に詳細な動作を説明する。
【０１１６】
周波数別後抑圧係数計算部17210〜1721K-1は、分離部1722から供給される周波数別補正抑圧係数と、図１４の音声存在確率計算部171から供給される音声存在確率を用いて、周波数別後抑圧係数を計算し、多重化部1723に伝達する。周波数別後抑圧係数計算部17210〜1721K-1の構成と動作の詳細な説明は、図１６を用いて行う。
【０１１７】
図１６は、図１５の周波数別後抑圧係数計算部17210〜1721K-1の構成を示すブロック図である。周波数別後抑圧係数計算部1721は、有音部用下限値記憶部1691、無音部用下限値記憶部1692、下限値計算部1693、最大値選択部1694を有する。下限値計算部1693は、有音部用下限値記憶部1691から供給される有音部用下限値と、無音部用下限値記憶部1692から供給される無音部用下限値をもとに、図１４の音声存在確率計算部171から供給される音声存在確率に応じた下限値を計算し、最大値選択部1694へ伝達する。音声歪みを防止するため、有音部用下限値には、無音部用下限値よりも大きな値が設定される。下限値の計算では、音声存在確率が大きければ、下限値計算部1693の出力値に対する有音部用下限値の寄与率を大きくする。寄与率の設定には、式(20)や式(21)に示される方法を同様に用いることが可能である。
【０１１８】
最大値選択部1694は、図１５の分離部1722から供給される周波数別補正抑圧係数と、下限値計算部1693から供給される下限値とを比較し、大きい方の値を図１５の多重化部1723へ伝達する。値が同じ場合まで考慮すると、後抑圧係数は下限値計算部 1693 が供給する下限値以上の値になる。従って、抑圧係数は音声存在確率に応じて設定された下限値以上の値になる。音声存在確率が高ければ、下限値は大きくなるので、音声区間において過剰抑圧がもたらす音声歪みを防止できる。一方、音声存在確率が低ければ、下限値は小さくなるので、雑音区間において十分な抑圧度を得ることができる。
【０１１９】
図１７は本発明の第４の実施の形態を示すブロック図である。図１７と第一の実施例である図１とは、強調音声振幅スペクトル補正部29を除いて同一である。強調音声振幅スペクトル補正部29の構成と動作の詳細な説明は、図１８を参照しながら行う。
【０１２０】
図１８は強調音声振幅スペクトル補正部29の構成を示すブロック図である。図２に示した強調音声振幅スペクトル補正部18とは、後抑圧係数計算部182が後抑圧係数計算部292に置換されていることを除いて同一である。後抑圧係数計算部292の構成と動作の詳細な説明は、図１９を参照しながら行う。
【０１２１】
図１９は後抑圧係数計算部292の構成を示すブロック図である。図５に示した後抑圧係数計算部182とは、周波数別後抑圧係数計算部18210〜1821K-1が周波数別後抑圧係数計算部29210〜2921K-1に置換されていることを除いて同一である。周波数別後抑圧係数計算部29210〜2921K-1の構成と動作の詳細な説明は、図２０を参照しながら行う。
【０１２２】
図２０は、図１９の周波数別後抑圧係数計算部29210〜2921K-1の構成を示すブロック図である。図１６に示した周波数別後抑圧係数計算部1721とは、有音部用下限値記憶部1691が有音部用下限値計算部2691に置換されていること、無音部用下限値記憶部1692が無音部用下限値計算部2692を除いて同一である。強調音声パワースペクトルと推定雑音パワースペクトルを基に、有音部用及び無音部用下限値を計算するので、図１６の周波数別後抑圧係数計算部よりも、無音部で残留雑音を、有音部で音声歪みを低減できる。
【０１２３】
有音部用下限値計算部2691と無音部用下限値計算部2692は、図１７の多重乗算部16及び推定雑音計算部1からそれぞれ供給される強調音声パワースペクトルと推定雑音パワースペクトルを用いて、有音部用下限値と無音部用下限値をそれぞれ求め、下限値計算部1693へ供給する。有音部用下限値計算部2691と無音部用下限値計算部2692は、推定雑音と強調音声のパワー比に応じて、それぞれの下限値を計算し、下限値計算部1693へ伝達する。基本的には、推定雑音パワーが強調音声パワーよりも大きくなる、すなわちSNRが低くなれば、音声歪みを防止する目的で有音部用下限値を大きくする。
【０１２４】
無音部での残留雑音量を小さく、有音部での過剰抑圧を防止するために、無音部用下限値を有音部用下限値以下の値にする。但し、SNRが低い場合には、有音部用下限値と無音部用下限値の差が大きくならないように制御する。下限値の差が大きすぎると、有音部と無音部の残留雑音量の差が大きくなり、結果的に音声区間で音声ひずみが発生しているように知覚されてしまう。逆に、SNRが高ければ、有音部の残留雑音は、音声成分にマスクされて知覚されにくくなる。従って、SNRが低いときのように、有音部と無音部の残留雑音量の差は、音声区間での音声ひずみ要因に殆どならない。
【０１２５】
そこで、SNRが高い場合には、無音部用下限値と有音部用下限値の差を大きくして、無音部での残留雑音を十分に低減する。以上より、無音部用下限値は、有音部用下限値に依存した値に設定される。従って、基本的には、有音部下限値の場合と同様に、SNRが低くなれば、無音部用下限値も大きくする。推定雑音パワースペクトルと強調音声パワースペクトルの大きさを比較する場合は、それぞれの平均値や、図１１の無音部用係数計算で用いられている除算部1857の出力信号を用いることが好ましい。
【０１２６】
図２１は本発明の第５の実施の形態を示すブロック図である。図２１と従来例のブロック図である図３６とは、推定先天的SNR計算部7及び抑圧係数補正部15が、推定先天的SNR計算部71及び抑圧係数補正部19にそれぞれ置換されていることを除いて同一である。以下、これらの相違点を中心に詳細な動作を説明する。
【０１２７】
推定先天的SNR計算部71には、多重乗算部13から劣化音声パワースペクトル、推定雑音計算部5から推定雑音パワースペクトル、周波数別SNR計算部6から後天的SNR、抑圧係数補正部19から補正抑圧係数が供給される。推定先天的SNR計算部71は、劣化音声パワースペクトル、推定雑音パワースペクトル、後天的SNR及び補正抑圧係数を用いて、推定先天的SNRと音声存在確率を求める。そして、音声存在確率を抑圧係数補正部19に、推定先天的SNRを雑音抑圧係数生成部8と抑圧係数補正部19に伝達する。抑圧係数補正部19は、推定先天的SNR計算部71から供給される推定先天的SNRと音声存在確率を用いて、雑音抑圧係数生成部8から供給される抑圧係数を補正し、補正抑圧係数として多重乗算部16と推定先天的SNR計算部71へ伝達する。
【０１２８】
抑圧係数補正部19及び推定先天的SNR計算部71の構成と動作の詳細な説明は、図２２及び図２３を参照しながら行う。
【０１２９】
図２２は推定先天的SNR計算部71の構成を示すブロック図である。図２２と従来例のブロック図である図４５との相違点は、推定先天的SNR計算部71が遅延器711、712、多重乗算部713、音声存在確率計算部714 を有していることである。以下、これらの相違点を中心に詳細な動作を説明する。
【０１３０】
遅延器712は、図２１の推定雑音計算部5から供給される第nフレームの推定雑音パワースペクトルλn(k)を保存すると同時に、保存してあった第n-1フレームの推定雑音パワースペクトルλn-1(k)を音声存在確率計算部714に供給する。遅延器711は、図２１の多重乗算部13から供給される第nフレームの劣化音声パワースペクトル|Yn(k)|2を保存すると同時に、保存してあった第n-1フレームの劣化音声パワースペクトル|Yn-1(k)|2を多重乗算部713に供給する。多重乗算部713は、多重乗算部704から供給されるG2n-1(k)バーと遅延器711から供給される|Yn-1(k)|2をk=0, 1, ..., K-1に対して乗算して、G2n-1(k)バー|Y n-1(k)|2を求め、演算結果を推定強調音声パワースペクトルとして音声存在確率計算部714へ伝達する。多重乗算部713の出力信号は、第n-1フレームの強調音声パワースペクトルに一致するが、これを第nフレームの強調音声パワースペクトルの推定信号として扱うために、推定強調音声パワースペクトルという名称を用いている。
【０１３１】
多重乗算部704から供給される抑圧係数は、一フレーム前に得られたものなので、抑圧係数と劣化音声パワースペクトルのフレーム番号を合わせて強調音声パワースペクトルを計算するために、遅延器711が導入されている。更に、音声存在確率の計算に用いる強調音声パワースペクトルと推定雑音パワースペクトルのフレーム番号を合わせるために、遅延器712が導入されている。しかし、数フレームの相違が音声存在確率の計算に与える影響は小さいことから、遅延器711と712のどちらか一方、もしくは両方を省略することが可能である。
【０１３２】
音声存在確率計算部714は、多重乗算部713から供給される推定強調音声パワースペクトルと、遅延器712から供給される推定雑音パワースペクトルを用いて音声存在確率を計算し、図２１の抑圧係数補正部19へ伝達する。多重乗算部713の構成は、既に図３７を用いて説明した多重乗算部21に等しいので、詳細な説明は省略する。また、音声存在確率計算部714の構成は、図３を用いて説明した音声存在確率計算部171に等しいので、詳細な説明は省略する。
【０１３３】
図２３は、図２１の抑圧係数補正部19の構成を示すブロック図である。図５０に示した抑圧係数補正部15とは、周波数別抑圧係数補正部1501 0〜1501 K-1が周波数別抑圧係数補正部1901 0〜1901 K-1に置換されていることを除いて同一である。以下、これらの相違点を中心に詳細な動作を説明する。
【０１３４】
周波数別抑圧係数補正部1901 0〜1901 K-1は、分離部1502から供給される周波数別推定先天的SNRと、図２１の推定先天的SNR計算部71から供給される音声存在確率を用いて、分離部1503から供給される周波数別抑圧係数を補正し、周波数別補正抑圧係数として多重化部1504へ伝達する。周波数別抑圧係数補正部1901 0〜1901 K-1の構成と動作の詳細な説明は、図２４を用いて行う。
【０１３５】
図２４は、図２３の周波数別抑圧係数補正部1901 0〜1901 K-1の構成を示すブロック図である。図２４では、図５１の周波数別抑圧係数補正部1501における最大値選択部1591及び抑圧係数下限値記憶部1592の代わりに、有音部用下限値記憶部1921、無音部用下限値記憶部1922、下限値計算部1923、及び最大値選択部1924が具備されている。以下、これらの相違点を中心に詳細な動作を説明する。
【０１３６】
下限値計算部1923は、有音部用下限値記憶部1921から供給される有音部用下限値と、無音部用下限値記憶部1922から供給される無音部用下限値をもとに、図２１の推定先天的SNR計算部71から供給される音声存在確率に応じた下限値を計算し、最大値選択部1924へ伝達する。最大値選択部1924は、スイッチ1595又は乗算器1597の出力値と、下限値計算部1923から供給される下限値とを比較し、大きい方の値を補正抑圧係数として図２３の多重化部1504へ伝達する。値が同じ場合まで考慮すると、補正抑圧係数は下限値計算部 1923 が供給する下限値より以上の値になる。従って、抑圧係数が音声存在確率に応じて設定された下限値以上の値になるので、音声区間において過剰抑圧がもたらす音声歪みを防止できる。下限値計算部 1923 の構成は、図６を用いて既に説明した下限値計算部 1693に等しいので、詳細な説明は省略する。
【０１３７】
図２５は本発明の第6の実施の形態を示すブロック図である。図２５と従来例のブロック図である図３６とは、推定先天的SNR計算部7及び抑圧係数補正部15が推定先天的SNR計算部72及び抑圧係数補正部20にそれぞれ置換されていることを除いて同一である。以下、これらの相違点を中心に詳細な動作を説明する。
【０１３８】
推定先天的SNR計算部72には、多重乗算部13から劣化音声パワースペクトル、推定雑音計算部5から推定雑音パワースペクトル、周波数別SNR計算部6から後天的SNR、抑圧係数補正部20から補正抑圧係数が供給される。推定先天的SNR計算部72は、劣化音声パワースペクトル、推定雑音パワースペクトル、後天的SNR及び補正抑圧係数を用いて、推定先天的SNR、音声存在確率及び推定強調音声パワースペクトルを求める。そして、抑圧係数補正部20に推定先天的SNR、音声存在確率及び推定強調音声パワースペクトルを、雑音抑圧係数生成部8に推定先天的SNRをそれぞれ伝達する。抑圧係数補正部20は、推定先天的SNR計算部72から供給される推定先天的SNR、音声存在確率及び推定強調音声パワースペクトルを用いて、雑音抑圧係数生成部8から供給される抑圧係数を補正し、補正抑圧係数として多重乗算部16と推定先天的SNR計算部72へ伝達する。推定先天的SNR計算部72及び抑圧係数補正部20の構成と動作の詳細な説明は、図２６及び図２７を参照しながら行う。
【０１３９】
図２６は推定先天的SNR計算部72の構成を示すブロック図である。図２２の推定先天的SNR計算部71とは、多重乗算部713が多重乗算部715に置換されていることを除いて同一である。多重乗算部713は音声存在確率計算部714だけに推定強調音声パワースペクトルを供給していたが、多重乗算部715は図２５の抑圧係数補正部20にも供給する。多重乗算部715の構成は、図２２を用いて既に説明した多重乗算部713に等しいので、詳細な説明は省略する。
【０１４０】
図２７は抑圧係数補正部20の構成を示すブロック図である。図５０の抑圧係数補正部15とは、周波数別抑圧係数補正部15010〜1501K-1が周波数別抑圧係数補正部20010〜2001K-1に置換されていることを除いて同一である。以下、これらの相違点を中心に詳細な動作を説明する。
【０１４１】
周波数別抑圧係数補正部20010〜2001K-1には、分離部1502から周波数別推定先天的SNR、図２５の推定雑音計算部5から推定雑音パワースペクトル、図２５の推定先天的SNR計算部72から音声存在確率と推定強調音声パワースペクトルがそれぞれ供給されている。周波数別推定先天的SNR、推定雑音パワースペクトル、推定強調音声パワースペクトル及び音声存在確率を用いて、分離部1503から供給される周波数別抑圧係数を補正し、周波数別補正抑圧係数として多重化部1504へ伝達する。周波数別抑圧係数補正部20010〜2001K-1の構成と動作の詳細な説明は、図２８を用いて行う。
【０１４２】
図２８は、図２７の周波数別抑圧係数補正部20010〜2001K-1の構成を示すブロック図である。図２８では、図５１の周波数別抑圧係数補正部1501における最大値選択部1591及び抑圧係数下限値記憶部1592の代わりに、有音部用補正係数記憶部2011、無音部用補正係数記憶部2012、補正係数計算部2013、及び乗算器2014が具備されている。以下、これらの相違点を中心に詳細な動作を説明する。
【０１４３】
無音部用補正係数計算部2012は、図２５の推定先天的SNR計算部72から供給される音声存在確率と推定強調音声パワースペクトル、及び図２５の推定雑音計算部5から供給される推定雑音パワースペクトルを用いて無音部用補正係数を計算し、補正係数計算部2013へ供給する。補正係数計算部2013は、有音部用補正係数記憶部2011から供給される有音部用補正係数と、無音部用補正係数計算部2012から供給される無音部用補正係数をもとに、図２５の推定先天的SNR計算部72から供給される音声存在確率に応じた補正係数を計算し、乗算器2014へ伝達する。乗算器2014は、補正係数計算部2013から供給される補正係数と、スイッチ1595又は乗算器1597の出力値との積を計算し、補正抑圧係数として図２７の多重化部1504へ伝達する。音声存在確率に応じて計算された補正係数により抑圧係数が補正されるので、雑音区間において残留雑音を更に抑圧できる。無音部用補正係数計算部2012の構成は、既に図７を用いて説明した無音部用補正係数計算部1832に等しいので、詳細な説明は省略する。また、補正係数計算部2013の構成は、図６を用いて既に説明した補正係数計算部1833に等しいので、詳細な説明は省略する。
【０１４４】
図２９は本発明の第７の実施の形態を示すブロック図である。図２９と第３の実施例である図１３との相違点は、音声非存在確率記憶部21の代わりに遅延器23と加算器24が具備されていること、及び強調音声振幅スペクトル補正部17が強調音声振幅スペクトル補正部22に置換されていることである。以下、これらの相違点を中心に詳細な動作を説明する。
【０１４５】
強調音声振幅スペクトル補正部22から出力された音声存在確率は、遅延器23に保存される。遅延器23は、一フレーム前の音声存在確率を加算器24へ伝達する。雑音抑圧係数が生成された後に、音声存在確率が計算されるため、雑音抑圧係数の生成に必要となる音声非存在確率の計算には、一フレーム前の音声存在確率を利用する。加算器24は、1から音声存在確率を差し引いた値を計算し、計算結果を音声非存在確率として、雑音抑圧係数生成部へ伝達する。図１３の第３の実施例では常に同じ音声非存在確率を用いて雑音抑圧係数の生成を行っていたが、本実施例では強調音声振幅スペクトル補正部で計算した音声存在確率を基に音声非存在確率を計算している。このため、従来よりも各入力信号に適した音声非存在確率を、雑音抑圧係数の生成に用いることが可能である。強調音声振幅スペクトル補正部22の構成と動作の詳細な説明は、図３０を参照しながら行う。
【０１４６】
図３０は、図２９の強調音声振幅スペクトル補正部22の構成を示すブロック図である。図１４の強調音声振幅スペクトル補正部17とは、音声存在確率計算部171が音声存在確率計算部221に置換されていることを除いて同一である。図１４の音声存在確率計算部171は、音声存在確率を後抑圧係数172のみに伝達しているが、図３０の音声存在確率計算部221は、更に図２９の遅延器23にも伝達している。
【０１４７】
図３１は、本発明の第８の実施の形態を示すブロック図である。図３１と第７の実施例である図２９との相違点は、遅延器23の代わりに音声存在確率計算部26が具備されていること、及び強調音声振幅スペクトル補正部22が強調音声振幅スペクトル補正部25に置換されていることである。音声存在確率計算部26は、推定先天的SNR計算部7から出力された推定先天的SNRを用いて、音声存在確率を計算し、加算器24と強調音声振幅スペクトル補正部25へ伝達する。第７の実施例である図２９とは異なり、雑音抑圧係数を生成する前に音声存在確率を計算するため、雑音抑圧係数生成部8は、一フレーム前に計算した音声存在確率を基に導出された音声非存在確率を用いる必要が無い。このため、本実施例の雑音抑圧係数生成部8は、第７の実施例の場合よりも正確な音声非存在確率を用いることが可能である。強調音声振幅スペクトル補正部25と音声存在確率計算部26の構成と動作の詳細な説明は、図３２及び図３３を参照しながら行う。
【０１４８】
図３２は、図３１の強調音声振幅スペクトル補正部25の構成を示すブロック図である。図３０の強調音声振幅スペクトル補正部22とは、音声存在確率計算部221と多重乗算部170が削除されていること、及び後抑圧係数計算部172が後抑圧係数252に置換されていることを除いて同一である。後抑圧係数計算部は、図３１の音声存在確率計算部26から出力された音声存在確率を基に、図３１の抑圧係数補正部15から出力された補正抑圧係数から後抑圧係数を計算し、多重乗算部173へ伝達する。音声非存在確率を強調音声振幅スペクトル補正部の外部で計算している点が、図３０の後抑圧係数計算部172と図３２の後抑圧係数計算部252との相違点である。
【０１４９】
図３３は、図３１の音声存在確率計算部26の構成を示すブロック図である。図３の音声存在確率計算部171とは、分離部1708、平均値計算部1709、対数計算部1710、乗算器1711、関数値計算部1712、1713が削除されていること、平均指標計算部が1714から2614に、瞬時指標計算部が1715から2615に置換されていること、及び分離部1700への入力が強調音声パワースペクトルから推定先天的SNRに置換されていることを除いて同一である。図３の音声存在確率計算部171と図３３の音声存在確率計算部26の共通点は、音声と雑音の比に応じて指標を計算している点である。音声存在確率計算部171は、強調音声パワーと推定雑音パワーの双方を、指標計算に適した値に補正するが、音声存在確率計算部26は推定先天的SNRを補正する。このため、音声存在確率計算部26の方が少ない演算量で実現できる。以下、これらの相違点を中心に詳細な動作を説明する。
【０１５０】
分離部1700は、図３１の推定先天的SNR計算部7から供給される推定先天的SNRを周波数別推定先天的SNRに分離し、平均値計算部1701へ出力する。平均値計算部1701は、周波数別推定先天的SNRξn(k)ハットのk=0からK-1に対する総和をKで除算し、計算結果を対数計算部1702へ伝達する。対数計算部1702は、平均値計算部1701から入力された平均値の対数を計算し、乗算器1703へ伝達する。乗算器1703は、供給された対数値を定数倍して、フルバンド推定先天的SNRΞ(n)を求め、平滑部1705、1707へ供給する。すなわち、第n フレームのフルバンド推定先天的SNRΞ(n)は、次式で与えられる。
【０１５１】
【数２３】
2006337415.tif 000026
平滑化部1705は、平滑化係数記憶部1704から供給された平滑化係数を用いて、乗算器1703から供給されたフルバンド推定先天的SNRΞ(n)を時間方向に平滑化し、第一の平滑先天的SNRとして瞬時指標計算部2615へ供給する。平滑化部1707も同様に、平滑化係数記憶部1706から供給された平滑化係数を用いて、乗算器1703から供給されたフルバンド推定先天的SNRΞ(n)を時間方向に平滑化し、第二の平滑先天的SNRとして平均指標計算部2614へ供給する。図３の音声存在確率計算部171を説明したときに述べたとおり、平滑化係数記憶部1704に記憶されている係数の方が、平滑化係数記憶部1706の係数よりも小さくなるように設定される。
【０１５２】
瞬時指標計算部2615は、平滑化部1705から供給された第一の平滑先天的SNRを用いて、瞬時指標を計算し、加算部1716へ供給する。平均指標計算部2614は、平滑化部1707から供給された第二の平滑先天的SNRを用いて、平均指標を計算し、加算部1716へ供給する。指標の計算には、平滑先天的SNRに応じて数値を大きくする方法が利用される。具体例としては、次のような計算方法が挙げられる。
【０１５３】
【数２４】
2006337415.tif 000027
但し、IDX2nは指標、Ξ(n)バーは平滑先天的SNRである。また、θidx2、aidx2とbidx2は実数で、aidx2はbidx2以上の値を有する。
【０１５４】
図３４は、本発明の第９の実施の形態を示すブロック図である。図３４と第８の実施例である図３１との相違点は、音声存在確率計算部26が音声存在確率計算部27に置換されていることである。音声存在確率計算部27は、周波数別SNR計算部6から出力された後天的SNRと推定先天的SNR計算部7から出力された推定先天的SNRを用いて、音声存在確率を計算し、加算器24と強調音声振幅スペクトル補正部25へ伝達する。音声存在確率計算部27の構成と動作の詳細な説明は、図３５を参照しながら行う。
【０１５５】
図３５は、図３４の音声存在確率計算部27の構成を示すブロック図である。図３１の音声存在確率計算部26とは、分離部1700が2700に、平均値計算部1701が2701に置換されていること、更に、分離部2703と平均値計算部2704、及びSNR混合部2705が具備されていることを除いて同一である。図３１の音声存在確率計算部26との主な相違点は、対数計算部1702へ入力されるSNRの推定精度が改善されている点である。以下、これらの相違点を中心に詳細な動作を説明する。
【０１５６】
分離部2700は、図３４の推定先天的SNR計算部7から供給される推定先天的SNRを周波数別推定先天的SNRに分離し、平均値計算部2701へ出力する。平均値計算部2701は、周波数別推定先天的SNRξn(k)ハットのk=0からK-1に対する総和をKで除算し、計算結果を平均先天的SNRξnバーとしてSNR混合部2705へ伝達する。すなわち、第n フレームの平均先天的SNRξnバーは、次式で与えられる。
【０１５７】
【数２５】
2006337415.tif 000028
一方、分離部2703は、図３４の周波数別SNR計算部6から供給される後天的SNRを周波数別後天的SNRに分離し、平均値計算部2704へ出力する。平均値計算部2704は、周波数別後天的SNRγn(k)のk=0からK-1に対する総和をKで除算し、計算結果を平均後天的SNRγnバーとしてSNR混合部2705へ伝達する。すなわち、第n フレームの平均後天的SNRγnバーは、
【０１５８】
【数２６】
2006337415.tif 000029
で与えられる。
【０１５９】
SNR混合部は、平均値計算部2701から供給される平均先天的SNRξnバーと、平均値計算部2703から供給される平均後天的SNRγnバーを用いて、混合SNRΞmix(n)を計算し、対数計算部1702へ伝達する。混合SNRΞmix(n)の計算には、平均先天的SNRξnバーに応じて数値を大きくする方法が利用される。具体例としては、次のような計算方法が挙げられる。
【０１６０】
【数２７】
2006337415.tif 000030
但し、Ｆmixは平均先天的SNRξnバーの関数である。
【０１６１】
Ｆmixは、0から1までの実数を出力し、ξnバーが大きければ、大きな値を出力する。すなわち、SNRが高い場合には、平均先天的SNRξnバーよりも推定精度が高い平均後天的SNRγnバーを優先的に用いて混合SNRΞmix(n)を計算する。このため、先天的SNRと後天的SNRの両方を用いて求めた混合SNRΞmix(n)の推定精度は、先天的SNRだけを用いて求めたフルバンド推定先天的SNRΞ(n)よりも高くなる。推定精度が高いSNRを用いて音声存在確率を計算することが可能になるため、図３４の音声存在確率計算部27は、図３１の音声存在確率計算部26よりも高い精度を達成できる。
【０１６２】
これまで説明した全ての実施の形態では、雑音抑圧の方式として、最小平均2乗誤差短時間スペクトル振幅法を仮定してきたが、 その他の方法にも適用することができる。このような方法の例として、 非特許文献２に開示されているウィーナーフィルタ法や、非特許文献3に開示されているスペクトル減算法などがあるが、これらの詳細な構成例については説明を省略する。
【図面の簡単な説明】
【０１６３】
【図１】本発明の第１の実施の形態を示すブロック図。
【図２】本発明の第１の実施の形態に含まれる強調音声スペクトル補正部の構成を示すブロック図。
【図３】図２に含まれる音声存在確率計算部の構成を示すブロック図。
【図４】図３に含まれる平滑化部の構成を示すブロック図。
【図５】図２に含まれる後抑圧係数計算部の構成を示すブロック図。
【図６】図５に含まれる周波数別後抑圧係数計算部の構成を示すブロック図。
【図７】図６に含まれる無音部用係数計算部の構成を示すブロック図。
【図８】図７に含まれる係数計算部における非線形関数の一例を示す図。
【図９】本発明の第２の実施の形態を示すブロック図。
【図１０】本発明の第２の実施の形態に含まれる強調音声スペクトル補正部の構成を示すブロック図。
【図１１】図１０に含まれる後抑圧係数計算部の構成を示すブロック図。
【図１２】図１１に含まれる周波数別後抑圧係数計算部の構成を示すブロック図。
【図１３】本発明の第３の実施の形態を示すブロック図。
【図１４】本発明の第３の実施の形態に含まれる強調音声スペクトル補正部の構成を示すブロック図。
【図１５】図１４に含まれる後抑圧係数計算部の構成を示すブロック図。
【図１６】図１５に含まれる周波数別後抑圧係数計算部の構成を示すブロック図。
【図１７】本発明の第４の実施の形態を示すブロック図。
【図１８】本発明の第４の実施の形態に含まれる強調音声スペクトル補正部の構成を示すブロック図。
【図１９】図１８に含まれる後抑圧係数計算部の構成を示すブロック図。
【図２０】図１９に含まれる周波数別後抑圧係数計算部の構成を示すブロック図。
【図２１】本発明の第５の実施の形態を示すブロック図。
【図２２】本発明の第５の実施の形態に含まれる推定先天的SNR計算部の構成を示すブロック図。
【図２３】本発明の第５の実施の形態に含まれる抑圧係数補正部の構成を示すブロック図。
【図２４】図２３に含まれる周波数別抑圧係数補正部の構成を示すブロック図。
【図２５】本発明の第６の実施の形態を示すブロック図。
【図２６】本発明の第６の実施の形態に含まれる推定先天的SNR計算部の構成を示すブロック図。
【図２７】本発明の第6の実施の形態に含まれる抑圧係数補正部の構成を示すブロック図。
【図２８】図２７に含まれる周波数別推定抑圧係数補正部の構成を示すブロック図。
【図２９】本発明の第７の実施の形態を示すブロック図。
【図３０】本発明の第７の実施の形態に含まれる強調音声振幅スペクトル補正部を示すブロック図。
【図３１】本発明の第８の実施の形態を示すブロック図。
【図３２】本発明の第８の実施の形態に含まれる強調音声振幅スペクトル補正部を示すブロック図。
【図３３】本発明の第８の実施の形態に含まれる音声存在確率計算部を示すブロック図。
【図３４】本発明の第９の実施の形態を示すブロック図。
【図３５】本発明の第9の実施の形態に含まれる音声存在確率計算部を示すブロック図。
【図３６】従来例の構成を示すブロック図。
【図３７】従来例の構成に含まれる多重乗算部の構成を示すブロック図。
【図３８】従来例の構成に含まれる重み付き劣化音声計算部の構成を示すブロック図。
【図３９】図３８に含まれる周波数別SNR計算部の構成を示すブロック図。
【図４０】図３８に含まれる多重非線形処理部の構成を示すブロック図。
【図４１】非線形処理部における非線形関数の一例を示す図。
【図４２】従来例の構成に含まれる推定雑音計算部の構成を示すブロック図。
【図４３】図４２に含まれる周波数別推定雑音計算部の構成を示すブロック図。
【図４４】図４３に含まれる更新判定部の構成を示すブロック図。
【図４５】従来例の構成に含まれる推定先天的SNR計算部の構成を示すブロック図。
【図４６】図４５に含まれる多重値域限定処理部の構成を示すブロック図。
【図４７】図４５に含まれる多重重みつき加算部の構成を示すブロック図。
【図４８】図４７に含まれる重みつき加算部の構成を示すブロック図。
【図４９】従来例の構成に含まれる雑音抑圧係数生成部の構成を示すブロック図。
【図５０】従来例の構成に含まれる抑圧係数補正部の構成を示すブロック図。
【図５１】図５０に含まれる周波数別抑圧係数補正部の構成を示すブロック図。
【符号の説明】
【０１６４】
1 フレーム分割部 
2 窓がけ処理部 
3 フーリエ変換部 
4,
5049 カウンタ 
5 推定雑音計算部 
6,
1402 周波数別SNR計算部 
7,
71, 72 推定先天的SNR計算部 
8 雑音抑圧係数生成部 
9 逆フーリエ変換部 
10 フレーム合成部 
11 入力端子 
12 出力端子 
14 重みつき劣化音声計算部 
15 抑圧係数補正部 
172,
182, 252, 282, 292 後抑圧係数計算部 
13,
16, 170, 173, 704, 705, 713, 715, 1404 多重乗算部 
17,
18, 22, 25, 28, 29  強調音声振幅スペクトル補正部 
21 音声非存在確率記憶部 
171,
221, 26, 27, 714 音声存在確率計算部 
1742,
1745, 708, 5046, 1716, 7092, 7094, 24 加算器 
711,
712, 1746, 23 遅延器 
1593,
5204, 5206 閾値記憶部 
1594,
5203, 5205 比較部 
1702,
1710, 1859 対数計算部 
1704,
1706, 1854 平滑化係数記憶部 
1705,
1707, 1853 平滑化部 
1712,
1713 関数値計算部 
1714,
2614 平均指標計算部 
1715,
2615 瞬時指標計算部 
2705
SNR混合部
1852 音声パワー混合部 
1858 平滑信号記憶部 
1863 指数計算部
70710
〜 7071K-1 重みつき加算部 
706 重み記憶部 
503,
1304, 1424, 1475, 1504, 1723, 7014, 7075 多重化部 
5040
〜 504K-1  周波数別推定雑音計算部 
520 更新判定部 
5207 閾値計算部 
1595,
5044 スイッチ 
1857,
1862, 14210 〜 1421K-1, 5048 除算部 
501,
502, 1302, 1303, 1422, 1423, 1495, 1502, 1503, 
1700,
1708, 1722, 1850, 1855, 7013, 7072, 7074, 2700, 2703 分離部 
1701,
1709, 1851, 1856, 2701, 2704 平均値計算部 
701 多重値域限定処理部 
702 後天的SNR記憶部 
703 抑圧係数記憶部 
707 多重重みつき加算部 
1401,
5042 推定雑音記憶部 
921 瞬時推定SNR 
9210
〜 921K-1  周波数別瞬時推定SNR 
922 過去の推定SNR  
9220
〜 922K-1  過去の周波数別推定SNR 
924 推定先天的SNR
9240
〜 924K-1  周波数別推定先天的SNR 
1405 多重非線形処理部 
14850
〜 1485K-1, 5042 非線形処理部 
15010
〜 1501K-1, 
19010
〜 1901K-1,
20010
〜 2001K-1 周波数別抑圧係数補正部 
17210
〜 1721K-1, 18210 〜 1821K-1 
28210
〜 2821K-1, 29210 〜 2921K-1 周波数別後抑圧係数計算部  
1591,
1694, 1924, 70120 〜 7012K-1 最大値選択部 
1592 抑圧係数下限値記憶部 
1596 修正値記憶部 
1691,
1921 有音部用下限値記憶部 
1692,
1922 無音部用下限値記憶部 
2691 有音部下限値計算部
2692 無音部用下限値計算部
1693,
1923 下限値計算部 
1831 有音部用係数記憶部 
2831 有音部用係数計算部
1832 無音部用係数計算部 
1833,
1861 係数計算部 
2011 有音部用補正係数記憶部 
2012 無音部用補正係数記憶部 
2013 補正係数計算部 
13010
〜 1301K-1, 
1597,
1703, 1711, 
1743,
1744, 
1834,
2014, 7091, 7093 乗算器 
1741,
1860, 7095 定数乗算器 
5045 シフトレジスタ 
5047 最小値選択部 
5201 論理和計算部 
5041 レジスタ長記憶部 
7011 定数記憶部 
811
MMSE STSA ゲイン関数値計算部
812 一般化尤度比計算部 
814 抑圧係数計算部 
【図１】
2006337415.tif 000031
【図２】
2006337415.tif 000032
【図３】
2006337415.tif 000033
【図４】
2006337415.tif 000034
【図５】
2006337415.tif 000035
【図６】
2006337415.tif 000036
【図７】
2006337415.tif 000037
【図８】
2006337415.tif 000038
【図９】
2006337415.tif 000039
【図１０】
2006337415.tif 000040
【図１１】
2006337415.tif 000041
【図１２】
2006337415.tif 000042
【図１３】
2006337415.tif 000043
【図１４】
2006337415.tif 000044
【図１５】
2006337415.tif 000045
【図１６】
2006337415.tif 000046
【図１７】
2006337415.tif 000047
【図１８】
2006337415.tif 000048
【図１９】
2006337415.tif 000049
【図２０】
2006337415.tif 000050
【図２１】
2006337415.tif 000051
【図２２】
2006337415.tif 000052
【図２３】
2006337415.tif 000053
【図２４】
2006337415.tif 000054
【図２５】
2006337415.tif 000055
【図２６】
2006337415.tif 000056
【図２７】
2006337415.tif 000057
【図２８】
2006337415.tif 000058
【図２９】
2006337415.tif 000059
【図３０】
2006337415.tif 000060
【図３１】
2006337415.tif 000061
【図３２】
2006337415.tif 000062
【図３３】
2006337415.tif 000063
【図３４】
2006337415.tif 000064
【図３５】
2006337415.tif 000065
【図３６】
2006337415.tif 000066
【図３７】
2006337415.tif 000067
【図３８】
2006337415.tif 000068
【図３９】
2006337415.tif 000069
【図４０】
2006337415.tif 000070
【図４１】
2006337415.tif 000071
【図４２】
2006337415.tif 000072
【図４３】
2006337415.tif 000073
【図４４】
2006337415.tif 000074
【図４５】
2006337415.tif 000075
【図４６】
2006337415.tif 000076
【図４７】
2006337415.tif 000077
【図４８】
2006337415.tif 000078
【図４９】
2006337415.tif 000079
【図５０】
2006337415.tif 000080
【図５１】
2006337415.tif 000081