(57)【特許請求の範囲】
【請求項１】
原音声の各音声単位の音声波形を記憶装置に記憶しておき、与えられた音声単位系列に対応する音声波形を記憶装置から読み出して連続音声を合成する方法において、
記憶装置には、原音声の音声単位内の音声波形からピッチ周期に対応して得られた複数の波形のうちから選択された少なくとも１つの代表波形と、代表波形と代表波形以降の波形との誤差を修正するための少なくとも１つの誤差修正用波形と、誤差修正用波形を適応させる範囲を表す適応時間範囲とを音声単位毎に記憶しておき、
音声合成時には、与えられた音声単位系列の音声単位毎に、音声単位に対応した代表波形、誤差修正用波形および適応時間範囲を記憶装置から読み出し、
第１番目の誤差修正用波形に対応する適応時間範囲においては、与えられた音声単位系列の音声単位における当該適応時間範囲内のピッチ周期に同期した波形列を、代表波形からその波形までの時間に応じた係数を誤差修正用波形に乗じた波形と、代表波形とを合成することにより生成し、
１つの代表波形に対して２番目以降の誤差修正用波形が存在する場合は、第２番目以降の誤差修正用波形に対応する適応時間範囲においては、その１つ前の適応時間範囲の最後に生成された合成波形を当該適応時間範囲に対する代表波形とし、与えられた音声単位系列の音声単位における当該適応時間範囲内のピッチ周期に同期した波形列を、当該適応時間範囲に対する代表波形からその波形までの時間に応じた係数を当該適応時間範囲に対する誤差修正用波形に乗じた波形と、当該適応時間範囲に対する代表波形とを合成することにより生成し、
このようにして得られた各音声単位の音声波形を接続することによって音声を合成することを特徴とする音声合成方法。
【請求項２】
誤差修正用波形としては、原音声の音声単位内のピッチ周期に対応して得られる音声波形と、音声合成時に生成されるピッチ周期毎の合成波形との誤差の自乗和が最小になるような波形が用いられることを特徴とする請求項１に記載の音声合成方法。
【請求項３】
適応時間範囲候補を変化させて誤差修正用波形候補を求め、適応時間範囲候補毎に対応する誤差修正用波形候補を用いて、記憶装置に記憶されている原音声の音声単位内の音声波形と同じピッチ周期の音声を合成し、各適応時間範囲ごとに得られた合成波形と原音声の音声単位内の音声波形との誤差を算出し、各適応時間範囲ごとに算出された誤差を所定の閾値と比較することにより、誤差が閾値を越えない適応時間範囲候補およびそれに対応する誤差修正用波形候補を、適応時間範囲およびそれに対応する誤差修正用波形として選択することを特徴とする請求項２に記載の音声合成方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、任意のテキスト情報を合成音声で読み上げることのできる音声合成方式に関する。
【０００２】
【従来の技術】
任意のテキスト情報を品質の高い合成音声に変換するための音声合成方法として、波形編集合成方法がよく知られている。波形編集合成方法では、各音素に対応する音声波形をそのままの形で蓄積しておき、与えられた音声単位系列に対応する音声波形を与えられた音の高さに変換した後、これらを接続することによって合成音声が生成される。
【０００３】
声の高さの変換には、波形重畳法が良く用いられる。波形重畳方式では、有声部に対して１ピッチ毎に適当な窓幅の窓を乗じてピッチ波形を切り出し、合成時には与えられた声の高さに応じた合成ピッチ間隔だけずらしながら重ねることによって任意の声の高さの合成音声を生成される。
【０００４】
このような音声合成方法では、合成音声の品質を高めるためには、多くの音声単位を蓄積することが必要であるため、大容量の記憶装置が必要であった。
【０００５】
そこで、記憶装置の記憶容量を削減できる音声合成方法が開発されている（特許第２７０９１９８号公報参照）。つまり、音声波形蓄積過程においては、各音韻ごとに、音韻を構成する原音声波形列から異なる時点の２以上（たとえば３個）の代表波形を抽出して記憶装置に記憶する。
【０００６】
音声合成過程では、テキストから得られた音韻系列の各音韻毎にそれに対応する３個の代表波形が読み出される。そして、これらの３個の代表波形を用いて音声合成波形を生成する。音声合成波形を生成する際、２個の代表波形間の音声波形は、それらの代表波形を補間することにより生成される。しかしながら、この音声合成方法では、処理負荷が重いという問題がある。
【０００７】
【発明が解決しようとする課題】
本発明は、処理負荷の軽減化および圧縮歪の低減化が図れる音声合成方式を提供することを目的とする。
【０００８】
【課題を解決するための手段】
この発明による音声合成方法は、原音声の各音声単位の音声波形を記憶装置に記憶しておき、与えられた音声単位系列に対応する音声波形を記憶装置から読み出して連続音声を合成する方法において、記憶装置には、原音声の音声単位内の音声波形からピッチ周期に対応して得られた複数の波形のうちから選択された少なくとも１つの代表波形と、代表波形と代表波形以降の波形との誤差を修正するための少なくとも１つの誤差修正用波形と、誤差修正用波形を適応させる範囲を表す適応時間範囲とを音声単位毎に記憶しておき、音声合成時には、与えられた音声単位系列の音声単位毎に、音声単位に対応した代表波形、誤差修正用波形および適応時間範囲を記憶装置から読み出し、第１番目の誤差修正用波形に対応する適応時間範囲においては、与えられた音声単位系列の音声単位における当該適応時間範囲内のピッチ周期に同期した波形列を、代表波形からその波形までの時間に応じた係数を誤差修正用波形に乗じた波形と、代表波形とを合成することにより生成し、１つの代表波形に対して２番目以降の誤差修正用波形が存在する場合は、第２番目以降の誤差修正用波形に対応する適応時間範囲においては、その１つ前の適応時間範囲の最後に生成された合成波形を当該適応時間範囲に対する代表波形とし、与えられた音声単位系列の音声単位における当該適応時間範囲内のピッチ周期に同期した波形列を、当該適応時間範囲に対する代表波形からその波形までの時間に応じた係数を当該適応時間範囲に対する誤差修正用波形に乗じた波形と、当該適応時間範囲に対する代表波形とを合成することにより生成し、このようにして得られた各音声単位の音声波形を接続することによって音声を合成することを特徴とする。
【０００９】
誤差修正用波形としては、たとえば、原音声の音声単位内のピッチ周期に対応して得られる音声波形と、音声合成時に生成されるピッチ周期毎の合成波形との誤差の自乗和が最小になるような波形が用いられる。
【００１０】
適応時間範囲およびそれに対応する誤差修正用波形は、たとえば、次のようにして決定される。つまり、適応時間範囲候補を変化させて誤差修正用波形候補を求め、適応時間範囲候補毎に対応する誤差修正用波形候補を用いて、記憶装置に記憶されている原音声の音声単位内の音声波形と同じピッチ周期の音声を合成し、各適応時間範囲ごとに得られた合成波形と原音声の音声単位内の音声波形との誤差を算出し、各適応時間範囲ごとに算出された誤差を所定の閾値と比較することにより、誤差が閾値を越えない適応時間範囲候補およびそれに対応する誤差修正用波形候補を、適応時間範囲およびそれに対応する誤差修正用波形として選択する。
【００１１】
【発明の実施の形態】
以下、図面を参照して、この発明の実施の形態について説明する。
【００１２】
〔１〕音声合成装置の全体構成の説明
【００１３】
図１は、音声合成装置の構成を示している。
音声合成装置は、音声辞書作成部１０と音声合成部２０とを備えている。音声辞書作成部１０は、アナウンサー等が発声した音声波形を記録し音声合成部２０で読み出せる形に編集し蓄積するものである。音声合成部２０は、入力されたテキストを音声に変換して出力するものである。
【００１４】
〔２〕音声辞書作成部１０の構成および動作の説明
【００１５】
音声辞書作成部１０の構成および動作について説明する。音声単位切り出し部１３は、入力端子１１から入力された音声波形と、入力端子１３から入力された音韻ラベル情報とを用いて、入力音声波形を音声単位毎に分解し、音声単位毎の音声波形に音韻ラベルを付与する。
【００１６】
ピッチ波形切り出し部１４は、図２に示すように、各音声単位の音声波形を、各ピッチのパワーの最大となる位置もしくはその近傍のゼロクロス点を中心に、１ピッチから２ピッチの幅の窓をかけることにより、ピッチ周期毎の波形Ｘｔｉ（ｉ＝０，１…）に分割する。
【００１７】
誤差修正用波形演算部１５は、ピッチ周期毎の波形Ｘｔｉに基づいて、代表波形、誤差修正用波形および誤差修正用波形の適用時間範囲を求める。誤差修正用波形演算部１５の処理内容の詳細については、後述する。波形データ圧縮部１６は、代表波形および誤差修正用波形をＡＤＰＣＭ  などを用いて圧縮符号化し、音韻ラベル情報および誤差修正用波形の適用時間範囲とともに音声波形辞書部１７に蓄積する。
【００１８】
〔３〕音声合成部２０の構成および動作の説明
【００１９】
音声合成部２０の構成および動作について説明する。テキスト情報解析部２２は、入力端子２１から入力されたテキスト情報を形態素解析などにより分析し、テキスト情報に読みおよびアクセントを付与する。韻律生成部２３は、テキスト情報解析部２２によって付与された読みおよびアクセントから、ピッチパターン、音素の継続時間長、パワーなど韻律に関する情報を求める。
【００２０】
波形読み出し部２４は、読みに対応する音素の代表波形および誤差修正用波形を音声波形辞書部１７から読み出して復号化を行う。連続波形生成部２５は、韻律生成部２３によって求められた韻律に関する情報と、波形読み出し部２４によって生成された代表波形および誤差修正用波形とに基づいて、連続音声を生成して、出力端子２６に出力する。連続波形生成部２５の処理内容の詳細については、後述する。
【００２１】
〔４〕誤差修正用波形演算部１５の処理内容の説明
【００２２】
図３は、音声単位の音声波形からピッチ波形切り出し部１４によって切り出された図２に示すようなピッチ周期毎の波形Ｘｔｉ（ｉ＝０，１…）を、時間に沿って並べた図である。ここで時間ｔｉ（ｉ＝０，１…）は各ピッチ波形の中心位置が元の音声波形で存在していた時間である。また、ｎ（ｎ＝０，１…）は、ピッチ波形の位置を示している。またｗは振幅を示している。
【００２３】
図３のｎ＝ｍの平面は、各ピッチ波形のｍ番目の位置に立てた平面である。図４は、図３のｎ＝ｍの平面を２次元平面で表示した図である。つまり、図４の横軸は時間を表し、縦軸は振幅を表している。図４における丸印は、原音声から取り出した各ピッチ波形のｍ番目の振幅値であり、位置ｍと時間ｔｉとを用いてＸ（ｍ，ｔｉ）（ｉ＝０，１…）で表すことにする。
【００２４】
図４に示すように、ｔ０でのピッチ波形のｍ番目の振幅値に対応する点を第１頂点Ａとし、後述するようにして定められる第１適用時間範囲Ｄ１（ここではＤ１＝ｔ４−ｔ０とする）だけ第１頂点から横軸（時間軸）の＋方向に離れた点を第２頂点Ｂとし、後述するようにして求められる第１適用時間範囲Ｄ１に対する誤差修正値Ｘｄ（ｍ，Ｄ１）だけ第２頂点から縦軸（振幅軸）方向に離れた点を第３頂点Ｃとする直角三角形を想定する。
【００２５】
音声合成時においては、第１頂点Ａに対応する振幅値Ｘ（ｍ，ｔ０）と、誤差修正値Ｘｄ（ｍ，Ｄ１）とに基づいて、第１適用時間範囲Ｄ１内の第１頂点Ａに対応する時間ｔ０以外の時間ｔ１、ｔ２、ｔ３およびｔ４に対する振幅値が、上記直角三角形の斜辺上の点（×印）に対応する振幅値として算出される。
【００２６】
第１適用時間範囲Ｄ１においては、各位置ｎにおける第１頂点Ａの振幅値によって表される波形、つまり、ｔ０におけるピッチ波形Ｘ（ｎ，ｔｉ）が第１適用時間範囲Ｄ１に対する代表波形ＸｓＤ１とされる。また、第１適用時間範囲Ｄ１においては、各位置ｎにおける誤差修正値によって表される波形が第１適用時間範囲Ｄ１に対する誤差修正用波形ＸｄＤ１とされる。そして、音声合成時においては、第１適用時間範囲Ｄ１に対する代表波形ＸｓＤ１と誤差修正用波形ＸｄＤ１とによって、第１適用時間範囲Ｄ１内のｔ１〜ｔ４のピッチ波形が合成される。
【００２７】
また、第１適用時間範囲Ｄ１以降の適用時間範囲Ｄ２、Ｄ３…においても、同様にそれらの適用時間範囲内の各時間に対するピッチ波形が合成される。ただし、第２適用時間範囲Ｄ２以降においては、その前の適用時間範囲の最後の時間に対して合成されたピッチ波形が代表波形とされる。
【００２８】
以下、誤差修正用波形の求め方および適用時間範囲の決定方法について説明する。  図４の上記直角三角形の斜辺上におけるｔ１〜ｔ４に対応する点（×印）の振幅値Ｘ’（ｍ，ｔｉ）（ただし、ｉ＝１，２，３，４）は、次の数式１で表される。
【００２９】
【数１】
0003561654.tif 000002
【００３０】
Ｘ’（ｍ，ｔｉ）（ｉ＝１，２，３，４）は、第１適用時間範囲Ｄ１における時間ｔ１、ｔ２、ｔ３およびｔ４における合成波形Ｘ’ｔｉ（ｉ＝１，２，３，４）のｍ番目の値である。Ｘｓ（ｍ，Ｄ１）は、第１適用時間範囲Ｄ１における代表波形ＸｓＤ１のｍ番目の値である。Ｘｄ（ｍ，Ｄ１）は、第１適用時間範囲Ｄ１における誤差修正用波形ＸｄＤ１のｍ番目の値である。
【００３１】
数式１を、全ての位置ｎについて適用することによって、ｔ１、ｔ２、ｔ３およびｔ４に対する合成ピッチ波形Ｘ’ｔｉ（ｉ＝１，２，３，４）が求められる。図４において、丸印と×印の距離が誤差となる。したがって、この誤差の自乗和が最小となるような誤差修正用波形ＸｄＤ１を、最小自乗法により求めることにより誤差の少ない合成ピッチ波形が再構成されることになる。
【００３２】
誤差修正用波形演算部１５は、誤差の自乗和が最小となるような誤差修正用波形値を、各位置ｎ毎に計算する。
【００３３】
第１適用時間範囲Ｄ１の位置ｍに対する誤差修正用波形値Ｘｄ（ｍ，Ｄ１）は、次の数式２によって求められる。
【００３４】
【数２】
0003561654.tif 000003
【００３５】
適用時間範囲Ｄ１の決定方法を以下に述べる。まず、適用時間範囲Ｄ１の最小値を予め定めておく。適用時間範囲Ｄ１の最小値としては、（ｔ２−ｔ０）以上の範囲に設定される。ここでは、適用時間範囲Ｄ１の最小値としては、（ｔ３−ｔ０）に定められているものとする。
【００３６】
まず、適用時間範囲Ｄ１を予め定められた最小値に設定する。つまり、Ｄ１＝ｔ３−ｔ０とする。上記数式１および数式２を用いて全ての位置ｎおよび現在設定したＤ１で規定される合成ピッチ波形を求めるｉの範囲（ｉ＝１，２，３）に対して、誤差修正用波形ＸｄＤ１および合成波形Ｘ’ｔｉを求める。そして、次の数式３で示すように、合成波形Ｘ’ｔｉと原音声の波形Ｘｔｉとの誤差の２乗和の平均Ｅを計算し、予め定められた閾値とを比較する。合成波形Ｘ’ｔｉと原音声の波形Ｘｔｉとの誤差の２乗和の平均Ｅが閾値より小さければ、範囲Ｄ１をＤ１＝ｔ４−ｔ０というように１段階広げて、同様の処理を再度行う。
【００３７】
【数３】
0003561654.tif 000004
【００３８】
このようにして、ｔｉ−ｔ０のｉの値を順次増加させながら合成波形Ｘ’ｔｉと原音声の波形Ｘｔｉとの誤差の２乗和の平均Ｅと閾値との比較を行い、合成波形Ｘ’ｔｉと原音声の波形Ｘｔｉとの誤差の２乗和の平均Ｅが閾値より大きくなる１段階前の適用時間範囲Ｄ１の値およびその範囲に対応する誤差修正用波形ＸｄＤ１を採用する。
【００３９】
なお、第２適用時間範囲Ｄ２における誤差修正用波形およびその適用時間範囲は、図４に示すように、第１適用時間範囲Ｄ１の最後の時点における合成ピッチ波形を代表波形として、第１適用時間範囲Ｄ１と同様な手法で求められる。つまり、範囲Ｄ１がｔ４−ｔ０である場合には、ｔ４における合成ピッチ波形Ｘ’ｔ４を、第２適用時間範囲の代表波形ＸｓＴ２として、第２適用時間範囲Ｄ２における誤差修正用波形およびその適用時間範囲が求められる。
【００４０】
〔５〕連続波形生成部２５の処理内容の説明
【００４１】
代表波形と誤差修正用波形から合成音声を生成する連続波形生成部２５の処理内容について説明する。
【００４２】
図５に合成波形の生成例を示す。まず、韻律生成部２３で生成されたピッチパターンからピッチ間隔Ｐ１１，Ｐ１２…を計算する。そして、第１適用時間範囲Ｄ１に対する代表波形ＸｓＤ１と誤差修正用波形ＸｄＤ１とを用いて、第１適用時間範囲Ｄ１内の各時間に対応するピッチ波形を合成する。
【００４３】
つまり、第１適用時間範囲Ｄ１内の先頭の合成波形Ｘ’ｔ（Ｐ１０）には代表波形ＸｓＴ１を用いる。先頭からＰ１１進んだ位置での合成波形Ｘ’ｔ（Ｐ１１）を、次の数式４によって求める。
【００４４】
【数４】
0003561654.tif 000005
【００４５】
先頭から（Ｐ１１＋Ｐ１２）進んだ位置での合成波形Ｘ’ｔ（Ｐ１２）を、次の数式５によって求める。
【００４６】
【数５】
0003561654.tif 000006
【００４７】
このようにして、第１適用時間範囲Ｄ１内の各時間に対応するピッチ波形が合成されると、第１適用時間範囲Ｄ１内の最後の時間に対応する合成波形を第２適用時間範囲Ｄ２に対する代表波形ＸｓＤ２とする。そして、第２適用時間範囲Ｄ２に対する代表波形ＸｓＤ２と誤差修正用波形ＸｄＤ２とを用いて、第２適用時間範囲Ｄ２内の各時間に対応するピッチ波形を合成する。
【００４８】
このようにして計算された合成波形をピッチ間隔だけずらして加えあわせることにより合成音声が生成される。パワーの調節は合成波形全体に係数を乗ずることによって行われる。
【００４９】
音素の継続時間長の調節は、Ｄ１、Ｄ２…の長さを変化することにより行われる。たとえば音素の長さを１．５倍にする時は、Ｄ１、Ｄ２の長さを１．５倍にする。
【００５０】
上記実施の形態では、１つのピッチ波形の生成のために必要な演算は、誤差修正用波形と係数とを乗算するための１回の乗算と、その乗算値と代表波形とを合成するための１回の足し算だけであるため、処理負荷が軽減する。
【００５１】
また、誤差修正用波形としては、原音声の音声単位内のピッチ周期に対応して得られる音声波形と、音声合成時に生成されるピッチ周期毎の合成波形との誤差の自乗和が最小になるような波形が用いられているので、合成された音声の歪が少なくなる。
【００５２】
【発明の効果】
この発明によれば、処理負荷の軽減化および圧縮歪の低減化が図れるようになる。
【図面の簡単な説明】
【図１】音声合成装置の構成を示すブロック図である。
【図２】ピッチ波形切り出し部１４によって各音声単位の音声波形がピッチ周期毎の波形Ｘｔｉ（ｉ＝０，１…）に分割される様子を示す模式図である。
【図３】音声単位の音声波形からピッチ波形切り出し部１４によって切り出されたピッチ周期毎の波形Ｘｔｉ（ｉ＝０，１…）を、時間に沿って並べた模式図である。
【図４】図３のｎ＝ｍの平面を２次元平面で表示した模式図である。
【図５】連続波形生成部２５による合成波形の生成方法を説明するための模式図である。
【符号の説明】
１０  音声辞書作成部
１３  音声単位切り出し部
１４  ピッチ波形切り出し部
１５  誤差修正用波形計算部
１６  波形圧縮部
１７  音声波形辞書
２０  音声合成部
２２  テキスト解析部
２３  韻律生成部
２４  波形読み出し部
２５  連続波形生成部
【図１】
0003561654.tif 000007
【図２】
0003561654.tif 000008
【図３】
0003561654.tif 000009
【図４】
0003561654.tif 000010
【図５】
0003561654.tif 000011