(57)【特許請求の範囲】
【請求項１】
音声信号に基づく入力信号をフレーム単位で区分し、区分されたフレーム毎にピッチを求めると共に有声音か無声音かを判別し、求められたピッチの基本波及びその高調波を用いて有声音を合成する音声合成方法において、
無声音と判別されたフレームでは、上記基本波及びその高調波の位相を、上記フレーム終点での位相として初期値を代入することで、初期化する
ことを特徴とする音声合成方法。
【請求項２】
上記無声音と判別されたフレームから上記有声音と判別されたフレームへの遷移時に上記基本波及びその高調波の位相を初期化する
ことを特徴とする請求項１記載の音声合成方法。
【請求項３】
上記無声音と判別されたフレームが２フレーム以上連続する場合に上記基本波及びその高調波の位相を初期化する
ことを特徴とする請求項１記載の音声合成方法。
【請求項４】
上記入力信号として、音声信号に対して線形予測符号化処理を施すことにより得られたＬＰＣ残差を用いる
ことを特徴とする請求項１記載の音声合成方法。
【請求項５】
音声信号に基づく入力信号をフレーム単位で区分し、区分されたフレーム毎にピッチを求めると共に有声音か無声音かを判別し、求められたピッチの基本波及びその高調波を用いて有声音を合成する音声合成方法において、
無声音と判別されたフレームが２フレーム以上連続する場合に、上記基本波及びその高調波の位相を、上記フレーム終点での位相として初期値を代入することで、初期化する
ことを特徴とする音声合成方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、いわゆるＭＢＥ（Multiband Excitation: マルチバンド励起）符号化方式やハーモニック符号化方式等のようなサイン波合成を用いる音声合成方法に関するものである。
【０００２】
【従来の技術】
オーディオ信号（音声信号や音響信号を含む）の時間領域や周波数領域における統計的性質と人間の聴感上の特性を利用して信号圧縮を行うような符号化方法が種々知られている。この符号化方法としては、大別して時間領域での符号化、周波数領域での符号化、分析合成符号化等が挙げられる。
【０００３】
音声信号等の高能率符号化の例として、ＭＢＥ（Multiband Excitation: マルチバンド励起）符号化、ＳＢＥ（Singleband Excitation:シングルバンド励起）符号化、ハーモニック（Harmonic）符号化、ＳＢＣ（Sub-band Coding:帯域分割符号化）、ＬＰＣ（Linear Predictive Coding: 線形予測符号化）、あるいはＤＣＴ（離散コサイン変換）、ＭＤＣＴ（モデファイドＤＣＴ）、ＦＦＴ（高速フーリエ変換）等を用いた符号化が挙げられる。
【０００４】
これらの音声符号化方法の内、上記ＭＢＥ符号化やハーモニック符号化等のように音声合成時にサイン波合成を用いるものにおいては、エンコーダ側で符号化されて送信されてきたデータ、例えばハーモニクスの振幅及び位相データに基づいて、振幅及び位相の補間を行い、それらの補間されたパラメータに従って、時々刻々周波数と振幅の変化してゆくハーモニクス１本分の時間波形を算出し、その時間波形をハーモニクスの本数分だけ足し合わせて合成波形を得ている。
【０００５】
しかしながら、伝送ビットレートをさらに低減するために、上記位相データを伝送しない例も多く、この場合には、サイン波合成のための位相情報は、フレーム境界において連続性が保たれるように予測された値を用いている。この予測は毎フレーム行われ、有声音フレームから無声音フレームへの遷移、あるいは無声音フレームから有声音フレームへの遷移においても絶え間なく行われるようになっている。
【０００６】
【発明が解決しようとする課題】
ところで、無声音フレームにおいては、ピッチが存在しないため、ピッチデータが伝送されない。このため、上記位相予測を続けると位相の値に狂いが生じ、本来期待されていた零位相加算又はπ／２位相加算から徐々にはずれてゆく現象が生じ、合成音が歪み感を伴ったジンジンした感じあるいはびりびりした感じになり、音質劣化を引き起こすことになる。
【０００７】
本発明は、このような実情に鑑みてなされたものであり、サイン波合成等により音声合成処理を行う際の位相の狂いによる悪影響を未然に防止できるような音声合成方法の提供を目的とする。
【０００８】
【課題を解決するための手段】
本発明に係る音声合成方法は、上述した課題を解決するために、音声信号に基づく入力信号をフレーム単位で区分し、区分されたフレーム毎にピッチを求めると共に有声音か無声音かを判別し、求められたピッチの基本波及びその高調波を用いて有声音を合成する音声合成方法において、無声音と判別されたフレームでは、上記基本波及びその高調波の位相を、上記フレーム終点での位相として初期値を代入することで、初期化することを特徴としている。
また、本発明に係る音声合成方法は、上述した課題を解決するために、音声信号に基づく入力信号をフレーム単位で区分し、区分されたフレーム毎にピッチを求めると共に有声音か無声音かを判別し、求められたピッチの基本波及びその高調波を用いて有声音を合成する音声合成方法において、
無声音と判別されたフレームが２フレーム以上連続する場合に、上記基本波及びその高調波の位相を、上記フレーム終点での位相として初期値を代入することで、初期化する
ことを特徴としている。
【０００９】
この場合、上記無声音と判別されたフレームが２フレーム以上連続する時に上記基本波及びその高調波の位相を初期化することが好ましい。また、上記入力信号としては、音声信号をＡ／Ｄ変換して得られたディジタル音声信号やフィルタ処理を経て得られた音声信号等を用いることができるのみならず、音声信号に対して線形予測符号化処理を施して得られたＬＰＣ残差を用いることができる。
【００１０】
【発明の実施の形態】
本発明に係る音声合成方法は、例えばマルチバンド励起（Multiband Excitation: ＭＢＥ）符号化、サイン波変換符号化（Sinusoidal Transform Coding:ＳＴＣ）、ハーモニック符号化（Harmonic coding ）等のサイン波合成符号化、又はＬＰＣ（Linear Predictive Coding）残差に上記サイン波合成符号化を用いたもので、符号化の単位となるフレーム毎に有声音（Ｖ）／無声音（ＵＶ）の判別を行い、ＵＶのフレームからＶのフレームに遷移する時点で、サイン波合成の位相を例えば０あるいはπ／２等の所定値に初期化するものである。ここで、上記ＭＢＥ符号化においては、フレーム内の複数に分割された各バンド毎に上記Ｖ／ＵＶ判別を行っており、全バンドがＵＶとされるフレームから少なくとも１つのバンドがＶとされるフレームへの遷移時に、位相を初期化している。
【００１１】
この場合、ＵＶフレームからＶフレームへの遷移を検出しなくとも、ＵＶフレームでは常に位相の初期化を行わせればよい。ただし、ピッチ検出ミス等によりＶとなるべきフレームがＵＶと判別されることがまれにあることを考慮して、ＵＶフレームが例えば２フレーム連続したとき、あるいは３フレーム以上の所定のフレーム数だけ連続したときに、位相の初期化を行わせることが好ましい。
【００１２】
これは、特に、ＵＶフレームのときに、ピッチ情報を送る代わりに他の情報を送るようなシステムの場合に、連続的な位相予測が困難であることから、上述のようにＵＶフレームで位相の初期化を行う効果が大きく、位相がはずれてゆくことによる音質劣化を未然に防止できる。
【００１３】
以下、本発明に係る音声合成方法の実施の形態の具体例の説明に先立ち、通常のサイン波合成を用いた音声合成の一例について説明する。
【００１４】
先ず、符号化装置あるいはエンコーダから音声合成のための復号化装置あるいはデコーダに送信されてくるデータは、少なくとも、ハーモニクスの間隔を表すピッチ、及びスペクトルエンベロープに対応する振幅である。
【００１５】
この復号化側でサイン波合成を行うような音声符号化方式としては、例えばマルチバンド励起（Multiband Excitation: ＭＢＥ）符号化やハーモニック符号化等が知られており、ここでＭＢＥ符号化について簡単に説明する。
【００１６】
このＭＢＥ符号化においては、音声信号を一定サンプル数（例えば２５６サンプル）毎にブロック化して、ＦＦＴ等の直交変換により周波数軸上のスペクトルデータに変換すると共に、該ブロック内の音声のピッチを抽出し、このピッチに応じた間隔で周波数軸上のスペクトルを帯域分割し、分割された各帯域についてＶ（有声音）／ＵＶ（無声音）の判別を行っている。このＶ／ＵＶ判別情報と、上記ピッチ情報及びスペクトルの振幅データとを符号化して伝送する。
【００１７】
このようなＭＢＥ符号化を用いた音声信号の合成分析符号化装置（いわゆるボコーダ）は、 D.W. Griffin and J.S. Lim, "Multiband Excitation Vocoder," IEEE Trans. Acoustics, Speech, and Signal Processing, vol.36, No.8, pp.1223-1235, Aug. 1988 に開示されているものであり、従来のＰＡＲＣＯＲ（PARtial auto-CORrelation: 偏自己相関）ボコーダ等では、音声のモデル化の際に有声音区間と無声音区間とをブロックあるいはフレーム毎に切り換えていたのに対し、ＭＢＥボコーダでは、同時刻（同じブロックあるいはフレーム内）の周波数軸領域に有声音（Voiced）区間と無声音（Unvoiced）区間とが存在するという仮定でモデル化している。
【００１８】
図１は、上記ＭＢＥボコーダの一具体例の全体の概略構成を示すブロック図である。
【００１９】
この図１において、入力端子１１には音声信号が供給されるようになっており、この入力音声信号は、ＨＰＦ（ハイパスフィルタ）等のフィルタ１２に送られて、いわゆるＤＣ（直流）オフセット分の除去や帯域制限（例えば２００〜３４００Hzに制限）のための少なくとも低域成分（２００Hz以下）の除去が行われる。このフィルタ１２を介して得られた信号は、ピッチ抽出部１３及び窓かけ処理部１４にそれぞれ送られる。
【００２０】
ここで、入力信号として、音声信号に対して線形予測符号化処理を施すことにより得られたＬＰＣ残差を用いることもできる。この場合には、フィルタ１２からの出力に対して、ＬＰＣ分析を行って得られたαパラメータを用いて逆フィルタリングを施すことにより得られるＬＰＣ残差を、ピッチ抽出部１３及び窓かけ処理部１４にそれぞれ送るようにすればよい。
【００２１】
ピッチ抽出部（ピッチ検出部）１３では、入力音声信号データが所定サンプル数Ｎ（例えばＮ＝２５６）単位でブロック分割され（あるいは方形窓による切り出しが行われ）、このブロック内の音声信号についてのピッチ抽出が行われる。このような切り出しブロック（２５６サンプル）を、例えば図２のＡに示すようにＬサンプル（例えばＬ＝１６０）のフレーム間隔で時間軸方向に移動させており、各ブロック間のオーバラップはＮ−Ｌサンプル（例えば９６サンプル）となっている。また、窓かけ処理部１４では、１ブロックＮサンプルに対して所定の窓関数、例えばハミング窓をかけ、この窓かけブロックを１フレームＬサンプルの間隔で時間軸方向に順次移動させている。
【００２２】
このような窓かけ処理を数式で表すと、
ｘw (k,q) ＝ｘ(q) ｗ(kL-q)                        ・・・（１）
となる。この（１）式において、ｋはブロック番号を、ｑはデータの時間インデックス（サンプル番号）を表し、処理前の入力信号のｑ番目のデータｘ(q) に対して第ｋブロックの窓（ウィンドウ）関数ｗ(kL-q)により窓かけ処理されることによりデータｘw (k,q) が得られることを示している。ピッチ抽出部１３での図２のＡに示すような方形窓の場合の窓関数ｗr (r) は、
0003680374.tif 000002
また、上記窓かけ処理部１４での図２のＢに示すようなハミング窓の場合の窓関数ｗh (r) は、
0003680374.tif 000003
である。このような窓関数ｗr (r) あるいはｗh (r) を用いるときの上記（１）式の窓関数ｗ(r) （＝ｗ(kL-q)）の否零区間は、
０≦ｋＬ−ｑ＜Ｎ
これを変形して、
ｋＬ−Ｎ＜ｑ≦ｋＬ
従って例えば上記方形窓の場合に窓関数ｗr (kL-q)＝１となるのは、図３に示すように、ｋＬ−Ｎ＜ｑ≦ｋＬのときとなる。また、上記（１）〜（３）式は、長さＮ（＝２５６）サンプルの窓が、Ｌ（＝１６０）サンプルずつ前進してゆくことを示している。以下、上記（２）式、（３）式の各窓関数で切り出された各Ｎ点（０≦ｒ＜Ｎ）の否零サンプル列を、それぞれｘwr(k,r) 、ｘwh(k,r) と表すことにする。
【００２３】
窓かけ処理部１４では、図４に示すように、上記（３）式のハミング窓がかけられた１ブロック２５６サンプルのサンプル列ｘwh(k,r) に対して１７９２サンプル分の０データが付加されて（いわゆる０詰めされて）２０４８サンプルとされ、この２０４８サンプルの時間軸データ列に対して、直交変換部１５により例えばＦＦＴ（高速フーリエ変換）等の直交変換処理が施される。あるいは、０詰めなしで２５６点のままでＦＦＴを施して処理量を減らす方法もある。
【００２４】
ピッチ抽出部（ピッチ検出部）１３では、上記ｘwr(k,r) のサンプル列（１ブロックＮサンプル）に基づいてピッチ抽出が行われる。このピッチ抽出法には、時間波形の周期性や、スペクトルの周期的周波数構造や、自己相関関数を用いるもの等が知られているが、本例では、センタクリップ波形の自己相関法を採用している。このときのブロック内でのセンタクリップレベルについては、１ブロックにつき１つのクリップレベルを設定してもよいが、ブロックを細分割した各部（各サブブロック）の信号のピークレベル等を検出し、これらの各サブブロックのピークレベル等の差が大きいときに、ブロック内でクリップレベルを段階的にあるいは連続的に変化させるようにしている。このセンタクリップ波形の自己相関データのピーク位置に基づいてピッチ周期を決めている。このとき、現在フレームに属する自己相関データ（自己相関は１ブロックＮサンプルのデータを対象として求められる）から複数のピークを求めておき、これらの複数のピークの内の最大ピークが所定の閾値以上のときには該最大ピーク位置をピッチ周期とし、それ以外のときには、現在フレーム以外のフレーム、例えば前後のフレームで求められたピッチに対して所定の関係を満たすピッチ範囲内、例えば前フレームのピッチを中心として±２０％の範囲内にあるピークを求め、このピーク位置に基づいて現在フレームのピッチを決定するようにしている。このピッチ抽出部１３ではオープンループによる比較的ラフなピッチのサーチが行われ、抽出されたピッチデータは高精度（ファイン）ピッチサーチ部１６に送られて、クローズドループによる高精度のピッチサーチ（ピッチのファインサーチ）が行われる。なお、センタクリップ波形ではなく、入力波形をＬＰＣ分析した残差波形の自己相関からピッチを求める方法を用いてもよい。
【００２５】
高精度ピッチサーチ部１６には、ピッチ抽出部１３で抽出された整数値の粗ピッチデータと、直交変換部１５により例えばＦＦＴされた周波数軸上のデータとが供給されている。この高精度ピッチサーチ部１６では、上記粗ピッチデータ値を中心に、0.２〜0.５きざみで±数サンプルずつ振って、最適な小数点付き（フローティング）のファインピッチデータの値へ追い込む。このときのファインサーチの手法として、いわゆる合成による分析 (Analysis by Synthesis)法を用い、合成されたパワースペクトルが原音のパワースペクトルに最も近くなるようにピッチを選んでいる。
【００２６】
このピッチのファインサーチすなわち高精度サーチについて説明する。先ず、上記ＭＢＥボコーダにおいては、上記ＦＦＴ等により直交変換された周波数軸上のスペクトルデータとしてのＳ(j) を
Ｓ(j) ＝ Ｈ(j)｜Ｅ(j)｜       ０＜ｊ＜Ｊ        ・・・  （４）
と表現するようなモデルを想定している。ここで、Ｊは、ωs／４π＝ｆs／２に対応し、サンプリング周波数ｆs＝ωs／２πが例えば８ｋHzのときには４ｋHzに対応する。上記（４）式中において、周波数軸上のスペクトルデータＳ(j) が図５のＡに示すような波形のとき、Ｈ(j) は、図５のＢに示すように、元のスペクトルデータＳ(j) のスペクトル包絡線（エンベロープ）を示し、Ｅ(j) は、図５のＣに示すような等レベルで周期的な励起信号、いわゆるエクサイテイションのスペクトルを示している。すなわち、ＦＦＴスペクトルＳ(j) は、スペクトルエンベロープＨ(j) と励起信号のパワースペクトル｜Ｅ(j)｜ との積としてモデル化される。
【００２７】
上記励起信号のパワースペクトル｜Ｅ(j)｜ は、上記ピッチに応じて決定される周波数軸上の波形の周期性、すなわちピッチ構造を考慮して、１つの帯域（バンド）の波形に相当するスペクトル波形を周波数軸上の各バンド毎に繰り返すように配列することにより形成される。この１バンド分の波形は、例えば上記図４に示すような２５６サンプルのハミング窓関数に１７９２サンプル分の０データを付加した、すなわち０詰めした波形を時間軸信号と見なしてＦＦＴし、得られた周波数軸上のある帯域幅を持つインパルス波形を上記ピッチに応じて切り出すことにより形成することができる。
【００２８】
次に、上記ピッチに応じて分割された各バンド毎に、上記Ｈ(j) を代表させるような値、すなわち各バンド毎のエラーを最小化するような一種の振幅｜Ａm｜ を求める。ここで、例えば第ｍバンド、すなわち第ｍ高調波の帯域の下限、上限の点をそれぞれａm 、ｂm とするとき、この第ｍバンドのエラーεm は、
【００２９】
【数１】
0003680374.tif 000004
【００３０】
で表せる。このエラーεm を最小化するような｜Ａm｜ は、
【００３１】
【数２】
0003680374.tif 000005
【００３２】
となり、この（６）式の｜Ａm｜ のとき、エラーεm を最小化する。
【００３３】
このような振幅｜Ａm｜ を各バンド毎に求め、得られた各振幅｜Ａm｜ を用いて上記（５）式で定義された各バンド毎のエラーεm を求める。次に、このような各バンド毎のエラーεm の全バンドの総和値Σεm を求める。さらに、このような全バンドのエラー総和値Σεm を、いくつかの微小に異なるピッチについて求め、エラー総和値Σεm が最小となるようなピッチを求める。
【００３４】
すなわち、上記ピッチ抽出部１３で求められたラフピッチを中心として、例えば０．２５きざみで上下に数種類ずつ用意する。これらの複数種類の微小に異なるピッチの各ピッチに対してそれぞれ上記エラー総和値Σεm を求める。この場合、ピッチが定まるとバンド幅が決まり、上記（６）式より、周波数軸上データのパワースペクトル｜Ｓ(j)｜ と励起信号スペクトル｜Ｅ(j)｜ とを用いて上記（５）式のエラーεm を求め、その全バンドの総和値Σεm を求めることができる。このエラー総和値Σεm を各ピッチ毎に求め、最小となるエラー総和値に対応するピッチを最適のピッチとして決定するわけである。以上のようにして高精度ピッチサーチ部で最適のファインピッチが例えば０．２５きざみで求められ、この最適ピッチに対応する振幅｜Ａm｜ が決定される。このときの振幅値の計算は、有声音の振幅評価部１８Ｖにおいて行われる。
【００３５】
以上ピッチのファインサーチの説明においては、説明を簡略化するために、全バンドが有声音（Voiced）の場合を想定しているが、上述したようにＭＢＥボコーダにおいては、同時刻の周波数軸上に無声音（Unvoiced）領域が存在するというモデルを採用していることから、上記各バンド毎に有声音／無声音の判別を行うことが必要とされる。
【００３６】
上記高精度ピッチサーチ部１６からの最適ピッチ及び振幅評価部（有声音）１８Ｖからの振幅｜Ａm｜ のデータは、有声音／無声音判別部１７に送られ、上記各バンド毎に有声音／無声音の判別が行われる。この判別のためにＮＳＲ（ノイズｔｏシグナル比）を利用する。すなわち、第ｍバンドのＮＳＲであるＮＳＲm は、
【００３７】
【数３】
0003680374.tif 000006
【００３８】
と表せ、このＮＳＲm が所定の閾値Ｔｈ1 （例えばＴｈ1 ＝0.２）より大のとき（すなわちエラーが大きいとき）には、そのバンドでの｜Ａm｜｜Ｅ(j)｜による｜Ｓ(j)｜ の近似が良くない、すなわち上記励起信号｜Ｅ(j)｜ が基底として不適当である、と判断でき、当該バンドをＵＶ（Unvoiced、無声音）と判別する。これ以外のときは、近似がある程度良好に行われていると判断でき、そのバンドをＶ（Voiced、有声音）と判別する。
【００３９】
ところで、入力音声信号のサンプリング周波数を８ｋHzとするとき、全帯域幅は３．４ｋHz（ただし有効帯域は２００〜３４００Hz）であり、女声の高い方から男声の低い方までのピッチラグ（ピッチ周期に相当するサンプル数）は、２０〜１４７程度となるから、ピッチ周波数は、8000/147≒５４（Hz）から 8000/20＝４００（Hz）程度までの間で変動することになって、周波数軸上で上記３．４ｋHzまでの間に約８〜６３本のピッチパルス（ハーモニックス）が立つことになる。従って、上記基本ピッチ周波数で分割されたバンドの数、すなわちハーモニックスの数は、声の高低（ピッチの大小）によって約８〜６３程度の範囲で変動するため、各バンド毎のＶ／ＵＶフラグの個数も同様に変動してしまう。
【００４０】
そこで、本例においては、固定的な周波数帯域で分割した一定個数のバンド毎にＶ／ＵＶ判別結果をまとめる（あるいは縮退させる）ようにしている。具体的には、音声帯域を含む所定帯域（例えば０〜４０００Hz）をＮB 個（例えば１２個）のバンドに分割し、各バンド内の上記ＮＳＲ値に従って、例えば重み付き平均値を所定の閾値Ｔｈ2 （例えばＴｈ2 ＝0.２）で弁別して、当該バンドのＶ／ＵＶを判断している。
【００４１】
次に、無声音の振幅評価部１８Ｕには、直交変換部１５からの周波数軸上データ、ピッチサーチ部１６からのファインピッチデータ、有声音振幅評価部１８Ｖからの振幅｜Ａm｜ のデータ、及び上記有声音／無声音判別部１７からのＶ／ＵＶ（有声音／無声音）判別データが供給されている。この振幅評価部（無声音）１８Ｕでは、有声音／無声音判別部１７において無声音（ＵＶ）と判別されたバンドに関して、再度振幅を求めるような振幅再評価を行っている。このＵＶのバンドについての振幅｜Ａm｜UV は、
【００４２】
【数４】
0003680374.tif 000007
【００４３】
にて求められる。
【００４４】
この振幅評価部（無声音）１８Ｕからのデータは、データ数変換（一種のサンプリングレート変換）部１９に送られる。このデータ数変換部１９は、上記ピッチに応じて周波数軸上での分割帯域数が異なり、データ数、特に振幅データの数が異なることを考慮して、一定の個数にするためのものである。すなわち、上述したように例えば有効帯域を３４００ｋHzまでとすると、この有効帯域が上記ピッチに応じて、８バンド〜６３バンドに分割されることになり、これらの各バンド毎に得られる上記振幅｜Ａm ｜（ＵＶバンドの振幅｜Ａm ｜UVも含む）データの個数ｍMX＋１も８〜６３と変化することになる。このためデータ数変換部１９では、この可変個数ｍMX＋１の振幅データを一定個数Ｍ、例えばＭ＝４４個、のデータに変換している。
【００４５】
ここで、本例においては、例えば、周波数軸上の有効帯域１ブロック分の振幅データに対して、ブロック内の最後のデータからブロック内の最初のデータまでの値を補間するようなダミーデータを付加して、データ個数をＮF 個に拡大した後、帯域制限型のＯS 倍のオーバーサンプリングを施すことにより、ＯS 倍の個数の振幅データを求める。例えばＯS＝８ である。このＯS 倍の個数、すなわち（ｍMX＋１）×ＯS 個、の振幅データを直線補間してさらに多くのＮM 個、例えばＮM ＝２０４８個、に拡張し、このＮM 個のデータを間引いて、上記一定個数Ｍ、例えばＭ＝４４個、のデータに変換している。
【００４６】
このデータ数変換部１９からのデータ、すなわち上記一定個数Ｍ個の振幅データがベクトル量子化部２０に送られて、所定個数のデータ毎にまとめられてベクトルとされ、ベクトル量子化が施される。ベクトル量子化部２０からの量子化出力データ（の主要部）は、上記高精度のピッチサーチ部１６から上記Ｐ、Ｐ／２選択部２６を介して得られた高精度（ファイン）ピッチデータ及び上記有声音／無声音判別部１７からの有声音／無声音（Ｖ／ＵＶ）判別データと共に、符号化部２１に送られて符号化される。
【００４７】
なお、これらの各データは、上記Ｎサンプル、例えば２５６サンプル、のブロック内のデータに対して処理を施すことにより得られるものであるが、ブロックは時間軸上を上記Ｌサンプルのフレームを単位として前進することから、伝送するデータは上記フレーム単位で得られる。すなわち、上記フレーム周期でピッチデータ、Ｖ／ＵＶ判別データ、振幅データが更新されることになる。また、上記有声音／無声音判別部１７からのＶ／ＵＶ判別データについては、上述したように、必要に応じて１２バンド程度に低減あるいは縮退され、全バンド中で１箇所以下の有声音（Ｖ）領域と無声音（ＵＶ）領域との区分位置を有すると共に、所定条件を満足する場合に低域側のＶ（有声音）が高域側にまで拡張されたＶ／ＵＶ判別データパターンを表すものである。
【００４８】
上記符号化部２１においては、例えばＣＲＣ付加及びレート１／２畳み込み符号付加処理が施される。すなわち、上記ピッチデータ、上記有声音／無声音（Ｖ／ＵＶ）判別データ、及び上記量子化出力データの内の重要なデータについては誤り検出のためのＣＲＣ符号化が施された後、畳み込み符号化が施される。符号化部２１からの符号化出力データは、フレームインターリーブ部２２に送られ、ベクトル量子化部２０からの一部（例えば重要度の低い）データと共にインターリーブ処理されて、出力端子２３から取り出され、合成側（デコード側）に伝送される。こ場合の伝送とは、通信媒体を介しての送受信や、記録媒体に対しての記録再生等を含む概念である。
【００４９】
次に、伝送されて得られた上記各データに基づき音声信号を合成するための合成側（デコード側）の概略構成について、図６を参照しながら説明する。
【００５０】
この図６において、入力端子３１には、上記伝送による信号劣化、すなわち送受信あるいは記録再生等による信号劣化を無視すると、上記図１に示すエンコーダ側の出力端子２３から取り出されたデータ信号に略々等しいデータ信号が供給される。この入力端子３１からのデータは、フレームデインターリーブ部３２に送られて、上記図１のインターリーブ処理の逆処理となるデインターリーブ処理が施され、主要部すなわちエンコーダ側でＣＲＣ及び畳み込み符号化された部分で、一般に重要度の高いデータ部分は、復号化部３３で復号化処理されてバッドフレームマスク処理部３４に送られ、残部すなわち符号化処理の施されていない重要度の低いものはそのままバッドフレームマスク処理部３４に送られる。復号化部３３においては、例えばいわゆるビタビ復号化処理やＣＲＣチェックコードを用いたエラー検出処理が施される。バッドフレームマスク処理部３４は、エラーの多いフレームのパラメータを補間で求めるような処理を行うと共に、上記ピッチデータ、有声音／無声音（Ｖ／ＵＶ）データ、及びベクトル量子化された振幅データを分離して取り出す。
【００５１】
バッドフレームマスク処理部３４からの上記ベクトル量子化された振幅データは、逆ベクトル量子化部３５に送られて逆量子化され、データ数逆変換部３６に送られて逆変換される。このデータ数逆変換部３６では、上述した図１のデータ数変換部１９と対照的な逆変換が行われ、得られた振幅データが有声音合成部３７及び無声音合成部３８に送られる。マスク処理部３４からの上記ピッチデータは、有声音合成部３７及び無声音合成部３８に送られる。またマスク処理部３４からの上記Ｖ／ＵＶ判別データも、有声音合成部３７及び無声音合成部３８に送られる。さらに、マスク処理部３４からの上記Ｖ／ＵＶ判別データは、後述するＵＶフレーム検出回路３９にも送られている。
【００５２】
有声音合成部３７では例えば余弦(cosine)波合成により時間軸上の有声音波形を合成し、無声音合成部３８では例えばホワイトノイズをバンドパスフィルタでフィルタリングして時間軸上の無声音波形を合成し、これらの各有声音合成波形と無声音合成波形とを加算部４１で加算合成して、出力端子４２より取り出すようにしている。この場合、上記振幅データ、ピッチデータ及びＶ／ＵＶ判別データは、上記分析時の１フレーム（＝Ｌサンプル、例えば１６０サンプル）毎に更新されて与えられるが、フレーム間の連続性を高めるため、すなわち平滑化するために、上記振幅データやピッチデータの各値を１フレーム中の例えば中心位置における各データ値とし、次のフレームの中心位置までの間（＝合成時の１フレーム、例えば上記分析フレームの中心から次の分析フレームの中心まで）の各データ値を補間により求める。すなわち、合成時の１フレームにおいて、先端サンプル点での各データ値と終端（次の合成フレームの先端）サンプル点での各データ値とが与えられ、これらのサンプル点間の各データ値を補間により求めるようにしている。
【００５３】
また、Ｖ／ＵＶ判別データに応じて全バンドを１箇所の区分位置で有声音（Ｖ）領域と無声音（ＵＶ）領域とに区分することができ、この区分に応じて、各バンド毎のＶ／ＵＶ判別データを得ることができる。この区分位置については、上述したように、低域側のＶが高域側に拡張されていることがある。ここで、分析側（エンコーダ側）で一定数（例えば１２程度）のバンドに低減（縮退）されている場合には、これを解いて（復元して）、元のピッチに応じた間隔で可変個数のバンドとすることは勿論である。
【００５４】
以下、有声音合成部３７における合成処理を詳細に説明する。
上記Ｖ（有声音）と判別された第ｍバンド（第ｍ高調波の帯域）における時間軸上の上記１合成フレーム（Ｌサンプル、例えば１６０サンプル）分の有声音をＶm(n)とするとき、この合成フレーム内の時間インデックス（サンプル番号）ｎを用いて、
Ｖm(n) ＝ Ａm(n)cos(θm(n))       ０≦ｎ＜Ｌ    ・・・  （９）
と表すことができる。全バンドの内のＶ（有声音）と判別された全てのバンドの有声音を加算して（ΣＶm(n)）最終的な有声音Ｖ(n) を合成する。
【００５５】
この（９）式中のＡm(n)は、上記合成フレームの先端から終端までの間で補間された第ｍ高調波の振幅である。最も簡単には、フレーム単位で更新される振幅データの第ｍ高調波の値を直線補間すればよい。すなわち、上記合成フレームの先端（ｎ＝０）での第ｍ高調波の振幅値をＡ0m、該合成フレームの終端（ｎ＝Ｌ：次の合成フレームの先端）での第ｍ高調波の振幅値をＡLmとするとき、
Ａm(n) ＝ (L-n)Ａ0m／Ｌ＋ｎＡLm／Ｌ             ・・・  （10）
の式によりＡm(n)を計算すればよい。
【００５６】
次に、上記（９）式中の位相θm(n)は、
θm(n) ＝ ｍωO1ｎ＋ｎ2ｍ（ωL1−ω01）／２Ｌ＋φ0m＋Δωｎ・・・  （11）
により求めることができる。この（11）式中で、φ0mは上記合成フレームの先端（ｎ＝０）での第ｍ高調波の位相（フレーム初期位相）を示し、ω01は合成フレーム先端（ｎ＝０）での基本角周波数、ωL1は該合成フレームの終端（ｎ＝Ｌ：次の合成フレーム先端）での基本角周波数をそれぞれ示している。上記（11）式中のΔωは、ｎ＝Ｌにおける位相φLmがθm(L)に等しくなるような最小のΔωを設定する。
【００５７】
ここで、任意の第ｍバンドにおいて、フレーム始点をｎ＝０、フレーム終点をｎ＝Ｌとする。フレーム終点ｎ＝Ｌのときの位相psi(L)m は、フレーム始点ｎ＝０のときの位相 psi(0)m及びピッチ周波数ω0 と、フレーム終点ｎ＝Ｌのときのピッチ周波数ωL とを用いて、
psi(L)m ＝ mod2π（psi(0)m＋mL(ωO+ωL)/2）      ・・・  （12）
で算出される。この（１２）式中のmod2π(x) とは、ｘの主値を−π〜＋πの間の値で返す関数である。例えば、ｘ＝１.3πのときmod2π(x) ＝−０.7π、ｘ＝２.3πのときmod2π(x) ＝０.3π、ｘ＝−１.3πのときmod2π(x) ＝０.7π、等である。
【００５８】
このようにして求められる位相について、現フレームの終点での位相psi(L)m の値を次のフレームの始点での位相psi(0)m の値として用いることで位相の連続性が保たれる。
【００５９】
上記Ｖ（有声音）のフレームが連続するときは、このように順次各フレームの初期位相を決定できるが、上記全バンドがＵＶ（無声音）のフレームが入るとピッチ周波数ωの値が不定となり、上記の法則が働かなくなる。ここで、ピッチ周波数ωに適当な固定値を用いることである程度の予測は続けることも可能であるが、本来の位相に対して次第にずれが生じてくる。
【００６０】
そこで、上記全バンドがＵＶ（無声音）のフレームにおいては、上記フレーム終点ｎ＝Ｌでの位相psi(L)m として、０あるいはπ／２のような所定の初期値を代入することで、常に期待通りのサイン波合成あるいはコサイン波合成が行えるようになる。
【００６１】
これは、ＵＶフレーム検出回路３９において、マスク処理部３４からの上記Ｖ／ＵＶ判別データに基づいて、全バンドがＵＶ（無声音）となるフレームが２フレーム以上連続しているか否かを検出し、２フレーム以上連続しているときには位相初期化制御信号を有声音合成回路３７に送って、当該ＵＶフレームで位相を初期化するようにしている。この位相初期化は、ＵＶフレームが連続している間常に行われ、連続するＵＶフレームからＶフレームに遷移したときに、上記初期化された位相からサイン波合成が開始される。
【００６２】
従って、ＵＶフレームの間に位相がはずれてゆくことによる音質劣化を未然に防止できる。これは、特に、ＵＶフレームのときに、ピッチ情報を送る代わりに他の情報を送るようなシステムの場合に、連続的な位相予測が困難であることから、上述のようにＵＶフレームで位相の初期化を行う効果が大きい。
【００６３】
次に、無声音合成部３８における無声音合成処理を説明する。
ホワイトノイズ発生部４３からの時間軸上のホワイトノイズ信号波形を窓かけ処理部４４に送って、所定の長さ（例えば２５６サンプル）で適当な窓関数（例えばハミング窓）により窓かけをし、ＳＴＦＴ処理部４５によりＳＴＦＴ（ショートタームフーリエ変換）処理を施すことにより、ホワイトノイズの周波数軸上のパワースペクトルを得る。このＳＴＦＴ処理部４５からのパワースペクトルをバンド振幅処理部４６に送り、上記ＵＶ（無声音）とされたバンドについて上記振幅｜Ａm｜UV を乗算し、他のＶ（有声音）とされたバンドの振幅を０にする。このバンド振幅処理部４６には上記振幅データ、ピッチデータ、Ｖ／ＵＶ判別データが供給されている。
【００６４】
バンド振幅処理部４６からの出力は、ＩＳＴＦＴ処理部４７に送られ、位相は元のホワイトノイズの位相を用いて逆ＳＴＦＴ処理を施すことにより時間軸上の信号に変換する。ＩＳＴＦＴ処理部４７からの出力は、オーバーラップ加算部４８に送られ、元の連続的なノイズ波形を復元できるように時間軸上で適当な重み付けをしながらオーバーラップ及び加算を繰り返し、連続的な時間軸波形を合成する。このオーバーラップ加算部４８からの出力信号が上記加算部４１に送られる。
【００６５】
このように、各合成部３７、３８において合成されて時間軸上に戻された有声音部及び無声音部の各信号は、加算部４１により適当な固定の混合比で加算して、出力端子４２より再生された音声信号を取り出す。
【００６６】
なお、本発明は上述した実施の形態のみに限定されるものではなく、例えば、上記図１の音声分析側（エンコード側）の構成や、図６の音声合成側（デコード側）の構成については、各部をハードウェア的に記載しているが、いわゆるＤＳＰ（ディジタル信号プロセッサ）等を用いてソフトウェアプログラムにより実現することも可能である。また、上記高調波（ハーモニクス）毎のバンドをまとめて（縮退させて）一定個数のバンドにすることは、必要に応じて行えばよく、縮退バンド数も１２バンドに限定されない。また、全バンドを所定の区分位置で低域側Ｖ領域と高域側ＵＶ領域とに分割する処理も必要に応じて行えばよく、行わなくともよい。さらに、本発明が適用されるものは、上記マルチバンド励起音声分析／合成方法に限定されず、例えば、フレーム毎に全帯域のＶ／ＵＶを切り換えてしまうもので、ＵＶと判断されたフレームにはＣＥＬＰ（Code-Excited Linear Prediction：符号励起線形予測）符号化方式など他のコーディング方式を用いるもの、又はＬＰＣ（Linear Predictive Coding: 線形予測符号化）残差信号に各種コーディング方式を適用したものなどのように、サイン波合成を用いる種々の音声分析／合成方法に容易に適用でき、また、用途としても、信号の伝送や記録再生のみならず、ピッチ変換や、スピード変換や、雑音抑制等の種々の用途に応用できるものである。
【００６７】
【発明の効果】
以上の説明から明らかなように、本発明に係る音声合成方法によれば、無声音（ＵＶ）と判別されたフレームでは、サイン波合成のための基本波及びその高調波の位相を初期化しているため、ＵＶフレームで位相がはずれてゆくことによる音質劣化を未然に防止できる。
【００６８】
また、ＵＶフレームが２フレーム以上連続するときに位相の初期化を行うことにより、ピッチ検出ミス等により有声音（Ｖ）となるべきフレームがＵＶと判別されることによる誤動作を防止できる。
【図面の簡単な説明】
【図１】本発明に係る音声合成方法が適用される装置の具体例としての音声信号の分析／合成符号化装置の分析側（エンコード側）の概略構成を示す機能ブロック図である。
【図２】窓かけ処理を説明するための図である。
【図３】窓かけ処理と窓関数との関係を説明するための図である。
【図４】直交変換（ＦＦＴ）処理対象としての時間軸データを示す図である。
【図５】周波数軸上のスペクトルデータ、スペクトル包絡線（エンベロープ）及び励起信号のパワースペクトルを示す図である。
【図６】本発明に係る音声合成方法が適用される装置の具体例としての音声信号の分析／合成符号化装置の合成側（デコード側）の概略構成を示す機能ブロック図である。
【符号の説明】
１３・・・・・ピッチ抽出部
１４・・・・・窓かけ処理部
１５・・・・・直交変換（ＦＦＴ）部
１６・・・・・高精度（ファイン）ピッチサーチ部
１７・・・・・有声音／無声音（Ｖ／ＵＶ）判別部
１８Ｖ・・・・・有声音の振幅評価部
１８Ｕ・・・・・無声音の振幅評価部
１９・・・・・データ数変換（データレートコンバート）部
２０・・・・・ベクトル量子化部
３７・・・・・有声音合成部
３８・・・・・無声音合成部
【図１】
0003680374.tif 000008
【図２】
0003680374.tif 000009
【図３】
0003680374.tif 000010
【図４】
0003680374.tif 000011
【図５】
0003680374.tif 000012
【図６】
0003680374.tif 000013