説明

音声合成用読上げ文章生成装置及びそのプログラム

【課題】本発明は、演算量が少なく、簡易な構成で音声合成用の読上げ文章を生成できる音声合成用読上げ文章生成装置を提供することを目的とする。
【解決手段】音声合成用読上げ文章生成装置1は、グラフ入力手段11と、DPマッチング法によって、統合グラフTを生成する統合グラフ生成手段12と、ノードNの通過回数をノードNに対応するリストLが格納した語句の個数以上とする第1の条件式及びノードN間の接続関係に基づいて、第2の条件式を生成する条件式生成手段13と、第1の条件式及び第2の条件式を満たすように、文章の先頭における通過回数が最小になる最小通過回数をシンプレックス法で算出する最小通過回数算出手段14と、最小通過回数と等しい数、リストLに格納した語句の組み合わせを変えて読上げ文章を生成する読上げ文章生成手段15と、を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、音声合成に必要となる音声合成用データベースに登録する音声合成用の読上げ文章を、有向グラフを用いて生成する音声合成用読上げ文章生成装置及びそのプログラムに関する。
【背景技術】
【0002】
従来から、音声合成用の読上げ文章を生成する発明が知られている(特許文献1参照)。例えば、特許文献1に記載された発明は、入力文章の構成要素が多い順番に入力文章を選択して音声合成用の読上げ文章を生成するものである。
【特許文献1】特開2006−30892号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかし、特許文献1に記載された発明は、有向グラフで表現できる文章であっても、有向グラフの各ノードに対応する語句を全て組み合わせた数の音声合成用の読上げ文章を生成し、これら全ての読上げ文章に対して計算を行う必要がある。このように、読上げ文章の数が多くなると、特許文献1に記載された発明では、現実的でない程の演算時間が必要となり、演算量が多く、装置の大規模化を招く問題があった。
【0004】
そこで、本発明は、演算量が少なく、簡易な構成で音声合成用の読上げ文章を生成できる音声合成用読上げ文章生成装置及びそのプログラムを提供することを目的とする。
【課題を解決するための手段】
【0005】
前記した課題を解決するため、請求項1に係る音声合成用読上げ文章生成装置は、文章に含まれる語句の位置を示す複数のノードとノード間において分岐及び合流が可能なエッジとで構成された有向グラフによって文章が表現され、有向グラフを用いて、音声合成に必要となる音声合成データベース用の読上げ文章を生成する音声合成用読上げ文章生成装置であって、グラフ入力手段と、条件式生成手段と、最小通過回数算出手段と、読上げ文章生成手段と、を備える構成とした。
【0006】
かかる構成において、音声合成用読上げ文章生成装置は、グラフ入力手段によって、有向グラフと、有向グラフのノードに対応する語句を1以上格納するリストとが入力される。
【0007】
また、音声合成用読上げ文章生成装置は、条件式生成手段によって、ノード毎に、ノードの通過回数をノードに対応するリストが格納した語句の個数以上とする第1の条件式を生成する。そして、音声合成用読上げ文章生成装置は、条件式生成手段によって、エッジがノード間の接続を示すときはノード間の通過回数を等しくする第2の条件式を生成し、エッジがノード間の分岐を示すときは分岐前のノードの通過回数と分岐したノードの通過回数の合算値とを等しくする第2の条件式を生成し、エッジがノード間の合流を示すときは合流するノードの通過回数の合算値と合流後のノードの通過回数とを等しくする第2の条件式を生成する。
【0008】
また、音声合成用読上げ文章生成装置は、最小通過回数算出手段によって、条件式生成手段が生成した第1の条件式及び第2の条件式を満たすように、文章の先頭における通過回数が最小になる最小通過回数を、例えば、シンプレックス法又は内点法で算出する。ここで、第1の条件式及び第2の条件式が一次関数又は一次不等式であるため、音声合成用読上げ文章生成装置では、シンプレックス法を用いることができる。
【0009】
また、音声合成用読上げ文章生成装置は、読上げ文章生成手段によって、最小通過回数算出手段が算出した最小通過回数と等しい数、リストに格納した語句の組み合わせを変えて読上げ文章を生成する。このように、文章を表現した有向グラフを用いることで、音声合成用読上げ文章生成装置は、最小通過回数と等しい数の読上げ文章を生成すれば良く、有向グラフの各ノードに対応する語句を全て組み合わせた数の読上げ文章を生成する必要がなくなる。
【0010】
請求項2に係る音声合成用読上げ文章生成装置は、請求項1に係る音声合成用読上げ文章生成装置において、グラフ入力手段が、複数の有向グラフが入力され、DPマッチング法によって、複数の有向グラフのノードの一致と挿入誤りと欠落誤りと代替誤りとを求めて複数の有向グラフが類似するか否かを判定し、複数の有向グラフが類似する場合、DPマッチング法の結果に基づいて、複数の有向グラフを統合グラフに統合すると共に、複数の有向グラフが類似しない場合、複数の有向グラフのそれぞれを新たな統合グラフとする統合グラフ生成手段、をさらに備えることを特徴とする。
【0011】
かかる構成において、音声合成用読上げ文章生成装置は、入力された複数の有向グラフを、これらより少ない数の統合グラフに統合してから条件式を生成する。
【0012】
また、前記した課題を解決するため、請求項3に係る音声合成用読上げ文章生成プログラムは、文章に含まれる語句の位置を示す複数のノードとノード間において分岐及び合流が可能なエッジとで構成された有向グラフによって文章が表現され、有向グラフを用いて、音声合成に必要となる音声合成データベース用の読上げ文章を生成するために、コンピュータを、グラフ入力手段、条件式生成手段、最小通過回数算出手段、読上げ文章生成手段、として機能させる構成とした。
【0013】
かかる構成において、音声合成用読上げ文章生成プログラムは、グラフ入力手段によって、有向グラフと、有向グラフのノードに対応する語句を1以上格納するリストとが入力される。
【0014】
また、音声合成用読上げ文章生成プログラムは、条件式生成手段によって、ノード毎に、ノードの通過回数をノードに対応するリストが格納した語句の個数以上とする第1の条件式を生成する。そして、音声合成用読上げ文章生成プログラムは、条件式生成手段によって、エッジがノード間の接続を示すときはノード間の通過回数を等しくする第2の条件式を生成し、エッジがノード間の分岐を示すときは分岐前のノードの通過回数と分岐したノードの通過回数の合算値とを等しくする第2の条件式を生成し、エッジがノード間の合流を示すときは合流するノードの通過回数の合算値と合流後のノードの通過回数とを等しくする第2の条件式を生成する。
【0015】
また、音声合成用読上げ文章生成プログラムは、最小通過回数算出手段によって、条件式生成手段が生成した第1の条件式及び第2の条件式を満たすように、文章の先頭における通過回数が最小になる最小通過回数を、例えば、シンプレックス法又は内点法で算出する。ここで、第1の条件式及び第2の条件式が一次関数又は一次不等式であるため、音声合成用読上げ文章生成プログラムでは、シンプレックス法を用いることができる。
【0016】
また、音声合成用読上げ文章生成プログラムは、読上げ文章生成手段によって、最小通過回数算出手段が算出した最小通過回数と等しい数、リストに格納した語句の組み合わせを変えて読上げ文章を生成する。このように、文章を表現した有向グラフを用いることで、音声合成用読上げ文章生成プログラムは、最小通過回数と等しい数の読上げ文章を生成すれば良く、有向グラフの各ノードに対応する語句を全て組み合わせた数の読上げ文章を生成する必要がなくなる。
【発明の効果】
【0017】
本発明に係る音声合成用読上げ文章生成装置及びそのプログラムによれば、以下のような優れた効果を奏する。
請求項1,3に係る発明によれば、文章を表現した有向グラフを用いることで、有向グラフの各ノードに対応する語句を全ての組み合わせ数の読上げ文章を生成する必要がなくなるため、演算量を少なくし、音声合成用読上げ文章生成装置を簡易な構成とすることができる。
【0018】
請求項2に係る発明によれば、入力された複数の有向グラフを、これらより少ない数の統合グラフに統合してから条件式を生成するため、全ての有向グラフに対して条件式を生成する場合に比べ、音声合成音の品質を高くすることができる。
【発明を実施するための最良の形態】
【0019】
以下、本発明の実施形態について、適宜図面を参照しながら詳細に説明する。なお、各実施形態において、同一の機能を有する手段には同一の符号を付し、説明を省略した。
【0020】
[音声合成用読上げ文章生成装置の構成]
図1を参照して、本発明の実施形態に係る音声合成用読上げ文章生成装置の構成について説明する。図1は、本発明の実施形態に係る音声合成用読上げ文章生成装置のブロック図である。
【0021】
図1の音声合成用読上げ文章生成装置1は、文章を表現した有向グラフを用いて、音声合成に必要となる音声合成データベース用の読上げ文章を生成するものであって、グラフ入力手段11と、統合グラフ生成手段12と、条件式生成手段13と、最小通過回数算出手段14と、読上げ文章生成手段15と、を備える。以下、有向グラフを符号G、リストを符号L、及び、統合グラフを符号Tと記す。
【0022】
グラフ入力手段11は、有向グラフGと、有向グラフGのノードNに対応する語句を1以上格納するリストLとが入力されるものである。例えば、グラフ入力手段11としては、有向グラフG及びリストLを外部から受信する通信ポート、又は、磁気ディスク等の記憶媒体に記憶された有向グラフG及びリストLを読み取る読取装置がある。また、グラフ入力手段11は、1個の有向グラフGが入力されても良く、2個以上の有向グラフGが入力されても良い。なお、有向グラフG及びリストLの詳細は、後記する。
【0023】
統合グラフ生成手段12は、グラフ入力手段11に有向グラフGが複数入力された場合、DPマッチング法によって、複数の有向グラフGのノードNの一致と挿入誤りと欠落誤りと代替誤りとを求めて複数の有向グラフGが類似するか否かを判定するものである。また、統合グラフ生成手段12は、複数の有向グラフGが類似する場合、DPマッチング法の結果に基づいて、複数の有向グラフGを統合グラフTに統合して生成する。一方、統合グラフ生成手段12は、複数の有向グラフGが類似しない場合、複数の有向グラフGのそれぞれを新たな統合グラフTとして生成する。なお、統合グラフTの生成の詳細は、後記する。
【0024】
条件式生成手段13は、ノードN毎に、ノードNの通過回数をノードNに対応するリストLが格納した語句の個数以上とする第1の条件式を生成するものである。また、条件式生成手段13は、エッジがノードN間の接続を示すときはノードN間の通過回数を等しくする第2の条件式を生成する。また、条件式生成手段13は、エッジがノードN間の分岐を示すときは分岐前のノードNの通過回数と分岐したノードNの通過回数の合算値とを等しく第2の条件式を生成する。さらに、条件式生成手段13は、エッジがノードN間の合流を示すときは合流するノードNの通過回数の合算値と合流後のノードNの通過回数とを等しくする第2の条件式を生成する。
【0025】
最小通過回数算出手段14は、条件式生成手段13が生成した第1の条件式及び第2の条件式を満たすように、文章の先頭における通過回数が最小になる最小通過回数を、例えば、シンプレックス法又は内点法で算出するものである。なお、シンプレックス法の詳細は、文献「シンプレックス法、ニューメリカル・レシピ・イン・シー、技術評論社、P317〜P330」に記載されている。また、内点法の詳細は、文献「内点法、小島 政和他、朝倉書店」に記載されている。
【0026】
読上げ文章生成手段15は、最小通過回数算出手段14が算出した最小通過回数と等しい数、リストLに格納した語句の組み合わせを変えて読上げ文章を生成するものである。ここで、読上げ文章生成手段15が生成した読上げ文章は、例えば、音声データベース(不図示)に登録され、音声合成に用いられる。なお、条件式及び読上げ文章の生成の詳細は、後記する。
【0027】
また、音声合成用読上げ文章生成装置1は、グラフ入力手段11に入力された有向グラフGやリストL、統合グラフ生成手段12が生成した統合グラフT、条件式生成手段13が生成した条件式、読上げ文章生成手段15が生成した読上げ文章、及び、前記した閾値等のパラメータを記憶するHDD(Hard Disk Drive)等の記憶手段を備えても良い(不図示)。
【0028】
<有向グラフ及びリストの具体例>
以下、図2及び図3を参照して、有向グラフ及びリストの具体例について説明する(適宜図1参照)。図2は図1のグラフ入力手段に入力された有向グラフを説明する図であり、(a)は有向グラフの第1例であり、(b)は有向グラフの第2例である。また、図3は図1のグラフ入力手段に入力されたリストを説明する図であり、(a)は図2(a)のノードN1に対応するリストの例であり、(b)は図2(b)のノードN12に対応するリストの例である。
【0029】
図2に示すように、有向グラフGは、グラフ理論で用いられる有向グラフで文章(例えば、天気予報番組の読上げ原稿)を表現しており、ノードN及びエッジ(図2ではノードN間を結ぶ矢印)を有するものである。なお、図2(a)の有向グラフG1及び図2(b)の有向グラフG2を区別しないで説明する場合、単に有向グラフGとする。また、図2では、有向グラフGにおける文章の先頭を「先頭」、及び、有向グラフGにおける文章の終了を「終了」として図示した。
【0030】
ここで、図2に示すように、有向グラフG1は、6個のノードN1〜ノードN6を有し、有向グラフG2は、7個のノードN11〜ノードN17を有する。なお、図2では、説明の為に、ノードN1〜ノードN6及びノードN11〜ノードN17に対応する語句を総括したものを、各ノードNの枠内に示した。例えば、ノードN1は、場所に関する語句を総括し、ノードN12は、緯度分に対応する語句を総括する。
【0031】
また、各ノードNには、リストLがそれぞれ対応する。例えば、有向グラフG1では、6個のノードN1〜ノードN6に6個のリストL1〜リストL6が対応し、有向グラフG2では、7個のノードN11〜ノードN17に7個のリストL11〜リストL17が対応する。なお、ノードN1〜ノードN6及びノードN11〜ノードN17を区別しないで説明する場合、単にノードNとする。
【0032】
エッジは、例えば、ノードN間の接続、ノードN間の分岐及びノードN間の合流といったノードN間の接続関係を示すものである。例えば、図2(a)では、ノードN1とノードN2とを1本のエッジで接続しているので、エッジが、ノードN1とノードN2との接続を示す。
【0033】
リストLは、ノードN毎に、文章を構成する語句を1以上格納したものである。例えば、図3(a)のリストL1は、図2(a)ノードN1に対応しており、「日本海の」、「東シナ海の」、「太平洋の」等の場所に関連する語句を格納する。また、図3(b)のリストL12は、図2(b)のノードN12に対応しており、「北緯0度」、「北緯1度」、「南緯90度」等の緯度分に関連する語句を格納する。なお、リストL1〜リストL6、及び、リストL11〜リストL17を区別しないで説明する場合、単にリストLとする。
【0034】
ここで、図2(a)の有向グラフG1において、ノードN1〜ノードN6に対応するリストL1〜リストL6が格納した語句の個数を例示する。なお、この語句の個数は、後記する条件式の生成に用いる。
リストL1が格納した語句の個数:100
リストL2が格納した語句の個数:600
リストL3が格納した語句の個数:400
リストL4が格納した語句の個数:200
リストL5が格納した語句の個数:7
リストL6が格納した語句の個数:1
【0035】
また、図2(b)の有向グラフG2において、ノードN11〜ノードN17に対応するリストL11〜リストL17が格納した語句の個数を例示する。
リストL11が格納した語句の個数:100
リストL12が格納した語句の個数:180
リストL13が格納した語句の個数:90
リストL14が格納した語句の個数:200
リストL15が格納した語句の個数:7
リストL16が格納した語句の個数:16
リストL17が格納した語句の個数:100
【0036】
なお、ノードN1とノードN11とが両方とも「場所の」であり一致するため、リストL1とリストL11とを共通化しても良い。また、同様に、リストL4とリストL14とを共通化しても良い。また、エッジは、有向グラフGにおける最初のノードNと「先頭」との接続、及び、有向グラフGにおける最後のノードNと終了との「接続」を示しても良い。
【0037】
なお、あるノードNから2本のエッジが分岐し、それぞれのエッジに異なるノードNが接続する場合、エッジが、ノードNの分岐を示すこととしても良い。さらに、異なるノードNから複数のエッジが合流してあるノードNに接続する場合、エッジが、ノードNの合流を示すこととしても良い。
【0038】
<統合グラフの生成>
以下、図4を参照して、統合グラフの生成について説明する(適宜図1,図2参照)。図4は、図1の統合グラフ生成手段が生成した統合グラフを説明する図である。なお、図4では、統合グラフTにおける文章の先頭を「先頭」、及び、統合グラフTにおける文章の終了を「終了」として図示した。
【0039】
ここでは、統合グラフ生成手段12は、DPマッチング法によって、図2の有向グラフG1,G2のノードNの一致(H)と、挿入誤り(I)と、欠落誤り(D)と、代替誤り(S)とを求め、DPマッチングの結果に基づいて、類似度を算出する。ここで、例えば、統合グラフ生成手段12は、DPマッチングの結果を下記式(1)に代入して類似度を算出する。
【0040】
類似度=(H−I)/(H+S+D)・・・式(1)
【0041】
また、統合グラフ生成手段12は、この類似度と所定の閾値とを比較し、この類似度が閾値以上のときに有向グラフG1,G2が類似するとして、有向グラフG1,G2を統合グラフTに統合しても良い。一方、統合グラフ生成手段12は、この類似度が閾値未満ときに有向グラフG1,G2が類似しないとして、有向グラフG1,G2のそれぞれを統合グラフTとしても良い。
【0042】
具体的には、この判定結果において、ノードN1とノードN11とが一致するため、統合グラフ生成手段12は、図4に示すように、統合グラフTにノード11を追加する。また、この判定結果において、ノードN2とノードN12とが代替え誤りとなるため、統合グラフ生成手段12は、ノード11から2本のエッジを分岐させてノード11に接続するように、統合グラフTにノードN2とノードN12とが並行になるように追加する。さらに、この判定結果において、ノードN3とノードN3とが代替え誤りとなるため、統合グラフ生成手段12は、ノード2に接続するようにノードN3を追加し、ノード12に接続してノードN3と並行になるようにノードN13を追加する。
【0043】
また、この判定結果において、ノードN4とノードN14とが一致するため、統合グラフ生成手段12は、図4に示すように、ノードN3とノードN13とのエッジを合流させてノードN14に接続するように、統合グラフTにノード14を追加する。また、この判定結果において、ノードN5とノードN15とが一致するため、統合グラフTにノード15を追加する。また、この判定結果において、ノードN6とノードN16とが代替え誤りとなり、ノードN17が挿入誤りとなるため、統合グラフ生成手段12は、ノード15から2本のエッジを分岐させて統合グラフTにノードN6とノードN16とを追加し、ノードN16に接続するようにノードN17を追加する。
【0044】
以上のようにして、統合グラフ生成手段12は、図4に示す統合ノードTを生成する。なお、統合グラフTは、特開2003−15685号公報に記載された発明を用いて生成しても良い。
【0045】
なお、統合グラフ生成手段12は、DPマッチングの結果が挿入誤りとなるノードNについては、そのノードNを統合グラフTに挿入しても良い。さらに、統合グラフ生成手段12は、DPマッチングの結果が欠落誤りとなるノードNについては、そのノードNをスキップするように、そのノードNに前後するノードN間を直接接続するエッジを追加する。
【0046】
図4では、統合グラフTが1個の場合を例として説明したが、統合グラフTの個数は特に限定されない。例えば、統合グラフTが複数ある場合においては、類似する統合グラフTをさらに統合し(変数の共通化)、類似しない統合グラフTをそれぞれ個別のものとして扱うことで、全体としてシンプレックス法を用いることが可能となる。
【0047】
<条件式及び読上げ文章の生成>
以下、条件式及び読上げ文章の生成について説明する(適宜図1,図4参照)。
条件式生成手段13は、ノードN毎に、一次関数又は一次不等式であり、かつ、各ノードNの通過回数(変数)が正となる条件式を生成する。以下、ノードN1〜ノードN6の通過回数をそれぞれX1〜X6とし、ノードN11〜ノードN17の通過回数をそれぞれX11〜X17とする。また、文章の先頭における通過回数をXSとし、文章の終了における通過回数をXEとする。
【0048】
ここでは、条件式生成手段13が、図4の統合グラフTについて、条件式を生成する例で説明する。条件式生成手段13は、エッジが示すノードN間の接続関係、例えば、ノードN間の接続、ノードN間の分岐及びノードN間の合流に基づいて、条件式を生成する。また、最初のノードNと文章の先頭、及び、最後のノードNと文章の終了についても、同様とする。
【0049】
まず、条件式生成手段13は、エッジが文章の先頭とノードN11との接続を示すので、文章の先頭における通過回数XSとノードN11の通過回数X11とを等しいとする条件式を生成する(下記式(1)参照)。
XS=X1・・・式(1)
【0050】
また、条件式生成手段13は、エッジがノードN11からノードN2及びノードN12への分岐を示すので、分岐前のノードN11の通過回数X11と、分岐後のノードN2の通過回数X2とノードN12の通過回数X12との合算値を等しいとする条件式を生成する(下記式(2)参照)。
X11=X2+X12・・・式(2)
【0051】
また、条件式生成手段13は、エッジがノードN2とノードN3との接続を示すので、ノードN2の通過回数X2と、ノードN3の通過回数X3とを等しいとする条件式を生成する(下記式(3)参照)。
X2=X3・・・式(3)
【0052】
また、条件式生成手段13は、エッジがノードN12とノードN13との接続を示すので、前記と同様に条件式を生成する(下記式(4)参照)。
X12=X13・・・式(4)
【0053】
また、条件式生成手段13は、エッジがノードN3及びノードN13からノードN14への合流を示すので、合流前のノードN3の通過回数X3とノードN13の通過回数X13との合算値と、合流後のノードN14の通過回数X14とを等しいとする条件式を生成する(下記式(5)参照)。
X3+X13=X14・・・式(5)
【0054】
また、条件式生成手段13は、エッジがノードN14とノードN5との接続を示すので、前記と同様に条件式を生成する(下記式(6)参照)。
X14=X15・・・式(6)
【0055】
また、条件式生成手段13は、エッジがノードN15からノードN6及びノードN16への分岐を示すので、前記と同様に条件式を生成する(下記式(7)参照)。
X15=X6+X16・・・式(7)
【0056】
また、条件式生成手段13は、ノードN16の通過回数X6とノードN17の通過回数X17との合算値を等しいとする条件式を生成する(下記式(8)参照)。
X16=X17・・・式(8)
【0057】
また、条件式生成手段13は、エッジがノードN6及びノードN17から文章の終了への合流を示すので、前記と同様に、条件式を生成する(下記式(9)参照)。なお、式(1)〜式(9)が請求項に記載の第2の条件式に相当する。
X6+X17=XE・・・式(9)
【0058】
また、条件式生成手段13は、ノードN毎に、ノードNの通過回数をノードNに対応するリストLが格納した語句の個数以上とする条件式を生成する。ここでは、条件式生成手段13は、ノードN1〜ノードN6及びノードN11〜ノードN17について、下記式(10)〜式(19)を生成する。なお、式(10)〜式(19)が請求項に記載の第1の条件式に相当する。
X2≧600 ・・・式(10)
X3≧400 ・・・式(11)
X6≧1 ・・・式(12)
X11≧100・・・式(13)
X12≧180・・・式(14)
X13≧90 ・・・式(15)
X14≧200・・・式(16)
X15≧7 ・・・式(17)
X16≧16 ・・・式(18)
X17≧100・・・式(19)
【0059】
以上のように、条件式生成手段13は、条件式として、一次方程式と一次不等式で表され、かつ、各通過回数(変数)が正の値となる式(1)〜式(19)を生成する。このため、最小通過回数算出手段14は、文章の先頭における最小通過回数(パスの数)を、文章の先頭における通過回数XSの負の値(−XS)を最大化する問題として、シンプレックス法で解くことができる。例えば、最小通過回数算出手段14は、文章の先頭における最小通過回数を算出する。
【0060】
そして、読上げ文章生成手段15は、文章の先頭における最小通過回数と等しい数で、語句の組み合わせが異なる読上げ文章を生成する。具体的には、読上げ文章生成手段15は、先頭側のノードNから順に、各ノードNに対応するリストLに含まれる語句を順に組み合わせて読上げ文章を生成する。
【0061】
例えば、読上げ文章生成手段15は、ノードN1に対応するリストL1に1番目に含まれる語句(日本海の)、ノードN2に対応するリストL2に1番目に含まれる語句・・・ノードN6に対応するリストL6に1番目に含まれる語句を用いて、1個目の読上げ文章を生成する。次に、読上げ文章生成手段15は、ノードN1に対応するリストL1に2番目に含まれる語句(東シナ海の)、ノードN2に対応するリストL2に2番目に含まれる語句・・・ノードN6に対応するリストL6に2番目に含まれる語句を用いて、2個目の読上げ文章を生成する。
【0062】
ここで、最小通過回数がリストLに含まれる語句の個数以上の場合、読上げ文章生成手段15は、そのリストLに含まれる語句を再び用いる。例えば、5個目の読上げ文章を生成する場合、リストL5が4個の語句しか含まないので、読上げ文章生成手段15は、リストL5に含まれる1番目の語句を再び用いる。
【0063】
さらに、最小通過回数がリストLに含まれる語句の個数以上、かつ、ノードNが分岐する場合、別の分岐先のノードNに対応するリストLに含まれる語句を用いる。例えば、601個目の読上げ文章を生成する場合、リストL2が600個の語句しか含まないので、読上げ文章生成手段15は、ノードN1からノードN2とは別の分岐先のノードN12に対応するリストL12に含まれる語句を用いる。この場合、読上げ文章生成手段15は、リストL12に含まれる1番目の語句(北緯0度)から順に用いる。
【0064】
[音声合成用読上げ文章生成装置の動作]
以下、図5を参照して、図1の音声合成用読上げ文章生成装置の動作について説明する(適宜図1参照)。図5は、図1の音声合成用読上げ文章生成装置の動作を示すフローチャートである。なお、音声合成用読上げ文章生成装置1は、グラフ入力手段11にリストL及び有向グラフGが入力されたものとして説明する。
【0065】
まず、音声合成用読上げ文章生成装置1は、統合グラフ生成手段12によって、DPマッチング法によって、有向グラフGの類似度を求め、統合グラフTを生成する(ステップS1)。また、音声合成用読上げ文章生成装置1は、統合グラフ生成手段12によって、グラフ入力手段11に入力された全有向グラフGの類似度の算出を終了したか否かを判定する(ステップS2)。ここで、全有向グラフGの類似度の算出を終了していない場合(ステップS2でNo)、音声合成用読上げ文章生成装置1は、統合グラフ生成手段12によって、ステップS1の処理に戻り、残りの有向グラフGの類似度を算出する。
【0066】
一方、全有向グラフGの類似度の算出を終了した場合(ステップS2でYes)、音声合成用読上げ文章生成装置1は、条件式生成手段13によって、ノードNの通過回数をノードNに対応するリストLが格納した語句の個数以上とする第1の条件式を生成する。また、音声合成用読上げ文章生成装置1は、条件式生成手段13によって、エッジがノードN間の接続を示すときはノードN間の通過回数を等しくする第2の条件式を生成する。
【0067】
また、音声合成用読上げ文章生成装置1は、条件式生成手段13によって、エッジがノードN間の分岐を示すときは分岐前のノードNの通過回数と分岐したノードNの通過回数の合算値とを等しく第2の条件式を生成する。さらに、音声合成用読上げ文章生成装置1は、条件式生成手段13によって、エッジがノードN間の合流を示すときは合流するノードNの通過回数の合算値と合流後のノードNの通過回数とを等しくする第2の条件式を生成する(ステップS3)。
【0068】
また、ステップS3において、音声合成用読上げ文章生成装置1は、条件式生成手段13によって、全ての条件式を生成したか否かも判定する。ここで、全ての条件式を生成していない場合(ステップS3でNo)、音声合成用読上げ文章生成装置1は、条件式生成手段13によって、残りの条件式を生成する。
【0069】
一方、全ノードNについて全条件式を生成した場合(ステップS3でYes)、音声合成用読上げ文章生成装置1は、最小通過回数算出手段14によって、条件式生成手段13が生成した第1の条件式及び第2の条件式を満たすように、文章の先頭における通過回数が最小となる最小通過回数をシンプレックス法で算出する(ステップS4)。
【0070】
ステップS4に続いて、音声合成用読上げ文章生成装置1は、読上げ文章生成手段15によって、最小通過回数算出手段14が算出した最小通過回数と等しい数、リストLに格納した語句の組み合わせを変えて読上げ文章を生成する(ステップS5)。
【0071】
なお、本実施形態では、本発明に係る音声合成用読上げ文章生成装置を独立した装置として説明したが、本発明では、一般的なコンピュータを、前記した各手段として機能させるプログラムによって動作させることもできる。このプログラムは、通信回線を介して配布しても良く、CD−ROMやフラッシュメモリ等の記録媒体に書き込んで配布しても良い。
【図面の簡単な説明】
【0072】
【図1】本発明の実施形態に係る音声合成用読上げ文章生成装置のブロック図である。
【図2】図1のグラフ入力手段に入力された有向グラフを説明する図であり、(a)は有向グラフの第1例であり、(b)は有向グラフの第2例である。
【図3】図1のグラフ入力手段に入力されたリストを説明する図であり、(a)は図2(a)のノードN1に対応するリストの例であり、(b)は図2(b)のノードN12に対応するリストの例である。
【図4】図1の統合グラフ生成手段が生成した統合グラフを説明する図である。
【図5】図1の音声合成用読上げ文章生成装置の動作を示すフローチャートである。
【符号の説明】
【0073】
1 音声合成用読上げ文章生成装置
11 グラフ入力手段
12 統合グラフ生成手段
13 条件式生成手段
14 最小通過回数算出手段
15 読上げ文章生成手段
G 有向グラフ
L リスト
T 統合グラフ

【特許請求の範囲】
【請求項1】
文章に含まれる語句の位置を示す複数のノードと前記ノード間において分岐及び合流が可能なエッジとで構成された有向グラフによって前記文章が表現され、当該有向グラフを用いて、音声合成に必要となる音声合成データベース用の読上げ文章を生成する音声合成用読上げ文章生成装置であって、
前記有向グラフと、当該有向グラフの前記ノードに対応する前記語句を1以上格納するリストとが入力されるグラフ入力手段と、
前記ノード毎に、当該ノードの通過回数を当該ノードに対応する前記リストが格納した前記語句の個数以上とする第1の条件式を生成すると共に、前記エッジが前記ノード間の接続を示すときは前記ノード間の通過回数を等しくする第2の条件式を生成し、前記エッジが前記ノード間の分岐を示すときは分岐前の前記ノードの通過回数と分岐した前記ノードの通過回数の合算値とを等しくする前記第2の条件式を生成し、前記エッジが前記ノード間の合流を示すときは合流する前記ノードの通過回数の合算値と合流後の前記ノードの通過回数とを等しくする前記第2の条件式を生成する条件式生成手段と、
前記条件式生成手段が生成した第1の条件式及び第2の条件式を満たすように、前記文章の先頭における通過回数が最小になる最小通過回数を算出する最小通過回数算出手段と、
前記最小通過回数算出手段が算出した最小通過回数と等しい数、前記リストに格納した前記語句の組み合わせを変えて前記読上げ文章を生成する読上げ文章生成手段と、
を備えることを特徴とする音声合成用読上げ文章生成装置。
【請求項2】
前記グラフ入力手段は、複数の前記有向グラフが入力され、
DPマッチング法によって、前記複数の有向グラフの前記ノードの一致と挿入誤りと欠落誤りと代替誤りとを求めて前記複数の有向グラフが類似するか否かを判定し、前記複数の有向グラフが類似する場合、前記DPマッチング法の結果に基づいて、前記複数の有向グラフを統合グラフに統合すると共に、前記複数の有向グラフが類似しない場合、前記複数の有向グラフのそれぞれを新たな前記統合グラフとする統合グラフ生成手段、をさらに備えることを特徴とする請求項1に記載の音声合成用読上げ文章生成装置。
【請求項3】
文章に含まれる語句の位置を示す複数のノードと前記ノード間において分岐及び合流が可能なエッジとで構成された有向グラフによって前記文章が表現され、当該有向グラフを用いて、音声合成に必要となる音声合成データベース用の読上げ文章を生成するために、コンピュータを、
前記有向グラフと、当該有向グラフの前記ノードに対応する前記語句を1以上格納するリストとが入力されるグラフ入力手段、
前記ノード毎に、当該ノードの通過回数を当該ノードに対応する前記リストが格納した前記語句の個数以上とする第1の条件式を生成すると共に、前記エッジが前記ノード間の接続を示すときは前記ノード間の通過回数を等しくする第2の条件式を生成し、前記エッジが前記ノード間の分岐を示すときは分岐前の前記ノードの通過回数と分岐した前記ノードの通過回数の合算値とを等しくする前記第2の条件式を生成し、前記エッジが前記ノード間の合流を示すときは合流する前記ノードの通過回数の合算値と合流後の前記ノードの通過回数とを等しくする前記第2の条件式を生成する条件式生成手段、
前記条件式生成手段が生成した第1の条件式及び第2の条件式を満たすように、前記文章の先頭における通過回数が最小になる最小通過回数を算出する最小通過回数算出手段、
前記最小通過回数算出手段が算出した最小通過回数と等しい数、前記リストに格納した前記語句の組み合わせを変えて前記読上げ文章を生成する読上げ文章生成手段、
として機能させることを特徴とする音声合成用読上げ文章生成プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2010−33462(P2010−33462A)
【公開日】平成22年2月12日(2010.2.12)
【国際特許分類】
【出願番号】特願2008−196953(P2008−196953)
【出願日】平成20年7月30日(2008.7.30)
【出願人】(000004352)日本放送協会 (2,206)
【出願人】(591053926)財団法人エヌエイチケイエンジニアリングサービス (169)
【Fターム(参考)】