(57)【特許請求の範囲】
【請求項１】
音声合成に必要となる合成パラメータを入力として、蓄積された音声素片データから前記合成パラメータに応じた音声素片データの組み合わせを選択して合成することによって、前記合成パラメータに対する音声波形を生成・出力する音声合成システムであって、
前記音声素片データを格納する素片蓄積部と、
任意の音声単位列に対し、前記素片蓄積部に蓄積された音声素片データを用いて構成される音声素片データの組み合わせおよび前記組み合わせが最適であることを示す情報、または不適切であることを示す情報を含む適否情報を備える素片選択情報を格納する素片選択情報蓄積部と、
入力される合成パラメータに含まれる合成音声単位列と一致する音声単位列であってその音声素片データの組み合わせが最適であるような素片選択情報が前記素片選択情報蓄積部に含まれている場合、該当する音声素片データの組み合わせを選択し、入力される合成パラメータに含まれる合成音声単位列と一致しかつ最適な音声素片データの組み合わせとなる素片選択情報が前記素片選択情報蓄積部に含まれていない場合、所定の選択手段を用いて前記素片蓄積部から音声素片データの組み合わせの候補を作成する素片選択部と、
前記素片選択部で作成された音声素片データの組み合わせの候補に対するユーザの適否判定を受け付ける合否判定受付部と、
前記合否判定受付部で受け付けたユーザからの適否判定に基づいて前記素片選択部で作成された音声素片データの組み合わせとその適否情報とを含む素片選択情報を前記素片選択情報蓄積部に格納する素片選択情報編集部と、
前記素片選択部で選択された音声素片データの組み合わせに基づいて音声波形データを生成・出力する音声合成部と、
を備える音声合成システム。
【請求項２】
音声合成に必要となる合成パラメータを入力として、蓄積された音声素片データから前記合成パラメータに応じた音声素片データの組み合わせを選択して合成することによって、前記合成パラメータに対する音声波形を生成する音声合成システムが実行する音声合成方法であって、
音声素片データを格納する段階と、
任意の音声単位列に対し、前記蓄積された音声素片データを用いて構成される音声素片データの組み合わせおよび前記組み合わせが最適であることを示す情報、または不適切であることを示す情報を含む適否情報を備える素片選択情報を格納する段階と、
入力される合成パラメータに含まれる合成音声単位列と一致する音声単位列であってその音声素片データの組み合わせが最適であるような素片選択情報が格納されている素片選択情報に含まれている場合、該当する音声素片データの組み合わせを選択し、入力される合成パラメータに含まれる合成音声単位列と一致しかつ最適な音声素片データの組み合わせとなる素片選択情報が格納されている素片選択情報に含まれていない場合、所定の選択手段を用いて音声素片データの組み合わせの候補を作成する段階と、
任意の合成音声単位列に対し、蓄積された音声素片データを用いて構成される音声素片データの組み合わせの候補を作成する段階と、
前記作成された音声素片データの組み合わせに対してユーザの適否判定を受け付ける段階と、
前記ユーザの適否判定に基づいて前記音声素片データの組み合わせおよびその適否情報を素片選択情報として格納する段階と、
前記音声素片データの組み合わせに基づいて音声波形データを生成する段階と、
を備える音声合成方法。
【請求項３】
音声合成に必要となる合成パラメータを入力として、蓄積された音声素片データから前記合成パラメータに応じた音声素片データの組み合わせを選択して合成することによって、前記合成パラメータに対する音声波形を生成する音声合成システムが実行する音声合成方法のプログラムであって、
音声素片データを格納するステップと、
任意の音声単位列に対し、前記蓄積された音声素片データを用いて構成される音声素片データの組み合わせおよび前記組み合わせが最適であることを示す情報、または不適切であることを示す情報を含む適否情報を備える素片選択情報を格納するステップと、
入力される合成パラメータに含まれる合成音声単位列と一致する音声単位列であってその音声素片データの組み合わせが最適であるような素片選択情報が格納されている素片選択情報に含まれている場合、該当する音声素片データの組み合わせを選択し、入力される合成パラメータに含まれる合成音声単位列と一致しかつ最適な音声素片データの組み合わせとなる素片選択情報が格納されている素片選択情報に含まれていない場合、所定の選択手段を用いて音声素片データの組み合わせの候補を作成する段階と、
任意の合成音声単位列に対し、蓄積された音声素片データを用いて構成される音声素片データの組み合わせの候補を作成する段階と、
前記作成された音声素片データの組み合わせに対してユーザの適否判定を受け付ける段階と、
前記ユーザの適否判定に基づいて前記音声素片データの組み合わせおよびその適否情報を素片選択情報として格納する段階と、
前記音声素片データの組み合わせに基づいて音声波形データを生成するステップと、
を備える音声合成方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、蓄積された音声素片データから合成するパラメータに基づいて最適な音声素片データの組み合わせを検索し、これを連結することによって音声波形を生成する音声合成システムに関する。
【背景技術】
【０００２】
音声合成技術は、音声ポータルサービスやカーナビゲーションシステムなどの分野で実用化が進んでいる。音声合成技術では、音声波形やこれをパラメータ化した音声素片データと呼ばれるデータを蓄積しておき、これらを適宜連結して加工し所望の合成音声を取得するようにしているのが一般的である。この連結を行う単位を合成単位と呼び、古くからの音声合成技術では、この合成単位として固定長の合成単位を使用する方法が主である。
【０００３】
たとえば、音節を合成単位とする場合には、「山と」という合成文に対する合成単位は、「ヤ」、「マ」、「ト」となる。また、母音−子音−母音の連続（一般にVCVと略す）を合成単位とする場合には、母音中心部で連結することを想定しており、「山と（yamato）」に対する合成単位は、「Qya」、「ama」、「ato」、「oQ」となる。ただし、「Q」は無音であることを示す。
【０００４】
これに対して現在では、人が発音した文章や単語などの音声データを多数蓄積しておき、合成する入力文章に応じてできるだけ長い区間が一致する音声素片データ、また連結したときに不連続が生じ難い音声素片データを検索して、これを連結する方法が主流となっている（たとえば、特許文献１参照）。この場合、合成単位は入力文章と蓄積された音声データに応じて、適切なものが動的に決定されることとなる。このような方式は総称してコーパスベース方式と呼ばれている。
【０００５】
同じ音節であっても、前後の音によってその音響的な性質が異なってくるため、ある音を合成する際に、より広い範囲で前後の音が一致する音声素片データを使用する方が、より自然な合成音声を生成することができる。また、合成単位間の連結を滑らかに接続するために補間区間を設けるのが一般的であるが、このような補間区間では、本来存在しない音声素片データを人工的に作成することから、音質劣化が生じることとなる。合成単位を長くすれば、より適切な音声素片を使用できるようになり、音質劣化の原因となる補間区間を縮小することができ、合成音声の音質向上を図ることが可能となる。しかしながら、長い合成単位のものを全て用意することはデータ数が膨大になることから合成単位を固定長にすることは困難であり、前述したようなコーパスベース方式が用いられることが一般的である。
【０００６】
図１に従来例の構成を示す。
素片蓄積部１３には、人間が発声した文章や単語などの音声データが、音声波形あるいはこれをパラメータ化した形式の音声素片データとして多数格納されている。また、素片蓄積部１３には、蓄積されている音声素片データを検索するためのインデックス情報も格納されている。
【０００７】
テキストデータなどの文字情報を解析した結果得られる音声単位列（合成音素列）、ピッチ周波数パターン、各音声単位の時間長（音素時間長）、パワー変動パターンなどの合成パラメータが、素片選択部１１に入力される。素片選択部１１では、入力される合成パラメータに基づいて、素片蓄積部１３から最適となる音声素片データの組み合わせを選択する。音声合成部１２では、素片選択部１１で選択された音声素片データの組み合わせを使用して合成パラメータに対応する音声波形を生成・出力する。
【特許文献１】特開平9-123822号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
前述したようなコーパスベース方式においては、素片蓄積部１３に格納されている音声素片データから最適な音声素片データの組み合わせを選択するための評価関数を設定している。
たとえば、合成音素列「山と（yamato）」に対して、これを満足する音声素片データの組み合わせとして、以下の２種類のものが選択することをできたと仮定する。
（１）「yama」＋「to」
（２）「ya」＋「mato」
この２種類の音声素片データの組み合わせにおいて、（１）は４音素＋２音素の組み合わせであり、（２）は２音素＋４音素の組み合わせとなっており、合成単位の長さという点では同等である。しかし、（１）の場合、合成単位同士の接続点は、［a］-［t］間であり、（２）の場合、合成単位同士の接続点は、［a］-［m］間である。無声破裂音である［t］には無音部分が存在し、このような無声破裂音を接続点にすると、合成音声の不連続感が生じ難くなる。したがって、この場合、合成単位の接続点に［t］が存在する（１）の組み合わせが適していることとなる。
【０００９】
（１）の「yama」＋「to」の音声素片の組み合わせを選択するとき、素片蓄積部１３に複数個の「to」の音声素片が存在する場合、直前に「a」の音声素片が存在するようなものを選択する方が合成する音素列に適している。
選択された各音声素片データは、入力された合成パラメータに基づいたピッチ周波数パターン、音素時間長を実現する必要がある。ピッチ周波数変換や音素時間長変換を行う場合、一般的にその変換量が大きいほど音質劣化を生じることから、素片蓄積部１３から選択される音声素片データは、ターゲットとするピッチ周波数や音素時間長に近い音声素片データを選択することが好ましい。
【００１０】
このように、選択される音声素片データの長さや音素の性質、前後の音素環境、ピッチ周波数、音素時間長など複数の要素を加味して評価関数は作成されている。しかしながら、すべての合成文字列に適した評価関数を作成することは困難であり、その結果、複数個存在する音声素片データの組み合わせの候補から、必ずしも最適なものが選択されない場合が生じ、合成音声の音質劣化の原因となっている。
【００１１】
本発明では、合成音声単位列に対して最適な音声素片データの組み合わせを選択することで、音質を向上させることが可能な音声合成システムの提供を目的とする。
【課題を解決するための手段】
【００１２】
本発明の請求項１に係る音声合成システムは、音声合成に必要となる合成パラメータを入力として、蓄積された音声素片データから合成パラメータに応じた音声素片データの組み合わせを選択して合成することによって、合成パラメータに対する音声波形を生成・出力する音声合成システムであって、音声素片データを格納する素片蓄積部と、任意の音声単位列に対し、素片蓄積部に蓄積された音声素片データを用いて構成される音声素片データの組み合わせおよびその組み合わせが最適であることを示す情報、または不適切であることを示す情報を含む適否情報を備える素片選択情報を格納する素片選択情報蓄積部と、入力される合成パラメータに含まれる合成音声単位列と一致する音声単位列であってその音声素片データの組み合わせが最適であるような素片選択情報が素片選択情報蓄積部に含まれている場合、該当する音声素片データの組み合わせを選択し、入力される合成パラメータに含まれる合成音声単位列と一致しかつ最適な音声素片データの組み合わせとなる素片選択情報が素片選択情報蓄積部に含まれていない場合、所定の選択手段を用いて素片蓄積部から音声素片データの組み合わせの候補を作成する素片選択部と、素片選択部で作成された音声素片データの組み合わせの候補に対するユーザの適否判定を受け付ける合否判定受付部と、合否判定受付部で受け付けたユーザからの適否判定に基づいて素片選択部で作成された音声素片データの組み合わせとその適否情報とを含む素片選択情報を素片選択情報蓄積部に格納する素片選択情報編集部と、素片選択部で選択された音声素片データの組み合わせに基づいて音声波形データを生成・出力する音声合成部とを備える音声合成システムとを備える。
【００１３】
この場合、合成音声単位列ごとに最適となる音声素片データの組み合わせを素片選択情報として蓄積することにより、素片蓄積部に格納される音声素片データのデータ量を大きくすることなく、音質の良好な合成音声を生成することが可能となる。
また、素片選択情報蓄積部に格納された素片選択情報に基づいて選択される音声素片データの組み合わせにより、該当する合成音声単位列に対して音質の良好な合成音声を生成することが可能になり、素片選択情報蓄積部に格納されていない合成音声単位列に対しては、音声素片データの組み合わせの候補を作成してユーザに最適なものを選択させるように構成できる。
【００１４】
さらに、素片選択部で生成された音声素片データの組み合わせの候補に対してユーザが適切であるか否かの判定を行うように構成することが可能となり、ユーザの好みに応じた合成音声を生成することが可能となる。
本発明の請求項２に係る音声合成方法は、音声合成に必要となる合成パラメータを入力として、蓄積された音声素片データから前記合成パラメータに応じた音声素片データの組み合わせを選択して合成することによって、合成パラメータに対する音声波形を生成する音声合成システムが実行する音声合成方法であって、音声素片データを格納する段階と、任意の音声単位列に対し、蓄積された音声素片データを用いて構成される音声素片データの組み合わせおよびその組み合わせが最適であることを示す情報、または不適切であることを示す情報を含む適否情報を備える素片選択情報を格納する段階と、入力される合成パラメータに含まれる合成音声単位列と一致する音声単位列であってその音声素片データの組み合わせが最適であるような素片選択情報が格納されている素片選択情報に含まれている場合、該当する音声素片データの組み合わせを選択し、入力される合成パラメータに含まれる合成音声単位列と一致しかつ最適な音声素片データの組み合わせとなる素片選択情報が格納されている素片選択情報に含まれていない場合、所定の選択手段を用いて音声素片データの組み合わせの候補を作成する段階と、任意の合成音声単位列に対し、蓄積された音声素片データを用いて構成される音声素片データの組み合わせの候補を作成する段階と、作成された音声素片データの組み合わせに対してユーザの適否判定を受け付ける段階と、ユーザの適否判定に基づいて音声素片データの組み合わせおよびその適否情報を素片選択情報として格納する段階と、音声素片データの組み合わせに基づいて音声波形データを生成する段階とを備える。
【００１５】
この場合、音声単位列ごとに最適となる音声素片データの組み合わせを素片選択情報として蓄積することにより、格納されている音声素片データのデータ量を大きくすることなく、音質の良好な合成音声を生成することが可能となる。
また、格納されている素片選択情報に基づいて選択される音声素片データの組み合わせにより、該当する合成音声単位列に対して音質の良好な合成音声を生成することが可能になり、格納されていない音声単位列に対しては、音声素片データの組み合わせの候補を作成してユーザに最適なものを選択させるように構成できる。
【００１６】
本発明の請求項３に係るプログラムは、音声合成に必要となる合成パラメータを入力として、蓄積された音声素片データから合成パラメータに応じた音声素片データの組み合わせを選択して合成することによって、合成パラメータに対する音声波形を生成する音声合成システムが実行する音声合成方法のプログラムであって、音声素片データを格納するステップと、任意の音声単位列に対し、蓄積された音声素片データを用いて構成される音声素片データの組み合わせおよびその組み合わせが最適であることを示す情報、または不適切であることを示す情報を含む適否情報を備える素片選択情報を格納するステップと、入力される合成パラメータに含まれる合成音声単位列と一致する音声単位列であってその音声素片データの組み合わせが最適であるような素片選択情報が格納されている素片選択情報に含まれている場合、該当する音声素片データの組み合わせを選択し、入力される合成パラメータに含まれる合成音声単位列と一致しかつ最適な音声素片データの組み合わせとなる素片選択情報が格納されている素片選択情報に含まれていない場合、所定の選択手段を用いて音声素片データの組み合わせの候補を作成する段階と、任意の合成音声単位列に対し、蓄積された音声素片データを用いて構成される音声素片データの組み合わせの候補を作成する段階と、作成された音声素片データの組み合わせに対してユーザの適否判定を受け付ける段階と、ユーザの適否判定に基づいて音声素片データの組み合わせおよびその適否情報を素片選択情報として格納する段階と、音声素片データの組み合わせに基づいて音声波形データを生成するステップとを備える音声合成方法をコンピュータに実行させるためのプログラムである。
【００１７】
この場合、音声単位列ごとに最適となる音声素片データの組み合わせを素片選択情報として蓄積することにより、格納されている音声素片データのデータ量を大きくすることなく、音質の良好な合成音声を生成することが可能となり、このプログラムを用いて通常のパーソナルコンピュータやその他のコンピュータシステムを音声合成システムとして機能させることが可能となる。
【発明の効果】
【００１８】
本発明によれば、人間が発声した文章や単語の音声データから音声素片データを選択し、これを接続する方式の音声合成システムにおいて、音声素片データのデータ量の拡大を抑制し、合成音声の品質向上を図ることができる。
また、ユーザがシステムを使用しながら最適の合成音声を作成する枠組みを提供することができ、システム開発者にとっても、あらゆる場合にあてはまるような評価関数のチューニングを検討する必要がなくなり、開発やメンテナンスの省力化を図ることができる。
【発明を実施するための最良の形態】
【００１９】
〈概要構成〉
（１）本発明の第１の原理に基づく概略構成図を図２に示す。
ここでは、人間が発声した文章や単語などの音声データに基づいて音声波形あるいはこれをパラメータ化した形式の音声素片データが多数格納された素片蓄積部１３と、入力される合成パラメータに基づいて素片蓄積部１３から音声素片データの組み合わせを選択する素片選択部２１と、素片選択部２１で選択された音声素片データの組み合わせを使用して合成パラメータに対応する音声波形を生成・出力する音声合成部１２とを備えている。
【００２０】
また、任意の音素列に対し、素片蓄積部１３に格納されている音声素片データの組み合わせとその適否情報とを含む素片選択情報を格納する素片選択情報蓄積部２４を備えている。
下記は適切な素片選択情報のみ存在する場合の説明である。
素片選択部２１は、入力される合成パラメータに含まれる合成音素列に基づいて、素片選択情報蓄積部２４に同一の音素列の素片選択情報が存在するか否かの検索を実行し、同一の音素列の素片選択情報がある場合にはその音声素片データの組み合わせを選択する。素片選択情報蓄積部２４に同一の合成音素列の素片選択情報が含まれていない場合には、従来通りに素片蓄積部１３から評価関数を用いて最適となる音声素片データの組み合わせを選択する。不適切な素片選択情報がある場合には、評価関数で不適切でない音声素片の組み合わせの中から最適なものを選択する。
【００２１】
入力された合成パラメータに含まれる合成音素列と一部が一致する音素列の素片選択情報が素片選択情報蓄積部２４に格納されている場合には、素片選択部２１はその一致する部分についてのみ素片選択情報として格納されている音声素片データの組み合わせを使用し、その他の部分については、従来通りに素片蓄積部１３から所定の選択手段を用いて最適な音声素片データの組み合わせを選択する。所定の選択手段には、評価関数や評価テーブルなどが考えられるが、特に限定するものではない。
【００２２】
素片選択情報蓄積部２４に格納されている素片選択情報は、たとえば図５に示すような構成となっている。
図５上部は、素片蓄積部１３に蓄積されている音声素片データを示しており、Ｘ（行）が文章番号、Ｙ（列）が音素番号を示すものとする。たとえば、文章番号１（Ｘ＝１）は、「山梨と静岡・・・」という文章の音声であることを示し、それを構成する音素列「Q y a m a n a sh i t o Q sh i z u・・・」を先頭から順にＹ＝１〜ｎで示している。ここで、「Q」は、無音を表している。
【００２３】
素片選択情報蓄積部２４に格納されている素片選択情報は、図５下部に示されるように、任意の合成音素列に対して最適となる音声素片データの組み合わせを、素片蓄積部１３に蓄積されている音声素片データのＸＹの値を用いて示している。たとえば、１行目には、「Q y a m a t o Q（山と）」という合成音素列を構成するための音声素片データの組み合わせとして、素片蓄積部１３中の［X=1,Y=2］［X=1,Y=3］［X=1,Y=4］［X=1,Y=5］［X=3,Y=15］［X=3,Y=16］を用いることが最適であることを示している。また、２行目には、「Q y a m a t o w A Q（山とは）」という合成音素列を構成するための音声素片データの組み合わせとして、素片蓄積部１３中の［X=1,Y=2］［X=1,Y=3］［X=1,Y=4］［X=1,Y=5］［X=2,Y=8］［X=2,Y=9］［X=2,Y=10］［X=2,Y=11］を使用するのが最適であることを示している。
【００２４】
図５に示す１行目および２行目の合成音素列については、「wA（は）」の有無が異なるだけであるが、素片蓄積部１３の文章番号２中には「t o w a（とは）」という連続する音素列が存在することから、「t o（と）」の部分についても最適とされる音声素片データが変化していることがわかる。
また、素片選択情報として、合成音素列に対して不適切であるような音声素片データの組み合わせを登録しておき、他の音声素片データの組み合わせを選択すべきであることを示すように構成することができる。たとえば、図５の３行目に示すように、「Q y a m a t o w A Q（山とは）」という合成音素列を構成するための音声素片データの組み合わせとして、素片蓄積部１３中の［X=1,Y=2］［X=1,Y=3］［X=1,Y=4］［X=1,Y=5］［X=3,Y=15］［X=3,Y=16］［X=2,Y=10］［X=2,Y=11］を使用することが不適切であることを登録しておく。
【００２５】
合成音素列の他に、平均ピッチ周波数、平均音節時間長、平均パワーなどの条件を素片選択情報として登録しておき、入力された合成パラメータがこの条件に合致する場合にその音声素片データの組み合わせを用いるように構成することができる。たとえば、図６に示すように、「Q y a m a t o Q（山と）」という合成音素列であって、平均ピッチ周波数が200Hz、平均音節時間長が120msec、平均パワーが-20dBであるような合成パラメータに対しては、素片蓄積部１３中の［X=1,Y=2］［X=1,Y=3］［X=1,Y=4］［X=1,Y=5］［X=3,Y=15］［X=3,Y=16］という音声素片データの組み合わせを用いることが最適であることを素片選択情報蓄積部２４に登録しておく。この場合、入力された合成パラメータが素片選択情報のこれらの条件に完全に一致していなくても、多少の相違であれば音質劣化も許容範囲であることから、所定のしきい値を設定して、著しい隔たりがある場合についてのみこの音声素片データの組み合わせを使用しないように設定することも可能である。
【００２６】
ある合成音素列に対して最適な音声素片データが選択されるように評価関数をチューニングする場合、他の合成音素列に対する音声素片データを選択する際に悪影響を及ぼすおそれがあるが、本発明では、特定の合成音素列に対してのみ有効な素片選択情報を登録しているため、他の合成音素列に対する音声素片データの組み合わせを選択する際の影響がない。
（２）本発明の第２の原理に基づく概略構成図を図３に示す。
【００２７】
第１の原理に基づく概略構成図である図２と比較すると、音声合成部１２から出力された合成音声に対するユーザの適否判定を受け付ける合否判定入力部２７と、合否判定入力部２７で受け付けたユーザの適否判定に基づいて音声素片データの組み合わせについての素片選択情報を素片選択情報蓄積部２４に格納する素片選択情報編集部２６とがさらに加わっている。
【００２８】
たとえば、入力された合成パラメータに基づいて音声素片データの組み合わせを選択する際に、合成パラメータ中に含まれる合成音素列と一致する素片選択情報がない場合には、素片選択部２１では、素片蓄積部１３内の音声素片データから組み合わせの候補を作成する。ユーザは、音声合成部１２を介して出力される合成音声を聞いて、合否判定入力部２７を介して適切であるか否かの適否判定を入力する。素片選択情報編集部２６では、合否判定入力部２７から入力されたユーザによる適否判定に基づいて、素片選択情報蓄積部２４内の素片選択情報を追加する。
【００２９】
このような構成とすることによって、素片選択部２１で選択される音声素片データの組み合わせが、ユーザの設定に適合させることができ、より音質の良好な合成音声システムを構築することが可能となる。
〔音声合成システム例〕
本発明の１実施形態が採用される音声合成システムの制御ブロック図を図４に示す。
【００３０】
この音声合成システムはパーソナルコンピュータ、その他のコンピュータシステム上で具現化されるものであり、CPU、ROM、RAM、各種インターフェイスなどを含む制御部３１により各機能部の制御が行われる。
多数の音声素片データが格納される素片蓄積部１３および素片選択情報が格納される素片選択情報蓄積部２４は、コンピュータシステムに内蔵または外付けで構成されるハードディスク（HDD）、光磁気ディスク（MO）、その他記録媒体、ネットワークを介して接続される他のサーバが管理する記録媒体などの所定の領域に設定することができる。
【００３１】
言語解析部３３、韻律生成部３４、素片選択部２１、素片選択情報編集部２６などは、コンピュータのメモリ上で展開されるアプリケーションソフトにより各機能部として実現することができる。
また、ユーザインターフェイス部４０として、合成文字列入力部３２、音声合成部１２、合否判定入力部２７を備えている。合成文字列入力部３２は、文字列情報の入力を受け付けるものであり、たとえば、キーボード、OCR（Optical Character Reader）、その他の入力デバイスから入力されるテキストデータや記録媒体上に記録されているテキストデータの入力を受け付けるものである。音声合成部１２は、生成された音声波形を出力するものであり、種々のスピーカおよび音声出力用のソフトウェアによる構成を想定することができる。合否判定入力部２７は、音声素片データの組み合わせに対するユーザの適否判定入力を受け付けるものであり、モニタ上に適否選択項目を表示し、キーボード、マウス、その他のポインティングデバイスにより選択される適否情報を取得するように構成できる。
【００３２】
言語解析部３３は、合成文字列入力部３２から入力された漢字かなテキストに対して、読みやアクセントを付与する処理を実行するものであり、形態素解析や係り受け解析などにより合成する音声単位列（合成音素列）を生成する。
韻律生成部３４は、合成音素列に対して合成音声を生成する際のイントネーションやリズムを生成するものであり、たとえば、ピッチ周波数パターン、各音声単位の時間長、パワー変動パターンなどを作成する。
【００３３】
素片選択部２１は、前述の概略構成でも説明したように、合成音素列、ピッチ周波数パターン、各音声単位時間長、パワー変動パターンなどの合成パラメータに適した音声素片データを素片蓄積部１３から選択する。このとき、合成パラメータに適した音声素片データの組み合わせが素片選択情報蓄積部２４に格納されている場合に、この音声素片データの組み合わせを優先して選択するように構成される。合成音素列に対応する適切な素片選択情報が素片選択情報蓄積部２４に格納されていない場合には、素片選択部２１は、評価関数によって動的に最適と思われる音声素片データの組み合わせを選択する。ただし、ここでは、素片選択情報蓄積部２４に不適切な素片選択情報が登録されていない場合を想定している。
【００３４】
音声合成部１２では、素片選択部２１で選択された音声素片データの組み合わせに基づいて音声波形を生成し出力を行う。
素片選択部２１が評価関数に基づいて選択した音声素片データの組み合わせの候補が複数ある場合には、それぞれの音声波形を音声合成部１２を介して出力し、合否判定入力部２７を介してユーザの適否判定を受け付けるように構成する。合否判定入力部２７を介して受け付けたユーザによる適否情報は、素片選択情報編集部２６を介して素片選択情報蓄積部２４に蓄積された素片選択情報に反映される。
【００３５】
この音声合成システムの動作を図７に示す制御フローチャートに基づいて。素片選択情報蓄積部２４に音声素片データの適切な組み合わせのみが登録されている場合いついて説明する。
ステップＳ１１では、合成文字列入力部３２を介して入力されるテキストデータを受け付ける。
【００３６】
ステップＳ１２では、入力されたテキストデータを言語解析部３３により解析し、合成音素列を生成する。
ステップＳ１３では、生成された合成音素列に対して、韻律生成部３４においてピッチ周波数パターン、各音声単位時間長、パワー変動パターンなどの韻律情報を生成する。
ステップＳ１４では、合成音素列に一致する音素列の素片選択情報が素片選択情報蓄積部２４に格納されているか否かを判別する。合成音素列に一致する音素列の素片選択情報が存在すると判断した場合にはステップＳ１６に移行し、そうでないと判断した場合にはステップＳ１５に移行する。
【００３７】
ステップＳ１６では、素片選択情報蓄積部２４に格納されている素片選択情報に基づいて、素片蓄積部１３に格納されている音声素片データの組み合わせを選択し、ステップＳ２８に移行する。
ステップＳ１５では、合成音素列の一部に一致する音素列の素片選択情報が素片選択情報蓄積部２４に格納されているか否かを判別する。合成音素列の一部に一致する音素列の素片選択情報が存在すると判断した場合にはステップＳ１７に移行し、そうでないと判断した場合にはステップＳ１８に移行する。
【００３８】
ステップＳ１７では、合成音素列の一部を含む音素列の素片選択情報から、音声素片データの組み合わせの候補をｎ個選択し、ステップＳ１９に移行する。
ステップＳ１８では、合成音素列を生成するための音声素片データの組み合わせの候補を評価関数（波形辞書）に基づいてｎ個選択し、ステップＳ１９に移行する。
ステップＳ１９では、選択した音声素片データの組み合わせに対して適否判定を行う際の変数ｉを初期値１に設定する。
【００３９】
ステップＳ２０では、音声素片データの第ｉ番目の組み合わせによる音声波形を生成する。
ステップＳ２１では、生成された音声波形による合成音声を音声合成部１２を介して出力する。
ステップＳ２２では、音声合成部１２を介して出力した合成音声の適否判定をユーザから受け付ける。合否判定入力部２７を介してユーザが入力する適否判定情報が「適切」である場合にはステップＳ２３に移行し、そうでない場合にはステップＳ２４に移行する。
【００４０】
ステップＳ２３では、現在選択されている第ｉ番目の音声素片データの組み合わせを「最適」として、ステップＳ２７に移行する。
ステップＳ２４では、変数ｉをインクリメントする。
ステップＳ２５では、変数ｉの値がｎを超えたか否かを判断する。変数ｉの値がｎ以下であればステップＳ２０に移行して同様の動作を繰り返し、変数ｉの値がｎを超えたと判断した場合にはステップＳ２６に移行する。
【００４１】
ステップＳ２６では、ｎ個の候補のうちから最良のものを選択する。ここでは、モニタ上にｎ個の候補を表示しユーザに選択させるように構成することも可能であり、評価関数やその他のパラメータに基づいて最適となる音声素片データの組み合わせを選択するように構成することも可能である。
ステップＳ２７では、最適と判断された音声素片データの組み合わせをその合成音素列の素片選択情報として素片選択情報蓄積部２４に格納する。
【００４２】
ステップＳ２８では、選択された音声素片データの組み合わせに基づいて音声波形を生成する。
ステップＳ２９では、合成文字列が終了したか否かを判別する。合成文字列の入力が終了していないと判断した場合にはステップＳ１１に移行して、同様の動作を繰り返し実行し、そうでない場合にはこのルーチンを終了する。
【００４３】
なお、本発明の実施形態に係る音声合成システムおよび音声合成方法を実現するプログラムは、図８に示すように、CD-ROM５２やフレキシブルディスク５３などの可搬型記録媒体５１、通信回線の先に備えられる他の記録装置５５、コンピュータ５０のハードディスクやRAMなどの記録媒体５４のいずれに記録されるものであってもよく、プログラム実行時にはコンピュータ５０の主メモリ上にロードされて実行される。
【００４４】
また、本発明に係る音声合成システムにより生成された各種データについても、図８に示すように、CD-ROM５２やフレキシブルディスク５３などの可搬型記録媒体５１だけでなく、通信回線の先に備えられた他の記録装置５５、コンピュータ５０のハードディスクやRAMなどの記録媒体５４のいずれに記憶されるものであってもよく、本発明の音声合成システムを利用する際にコンピュータ５０によって読みとられて利用される。
【産業上の利用可能性】
【００４５】
本発明によれば、人間が発声した文章や単語の音声データから音声素片データを選択し、これを接続する方式の音声合成システムにおいて、音声素片データのデータ量の拡大を抑制し、合成音声の品質向上を図ることができる。
また、ユーザがシステムを使用しながら最適の合成音声を作成する枠組みを提供することができ、システム開発者にとっても、あらゆる場合にあてはまるような評価関数のチューニングを検討する必要がなくなり、開発やメンテナンスの省力化を図ることができる。
【図面の簡単な説明】
【００４６】
【図１】従来例の概略構成を示す簡略ブロック図である。
【図２】本発明の第１の原理を示す概略構成図である。
【図３】本発明の第２の原理を示す概略構成図である。
【図４】本発明の１実施形態が採用される音声合成システムの制御ブロック図である。
【図５】蓄積された音声素片データと素片選択情報の関係を示す説明図である。
【図６】素片選択情報の１例を示す説明図である。
【図７】本発明の１実施形態の制御フローチャートである。
【図８】本発明のプログラムを格納する記録媒体の説明図である。
【図１】
0004130190.tif 000002
【図２】
0004130190.tif 000003
【図３】
0004130190.tif 000004
【図４】
0004130190.tif 000005
【図５】
0004130190.tif 000006
【図６】
0004130190.tif 000007
【図７】
0004130190.tif 000008
【図８】
0004130190.tif 000009