(57)【要約】【課題】再生中に韻律パタンを切り替えた際に生じる異音や違和感を抑えることができる音声合成技術を提供する。【解決手段】音声合成装置は、複数の韻律パタンが記憶される韻律パタンＤＢ記憶部と、再生中の音声データの再生位置に関する音声再生位置情報を用いて、切替前韻律パタンと切替後韻律パタンとの補間処理を行い、合成音声データの生成に用いる合成用韻律パタンを生成する韻律パタン生成部を含む。韻律パタン生成部は、切替前韻律パタンと切替後韻律パタンと音声再生位置情報とを用いて、音声再生位置情報が示す再生位置が、切替後韻律パタンのどの位置にあたるかを示す一致点情報を推定する一致点推定部と、一致点情報が示す位置から所定の時間をかけて、切替前韻律パタンの基本周波数の時間変化を切替後韻律パタンの基本周波数の時間変化に変換するために補間処理を行う韻律パタン補間部と、を含む。【選択図】図１
2015219430.tif 000002
【特許請求の範囲】
【請求項１】
音素セグメンテーション情報は、音声合成の対象テキストを読み上げた音声データである収録音声データに対応する音素と音素の継続時間に対応する情報とを含むものとし、韻律パタンは収録音声データに対応する基本周波数の時間変化のパタンと音素セグメンテーション情報とを含むものとし、複数の韻律パタンが記憶される韻律パタンＤＢ記憶部と、
再生中の音声データに対応し、前記韻律パタンＤＢ記憶部に記憶されている韻律パタンの１つである切替前韻律パタンの特徴と、前記韻律パタンＤＢ記憶部に記憶されている韻律パタンの１つである切替後韻律パタンの特徴とが異なる場合に、再生中の音声データの再生位置に関する音声再生位置情報を用いて、前記切替前韻律パタンと前記切替後韻律パタンとの補間処理を行い、合成音声データの生成に用いる合成用韻律パタンを生成する韻律パタン生成部を含み、
韻律パタン生成部は、
前記切替前韻律パタンと前記切替後韻律パタンと前記音声再生位置情報とを用いて、前記音声再生位置情報が示す前記再生位置が、前記切替後韻律パタンのどの位置にあたるかを示す一致点情報を推定する一致点推定部と、
前記切替前韻律パタンと前記切替後韻律パタンと前記一致点情報とを用いて、前記一致点情報が示す位置から所定の時間をかけて、前記切替前韻律パタンの基本周波数の時間変化を前記切替後韻律パタンの基本周波数の時間変化に変換するために補間処理を行う韻律パタン補間部と、を含む、
音声合成装置。
【請求項２】
請求項１の音声合成装置であって、
さらに、
複数の音声データベースが記憶される音声合成用ＤＢ記憶部と、
再生中の音声データに対応し、前記音声合成用ＤＢ記憶部に記憶されている音声データベースの１つである切替前音声データベースと、前記音声合成用ＤＢ記憶部に記憶されている音声データベースの１つである切替後音声データベースとが異なる場合に、前記切替前音声データベースと韻律パタンとを用いて、切替前スペクトルパラメータを生成し、前記切替後音声データベースと前記韻律パタンとを用いて、切替後スペクトルパラメータを生成し、前記切替前スペクトルパラメータと前記切替後スペクトルパラメータとの補間処理を行い、合成音声データの生成に用いる合成用スペクトルパラメータを生成する音声波形生成部を含み、
前記音声波形生成部は、
前記切替前スペクトルパラメータと前記切替後スペクトルパラメータと前記音声再生位置情報とを用いて、前記一致点情報または前記音声再生位置情報が示す位置から所定の時間をかけて、前記切替前スペクトルパラメータを前記切替後スペクトルパラメータに変換するために補間処理を行うスペクトルパラメータ補間部を含む、
音声合成装置。
【請求項３】
音素セグメンテーション情報は、音声合成の対象テキストを読み上げた音声データである収録音声データに対応する音素と音素の継続時間に対応する情報とを含むものとし、韻律パタンは収録音声データに対応する基本周波数の時間変化のパタンと音素セグメンテーション情報とを含むものとし、韻律パタンＤＢ記憶部には複数の韻律パタンが記憶されているものとし、
再生中の音声データに対応し、前記韻律パタンＤＢ記憶部に記憶されている韻律パタンの１つである切替前韻律パタンの特徴と、前記韻律パタンＤＢ記憶部に記憶されている韻律パタンの１つである切替後韻律パタンの特徴とが異なる場合に、再生中の音声データの再生位置に関する音声再生位置情報を用いて、前記切替前韻律パタンと前記切替後韻律パタンとの補間処理を行い、合成音声データの生成に用いる合成用韻律パタンを生成する韻律パタン生成ステップを含み、
前記韻律パタン生成ステップは、
前記切替前韻律パタンと前記切替後韻律パタンと前記音声再生位置情報とを用いて、前記音声再生位置情報が示す前記再生位置が、前記切替後韻律パタンのどの位置にあたるかを示す一致点情報を推定する一致点推定ステップと、
前記切替前韻律パタンと前記切替後韻律パタンと前記一致点情報とを用いて、前記一致点情報が示す位置から所定の時間をかけて、前記切替前韻律パタンの基本周波数の時間変化を前記切替後韻律パタンの基本周波数の時間変化に変換するために補間処理を行う韻律パタン補間ステップと、を含む、
音声合成方法。
【請求項４】
請求項１または２の音声合成装置として、コンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、対象テキストに対応する音声データを合成する音声合成装置、その方法及びプログラムに関する。
【背景技術】
【０００２】
近年、電子書籍リーダ等に、音声合成技術を用いたコンテンツの文字情報の読み上げ技術が導入されるようになっている。合成音声によるコンテンツの読み上げにおいて、合成音声の韻律パタンを変更することができれば、聴者が飽きにくいコンテンツを提供することができると考えられる。特許文献１では、電子書籍等の読み上げにおいて、ユーザが自由に合成音声の声質を指定し、切り替えることができる技術が提案されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−３２１７０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１は、合成音声の再生中に声質を切り替えることを想定していない。そのため、仮に、再生中に声質を切り替えると、声の高さ、イントネーション、リズム等が突然切り替わるため、異音が発生したり、聴者に違和感を与える可能性が高い。
【０００５】
本発明は、再生中に韻律パタンを切り替えた際に生じる異音や違和感を抑えることができる音声合成装置、その方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記の課題を解決するために、本発明の一態様によれば、音声合成装置は、音素セグメンテーション情報は、音声合成の対象テキストを読み上げた音声データである収録音声データに対応する音素と音素の継続時間に対応する情報とを含むものとし、韻律パタンは収録音声データに対応する基本周波数の時間変化のパタンと音素セグメンテーション情報とを含むものとし、複数の韻律パタンが記憶される韻律パタンＤＢ記憶部と、再生中の音声データに対応し、韻律パタンＤＢ記憶部に記憶されている韻律パタンの１つである切替前韻律パタンの特徴と、韻律パタンＤＢ記憶部に記憶されている韻律パタンの１つである切替後韻律パタンの特徴とが異なる場合に、再生中の音声データの再生位置に関する音声再生位置情報を用いて、切替前韻律パタンと切替後韻律パタンとの補間処理を行い、合成音声データの生成に用いる合成用韻律パタンを生成する韻律パタン生成部を含む。韻律パタン生成部は、切替前韻律パタンと切替後韻律パタンと音声再生位置情報とを用いて、音声再生位置情報が示す再生位置が、切替後韻律パタンのどの位置にあたるかを示す一致点情報を推定する一致点推定部と、切替前韻律パタンと切替後韻律パタンと一致点情報とを用いて、一致点情報が示す位置から所定の時間をかけて、切替前韻律パタンの基本周波数の時間変化を切替後韻律パタンの基本周波数の時間変化に変換するために補間処理を行う韻律パタン補間部と、を含む。
【０００７】
上記の課題を解決するために、本発明の他の態様によれば、音声合成方法は、音素セグメンテーション情報は、音声合成の対象テキストを読み上げた音声データである収録音声データに対応する音素と音素の継続時間に対応する情報とを含むものとし、韻律パタンは収録音声データに対応する基本周波数の時間変化のパタンと音素セグメンテーション情報とを含むものとし、韻律パタンＤＢ記憶部には複数の韻律パタンが記憶されているものとし、韻律パタン生成ステップは、再生中の音声データに対応し、韻律パタンＤＢ記憶部に記憶されている韻律パタンの１つである切替前韻律パタンの特徴と、韻律パタンＤＢ記憶部に記憶されている韻律パタンの１つである切替後韻律パタンの特徴とが異なる場合に、再生中の音声データの再生位置に関する音声再生位置情報を用いて、切替前韻律パタンと切替後韻律パタンとの補間処理を行い、合成音声データの生成に用いる合成用韻律パタンを生成する韻律パタン生成ステップを含む。韻律パタン生成ステップは、切替前韻律パタンと切替後韻律パタンと音声再生位置情報とを用いて、音声再生位置情報が示す再生位置が、切替後韻律パタンのどの位置にあたるかを示す一致点情報を推定する一致点推定ステップと、切替前韻律パタンと切替後韻律パタンと一致点情報とを用いて、一致点情報が示す位置から所定の時間をかけて、切替前韻律パタンの基本周波数の時間変化を切替後韻律パタンの基本周波数の時間変化に変換するために補間処理を行う韻律パタン補間ステップと、を含む。
【発明の効果】
【０００８】
本発明によれば、再生中に韻律パタンを切り替えた際に生じる異音や違和感を抑えることができるという効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】第一実施形態に係る音声合成装置の機能ブロック図。
【図２】第一実施形態に係る音声合成装置の処理フローの例を示す図。
【図３】図３Ａは、切替前の韻律パタンPaの音素セグメンテーション情報Saの例を示す図。図３Ｂは、切替後の韻律パタンPbの音素セグメンテーション情報Sbの例を示す図。
【図４】韻律パタンＤＢ記憶部に格納されている情報の例を示す図。
【図５】ユーザが方言と音質とを指定する画面の例を示す図。
【図６】ユーザ制御情報Cの例を示す図。
【図７】韻律パタン選択部の処理フローの例を示す図。
【図８】韻律パタン生成部の機能ブロック図。
【図９】韻律パタン生成部の処理フローの例を示す図。
【図１０】合成音声再生位置情報Aposの例を示す図。
【図１１】韻律パタン補間部の機能ブロック図。
【図１２】韻律パタン補間部の処理フローの例を示す図。
【図１３】音声波形生成部１３０の機能ブロック図。
【図１４】音声波形生成部１３０の処理フローの例を示す図。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態について説明する。なお、以下の説明に用いる図面では、同じ機能を持つ構成部や同じ処理を行うステップには同一の符号を記し、重複説明を省略する。また、ベクトルや行列の各要素単位で行われる処理は、特に断りが無い限り、そのベクトルやその行列の全ての要素に対して適用されるものとする。
【００１１】
＜第一実施形態＞
図１は第一実施形態に係る音声合成装置１００の機能ブロック図を、図２はその処理フローの例を示す図である。
【００１２】
音声合成装置１００は、韻律パタン選択部１１０と、韻律パタン生成部１２０と、音声波形生成部１３０と、韻律パタンＤＢ記憶部１４０と音声合成用ＤＢ記憶部１５０とを含む。なお、音声合成装置１００は、さらに、収録音声ＤＢ記憶部１０１と韻律パタン抽出部１０３とを含んでもよい。
【００１３】
本実施形態では、音声合成装置１００は、ユーザにより指定されるユーザ制御情報Cを受け取り、ユーザ制御情報Cに対応する韻律パタンに基づき、合成音声データXcを生成し、出力する。なお、ユーザ制御情報Cは、韻律パタンＤＢ記憶部１４０に記憶されている複数の韻律パタンの１つである切替後韻律パタンの特徴を特定する情報を含む。さらに、ユーザ制御情報Cは、音声合成用ＤＢ記憶部１５０に記憶されている複数の音声データベースの１つである切替後音声データベースを特定する情報と再生速度を特定する情報とを含む。
【００１４】
本実施形態では、韻律パタンＤＢ記憶部１４０に記憶されている韻律パタンは、所定の方言に対応するものとする。まず事前に、所望のコンテンツ（以下「対象テキスト」ともいう）を様々な方言で読み上げた音声データから韻律パタンを抽出し、韻律パタンＤＢ記憶部１４０に格納しておく。コンテンツの読み上げ時には、ユーザにより指定された方言等の情報と、現在の再生位置等の情報から適切な韻律パタンを韻律パタンＤＢ記憶部１４０から選択し、選択された韻律パタンとユーザにより指定された音声データベースとを用いて、合成音声データXcを生成して出力する。
【００１５】
合成音声データXcはスピーカ等の再生装置に入力され、再生される。
【００１６】
＜収録音声ＤＢ記憶部１０１及び韻律パタン抽出部１０３＞
収録音声ＤＢ記憶部１０１には、読上げたいコンテンツ（書籍等）を、事前に様々な方言で人が読み上げた音声データ（以下、「収録音声データ」ともいい、収録音声データは音声合成の対象テキストを読み上げた音声データと言ってもよい）Yjが記憶されている。jは、収録音声データのインデックスを表し、文や文章、方言等の組合せごとに付与されているものとする。収録音声ＤＢ記憶部１０１に記憶されている収録音声データYjの総数をJとすると、j=1,2,…,Jである。ただし、Jは２以上の整数である。読上げたいコンテンツに含まれる文や文章の総数をＫ、方言の総数をＬとするとＪ＝Ｋ×Ｌである。
【００１７】
韻律パタン抽出部１０３は、収録音声ＤＢ記憶部１０１から収録音声データYjを取り出し、収録音声データYjから韻律パタンPjを抽出し、韻律パタンＤＢ記憶部１４０に格納する。
【００１８】
なお、予めJ個の韻律パタンPjを記憶した韻律パタンＤＢ記憶部１４０を用意しておけば、音声合成装置１００は、収録音声ＤＢ記憶部１０１と韻律パタン抽出部１０３とを含まなくともよい。
【００１９】
韻律パタンPjは収録音声データYjに対応する基本周波数（以下「F0」ともいう）の時間変化のパタンf0jと音素セグメンテーション情報Sjとを含む。音素セグメンテーション情報Sjは、収録音声データYjに対応する音素と音素の継続時間に対応する情報（例えば、各音素の開始時刻、終了時間）とを含む。図３Ａ及び図３Ｂは、それぞれ切替前の韻律パタンPaの音素セグメンテーション情報Sa及び切替後の韻律パタンPbの音素セグメンテーション情報Sbの例を示す。ａ及びｂはそれぞれ切替前及び切替後の韻律パタンを表すインデックスであり、それぞれ１，２，…，Ｊの何れかである。
【００２０】
F0の時間変化パタンとは、収録音声データから一定時間（フレーム）ごとに抽出されるF0の情報の時系列である。例えば1[s]の音声データに対して、フレームシフト長5[ms]でF0を抽出した場合、F0の時間変化パタンは、200点分のF0の情報の時系列を表す。
【００２１】
＜韻律パタンＤＢ記憶部１４０＞
韻律パタンＤＢ記憶部１４０には、J個の韻律パタンPjが記憶される。
【００２２】
なお、韻律パタンＤＢ記憶部１４０には、各収録音声データYjから抽出された韻律パタンPj以外に、韻律パタンの識別子（例えば、韻律パタンNo.であり、本実施形態では韻律パタンNo.=jである）、読み上げたコンテンツの文や文章の識別子（例えば、文番号）、韻律パタンの特徴等が格納されている。韻律パタンの特徴としては、方言（例えば、大阪、京都、鹿児島、高知）、性別（例えば、男性、女性）、年代（例えば、子ども、青年、中年や、１０代、２０代、…）、発話状況（例えば「会話」「演説」）等が考えられる。要は、韻律パタンの特徴とは、他の韻律パタンに比べて、何らかの傾向がみられる韻律パタンを表すものであればどのようなものであってもよく、必ずしも話者が異なる必要はない。
【００２３】
図４は、韻律パタンＤＢ記憶部１４０に格納されている情報の例を示す。図４は、30個の文から構成されるコンテンツを複数の方言で収録した音声の韻律パタンＤＢ記憶部１４０の例であり、各韻律パタンの識別子（韻律パタンNo.）と、コンテンツの中で何番目の文であるかを示す情報の文番号、方言の情報が付加されている。図４では、韻律パタンの特徴として、方言を用いている。
【００２４】
なお、本実施形態において、「方言」とは、所定の共通語・標準語に対して、ある地方で用いられる特有の韻律パタン（声の高さ、イントネーション、リズム等）を意味し、ある地方で用いられる特有の文法や語彙を含まないものとする。そのため、文番号が同一である場合、方言が異なっていたとしても、「同一の文章（同一の対象テキスト）」を発話した場合の韻律パタンになっている。なお、所定の共通語・標準語を方言の一種としてもよい。
【００２５】
＜音声合成用ＤＢ記憶部１５０＞
音声合成用ＤＢ記憶部１５０には、複数の音声データベースが記憶される。なお、音声データベースは、音声合成に用いられるものであって、ユーザ制御情報Cによって指定可能である。本実施形態では、音声合成方式にHMM音声合成方式を用い、音声合成用ＤＢ記憶部１５０には、HMMが選択対象となる音声データベースごとに格納されている。図５の例では、4種類の声質（「げんき」「しょんぼり」「たかい」「ひくい」）に対応するHMMが音声合成用ＤＢ記憶部１５０に格納されている。音声データベースは、性別（例えば、男性、女性）、年代（例えば、子ども、青年、中年や、１０代、２０代、…）、発話状況（例えば「会話」「演説」）等の組合せごとに用意してもよい。
【００２６】
ここで、韻律パタンＤＢ記憶部１４０に記憶されている韻律パタンの１つである切替後韻律パタンの特徴を特定する情報と音声合成用ＤＢ記憶部１５０に記憶されている音声データベースの１つである切替後音声データベースを特定する情報と再生速度を特定する情報とを含むユーザ制御情報Cについて説明する。
【００２７】
本実施形態において、ユーザ制御情報Cは、ユーザにより指定された方言等を示す情報含む。言い換えると、本実施形態では、方言により韻律パタンの特徴を特定する。さらに、ユーザ制御情報Cは、ユーザにより指定された音声データベースを示す情報を含む。本実施形態では、声質により音声データベースを特定する。さらに本実施形態では、ユーザ制御情報Cは、ユーザにより指定された再生速度を示す情報を含む。図５は、ユーザが方言と音声データベースと再生速度を指定する画面の例を示す。また、図６はユーザ制御情報Cの例を示す。なお、コンテンツの読み上げを開始する際には、方言と音質と速度の初期値を予め決めておいてもよいし、方言と音質と速度をユーザが選択した後に、コンテンツの読み上げを開始してもよい。ユーザ制御情報Cは、所定時間ごとに取得してもよいし、韻律パタンの特徴と音声データベースと速度の少なくとも１つが変更されたときにのみ取得してもよい。
【００２８】
＜韻律パタン選択部１１０＞
韻律パタン選択部では、ユーザ制御情報Cと合成音声再生位置情報Aposとを受け取り、ユーザ制御情報Cと合成音声再生位置情報Aposとを用いて、再生する合成音声データXcに使用する韻律パタンPbを選択して出力する（Ｓ１１０）。
【００２９】
図７は、韻律パタン選択部１１０の処理フローの例を示す。
【００３０】
なお、合成音声再生位置情報Aposは、音声波形生成部１３０によって出力される情報であって、再生中の合成音声データXcの再生位置に関する情報で、再生中の韻律パタンNo.、再生位置（時間情報、再生が終了したか否か）等を含む。なお、図３に示すように、韻律パタンＤＢ記憶部１４０には、韻律パタンNo.に対応する文番号及び韻律パタンの特徴が記憶されているため、韻律パタンNo.から再生中の文番号及び韻律パタンの特徴を特定することができる。
【００３１】
まず、韻律パタン選択部１１０は、合成音声再生位置情報Aposを用いて、再生中の合成音声データXc（この実施形態では文単位の合成音声データXc）が終了したか否かを判別する（Ｓ１１１）。韻律パタン選択部１１０は、再生が終了していた場合は、文番号をインクリメントし（Ｓ１１２）、インクリメント後の文番号に対応し、かつ、ユーザ制御情報Cで特定される韻律パタンの特徴（方言）に対応する韻律パタンが存在するか否かを判別する（Ｓ１１３）。存在する場合には、韻律パタン選択部１１０は、その韻律パタンPd（ただし、ｄはインクリメント後の文番号に対応し、かつ、ユーザ制御情報Cで特定される韻律パタンの特徴に対応する韻律パタンを表すインデックスであり、１，２，…，Ｊの何れかである）を韻律パタンＤＢ記憶部１４０から取り出して出力する（Ｓ１１４）。なお、このとき、韻律パタン選択部１１０は、再生中の合成音声データXcが終了したことを示す制御信号Csysを出力する。
【００３２】
次の文番号の韻律パタンが存在しない場合は、韻律パタン選択部１１０は、コンテンツの全てを読み上げ終えたと判断して、再生処理を終了し、各部に対して再生処理を終了したことを示す制御信号を出力する（Ｓ１１５、なお図１中では出力された制御信号を省略する）。
【００３３】
合成音声データXcが再生中の（再生が終了していない）場合は、韻律パタン選択部１１０は、ユーザ制御情報Cで特定される韻律パタンの特徴が変更されたか否かを判断する（Ｓ１１６）。例えば、韻律パタン選択部１１０は、ユーザ制御情報Cで特定される韻律パタンの特徴と、合成音声再生位置情報Aposに含まれる韻律パタンNo.で特定される韻律パタンの特徴とが異なる場合に韻律パタンの特徴が変更されたと判断し、一致する場合に韻律パタンの特徴が変更されていないと判断する。韻律パタンの特徴が変更された場合、韻律パタン選択部１１０は、変更された韻律パタンの特徴と同じの特徴を持ち、かつ、現在再生中の文番号を持つ韻律パタンPbを韻律パタンＤＢ記憶部１４０から取り出して出力する（Ｓ１１７）。なお、このとき、韻律パタン選択部１１０は、合成音声データXcの再生中に韻律パタンの特徴が切り替わったことを示す制御信号Csysを出力する。
【００３４】
ユーザ制御情報Cの韻律パタンの特徴が変更されていない場合は、韻律パタン選択部１１０は、何も出力しない。
【００３５】
＜韻律パタン生成部１２０＞
図８は韻律パタン生成部１２０の機能ブロック図を、図９はその処理フローの例を示す。
【００３６】
韻律パタン生成部１２０は、一致点推定部１２２と、韻律パタン補間部１２３とを含む。
【００３７】
韻律パタン生成部１２０は、制御信号Csysと、韻律パタンPbまたはPdとを受け取る。
【００３８】
制御信号Csysが再生中の合成音声データXcが終了したことを示す場合、韻律パタン生成部１２０は、韻律パタンの補間処理は行わず、受け取った韻律パタンPdをそのまま合成用韻律パタンPcとして音声波形生成部１３０に出力する。よって、一致点推定部１２２及び韻律パタン補間部１２３での処理は行わない。なお、この場合、仮に、ユーザ制御情報Cで特定される韻律パタンの特徴が切り替わったとしても、切替前後では文が異なるため、異音は発声せず、違和感も生じない。そのため、韻律パタンの補間処理（Ｓ１２０）を必要としない。
【００３９】
制御信号Csysが合成音声データXcの再生中に韻律パタンの特徴が切り替わったことを示す場合（言い換えると、切替前韻律パタンPaと切替後韻律パタンPbとが異なる場合）には、韻律パタン生成部１２０は、少なくとも、韻律パタンPbを受け取った際の（韻律パタンPbが出力されるのと同じタイミング（例えば同じフレーム）で出力された）合成音声再生位置情報Aposを受け取る。さらに、韻律パタン生成部１２０は、合成音声再生位置情報Aposに含まれる韻律パタンNo.aに対応する韻律パタン（以下「切替前韻律パタン」ともいう）Paを韻律パタンＤＢ記憶部１４０から取り出す。
【００４０】
韻律パタン生成部１２０は、合成音声再生位置情報Aposを用いて、切替前韻律パタンPaと韻律パタンPb（以下「切替後韻律パタンPb」ともいう）との補間処理を行い、新たな韻律パタンを作成して、合成用韻律パタンPcとして出力する（Ｓ１２０）。これにより韻律パタン切替時の異音の発生を抑え、違和感を低減する。以下、各部の処理内容を説明する。
【００４１】
（一致点推定部１２２）
一致点推定部１２２は、合成音声再生位置情報Aposと切替前韻律パタンPaと切替後韻律パタンPbとを受け取る。一致点推定部１２２は、合成音声再生位置情報Aposと切替前韻律パタンPa（より詳しく言うと切替前韻律パタンPaに含まれる音素セグメンテーション情報Sa）と切替後韻律パタンPb（より詳しく言うと切替後韻律パタンPbに含まれる音素セグメンテーション情報Sb）を用いて、合成音声再生位置情報Aposが示す再生位置が切替後韻律パタンPbのどの位置にあたるかを示す情報（以下、「一致点情報」ともいう）Tmを推定して出力する（Ｓ１２２）。
【００４２】
例えば、一致点推定部１２２は、まず、合成音声再生位置情報Aposと音素セグメンテーション情報Saとを用いて、現在再生中の音素を推定する。例えば、図１０の合成音声再生位置情報Aposと、図３Ａの切替前音素セグメンテーション情報Saとが入力された場合、再生位置（450ms）に相当する音素（以下、「再生音素」ともいう）（“o”）が推定結果として求められる。さらに、再生位置（450ms）に相当する音素（“o”）内の相対的な位置（0.4=現在の音素内の位置（100ms=450[ms]-350[ms]）/音素時間長（250[ms]=600[ms]-350[ms]））が推定結果として求められる。
【００４３】
一致点推定部１２２は、次に、現在の合成音声再生位置情報Aposが切替後韻律パタンのどこにあたるか推定する。例えば、図３Ｂの切替後の音素セグメンテーション情報Sb（図３Ｂ）が入力された場合、先ほど推定した音素（“o”）と相対的な位置（0.4）とを用いて、380[ms]（= 300[ms] + 0.4 * (500[ms]-300[ms])）が一致点情報Tmとして求められる。
【００４４】
＜韻律パタン補間部１２３＞
図１１は韻律パタン補間部１２３の機能ブロック図を、図１２はその処理フローの例を示す。韻律パタン補間部１２３は、時間情報補正部１２３ａとＦ０時間変化パタン補間部１２３ｂとを含む。
【００４５】
韻律パタン補間部１２３は、切替前韻律パタンPaと切替後韻律パタンPbと一致点情報Tmとを受け取る。韻律パタン補間部１２３は、切替前韻律パタンPaと切替後韻律パタンPbと一致点情報Tmと用いて、一致点情報Tmが示す位置から所定の時間Tiをかけて、切替前韻律パタンPaの基本周波数の時間変化パタンF0aを切替後韻律パタンPbの基本周波数の時間変化パタンF0bに変換するために補間処理を行い、補間後の韻律パタンを合成用韻律パタンPcとして出力する（ｓ１２３）。なお、時間変化パタンF0aはN点のF0情報からなるものとし、時間変化パタンF0bはM点のF0情報からなるものとする。
【００４６】
（時間情報補正部１２３ａ）
時間情報補正部１２３ａは、切替前韻律パタンPaと切替後韻律パタンPbと一致点情報Tmとを受け取る。
【００４７】
切替前韻律パタンPaに含まれる切替前音素セグメンテーション情報Saと切替後韻律パタンPbに含まれる切替後音素セグメンテーション情報Sbとが異なるため、そのままでは補間処理を行うことができない。そのため、時間情報補正部１２３ａは、まず、切替前音素セグメンテーション情報Saを切替後音素セグメンテーション情報Sbに合わせるように時間情報の補正を行い、補正後の音素セグメンテーション情報SCを出力する（Ｓ１２３ａ）。音素セグメンテーション情報の補正は、切替前韻律パタンPaと切替後韻律パタンPbとの文章は同一であるため、切替後音素セグメンテーション情報Sbを切替前音素セグメンテーション情報Saにコピーすることで行う。つまり、切替後音素セグメンテーション情報Sbを補正後の音素セグメンテーション情報SCとして用いる。
【００４８】
次に、時間情報補正部１２３ａは、切替前の時間変化パタンF0aから切替後の時間変化パタンF0bと同一のフレーム数M点を持つ時間変化パタンF0awを得、出力する（ｓ１２３ａ）。補正にはDPマッチング（Dynamic Time Warping; DTW）等を用いる。
【００４９】
（Ｆ０時間変化パタン補間部１２３ｂ）
Ｆ０時間変化パタン補間部１２３ｂは、切替後韻律パタンPbと一致点情報Tmと時間変化パタンF0awと音素セグメンテーション情報SCとを受け取る。Ｆ０時間変化パタン補間部１２３ｂは、切替後韻律パタンPbに含まれる時間変化パタンF0bと、時間情報の補正を行った時間変化パタンF0awとの補間処理を行い、補間後の時間変化パタンF0cを得る（Ｓ１２３ｂ）。Ｆ０時間変化パタン補間部１２３ｂは、音素セグメンテーション情報SCと時間変化パタンF0cとを含む合成用韻律パタンPcを出力する。
【００５０】
補間の対象となる時間変化パタンは、一致点推定部１２２で推定した一致点情報Tm（上記の例では、380[ms]）から、一定の時間長Ti[ms]分である。補間手法としては、様々な手法があるが、最も単純な線形補間を使用した場合、補間後のi番目のフレームの時間変化パタンF0cは次式により求められる。
【００５１】
【数１】
2015219430.tif 000003
【００５２】
ここで、T[ms]はフレームシフト長を表す。また、w[i]は補間重みであり、補間対象のフレーム（i番目）が一致点情報（Tm）に近い場合は、切替前韻律パタンPaのF0の時間変化パタンF0awの重みが大きくなり、補間対象となる時間長Tiに近づくにつれ、切替後韻律パタンPbのF0の時間変化パタンF0bの重みが大きくなればよく、上記の式で表されるものに限定されない。例えば、上記の式では、重みが時間情報に対して、直線的に増加しているが、シグモイド関数等を使用することで、重みの変化パタンを変更することも可能である。
【００５３】
＜音声波形生成部１３０＞
図１３は音声波形生成部１３０の機能ブロック図を、図１４はその処理フローの例を示す。
【００５４】
音声波形生成部１３０は、スペクトルパラメータ生成部１３１とスペクトルパラメータ補間部１３２と波形生成部１３３とを含む。
【００５５】
音声波形生成部１３０は、ユーザ制御情報Cと合成用韻律パタンPcとを受け取る。さらに、音声波形生成部１３０は、切替前韻律パタンPaと切替後韻律パタンPbとが異なり、かつ、切替前音声データベースZAと切替後音声データベースZBとが異なる場合（言い換えると、韻律パタンを切り替えるタイミングと音声データベースを切り替えるタイミングが同じ場合）、一致点情報Tmを受け取る。なお、切替前韻律パタンPaと切替後韻律パタンPbとが異なるか否かは、韻律パタン選択部１１０の出力値である制御信号Csysを受け取って判断してもよいし、韻律パタン選択部１１０における判断方法と同様の判断方法により、制御信号Cと合成音声再生位置情報Aposとを用いて音声波形生成部１３０内で判断してもよい。切替前音声データベースZAと切替後音声データベースZBとが異なるか否かは、ユーザ制御情報Cを受け取った時点で使用している音声データベース（切替前音声データベースZA）とユーザ制御情報Cにより特定される音声データベース（切替後音声データベースZB）が一致するか否かにより判断することができる。
【００５６】
音声波形生成部１３０は、切替前音声データベースZAと切替後音声データベースZBとが異なる場合に、切替前音声データベースZAと合成用韻律パタンPcとを用いて、切替前スペクトルパラメータSPaを生成する。また、音声波形生成部１３０は、切替後音声データベースZBと合成用韻律パタンPcとを用いて、切替後スペクトルパラメータSPbを生成する。さらに、音声波形生成部１３０は、合成音声再生位置情報Aposまたは一致点情報Tmを用いて、切替前スペクトルパラメータSPaと切替後スペクトルパラメータSPbとの補間処理を行い、合成音声データの生成に用いる合成用スペクトルパラメータSPcを生成して出力する（Ｓ１３０）。
【００５７】
音声波形生成部１３０は、切替前音声データベースZAと切替後音声データベースZBとが同じ場合（Ｓ１３１Ａ）、さらに、音声合成用ＤＢ記憶部１５０から切替前音声データベースZAを取り出す。
【００５８】
また、音声波形生成部１３０は、切替前音声データベースZAと切替後音声データベースZBとが異なる場合（Ｓ１３１Ａ）、さらに、音声合成用ＤＢ記憶部１５０から切替前音声データベースZAと切替後音声データベースZBとを取り出す。
【００５９】
＜スペクトルパラメータ生成部１３１＞
（切替前音声データベースZAと切替後音声データベースZBとが同じ場合）
スペクトルパラメータ生成部１３１は、合成用韻律パタンPc（より詳しく言うと、合成用韻律パタンPcに含まれる音素セグメンテーション情報Sc）と切替前音声データベースZAとを用いて、スペクトルパラメータを生成して合成用スペクトルパラメータSPcとして波形生成部１３３に出力する（Ｓ１３１ｄ）。本実施形態では、音声データベースとして、隠れマルコフモデル（HMM）を用いており、例えば参考文献１等の方法により、音素セグメンテーション情報とHMMとを用いてスペクトルパラメータを生成することができる。
（参考文献１）益子他，“動的特徴を用いたHMMに基づく音声合成”，信学論，1996, vol.J79-D-II， no.12， pp.2184-2190.
【００６０】
（切替前音声データベースZAと切替後音声データベースZBとが異なる場合）
スペクトルパラメータ生成部１３１は、合成用韻律パタンPc（より詳しく言うと、合成用韻律パタンPcに含まれる音素セグメンテーション情報Sc）と切替前音声データベースZAとを用いて、切替前スペクトルパラメータSPaを生成して（参考文献１参照）スペクトルパラメータ補間部１３２に出力する（Ｓ１３１）。また、スペクトルパラメータ生成部１３１は、合成用韻律パタンPc（より詳しく言うと、合成用韻律パタンPcに含まれる音素セグメンテーション情報Sc）と切替後音声データベースZBとを用いて、切替後スペクトルパラメータSPbを生成して（参考文献１参照）スペクトルパラメータ補間部１３２に出力する（Ｓ１３１）。
【００６１】
＜スペクトルパラメータ補間部１３２＞
切替前音声データベースZAと切替後音声データベースZBとが異なる場合のみ実行される。
【００６２】
スペクトルパラメータ補間部１３２は、切替前スペクトルパラメータSPaと切替後スペクトルパラメータSPbとを受け取る。さらに、切替前韻律パタンPaと切替後韻律パタンPbとが異なる場合、スペクトルパラメータ補間部１３２は、一致点情報Tmを受け取る。一方、切替前韻律パタンPaと切替後韻律パタンPbとが同じ場合（言い換えると、音声データベースだけが切り替わった場合）、スペクトルパラメータ補間部１３２は、合成音声再生位置情報Aposを受け取る。スペクトルパラメータ補間部１３２は、切替前スペクトルパラメータSPaと切替後スペクトルパラメータSPbと一致点情報Tmまたは合成音声再生位置情報Aposとを用いて、一致点情報Tmまたは合成音声再生位置情報Aposが示す位置から所定の時間Tiをかけて、切替前スペクトルパラメータSPaを切替後スペクトルパラメータSPbに変換するために補間処理を行い、合成音声データXcの生成に使用する合成用スペクトルパラメータSPcを作成して出力する（Ｓ１３２）。なお、切替前スペクトルパラメータSPa及び切替後スペクトルパラメータSPbは、それぞれF0の時間変化パタン（M点のF0情報）を保持している。
【００６３】
切替後のスペクトルパラメータSPbと切替前のスペクトルパラメータSPaとの補間処理を行うことで、補間後の合成用スペクトルパラメータSPcを得る。補間の対象となるスペクトルパラメータは、一致点情報Tm（上記の例では、380[ms]）または合成音声再生位置情報Aposから、一定の時間長Ti[ms]分である。補間手法としては、様々な手法があるが、最も単純な線形補間を使用した場合、補間後のi番目のフレームの合成用スペクトルパラメータSPc[i]は次式（一致点情報Tmを用いた場合）により求められる。
【００６４】
【数２】
2015219430.tif 000004
【００６５】
補間重みw[i]は、Ｆ０時間変化パタン補間部１２３ｂで説明したように設定することができる。なお、合成音声再生位置情報Aposを用いた場合、一致点情報Tmに代えて合成音声再生位置情報Aposを用いればよい。
【００６６】
＜波形生成部１３３＞
波形生成部１３３は、合成用スペクトルパラメータSPcと合成用韻律パタンPcとユーザ制御信号Cとを受け取る。波形生成部１３３は、合成用韻律パタンPc（より詳しく言うと合成用韻律パタンPcに含まれるF0の時間変化パタンF0c）と合成用スペクトルパラメータSPcとを用いて、音声合成フィルタ（例えば、参考文献２）を用いて音声波形を生成する（Ｓ１３３）。
（参考文献２）今井他，“音声合成のためのメル対数スペクトル近似（MLSA）フィルタ”，電子情報通信学会論文誌 A, 1983,  Vol.J66-A  No.2  pp.122-129.
【００６７】
さらに、波形生成部１３３は、ユーザ制御情報に含まれる速度が、生成した音声波形の速度と同じ場合、生成した音声波形を合成音声データXcとして出力する。また、ユーザ制御情報に含まれる速度が、生成した音声波形の速度と異なる場合、ユーザ制御情報に含まれる速度に応じて、音声波形の再生速度を変更し（例えば参考文献３）、速度変更後の音声波形を合成音声データXcとして出力する。
（参考文献３）森田直孝，板倉文忠、“ポインター移動制御による重複加算法（ＰＩＣＯＬＡ）を用いた音声の時間軸での伸長圧縮とその評価”、日本音響学会講演論文集、昭和６１年、p.149-150.
【００６８】
なお、波形生成部１３３は、合成音声データXcを出力する際に、その再生位置に関する情報（再生中の韻律パタンNo.、再生位置（時間情報、再生が終了したか否か）等を含む情報）である合成音声再生位置情報Aposを出力する。
【００６９】
＜効果＞
このような構成により、ユーザの指定により自由に韻律パタンの特徴（方言）を変更することができるため、飽きにくく、理解しやすい合成音声を提供することができる。さらに、従来技術とは異なり、ユーザは合成音声の再生途中に韻律パタンを切り替えることができるため、インタラクティブ性の高い音声合成技術を実現することができる。さらに、再生中に韻律パタンを切り替えた際に生じる異音や違和感を抑えることができる。特に、韻律パタンの特徴として、方言を含む場合には、異音や違和感を抑える効果が高い。方言が異なる場合、同じ単語であっても、声の高さ、イントネーション、リズム等が全く異なる場合があり、単純に韻律パタンを切り替えると、異音や違和感が生じる可能性が高い。しかし、本実施形態であれば、切替前韻律パタンと切替後韻律パタンとの間を補間するため、声の高さ、イントネーション、リズム等の違いをスムーズに切り替えることができ、異音の発生を抑えたり、聴者の違和感を低減することができ、自然な合成音声を読み上げることができる。さらに、本実施形態によれば、音声データベースの切替に発生する異音や違和感も抑えることができる。
【００７０】
＜変形例＞
本実施形態では、音声合成方式にHMMを用いているが、波形接続型を用いてもよい。その場合、音声合成用ＤＢ記憶部１５０には音声素片データベースが選択対象となる音声データベースごとに格納される。なお、音声合成方式に波形接続型を用いた場合、スペクトルパラメータ生成部１３１は、まず、音声素片データベースと韻律パタンとを用いて、音声データを作成する。次に、スペクトルパラメータ生成部１３１は、音声データからスペクトルパラメータを生成する。生成したスペクトルパラメータを用いてスペクトルパラメータ補間処理を行えばよい。
【００７１】
また、本実施形態では、コンテンツを読み上げる際に、全て合成音声を使って読上げているが、補間処理を行う区間以外が、収録音声ＤＢ記憶部１０１に記憶されている収録音声を用いてもよい。つまり、切替後のみ所定の時間Tiだけ音声合成を行う構成としてもよい。韻律パタン選択部１１０が、合成音声データXcの再生中に韻律パタンの特徴が切り替わったことを示す制御信号Csysを出力する場合のみ、各部で補間処理を行い、それ以外の時間区間では、収録音声をそのまま出力するように制御信号を出力する。
【００７２】
図５の例では、4種類の声質（「げんき」「しょんぼり」「たかい」「ひくい」）により特定される4種類のHMMが音声合成用ＤＢ記憶部１５０に格納されているが、必ずしも対応するHMMを全て用意しなくともよい。例えば、標準的な高さの声質を一つ用意しておき、声質「たかい」「ひくい」が含まれる場合には、標準的な高さの声質に対応する基本周波数を高くしたり、低くしてもよい。また、ある音声データベースを別の音声データベースに変換するような関数を用意しておき、利用してもよい。要は、音声データベースを切り替える際に、スペクトルパラメータの補間処理を行えば、同様の効果を得ることができる。
【００７３】
本実施形態では、読み上げるコンテンツが複数の文からなるものであったが、一文（一つの合成音声データ）からなってもよい。その場合、文番号を用いなくともよい。
【００７４】
本実施形態では、ユーザ制御情報Cを用いて、切替後韻律パタンの特徴を特定しているが、音声合成装置１００の内部で、切替後韻律パタンの特徴を特定する制御情報を生成してもよい。例えば、所定の時間ごと、切替後韻律パタンの特徴を変更するように制御情報を生成してもよい。また、ランダムな時間ごとに、ランダムに切替後韻律パタンの特徴を特定するように制御情報を生成してもよい。切替後音声データベースについても同様である。
【００７５】
本実施形態では、韻律パタン、音声データベース、再生速度を切替可能としているが、少なくとも韻律パタンを切り替えることができればよい。また、さらに別の項目を切替可能としてもよい。
【００７６】
＜その他の変形例＞
本発明は上記の実施形態及び変形例に限定されるものではない。例えば、上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
【００７７】
＜プログラム及び記録媒体＞
また、上記の実施形態及び変形例で説明した各装置における各種の処理機能をコンピュータによって実現してもよい。その場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記各装置における各種の処理機能がコンピュータ上で実現される。
【００７８】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
【００７９】
また、このプログラムの流通は、例えば、そのプログラムを記録したＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させてもよい。
【００８０】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶部に格納する。そして、処理の実行時、このコンピュータは、自己の記憶部に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実施形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよい。さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるＡＳＰ（Application Service Provider）型のサービスによって、上述の処理を実行する構成としてもよい。なお、プログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの（コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等）を含むものとする。
【００８１】
また、コンピュータ上で所定のプログラムを実行させることにより、各装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【図１】
2015219430.tif 000005
【図２】
2015219430.tif 000006
【図３】
2015219430.tif 000007
【図４】
2015219430.tif 000008
【図６】
2015219430.tif 000009
【図７】
2015219430.tif 000010
【図８】
2015219430.tif 000011
【図９】
2015219430.tif 000012
【図１０】
2015219430.tif 000013
【図１１】
2015219430.tif 000014
【図１２】
2015219430.tif 000015
【図１３】
2015219430.tif 000016
【図１４】
2015219430.tif 000017
【図５】
2015219430.tif 000018