(57)【要約】【課題】演算量を抑制しつつ、音声波形の適切なスペクトル包絡を求めることができる音声合成装置を提供する。【解決手段】音声合成装置１は、所定のサンプリング周期で音声をサンプリングすることにより生成された音声波形に対して、そのサンプリング周期よりも高精度で設定された、音声波形のピッチ周期ごとの基準時刻を表すピッチマークに所定のパルス波形を重畳することで音源波形を生成する音源波形生成部２２と、音声波形及び音源波形をそれぞれ直交変換することにより、音声波形の周波数スペクトル及び音源波形の周波数スペクトルを算出する直交変換部２５と、音源波形の周波数スペクトル及び音声波形の周波数スペクトルに基づいてスペクトル包絡を算出する包絡算出部２６とを有する。【選択図】図５
2015118334.tif 000002
【特許請求の範囲】
【請求項１】
声道での共振特性を表すスペクトル包絡を用いて合成音声を生成する音声合成装置であって、
所定のサンプリング周期で音声をサンプリングすることにより生成された音声波形に対して、前記所定のサンプリング周期よりも高精度で設定された、該音声波形のピッチ周期ごとの基準時刻を表すピッチマークに所定のパルス波形を重畳することで音源波形を生成する音源波形生成部と、
前記音声波形及び前記音源波形をそれぞれ直交変換することにより、前記音声波形の周波数スペクトル及び前記音源波形の周波数スペクトルを算出する直交変換部と、
前記音源波形の周波数スペクトル及び前記音声波形の周波数スペクトルに基づいて、前記スペクトル包絡を算出する包絡算出部と、
を有する音声合成装置。
【請求項２】
前記音声波形の周波数スペクトルから基本周波数成分を抽出し、該基本周波数成分を逆直交変換することにより前記音声波形の基本波を算出し、該基本波の値または該基本波の位相が指定値となる時刻に前記ピッチマークを設定するピッチマーク設定部をさらに有する、請求項１に記載の音声合成装置。
【請求項３】
前記音源波形生成部は、前記所定のサンプリング周期での何れかのサンプリング点と一致するピッチマークに前記所定のパルス波形としてインパルス関数波形を重畳し、一方、何れのサンプリング点とも一致しないピッチマークに前記所定のパルス波形としてsinc関数波形を重畳することで前記音源波形を生成する、請求項１または２に記載の音声合成装置。
【請求項４】
前記包絡算出部は、前記音声波形の周波数スペクトルを前記音源波形の周波数スペクトルで除算することにより前記スペクトル包絡を算出する、請求項１〜３の何れか一項に記載の音声合成装置。
【請求項５】
前記包絡算出部は、前記音声波形の周波数スペクトル及び前記音源波形の周波数スペクトルを対数化してから逆フーリエ変換することで前記音声波形のケプストラム及び前記音源波形のケプストラムを算出し、前記音声波形のケプストラムから前記音源波形のケプストラムを減じることにより前記スペクトル包絡のケプストラムを算出し、該スペクトル包絡のケプストラムをフーリエ変換してから線形化することで前記スペクトル包絡を算出する、請求項１〜３の何れか一項に記載の音声合成装置。
【請求項６】
声道での共振特性を表すスペクトル包絡を用いて合成音声を生成する音声合成用コンピュータプログラムであって、
所定のサンプリング周期で音声をサンプリングすることにより生成された音声波形に対して、前記所定のサンプリング周期よりも高精度で設定された、該音声波形のピッチ周期ごとの基準時刻を表すピッチマークに所定のパルス波形を重畳することで音源波形を生成し、
前記音声波形及び前記音源波形をそれぞれ直交変換することにより、前記音声波形の周波数スペクトル及び前記音源波形の周波数スペクトルを算出し、
前記音源波形の周波数スペクトル及び前記音声波形の周波数スペクトルに基づいて、前記スペクトル包絡を算出する、
ことをコンピュータに実行させるための音声合成用コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、スペクトル包絡を利用する音声合成装置及び音声合成用コンピュータプログラムに関する。
【背景技術】
【０００２】
従来より、音声を自動合成する音声合成技術が利用されている。音声合成技術は、短時間で所望の音声を作成できるというメリットを有するため、これまで予め録音されたプロのナレータによる音声を用いていたアプリケーションの中には、このような音声合成技術を採用したものもある。特に、商業施設における案内放送、ハイウェイラジオ、ハイウェイテレホンまたは天気予報の放送など、短い時間間隔で提供する情報が更新されるアプリケーションでは、上記のメリットを持つ音声合成技術が有用である。また、ユーザがバーチャルなキャラクタと音声で対話しながら、各種情報を音声で取得できるサービスにおいても、キャラクタのイメージに合わせて様々な音声を合成できる音声合成技術が有用である。
【０００３】
代表的な音声合成方式として、波形接続合成方式及びソース・フィルタモデル合成方式が利用されている。波形接続合成方式では、録音された音声の波形信号が、そのまま音の素片として利用される。そして波形接続合成方式を採用した音声合成装置は、所望の合成音声に応じて、予め準備された音の素片から適切な素片を選択して接続することにより、その合成音声を生成する。波形接続合成方式では、このように、録音された音声の波形信号がそのまま音の素片として利用されるので、生成された合成音声の品質が非常に良い。しかし、色々な声質の合成音声を生成するためには、あらかじめ様々な声質の音声波形の音の素片を大量に用意しておく必要があるため、波形接続合成方式では、合成音声の声質を変更するために要する時間とコストが膨大となる。
【０００４】
一方、ソース・フィルタモデル合成方式は、声道の共振特性を表現したフィルタと声門における音源で駆動するモデルにより音声を合成するので、フィルタまたは音源の特性を変更することで、声質または感情の制御を、波形接続合成方式よりも容易に実現できる。そのため、ソース・フィルタモデル合成方式は、多様な合成音声を生成する用途に適している。
【０００５】
ソース・フィルタモデル合成方式の一つとして、声門における音源からの音の波形を表す音源波形をインパルス系列または白色雑音を用いて近似的に求め、声道での共振特性をスペクトル包絡で与える方式がある。このような方式では、高品質な合成音声を生成するためには、サンプルとして与えられた様々な音の素片の音声波形から、その周波数スペクトルの包絡線であるスペクトル包絡を正確に抽出することが求められる。
【０００６】
音声波形からスペクトル包絡を抽出する方法として、例えば、線形予測法、ケプストラム法、改良ケプストラム法及び不偏ケプストラム法が提案されている。しかし、線形予測法では、抽出されるスペクトル包絡の形状は、線形予測関数の次数に依存する。そして線形予測関数の次数が低過ぎると、得られるスペクトル包絡と音声波形の周波数スペクトルの高調波成分の各ピーク間の誤差が大きくなり過ぎる。一方、線形予測関数の次数が高過ぎると、スペクトル包絡のピークが特定の高調波成分に過度に適合してしまうことがある。このように、線形予測関数の次数を適切に決定することは困難であり、線形予測関数の次数が適切でなければ、正確なスペクトル包絡が抽出されないおそれがあった。そして正確でないスペクトル包絡を利用して生成された合成音声は、例えば、歪んだ声になったり、あるいは機械的な声になる。
【０００７】
また、ケプストラム法では、スペクトル包絡は、音声波形の周波数スペクトルを対数化して得られる対数スペクトルを線形平滑化することにより得られるので、スペクトル包絡は、周波数スペクトルの微細な構造のピークと谷のほぼ中央を通る。そのため、スペクトル包絡は、音声波形の周波数スペクトルの微細な構造の影響を受け易い。特に、周波数スペクトルの微細な構造におけるピークと谷のレベル差が大きいときには、スペクトル包絡の各周波数における信号強度は、適切なスペクトル包絡の信号強度よりもかなり低くなる。また、周波数スペクトルの微細構造の谷は、周波数スペクトルの分析のために設定される、直交変換の単位となるフレームの切り出し区間によって大きく変動することがある。そのため、ケプストラム法では、フレームの切り出し区間に応じてスペクトル包絡も大きく変動してしまい、スペクトル包絡が安定的に推定されないおそれがあった。
【０００８】
一方、改良ケプストラム法及び不偏ケプストラム法では、対数化したスペクトル包絡と対数スペクトルの微細構造の各ピークとの差がある程度小さくなるまで、逐次的に処理を繰り返すことでスペクトル包絡が求められる（例えば、非特許文献１を参照）。
【先行技術文献】
【非特許文献】
【０００９】
【非特許文献１】今井、「音声信号処理」、森北出版株式会社、1996年11月、p.148-165
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、改良ケプストラム法及び不偏ケプストラム法では、一回の処理ごとに複数回のフーリエ変換が行われるので、演算量が膨大となる。
【００１１】
そこで本明細書は、一つの側面として、演算量を抑制しつつ、音声波形の適切なスペクトル包絡を求めることができる音声合成装置を提供することを目的とする。
【課題を解決するための手段】
【００１２】
一つの実施形態によれば、声道での共振特性を表すスペクトル包絡を用いて合成音声を生成する音声合成装置が提供される。この音声合成装置は、所定のサンプリング周期で音声をサンプリングすることにより生成された音声波形に対して、そのサンプリング周期よりも高精度で設定された、音声波形のピッチ周期ごとの基準時刻を表すピッチマークに所定のパルス波形を重畳することで音源波形を生成する音源波形生成部と、音声波形及び音源波形をそれぞれ直交変換することにより、音声波形の周波数スペクトル及び音源波形の周波数スペクトルを算出する直交変換部と、音源波形の周波数スペクトル及び音声波形の周波数スペクトルに基づいてスペクトル包絡を算出する包絡算出部とを有する。
【００１３】
本発明の目的及び利点は、請求項において特に指摘されたエレメント及び組み合わせにより実現され、かつ達成される。
上記の一般的な記述及び下記の詳細な記述の何れも、例示的かつ説明的なものであり、請求項のように、本発明を限定するものではないことを理解されたい。
【発明の効果】
【００１４】
本明細書に開示された音声合成装置は、演算量を抑制しつつ、音声波形の適切なスペクトル包絡を求めることができる。
【図面の簡単な説明】
【００１５】
【図１】音声波形に付与されたピッチマークの一例を示す図である。
【図２】（ａ）は、ピッチマークの設定時刻がサンプリング周期の整数倍で求められ、設定時刻の精度が不十分な場合の音源波形の周波数スペクトルの一例を表す。（ｂ）は、ピッチマークの設定時刻の精度が十分な場合の音源波形の周波数スペクトルの一例を表す。（ｃ）は、（ａ）及び（ｂ）に示された音源波形の周波数スペクトルを用いて算出されたスペクトル包絡の一例を示す図である。
【図３】第１の実施形態による音声合成装置の概略構成図である。
【図４】音声合成装置の処理部の機能ブロック図である。
【図５】スペクトル包絡抽出部の機能ブロック図である。
【図６】（ａ）は、音声波形の周波数スペクトルと基本周波数成分の関係を示す図である。（ｂ）は、基本波とピッチマークの関係を示す図である。（ｃ）は、基本波の位相成分とピッチマークの関係を示す図である。
【図７】基本波が指定値となる時刻近辺のサンプリング点に基づく線形補間によって決定されるピッチマークの設定時刻を示す図である。
【図８】ピッチマークの設定時刻がサンプリング周期の整数倍でない場合の音源波形の一例を表す図である。
【図９】スペクトル包絡抽出処理の動作フローチャートである。
【図１０】第２の実施形態による音声合成装置の包絡算出部の機能ブロック図である。
【図１１】第２の実施形態による包絡算出部により行われる処理の動作フローチャートである。
【図１２】第３の実施形態による音声合成装置の包絡算出部の機能ブロック図である。
【発明を実施するための形態】
【００１６】
以下、図を参照しつつ、音声合成装置について説明する。
最初に、音声波形とスペクトル包絡の関係について説明する。音声波形は、音源波形と声道共振系の各インパルス応答の畳み込みで表される。すなわち、スペクトル包絡は、声道の伝達特性を表す。ここで、音声波形の振幅スペクトルをX(ω)、音源波形の振幅スペクトルをG(ω)、スペクトル包絡をH(ω)とすると、次の関係が成立する。
【数１】
2015118334.tif 000003
したがって、スペクトル包絡H(ω)は次式で求められる。
【数２】
2015118334.tif 000004
したがって、スペクトル包絡H(ω)を正確に求めるためには、音源波形の振幅スペクトルG(ω)を正確に求めることが好ましい。
【００１７】
発明者は、ピッチマークの時刻精度が、求められる音源波形の振幅スペクトルG(ω)の精度に影響することに着目した。ここで、ピッチマークとは、音声波形のピッチ周期に対応する１周期ごとの基準時刻を表す情報である。音声合成技術においては、音声波形に予めピッチマークを付与しておき、音声の高さ、抑揚または話速を変更するために利用される。
【００１８】
図１は、音声波形に付与されたピッチマークの一例を示す図である。図１において、横軸は時間を表し、縦軸は信号強度を表す。音声波形１００に対して、ピッチマーク１０１は、サンプリング周期Ｔの整数倍の周期で設定されている。図１に示されるように、通常、ピッチマークは、音声波形のサンプリング周期の整数倍の精度で付与される。波形接続合成方式では、この程度の精度でも、十分な品質の合成音声が得られる。
【００１９】
図２（ａ）は、ピッチマークの設定時刻がサンプリング周期の整数倍で求められ、設定時刻の精度が不十分な場合の音源波形の周波数スペクトルの一例を表し、図２（ｂ）は、ピッチマークの設定時刻の精度が十分な場合の音源波形の周波数スペクトルの一例を表す。さらに、図２（ｃ）は、図２（ａ）及び図２（ｂ）に示された音源波形の周波数スペクトルを用いて算出されたスペクトル包絡の一例を示す図である。図２（ａ）〜図２（ｃ）において、横軸は周波数を表し、縦軸は信号強度を表す。図２（ａ）に示された音源波形の周波数スペクトル２００では、周波数が高くなるほど、微細構造の振幅が小さくなる。一方、図２（ｂ）に示された音源波形の周波数スペクトル２１０では、周波数が高くなっても、微細構造の振幅はそれほど減衰していない。このように、ピッチマークの時刻精度によって、音源波形の周波数スペクトルの形状が変化する。
そのため、図２（ｃ）に示されるように、図２（ａ）に示された音源波形の周波数スペクトル２００を用いて算出されるスペクトル包絡２２０は、元の音声波形２３０の微細構造の個々のピークよりも小さく、不適切な形状となっている。一方、図２（ｂ）に示された音源波形の周波数スペクトル２１０を用いて算出されるスペクトル包絡２２１は、元の音声波形２３０の微細構造の個々のピークに沿い、かつ滑らかとなる、適切な形状を有している。
上記のように、音源波形の周波数スペクトルの形状が変われば、求められるスペクトル包絡の形状も変わるので、正確なスペクトル包絡も求めるには、ピッチマークの時刻精度を十分に高くすることが好ましい。
【００２０】
そこで、本実施形態による音声合成装置は、入力された音声波形のサンプリング周期よりも高い精度でピッチマークの時刻を設定し、各ピッチマークの時刻に所定のパルス波形を重畳することにより音源波形を求める。そしてこの音声合成装置は、入力された音声波形の周波数スペクトルをその音源波形の周波数スペクトルで除算することにより、スペクトル包絡を求める。
【００２１】
図３は、第１の実施形態による音声合成装置の概略構成図である。本実施形態では、音声合成装置１は、入力部２と、記憶部３と、処理部４と、出力部５とを有する。
【００２２】
入力部２は、合成音声の原文であり、漢字仮名交じり文であるテキストデータを取得する。例えば、入力部２は、テキストデータを通信ネットワークを介して音声合成装置１と接続された他の機器から取得する。そのために、入力部２は、音声合成装置１を通信ネットワークに接続するためのインターフェース回路を有する。
また入力部２は、スペクトル包絡を抽出するために利用される音の素片を一つまたは複数含むサンプルの音声波形を含む信号とその音声波形に対応する読みを表すテキストデータを、通信ネットワークを介して他の装置から取得する。また音の素片は、例えば、母音、子音、または特定の並びに従って続けて発音された複数の音素または音節などである。
なお、サンプルの音声波形は、例えば、サンプリング周波数が22.05kHzのアナログ／デジタルコンバータによって、ナレーターなどが発したオリジナルの音声波形をサンプリングすることにより生成されたデジタル信号である。
【００２３】
また、入力部２は、キーボードなど、テキストデータを入力するためのユーザインターフェースを有してもよい。さらにまた、入力部２は、サンプルの音声波形を表す信号を入力するためのマイクロホン及びそのマイクロホンにより集音されたアナログ音声信号をデジタル化するアナログ／デジタルコンバータを有していてもよい。
入力部２は、入力されたテキストデータ及びサンプルの音声波形を含む信号を処理部４へ渡す。
【００２４】
記憶部３は、例えば、半導体メモリ回路、磁気記憶装置または光記憶装置のうちの少なくとも一つを有する。そして記憶部３は、処理部４で用いられる各種コンピュータプログラム及び音声合成処理に用いられる各種のデータを記憶する。
記憶部３は、音声合成処理に用いられるデータとして、例えば、韻律モデルと、様々な音素などに対応するスペクトル包絡が登録されたスペクトル包絡データベースとを記憶する。さらに記憶部３は、言語処理に用いられるデータとして、テキストデータ中に出現すると想定される様々な単語について、その単語の漢字仮名表記、中間表記、韻律情報、品詞及び活用形などを格納した言語辞書を記憶する。
【００２５】
出力部５は、処理部４から受け取った合成音声信号をスピーカ６へ出力する。そのために、出力部５は、例えば、スピーカ６を音声合成装置１と接続するためのオーディオインターフェース回路を有する。
また出力部５は、合成音声信号を、通信ネットワークを介して音声合成装置１と接続された他の装置へ出力してもよい。この場合、出力部５は、その通信ネットワークに音声合成装置１と接続するためのインターフェース回路を有する。なお、入力部２も通信ネットワークを介してテキストデータを取得する場合、入力部２と出力部５は一体化されていてもよい。
【００２６】
処理部４は、一つまたは複数のプロセッサと、メモリ回路と、周辺回路とを有する。そして処理部４は、入力されたテキストデータに基づいて、合成音声信号を作成する。また処理部４は、合成音声を生成するために使用されるスペクトル包絡を、サンプルの音声波形から生成する。
【００２７】
図４は、処理部４の機能ブロック図である。処理部４は、言語処理部１０と、音声合成部１１と、スペクトル包絡抽出部１２とを有する。
処理部４が有するこれらの各部は、例えば、処理部４が有するプロセッサ上で動作するコンピュータプログラムにより実現される機能モジュールである。あるいは、処理部４が有するこれらの各部は、その各部の機能を実現する一つの集積回路として音声合成装置１に実装されてもよい。
【００２８】
言語処理部１０は、入力された、漢字仮名交じり文であるテキストデータから中間表記を生成する。ここで、中間表記とは、形態素単位の読み表記に、韻律を表す韻律記号が追加されたものである。韻律記号には、例えば、「アクセント位置」、「アクセント強弱」、「音程高低」、「抑揚大小」、「話速緩急」、「音量大小」及び「区切り」を表現する記号が含まれる。
【００２９】
言語処理部１０は、入力されたテキストデータから中間表記を生成するために、記憶部３に記憶されている言語辞書を読み込む。そして言語処理部１０は、例えば、その言語辞書を用いて、テキストデータに対して形態素解析及び係り受け解析を行って、テキストデータ中に出現する各単語の順序及び読み、アクセントの位置及び区切りの位置を決定する。
【００３０】
言語処理部１０は、形態素解析として、例えば、動的計画法を用いる方法を利用できる。また言語処理部１０は、係り受け解析として、例えば、先読みＬＲパーザまたはＬＬ法といった構文解析の手法を利用できる。そして言語処理部１０は、各単語の順序、読み、アクセントの位置及び区切りの位置に応じて中間表記を作成する。
【００３１】
音声合成部１１は、生成された中間表記に基づいて、例えば、ソース・フィルタモデル合成方式によって合成音声信号を作成する。
【００３２】
音声合成部１１は、中間表記に基づいて、合成音声信号を生成する際の目標韻律を生成する。そのために、音声合成部１１は、記憶部３から複数の韻律モデルを読み込む。この韻律モデルは、声を高くする位置及び声を低くする位置などを時間順に表したものである。そして音声合成部１１は、複数の韻律モデルのうち、中間表記に示されたアクセントの位置などに最も一致する韻律モデルを選択する。そして音声合成部１１は、選択した韻律モデルに従って、中間表記に対して声が高くなる位置あるいは声が低くなる位置、声の抑揚、ピッチなどを設定することにより、目標韻律を作成する。目標韻律は、音声波形を決定する単位となる音素ごとに、音素の長さ及びピッチ周波数を含む。なお、音素は、例えば、一つの母音あるいは一つの子音とすることができる。そして音声合成部１１は、目標韻律に応じた駆動音源波形信号を生成する。
【００３３】
一方、音声合成部１１は、中間表記に示された読みに含まれる音の素片ごとに、対応するスペクトル包絡を記憶部３に記憶されたスペクトル包絡データベースから選択する。そして音声合成部１１は、駆動音源波形信号の周波数スペクトルに選択したスペクトル包絡を乗じて得られるスペクトルを逆フーリエ変換することにより、合成された音の素片を生成し、その素片を先頭から順に結合することで合成音声信号を生成する。
音声合成部１１は、合成音声信号を出力部５へ出力する。
【００３４】
スペクトル包絡抽出部１２は、音の素片のサンプルの音声波形からスペクトル包絡を抽出し、そのスペクトル包絡をスペクトル包絡データベースに登録する。
【００３５】
図５は、スペクトル包絡抽出部１２の機能ブロック図である。スペクトル包絡抽出部１２は、ピッチマーク設定部２１と、音源波形生成部２２と、切り出し部２３と、窓掛部２４と、直交変換部２５と、包絡算出部２６とを有する。
【００３６】
ピッチマーク設定部２１は、サンプルの音声波形から、ピッチマークの設定時刻を、そのサンプルとなる音声波形のサンプリング周期よりも高精度で決定する。すなわち、ピッチマーク設定部２１は、サンプルの音声波形のサンプリング点でない時刻であってもピッチマークを設定する。そのために、ピッチマーク設定部２１は、例えば、サンプルの音声波形を高速フーリエ変換(Fast Fourier Transform, FFT)することで、その音声波形の周波数スペクトルを求める。そしてピッチマーク設定部２１は、その音声波形の周波数スペクトルから基本周波数成分を抽出する。基本周波数成分は、音声波形の周波数スペクトルのうちの直流成分を除く最も低い周波数成分である。そこで、ピッチマーク設定部２１は、例えば、スペクトルの絶対値が所定値未満となる周波数のスペクトルの極小値のうちで最も低い周波数の極小値を第１の極小値として検出する。そしてピッチマーク設定部２１は、その第１の極小値の周波数から周波数の高い方へ順にスペクトルの極大値を検出し、検出された極大値と第１の極小値の差が所定の差分閾値を最初に超える極大値を検出する。さらにピッチマーク設定部２１は、その極大値の周波数から周波数の高い方へ順にスペクトルの極小値を検出し、検出された極小値と極大値の差が、所定の差分閾値を最初に超える極小値を第２の極小値として検出する。そしてピッチマーク設定部２１は、第１の極小値に相当する周波数から第２の極小値に相当する周波数までの区間に含まれる周波数成分を、基本周波数成分として抽出する。
【００３７】
ピッチマーク設定部２１は、基本周波数成分を逆FFTすることにより、サンプルの音声波形の基本波を求める。そしてピッチマーク設定部２１は、基本波の値が増加している区間においてその基本波が指定値（例えば、0）となる時刻、あるいは、基本波の値が減少している区間においてその基本波が指定値となる時刻にピッチマークを設定する。あるいは、指定値は、基本波の極大値または極小値に設定されてもよい。この場合には、ピッチマーク設定部２１は、基本波の値が指定値となる時刻にピッチマークを設定すればよい。
あるいは、ピッチマーク設定部２１は、基本波をヒルベルト変換することにより、基本波の位相を求め、その位相が指定値（例えば、-0.5π）となる時刻にピッチマークを設定してもよい。
【００３８】
図６（ａ）は、音声波形の周波数スペクトルと基本周波数成分の関係を示す図であり、図６（ｂ）は、基本波とピッチマークの関係を示す図であり、図６（ｃ）は、基本波の位相成分とピッチマークの関係を示す図である。図６（ａ）において、横軸は周波数を表し、縦軸は信号強度を表す。また図６（ｂ）及び図６（ｃ）において、横軸は時間を表す。そして図６（ｂ）において、縦軸は信号強度を表し、図６（ｃ）において、縦軸は位相を表す。
【００３９】
図６（ａ）に示されるように、音声波形の周波数スペクトル６００のうち、基本周波数成分６０１は、一番低いピークに相当する成分である。そして基本周波数成分６０１が含まれる区間は非常に狭いので、図６（ｂ）に示されるように、基本波６１０は、基本周波数成分に含まれるピークに相当する周期を持つ正弦波に類似する波形となる。この例では、基本波６１０の値が増加している区間においてその基本波６１０が指定値となる各時刻に、ピッチマーク６１１が設定される。
また、図６（ｃ）に示される例では、基本波の位相６２０の値が増加している区間においてその基本波の位相６２０が指定値となる各時刻に、ピッチマーク６２１が設定される。
【００４０】
ここで、サンプルの音声波形が所定のサンプリング周期でサンプリングされているため、基本波及び基本波の位相も、そのサンプリング周期ごとの離散的な値として求められる。そのため、基本波または基本波の位相が指定値となる時刻がサンプリング点と一致しないことがある。このような場合、ピッチマーク設定部２１は、基本波の値または基本波の位相が指定値となる時刻前後の複数のサンプリング点における基本波の値または基本波の位相に基づく補間処理を行うことで、基本波の値または基本波の位相が指定値となる時刻を推定できる。なお、補間処理としては、例えば、線形補間、パラボリック補間またはスプライン補間といった様々な補間処理が利用可能である。
【００４１】
図７は、基本波が指定値となる時刻近辺のサンプリング点に基づく線形補間によって決定されるピッチマークの設定時刻を示す図である。図７において、横軸は時間を表し、縦軸は強度を表す。図７に示される例では、基本波７００の４個のサンプリング点７０１〜７０４のうちのサンプリング点７０２とサンプリング点７０３の間で、基本波７００は、指定値となる。そこでこの例では、サンプリング点７０２とサンプリング点７０３の基本波７００の値に基づく線形補間によって推定された、基本波７００が指定値となる時刻がピッチマークの時刻７１０となる。
【００４２】
音源波形生成部２２は、各ピッチマーク時刻に所定のパルス波形を重畳することで音源波形を生成する。ここで、音源波形を用いてスペクトル包絡を算出するために、音源波形も、音声波形のサンプリング周期と同じサンプリング周期のサンプリング点ごとの離散的な値の系列で与えられる。そのため、ピッチマークがサンプリング点と一致している場合と、一致していない場合とで、利用可能なパルス波形が異なる。
【００４３】
音源波形生成部２２は、ピッチマークの時刻がサンプリング周期の整数倍となる場合、すなわち、何れかのサンプリング点と一致する場合、ピッチマークの時刻に、パルス波形としてインパルス関数波形を重畳する。
一方、ピッチマークの時刻がサンプリング周期の整数倍でない場合、すなわち、何れのサンプリング点とも一致しない場合、ピーク位置にしか0以外の信号が無いインパルス関数波形は利用できない。ここで、音源波形の各ピッチマークのインパルス応答波形の周波数スペクトルは、サンプリング周期に相当する帯域幅にわたって一定の値となることが好ましい。そこで音源波形生成部２２は、ピッチマークの時刻に、パルス波形として、-Fs/2〜Fs/2を帯域幅とする矩形周波数スペクトルに相当するsinc関数波形を重畳する。なお、Fsは、音声波形のサンプリング周波数である。またsinc関数波形S(t)は次式で与えられる。
【数３】
2015118334.tif 000005
なお、Tはサンプリング周期であり、T=1/Fsである。また、tは、着目するピッチマーク時刻の直前のサンプリング点に相当する時刻であり、aは、着目するピッチマーク時刻とそのサンプリング点の時刻の差である。
【００４４】
図８は、ピッチマークの設定時刻がサンプリング周期の整数倍でない場合の音源波形の一例を表す図である。図８において、横軸は時間を表し、縦軸は信号強度を表す。sinc関数波形８００は、ピッチマーク時刻８０１にピークが位置するように重畳される。そして、各サンプリング点８０２におけるsinc関数波形の値の系列が、ピッチマーク時刻８０１前後の音源波形として求められる。
【００４５】
音源波形生成部２２は、各ピッチマーク時刻について、上記のようにインパルス関数またはsinc関数波形を重畳することで得られた音源波形を切り出し部２３へ出力する。
【００４６】
切り出し部２３は、サンプルの音声波形の先頭から順次、所定の時間長（例えば、23msecまたは46msec）を持つ第１のフレームを切り出す。また切り出し部２３は、その音声波形に基づいて設定されたピッチマークを基準として生成された音源波形の先頭から順次、第２のフレームを切り出す。なお、第２のフレームは、第１のフレームと同じ時間長を持ち、かつ、音声波形と音源波形中の同じ区間に設定される。なお、サンプルの音声波形に含まれる一つの音の素片が一つのフレームに含まれる場合には、切り出し部２３は、音声波形及び音源波形から、それぞれ一つのフレームのみを切り出してもよい。
切り出し部２３は、第１のフレーム及び第２のフレームを切り出す度に、第１のフレーム及び第２のフレームを窓掛部２４へ出力する。
【００４７】
窓掛部２４は、第１のフレーム及び第２のフレームに同じ窓関数を乗じる。窓掛部２４は、窓関数として、例えば、ハニング窓またはハミング窓といった、フレームの両端の信号を減衰させる窓関数を利用する。そして窓掛部２４は、窓関数が乗じられた第１フレーム及び第２フレームを直交変換部２５へ出力する。
【００４８】
直交変換部２５は、窓関数が乗じられた第１フレーム及び第２フレームを直交変換することで、音声波形の周波数スペクトルと音源波形の周波数スペクトルを算出する。なお、直交変換部２５は、直交変換として、例えば、FFTを利用できる。
直交変換部２５は、第１のフレームに相当する音声波形の周波数スペクトルと第２のフレームに相当する音源波形の周波数スペクトルを包絡算出部２６へ出力する。
【００４９】
包絡算出部２６は、第１のフレームに相当する音声波形の周波数スペクトルを第２のフレームに相当する音源波形の周波数スペクトルで除算することにより、第１のフレームに相当するスペクトル包絡を算出する。スペクトル包絡抽出部１２は、フレームごとのスペクトル包絡を先頭から順次結合することで、サンプルの音声波形に含まれる音の素片のスペクトル包絡を抽出する。そしてスペクトル包絡抽出部１２は、抽出されたスペクトル包絡を、対応する読みと関連付けて、スペクトル包絡データベースに登録する。
【００５０】
図９は、スペクトル包絡抽出部１２により実行される、スペクトル包絡抽出処理の動作フローチャートである。スペクトル包絡抽出部１２は、サンプルの音声波形ごとに、以下の処理を実行する。
ピッチマーク設定部２１は、１以上の音の素片を含むサンプルの音声波形を直交変換することにより、その音声波形の周波数スペクトルを算出する（ステップＳ１０１）。ピッチマーク設定部２１は、音声波形の周波数スペクトルから基本周波数成分を抽出する（ステップＳ１０２）。そしてピッチマーク設定部２１は、基本周波数成分を逆直交変換することにより、基本波を求める（ステップＳ１０３）。ピッチマーク設定部２１は、サンプルの音声波形のサンプリング周期よりも高精度で基本波の値または基本波の位相が指定値となる時刻にピッチマークを設定する（ステップＳ１０４）。
【００５１】
音源波形生成部２２は、サンプリング点と一致するピッチマークにインパルス関数波形を重畳し、かつ、サンプリング点と一致しないピッチマークにsinc関数波形を重畳することで音源波形を生成する（ステップＳ１０５）。
【００５２】
切り出し部２３は、サンプルの音声波形から第１のフレームを切り出し、かつ、その音声波形に基づいて設定されたピッチマークを基準として生成された音源波形から第２のフレームを切り出す（ステップＳ１０６）。窓掛部２４は、第１及び第２のフレームに窓関数を乗じる（ステップＳ１０７）。そして直交変換部２５は、窓関数が乗じられた第１及び第２のフレームをそれぞれ直交変換することにより、音声波形の周波数スペクトル及び音源波形の周波数スペクトルを算出する（ステップＳ１０８）。
【００５３】
包絡算出部２６は、音声波形の周波数スペクトルを音源波形の周波数スペクトルで除算することにより、サンプルの音声波形に含まれる音の素片のスペクトル包絡を算出する（ステップＳ１０９）。得られたスペクトル包絡は、対応する音の素片の読みとともに、スペクトル包絡データベースに登録される。そしてスペクトル包絡抽出部１２は、スペクトル包絡抽出処理を終了する。
【００５４】
以上に説明してきたように、この音声合成装置は、サンプルの音声波形に対応するピッチマークを、サンプリング周期よりも高精度で設定するので、適切な音源波形を求めることができる。そしてこの音声合成装置は、その適切な音源波形の周波数スペクトルでサンプルの音声波形の周波数スペクトルを除算することで、スペクトル包絡を正確に抽出できる。その際、この音声合成装置は、直交変換を含む処理を繰り返さなくてもよいので、スペクトル包絡の算出に要する演算量を、改良ケプストラム法及び不偏ケプストラム法と比較して大幅に削減できる。例えば、サンプル音声波形のフレームが1024個のサンプリング点を含む場合、スペクトル包絡の算出に要する時間が不偏ケプストラム法で平均29.3msecであるのに対して、本実施形態によれば、スペクトル包絡の算出に要する時間が平均で1.5msecになる。
【００５５】
さらに、この音声合成装置は、サンプルの音声波形の基本波から、必要に応じて補間により、サンプリング周期よりも高精度で適切な時刻にピッチマークを設定している。そのため、この音声合成装置は、通常の可聴域で用いられるアナログ／デジタルコンバータによってサンプリングされたサンプルの音声波形から正確なスペクトル包絡を抽出できる。したがって、この音声合成装置は、高速サンプリングが可能なアナログ／デジタルコンバータを使用しなくてもよく、かつ、そのようなアナログ／デジタルコンバータが使用される場合よりも、スペクトル包絡の算出に要するデータ量を抑制できる。
【００５６】
次に、第２の実施形態による音声合成装置について説明する。第２の実施形態による音声合成装置は、サンプルの音声波形のケプストラムと対応する音源波形のケプストラムをそれぞれ求め、それらのケプストラムを利用してスペクトル包絡を抽出する。
第２の実施系形態による音声合成装置は、第１の実施形態による音声合成装置と比較して、スペクトル包絡抽出部の包絡算出部の処理が異なる。そこで以下では、包絡算出部の処理について説明する。第２の実施系形態による音声合成装置のその他の構成要素については、第１の実施形態による音声合成装置の対応する構成要素の説明を参照されたい。
【００５７】
図１０は、第２の実施形態による音声合成装置の包絡算出部の機能ブロック図である。
包絡算出部２６は、対数化部３１と、逆フーリエ変換部３２と、差分部３３と、フーリエ変換部３４と、線形化部３５とを有する。また図１１は、包絡算出部２６により行われる処理の動作フローチャートである。図１１に示された処理は、図９に示されたスペクトル包絡抽出処理の動作フローチャートのステップＳ１０９の代わりに実行される。以下、図１１を参照しつつ、包絡算出部２６の各部の処理について説明する。
【００５８】
対数化部３１は、直交変換部２５において窓掛された第１及び第２のフレームをFFTすることにより得られた音声波形の周波数スペクトル及び音源波形の周波数スペクトルを、それぞれ次式に従って対数化する（ステップＳ２０１）。
【数４】
2015118334.tif 000006
ここで、X(f)、G(f)は、それぞれ、音声波形の周波数スペクトル及び音源波形の周波数スペクトルである。対数化部３１は、対数化された音声波形の周波数スペクトル及び音源波形の周波数スペクトルを逆フーリエ変換部３２へ出力する。
【００５９】
逆フーリエ変換部３２は、対数化された音声波形の周波数スペクトル及び音源波形の周波数スペクトルを逆FFTすることで、音声波形のケプストラム及び音源波形のケプストラムを算出する（ステップＳ２０２）。そして逆フーリエ変換部３２は、音声波形のケプストラム及び音源波形のケプストラムを差分部３３へ出力する。
【００６０】
差分部３３は、次式に従って、音声波形のケプストラムから音源波形のケプストラムを減じることにより、スペクトル包絡のケプストラムを算出する（ステップＳ２０３）。
【数５】
2015118334.tif 000007
ここで、H(f)はスペクトル包絡であり、F-1(log|H(f)|)は、スペクトル包絡のケプストラムである。またF-1(log|X(f)|)、F-1(log|G(f)|)は、それぞれ、音声波形のケプストラム及び音源波形のケプストラムである。なお、F-1()は、逆FFTを表す。差分部３３は、スペクトル包絡のケプストラムをフーリエ変換部３４へ出力する。
【００６１】
フーリエ変換部３４は、スペクトル包絡のケプストラムをFFTすることにより、スペクトル包絡の対数を算出する（ステップＳ２０４）。そしてフーリエ変換部３４は、スペクトル包絡の対数を線形化部３５へ出力する。
【００６２】
線形化部３５は、ネイピア数の指数項にスペクトル包絡の対数を入力してスペクトル包絡を線形化することにより、スペクトル包絡を算出する（ステップＳ２０５）。
【００６３】
第２の実施形態によれば、音声合成装置は、周波数スペクトルの除算を行わずに、差分演算によってスペクトル包絡を算出できる。そのため、音源波形の周波数スペクトルのサンプリング点の何れかが0となる場合でも、第２の実施形態による音声合成装置は、0での除算を避けるための特別な処理を行うことなく、スペクトル包絡を求めることができる。
【００６４】
次に、第３の実施形態による音声合成装置について説明する。
第１の実施形態のように音声波形と音源波形の周波数スペクトルの比から求めたスペクトル包絡の形状及び第２の実施形態のように音声波形のケプストラムと音源波形のケプストラムの差から求めたスペクトル包絡の形状は、滑らかにならないことがある。これは、ピッチマークの精度ではなく、サンプルの音声波形の周波数スペクトルの微細構造の谷などでの計算精度の劣化に起因するものである。
【００６５】
そこで、第３の実施形態による音声合成装置は、スペクトル包絡のケプストラムに対してリフタリング処理を行って、そのケプストラムの低次成分を抽出する。そしてこの音声合成装置は、スペクトル包絡のケプストラムの低次成分に対してFFTを実行することで、滑らかな形状を持つスペクトル包絡を求める。
【００６６】
図１２は、第３の実施形態による音声合成装置の包絡算出部の機能ブロック図である。
包絡算出部２６は、対数化部３１と、逆フーリエ変換部３２と、差分部３３と、リフタ処理部３６と、フーリエ変換部３４と、線形化部３５とを有する。
【００６７】
第３の実施系形態による音声合成装置は、第２の実施形態による音声合成装置と比較して、スペクトル包絡抽出部の包絡算出部がリフタ処理部３６を有する点で異なる。そこで以下では、リフタ処理部３６及びその関連部分について説明する。第３の実施系形態による音声合成装置のその他の構成要素については、第１または第２の実施形態による音声合成装置の対応する構成要素の説明を参照されたい。
【００６８】
リフタ処理部３６は、差分部３３により得られたスペクトル包絡のケプストラムから、所定のカットオフ次数以下の次数の成分を抽出する。なお、カットオフ次数mは、例えば、次式で与えられる。
【数６】
2015118334.tif 000008
ここで、T0はピッチ周期である。本実施形態では、T0は、サンプルの音声波形全体についてのピッチ周期の平均値とすることができる。またFsは、サンプルの音声波形についてのサンプリング周波数である。リフタ処理部３６は、このように決定されるカットオフ次数以下のケプストラムの低次成分をフーリエ変換部３４へ出力する。なお、カットオフ次数mは、（６）式で与えられる値よりも小さくてもよく、あるいは、大きくてもよい。カットオフ次数mが小さいほど、得られるスペクトル包絡の形状はより滑らかとなる。一方、カットオフ次数mが大きいほど、音声波形の周波数スペクトルの微細構造により追従したスペクトル包絡が得られる。
そしてフーリエ変換部３４は、スペクトル包絡のケプストラムの低次成分をフーリエ変換してスペクトル包絡の対数を算出し、線形化部３５はその対数をネイピア数の指数項に入力して線形化することにより、スペクトル包絡を算出する。
【００６９】
なお、変形例によれば、処理部は、スペクトル包絡データベースの生成に特化してもよい。この場合には、処理部は、スペクトル包絡抽出部の機能のみを実行する。そして生成されたスペクトル包絡データベースは、例えば、可搬の記録媒体またはネットワークを介して他の音声合成装置の記憶部にコピーされ、その音声合成装置にて利用される。
【００７０】
また他の変形例によれば、サンプルの音声波形に対するピッチマークの時刻は、ユーザにより設定され、入力部を介して音声合成装置に入力されてもよい。この場合には、ピッチマーク設定部は省略されてもよい。
【００７１】
また、上記の各実施形態または変形例による音声合成装置は、携帯電話機、携帯情報端末、パーソナルコンピュータまたはカーナビゲーションシステムなど、音声により何らかの情報を提供することが可能な装置に実装できる。そして音声合成装置が実装された装置は、例えば、メール、Webコンテンツまたはナビゲーション情報に含まれるテキストデータから生成した合成音声を出力する。あるいは、上記の各実施形態または変形例による音声合成装置は、各種の端末と通信ネットワークを介して接続されるサーバに実装されてもよい。この場合、端末がテキストデータをサーバへ送信すると、サーバがそのテキストデータに基づく合成音声を生成し、その合成音声を端末へ返信する。そして端末は、サーバから受信した合成音声を再生する。この例では、個々の端末は音声合成装置を有さなくても、所望のテキストデータに応じた合成音声を再生できる。
【００７２】
さらに、各実施形態または変形例による音声合成装置の処理部が有する各機能をコンピュータに実現させるコンピュータプログラムは、コンピュータが読み取り可能な記録媒体、例えば、磁気記録媒体、または光記録媒体に記録された形で提供されてもよい。
【００７３】
ここに挙げられた全ての例及び特定の用語は、読者が、本発明及び当該技術の促進に対する本発明者により寄与された概念を理解することを助ける、教示的な目的において意図されたものであり、本発明の優位性及び劣等性を示すことに関する、本明細書の如何なる例の構成、そのような特定の挙げられた例及び条件に限定しないように解釈されるべきものである。本発明の実施形態は詳細に説明されているが、本発明の精神及び範囲から外れることなく、様々な変更、置換及び修正をこれに加えることが可能であることを理解されたい。
【００７４】
以上説明した実施形態及びその変形例に関し、更に以下の付記を開示する。
（付記１）
声道での共振特性を表すスペクトル包絡を用いて合成音声を生成する音声合成装置であって、
所定のサンプリング周期で音声をサンプリングすることにより生成された音声波形に対して、前記所定のサンプリング周期よりも高精度で設定された、該音声波形のピッチ周期ごとの基準時刻を表すピッチマークに所定のパルス波形を重畳することで音源波形を生成する音源波形生成部と、
前記音声波形及び前記音源波形をそれぞれ直交変換することにより、前記音声波形の周波数スペクトル及び前記音源波形の周波数スペクトルを算出する直交変換部と、
前記音源波形の周波数スペクトル及び前記音声波形の周波数スペクトルに基づいて、前記スペクトル包絡を算出する包絡算出部と、
を有する音声合成装置。
（付記２）
前記音声波形の周波数スペクトルから基本周波数成分を抽出し、該基本周波数成分を逆直交変換することにより前記音声波形の基本波を算出し、該基本波の値または該基本波の位相が指定値となる時刻に前記ピッチマークを設定するピッチマーク設定部をさらに有する、付記１に記載の音声合成装置。
（付記３）
前記ピッチマーク設定部は、前記所定のサンプリング周期での第１のサンプリング点における前記基本波の値または前記基本波の位相と前記第１のサンプリング点よりも後の第２のサンプリング点における前記基本波の値または前記基本波の位相の間に前記指定値が含まれる場合、前記第１のサンプリング点及び前記第２のサンプリング点における前記基本波の値または位相を用いて補間処理を行うことにより、前記基本波の値または位相が前記指定値となる時刻を推定する、付記２に記載の音声合成装置。
（付記４）
前記音源波形生成部は、前記所定のサンプリング周期での何れかのサンプリング点と一致するピッチマークに前記所定のパルス波形としてインパルス関数波形を重畳し、一方、何れのサンプリング点とも一致しないピッチマークに前記所定のパルス波形としてsinc関数波形を重畳することで前記音源波形を生成する、付記１〜３の何れかに記載の音声合成装置。
（付記５）
前記包絡算出部は、前記音声波形の周波数スペクトルを前記音源波形の周波数スペクトルで除算することにより前記スペクトル包絡を算出する、付記１〜４の何れかに記載の音声合成装置。
（付記６）
前記包絡算出部は、前記音声波形の周波数スペクトル及び前記音源波形の周波数スペクトルを対数化してから逆フーリエ変換することで前記音声波形のケプストラム及び前記音源波形のケプストラムを算出し、前記音声波形のケプストラムから前記音源波形のケプストラムを減じることにより前記スペクトル包絡のケプストラムを算出し、該スペクトル包絡のケプストラムをフーリエ変換してから線形化することで前記スペクトル包絡を算出する、付記１〜４の何れかに記載の音声合成装置。
（付記７）
前記包絡算出部は、前記スペクトル包絡のケプストラムの所定次数以下の成分を抽出し、該所定次数以下の成分をフーリエ変換してから線形化することで前記スペクトル包絡を算出する、付記６に記載の音声合成装置。
（付記８）
声道での共振特性を表すスペクトル包絡を用いて合成音声を生成する音声合成方法であって、
所定のサンプリング周期で音声をサンプリングすることにより生成された音声波形に対して、前記所定のサンプリング周期よりも高精度で設定された、該音声波形のピッチ周期ごとの基準時刻を表すピッチマークに所定のパルス波形を重畳することで音源波形を生成し、
前記音声波形及び前記音源波形をそれぞれ直交変換することにより、前記音声波形の周波数スペクトル及び前記音源波形の周波数スペクトルを算出し、
前記音源波形の周波数スペクトル及び前記音声波形の周波数スペクトルに基づいて、前記スペクトル包絡を算出する、
ことを含む音声合成方法。
（付記９）
声道での共振特性を表すスペクトル包絡を用いて合成音声を生成する音声合成用コンピュータプログラムであって、
所定のサンプリング周期で音声をサンプリングすることにより生成された音声波形に対して、前記所定のサンプリング周期よりも高精度で設定された、該音声波形のピッチ周期ごとの基準時刻を表すピッチマークに所定のパルス波形を重畳することで音源波形を生成し、
前記音声波形及び前記音源波形をそれぞれ直交変換することにより、前記音声波形の周波数スペクトル及び前記音源波形の周波数スペクトルを算出し、
前記音源波形の周波数スペクトル及び前記音声波形の周波数スペクトルに基づいて、前記スペクトル包絡を算出する、
ことをコンピュータに実行させるための音声合成用コンピュータプログラム。
【符号の説明】
【００７５】
１    音声合成装置
２    入力部
３    記憶部
４    処理部
５    出力部
６    スピーカ
１０    言語処理部
１１    音声合成部
１２    スペクトル包絡抽出部
２１    ピッチマーク設定部
２２    音源波形生成部
２３    切り出し部
２４    窓掛部
２５    直交変換部
２６    包絡算出部
３１    対数化部
３２    逆フーリエ変換部
３３    差分部
３４    フーリエ変換部
３５    線形化部
３６    リフタ処理部
【図１】
2015118334.tif 000009
【図２】
2015118334.tif 000010
【図３】
2015118334.tif 000011
【図４】
2015118334.tif 000012
【図５】
2015118334.tif 000013
【図６】
2015118334.tif 000014
【図７】
2015118334.tif 000015
【図８】
2015118334.tif 000016
【図９】
2015118334.tif 000017
【図１０】
2015118334.tif 000018
【図１１】
2015118334.tif 000019
【図１２】
2015118334.tif 000020