文書読み上げ支援装置、方法及びプログラム
【課題】読み上げスタイルのカスタマイズの容易性と、文書データの読み上げに使用するシステム環境の柔軟性を確保し且つ読み上げの再現性を損なわないようにする。
【解決手段】実施形態によれば、文書取得部は、複数のテキストを含む文書データを取得し、メタデータ取得部は、ルールを適用すべきテキストに関する条件と該条件が適合するテキストに対する読み上げスタイルとを含む定義情報を複数含むメタデータを取得し、抽出部は、各々の定義情報を文書データに含まれるテキストに適用することで、文書データの特徴を抽出する。実行環境情報取得部は、読み上げを実行する実行環境情報を取得する。決定部は、文書データの特徴及び実行環境情報に基づいて、メタデータを文書データに適用して読み上げを実行する際に使用するパラメータの候補を決定する。ユーザ検証部は、パラメータの候補をユーザに提示し、選択又は確定を含む検証指示を受け付ける。
【解決手段】実施形態によれば、文書取得部は、複数のテキストを含む文書データを取得し、メタデータ取得部は、ルールを適用すべきテキストに関する条件と該条件が適合するテキストに対する読み上げスタイルとを含む定義情報を複数含むメタデータを取得し、抽出部は、各々の定義情報を文書データに含まれるテキストに適用することで、文書データの特徴を抽出する。実行環境情報取得部は、読み上げを実行する実行環境情報を取得する。決定部は、文書データの特徴及び実行環境情報に基づいて、メタデータを文書データに適用して読み上げを実行する際に使用するパラメータの候補を決定する。ユーザ検証部は、パラメータの候補をユーザに提示し、選択又は確定を含む検証指示を受け付ける。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、文書読み上げ支援装置、方法及びプログラムに関する。
【背景技術】
【0002】
近年、計算機リソースの発達とハードウェアの進化により、書籍の電子化(電子書籍)が注目を浴びるようになった。そして、書籍の電子化が進むにつれて、電子書籍を閲覧するための端末又はソフトウェアが一般に出回るようになり、電子化された書籍コンテンツの販売が広まってきた。また、電子書籍の作成支援サービスも広まってきた。
【0003】
電子書籍は、なおも紙媒体と比較して不便な点もある。しかし、大量の紙媒体であったものを電子データとすることによって、運搬、保管及び購入にかかる手間及びコストを削減することができ、また、検索又は辞書引きなどの新たな活用方法を提供することができる。
【0004】
電子書籍に特有の活用方法の一つとして、音声合成システム(TTS)を使用して文書を読み上げ、ユーザが電子書籍の朗読音声を聴くことができるサービスがある。従来からあるオーディオブックは、ナレーション収録を必要とするので、現実的には、限定された書籍だけしか提供することができなかった。これに対して、電子書籍の読み上げサービスによれば、任意のテキスト文書を(その内容によらずに)合成音で読み上げることができる。それゆえ、例えば、ナレーション収録をすることがコストに見合わないようなコンテンツ(例えば、頻繁に更新されるコンテンツなど)や、オーディオブックとして販売が期待できないようなコンテンツ(例えば、ユーザ所有の任意の書籍データ)なども、容易に朗読音声として聴いて楽しむことができる。
【0005】
電子書籍の合成音朗読では、いくつかの技術が提案されている。
【0006】
例えば、配信対象とするある作品のコンテンツデータ中に、その作品中に出てくる登場人物とそのセリフ(台詞)などとの対応が予め定義されており、その作品中に出てくる各登場人物と、そのコンテンツ視聴時に各登場人物のセリフを読み上げる合成音キャラクタとの対応付けを、複数の合成音キャラクタのキャラクタ画像が一覧表示された状態で、ユーザが自由に指定することができる技術が知られている。これによって、ユーザは、配信される作品の登場人物に、自分の好きな合成音キャラクタのキャラクタ音声を割り当てて、その作品を視聴することができる。
【0007】
しかしながら、このようなコンテンツ配信とユーザカスタマイズ機能を実現しようとする場合には、いくつかの課題がある。
【0008】
まず、配信されるコンテンツデータは、作品ごとに固有に、登場人物とセリフとがきめ細かく対応付けられている必要がある。それゆえ、ユーザが利用できるコンテンツとキャラクタ音声は、サービス提供者から配信されるものか、それらを組み合わせたものに限定されてしまう。
【0009】
仮に各コンテンツに対する読み上げスタイルをユーザが自由に編集できるようにして、特定のコンテンツに応じた読み上げスタイルに関する情報を、サービス提供者に依存せずに、自由に配布・共有できる枠組みを考えた場合であっても、読み上げのスタイル情報において定義されているパラメータ及び使用する音声キャラクタは、作成者の環境に依存したものとなる。
【0010】
そのため、あるコンテンツを視聴しようとするユーザにとって、共有されているスタイル情報を参照して、あるコンテンツの読み上げを再現するためには、作成者と同じ環境(同じキャラクタ音声のバリエーション、同等以上の機能をもつ音声合成エンジン)が利用できなければならない。
【0011】
これは、ユーザにとって、ありとあらゆる音声キャラクタを所有している必要を強いることになり、現実的ではない。また、コンテンツ配信元の提供コンテンツと推奨環境でしか書籍データを読み上げられないことになり、先に述べたようなユーザの自由な読み上げ環境とは程遠いものとなる。
【0012】
さらに、同一ユーザであっても、再生したい環境・機器は、状況によって異なる場合があり、常に同一の環境・機器で視聴されるとは限らない。たとえば、デスクトップPCなどの計算機リソースが充実した環境で、朗読音声をスピーカから聴く場合、または、屋外で携帯電話もしくはタブレットPCなどのモバイル機器を用いてヘッドホンもしくはイヤホンで聴く場合には、機器の制約上、たとえば、使用できるキャラクタ音声のバリエーションが限定されていたり、計算量を多く使用するような音声合成エンジンの機能の使用が制限されることが考えられる。
【0013】
また、逆に特定の環境下においてのみ動作させたい機能(屋外でモバイル機器を利用するときにノイズリダクションを適用するなど)も考えられるが、こうしたユーザの環境の違い及び/又は利用可能な計算機リソースの違いに応じて、読み上げスタイル情報を柔軟に適用してコンテンツを再生することができなかった。
【0014】
一方、こうしたメタデータの共有・作成がユーザ間で草の根的に広まり、公式・非公式を問わず、さまざまなバリエーションが存在する場合には、ユーザの楽しみ方の選択肢が増える一方で、実際に朗読音声として再生してみるまで、その読み上げ方あるいはキャラクタ特徴が分らないという懸念もある。
【0015】
例えば、悪意をもったユーザが、コンテンツ内容と対応させて不適切な表現で読み上げるようなメタデータもしくは突然極端な音量変化を伴うようなメタデータを用意した場合、または、悪意はなくとも作品の演出上もしくは音声キャラクタの特性上、聞き苦しい朗読音声となる場合には、メタデータに従った朗読が、必ずしも全てのユーザにとってメリットとはならない場合がある。
【先行技術文献】
【特許文献】
【0016】
【特許文献1】特開2003−122554号公報
【発明の概要】
【発明が解決しようとする課題】
【0017】
文書データの読み上げに関するメタデータのユーザカスタマイズの容易性と、文書データの読み上げに使用するシステム環境の柔軟性を確保するとともに、読み上げの再現性を損なわないようにする技術は、知られていなかった。
【0018】
本実施形態は、文書データの読み上げに関するメタデータのユーザカスタマイズの容易性と、文書データの読み上げに使用するシステム環境の柔軟性を確保するとともに、読み上げの再現性を損なわないようにすることの可能な文書読み上げ支援装置、方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0019】
実施形態によれば、文書読み上げ支援装置は、文書取得部と、メタデータ取得部と、抽出部と、実行環境情報取得部と、決定部と、ユーザ検証部と、音声合成器とを備える。文書取得部は、複数のテキストを含む文書データを取得する。メタデータ取得部は、ルールを適用すべきテキストに関する条件と、該条件が適合するテキストに対する読み上げスタイルとを含む定義情報を複数含むメタデータを取得する。抽出部は、各々の前記定義情報を前記文書データに含まれるテキストに適用することによって、前記文書データの特徴を抽出する。実行環境情報取得部は、前記文書データの読み上げを実行する環境に関する実行環境情報を取得する。決定部は、前記文書データの特徴及び前記実行環境情報に基づいて、前記メタデータを前記文書データに適用して読み上げを実行する際に使用するパラメータの候補を決定する。ユーザ検証部は、前記パラメータの候補をユーザに提示し、選択又は確定を含む検証指示を受け付ける。
【図面の簡単な説明】
【0020】
【図1】実施形態に係る文書読み上げ支援装置の構成例を示す図である。
【図2】実施形態に係る文書読み上げ支援装置の処理手順の一例を示すフローチャートである。
【図3】入力文書の一例を示す図である。
【図4】メタデータの一例を示す図である。
【図5】メタデータ取得部の処理手順の一例を示すフローチャートである。
【図6】メタデータ取得部により得られる変換ルールの一例を示す図である。
【図7】入力文書特徴取得部の処理手順の一例を示すフローチャートである。
【図8】入力文書特徴取得部により得られる処理結果例を示す図である。
【図9】入力文書特徴取得部により得られる処理結果例を示す図である。
【図10】実行環境取得部により得られる抽出結果例を示す図である。
【図11】ユーザ設定制約取得部により得られる抽出結果例を示す図である。
【図12】ユーザ設定制約取得部により得られる抽出結果例を示す図である。
【図13】パラメータ決定部の処理手順の一例を示すフローチャートである。
【図14】ユーザ検証部による提示例を示す図である。
【発明を実施するための形態】
【0021】
以下、図面を参照しながら本発明の実施形態に係る文書読み上げ支援装置について詳細に説明する。
【0022】
本実施形態では、電子書籍データを合成音声で読み上げる場合に、読み上げの工夫となる感情、調子、話者の違いなどを、メタデータとして定義し、必要に応じてこれらを参照することで、入力文書の内容、特徴に応じた多様な表現で、合成音による朗読を実現することを考える。その際、本実施形態に係る文書読み上げ支援装置は、コンテンツに対応した読み上げスタイルや、キャラクタボイスに特化した読み上げスタイルを、情報(メタデータ)を共有して利用する場合に、ユーザが実際に利用できる計算機リソースや機能、読み上げ対象とするコンテンツの違いを考慮して、再現性を確保した再生を試みる(あるいは、ユーザに適した条件下で再現性を高める)ことができるようになる。
【0023】
図1に、本実施形態の文書読み上げ支援装置の概要図を示す。
【0024】
図1に示されるように、文書読み上げ支援装置は、入力取得部11、メタデータ取得部12、入力文書特徴抽出部13、実行環境取得部14、ユーザ設定制約取得部15、パラメータ決定部16、ユーザ検証部17、音声合成器18を含む。
【0025】
図2に、本実施形態の概略的な処理手順の一例を示す。
【0026】
入力取得部11は、入力文書1を入力し(ステップS1)、メタデータ取得部12は、メタデータ2を入力する(ステップS2)。
【0027】
入力文書1は、例えば、ボイスキャラクタによる読み上げ対象とする、複数のテキストを含む電子書籍である。入力文書1は、例えば、DOM形式で格納される。
【0028】
メタデータ2は、例えば、特定のコンテンツ読み上げと特定の音声キャラクタに依存してカスタマイズされている合成パラメータ、アクセント又は読みなどの特徴量とその適用条件などであり、例えば、取得された条件と特徴量が、後段のパラメータ決定処理で利用できる形式で格納される。
【0029】
入力文書1は、例えば、インターネット又はイントラネットなどのネットワークを介して取得されても良いし、あるいは、例えば、記録媒体から取得されても良い。メタデータ2についても、同様である。入力文書1とメタデータ2が同じ作成者によるものである必要はない。また、入力文書1及び/又はメタデータ2が、ユーザ自身で作成したものであっても良い。
【0030】
ステップS1とステップS2は、図2とは逆の順序で実行されても良いし、同時に実行されても良い。
【0031】
入力文書特徴抽出部13は、メタデータ2に基づいて、入力文書1の特徴を抽出する(ステップS3)。
【0032】
実行環境取得部14は、ボイスキャラクタによる読み上げを実行する当該のシステムに関する実行環境情報を取得する(ステップS4)。実行環境情報は、どのような方法で取得されても構わない。
【0033】
ユーザ設定制約取得部15は、読み上げに対するユーザ設定制約を取得する(ステップS5)。
【0034】
ステップS4とステップS5は、次のパラメータ決定部16による処理までに実行されれば良く、どのようなタイミングで実行されても構わない。
【0035】
なお、このユーザ設定制約取得部15を省く構成も可能である。
【0036】
パラメータ決定部16は、ここまでに獲得した処理結果を統合して、実際の読み上げに用いるためのパラメータ情報を決定する(ステップS6)。
【0037】
ユーザ検証部17は、ユーザがパラメータ情報を選択・確定するためのユーザ検証を実行する(ステップS7)。例えば、あるパラメータについて、ユーザが選択可能な候補が複数ある場合には、ユーザは、所望のパラメータを選択することによって、確定を行っても良い。
【0038】
音声合成器18は、上記メタデータ2及び上記パラメータ情報を使用して、入力文書1に対する合成音声を生成して、ボイスキャラクタによる読み上げ音声として出力する(ステップS8)。
【0039】
以下、各部について説明する。
【0040】
(入力取得部11)
ユーザが利用対象とする、複数のテキストを含む書籍データは、入力取得部11により、入力文書1として取得される。入力取得部11は、該取得された書籍データから、テキスト情報を抽出する。該書籍データにレイアウト情報が含まれている場合には、該テキスト情報に加えて、レイアウト情報も取得する。
【0041】
レイアウト情報は、例えば、描画されるページレイアウト内でのテキスト情報、位置、フォントサイズ、フォントスタイルなどのような情報である。また、例えば、XHTML又はスタイルシートによるフローティングレイアウトの場合には、例えば、論理要素としてテキストに付与されている改行、パラグラフ要素、タイトル要素、キャプション要素などのような情報である。
【0042】
これらのような情報を含む入力文書1を、例えば、DOM形式により木構造で格納しておいても良い。なお、レイアウト情報がない場合でも、例えば、改行ごとに行を表す論理要素を定義し、テキストをそれらの子要素としてぶら下げることによって、入力文書1をDOM形式で表現することができる。
【0043】
図3に、DOM化された入力文書の一例を示す。図3では、DOM形式で格納された文書を、テキストノードごとにリスト表示している。この例では、個々のテキストノードは、個々の作品を識別する「作品ID」、その作品での出現順に付けられた「テキストノードID」、そのテキストノードの内容である「テキスト要素」、そのテキストが属する構造を示す「構造情報」、そのテキストがセリフ(dialogue)か地の文(description)かを示す「文タイプ」、そのテキストを話す作品中の登場人物等を示す「話者」を含む。なお、文タイプ及び話者については、例えば、既知の推定処理により又は人手により作成された情報を、属性及び属性値として埋め込んであるものとしても良い。
【0044】
以下では、文書データをDOM形式で格納する場合を例にとって説明するが、これに制限されない。
【0045】
(メタデータ取得部12)
ユーザが利用対象とする上記書籍データに対するメタデータが、メタデータ取得部12によりメタデータ2として取得される。
【0046】
ここで、メタデータとは、例えば、コンテンツ中の文又はフレーズ又は単語の読み変え定義、特定の文脈においてキャラクタに発話させたい文又はフレーズ又は単語などの定義などを、列挙したものである。この列挙された内容から、以下の観点などに基づいて変換内容を取得し、後段で利用できる情報に変換して保持しておく。
(1)表記間の対応:コンテンツ中の部分文字列を条件として、変換内容を対応付けることができるもの。
(2)文節情報を条件とする対応:コンテンツ中の形態素又は品詞情報を条件として、変換内容を対応付けることができるもの。
3)その他の条件による対応:コンテンツ中の文字列又は形態素だけでは変換条件が一意に決まらず、対象文字列の文脈として、それが属する文書中の論理要素、近傍の単語、フレーズ、話者などと組み合わせて変換内容を対応付けることができるもの。
【0047】
図4は、メタデータの一例を示す。この例では、メタデータ中に、適用条件と、適用条件が合致する文又はフレーズ又は単語に適用される変換(アクセント編集又は読み方定義)とが記載されたカスタマイズ定義が複数含まれている。具体的には、個々のカスタマイズ定義は、「作品ID」、「ルールID」、「条件文」、「アクセント編集」、「ボイスキャラクタ」、「読み方定義」、「文タイプ」を含む。図4の例では、使用されているボイスキャラクタとして、A,B,C,K,Lが存在する。なお、図4の例において、ボイスキャラクタA,B,Cは、文タイプ属性として、セリフ向き(dialogue)、ボイスキャラクタK,Lは、文タイプ属性として、地の文向き(description)という特徴を持つものとする。
【0048】
以下の説明では、図4のメタデータを具体例として用いるが、これに制限されない。
【0049】
以下、メタデータ取得部12の処理手順の具体的な流れについて説明する。
【0050】
図5に、メタデータ取得部12の処理手順の一例を示す。
【0051】
まず、はじめに、カスタマイズ定義を順に取得する(ステップS11)。
【0052】
次に、読み込んだカスタマイズ定義の中で用いられているボイスキャラクタを確認する。同じボイスキャラクタがあれば、それらの条件も取得し、ボイスキャラクタ毎にまとめておく(ステップS12)。
【0053】
図4の具体例では、使用されているボイスキャラクタとして、A,B,C,K,Lが存在するため、これらをそれぞれまとめておく。なお、図4は、説明の便宜上、すでにボイスキャラクタ毎にまとめられた状態で示している。
【0054】
また、異なる条件で共通する部分表記があれば、まとめておく(ステップS13)。
【0055】
次に、表層の情報を取り出して、ルール化する(ステップS14)。
【0056】
図4の例では、まず、ルールID2,3のカスタマイズ定義にボイスキャラクタBの“〜にゃー”という読み方定義があるため、それぞれ、この表記と条件文(条件文中の対応箇所)とを対応付けておく。
【0057】
次に、品詞情報を取り出して、ルール化する(ステップS15)。
【0058】
上記例において、それらの表現に対して品詞レベルの情報を取り出して、条件文と読み方定義との間の関係を見る。
【0059】
それぞれの条件表記部分の品詞情報を抜き出すと、
ルールID2:し<動詞>ます<助動詞>→“するにゃー”
ルールID3:の<助詞>→“にゃー”
となっており、これらを対応付けておく。
【0060】
次に、文脈情報を取り出して、ルール化する(ステップS16)。
【0061】
上記例において、それらの条件文の文脈情報として、まず、ルールID2の条件文全体に形態素解析を適用すると、
“なんだか<副詞>/まったり<副詞>/し<動詞>/ます<助動詞>/。<記号>/”
と表記される。ここで、記号“/”は文節の境界を示し、山かっこで記載されたラベル名は、それぞれの形態素に対する品詞名を示しているものとする。
【0062】
また、ルールID3の条件文に形態素解析を適用すると、
“それ<名詞>/は<助詞>/ちがう<動詞>/と<助詞>/おもう<動詞>/の<助詞>/。<記号>/”
となる。
【0063】
文脈として、周辺の情報とより細かな品詞情報を利用すると、
“/し<動詞>/ます<助動詞>/”→“/する<動詞(基本系)>/にゃ<助詞>/ー<名詞>/”
“/おもう<動詞>/の<助詞>/”→“/おもう<動詞(基本系)>/にゃ<助詞>/ー<名詞>/”
となる。
【0064】
次に、共通部分をマージする(ステップS17)。
【0065】
まず、同じボイスキャラクタのデータ内で共通部分のマージができるかをチェックする。
【0066】
上記例において、チェックの結果、条件部と帰結部をそれぞれまとめ上げて、
“/<動詞>/<助詞|助動詞>/”→“/<動詞(基本系)>/にゃ/ー/”
(ボイスキャラクタB)
としておく。なお、ここで、品詞ラベル間の縦棒は、論理和(or)を示すものとする。
【0067】
同様に、ボイスキャラクタCに対して、
“/<動詞>/<助詞|助動詞>/”→“/<動詞(基本系)>/です/の/ー/”
ボイスキャラクタKに対して、
“/<動詞>/まし<助動詞A>/<助動詞B>/<助動詞C>?/”→“/<動詞(基本系)>/<助動詞B>/で/ござる/”
といったまとめ上げ結果が得られる。
【0068】
さらに、ルールID1の条件文に対しても、同様の処理を行う。まず、品詞情報を見ると、
“とても<副詞>”→“とてーも”
“です<助動詞>”→“ぴょん”
と表現されていることがわかる。しかし、文脈情報を用いても共通化できる部分がないため、この品詞付き表記を、まとめ上げ結果として格納しておく。
【0069】
また、ルールID102の定義を見ると、アクセント表記が定義されている。これに関しても同様の処理を行い、
“ソレハチガウヨ<名詞>”→“ソ’レハチガ’ーウヨ”
とした対応付けを格納しておく。
【0070】
なお、上記のアクセント表記は、’の直前にアクセントがあることを意味しているものとする。よって、上記具体例では、「ソ」と「ガ」にアクセントがある)。
【0071】
まとめた結果(変換ルール)は、内部データとして格納し(ステップS18)、すべての条件定義について処理が完了したか判定する(ステップS19)。完了していないならば、ステップS1に戻って処理を繰り返し、完了しているならば、図5の処理を終了する。
【0072】
図6に、図4の具体例に対する処理をまとめた結果(変換ルール)を例示する。この変換ルール例において、個々の変換ルールは、「変換ルールID」、「条件」、「帰結」、「ボイスキャラクタ」、「元ID(図4のメタデータにおけるルールID)」、「文タイプ」を含む。
【0073】
(入力文書特徴抽出部13)
次に、入力文書特徴抽出部13について説明する。
【0074】
入力文書特徴抽出部13は、入力取得部11により得られたDOM形式の文書データと、メタデータ取得部12により得られた変換ルールとを入力として、各変換ルールが文書データに対してどのような影響を及ぼすかについての情報を獲得する。
【0075】
以下、入力文書特徴抽出部13の処理手順の一例について説明する。
【0076】
図7に、入力文書特徴抽出部13の処理手順の一例を示す。
【0077】
まず、DOM形式の文書データを受け取る(ステップS21)。ここでは、一例として、図3に示される文書データが得られるものとする。
【0078】
次に、格納済みメタデータを受け取る(ステップS22)。ここでは、一例として、図6に示されるメタデータ取得結果が得られるものとする。
【0079】
なお、図3の例におけるJ,P,Q,R,Tは、話者(作品中の登場人物等)であり、図6の例におけるA,B,C,K,Lは、ボイスキャラクタである。
【0080】
続いて、格納されているメタデータから、順に、変換ルールを読み込み、文書データに適用していく(ステップS23)。
【0081】
各ノードに対してルールを適用し、条件部がマッチしたルールについては、その変換ルールIDと、適合したテキストノードとを対応付けて保持しておく(ステップS24)。
【0082】
次に、条件文が一致する話者との関連性を、枚挙する(ステップS25)。条件文が一致しているルール中の話者(ボイスキャラクタ)と、文書データ中の話者(作品中の登場人物等)とを対応付けて保持しておく。
【0083】
また、表記(文末表現)で類似しているルール中の話者と、文書データ中の話者との対応があれば、関連付けて保持しておく(ステップS26)。
【0084】
また、文のタイプで類似しているルール中の話者と、文書データ中の話者との対応があれば、関連付けて保持しておく(ステップS27)。
【0085】
また、文書要素(構造情報)で類似する話者との対応があれば、これを枚挙しておく(ステップS28)。
【0086】
全てのルールについて検証が完了したかどうか判定する(ステップS29)。全てのルールについて検証が完了すれば、処理を終了する。一方、未検証のルール・文があれば、順にメタデータを読み込み、同様の処理を繰り返す。
【0087】
図8と図9に、入力文書特徴抽出部13の処理結果例を示す。
【0088】
図8は、文書データ中の各テキストノードに対応して、ルールがマッチした変換ルールIDを示している。図8は、図3のような文書データにおいて、各テキストノードに適合する変換ルールIDを示す「適合ルールID」が更に追加されている。この具体例では、たとえば、テキストノードID40に対して、適合ルールID5が、テキストノードID42に対してルールID4が、さらにテキストノードID105に対して、ルールID1とID2とが適合していることが示されている。なお、テキストノードIDと適合ルールIDとの対応は、図3のような文書データに組み込んで保持しても良いし、図3のような文書データとは独立して保持しても良い。
【0089】
図9は、これらの対応結果から、それぞれ異なる観点で得られた話者間の関連性についてまとめた結果である。個々の結果は、「番号」、「条件文の一致による話者との関連」、「文末表現による話者との関連」、「文タイプとの関連」、「構造情報による関連」を含む。なお、P=*は、Pは、すべてのボイスキャラクタと対応することを意味する。
【0090】
例えば、図9の第一列では、条件文が一致することによる話者間の対応付けとして、それぞれルールと入力文書との対応付けから、第一行のPとA、第二行のRとA、第三行のTとB、第四行のTとCがそれぞれ枚挙されている。
【0091】
次に、文末表現での対応関係から、話者間の関連性を抽出する。
【0092】
ここでは、ですます調と、だ・である調との区別を行い、同じグループに属するものを特定しておく。例えば、正規表現のマッチングにより、「.+です。」または「.+ます。」のいずれかにマッチしたものは「ですます調」と判定し、「.+だ。」または「.+である。」のいずれかにマッチしたものは「である調」と判定することによって、それらを区別することができる。この結果に基づいて、同じ性質を持っている話者を、対応付けるものとする。
【0093】
例えば、まず、図8のテキストノードID40が「ですます調」であることが分かるため、話者(作品中の登場人物等)Pと、図4における条件文で「ですます調」である話者(ボイスキャラクタ)A,B,Cとの間に対応関係が見られたものとする。その結果、文末表現による話者との対応では、P=A,B,Cが得られる。
【0094】
また、図8のテキストノードID105の話者Tは「ですます調」であることがわかり、これに対応する適合ルールID1,ID2は、図4における話者A,Bに対応する。その結果、T=A,Bが得られる。
【0095】
次に、文タイプに基づく関連情報を抽出しておく。
【0096】
例えば、図9の番号(1)では、ここまでの関連として話者(作品中の登場人物等)Pと話者(ボイスキャラクタ)Aとの対応が候補として挙がっているが、この話者Pのテキストノード「それじゃあ、あんまりです。」を見ると、この文タイプは「セリフ向き(dialogue)」であることがわかる。一方で、このテキストのノードにヒットしたルール(図6の変換ルールID5)における話者Aも、文タイプ「セリフ向き(dialogue)」の特徴を有しているので、同一属性を保持していることになる。
【0097】
また、番号(2)でも同様に、話者Rのテキストノード「だが、これはとても君たちの力では無理だと言っていたのではなかったかね?」についても文タイプは「セリフ向き(dialogue)」であり、このルールが適合している変換ルールにおける話者Aも「セリフ向き(dialogue)」であり、同一の関係となっている。
【0098】
一方で、番号(3)と(4)については、入力文のタイプが「地の文向き(description)であるが、それぞれに対応する変換ルール(ID1,2)の話者は、図6では「セリフ向き(dialogue)」のB,Cであったので、属性が異なることが分かる。
【0099】
さらに、構造情報の関連について記載している。
【0100】
ここでは、最小の汎化となる要素(section_body)のみを明示し、それ以外の差分を省略(*)して記載している。
【0101】
以上を入力文書特徴抽出部13の抽出結果として、後段の処理に渡す。
【0102】
(実行環境取得部14)
次に、実行環境取得部14について説明する。
【0103】
実行環境取得部14では、ユーザが音声合成による読み上げを行うおうとしているシステムの環境に関する情報(システム環境情報)を取得する。
【0104】
システム環境情報は、具体的には、デバイスとOSの情報の他、ユーザが利用可能な、音声合成エンジン、ボイスキャラクタ、パラメータレンジなどの情報である。インストールされている音声合成エンジンから取得できるプロパティ情報として、例えば、音声合成エンジン(TTS)の名称とバージョンがあり、利用可能な音声(ボイスキャラクタ)の属性として、キャラクタ名称、利用可能な言語、話者性別、話者年齢などがある。パラメータレンジは、音声合成エンジンがサポートするパラメータ情報として得られる。
【0105】
図10に、この実行環境取得部14による取得結果例を示す。
【0106】
ここでは、利用可能な2点の動作環境について例を示す。
【0107】
まず、デバイス(端末)の種類とOS名、音声合成エンジン名の他、利用可能なキャラクタ、利用可能な言語(この例では、JP(日本語)とEN(英語))、利用可能な性別(この例では、Male(男性)、Female(女性))、利用可能なキャラクタの声年代(この例では、Adult(大人)、Child(子供))といった属性が枚挙されている。
【0108】
さらに、音声合成用のパラメータとして、Volume(調整できる音量幅)が0から100までの連続値であること、Pitch情報については、図10の上段に示されるリソースであれば、連続値として(−20から20)が設定できる一方で、図10の下段に示されるリソースであれば、5段階の離散値しかサポートしない、といったことが示されているものとする。また、Range、Rate、Break(ポーズ長)といったパラメータについても同様に、連続値(continuous)か、離散値(descrete)か、さらに連続値の場合は、値の幅や離散値の場合は、何段階の幅をとれるかの段数などが記載されているものとする。
【0109】
これらの取得結果を後段の処理に渡す。
【0110】
(ユーザ設定制約取得部15)
次に、ユーザ設定制約取得部15について説明する。
【0111】
ユーザ設定制約は、例えば、メタデータよりも優先して適用すべきユーザの指定条件及び/又は制約条件などである。具体的には、例えば、特定のパラメータの値を指定し、あるいは、特定のパラメータの値域を指定しても良い。
【0112】
図11に、ユーザ設定制約取得部15がユーザからの指示情報を取得するためのユーザインタフェースの例を示し、図12に、取得した結果の格納例を示す。
【0113】
まず、ユーザは、図11に例示するような、各項目に対応して自由に値を設定することができるユーザインタフェースを使用して、読み上げに影響を及ぼす項目について、あらかじめ制約を設定しておくことができるものとする。
【0114】
図11の例において、項目“感情変化読み”では、例えば文書中の激怒、怒号、号泣等に相当する激しい感情表現について、合成音声として再現することをどの程度許容するかを指定する。この項目について、例えば“フル(制限なし)”と設定されていれば、メタデータ又はユーザカスタマイズ結果の激怒又は号泣等の定義に対して、それをそのまま感情韻律辞書などを適用したり、合成エンジンに与えるパラメータを変更するなどの手法で、読み上げ時に再現を試みる。一方、これ以外の値に設定されている場合は、その割合に応じて、感情表現の強さの度合いを調整する。例えば、微小であれば、感情表現の効果を9割方減じて読み上げを行い、穏やかであれば半分ほどの程度(激怒→怒)に抑えた読み上げを行う、などである。
【0115】
また、項目“ワード・表現”では、小説において又はストーリー上で出現する、ならず者又は乱暴者の残虐・乱暴・粗雑な表現、言い回し韻律などの程度情報を設定できるものとする。例えば、制限がなければ、メタデータ又はユーザカスタマイズ情報に沿った読み上げを実現する一方で、この設定値を下げている場合には、太くて低い凄みのある声の効果を低減したり、特定の表現又は文又はフレーズ又は単語を置き換えた読み上げを行う。
【0116】
また、項目“音量・テンポ変化”では、例えば、怪談クライマックス時の「わっ!」といった驚かせ表現、突然の叫び声、疾走・逃走中の激しい緊迫又は速度間のある読み上げ効果について、程度情報を指定する。先の例と同じように、“フル”であればメタデータ定義又はユーザのカスタマイズ情報にそのまま従うが、この設定に制約を掛けている場合には、これらの程度を落として読み上げを行う。
【0117】
図12に、ユーザインタフェース上での設定を、ユーザ設定制約取得部15で格納した場合の一例を示す。
【0118】
図11に示すユーザインタフェース上のスライダ値に応じて、各項目の上限値(可変値)が設定されるものとする。ここでは、感情表現の程度がフルの場合の75%程度、許容するワードや表現で30%程度、音量やテンポ変化の度合いは、フルの場合の55%程度までを許容するものと設定されたと仮定する。
【0119】
これらの結果を、後段のパラメータ決定部16に渡す。
【0120】
(パラメータ決定部16、ユーザ検証部17)
次に、パラメータ決定部16及びユーザ検証部17について説明する。
【0121】
パラメータ決定部16では、ここまでに獲得した処理結果を統合して、実際の読み上げに用いるためのパラメータ情報を決定する。
【0122】
図13に、パラメータ決定部16の処理手順の一例を示す。
【0123】
以下、パラメータ決定部16の処理手順の一例について説明する。
【0124】
まず、前段までの処理結果であるメタデータの格納結果(ステップS31)、入力文書特徴抽出部の処理結果(ステップS32)、実行環境取得部14の抽出結果(ステップS33)およびユーザ設定制約取得部15での抽出結果(ステップS34)を受け取る。
【0125】
次に、ユーザに提示する各項目について、それぞれの再現度を計算する。なお、ステップS36とステップS37の一方又は両方を省く構成も可能である。
【0126】
ここで、再現度の比較対象とする推奨環境について説明する。
【0127】
推奨環境は、本実施形態では、ボイスキャラクタに関する推奨環境、読み上げの際の感情(表現)に関する推奨環境(オプション)、パラメータに関する推奨環境(オプション)の3つを想定しているが、これに制限されない。
【0128】
ボイスキャラクタに関する推奨環境について説明する。
【0129】
例えば、入力文書特徴抽出部13による処理結果、例えば図8と図9の結果から、例えば、図3の電子書籍に図4のメタデータを適用する場合に推奨されるボイスキャラクタを選択することができる。例えば、図3の文書データ中の話者P,R,Tに、それぞれ、図4のメタデータ中のボイスキャラクタB,A,Cを対応させる割り当てる方が可能であることが分る。また、例えば、文書データにおいて話者の属性(例えば、言語・性別・年齢・性格など)のデータがあり、かつ、メタデータにおいてボイスキャラクタの属性(例えば、言語・性別・年齢・性格など)のデータがある場合に、入力文書特徴抽出部13による処理結果に加えて、それら属性のデータを考慮して、文書データ中の話者に、メタデータ中のボイスキャラクタを割り当てる方法も可能である。その他にも、推奨ボイスキャラクタを選択する様々な方法が可能である。
【0130】
図14に、ボイスキャラクタの推奨環境を例示する(なお、図14のボイスキャラクタの名称は、これまでとは異なる名称で例示しているが、これまでの例を使用すれば、図14のボイスキャラクタの推奨環境に、ボイスキャラクタA,B,Cなどが記述されることになる。)
なお、図14の例では、ボイスキャラクタのみリストされているが、各ボイスキャラクタに対応する文書データ中の話者を併せて提示しても良い。
【0131】
ところで、ユーザのシステム環境においては、ボイスキャラクタとして、A,B,Cなどあるいは図14で言えば「川崎太郎」などが利用可能とは限らない。ユーザが利用できるのは、ユーザのシステム環境において利用可能なボイスキャラクタのみである。
【0132】
そこで、推奨されるボイスキャラクタと、ユーザが利用可能なボイスキャラクタとを比較して、話者に関する再現度を計算する(ステップS35)。
【0133】
話者に関する再現度は、例えば、入力文書に出現する話者の特徴量(及び/又は、該話者に対応するボイスキャラクタの特徴量)と、ユーザが音声合成器で利用可能なキャラクタボイスの特徴量の一致度として表現できる。具体的には、例えば、それぞれが属性としてもつ利用可能な言語・性別・年齢などの各項目を、適当に正規化して、ベクトルの要素として表現しておき、それらのベクトル間の類似度(例えば、コサイン距離)を求め、これを一致度の尺度として用いることができる。その他にも、種々の再現度計算方法が可能である。
【0134】
次に、利用するのが推奨されるパラメータのカバー幅のデータが例えばメタデータの一部として提供されている場合に、音声合成器で利用可能なパラメータのカバー幅について、再現度を計算する(ステップS36)。これも、上記と同様、例えば、パラメータのカバー幅を、ベクトルの要素として、ベクトル間の類似度を求め、これを一致度の尺度として用いることができる。
【0135】
次に、利用するのが推奨される感情表現(例えば、平、驚、怒、哀、厭など)のデータが例えばメタデータの一部として提供されている場合に、音声合成器で利用可能な感情表現の有無について、再現度を計算する(ステップS37)。これも、上記と同様、例えば、感情表現の有無を、ベクトルの要素として、ベクトル間の類似度を求め、これを一致度の尺度として用いることができる。
【0136】
なお、ステップS35〜S37は、どのような順序で計算を行っても良い。また、ステップS36とS37の一方又は両方を省く構成も可能である。
【0137】
また、統合した全体的な一致度(再現度)についても計算しておく(ステップS38)。この総合的な再現度は、例えば、各機能に関する一致度の積として、以下のように定義することができる。
再現度=話者特徴量の一致度×利用可能感情の一致度×再生可能なパラメータの一致度×メタデータ改変箇所の文書特徴カバー率
なお、総合的な再現度として、例えば、数値を示しても良いし、あるいは、数段階にレベル分けして、そのレベル値を示しても良い。
【0138】
ユーザ検証部17は、上記のように算定された各機能に関する一致度について、例えば図14に示すように、機能ごとに個別に提示するとともに、総合的な再現度を併せて提示する(ステップS39)。
【0139】
例えば、第2行の作品において、推奨ボイスキャラクタ「岡山高知」に対して、実行環境においては、「岡山高知」が使用可能でなく、最も高い一致度をもつ「川崎太郎」が提示されている。また、ここでは、「川崎太郎」の横のボタンを押すことによって、次候補以降の推奨ボイスキャラクタに変更・選択できるようになっている。
【0140】
また、例えば、第1行の作品において、推奨ボイスキャラクタ「川崎太郎」に対して、実行環境においては、これと一致する「川崎太郎」が提示されている。この場合には、実行環境におけるボイスキャラクタの次候補は提示しないものとしている。
【0141】
なお、各機能について、一致度を明示的に提示するようにしても良い。あるいは、例えば、一致度の低い項目を提示する欄の枠内自体又は表示文字を、ハイライト表示しても良い。例えば、その際に、一致度を何段階かにレベル分けして、レベルごとに異なる色又は明るさを使用しても良い。逆に、一致度の高い項目を提示する欄の枠内自体又は表示文字を、ハイライト表示しても良い。
【0142】
また、総合的な再現度を提示するにあたって、総合的な再現度が高い場合と低い場合とで、異なる形態(例えば、異なる色)で表示しても良い。例えば、図14の例で、「Excellent」「Good」「Okay」と、「Poor」「Bad」とで、異なる表示色を使用しても良い。
【0143】
これらの他にも、ユーザに結果を伝えやすくするための様々な表示方法が可能である。
【0144】
次に、ユーザの確認・修正を得る(ステップS41)。
【0145】
例えば、第1候補として提示されているボイスキャラクタの横のボタンを押すことによって、次候補以降の推奨ボイスキャラクタに変更・選択する。
【0146】
ステップS41のユーザの確認・修正は、ユーザが繰り返し行うことが可能であり、提示した結果に対してユーザによる確認・選択指定が完了すれば(ステップS40)、この処理を終了する。
【0147】
なお、ユーザが、最終的な確定の指示を明示的に入力するようにしても良い。例えば、確定ボタンを設けても良い。
【0148】
処理結果は、制御パラメータとして音声合成器18へ渡される。
【0149】
(音声合成器18)
音声合成器18は、制御用パラメータとして、各話者指定及び文書表現にマッチする変換ルールを適用しながら、合成音声を生成して、ボイスキャラクタによる読み上げ音声として出力する。
【0150】
以上の手順により、ユーザが実際に利用できる計算機リソースや機能、読み上げ対象とするコンテンツの違いを考慮して、再現性を確保した再生が実現できる。
【0151】
本実施形態によれば、文書データの読み上げに関するメタデータのユーザカスタマイズの容易性と、文書データの読み上げに使用するシステム環境の柔軟性を確保するとともに、読み上げの再現性を損なわないようにすることが可能になる。
【0152】
また、上述の実施形態の中で示した処理手順に示された指示は、ソフトウェアであるプログラムに基づいて実行されることが可能である。汎用の計算機システムが、このプログラムを予め記憶しておき、このプログラムを読み込むことにより、上述した実施形態の文書読み上げ支援装置による効果と同様な効果を得ることも可能である。上述の実施形態で記述された指示は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フレキシブルディスク、ハードディスクなど)、光ディスク(CD−ROM、CD−R、CD−RW、DVD−ROM、DVD±R、DVD±RWなど)、半導体メモリ、またはこれに類する記録媒体に記録される。コンピュータまたは組み込みシステムが読み取り可能な記録媒体であれば、その記憶形式は何れの形態であってもよい。コンピュータは、この記録媒体からプログラムを読み込み、このプログラムに基づいてプログラムに記述されている指示をCPUで実行させれば、上述した実施形態の文書読み上げ支援装置と同様な動作を実現することができる。もちろん、コンピュータがプログラムを取得する場合または読み込む場合はネットワークを通じて取得または読み込んでもよい。
また、記録媒体からコンピュータや組み込みシステムにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているOS(オペレーティングシステム)や、データベース管理ソフト、ネットワーク等のMW(ミドルウェア)等が本実施形態を実現するための各処理の一部を実行してもよい。
さらに、本実施形態における記録媒体は、コンピュータあるいは組み込みシステムと独立した媒体に限らず、LANやインターネット等により伝達されたプログラムをダウンロードして記憶または一時記憶した記録媒体も含まれる。
また、記録媒体は1つに限られず、複数の媒体から本実施形態における処理が実行される場合も、本実施形態における記録媒体に含まれ、媒体の構成は何れの構成であってもよい。
【0153】
なお、本実施形態におけるコンピュータまたは組み込みシステムは、記録媒体に記憶されたプログラムに基づき、本実施形態における各処理を実行するためのものであって、パソコン、マイコン等の1つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であってもよい。
また、本実施形態におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本実施形態における機能を実現することが可能な機器、装置を総称している。
【0154】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0155】
1…入力文書、2…メタデータ、11…入力取得部、12…メタデータ取得部、13…入力文書特徴抽出部、14…実行環境取得部、15…ユーザ設定制約取得部、16…パラメータ決定部、17…ユーザ検証部、18…音声合成器。
【技術分野】
【0001】
本発明の実施形態は、文書読み上げ支援装置、方法及びプログラムに関する。
【背景技術】
【0002】
近年、計算機リソースの発達とハードウェアの進化により、書籍の電子化(電子書籍)が注目を浴びるようになった。そして、書籍の電子化が進むにつれて、電子書籍を閲覧するための端末又はソフトウェアが一般に出回るようになり、電子化された書籍コンテンツの販売が広まってきた。また、電子書籍の作成支援サービスも広まってきた。
【0003】
電子書籍は、なおも紙媒体と比較して不便な点もある。しかし、大量の紙媒体であったものを電子データとすることによって、運搬、保管及び購入にかかる手間及びコストを削減することができ、また、検索又は辞書引きなどの新たな活用方法を提供することができる。
【0004】
電子書籍に特有の活用方法の一つとして、音声合成システム(TTS)を使用して文書を読み上げ、ユーザが電子書籍の朗読音声を聴くことができるサービスがある。従来からあるオーディオブックは、ナレーション収録を必要とするので、現実的には、限定された書籍だけしか提供することができなかった。これに対して、電子書籍の読み上げサービスによれば、任意のテキスト文書を(その内容によらずに)合成音で読み上げることができる。それゆえ、例えば、ナレーション収録をすることがコストに見合わないようなコンテンツ(例えば、頻繁に更新されるコンテンツなど)や、オーディオブックとして販売が期待できないようなコンテンツ(例えば、ユーザ所有の任意の書籍データ)なども、容易に朗読音声として聴いて楽しむことができる。
【0005】
電子書籍の合成音朗読では、いくつかの技術が提案されている。
【0006】
例えば、配信対象とするある作品のコンテンツデータ中に、その作品中に出てくる登場人物とそのセリフ(台詞)などとの対応が予め定義されており、その作品中に出てくる各登場人物と、そのコンテンツ視聴時に各登場人物のセリフを読み上げる合成音キャラクタとの対応付けを、複数の合成音キャラクタのキャラクタ画像が一覧表示された状態で、ユーザが自由に指定することができる技術が知られている。これによって、ユーザは、配信される作品の登場人物に、自分の好きな合成音キャラクタのキャラクタ音声を割り当てて、その作品を視聴することができる。
【0007】
しかしながら、このようなコンテンツ配信とユーザカスタマイズ機能を実現しようとする場合には、いくつかの課題がある。
【0008】
まず、配信されるコンテンツデータは、作品ごとに固有に、登場人物とセリフとがきめ細かく対応付けられている必要がある。それゆえ、ユーザが利用できるコンテンツとキャラクタ音声は、サービス提供者から配信されるものか、それらを組み合わせたものに限定されてしまう。
【0009】
仮に各コンテンツに対する読み上げスタイルをユーザが自由に編集できるようにして、特定のコンテンツに応じた読み上げスタイルに関する情報を、サービス提供者に依存せずに、自由に配布・共有できる枠組みを考えた場合であっても、読み上げのスタイル情報において定義されているパラメータ及び使用する音声キャラクタは、作成者の環境に依存したものとなる。
【0010】
そのため、あるコンテンツを視聴しようとするユーザにとって、共有されているスタイル情報を参照して、あるコンテンツの読み上げを再現するためには、作成者と同じ環境(同じキャラクタ音声のバリエーション、同等以上の機能をもつ音声合成エンジン)が利用できなければならない。
【0011】
これは、ユーザにとって、ありとあらゆる音声キャラクタを所有している必要を強いることになり、現実的ではない。また、コンテンツ配信元の提供コンテンツと推奨環境でしか書籍データを読み上げられないことになり、先に述べたようなユーザの自由な読み上げ環境とは程遠いものとなる。
【0012】
さらに、同一ユーザであっても、再生したい環境・機器は、状況によって異なる場合があり、常に同一の環境・機器で視聴されるとは限らない。たとえば、デスクトップPCなどの計算機リソースが充実した環境で、朗読音声をスピーカから聴く場合、または、屋外で携帯電話もしくはタブレットPCなどのモバイル機器を用いてヘッドホンもしくはイヤホンで聴く場合には、機器の制約上、たとえば、使用できるキャラクタ音声のバリエーションが限定されていたり、計算量を多く使用するような音声合成エンジンの機能の使用が制限されることが考えられる。
【0013】
また、逆に特定の環境下においてのみ動作させたい機能(屋外でモバイル機器を利用するときにノイズリダクションを適用するなど)も考えられるが、こうしたユーザの環境の違い及び/又は利用可能な計算機リソースの違いに応じて、読み上げスタイル情報を柔軟に適用してコンテンツを再生することができなかった。
【0014】
一方、こうしたメタデータの共有・作成がユーザ間で草の根的に広まり、公式・非公式を問わず、さまざまなバリエーションが存在する場合には、ユーザの楽しみ方の選択肢が増える一方で、実際に朗読音声として再生してみるまで、その読み上げ方あるいはキャラクタ特徴が分らないという懸念もある。
【0015】
例えば、悪意をもったユーザが、コンテンツ内容と対応させて不適切な表現で読み上げるようなメタデータもしくは突然極端な音量変化を伴うようなメタデータを用意した場合、または、悪意はなくとも作品の演出上もしくは音声キャラクタの特性上、聞き苦しい朗読音声となる場合には、メタデータに従った朗読が、必ずしも全てのユーザにとってメリットとはならない場合がある。
【先行技術文献】
【特許文献】
【0016】
【特許文献1】特開2003−122554号公報
【発明の概要】
【発明が解決しようとする課題】
【0017】
文書データの読み上げに関するメタデータのユーザカスタマイズの容易性と、文書データの読み上げに使用するシステム環境の柔軟性を確保するとともに、読み上げの再現性を損なわないようにする技術は、知られていなかった。
【0018】
本実施形態は、文書データの読み上げに関するメタデータのユーザカスタマイズの容易性と、文書データの読み上げに使用するシステム環境の柔軟性を確保するとともに、読み上げの再現性を損なわないようにすることの可能な文書読み上げ支援装置、方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0019】
実施形態によれば、文書読み上げ支援装置は、文書取得部と、メタデータ取得部と、抽出部と、実行環境情報取得部と、決定部と、ユーザ検証部と、音声合成器とを備える。文書取得部は、複数のテキストを含む文書データを取得する。メタデータ取得部は、ルールを適用すべきテキストに関する条件と、該条件が適合するテキストに対する読み上げスタイルとを含む定義情報を複数含むメタデータを取得する。抽出部は、各々の前記定義情報を前記文書データに含まれるテキストに適用することによって、前記文書データの特徴を抽出する。実行環境情報取得部は、前記文書データの読み上げを実行する環境に関する実行環境情報を取得する。決定部は、前記文書データの特徴及び前記実行環境情報に基づいて、前記メタデータを前記文書データに適用して読み上げを実行する際に使用するパラメータの候補を決定する。ユーザ検証部は、前記パラメータの候補をユーザに提示し、選択又は確定を含む検証指示を受け付ける。
【図面の簡単な説明】
【0020】
【図1】実施形態に係る文書読み上げ支援装置の構成例を示す図である。
【図2】実施形態に係る文書読み上げ支援装置の処理手順の一例を示すフローチャートである。
【図3】入力文書の一例を示す図である。
【図4】メタデータの一例を示す図である。
【図5】メタデータ取得部の処理手順の一例を示すフローチャートである。
【図6】メタデータ取得部により得られる変換ルールの一例を示す図である。
【図7】入力文書特徴取得部の処理手順の一例を示すフローチャートである。
【図8】入力文書特徴取得部により得られる処理結果例を示す図である。
【図9】入力文書特徴取得部により得られる処理結果例を示す図である。
【図10】実行環境取得部により得られる抽出結果例を示す図である。
【図11】ユーザ設定制約取得部により得られる抽出結果例を示す図である。
【図12】ユーザ設定制約取得部により得られる抽出結果例を示す図である。
【図13】パラメータ決定部の処理手順の一例を示すフローチャートである。
【図14】ユーザ検証部による提示例を示す図である。
【発明を実施するための形態】
【0021】
以下、図面を参照しながら本発明の実施形態に係る文書読み上げ支援装置について詳細に説明する。
【0022】
本実施形態では、電子書籍データを合成音声で読み上げる場合に、読み上げの工夫となる感情、調子、話者の違いなどを、メタデータとして定義し、必要に応じてこれらを参照することで、入力文書の内容、特徴に応じた多様な表現で、合成音による朗読を実現することを考える。その際、本実施形態に係る文書読み上げ支援装置は、コンテンツに対応した読み上げスタイルや、キャラクタボイスに特化した読み上げスタイルを、情報(メタデータ)を共有して利用する場合に、ユーザが実際に利用できる計算機リソースや機能、読み上げ対象とするコンテンツの違いを考慮して、再現性を確保した再生を試みる(あるいは、ユーザに適した条件下で再現性を高める)ことができるようになる。
【0023】
図1に、本実施形態の文書読み上げ支援装置の概要図を示す。
【0024】
図1に示されるように、文書読み上げ支援装置は、入力取得部11、メタデータ取得部12、入力文書特徴抽出部13、実行環境取得部14、ユーザ設定制約取得部15、パラメータ決定部16、ユーザ検証部17、音声合成器18を含む。
【0025】
図2に、本実施形態の概略的な処理手順の一例を示す。
【0026】
入力取得部11は、入力文書1を入力し(ステップS1)、メタデータ取得部12は、メタデータ2を入力する(ステップS2)。
【0027】
入力文書1は、例えば、ボイスキャラクタによる読み上げ対象とする、複数のテキストを含む電子書籍である。入力文書1は、例えば、DOM形式で格納される。
【0028】
メタデータ2は、例えば、特定のコンテンツ読み上げと特定の音声キャラクタに依存してカスタマイズされている合成パラメータ、アクセント又は読みなどの特徴量とその適用条件などであり、例えば、取得された条件と特徴量が、後段のパラメータ決定処理で利用できる形式で格納される。
【0029】
入力文書1は、例えば、インターネット又はイントラネットなどのネットワークを介して取得されても良いし、あるいは、例えば、記録媒体から取得されても良い。メタデータ2についても、同様である。入力文書1とメタデータ2が同じ作成者によるものである必要はない。また、入力文書1及び/又はメタデータ2が、ユーザ自身で作成したものであっても良い。
【0030】
ステップS1とステップS2は、図2とは逆の順序で実行されても良いし、同時に実行されても良い。
【0031】
入力文書特徴抽出部13は、メタデータ2に基づいて、入力文書1の特徴を抽出する(ステップS3)。
【0032】
実行環境取得部14は、ボイスキャラクタによる読み上げを実行する当該のシステムに関する実行環境情報を取得する(ステップS4)。実行環境情報は、どのような方法で取得されても構わない。
【0033】
ユーザ設定制約取得部15は、読み上げに対するユーザ設定制約を取得する(ステップS5)。
【0034】
ステップS4とステップS5は、次のパラメータ決定部16による処理までに実行されれば良く、どのようなタイミングで実行されても構わない。
【0035】
なお、このユーザ設定制約取得部15を省く構成も可能である。
【0036】
パラメータ決定部16は、ここまでに獲得した処理結果を統合して、実際の読み上げに用いるためのパラメータ情報を決定する(ステップS6)。
【0037】
ユーザ検証部17は、ユーザがパラメータ情報を選択・確定するためのユーザ検証を実行する(ステップS7)。例えば、あるパラメータについて、ユーザが選択可能な候補が複数ある場合には、ユーザは、所望のパラメータを選択することによって、確定を行っても良い。
【0038】
音声合成器18は、上記メタデータ2及び上記パラメータ情報を使用して、入力文書1に対する合成音声を生成して、ボイスキャラクタによる読み上げ音声として出力する(ステップS8)。
【0039】
以下、各部について説明する。
【0040】
(入力取得部11)
ユーザが利用対象とする、複数のテキストを含む書籍データは、入力取得部11により、入力文書1として取得される。入力取得部11は、該取得された書籍データから、テキスト情報を抽出する。該書籍データにレイアウト情報が含まれている場合には、該テキスト情報に加えて、レイアウト情報も取得する。
【0041】
レイアウト情報は、例えば、描画されるページレイアウト内でのテキスト情報、位置、フォントサイズ、フォントスタイルなどのような情報である。また、例えば、XHTML又はスタイルシートによるフローティングレイアウトの場合には、例えば、論理要素としてテキストに付与されている改行、パラグラフ要素、タイトル要素、キャプション要素などのような情報である。
【0042】
これらのような情報を含む入力文書1を、例えば、DOM形式により木構造で格納しておいても良い。なお、レイアウト情報がない場合でも、例えば、改行ごとに行を表す論理要素を定義し、テキストをそれらの子要素としてぶら下げることによって、入力文書1をDOM形式で表現することができる。
【0043】
図3に、DOM化された入力文書の一例を示す。図3では、DOM形式で格納された文書を、テキストノードごとにリスト表示している。この例では、個々のテキストノードは、個々の作品を識別する「作品ID」、その作品での出現順に付けられた「テキストノードID」、そのテキストノードの内容である「テキスト要素」、そのテキストが属する構造を示す「構造情報」、そのテキストがセリフ(dialogue)か地の文(description)かを示す「文タイプ」、そのテキストを話す作品中の登場人物等を示す「話者」を含む。なお、文タイプ及び話者については、例えば、既知の推定処理により又は人手により作成された情報を、属性及び属性値として埋め込んであるものとしても良い。
【0044】
以下では、文書データをDOM形式で格納する場合を例にとって説明するが、これに制限されない。
【0045】
(メタデータ取得部12)
ユーザが利用対象とする上記書籍データに対するメタデータが、メタデータ取得部12によりメタデータ2として取得される。
【0046】
ここで、メタデータとは、例えば、コンテンツ中の文又はフレーズ又は単語の読み変え定義、特定の文脈においてキャラクタに発話させたい文又はフレーズ又は単語などの定義などを、列挙したものである。この列挙された内容から、以下の観点などに基づいて変換内容を取得し、後段で利用できる情報に変換して保持しておく。
(1)表記間の対応:コンテンツ中の部分文字列を条件として、変換内容を対応付けることができるもの。
(2)文節情報を条件とする対応:コンテンツ中の形態素又は品詞情報を条件として、変換内容を対応付けることができるもの。
3)その他の条件による対応:コンテンツ中の文字列又は形態素だけでは変換条件が一意に決まらず、対象文字列の文脈として、それが属する文書中の論理要素、近傍の単語、フレーズ、話者などと組み合わせて変換内容を対応付けることができるもの。
【0047】
図4は、メタデータの一例を示す。この例では、メタデータ中に、適用条件と、適用条件が合致する文又はフレーズ又は単語に適用される変換(アクセント編集又は読み方定義)とが記載されたカスタマイズ定義が複数含まれている。具体的には、個々のカスタマイズ定義は、「作品ID」、「ルールID」、「条件文」、「アクセント編集」、「ボイスキャラクタ」、「読み方定義」、「文タイプ」を含む。図4の例では、使用されているボイスキャラクタとして、A,B,C,K,Lが存在する。なお、図4の例において、ボイスキャラクタA,B,Cは、文タイプ属性として、セリフ向き(dialogue)、ボイスキャラクタK,Lは、文タイプ属性として、地の文向き(description)という特徴を持つものとする。
【0048】
以下の説明では、図4のメタデータを具体例として用いるが、これに制限されない。
【0049】
以下、メタデータ取得部12の処理手順の具体的な流れについて説明する。
【0050】
図5に、メタデータ取得部12の処理手順の一例を示す。
【0051】
まず、はじめに、カスタマイズ定義を順に取得する(ステップS11)。
【0052】
次に、読み込んだカスタマイズ定義の中で用いられているボイスキャラクタを確認する。同じボイスキャラクタがあれば、それらの条件も取得し、ボイスキャラクタ毎にまとめておく(ステップS12)。
【0053】
図4の具体例では、使用されているボイスキャラクタとして、A,B,C,K,Lが存在するため、これらをそれぞれまとめておく。なお、図4は、説明の便宜上、すでにボイスキャラクタ毎にまとめられた状態で示している。
【0054】
また、異なる条件で共通する部分表記があれば、まとめておく(ステップS13)。
【0055】
次に、表層の情報を取り出して、ルール化する(ステップS14)。
【0056】
図4の例では、まず、ルールID2,3のカスタマイズ定義にボイスキャラクタBの“〜にゃー”という読み方定義があるため、それぞれ、この表記と条件文(条件文中の対応箇所)とを対応付けておく。
【0057】
次に、品詞情報を取り出して、ルール化する(ステップS15)。
【0058】
上記例において、それらの表現に対して品詞レベルの情報を取り出して、条件文と読み方定義との間の関係を見る。
【0059】
それぞれの条件表記部分の品詞情報を抜き出すと、
ルールID2:し<動詞>ます<助動詞>→“するにゃー”
ルールID3:の<助詞>→“にゃー”
となっており、これらを対応付けておく。
【0060】
次に、文脈情報を取り出して、ルール化する(ステップS16)。
【0061】
上記例において、それらの条件文の文脈情報として、まず、ルールID2の条件文全体に形態素解析を適用すると、
“なんだか<副詞>/まったり<副詞>/し<動詞>/ます<助動詞>/。<記号>/”
と表記される。ここで、記号“/”は文節の境界を示し、山かっこで記載されたラベル名は、それぞれの形態素に対する品詞名を示しているものとする。
【0062】
また、ルールID3の条件文に形態素解析を適用すると、
“それ<名詞>/は<助詞>/ちがう<動詞>/と<助詞>/おもう<動詞>/の<助詞>/。<記号>/”
となる。
【0063】
文脈として、周辺の情報とより細かな品詞情報を利用すると、
“/し<動詞>/ます<助動詞>/”→“/する<動詞(基本系)>/にゃ<助詞>/ー<名詞>/”
“/おもう<動詞>/の<助詞>/”→“/おもう<動詞(基本系)>/にゃ<助詞>/ー<名詞>/”
となる。
【0064】
次に、共通部分をマージする(ステップS17)。
【0065】
まず、同じボイスキャラクタのデータ内で共通部分のマージができるかをチェックする。
【0066】
上記例において、チェックの結果、条件部と帰結部をそれぞれまとめ上げて、
“/<動詞>/<助詞|助動詞>/”→“/<動詞(基本系)>/にゃ/ー/”
(ボイスキャラクタB)
としておく。なお、ここで、品詞ラベル間の縦棒は、論理和(or)を示すものとする。
【0067】
同様に、ボイスキャラクタCに対して、
“/<動詞>/<助詞|助動詞>/”→“/<動詞(基本系)>/です/の/ー/”
ボイスキャラクタKに対して、
“/<動詞>/まし<助動詞A>/<助動詞B>/<助動詞C>?/”→“/<動詞(基本系)>/<助動詞B>/で/ござる/”
といったまとめ上げ結果が得られる。
【0068】
さらに、ルールID1の条件文に対しても、同様の処理を行う。まず、品詞情報を見ると、
“とても<副詞>”→“とてーも”
“です<助動詞>”→“ぴょん”
と表現されていることがわかる。しかし、文脈情報を用いても共通化できる部分がないため、この品詞付き表記を、まとめ上げ結果として格納しておく。
【0069】
また、ルールID102の定義を見ると、アクセント表記が定義されている。これに関しても同様の処理を行い、
“ソレハチガウヨ<名詞>”→“ソ’レハチガ’ーウヨ”
とした対応付けを格納しておく。
【0070】
なお、上記のアクセント表記は、’の直前にアクセントがあることを意味しているものとする。よって、上記具体例では、「ソ」と「ガ」にアクセントがある)。
【0071】
まとめた結果(変換ルール)は、内部データとして格納し(ステップS18)、すべての条件定義について処理が完了したか判定する(ステップS19)。完了していないならば、ステップS1に戻って処理を繰り返し、完了しているならば、図5の処理を終了する。
【0072】
図6に、図4の具体例に対する処理をまとめた結果(変換ルール)を例示する。この変換ルール例において、個々の変換ルールは、「変換ルールID」、「条件」、「帰結」、「ボイスキャラクタ」、「元ID(図4のメタデータにおけるルールID)」、「文タイプ」を含む。
【0073】
(入力文書特徴抽出部13)
次に、入力文書特徴抽出部13について説明する。
【0074】
入力文書特徴抽出部13は、入力取得部11により得られたDOM形式の文書データと、メタデータ取得部12により得られた変換ルールとを入力として、各変換ルールが文書データに対してどのような影響を及ぼすかについての情報を獲得する。
【0075】
以下、入力文書特徴抽出部13の処理手順の一例について説明する。
【0076】
図7に、入力文書特徴抽出部13の処理手順の一例を示す。
【0077】
まず、DOM形式の文書データを受け取る(ステップS21)。ここでは、一例として、図3に示される文書データが得られるものとする。
【0078】
次に、格納済みメタデータを受け取る(ステップS22)。ここでは、一例として、図6に示されるメタデータ取得結果が得られるものとする。
【0079】
なお、図3の例におけるJ,P,Q,R,Tは、話者(作品中の登場人物等)であり、図6の例におけるA,B,C,K,Lは、ボイスキャラクタである。
【0080】
続いて、格納されているメタデータから、順に、変換ルールを読み込み、文書データに適用していく(ステップS23)。
【0081】
各ノードに対してルールを適用し、条件部がマッチしたルールについては、その変換ルールIDと、適合したテキストノードとを対応付けて保持しておく(ステップS24)。
【0082】
次に、条件文が一致する話者との関連性を、枚挙する(ステップS25)。条件文が一致しているルール中の話者(ボイスキャラクタ)と、文書データ中の話者(作品中の登場人物等)とを対応付けて保持しておく。
【0083】
また、表記(文末表現)で類似しているルール中の話者と、文書データ中の話者との対応があれば、関連付けて保持しておく(ステップS26)。
【0084】
また、文のタイプで類似しているルール中の話者と、文書データ中の話者との対応があれば、関連付けて保持しておく(ステップS27)。
【0085】
また、文書要素(構造情報)で類似する話者との対応があれば、これを枚挙しておく(ステップS28)。
【0086】
全てのルールについて検証が完了したかどうか判定する(ステップS29)。全てのルールについて検証が完了すれば、処理を終了する。一方、未検証のルール・文があれば、順にメタデータを読み込み、同様の処理を繰り返す。
【0087】
図8と図9に、入力文書特徴抽出部13の処理結果例を示す。
【0088】
図8は、文書データ中の各テキストノードに対応して、ルールがマッチした変換ルールIDを示している。図8は、図3のような文書データにおいて、各テキストノードに適合する変換ルールIDを示す「適合ルールID」が更に追加されている。この具体例では、たとえば、テキストノードID40に対して、適合ルールID5が、テキストノードID42に対してルールID4が、さらにテキストノードID105に対して、ルールID1とID2とが適合していることが示されている。なお、テキストノードIDと適合ルールIDとの対応は、図3のような文書データに組み込んで保持しても良いし、図3のような文書データとは独立して保持しても良い。
【0089】
図9は、これらの対応結果から、それぞれ異なる観点で得られた話者間の関連性についてまとめた結果である。個々の結果は、「番号」、「条件文の一致による話者との関連」、「文末表現による話者との関連」、「文タイプとの関連」、「構造情報による関連」を含む。なお、P=*は、Pは、すべてのボイスキャラクタと対応することを意味する。
【0090】
例えば、図9の第一列では、条件文が一致することによる話者間の対応付けとして、それぞれルールと入力文書との対応付けから、第一行のPとA、第二行のRとA、第三行のTとB、第四行のTとCがそれぞれ枚挙されている。
【0091】
次に、文末表現での対応関係から、話者間の関連性を抽出する。
【0092】
ここでは、ですます調と、だ・である調との区別を行い、同じグループに属するものを特定しておく。例えば、正規表現のマッチングにより、「.+です。」または「.+ます。」のいずれかにマッチしたものは「ですます調」と判定し、「.+だ。」または「.+である。」のいずれかにマッチしたものは「である調」と判定することによって、それらを区別することができる。この結果に基づいて、同じ性質を持っている話者を、対応付けるものとする。
【0093】
例えば、まず、図8のテキストノードID40が「ですます調」であることが分かるため、話者(作品中の登場人物等)Pと、図4における条件文で「ですます調」である話者(ボイスキャラクタ)A,B,Cとの間に対応関係が見られたものとする。その結果、文末表現による話者との対応では、P=A,B,Cが得られる。
【0094】
また、図8のテキストノードID105の話者Tは「ですます調」であることがわかり、これに対応する適合ルールID1,ID2は、図4における話者A,Bに対応する。その結果、T=A,Bが得られる。
【0095】
次に、文タイプに基づく関連情報を抽出しておく。
【0096】
例えば、図9の番号(1)では、ここまでの関連として話者(作品中の登場人物等)Pと話者(ボイスキャラクタ)Aとの対応が候補として挙がっているが、この話者Pのテキストノード「それじゃあ、あんまりです。」を見ると、この文タイプは「セリフ向き(dialogue)」であることがわかる。一方で、このテキストのノードにヒットしたルール(図6の変換ルールID5)における話者Aも、文タイプ「セリフ向き(dialogue)」の特徴を有しているので、同一属性を保持していることになる。
【0097】
また、番号(2)でも同様に、話者Rのテキストノード「だが、これはとても君たちの力では無理だと言っていたのではなかったかね?」についても文タイプは「セリフ向き(dialogue)」であり、このルールが適合している変換ルールにおける話者Aも「セリフ向き(dialogue)」であり、同一の関係となっている。
【0098】
一方で、番号(3)と(4)については、入力文のタイプが「地の文向き(description)であるが、それぞれに対応する変換ルール(ID1,2)の話者は、図6では「セリフ向き(dialogue)」のB,Cであったので、属性が異なることが分かる。
【0099】
さらに、構造情報の関連について記載している。
【0100】
ここでは、最小の汎化となる要素(section_body)のみを明示し、それ以外の差分を省略(*)して記載している。
【0101】
以上を入力文書特徴抽出部13の抽出結果として、後段の処理に渡す。
【0102】
(実行環境取得部14)
次に、実行環境取得部14について説明する。
【0103】
実行環境取得部14では、ユーザが音声合成による読み上げを行うおうとしているシステムの環境に関する情報(システム環境情報)を取得する。
【0104】
システム環境情報は、具体的には、デバイスとOSの情報の他、ユーザが利用可能な、音声合成エンジン、ボイスキャラクタ、パラメータレンジなどの情報である。インストールされている音声合成エンジンから取得できるプロパティ情報として、例えば、音声合成エンジン(TTS)の名称とバージョンがあり、利用可能な音声(ボイスキャラクタ)の属性として、キャラクタ名称、利用可能な言語、話者性別、話者年齢などがある。パラメータレンジは、音声合成エンジンがサポートするパラメータ情報として得られる。
【0105】
図10に、この実行環境取得部14による取得結果例を示す。
【0106】
ここでは、利用可能な2点の動作環境について例を示す。
【0107】
まず、デバイス(端末)の種類とOS名、音声合成エンジン名の他、利用可能なキャラクタ、利用可能な言語(この例では、JP(日本語)とEN(英語))、利用可能な性別(この例では、Male(男性)、Female(女性))、利用可能なキャラクタの声年代(この例では、Adult(大人)、Child(子供))といった属性が枚挙されている。
【0108】
さらに、音声合成用のパラメータとして、Volume(調整できる音量幅)が0から100までの連続値であること、Pitch情報については、図10の上段に示されるリソースであれば、連続値として(−20から20)が設定できる一方で、図10の下段に示されるリソースであれば、5段階の離散値しかサポートしない、といったことが示されているものとする。また、Range、Rate、Break(ポーズ長)といったパラメータについても同様に、連続値(continuous)か、離散値(descrete)か、さらに連続値の場合は、値の幅や離散値の場合は、何段階の幅をとれるかの段数などが記載されているものとする。
【0109】
これらの取得結果を後段の処理に渡す。
【0110】
(ユーザ設定制約取得部15)
次に、ユーザ設定制約取得部15について説明する。
【0111】
ユーザ設定制約は、例えば、メタデータよりも優先して適用すべきユーザの指定条件及び/又は制約条件などである。具体的には、例えば、特定のパラメータの値を指定し、あるいは、特定のパラメータの値域を指定しても良い。
【0112】
図11に、ユーザ設定制約取得部15がユーザからの指示情報を取得するためのユーザインタフェースの例を示し、図12に、取得した結果の格納例を示す。
【0113】
まず、ユーザは、図11に例示するような、各項目に対応して自由に値を設定することができるユーザインタフェースを使用して、読み上げに影響を及ぼす項目について、あらかじめ制約を設定しておくことができるものとする。
【0114】
図11の例において、項目“感情変化読み”では、例えば文書中の激怒、怒号、号泣等に相当する激しい感情表現について、合成音声として再現することをどの程度許容するかを指定する。この項目について、例えば“フル(制限なし)”と設定されていれば、メタデータ又はユーザカスタマイズ結果の激怒又は号泣等の定義に対して、それをそのまま感情韻律辞書などを適用したり、合成エンジンに与えるパラメータを変更するなどの手法で、読み上げ時に再現を試みる。一方、これ以外の値に設定されている場合は、その割合に応じて、感情表現の強さの度合いを調整する。例えば、微小であれば、感情表現の効果を9割方減じて読み上げを行い、穏やかであれば半分ほどの程度(激怒→怒)に抑えた読み上げを行う、などである。
【0115】
また、項目“ワード・表現”では、小説において又はストーリー上で出現する、ならず者又は乱暴者の残虐・乱暴・粗雑な表現、言い回し韻律などの程度情報を設定できるものとする。例えば、制限がなければ、メタデータ又はユーザカスタマイズ情報に沿った読み上げを実現する一方で、この設定値を下げている場合には、太くて低い凄みのある声の効果を低減したり、特定の表現又は文又はフレーズ又は単語を置き換えた読み上げを行う。
【0116】
また、項目“音量・テンポ変化”では、例えば、怪談クライマックス時の「わっ!」といった驚かせ表現、突然の叫び声、疾走・逃走中の激しい緊迫又は速度間のある読み上げ効果について、程度情報を指定する。先の例と同じように、“フル”であればメタデータ定義又はユーザのカスタマイズ情報にそのまま従うが、この設定に制約を掛けている場合には、これらの程度を落として読み上げを行う。
【0117】
図12に、ユーザインタフェース上での設定を、ユーザ設定制約取得部15で格納した場合の一例を示す。
【0118】
図11に示すユーザインタフェース上のスライダ値に応じて、各項目の上限値(可変値)が設定されるものとする。ここでは、感情表現の程度がフルの場合の75%程度、許容するワードや表現で30%程度、音量やテンポ変化の度合いは、フルの場合の55%程度までを許容するものと設定されたと仮定する。
【0119】
これらの結果を、後段のパラメータ決定部16に渡す。
【0120】
(パラメータ決定部16、ユーザ検証部17)
次に、パラメータ決定部16及びユーザ検証部17について説明する。
【0121】
パラメータ決定部16では、ここまでに獲得した処理結果を統合して、実際の読み上げに用いるためのパラメータ情報を決定する。
【0122】
図13に、パラメータ決定部16の処理手順の一例を示す。
【0123】
以下、パラメータ決定部16の処理手順の一例について説明する。
【0124】
まず、前段までの処理結果であるメタデータの格納結果(ステップS31)、入力文書特徴抽出部の処理結果(ステップS32)、実行環境取得部14の抽出結果(ステップS33)およびユーザ設定制約取得部15での抽出結果(ステップS34)を受け取る。
【0125】
次に、ユーザに提示する各項目について、それぞれの再現度を計算する。なお、ステップS36とステップS37の一方又は両方を省く構成も可能である。
【0126】
ここで、再現度の比較対象とする推奨環境について説明する。
【0127】
推奨環境は、本実施形態では、ボイスキャラクタに関する推奨環境、読み上げの際の感情(表現)に関する推奨環境(オプション)、パラメータに関する推奨環境(オプション)の3つを想定しているが、これに制限されない。
【0128】
ボイスキャラクタに関する推奨環境について説明する。
【0129】
例えば、入力文書特徴抽出部13による処理結果、例えば図8と図9の結果から、例えば、図3の電子書籍に図4のメタデータを適用する場合に推奨されるボイスキャラクタを選択することができる。例えば、図3の文書データ中の話者P,R,Tに、それぞれ、図4のメタデータ中のボイスキャラクタB,A,Cを対応させる割り当てる方が可能であることが分る。また、例えば、文書データにおいて話者の属性(例えば、言語・性別・年齢・性格など)のデータがあり、かつ、メタデータにおいてボイスキャラクタの属性(例えば、言語・性別・年齢・性格など)のデータがある場合に、入力文書特徴抽出部13による処理結果に加えて、それら属性のデータを考慮して、文書データ中の話者に、メタデータ中のボイスキャラクタを割り当てる方法も可能である。その他にも、推奨ボイスキャラクタを選択する様々な方法が可能である。
【0130】
図14に、ボイスキャラクタの推奨環境を例示する(なお、図14のボイスキャラクタの名称は、これまでとは異なる名称で例示しているが、これまでの例を使用すれば、図14のボイスキャラクタの推奨環境に、ボイスキャラクタA,B,Cなどが記述されることになる。)
なお、図14の例では、ボイスキャラクタのみリストされているが、各ボイスキャラクタに対応する文書データ中の話者を併せて提示しても良い。
【0131】
ところで、ユーザのシステム環境においては、ボイスキャラクタとして、A,B,Cなどあるいは図14で言えば「川崎太郎」などが利用可能とは限らない。ユーザが利用できるのは、ユーザのシステム環境において利用可能なボイスキャラクタのみである。
【0132】
そこで、推奨されるボイスキャラクタと、ユーザが利用可能なボイスキャラクタとを比較して、話者に関する再現度を計算する(ステップS35)。
【0133】
話者に関する再現度は、例えば、入力文書に出現する話者の特徴量(及び/又は、該話者に対応するボイスキャラクタの特徴量)と、ユーザが音声合成器で利用可能なキャラクタボイスの特徴量の一致度として表現できる。具体的には、例えば、それぞれが属性としてもつ利用可能な言語・性別・年齢などの各項目を、適当に正規化して、ベクトルの要素として表現しておき、それらのベクトル間の類似度(例えば、コサイン距離)を求め、これを一致度の尺度として用いることができる。その他にも、種々の再現度計算方法が可能である。
【0134】
次に、利用するのが推奨されるパラメータのカバー幅のデータが例えばメタデータの一部として提供されている場合に、音声合成器で利用可能なパラメータのカバー幅について、再現度を計算する(ステップS36)。これも、上記と同様、例えば、パラメータのカバー幅を、ベクトルの要素として、ベクトル間の類似度を求め、これを一致度の尺度として用いることができる。
【0135】
次に、利用するのが推奨される感情表現(例えば、平、驚、怒、哀、厭など)のデータが例えばメタデータの一部として提供されている場合に、音声合成器で利用可能な感情表現の有無について、再現度を計算する(ステップS37)。これも、上記と同様、例えば、感情表現の有無を、ベクトルの要素として、ベクトル間の類似度を求め、これを一致度の尺度として用いることができる。
【0136】
なお、ステップS35〜S37は、どのような順序で計算を行っても良い。また、ステップS36とS37の一方又は両方を省く構成も可能である。
【0137】
また、統合した全体的な一致度(再現度)についても計算しておく(ステップS38)。この総合的な再現度は、例えば、各機能に関する一致度の積として、以下のように定義することができる。
再現度=話者特徴量の一致度×利用可能感情の一致度×再生可能なパラメータの一致度×メタデータ改変箇所の文書特徴カバー率
なお、総合的な再現度として、例えば、数値を示しても良いし、あるいは、数段階にレベル分けして、そのレベル値を示しても良い。
【0138】
ユーザ検証部17は、上記のように算定された各機能に関する一致度について、例えば図14に示すように、機能ごとに個別に提示するとともに、総合的な再現度を併せて提示する(ステップS39)。
【0139】
例えば、第2行の作品において、推奨ボイスキャラクタ「岡山高知」に対して、実行環境においては、「岡山高知」が使用可能でなく、最も高い一致度をもつ「川崎太郎」が提示されている。また、ここでは、「川崎太郎」の横のボタンを押すことによって、次候補以降の推奨ボイスキャラクタに変更・選択できるようになっている。
【0140】
また、例えば、第1行の作品において、推奨ボイスキャラクタ「川崎太郎」に対して、実行環境においては、これと一致する「川崎太郎」が提示されている。この場合には、実行環境におけるボイスキャラクタの次候補は提示しないものとしている。
【0141】
なお、各機能について、一致度を明示的に提示するようにしても良い。あるいは、例えば、一致度の低い項目を提示する欄の枠内自体又は表示文字を、ハイライト表示しても良い。例えば、その際に、一致度を何段階かにレベル分けして、レベルごとに異なる色又は明るさを使用しても良い。逆に、一致度の高い項目を提示する欄の枠内自体又は表示文字を、ハイライト表示しても良い。
【0142】
また、総合的な再現度を提示するにあたって、総合的な再現度が高い場合と低い場合とで、異なる形態(例えば、異なる色)で表示しても良い。例えば、図14の例で、「Excellent」「Good」「Okay」と、「Poor」「Bad」とで、異なる表示色を使用しても良い。
【0143】
これらの他にも、ユーザに結果を伝えやすくするための様々な表示方法が可能である。
【0144】
次に、ユーザの確認・修正を得る(ステップS41)。
【0145】
例えば、第1候補として提示されているボイスキャラクタの横のボタンを押すことによって、次候補以降の推奨ボイスキャラクタに変更・選択する。
【0146】
ステップS41のユーザの確認・修正は、ユーザが繰り返し行うことが可能であり、提示した結果に対してユーザによる確認・選択指定が完了すれば(ステップS40)、この処理を終了する。
【0147】
なお、ユーザが、最終的な確定の指示を明示的に入力するようにしても良い。例えば、確定ボタンを設けても良い。
【0148】
処理結果は、制御パラメータとして音声合成器18へ渡される。
【0149】
(音声合成器18)
音声合成器18は、制御用パラメータとして、各話者指定及び文書表現にマッチする変換ルールを適用しながら、合成音声を生成して、ボイスキャラクタによる読み上げ音声として出力する。
【0150】
以上の手順により、ユーザが実際に利用できる計算機リソースや機能、読み上げ対象とするコンテンツの違いを考慮して、再現性を確保した再生が実現できる。
【0151】
本実施形態によれば、文書データの読み上げに関するメタデータのユーザカスタマイズの容易性と、文書データの読み上げに使用するシステム環境の柔軟性を確保するとともに、読み上げの再現性を損なわないようにすることが可能になる。
【0152】
また、上述の実施形態の中で示した処理手順に示された指示は、ソフトウェアであるプログラムに基づいて実行されることが可能である。汎用の計算機システムが、このプログラムを予め記憶しておき、このプログラムを読み込むことにより、上述した実施形態の文書読み上げ支援装置による効果と同様な効果を得ることも可能である。上述の実施形態で記述された指示は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フレキシブルディスク、ハードディスクなど)、光ディスク(CD−ROM、CD−R、CD−RW、DVD−ROM、DVD±R、DVD±RWなど)、半導体メモリ、またはこれに類する記録媒体に記録される。コンピュータまたは組み込みシステムが読み取り可能な記録媒体であれば、その記憶形式は何れの形態であってもよい。コンピュータは、この記録媒体からプログラムを読み込み、このプログラムに基づいてプログラムに記述されている指示をCPUで実行させれば、上述した実施形態の文書読み上げ支援装置と同様な動作を実現することができる。もちろん、コンピュータがプログラムを取得する場合または読み込む場合はネットワークを通じて取得または読み込んでもよい。
また、記録媒体からコンピュータや組み込みシステムにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているOS(オペレーティングシステム)や、データベース管理ソフト、ネットワーク等のMW(ミドルウェア)等が本実施形態を実現するための各処理の一部を実行してもよい。
さらに、本実施形態における記録媒体は、コンピュータあるいは組み込みシステムと独立した媒体に限らず、LANやインターネット等により伝達されたプログラムをダウンロードして記憶または一時記憶した記録媒体も含まれる。
また、記録媒体は1つに限られず、複数の媒体から本実施形態における処理が実行される場合も、本実施形態における記録媒体に含まれ、媒体の構成は何れの構成であってもよい。
【0153】
なお、本実施形態におけるコンピュータまたは組み込みシステムは、記録媒体に記憶されたプログラムに基づき、本実施形態における各処理を実行するためのものであって、パソコン、マイコン等の1つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であってもよい。
また、本実施形態におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本実施形態における機能を実現することが可能な機器、装置を総称している。
【0154】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0155】
1…入力文書、2…メタデータ、11…入力取得部、12…メタデータ取得部、13…入力文書特徴抽出部、14…実行環境取得部、15…ユーザ設定制約取得部、16…パラメータ決定部、17…ユーザ検証部、18…音声合成器。
【特許請求の範囲】
【請求項1】
複数のテキストを含む文書データを取得する文書取得部と、
ルールを適用すべきテキストに関する条件と、該条件が適合するテキストに対する読み上げスタイルとを含む定義情報を複数含むメタデータを取得するメタデータ取得部と、
各々の前記定義情報を前記文書データに含まれるテキストに適用することによって、前記文書データの特徴を抽出する抽出部と、
前記文書データの読み上げを実行する環境に関する実行環境情報を取得する実行環境情報取得部と、
前記文書データの特徴及び前記実行環境情報に基づいて、前記メタデータを前記文書データに適用して読み上げを実行する際に使用するパラメータの候補を決定する決定部と、
前記パラメータの候補をユーザに提示し、選択又は確定を含む検証指示を受け付けるユーザ検証部とを備えることを特徴とする文書読み上げ支援装置。
【請求項2】
前記ユーザ検証部を介して確定された前記パラメータを使用して、前記文書データに対する読み上げ音声を生成する音声合成器を更に備えることを特徴とする請求項1に記載の文書読み上げ支援装置。
【請求項3】
前記メタデータよりも優先すべきユーザ設定制約をユーザから取得するためのユーザ設定制約取得部を更に備えることを特徴とする請求項1または2に記載の文書読み上げ支援装置。
【請求項4】
前記決定部は、前記ユーザ設定制約を考慮して、前記パラメータの取り得る値又は値域を限定することを特徴とする請求項3に記載の文書読み上げ支援装置。
【請求項5】
前記ユーザ設定制約は、読み上げで使用する感情表現の変化幅、感情種類、調子、読み上げ対象となる語又はフレーズ、音量又はテンポ変化の幅又は値の少なくとも一つを定義できることを特徴とする請求項3または4に記載の文書読み上げ支援装置。
【請求項6】
前記抽出部は、前記文書データの特徴を抽出するにあたって、前記メタデータに記載された対応関係を汎化して適用することによって、一部の前記定義情報から、関連情報全体に適用する抽出規則を生成することを特徴とする請求項1に記載の文書読み上げ支援装置。
【請求項7】
前記定義情報として、対象となる文又は単語と、それに対応する読み方又はアクセントが定義され、
前記抽出部は、前記定義情報から対応関係を段階的に汎化して適切な対応関係を取得することを特徴とする入力文書特徴抽出部を有する請求項1に記載の文書読み上げ支援装置。
【請求項8】
前記抽出部は、前記文書データの特徴を抽出するにあたって、表層表現、文末表現、品詞情報、文の構造情報又は文タイプを用いることを特徴とする請求項1に記載の文書読み上げ支援装置。
【請求項9】
前記決定部は、前記文書データ中に出現する話者の性質と、前記メタデータ中で定義される話者の性質との間の類似性に基づいて、前記パラメータの候補を決定することを特徴とする請求項1に記載の文書読み上げ支援装置。
【請求項10】
文書取得部、メタデータ取得部、抽出部、実行環境情報取得部、決定部、ユーザ検証部及び音声合成器を備える文書読み上げ支援装置の文書読み上げ支援であって、
前記文書取得部が、複数のテキストを含む文書データを取得するステップと、
前記メタデータ取得部が、ルールを適用すべきテキストに関する条件と、該条件が適合するテキストに対する読み上げスタイルとを含む定義情報を複数含むメタデータを取得するステップと、
前記抽出部が、各々の前記定義情報を前記文書データに含まれるテキストに適用することによって、前記文書データの特徴を抽出するステップと、
前記実行環境情報取得部が、前記文書データの読み上げを実行する環境に関する実行環境情報を取得するステップと、
前記決定部が、前記文書データの特徴及び前記実行環境情報に基づいて、前記メタデータを前記文書データに適用して読み上げを実行する際に使用するパラメータの候補を決定するステップと、
前記ユーザ検証部が、前記パラメータの候補をユーザに提示し、選択又は確定を含む検証指示を受け付けるステップとを有することを特徴とする文書読み上げ支援方法。
【請求項11】
文書読み上げ支援装置としてコンピュータを機能させるためのプログラムであって、
複数のテキストを含む文書データを取得する文書取得部と、
ルールを適用すべきテキストに関する条件と、該条件が適合するテキストに対する読み上げスタイルとを含む定義情報を複数含むメタデータを取得するメタデータ取得部と、
各々の前記定義情報を前記文書データに含まれるテキストに適用することによって、前記文書データの特徴を抽出する抽出部と、
前記文書データの読み上げを実行する環境に関する実行環境情報を取得する実行環境情報取得部と、
前記文書データの特徴及び前記実行環境情報に基づいて、前記メタデータを前記文書データに適用して読み上げを実行する際に使用するパラメータの候補を決定する決定部と、
前記パラメータの候補をユーザに提示し、選択又は確定を含む検証指示を受け付けるユーザ検証部とをコンピュータに実現させるためのプログラム。
【請求項1】
複数のテキストを含む文書データを取得する文書取得部と、
ルールを適用すべきテキストに関する条件と、該条件が適合するテキストに対する読み上げスタイルとを含む定義情報を複数含むメタデータを取得するメタデータ取得部と、
各々の前記定義情報を前記文書データに含まれるテキストに適用することによって、前記文書データの特徴を抽出する抽出部と、
前記文書データの読み上げを実行する環境に関する実行環境情報を取得する実行環境情報取得部と、
前記文書データの特徴及び前記実行環境情報に基づいて、前記メタデータを前記文書データに適用して読み上げを実行する際に使用するパラメータの候補を決定する決定部と、
前記パラメータの候補をユーザに提示し、選択又は確定を含む検証指示を受け付けるユーザ検証部とを備えることを特徴とする文書読み上げ支援装置。
【請求項2】
前記ユーザ検証部を介して確定された前記パラメータを使用して、前記文書データに対する読み上げ音声を生成する音声合成器を更に備えることを特徴とする請求項1に記載の文書読み上げ支援装置。
【請求項3】
前記メタデータよりも優先すべきユーザ設定制約をユーザから取得するためのユーザ設定制約取得部を更に備えることを特徴とする請求項1または2に記載の文書読み上げ支援装置。
【請求項4】
前記決定部は、前記ユーザ設定制約を考慮して、前記パラメータの取り得る値又は値域を限定することを特徴とする請求項3に記載の文書読み上げ支援装置。
【請求項5】
前記ユーザ設定制約は、読み上げで使用する感情表現の変化幅、感情種類、調子、読み上げ対象となる語又はフレーズ、音量又はテンポ変化の幅又は値の少なくとも一つを定義できることを特徴とする請求項3または4に記載の文書読み上げ支援装置。
【請求項6】
前記抽出部は、前記文書データの特徴を抽出するにあたって、前記メタデータに記載された対応関係を汎化して適用することによって、一部の前記定義情報から、関連情報全体に適用する抽出規則を生成することを特徴とする請求項1に記載の文書読み上げ支援装置。
【請求項7】
前記定義情報として、対象となる文又は単語と、それに対応する読み方又はアクセントが定義され、
前記抽出部は、前記定義情報から対応関係を段階的に汎化して適切な対応関係を取得することを特徴とする入力文書特徴抽出部を有する請求項1に記載の文書読み上げ支援装置。
【請求項8】
前記抽出部は、前記文書データの特徴を抽出するにあたって、表層表現、文末表現、品詞情報、文の構造情報又は文タイプを用いることを特徴とする請求項1に記載の文書読み上げ支援装置。
【請求項9】
前記決定部は、前記文書データ中に出現する話者の性質と、前記メタデータ中で定義される話者の性質との間の類似性に基づいて、前記パラメータの候補を決定することを特徴とする請求項1に記載の文書読み上げ支援装置。
【請求項10】
文書取得部、メタデータ取得部、抽出部、実行環境情報取得部、決定部、ユーザ検証部及び音声合成器を備える文書読み上げ支援装置の文書読み上げ支援であって、
前記文書取得部が、複数のテキストを含む文書データを取得するステップと、
前記メタデータ取得部が、ルールを適用すべきテキストに関する条件と、該条件が適合するテキストに対する読み上げスタイルとを含む定義情報を複数含むメタデータを取得するステップと、
前記抽出部が、各々の前記定義情報を前記文書データに含まれるテキストに適用することによって、前記文書データの特徴を抽出するステップと、
前記実行環境情報取得部が、前記文書データの読み上げを実行する環境に関する実行環境情報を取得するステップと、
前記決定部が、前記文書データの特徴及び前記実行環境情報に基づいて、前記メタデータを前記文書データに適用して読み上げを実行する際に使用するパラメータの候補を決定するステップと、
前記ユーザ検証部が、前記パラメータの候補をユーザに提示し、選択又は確定を含む検証指示を受け付けるステップとを有することを特徴とする文書読み上げ支援方法。
【請求項11】
文書読み上げ支援装置としてコンピュータを機能させるためのプログラムであって、
複数のテキストを含む文書データを取得する文書取得部と、
ルールを適用すべきテキストに関する条件と、該条件が適合するテキストに対する読み上げスタイルとを含む定義情報を複数含むメタデータを取得するメタデータ取得部と、
各々の前記定義情報を前記文書データに含まれるテキストに適用することによって、前記文書データの特徴を抽出する抽出部と、
前記文書データの読み上げを実行する環境に関する実行環境情報を取得する実行環境情報取得部と、
前記文書データの特徴及び前記実行環境情報に基づいて、前記メタデータを前記文書データに適用して読み上げを実行する際に使用するパラメータの候補を決定する決定部と、
前記パラメータの候補をユーザに提示し、選択又は確定を含む検証指示を受け付けるユーザ検証部とをコンピュータに実現させるためのプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【公開番号】特開2013−72957(P2013−72957A)
【公開日】平成25年4月22日(2013.4.22)
【国際特許分類】
【出願番号】特願2011−211160(P2011−211160)
【出願日】平成23年9月27日(2011.9.27)
【出願人】(000003078)株式会社東芝 (54,554)
【公開日】平成25年4月22日(2013.4.22)
【国際特許分類】
【出願日】平成23年9月27日(2011.9.27)
【出願人】(000003078)株式会社東芝 (54,554)
[ Back to top ]