(57)【要約】【課題】ＣＳＭ分析合成において、自然な無声音を合成する。【解決手段】複合正弦波合成（ＣＳＭ）のためのパラメータが合成パラメータ入力部２１から入力される。パラメータに基づき、正弦波成分生成部２２において各正弦波成分が生成され、無声音に係る部分については乱数加算部２３により乱数が加算されて、増幅部２４により所望の振幅に増幅される。波形加算部２５により複数の正弦波成分が加算された後、有声音に係る部分についてはピッチ付加部によりピッチが付加される。【選択図】　図２
2004077918.tif 000002
【特許請求の範囲】
【請求項１】
フレーム毎に正弦波成分に基づいて音声合成を行う音声合成装置において、
各フレームで合成すべき音声信号を表現する正弦波成分を示す正弦波成分情報と前記フレームが有声音及び無声音のいずれのフレームであるかを示す有声／無声情報とを入力するパラメータ入力部と、
前記正弦波成分情報が示す正弦波成分を生成する正弦波成分生成部と、
前記有声／無声情報により無声音と指定された前記フレームの前記正弦波成分に乱数を加算し合成音声として出力する波形加算部とを備えたことを特徴とする音声合成装置。
【請求項２】
前記パラメータ入力部は、このフレームで合成すべき音声信号のピッチを示すピッチ情報をさらに入力するものであり、
前記波形加算部は、前記ピッチ情報に基づいて前記音声／無声情報により有声音と指定された前記フレームに対応する合成音声にピッチを付加し出力することを特徴とする請求項１に記載の音声合成装置。
【請求項３】
フレーム毎に正弦波成分に基づいて音声合成を行う音声合成方法において、
各フレームで合成すべき音声信号を表現する正弦波成分を示す正弦波成分情報と前記フレームが有声音及び無声音のいずれのフレームであるかを示す有声／無声情報とを入力するパラメータ入力ステップと、
前記正弦波成分情報が示す正弦波成分を生成する正弦波成分生成ステップと、
前記有声／無声情報により無声音と指定された前記フレームの前記正弦波成分に乱数を加算し合成音声として出力する波形加算ステップとを備えたことを特徴とする音声合成方法。
【請求項４】
フレーム毎に正弦波成分に基づいて音声合成を行う音声合成プログラムにおいて、
各フレームで合成すべき音声信号を表現する正弦波成分を示す正弦波成分情報と前記フレームが有声音及び無声音のいずれのフレームであるかを示す有声／無声情報とを入力するパラメータ入力ステップと、
前記正弦波成分情報が示す正弦波成分を生成する正弦波成分生成ステップと、前記有声／無声情報により無声音と指定された前記フレームの前記正弦波成分に乱数を加算し合成音声として出力する波形加算ステップとをコンピュータに実行させるように構成されたことを特徴とする音声合成用プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、音声を合成する音声合成装置、方法及びプログラムに関し、更に詳しくは、複合正弦波音声合成法（Ｃｏｍｐｏｓｉｔｅ　Ｓｉｎｕｓｏｉｄａｌ　Ｍｏｄｅｌｉｎｇ、以下、ＣＳＭ法と称する）を利用した音声合成装置、方法及びプログラムに関する。
【０００２】
【従来の技術】
音声の特徴を分析して合成するための手法の１つとして、ＣＳＭ法が知られている。このＣＳＭ法では、音声信号を１０−３０ｍｓ程度の短区間（フレーム）ではほぼ定常とみなして、このフレームの音声信号を数個の正弦波成分の和としてモデル化し、このモデルを表現するパラメータを取得する。そして、この取得されたパラメータ、又はピッチ／テンポの変換等の要求に応じて変更されたパラメータに基づいて、音声が合成され出力される。このＣＳＭ法は、計算量が少なくて済み、音声をリアルタイムで分析、合成することも比較的容易となっているため、カラオケ装置などの声質変換等にも極めて有用である。
【０００３】
【発明が解決しようとする課題】
しかし、このＣＳＭ法では、正弦波成分の和のみで全ての音声信号を表現することを意図しているため、ランダムな振幅を有する雑音性の信号である無声音を忠実に合成することができなかった。
本発明は、この点に鑑みて為されたものであり、ＣＳＭ法においてより自然な無声音を合成することができる音声合成装置、方法及びプログラムを提供することを目的とする。
【０００４】
【課題を解決するための手段】
上記目的を達成するため、本発明に係る音声合成装置は、フレーム毎に正弦波成分に基づいて音声合成を行う音声合成装置において、各フレームで合成すべき音声信号を表現する正弦波成分を示す正弦波成分情報と前記フレームが有声音及び無声音のいずれのフレームであるかを示す有声／無声情報とを入力するパラメータ入力部と、前記正弦波成分情報が示す正弦波成分を生成する正弦波成分生成部と、前記有声／無声情報により無声音と指定された前記フレームの前記正弦波成分に乱数を加算し合成音声として出力する波形加算部とを備えたことを特徴とする。
【０００５】
この発明によれば、フレーム毎に正弦波成分生成部により生成された複数の正弦波成分のうち、無声音を構成するフレームに対応する各正弦波成分には、乱数加算部により乱数が加算される。これにより、無声音部分が、広い周波数に亘るスペクトルにより表現され、聴感上より自然な無声音の合成がなされる。
【０００６】
上記目的を達成するため、本発明に係る音声合成方法は、フレーム毎に正弦波成分に基づいて音声合成を行う音声合成方法において、各フレームで合成すべき音声信号を表現する正弦波成分を示す正弦波成分情報と前記フレームが有声音及び無声音のいずれのフレームであるかを示す有声／無声情報とを入力するパラメータ入力ステップと、前記正弦波成分情報が示す正弦波成分を生成する正弦波成分生成ステップと、前記有声／無声情報により無声音と指定された前記フレームの前記正弦波成分に乱数を加算し合成音声として出力する波形加算ステップとを備えたことを特徴とする。
【０００７】
上記目的を達成するため、本発明に係る音声合成用プログラムは、フレーム毎に正弦波成分に基づいて音声合成を行う音声合成プログラムにおいて、各フレームで合成すべき音声信号を表現する正弦波成分を示す正弦波成分情報と前記フレームが有声音及び無声音のいずれのフレームであるかを示す有声／無声情報とを入力するパラメータ入力ステップと、前記正弦波成分情報が示す正弦波成分を生成する正弦波成分生成ステップと、前記有声／無声情報により無声音と指定された前記フレームの前記正弦波成分に乱数を加算し合成音声として出力する波形加算ステップとをコンピュータに実行させるように構成されたことを特徴とする。
【０００８】
【発明の実施の形態】
次に、本発明の実施の形態を、図面に基づいて詳細に説明する。
本発明の実施の形態に係る音声分析合成装置は、図１及び図２に示すように、音声分析部１０と音声合成部２０とから構成される。この音声分析部１０と音声合成部２０とは、パーソナルコンピュータやＤＳＰ等により実現することができる。音声分析部１０の構成を図１に、音声合成部２０の構成を図２に示す。
【０００９】
音声分析部１０は、音声入力部１１と、ピッチ検出部１２と、正弦波成分検出部１３と、有声／無声判定部１４と、分析結果出力部１５とを備えている。
音声合成部２０は、合成パラメータ入力部２１と、正弦波成分生成部２２と、乱数加算部２３と、増幅部２４と、波形加算部２５と、ピッチ付加部２６と、波形出力部２７とを備えている。
【００１０】
音声入力部１１は、図示しない窓関数部等により、入力される音声信号を１０−３０ｍｓ程度のフレーム単位で切り出し、切り出したフレームの音声信号をピッチ検出部１２、正弦波成分検出部１３、有声／無声判定部１４に出力する機能を有する。
ピッチ検出部１２は、フレームの音声信号のピッチＴを検出し、ピッチ情報として出力する。ピッチ検出は、例えば、そのフレームの最大振幅の正弦波成分の周波数をピッチとするなどして行われる。
正弦波成分検出部１３は、フレームの音声信号を、その音声信号の特徴を表わす複数の正弦波成分で表現した場合における、各正弦波成分の振幅ａｋ、周波数ωｋ（ｋ＝１〜Ｎ）を検出し、これらを正弦波成分情報として出力する。この正弦波成分は例えば、フレームの音声信号の複数の正弦波成分を振幅の大きなものから順に所定数の成分を選択することにより得てもよい。
有声／無声判定部１４は、フレームが有声音のフレームか無声音のフレームかを判定し、有声／無声情報を出力する。判定方法としては種々考えられるが、ピッチ検出部１２においてピッチＴが検出された場合には有声音と、検出されなかった場合には無声音と判定するようにすることができる。
【００１１】
分析結果出力部１５は、ピッチ検出部１２、正弦波成分検出部１３及び有声／無声判定部１４からのピッチ情報、正弦波成分情報及び有声／無声情報を音声合成部２０へ向けて出力する部分である。これらの情報は、フレーム単位でまとめて出力される。
【００１２】
音声合成部２０の合成パラメータ入力部２１は、分析結果出力部１５から出力された情報を受信する部分である。
正弦波成分生成部２２は、合成パラメータ入力部２１に入力された正弦波成分情報の周波数パラメータωｋに対応した複数の正弦波ｓｉｎωｋｔ（ｋ＝１〜Ｎ）を生成する。
乱数加算部２３は、乱数例えばホワイトノイズを発生させると共に、正弦波成分生成部２２で生成された各正弦波にこの乱数を加算するものである。無声音を表現するための正弦波の振幅ａｋが、−１＜＝ａｋ＝＜１の範囲にある場合、　加算するホワイトノイズの振幅ａｎは−０．５＜ａｎ＜０．５程度とするのが適当である。図３は、このようなホワイトノイズを加算する場合における、加算前の正弦波（同図（ａ））と、加算後の正弦波（同図（ｂ））を示している。乱数の加算は、有声／無声情報が無声音を示す情報である場合だけなされる。乱数加算部２３の出力は増幅部２４に出力される。
【００１３】
増幅部２４は、乱数加算部２３から出力された信号に、合成パラメータ入力部２１に入力された正弦波成分情報の振幅パラメータａｋに基づく変数ａｍｐ（ａｋ）を乗算する部分である。
【００１４】
波形加算部２５は、増幅部２４から出力される複数の正弦波に対応する信号を加算して、各フレームの波形を生成する。
ピッチ付加部２６は、ピッチ情報に基づき、生成された各フレームの波形にピッチを付加する部分である。ピッチの付加は例えば図４に示すように、生成された波形（同図（ａ））をピッチ情報のピッチ周期で切り出し（同図（ｂ）参照）、これを繰り返し接続し、その上でピッチ周波数に対応する時間的な減衰エンベロープを付加する処理を行うことにより行われる（同図（ｃ）参照）。ピッチ付加部２６でのピッチ付加の処理は有声／無声情報が有声音を示す情報である場合だけなされる。ピッチ付加部２６から出力される信号は、波形出力部２７へ出力される。
波形出力部２７は、ピッチ付加部２６から出力される各フレームの合成波形を接続して、合成すべき音声信号として外部に向けて出力する部分である。
【００１５】
次に、この音声合成部２０における音声合成の手順を、図５に示すフローチャートに基づいて説明する。
ここでは、Ｆ個のフレームを時系列順に処理するものとし、１つのフレーム内では、Ｓ個のサンプル点において、合成パラメータ入力部２１より入力されるパラメータにより生成されるＮ個の正弦波成分の各サンプル点における波形値ｘｋを算出しその算出値を累積加算して合成波形を生成するものとする。
【００１６】
まず、Ｓ１において、処理済みのフレームの数を示す変数ｆの値を０に初期設定する（Ｓ１）。後述するように、この変数ｆは、１フレームの処理が終了する毎に１ずつ加算（インクリメント）される。
続くＳ２では、変数ｆがフレーム数Ｆより小さいか否かが判定する（Ｓ２）。ＹＥＳならＳ３へ移行し、ＮＯなら全フレームの処理が終了したとして合成波形を出力する。
【００１７】
Ｓ３では、１フレームの中で算出済みのサンプル点の数を示す変数ｉの値を０に初期設定する。後述するように、この変数ｉは、１サンプルの処理が終了する毎に１ずつ加算（インクリメント）される。
続くＳ４では、変数ｉがフレームのサンプル点数Ｓより小さいか否かが判定される。ＹＥＳならＳ５へ移行し、ＮＯなら１フレーム内の全サンプル点での波形値ｘｋの算出及び累計加算が終了したとして、変数ｆをインクリメントして次のフレームの処理に移行する（Ｓ１５）。
【００１８】
Ｓ５では、処理済みの正弦波の数を示す変数ｋの値を０に初期設定すると共に、算出済の正弦波の値の累積加算値を示す変数ｗａｖ［ｆ＊Ｓ＋ｉ］の値を０に初期設定する。
続くＳ６では、変数ｋが１フレームを表現する正弦波の数Ｎより小さいか否かが判定される。ＹＥＳであればＳ７へ移行し、ＮＯであれば１つのサンプル点において全正弦波成分の波形値ｘｋの算出及び累積加算が完了したとしてＳ１２に移行する。
【００１９】
Ｓ７では、合成パラメータ入力部２１より入力された正弦波成分情報の周波数パラメータωｋに基づき、ｋ番目の正弦波成分ｓｉｎωｋｔの波形値ｘｋが算出される。
続くＳ８では、合成パラメータ入力部２１より入力された有声／無声情報に基づき、処理中のフレームが無声音の部分に相当するか否かが判定される。
ＹＥＳの場合、Ｓ９へ移行し、乱数加算部２３により発生された乱数ＲｄをＳ７で生成した正弦波成分の波形値ｘｋに加算する。ＮＯの場合、Ｓ９を実行せずＳ１０へ移行する。
Ｓ１０では、算出した正弦波成分の波形値ｘｋに、合成パラメータ入力部２１より入力された正弦波成分情報の振幅パラメータａｋに基づき決定される変数ａｍｐ（ａｋ）を乗算し、続くＳ１１では、Ｓ１０で乗算を完了した各正弦波成分の波形値ｘｋを累積加算して、その値を変数ｗａｖ［ｆ＊Ｓ＋ｉ］として保存し、変数ｋをインクリメントする。このＳ６〜Ｓ１１の手順を、１サンプル内のＮ個の正弦波成分全てについて実行する。
【００２０】
１サンプル内のＮ個の正弦波成分の波形値ｘｋの加算が完了すると、続くＳ１２では、有声／無声情報に基づきこの処理中のフレームが有声音のフレームであるか否かが判定される。ＹＥＳであればＳ１３へ移行し、ピッチ検出部１２で検出され合成パラメータ入力部２１から入力されたピッチ情報のパラメータであるピッチＴに基づき、波形値ｘｋにピッチを付加する処理が行われ、Ｓ１４に移行する。ＮＯの場合には、Ｓ１３は実行せずにＳ１４に移行する。
Ｓ１４では、変数ｉをインクリメントしてＳ４へ戻る。このようにして、１つのサンプル点における処理（Ｓ４〜Ｓ１４）が完了するので、１フレーム中の全てのサンプル点の処理が完了するまでＳ４〜Ｓ１４の手順を繰り返す。１フレーム中の全てのサンプル点の処理が終了した場合には（Ｓ４のＮＯ）、Ｓ１５において変数ｆをインクリメントしてＳ２へ戻る。以下、変数ｆがフレーム数Ｆに達するまでＳ２〜Ｓ１５の手順を繰り返すことにより、全ての音声合成処理が完了する。
【００２１】
図６に、本実施の形態による合成音声の波形の一例（同図（ｃ））を、原音波形（同図（ａ））、通常のＣＳＭ法による合成波形（同図（ｂ））と共に示す。通常のＣＳＭ法による合成波形は（同図（ｂ））、原音波形（同図（ａ））とは異なり周期性を持った波形になってしまっているが、本実施の形態による合成波形（同図（ｃ））は、雑音性を持った波形になっており、聴感上より自然な音声合成が達成されていることが分かる。
図７は、本実施の形態による合成音声波形のスペクトルの一例（同図（ｃ））を、原音波形のスペクトル（同図（ａ））、通常のＣＳＭ法による合成波形のスペクトル（同図（ｂ））と共に示す。色の濃い部分は振幅が大きい周波数成分を、薄い部分は振幅が小さい周波数成分を示している。通常のＣＳＭ法による合成波形は（同図（ｂ））、原音波形（同図（ａ））とは異なり強い周波数成分と弱い周波数成分がフレーム周期ではっきり分かれているが、本実施の形態による合成波形（同図（ｃ））は、原音波形と同様に一様に広がったスペクトルとなっており、聴感上より自然な音声合成が達成されていることが分かる。
【００２２】
なお上記実施の形態では、音声合成部２０は合成に用いる情報を音声分析部１０から入力するようにしていたが、音声分析部１０から出力される情報をいったんデータベースに蓄積し、その後、音声合成部２０が合成に用いる情報をデータベースから合成の度に読み出すようにしてもよい。また、合成に用いる情報は、外部から制御手段や通信手段を用いて入力してもよい。
【００２３】
また、乱数加算部２３で各正弦波に加算する乱数は、ホワイトノイズに限らず、例えば正弦波の周波数の高低に対応した周波数特性を有するノイズであってもよい。また、上記の実施の形態の乱数加算部２３では、正弦波生成部２２で生成した各正弦波に対して乱数を加算するようにしていたが、波形加算部２５で各正弦波を加算してから乱数を加算してもよい。
【００２４】
【発明の効果】
以上説明したように、　本発明に係る音声分析合成装置、方法及びプログラムによれば、ＣＳＭ法において聴感上より自然な無声音を合成することができる。
【図面の簡単な説明】
【図１】本発明の実施の形態に係る音声分析部１０の構成を示す。
【図２】本発明の実施の形態に係る音声合成部２０の構成を示す。
【図３】図２に示す乱数加算部２３の作用を示す概念図である。
【図４】図２に示すピッチ付加部２６での処理の内容を示す概念図である。
【図５】図２に示す音声合成部２０の作用を示すフローチャートである。
【図６】図２に示す音声合成部２０による合成波形を、従来のＣＳＭ法による合成波形と比較して示している。
【図７】図２に示す音声合成部２０による合成波形のスペクトルを、従来のＣＳＭ法による合成波形のスペクトルと比較して示している。
【符号の説明】
１０・・・音声分析部、　２０・・・音声合成部、　１１・・・音声入力部、　１２・・・ピッチ検出部、　１３・・・正弦波成分検出部、　１４・・・有声／無声判定部、　１５・・・分析結果出力部、　２１・・・合成パラメータ入力部、　２２・・・正弦波成分生成部、　２３・・・乱数加算部、　２４・・・増幅部、　２５・・・波形加算部、　２６・・・ピッチ付加部、　２７・・・波形出力部
【図１】
2004077918.tif 000003
【図２】
2004077918.tif 000004
【図３】
2004077918.tif 000005
【図４】
2004077918.tif 000006
【図５】
2004077918.tif 000007
【図６】
2004077918.tif 000008
【図７】
2004077918.tif 000009