(57)【要約】      （修正有）【課題】口語調音声を始めとする韻律や声質の変化が大きい発話スタイルの合成音声を生成する音声合成処理において、口語調音声の特徴的な部分（口語表現部分）の音質（肉声感）を高くする。【解決手段】（準）肉声音声選択部１０３は、（準）肉声音声ＩＤ１１４で指定に基づき、口語調音声の特徴的部分に肉声もしくは肉声に準ずる音声を選択し、声質情報抽出部１０５でその音声の韻律と声質を分析した結果に基づき、声質考慮波形合成部１１０において、それ以外の合成音声部分の韻律を調整し、分析された声質を考慮した合成音声波形生成処理を実施する。これにより、肉声音声部分と合成音声部分とで韻律・声質が大きくずれることのない合成音声を生成できる。【選択図】図１Ａ
2014062970.tif 000002
【特許請求の範囲】
【請求項１】
合成音声を出力する処理部における音声合成方法であって、
前記処理部は、
入力テキスト内から発話スタイルの特徴的な箇所に対応する肉声音声データ、もしくは韻律や声質面で肉声に準じる準肉声音声データ（以下（準）肉声音声データと称する）を選択し、
選択した前記（準）肉声音声データから韻律情報、及び声質情報を抽出し、
抽出した前記韻律情報に基づいて、前記入力テキストに対応する合成音声の韻律情報を調整し、抽出した前記声質情報を考慮して、前記入力テキストに対応する合成音声波形データを生成し、
生成した前記合成音声波形データ、及び選択した前記（準）肉声音声データを接続端点で接合する
ことを特徴とする音声合成方法。
【請求項２】
請求項１に記載の音声合成方法であって、
前記処理部は、
前記（準）肉声音声データを選択するため、前記入力テキストを解析することにより、選択される前記（準）肉声音声データを決定する
ことを特徴とする音声合成方法。
【請求項３】
請求項１に記載の音声合成方法であって、
前記処理部は、
前記声質情報を抽出するため、前記（準）肉声音声データに対して、その両端の短時間区間に対応する短時間声質情報と、前記（準）肉声音声データ全体に対応する全域声質情報とを抽出する
ことを特徴とする音声合成方法。
【請求項４】
請求項３に記載の音声合成方法であって、
前記処理部は、
前記全域声質情報として、前記（準）肉声音声データ全体を対象とした周波数分析手法によって得られた周波数領域係数情報を用いる
ことを特徴とする音声合成方法。
【請求項５】
請求項３に記載の音声合成方法であって、
前記処理部は、
前記全域声質情報として、あらかじめ前記（準）肉声音声データに付加されている声質特徴点の時刻および重み情報を用いて、各時刻位置の短時間声質情報を指定された重みで加重加算した情報を用いる
ことを特徴とする音声合成方法。
【請求項６】
請求項３に記載の音声合成方法であって、
前記処理部は、
前記全域声質情報として、前記（準）肉声音声データをｋ分割したｋ個の音声区間でそれぞれ全域声質情報、または特定位置での短時間声質情報を抽出し、抽出されたｋ個の声質情報から代表声質情報を決定するという処理を、ｋ＝１からＮまで変化させることで得られたＮ個の代表声質情報を用いる
ことを特徴とする音声合成方法。
【請求項７】
請求項３に記載の音声合成方法であって、
前記処理部は、
抽出した前記全域声質情報を保存しておき、抽出した前記声質情報を考慮して、前記合成音声波形データを生成する際に、保存した直近数個の前記全域声質情報も考慮して波形合成処理を行う
ことを特徴とする音声合成方法。
【請求項８】
請求項２に記載の音声合成方法であって、
前記処理部は、
前記声質情報を抽出するため、前記（準）肉声音声データ全体に対応する全域声質情報とを抽出し、抽出した前記全域声質情報を保存しておき、
抽出した前記声質情報を考慮して、前記合成音声波形データを生成する際に、保存した直近数個の前記全域声質情報も考慮して波形合成処理を行う
ことを特徴とする音声合成方法。
【請求項９】
音声合成装置であって、
処理部と記憶部を備え、
前記処理部は、
入力テキスト内から発話スタイルの特徴的な箇所に対応する（準）肉声音声データを選択し、
選択した前記（準）肉声音声データから韻律情報、及び声質情報を抽出し、
抽出した前記韻律情報に基づいて、前記入力テキストに対応する合成音声の韻律情報を調整し、抽出した前記声質情報を考慮して、前記入力テキストに対応する合成音声波形データを生成し、
生成した前記合成音声波形データ、及び選択した前記（準）肉声音声データを接続端点で接合して出力する
ことを特徴とする音声合成装置。
【請求項１０】
請求項９に記載の音声合成装置であって、
前記処理部は、
前記（準）肉声音声データを選択するため、前記入力テキストを解析することにより、選択する前記（準）肉声音声データを決定する
ことを特徴とする音声合成装置。
【請求項１１】
請求項９に記載の音声合成装置であって、
前記処理部は、
前記声質情報を抽出するため、前記（準）肉声音声データに対して、その両端の短時間区間に対応する短時間声質情報と、前記（準）肉声音声データ全体に対応する全域声質情報とを抽出する
ことを特徴とする音声合成装置。
【請求項１２】
請求項１１に記載の音声合成装置であって、
前記処理部は、
抽出した前記全域声質情報を前記記憶部に記憶し、
抽出した前記声質情報を考慮して、前記合成音声波形データを生成する際に、前記記憶部に記憶した直近数個の前記全域声質情報も併せて考慮して波形合成処理を行う
ことを特徴とする音声合成装置。
【請求項１３】
請求項１０に記載の音声合成装置であって、
前記処理部は、
前記声質情報を抽出するため、前記（準）肉声音声データ全体に対応する全域声質情報を抽出し、
抽出した前記全域声質情報を前記記憶部に記憶し、
抽出した前記声質情報を考慮して、前記合成音声波形データを生成する際に、記憶した直近数個の前記全域声質情報も考慮して波形合成処理を行う
ことを特徴とする音声合成装置。
【請求項１４】
音声合成装置の処理部で実行される音声合成プログラムであって、
前記処理部を、
入力テキスト内から発話スタイルの特徴的な箇所に対応する（準）肉声音声データを選択し、
選択した前記（準）肉声音声データから韻律情報、及び声質情報を抽出し、
抽出した前記韻律情報に基づいて、前記入力テキストに対応する合成音声の韻律情報を調整し、抽出した前記声質情報を考慮して、前記入力テキストに対応する合成音声波形データを生成し、
生成した前記合成音声波形データ、及び選択した前記（準）肉声音声データを接続端点で接合する
よう動作させる
ことを特徴とする音声合成プログラム。
【請求項１５】
請求項１４に記載の音声合成プログラムであって、
前記処理部を、
前記（準）肉声音声データを選択するため、前記入力テキストを解析することにより、選択する前記（準）肉声音声データを決定する
よう動作させる
ことを特徴とする音声合成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声合成装置に関し、発話スタイルの合成音声を生成する音声合成技術に係る。
【背景技術】
【０００２】
テキストを音声に変換して読み上げるテキスト音声合成技術、およびそれを利用したテキスト音声合成システムがある。このような技術、システムの応用先として、例えば、カーナビゲーションでのガイド音声、携帯電話・スマートフォンでのメール読み上げや音声対話インタフェース、視覚障碍者向けのスクリーンリーダー、電子書籍の読み上げ機能などが存在する。
【０００３】
音声合成技術は近年、その重要性が拡大している。カーナビゲーションや携帯電話・スマートフォンの普及に加えて障碍者や高齢者を対象としたユニバーサルデザインの志向によって音声を使ったユーザインタフェースが今まで以上に使われるようになってきている。さらに、近年では電子書籍端末の普及が始まり、音声読上げに必須な音声合成技術のニーズが拡大している。
【０００４】
音声合成技術に対する最近のニーズでは、カーナビや携帯電話などの音声対話処理で用いる事例が多くなってきている。加えて、そのような応用では、ユーザが会話を自然に進められるように、話し言葉・口語調での音声を合成したいというニーズが増えてきている。従来の音声合成技術であっても、合成音声の韻律（抑揚やリズム、強さなど）を工夫することで口語調の音声を生成できるものは存在している（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−２８１３１号公報
【特許文献２】特開２００８−１０７４５４号公報
【特許文献３】特開２００９−０２０２６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、口語調の実際の音声では、口語調ならではの特徴的表現（例えば文末の「かなぁ」等）の部分の韻律や声質の変化が大きいが、従来手法の音声合成技術では、口語調韻律の再現を重視するあまり、声質という点では実際の口語調音声を十分に再現することは実現できていない。
【０００７】
本発明の目的は、上記の課題を解決し、口語調音声を始めとする韻律や声質の変化が大きい発話スタイルの合成音声を生成する音声合成処理において、口語調音声の特徴的な部分（口語表現部分）の音質（肉声感）を高くすることが可能な音声合成方法、装置、及びプログラムを提供することにある。
【０００８】
更に、本発明の目的は、その口語表現部分に肉声音声を差し込む場合に、肉声音声部分と合成音声部分との間で韻律・声質に大きな違いが生ずることの無い音声合成方法、装置、及びプログラムを提供することにある。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、本発明においては、合成音声を出力する処理部における音声合成方法であって、処理部は、入力テキスト内から発話スタイルの特徴的な箇所に対応する肉声音声データ、もしくは韻律や声質面で肉声に準じる準肉声音声データ（以下（準）肉声音声データと称する）を選択し、選択した（準）肉声音声データから韻律情報、及び声質情報を抽出し、抽出した韻律情報に基づいて、入力テキストに対応する合成音声の韻律情報を調整し、抽出した声質情報を考慮して、入力テキストに対応する合成音声波形データを生成し、生成した合成音声波形データ、及び選択した（準）肉声音声データを接続端点で接合する音声合成方法を提供する。
【００１０】
また、上記の目的を達成するため、本発明においては、音声合成装置であって、処理部と記憶部を備え、処理部は、入力テキスト内から発話スタイルの特徴的な箇所に対応する（準）肉声音声データを選択し、選択した（準）肉声音声データから韻律情報、及び声質情報を抽出し、抽出した韻律情報に基づいて、入力テキストに対応する合成音声の韻律情報を調整し、抽出した声質情報を考慮して、入力テキストに対応する合成音声波形データを生成し、生成した合成音声波形データ、及び選択した（準）肉声音声データを接続端点で接合して出力する構成の音声合成装置を提供する。
【００１１】
更に、上記の目的を達成するため、本発明においては、音声合成装置の処理部で実行される音声合成プログラムであって、処理部を、入力テキスト内から発話スタイルの特徴的な箇所に対応する（準）肉声音声データを選択し、選択した（準）肉声音声データから韻律情報、及び声質情報を抽出し、抽出した韻律情報に基づいて、入力テキストに対応する合成音声の韻律情報を調整し、抽出した声質情報を考慮して、入力テキストに対応する合成音声波形データを生成し、生成した合成音声波形データ、及び選択した（準）肉声音声データを接続端点で接合するよう動作させる音声合成プログラムを提供する。
【発明の効果】
【００１２】
本発明によれば、口語調音声を始めとする韻律や声質の変化が大きい発話スタイルの合成音声を生成する音声合成処理において、発話スタイルに特徴的な部分（口語表現部分）に肉声や肉声に準じる品質の音声データを用いることで全体の音質（肉声感）を向上させることができる。さらに、その（準）肉声音声とその他の合成音声部分との韻律や声質の違いをできるだけ小さくすることができ、従来技術で感じられた合成音声の違和感を軽減することが可能となる。
【図面の簡単な説明】
【００１３】
【図１Ａ】実施例１の音声合成装置の全体機能構成の一例を説明する図である。
【図１Ｂ】実施例１の音声合成装置のハードウェア構成の一例を説明する図である。
【図２】実施例１に係る、（準）肉声音声格納部に格納されているデータ例を示す図である。
【図３】実施例１に係る、入力解析部の出力データ例を示す図である。
【図４】実施例１に係る、韻律生成部の出力データ例を示す図である。
【図５】実施例１に係る、（準）肉声音声格納部に格納されているデータ例を示す図である。
【図６】実施例１に係る、韻律情報抽出部の出力データ例を示す図である。
【図７】実施例１に係る、韻律生成部の全体処理フローチャートを示す図である。
【図８】実施例１に係る、韻律生成部の韻律情報生成処理のフローチャートを示す図である。
【図９】実施例１に係る、韻律生成部における韻律調整処理の模式図である。
【図１０】実施例１に係る、韻律生成部の出力データ例を示す図である。
【図１１】実施例１に係る、声質抽出部の処理フローチャートを示す図である。
【図１２】実施例１に係る、（準）肉声音声格納部に格納されているデータ例を示す図である。
【図１３】実施例１に係る、声質考慮波形合成部の処理フローチャートを示す図である。
【図１４】実施例２に係る、音声合成装置の全体機能構成を説明する図である。
【図１５】実施例２に係る、読み上げシナリオ格納部のデータ例を示す図である。
【図１６】実施例２に係る、全域声質情報格納部のデータ例を示す図である。
【図１７】実施例２に係る、声質考慮波形合成部の処理フローチャートを示す図である。
【図１８】実施例３に係る、音声合成装置の全体機能構成を説明する図である。
【図１９】実施例３に係る、コンテンツデータの構成の一例を示す図である。
【図２０】実施例３に係る、コンテンツデータの構成の一例を示す図である。
【図２１】実施例１に係る、全域声質情報の構成の一例を示す図である。
【発明を実施するための形態】
【００１４】
以下、各種の実施例を、図面に従い順次説明する。なお、本明細書において、「肉声音声」とは、通常の意味における肉声音声を、「準肉声音声」とは、韻律や声質面で肉声に準じる合成肉声音声を、「（準）肉声音声」とは、通常の意味における肉声音声と、韻律や声質面で肉声に準じる合成肉声音声の両者を意味することとする。例えば、「肉声音声データ」とは、通常の意味における肉声音声データを意味し、「準肉声音声データ」とは、韻律や声質面で肉声に準じる合成肉声音声データを意味し、「（準）肉声音声データ」とは、肉声音声データと準肉声音声データの両者を意味している。
【実施例１】
【００１５】
第１の実施例は、音声合成装置、システムに係るものである。本実施例の音声合成装置、システムの構成により、ユーザが入力した読み上げテキストを、合成音声に変換する基本機能を実現する。以下では、「部」という表現で、音声合成装置、システムの内部処理の各単位を呼称するが、ハードウェアとしての装置で実現しなくても、ソフトウェアプログラムとして実現されたシステム、またはプログラムという形態で、その機能を実現することも可能である。
【００１６】
図１Ａは、本実施例の音声合成装置、システムの全体機能を説明する図である。本実施例の音声合成装置では、読み上げ対象となる、入力テキスト（漢字かな文）１１２に加えて、（準）肉声音声ＩＤ１１４を入力として与えると、音声合成処理が実施されて、合成音声１１３が出力される。この音声合成処理を実現するために、入力解析部１０６、韻律生成部１０７、声質考慮波形合成部１１０、接続合成部１１１、韻律モデル１０８、素片データベース（ＤＢ）１０９という通常の音声合成装置が持つ処理単位、機能処理部を備える。これに加えて、本実施例の構成に特徴的な、（準）肉声音声格納部１０１、韻律や声質面で肉声に準じる合成肉声音声を生成する準肉声音声生成部１０２、（準）肉声音声を選択する（準）肉声音声選択部１０３、韻律情報抽出部１０４、声質情報抽出部１０５を備え、さらに声質考慮波形合成部１１０は、声質情報抽出部１０５で抽出された声質情報に基づいて特別な波形合成処理を行う機能処理部であることを特徴とする。これらの図１Ａの装置、システム中の処理単位、機能処理部は、例えば、次に説明する処理部でのプログラム実行で実現可能である。
【００１７】
以下ではまず本実施例を構成する各機能処理部で行われる処理について説明するが、それに先立ち、この全体機能構成を実現する、音声合成装置、システムのハードウェア構成の一具体例を図１Ｂに示す。なお、このハードウェア構成は、第１の実施例のみならず、後で説明する他の実施例の音声合成装置、システムのハードウェア構成としても利用できるものである。
【００１８】
図１Ｂの構成において、１２０はパーソナルコンピュータなどの通常のコンピュータであり、その内部に、内部バス１２８で相互接続された、処理部である中央処理部（ＣＰＵ）１２１、記憶部であるメモリ（ＭＭ）１２２、ネットワーク１２４に接続されるネットワークインターフェース１２３、入出力部（Ｉ／Ｏ）１２６を備える。また、その外部には、記憶部であるハードディスクドライブ（ＨＤＤ）１２５、入出力部１２６に接続されたスピーカ１２７を有する。外部記憶部であるＨＤＤ１２５には、動作時にＭＭ１２２にロードされ、処理部であるＣＰＵ１２１で実行される各種の音声合成用の機能プログラムや、素片データベース（ＤＢ）等の各種のデータベースなどが記憶される。入出力部１２６に接続されたスピーカ１２７からは、音声合成装置、システムによる音声合成の結果である合成音声が出力される。
【００１９】
さて、図１Ａの実施例１の機能構成図に戻り、漢字かな文である入力テキスト１１２は、「よろしくお願いします」や「今日の天気は晴れかなぁ」などの読み上げ対象テキストである。上記の例は文の数がそれぞれ１であるが、もちろん、複数の文を結合した長いテキストを入力することも可能である。また、図１Ａでは漢字かな文としているが、もちろん、英語や中国語などの外国語でも構わない。その場合は、内部の音声合成処理もその外国語に対応したプログラム・データを用いなければならない。
【００２０】
（準）肉声音声ＩＤ１１４は、入力テキスト１１２の中でどの文字列部分に対してどの（準）肉声音声を使用するかを指定する情報である。図２にＩＤと対応する文字列、対応する（準）肉声音声を格納した（準）肉声音声格納部１０１中のデータベース２００の一例を示す。ここで、（準）肉声音声とは、上述の通り、通常の肉声音声、或いは韻律や声質面で肉声に準じる合成肉声音声を意味する。本音声合成装置の利用者は、入力テキスト１１２「今日の天気は晴れかなぁ」とあわせて、（準）肉声音声ＩＤ１１４として例えば「２」という情報を入力する。利用者は図２に示す（準）肉声音声データベース２００を参照して、入力テキストの一部分として使用すべき（準）肉声音声を指定するＩＤを決定する。例えば、「かなぁ」などの口語調表現に対しては、さまざまな韻律（抑揚）で発声した「かなぁ」がありえる。音声合成装置の利用者は、自分が求める韻律を持つ（準）肉声音声を選択し、対応する（準）肉声音声ＩＤとして、「１」又は「２」を指定する必要がある。
【００２１】
入力解析部１０６は、入力テキスト１１２と（準）肉声音声ＩＤ１１４を受け取り、その解析処理を実施する。入力テキスト１１２に対しては、テキストに含まれる単語の発音やアクセントなどを決定する言語解析処理を実施し、解析結果を韻律生成部１０７に渡す。
【００２２】
一方、（準）肉声音声ＩＤ１１４は、そのまま（準）肉声音声選択部１０３に受け渡す。後述する別の実施例では、（準）肉声音声ＩＤ１１４が単純なＩＤで指定されない場合、または（準）肉声音声ＩＤ自体が指定されない場合を説明する。その場合は、入力解析部１０６では、入力テキスト１１２を解析した結果の中から（準）肉声音声の選択に必要な情報を、（準）肉声音声選択部１０３に受け渡すことになる。
【００２３】
入力解析部１０６で実施する言語解析処理はすでにさまざまな音声合成装置で実施されている入力解析部１０６から出力される情報は、例えば図３に示す情報３００のようなものとなる。もちろん、図３の情報３００は最小限必要なものであり、さらに多様な情報を付加して出力する場合も考えられる。
【００２４】
韻律生成部１０７では、入力された解析結果（図３）を用いて、合成音声が持つべき韻律情報を決定する。決定される韻律情報には、例えば、入力テキストを構成する各音素の長さ（ｍｓ）・高さ（Ｈｚ）・強さ（ｄＢ）などがある。韻律生成部１０７では、この韻律情報を決定するために韻律モデル１０８を使用する。
【００２５】
図４に韻律生成部１０７から出力される韻律情報の例を情報４００として示す。ただし、本実施例の韻律生成部１０７は、韻律情報抽出部１０４から出力された（準）肉声音声の韻律情報をもとに、上記生成された入力テキストの韻律情報４００を調整する。この処理については後述する。
【００２６】
声質考慮波形合成部１１０では、韻律生成部１０７から出力された図４の韻律情報４００をもとに、合成音声データの生成を行う。ここで行われる基本処理は従来の音声合成処理で行われる波形合成処理を用いることができる。波形合成処理では通常、素片ＤＢ１０９と呼ばれる音声データを参照して合成音声を生成する。ここで用いられる技術は、例えば音素単位、音節単位の音声波形データ（素片）を多数、素片ＤＢに格納しておき、それらの中から入力テキストを構成するために最適な素片の系列（並び）を選択し、その後、波形接続処理、または波形重畳処理を施して合成音声を生成するという技術を用いることができる。波形接続処理にはクロスフェードによる重ね合わせ処理などの、波形重畳処理には時間領域ピッチ同期オーバーラッピング処理（ＴＤ−ＰＳＯＬＡ）などのアルゴリズムを用いることができる。また、この技術以外にも、音素単位、音節単位で音声分析パラメータをＤＢに格納しておき、入力テキストを構成する音素に対応する音声分析パラメータを取り出して、それを逆フィルタ処理に通すことで音声波形に変換するパラメータ合成技術というものを用いることもできる。近年では、音声分析パラメータをＨＭＭ（隠れマルコフモデル）という確率モデルでモデル化し、より滑らかなパラメータ変化を実現する手法なども存在している。
【００２７】
以上で説明した波形合成処理は、声質考慮波形合成部１１０で行われる波形合成処理の基本処理を説明したものである。本実施例の声質考慮波形合成部１１０は、声質情報抽出部１０５から出力された（準）肉声音声の声質情報をあわせて用いて、上記説明した素片選択処理、または音声分析パラメータの調整処理を実施する。これにより、（準）肉声音声に声質が近い合成音声の生成が可能となる。この処理については後述する。
【００２８】
接続合成部１１１では、波形合成部１１０から出力された合成音声と、（準）肉声音声選択部１０３から出力された（準）肉声音声データとの結合処理を行う。入力テキスト１１２「今日は晴れかなぁ」、（準）肉声音声ＩＤ１１４「２」に対して、声質考慮波形合成部１１０からは「今日は晴れかなぁ」に対応する合成音声が出力され、同時に（準）肉声音声選択部１０３からはＩＤ「２」に対応する準肉声音声データが出力される。接続合成部１１１では声質考慮波形合成部１１０から出力された「今日は晴れかなぁ」の合成音声のうち、「かなぁ」に対応する部分を（準）肉声音声選択部１０３から出力された「かなぁ」の（準）肉声音声データで置換する処理を実施する。この置換処理は例えば、クロスフェード重ね合わせ処理を用いることができる。また、この置換処理には、本発明者等による特許文献２や、特許文献３で開示されている肉声音声と合成音声の接続処理を用いることもできる。この結果、指定された（準）肉声音声を使用することでより音質を向上させた合成音声１１３が出力される。
【００２９】
以上は、入力テキスト１１２を合成音声１１３に変換するためのメインの音声合成処理の流れについて説明した。以下では、本実施例の音声合成装置に特徴的な機能処理部について説明する。
【００３０】
（準）肉声音声格納部１０１には、さまざまな表現（日本語文字列）に対応する（準）肉声音声波形データが格納されている。例えば、図５に示すリスト５００がこの（準）肉声音声格納部１０１に格納されているデータの例である。この例では、口語調（話し言葉）音声の文末として使われる表現に対して、対応する（準）肉声音声の断片データが格納されている。もちろん、文末表現に限る必要はなく、肉声音声の品質を必要とするような表現に対してこのように（準）肉声音声データを対応付けて格納しておくことができる。ここで格納されている音声波形には、後の接続合成部１１１で使用するための付加情報として音声の長さ（ｍｓ）と両方の端点での音の高さ（Ｈｚ）が格納されている。
【００３１】
準肉声音声生成部１０２は、肉声音声の品質に準じる合成音声データである準肉声音声を生成するための処理部である。この処理部は、使用できる肉声音声の種類を（準）肉声音声格納部１０１に格納されているもの以外にも増やせることを目的としている。ただし、（準）肉声音声格納部１０１に格納されている（準）肉声音声データだけで必要な音質を確保できると判断されれば、この準肉声音声生成部１０２は必要ない。そこで、準肉声音声生成部１０２での処理は実施例２において説明する。この本実施例の説明では、この準肉声音声生成部１０２が動作しないとして説明を続けるが、本実施例の変形として、（準）肉声音声格納部１０１に格納されている（準）肉声音声データだけで必要な音質を確保できないと判断される場合は、準肉声音声生成部１０２において、必要とされる、準肉声音声、すなわち韻律や声質面で肉声に準じる合成肉声音声を生成することができる。
【００３２】
続いて、（準）肉声音声選択部１０３では、入力解析部を通して受け渡された（準）肉声音声ＩＤ１１４をもとに、対応する（準）肉声音声データを（準）肉声音声格納部１０１、または準肉声音声生成部１０２から取得する。上述の例、（準）肉声音声ＩＤ１１４として「２」が指定された場合は、図５に示される（準）肉声音声格納部１０１に格納されたデータの中からＩＤ＝２に対応する（準）肉声音声データ、およびその付加情報が選択される。ここで選択されたデータ類は韻律情報抽出部１０４、声質情報抽出部１０５、および接続合成部１１１に渡される。
【００３３】
韻律情報抽出部１０４では、（準）肉声音声選択部１０３から出力された肉声音声データに対して韻律情報の抽出処理を行う。韻律情報とは音声データを構成する各音素の長さ（ｍｓ）、高さ（Ｈｚ）、強さ（ｄＢ）などの情報であり、従来から幅広く利用されているさまざまな音声信号処理アルゴリズムを用いることで分析することができる。例えば、音の高さ（Ｈｚ）の分析には、自己相関関数のピーク検出によるピッチ抽出アルゴリズムや、ＬＰＣ残差波形の自己相関関数のピーク検出アルゴリズムなどを用いることができる。音の強さに関しても二乗平均値などのパワー分析アルゴリズムなどが存在する。
【００３４】
しかし、音声を構成する音素系列の決定やその時間位置の分析は容易ではない。さまざまな文献で開示されている音声認識アルゴリズムを用いることで、肉声音声データを音素列に変換（書き起こし）して、各音素の時間位置を決定することはできる。しかし、現状の音声認識アルゴリズムでは書き起こしの認識精度はあまり高くない。そこで、（準）肉声音声選択部１０３から（準）肉声音声データとともに受け渡される文字列表現を音素列に変換し、その時間位置のみを音声認識アルゴリズムで決定する手法をとることができる。現状の音声認識アルゴリズムでも、音素列が確定してさえいればある程度は精度も高く各音素の時間位置の決定は可能である。このようなさまざまな音声信号処理アルゴリズムを用いることで、韻律情報抽出部１０４は図６に示すような韻律情報を肉声音声データに対して生成する。もちろん、（準）肉声音声格納部１０１に格納されている音声データリスト５００に対して、事前にこの韻律情報の抽出（さらには人手による修正）を行っておき、音声データとともに（準）肉声音声格納部１０１に格納しておく構成も可能である。
【００３５】
韻律情報抽出部１０４から出力された図６に示す韻律情報６００は韻律生成部１０７に受け渡される。韻律生成部１０７は、入力解析部１０６から渡された入力テキストの解析結果３００をもとに合成音声の韻律情報４００を生成するが、本実施例の音声合成装置においては、この韻律情報抽出部１０４から受け渡された肉声音声データの韻律情報６００を用いて、合成音声の韻律情報４００の調整を行うことを特徴としている。この調整処理により、入力テキスト１１２をそのまま音声合成した場合の韻律（抑揚やリズムなど）が、指定された（準）肉声音声ＩＤ１１４と組み合わせられた場合にどう変化するかが解析され、最初に生成された韻律情報にその変化を施した調整結果を最終的な韻律情報４００として出力する。これにより、上記選択された肉声音声データとスムーズにつながるように韻律情報が調整されることになる。この韻律生成部１０７での韻律情報調整処理の詳細については後述する。
【００３６】
声質情報抽出部１０５では、（準）肉声音声選択部１０３から出力された肉声音声データに対して声質情報の抽出処理を行う。声質情報とは音声データがどのような声色であるかを示す情報であり、例えばケプストラム係数やＦＦＴなどによる周波数分析係数などが該当する。この声質情報の構成に関してはさまざまな形態が考えられ、後述する別の実施例などでいくつかの実施形態について詳細に説明を行う。また、この声質情報抽出部１０５で抽出される声質情報には少なくとも、肉声音声データの両端付近の声質を示す短時間声質情報（両端それぞれに対して）と、肉声音声データ全域に対する声質を示す全域声質情報の２種類が存在する。前者の短時間声質情報としては、肉声音声データの両端それぞれに対して、ある時間長（例えば２０ｍｓ）の短時間音声データ（フレームと呼ぶ）を切り出し、その音声に対して上述の声質分析処理を施すことができる。一方、後者の全域声質情報の構成方法にはさまざまなものが考えられる。例えば、最も単純には肉声音声データ全体に対して上述の声質分析処理を施す方法がある。後述する別の実施例ではこの他の構成についても説明する。ここの説明では、この声質情報抽出部１０５から、短時間声質情報として肉声音声データ両端の短時間フレームケプストラム係数ベクトルが、全域声質情報として肉声音声データ全体に対するケプストラム係数ベクトルが出力されるとして説明を続ける。
【００３７】
声質考慮波形合成部１１０では、声質情報抽出部１０５から出力される声質情報（短時間および全域）を受け取り、それを用いた上で合成音声の波形合成処理を行う。すでに上述したように、この波形合成処理では、入力テキストを構成する各音素（音節）に対応する素片データを素片ＤＢ１０９から取り出し、接続コストと呼ばれる素片データ間の音の近さを示す値が素片系列全体で最小となるような素片系列（最適素片系列）を探索する。この接続コストの計算において、前記声質情報（短時間および全域）を勘案することで、指定された（準）肉声音声データと声質がスムーズにつながるような合成音声を生成できるようになる。ここでの処理の詳細は後述する。
【００３８】
以上で、図１Ａに示す本実施例による音声合成装置の各機能処理の概要を説明した。この処理の結果、指定された入力テキスト１１２を音声合成した合成音声を、同じく指定された（準）肉声音声ＩＤに対応する肉声音声データと置換・接続して生成することが可能となり、その合成音声は肉声音声データ部分の声質や韻律をもとに調整されることで、声質や韻律がスムーズに肉声音声データとつながるような合成音声にすることが可能となる。具体例で示すと、「今日は晴れかなぁ」という入力テキスト、および「かなぁ」に対応する肉声音声データとして図５のＩＤ＝２の音声を指定した場合、出力される合成音声は「かなぁ」の部分に図５の（準）肉声音声データを使用し、その前の部分の「今日は晴れ」に相当する合成音声は、末尾の「かなぁ」の肉声音声データの声質や韻律に合うように調整されたものとなる。結果、末尾の肉声「かなぁ」と韻律や声質が合った（近い）「今日は晴れかなぁ」の合成音声が出力されることとなる。
【００３９】
続いて、本実施例の音声合成装置で特徴的な部分についてその処理フローも含めてより詳細に説明する。
図７、図８に示すフローチャートを用いて、韻律生成部１０７の詳細な処理の流れの一例を説明する。
【００４０】
韻律生成処理がスタートするとまず、入力解析部１０６から出力された言語解析結果３００を受け取り、その言語解析結果をもとに入力テキストを構成する各音素（音節）の韻律情報（長さ、高さ、強さ）を生成する。この韻律情報生成処理７０３は、現在利用されているさまざまな音声合成プログラムで実施されている韻律情報生成処理をそのまま利用することができる。そこでは例えば図８のフローチャートに示す処理が実施されている。
【００４１】
図８において、言語解析結果３００が入力されると各単語の発音を音素列（または音節列）へと分解する（ステップ８０２）。この結果、図４の「音素」列に示すような音素記号の系列へと変換される。
【００４２】
つづいて、各音素に対して環境情報ベクトルを生成する（ステップ８０３）。環境情報ベクトルとは、言語解析によって解析された情報３００をもとに、それぞれの位置の音素が持っているさまざまな言語環境情報をベクトル形式で抽出したものである。そのベクトルに含まれる言語環境情報には例えば、その音素が子音であるか／母音であるか（０または１）、その音素が含まれる単語（アクセント句）の音節数（モーラ数）、その音素が含まれる単語の品詞、その音素の直前の音素が子音であるか／母音であるか（０または１）、その音素の直後の音素が子音であるか／母音であるか（０または１）、その音素の直前に単語（アクセント句）の境界が存在するか／しないか（０または１）、その音素の直後に単語（アクセント句）の境界が存在するか／しないか（０または１）などがありえる。
【００４３】
つづいて、上記生成された環境情報ベクトルを参照して、入力テキストを構成する各音素の継続長の決定処理が行われる（ステップ８０４）。この決定アルゴリズムには、例えば決定木を用いる手法、数量化Ｉ類や重回帰分析による回帰直線で予測する手法などさまざまな実施例が存在する。決定木による継続長決定手法を用いる場合は、事前に大量の音声データを用いて機械学習された決定木データを参照する。決定木データには、木のルートノード（始点）から出発して、木の各ノードに設定されている質問（環境情報ベクトルの第Ｎ要素が値ｋよりも大きいか／小さいか等）を、前記抽出された環境情報ベクトルを用いて分岐していき、最終的に到達した葉ノードに設定されている継続長値（ｍｓ）を、その環境情報ベクトルを持つ音素の継続長として出力する。数量化Ｉ類や重回帰直線による予測の場合も同様に、各音素の環境情報ベクトルと、ある重み係数ベクトルとの間で内積計算することでその音素の継続長を決定する。このような音素ごとの継続長決定処理を、入力テキストを構成するすべての音素に対して実行することで、入力テキスト全体の継続長値（ｍｓ）が決定される。
【００４４】
つづいて、各音素の音高（Ｈｚ）の決定処理を実施する（ステップ８０５）。こちらも同様に、決定木や重回帰予測などの手法を用いて、前記抽出された環境情報ベクトルから各音素の音の高さ（Ｈｚ）を決定する。最後に、ステップ８０６で音素ごとの強さ（ｄＢ）を決定する。ここの処理も上記と同様の手法を用いることができる。
【００４５】
上記の説明では、継続長の決定処理（ステップ８０４）を行ってから音高の決定処理（ステップ８０５）、強さの決定処理（ステップ８０６）を実施する形態で説明したが、環境情報ベクトルに含まれる情報の種類によっては、先に音高の決定を行ってから継続長を決定するという実施形態や、継続長と音高・強さとを同時に決定する実施形態も考えられる。この順番は本実施例の実施に対しては重要ではない。
【００４６】
以上の図８の処理の流れにより、図７のフローチャートの韻律情報生成処理（ステップ７０３）は実現できる。この結果、韻律情報生成処理（ステップ７０３）から図４に示すような音素ごとの韻律情報列が出力される。
【００４７】
韻律情報生成処理（ステップ７０３）につづいて、韻律情報抽出部１０４で抽出された（準）肉声音声データの韻律情報６００を受け取り、その情報をもとに、前記ステップ７０３の韻律情報生成処理で生成された韻律情報４００の調整処理が実施される。この調整処理は、（準）肉声音声データが持つ韻律（全体的な話速、音の高さ、強さなど）に合うように、前記生成された入力テキストの韻律情報４００を調整する処理である。
【００４８】
図７に示すフローチャートでは、まず継続長の調整処理（ステップ７０５）を実行する。調整の仕方にはさまざまな方法が考えられるが、もっとも簡単には文全体（または息継ぎフレーズ単位など）での平均継続長が、図６に示す（準）肉声音声データの韻律情報６００の平均継続長と近くなるように個々の音素の継続長値を増減させる手法がありえる。ここでの増減は、日本語音声においては話速の違いが母音音素に大きく影響するという知見から母音音素の継続長に対してのみ増減処理を行うという方法を採りえる。もちろん、話速変化が子音音素に及ぼす影響と母音音素に及ぼす影響とをそれぞれ定量化して、各々切り替えて増減処理を施すという手法も考えられる。さらには、その（準）肉声音声データを切り出した元となる文音声の対応区間（例えば、「かなぁ」に対応する（準）肉声音声データが元々、「そろそろ終わりかなぁ」という肉声音声から切り出されたものであった場合、「かなぁ」の直前の部分「そろそろ終わり」に相当する部分）の平均継続長を図５に示す（準）肉声音声格納部１０１に付加情報として格納しておき、その値を用いて調整処理を行うという手法もありえる。
【００４９】
つづいて、全体ピッチの調整処理（ステップ７０６）を実行する。このピッチ（音高）の調整処理でも同様に、文全体（または息継ぎフレーズ単位など）での音高値が、当該（準）肉声音声データの始点の音高とスムーズにつながるように調整処理が行われる。この調整処理もさまざまな実施形態が考えられるが、（準）肉声音声データと接続される端点に対応する音素箇所にて音高が一致するような調整が必要である（図９ａ）。これを一致させるには、図９ｂにあるように、ステップ７０３で生成された入力テキスト全体に対する音高曲線を上下に平行移動して、接続端点の音素箇所にて音高が一致するようにすれば良い。この平行移動によって、先頭音素などの音高がある一定値よりも低くなった場合には、さらに図９ｃのように接続端点を回転の中心点として音高曲線を回転させて音高が低くなりすぎない／高くなりすぎないようにすることができる。さらに、より適切には図９ｄのように音高曲線の始点位置と接続端点位置の高さを固定した上で曲線の上下の幅を拡大・縮小することで音高変化を調整することもできる。この場合の拡大・縮小割合は、（準）肉声音声データ部分の音高変化幅の値をもとに適切な予測手法（回帰予測、決定木等による予測など）を用いて決定する。また、前述のように、この肉声音声データが切り出された元の文音声の対応区間の音高変化幅の値をもとに予測する手法も考えられる。
【００５０】
最後に、上記のようにして継続長や音高（さらには図７のフローチャートでは示さなかったが音の強さ）を調整した結果として、図１０に示した韻律情報１０００を出力する。
【００５１】
このように図７に示すフローチャートの処理を実行することで、韻律生成部１０７は、指定された（準）肉声音声ＩＤの（準）肉声音声データとスムーズに韻律がつながる合成音声の韻律情報を生成することが可能となる。
【００５２】
本実施例の音声合成装置で特徴的な部分として、次に声質情報抽出部１０５の処理についてのフローチャートを示す図１１を用いて説明する。
【００５３】
図１１に示すフローチャートによる声質情報抽出処理は、上記で既に説明した声質情報抽出部の処理内容とはまた違った実施形態となっている。この声質情報抽出処理では、（準）肉声音声選択部１０３から出力された（準）肉声音声データに対して、その始端と終端における短時間声質情報を計算するのに加えて、その（準）肉声音声データ全体での全域声質情報の計算を行う。ここでの説明では声質情報の具体的な計算アルゴリズムとしてケプストラム係数ベクトル（例えば１６次元）を用いることとする。さらに全域声質情報の構成方法としては、その（準）肉声音声データにおいて声色が特徴的な（全体の声質印象に対して支配的な）時刻位置を事前に複数設定しておき、それぞれの時刻位置での短時間声質情報（ケプストラム係数ベクトル）に指定された重み係数をかけ合わせて、すべての時刻位置での短時間声質情報を加重加算した結果の声質情報（ケプストラム係数ベクトル）を全域声質情報として出力する。
【００５４】
以下、フローチャート図１１を用いて、声質情報抽出部１０５の処理について説明する。
【００５５】
まず処理がスタートすると、ステップ１１０２にて（準）肉声音声選択部１０３から出力された（準）肉声音声データを受け取る。つづいて、ステップ１１０３では、その（準）肉声音声データに対して短時間声質情報を計算する。短時間声質情報はその（準）肉声音声データの始端位置と終端位置の２点において計算される。具体的には始端位置と終端位置（実際にはそれぞれ、無音部をとばして音声パワーがある閾値以上となった箇所）での短時間音声フレーム（例えば２０ｍｓ）を切り出し、その音声フレームに対してケプストラム分析を実施する。この結果、短時間声質情報として、始端・終端に対応する２個の声質情報（ケプストラム係数ベクトル）が出力される。
【００５６】
つづいて、全域声質情報の計算処理ステップを実施する。
【００５７】
まず、ステップ１１０６にて出力される全域声質情報ベクトルＶを初期化し、つづいてステップ１１０７にて、当該（準）肉声音声データに対する声質特徴点の数を取得する。ここで、声質特徴点とはその（準）肉声音声データにおいて声質（音色）が特徴的な時刻位置をあらわす。（準）肉声音声格納部１０１に格納されている（準）肉声音声データそれぞれに対して、図１２の情報１２００に示すように特徴点の個数、および各特徴点位置の時刻と重みを追加して格納しておく。ステップ１１０７では、（準）肉声音声選択部１０３から（準）肉声音声データとあわせて対応する特徴点の関連情報が受け渡されてあり、そこから特徴点の個数を取得することとなる。
【００５８】
ステップ１１０８もステップ１１０７と同様に、すでに受け渡されている特徴点関連情報（各特徴点の時刻Ｔｉと重みＷｉ（１≦ｉ≦Ｎ））を取得する。
【００５９】
つづくステップ１１１０からステップ１１１３までは、変数ｉを１からＮまで増加させながら繰り返して実行される。ステップ１１１０は、（準）肉声音声データからｉ番目の特徴点時刻における短時間音声フレーム（例えば２０ｍｓ）の切り出し処理を実施する。つづくステップ１１１１でその短時間声質情報（ケプストラム係数ベクトル）を計算し、その値をこの特徴点に対する重みＷｉをかけあわせた上で出力変数Ｖに加算していく。
【００６０】
これらのステップを繰り返すことで、当該（準）肉声音声データに指定されている特徴点すべてにおける短時間声質情報を重み加算した結果となる全域声質情報を計算することができる。
【００６１】
そして、最後にステップ１１０４で、前記計算された始端・終端の短時間声質情報、および全域声質情報（それぞれ１６次元のケプストラム係数ベクトル）が声質抽出部１０５から出力される。
【００６２】
また、図２１に示すように、本実施例の全域声質情報の計算方法の別の構成を採ることもできる。図２１の例は、（準）肉声音声データに対して、同図に示すように、分割なし（＝分割１）、２分割、３分割、…、ｋ分割と音声データ区間の分割を増やしていきながら、それぞれの分割区間で短時間声質情報を計算する。分割数ｉではｉ個の短時間声質情報が出力されるが、この中から全体を代表する代表声質情報を決定する。代表点の算出方法には、統計手法である平均値を用いる方法、メディアン（中央値）を用いる方法、さらにはクラスタリング手法による中心クラスタ（セントロイド）を用いる方法などが考えられる。こうして、ｋ個の代表声質情報が計算されると、それら各分割の代表声質情報を纏めて全域声質情報ベクトルであるｋ次元全域声質情報として出力する。
【００６３】
次に、図１３のフローチャートを用いて、本実施例の音声合成装置で特徴的な部分として、声質考慮波形合成部１１０の処理について説明する。
本フローチャートは素片選択型音声合成（Ｕｎｉｔ  Ｓｅｌｅｃｔｉｏｎ  Ｓｐｅｅｃｈ  Ｓｙｎｔｈｅｓｉｓ）技術の基本的な構成に対して、本実施例に特徴的ないくつかの処理を加えたものとなっている。まず、素片選択型音声合成技術の基本構成を図１３により説明したのち、本実施例の音声合成装置に特徴的なステップについてさらに追加して説明を行う。
【００６４】
図１３の左側のフローチャートは素片選択手法による波形合成処理の流れを示す。まずステップ１３０２では、読み上げ文を構成する音素（音節、または特別な単位）ごとに、その素片候補をすべて列挙する。波形合成部１１０には韻律生成部１０７から図１０に示すような韻律情報１０００が渡されている。この韻律情報の音素欄で指定された「ＫＹ」や「Ｏ」などの音素それぞれに対して、素片ＤＢ１０９の中には複数個の素片候補が存在している。ステップ１３０２では、この「ＫＹ」に対する素片候補集合、「Ｏ」に対する素片候補集合というように、読み上げ文を構成する素片単位ごとに素片候補集合を探索・列挙する。つづいて、ステップ１３０３では列挙された素片候補すべてに対して、ターゲットコストと呼ばれるコスト値を計算する。
【００６５】
図１３の中央のフローチャートで、このコスト値の計算処理の詳細を説明している。ターゲットコストの計算では、韻律情報１０００で指定されている各音素の長さ・高さ・強さに対して、素片候補それぞれの長さ・高さ・強さがどの程度離れているかに基づいてコスト値を計算する。ここでの計算式はさまざまな実施例がありえるが、本実施例の装置の骨子には大きく影響しないため、ここでは詳細は省く。こうして、韻律情報に設定された値と素片の値との間で長さ・高さ・強さに対するコスト値を計算した後、本実施例に特徴的なステップとして、全域声質に対するコスト計算処理１３１５を実施する。ここでは声質抽出部１０５から出力された（準）肉声音声データの全域声質情報と、計算対象の素片が持つ全域声質情報との間でコスト値の計算を行う。（準）肉声音声データの全域声質情報は前記説明したような実施形態のデータである。一方、当該素片が持つ全域声質情報の計算方法については、いくつか実施形態が考えられる。もっとも単純には、素片データを一つの（準）肉声音声データとみなして、声質情報抽出部１０５での全域声質情報の抽出手法として前記説明した手法を用いることで、素片データに対する全域声質情報を取得することができる。すると、二つの全域声質情報（例えば、１６次ＬＰＣケプストラム係数ベクトル）の間で距離計算（ユークリッド距離など）を行うことができる。
【００６６】
さらに、その素片データ内の子音音素区間と母音音素区間を区別して、母音音素区間のみに対して前記の全域声質情報の抽出方法を適用するという手法も実現できる。母音音素区間の方が子音音素区間と比較してより多く、話者の声質やそこの音声区間の声質を決定する情報を有しているためである。一般には、素片データを構成する音素の種別に応じて重み値を設定しておき、素片データ全体の全域声質情報に対する寄与を設定するという方法を採ることができる。
【００６７】
また、素片データに対する別の全域声質情報の計算方法として、その素片データが切り出された元々の収録音声において、その素片データが位置するある一定長の音声区間（例えばアクセント句）に対して、声質情報抽出部１０５ですでに説明した全域声質情報を抽出しておき、素片ＤＢ１０９にその素片データと対応づけて全域声質情報を格納しておくという方法も考えられる。この場合は、ステップ１３０２で素片候補を探索・列挙する際に、素片に対応づけられている全域声質情報も併せて取り出しておく必要がある。
【００６８】
また、図２１に相当する全域声質情報を採用している場合は、ここで計算される素片データに対する全域声質情報もそれに対応した構成にしなければならない。単純に、各素片データに対して前述のｋ分割によるｋ次元全域声質情報を算出して、（準）肉声音声データのそれとの間で距離計算を行うという手法もある。しかし、素片データの場合は音声長が（準）肉声音声データの音声長と比べて短い場合が多く、単純に同じ分割数ｋを用いてしまうと、各分割の分析時間長が短くなりすぎるという問題が生じる。これに対しては、その素片データが切り出された元の収録音声に対して、ｋ分割の全域声質情報の計算を行った上で、分割後の音声長が当該素片データの長さ以下となった時点で、分割範囲を素片データの中だけに限定するという手法を採ることもできる。つまり、分割単位が素片データ長よりも短い場合は素片データ内を短時間声質情報の計算範囲とし、素片データ長よりも分割単位が長い場合は素片データが切り出された元の収録音声を対象として声質情報を計算するという方法である。
【００６９】
また、ここで説明した方法では（準）肉声音声データと、素片データが切り出された元の収録音声の長さの違いは無視していたため、同じｋ分割でも分割単位の長さが対応しないという問題も生じる。これに対しては、分割数を増やしていくのではなく、分割単位の時間長を例えば、１０００ミリ秒、５００ミリ秒、２５０ミリ秒と小さくしていくという方法を採ることができる。これによって、各分割単位での分析時間長が異なるという問題は解決できる。
【００７０】
ターゲットコストの計算ステップ１３０３の説明に戻ると、上記のように、素片と韻律情報（ターゲット）との間で計算された長さ・高さ・強さに対するコスト値、およびステップ１３１５で本実施例独自に計算された全域声質情報に対するコスト値を最終的に重み加算して、その素片に対するターゲットコストを決定（ステップ１３１６）する。以上の処理を、すべての素片候補に対して繰り返す（ステップ１３１７）ことで、ターゲットコスト計算処理（ステップ１３０３）は実施される。
【００７１】
つづいて、接続コストの計算処理(ステップ１３０４）が実施される。このステップの詳細は、図１３の右側にフローチャートとして示されている。ここのフローチャートも本実施例の実施によって、素片選択型音声合成における基本構成から変更された部分が存在する。
【００７２】
図１３の右側のフローチャートにおける接続コストの計算では、まず読み上げ文の中で隣接する素片候補ｘとｙを一つ取り出す（ステップ１３２２）。つまり、素片ｘの直後に素片ｙが結合されて合成音声が生成されるような素片の組である。読み上げ文を構成する素片単位（例えば音素）ごとに、複数の素片候補が探索・列挙されているため、この組合せの数は膨大なものとなる。この組合せの数を減らす手法にはさまざまなものが開示・実施されているが、本実施例の骨子とは関連しないため、説明は省略する。
【００７３】
ステップ１３２３では、左側の素片ｘに対して、その終端位置での短時間声質情報を抽出する。短時間声質情報の構成方法はすでに述べた。この接続コスト計算処理では、前記説明した（準）肉声音声データに対して抽出する短時間声質情報と、ここで抽出する素片の短時間声質情報との間で距離計算する必要があるため、この２種類の短時間声質情報は同じ手法で分析された情報であることが望ましい。
【００７４】
次に、素片ｙが（準）肉声音声データの先頭箇所に相当する音素（素片単位）であるかどうかにより、処理を切り分ける。まず、判定結果がＮＯの場合、すなわち、(準）肉声音声データとの接合点ではない場合は、通常の音声合成処理と同一であり、ステップ１３２５で素片ｙの先頭位置での短時間声質情報を計算し、ステップ１３２６で上記計算した素片ｘとｙの短時間声質情報の間での距離を計算する。
【００７５】
一方、素片ｙの位置が（準）肉声音声データの先頭箇所に相当するものである場合、素片ｘ終端の短時間声質情報と、前記声質抽出部１０５で計算された（準）肉声音声データの始点の短時間声質情報との間で、距離計算する必要がある。ステップ１３２７で（準）肉声音声データ始点の短時間声質情報を取り出し、ステップ１３２８で素片ｘの短時間声質情報との間での距離を計算する。
【００７６】
最後に、ステップ１３２９では、計算された短時間声質情報間の距離に対して、ある重み値をかけることで最終的な接続コスト値として出力する。この重み値は一定ではなく、接続コスト計算のフローチャートで左右どちらの経路で計算された値かによって重み値を変更する場合は考えられ、また素片ｘやｙの音素の種類などで重みを変更する実施形態もありえる。
【００７７】
以上の処理を、すべての素片組合せに対して実施する。これにより、すべての素片の組合せに対して、その間での接続コストが設定される（ステップ１３０４）。
【００７８】
つぎに、最小コストとなる素片系列の探索処理を実施する（ステップ１３０５）。読み上げ文を構成する音素（音節）ごとに複数の素片候補が列挙されているが、その中から一つを決定する処理がこの処理である。決定処理においては、素片の持つターゲットコスト、および左右の音素（音節）に対応する素片との間での接続コストを足し合わせて、最もコスト和が小さな素片の組合せを決定する。この探索処理は、音声合成技術では広く用いられているビタビアルゴリズムなどを用いて実現することができる。
【００７９】
最後に、ステップ１３０６では、決定された素片の組合せを用いて、最終的な合成音声の生成処理を行う。ここでは、素片ごと、または素片間で波形重畳処理や波形接続処理と呼ばれる音声信号処理手法を用いることで実現できる。これらの手法にもさまざまな実施形態がありえるが、本実施例の骨子とは関連しないため、説明は省略する。
【００８０】
以上の処理によって、本実施例の音声合成手法および装置では、口語調音声を始めとする韻律や声質の変化が大きい発話スタイルの合成音声を生成する音声合成処理において、発話スタイルに特徴的な部分（口語表現部分）に肉声や肉声に準じる品質の音声データを用いることで全体の音質（肉声感）を向上させることができる。さらには、その（準）肉声音声とその他の合成音声部分との韻律や声質の違いをできるだけ小さくすることができ、従来技術で感じられた合成音声の違和感を軽減することが可能となる。
【実施例２】
【００８１】
本実施例では、実施例１で説明した音声合成装置の基本構成を用いて、対話システムなどのように複数の文章を連続して音声合成するシステムの実施例を説明する。
【００８２】
本実施例では、シナリオ等に基づいて、またはユーザの応答に応じてシステムの次の読み上げ文章を決定する仕組み等を介して、複数の文章を連続して、またはユーザの応答と交互に音声合成するシステムを実現する。
【００８３】
図１４は、本実施例の音声合成システム全体を説明する図である。この構成では、実施例１の基本構成（図１Ａ、図１Ｂ）に加えて、読み上げシナリオ格納部１４０１、読み上げ文生成部１４０２、全域声質情報格納部１４０３を持つ。
【００８４】
以下、図１４で新たに追加された機能処理部を中心に処理の流れを説明する。
本実施例では、音声合成システムへの入力（テキストおよび（準）肉声音声ＩＤ）はその都度都度の単独の入力ではなく、複数の文章から構成されるシナリオに沿ってその中から順次、音声合成すべき文章が決定される。
【００８５】
読み上げシナリオ格納部１４０１は、そのようなシナリオデータ（読み上げ文章の流れを指定するデータ）を格納している。この読み上げシナリオ格納部１４０１は、記憶部の一部に形成可能である。シナリオデータの構成方法にはさまざまな手法が考えられるが、もっとも単純には読み上げ文章および対応する（準）肉声音声ＩＤの組を、シナリオの流れに沿って順番に記入したリストの形態で格納する手法である。この場合、読み上げシナリオ格納部１４０１には、例えば、図１５に示すようなシナリオデータ１５００が格納されている。
【００８６】
読み上げ文生成部１４０２は、読み上げシナリオ格納部１４０１から順番に読み上げ文と対応する（準）肉声音声ＩＤを取り出し、本実施例の音声合成装置に入力する処理を行う。この読み上げ文生成部１４０２は、例えば、処理部であるＣＰＵにおけるプログラム実行で実現できることはいうまでもない。
【００８７】
図１５に示すようなシナリオデータ１５００が格納されている場合であれば、次に音声合成する文と（準）肉声音声ＩＤを取り出して、直前の音声合成処理が終了したタイミングで入力すれば良い。もちろん、もっと複雑な形式でシナリオデータを保存することもできる。例えば、ＶｏｉｃｅＸＭＬ、ＳＳＭＬ（Ｓｐｅｅｃｈ  Ｓｙｎｔｈｅｓｉｓ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）などの標準化された規格にもとづいたシナリオデータを用いることも考えられる。この場合、それらの規格データの中では読み上げ文のテキストしか指定できないため、その文に対応する（準）肉声音声ＩＤを決定するために、別の対応表（図１５もその例）を持つことになる。本実施例の好適な態様にあっては入力テキストを解析し、この図１５の対応表を用いて、（準）肉声音声データを決定する。
【００８８】
本実施例のシステムでもう一つ追加された全域声質情報格納部１４０３は、声質情報抽出部１０５で抽出された全域声質情報を、毎回、追加・格納していく。ここで格納される全域声質情報の構成方法は特に限定しない。この格納部１４０３には、少なくとも直前に音声合成された数回分の全域声質情報を格納しておくことが必要である。例えば、図１６に全域声質情報格納部１４０３に格納されている情報の例１６００を示す。この情報１６００では、現在の読み上げ文を履歴０として過去３回までの読み上げ文に関する全域声質情報が保存されている。また、読み上げ文や対応する（準）肉声音声ＩＤも格納してある。ここに格納しておく必要がある情報も、先の履歴の長さと同じように、声質考慮波形合成処理において、過去の読み上げ文の全域声質情報をどのような処理方法で利用するかに依存する。
【００８９】
声質考慮波形合成部１１０では、声質情報抽出部１０５から出力された、今回の読み上げ文に関する声質情報に加えて、全域声質情報格納部１４０３に格納されている過去の読み上げ文に対する全域声質情報も参照して、今回の読み上げ文に対する合成音声を生成する。図１７を用いて説明する。
【００９０】
図１７は本実施例における声質考慮波形合成部１１０の処理フローチャートの一例である。
【００９１】
図１７の処理フローチャートは、実施例１の声質考慮波形合成部１１０の処理フローチャート図１３中と、全域声質に対するコスト計算処理の箇所が異なる。図１７では、全域声質情報に対するコスト計算処理をさらに詳細ないくつかの処理ステップとして実現する。
【００９２】
ステップ１７０１では全域声質情報格納部１４０３に格納されている情報から、直前に音声合成した文に対する全域声質情報（以下、Ｃ１と呼ぶ）を取得し、続く１７０２では声質抽出部１０５から出力された今回の読み上げ文（（準）肉声音声データ）に対する全域声質情報（以下、Ｃ０）を取得する。
【００９３】
つづいて、ステップ１７０３では、現在、ターゲットコストを計算している素片が読み上げ文の中でどこにあるかを示す位置情報Ｐを計算する。この位置Ｐとは、直前の読み上げ文における（準）肉声音声データの全域声質情報が、今回の文のどの位置まで影響を及ぼすかを評価するための情報として利用される。この位置Ｐの計算方法には、例えば、読み上げ文を構成する音素の系列の中で何番目に位置するかを示す値を使用することもでき、また読み上げ文の先頭から何秒目に位置するかを示す値を韻律情報１０００から計算して使用することもできる。また、読み上げ文中で先頭からこの素片の占める位置までの間に息継ぎポーズが含まれた場合には位置Ｐに大きな値を加算するなどする実装形態も考えられる。息継ぎポーズが出現すると、そこで声質に関して大きく変化（またはリセット）することが想定されるため、位置Ｐの値にもこのような非線形な変化を行うことで、上記の現象を考慮することが可能となる。また別の実施形態では、位置Ｐとして当該素片が含まれる息継ぎフレーズ、またはアクセント句が先頭から何番目のものであるかを示す値を使用することもできる。全域声質情報の影響は、意味的にまとまった音声単位であるアクセント句、またはフレーズごとに段階的に変わっていくことも考えられる。
【００９４】
ステップ１７０４では、この位置情報Ｐに基づいて、全域声質情報Ｃ１とＣ０に対する重み値を計算する。これらの重み値は、直前の文の（準）肉声音声データの影響と、今回の文の（準）肉声音声データの影響のどちらが強いかを決定するための情報であり、上述の位置Ｐの値をもとに計算される。ここで、重み値の計算方法にもさまざまなものが考えられるが、もっとも単純には、Ｗ１＝（１−Ｐ／Ｐｍａｘ）、Ｗ０＝（１−Ｗ１）という計算手法が考えられる。ここでＰｍａｘは読み上げ文を構成する最後の音素（音節）に対応する素片に対して計算される位置情報Ｐのことである。この計算式では、読み上げ文の先頭に位置する素片ほど、直前文の（準）肉声音声データの全域声質情報の影響が大きくなり、位置Ｐが増えるにつれて比例してその影響力が小さくなる、つまり、今回の文の（準）肉声音声データの全域声質情報の影響が大きくなる効果を持つ。この計算式は一例であり、もっとも単純な場合である。より実際的な実施形態では、位置Ｐの値ごとに（または値の幅ごとに）あらかじめ重み値Ｗ１、Ｗ０を設定したテーブルを参照する方法がありえる。上記のように、直前文の（準）肉声音声データの全域声質と、今回の文のそれの影響が線形に変化していくことは考えづらい。実際の音声を模擬するためには、あらかじめ調整された重みテーブルを設定しておくことが望ましい。
【００９５】
ステップ１７０５では、この素片に対する全域声質情報の距離計算で使用する、（準）肉声音声データ側の全域声質情報を修正する。今回の文の全域声質情報はＣ０であるが、前述の通り、読み上げ文中での位置によって、直前文の全域声質情報の影響が必要な場合がある。そこで、Ｃ＝Ｗ０・Ｃ０＋Ｗ１・Ｃ１という式により、距離計算で使用する全域声質情報を計算する。
【００９６】
最後に、ステップ１７０６では上記計算された全域声質情報Ｃと、この素片の全域声質情報（構成方法は実施例１にて説明）との間で距離を計算し、それを全域声質に対するコスト値とする。
【００９７】
以上の流れにより、全域声質格納部１４０３に格納されている、直前の文、さらにはそれより以前の文の全域声質情報を参照して、今回の文に対する合成音声の声質を補正することが可能となる。
【００９８】
この実施例２によれば、複数の文を連続して音声合成するような場合において、直前に音声合成した文の（準）肉声音声データの全域声質と合うように、今回の合成音声の先頭箇所の声質を調整できるようになる。この結果、声質がスムーズにつながる合成音声を生成することが可能となる。
【実施例３】
【００９９】
本実施例では、実施例２の構成を応用して、読み上げコンテンツをサーバからパーソナルコンピュータや、電子書籍端末などの端末側に配信し、その読み上げコンテンツを音声合成システムで読み上げるシステムの実施形態を説明する。
【０１００】
本実施例では、たとえば電子書籍などで読み上げテキストに（準）肉声音声データ群を付加したデータ全体を配信し、端末側の電子書籍端末では、コンテンツ内に記録されている（準）肉声音声データを使用しつつ、本実施例による音声合成処理を実施する。また、電子書籍以外でも、スマートフォンなどでの音声対話インタフェースにおいて、対話データ（シナリオ）をサーバ側で生成する場合に、対話シナリオ全体、または対話の流れに従って生成された一部分のシナリオをサーバ側から端末側に配信する仕組みにも使用することができる。
【０１０１】
図１８は、本実施例の音声合成システム全体を説明する図である。サーバ１８００は、通常のコンピュータ構成を備え、その記憶部にコンテンツ格納部１８０１を備え、その処理部であるＣＰＵや、ネットワークインターフェースによってコンテンツ送信部１８０２を構成可能である。
【０１０２】
一方、端末側のコンピュータ１２０では、実施例２の構成（図１４）に加えて、コンテンツ受信部１８０３、コンテンツ格納部１８０４、コンテンツ選択部１８０６、入力生成部１８０５を持つ。これらはコンテンツ格納部１８０４が記憶部である他、先に説明したネットワークインターフェースや、処理部であるＣＰＵのプログラム実行により、実現可能な機能処理部である。一方で、肉声音声格納部、準肉声音声生成部、（準）肉声音声選択部は持たず、入力生成部１８０５がそれらの処理の一部を実施する。また、以上の端末側の装置に、ネットワーク１２４を介して、サーバ側のコンテンツ送信部１８０２、コンテンツ格納部１８０１に繋がっている。
【０１０３】
以下の説明では、端末側の処理部についてのみ説明する。
コンテンツ受信部１８０３は、ネットワークを介して、コンテンツデータをサーバから受け取り、コンテンツ格納部１８０４に格納しておく。ここで想定するコンテンツデータとは、電子書籍や音声対話シナリオデータにおいて、読み上げテキストに加えて（準）肉声音声データ群、および読み上げ文と（準）肉声音声データとの対応を示すリストを含んだデータである。図１９にその一例としてコンテンツデータ１９００を示す。図１９の（ａ）は読み上げ文そのもののリストであり、電子書籍データでは書籍内容のテキストそのものに相当する。図１９の（ｃ）は(準）肉声音声データの一覧である。ここに示すように、コンテンツそのものに（準）肉声音声データが埋め込まれて配信される。図１９の（ｂ）は、読み上げ文とそこで使用すべき(準）肉声音声データの対応を示すデータである。
【０１０４】
図２０に、さらに別の実施形態でのコンテンツデータの例２０００を示す。この形態のコンテンツデータ２０００では、読み上げ文中に特別な表現（※Ｎ※）で（準）肉声音声ＩＤを指定しておく。このように、必要なデータをまとめて一つのコンテンツデータ内に格納しておくことで、コンテンツの内容に合わせて合成音声の話し方の調子を変えたりすることが可能となる。
【０１０５】
コンテンツ選択部１８０６は、コンテンツ格納部１８０４に格納されている複数のコンテンツデータ２０００の中からユーザが使用したいデータを選択するための仕組みである。電子書籍端末として実施する場合は、端末に格納されている電子書籍の中からユーザが読みたい（聞きたい）電子書籍コンテンツを選択する仕組み（タッチパネル等）がこれにあたる。また、音声対話インタフェースで使用される対話コンテンツなどでは、このコンテンツ選択処理は、ユーザ自らによる選択作業ではなく、音声対話システムによって、自動的に決定される仕組みとなる場合もある。
【０１０６】
こうして選択されたコンテンツデータは入力生成部１８０５に渡される。入力生成部１８０６の処理は、実施例２の図１４における読み上げ文生成部１４０２と入力解析部１０６と（準）肉声音声選択部１０３とをあわせたものとなる。図１９に示すようなコンテンツデータを使用する場合、この入力生成部１８０６では、図１９の（ａ）に示すコンテンツデータの中の読み上げ文リストから順番に読み上げ文を取り出し、その文ＩＤに対応する（準）肉声音声データ（および付随情報）を、図１９の（ｂ）の対応表と、図１９（ｃ）の音声データ一覧をもとに決定し、取り出された読み上げ文と（準）肉声音声データ（付随情報）を韻律生成部、韻律情報抽出部、声質情報抽出部、接続合成部にそれぞれ受け渡す。
【０１０７】
このような構成を用いることで、コンテンツごとに設定されている（準）肉声音声データを使用して、そのコンテンツをより高品質な合成音声で読み上げることが可能となる。
【０１０８】
以上、本発明の種々の実施例を説明したが、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明のより良い理解のために詳細に説明したのであり、必ずしも説明の全ての構成を備えるものに限定されものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることが可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【０１０９】
更に、上述した各構成、機能、処理部等は、それらの一部又は全部を実現するための処理部で実行されるプログラムを作成する例を中心に説明したが、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現しても良いことは言うまでもない。
【符号の説明】
【０１１０】
１０１  （準）肉声音声格納部
１０２  準肉声音声生成部
１０３  （準）肉声音声選択部
１０４  韻律情報抽出部
１０５  声質情報抽出部
１０６  入力解析部
１０７  韻律生成部
１０８  韻律モデル
１０９  素片データベース（ＤＢ）
１１０  声質考慮波形合成部
１１１  接続合成部
１１２  入力テキスト（漢字かな文）
１１３  合成音声
１１４  （準）肉声音声ＩＤ
１２０  コンピュータ
１２１  中央処理部（ＣＰＵ）
１２２  メモリ（ＭＭ）
１２３  インタフェース（Ｉ／Ｆ）
１２４  ネットワーク
１２５  ハードディスクコントローラ（ＨＤＤ）
１２６  入出力部（Ｉ／Ｏ）
１２７  スピーカ
１２８  バス
２００  （準）肉声音声データベース
９０１、９０３  曲線
９０２  接続端点
１４０１  読み上げシナリオ格納部
１４０２  読み上げ文生成部
１４０３  全域声質情報格納部
１８００  サーバ
１８０１  コンテンツ格納部
１８０２  コンテンツ送信部
１８０３  コンテンツ受信部
１８０４  コンテンツ格納部
１８０５  入力生成部
１８０６  コンテンツ選択部
【図１Ａ】
2014062970.tif 000003
【図１Ｂ】
2014062970.tif 000004
【図２】
2014062970.tif 000005
【図３】
2014062970.tif 000006
【図４】
2014062970.tif 000007
【図５】
2014062970.tif 000008
【図６】
2014062970.tif 000009
【図７】
2014062970.tif 000010
【図８】
2014062970.tif 000011
【図９】
2014062970.tif 000012
【図１０】
2014062970.tif 000013
【図１１】
2014062970.tif 000014
【図１２】
2014062970.tif 000015
【図１３】
2014062970.tif 000016
【図１４】
2014062970.tif 000017
【図１５】
2014062970.tif 000018
【図１６】
2014062970.tif 000019
【図１７】
2014062970.tif 000020
【図１８】
2014062970.tif 000021
【図１９】
2014062970.tif 000022
【図２０】
2014062970.tif 000023
【図２１】
2014062970.tif 000024