(57)【特許請求の範囲】
【請求項１】
合成音声の一部の期間における合成スペクトルの時系列を、音声表現の振幅スペクトル包絡概形の時系列に基づいて変更することにより、前記音声表現が付与された変更スペクトルの時系列を得る変更ステップと、
前記変更スペクトルの時系列に基づいて、前記音声表現が付与された音声サンプルの時系列を合成する合成ステップと
を含む音声合成方法。
【請求項２】
前記変更ステップでは、前記音声表現の振幅スペクトル包絡概形に基づくモーフィングにより前記合成スペクトルの振幅スペクトル包絡概形を変更する
請求項１の音声合成方法。
【請求項３】
前記変更ステップでは、前記音声表現の振幅スペクトル包絡概形の時系列と、当該音声表現の振幅スペクトル包絡の時系列とに基づいて、前記合成スペクトルの時系列を変更する
請求項１または請求項２の音声合成方法。
【請求項４】
前記変更ステップでは、時間軸上における前記合成音声の特徴点と前記音声表現について設定された表現基準時刻とが一致するように前記音声表現の振幅スペクトル包絡概形の時系列を配置し、前記配置された振幅スペクトル包絡概形の時系列に基づいて、前記合成スペクトルの時系列を変更する
請求項１から請求項３の何れかの音声合成方法。
【請求項５】
前記合成音声の特徴点は、当該合成音声の母音開始時刻である
請求項４の音声合成方法。
【請求項６】
前記合成音声の特徴点は、当該合成音声の母音終了時刻または当該合成音声の発音終了時刻である
請求項４の音声合成方法。
【請求項７】
前記変更ステップでは、前記合成音声における前記一部の期間の時間長に一致するように、前記音声表現の振幅スペクトル包絡概形の時系列を時間軸上で伸長または収縮し、前記伸長または収縮された振幅スペクトル包絡概形の時系列に基づいて、前記合成スペクトルの時系列を変更する
請求項１の音声合成方法。
【請求項８】
前記変更ステップでは、前記音声表現の音高の時系列を、前記合成音声の前記一部の期間における音高と前記音声表現の音高の代表値との音高差に基づいてシフトし、前記シフトされた音高の時系列と前記音声表現の振幅スペクトル包絡概形の時系列とに基づいて、前記合成スペクトルの時系列を変更する
請求項１の音声合成方法。
【請求項９】
前記変更ステップでは、前記音声表現における振幅スペクトル包絡および位相スペクトル包絡の少なくとも一方の時系列に基づいて前記合成スペクトルの時系列を変更する
請求項１の音声合成方法。
【請求項１０】
合成音声の一部の期間における合成スペクトルの時系列を、音声表現の振幅スペクトル包絡概形の時系列に基づいて変更することにより、前記音声表現が付与された変更スペクトルの時系列を得る変更部と、
前記変更スペクトルの時系列に基づいて、前記音声表現が付与された音声サンプルの時系列を合成する合成部と
を具備する音声合成装置。
【請求項１１】
合成音声の一部の期間における合成スペクトルの時系列を、音声表現の振幅スペクトル包絡概形の時系列に基づいて変更することにより、前記音声表現が付与された変更スペクトルの時系列を得る変更ステップと、
前記変更スペクトルの時系列に基づいて、前記音声表現が付与された音声サンプルの時系列を合成する合成ステップと
をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声合成に関する。
【背景技術】
【０００２】
歌唱等の音声を合成する技術が知られている。より表現力豊かな歌唱音声を生成するため、単に与えられた音階で与えられた歌詞の音声を出力するだけでなく、この音声に音楽的な歌唱表現を付与することが試みられている。特許文献１は、目標声質の音声を表す音声信号の調波成分を、合成された音声（以下「合成音声」という）を表す音声信号の調波成分に近い周波数帯域に位置するように調整することによって、合成音声の声質を目標声質に変換する技術を開示している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１４−２３３８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
特許文献１に記載の技術においては、合成音声に対し、ユーザーが望む歌唱表現が十分に与えられない場合があった。これに対し本発明は、より多彩な音声表現を与える技術を提供する。
【課題を解決するための手段】
【０００５】
本発明の好適な態様に係る音声合成方法は、合成音声の一部の期間における合成スペクトルの時系列を、音声表現の振幅スペクトル包絡概形の時系列に基づいて変更することにより、前記音声表現が付与された変更スペクトルの時系列を得る変更ステップと、前記変更スペクトルの時系列に基づいて、前記音声表現が付与された音声サンプルの時系列を合成する合成ステップとを含む。
【発明の効果】
【０００６】
本発明によれば、より豊かな音声表現を与えることができる。
【図面の簡単な説明】
【０００７】
【図１】関連技術に係るＧＵＩを例示する図。
【図２】一実施形態に係る歌唱表現付与の概念を示す図。
【図３】一実施形態に係る音声合成装置１の機能構成を例示する図。
【図４】音声合成装置１のハードウェア構成を例示する図。
【図５】データベース１０の構造を示す模式図。
【図６】各表現素片について記憶される基準時刻の説明図。
【図７】アタック基準の歌唱表現における基準時刻を例示する図。
【図８】リリース基準の歌唱表現における基準時刻を例示する図。
【図９】合成器の機能構成を例示する図。
【図１０】母音開始時刻、母音終了時刻および発音終了時刻を示す図。
【図１１】表現付与部２０Ｂの機能構成を例示する図。
【図１２Ａ】表現素片の時間長が短い例におけるマッピング関数を例示する図。
【図１２Ｂ】表現素片の時間長が短い例におけるマッピング関数を例示する図。
【図１２Ｃ】表現素片の時間長が短い例におけるマッピング関数を例示する図。
【図１２Ｄ】表現素片の時間長が短い例におけるマッピング関数を例示する図。
【図１３Ａ】表現素片の時間長が長い例におけるマッピング関数を例示する図。
【図１３Ｂ】表現素片の時間長が長い例におけるマッピング関数を例示する図。
【図１３Ｃ】表現素片の時間長が長い例におけるマッピング関数を例示する図。
【図１３Ｄ】表現素片の時間長が長い例におけるマッピング関数を例示する図。
【図１４】振幅スペクトル包絡および振幅スペクトル包絡概形の関係を例示する図。
【図１５】表現素片の基本周波数をシフトする処理を例示する図。
【図１６】短時間スペクトル操作部２３の構成を例示するブロック図。
【図１７】周波数領域で合成するための、合成部２４の機能構成を例示する図。
【図１８】合成器２０の動作を例示するシーケンスチャート。
【図１９】時間領域で合成するための、合成部２４の機能構成を例示する図。
【図２０】ＵＩ部３０の機能構成を例示する図。
【図２１】ＵＩ部３０において用いられるＧＵＩを例示する図。
【図２２】歌唱表現を選択するＵＩを例示する図。
【図２３】歌唱表現を選択するＵＩの別の例を示す図。
【図２４】ダイヤルの回転角とモーフィング量とを対応させるテーブルの例。
【図２５】歌唱表現に係るパラメーターを編集するためのＵＩの別の例。
【発明を実施するための形態】
【０００８】
１．音声合成技術
音声合成のための種々の技術が知られている。音声のうち音階の変化およびリズムを伴うものを歌唱音声（歌声）という。歌唱合成としては、素片接続型歌唱合成および統計的歌唱合成が知られている。素片接続型歌唱合成では、多数の歌唱素片を収録したデータベースが用いられる。歌唱素片（音声素片の一例）は、主として音韻（単音素または音素連鎖）によって区分される。歌唱合成に際して、これらの歌唱素片は、基本周波数、タイミング、および継続長が楽譜情報に応じて調整されたうえで接続される。楽譜情報は、楽曲を構成する一連のノート（音符）の各々について、開始時刻と継続長（または終了時刻）と音韻とを指定する。
【０００９】
素片接続型歌唱合成に用いられる歌唱素片は、データベースに登録される全ての音韻に渡って音質ができるだけ一定であることが要求される。音質が一定でないと、歌唱音声を合成した際に音声が不自然に変動してしまうからである。また、これらの素片に含まれる動的な音響変化のうち歌唱表現（音声表現の一例）に対応する部分は、合成時にそれが表出しないように処理される必要がある。歌唱表現は音楽的な文脈に依存して歌唱に付与されるべきものであり、音韻の種別と直接に対応付けられるべきものではないからである。特定の音韻に対して常に同じ歌唱表現が表出されると、得られる合成音声は不自然なものとなる。したがって、素片接続型歌唱合成においては、例えば基本周波数および音量の変化は、歌唱素片に含まれるものを直接的に用いるのではなく、楽譜情報およびあらかじめ決められたルールに基づいて生成された基本周波数および音量の変化が用いられる。仮に、音韻と歌唱表現とのすべての組み合わせに対応する歌唱素片をデータベースに収録すれば、楽譜情報に一致する音韻および音楽的文脈に対して自然な歌唱表現の双方に対応する歌唱素片を選択できる。しかし、あらゆる音韻に対してあらゆる歌唱表現に対応する歌唱素片を収録するには膨大な手間がかかり、データベースの容量も膨大なものとなってしまう。また、素片同士の組み合わせの数は素片の数に対して爆発的に増加するため、素片同士のあらゆる接続に対して不自然な合成音声とならないことを保証することは難しい。
【００１０】
一方、統計的歌唱合成では、多数の訓練データを利用して楽譜情報と歌唱音声のスペクトルに関する特徴量（以下「スペクトル特徴量」という）との関係を統計モデルとしてあらかじめ学習しておく。合成時には、入力された楽譜情報から最も尤もらしいスペクトル特徴量を推定し、それを用いて歌唱を合成する。統計的歌唱合成では様々な歌唱スタイルごとに訓練データを構築することで、種々の歌唱表現を含んだ統計モデルを学習可能である。しかし、統計的歌唱合成には主として２つの問題がある。第１の問題は過剰平滑化である。多数の訓練データから統計モデルを学習する過程は本質的にデータの平均化と次元削減を伴うため、合成出力されるスペクトル特徴量は必然的に、通常の単一の歌唱よりもその特徴量の分散が小さくなってしまう。その結果、合成音の表現力やリアルさが損なわれる。第２の問題は、統計モデルを学習可能なスペクトル特徴量の種類が限られている点である。特に位相情報は巡回的な値域を持つことから統計的なモデリングが困難であり、たとえば調波成分どうしまたは特定の調波成分とその周辺に存在する成分との位相関係やそれらの時間的変動を適切にモデリングすることは困難である。しかし、実際には濁声や嗄声などを含む表現力豊かな歌唱を合成するためには、位相情報を適切に利用することが必要である。
【００１１】
歌唱合成において多様な声質を合成できるようにする技術として、特許文献１に記載のＶＱＭ（Voice Quality Modification）が知られている。ＶＱＭにおいては、ある種の歌唱表現に相当する声質の第１音声信号、および歌唱合成による第２音声信号が用いられる。第２音声信号は、素片接続型歌唱合成によるものであっても、統計的歌唱合成によるものであってもよい。これら２つの音声信号を用いて、位相情報が適切な歌唱を合成する。その結果、通常の歌唱合成よりもリアルで表現力豊かな歌唱が合成される。しかし、この技術においては、第１音声信号のスペクトル特徴量の時間変化が歌唱合成に十分に反映されない。なお、ここで注目する時間変化には、定常的に濁声や嗄声を発声した際に観測されるようなスペクトル特徴量の高速な変化だけではなく、例えば発声を開始した直後にはそのような高速な変動の程度が大きく、その後時間の経過に伴い徐々に減衰し、さらに時間が経過すると一定の程度で安定するといった、比較的長時間にわたる（すなわち巨視的な）声質の推移を含む。このような声質の変化は、歌唱表現の種別によって大きな違いが現れる。
【００１２】
図１は、本発明の一形態に係るＧＵＩを例示する図である。このＧＵＩは、関連技術（例えばＶＱＭ）に係る歌唱合成プログラムにおいても使用できる。このＧＵＩは、楽譜表示領域９１１、ウインドウ９１２、およびウインドウ９１３を含む。楽譜表示領域９１１は、音声合成に係る楽譜情報が表示される領域であり、この例ではいわゆるピアノロールに相当する形式で、楽譜情報が指定する各ノートが表される。楽譜表示領域９１１内において横軸は時間を、縦軸は音階を、それぞれ表す。ウインドウ９１２は、ユーザーの操作に応じて表示されるポップアップウインドウであり、合成音声に対して付与できる歌唱表現の一覧を含む。ユーザーは、この一覧の中から所望のノートに付与する所望の歌唱表現を選択する。ウインドウ９１３には、選択された歌唱表現の適用の程度を表すグラフが表示される。ウインドウ９１３内において横軸は時間を、縦軸は歌唱表現の適用の深さ（前述のＶＱＭにおいては混合率）を、それぞれ表す。ユーザーは、ウインドウ９１３においてグラフを編集し、ＶＱＭの適用の深さの時間変化を入力する。しかし、ＶＱＭでは、ユーザーが入力したこの適用の深さの時間変化によっては巨視的な声質の推移（スペクトルの時間変化）が十分に再現できず、自然で表現力豊かな歌唱を合成するのは困難である。
【００１３】
２．構成
図２は、一実施形態に係る歌唱表現付与の概念を示す図である。なお、以下において、「合成音声」とは、合成された音声であって特に音階と歌詞とが与えられた音声をいう。特に断りの無い限り、単に「合成音声」というときは、本実施形態に係る歌唱表現が付与されていない合成音声を指す。「歌唱表現」とは、合成音声に対して付与される音楽的な表現をいい、例えば、ボーカルフライ（fry）、うなり声（growl）、および嗄れ声（rough）のような表現を含む。本実施形態においては、あらかじめ収録された局所的な歌唱表現の素片（以下「表現素片」という）のうちの所望の１個の表現素片を、通常の（歌唱表現が付与されていない）合成音声に時間軸上で配置して、その合成音声にモーフィングすることを「合成音声に対し歌唱表現を付与する」という。ここで、表現素片（音声サンプルの時系列）は、合成音声全体または１個のノートに対し、時間的に局所的なものである。時間的に局所的とは、歌唱表現の占める時間が、合成音声全体または１個のノートに対し部分的であることをいう。表現素片は、歌唱者による歌唱表現をあらかじめ録音したものであり、歌唱中の、局所的な時間においてなされている歌唱表現（音楽的な表現）の素片である。素片とは、歌唱者の発した音声波形の一部をデータ化したものである。また、モーフィングとは、ある範囲に配置された表現素片およびその範囲の合成音声の少なくとも一方に、時間の経過に伴って増加または減少する係数を乗算して両者を加算する処理（補間処理）をいう。表現素片は、通常の合成音声に対してタイミングを合わせて配置されたうえでモーフィングされる。モーフィングにより、歌唱表現におけるスペクトル特徴量の時間変化が合成音声に付与される。表現素片のモーフィングは、通常の合成音声のうちの、局所的な時間における区間に対して行われる。
【００１４】
この例で、合成音声と表現素片との加算の基準時刻は、ノート（すなわち音符）の先頭時刻およびノートの末尾時刻である。以下、ノートの先頭時刻を基準時刻とすることを「アタック基準」といい、末尾時刻を基準時刻とすることを「リリース基準」という。
【００１５】
図３は、一実施形態に係る音声合成装置１の機能構成を例示する図である。音声合成装置１は、データベース１０、合成器２０、およびＵＩ（User Interface）部３０を有する。この例では素片接続型歌唱合成が用いられる。データベース１０は、歌唱素片および表現素片が収録されたデータベースである。合成器２０は、楽曲の一連のノートを指定する楽譜情報および歌唱表現を指示する表現情報に基づいてデータベース１０から歌唱素片および表現素片を読み出し、これらを用いて歌唱表現付きの合成音声を合成する。ＵＩ部３０は、楽譜情報および歌唱表現の入力または編集と、合成音声の出力と、入力または編集の結果の表示と（すなわちユーザーに対する出力）を行うためのインターフェースである。
【００１６】
図４は、音声合成装置１のハードウェア構成を例示する図である。音声合成装置１は、ＣＰＵ（Central Processing Unit）１０１、メモリー１０２、ストレージ１０３、入出力ＩＦ１０４、ディスプレイ１０５、入力装置１０６および出力装置１０７を有するコンピュータ装置、具体的には例えばタブレット端末である。ＣＰＵ１０１は、プログラムを実行して音声合成装置１の他の要素を制御する制御装置である。メモリー１０２は主記憶装置であり、例えばＲＯＭ（Read Only Memory）およびＲＡＭ（Random Access Memory）を含む。ＲＯＭは、音声合成装置１を起動するためのプログラム等を記憶する。ＲＡＭは、ＣＰＵ１０１がプログラムを実行する際のワークエリアとして機能する。ストレージ１０３は補助記憶装置であり、各種のデータおよびプログラムを記憶する。ストレージ１０３は、例えば、ＨＤＤ（Hard Disk Drive）およびＳＳＤ（Solid State Drive）の少なくとも一方を含む。入出力ＩＦ１０４は、他の装置との間で情報の入出力を行うためのインターフェースであり、例えば、無線通信インターフェースまたはＮＩＣ（Network Interface Controller）を含む。ディスプレイ１０５は情報を表示する装置であり、例えばＬＣＤ（Liquid Crystal Display）を含む。入力装置１０６は、音声合成装置１に情報を入力するための装置であり、例えば、タッチスクリーン、キーパッド、ボタン、マイクロフォン、およびカメラの少なくとも１つを含む。出力装置１０７は、例えばスピーカーであり、歌唱表現が付与された合成音声を音波として再生する。
【００１７】
この例で、ストレージ１０３は、コンピュータ装置を音声合成装置１として機能させるプログラム（以下「歌唱合成プログラム」という）を記憶する。ＣＰＵ１０１が歌唱合成プログラムを実行することにより、コンピュータ装置に図３の機能が実装される。ストレージ１０３は、データベース１０を記憶する記憶部の一例である。ＣＰＵ１０１は、合成器２０の一例である。ＣＰＵ１０１、ディスプレイ１０５、および入力装置１０６は、ＵＩ部３０の一例である。以下、図３の機能要素の詳細をそれぞれ説明する。
【００１８】
２−１．データベース１０
データベース１０は歌唱素片が収録されたデータベース（素片データベース）および表現素片が収録されたデータベース（歌唱表現データベース）を含むが、素片データベースについては、従来知られている素片接続型歌唱合成において用いられるものと同じであるので詳細な説明は省略する。以下、特に断りの無い限り、歌唱表現データベースを単にデータベース１０という。データベース１０においては、歌唱合成時の計算負荷の低減とスペクトル特徴量の推定誤りの防止とを両立するため、表現素片のスペクトル特徴量を事前に推定しておき、推定したスペクトル特徴量をデータベースに収録しておくことが好ましい。データベース１０に収録されるスペクトル特徴量は、人の手によって修正されたものであってもよい。
【００１９】
図５は、データベース１０の構造を例示する模式図である。ユーザーまたはプログラムが目的とする歌唱表現を容易に見つけられるようにするため、データベース１０において表現素片は組織化されて収録される。図５は、木構造の例を示す。木構造における末端の葉が、それぞれ一つの歌唱表現に相当する。例えば、「Attack−Fry−Power−High」は、フライ発声を主とするアタック基準の歌唱表現のうち、力強い声質で、高音域に適した歌唱表現を意味する。木構造の末端の葉だけでなく、節に歌唱表現を配置してもよい。例えば、上記の例に加えて「Attack−Fry−Power」に相当する歌唱表現を収録してもよい。
【００２０】
データベース１０には、歌唱表現１個につき少なくとも１個の素片が収録される。音韻に応じて２個以上の素片が収録されてもよい。表現素片は全ての音韻に対して独自のものを収録する必要はない。なぜなら、表現素片は合成音声とモーフィングされるので、歌唱としての基本的な品質は合成音声によって既に確保されているからである。例えば、素片接続型歌唱合成において良い品質の歌唱を得るには、２音素連鎖の音韻（例えば、／ａ−ｉ／または／ａ−ｏ／といった組み合わせ）毎に素片を収録する必要がある。しかし、表現素片は、単音素毎（例えば、／ａ／または／ｏ／）に独自のものを収録してもよいし、あるいはさらに数を減らして、歌唱表現１個につき表現素片１個（例えば／ａ／だけ）だけを収録してもよい。歌唱表現毎に何個の素片を収録するかは、歌唱表現データベース作成の工数と合成音声の品質とのバランスを考慮してデータベース作製者が決定する。より高品質な（リアルな）合成音声を得るには、音韻毎に独自の表現素片を収録する。歌唱表現データベース作成の工数を削減するには、歌唱表現１個あたりの素片の数を減らす。
【００２１】
歌唱表現１個につき２個以上の素片が収録される場合、素片と音韻とのマッピング（対応付け）の定義が必要である。一例としては、ある歌唱表現に関し、素片ファイル「Ｓ００００」が音韻／ａ／および／ｉ／にマッピングされ、素片ファイル「Ｓ０００１」が音韻／ｕ／、／ｅ／、および／ｏ／にマッピングされる。このようなマッピングは、歌唱表現毎に定義される。データベース１０に収録される素片の数は、歌唱表現毎に異なっていてもよい。例えば、ある歌唱表現については２個の素片が収録され、別の歌唱表現には５個の素片が収録されてもよい。
【００２２】
データベース１０において、表現素片毎に表現基準時刻を示す情報が記録される。この表現基準時刻は、表現素片の波形における時間軸上の特徴点である。表現基準時刻には、歌唱表現開始時刻、歌唱表現終了時刻、ノートオンセット開始時刻、ノートオフセット開始時刻、ノートオンセット終了時刻、およびノートオフセット終了時刻のうち少なくとも１つが含まれる。例えば図６に示すように、アタック基準の各表現素片（図６における符号ａ１、ａ２およびａ３）についてはノートオンセット開始時刻が記憶される。リリース基準の各表現素片（図６における符号ｒ１，ｒ２およびｒ２）についてはノートオフセット終了時刻および／または歌唱表現終了時刻が記憶される。なお、図６から理解されるように、表現素片の時間長は表現素片毎に相違する。
【００２３】
図７および図８は、各表現基準時刻を例示する図である。この例で、表現素片の音声波形は、時間軸上において、プレ区間Ｔ１、オンセット区間Ｔ２、サステイン区間Ｔ３、オフセット区間Ｔ４、およびポスト区間Ｔ５に区分される。これらの区間は、例えばデータベース１０の作成者により区分される。図７はアタック基準の歌唱表現を、図８はリリース基準の歌唱表現を、それぞれ示している。
【００２４】
図７に示すように、アタック基準の歌唱表現は、プレ区間Ｔ１、オンセット区間Ｔ２、およびサステイン区間Ｔ３に区分される。サステイン区間Ｔ３は、特定の種類のスペクトル特徴量（例えば基本周波数）が所定の範囲内に安定する区間である。サステイン区間Ｔ３における基本周波数が、この歌唱表現の音高に相当する。オンセット区間Ｔ２は、サステイン区間Ｔ３の前段の区間であって、スペクトル特徴量が時間に伴って変化する区間である。プレ区間Ｔ１は、オンセット区間Ｔ２の前段の区間である。アタック基準の歌唱表現において、プレ区間Ｔ１の始点が歌唱表現開始時刻である。オンセット区間Ｔ２の始点がノートオンセット開始時刻である。オンセット区間Ｔ２の終点がノートオンセット終了時刻である。サステイン区間Ｔ３の終点が歌唱表現終了時刻である。
【００２５】
図８に示すように、リリース基準の歌唱表現は、サステイン区間Ｔ３、オフセット区間Ｔ４、およびポスト区間Ｔ５に区分される。オフセット区間Ｔ４は、サステイン区間Ｔ３の後段の区間であって、所定の種類のスペクトル特徴量が時間に伴って変化する区間である。ポスト区間Ｔ５は、オフセット区間Ｔ４の後段の区間である。サステイン区間Ｔ３の始点が歌唱表現開始時刻である。サステイン区間Ｔ３の終点がノートオフセット開始時刻である。オフセット区間Ｔ４の終点がノートオフセット終了時刻である。ポスト区間Ｔ５の終点が歌唱表現終了時刻である。
【００２６】
データベース１０には、歌唱合成に適用されるパラメーターのテンプレートが記録される。ここでいうパラメーターには、例えば、モーフィング量（係数）の時間推移と、モーフィングの時間長（以下「表現付与長」という）と、歌唱表現のスピードとが含まれる。図２には、モーフィング量の時間推移と表現付与長とが図示されている。例えば、データベース作成者により複数のテンプレートが作成され、歌唱表現毎にどのテンプレートが適用されるかデータベース作成者があらかじめ決定しておいてもよい。すなわち、どの歌唱表現に対しどのテンプレートが適用されるかあらかじめ決まっていてもよい。あるいは、テンプレートそれ自体がデータベース１０に含まれ、表現付与の際にどのテンプレートを使用するかユーザーが選択してもよい。
【００２７】
２−２．合成器２０
図９は、合成器２０の機能構成を例示する図である。図９に示すように、合成器２０は、歌唱合成部２０Ａと表現付与部２０Ｂとを具備する。歌唱合成部２０Ａは、歌唱素片を利用した素片接続型歌唱合成により、楽譜情報で指定された合成音声を表す音声信号を生成する。なお、歌唱合成部２０Ａは、統計モデルを利用した前述の統計的歌唱合成、または、その他の公知の任意の合成方式により、楽譜情報で指定された合成音声を表す音声信号を生成してもよい。
【００２８】
図１０に例示される通り、歌唱合成部２０Ａは、歌唱合成に際して、合成音声のなかで母音の発音が開始される時刻（以下「母音開始時刻」という）、母音の発音が終了する時刻（以下「母音終了時刻」という）および発音が終了する時刻（以下「発音終了時刻」という）を、楽譜情報に基づき決定する。合成音声の母音開始時刻、母音終了時刻および発音終了時刻は、何れも楽譜情報に基づき合成される合成音声の特徴点の時刻である。楽譜情報がない場合には、合成音声を分析することでこれらの各時刻を求めてもよい。
【００２９】
図９の表現付与部２０Ｂは、歌唱合成部２０Ａが生成した合成音声に歌唱表現を付与する。図１１は、表現付与部２０Ｂの機能構成を例示する図である。図１１に示すように、表現付与部２０Ｂは、タイミング計算部２１、時間伸縮マッピング部２２、短時間スペクトル操作部２３、合成部２４、特定部２５、および取得部２６を有する。
【００３０】
タイミング計算部２１は、表現素片に対して記録された表現基準時刻を利用して、表現素片を合成音声の所定のタイミングに一致させるためのタイミング調整量（合成音声に対して表現素片を配置する時間軸上の位置に相当）を計算する。
【００３１】
図２および図１０を参照して、タイミング計算部２１の動作を説明する。図１０に示すように、タイミング計算部２１は、アタック基準の表現素片を、そのタイミング調整量を調整して、そのノートオンセット開始時刻（表現基準時刻の一例）が合成音声の母音開始時刻（またはノート開始時刻）に一致するように配置する。タイミング計算部２１は、リリース基準の表現素片を、そのタイミング調整量を調整して、そのノートオフセット終了時刻（表現基準時刻の別の例）を合成音声の母音終了時刻に一致するか、または、その歌唱表現終了時刻を合成音声の発音終了時刻に一致するように配置する。
【００３２】
時間伸縮マッピング部２２は、時間軸上で合成音声上に配置された表現素片の時間伸縮マッピングを計算する（時間軸上の伸張処理を行う）。ここでは、時間伸縮マッピング部２２は、合成音声と表現素片との時刻の対応を示すマッピング関数を計算する。ここで用いられるマッピング関数は、表現素片の表現基準時刻に基づく区分毎に伸縮態様を異ならせた非線形関数である。このような関数を用いることで、素片に含まれる歌唱表現の性質を極力損なうことなく合成音声に加算できる。時間伸縮マッピング部２２は、表現素片のうち特徴部分を、特徴部分以外の部分とは異なるアルゴリズムで（すなわち異なるマッピング関数を用いて）時間伸張を行う。特徴部分とは、例えば、後述するようにアタック基準の歌唱表現においてはプレ区間Ｔ１およびオンセット区間Ｔ２である。
【００３３】
図１２Ａから図１２Ｄは、時間軸上における合成音声の表現付与長よりも、配置された表現素片の方が時間長が短い例におけるマッピング関数を例示する図である。このマッピング関数は、例えば、特定のノートについてアタック基準の歌唱表現の表現素片をモーフィングに利用する場合において、表現付与長より表現素片の方が時間長が短いときに用いられる。まず、マッピング関数の基本的な考え方を説明する。表現素片において、プレ区間Ｔ１およびオンセット区間Ｔ２には、歌唱表現としてのスペクトル特徴量の動的変動が多く含まれている。そのため、この区間を時間伸縮すると歌唱表現の性質が変わってしまう。そこで、時間伸縮マッピング部２２は、プレ区間Ｔ１およびオンセット区間Ｔ２は可能な限り時間伸縮を行わず、サステイン区間Ｔ３を引き延ばすことによって所望の時間伸縮マッピングを得る。
【００３４】
図１２Ａに示すように、時間伸縮マッピング部２２は、サステイン区間Ｔ３についてはマッピング関数の傾きを緩やかにする。例えば、時間伸縮マッピング部２２は、表現素片のデータ読み出し速度を遅くすることによって素片全体の時間を引き延ばす。図１２Ｂは、サステイン区間Ｔ３においても読み出し速度は一定のまま、データ読み出し位置を何度も手前に戻すことによって素片全体の時間を引き延ばす例を示す。図１２Ｂの例は、サステイン区間Ｔ３ではスペクトルが概ね定常的に維持されるという特性を利用したものである。このとき、データ読出し位置を戻す時刻と戻る時刻は、スペクトルに現れる時間的周期性の開始位置と終了位置に対応していることが好ましい。このようなデータ読出し位置を採用することにより、自然な歌唱表現が付与された合成音声を得ることができる。例えば、表現素片のスペクトル特徴量の時系列に対して自己相関関数を求め、当該自己相関関数のピークを開始位置および終了位置として求めることができる。図１２Ｃは、サステイン区間Ｔ３においていわゆるランダムミラーループ（Random-Mirror-Loop）を適用して素片全体の時間を引き延ばす例を示す。ランダムミラーループは、読み出しの途中でデータ読み出し速度の符号を何度も反転させることによって素片全体の時間を引き延ばす手法である。表現素片に本来含まれない人工的な周期性が発生しないようにするため、符号を反転する時刻は擬似乱数に基づいて決定される。
【００３５】
図１２Ａから図１２Ｃはプレ区間Ｔ１およびオンセット区間Ｔ２におけるデータ読み出し速度を変えない例を示すが、ユーザーが歌唱表現のスピードを調整したい場合がある。一例としては、「しゃくり」の歌唱表現において、素片として収録されている歌唱表現よりも速くしたい場合がある。このような場合、プレ区間Ｔ１およびオンセット区間Ｔ２におけるデータ読み出し速度を変えればよい。具体的に、素片よりも速くしたい場合はデータ読み出し速度を速くする。図１２Ｄはプレ区間Ｔ１およびオンセット区間Ｔ２におけるデータ読み出し速度を速くする例を示す。サステイン区間Ｔ３においてはデータ読み出し速度を遅くし、素片全体の時間を引き延ばす。
【００３６】
図１３Ａから図１３Ｄは、時間軸上における合成音声の表現付与長よりも、配置された表現素片の方が時間長が長い場合に用いられるマッピング関数を例示する図である。このマッピング関数は、例えば、特定のノートについてアタック基準の歌唱表現の表現素片をモーフィングに利用する場合において、表現付与長よりも表現素片の方が時間長が長いときに用いられる。図１３Ａから図１３Ｄの例でも、時間伸縮マッピング部２２は、プレ区間Ｔ１およびオンセット区間Ｔ２は可能な限り時間伸縮を行わず、サステイン区間Ｔ３を短縮することによって所望の時間伸縮マッピングを得る。
【００３７】
図１３Ａは、時間伸縮マッピング部２２は、サステイン区間Ｔ３についてはマッピング関数の傾きをプレ区間Ｔ１およびオンセット区間Ｔ２と比較して急にする。例えば、時間伸縮マッピング部２２は、表現素片のデータ読み出し速度を速くすることによって素片全体の時間を短縮する。図１３Ｂは、サステイン区間Ｔ３においても読み出し速度は一定のまま、サステイン区間Ｔ３の途中でデータ読み出しを打ち切ることによって素片全体の時間を短縮する例を示す。サステイン区間Ｔ３の音響的特徴は定常的であるので、データ読み出し速度を変えるよりも、データ読み出し速度は一定のまま単に素片の末尾を使用しない方が自然な合成音声が得られる。図１３Ｃは、合成音声の時間が、表現素片のプレ区間Ｔ１およびオンセット区間Ｔ２の時間長の和よりも短い場合に用いられるマッピング関数を示す。この例では、時間伸縮マッピング部２２は、オンセット区間Ｔ２の終点が合成音声の終点と一致するように、オンセット区間Ｔ２におけるデータ読み出し速度を速くする。図１３Ｄは、合成音声の時間が、表現素片のプレ区間Ｔ１およびオンセット区間Ｔ２の時間長の和よりも短い場合に用いられるマッピング関数の別の例を示す。この例では、時間伸縮マッピング部２２は、オンセット区間Ｔ２においてもデータ読み出し速度は一定のまま、オンセット区間Ｔ２の途中でデータ読み出しを打ち切ることによって素片全体の時間を短縮する。なお、図１３Ｄの例では、基本周波数の決定に注意が必要である。オンセット区間Ｔ２の音高はノートの音高と異なることが多いため、オンセット区間Ｔ２の末尾を使用しないと合成音声の基本周波数がノートの音高に到達せず、音が外れたように（音痴に）聞こえてしまう場合がある。これを避けるためには、時間伸縮マッピング部２２は、オンセット区間Ｔ２内でノートの音高に相当する基本周波数の代表値を決め、この基本周波数がノートの音高に一致するように表現素片全体の基本周波数をシフトする。基本周波数の代表値としては、例えば、オンセット区間Ｔ２の末尾の基本周波数が用いられる。
【００３８】
図１２Ａから図１２Ｄおよび図１３Ａから図１３Ｄは、アタック基準の歌唱表現に対する時間伸縮マッピングを例示するものであったが、リリース基準の歌唱表現に対する時間伸縮マッピングも考え方は同じである。すなわち、リリース基準の歌唱表現においてはオフセット区間Ｔ４およびポスト区間Ｔ５が特徴部分であり、他の部分とは異なったアルゴリズムで時間伸張マッピングが行われる。
【００３９】
図１１の短時間スペクトル操作部２３は、周波数分析により、表現素片の短時間スペクトルからいくつかの成分（スペクトル特徴量）を抽出する。短時間スペクトル操作部２３は、抽出された成分の一部を、合成音声の同じ成分に対してモーフィングすることで、歌唱表現が付与された合成音声の短時間スペクトルの系列を得る。短時間スペクトル操作部２３は、表現素片の短時間スペクトルを、例えば以下のうち１つ以上の成分を抽出する。
（ａ）振幅スペクトル包絡
（ｂ）振幅スペクトル包絡概形
（ｃ）位相スペクトル包絡
（ｄ）振幅スペクトル包絡（または調波振幅）の時間的微細変動
（ｅ）位相スペクトル包絡（または調波位相）の時間的微細変動
（ｆ）基本周波数
なお、表現素片と合成音声との間でこれらの成分を独立にモーフィングするためには、合成音声に対しても上記の抽出が行われる必要があるが、歌唱合成部２０Ａにおいては合成の途中でこれらの情報が生成されている場合があるので、それらを利用すればよい。以下に各成分を説明する。
【００４０】
振幅スペクトル包絡は、振幅スペクトルの概形であり、主に音韻と個人性の知覚に関する。振幅スペクトル包絡を求める方法が多数提案されており、たとえば、振幅スペクトルからケプストラム係数を推定し、その推定された係数のうち低次の係数（所定の次数ａ以下の次数の係数群）を振幅スペクトル包絡として用いる。本実施形態の重要なポイントは、振幅スペクトル包絡を他の成分と独立して扱うことである。すなわち、仮に、音韻または個人性が合成音声とは異なる表現素片を使用するとき、振幅スペクトル包絡に関するモーフィング量をゼロとすれば、歌唱表現が付与された合成音声には、元の合成音声の音韻および個人性が１００％現れる。そのため、音韻または個人性が異なる表現素片（例えば、本人の他音韻または全くの他人の素片）を転用できる。なお、ユーザーが合成音声の音韻や個人性を意図的に変化したい場合には、振幅スペクトル包絡に関し、ゼロでないモーフィング量を適宜に設定し、歌唱表現の他の成分のモーフィングとは独立にモーフィングしてもよい。
【００４１】
振幅スペクトル包絡概形は、振幅スペクトル包絡をさらに大まかに表現した概形であり、主に声の明るさに関する。振幅スペクトル包絡概形は様々な方法で求められる。例えば、推定されたケプストラム係数のうち、振幅スペクトル包絡よりもさらに低次の係数（次数ａよりも低い次数ｂ以下の次数の係数群）を振幅スペクトル包絡概形として用いる。振幅スペクトル包絡とは異なり、振幅スペクトル包絡概形には音韻や個人性の情報はほとんど含まれない。そこで、振幅スペクトル包絡のモーフィングを行うか否かに関わらず、振幅スペクトル包絡概形成分のモーフィングを行うことで、歌唱表現に含まれる声の明るさとその時間的な動きとを合成音声に付与できる。
【００４２】
位相スペクトル包絡は、位相スペクトルの概形である。位相スペクトル包絡は様々な方法で求められる。例えば、短時間スペクトル操作部２３は、まず、信号の周期に同期する可変長、可変シフト量のフレームにおける短時間スペクトルを分析する。例えば、基本周期Ｔ（＝１／Ｆ０）のｎ倍の窓幅、ｍ倍（ｍ＜ｎ）のシフト量のフレームを用いる（ｍおよびｎは例えば自然数）。周期に同期したフレームを用いることにより、微細変動を高い時間分解能で抽出できる。その後、短時間スペクトル操作部２３は、各調波成分における位相の値のみを取り出し、この段階でその他の値を破棄し、さらに調波成分以外の周波数（調波と調波の間）については位相を補間することで、位相スペクトルではない位相スペクトル包絡が得られる。補間には、最近傍補間または線形もしくは高次の曲線補間が好適である。
【００４３】
図１４は、振幅スペクトル包絡および振幅スペクトル包絡概形の関係を例示する図である。振幅スペクトル包絡の時間的変動および位相スペクトル包絡の時間的変動は、ごく短時間のうちの音声スペクトルにおいて高速に変動する成分に相当し、濁声や嗄声等に特有の質感（ガサガサ感）に相当する。振幅スペクトル包絡の時間的微細変動は，これらの推定値に対して時間軸上での差分をとるか、一定時間区間内で平滑化したこれらの値と注目フレームにおける値との差分をとることで得ることができる。位相スペクトル包絡の時間的微細変動は、位相スペクトル包絡に対して時間軸上での差分をとるか、または一定時間区間内で平滑化したこれらの値と注目フレームにおける値との差分をとることで得ることができる。これらの処理はいずれもある種の高域通過フィルタに相当する。スペクトル特徴量として何れかのスペクトル包絡の時間的微細変動を用いる場合、その微細変動に対応するスペクトル包絡および包絡概形から、この時間的微細変動を除去する必要がある。ここでは、時間的微細変動が含まれないスペクトル包絡またはスペクトル包絡概形が用いられる。
【００４４】
スペクトル特徴量として振幅スペクトル包絡および振幅スペクトル包絡概形の両方を用いる場合、そのモーフィング処理では、（ａ）振幅スペクトル包絡（例えば図１４）のモーフィングは行わず、
（ａ’）振幅スペクトル包絡概形と振幅スペクトル包絡との差分のモーフィングと、
（ｂ）振幅スペクトル包絡概形のモーフィングとを行うのがよい。
例えば、図１４のように振幅スペクトル包絡と振幅スペクトル包絡概形とを分離すると、その振幅スペクトル包絡に振幅スペクトル包絡概形の情報が含まれ、独立に制御できないので、両者を（ａ’）と（ｂ）とに分離して扱う。このように分離すると、絶対的な音量に関する情報は振幅スペクトル包絡概形に含まれる。人間が発する声の強さを変化させるとき、個人性や音韻性はある程度保つことができる一方、音量とスペクトルの全体的な傾斜が同時に変化することが多いので、振幅スペクトル包絡概形に音量の情報を含めるのは理にかなっている。
【００４５】
なお、振幅スペクトル包絡および位相スペクトル包絡に代えて、調波振幅および調波位相が用いられてもよい。調波振幅は、音声の調波構造を構成する各調波成分の振幅の系列であり、調波位相は、音声の調波構造を構成する各調波成分の位相の系列である。振幅スペクトル包絡および位相スペクトル包絡を用いるか、または調波振幅および調波位相を用いるかの選択は、合成部２４による合成方式の選択に依存する。パルス列の合成または時変フィルタによる合成が行われる場合は振幅スペクトル包絡および位相スペクトル包絡が用いられ、ＳＭＳ、ＳＰＰ、またはＷＢＨＳＭのように正弦波モデルを基礎とする合成方式では調波振幅および調波位相を用いる。
【００４６】
基本周波数は、主に音高の知覚に関する。スペクトルの他の特徴量と異なり、２つの周波数の間における単純な補間で基本周波数を求めることはできない。なぜならば、表現素片におけるノートの音高と合成音声のノートの音高は一般に異なっており、表現素片の基本周波数と合成音声の基本周波数を単純に補間した基本周波数で合成しても、合成されるべき音高とはまったく異なった音高になってしまうためである。そこで本実施形態において、短時間スペクトル操作部２３は、まず、表現素片の音高が合成音声のノートの音高に一致するように、表現素片全体の基本周波数を一定量シフトする。この処理は、表現素片の各時刻の基本周波数を合成音に一致させるものではなく、表現素片に含まれる基本周波数の動的な変動は保持される。
【００４７】
図１５は、表現素片の基本周波数をシフトする処理を例示する図である。図１５において、破線がシフト前の（すなわちデータベース１０に収録された）表現素片の特性を、実線がシフト後の特性を、それぞれ示す。この処理では、時間軸方向へのシフトは行われず、プレ区間Ｔ１およびオンセット区間Ｔ２における基本周波数の変動が維持されたまま、サステイン区間Ｔ３の基本周波数が所望の周波数となるよう、素片の特性曲線全体がそのまま音高軸方向にシフトされる。歌唱表現の基本周波数をモーフィングする場合、短時間スペクトル操作部２３は、このシフト処理によりシフトされた基本周波数Ｆ０ｐと通常の歌唱合成における基本周波数Ｆ０ｖとを各時刻でモーフィング量に応じて補間して、合成された基本周波数Ｆ０ｖｐを出力する。
【００４８】
図１６は、短時間スペクトル操作部２３の具体的な構成を示すブロック図である。図１６に例示される通り、短時間スペクトル操作部２３は、周波数解析部２３１と第１抽出部２３２と第２抽出部２３３とを具備する。周波数解析部２３１は、フレーム毎に、時間領域の表現素片から周波数領域のスペクトル（振幅スペクトルおよび位相スペクトル）を順次に算定し、さらにそのスペクトルのケプストラム係数を推定する。周波数解析部２３１によるスペクトルの算定には、所定の窓関数を利用した短時間フーリエ変換が利用される。
【００４９】
第１抽出部２３２は、フレーム毎に、周波数解析部２３１が算定した各スペクトルから振幅スペクトル包絡Ｈ（ｆ）と振幅スペクトル包絡概形Ｇ（ｆ）と位相スペクトル包絡Ｐ（ｆ）とを抽出する。第２抽出部２３３は、フレーム毎に、時間的に相前後するフレームの振幅スペクトル包絡Ｈ（ｆ）の間の差分を振幅スペクトル包絡Ｈ（ｆ）の時間的微細変動Ｉ（ｆ）として算定する。同様に、第２抽出部２３３は、時間的に相前後する位相スペクトル包絡Ｐ（ｆ）の間の差分を位相スペクトル包絡Ｐ（ｆ）の時間的微細変動Ｑ（ｆ）として算定する。なお、第２抽出部２３３は、任意のひとつの振幅スペクトル包絡Ｈ（ｆ）と複数の振幅スペクトル包絡Ｈ（ｆ）の平滑化値（例えば平均値）との間の差分を時間的微細変動Ｉ（ｆ）として算定してもよい。同様に、第２抽出部２３３は、任意のひとつの位相スペクトル包絡Ｐ（ｆ）と複数の位相スペクトル包絡Ｐ（ｆ）の平滑化値との間の差分を時間的微細変動Ｑ（ｆ）として算定してもよい。第１抽出部２３２が抽出するＨ（ｆ）、Ｇ（ｆ）は、微細変動Ｉ（ｆ）を除去した振幅スペクトル包絡および包絡慨形であり、また、同抽出するＰ（ｆ）は微細変動Ｑ（ｆ）を除去した位相スペクトル包絡である。
【００５０】
なお、以上の説明では表現素片からスペクトル特徴量を抽出する場合を便宜的に例示したが、歌唱合成部２０Ａが生成した合成音声から短時間スペクトル操作部２３が同様の方法でスペクトル特徴量を抽出してもよい。歌唱合成部２０Ａの合成方式によっては、短時間スペクトルや、スペクトル特徴量の一部ないし全部が、歌唱合成用パラメータに含まれる可能性があり、その場合、短時間スペクトル操作部２３は、それらのデータを歌唱合成部２０Ａから受け取り、演算を省略してもよい。或いは、短時間スペクトル操作部２３は、合成音声の入力に先立って、表現素片のスペクトル特徴量を予め抽出してメモリに記憶しておき、合成音声が入力されたとき、表現素片のスペクトル特徴量をそのメモリから読み出して出力するようにしてもよい。合成音声入力時の時間当たりの処理量を低減できる。
【００５１】
合成部２４は、合成音声と表現素片とを合成し、歌唱表現が付与された合成音声を得る。合成音声と表現素片とを合成し、最終的に時間領域の波形として得る方法には種々のものが存在するが、これらの方法は入力とするスペクトルの表現方法によって２種類に大別できる。一つは調波成分に基づく方法で、もう一つは振幅スペクトル包絡に基づく方法である。
【００５２】
調波成分に基づく合成方法としては、例えばＳＭＳが知られている（Serra, Xavier, and Julius Smith. "Spectral modeling synthesis: A sound analysis/synthesis system based on a deterministic plus stochastic decomposition." Computer Music Journal 14.4 (1990): 12-24.）。有声音のスペクトルは基本周波数とそのおおよそ整数倍の周波数における正弦波成分の周波数、振幅、および位相によって表現される。ＳＭＳによってスペクトルを生成し、逆フーリエ変換すると、窓関数が乗算された数周期分の波形が得られる。窓関数を除算したうえで合成結果の中心付近のみを別の窓関数で切り出し、出力結果バッファに重畳加算する。この処理をフレーム間隔ごとに繰り返すことで長時間の連続的な波形が得られる。
【００５３】
振幅スペクトル包絡に基づく合成方法としては、例えばＮＢＶＰＭ（Bonada, Jordi. "High quality voice transformations based on modeling radiated voice pulses in frequency domain." Proc. Digital Audio Effects (DAFx). 2004.）が知られている。この例では、スペクトルは、振幅スペクトル包絡と位相スペクトル包絡によって表現され、基本周波数や調波成分の周波数情報は含まれない。このスペクトルを逆フーリエ変換すると１周期分の声帯振動とそれに対する声道応答に相当するパルス波形が得られる。これを出力バッファに重畳加算する。このとき、隣接するパルス同士のスペクトルにおける位相スペクトル包絡がおおよそ同一の値であれば、出力バッファに重畳加算する時間間隔の逆数が最終的な合成音の基本周波数となる。
【００５４】
合成音声と表現素片との合成には、周波数領域で行う方法と時間領域で行う方法がある。いずれの方法が用いられる場合でも、合成音声と表現素片との合成は、基本的には以下の手順で行われる。まず、振幅および位相の時間的微細変動成分以外の成分について、合成音声と表現素片とをモーフィングする。次に、各調波成分（またはその周辺周波数帯域）の振幅および位相の時間的微細変動成分を加算することにより、歌唱表現を付与した合成音声を生成する。
【００５５】
なお、合成音声と表現素片との合成の際、時間的微細変動成分についてのみ、それ以外の成分とは異なる時間伸縮マッピングが用いられてもよい。これは、例えば以下の２つの場合において有効である。
【００５６】
第１には、ユーザーが意図して歌唱表現のスピードを変化させた場合である。時間的微細変動成分は、その変動の速さや周期性が音声の質感（例えば「ガサガサ」、「ガリガリ」、または「シュワシュワ」といった質感）と深く関わるものであり、この変動速度を変化させてしまうと音声の質感が変わってしまう。例えば、図８に示したような末尾で音高が下がる歌唱表現においてユーザーがそのスピードを速める指示を入力したとき、ユーザーは具体的には、音高を下げつつ、それに伴う音色や質感の変化の速度を速める意図を有しているものの、歌唱表現の質感そのものを変化させることは意図していないと推察される。したがって、ユーザーの意図どおりの歌唱表現を得るには、基本周波数および振幅スペクトル包絡等の成分については線形時間伸縮によってポスト区間Ｔ５のデータ読出し速度を速めればよいが、時間的微細変動成分については適当な周期でループさせたり（図１２Ｂのサステイン区間Ｔ３と同様）、ランダムミラーループ（図１２Ｃのサステイン区間Ｔ３と同様）させたりする。
【００５７】
第２には、時間的微細変動成分の変動周期が基本周波数に依存すべき歌唱表現を合成する場合である。調波成分の振幅および位相に周期的な変調を有する歌唱表現においては、振幅および位相の変動周期について、基本周波数との時間的な対応を維持した方が自然に聞こえる場合があることが経験的に分かっている。このような質感を有する歌唱表現を、例えば「ラフ」または「グロウル」という。振幅および位相の変動周期をについて基本周波数との時間的な対応を維持させる手法としては、表現素片の波形を合成する際に適用される基本周波数の変換比と同じ比率を時間的微細変動成分のデータ読出し速度に適用する手法を用いることができる。
【００５８】
図１１の合成部２４は、表現素片が配置された区間について、合成音声と表現素片とを合成する。すなわち、合成部２４は、合成音声に対し歌唱表現を付与する。合成音声と表現素片とのモーフィングは、上述のスペクトル特徴量（ａ）〜（ｆ）のうち少なくとも１つについて行われる。スペクトル特徴量（ａ）〜（ｆ）のうちどの特徴をモーフィングするかは、歌唱表現毎に予め設定される。例えば、音楽用語でいうクレッシェンドまたはデクレッシェンドという歌唱表現は、主に発声の強さの時間的な変化に関係する。したがって、モーフィングの対象とすべき主要なスペクトル特徴量は振幅スペクトル包絡概形である。音韻および個人性は、クレッシェンドまたはデクレッシェンドを構成する主要なスペクトル特徴量ではないと看做す。したがって、振幅スペクトル包絡のモーフィング量（係数）をユーザーがゼロにすれば、ある１人の歌唱者の１個の音韻の歌唱から作られたクレッシェンドの表現素片を、あらゆる歌唱者のあらゆる音韻に対して適用できる。別の例で、ビブラートのような歌唱表現では、基本周波数が周期的に変動し、またそれに同期して音量も変動する。したがって、大きめのモーフィング量を設定すべきスペクトル特徴量は、基本周波数および振幅スペクトル包絡概形である。
【００５９】
また、振幅スペクトル包絡は音韻に関連したスペクトル特徴量であるので、振幅スペクトル包絡のモーフィング量をゼロにしてモーフィングの対象から除外することにより、音韻に影響を与えることなく歌唱表現を付与できる。例えば、ある特定の音韻（例えば／ａ／）についてのみしか素片が収録されていない歌唱表現も、振幅スペクトル包絡のモーフィング量をゼロにすれば、特定の音韻以外の音韻の合成音声に対してその表現素片を問題なくモーフィングできる。
【００６０】
このように、歌唱表現の種類毎に、モーフィングの対象とすべきスペクトル特徴量を限定できる。ユーザーは、このようにモーフィングの対象とするスペクトル特徴量を限定してもよいし、歌唱表現の種類によらず全てのスペクトル特徴量をモーフィングの対象としてもよい。多くのスペクトル特徴量をモーフィングの対象とすると、元の表現素片に近い合成音声が得られるのでその部分の自然性は向上する。しかし、歌唱表現を付与しない部分との音質の差は大きくなってしまうので、歌唱全体を通して聞いたときに違和感が出る可能性がある。したがって、モーフィングするスペクトル特徴量をテンプレート化する際には、自然性と違和感とのバランスを考慮してモーフィングの対象となるスペクトル特徴量を決定する。
【００６１】
図１７は、合成音声と表現素片とを周波数領域で合成するための、合成部２４の機能構成を例示する図である。この例で、合成部２４は、スペクトル生成部２４０１、逆フーリエ変換部２４０２、合成窓適用部２４０３、および重畳加算部２４０４を有する。
【００６２】
図１８は、合成器２０（ＣＰＵ１０１）の動作を例示するシーケンスチャートである。特定部２５は、データベース１０に含まれる歌唱表現データベースの中から、歌唱表現の付与に用いられる素片を特定する。例えば、ユーザーが選択した歌唱表現の素片が用いられる。
【００６３】
ステップＳ１４０１において、取得部２６は、歌唱合成部２０Ａが生成した合成音声のスペクトル特徴量の時間変化を取得する。ここで取得されるスペクトル特徴量は、振幅スペクトル包絡Ｈ（ｆ）、振幅スペクトル包絡概形Ｇ（ｆ）、位相スペクトル包絡Ｐ（ｆ）、振幅スペクトル包絡の時間的微細変動Ｉ（ｆ）、位相スペクトル包絡の時間的微細変動Ｑ（ｆ）、および基本周波数Ｆ０のうち少なくとも１つを含む。なお、取得部２６は、例えば、合成音声の生成に利用される歌唱素片から短時間スペクトル操作部２３が抽出したスペクトル特徴量を取得してもよい。
【００６４】
ステップＳ１４０２において、取得部２６は、歌唱表現の付与に用いられるスペクトル特徴量の時間変化を取得する。ここで取得されるスペクトル特徴量は、合成音声の生成に用いられるものと基本的には同じ種類である。合成音声のスペクトル特徴量と表現素片のスペクトル特徴量とを区別するため、合成音声のスペクトル特徴量に添字ｖを付与し、表現素片のスペクトル特徴量に添字ｐを付与し、歌唱表現が付与された合成音声に添字ｖｐを付与する。取得部２６は、例えば、短時間スペクトル操作部２３が表現素片から抽出したスペクトル特徴量を取得する。
【００６５】
ステップＳ１４０３において、取得部２６は、付与される表現素片に対して設定された表現基準時刻を取得する。ここで取得される表現基準時刻は、既に説明したように、歌唱表現開始時刻、歌唱表現終了時刻、ノートオンセット開始時刻、ノートオフセット開始時刻、ノートオンセット終了時刻、およびノートオフセット終了時刻のうち少なくとも１つを含む。
【００６６】
ステップＳ１４０４において、タイミング計算部２１は、歌唱合成部２０Ａからの合成音声の特徴点に関するデータと、表現素片に対して記録された表現基準時刻とを利用して、表現素片とノート（合成音声）とを一致させるタイミング（時間軸上の位置）を計算する。以上の説明から理解される通り、ステップＳ１４０４は、時間軸上における合成音声の特徴点（例えば母音開始時刻、母音終了時刻および発音終了時刻）と表現素片の表現基準時刻とが一致するように時間軸上で合成音声に対して表現素片（例えば振幅スペクトル包絡概形の時系列）を配置する処理である。
【００６７】
ステップＳ１４０５において、時間伸縮マッピング部２２は、対象となるノートの時間長と表現素片の時間長との関係に応じて、表現素片に対し時間伸縮マッピングを施す。以上の説明から理解される通り、ステップＳ１４０５は、合成音声における一部の期間（例えばノート）の時間長に一致するように、表現素片（例えば振幅スペクトル包絡概形の時系列）を時間軸上で伸長または収縮する処理である。
【００６８】
ステップＳ１４０６において、時間伸縮マッピング部２２は、合成音声の基本周波数Ｆ０ｖと、表現素片の基本周波数Ｆ０ｐとが一致するように（すなわち両者の音高が一致するように）、表現素片の音高をシフトする。以上の説明から理解される通り、ステップＳ１４０６は、合成音声の基本周波数Ｆ０ｖ（例えばノートに指定された音高）と表現素片の基本周波数Ｆ０ｐの代表値との音高差に基づいて表現素片の音高の時系列をシフトする処理である。
【００６９】
図１７に例示される通り、本実施形態のスペクトル生成部２４０１は、特徴量合成部２４０１Ａと生成処理部２４０１Ｂとを具備する。ステップＳ１４０７において、スペクトル生成部２４０１の特徴量合成部２４０１Ａは、各スペクトル特徴量について、合成音声および表現素片のそれぞれにモーフィング量を乗算してから加算する。一例として、振幅スペクトル包絡概形Ｇ（ｆ）、振幅スペクトル包絡Ｈ（ｆ）、および振幅スペクトル包絡の時間的微細変動Ｉ（ｆ）について、
Ｇｖｐ（ｆ）＝（１−ａＧ）Ｇｖ（ｆ）＋ａＧ・Ｇｐ（ｆ）    …（１）
Ｈｖｐ（ｆ）＝（１−ａＨ）Ｈｖ（ｆ）＋ａＨ・Ｈｐ（ｆ）    …（２）
Ｉｖｐ（ｆ）＝（１−ａＩ）Ｉｖ（ｆ）＋ａＩ・Ｉｐ（ｆ）    …（３）
により合成音声および表現素片をモーフィングする。なお、ａＧ、ａＨ、およびａＩは、それぞれ、振幅スペクトル包絡概形Ｇ（ｆ）、振幅スペクトル包絡Ｈ（ｆ）、および振幅スペクトル包絡の時間的微細変動Ｉ（ｆ）に対するモーフィング量である。上述したように、（２）のモーフィングは、実際の処理としては、（ａ）振幅スペクトル包絡Ｈ（ｆ）のモーフィングではなく、（ａ’）振幅スペクトル包絡慨形Ｇ（ｆ）と振幅スペクトル包絡Ｈ（ｆ）との差分として行うのがよい。さらに、時間的微細変動Ｉ（ｆ）の合成に関しては、（３）のように周波数領域で行ってもよいし（図１７）、１９図のように、時間領域で行ってもよい。以上の説明から理解される通り、ステップＳ１４０７は、表現素片を利用したモーフィングにより合成音声のスペクトル（合成スペクトルの例示）の形状を変更する処理である。具体的には、表現素片の振幅スペクトル包絡概形Ｇｐ（ｆ）の時系列と振幅スペクトル包絡Ｈｐ（ｆ）の時系列とに基づいて、合成音声のスペクトルの時系列が変更される。また、表現素片における振幅スペクトル包絡の時間的微細変動Ｉｐ（ｆ）と位相スペクトル包絡の時間的微細変動Ｑｐ（ｆ）との少なくとも一方の時系列に基づいて、合成音声のスペクトルの時系列が変更される。
【００７０】
ステップＳ１４０８において、スペクトル生成部２４０１の生成処理部２４０１Ｂは、特徴量合成部２４０１Ａによる合成後のスペクトル特徴量で規定されるスペクトルを生成および出力する。以上の説明から理解される通り、本実施形態のステップＳ１４０４からステップＳ１４０８は、合成音声のスペクトル（合成スペクトルの一例）の時系列を歌唱表現の表現素片のスペクトル特徴量の時系列に基づいて変更することにより、当該歌唱表現が付与されたスペクトル（変更スペクトルの例示）の時系列を得る変更ステップに相当する。
【００７１】
スペクトル生成部２４０１が生成したスペクトルが入力されると、逆フーリエ変換部２４０２は、入力されたスペクトルに対し逆フーリエ変換を施し（ステップＳ１４０９）、時間領域の波形を出力する。時間領域の波形が入力されると、合成窓適用部２４０３は、その入力された波形に対し所定の窓関数を適用し（ステップＳ１４１０）、その結果を出力する。重畳加算部２４０４は、窓関数が適用された波形を、重畳加算する（ステップＳ１４１１）。この処理をフレーム間隔毎に繰り返すことで長時間の連続的な波形が得られる。得られた歌唱の波形は、スピーカー等の出力装置１０７により再生される。以上の説明から理解される通り、本実施形態のステップＳ１４０９からステップＳ１４１１は、歌唱表現が付与されたスペクトル（変更スペクトル）の時系列に基づいて、歌唱表現が付与された音声サンプルの時系列を合成する合成ステップに相当する。
【００７２】
周波数領域で全部の合成を行う図１７の方法には、複数の合成処理を実行せずに済むため計算量を抑制できるという利点がある。ただし、振幅および位相の微細変動成分をモーフィングするためには、それを基本周期Ｔに同期したフレームで行う必要があり、歌唱合成部（図１７の２４０１Ｂから２４０４まで）がそれに適合するものに限定されてしまう。一般の音声合成部のなかには、合成処理用のフレームが一定であったり、また、フレームが可変でも、何らかのルールに従って制御されているタイプがあり、その場合、同期したフレームを用いるように音声合成部を改造しない限り、基本周期Ｔに同期したフレームで音声波形を合成できない。他方、音声合成部をそのように改造すると、合成される音声の特性が変わるという問題がある。
【００７３】
図１９は、合成音声と表現素片の合成処理のうち、時間的微細変動の合成を時間領域で行う場合の、合成部２４の機能構成を例示する図である。この例で、合成部２４は、スペクトル生成部２４１１、逆フーリエ変換部２４１２、合成窓適用部２４１３、重畳加算部２４１４、歌唱合成部２４１５、乗算部２４１６、乗算部２４１７、および加算部２４１８を有する。微細変動の品質を保つため、２４１１から２４１４は、それぞれ、波形の基本周期Ｔに同期したフレーム単位で処理を行う。
【００７４】
スペクトル生成部２４１１は、歌唱表現が付与された合成音声のスペクトルを生成する。本実施形態のスペクトル生成部２４１１は、特徴量合成部２４１１Ａと生成処理部２４１１Ｂとを具備する。特徴量合成部２４１１Ａには、フレーム毎に、合成音声および表現素片の各々について、振幅スペクトル包絡Ｈ（ｆ）、振幅スペクトル包絡概形Ｇ（ｆ）、位相スペクトル包絡Ｐ（ｆ）、および基本周波数Ｆ０が入力される。特徴量合成部２４１１Ａは、フレーム毎に、入力されたスペクトル特徴量（Ｈ（ｆ），Ｇ（ｆ），Ｐ（ｆ），Ｆ０）を合成音声と表現素片との間で合成（モーフィング）を行い、合成された特徴量を出力する。なお、合成音声と表現素片とが入力され合成が行われるのは、合成音声の全区間のうちの表現素片が配置された区間のみであり、その残りの区間では、特徴量合成部２４１１Ａは、合成音声のスペクトル特徴量のみを受け取りそのまま出力する。
【００７５】
生成処理部２４１１Ｂには、フレーム毎に、短時間スペクトル操作部２３が表現素片から抽出した振幅スペクトル包絡の時間的微細変動Ｉｐ（ｆ）と位相スペクトル包絡の時間的微細変動Ｑｐ（ｆ）とが入力される。生成処理部２４１１Ｂは、フレーム毎に、特徴量合成部２４０１Ａによる合成後のスペクトル特徴量に応じた形状で、時間的微細変動Ｉｐ（ｆ）および時間的微細変動Ｑｐ（ｆ）に応じた微細変動を有するスペクトルを生成および出力する。
【００７６】
逆フーリエ変換部２４１２は、フレーム毎に、生成処理部２４１１Ｂが生成したスペクトルに対し逆フーリエ変換を施し、時間領域の波形（すなわち音声サンプルの時系列）を得る。合成窓適用部２４１３は、逆フーリエ変換により得られたフレーム毎の波形に対し所定の窓関数を適用する。重畳加算部２４１４は、窓関数が適用された波形を、一連のフレームについて、重畳加算する。これらの処理をフレーム間隔毎に繰り返すことで長時間の連続的な波形Ａ（音声信号）が得られる。この波形Ａは、基本周波数シフトされ、かつ、微細変動を含む歌唱表現が付与された合成音声の時間領域の波形を示す。
【００７７】
歌唱合成部２４１５には、合成音声の振幅スペクトル包絡Ｈｖｐ（ｆ）、振幅スペクトル包絡概形Ｇｖｐ（ｆ）、位相スペクトル包絡Ｐｖｐ（ｆ）、および基本周波数Ｆ０ｖｐが入力される。歌唱合成部２４１５は、例えば公知の歌唱合成手法を用いて、これらのスペクトル特徴量に基づいて、基本周波数シフトされ、かつ、微細変動を含まない歌唱表現が付与された合成音声の時間領域の波形Ｂ（音声信号）を生成する。
【００７８】
乗算部２４１６は、重畳加算部２４１４からの波形Ａに対し、微細変動成分の適用係数ａを乗算する。乗算部２４１７は、歌唱合成部２４１５からの波形Ｂに対し、係数（１−ａ）を乗算する。加算部２４１８は、乗算部２４１６からの波形Ａおよび乗算部２４１７からの波形Ｂを加算して混合波形Ｃを出力する。
【００７９】
なお、微細変動を時間領域で合成する方法（図１９）では、歌唱合成部２４１５が合成音声を合成するフレームを、短時間スペクトル操作部２３の微細変動を含む表現素片のスペクトル特徴量を抽出するためのフレームに一致させる必要がない。同期したフレームを使えないタイプの歌唱合成部２４１５を、改造することなく、そのまま用いて微細変動を合成できる。さらに言えば、この方法であれば、合成音声のスペクトルに限らず、歌唱音声を固定フレームで周波数分析して得られるスペクトルにも、微細変動を付与できる。上述したように、短時間スペクトル操作部２３が表現素片に適用する窓関数の窓幅および時間差（すなわち前後の窓関数の間のシフト量）は、表現素片の基本周期（基本周波数の逆数）に応じた可変長に設定される。例えば、窓関数の窓幅および時間差をそれぞれ基本周期の整数倍にすれば、品質のよい特徴量を抽出して、それを加工できる。
【００８０】
時間領域で合成する方法では、微細変動成分についてはその短いフレームで波形Ａを合成する部分のみで扱う。この方法によれば、歌唱合成部２４１５は基本周期Ｔに同期したフレームに適合する方式のものである必要はない。この場合、歌唱合成部２４１５において、例えば、ＳＰＰ（Spectral Peak Processing）（Bonada, Jordi, Alex Loscos, and H. Kenmochi. "Sample-based singing voice synthesizer by spectral concatenation." Proceedings of Stockholm Music Acoustics Conference. 2003.）という手法を用いることができる。ＳＰＰでは、時間的微細変動を含まず、調波ピーク周辺のスペクトル形状によって声の質感に相当する成分を再現した波形が合成される。このような手法を採用した既存の歌唱合成部に対し歌唱表現を付加する場合には、微細変動を時間領域で合成する方法を採用する方が、既存の歌唱合成部をそのまま使用できる点において簡便である。なお、時間領域で合成する場合、合成音声と表現素片とで位相が異なっていると、波形が互いに打ち消しあったり、うなりが生じたりしてしまう。この問題を避けるため、波形Ａの合成部と波形Ｂの合成部で同じ基本周波数と同じ位相スペクトル包絡とを用い、さらに、周期ごとの音声パルスの基準位置（いわゆるピッチマーク）を両者で一致させる。
【００８１】
なお、音声を短時間フーリエ変換などで分析して得られる位相スペクトルの値は一般にθ＋ｎ２πすなわち整数ｎに対して不定性を持っていることから、位相スペクトル包絡のモーフィングには困難を伴う場合がある。位相スペクトル包絡が音の知覚に与える影響は他のスペクトル特徴量に比べて小さいので、位相スペクトル包絡は必ずしも合成しなくてもよく、任意の値を与えてもよい。最も簡便かつ自然性の高い位相スペクトル包絡の決定方法は、振幅スペクトル包絡から計算される最小位相を用いる方法である。この場合、図１７または図１９のＨ（ｆ）およびＧ（ｆ）から、まず微細変動成分を除く振幅スペクトル包絡Ｈ（ｆ）＋Ｇ（ｆ）を求め、これに対応する最小位相を求めて位相スペクトル包絡Ｐ（ｆ）として各合成部に供給する。任意の振幅スペクトル包絡に対応する最小位相を計算する方法としては、例えばケプストラムを介する方法（Oppenheim, Alan V., and Ronald W. Schafer. Discrete-time signal processing. Pearson Higher Education, 2010.）を用いることができる。
【００８２】
２−３．ＵＩ部３０
２−３−１．機能構成
図２０は、ＵＩ部３０の機能構成を例示する図である。ＵＩ部３０は、表示部３１、受付部３２、および音出力部３３を有する。表示部３１は、ＵＩの画面を表示する。受付部３２は、ＵＩを介して操作を受け付ける。音出力部３３は、前述の出力装置１０７で構成され、ＵＩを介して受け付けられた操作に応じて合成音声を出力する。表示部３１により表示されるＵＩは、後述するように、例えば、合成音声に付与される表現素片の合成に用いられる複数のパラメーターの値を同時に変更するための画像オブジェクトを含む。受付部は、この画像オブジェクトに対する操作を受け付ける。
【００８３】
２−３−２．ＵＩ例（概要）
図２１は、ＵＩ部３０において用いられるＧＵＩを例示する図である。このＧＵＩは、一実施形態に係る歌唱合成プログラムにおいて使用される。このＧＵＩは、楽譜表示領域５１１、ウインドウ５１２、およびウインドウ５１３を含む。楽譜表示領域５１１は、歌唱合成に係る楽譜が表示される領域であり、この例ではいわゆるピアノロールに相当する形式で楽譜が表される。楽譜表示領域５１１内において横軸は時間を、縦軸は音階を、それぞれ表す。この例では、ノート５１１１〜５１１５の５つの音符に相当する画像オブジェクトが表示されている。各ノートには、歌詞が割り当てられる。この例では、ノート５１１１〜５１１５に対し、「I」、「love」、「you」、「so」、および「much」という歌詞が割り当てられている。ユーザーはピアノロール上をクリックすることにより、楽譜上の任意の位置に新たなノートを追加する。楽譜上に設定されたノートに対しては、いわゆるドラッグ＆ドロップ等の操作により、ノートの時間軸上の位置、音階、または長さ等の属性を編集する。歌詞は、あらかじめ一曲分の歌詞が入力され、それが所定のアルゴリズムに従って各ノートに自動的に割り当てられてもよいし、ユーザーが各ノートに手動で歌詞を割り当ててもよい。
【００８４】
ウインドウ５１２およびウインドウ５１３は、それぞれ、楽譜表示領域５１１において選択された１以上のノートに対してアタック基準の歌唱表現およびリリース基準の歌唱表現を付与するための操作子を示す画像オブジェクトが表示される領域である。楽譜表示領域５１１におけるノートの選択は所定の操作（例えば、マウスの左ボタンクリック）により行われる。
【００８５】
２−３−３．ＵＩ例（歌唱表現の選択）
図２２は、歌唱表現を選択するＵＩを例示する図である。このＵＩは、ポップアップウインドウを用いる。時間軸上において歌唱表現を付与したいノートに対してユーザーが所定の操作（例えば、マウスの右ボタンクリック）を行うと、ポップアップウインドウ５１４が表示される。ポップアップウインドウ５１４は、木構造に組織化された歌唱表現のうち第１階層を選択するためのウインドウであり、複数の選択肢の表示を含む。ポップアップウインドウ５１４に含まれる複数の選択肢の何れか一の選択肢に対しユーザーが所定の操作（例えば、マウスの左ボタンクリック）を行うと、ポップアップウインドウ５１５が表示される。ポップアップウインドウ５１５は、組織化された歌唱表現の第２階層を選択するためのウインドウである。ポップアップウインドウ５１５に対しユーザーが一の選択肢を選択する操作を行うと、ポップアップウインドウ５１６が表示される。ポップアップウインドウ５１６は、組織化された歌唱表現の第３階層を選択するためのウインドウである。ＵＩ部３０は、図２２のＵＩを介して選択された歌唱表現を特定する情報を合成器２０に出力する。こうして、ユーザーは、所望の歌唱表現を組織化された構造の中から選択してそのノートに付与する。
【００８６】
これにより、楽譜表示領域５１１において、ノート５１１１の周辺にはアイコン５１１６やアイコン５１１７が表示される。アイコン５１１６は、アタック基準の歌唱表現を付与する際の、その歌唱表現の編集を指示するためのアイコン（画像オブジェクトの一例）であり、アイコン５１１７は、リリース基準の歌唱表現を付与する際の、その歌唱表現の編集を指示するためのアイコンである。例えば、ユーザーがマウスポインターをアイコン５１１６に当てた状態でマウスの右ボタンをクリックすると、アタック基準の歌唱表現を選択するためのポップアップウインドウ５１４が表示され、ユーザーは、付与する歌唱表現を変更できる。
【００８７】
図２３は、歌唱表現を選択するＵＩの別の例を示す図である。この例では、ウインドウ５１２において、アタック基準の歌唱表現を選択するための画像オブジェクトが表示される。詳細には、ウインドウ５１２には、複数のアイコン５１２１が表示される。各アイコンは、それぞれ歌唱表現を代表するものである。この例ではデータベース１０には１０種類の歌唱表現が収録されており、ウインドウ５１２には１０種類のアイコン５１２１が表示されている。ユーザーは、楽譜表示領域５１１において対象となる１以上のノートを選択した状態で、ウインドウ５１２のアイコン５１２１の中から、付与する歌唱表現に対応するアイコンを選択する。リリース基準の歌唱表現についても同様に、ユーザーは、ウインドウ５１３においてアイコンを選択する。ＵＩ部３０は、図２３のＵＩを介して選択された歌唱表現を特定する情報を合成器２０に出力する。合成器２０はこの情報に基づいて歌唱表現が付与された合成音声を生成する。ＵＩ部３０の音出力部３３は、生成された合成音声を出力する。
【００８８】
２−３−４．ＵＩ例（歌唱表現のパラメーター入力）
図２３の例において、ウインドウ５１２には、アタック基準の歌唱表現の程度を変化させるためのダイヤル５１２２の画像オブジェクトが表示される。ダイヤル５１２２は、合成音声に付与される歌唱表現の付与に用いられる複数のパラメーターの値を同時に変更するための単一の操作子の一例である。さらに、ダイヤル５１２２は、ユーザーの操作に応じて変位する操作子の一例である。この例では、単一のダイヤル５１２２の操作によって、歌唱表現に係る複数のパラメーターが同時に調整される。リリース基準の歌唱表現の程度も、同様にウインドウ５１３に表示されるダイヤル５１３２を介して調整される。歌唱表現に係る複数のパラメーターは、例えば、各スペクトル特徴量のモーフィング量の最大値である。モーフィング量の最大値とは、各ノートにおいて時間の経過に伴ってモーフィング量が変化する際の最大値である。図２の例では、アタック基準の歌唱表現はノートの始点においてモーフィング量が最大値をとり、リリース基準の歌唱表現はノートの終点においてモーフィング量が最大値をとっている。ＵＩ部３０は、ダイヤル５１２２の基準位置からの回転角に応じてモーフィング量の最大値を変化させるための情報（例えばテーブル）を有している。
【００８９】
図２４は、ダイヤル５１２２の回転角とモーフィング量の最大値とを対応させるテーブルを例示する図である。このテーブルは、各歌唱表現について定義される。複数のスペクトル特徴量（例えば、振幅スペクトル包絡Ｈ（ｆ）、振幅スペクトル包絡概形Ｇ（ｆ）、位相スペクトル包絡Ｐ（ｆ）、振幅スペクトル包絡の時間的微細変動Ｉ（ｆ）、位相スペクトル包絡の時間的微細変動Ｑ（ｆ）、および基本周波数Ｆ０の６つ）の各々について、モーフィング量の最大値がダイヤル５１２２の回転角と対応付けて定義される。例えば、回転角が３０°のとき、振幅スペクトル包絡Ｈ（ｆ）のモーフィング量の最大値はゼロであり、振幅スペクトル包絡概形Ｇ（ｆ）のモーフィング量の最大値は０．３である。この例では回転角の離散的な値に対してのみ各パラメーターの値が定義されているが、テーブルで定義されていない回転角に対しては補間により各パラメーターの値が特定される。
【００９０】
ＵＩ部３０は、ユーザーの操作に応じてダイヤル５１２２の回転角を検知する。ＵＩ部３０は、検知した回転角に対応する６つのモーフィング量の最大値を、図２４のテーブルを参照して特定する。ＵＩ部３０は、特定された６つのモーフィング量の最大値を、合成器２０に出力する。なお、歌唱表現に係るパラメーターはモーフィング量の最大値に限定されない。モーフィング量の増加率または減少率等、他のパラメーターが調整されてもよい。なお、ユーザーは、どの音符のどの歌唱表現部分を編集対象とするかを、楽譜表示領域５１１上で選択する。このとき、ＵＩ部３０は、選択された歌唱表現に対応するテーブルを、ダイヤル５１２２の操作に応じて参照されるテーブルとして設定する。
【００９１】
図２５は、歌唱表現に係るパラメーターを編集するためのＵＩの別の例を示す図である。この例では、楽譜表示領域５１１において選択されたノートに対する歌唱表現のスペクトル特徴量に適用されるモーフィング量の時間変化を示すグラフの形状が編集される。編集の対象となる歌唱表現は、アイコン６１６により指定される。アイコン６１１は、アタック基準の歌唱表現においてモーフィング量が最大値をとる期間の始点を指定するための画像オブジェクトである。アイコン６１２は、アタック基準の歌唱表現においてモーフィング量が最大値をとる期間の終点を指定するための画像オブジェクトである。アイコン６１３は、アタック基準の歌唱表現におけるモーフィング量の最大値を指定するための画像オブジェクトである。ユーザーがドラッグ＆ドロップ等の操作によりアイコン６１１〜６１３を移動すると、モーフィング量が最大値をとる期間と、モーフィング量の最大値とが変化する。ダイヤル６１４は、歌唱表現の適用開始からモーフィング量が最大に達するまでの曲線の形状（モーフィング量の増加率のプロファイル）を調整するための画像オブジェクトである。ダイヤル６１４を操作すると、歌唱表現の適用開始からモーフィング量が最大に達するまでの曲線が、例えば下に凸なプロファイルから線形なプロファイルを経て、上に凸なプロファイルに変化する。ダイヤル６１５は、モーフィング量の最大期間の終点から歌唱表現の適用終了までの曲線の形状（モーフィング量の減少率のプロファイル）を調整するための画像オブジェクトである。ユーザーがダイヤル６１４および６１５を操作すると、ノート内の時間経過に伴うモーフィング量の変化曲線の形状が変化する。ＵＩ部３０は、図２５のグラフにより特定されるパラメーターを、その歌唱表現のタイミングで合成器２０に出力する。合成器２０は、これらのパラメーターを用いて制御された表現素片が加味された合成音声を生成する。「パラメーターを用いて制御された表現素片が加味された合成音声」とは、例えば図１８の処理により処理された素片が加算された合成音声をいう。既に説明したようにこの加算は時間領域で行われてもよいし周波数領域で行われてもよい。ＵＩ部３０の音出力部３３は、生成された合成音声を出力する。
【００９２】
３．変形例
本発明は上述の実施形態に限定されるものではなく、種々の変形実施が可能である。以下、変形例をいくつか説明する。以下の変形例のうち２つ以上のものが組み合わせて用いられてもよい。
【００９３】
（１）表現が付与される対象は歌唱音声に限定されず、歌っていない音声であってもよい。すなわち歌唱表現は音声表現であってもよい。また、音声表現が付与される対象となる音はコンピュータ装置により合成された合成音に限定されず、実際の人間の合成音声であってもよい。さらに、歌唱表現が付与される対象は、人間の声を基にしたものではない音であってもよい。
【００９４】
（２）音声合成装置１の機能構成は実施形態で例示したものに限定されない。実施形態で例示した機能の一部は省略されてもよい。例えば、音声合成装置１は、タイミング計算部２１、時間伸縮マッピング部２２、短時間スペクトル操作部２３のうち少なくとも一部の機能が省略されてもよい。
【００９５】
（３）音声合成装置１のハードウェア構成は実施形態で例示したものに限定されない。要求される機能を実現できるものであれば、音声合成装置１はどのようなハードウェア構成を有していてもよい。例えば、音声合成装置１は、ネットワーク上のサーバ装置と協働するクライアント装置であってもよい。すなわち、音声合成装置１としての機能は、ネットワーク上のサーバ装置およびローカルのクライアント装置に分散されてもよい。
【００９６】
（４）ＣＰＵ１０１等により実行されるプログラムは、光ディスク、磁気ディスク、半導体メモリーなどの記憶媒体により提供されてもよいし、インターネット等の通信回線を介してダウンロードされてもよい。
【００９７】
（５）以上に例示した具体的な形態から把握される本発明の好適な態様を以下に例示する。
【００９８】
本発明の好適な態様（第１態様）に係る音声合成方法は、合成音声の一部の期間における合成スペクトルの時系列を、音声表現の振幅スペクトル包絡概形の時系列に基づいて変更することにより、前記音声表現が付与された変更スペクトルの時系列を得る変更ステップと、前記変更スペクトルの時系列に基づいて、前記音声表現が付与された音声サンプルの時系列を合成する合成ステップとを含む。
【００９９】
第１態様の好適例（第２態様）において、前記変更ステップでは、前記音声表現の振幅スペクトル包絡概形に基づくモーフィングにより前記合成スペクトルの振幅スペクトル包絡概形を変更する。
【０１００】
第１態様または第２態様の好適例（第３態様）において、前記変更ステップでは、前記音声表現の振幅スペクトル包絡概形の時系列と前記振幅スペクトル包絡の時系列とに基づいて、前記合成スペクトルの時系列を変更する。
【０１０１】
第１態様から第３態様の何れかの好適例（第４態様）において、前記変更ステップでは、時間軸上における前記合成音声の特徴点と前記音声表現について設定された表現基準時刻とが一致するように前記音声表現の振幅スペクトル包絡概形の時系列を配置し、前記配置された振幅スペクトル包絡概形の時系列に基づいて、前記合成スペクトルの時系列を変更する。
【０１０２】
第４態様の好適例（第５態様）において、前記合成音声の特徴点は、当該合成音声の母音開始時刻である。また、第４態様の他の好適例（第６態様）において、前記合成音声の特徴点は、当該合成音声の母音終了時刻または当該合成音声の発音終了時刻である。
【０１０３】
第１態様の好適例（第７態様）において、前記変更ステップでは、前記合成音声における前記一部の期間の時間長に一致するように、前記音声表現の振幅スペクトル包絡概形の時系列を時間軸上で伸長または収縮し、前記伸長または収縮された振幅スペクトル包絡概形の時系列に基づいて、前記合成スペクトルの時系列を変更する。
【０１０４】
第１態様の好適例（第８態様）において、前記変更ステップでは、前記音声表現の音高の時系列を、前記合成音声の前記一部の期間における音高と前記音声表現の音高の代表値との音高差に基づいてシフトし、前記シフトされた音高の時系列と前記音声表現の振幅スペクトル包絡概形の時系列とに基づいて、前記合成スペクトルの時系列を変更する。
【０１０５】
第１態様の好適例（第９態様）において、前記変更ステップでは、前記音声表現における振幅スペクトル包絡および位相スペクトル包絡の少なくとも一方の時系列に基づいて前記合成スペクトルの時系列を変更する。
【０１０６】
（６）本発明の第１観点に係る音声合成方法は、以下の手順で構成される。
手順１：音声の第１スペクトル包絡の時系列と第１基本周波数の時系列とを受け取る。
手順２：音声表現が付与された音声の第２スペクトル包絡の時系列と第２基本周波数の時系列とを受け取る。
手順３：基本周波数が所定の範囲内に安定するサステイン区間において第２基本周波数が第１基本周波数に一致するように第２基本周波数の時系列を周波数方向にシフトする。
手順４：第１スペクトル包絡の時系列と第２スペクトル包絡の時系列とを合成して第３スペクトル包絡の時系列を得る。
手順５：第１基本周波数の時系列とシフトされた第２基本周波数の時系列とを合成して第３基本周波数の時系列を得る。
手順６：第３スペクトル包絡と第３基本周波数とに基づいて音声信号を合成する。
【０１０７】
なお、手順１は、手順２の前または手順３の後であってもよいし、手順２と手順３との間であってもよい。また、「第１スペクトル包絡」の具体例は、振幅スペクトル包絡Ｈｖ（ｆ）、振幅スペクトル包絡概形Ｇｖ（ｆ）または位相スペクトル包絡Ｐｖ（ｆ）であり、「第１基本周波数」の具体例は基本周波数Ｆ０ｖである。「第２スペクトル包絡」の具体例は、振幅スペクトル包絡Ｈｐ（ｆ）または振幅スペクトル包絡概形Ｇｐ（ｆ）であり、「第２基本周波数」の具体例は基本周波数Ｆ０ｐである。「第３スペクトル包絡」の具体例は、振幅スペクトル包絡Ｈｖｐ（ｆ）または振幅スペクトル包絡概形Ｇｖｐ（ｆ）であり、「第３基本周波数」の具体例は基本周波数Ｆ０ｖｐである。
【０１０８】
（７）前述の通り、振幅スペクトル包絡は音韻または発声者の知覚に寄与するのに対し、振幅スペクトル包絡概形は音韻および発声者に依存しない、という傾向がある。以上の傾向を前提とすると、合成音声の振幅スペクトル包絡Ｈｖ（ｆ）の変形に、表現素片の振幅スペクトル包絡Ｈｐ（ｆ）と振幅スペクトル包絡概形Ｇｐ（ｆ）の何れを使用するかを適宜に切替えてもよい。具体的には、合成音声と表現素片とで音韻または発音者が実質的に同一である場合には、振幅スペクトル包絡Ｈｖ（ｆ）の変形に振幅スペクトル包絡Ｈｐ（ｆ）を利用し、合成音声と表現素片とで音韻または発音者が相違する場合には、振幅スペクトル包絡Ｈｖ（ｆ）の変形に振幅スペクトル包絡概形Ｇｐ（ｆ）を利用する構成が好適である。
【０１０９】
以上に説明した観点（以下「第２観点」という）に係る音声合成方法は、以下の手順で構成される。
手順１：第１音声の第１スペクトル包絡の時系列を受け取る。
手順２：音声表現が付与された第２音声の第２スペクトル包絡の時系列を受け取る。
手順３：第１音声と第２音声とが所定の条件を満たすか否かを判定する。
手順４：所定の条件を満たす場合、第１スペクトル包絡の時系列を第２スペクトル包絡の時系列に基づいて変形することで第３スペクトル包絡の時系列を得る一方、所定の条件を満たさない場合、第１スペクトル包絡の時系列を第２スペクトル包絡の概形の時系列に基づいて変形することで第３スペクトル包絡の時系列を得る。
手順５：得られた第３スペクトル包絡の時系列に基づいて音声を合成する。
【０１１０】
なお、第２観点において、「第１スペクトル包絡」の具体例は、振幅スペクトル包絡Ｈｖ（ｆ）である。「第２スペクトル包絡」の具体例は振幅スペクトル包絡Ｈｐ（ｆ）であり、「第２スペクトル包絡の概形」の具体例は振幅スペクトル包絡概形Ｇｐ（ｆ）である。また、「第３スペクトル包絡」の具体例は振幅スペクトル包絡Ｈｖｐ（ｆ）である。
【０１１１】
第２観点の好適例において、所定の条件を満たすか否かの判定では、第１音声の発声者と第２音声の発声者とが実質的に同一である場合に、所定の条件を満たすと判定する。第２観点の他の好適例において、所定の条件を満たすか否かの判定では、第１音声の音韻と第２音声の音韻とが実質的に同一である場合に、所定の条件を満たすと判定する。
【０１１２】
（８）本発明の第３観点に係る音声合成方法は、以下の手順で構成される。
手順１：第１スペクトル包絡と第１基本周波数とを取得する。
手順２：第１スペクトル包絡と第１基本周波数とに基づいて時間領域の第１音声信号を合成する。
手順３：音声表現が付与された音声のスペクトル包絡の微細変動を、音声に同期したフレーム毎に受け取る。
手順４：前記フレーム毎に、第１スペクトル包絡と第１基本周波数と前記微細変動とに基づいて時間領域の第２音声信号を合成する。
手順５：第１音声信号と第２音声信号とを第１変更量に応じて混合して混合音声信号を出力する。
【０１１３】
「第１スペクトル包絡」は、例えば、図１９の特徴量合成部２４１１Ａが生成する振幅スペクトル包絡Ｈｖｐ（ｆ）または振幅スペクトル包絡概形Ｇｖｐ（ｆ）であり、「第１基本周波数」は、例えば図１９の特徴量合成部２４１１Ａが生成する基本周波数Ｆ０ｖｐである。「時間領域の第１音声信号」は、例えば、図１９の歌唱合成部２４１５からの出力信号（具体的には合成音声を表す時間領域の音声信号）である。「微細変動」は、例えば図１９における振幅スペクトル包絡の時間的微細変動Ｉｐ（ｆ）および／または位相スペクトル包絡の時間的微細変動Ｑｐ（ｆ）である。「時間領域の第２音声信号」は、例えば図１９の重畳加算部２４１４からの出力信号（微細変動が付与された時間領域の音声信号）である。「第１変更量」は、例えば図１９における係数ａまたは係数（１−ａ）であり、「混合音声信号」は、例えば図１９における加算部２４１８からの出力信号である。
【０１１４】
第３観点の好適例において、微細変動は、音声に同期したフレームを使用した周波数分析により、前記音声表現が付与された音声から抽出される。
【０１１５】
第３観点の好適例において、手順１では、音声の第２スペクトル包絡と音声表現が付与された音声の第３スペクトル包絡とを、第２変更量に応じて合成（モーフィング）することで、第１スペクトル包絡を取得する。なお、「第２スペクトル包絡」は、例えば振幅スペクトル包絡Ｈｖ（ｆ）または振幅スペクトル包絡概形Ｇｖ（ｆ）であり、「第３スペクトル包絡」は、例えば振幅スペクトル包絡Ｈｐ（ｆ）または振幅スペクトル包絡概形Ｇｐ（ｆ）である。第２変更量は、例えば前述の数式（１）における係数ａＨまたは係数ａＧである。
【０１１６】
第３観点の好適例において、手順１では、音声の第２基本周波数と音声表現が付与された音声の第３基本周波数とを、第３変更量に応じて合成することで、第１基本周波数を取得する。なお、「第２基本周波数」は、例えば基本周波数Ｆ０ｖであり、「第３基本周波数」は、例えば基本周波数Ｆ０ｐである。
【０１１７】
第３観点の好適例において、手順５では、第１音声信号と第２音声信号とが、各々のピッチマークが時間軸上で略一致する状態で混合される。「ピッチマーク」とは、時間領域の音声信号の波形における形状の時間軸上の特徴点である。例えば、波形の山部および／または谷部が「ピッチマーク」の具体例である。
【符号の説明】
【０１１８】
１…音声合成装置、１０…データベース、２０…合成器、２１…タイミング計算部、２２…時間伸縮マッピング部、２３…短時間スペクトル操作部、２４…合成部、２５…特定部、２６…取得部、３０…ＵＩ部、３１…表示部、３２…受付部、３３…音出力部、１０１…ＣＰＵ、１０２…メモリー、１０３…ストレージ、１０４…入出力ＩＦ、１０５…ディスプレイ、１０６…入力装置、９１１…楽譜表示領域、９１２…ウインドウ、９１３…ウインドウ、２４０１…スペクトル生成部、２４０２…逆フーリエ変換部、２４０３…合成窓適用部、２４０４…重畳加算部、２４１１…スペクトル生成部、２４１２…逆フーリエ変換部、２４１３…合成窓適用部、２４１４…重畳加算部、２４１５…歌唱合成部、２４１６…乗算部、２４１７…乗算部、２４１８…加算部。
【図１】
0006791258.tif 000002
【図２】
0006791258.tif 000003
【図３】
0006791258.tif 000004
【図４】
0006791258.tif 000005
【図５】
0006791258.tif 000006
【図６】
0006791258.tif 000007
【図７】
0006791258.tif 000008
【図８】
0006791258.tif 000009
【図９】
0006791258.tif 000010
【図１０】
0006791258.tif 000011
【図１１】
0006791258.tif 000012
【図１２Ａ】
0006791258.tif 000013
【図１２Ｂ】
0006791258.tif 000014
【図１２Ｃ】
0006791258.tif 000015
【図１２Ｄ】
0006791258.tif 000016
【図１３Ａ】
0006791258.tif 000017
【図１３Ｂ】
0006791258.tif 000018
【図１３Ｃ】
0006791258.tif 000019
【図１３Ｄ】
0006791258.tif 000020
【図１４】
0006791258.tif 000021
【図１５】
0006791258.tif 000022
【図１６】
0006791258.tif 000023
【図１７】
0006791258.tif 000024
【図１８】
0006791258.tif 000025
【図１９】
0006791258.tif 000026
【図２０】
0006791258.tif 000027
【図２１】
0006791258.tif 000028
【図２２】
0006791258.tif 000029
【図２３】
0006791258.tif 000030
【図２４】
0006791258.tif 000031
【図２５】
0006791258.tif 000032