(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0019】
以下、本発明の実施形態を図面を参照して説明する。
【0020】
実施形態1.
図1は、本発明の第1の実施形態の素片情報生成装置の例を示すブロック図である。本実施形態の素片情報生成装置は、素片情報記憶部10と、属性情報記憶部11と、自然音声記憶部12と、分析フレーム周期記憶部20と、波形切り出し部14と、特徴パラメータ抽出部15と、時間領域波形変換部22とを備える。
【0021】
自然音声記憶部12は、素片情報を生成する基となる基礎音声(自然音声波形)を表す情報を記憶する。
【0022】
素片情報は、音声素片を表す音声素片情報と、各音声素片の属性を表す属性情報とを含む。ここで、音声素片は、音声を合成する音声合成処理の基となる基礎音声(人間が発した音声(自然音声))の一部であり、基礎音声を音声合成単位毎に分割することにより生成される。
【0023】
本例では、音声素片情報は、音声素片から抽出され、かつ当該音声素片の特徴を表す特徴パラメータの時系列データを含む。また、音声合成単位は、音節である。なお、音声合成単位は、以下の参考文献1に示されているとおり、音素、CV(Vは母音を表し、Cは子音を表す。)等の半音節、CVC、VCV等であってもよい。
【0024】
[参考文献1]
阿部匡伸、「音声合成のための合成単位の基礎」、社団法人電子情報通信学会、電子情報通信学会技術研究報告、Vol.100、No.392、pp.35−42、2000年
【0025】
また、属性情報は、各音声素片の基礎音声における環境(音素環境)、および、韻律情報(基本周波数(ピッチ周波数)、振幅、および、継続時間長等)を含む。
【0026】
素片情報の例をより具体的に示す。素片情報は、音声素片情報と、属性情報と、波形生成パラメータ生成条件とを含む。なお、ここでは、音声合成単位が「音節」である場合を例にする。
【0027】
音声素片情報は、合成音声波形を生成するためのパラメータ(波形生成パラメータ)と称することもできる。音声素片情報の例として、例えば、後述のピッチ波形(時間領域波形変換部22が生成した波形)の時系列、ケプストラムの時系列、あるいは、波形そのもの等(時間長は、単位長(音節長)である。)が挙げられる。
【0028】
属性情報として、例えば、韻律情報や言語情報が用いられる。韻律情報の例として、ピッチ周波数(先頭・最終・平均ピッチ周波数等)、継続時間長、パワー等が挙げられる。また、言語情報として、読み(例えば、日本語の「おはよう(o ha yo u )」における「は(ha)」等)、音節列、音素列、アクセント位置からの位置の情報、アクセント句区切りからの位置の情報、形態素の品詞等が挙げられる。音節列は、先行音節(例えば、上記の「おはよう(o ha yo u )」における「お(o )」)、先行音節からさらに前に続く音節や、後続音節(例えば、上記の「おはよう(o ha yo u )」における「よ(yo)」)、後続音節からさらに後に続く音節の音節列である。音素列は、先行音素(例えば、上記の「おはよう(o ha yo u )」における「o 」)、先行音素からさらに前に続く音素や、後続音素(例えば、上記の「おはよう(o ha yo u )」における「y 」)、後続音素からさらに後に続く音素の音素列である。アクセント位置からの位置の情報は、例えば、「アクセント位置から何番目の音節であるか」を表す情報である。アクセント句区切りからの位置の情報は、例えば、「アクセント句区切りから何番目の音節であるか」を表す情報である。
【0029】
波形生成パラメータ生成条件として、パラメータ種別、パラメータの次元数(例えば、10次元、24次元等)、分析フレーム長、分析フレーム周期等が挙げられる。パラメータ種別の例として、例えば、ケプストラム、LPC(Linear Predictive Cefficient)、MFCC等が挙げられる。
【0030】
属性情報記憶部11は、自然音声記憶部12に記憶されている基礎音声に対応する文字列(収録文)を表す情報を含む言語情報と、基礎音声の韻律情報とを属性情報として記憶する。言語情報は、例えば、漢字かな混じり文を表す情報である。さらに、言語情報は、読み・音節列・音素列・アクセント位置・アクセント句区切り・形態素の品詞等の情報を含んでいてもよい。また、韻律情報は、ピッチ周波数・振幅、短時間パワーの時系列、および、自然音声に含まれる各音節・音素・ポーズの継続時間長等を含む。
【0031】
分析フレーム周期記憶部20は、波形切り出し部14が自然音声波形から波形を切り出す時間周期(すなわち、分析フレーム周期)を記憶する。分析フレーム周期記憶部20は、自然音声のピッチ周波数に依存せずに定められた分析フレーム周期を記憶する。なお、自然音声のピッチ周波数に依存せずに定められた分析フレーム周期は、自然音声のピッチ周波数とは独立に定められた分析フレーム周期と言うこともできる。
【0032】
基本的には、分析フレーム周期の値を小さくすれば、合成音声の音質は向上し、素片情報のデータ量は多くなる。但し、分析フレーム周期を小さくすれば必ず音質が改善するとは限らない。分析フレーム周期低下に伴う音質改善は、人間の声の高さ、より具体的には自然音声のピッチ周波数の上限値に制限される。例えば、大人の女性の声のピッチ周波数は1000Hzを超えることがほぼ無いため、女性アナウンサの声の場合、分析フレーム周期を1ミリ秒(=1/1000秒)以下に設定しても、合成音声の音質は殆ど向上しない。男性アナウンサの声の場合であれば、分析フレーム周期を2ミリ秒以下にしても合成音声の音質向上を見込むことは困難である。なお、歌声や子供の声を合成する場合は、上記の分析フレーム周期よりも更に小さな値を採用すべきである。また、分析フレーム周期を大きくし過ぎると、合成音声の品質に深刻な影響を与える。例えば、話し声に含まれる音素の時間長は、長いものでも5000ミリ秒を超えることは無い。従って、素片情報のデータ量を削減する目的で5000ミリ秒を超える分析フレーム周期を設定すべきではない。
【0033】
波形切り出し部14は、分析フレーム周期記憶部20に記憶された分析フレーム周期で、自然音声記憶部12に記憶されている自然音声から音声波形を切り出し、切り出した音声波形の時系列を特徴パラメータ抽出部15へ伝達する。切り出す波形の時間長は分析フレーム長と呼ばれ、予め設定された値が用いられる。分析フレーム長として、例えば、10ミリ秒から50ミリ秒の間の値を採用すればよい。そして、分析フレーム長として、常に同じ値(例えば20ミリ秒)を用いてもよい。切り出し対象の自然音声波形の長さは様々であるが、短くても数秒程度はあるので、分析フレーム長の数百倍以上となることが殆どである。例えば、分析フレーム長をNとし、自然音声波形をs(t)とし(但し、t=0,1,・・・,N−1)、分析フレーム周期をTとする。また、自然音声波形長をLとする。長い自然音声波形から短い波形を切り出すので、L>>Nという関係が成立する。このとき、第nフレーム目の切り出し波形をx
n(t)とすると、x
n(t)は、以下の式(1)で表される。
【0035】
但し、n=0,1,・・・,(L/N)−1である。また、L/Nが整数でない場合は、L/Nの小数点以下を切り捨て、(L/N)−1を整数とする。
【0036】
特徴パラメータ抽出部15は、波形切り出し部14から供給された音声波形から、その音声波形の特徴パラメータを抽出し、時間領域波形変換部22へ伝達する。波形切り出し部14から特徴パラメータ抽出部15へは、予め設定された分析フレーム長を有する切り出し波形が、分析フレーム周期の時間間隔で複数供給される。特徴パラメータ抽出部15は、供給された複数の切り出し波形から、逐一、特徴パラメータを抽出する。特徴パラメータの例として、例えば、パワースペクトル、線形予測係数、ケプストラム、メルケプストラム、LSP、STRAIGHTスペクトル等が挙げられる。切り出された音声波形から、これらの特徴パラメータを抽出する方法については、以下の参考文献2,3,4に記載されている。
【0037】
[参考文献2]
古井貞熙著、「音声情報処理」、森北出版株式会社、pp.16-33、1998年
[参考文献3]
斎藤収三、中田和男著、「音声情報処理の基礎」、オーム社、pp.14-31、pp.73-77、1981年
[参考文献4]
H.Kawahara, "Speech representation and transformation using adaptive interpolation of weighted spectrum: vocoder revisited", IEEE ICASSP-97, vol.2, pp.1303-1306, 1997年
【0038】
ここでは、波形切り出し部14で切り出された音声波形から特徴パラメータとしてケプストラムを抽出する場合を例にして説明する。
【0039】
第nフレームの切り出し波形をx
n(t)とする。但し、t=0,1,・・・,N−1である。このとき、ケプストラムをc
n(k)とすると、c
n(k)は、以下の式(2)で表され、特徴パラメータ抽出部15は、式(2)によりケプストラムc
n(k)を求めればよい。
【0041】
ただし、k=0,1,・・・,K−1であり、Kは、特徴パラメータの長さである。すなわち、ケプストラムは、切り出し波形に対してフーリエ変換を行い、その絶対値(振幅スペクトルとも呼ばれる。)の対数を計算し、逆フーリエ変換を行うことによって得られる。特徴パラメータの長さKは、Nよりも小さい値としてもよい。
【0042】
時間領域波形変換部22は、特徴パラメータ抽出部15が抽出した特徴パラメータの時系列をフレーム単位で時間領域波形に逐一変換する。変換された時間領域波形は、合成音声の波形生成パラメータとなる。本明細書では、自然音声波形や合成音声波形と区別する目的で、時間領域波形変換部22が生成した波形をピッチ波形と呼ぶ。特徴パラメータ抽出部15が抽出した特徴パラメータの時系列を時間領域波形に変換する方法は、特徴パラメータの性質に応じて異なる。例えば、サブバンドパワースペクトルの場合には、逆フーリエ変換を利用する。特徴パラメータ抽出部15の説明で例に挙げた各種特徴パラメータ(パワースペクトル、線形予測係数、ケプストラム、メルケプストラム、LSP、STRAIGHTスペクトル等)から時間領域波形への変換方法は、前述の参考文献2,3,4に記載されている。ここでは、ケプストラムから時間領域波形を求める方法を例にして説明する。
【0043】
第nフレームのケプストラムをc
n(k)とする。但し、k=0,1,・・・,K−1である。また、時間領域波形(すなわち、ピッチ波形)をy
n(t)とする。但し、t=0,1,・・・,N−1である。y
n(t)は、以下の式(3)で表され、時間領域波形変換部22は、式(3)によりy
n(t)を求めればよい。
【0045】
すなわち、ピッチ波形は、ケプストラムをフーリエ変換し、更に逆フーリエ変換を行うことによって得られる。
【0046】
素片情報記憶部10は、属性情報記憶部11から供給された属性情報と、時間領域波形変換部22から供給されたピッチ波形と、分析フレーム周期記憶部20に記憶された分析フレーム周期とを含む素片情報を記憶する。
【0047】
素片情報記憶部10に記憶された素片情報は、音声合成装置(
図1において図示せず。)における音声合成処理に利用される。すなわち、素片情報記憶部10に素片情報が記憶された後、音声合成装置は、音声合成処理の対象となるテキストを受け付けると、素片情報記憶部10に記憶されている素片情報に基づいて、受け付けたテキストを表す音声を合成するための音声合成処理を行う。
【0048】
波形切り出し部14、特徴パラメータ抽出部15および時間領域波形変換部22は、例えば、記憶装置を備え、素片情報生成プログラムに従って動作するコンピュータのCPUによって実現される。この場合、例えば、コンピュータのプログラム記憶装置(図示略)が素片情報生成プログラムを記憶し、CPUがそのプログラムを読み込んで、そのプログラムに従って、波形切り出し部14、特徴パラメータ抽出部15および時間領域波形変換部22として動作すればよい。また、波形切り出し部14、特徴パラメータ抽出部15および時間領域波形変換部22が別々のハードウェアで実現されていてもよい。
【0049】
図2は、本発明の第1の実施形態の処理経過の例を示すフローチャートである。第1の実施形態では、まず、波形切り出し部14が、自然音声のピッチ周波数に依存せずに定められた分析フレーム周期で、自然音声記憶部12に記憶されている自然音声から音声波形を切り出す(ステップS1)。この分析フレーム周期は、分析フレーム周期記憶部20に予め記憶され、波形切り出し部14は分析フレーム周期記憶部20に記憶された分析フレーム周期で音声波形を切り出せばよい。次に、特徴パラメータ抽出部15が、音声波形から特徴パラメータを抽出する(ステップS2)。そして、時間領域波形変換部22は、特徴パラメータの時系列をフレーム単位でピッチ波形に変換する(ステップS3)。そして、素片情報記憶部10が、属性情報記憶部11から供給される属性情報と、時間領域波形変換部22から供給されるピッチ波形と、分析フレーム周期記憶部20に記憶される分析フレーム周期とを含む素片情報を記憶する(ステップS4)。素片情報記憶部10に記憶された素片情報は、音声合成装置における音声合成処理に用いられる。
【0050】
本実施の形態によれば、素片情報を生成する際に一定の分析フレーム周期でピッチ波形を生成する。このため、合成音声を生成するときに、非特許文献1に記載された技術と同様に少ない計算量で波形を生成することができる。また、本実施の形態において用いる分析フレーム周期は、自然音声のピッチ周波数に依存せずに定められている。従って、素片作成元である自然音声のピッチ周波数が低い区間の素片を用いて音声合成を行う場合に、非特許文献1に記載された技術よりも合成音声の音質低下を防止できる。また、非特許文献1に記載された技術と比較して、合成音声の音質を損なうことなく、ピッチ周波数が高い区間の素片情報のデータ量を削減できる。
【0051】
実施形態2.
本発明の第2の実施形態の素片情報生成装置は、音声素片の属性情報に応じて分析フレーム周期を制御する。
【0052】
図3は、本発明の第2の実施形態の素片情報生成装置の例を示すブロック図である。第1の実施形態と同様の要素については、
図1と同一の符号を付し、詳細な説明を省略する。本実施形態の素片情報生成装置は、素片情報記憶部10と、属性情報記憶部11と、自然音声記憶部12と、分析フレーム周期制御部30と、波形切り出し部14と、特徴パラメータ抽出部15と、時間領域波形変換部22とを備える。すなわち、本実施形態の素片情報生成装置は、第1の実施形態における分析フレーム周期記憶部20に代えて、分析フレーム周期制御部30を備える。
【0053】
分析フレーム周期制御部30は、属性情報記憶部11から供給された属性情報に基づいて、適切な分析フレーム周期を算出し、波形切り出し部12に伝達する。分析フレーム周期制御部30は、分析フレーム周期の計算に、属性情報に含まれる言語情報や韻律情報を利用する。言語情報の中の音素や音節の種別を利用する場合は、該当する種別の音声スペクトルの形状変化速度に応じて、フレーム周期を切り替える方法が有効である。例えば、分析フレーム周期制御部30は、分析対象区間が長母音の音節であれば、スペクトル形状の変化が小さい区間なので、分析フレーム周期を長くする。これにより、合成音声の音質を損なわずに該当区間のフレーム数を削減できる。また、分析対象区間が有声子音区間であれば、スペクトル形状の変化が大きい区間なので、分析フレーム周期を短くする。これにより、該当区間の素片を利用したときの合成音声の音質が向上する。
【0054】
すなわち、分析フレーム周期制御部30は、素片の属性情報に基づいて、スペクトル形状変化度が大きいと推定される区間では分析フレーム周期を短くし、スペクトル形状変化度が小さいと推定される区間では分析フレーム周期を長くする。スペクトル形状変化度は、スペクトル形状の変化の度合である。
【0055】
波形切り出し部14は、分析フレーム周期制御部30に制御された分析フレーム周期で、自然音声から音声波形を切り出す。他の点に関しては、第1の実施形態と同様である。
【0056】
分析フレーム周期制御部30、波形切り出し部14、特徴パラメータ抽出部15および時間領域波形変換部22は、例えば、記憶装置を備え、素片情報生成プログラムに従って動作するコンピュータのCPUによって実現される。この場合、CPUが、素片情報生成プログラムに従って、分析フレーム周期制御部30、波形切り出し部14、特徴パラメータ抽出部15および時間領域波形変換部22として動作すればよい。また、分析フレーム周期制御部30、波形切り出し部14、特徴パラメータ抽出部15および時間領域波形変換部22が別々のハードウェアで実現されていてもよい。
【0057】
本実施形態では、分析フレーム周期制御部30が、スペクトル形状変化度が大きいと推定される区間では分析フレーム周期を短くし、スペクトル形状変化度が小さいと推定される区間では分析フレーム周期を長くする。この結果、素片作成元である自然音声のピッチ周波数が低い区間の素片を用いて音声合成する場合に、合成音声の音質低下を防止でき、合成音声の音質を損なうことなく、ピッチ周波数が高い区間の素片情報のデータ量を削減できるという効果を、第1の実施形態より大きくすることができる。
【0058】
第2の実施形態では、分析フレーム周期制御部30が属性情報に基づいて分析フレーム周期を制御する。このとき、分析フレーム周期制御部30は、自然音声のピッチ周波数は用いていない。従って、第2の実施形態における分析フレーム周期も、第1の実施形態と同様に、ピッチ周波数に依存していない。
【0059】
実施形態3.
本発明の第3の実施形態の素片情報生成装置は、自然音声を分析してスペクトル形状変化度を計算し、そのスペクトル形状変化度に応じて分析フレーム周期を制御する。
【0060】
図4は、本発明の第3の実施形態の素片情報生成装置の例を示すブロック図である。第1の実施形態や第2の実施形態と同様の要素については、
図1や
図3と同一の符号を付し、詳細な説明を省略する。本実施形態の素片情報生成装置は、素片情報記憶部10と、属性情報記憶部11と、自然音声記憶部12と、スペクトル形状変化度推定部41と、分析フレーム周期制御部40と、波形切り出し部14と、特徴パラメータ抽出部15と、時間領域波形変換部22とを備える。すなわち、本実施形態の素片情報生成装置は、第1の実施形態における分析フレーム周期記憶部20に代えて、スペクトル形状変化度推定部41および分析フレーム周期制御部40を備える。
【0061】
スペクトル形状変化度推定部41は、自然音声記憶部12から供給された自然音声のスペクトル形状変化度を推定し、分析フレーム周期制御部40に伝達する。
【0062】
前述の第2の実施形態では、素片の属性情報に基づいて、スペクトル形状変化度が大きいと推定される区間や、スペクトル形状変化度が小さいと推定される区間を判定して、分析フレーム周期を制御する。これに対し、第3の実施形態では、スペクトル形状変化度推定部41が、自然音声を直接分析してスペクトル形状変化度を推定する。
【0063】
スペクトル形状変化度推定部41は、例えば、スペクトル形状を表す各種パラメータを求め、そのパラメータの単位時間あたりの変化量をスペクトル形状変化度とすればよい。第nフレーム目におけるスペクトル形状を表すK次元パラメータをp
nとし、p
nを以下の式(4)で表すとする。
【0065】
このとき、第nフレーム目におけるスペクトル形状変化度をΔp
nとすると、Δp
nは、例えば、以下の式(5)で計算することができる。
【0067】
式(5)は、ベクトルで表されるp
nの次数ごと(換言すれば、要素ごと)に、第nフレームと第n+1フレームとの差分を計算し、その二乗和をスペクトル形状変化度Δp
nとすることを意味する。
【0068】
また、以下の式(6)で計算したΔp
nを、スペクトル形状変化度としてもよい。
【0070】
式(6)は、ベクトルで表されるp
nの次数ごと(換言すれば、要素ごと)に、第nフレームと第n+1フレームとの差分の絶対値を計算し、その和をスペクトル形状変化度Δp
nとすることを意味する。
【0071】
スペクトル形状を表すパラメータとして、特徴パラメータ抽出部15が抽出する特徴パラメータと同様のパラメータを利用できる。例えば、スペクトル形状を表すパラメータとして、ケプストラムを利用できる。この場合、第1の実施形態で説明した特徴パラメータ抽出部15がケプストラムを抽出する方法と同様の方法で、スペクトル形状変化度推定部41は、自然音声波形からケプストラムを抽出すればよい。
【0072】
分析フレーム周期制御部40は、スペクトル形状変化度推定部41から供給されたスペクトル形状変化度に基づいて、適切な分析フレーム周期を求め、波形切り出し部14に伝達する。分析フレーム周期制御部40は、スペクトル形状変化度が小さい区間では、分析フレーム周期を長くする。より具体的には、分析フレーム周期制御部40は、スペクトル形状変化度が事前に定めた第1の閾値を下回った場合には、分析フレーム周期を通常時よりも大きい値に切り替える。一方、分析フレーム周期制御部40は、スペクトル形状変化度が大きい区間では、分析フレーム周期を短くする。より具体的には、分析フレーム周期制御部40は、スペクトル形状変化度が事前に定めた第2の閾値を上回った場合には、分析フレーム周期を通常時よりも小さい値に切り替える。ここで、第2の閾値は、第1の閾値よりも大きな値として定めておく。
【0073】
スペクトル形状変化度推定部41、分析フレーム周期制御部40、波形切り出し部14、特徴パラメータ抽出部15および時間領域波形変換部22は、例えば、記憶装置を備え、素片情報生成プログラムに従って動作するコンピュータのCPUによって実現される。この場合、CPUが、素片情報生成プログラムに従って、スペクトル形状変化度推定部41、分析フレーム周期制御部40、波形切り出し部14、特徴パラメータ抽出部15および時間領域波形変換部22として動作すればよい。また、スペクトル形状変化度推定部41、分析フレーム周期制御部40、波形切り出し部14、特徴パラメータ抽出部15および時間領域波形変換部22が別々のハードウェアで実現されていてもよい。
【0074】
本実施形態によれば、スペクトル形状変化度推定部41が、分析対象の自然音声波形を分析してスペクトル形状変化度を求める。そして、分析フレーム周期制御部40が、スペクトル形状変化度が大きい区間のフレーム周期を短くし、推定変化度が小さい区間のフレーム周期を長くする。従って、素片作成元である自然音声のピッチ周波数が低い区間の素片を用いて音声合成する場合に、合成音声の音質低下を防止でき、合成音声の音質を損なうことなく、ピッチ周波数が高い区間の素片情報のデータ量を削減できるという効果を、第1の実施形態より大きくすることができる。
【0075】
第3の実施形態では、分析フレーム周期制御部40が、スペクトル形状変化度に応じて分析フレーム周期を制御する。このとき、分析フレーム周期制御部40は、自然音声のピッチ周波数は用いていない。従って、第3の実施形態における分析フレーム周期も、第1の実施形態と同様に、ピッチ周波数に依存していない。
【0076】
実施形態4.
図5は、本発明の第4の実施形態の音声合成装置の例を示すブロック図である。本発明の第4の実施形態の音声合成装置は、第1の実施形態から第3の実施形態のうちのいずれかの素片情報生成装置の構成要素に加え、言語処理部1と、韻律生成部2と、素片選択部3と、波形生成部4とを備える。なお、
図5では、素片情報生成装置の構成要素のうち素片情報記憶部10のみを図示し、素片情報生成装置の他の構成要素については図示を省略している。
【0077】
なお、以下の説明において、素片情報記憶部10に記憶された素片情報を、単に、素片と記す場合がある。
【0078】
言語処理部1は、入力されたテキスト文の文字列を分析する。具体的には、言語処理部1は、形態素解析、構文解析、または読み付け等の分析を行う。なお、読み付けとは、漢字に読み仮名を付ける処理である。そして、言語処理部1は分析結果に基づいて、音素記号等の「読み」を表す記号列を表す情報と、形態素の品詞、活用、およびアクセント型等を表す情報とを言語解析処理結果として韻律生成部2と素片選択部3とに出力する。
【0079】
韻律生成部2は、言語処理部1によって出力された言語解析処理結果に基づいて、合成音声の韻律を生成し、生成した韻律を示す韻律情報を目標韻律情報として素片選択部3および波形生成部4に出力する。韻律生成部2は、例えば、以下の参考文献5に記載された方法で韻律を生成すればよい。
【0080】
[参考文献5]
石川泰、「音声合成のための韻律制御の基礎」、社団法人電子情報通信学会、電子情報通信学会技術研究報告、Vol.100、No.392、pp.27−34、2000年
【0081】
素片選択部3は、言語解析処理結果と目標韻律情報とに基づいて、素片情報記憶部10に記憶されている素片のうち、所定の要件を満たす素片を選択し、選択した素片とその素片の属性情報とを波形生成部4に出力する。素片選択部3が素片情報記憶部10に記憶されている素片のうち、所定の要件を満たす素片を選択する動作について説明する。
【0082】
素片選択部3は、入力された言語解析処理結果と目標韻律情報とに基づいて、合成音声の特徴を示す情報(以下、これを「目標素片環境」と呼ぶ。)を音声合成単位毎に生成する。
【0083】
目標素片環境は、その目標素片環境の生成対象の合成音声を構成する音素(以下、該当音素と記す。)、該当音素の前の音素である先行音素、該当音素の後の音素である後続音素、ストレスの有無、アクセント核からの距離、音声合成単位毎のピッチ周波数、パワー、音声合成単位の継続時間長、ケプストラム、MFCC(Mel Frequency Cepstral Coefficients )、およびこれらのΔ量等を含む情報である。なお、Δ量とは、単位時間あたりの変化量を意味する。
【0084】
次に、素片選択部3は、生成した目標素片環境に含まれる情報に基づいて、合成音声単位毎に、連続する音素に対応する素片を素片情報記憶部10からそれぞれ複数取得する。つまり、素片選択部3は、目標素片環境に含まれる情報に基づいて、該当音素、先行音素、および後続音素のそれぞれに対応する素片をそれぞれ複数取得する。取得された素片は、合成音声を生成するために用いられる素片の候補であり、以下、候補素片と記す。
【0085】
そして、素片選択部3は、取得した複数の隣接する候補素片の組み合わせ(例えば、該当音素に対応する候補素片と先行音素に対応する候補素片との組み合わせ)毎に、音声を合成するために用いる素片としての適切度を示す指標であるコストを算出する。コストは、目標素片環境と候補素片の属性情報との差異、および隣接する候補素片の属性情報の差異の算出結果である。
【0086】
コストは、目標素片環境によって示される合成音声の特徴と候補素片との類似度が高いほど、つまり音声を合成するための適切度が高くなるほど小さくなる。そして、コストが小さい素片を用いるほど、合成された音声は、人間が発した音声と類似している程度を示す自然度が高くなる。従って、素片選択部3は、算出したコストが最も小さい素片を選択する。
【0087】
素片選択部3によって計算されるコストには、具体的には、単位コストと接続コストとがある。単位コストは、候補素片が目標素片環境によって示される環境で用いられた場合に生じると推定される音質劣化度を示す。単位コストは、候補素片の属性情報と目標素片環境との類似度に基づいて算出される。また、接続コストは、接続される音声素片間の素片環境が不連続であることによって生じると推定される音質劣化度を示す。接続コストは、隣接する候補素片同士の素片環境の親和度に基づいて算出される。単位コストおよび接続コストの算出方法は各種提案されている。
【0088】
一般に、単位コストの算出には、目標素片環境によって含まれる情報が用いられる。また、接続コストの算出には、隣接する素片の接続境界におけるピッチ周波数、ケプストラム、MFCC、短時間自己相関、パワー、およびこれらのΔ量等が用いられる。具体的には、単位コストおよび接続コストは、素片に関する各種情報(ピッチ周波数、ケプストラム、パワー等)を複数用いて算出される。
【0089】
単位コストの算出例について説明する。
図6は、目標素片環境によって示される各情報と、候補素片A1および候補素片A2の属性情報によって示される各情報の例を示す。
【0090】
本例では、目標素片環境によって示されるピッチ周波数はpitch0[Hz]であり、継続時間長はdur0[sec]であり、パワーはpow0[dB]であり、アクセント核からの距離はpos0であるとする。また、候補素片A1の属性情報によって示されるピッチ周波数はpitch1[Hz]であり、継続時間長はdur1[sec]であり、パワーはpow1[dB]であり、アクセント核からの距離はpos1であるとする。候補素片A2の属性情報によって示されるピッチ周波数はpitch2[Hz]であり、継続時間長はdur2[sec]であり、パワーはpow2[dB]であり、アクセント核からの距離はpos2であるとする。
【0091】
なお、アクセント核からの距離とは、音声合成単位において、アクセント核となる音素からの距離である。例えば、5個の音素からなる音声合成単位において、3番目の音素がアクセント核である場合に、1番目の音素に対応する素片のアクセント核からの距離は「−2」であり、2番目の音素に対応する素片のアクセント核からの距離は「−1」であり、3番目の音素に対応する素片のアクセント核からの距離は「0」であり、4番目の音素に対応する素片のアクセント核からの距離は「+1」であり、5番目の音素に対応する素片のアクセント核からの距離は「+2」である。
【0092】
そして、候補素片A1の単位コストをunit_score(A1)とすると、unit_score(A1)は以下の式(7)によって計算すればよい。
【0094】
同様に、候補素片A2の単位コストをunit_score(A2)とすると、unit_score(A2)は以下の式(8)によって計算すればよい。
【0096】
但し、式(7)および式(8)において、w1〜w4は、予め決められた重み係数である。
【0097】
次に、接続コストの算出例について説明する。
図7は、候補素片A1、候補素片A2、候補素片B1、および候補素片B2の属性情報によって示される各情報を示す説明図である。なお、候補素片B1および候補素片B2は、候補素片A1および候補素片A2を候補素片とする素片の後続素片の候補素片である。
【0098】
本例では、候補素片A1の始端ピッチ周波数はpitch_beg1[Hz]であり、終端ピッチ周波数はpitch_end1[Hz]であり、始端パワーはpow_beg1[dB]であり、終端パワーはpow_end1[dB]であるとする。また、候補素片A2の始端ピッチ周波数はpitch_beg2[Hz]であり、終端ピッチ周波数はpitch_end2[Hz]であり、始端パワーはpow_beg2[dB]であり、終端パワーはpow_end2[dB]であるとする。
【0099】
また、候補素片B1の始端ピッチ周波数はpitch_beg3[Hz]であり、終端ピッチ周波数はpitch_end3[Hz]であり、始端パワーはpow_beg3[dB]であり、終端パワーはpow_end3[dB]であるとする。候補素片B2の始端ピッチ周波数はpitch_beg4[Hz]であり、終端ピッチ周波数はpitch_end4[Hz]であり、始端パワーはpow_beg4[dB]であり、終端パワーはpow_end4[dB]であるとする。
【0100】
そして、候補素片A1と候補素片B1との接続コストをconcat_score(A1,B1)とすると、concat_score(A1,B1)は、以下の式(9)によって計算すればよい。
【0102】
同様に、候補素片A1と候補素片B2との接続コストをconcat_score(A1,B2)とすると、concat_score(A1,B2)は、以下の式(10)によって計算すればよい。
【0104】
候補素片A2と候補素片B1との接続コストをconcat_score(A2,B1)とすると、concat_score(A2,B1)は、以下の式(11)によって計算すればよい。
【0106】
候補素片A2と候補素片B2との接続コストをconcat_score(A2,B2)とすると、concat_score(A2,B2)は、以下の式(12)によって計算すればよい。
【0108】
但し、式(9)から式(12)において、c1,c2は、予め決められた重み係数である。
【0109】
素片選択部3は、算出した単位コストと接続コストとに基づいて、候補素片A1と候補素片B1との組み合わせのコストを算出する。具体的には、素片選択部3は、候補素片A1と候補素片B1との組み合わせのコストを、unit(A1)+unit(B1)+concat_score(A1,B1)の計算式により算出する。同様に、素片選択部3は、候補素片A2と候補素片B1との組み合わせのコストを、unit(A2)+unit(B1)+concat_score(A2,B1)の計算式により算出する。また、素片選択部3は、候補素片A1と候補素片B2との組み合わせのコストを、unit(A1)+unit(B2)+concat_score(A1,B2)の計算式により算出する。また、素片選択部3は、候補素片A2と候補素片B2との組み合わせのコストを、unit(A2)+unit(B2)+concat_score(A2,B2)の計算式により算出する。
【0110】
素片選択部3は、候補素片の中から音声の合成に最も適した素片として、算出したコストが最小となる組み合わせの素片を選択する。なお、素片選択部3によって選択された素片を「選択素片」と呼ぶ。
【0111】
波形生成部4は、韻律生成部2によって出力された目標韻律情報と、素片選択部3によって出力された素片およびその素片の属性情報とに基づいて、目標韻律情報に合致または類似する韻律を有する音声波形を生成する。そして、波形生成部4は、生成した音声波形を接続して合成音声を生成する。波形生成部4が素片単位で生成した音声波形を通常の音声波形と区別する目的で素片波形と記す。
【0112】
はじめに、波形生成部4は、選択素片の時間長が、韻律生成部で生成された継続時間長と合致または類似するようにフレーム数の調整を行う。
図8は、選択素片の時間長を調整する例を示す模式図である。本例では、選択素片のフレーム数は12であり、時間長を伸ばしたとき(換言すれば、フレーム数を増やしたとき)のフレーム数は18である。また、時間長を縮めた場合(換言すれば、フレーム数を減らしたとき)のフレーム数は、6である。
図8に示すフレーム番号は、フレーム数を伸ばしたり、縮めたりするときのフレームの対応関係を示している。波形生成部4は、フレーム数を増やす場合には適切な頻度でフレームの挿入を行い、フレーム数を減らす場合にはフレームの間引きを行う。時間長を伸ばすときに挿入されるフレームは、隣接するフレームが用いられることが多い。
図8では、フレーム番号が偶数のフレームが連続するようにフレームを挿入する場合を例示している。また近接するフレームの平均を用いてもよい。また、
図8に示す例では、時間長を縮める場合に、フレーム番号が偶数のフレームを間引いている。
【0113】
フレームを挿入したり、間引いたりする頻度は、
図8に示すように、素片内部で均等に分かれていることが好ましい。そのようにすることによって、合成音声の音質が低下しにくくなる。
【0114】
次に、波形生成部4は、波形生成に用いられる波形をフレーム単位で選択し、素片波形を生成する。有声音と無声音でフレームの選択方法が異なる。
【0115】
波形生成部4は、無声音の場合、韻律生成部2で生成された継続時間長に最も近くなるように、フレーム長とフレーム周期からフレーム選択周期を計算する。そして、フレーム選択周期に従ってフレームを選択し、選択された各フレームの波形を連結して無声音波形を生成する。
図9は、フレーム数が16の素片から無声音波形を生成する様子を示した説明図である。
図9に示す例では、フレーム長はフレーム周期の5倍であるため、波形生成部4は、5フレームに1回の頻度で無声音波形の生成に用いるフレームを選択する。
【0116】
波形生成部4は、有声音の場合、韻律生成部2で生成されたピッチ周波数時系列からピッチ同期時刻(ピッチマークとも呼ばれる。)を算出する。そして、波形生成部4は、ピッチ同期時刻に最も近いフレームを選択し、選択された各フレームの波形の中心をピッチ同期時刻に配置することで有声音波形を生成する。
図10は、フレーム数が16の素片から有声音波形を生成する様子を示した説明図である。
図10に示す例では、ピッチ同期時刻に該当するフレームは、第1,4,7,10,13,16のフレームとなっているので、波形生成部4は、これらのフレームを使って波形を生成する。ピッチ周波数時系列からピッチ同期位置を算出する方法については、例えば、以下の参考文献6に記載されている。波形生成部4は、例えば、参考文献6に記載の方法でピッチ同期位置を算出すればよい。
【0117】
[参考文献6]
Huang, Acero, Hon, “Spoken Language Processing”, Prentice Hall, pp. 689-836, 2001年
【0118】
最後に、波形生成部4は、素片単位で生成した有声音波形と無声音波形を先頭から順番に連結して合成音声波形を生成する。
【0119】
本実施形態において、言語処理部1、韻律生成部2、素片選択部3、波形生成部4、および素片情報生成装置の構成要素に該当する部分(例えば、波形切り出し部14、特徴パラメータ15、時間領域波形変換部22等。)は、例えば、音声合成プログラムに従って動作するコンピュータのCPUによって実現される。この場合、CPUがそのプログラムを読み込んで、これらの各要素として動作すればよい。また、これらの各要素が別々のハードウェアで実現されていてもよい。
【0120】
図11は、本実施形態の処理経過の例を示すフローチャートである。なお、素片情報記憶部10には、第1から第3までのいずれかの実施形態で示した動作により素片情報が記憶されているものとする。言語処理部1は、入力されたテキスト文の文字列を分析する(ステップS11)。次に、韻律生成部2は、ステップS1の結果に基づいて、目標韻律情報を生成する(ステップS12)。続いて、素片選択部3が、素片を選択する(ステップS13)。波形生成部4は、ステップS12で生成された目標韻律情報と、ステップS13で選択された素片およびその素片の属性情報とに基づいて、目標韻律情報に合致または類似する韻律を有する音声波形を生成する(ステップS14)。
【0121】
本実施形態においても、第1から第3の実施形態と同様の効果を得ることができる。
【0122】
次に、本発明の最小構成について説明する。
図12は、本発明の素片情報生成装置の最小構成の例を示すブロック図である。本発明の素片情報生成装置は、波形切り出し手段81と、特徴パラメータ抽出手段82と、時間領域波形生成手段83とを備える。
【0123】
波形切り出し手段81(例えば、波形切り出し部14)は、自然音声のピッチ周波数に依存しない時間周期で、自然音声から音声波形を切り出す。
【0124】
特徴パラメータ抽出手段82(例えば、特徴パラメータ抽出部15)は、波形切り出し手段81によって切り出された音声波形から、その音声波形の特徴パラメータを抽出する。
【0125】
時間領域波形生成手段83(例えば、時間領域波形変換部22)は、特徴パラメータに基づいて時間領域波形を生成する。
【0126】
このような構成により、少ない計算量で波形を生成することができる。また、自然音声のピッチ周波数が低い区間の素片を用いて音声合成を行う場合に、合成音声の音質低下を防止することができ、合成音声の音質を損なうことなく、ピッチ周波数が高い区間の素片情報のデータ量を削減できる。
【0127】
図13は、本発明の音声合成装置の最小構成の例を示すブロック図である。本発明の音声合成装置は、波形切り出し手段81と、特徴パラメータ抽出手段82と、時間領域波形生成手段83と、素片情報記憶手段84と、素片情報選択手段85と、波形生成手段86とを備える。波形切り出し手段81、特徴パラメータ抽出手段82および時間領域波形生成手段83に関しては、
図12に示すそれらの要素と同様であり、説明を省略する。
【0128】
素片情報記憶手段84(例えば、素片情報記憶部10)は、素片を表す素片情報であって、時間領域波形生成手段83が生成した時間領域波形を含む素片情報を記憶する。
【0129】
素片情報選択手段85(例えば、素片選択部3)は、入力された文字列に応じた素片情報を選択する。
【0130】
波形生成手段86(例えば、波形生成部4)は、素片情報選択手段85によって選択された素片情報を用いて音声合成波形を生成する。
【0131】
以上のような構成により、
図12に示す素片情報生成装置と同様の効果が得られる。
【0132】
上記の実施形態の一部または全部は、以下の付記のようにも記載されうるが、以下には限られない。
【0133】
(付記1)自然音声のピッチ周波数に依存しない時間周期で、前記自然音声から音声波形を切り出す波形切り出し部と、前記波形切り出し部によって切り出された音声波形から、当該音声波形の特徴パラメータを抽出する特徴パラメータ抽出部と、前記特徴パラメータに基づいて時間領域波形を生成する時間領域波形生成部とを備えることを特徴とする素片情報生成装置。
【0134】
(付記2)自然音声の属性情報に基づいて、前記自然音声から音声波形を切り出す時間周期を決定する周期制御部を備える付記1に記載の素片情報生成装置。
【0135】
(付記3)自然音声のスペクトル形状の変化の度合を示すスペクトル形状変化度を推定するスペクトル形状変化度推定部と、前記スペクトル形状変化度に基づいて、前記自然音声から音声波形を切り出す時間周期を決定する周期制御部とを備える付記1または付記2に記載の素片情報生成装置。
【0136】
(付記4)周期制御部は、スペクトル形状変化度が小さいと判定される場合に、自然音声から音声波形を切り出す時間周期を通常時における時間周期よりも大きくする付記3に記載の素片情報生成装置。
【0137】
(付記5)周期制御部は、スペクトル形状変化度が大きいと判定される場合に、自然音声から音声波形を切り出す時間周期を通常時における時間周期よりも小さくする付記3または付記4に記載の素片情報生成装置。
【0138】
(付記6)自然音声のピッチ周波数に依存しない時間周期で、前記自然音声から音声波形を切り出す波形切り出し部と、前記波形切り出し部によって切り出された音声波形から、当該音声波形の特徴パラメータを抽出する特徴パラメータ抽出部と、前記特徴パラメータに基づいて時間領域波形を生成する時間領域波形生成部と、素片を表す素片情報であって、前記時間領域波形を含む素片情報を記憶する素片情報記憶部と、入力された文字列に応じた素片情報を選択する素片情報選択部と、素片情報選択部によって選択された素片情報を用いて音声合成波形を生成する波形生成部とを備えることを特徴とする音声合成装置。
【0139】
この出願は、2011年5月25日に出願された日本特許出願2011−117155を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【0140】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【0141】
本発明は、音声を合成する際に用いられる素片情報を生成する素片情報生成装置、および、素片情報を用いて音声を合成する音声合成装置に好適に適用される。