(57)【特許請求の範囲】
【請求項１】
入力信号を定められた第一のフレーム毎に周波数領域信号に変換する変換手段と、
フレームの長さが前記第一のフレームよりも長い第二のフレームを生成するフレーム生成手段と、
前記第二のフレームに含まれる第一のフレームの前記周波数領域信号を統合して、前記第二のフレームを代表する代表周波数領域信号を生成する代表周波数領域信号生成手段と、
前記代表周波数領域信号から前記第二のフレームの入力信号の雑音成分を推定し、前記第二のフレームに含まれる第一のフレームの前記周波数領域信号に対して適用する雑音の抑圧の情報である雑音抑圧情報を求める雑音抑圧情報計算手段と
を有することを特徴とする雑音抑圧装置。
【請求項２】
前記フレーム生成手段は、前記第二のフレーム同士が互いに独立するように、前記第二のフレームを生成することを特徴とする請求項１に記載の雑音抑圧装置。
【請求項３】
前記雑音抑圧情報計算手段は、前記第二のフレームに含まれる第一のフレームの前記周波数領域信号に、前記雑音抑圧情報を適用して雑音を抑圧することを特徴とする請求項１又は請求項２に記載の雑音抑圧装置。
【請求項４】
前記雑音抑圧情報計算手段は、前記第二のフレームに含まれる第一のフレームの前記周波数領域信号に、他の第二のフレームの前記雑音抑圧情報を補間して算出した雑音抑圧情報を適用して雑音を抑圧することを特徴とする請求項１から請求項３のいずれかに記載の雑音抑圧装置。
【請求項５】
前記フレーム生成手段は、前記周波数領域信号の特性に基づいて、第二のフレームを生成することを特徴とする請求項１から請求項４のいずれかに記載の雑音抑圧装置。
【請求項６】
前記周波数領域信号の特性が、前記入力信号のエネルギの変化であることを特徴とする請求項５に記載の雑音抑圧装置。
【請求項７】
前記第二のフレーム毎に、周波数方向の区切り位置を生成する周波数区切り位置生成手段を有し、
前記代表周波数領域信号生成手段は、前記第二のフレームおよび前記周波数方向の区切り位置に基づいて、前記周波数領域信号から前記代表周波数領域信号を生成することを特徴とすることを特徴とする請求項１から請求項６のいずれかに記載の雑音抑圧装置。
【請求項８】
前記フレーム生成手段は、一定区間内の第二のフレームの個数があらかじめ定められた個数の範囲内になるように、前記第二のフレームを生成することを特徴とする請求項１から請求項７のいずれかに記載の雑音抑圧装置。
【請求項９】
前記フレーム生成手段は、一定区間内の前記雑音抑圧情報を計算する計算回数があらかじめ定められた回数の範囲内になるように、前記第二のフレームと前記周波数方向の区切り位置とを求めることを特徴とする請求項７に記載の雑音抑圧装置。
【請求項１０】
前記雑音抑圧情報が雑音抑圧係数として表されていることを特徴とする請求項１から請求項９のいずれかに記載の雑音抑圧装置。
【請求項１１】
前記雑音抑圧情報が雑音の推定値として表されていることを特徴とする請求項１から請求項９のいずれかに記載の雑音抑圧装置。
【請求項１２】
入力信号を定められた第一のフレーム毎に周波数領域信号に変換する変換ステップと、
フレームの長さが前記第一のフレームよりも長い第二のフレームを生成するフレーム生成ステップと、
前記第二のフレームに含まれる第一のフレームの前記周波数領域信号を統合して、前記第二のフレームを代表する代表周波数領域信号を生成する代表周波数領域信号生成ステップと、
前記代表周波数領域信号から前記第二のフレームの入力信号の雑音成分を推定し、前記第二のフレームに含まれる第一のフレームの前記周波数領域信号に対して適用する雑音の抑圧の情報である雑音抑圧情報を求める雑音抑圧情報計算ステップと
を有することを特徴とする雑音抑圧方法。
【請求項１３】
前記フレーム生成ステップは、前記第二のフレーム同士が互いに独立するように、前記第二のフレームを生成することを特徴とする請求項１２に記載の雑音抑圧方法。
【請求項１４】
前記雑音抑圧情報計算ステップは、前記第二のフレームに含まれる第一のフレームの前記周波数領域信号に、前記雑音抑圧情報を適用して雑音を抑圧することを特徴とする請求項１２又は請求項１３に記載の雑音抑圧方法。
【請求項１５】
前記雑音抑圧情報計算ステップは、前記第二のフレームに含まれる第一のフレームの前記周波数領域信号に、他の第二のフレームの前記雑音抑圧情報を補間して算出した雑音抑圧情報を適用して雑音を抑圧することを特徴とする請求項１２から請求項１４のいずれかに記載の雑音抑圧方法。
【請求項１６】
前記フレーム生成ステップは、前記周波数領域信号の特性に基づいて、前記第二のフレームを生成することを特徴とする請求項１２から請求項１５のいずれかに記載の雑音抑圧方法。
【請求項１７】
前記周波数領域信号の特性が前記入力信号のエネルギの変化であることを特徴とする請求項１６に記載の雑音抑圧方法。
【請求項１８】
前記第二のフレーム毎に、周波数方向の区切り位置を生成する周波数区切り位置生成ステップを有し、
前記代表周波数領域信号生成ステップは、前記第二のフレームおよび前記周波数方向の区切り位置に基づいて、前記周波数領域信号から代表周波数領域信号を生成する
ことを特徴とする請求項１２から請求項１７のいずれかに記載の雑音抑圧方法。
【請求項１９】
前記フレーム生成ステップは、一定区間内の前記第二のフレームの個数があらかじめ定められた個数の範囲内になるように前記第二のフレームを生成することを特徴とする請求項１２から請求項１８のいずれかに記載の雑音抑圧方法。
【請求項２０】
前記フレーム生成ステップは、一定区間内の前記雑音抑圧情報を計算する計算回数があらかじめ定められた回数の範囲内になるように、前記第二のフレームと前記周波数方向の区切り位置とを生成することを特徴とする請求項１８に記載の雑音抑圧方法。
【請求項２１】
前記雑音抑圧情報計算ステップにおいて、前記雑音抑圧情報が雑音抑圧係数として表されていることを特徴とする請求項１２から請求項２０のいずれかに記載の雑音抑圧方法。
【請求項２２】
前記雑音抑圧情報計算ステップにおいて、前記雑音抑圧情報が雑音の推定値として表されていることを特徴とする請求項１２から請求項２０のいずれかに記載の雑音抑圧装置。
【請求項２３】
コンピュータに、
入力信号を定められた第一のフレーム毎に周波数領域信号に変換する変換処理と、
フレームの長さが前記第一のフレームよりも長い第二のフレームを生成するフレーム生成処理と、
前記第二のフレームに含まれる第一のフレームの前記周波数領域信号を統合して、前記第二のフレームを代表する代表周波数領域信号を生成する代表周波数領域信号生成処理と、
前記代表周波数領域信号から前記第二のフレームの入力信号の雑音成分を推定し、前記第二のフレームに含まれる第一のフレームの前記周波数領域信号に対して適用する雑音の抑圧の情報である雑音抑圧情報を求める雑音抑圧情報計算処理と
を実行させる雑音抑圧プログラム。
【請求項２４】
前記フレーム生成処理は、前記第二のフレーム同士が互いに独立するように前記第二のフレームを生成することを特徴とする請求項２３に記載の雑音抑圧プログラム。
【請求項２５】
前記雑音抑圧情報計算処理は、前記第二のフレームに含まれる第一のフレームの前記周波数領域信号に、前記雑音抑圧情報を適用して雑音を抑圧することを特徴とする請求項２３又は請求項２４に記載の雑音抑圧プログラム。
【請求項２６】
前記雑音抑圧情報計算処理は、前記第二のフレームに含まれる第一のフレームの前記周波数領域信号に、他の第二のフレームの前記雑音抑圧情報を補間して算出した雑音抑圧情報を適用して雑音を抑圧することを特徴とする請求項２３から請求項２５のいずれかに記載の雑音抑圧プログラム。
【請求項２７】
前記フレーム生成処理は、前記周波数領域信号の特性に基づいて、前記第二のフレームを生成することを特徴とする請求項２３から請求項２６のいずれかに記載の雑音抑圧プログラム。
【請求項２８】
前記周波数領域信号の特性が前記入力信号のエネルギの変化であることを特徴とする請求項２７に記載の雑音抑圧プログラム。
【請求項２９】
前記第二のフレーム毎に、周波数方向の区切り位置を生成する周波数区切り位置生成処理を有し、
前記代表周波数領域信号生成処理は、前記第二のフレームおよび前記周波数方向の区切り位置に基づいて、前記周波数領域信号から代表周波数領域信号を生成することを特徴とする請求項２３から請求項２８のいずれかに記載の雑音抑圧プログラム。
【請求項３０】
前記フレーム生成処理は、一定区間内の前記第二のフレームの個数があらかじめ定められた個数の範囲内になるように前記第二のフレームを生成することを特徴とする請求項２３から請求項２９のいずれかに記載の雑音抑圧プログラム。
【請求項３１】
前記フレーム生成処理は、一定区間内の前記雑音抑圧情報を算出する計算回数があらかじめ定められた回数の範囲内になるように前記第二のフレームと前記周波数方向の区切り位置とを生成することを特徴とする請求項２９に記載の雑音抑圧プログラム。
【請求項３２】
前記雑音抑圧情報計算処理において、前記雑音抑圧情報が雑音抑圧係数として表されていることを特徴とする請求項２３から請求項３１のいずれかに記載の雑音抑圧プログラム。
【請求項３３】
前記雑音抑圧情報計算処理において、前記雑音抑圧情報が雑音の推定値として表されていることを特徴とする請求項２３から請求項３１のいずれかに記載の雑音抑圧プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所望の音声信号に重畳されている雑音を抑圧する雑音抑圧装置、その方法及びプログラムに関する。
【背景技術】
【０００２】
所望音声と背景雑音とから構成される入力信号の背景雑音を抑圧する装置として、雑音抑圧装置（以下、ノイズサプレッサという。）が知られている。ノイズサプレッサは、所望の音声信号に重畳されている雑音(ノイズ)を抑圧する装置である。一般的に、ノイズサプレッサは、周波数領域に変換した入力信号を用いて雑音成分のパワースペクトルを推定し、この推定したパワースペクトルを入力信号から差し引くことにより、所望の音声信号に混在する雑音を抑圧するように動作する。さらに、ノイズサプレッサは、雑音成分のパワースペクトルを継続的に推定することにより、非定常な雑音の抑圧にも適用することができる。ノイズサプレッサとしては、例えば、特許文献１に記載されている方式がある。【０００３】
図３５を参照して、特許文献１に開示されたノイズサプレッサの構成を説明する。図３５の入力端子901にサンプル値系列として供給された所望音声信号と雑音の混在する信号(以下、劣化音声信号という)は、変換フレーム分割部902において、定められたサンプル毎の変換フレームに分割される。変換フレームに分割された劣化音声信号は、変換部905において、フーリエ変換などの変換を施して複数の周波数成分に分割される。そして、変換部905は、周波数成分に分割された信号の振幅値を用いて求めた劣化音声信号のパワースペクトルを、雑音抑圧情報計算部907、雑音抑圧処理部908へ供給する。変換部905は、劣化音声信号位相を、逆変換部906に伝達する。雑音抑圧情報計算部907は、劣化音声パワースペクトルを用いて、抑圧係数を各周波数で算出し、雑音抑圧情報として生成し、雑音抑圧処理部908に出力する。抑圧係数は、劣化音声信号に乗算することによって雑音が抑圧された強調音声を求めるための係数である。雑音抑圧処理部908は、劣化音声パワースペクトルに雑音抑圧情報である各周波数の抑圧係数を乗じ、強調音声パワースペクトルを求め、逆変換部906へ出力する。逆変換部906は、雑音抑圧処理部908から供給された強調音声パワースペクトルと変換部905から供給された劣化音声信号の位相を合わせて変換フレーム毎に逆変換を行い、変換フレームに分割されている強調音声信号を変換フレーム合成部903に出力する。変換フレーム合成部903は、変換フレームに分割されている強調音声信号を合成し、強調音声信号サンプルとして、出力端子４に出力する。これまでの処理ではパワースペクトルを用いた例を説明したが、代わりにその平方根に相当する振幅値を用いることができることは、広く知られている。
【特許文献１】特開２００２−２０４１７５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、図３５を用いて説明した従来の構成では、変換フレーム毎に雑音抑圧情報を算出している。すなわち、従来の構成では、雑音抑圧情報を算出する処理フレーム長は、変換フレーム長と同じ長さのものを使用している。このため、変換フレーム長が長いと、入力信号が変換フレーム内の途中で変化した場合、入力信号の変化に追従できない。このとき、従来の構成では、精度の悪い雑音抑圧情報を算出し、出力信号の音質が劣化するという問題がある。一方で、変換フレーム長が短いと、入力信号の変化に追従することはできるが、雑音抑圧情報を算出する回数が増大し、演算量が増加するという問題がある。ノイズサプレッサに係る演算量が増加すると、ノイズサプレッサ以外の重要な機能があるときには、ノイズサプレッサ機能を組み込むことができない、あるいはノイズサプレッサ機能を組み込むことにより他の機能を組み込むことができないという問題がある。すなわち、従来の方法では、少ない演算量で高品質な雑音抑圧を実現できないという問題がある。【０００５】
本発明は上記課題に鑑みて発明されたものであって、その目的は、少ない演算量で高品質な雑音抑圧を実現することのできる雑音抑圧装置、その方法及びプログラムを提供することである。
【課題を解決するための手段】
【０００６】
上記課題を解決する本発明は、入力信号を定められた第一のフレーム毎に周波数領域信号に変換する変換手段と、前記第一のフレームと異なるように第二のフレームを生成するフレーム生成手段と、前記第二のフレームに含まれる第一のフレームの前記周波数領域信号から代表周波数領域信号を生成する代表周波数領域信号生成手段と、前記代表周波数領域信号に基づいて、前記第二のフレームの雑音抑圧の程度を求める雑音抑制程度算出手段とを有することを特徴とする雑音抑圧装置である。【０００７】
上記課題を解決する本発明は、入力信号を定められた第一のフレーム毎に周波数領域信号に変換する変換ステップと、前記第一のフレームと異なるように第二のフレームを生成するフレーム生成ステップと、前記第二のフレームに含まれる第一のフレームの前記周波数領域信号から代表周波数領域信号を生成する代表周波数領域信号生成ステップと、前記代表周波数領域信号に基づいて、前記第二のフレームの雑音抑圧の程度を求める雑音抑制程度算出ステップとを有することを特徴とする雑音抑圧方法である。【０００８】
上記課題を解決する本発明は、コンピュータに、入力信号を定められた第一のフレーム毎に周波数領域信号に変換する変換処理と、前記第一のフレームと異なるように第二のフレームを生成するフレーム生成処理と、
前記第二のフレームに含まれる第一のフレームの前記周波数領域信号から代表周波数領域信号を生成する代表周波数領域信号生成処理と、前記代表周波数領域信号に基づいて、前記第二のフレームの雑音抑圧の程度を求める雑音抑制程度算出処理とを実行させる雑音抑圧プログラムである。
【発明の効果】
【０００９】
本発明の構成では、２つ以上の変換フレームを統合した処理フレーム毎に雑音抑圧情報を算出する。このため、本発明の構成によると、少ない演算量で高音質な雑音抑圧を実現できる。
【図面の簡単な説明】
【００１０】
【図１】本発明の最良の実施の形態を示すブロック図である。
【図２】図１に含まれる処理フレーム情報生成部の構成を示すブロック図である。
【図３】図２に含まれる時間グループ生成部における処理フレームの一例を示す図である。
【図４】図２に含まれる周波数グループ生成部における統合周波数帯域の一例を示す図である。
【図５】図１に含まれる処理フレーム情報生成部の第２の構成を示すブロック図である。
【図６】図５に含まれる周波数グループ生成部における統合周波数帯域の一例を示す図である。
【図７】図１に含まれる雑音抑圧情報計算部の構成を示すブロック図である。
【図８】図７に含まれる雑音推定部の構成を示すブロック図である。
【図９】図８に含まれる推定雑音計算部の構成を示すブロック図である。
【図１０】図９に含まれる更新判定部の構成を示すブロック図である。
【図１１】図８に含まれる重みつき劣化音声計算部の構成を示すブロック図である。
【図１２】図１１に含まれる非線形処理部における非線形関数の一例を示す図である。
【図１３】図７に含まれる雑音抑圧係数生成部の構成を示すブロック図である。
【図１４】図１３に含まれる推定先天的SNR計算部の構成を示すブロック図である。
【図１５】図１３に含まれる雑音抑圧係数計算部の構成を示すブロック図である。
【図１６】図７に含まれる抑圧係数補正部の構成を示すブロック図である。
【図１７】図１に含まれる雑音抑圧情報計算部の第２の構成を示すブロック図である。
【図１８】図１７に含まれる抑圧係数補正部の構成を示すブロック図である。
【図１９】本発明の第２の実施の形態を示すブロック図である。
【図２０】図１９に含まれる雑音抑圧情報計算部の構成を示すブロック図である。
【図２１】図２０に含まれる雑音推定部の構成を示すブロック図である。
【図２２】図１９に含まれる雑音抑圧情報計算部の第２の構成を示すブロック図である。
【図２３】本発明の第３の実施の形態を示すブロック図である。
【図２４】図２３に含まれる処理フレーム情報生成部の構成を示すブロック図である。
【図２５】図２３に含まれる処理フレーム情報生成部の第２の構成を示すブロック図である。
【図２６】本発明の第４の実施の形態を示すブロック図である。
【図２７】図２６に含まれる処理フレーム情報生成部の構成を示すブロック図である。
【図２８】本発明の第５の実施の形態を示すブロック図である。
【図２９】図２８に含まれる処理フレーム情報生成部の構成を示すブロック図である。
【図３０】本発明の第６の実施の形態を示すブロック図である。
【図３１】図３０に含まれる処理フレーム情報生成部の構成を示すブロック図である。
【図３２】本発明の第７の実施の形態を示すブロック図である。
【図３３】本発明の第８の実施の形態を示すブロック図である。
【図３４】本発明の第９の実施の形態を示すブロック図である。
【図３５】従来の構成を示すブロック図である。
【図３６】時間グループ生成部の処理動作の一例を表す流れ図である。
【符号の説明】
【００１１】
1，901  入力端子 
2，902  変換フレーム分割部
3，903  変換フレーム合成部
4，904  出力端子 
5，905  変換部
6，906  逆変換部
7，12，13，14，15  処理フレーム情報生成部
8  代表周波数領域信号生成部
9，11，907  雑音抑圧情報計算部
10，16，908  雑音抑圧処理部
30  記録部
31  再生部
32  多重化部
33  分離部
50，57  変換フレームエネルギ計算部
51，55，58，59，60  時間グループ生成部
52，54，56  周波数グループ生成部
53  周波数エネルギ計算部
300，301  雑音推定部
310  推定雑音計算部
320  重み付き劣化音声計算部
330, 331，480  カウンタ
400  更新判定部
410  レジスタ長記憶部
420, 3201  推定雑音記憶部
430, 1595  スイッチ
440  シフトレジスタ
450, 6208  加算器
460  最小値選択部
470  除算部
601，602  雑音抑圧係数生成部
610  後天的SNR計算部
620  推定先天的SNR計算部
630  雑音抑圧係数計算部
640  音声非存在確率記憶部
660, 1597，3203, 6204, 6205  乗算器
670  音声存在確率計算部
680  仮出力SNR計算部
1000  コンピュータ
1501，1502  抑圧係数補正部
1591, 6511 最大値選択部
1592  抑圧係数下限値記憶部
1593  閾値記憶部
1594，4002, 4004  比較部
1596  修正値記憶部
3202  SNR計算部
3204  非線形処理部
4001  論理和計算部
4003, 4005  閾値記憶部
4006  閾値計算部
6201  値域限定処理部
6202  後天的SNR記憶部
6203  抑圧係数記憶部
6206  重み記憶部
6207  重み付き加算部
6301  MMSE STSA ゲイン関数値計算部
6302  一般化尤度比計算部
6303  抑圧係数計算部
6512  抑圧係数下限値計算部
【発明を実施するための最良の形態】
【００１２】
本発明の雑音抑圧装置の実施の形態について図面を参照して詳細に説明する。【００１３】
図１を参照して、本発明の最良の実施の形態の構成を説明する。本発明の雑音抑圧装置は、入力端子１、変換フレーム分割部２、変換フレーム合成部３、出力端子４、変換部５、逆変換部６、処理フレーム情報生成部７、代表周波数領域信号生成部８、雑音抑圧情報計算部９、及び雑音抑圧処理部１０から構成される。【００１４】
劣化音声信号である入力信号が、サンプル値系列として入力端子1に供給される。入力信号サンプルは、変換フレーム分割部２に供給され、定められた変換フレーム長に分割される。変換フレーム分割部２は、第n変換フレームの入力信号サンプルを、変換部５に出力する。変換部５は、第n変換フレームの入力信号サンプルを周波数領域の信号である劣化音声スペクトルYn(k)に変換する。ここで、nは変換フレームの時間方向のインデックスを表す。kは周波数方向のインデックスを表し、第n変換フレームの入力信号サンプルをK個の周波数帯域に分割するものとする(0≦k＜K)。変換部5は、劣化音声スペクトルYn(k)を位相と振幅に分離し、位相であるarg Yn(k)は逆変換部６に、劣化音声パワースペクトル|Yn(k)|2は、処理フレーム情報生成部7、代表周波数領域信号生成部８、雑音抑圧処理部１０に出力する。【００１５】
変換部５は、第n変換フレームの入力信号サンプルを劣化音声スペクトルYn(k)へ変換する方法として、変換フレームに分割された入力信号サンプルに対して周波数変換を適用している。周波数変換の例としては、フーリエ変換、コサイン変換、ＫＬ（カルーネンレーベ）変換などが知られている。これらの変換の具体的な演算に関連する技術及びその性質は、非特許文献１（1990年、「ディジタル・コーディング・オブ・ウェーブフォームス」、プレンティス・ホール (DIGITAL CODING OF WAVEFORMS, PRINCIPLES AND APPLICATIONS TO SPEECH AND VIDEO, PRENTICE-HALL, 1990.)）に開示されている。また、アダマール変換、ハール変換、ウェーブレット変換などの他の変換を用いることができることは広く知られている。【００１６】
変換部５は、当該変換フレームの入力信号サンプルを窓関数Wで重み付けした結果に対して、前述の変換を適用することができる。このような窓関数としては、ハミング、ハニング（ハン）、ケイザー、ブラックマンなどの窓関数が知られている。また、さらに複雑な窓関数を用いることもできる。これらの窓関数に関連する技術は、非特許文献２（1975 年、「ディジタル・シグナル・プロセシング」、プレンティス・ホール (DIGITAL SIGNAL PROCESSING, PRENTICE-HALL, 1975.)）及び非特許文献３（1993 年、「マルチレートシステムズ・アンド・フィルタバンクス」、プレンティス・ホール (MULTIRATE SYSTEMS AND FILTER BANKS, PRENTICE-HALL, 1993.)）に開示されている。さらに、連続する２変換フレーム以上の一部を重ね合わせ(オーバラップ)て窓がけすることも広く行なわれている。この場合、重ね合わせて窓がけした信号に対して、前述の周波数変換を用いる。オーバラップを有するブロック化と変換に関連する技術は、非特許文献２に開示されている。【００１７】
さらに変換部５は、帯域分割フィルタバンクで構成して劣化音声スペクトルYn(k)を算出してもよい。帯域分割フィルタバンクは、複数の帯域通過フィルタから構成される。帯域分割フィルタバンクの各周波数帯域は等間隔であってもよいし、不等間隔であってもよい。不等間隔に帯域分割することによって、低域では狭帯域に分割して時間分解能を低く、高域では広い帯域に分割して時間分解能を高くすることができる。不等間隔分割の代表例には、低域に向かって帯域が逐次半分になるオクターブ分割や人間の聴覚特性に対応した臨界帯域分割などがある。等間隔の周波数帯域に分割した後、低域の周波数帯域の周波数分解能を向上させるために、低域のみをさらに帯域分割するハイブリッドフィルタバンクを用いてもよい。帯域分割フィルタバンクとその設計法に関連する技術は、非特許文献３に開示されている。【００１８】
処理フレーム情報生成部７は、劣化音声パワースペクトルから、後述する代表劣化音声パワースペクトルを生成するための処理フレーム情報を計算する。処理フレーム情報には、複数の劣化音声パワースペクトルを時間方向および周波数方向に統合するための情報を含む。図２を参照して、図１に含まれる処理フレーム情報生成部７について詳細に説明する。処理フレーム情報生成部７は、変換フレームエネルギ計算部50、時間グループ生成部51及び周波数グループ生成部52から構成される。【００１９】
変換フレームエネルギ計算部50は、劣化音声パワースペクトル|Yn(k)|2から当該変換フレームの変換フレームエネルギE(n)を求め、時間グループ生成部51に出力する。変換フレームエネルギE(n)は、【００２０】
【数１】
0005483000.tif 000002
となる。【００２１】
ここでは、全周波数帯域の劣化音声パワースペクトルのエネルギ和を変換フレームエネルギとしている。しかし、一部の周波数帯域のみの劣化音声パワースペクトルから変換フレームエネルギを算出してもよい。たとえば、音声信号のパワーが集中する帯域のみの劣化音声パワースペクトルから変換フレームエネルギを算出してもよい。これにより、後述する処理フレーム生成を高品位に行うことができる。また、変換フレームエネルギの計算に低周波数帯域の信号を使わずに算出した場合、低域に集中しやすい雑音成分の影響を除去することができる。【００２２】
さらに、劣化音声パワースペクトルを周波数方向に重み付けして、重み付けした値の和を変換フレームエネルギとしてを用いてもよい。他にも、算出した変換フレームエネルギを時間方向に平滑化してもよい。【００２３】
ここで、算出した変換フレームエネルギを聴覚上の特性に合わせて修正することもできる。例えば、人間の聴覚特性として、音の強さの知覚は対数に比例していることが知られている。この特性を用いて、エネルギを対数化したものを変換フレームエネルギとすることもできる。単なる対数ばかりでなく、より複雑な関数や多項式などを用いて、変換フレームエネルギを修正することも可能である。対数を近似する多項式は、これらの例の一つであり、演算量削減に貢献する。【００２４】
時間グループ生成部51は、変換フレームエネルギに基づいて、後述する代表劣化音声パワースペクトルを生成するための処理フレームの区切り位置を定める。定められた処理フレーム区切り位置に基づいて生成した処理フレームを周波数グループ生成部52へ出力する。処理フレームの区切り位置を定める方法として、変換フレームエネルギの変化に基づいて処理フレームの区切り位置を定める方法がある。【００２５】
図３を参照して、変換フレームエネルギの変化例を説明する。図３において、n=nL-1, nL, nL+1で変換フレームエネルギが大きく変化している。これらの箇所で処理フレームが分割されるように処理フレームの区切り位置を定めると、第L-1処理フレームの区切り位置は、n=nL-1およびn=nLとなり、第L処理フレームの区切り位置は、n=nLおよびn=nL+1となる。この結果、第L-1処理フレームは、第nL-1変換フレームから第nL-1変換フレームを統合して処理フレームが生成されている。第L-1処理フレームの処理フレーム長はnL−nL-1である。一方、第L処理フレームは、第nL変換フレームから第nL+1-1変換フレームを統合して処理フレームが生成されている。その第L処理フレーム長はnL+1−nLとなる。【００２６】
変換フレームエネルギが大きく変化する箇所の検出には、たとえば、あらかじめ定めた閾値THAを用いて【００２７】
【数２】
0005483000.tif 000003
を満たす場合に、変換フレームエネルギが大きく変化したと判定する方法がある。この方法の場合、n=nLで処理フレームが分割されるように処理フレームの区切り位置を定める。このとき、閾値THAを変えることも可能である。たとえば、数２を満たす割合が、ある一定区間内で均一になるように、変換フレームエネルギの平均や分散の値に基づいて閾値THAを適応的に変更する。このようにすることにより、後述する雑音抑圧情報の演算回数のばらつきを少なくすることができる。【００２８】
処理フレームの区切り位置を生成する他の方法として、隣接する２つの変換フレームエネルギのみから変化量を算出するのではなく、複数の変換フレームエネルギを用いて変化量を算出し、処理フレームの区切り位置を生成する方法がある。例えば、３つの変換フレームエネルギを用いて、次の条件式を満たすとき、n=nLで処理フレームが分割されるように処理フレームの区切り位置を定めることができる。【００２９】
【数３】
0005483000.tif 000004
ここで、THBは閾値である。このとき、閾値THBを変えることも可能である。たとえば、［数3］を満たす割合が、ある一定区間内で均一になるように、変換フレームエネルギの平均や分散の値に基づいて閾値THBを適応的に変更する。このようにすることにより、後述する雑音抑圧情報の演算回数のばらつきを少なくすることができる。【００３０】
処理フレームの区切り位置を定める他の方法として、当該処理フレーム内に含まれる変換フレームエネルギの最小値と最大値が定めれらた閾値以下になるように処理フレームの区切り位置を定める方法がある。この場合、当該処理フレーム内に含まれる信号が同程度のエネルギを有していることになり、後述する雑音抑圧情報を高品位に算出することができる。また、変換フレームエネルギが大きく変化した箇所から、固定の処理フレーム長になるように処理フレームの区切り位置を生成してもよい。この場合、エネルギ変化の判定回数を削減することができるため、演算量を削減できる。【００３１】
上記説明では、変換フレーム毎に変換フレームエネルギを算出し、処理フレームの区切り位置を生成する方法について説明した。上記方法に対し、複数の変換フレームを統合した単位で、変換フレームエネルギを算出し、算出した変換フレームエネルギに基づいて処理フレームの区切り位置を生成することも可能である。この場合、変換フレーム毎に変換フレームエネルギを算出する必要がないので、時間グループ生成部51の演算量を削減することができる。また、周波数帯域毎に信号の変化を分析し、処理フレームの区切り位置を定めることもできる。この結果、周波数帯域ごとに定めた重要度を反映させることができる。たとえば、音声信号が含まれる帯域の重要度を大きくすることで、当該帯域の信号の変化を反映しやすくすることができる。【００３２】
処理フレームの区切り位置を定める指標として、変換フレームエネルギ以外の劣化音声スペクトルの特性を用いても良い。たとえば、心理聴覚エントロピーなどの指標に基づいて区切り位置を定めることができる。すなわち、人の聴覚特性である大きい音の近傍の小さい音が聞こえないという心理聴覚マスキングなどを積極的に用いる方法である。心理聴覚マスキングを用いて、人に聞こえる音の成分が変化する箇所で処理フレームが分割されるように処理フレームの区切り位置を定める。この方法により、人の聴覚特性に基づいた処理フレームを生成することができ、後述する雑音抑圧情報を高品位に算出することができる。【００３３】
処理フレームの区切り位置を定める際には、上記いずれかの方法のみを用いるのではなく、組み合わせて用いることがきでるのは明らかである。【００３４】
ここで、図３６の流れ図を参照して、時間グループ生成部51の処理動作の一例を説明する。【００３５】
時間グループ生成部51は、ある定められた一定区間内のN個の変換フレームにおいて、変換フレームエネルギの分散を計算する(S001)。その後、上記一定区間内のN個の変換フレームにおいて、時間グループ生成部51は、上述した数２または数３を満たしているか判定する(S002)。１つでも満たしている変換フレームが存在する場合、処理は、S007へ進む。逆に、上述した数２または数３を満たしている変換フレームが1つもない場合、処理は、S003へ進む。【００３６】
S003では、時間グループ生成部51は、算出した分散値が閾値Thr1より大きいかどうか判定し、分散値が閾値Thr1より大きい場合は処理をS007へ進める。一方で、分散値が閾値Thr1より小さい場合、処理は、S004へ進む。S004では、時間グループ生成部51は、算出した分散値が閾値Thr2より大きいかどうかを判定し、分散値が閾値Thr2より小さい場合、処理をS005へ進める。【００３７】
S005では、当該N個の変換フレームを1つの処理フレームとする。ここで、n0およびn1は、処理フレームの区切り位置を表し、Kosuは当該N個の変換フレームからいくつの処理フレームを生成したかを表す。一方で、S004において分散値が閾値Thr2より大きい場合、処理はS006へ進む。S006では、当該N個の変換フレームを2つの処理フレームとする。このとき、2つの処理フレームの処理フレーム長が同じになるように区切り位置を設定する。すなわちn1=N/2となる。【００３８】
続いて、S007以降の動作について説明する。S007において、時間グループ生成部51は、必要な変数を初期化後、当該N個の変換フレームをn=0からN-1まで順番に調査し、処理フレームの区切り位置となるかどうかを判定していく。次に、S008において、時間グループ生成部51は、当該処理フレームに含まれる変換エネルギの最小値と最大値の差の絶対値が定められた閾値より大きいかどうかを判定する。定められた閾値より大きい場合、処理はS010へ進み、定められた閾値より小さい場合、処理はS009へ進む。続いて、S009では、時間グループ生成部51は、変換フレームnにおいて、上述した数２または数３を満たしているかを判定する。S009において、上述した数２または数３を満たしている場合、処理はS010へ進む。一方で、満たしていない場合、処理はS011へ進む。S010では、時間グループ生成部51は、変換フレームnにおいて処理フレームが分割されるように処理フレームの区切り位置を定め、処理フレームの個数を1つ増やし、処理をS011へ進める。S011では、時間グループ生成部51は、変換フレームN-1まで調査したかどうかを判定し、調査すべき変換フレームが残っている場合は、n=n+1（S012）とし、S008へ戻る。当該N変換フレーム全てを調査した場合、処理フレームの生成を終了する。【００３９】
以上で、図３６を参照した時間グループ生成部51の処理動作の一例の説明を終える。【００４０】
周波数グループ生成部52は、時間グループ生成部51より供給された各処理フレームに対して、周波数帯域を統合し、後述する代表劣化音声パワースペクトルを計算するための統合周波数帯域の区切り位置を定める。その後、処理フレームの区切り位置と統合周波数帯域の区切り位置とを処理フレーム情報として代表周波数領域信号生成部８に出力する。【００４１】
図４を参照して、周波数帯域を統合する様子を説明する。破線で囲まれた一つ一つの格子が１つの劣化音声パワースペクトルを表す。横軸は時間方向を表し、横軸の１マスが1変換フレームを表す。縦軸は周波数方向を表し、縦軸の１マスが変換部５において変換された１つの周波数帯域を表す。前述の時間グループ生成部51の処理は、図４の横軸である時間方向のマスを統合する区切りを決定することに相当する。図４には、時間グループ生成部51により生成した第L-1処理フレームおよび第L処理フレームが表されている。第L-1処理フレームおよび第L処理フレームは、n=nL-1,nL,nL+1で処理フレームを区切ることにより、生成されたものである。また、周波数グループ生成部52での処理は、図４の縦軸である周波数方向のマスを統合することに相当する。図４では、K個の周波数帯域をM個の周波数帯域に統合した場合を表している。第L処理フレームの周波数方向の区切り位置を、k L,p (p=0,1,…,M), kL,0=0,kL,M=Kとする。第L処理フレームの処理フレーム情報は、時間方向の処理フレームの区切り位置(n=nL,nL+1)と、周波数方向の統合周波数帯域の区切り位置(k=kL,0,…,kL,M)とから構成される。【００４２】
このとき、高周波領域では低周波領域に比べてより多くの帯域を一つに統合してもよい。すなわち、高周波領域成分ほどたくさんの周波数成分を一つに統合することになり、不等分割されることになる。このような不等分割の例としては、高周波領域側に向かって２のべき乗で帯域が広くなるオクターブ分割や人間の聴覚特性に基づいて帯域分割された臨界帯域に従った分割などが知られている。特に、臨界帯域に従った帯域分割は、人間の聴覚特性と整合性が高いために、広く用いられている。周波数帯域を統合するときに、臨界帯域よりも細かいグループに統合することによって、雑音抑圧特性の劣化を防ぐこともできる。【００４３】
次に、図５を参照して、処理フレーム情報生成部７の第２の構成例を詳細に説明する。図２の処理フレーム情報生成部７と比較すると、新たに周波数エネルギ計算部53を備え、周波数グループ生成部52が周波数グループ生成部54に置換されていることを特徴とする。以下、本構成例の特徴である周波数エネルギ計算部53と周波数グループ生成部54について詳細に説明する。【００４４】
周波数エネルギ計算部53は、劣化音声パワースペクトルと処理フレームとから、当該処理フレームにおける同一周波数帯域の劣化音声パワースペクトルのエネルギ和である周波数エネルギEfL(k)を求める。周波数エネルギ計算部53は、周波数エネルギEfL(k)を周波数グループ生成部54に出力する。すなわち、処理フレームLの周波数エネルギEfL(k)は、【００４５】
【数４】
0005483000.tif 000005
となる。【００４６】
周波数グループ生成部54は、時間グループ生成部51から供給された処理フレームと周波数エネルギ計算部53から供給された周波数エネルギEf L(k)に基づいて、処理フレーム単位で劣化音声パワースペクトルの特性が似ている周波数帯域を統合する。これにより、周波数グループ生成部54は、統合周波数帯域の区切り位置を定める。【００４７】
図６を参照して、各処理フレームにおける周波数帯域を統合する様子を説明する。横軸、縦軸は、図４と同一である。第L-1処理フレームにおいてK個の周波数帯域をML-1個に、第L処理フレームにおいてK個の周波数帯域をML個の周波数帯域に統合した場合を表している。処理フレームLの周波数方向の区切り位置を、kL,p(p=0,1,…,ML), kL,0=0,k L,ML=Kとする。処理フレーム情報は、時間方向の区切り位置である処理フレームの区切り位置と周波数方向の区切り位置である統合周波数帯域の区切り位置とから構成される。【００４８】
周波数帯域の統合は、周波数エネルギの変化が大きい箇所で統合周波数帯域が分割されるように、統合周波数帯域の区切り位置を定める。たとえば、時間グループ生成部51で説明したエネルギ変化に基づく方法を周波数方向に適用することにより周波数帯域を統合してもよい。このように構成することにより、各処理フレームで最適な周波数帯域の統合を実現できる。このため、信号の変化が少ない場合には、不必要に多くの帯域に統合することを抑制でき、演算量を削減できる。【００４９】
以上で、処理フレーム情報生成部7の第２の構成例の説明を終える。【００５０】
処理フレーム情報生成部７を上記のように構成することにより、複数の変換フレームを統合した処理フレームを生成することができる。このとき、処理フレームに含まれる各変換フレームについて劣化音声パワースペクトルの特性が似ているため、当該変換フレーム毎に算出したそれぞれの雑音抑圧情報が似た値となる。雑音抑圧情報については後述する。このため、変換フレーム毎に算出した雑音抑圧情報による雑音抑圧と、処理フレーム毎に算出した雑音抑圧情報による雑音抑圧とで効果の差はほとんど生じない。これにより、処理フレーム毎に算出された雑音抑圧情報を用いても、雑音抑圧の効果を低下させることはない。従って、処理フレーム毎に雑音抑圧情報を算出することにより演算量を削減しても、最終的な雑音抑圧に影響を与えることはない。
以上で、処理フレーム情報生成部7の説明を終える。【００５１】
代表周波数領域信号生成部８は、処理フレーム情報と劣化音声パワースペクトルを用いて、代表劣化音声パワースペクトルを生成する。そして、代表周波数領域信号生成部８は、代表劣化音声パワースペクトルを雑音抑圧情報計算部９へ出力する。代表劣化音声パワースペクトルを生成する方法として、当該処理フレームおよび当該統合周波数領域に含まれる劣化音声パワースペクトルの平均を用いる方法がある。この場合、第L処理フレームの代表劣化音声パワースペクトル|ZL(m)|2(m=0,…ML-1)は、【００５２】
【数５】
0005483000.tif 000006
となる。すなわち、図４および図６において、灰色で囲まれている格子１つにつき、１つの値を計算していることに相当する。【００５３】
また、全ての劣化音声パワースペクトルの平均値を用いる方法以外にも、大きな劣化音声パワースペクトルや小さな劣化音声パワースペクトルを除いて平均値を求める方法がある。このようにすると、突発的な劣化音声パワースペクトルを除くことができるため、代表劣化音声パワースペクトルが安定し、後述する雑音抑圧の程度を高品位に算出できる。【００５４】
他にも、平均値を用いるのではなく、特定の劣化音声パワースペクトルを代表劣化音声パワースペクトルとする方法もある。たとえば、当該処理フレームおよび当該統合周波数領域に含まれる劣化音声パワースペクトルの最大値を代表劣化音声パワースペクトルとすると、後述する雑音抑圧情報の計算において雑音成分を大きく推定することになる。この場合、雑音抑圧された強調音声に含まれる残留雑音を小さくすることができる。一方、当該処理フレームおよび当該統合周波数領域に含まれる劣化音声パワースペクトルの最小値を代表劣化音声パワースペクトルとすると、後述する雑音抑圧情報の計算において雑音成分を小さく推定することになる。この場合、雑音抑圧された強調音声の歪を小さくすることができる。【００５５】
雑音抑圧情報計算部９は、代表劣化音声パワースペクトル毎に１つの雑音抑圧の程度を表す雑音抑圧情報を求める。そして、雑音抑圧情報計算部９は、雑音抑圧情報を雑音抑圧処理部１０に出力する。すなわち、雑音抑圧情報計算部９は、複数の劣化音声パワースペクトルに対して共通の雑音抑圧情報を算出する。これは、図４および図６において、灰色で囲まれている格子１つにつき、１つの雑音抑圧情報CL(m) (m=0,…,ML-1)を計算していることに相当する。【００５６】
図７を参照して、雑音抑圧情報計算部9の第１の構成例について詳細に説明する。雑音抑圧情報計算部9は、雑音推定部300、雑音抑圧係数生成部601及び抑圧係数補正部1501から構成される。【００５７】
雑音推定部300は、代表劣化音声パワースペクトルに基づいて劣化音声に含まれる雑音成分のエネルギを推定する。雑音推定部300は、推定した雑音成分のエネルギを推定雑音パワースペクトルとして、雑音抑圧係数生成部601へ出力する。雑音抑圧係数生成部601は、代表劣化音声パワースペクトルと推定雑音パワースペクトルと後述する補正抑圧係数に基づいて、抑圧係数を求め、入力信号に含まれる音声と雑音の比を表す先天的SNRを推定する。推定先天的SNRについては、後述する。雑音抑圧係数生成部601は、抑圧係数と推定先天的SNRとを抑圧係数補正部1501へ出力する。抑圧係数補正部1501は、推定された先天的SNRに基づいて入力された抑圧係数を補正し、補正抑圧係数を求める。抑圧係数補正部1501は、補正抑圧係数を雑音抑圧情報として出力すると同時に、雑音抑圧係数生成部601へ出力する。【００５８】
図８を参照して、図７に含まれる雑音抑圧推定部300の構成例を説明する。雑音推定部300は、推定雑音計算部310、重みつき劣化音声計算部320及びカウンタ330から構成される。雑音推定部300に入力された代表劣化音声パワースペクトルは、推定雑音計算部310、及び重み付き劣化音声計算部320に入力される。重み付き劣化音声計算部320は、入力された代表劣化音声パワースペクトルと推定雑音パワースペクトルを用いて重み付き劣化音声パワースペクトルを計算する。重み付き劣化音声計算部320は、重み付き劣化音声パワースペクトルを推定雑音計算部310に出力する。推定雑音計算部310は、代表劣化音声パワースペクトル、重み付き劣化音声パワースペクトル、及びカウンタ330から入力されるカウント値を用いて雑音のパワースペクトルを推定する。推定雑音計算部310は、雑音推定部300の出力として推定雑音パワースペクトルを出力する。さらに、推定雑音計算部310は、推定雑音パワースペクトルを重み付き劣化音声計算部320に出力する。カウンタ330は、カウント値を出力する。カウント値の初期値は０に設定されている。カウンタ330は、処理フレーム毎にカウント値を1ずつ増加していく。【００５９】
図９を参照して、図８に含まれる推定雑音計算部310の構成を詳細に説明する。推定雑音計算部310は、更新判定部400、レジスタ長記憶部410、推定雑音記憶部420、スイッチ430、シフトレジスタ440、加算器450、最小値選択部460、除算部470及びカウンタ480から構成される。スイッチ430には、重み付き劣化音声パワースペクトルが入力されている。スイッチ430が回路を閉じたときに、重み付き劣化音声パワースペクトルは、シフトレジスタ440に入力される。シフトレジスタ440は、更新判定部400から入力される制御信号に応じて、内部レジスタの記憶値を隣接レジスタにシフトする。シフトレジスタ長は、後述するレジスタ長記憶部410に記憶されている値に等しい。シフトレジスタ440の全レジスタ出力は、加算器450に出力される。加算器450は、入力された全レジスタ出力を加算する。加算器450は、加算結果を除算部470に出力する。【００６０】
一方、更新判定部400には、カウント値、代表劣化音声パワースペクトル及び推定雑音パワースペクトルが入力されている。更新判定部400は、１又は0の信号をカウンタ480、スイッチ430、及びシフトレジスタ440に出力する。更新判定部400は、入力されるカウント値が予め設定された値に到達するまでは常に1を出力する。また、更新判定部400は、カウント値が予め設定された値に到達した後は入力された劣化音声信号が雑音であると判定されたときに1を、それ以外のときに0を出力する。スイッチ430は、更新判定部400から入力された信号が1のときに回路を閉じ、0のときに開く。カウンタ480は、更新判定部400から入力された信号が1のときにカウント値を増加し、0のときには変更しない。シフトレジスタ440は、更新判定部400から入力された信号が1のときにスイッチ430から入力される信号サンプルを1サンプル取り込む。さらに、シフトレジスタ440は、1サンプルを取り込むと同時に、内部レジスタの記憶値を隣接レジスタにシフトする。最小値選択部460には、カウンタ480の出力とレジスタ長記憶部410の出力が入力されている。【００６１】
最小値選択部460は、入力されたカウント値とレジスタ長のうち、小さい方を選択して、除算部470に出力する。除算部470は、加算器450から入力された代表劣化音声パワースペクトルの加算値をカウント値又はレジスタ長の小さい方の値で除算する。除算部470は、除算された商を推定雑音パワースペクトルλL(m)として出力する。Bl(m) (l=0, 1, ..., P-1)をシフトレジスタ440に保存されている重みつき劣化音声パワースペクトルのサンプル値とすると、λL(m)は、【００６２】
【数６】
0005483000.tif 000007
で与えられる。ただし、Pはカウント値とレジスタ長のうち、小さい方の値である。カウント値はゼロから始まって単調に増加するので、最初はカウント値で除算が行なわれる。カウント値がレジスタ長より大きくなった後には、レジスタ長で除算が行なわれる。レジスタ長で除算が行なわれることは、シフトレジスタに格納された値の平均値を求めることになる。最初は、シフトレジスタ440に十分多くの値が記憶されていないために、実際に値が記憶されているレジスタの数で除算する。実際に値が記憶されているレジスタの数は、カウント値がレジスタ長より小さいときはカウント値に等しく、カウント値がレジスタ長より大きくなると、レジスタ長と等しくなる。【００６３】
図１０を参照して、図９に含まれる更新判定部400の構成を詳細に説明する。更新判定部400は、論理和計算部4001、比較部4004、4002、閾値記憶部4005、4003、閾値計算部4006から構成される。図８のカウンタ330から入力されるカウント値は、比較部4002に入力される。閾値記憶部4003の出力である閾値は、比較部4002に入力される。比較部4002は、入力されたカウント値と閾値を比較し、カウント値が閾値より小さいときに1を、カウント値が閾値より大きいときに0を、論理和計算部4001に出力する。一方、閾値計算部4006は、図９の推定雑音記憶部420から供給される推定雑音パワースペクトルに応じた値を計算し、閾値として閾値記憶部 4005に出力する。最も簡単な閾値の計算方法は、推定雑音パワースペクトルを定数倍する方法である。その他に、高次多項式や非線形関数を用いて閾値を計算する方法もある。閾値記憶部4005は、閾値計算部4006から出力された閾値を記憶する。そして、閾値計算部4006は、1処理フレーム前に記憶された閾値を比較部4004へ出力する。比較部4004は、閾値記憶部4005から入力される閾値と図１の代表周波数領域信号生成部８から入力される代表劣化音声パワースペクトルを比較する。このとき、比較部4004は、代表劣化音声パワースペクトルが閾値よりも小さければ１を、大きければ０を論理和計算部4001に出力する。すなわち、推定雑音パワースペクトルの大きさをもとに、劣化音声信号が雑音であるか否かを判別している。論理和計算部4001は、比較部4202の出力値と比較部4204の出力値との論理和を計算する。そして、論理和計算部4001は、計算結果を図9のスイッチ430、シフトレジスタ440及びカウンタ480に出力する。このように、初期状態や無音区間だけでなく、有音区間でも劣化音声パワーが小さい場合には、更新判定部400は１を出力する。すなわち、有音区間でも劣化音声パワーが小さい場合には、推定雑音の更新が行われる。閾値の計算は各周波数で行われるため、各周波数で推定雑音の更新を行うことができる。【００６４】
図１１を参照して、雑音推定部300に含まれる重み付き劣化音声計算部320の構成を詳細に説明する。重み付き劣化音声計算部320は、推定雑音記憶部3201、SNR計算部3202、非線形処理部3204、及び乗算器3203から構成される。推定雑音記憶部3201は、図８の推定雑音計算部310から入力される推定雑音パワースペクトルを記憶する。さらに、推定雑音記憶部3201は、１処理フレーム前に記憶された推定雑音パワースペクトルをSNR計算部3202へ出力する。SNR計算部3202は、推定雑音記憶部3201から入力される推定雑音パワースペクトルと図1の代表周波数領域信号生成部8から入力される代表劣化音声パワースペクトルとを用いてSNRを統合周波数帯域毎に求め、非線形処理部3204に出力する。具体的には、次式に従って、供給された代表劣化音声パワースペクトルを推定雑音パワースペクトルで除算して第L処理フレームのSNRγL(m)ハットを求める。【００６５】
【数７】
0005483000.tif 000008
ここで、λL-1(m)は1処理フレーム前に記憶された推定雑音パワースペクトルである。【００６６】
非線形処理部3204は、SNR計算部 3202 から入力されるSNRを用いて重み係数ベクトルを計算する。そして、非線形処理部3204は、重み係数ベクトルを乗算器3203に出力する。乗算器3203は、図１の代表周波数領域信号生成部8からから入力される代表劣化音声パワースペクトルと、非線形処理部3204から入力される重み係数ベクトルとの積を周波数帯域毎に計算する。そして、乗算器3203は、重み付き劣化音声パワースペクトルを図8の推定雑音計算部310に出力する。【００６７】
非線形処理部3204は、多重化された入力値それぞれに応じた実数値を出力することが出来る非線形関数を有する。図１２に、非線形関数の例を示す。f1 を入力値としたとき、図１２に示される非線形関数の出力値f2は、【００６８】
【数８】
0005483000.tif 000009
で与えられる。但し、a と b は任意の実数である。【００６９】
非線形処理部3204は、SNR計算部3202から入力されるSNRを、非線形関数によって処理して重み係数を求め、乗算器3203に出力する。すなわち、非線形処理部3204はSNRに応じた１から０までの重み係数を出力する。SNRが小さい時は１を、大きい時は０を出力する。【００７０】
図１１の乗算器3203は、代表劣化音声パワースペクトルと重み係数とを乗算する。重み係数は、SNRに応じた値になっている。つまり、SNRが大きい程すなわち劣化音声に含まれる音声成分が大きい程、重み係数の値は小さくなる。推定雑音の更新には一般に代表劣化音声パワースペクトルが用いられる。しかし、本発明では、推定雑音の更新に用いる代表劣化音声パワースペクトルに対して、SNRに応じた重みづけを行う。このことにより、代表劣化音声パワースペクトルに含まれる音声成分の影響を小さくすることができ、より精度の高い雑音推定を行うことができる。なお、重み係数の計算に非線形関数を用いた例を示したが、非線形関数以外にも線形関数や高次多項式など、他の形で表されるSNRの関数を用いてもよい。【００７１】
以上で、雑音推定部300の説明を終える。【００７２】
続いて、図１３を参照して、図７の雑音抑圧係数生成部601を詳細に説明する。【００７３】
雑音抑圧係数生成部601は、後天的SNR計算部610、推定先天的SNR計算部620、雑音抑圧係数計算部630、音声非存在確率記憶部640から構成される。後天的SNR計算部610は、入力された代表劣化音声パワースペクトルと推定雑音パワースペクトルとを用いて統合周波数帯域毎にSNRを計算する。そして、後天的SNR計算部610は、計算結果を後天的SNRとして、推定先天的SNR計算部620と雑音抑圧係数計算部630とに出力する。推定先天的SNR計算部620は、入力された後天的SNR及び抑圧係数補正部650から入力された補正抑圧係数を用いて先天的SNRを推定する。推定先天的SNR計算部620は、推定先天的SNRを雑音抑圧係数補正部1501に出力する。さらに、推定先天的SNR計算部620は、推定先天的SNRを雑音抑圧係数計算部630に出力する。【００７４】
雑音抑圧係数計算部630は、入力された後天的SNR、推定先天的SNR及び音声非存在確率記憶部640から入力される音声非存在確率を用いて抑圧係数を生成する。音声非存在確率は、入力信号に音声が含まれていないあらかじめ定めた確率を表す。そして、雑音抑圧係数計算部630は、抑圧係数を出力する。【００７５】
図１４を参照して、図１３に含まれる推定先天的SNR計算部620の構成を詳細に説明する。推定先天的SNR計算部620は、値域限定処理部6201、後天的SNR記憶部6202、抑圧係数記憶部6203、乗算器6204、6205、重み記憶部6206、重み付き加算部6207、加算器6208から構成される。【００７６】
図１３の後天的SNR計算部610から入力される後天的SNRγL(m)(m=0, 1, ..., ML-1)は、後天的SNR記憶部6202と加算器6208に入力される。後天的SNR記憶部6202は、第L処理フレームにおける後天的SNRγL(m)を記憶する。これと同時に、後天的SNR記憶部6202は、１つ前の処理フレームである第L-1処理フレームにおける後天的SNRγL-1(m)を乗算器6205に出力する。図7の抑圧係数補正部1501から入力される第L処理フレームの補正抑圧係数CL(m) (m=0, 1, ..., ML-1)は、抑圧係数記憶部6203に入力される。抑圧係数記憶部6203は、第L処理フレームにおける補正抑圧係数CL(m)を記憶する。これと同時に抑圧係数記憶部6203は、１つ前の処理フレームである第L-1処理フレームにおける補正抑圧係数CL-1(m)バーを乗算器6204に出力する。乗算器6204は、供給されたCL(m)を2乗してC2L-1(m)を求め、乗算器6205に出力する。乗算器6205は、C2L-1(m)とγL-1(m)をm=0, 1, ..., ML-1に対して乗算してC2L-1(m)γL-1 (m)を求める。そして、乗算器6205は、計算結果を過去の推定SNRとして重み付き加算部6207に出力する。【００７７】
加算器6208の他方の端子には−１が供給されており、加算結果γL(m)-1が値域限定処理部6201に出力される。値域限定処理部6201は、加算器6208から入力された加算結果γL(m)-1に値域限定演算子P[・]による演算をを行う。そして、値域限定処理部6201は、演算の結果であるP[γL(m)-1]を瞬時推定SNRとして重み付き加算部6207に伝達する。ただし、P[x]は次式で定められる。【００７８】
【数９】
0005483000.tif 000010
重み付き加算部6207には、重み記憶部6206から重みが入力されている。重み付き加算部6207は、これらの入力された瞬時推定SNR、過去の推定SNR、重みを用いて推定先天的SNRを求める。重みをαとし、ξL(m)ハットを推定先天的SNRとすると、ξL(m)ハットは、次式によって計算される。【００７９】
【数１０】
0005483000.tif 000011
ここで、γ-1(m)C2-1(m)=1とする。【００８０】
図１５を参照して、図１３に含まれる雑音抑圧係数生成部630の構成を詳細に説明する。雑音抑圧係数生成部630 は、MMSE STSA ゲイン関数値計算部 6301、一般化尤度比計算部 6302、及び抑圧係数計算部 6303から構成される。以下、非特許文献４（1984 年12月、アイ・イー・イー・イー・トランザクションズ・オン・アクースティクス・スピーチ・アンド・シグナル・プロセシング、第32巻、第6号(IEEE TRANSACTIONS ON ACOUSTICS, SPEECH, AND SIGNAL PROCESSING,VOL.32, NO.6, PP.1109-1121, DEC, 1984)、1109〜1121 ページ）に記載されている計算式をもとに、抑圧係数の計算方法を説明する。【００８１】
処理フレーム番号をL、周波数番号をmとし、γL(m)を、図１３の後天的SNR 計算部610から入力される周波数別後天的SNR、ξL(m)ハットを図１３の推定先天的SNR計算部620から入力され推定先天的SNR、q を図１３の音声非存在確率記憶部640から入力される音声非存在確率とする。また、ηL(m) = ξL(m)ハット/ (1-q)、VL(m) = (ηL(m)γL(m))/(1+ηL(m))  とする。【００８２】
MMSE STSA ゲイン関数値計算部6301は、図１３の後天的SNR計算部610から入力される後天的SNRγL(m)、図１３の推定先天的SNR計算部620から入力される推定先天的SNR ξL(m)ハット及び図１３の音声非存在確率記憶部640から入力される音声非存在確率qをもとに、周波数帯域毎にMMSE STSAゲイン関数値を計算し、抑圧係数計算部6303に出力する。第L処理フレームの統合周波数帯域毎のMMSE STSAゲイン関数値 GL(m) は、【００８３】
【数１１】
0005483000.tif 000012
で与えられる。ここで、I0(z) は0次変形ベッセル関数、I1(z) は1次変形ベッセル関数 である。【００８４】
一般化尤度比計算部6302は、図１３の後天的SNR計算部610から入力される後天的SNR γL(m)、図１３の推定先天的SNR計算部620から入力される推定先天的SNR ξL(m) ハット及び図１３の音声非存在確率記憶部 640から入力される音声非存在確率qをもとに、周波数帯域毎に一般化尤度比を計算する。そして、一般化尤度比計算部 6302 は、一般化尤度比を抑圧係数計算部 6303 に出力する。第L処理フレームの周波数帯域毎の一般化尤度比ΛL(m) は、【００８５】
【数１２】
0005483000.tif 000013
で与えられる。【００８６】
抑圧係数計算部6303は、MMSE STSA ゲイン関数値計算部6301から入力される MMSE STSA ゲイン関数値CL(m)バーと一般化尤度比計算部6302から入力される一般化尤度比ΛL(m)から周波数帯域毎に抑圧係数を計算する。そして、抑圧係数計算部6303は、抑圧係数を図7の抑圧係数補正部1501へ出力する。第L処理フレームの周波数帯域毎の抑圧係数CL(m)バーは、【００８７】
【数１３】
0005483000.tif 000014
で与えられる。周波数帯域別にSNRを計算する代わりに、複数の周波数帯域から構成される広い帯域に共通なSNRを求めて、求められた共通SNRを用いることも可能である。【００８８】
図１６を参照して、抑圧係数補正部1501の構成を詳細に説明する。抑圧係数補正部1501は、最大値選択部1591、抑圧係数下限値記憶部1592、閾値記憶部1593、比較部1594、スイッチ1595、修正値記憶部1596及び乗算器1597から構成される。比較部1594は、閾値記憶部1593から入力される閾値と、雑音抑圧係数生成部601からの入力として図１３の推定先天的SBR計算部620から入力される推定先天的SNRとを比較する。そして、比較部1594は、推定先天的SNRが閾値よりも大きければ0を、小さければ１をスイッチ1595に入力する。スイッチ1595は、図１３の雑音抑圧係数計算部630から入力される抑圧係数を、比較部1594の出力値が1のときに乗算器1597に出力し、０のときに最大値選択部1591に出力する。すなわち、推定先天的SNRが閾値よりも小さいときに、抑圧係数の補正が行われる。乗算器1597は、スイッチ1595の出力値と修正値記憶部1596の出力値との積を計算し、最大値選択部1591に出力する。【００８９】
一方、抑圧係数下限値記憶部1592は、記憶している抑圧係数の下限値を、最大値選択部1591に出力する。最大値選択部 1591 は、図１３の雑音抑圧係数計算部630から入力される統合周波数帯域別抑圧係数又は乗算器1597で計算された積と、抑圧係数下限値記憶部1592から入力される抑圧係数下限値とを比較し、大きい方の値を補正抑圧係数CL(m)として出力する。すなわち、抑圧係数は、必ず抑圧係数下限値記憶部1592が記憶する下限値以上の値になる。このとき、最大値選択部 1591の出力である補正抑圧係数が雑音抑圧情報となる。抑圧係数を補正しない場合は、CL(m)= CL(m)バーとなる。【００９０】
これまで、雑音抑圧情報の計算は、過去の処理フレームの状態を表す値を出力するシフトレジスタ440，推定雑音記憶部3201，後天的SNR記憶部6202などにおいて、現処理フレームの統合周波数帯域のインデックス番号と同一のインデックス番号で表される過去の処理フレームの値を出力する場合について説明してきた。しかしながら、処理フレーム毎に統合周波数帯域が異なる場合、現処理フレームにおける統合周波数帯域のインデックス番号と過去の処理フレームにおける統合周波数帯域のインデックス番号が同一でも、実際の周波数帯域が異なる場合がある。この場合、現処理フレームにおいて、記憶されている過去の処理フレームの値のうち、当該帯域に最も近い帯域のインデックス番号が指し示す値を出力するようにすると、高品質な雑音抑圧を実現できる。また、記憶されている過去の処理フレームの値をそのまま使うのではなく、現処理フレームの当該帯域に相当する値を算出し、これを用いてもよい。【００９１】
以上で、雑音抑圧情報計算部９の第１の構成説明を終える。【００９２】
続いて、図１７を参照して、図１の雑音抑圧情報計算部９の第２の構成例を詳細に説明する。図7の雑音抑圧情報計算部９と比較すると、雑音抑圧係数生成部601が雑音抑圧係数生成部602に、抑圧係数補正部1501が抑圧係数補正部1502に置換されていることが異なる。雑音抑圧係数生成部602は、図１３に示す雑音抑圧係数生成部601と比較すると、推定先天的SNR計算部620の出力である推定先天的SNRを出力しない点が異なり、残りの部分の動作は同一である。【００９３】
図１８を参照して、図１７に含まれる抑圧係数補正部1502の構成を詳細に説明する。抑圧係数補正部1502は、乗算器660、音声存在確率計算部670、仮出力SNR計算部680、抑圧係数下限値計算部6512及び最大値選択部6511から構成される。【００９４】
乗算器660は、代表劣化音声パワースペクトルと抑圧係数の積を求め、仮強調音声パワースペクトルとして音声存在確率計算部670と仮出力SNR計算部680に出力する。音声存在確率計算部670は、仮強調音声パワースペクトルと推定雑音パワースペクトルとから第L処理フレームの音声存在確率VLを求めて、仮出力SNR計算部680と抑圧係数下限値計算部6512とに出力する。音声存在確率の一例として、仮強調音声パワースペクトルと推定雑音パワースペクトルとの比を用いることができる。この比が大きいときには音声存在確率が高く、小さいときには音声存在確率が低い。仮出力SNR計算部680は、音声存在確率VLを用いて、仮出力と推定雑音パワースペクトルとから仮出力SNR DL(m)を求め、抑圧係数下限値計算部6512に出力する。仮出力SNRの一例として、仮出力の長時間平均と推定雑音パワースペクトルとから求められる長時間出力SNRを用いることができる。仮出力SNR計算部680は、音声存在確率計算部670から入力された音声存在確率VLの大きさに応じて仮出力の長時間平均を更新する。【００９５】
抑圧係数下限値計算部6512は、仮出力SNR DL(m)と音声存在確率Vnとから、抑圧係数の下限値を計算し、最大値選択部6511に出力する。抑圧係数の下限値A(VL, DL(m))は、次式に基づいて、関数A(DL(m))と音声区間とに対応した抑圧係数最小値fsを用いて表すことができる。【００９６】
【数１４】
0005483000.tif 000015
関数A(DL(m))は基本的に、大きなSNRに対して小さな値をとるような形状を有する。A(DL(m))が仮出力SNR DL(m)に対応してこのような形状をとる関数であることは、仮出力SNRが高いほど、非音声区間に対応する抑圧係数の下限値が小さくなることを意味する。これは、残留雑音が小さくなることに対応し、音声区間と非音声区間の音質不連続性を低減する効果がある。なお、関数A(DL(m))は全ての周波数成分に対して異なっていてもよいし、複数の周波数成分に対して共有されていてもよい。また、時間と共にその形状が変化することも可能である。【００９７】
最大値計算部6511は、雑音抑圧係数計算部630から入力された抑圧係数CL(m)バーと抑圧係数下限値計算部6512から入力された抑圧係数の下限値とを比較して、大きいほうの値を補正抑圧係数CL(m)として出力する。この処理は、次式で表すことができる。【００９８】
【数１５】
0005483000.tif 000016
すなわち、完全に音声区間と思われる場合はfsが、完全に非音声区間と思われる場合は仮出力DL(m)に応じて単調減少関数で定められる値が、抑圧係数最小値となる。両者の中間と思われる状況では、これらの値が適切に混合される。A(DL(m))の単調減少性によって、低SNR時の大きな抑圧係数最小値が保証される。これにより、消し残し雑音の多い直前の音声区間からの連続性が保たれる。高SNR時は、抑圧係数最小値が小さくなり、残留雑音が小さくなるように制御される。これは、音声区間の残留雑音が無視できる程度に小さいので、非音声区間の残留雑音が小さいときも、連続性が保たれるためである。また、fsをA(DL(m))よりも大きく設定することによって、音声区間あるいはその可能性が高い場合に雑音抑圧が軽度になり、音声に生じる歪を低減することができる。これは、符号化・復号によって生じる歪の混入した音声において雑音推定精度が十分に高くできない場合に、特に有効である。【００９９】
以上で、雑音抑圧情報計算部9の第２の構成の説明を終える。【０１００】
図１に戻り、本発明の最良の実施の形態の構成の説明をする。雑音抑圧処理部10は、劣化音声パワースペクトル、処理フレーム情報及び雑音抑圧情報を用いて、強調音声パワースペクトル|Xn(k)|2バーを計算し、逆変換部6へ出力する。たとえば、第L処理フレームの統合周波数帯域mに含まれる劣化音声パワースペクトルに共通の雑音抑圧情報を適用することで、強調音声パワースペクトルを算出することができる。すなわち、［数5］の代表劣化音声パワースペクトルZL(m)の算出の際に使用した劣化音声パワースペクトルに共通の雑音抑圧情報CL(m)を乗じる。これは、図４および図６において、灰色で囲まれている格子１つに含まれる全ての劣化音声パワースペクトルに共通の雑音抑圧情報CL(m)を適用することに相当する。強調音声パワースペクトル|Xn(k)|2バーは、【０１０１】
【数１６】
0005483000.tif 000017
となる。【０１０２】
強調音声パワースペクトルを算出する他の方法として、複数処理フレームの雑音抑圧情報を用いて算出する方法もある。たとえば、1処理フレーム前の雑音抑圧情報CL-1(m)を用いて補間を行うと、【０１０３】
【数１７】
0005483000.tif 000018
となる。このように補間を行った雑音抑圧情報を用いると、処理フレームの境界付近での不連続感を低減することができ、高品質な雑音抑圧を実現できる。また、あらかじめ、複数処理フレームの雑音抑圧情報を平滑化してから上記方法を用いてもよい。この場合、雑音抑圧情報の急激な変化を避けることができ、高品質な雑音抑圧を実現できる。他にも、雑音抑圧情報を周波数方向に補間してから、強調音声パワースペクトルを算出してもよい。また、時間方向および周波数方向の両方に平滑化を行った雑音抑圧情報を劣化音声パワースペクトルに適用してもよい。【０１０４】
逆変換部６は、雑音抑圧処理部10から入力される強調音声パワースペクトル|Xn(k)|2バーを用いて求めた強調音声振幅スペクトル|Xn(k)|バーと変換部5から入力された位相arg Yn(k)を乗算して、強調音声スペクトルXn(k)バーを求める。すなわち、【０１０５】
【数１８】
0005483000.tif 000019
を実行する。【０１０６】
逆変換部６は、得られた強調音声スペクトルXn(k)バーに逆周波数変換を施し、時間領域信号を生成する。このとき、逆変換部６が適用する逆周波数変換は、変換部5が適用する周波数変換と対応する逆変換が選択されることが望ましい。変換部５において、窓関数Wで重み付けしている場合は、逆周波数変換した信号に、窓関数Wを乗じる。変換部５を帯域分割フィルタバンクで構成するときには、逆変換部６を帯域合成フィルタバンクで構成する。帯域合成フィルタバンクとその設計法に関連する技術は、非特許文献３に開示されている。逆周波数変換された時間領域信号は、変換フレーム合成部３へ出力される。【０１０７】
変換フレーム合成部３は、入力された変換フレーム長に分割されている逆周波数変換された時間領域信号を合成し、強調音声信号サンプルを出力端子４に出力する。【０１０８】
このように、入力信号の変化に追従できる短い変換フレーム長を用いながら、変換フレームを統合した処理フレームで雑音抑圧情報の算出を行うため、高品質な雑音抑圧を実現するとともに、雑音抑圧情報の計算回数を削減でき演算量を削減できる。さらに、処理フレームを入力信号に応じて適応的に定めることで、高品質な雑音抑圧を低演算量で実現することができる。【０１０９】
以上で、最良の実施の形態の説明を終える。【０１１０】
続いて、図１９を参照して本発明の第２の実施の形態について詳細に説明する。【０１１１】
本発明の第２の実施の形態は、最良の実施の形態を表す図１と比較すると、雑音抑圧情報計算部９が雑音抑圧情報計算部11に置換され、新たに処理フレーム情報が入力されている点が異なる。図１の構成と共通する構成については説明を省略する。以下、雑音抑圧情報計算部11について詳細に説明する。【０１１２】
図２０を参照して、図１９に含まれる雑音抑圧情報計算部11の第１の構成例を詳細に説明する。図７の雑音抑圧情報部９と比較すると、雑音推定部300が雑音推定部301に置換され、新たに処理フレーム情報が入力されている点が異なる。【０１１３】
図２１を参照して、図２０に含まれる雑音推定部301の構成を詳細に説明する。図８の雑音推定部300とは、カウンタ330がカウンタ331に置換され、新たに処理フレーム情報が入力されている点が異なる。カウンタ331は、カウント値を出力する。カウンタ値の初期値は、０に設定されている。カウンタ331は、処理フレーム毎に当該処理フレームの処理フレーム長をカウント値に加算していく。すなわち、第L処理フレームのカウント値をCnt(L)とすると、第L+1処理フレームのカウント値Cnt(L+1)は、【０１１４】
【数１９】
0005483000.tif 000020
となる。従って、推定雑音計算部310の更新判定部400において、カウンタ331のカウント値と閾値とを比較する場合、図１０の閾値記憶部4003の値は、カウンタ330を用いたときより大きい値を設定することが一般的である。【０１１５】
上述の構成により、処理フレーム長が処理フレーム毎に異なっていても、定められた時間を正確に判定することができ、高品位な雑音推定を実現することができる。【０１１６】
図２２を参照して、雑音抑圧情報計算部11の第２の構成例を詳細に説明する。図２０の雑音抑圧情報計算部１１と比較すると、雑音抑圧係数生成部601が雑音抑圧係数生成部602に、抑圧係数補正部1501が抑圧係数補正部1502に置換されていることが異なる。雑音抑圧係数生成部602の構成及び抑圧係数補正部1502の構成は、図１７を参照して既に詳細に説明しているので、ここでは説明を省略する。また、雑音推定部301の構成については、図２１を参照して既に説明しているので、ここでは説明を省略する。【０１１７】
本実施の形態では、処理フレーム長を用いて制御を行う例としてカウンタ331の動作について説明したが、その他の部分にも適用できる。たとえば、推定雑音パワースペクトルを算出する際に、推定雑音計算部310のシフトレジスタ440に保存されている重みつき劣化音声パワースペクトルのうち、当該処理フレームから定められた過去の時間に含まれる処理フレームの重みつき劣化音声パワースペクトルのみを用いて、これらの平均を推定雑音パワースペクトルとすることもできる。このような構成により、処理フレーム長の長短によらず、一定時間内の信号を用いて推定雑音を算出することができるため、高品位な雑音推定を実現できる。【０１１８】
以上で、本発明の第２の実施の形態の説明を終える。【０１１９】
続いて、図２３を参照して、本発明の第３の実施の形態について詳細に説明する。【０１２０】
本発明の第３の実施の形態は、最良の実施の形態を表す図１と比較すると、処理フレーム情報生成部７が処理フレーム情報生成部１４に置換されている点で異なる。また、定められた一定時間内における処理フレームの個数の最大値が、処理フレーム情報生成部14に入力されている点が異なる。処理フレーム情報生成部14は、定められた一定時間内における処理フレームの個数が入力された最大値以下になるように、処理フレームを定め、処理フレーム情報を出力する。【０１２１】
図２４を参照して、図２３の処理フレーム情報生成部14の第１の構成例を詳細に説明する。図２の処理フレーム情報生成部7と比較すると、時間グループ生成部51が時間グループ生成部58に置換されている点が異なる。また、時間グループ生成部58に最大値が入力されている点が異なる。入力された最大値をLNとすると、時間グループ生成部58が生成する処理フレームの個数は、定められた一定時間内における処理フレームの個数が、最大値LN以下になるように、変換フレームを統合し、処理フレームの区切り位置を定める。時間グループ生成部58もおいて処理フレームの区切り位置を定める方法として、図３を用いて説明した変換フレームエネルギE(n)の変化量に基づいた方法がある。このとき、時間グループ生成部58は、変化量が大きい箇所から順次処理フレームが分割されるように処理フレームの区切り位置を生成する。そして、時間グループ生成部58は、生成した処理フレームの個数がLN個になった時点で区切り位置の生成を終了する。【０１２２】
図２５を参照して、図２３の処理フレーム情報生成部14の第２の構成例を詳細に説明する。【０１２３】
図２４の処理フレーム情報生成部７と比較すると、新たに周波数エネルギ計算部53を備え、周波数グループ生成部52が周波数グループ生成部54に置換されている点で異なる。周波数エネルギ計算部53および周波数グループ生成部52は、図５を参照して既に詳細に説明しているので、ここでは説明を省略する。【０１２４】
このように、処理フレーム情報生成部14を構成することにより、一定時間内での処理フレームの個数の最大値を定めることができる。従って、雑音抑圧情報の計算回数を制御することができ、演算量を削減することができる。【０１２５】
以上で、本発明の第３の実施の形態の説明を終える。【０１２６】
続いて、図２６を参照して本発明の第４の実施の形態について詳細に説明する。【０１２７】
本発明の第４の実施の形態は、最良の実施の形態を表す図１と比較すると、処理フレーム情報生成部7が処理フレーム情報生成部12に置換されている点が異なる。さらに、新たに、定められた一定時間内における雑音抑圧情報の計算回数の最大値が処理フレーム情報生成部12に入力されている点のみが異なる。処理フレーム情報生成部12は、雑音抑圧情報の計算回数が供給された最大値以下になるように、処理フレームと統合周波数帯域とを定め、処理フレーム情報を出力する。【０１２８】
図２７を参照して、図２６の処理フレーム情報生成部12の構成例を詳細に説明する。図５の処理フレーム情報生成部7と比較すると、時間グループ生成部51が時間グループ生成部55に、周波数グループ生成部54が周波数グループ生成56に置換されている点で異なる。さらに、時間グループ生成部55と周波数グループ生成部56に最大値が入力されている点が異なる。【０１２９】
処理フレーム情報生成部12に入力された最大値をLMとすると、時間グループ生成部55が生成する処理フレームの個数TNは、関数fを用いて、TN=f(LM)と表される。ここで関数fの例として最大値をLMの正の平方根を超えない最大の整数としてもよい。他にも、最大値LMを定数で除算した値を越えない最大の整数としてもよい。時間グループ生成部55は、処理フレームの個数がTN個になるように、変換フレームを統合し、処理フレームの区切り位置を定める。処理フレームの区切り位置を定める方法として、図５を参照して既に説明したように、変換フレームエネルギE(n)の変化量に基づいた方法がある。このとき、時間グループ生成部55は、変化量が大きい箇所から順次処理フレームが分割されるように処理フレームを生成していく。そして、時間グループ生成部55は、生成した処理フレームの個数がTN個になった時点で区切り位置の生成を終了する。【０１３０】
周波数グループ生成部56は、各処理フレームにおいて、複数の周波数帯域を統合し、統合周波数帯域の区切り位置を定め、処理フレーム情報を出力する。各処理フレームにおける統合周波数帯域の最大個数FNは、FN=int(LM/TN)で定められる。ここで、int(X)は、Xを超えない最大の整数である。すなわち、図６を参照して既に説明した第L処理フレームの統合周波数帯域の個数MLがFNを越えないように統合周波数帯域を設定する。周波数グループ生成部56は、統合周波数帯域の設定において、周波数エネルギ計算部53から入力された周波数エネルギの変化が大きい箇所で統合周波数帯域が分割されるように区切り位置を定めていく。【０１３１】
このように、処理フレーム情報生成部を構成することにより、一定時間内での雑音抑圧情報の計算回数の最大値を定めることができるため、演算量を削減することができる。【０１３２】
以上で、本発明の第４の実施の形態の説明を終える。【０１３３】
続いて、図２８を参照して、本発明の第５の実施の形態を詳細に説明する。本発明の第５の実施の形態は、最良の実施の形態を表す図１と比較すると、処理フレーム情報生成部7が処理フレーム情報生成部13に置換されている点が異なる。さらに、変換フレームに分割された劣化音声信号が処理フレーム情報生成部13に入力されている点が異なる。【０１３４】
図２９を参照して、処理フレーム情報生成部13の構成例を詳細に説明する。図２の処理フレーム情報生成部7と比較すると、変換フレームエネルギ計算部50が変換フレームエネルギ計算部57に置換されている点が異なる。変換フレームエネルギ計算部57は、変換フレーム長に分割された入力信号サンプルの2乗和を変換フレームエネルギE(n)として、時間グループ生成部51に出力する。【０１３５】
本実施の形態では、周波数変換された信号を分析して処理フレーム情報を算出するのではなく、時間信号を分析して処理フレーム情報を算出する点を特徴とする。このため、周波数変換と処理フレーム情報の算出を並列で行うことができる。これにより演算量を削減することができる。さらに、並列プロセッサ等を用いることにより、より演算量の削減を実現することができる。【０１３６】
以上で、本発明の第５の実施の形態の説明を終える。【０１３７】
続いて、図３０を参照して、本発明の第６の実施の形態を詳細に説明する。【０１３８】
本発明の第６の実施の形態は、最良の実施の形態を表す図１と比較すると、処理フレーム情報生成部7が処理フレーム情報生成部15に置換されている点が異なる。処理フレーム情報生成部15は、処理フレーム情報を生成し、代表周波数領域信号生成部8、雑音抑圧処理部10へ出力する。【０１３９】
図３１を参照して、処理フレーム情報生成部15の構成例を詳細に説明する。処理フレーム情報生成部15は、時間グループ生成部60と周波数グループ生成部52とから構成される。時間グループ生成部60は、代表劣化音声パワースペクトルを計算するための処理フレームの区切り位置を定め、周波数グループ生成部52へ出力する。処理フレームの区切り位置は、あらかじめ定めれらた処理フレーム長になるように定める。処理フレーム長を定める方法として、入力信号のサンプリング周波数や、演算能力に応じた方法がある。たとえば、サンプリング周波数が高くなるにつれ、処理フレーム長が長くなるように区切り位置を定める。これにより、１処理フレームの時間を低いサンプリング周波数のときと同等にすることができる。また、演算能力が低い場合、処理フレーム長が長くなるように区切り位置を定めることにより、後段に続く雑音抑圧情報の計算回数を削減できる。また、他の機能とのリソース配分に基づいて、ノイズサプレッサが使用可能なリソースに基づいて処理フレームの区切り位置を定めても良い。この場合、時々刻々とノイズサプレッサが使用可能なリソースが変化するため、ノイズサプレッサが使用可能なリソースに応じて処理フレーム長を定める。周波数グループ生成部52の動作については、図２を参照して詳細は既に説明しているため、ここでは説明を省略する。ここで、演算能力や他の機能とのリソース配分に基づいて、統合周波数帯域の区切り位置を定めることもできる。【０１４０】
このように、処理フレーム情報生成部15を構成することにより、処理フレーム情報を計算するための演算量を大幅に削減できるため、低演算量で雑音抑圧を行うことができる。【０１４１】
以上で、本発明の第６の実施の形態の説明を終える。【０１４２】
続いて、図３２を参照して、本発明の第７の実施の形態を詳細に説明する。【０１４３】
本発明の第７の実施の形態は、最良の実施の形態を表す図１と比較すると、雑音抑圧処理部10が雑音抑圧処理部16に置換されている点が異なる。さらに、雑音抑圧処理部16には、劣化音声パワースペクトルではなく代表劣化音声パワースペクトルが入力されている点が異なる。【０１４４】
雑音抑圧処理部16は、雑音抑圧情報CL(m)と処理フレーム情報と代表劣化音声パワースペクトルとから強調音声パワースペクトルを算出し、これを逆変換部6へ出力する。強調音声パワースペクトル|Xn(k)|2バーは、【０１４５】
【数２０】
0005483000.tif 000021
となる。【０１４６】
強調音声パワースペクトルを算出する他の方法として、複数処理フレームの雑音抑圧情報を用いて算出する方法もある。たとえば、１処理フレーム前の雑音抑圧情報CL-1(m)を用いて補間を行うと、【０１４７】
【数２１】
0005483000.tif 000022
となる。もちろん、複数処理フレームの雑音抑圧情報から補間を行ってもよい。このように補間を行った雑音抑圧情報を用いると、処理フレームの境界付近での不連続感を低減することができ、高品質な雑音抑圧を実現できる。また、あらかじめ複数処理フレームの雑音抑圧情報を平滑化してから上記方法を用いてもよい。この場合、雑音抑圧情報の急激な変化を避けることができ、高品質な雑音抑圧を実現できる。他にも、雑音抑圧情報を周波数方向に補間してから、強調音声パワースペクトルを算出してもよい。また、時間方向および周波数方向の両方に平滑化を行った雑音抑圧情報を劣化音声パワースペクトルに適用してもよい。【０１４８】
以上で、本発明の第７の実施の形態の説明を終える。【０１４９】
続いて、図３３を参照して、本発明の第８の実施の形態を詳細に説明する。【０１５０】
本発明の第８の実施の形態は、記録部30と再生部31とから構成される。記録部30は、入力端子1から入力信号が供給され、入力信号の雑音を抑圧するための情報を算出し、入力信号と算出した情報を多重化し多重化信号を出力する。一方、再生部31は、記録部30が出力した多重化信号を受け取り、多重化信号に含まれる雑音を抑圧するための情報に基づき、多重化信号に含まれる入力信号の雑音を抑圧し、出力端子4へ出力する。【０１５１】
記録部30は、変換フレーム分割部2、変換部5、処理フレーム情報生成部7、代表周波数領域信号生成部8、雑音抑圧情報計算部9、多重化部32から構成される。変換フレーム分割部２、変換部５、処理フレーム情報生成部７、代表周波数領域信号生成部８、雑音抑圧情報計算部９については、図１を参照して既に詳細に説明しているため、ここでは説明を省略する。【０１５２】
多重化部32は、入力信号と処理フレーム情報と雑音抑圧情報を多重化し多重化信号を出力する。【０１５３】
再生部31は、分離部33、変換フレーム分割部２、変換部５、雑音抑圧処理部10、逆変換部６、変換フレーム合成部３から構成される。変換フレーム分割部２、変換部５、雑音抑圧処理部10、逆変換部６、変換フレーム合成部３については、図１を参照して既に詳細に説明しているため、ここでは説明を省略する。【０１５４】
分離部33は、入力された多重化信号を入力信号と処理フレーム情報と雑音抑圧情報に分離し、入力信号を変換フレーム分割部２へ、処理フレーム情報と雑音抑圧情報を雑音抑圧処理部10へ出力する。【０１５５】
ここで、多重化信号を一度蓄積媒体に保存して、再生時に、蓄積媒体から多重化信号を取出してもよい。また、入力信号をそのまま多重化するのではなく、符号化を行い、情報圧縮したものを多重化してもよい。この場合、再生部31には、記録部30とは逆の入力信号を復号する機能である復号部を備える。同様に、処理フレーム情報および雑音抑圧情報を符号化できることは明らかである。【０１５６】
ここでは、録音部30と再生部31が同一の端末に存在する場合を仮定して説明したが、録音部30と再生部31が異なる端末に存在していてもよい。この場合、録音部30の出力である多重化信号が伝送路等を通り、別の端末にある再生部31に出力される。また、多重化信号を蓄積媒体に保存し、別の端末にある再生部31に入力してもよい。【０１５７】
このように構成することにより、録音された信号を再生するさいに、雑音抑圧情報を計算する必要がないため、再生時の演算量を削減することができる。【０１５８】
以上で、本発明の第８の実施の形態の説明を終える。【０１５９】
続いて、図３４を参照して、本発明の第９の実施の形態を詳細に説明する。【０１６０】
本発明の第９の実施の形態は、プログラム制御により動作するコンピュータ100を備える。コンピュータ100は、入力端子1から受けた入力信号に対し、上述した最良の実施の形態および本発明の第２から第８の実施の形態のいずれかに係る処理を行い、出力端子4に強調音声を出力するためのプログラムに基づき動作する。【０１６１】
以上で、本発明の第９の実施の形態の説明を終える。【０１６２】
これまで説明した全ての実施の形態では、雑音抑圧の方式として、最小平均2乗誤差短時間スペクトル振幅法を仮定してきたが、その他の方法にも適用することができる。このような方法の例として、非特許文献５（1979 年12 月、プロシーディングス・オブ・ザ・アイ・イー・イー・イー、第67 巻、第12 号 (PROCEEDINGS OF THE IEEE, VOL.67, NO.12, PP.1586-1604, DEC, 1979)、1586 〜1604 ページ）に開示されているウィーナーフィルタ法や、非特許文献６（1979年4 月、アイ・イー・イー・イー・トランザクションズ・オン・アクースティクス・スピーチ・アンド・シグナル・プロセシング、第27巻、第2号(IEEE TRANSACTIONS ON ACOUSTICS, SPEECH, AND SIGNAL PROCESSING,VOL.27, NO.2, PP.113-120, APR, 1979)、113〜120 ページ）に開示されているスペクトル減算法などがあるが、これらの詳細な構成例については説明を省略する。【０１６３】
以上の如く、実施の形態を説明したが、本発明の実施例は以下の通りである。【０１６４】
すなわち、本発明の第１の実施例は、入力信号を定められた第一のフレーム毎に周波数領域信号に変換する変換手段と、前記第一のフレームと異なるように第二のフレームを生成するフレーム生成手段と、前記第二のフレームに含まれる第一のフレームの前記周波数領域信号から代表周波数領域信号を生成する代表周波数領域信号生成手段と、前記代表周波数領域信号に基づいて、前記第二のフレームの雑音抑圧の程度を求める雑音抑制程度算出手段とを有することを特徴とする雑音抑圧装置である。【０１６５】
また、本発明の第２の実施例は、上記実施例において、前記フレーム生成手段が、フレームの長さが前記第一のフレームの長さより長い第二のフレームを生成することを特徴とする。【０１６６】
また、本発明の第３の実施例は、上記実施例において、前記フレーム生成手段が、前記第二のフレーム同士が互いに独立するように、前記第二のフレームを生成することを特徴とする。【０１６７】
また、本発明の第４の実施例は、上記実施例において、前記雑音抑制程度算出手段が、前記第二のフレームに含まれる前記周波数領域信号に、前記雑音抑圧の程度を適用して雑音を抑圧することを特徴とする。【０１６８】
また、本発明の第５の実施例は、上記実施例において、前記雑音抑制程度算出手段が、前記第二のフレームに含まれる前記周波数領域信号に、他の第二のフレームの前記雑音抑圧の程度を補間して算出した雑音抑圧の程度を適用して雑音を抑圧することを特徴とする。【０１６９】
また、本発明の第６の実施例は、上記実施例において、前記フレーム生成手段が、前記周波数領域信号の特性に基づいて、第二のフレームを生成することを特徴とする。【０１７０】
また、本発明の第７の実施例は、上記実施例において、前記周波数領域信号の特性が、前記入力信号のエネルギの変化であることを特徴とする。【０１７１】
また、本発明の第８の実施例は、上記実施例において、前記第二のフレーム毎に、周波数方向の区切り位置を生成する周波数区切り位置生成手段を有し、前記代表周波数領域信号生成手段は、前記第二のフレームおよび前記周波数方向の区切り位置に基づいて、前記周波数領域信号から前記代表周波数領域信号を生成することを特徴とする。【０１７２】
また、本発明の第９の実施例は、上記実施例において、前記フレーム生成手段が、一定区間内の第二のフレームの個数があらかじめ定められた個数の範囲内になるように、前記第二のフレームを生成することを特徴とする。【０１７３】
また、本発明の第１０の実施例は、上記実施例において、前記フレーム生成手段が、一定区間内の前記雑音抑圧の程度を算出する計算回数があらかじめ定められた回数の範囲内になるように、前記第二のフレームと前記周波数方向の区切り位置とを求めることを特徴とする。【０１７４】
また、本発明の第１１の実施例は、上記実施例において、前記雑音抑圧の程度が雑音抑圧係数として表されていることを特徴とする。【０１７５】
また、本発明の第１２の実施例は、上記実施例において、前記雑音抑圧の程度が雑音の推定値として表されていることを特徴とする。【０１７６】
本発明の第１３の実施例は、入力信号を定められた第一のフレーム毎に周波数領域信号に変換する変換ステップと、前記第一のフレームと異なるように第二のフレームを生成するフレーム生成ステップと、前記第二のフレームに含まれる第一のフレームの前記周波数領域信号から代表周波数領域信号を生成する代表周波数領域信号生成ステップと、前記代表周波数領域信号に基づいて、前記第二のフレームの雑音抑圧の程度を求める雑音抑制程度算出ステップとを有することを特徴とする雑音抑圧方法である。【０１７７】
また、本発明の第１４の実施例は、上記実施例において、前記フレーム生成ステップは、前記第一のフレームの長さより長い前記第二のフレームを生成することを特徴とする。【０１７８】
また、本発明の第１５の実施例は、上記実施例において、前記フレーム生成ステップが、前記第二のフレーム同士が互いに独立するように、前記第二のフレームを生成することを特徴とする。【０１７９】
また、本発明の第１６の実施例は、上記実施例において、前記雑音抑制程度算出ステップが、前記第二のフレームに含まれる前記周波数領域信号に前記雑音抑圧の程度を適用して雑音を抑圧することを特徴とする。【０１８０】
また、本発明の第１７の実施例は、上記実施例において、前記雑音抑制程度算出ステップが、前記第二のフレームに含まれる前記周波数領域信号に、他の第二のフレームの前記雑音抑圧の程度を補間して算出した雑音抑圧の程度を適用して雑音を抑圧することを特徴とする。【０１８１】
また、本発明の第１８の実施例は、上記実施例において、前記フレーム生成ステップは、前記周波数領域信号の特性に基づいて、前記第二のフレームを生成することを特徴とする。【０１８２】
また、本発明の第１９の実施例は、上記実施例において、前記周波数領域信号の特性が前記入力信号のエネルギの変化であることを特徴とする。【０１８３】
また、本発明の第２０の実施例は、上記実施例において、前記第二のフレーム毎に、周波数方向の区切り位置を生成する周波数区切り位置生成ステップを有し、前記代表周波数領域信号生成ステップは、前記第二のフレームおよび前記周波数方向の区切り位置に基づいて、前記周波数領域信号から代表周波数領域信号を生成することを特徴とする。【０１８４】
また、本発明の第２１の実施例は、上記実施例において、前記フレーム生成ステップが、一定区間内の前記第二のフレームの個数があらかじめ定められた個数の範囲内になるように前記第二のフレームを生成することを特徴とする。【０１８５】
また、本発明の第２２の実施例は、上記実施例において、前記フレーム生成ステップが、一定区間内の前記雑音抑圧の程度を算出する計算回数があらかじめ定められた回数の範囲内になるように、前記第二のフレームと前記周波数方向の区切り位置とを生成することを特徴とする。【０１８６】
また、本発明の第２３の実施例は、上記実施例において、前記雑音抑制程度算出ステップにおいて、前記雑音抑圧の程度が雑音抑圧係数として表されていることを特徴とする。【０１８７】
また、本発明の第２４の実施例は、上記実施例において、前記雑音抑制程度算出ステップにおいて、前記雑音抑圧の程度が雑音の推定値として表されていることを特徴とする。【０１８８】
本発明の第２５の実施例は、コンピュータに、入力信号を定められた第一のフレーム毎に周波数領域信号に変換する変換処理と、前記第一のフレームと異なるように第二のフレームを生成するフレーム生成処理と、前記第二のフレームに含まれる第一のフレームの前記周波数領域信号から代表周波数領域信号を生成する代表周波数領域信号生成処理と、前記代表周波数領域信号に基づいて、前記第二のフレームの雑音抑圧の程度を求める雑音抑制程度算出処理とを実行させる雑音抑圧プログラムである。【０１８９】
また、本発明の第２６の実施例は、上記実施例において、前記フレーム生成処理が、前記第一のフレームの長さより長い前記第二のフレームを生成することを特徴とする。【０１９０】
また、本発明の第２７の実施例は、上記実施例において、前記フレーム生成処理が、前記第二のフレーム同士が互いに独立するように前記第二のフレームを生成することを特徴とする。【０１９１】
また、本発明の第２８の実施例は、上記実施例において、前記雑音抑制程度算出処理が、前記第二のフレームに含まれる前記周波数領域信号に前記雑音抑圧の程度を適用して雑音を抑圧することを特徴とする。【０１９２】
また、本発明の第２９の実施例は、上記実施例において、前記雑音抑制程度算出処理が、前記第二のフレームに含まれる前記周波数領域信号に、他の第二のフレームの前記雑音抑圧の程度を補間して算出した雑音抑圧の程度を適用して雑音を抑圧することを特徴とする。【０１９３】
また、本発明の第３０の実施例は、上記実施例において、前記フレーム生成処理が、前記周波数領域信号の特性に基づいて、前記第二のフレームを生成することを特徴とする。【０１９４】
また、本発明の第３１の実施例は、上記実施例において、前記周波数領域信号の特性が前記入力信号のエネルギの変化であることを特徴とする。【０１９５】
また、本発明の第３２の実施例は、上記実施例において、前記第二のフレーム毎に、周波数方向の区切り位置を生成する周波数区切り位置生成処理を有し、前記代表周波数領域信号生成処理は、前記第二のフレームおよび前記周波数方向の区切り位置に基づいて、前記周波数領域信号から代表周波数領域信号を生成することを特徴とする。【０１９６】
また、本発明の第３３の実施例は、上記実施例において、前記フレーム生成処理は、一定区間内の前記第二のフレームの個数があらかじめ定められた個数の範囲内になるように前記第二のフレームを生成することを特徴とする。【０１９７】
また、本発明の第３４の実施例は、上記実施例において、前記フレーム生成処理は、一定区間内の前記雑音抑圧の程度を算出する計算回数があらかじめ定められた回数の範囲内になるように前記第二のフレームと前記周波数方向の区切り位置とを生成することを特徴とする。【０１９８】
また、本発明の第３５の実施例は、上記実施例において、前記雑音抑制程度算出処理において、前記雑音抑圧の程度が雑音抑圧係数として表されていることを特徴とする。【０１９９】
また、本発明の第３６の実施例は、上記実施例において、前記雑音抑制程度算出処理において、前記雑音抑圧の程度が雑音の推定値として表されていることを特徴とする。【０２００】
以上好ましい実施の形態及び実施例をあげて本発明を説明したが、本発明は必ずしも上記実施の形態及び実施例に限定されるものではなく、その技術的思想の範囲内において様々に変形し実施することが出来る。【０２０１】
本出願は、２００７年９月１９日に出願された日本出願特願２００７−２４３００１号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【図１】
0005483000.tif 000023
【図２】
0005483000.tif 000024
【図３】
0005483000.tif 000025
【図４】
0005483000.tif 000026
【図５】
0005483000.tif 000027
【図６】
0005483000.tif 000028
【図７】
0005483000.tif 000029
【図８】
0005483000.tif 000030
【図９】
0005483000.tif 000031
【図１０】
0005483000.tif 000032
【図１１】
0005483000.tif 000033
【図１２】
0005483000.tif 000034
【図１３】
0005483000.tif 000035
【図１４】
0005483000.tif 000036
【図１５】
0005483000.tif 000037
【図１６】
0005483000.tif 000038
【図１７】
0005483000.tif 000039
【図１８】
0005483000.tif 000040
【図１９】
0005483000.tif 000041
【図２０】
0005483000.tif 000042
【図２１】
0005483000.tif 000043
【図２２】
0005483000.tif 000044
【図２３】
0005483000.tif 000045
【図２４】
0005483000.tif 000046
【図２５】
0005483000.tif 000047
【図２６】
0005483000.tif 000048
【図２７】
0005483000.tif 000049
【図２８】
0005483000.tif 000050
【図２９】
0005483000.tif 000051
【図３０】
0005483000.tif 000052
【図３１】
0005483000.tif 000053
【図３２】
0005483000.tif 000054
【図３３】
0005483000.tif 000055
【図３４】
0005483000.tif 000056
【図３５】
0005483000.tif 000057
【図３６】
0005483000.tif 000058