(57)【特許請求の範囲】
【請求項１】
２種類のノイズスペクトルを用いてノイズ削減を行うために前記２種類のノイズスペクトルを推定するノイズ推定装置であって、
入力音声信号をディジタル信号に変換するＡ／Ｄ変換部と、
前記Ａ／Ｄ変換部により得られる一定時間長のディジタル信号に対して離散フーリエ変換を行い入力スペクトルと複素スペクトルを得るフーリエ変換部と、
ノイズ削減処理に用いる平均ノイズスペクトル及び前記ノイズ削減処理において減じすぎた周波数スペクトルを補償するために用いる補償用ノイズスペクトルの前記２種類のノイズスペクトルを格納するノイズスペクトル格納部と、
前記フーリエ変換部により得られる前記入力スペクトルと前記ノイズスペクトル格納部に格納されている前記補償用ノイズスペクトルとの比較によって得られる新たな補償用ノイズスペクトルと、前記フーリエ変換部により得られる前記入力スペクトルを学習の計算式に用いて得られる新たな平均ノイズスペクトルとを、前記２種類のノイズスペクトルとして新たに推定し、得られた新たな２種類のノイズスペクトルを前記ノイズスペクトル格納部に格納するノイズ推定部と、
を備えたことを特徴とするノイズ推定装置。
【請求項２】
前記ノイズ推定部は、
予めノイズ区間であるかどうかの判定を行い、ノイズであると判定した場合には、前記フーリエ変換部により得られる前記入力スペクトルを各周波数毎に前記補償用ノイズスペクトルと大小比較し、前記補償用ノイズスペクトルより小さい場合にその周波数の前記補償用ノイズスペクトルを新たな入力スペクトルとすることによって前記新たな補償用ノイズスペクトルを推定し、またそれとは別に、前記入力スペクトルを一定割合で加算していく前記学習の計算式によって前記新たな平均ノイズスペクトルを推定し、さらに、得られた前記新たな補償用ノイズスペクトルと前記新たな平均ノイズスペクトルとを前記ノイズスペクトル格納部に格納することを特徴とする請求項１記載のノイズ推定装置。
【請求項３】
入力音声信号をディジタル信号に変換するＡ／Ｄ変換部と、
削減量を決定する係数を調節するノイズ削減係数調節部と、
前記Ａ／Ｄ変換部により得られる一定時間長のディジタル信号に対して離散フーリエ変換を行い入力スペクトルと複素スペクトルを得るフーリエ変換部と、
ノイズ削減処理に用いる平均ノイズスペクトル及び前記ノイズ削減処理において減じすぎた周波数スペクトルを補償するために用いる補償用ノイズスペクトルの２種類のノイズスペクトルを格納するノイズスペクトル格納部と、
前記フーリエ変換部により得られる前記入力スペクトルと前記ノイズスペクトル格納部に格納されている前記補償用ノイズスペクトルとの比較によって得られる新たな補償用ノイズスペクトルと、前記フーリエ変換部により得られる前記入力スペクトルを学習の計算式に用いて得られる新たな平均ノイズスペクトルとを、前記２種類のノイズスペクトルとして新たに推定し、得られた新たな２種類のノイズスペクトルを前記ノイズスペクトル格納部に格納するノイズ推定部と、
前記ノイズ削減係数調整部により得られる前記係数に基づいて前記ノイズスペクトル格納部に格納されている平均ノイズスペクトルを前記フーリエ変換部により得られる前記入力スペクトルから減じ、更に、得られるスペクトルを調べ、減じすぎた周波数のスペクトルを、補償用ノイズスペクトルで補償するノイズ削減／スペクトル補償部と、
を備えたことを特徴とするノイズ削減装置。
【請求項４】
更に、
前記ノイズ削減／スペクトル補償部により得られたスペクトルのうちノイズ区間と判定されるものについて、平滑化処理するとともに、前記フーリエ変換部によりえられた前記複素スペクトルの位相のうち前記ノイズ削減／スペクトル補償部において補償された周波数の位相を調節するスペクトル安定化部と、
を備えたことを特徴とする請求項３記載のノイズ削減装置。
【請求項５】
前記ノイズ削減／スペクトル補償部は、
ノイズ削減とスペクトル補償とをなされたスペクトルの全域パワーと聴感的に重要な一部の帯域のパワーとを調べ、入力された信号が無音区間かどうかを識別し、
前記スペクトル安定化部は、
上記機能で無音区間と判断した場合には、全域パワーと中域パワーに対して平滑化処理とパワー低減処理とを行う
ことを特徴とする請求項４記載のノイズ削減装置。
【請求項６】
前記スペクトル安定化部は、
前記フーリエ変換部で得られた複素スペクトルに対して、前記ノイズ削減／スペクトル補償部でスペクトル補償を受けたかどうかの情報を基に、乱数による位相回転を行う
ことを特徴とする請求項４記載のノイズ削減装置。
【請求項７】
前記ノイズ削減／スペクトル補償部は、
前記ノイズ削減係数調節部にて得られたノイズ削減係数を前記ノイズスペクトル格納部に格納された平均ノイズスペクトルに乗じて、前記フーリエ変換部にて得られた前記入力スペクトルから減じ、負のスペクトル値になった周波数に対しては前記ノイズスペクトル格納部に格納された補償用ノイズスペクトルにより補償する
ことを特徴とする請求項３記載のノイズ削減装置。
【請求項８】
更に、
前記Ａ／Ｄ変換部により得られる前記一定時間長のディジタル信号に対して線形予測分析を行うＬＰＣ分析部と、
ノイズ削減処理を受けた前記入力スペクトルと前記複素スペクトルに対して逆離散フーリエ変換を行う逆フーリエ変換部と、
前記逆フーリエ変換部により得られた信号に対して前記ＬＰＣ分析部で得られたパラメータを用いたスペクトル強調を行うスペクトル強調部と、
を備えたことを特徴とする請求項３記載のノイズ削減装置。
【請求項９】
更に、
前記ノイズ削減／スペクトル補償部により得られたスペクトルのうちノイズ区間と判定されるものについて、平滑化処理するとともに、前記フーリエ変換部により得られた前記複素スペクトルの位相のうち前記ノイズ削減／スペクトル補償部において補償された周波数の位相を調整するスペクトル安定化部と、
前記スペクトル安定化部において平滑化処理されたスペクトルと調整された位相スペクトルとに基づいて逆フーリエ変換を行う逆フーリエ変換部と、
前記逆フーリエ変換部により得られた信号に対してスペクトル強調を行うスペクトル強調部と、
前記スペクトル強調部により得られた信号を前のフレームの信号と整合させる波形整合部と、
を備えたことを特徴とする請求項３記載のノイズ削減装置。
【請求項１０】
２種類のノイズスペクトルを用いてノイズ削減を行うために前記２種類のノイズスペクトルを推定するノイズ推定方法であって、
入力音声信号をディジタル信号に変換するＡ／Ｄ変換ステップと、
前記Ａ／Ｄ変換ステップにより得られた一定時間長のディジタル信号に対して離散フーリエ変換を行い入力スペクトルと複素スペクトルを得るフーリエ変換ステップと、
ノイズ削減処理に用いる平均ノイズスペクトル及び前記ノイズ削減処理において減じすぎた周波数スペクトルを補償するために用いる補償用ノイズスペクトルの前記２種類のノイズスペクトルをノイズスペクトル格納部に格納するノイズスペクトル格納ステップと、
前記フーリエ変換ステップにより得られた前記入力スペクトルと前記ノイズスペクトル格納部に格納されている前記補償用ノイズスペクトルとの比較によって得られる新たな補償用ノイズスペクトルと、前記フーリエ変換部により得られる前記入力スペクトルを学習の計算式に用いて得られる新たな平均ノイズスペクトルとを、前記２種類のノイズスペクトルとして新たに推定し、得られた新たな２種類のノイズスペクトルを前記ノイズスペクトル格納部に格納するノイズ推定ステップと、
を備えたことを特徴とするノイズ推定方法。
【請求項１１】
入力音声信号をディジタル信号に変換するＡ／Ｄ変換ステップと、
削減量を決定する係数を調節するノイズ削減係数調節ステップと、
前記Ａ／Ｄ変換ステップにより得られた一定時間長のディジタル信号に対して離散フーリエ変換を行い入力スペクトルと複素スペクトルを得るフーリエ変換ステップと、
ノイズ削減処理に用いる平均ノイズスペクトル及び前記ノイズ削減処理において減じすぎた周波数スペクトルを補償するために用いる補償用ノイズスペクトルの２種類のノイズスペクトルをノイズスペクトル格納部に格納するノイズスペクトル格納ステップと、
前記フーリエ変換ステップにより得られた前記入力スペクトルと前記ノイズスペクトル格納部に格納されている前記補償用ノイズスペクトルとの比較によって得られる新たな補償用ノイズスペクトルと、前記フーリエ変換部により得られる前記入力スペクトルを学習の計算式に用いて得られる新たな平均ノイズスペクトルとを、前記２種類のノイズスペクトルとして新たに推定し、得られた新たな２種類のノイズスペクトルを前記ノイズスペクトル格納部に格納するノイズ推定ステップと、
前記ノイズ削減係数調整ステップにより得られた前記係数に基づいて前記ノイズスペクトル格納部に格納されている平均ノイズスペクトルを前記フーリエ変換ステップにより得られた前記入力スペクトルから減じ、更に、得られたスペクトルを調べ、減じすぎた周波数のスペクトルを、補償用ノイズスペクトルで補償するノイズ削減／スペクトル補償ステップと、
を備えたことを特徴とするノイズ削減方法。
【請求項１２】
更に、
前記ノイズ削減／スペクトル補償ステップにより得られたスペクトルのうちノイズ区間と判定されるものについて、平滑化処理するとともに、前記フーリエ変換ステップによりえられた前記複素スペクトルの位相のうち前記ノイズ削減／スペクトル補償ステップにおいて補償された周波数の位相を調節するスペクトル安定化ステップと、
を備えたことを特徴とする請求項１１記載のノイズ削減方法。
【請求項１３】
更に、
前記Ａ／Ｄ変換ステップにより得られた前記一定時間長のディジタル信号に対して線形予測分析を行うＬＰＣ分析ステップと、
ノイズ削減処理を受けた前記入力スペクトルと前記複素スペクトルに対して逆離散フーリエ変換を行う逆フーリエ変換ステップと、
前記逆フーリエ変換ステップにより得られた信号に対して前記ＬＰＣ分析ステップで得られたパラメータを用いたスペクトル強調を行うスペクトル強調ステップと、
を備えたことを特徴とする請求項１１記載のノイズ削減方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ディジタル携帯電話やマルチメディア通信等に必要な音声符号化・復号化装置（音声コーデック）や、音声入出力装置を構成するために、入力された音声から背景ノイズ成分を推定するノイズ推定装置及びノイズ推定方法と、その背景ノイズ成分を除去するノイズ削減装置及びノイズ削減方法に関するものである。
【０００２】
【従来の技術】
携帯電話等のディジタル移動通信の分野では、加入者の増加に対処するために低ビットレートの音声の圧縮符号化法が求められており、各研究機関において研究開発が進んでいる。日本国内においては、モトローラ社の開発したＶＳＥＬＰ（１１．２ｋｂｐｓ）、ＮＴＴ移動通信網株式会社の開発したＰＳＩ−ＣＥＬＰ（５．６ｋｂｐｓ）がディジタル携帯電話用の標準符号化方式として採用され、同方式を搭載したディジタル携帯電話が国内において既に発売されている。また国際的には、ＩＴＵ−Ｔの標準化では１６ｋｂｐｓ（ＬＤ−ＣＥＬＰ）、８ｋｂｐｓ（ＣＳ−ＡＣＥＬＰ）が標準化され、現在製品開発の段階にある。
【０００３】
これらの方式は、いずれもＣＥＬＰ（Ｃｏｄｅ  Ｅｘｉｔｅｄ  ＬｉｎｅａｒＰｒｅｄｉｃｔｉｏｎ： M.R.Schroeder ”High Quality Speech at Low Bit Rates”Proc.ICASSP'85 pp.937-940に記載）という方式を改良したものである。これは、音声を音源情報と声道情報とに分離し、音源情報については、符号帳に格納された複数の音源サンプルのインデクスによって符号化し、声道情報については、ＬＰＣ（線形予測係数）を符号化するとともに、音源情報符号化の際には、声道情報を加味して入力音声と比較を行なうという方法（Ａ−ｂ−Ｓ：Ａｎａｌｙｓｉｓ  ｂｙ  Ｓｙｎｔｈｅｓｉｓ）を採用していることに特徴がある。
【０００４】
上記技術により、非常に低ビットレートで音声信号を伝送することができるようになったが、それと共に大きな問題点が明らかになった。それは、音声の発声モデルに基づいて情報圧縮を行っているために、音声信号以外の音響信号に対応できないという点である。そのため、音声信号中に背景ノイズや機器ノイズが含まれていると、効率の良い符号化が出来ず、合成時（復号化時）に異音を生じる結果となっていた。
【０００５】
この問題を解決するために、従来より入力音声信号からノイズを削減する手法が検討されてきた。上記標準化方式のＰＳＩ−ＣＥＬＰでは、符号化を行う前にノイズキヤンセラによってノイズを削減するという処理を行っている。上記ノイズキャンセラは、カルマンフィルタを基本として開発されており、音声の有無を検出して、適応的に制御を行うことによりノイズを低減させている。このノイズキャンセラによって、ある程度の背景ノイズを削減することができる。しかし、ノイズレベルの高いノイズや、音声中のノイズ等に対しては余り良い性能が得られていなかった。
【０００６】
一方、より強力なノイズ低減法として、スペクトルサブトラクション法が挙げられる。（S.F.Boll "Suppression of Acoustic Noise in Speech Using Spectral Subtraction", IEEE Trans.ASSP.,Vol.27,No.2,pp113-120,1979に記載）。これは、入力音声信号に対して離散フーリエ変換を行ってスペクトルに変換した後、ノイズをスペクトル上で減ずる方法であり、主に音声認識装置の入力部等に応用されている。
【０００７】
この方法を音声信号中のノイズ低減に応用した一例について、図２を用いて説明する。すなわち、ノイズスペクトルの推定は次の手順で行われる。まず、音声を含んでいないノイズのみの信号３１を入力し、Ａ／Ｄ変換部３２においてディジタル信号に変換する。次に、フーリエ変換部３３において、一定時間長の入力信号列（フレームと呼ぶ）に対して離散フーリエ変換を行い、ノイズのスペクトルを求める。そして、ノイズ分析部３４において、複数のフレームに対して求めたノイズのスペクトルからノイズの平均的スペクトルを求め、これをノイズスペクトル格納部３５に格納する。そして、ノイズの削減は以下の手順で行われる。
【０００８】
ノイズを含む音声信号３６を入力し、Ａ／Ｄ変換部３７においてディジタル信号に変換する。次に、上記と同様にしてフーリエ変換部３８で離散フーリエ変換を行い、ノイズを含んだ音声のスペクトルを求める。そして、ノイズ削減部３９において、ノイズスペクトル格納部３５に格納されたノイズスペクトルを、音声のスペクトルから減ずる。その結果得られたスペクトルに対して、逆フーリエ変換部４０において逆フーリエ変換を行い、出力信号４１を得る。
【０００９】
なお、このアルゴリズムにおけるスペクトルとしては、振幅スペクトル（複素数の複素平面上でのノルム、実数部と虚数部を２乗して加算し、平方根をとることによって求められる。）を用いるのが一般的である。また、振幅スペクトルで減じた場合、逆フーリエ変換を行う時の位相成分としては、入力信号の位相成分をそのまま用いるという方法が挙げられる。
【００１０】
【発明が解決しようとする課題】
上記スペクトルサブトラクション法は、より強力なノイズ低減方法であるが、ノイズ推定が困難であるために、これまでのリアルタイムの音声処理装置に用いられた例は少なかった。
【００１１】
すなわち、上記スペクトルサブトラクション法をリアルタイムの音声処理装置に応用するためには、次の様な課題を有していた。
＜１＞音声がどのタイミングでデータ中に存在するかが明らかでないために、ノイズスペクトル推定が困難。
＜２＞ノイズレベルが高い時にスペクトルが大きく歪み、音質の劣化を生ずる。
＜３＞無音区間（音声の無いノイズのみの区間）において異音感を生ずる。
【００１２】
本発明は、ノイズスペクトル推定が可能なノイズ推定装置及びノイズ推定方法の提供とともに、ノイズスペクトル推定が可能で、異音感を低減し、音質の劣化を抑えるノイズ削減装置及びノイズ削減方法の提供を目的とする。
【００１３】
【課題を解決するための手段】
上記課題を解決するために本発明は、ノイズ推定部が、フーリエ変換部により得られる入力スペクトルとノイズスペクトル格納部に格納されているノイズスペクトルとを比較することによってノイズのスペクトルを推定し、得られたノイズスペクトルをノイズスペクトル格納部に格納し、ノイズ削減／スペクトル補償部が、ノイズ削減係数調節部により得られる係数に基づいてノイズスペクトル格納部に格納されているノイズスペクトルを、フーリエ変換部により得られる入力スペクトルから減じ、得られたスペクトルを調べて減じすぎた周波数のスペクトルを補償し、スペクトル安定化部が、ノイズ削減／スペクトル補償部により得られたスペクトルを安定化処理するとともに、フーリエ変換部により得られた複素スペクトルの位相のうちノイズ削減／スペクトル補償部において補償された周波数の位相を調整するように構成したものである。
【００１４】
これにより、音声区間内でも音声区間外でもノイズスペクトル推定を行うことが可能で、音質の劣化を抑えることのできる優れたノイズ削減装置が得られる。
【００１５】
【発明の実施の形態】
本発明は、２種類のノイズスペクトルを用いてノイズ削減を行うために前記２種類のノイズスペクトルを推定するノイズ推定装置であって、入力音声信号をディジタル信号に変換するＡ／Ｄ変換部と、前記Ａ／Ｄ変換部により得られる一定時間長（１フレーム）のディジタル信号に対して離散フーリエ変換を行い入力スペクトルと複素スペクトルを得るフーリエ変換部と、ノイズ削減処理に用いる平均ノイズスペクトル及び前記ノイズ削減処理において減じすぎた周波数スペクトルを補償するために用いる補償用ノイズスペクトルの前記２種類のノイズスペクトルを格納するノイズスペクトル格納部と、前記フーリエ変換部により得られる前記入力スペクトルと前記ノイズスペクトル格納部に格納されている前記補償用ノイズスペクトルとの比較によって得られる新たな補償用ノイズスペクトルと、前記フーリエ変換部により得られる前記入力スペクトルを学習の計算式に用いて得られる新たな平均ノイズスペクトルとを、前記２種類のノイズスペクトルとして新たに推定し、得られた新たな２種類のノイズスペクトルを前記ノイズスペクトル格納部に格納するノイズ推定部と、を備えたことを特徴とするノイズ推定装置であって、特に、予めノイズ区間であるかどうかの判定を行ない、ノイズであると判定した場合には、前記フーリエ変換部により得られる前記入力スペクトルを各周波数毎に前記補償用ノイズスペクトルと大小比較し、前記補償用ノイズスペクトルより小さい場合にその周波数の前記補償用ノイズスペクトルを新たな入力スペクトルとすることによって前記新たな補償用ノイズスペクトルを推定し、またそれとは別に、前記入力スペクトルを一定割合で加算していく前記学習の計算式によって前記新たな平均ノイズスペクトルを推定し、さらに、得られた前記新たな補償用ノイズスペクトルと前記新たな平均ノイズスペクトルとを前記ノイズスペクトル格納部に格納する前記ノイズ推定部を備えたノイズ推定装置とすることで、ノイズのスペクトルを平均と最低の２つの方向から推定することが可能となり、これを用いたノイズ削減装置を構成することにより、より的確な削減処理を行うことができるという作用を有する。
また本発明は、入力音声信号をディジタル信号に変換するＡ／Ｄ変換部と、削減量を決定する係数を調節するノイズ削減係数調節部と、前記Ａ／Ｄ変換部により得られる一定時間長（１フレーム）のディジタル信号に対して離散フーリエ変換を行い入力スペクトルと複素スペクトルを得るフーリエ変換部と、ノイズ削減処理に用いる平均ノイズスペクトル及び前記ノイズ削減処理において減じすぎた周波数スペクトルを補償するために用いる補償用ノイズスペクトルの２種類のノイズスペクトルを格納するノイズスペクトル格納部と、前記フーリエ変換部により得られる前記入力スペクトルと前記ノイズスペクトル格納部に格納されている前記補償用ノイズスペクトルとの比較によって得られる新たな補償用ノイズスペクトルと、前記フーリエ変換部により得られる前記入力スペクトルを学習の計算式に用いて得られる新たな平均ノイズスペクトルとを、前記２種類のノイズスペクトルとして新たに推定し、得られた新たな２種類のノイズスペクトルを前記ノイズスペクトル格納部に格納するノイズ推定部と、前記ノイズ削減係数調節部により得られる前記係数に基づいて前記ノイズスペクトル格納部に格納されている平均ノイズスペクトルを前記フーリエ変換部により得られる前記入力スペクトルから減じ、更に、得られるスペクトルを調べ、減じすぎた周波数のスペクトルを、補償用ノイズスペクトルで補償するノイズ削減／スペクトル補償部と、を備えることを特徴としたノイズ削減装置である。
ここで更に、前記ノイズ削減／スペクトル補償部により得られたスペクトルのうちノイズ区間と判定されるものについて、平滑化処理するとともに、前記フーリエ変換部により得られた前記複素スペクトルの位相のうち前記ノイズ削減／スペクトル補償部において補償された周波数の位相を調整するスペクトル安定化部と、を備えてもよく、更に、前記スペクトル安定化部において平滑化処理されたスペクトルと調整された位相スペクトルとに基づいて逆フーリエ変換を行う逆フーリエ変換部と、前記逆フーリエ変換部により得られた信号に対してスペクトル強調を行うスペクトル強調部と、前記スペクトル強調部により得られた信号を前のフレームの信号と整合させる波形整合部と、を備えてもよい。
あるいは、前記Ａ／Ｄ変換部により得られる一定時間長のディジタル信号に対して線形予測分析（ＬＰＣ分析）を行うＬＰＣ分析部と、ノイズ削減処理を受けた前記入力スペクトルと前記複素スペクトルに対して逆離散フーリエ変換を行う逆フーリエ変換部と、前記逆フーリエ変換部により得られた信号に対して前記ＬＰＣ分析部で得られたパラメータを用いたスペクトル強調を行うスペクトル強調部と、を更に備えてもよく、音声区間中でも音声区間外でもノイズスペクトル推定を行うことができるとともに、入力のスペクトル包絡の特徴を線形予測係数で強調することができるという作用を有する。
【００１７】
また、ノイズ削減係数調節部にて得られたノイズ削減係数をノイズスペクトル格納部に格納された平均ノイズスペクトルに乗じて、フーリエ変換部にて得られた入力スペクトルから減じ、負のスペクトル値になってしまった周波数に対してはノイズスペクトル格納部に格納された補償用ノイズスペクトルにより補償するノイズ削減／スペクトル補償部を備えたノイズ削減装置とすることで、ノイズの平均スペクトルを削減に用いることにより、より大きくノイズスペクトルを削減することができるとともに、補償用スペクトルを別に推定したことにより、より的確な補償を行うことができるという作用を有する。
【００１８】
また、ノイズ削減／スペクトル補償部にてノイズ削減とスペクトル補償をなされたスペクトルの全域パワーと聴感的に重要な一部の帯域のパワー（中域パワー）とを調べ、入力された信号が無音区間（音声のないノイズのみの信号）かどうかを識別し、無音区間と判断した場合には、全域パワーと中域パワーに対して安定化処理とパワー低減処理を行なうスペクトル安定化部を備えたノイズ削減装置とすることで、音声の含まれていないノイズのみの区間のスペクトルをスムージングすることができるとともに、同区間のスペクトルがノイズ削減のために極端なスペクトル変動を起こすことを防ぐという作用を有する。
【００１９】
また、フーリエ変換部で得られた複素スペクトルに対して、ノイズ削減／スペクトル補償部でスペクトル補償を受けたかどうかの情報を基に、乱数による位相回転を行なうスペクトル安定化部を備えたノイズ削減装置とすることで、補償された周波数成分の位相にランダム性を持たせ、削減できずに残ったノイズを、聴感的に異音感の少ないノイズに変換させることができるという作用を有する。
【００２０】
また、予めスペクトル強調に用いる重み係数のセットを複数用意し、ノイズ削減時には、入力された信号の状態に応じて重み付け係数のセットを選択し、選択された重み付け係数を用いてスペクトル強調を行なうスペクトル強調部を備えたノイズ削減装置することで、音声区間においては、聴感的により適当な重み付けができ、無音区間や無声子音区間においては、聴感重み付けによる異音感を押さえることができるという作用を有する。
【００２１】
以下、本発明の実施の形態について、図１を用いて説明する。
（実施の形態）
図１は、本実施の形態におけるノイズ削減装置の主要部の機能ブロック図である。図１において、１１は入力信号、１２はＡ／Ｄ変換部、１３はノイズ削減係数格納部、１４はノイズ削減係数調整部、１５は入力波形設定部、１６は入力波形設定部、１７はフーリエ変換部、１８はノイズ削減／スペクトル補償部、１９はスペクトル安定化部、２０は逆フーリエ変換部、２１はスペクトル強調部、２２は波形整合部、２３は出力信号、２４はノイズ推定部、２５はノイズスペクトル格納部、２６は前スペクトル格納部、２７は乱数位相格納部、２８は前波形格納部、２９は最大パワー格納部である。
【００２２】
始めに初期設定について説明する。（表１）に、固定パラメータの名称と設定例を示す。
【００２３】
【表１】
0004006770.tif 000002
【００２４】
また、乱数位相格納部２７には、位相を調整するための位相データを格納しておく。これらは、スペクトル安定化部１９において、位相を回転させるために用いられる。位相データが８種類の場合の例を（表２）に示す。
【００２５】
【表２】
0004006770.tif 000003
【００２６】
さらに、上記位相データを用いるためのカウンター（乱数位相カウンター）も、乱数位相格納部２７に格納しておく。この値は、予め０に初期化して格納しておく。
【００２７】
次に、スタティックのＲＡＭ領域を設定する。すなわち、ノイズ削減係数格納部１３、ノイズスペクトル格納部２５、前スペクトル格納部２６、前波形格納部２８、最大パワー格納部２９をクリアする。以下に、各格納部の説明と設定例を述べる。
【００２８】
ノイズ削減係数格納部１３は、ノイズ削減係数を格納するエリアであり、初期値として２０．０を格納しておく。ノイズスペクトル格納部２５は、平均ノイズパワーと、平均ノイズスペクトルと、１位候補の補償用ノイズスペクトルと２位候補の補償用ノイズスペクトルとそれぞれの周波数のスペクトル値が、何フレーム前に変化したかを示すフレーム数（持続数）を、各周波数毎に格納するエリアであり、平均ノイズパワーに十分大きな値、平均ノイズスペクトルに指定最小パワー、補償用ノイズスペクトルと持続数としてそれぞれに充分大きな数を初期値として格納しておく。
【００２９】
前スペクトル格納部２６は、補償用ノイズパワー、以前のフレームのパワー（全域、中域）（前フレームパワー）、以前のフレームの平滑化パワー（全域、中域）（前フレーム平滑化パワー）、及びノイズ連続数を格納するエリアであり、補償用ノイズパワーとして十分大きな値を、前フレームパワー、全フレーム平滑化パワーとしていずれも０．０を、またノイズ連続数としてノイズ基準連続数を格納しておく。
【００３０】
前波形格納部２８は、出力信号を整合させるための、前のフレームの出力信号の、最後の先読みデータ長分のデータを格納するエリアであり、初期値として全てに０を格納しておく。スペクトル強調部２１は、ＡＲＭＡ及び高域強調フィルタリングを行なうが、そのためのそれぞれのフィルターの状態をいずれも０にクリアしておく。最大パワー格納部２９は、入力された信号のパワーの最大を格納するエリアであり、最大パワーとして０を格納しておく。
【００３１】
次にノイズ削減アルゴリズムについて、図１を用いてブロック毎に説明する。
まず、音声を含むアナログ入力信号１１をＡ／Ｄ変換部１２でＡ／Ｄ変換し、１フレーム長＋先読みデータ長（上記設定例では、１６０＋８０＝２４０ポイント）の分だけ入力する。ノイズ削減係数調節部１４は、ノイズ削減係数格納部１３に格納されたノイズ削減係数と指定ノイズ削減係数とノイズ削減係数学習係数と補償パワー上昇係数とを基に、（数１）により、ノイズ削減係数並びに補償係数を算出する。そして、得られたノイズ削減係数をノイズ削減係数格納部１３に格納するとともに、Ａ／Ｄ変換部１２で得られた入力信号を、入力波形設定部１５へ送り、さらに補償係数とノイズ削減係数を、ノイズ推定部２４とノイズ削減／スペクトル補償部18へ送る。
【００３２】
【数１】
0004006770.tif 000004
【００３３】
なお、ノイズ削減係数はノイズを減ずる割合を示した係数、指定ノイズ削減係数は予め指定された固定削減係数、ノイズ削減係数学習係数はノイズ削減係数の指定ノイズ削減係数に近づける割合を示した係数、補償係数はスペクトル補償における補償パワーを調節する係数、補償パワー上昇係数は補償係数を調節する係数である。
【００３４】
入力波形設定部１５においては、Ａ／Ｄ変換部１２からの入力信号を、ＦＦＴ（高速フーリエ変換）することができるように、２の指数乗の長さを持つメモリ配列に、後ろ詰めで書込む。前の部分は０を詰めておく。前述の設定例では、２５６の長さの配列に０〜１５まで０を書込み、１６〜２５５まで入力信号を書込む。この配列は、８次のＦＦＴの際に実数部として用いられる。また、虚数部として、実数部と同じ長さの配列を用意し、全てに０を書込んでおく。
【００３５】
ＬＰＣ分析部１６においては、入力波形設定部１５で設定した実数部エリアに対してハミング窓を掛け、窓掛け後の波形に対して自己相関分析を行って自己相関係数を求め、自己相関法に基づくＬＰＣ分析を行い、線形予測係数を得る。さらに、得られた線形予測係数をスペクトル強調部２１に送る。
【００３６】
フーリエ変換部１７は、入力波形設定部１５で得られる実数部、虚数部のメモリ配列を用いて、ＦＦＴによる離散フーリエ変換を行う。得られた複素スペクトルの実数部と虚数部の絶対値の和を計算することによって、入力信号の疑似振幅スペクトル（以下、入力スペクトル）を求める。また、各周波数の入力スペクトル値の総和（以下、入力パワー）を求め、ノイズ推定部２４へ送る。また、複素スペクトルそのものを、スペクトル安定化部１９へ送る。
【００３７】
次に、ノイズ推定部２４における処理を説明する。
ノイズ推定部２４は、フーリエ変換部１７で得られた入力パワーと最大パワー格納部２９に格納された最大パワーの値とを比較し、最大パワーの方が小さい場合は、最大パワー値を入力パワー値として、その値を最大パワー格納部２９に格納する。そして、以下の３つうち少なくとも一つに該当する場合はノイズ推定を行い、全て満たさない場合はノイズ推定は行わない。
（１）入力パワーが、最大パワーに無音検出係数を乗じた値よりも小さい。
（２）ノイズ削減係数が、指定ノイズ削減係数に０．２を加えたものより大きい。
（３）入力パワーが、ノイズスペクトル格納部２５から得られる平均ノイズパワーに１．６を乗じたものより小さい。
【００３８】
ここで、ノイズ推定部２４におけるノイズ推定アルゴリズムを述べる。
まず、ノイズスペクトル格納部２５に格納されている１位候補、２位候補の全ての周波数の持続数を更新する（１を加算する）。そして、１位候補の各周波数の持続数を調べ、予め設定したノイズスペクトル基準持続数より大きい場合は、２位候補の補償用スペクトルと持続数を１位候補とし、２位候補の補償用スペクトルを３位候補の補償用スペクトルとし持続数を０とする。ただし、この２位候補の補償用スペクトルの入れ替えにおいては、３位候補を格納せず、２位候補を若干大きくしたもので代用することによって、メモリを節約することができる。本実施の形態では、２位候補の補償用スペクトルを１．４倍したものを代用することとする。
【００３９】
持続数の更新の後に、各周波数毎に、補償用ノイズスペクトルと入力スペクトルとの比較を行う。まず、各周波数の入力スペクトルを１位候補の補償用ノイズスペクトルと比較し、もし入力スペクトルの方が小さい場合は、１位候補の補償用ノイズスペクトルと持続数を２位候補とし、入力スペクトルを１位候補の補償用スペクトルとし１位候補の持続数は０とする。前記の条件以外の場合は、入力スペクトルと２位候補の補償用ノイズスペクトルとの比較を行い、もし入力スペクトルの方が小さい場合は、入力スペクトルを２位候補の補償用スペクトルとし２位候補の持続数は０とする。そして、得られた１、２位候補の補償用スペクトルと持続数を補償用ノイズスペクトル格納部２５に格納する。また、同時に、平均ノイズスペクトルも、次の（数２）にしたがって更新する。
【００４０】
【数２】
0004006770.tif 000005
【００４１】
なお、平均ノイズスペクトルは、疑似的に求めた平均のノイズスペクトルであり、（数２）における係数ｇは、平均ノイズスペクトルの学習の早さを調節する係数である。すなわち、入力パワーがノイズパワーと比較して小さい場合は、ノイズのみの区間である可能性が高いとして学習速度を上げ、そうでない場合は、音声区間中である可能性があるとして学習速度を下げる効果を持つ係数である。
【００４２】
そして、平均ノイズスペクトルの各周波数の値の総和を求め、これを平均ノイズパワーとする。補償用ノイズスペクトル、平均ノイズスペクトル、平均ノイズパワーは、ノイズスペクトル格納部２５に格納する。
【００４３】
また、上記ノイズ推定処理において、１つの周波数のノイズスペクトルを複数の周波数の入力スペクトルと対応させれば、ノイズスペクトル格納部２５を構成するためのＲＡＭ容量を節約することができる。例として、本実施の形態の２５６ポイントのＦＦＴを用いる場合に、１つの周波数のノイズスペクトルを４つの周波数の入力スペクトルから推定するときの、ノイズスペクトル格納部２５のＲＡＭ容量を示す。（疑似）振幅スペクトルが周波数軸上で左右対称であることを考慮すると、全ての周波数で推定する場合は１２８個の周波数のスペクトルと持続数を格納するので、１２８（周波数）×２（スペクトルと持続数）×３（補償用の１、２位候補、平均）で計７６８ＷのＲＡＭ容量が必要になる。
【００４４】
これに対して、１つの周波数のノイズスペクトルを４つの周波数の入力スペクトルと対応させる場合は、３２（周波数）×２（スペクトルと持続数）×３（補償用の１、２位候補、平均）で計１９２ＷのＲＡＭ容量でよいことになる。この場合、ノイズスペクトルの周波数解像度は低下することになるが、上記１対４の場合は、殆ど性能の劣化がないことを実験により確認している。また、この工夫は、１つの周波数のスペクトルでノイズスペクトルを推定するものではないから、定常音（サイン波、母音等）が長時間続いた場合に、そのスペクトルをノイズスペクトルと誤推定することを防ぐ効果もある。
【００４５】
次に、ノイズ削減／スペクトル補償部１８における処理について説明する。
入力スペクトルから、ノイズスペクトル格納部２５に格納されている平均ノイズスペクトルにノイズ削減係数調節部１４で得られたノイズ削減係数を乗じたものを引く（以後、差スペクトル）。上記ノイズ推定部２４の説明において示したノイズスペクトル格納部２５のＲＡＭ容量の節約を行った場合は、入力スペクトルに対応する周波数の平均ノイズスペクトルにノイズ削減係数を乗じたものを引く。そして、差スペクトルが負になった場合には、ノイズスペクトル格納部２５に格納された補償用ノイズスペクトルの１位候補に、ノイズ削減係数調整部１４で求めた補償係数を乗じたものを代入することにより補償する。これを、全ての周波数について行う。また、差スペクトルを補償した周波数が分るように、周波数毎にフラグデータを作成する。例えば、各周波数毎に１つのエリアがあり、補償しない時は０、補償したときは１を代入する。このフラグデータは、差スペクトルと共に、スペクトル安定化部１９へ送られる。また、フラグデータの値を調べることによって補償した総数（補償数）を求め、これもスペクトル安定化部１９へ送る。
【００４６】
次に、スペクトル安定化部１９における処理について説明する。なお、この処理は、主に音声の含まれていない区間の異音感低減のために機能する。
【００４７】
まず、ノイズ削減／スペクトル補償部１８から得られた各周波数の差スペクトルの和を計算し、現フレームパワーを求める。現フレームパワーは全域と中域の２種類を求める。全域は全ての周波数（全域と呼ぶ、本実施の形態では０〜１２８まで）について求め、中域は聴感的に重要な中ごろの帯域（中域と呼ぶ、本実施の形態では１６〜７９まで）について求める。
【００４８】
同様に、ノイズスペクトル格納部２５に格納された補償用ノイズスペクトルの１位候補についての和を求め、これを現フレームノイズパワー（全域、中域）とする。ここで、ノイズ削減／スペクトル補償部１８から得られた補償数の値を調べ、十分大きい場合、且つ、以下の３条件のうち少なくとも１つ満たす場合に、現フレームがノイズのみの区間と判断して、スペクトルの安定化処理を行う。
（１）入力パワーが、最大パワーに無音検出係数を乗じた値よりも小さい。
（２）現フレームパワー（中域）が、現フレームノイズパワー（中域）に５．０を乗じた値より小さい。
（３）入力パワーが、ノイズ基準パワーよりも小さい。
【００４９】
安定化処理を行なわない場合は、前スペクトル格納部２６に格納されたノイズ連続数が正の時に１を減じ、また現フレームノイズパワー（全域、中域）を前フレームパワー（全域、中域）とし、それぞれを前スペクトル格納部２６に格納して、位相拡散処理に進む。
【００５０】
ここで、スペクトル安定化処理について説明する。この処理の目的は、無音区間（音声の無いノイズのみの区間）のスペクトルの安定化とパワー低減を実現することである。処理は２種類あり、ノイズ連続数がノイズ基準連続数より小さい場合は（処理１）を、以上の場合は（処理２）を行なう。２つの処理を以下に示す。
（処理１）前スペクトル格納部２６に格納されたノイズ連続数に１を加算し、また現フレームノイズパワー（全域、中域）を前フレームパワー（全域、中域）とし、それぞれを前スペクトル格納部２６に格納して、位相調整処理へ進む。
（処理２）前スペクトル格納部２６に格納された前フレームパワー、前フレーム平滑化パワー、更に固定係数である無音パワー減少係数を参照し、（数３）にしたがってそれぞれを変更する。
【００５１】
【数３】
0004006770.tif 000006
【００５２】
次に、これらのパワーを差スペクトルに反映させる。そのために、中域に乗ずる係数（以後、係数１）と全域に乗ずる係数（以後、係数２）の２つの係数を算出する。まず、以下の（数４）に示す式で係数１を算出する。
【００５３】
【数４】
0004006770.tif 000007
【００５４】
係数２は、係数１の影響を受けるので、求める手段は多少複雑になる。手順を以下に示す。
（１）前フレーム平滑化パワー（全域）が前フレームパワー（中域）より小さい場合、または、現フレームノイズパワー（全域）が現フレームノイズパワー（中域）よりも小さい場合は（２）へ。それ以外の場合は（３）へ。
（２）係数２は０.０とし、前フレームパワー（全域）を前フレームパワー（中域）として、（６）へ。
（３）現フレームノイズパワー（全域）が現フレームノイズパワー（中域）と等しい場合は（４）へ。異なる場合は（５）へ。
（４）係数２を１.０とし、（６）へ。
（５）以下の（数５）により係数２を求め、（６）へ。
【００５５】
【数５】
0004006770.tif 000008
【００５６】
（６）係数２算出処理終了。
上記アルゴリズムにより得られた係数１、２は、いずれも上限を１.０に、下限を無音パワー減少係数にクリッピングする。そして、中域の周波数（本例では１６〜７９）の差スペクトルに係数１を乗じて得られた値を差スペクトルとし、さらに、その差スペクトルの全域から中域を除いた周波数（本例では０〜１５、８０〜１２８）の差スペクトルに係数２を乗じて得られた値を差スペクトルとする。それに伴い、前フレームパワー（全域、中域）を以下の（数６）によって変換する。
【００５７】
【数６】
0004006770.tif 000009
【００５８】
こうして得られた各種パワーデータ等を全て前スペクトル格納部２６に格納し、（処理２）を終わる。
【００５９】
以上の要領で、スペクトル安定化部１９におけるスペクトルの安定化が行われる。
【００６０】
次に、位相調整処理について説明を行う。従来のスペクトルサブトラクションでは、位相は原則として変更しないが、本実施の形態では、その周波数のスペクトルが削減時に補償された場合に、位相をランダムに変更する処理を行なう。この処理により、残ったノイズのランダム性が強くなるので、聴感的に悪印象を与えにくくなるという効果が得られる。
【００６１】
まず、乱数位相格納部２７に格納された乱数位相カウンターを得る。そして、全ての周波数のフラグデータ（補償の有無を示したデータ）を参照して、補償している場合は、以下の（数７）により、フーリエ変換部１７で得られた複素スペクトルの位相を回転させる。
【００６２】
【数７】
0004006770.tif 000010
【００６３】
（数７）においては、２つの乱数位相データをペアで使用している。したがって、上記処理を１回行なう毎に、乱数位相カウンターを２ずつ増加させ、上限（本実施の形態では１６）になった場合は０とする。なお、乱数位相カウンターは乱数位相格納部２７へ格納し、得られた複素スペクトルは、逆フーリエ変換部２０へ送る。また、差スペクトルの総和を求め（以下、差スペクトルパワー）、これをスペクトル強調部２１へ送る。
【００６４】
逆フーリエ変換部２０では、スペクトル安定化部１９で得られた差スペクトルの振幅と複素スペクトルの位相とに基づき、新たな複素スペクトルを構成し、ＦＦＴを用いて逆フーリエ変換を行う。（得られた信号を第１次出力信号と呼ぶ。）そして、得られた第１次出力信号をスペクトル強調部２１へ送る。
【００６５】
次に、スペクトル強調部２１における処理について説明する。
まず、ノイズスペクトル格納部２５に格納さされた平均ノイズパワーと、スペクトル安定化部１９で得られた差スペクトルパワーと、定数であるノイズ基準パワーを参照して、ＭＡ強調係数とＡＲ強調係数を選択する。選択は、以下の２つの条件を評価することにより行う。
（条件１）差スペクトルパワーがノイズスペクトル格納部２５に格納された平均ノイズパワーに０.６を乗じた値よりも大きく、且つ、平均ノイズパワーがノイズ基準パワーよりも大きい。
（条件２）差スペクトルパワーが平均ノイズパワーより大きい。
【００６６】
（条件１）を満たす場合は、これを「有声区間」とし、ＭＡ強調係数をＭＡ強調係数１ー１とし、ＡＲ強調係数をＡＲ強調係数１ー１とし、高域強調係数を高域強調係数１とする。また、（条件１）を満たさず、（条件２）を満たす場合は、これを「無声子音区間」とし、ＭＡ強調係数をＭＡ強調係数１ー０とし、ＡＲ強調係数をＡＲ強調係数１ー０とし、高域強調係数を０とする。また、（条件１）を満たさず、（条件２）を満たさない場合はこれを「無音区間、ノイズのみの区間」とし、ＭＡ強調係数をＭＡ強調係数０とし、ＡＲ強調係数をＡＲ強調係数０とし、高域強調係数を高域強調係数０とする。
【００６７】
そして、ＬＰＣ分析部１６から得られた線形予測係数と、上記ＭＡ強調係数、ＡＲ強調係数を用いて、以下の（数８）の式に基づき、極強調フィルターのＭＡ係数とＡＲ係数とを算出する。
【００６８】
【数８】
0004006770.tif 000011
【００６９】
そして、逆フーリエ変換部２０において得られた第１次出力信号に対して、上記ＭＡ係数とＡＲ係数とを用いて極強調フィルターを掛ける。このフィルターの伝達関数を、以下の（数９）に示す。
【００７０】
【数９】
0004006770.tif 000012
【００７１】
更に、高域成分を強調するために、上記高域強調係数を用いて、高域強調フィルターを掛ける。このフィルターの伝達関数を、以下の（数１０）に示す。
【００７２】
【数１０】
0004006770.tif 000013
【００７３】
上記処理によって得られた信号を第２次出力信号と呼ぶ。なお、フィルターの状態は、スペクトル強調部２１の内部に保存される。
【００７４】
最後に、波形整合部２２において、スペクトル強調部２１で得られた第２次出力信号と、前波形格納部２８に格納された信号とを、三角窓によって重ね合せて出力信号を得る。更に、この出力信号の最後の先読みデータ長分のデータを、前波形格納部２８に格納する。このときの整合方法を、以下の（数１１）に示す。
【００７５】
【数１１】
0004006770.tif 000014
【００７６】
ここで注意が必要なのは、出力信号としては先読みデータ長＋フレーム長分のデータが出力されるが、このうち信号として扱うことができるのは、データの始端からフレーム長の長さの区間のみということである。なぜなら、後ろの先読みデータ長のデータは、次の出力信号を出力するときに書き換えられるからである。ただし、出力信号の全区間内では連続性は補償されるので、ＬＰＣ分析やフィルター分析等の周波数分析には使用することができる。
【００７７】
【発明の効果】
以上のように本発明によれば、音声区間中でも音声区間外でもノイズスペクトル推定を行うことができ、音声がどのタイミングでデータ中に存在するかが明らかでない場合でもノイズスペクトルを推定することができる。また、入力のスペクトル包絡の特徴を線形予測係数で強調することができ、ノイズレベルが高い場合でも音質の劣化を防ぐことが出来る。
【００７８】
また、ノイズのスペクトルを平均と最低の２つの方向から推定でき、より的確な削減処理を行うことができる。
【００７９】
また、ノイズの平均スペクトルを削減に用いることによって、より大きくノイズスペクトルを削減することができ、さらに、補償用スペクトルを別に推定したことにより、より的確な補償を行うことができる。
【００８０】
そして、音声の含まれていないノイズのみの区間のスペクトルをスムージングすることができ、同区間のスペクトルが、ノイズ削減のために極端なスペクトル変動による異音感を防ぐことができる。
【００８１】
そして、補償された周波数成分の位相にランダム性を持たせることができ、削減できずに残ったノイズを、聴感的に異音感の少ないノイズに変換させることができる。
【００８２】
また、音声区間においては、聴感的により適当な重み付けができるようになり、無音区間や無声子音区間においては、聴感重み付けによる異音感を抑えることができる。
【図面の簡単な説明】
【図１】本発明の一実施の形態によるノイズ削減装置の主要部の機能ブロック図
【図２】従来のスペクトルサブトラクションによるノイズ削減装置の機能ブロック図
【符号の説明】
１１  入力信号
１２  Ａ／Ｄ変換部
１３  ノイズ削減係数格納部
１４  ノイズ削減係数調節部
１５  入力波形設定部
１６  ＬＰＣ分析部
１７  フーリエ変換部
１８  ノイズ削減／スペクトル補償部
１９  スペクトル安定化部
２０  逆フーリエ変換部
２１  スペクトル強調部
２２  波形整合部
２３  出力音声
２４  ノイズ推定部
２５  ノイズスペクトル格納部
２６  前スペクトル格納部
２７  乱数位相格納部
２８  前波形格納部
【図１】
0004006770.tif 000015
【図２】
0004006770.tif 000016