(57)【要約】  【課題】ユーザがパラメータの値を設定・変更せずとも所望の合成音声を容易に得ることができる音声合成装置の提供  【解決手段】１．ユーザは、音声合成装置に対して、ある文字列のテキストデータである文字列情報を与える。２．ユーザは、自らが想定するアクセントで文字列を発音した音声情報を音声合成装置に与える。３．音声合成装置は、取得した音声情報からアクセントを抽出する。４．音声合成装置は、音声情報のアクセントに基づいて、文字列に対応する合成音声情報を生成する。これにより、ユーザが音声により入力したアクセントに基づいて、文字列に対応する合成音声を生成することができる。よって、ユーザは、自らが想定するアクセントを有する合成音声を容易に得ることができる。【選択図】    図１
2008185911.tif 000002
【特許請求の範囲】
【請求項１】
文字列に対応した合成音声を生成する音声合成装置であって、
前記音声合成装置は、
ある文字列を表す文字列情報を取得する文字列情報取得手段、
ある音声を音声情報として取得する音声情報取得手段、
取得した音声情報から、当該音声情報が有するアクセントをアクセント情報として抽出するアクセント情報抽出手段、
前記アクセント情報及び前記文字列情報に基づいて、前記文字列に対応する合成音声であって、前記アクセントを有するものを生成する音声合成手段、
を有する音声合成装置。
【請求項２】
文字列に対応した合成音声を生成する音声合成プログラムであって、
前記音声合成プログラムは、
コンピュータを、
ある文字列を表す文字列情報を取得する文字列情報取得手段、
ある音声を音声情報として取得する音声情報取得手段、
取得した音声情報から、当該音声情報が有するアクセントをアクセント情報として抽出するアクセント情報抽出手段、
前記アクセント情報及び前記文字列情報に基づいて、前記文字列に対応する合成音声であって、前記アクセントを有するものを生成する音声合成手段、
として機能させる音声合成プログラム。
【請求項３】
請求項１に係る音声合成装置又は請求項２に係る音声合成プログラムにおいて、
前記アクセント情報抽出手段は、さらに、
取得した音声情報の基本周波数の時間的変化を表す基本周波数関数を用いて、前記アクセント情報を抽出すること、
を特徴とするもの。
【請求項４】
請求項３に係る音声合成装置又は音声合成プログラムのいずれかにおいて、さらに、
前記アクセント情報抽出手段は、さらに、
取得した文字列情報が表す文字列と前記音声情報とを対応付けて、当該文字列を構成する音節のうち、どの音節にアクセントが存在するのかを判断し、アクセントが存在すると判断した音節を前記アクセント情報として抽出し、
前記音声合成手段は、さらに、
前記文字列情報における文字列に対応した合成音声であって、アクセントが存在すると判断した音節にアクセントを有するものを生成すること、
を特徴とするもの。
【請求項５】
請求項１〜請求項４に係る音声合成装置又は音声合成プログラムのいずれかにおいて、さらに、
生成した合成音声の特徴量を変更し、変更した特徴量を有する合成音声を生成する変更合成音声生成手段、
前記特徴量を変更した合成音声及び当該変更をする前の合成音声とを、合成音声候補として表示手段に表示する合成音声候補表示手段であって、表示した合成音声候補は入力手段によって選択可能なように構成されている合成音声候補表示手段、
前記表示手段に表示した合成音声候補のいずれかが選択されたと判断すると、当該合成音声候補を合成音声と決定する合成音声決定手段、
を有するもの。
【請求項６】
請求項５に係る音声合成装置又は音声合成プログラムのいずれかにおいて、
前記特徴量は、
音の高低若しくは速度のいずれか一方を少なくとも含むこと、
を特徴とするもの。
【請求項７】
請求項６に係る音声合成装置又は音声合成プログラムのいずれかにおいて、
前記合成音声候補表示手段は、
前記特徴量が、音の高低及び速度により構成されている場合、前記合成音声候補を音の高低及び速度を２軸とした平面上に配置すること、
を特徴とするもの。
【請求項８】
請求項５〜請求項７に係る音声合成装置又は音声合成プログラムのいずれかにおいて、
前記合成音声決定手段は、さらに、
前記表示手段に表示した合成音声候補のいずれかが選択されたと判断すると、当該合成音声候補を再生し、再生した前記合成音声候補に対して合成音声情報として確定する確定情報を獲得すると、前記合成音声候補を合成音声と決定すること、
を特徴とするもの。
【請求項９】
文字列に対応した合成音声をコンピュータを用いて生成する合成音声生成方法であって、
コンピュータが、ある文字列を表す文字列情報を取得し、
コンピュータが、ある音声を音声情報として取得し、
コンピュータが、取得した音声情報から、当該音声情報が有するアクセントをアクセント情報として抽出し、
コンピュータが、前記アクセント情報及び前記文字列情報に基づいて、前記文字列に対応する合成音声であって、前記アクセントを有するものを生成する合成音声生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声合成装置であって、特に、ユーザが音声合成に必要なパラメータの値を設定せずとも所望の合成音声を得ることができるものに関する。
【背景技術】
【０００２】
従来の音声合成装置を説明する。従来の音声合成装置の一つである音声合成装置１００では、音声合成エンジンに適切なパラメータを与えて、所望の音声合成データを得る作業を容易に行うことができる。
【０００３】
音声合成装置１００は、ユーザからキーボードを介して漢字仮名まじり文字列を獲得すると、獲得した漢字まじり文字列から音声合成に必要なパラメータの値を自動的に決定し、決定したパラメータの値に基づいて合成音声を生成する。ここで、パラメータには、アクセントの高低やアクセント位置などがある。
【０００４】
また、音声合成装置１００では、生成した合成音声に対する修正が可能となっている。音声合成装置１００は、生成した合成音声のパラメータをユーザが修正しやすいように、図１６に示すように、現在のパラメータの設定値をディスプレイ上に視覚的に表示する。図１６では、パラメータの一つであるアクセントの設定値がディスプレイ上に視覚的に表示されている。仮名文字列「あらしまちょーの」を構成する各仮名文字「あ」、「ら」、「し」、「ま」、「ちょ」「−」、「の」に対して与えられたアクセントに対応して、各仮名文字が上下位置に配置されている。この図では、仮名文字「あ」以外の仮名文字に対しては、仮名文字「あ」よりも相対的に高いアクセントが与えられている。
【０００５】
ここで、仮名文字「ま」についてアクセントを低くしたければ、マウスを操作して、仮名文字枠７２を下方向にドラッグする。これを受けて、音声合成装置１００は、仮名文字「ま」のアクセントを低くするようにパラメータの値を変更する。そして、図１７に示すように、音声合成装置１００は、仮名文字「ま」のかな文字枠７２を下方向に移動して表示する。このようにして、パラメータの一つであるアクセントの高低をユーザは容易に編集することができる。
【０００６】
【特許文献１】特開２００４−２４６１２９
【発明の開示】
【発明が解決しようとする課題】
【０００７】
前述の音声合成装置１００には、次のような問題点がある。音声合成装置１００では、ユーザは、パラメータの値を変更することによって、合成音声を修正することができる。つまり、ユーザが適切なパラメータを与えれば、音声合成装置１００は、ユーザが所望する合成音声を提供することができる。逆に言えば、ユーザが適切なパラメータの値を与えることができなければ、音声合成装置１００は、ユーザが所望する合成音声を提供することはない。
【０００８】
そして、一般的に、ユーザは、自らが所望する合成音声の具体的イメージは持っていても、どのパラメータをどの程度の値に変更すれば所望する合成音声となるのかを把握していない場合が多い。つまり、ユーザはパラメータの値の設定変更を行っては、合成音声を確認するという作業を繰り返さなければならない、という問題が生ずる。
【０００９】
例えば、ユーザがキーボードを介して「中山」と入力すると、音声合成装置１００は、「中山」を構成する仮名文字列「な」、「か」、「や」、「ま」に対して、パラメータの一つとしてアクセント「低」、「高」、「高」、「高」の値を自動的に決定し、「中山」の合成音声を生成する。この例において音声合成装置１００が各仮名文字「な」、「か」、「や」、「ま」に対して与えたアクセント「低」、「高」、「高」、「高」の値は、一般的に人名の「中山」が有するアクセントである。
【００１０】
ここで、ユーザは近畿のある地方における地名を想定して「中山」と入力していた場合を考える。この場合、各仮名文字「な」、「か」、「や」、「ま」に対してアクセント「低」、「高」、「低」、「低」の値が設定されていなければ、ユーザは所望する合成音声を得ることができない。つまり、ユーザは、各仮名文字「な」、「か」、「や」、「ま」に対するアクセントの値が「低」、「高」、「高」、「高」ではなく、「低」、「高」、「低」、「低」であることを認識した上で、アクセントの値を修正する必要がある。
【００１１】
しかし、音声学の専門家でないユーザが、単語やフレーズといった文字列のアクセントの位置やアクセントの大きさを把握することは容易ではない。よって、ユーザは、アクセントの位置、値の設定変更を行っては、合成音声を確認するという作業を、自らが想定する合成音声が得られるまで繰り返さなければならない。
【００１２】
そこで、本発明は、ユーザがパラメータの値を設定・変更せずとも所望の合成音声を容易に得ることができる音声合成装置の提供を目的とする。
【課題を解決するための手段】
【００１３】
本発明に関する課題を解決するための手段及び発明の効果を以下に示す。
【００１４】
本発明に係る音声合成装置、音声合成プログラム、及び音声合成方法では、ある文字列を表す文字列情報を取得し、ある音声を音声情報として取得し、取得した音声情報から、当該音声情報が有するアクセントをアクセント情報として抽出し、前記アクセント情報及び前記文字列情報に基づいて、前記文字列に対応する合成音声であって、前記アクセントを有するものを生成する。
【００１５】
これにより、ユーザが音声により入力したアクセントに基づいて、文字列に対応する合成音声を生成することができる。よって、ユーザは、自らが想定するアクセントを有する合成音声を容易に得ることができる。
【００１６】
本発明に係る音声合成装置又は音声合成プログラムでは、さらに、取得した音声情報の基本周波数の時間的変化を表す基本周波数関数を用いて、前記アクセント情報を抽出する。これにより、アクセントを容易に判断することができる。
【００１７】
本発明に係る音声合成装置又は音声合成プログラムでは、取得した文字列情報が表す文字列と前記音声情報とを対応付けて、当該文字列を構成する音節のうち、どの音節にアクセントが存在するのかを判断し、アクセントが存在すると判断した音節を前記アクセント情報として抽出し、前記文字列情報における文字列に対応した合成音声であって、アクセントが存在すると判断した音節にアクセントを有するものを生成する。これにより、アクセントが存在する音節を容易に特定することができる。
【００１８】
本発明に係る音声合成装置又は音声合成プログラムでは、生成した合成音声の特徴量を変更し、変更した特徴量を有する合成音声を生成し、前記特徴量を変更した合成音声及び当該変更をする前の合成音声とを、合成音声候補として表示手段に表示し、表示した合成音声候補は入力手段によって選択可能なように構成されており、前記表示手段に表示した合成音声候補のいずれかが選択されたと判断すると、当該合成音声候補を合成音声と決定する。
【００１９】
これにより、複数の合成音声候補を提供することができる。よって、ユーザは、提供された合成音声候補から選択するという容易な操作で合成音声を得ることができる。
【００２０】
本発明に係る音声合成装置又は音声合成プログラムでは、前記特徴量は、音の高低若しくは速度のいずれか一方を少なくとも含む。これにより、音の高低又は／及び速度を変更した、合成音声候補を容易に得ることができる。
【００２１】
本発明に係る音声合成装置又は音声合成プログラムでは、前記特徴量が、音の高低及び速度により構成されている場合、前記合成音声候補を音の高低及び速度を２軸とした平面上に配置する。
【００２２】
これにより、ユーザは、提供される合成音声候補の相関関係を容易に把握することができる。よって、ユーザは、容易に合成音声候補から所望のもの選択することができる。
【００２３】
本発明に係る音声合成装置又は音声合成プログラムでは、前記表示手段に表示した合成音声候補のいずれかが選択されたと判断すると、当該合成音声候補を再生し、再生した前記合成音声候補に対して合成音声情報として確定する確定情報を獲得すると、前記合成音声候補を合成音声と決定する。
【００２４】
これにより、ユーザは、合成音声候補の再生音を確認した上で、合成音声候補の選択を行うことができる。
【００２５】
ここで、請求項に記載されている要素と実施例における要素との対応関係を示す。音声合成装置は音声合成装置２１に対応する。音声情報取得手段はＣＰＵ２１１、サウンド回路２１８、マイクロフォン２１８ｍに、アクセント情報抽出手段はＣＰＵ２１１及びメモリ２１２に、音声合成手段はＣＰＵ２１１及びメモリ２１２に、文字列情報取得手段はＣＰＵ２１１、メモリ２１２、キーボード２１４及びマウス２１５に、変更合成音声生成手段はＣＰＵ２１１及びメモリ２１２に、合成音声候補表示手段はＣＰＵ２１１及びメモリ２１２に、合成音声決定手段はＣＰＵ２１１及びメモリ２１２に、それぞれ該当する。
【００２６】
音声情報取得手段はステップＳ５０１、Ｓ５０３、及びＳ５１３の処理を、アクセント情報抽出手段はステップＳ５１５、Ｓ５１７、Ｓ８０１〜Ｓ８１５、Ｓ９０１〜Ｓ９１３の処理を、音声合成手段はステップＳ５１９、Ｓ１１０１〜Ｓ１１０５の処理を、文字列情報取得手段はステップＳ５０１、Ｓ５０３、及びＳ５１１の処理を、変更合成音声生成手段はステップＳ１００１〜Ｓ１００５、Ｓ１２０１〜Ｓ１２０５の処理を、合成音声候補表示手段はステップＳ１２０７の処理を、合成音声決定手段はステップＳ１２０９〜Ｓ１２１５の処理を、それぞれ実行する。
【００２７】
アクセント情報は、アクセント位置情報に対応する。
【００２８】
「特徴量」とは、音声を特徴付ける情報をいい、音声の高・低、音声の速度の早い・遅い等を含む概念である。
【００２９】
「音声」とは、直接的、間接的を問わず発せられる音をいい、音を発する主体は人間のみに限定されない概念である。また、アクセントを有するものであればよく、発せられた音声の意味内容が理解できないようなもの、例えばハミング等も含む概念である。
【発明を実施するための最良の形態】
【００３０】
本発明における音声合成装置の実施例を以下において説明する。
【実施例１】
【００３１】
1.  概要
本発明に係る音声合成装置の概要を図１に基づいて説明する。
【００３２】
１．ユーザは、音声合成装置に対して、ある文字列のテキストデータである文字列情報を与える。
【００３３】
２．ユーザは、自らが想定するアクセントで文字列を発声した音声情報を音声合成装置に与える。
【００３４】
３．音声合成装置は、取得した音声情報からアクセントを抽出する。
【００３５】
４．音声合成装置は、音声情報のアクセントに基づいて、文字列に対応する合成音声情報を生成する。
【００３６】
これにより、ユーザが音声により入力したアクセントに基づいて、文字列に対応する合成音声を生成することができる。よって、ユーザは、自らが想定するアクセントを有する合成音声を容易に得ることができる。
【００３７】
2.  機能ブロック図
本発明に係る音声合成装置Ｍ１を図２に示す機能ブロック図に基づいて説明する。音声合成装置Ｍ１は、音声情報取得手段Ｍ１１、アクセント情報抽出手段Ｍ１３、音声合成手段Ｍ１５、及び文字列情報取得手段Ｍ１７を有している。
【００３８】
音声情報取得手段Ｍ１１は、ある音声を音声情報として取得する。
【００３９】
アクセント情報抽出手段Ｍ１３は、取得した音声情報から、当該音声情報が有するアクセントをアクセント情報として抽出する。また、アクセント情報抽出手段Ｍ１３は、取得した音声情報の基本周波数の時間的変化を表す基本周波数関数を用いて、前記アクセント情報を抽出する。さらに、アクセント情報抽出手段Ｍ１３は、取得した文字列情報が表す文字列と前記音声情報とを対応付けて、当該文字列を構成する音節のうち、どの音節にアクセントが存在するのかを判断し、アクセントが存在すると判断した音節を前記アクセント情報として抽出する。
【００４０】
音声合成手段Ｍ１５は、前記アクセント情報及び前記文字列情報に基づいて、前記文字列に対応する合成音声であって、前記アクセントを有するものを生成する。また、音声合成手段Ｍ１５は、前記文字列情報における文字列に対応した合成音声であって、アクセントが存在すると判断した音節にアクセントを有するものを生成する。
【００４１】
文字列情報取得手段Ｍ１７は、ある文字列を表す文字列情報を取得する。
【００４２】
これにより、ユーザが音声により入力したアクセントに基づいて、文字列に対応する合成音声を生成することができる。よって、ユーザは、自らが想定するアクセントを有する合成音声を容易に得ることができる。また、アクセントを容易に判断することができる。さらに、アクセントが存在する音節を容易に特定することができる。
【００４３】
3.  音声合成装置２１のハードウェア構成
本発明に係る音声合成装置である音声合成装置２１のハードウェア構成を図３を用いて説明する。音声合成装置２１は、ＣＰＵ２１１、メモリ２１２、ハードディスク２１３、キーボード２１４、マウス２１５、ディスプレイ２１６、ＣＤ−ＲＯＭドライブ２１７、サウンド回路２１８、スピーカ２１８ｓ、及びマイクロフォン２１８ｍを備えている。
【００４４】
ＣＰＵ２１１は、ハードディスク２１３に記録されているオペレーティング・システム（ＯＳ）、音声合成プログラム等その他のアプリケーションに基づいた処理を行う。メモリ２１２は、ＣＰＵ２１１に対して作業領域を提供する。ハードディスク２１３は、オペレーティング・システム（ＯＳ）、音声合成プログラム等その他のアプリケーション及び各種データを記録保持する。なお、ハードディスク２１３に記録されているデータについては後述する。
【００４５】
キーボード２１４、マウス２１５は、外部からの命令を受け付ける。ディスプレイ２１６は、ユーザーインターフェイス等の画像を表示する。ＣＤ−ＲＯＭドライブ２１７は、音声合成プログラムが記録されているＣＤ−ＲＯＭ２１０から音声合成プログラム及び他のＣＤ−ＲＯＭからその他のアプリケーションのプログラムを読み取る等、ＣＤ−ＲＯＭからのデータの読み取りを行う。サウンド回路２１８は、与えられた音声合成データをアナログ波形に変換してスピーカ２１８ｓへ出力する。また、サウンド回路２１８は、マイクロフォン２１８ｍを介して取得したアナログ波形をデジタル波形に変換する。
【００４６】
4.  データ
音声合成装置２１がハードディスク２１３に記録する音節持続時間データベース（以下、音節持続時間ＤＢとする。）について図４に基づいて説明する。音節持続時間ＤＢは、音節と当該音節を発声したときの標準的な持続時間とを関連付けたデータベースである。
【００４７】
音節持続時間ＤＢは、［音節］列Ｃ４０１及び［持続時間］列Ｃ４０５を有している。［音節］列Ｃ４０１には、日本語において一般的に用いられている音節の種類が記述される。［持続時間］列Ｃ４０５には、［音節］列Ｃ４０１に記述された音節が標準的な速度で発声されたときの発声時間が持続時間として記述される。
【００４８】
5.  音声合成装置２１の動作
音声合成装置２１のＣＰＵ２１１の動作の概要を図５を用いて説明する。ＣＰＵ２１１は、文字列情報若しくは音声情報を取得するための文字列・音声情報取得画面Ｄ１を表示する（Ｓ５０１）。
【００４９】
音声合成装置２１のディスプレイ２１６に表示される文字列・音声情報取得画面Ｄ１の一例を図６に示す。文字列・音声情報取得画面Ｄ１は、文字列入力領域Ａ６０１、音声情報取得開始ボタンＢ６０１を有している。文字列入力領域Ａ６０１は、ユーザが音声合成しようとする仮名文字列を表す文字列情報をキーボード２１４等の入力手段を用いて入力するための領域である。音声情報取得開始ボタンＢ６０１は、ユーザが文字列に与えるアクセントを音声で入力しようとする際にマウス２１５等で選択するボタンである。
【００５０】
図５に戻って、ＣＰＵ２１１は、音声情報取得開始ボタンＢ６０１（図６参照）が選択されたと判断すると（Ｓ５０３）、文字列・音声情報取得画面Ｄ１の文字列入力領域Ａ６０１に入力された文字列を文字列情報として取得し、メモリ２１２へ記憶する（Ｓ５１１）。また、ＣＰＵ２１１は、マイクロフォン２１８ｍを介して音声情報を取得する（Ｓ５１３）。ユーザは、マイクロフォンに向かって、文字列・音声情報取得画面Ｄ１の文字列入力領域Ａ６０１に入力された文字列に対応する音声であって、自らが想定するアクセントを有する音声を入力する。ＣＰＵ２１１は、音声情報を獲得したと判断すると、音節アライメント処理（Ｓ５１５）及びアクセント位置判断処理（Ｓ５１７）、及び音声合成処理を実行する（Ｓ５１９）を実行する。ＣＰＵ２１１は、生成した合成音声情報をスピーカ２１８ｓを介して再生する（Ｓ５２１）。
【００５１】
以降において、音節アライメント処理（Ｓ５１５）、及びアクセント位置判断処理（Ｓ５１７）、及び音声合成処理（Ｓ５１９）を説明する。
【００５２】
5.1.  音節アライメント処理
ＣＰＵ２１１が実行する音節アライメント処理（図５：Ｓ５１５参照）は、取得した音声情報のどの位置に文字列情報を構成する各仮名文字の音節区切りがあるのかを判断するために実行する処理である。ＣＰＵ２１１が実行する音節アライメント処理を図７に示すフローチャートを用いて説明する。
【００５３】
ＣＰＵ２１１は、ステップＳ５１１（図５参照）で取得した文字列情報を構成する仮名文字に対応する持続時間を音節持続時間ＤＢ（図４参照）の［持続時間］列Ｃ４０５から取得する（Ｓ８０１）。ＣＰＵ２１１は、取得した［持続時間］列Ｃ４０５の値を合計した合計持続時間を算出する（Ｓ８０３）。ＣＰＵ２１１は、文字列情報を構成する仮名文字について、算出した合計持続時間と各仮名文字の持続時間との比を算出する（Ｓ８０５）。
【００５４】
また、ＣＰＵ２１１は、ステップＳ５１３（図５参照）で取得した音声情報の発声時間を計測する（Ｓ８１１）。ＣＰＵ２１１は、ステップＳ８０５で算出した合計持続時間と各仮名文字の持続時間との比と、ステップＳ８１１で計測した発声時間とに基づいて、文字列情報を構成する仮名文字と音声情報との対応関係を判断し（Ｓ８１３）、文字−音声対応テーブルとしてメモリ２１２へ記憶する（Ｓ８１５）。
【００５５】
ここで、文字−音声対応テーブルを図８を用いて説明する。文字−音声対応テーブルは、［文字］列Ｃ１４０１、［対応時間］列Ｃ１４０３を有している。［文字］列Ｃ１４０１には、文字列情報を構成する仮名文字が記述される。［対応時間］列Ｃ１４０３には、音声情報において、［文字］列Ｃ１４０１に記述された仮名文字に対応する時間が記述される。
【００５６】
例えば、文字列情報「なかやま」を構成する仮名文字「な」について、音声情報の０秒００から０秒３０までが対応する場合、［文字］列Ｃ１４０１の「な」に対応する［対応時間］列Ｃ１４０３には、値「０’００”−０’３０”」が記述される。
【００５７】
これにより、マイクロフォン２１８ｍから取得した音声情報のどの時間からどの時間までが文字列情報を構成する各仮名文字に対応するのか、という音声情報と文字列情報を構成する各仮名文字との対応関係を把握することが可能となる。
【００５８】
5.2.  アクセント位置判断処理
ＣＰＵ２１１が実行するアクセント位置判断処理（図５：Ｓ５１７参照）を図９に示すフローチャートを用いて説明する。ＣＰＵ２１１は、ステップＳ５１３（図５参照）で取得した音声情報に対する基本周波数関数を算出する（Ｓ９０１）。なお、基本周波数関数における基本周波数の算出は、取得した音声情報の自己相関関数を算出し、相関値が一定のしきい値以上である周期を求めることによって行う。
【００５９】
ＣＰＵ２１１は、算出した基本周波数関数の一次微分関数を算出する（Ｓ９０３）。そして、ＣＰＵ２１１は、算出した基本周波数関数の一次微分関数の値が正から負に変わる位置にアクセント位置があると判断し（Ｓ９０５）、アクセント位置に対応する時間をアクセント位置情報としてメモリ２１２へ一時的に記憶する（Ｓ９０７）。ＣＰＵ２１１は、メモリ２１２から文字−音声対応テーブルを取得し（Ｓ９０９）、アクセント位置情報の時間が文字列情報を構成する仮名文字のうちどの仮名文字に対応するのかを判断する（Ｓ９１１）。ＣＰＵ２１１は、アクセント位置が存在する仮名文字をアクセント文字情報としてメモリ２１２へ一時的に記憶する（Ｓ９１３）。
【００６０】
音節アライメント処理によって、音声情報と文字列情報を構成する仮名文字との対応付けが終了しており、どの時間からどの時間までの音声情報がどの仮名文字に対応しているのかを把握することが可能となっている。よって、アクセント位置情報に対応する時間がどの仮名文字に対応するのかも判断することができる。
【００６１】
5.3.  音声合成処理
ＣＰＵ２１１が実行する音声合成処理（図５：Ｓ５１９参照）を図１０に示すフローチャートを用いて説明する。ＣＰＵ２１１は、ステップＳ５１１で取得した文字列情報をメモリ２１２から取得する（Ｓ１１０１）。また、ＣＰＵ２１１は、アクセント位置判断処理（図５：Ｓ５１７参照）で得られたアクセント文字情報をメモリ２１２から取得する（Ｓ１１０３）。
【００６２】
ＣＰＵ２１１は、文字列情報及びアクセント文字情報に基づいて、合成音声情報を生成し（Ｓ１１０５）、合成音声情報としてメモリ２１２へ記憶する（Ｓ１１０７参照）。なお、合成音声の生成については、従来から一般的に用いられている音声合成技術を用いる。
【００６３】
このように、音声合成装置２１は、合成音声を生成しようとする文字列に与えるアクセントについては、ユーザが発声した音声情報から取得する。つまり、ユーザは、仮名文字列に与えるアクセントを有する音声を、自らが発声することによって、音声合成装置２１へ提供することができる。よって、ユーザは、自らが発声したアクセントを有する文字列の合成音声を容易に得ることができる。
【００６４】
6.  具体例
これまで説明してきた音声合成装置２１のＣＰＵ２１１の動作を具体的な例を示しながら説明する。
【００６５】
ユーザは、文字列情報若しくは音声情報を取得するための文字列・音声情報取得画面Ｄ１を表示する（図５：Ｓ５０１参照）。音声合成装置２１のディスプレイ２１６に表示される文字列・音声情報取得画面Ｄ１（図６参照）の文字列入力領域Ａ６０１に、キーボード２１４を用いて、仮名文字列「なかやま」を入力し、音声情報取得開始ボタンＢ６０１をマウス２１５で選択したとする。なお、ユーザは、近畿のある地方における地名「中山」に対する合成音声を生成することを目的としているとする。
【００６６】
ＣＰＵ２１１は、音声情報取得開始ボタンＢ６０１が選択されたと判断すると（図５：Ｓ５０３参照）、文字列入力領域Ａ６０１に入力された仮名文字列「なかやま」を文字列情報として取得しメモリ２１２へ記憶する（図５：Ｓ５１１参照）。
【００６７】
また、ＣＰＵ２１１は、マイクロフォン２１８ｍを介して音声情報を取得する（図５：Ｓ５１３参照）。ユーザは、マイクロフォンに向かって地名としての文字列「なかやま」（各仮名文字「な」、「か」、「や」、「ま」に対するアクセントが「低」、「高」、「低」、「低」）を発音し、音声情報として入力する。ＣＰＵ２１１は、音声情報を獲得したと判断すると、取得した文字列情報「なかやま」を構成する各仮名文字「な」、「か」、「や」、「ま」に対応する持続時間を音節持続時間ＤＢの［持続時間］列Ｃ４０５から取得する（図７：Ｓ８０１参照）。ＣＰＵ２１１は、取得した［持続時間］列Ｃ４０５の値を合計した合計持続時間を算出する（図７：Ｓ８０３参照）。ＣＰＵ２１１は、文字列情報を構成する仮名文字について、算出した合計持続時間と各仮名文字の持続時間との比を算出する（図７：Ｓ８０５参照）。
【００６８】
また、ＣＰＵ２１１は、マイクロフォン２１８ｍから取得した音声情報の発音時間を計測する（図７：Ｓ８１１参照）。ＣＰＵ２１１は、合計持続時間と各仮名文字の持続時間との比と、計測した発音時間とに基づいて、文字列情報を構成する各仮名文字と音声情報との対応関係を判断し（図７：Ｓ８１３参照）、文字−音声対応テーブル（図８参照）を生成しメモリ２１２へ記憶する（図７：Ｓ８１５参照）。
【００６９】
ＣＰＵ２１１は、取得した音声情報に対する基本周波数関数を算出する（図９：Ｓ９０１参照）。ＣＰＵ２１１は、算出した基本周波数関数の一次微分関数を算出し（図９：Ｓ９０３参照）、一次微分関数の値が正から負に変わる位置にアクセント位置があると判断する（図９：Ｓ９０５参照）。ＣＰＵ２１１は、アクセント位置に対応する時間をアクセント位置情報としてメモリ２１２へ一時的に記憶する（図９：Ｓ９０７参照）。ＣＰＵ２１１は、文字−音声対応テーブルを取得し（図９：Ｓ９０９参照）、アクセント位置情報の時間が文字列情報を構成する仮名文字「な」、「か」、「や」、「ま」のうちどの仮名文字に対応するのかを判断する（図９：Ｓ９１１参照）。ＣＰＵ２１１は、アクセント位置が存在する仮名文字が仮名文字「か」であると判断すると、アクセント文字情報としてメモリ２１２へ一時的に記憶する（図９：Ｓ９１３参照）。
【００７０】
そして、ＣＰＵ２１１は、文字列情報「なかやま」をメモリ２１２から取得する（図１０：Ｓ１１０１参照）。ＣＰＵ２１１は、アクセント文字情報である仮名文字「か」をメモリ２１２から取得する（図１０：Ｓ１１０３参照）。
【００７１】
ＣＰＵ２１１は、文字列情報及びアクセント文字情報に基づいて、合成音声情報を生成し（図１０：Ｓ１１０５参照）、合成音声情報としてメモリ２１２へ記憶する（図１０：Ｓ１１０７参照）。
【００７２】
ＣＰＵ２１１は、生成した合成音声情報をスピーカ２１８ｓを介して再生する（図５：Ｓ５２１参照）。
【００７３】
これにより、ユーザは、自らが発声したアクセントを有する文字列「なかやま」の合成音声を容易に得ることができる。
【実施例２】
【００７４】
1.  概要
本発明に係る音声合成装置の実施例２の概要を説明する。前述の実施例１においては、音声合成装置２１は、文字列に与えるアクセントを、当該アクセントを有する音声をユーザが自ら発声した音声情報から抽出することによって、当該アクセントを有する文字列の合成音声を生成した。これにより、ユーザは、自らが発声したアクセントを有する文字列の合成音声を容易に得ることができた。
【００７５】
その一方、音声合成装置２１は、各音節の標準的な音の高さ、速さ等を有する音節音声データを用いて合成音声を生成していた。ユーザによっては、標準的な音の高さや速さではなく、「もう少し高い音色で」や「もう少し遅いスピードで」等の要求があることもある。
【００７６】
本実施例における音声合成装置は、合成音声に対して変更を容易に加えたいユーザの要求を満たすために、合成音声に対して所定のパラメータを変更した合成音声を幾つか提供することによって、ユーザが、自らが望む合成音声を容易に取得できるようにするものである。
【００７７】
なお、本実施例においては、実施例１と同様の構成・動作については、実施例１で与えた番号と同じ番号を与えている。
【００７８】
2.  機能ブロック図
本発明に係る音声合成装置Ｍ５１を図１１に示す機能ブロック図に基づいて説明する。音声合成装置Ｍ５１は、音声情報取得手段Ｍ１１、アクセント情報抽出手段Ｍ１３、音声合成手段Ｍ１５、文字列情報取得手段Ｍ１７、変更合成音声生成手段Ｍ２１、合成音声候補表示手段Ｍ２３、及び合成音声決定手段Ｍ２５を有している。音声情報取得手段Ｍ１１、アクセント情報抽出手段Ｍ１３、音声合成手段Ｍ１５、文字列情報取得手段Ｍ１７については、実施例１と同様の構成であるため、以下での記載は省略する。
【００７９】
変更合成音声生成手段Ｍ２１は、生成した合成音声の特徴量を変更し、変更した特徴量を有する合成音声を生成する。
【００８０】
合成音声候補表示手段Ｍ２３は、前記特徴量を変更した合成音声及び当該変更をする前の合成音声とを、合成音声候補として表示手段に表示する。また、合成音声候補表示手段Ｍ２３は、表示した合成音声候補は入力手段によって選択可能なように構成する。合成音声候補表示手段Ｍ２３は、前記特徴量が、音の高低及び速度により構成されている場合、前記合成音声候補を音の高低及び速度を２軸とした平面上に配置する。
【００８１】
合成音声決定手段Ｍ２５は、前記表示手段に表示した合成音声候補のいずれかが選択されたと判断すると、当該合成音声候補を合成音声と決定する。合成音声決定手段Ｍ２５は、さらに、前記表示手段に表示した合成音声候補のいずれかが選択されたと判断すると、当該合成音声候補を再生し、再生した前記合成音声候補に対して合成音声情報として確定する確定情報を獲得すると、前記合成音声候補を合成音声と決定する。
【００８２】
これにより、複数の合成音声候補を提供することができる。よって、ユーザは、提供された合成音声候補から選択するという容易な操作で合成音声を得ることができる。また、音の高低又は／及び速度を変更した、合成音声候補を容易に得ることができる。さらに、ユーザは、提供される合成音声候補の相関関係を容易に把握することができる。よって、ユーザは、容易に合成音声候補から所望のもの選択することができる。さらに、ユーザは、合成音声候補の再生音を確認した上で、合成音声候補の選択を行うことができる。
【００８３】
3.  音声合成装置５１のハードウェア構成
本発明に係る音声合成装置である音声合成装置５１のハードウェア構成は、実施例１におけるハードウェア構成（図３参照）と同様である。
【００８４】
4.  データ
本発明に係る音声合成装置である音声合成装置５１のデータは、実施例１におけるデータ（図４参照）と同様である。
【００８５】
5.  音声合成装置５１の動作
音声合成装置５１のＣＰＵ２１１の動作の概要を図１２を用いて説明する。図１２におけるステップＳ５０１〜Ｓ５１９及びＳ５２１の処理については、実施例１の音声合成装置２１のＣＰＵ２１１の動作と同様である。従って、以下においては、ステップＳ５５１、Ｓ５５３の処理を説明する。
【００８６】
また、ＣＰＵ２１１は、ステップＳ５１９の音声合成処理が終了すると、高さ・速度抽出処理（Ｓ５５１）を実行する。ＣＰＵ２１１は、高さ・速度抽出処理（Ｓ５５１）が終了すると、合成音声候補提供処理（Ｓ５５３）を実行する。
【００８７】
以降において、高さ・速度抽出処理（Ｓ５５１）及び合成音声候補提供処理（Ｓ５５３）を説明する。
【００８８】
5.1.  高さ・速度抽出処理
ＣＰＵ２１１が実行する高さ・速度抽出処理（図１２：Ｓ５５１参照）を図１３に示すフローチャートを用いて説明する。ＣＰＵ２１１は、ステップＳ５１３で取得した音声情報における音節特徴量の一つである音の高低を高さ情報として取得する（Ｓ１００１）。さらに、ＣＰＵ２１１は、ステップＳ５１３で取得した音声情報における音節特徴量の一つである音声情報の速さを速度情報として算出する（Ｓ１００３）。ＣＰＵ２１１、算出した高さ情報及び速度情報を、メモリ２１２へ一時的に記憶保持する（Ｓ１００５）。なお、高さ情報、速度情報を取得する際には、音声情報の周波数成分における音響に関する情報（音響情報）、韻律に関する情報（韻律情報）等を用いればよい。
【００８９】
5.2.  合成音声候補提供処理
ＣＰＵ２１１が実行する合成音声候補提供処理（図１２：Ｓ５５３参照）を図１４に示すフローチャートを用いて説明する。ＣＰＵ２１１は、高さ・速度抽出処理Ｓ５５１（図１２参照）より抽出した速度情報及び高さ情報をメモリ２１２から取得する（Ｓ１２０１）。ＣＰＵ２１１は、合成音声情報の速度情報及び高さ情報の値を変更し、変更した特徴量を有する合成音声情報を生成する（Ｓ１２０３）。具体的には、予め合成音声を特徴付けるパラメータを設定しておき、また、当該パラメータの値に基づいたコスト値を基準コスト値として算出しておく。一方、ステップＳ１２０３で合成した合成音声情報の前記パラメータに対応する値に基づいたコスト値を合成コスト値として算出する。そして、基準コスト値と合成コスト値とを比較して、所定の条件に合致する合成コスト値を有する合成音声情報を生成する。なお、ＣＰＵ２１１は、できるかぎり、複数の合成音声情報を生成する。
【００９０】
ＣＰＵ２１１は、ステップＳ１２０３で生成した合成音声情報にステップＳ１１０５（図１０参照）で生成した合成音声情報を加えて、合成音声候補情報とする（Ｓ１２０４）。そして、ＣＰＵ２１１は、合成音声候補情報のそれぞれの速度情報の値及び高さ情報の値に基づいて、速度及び音の高さを２軸とした合成音声選択図に、各合成音声候補情報を配置する（Ｓ１２０５）。ＣＰＵ２１１は、生成した合成音声選択図をディスプレイ２１６に表示する（Ｓ１２０７）。
【００９１】
ディスプレイ２１６に表示される合成音声選択図を図１５に示す。合成音声選択図には、音の高さを表す縦軸、音の速さを表す横軸によって構成される平面図が表示される。速度情報の値及び高さ情報の値に基づいて合成音声候補情報が特定され、合成音声選択図の平面図上に表示される。なお、縦軸と横軸との交点（原点）には、ステップＳ１１０５（図１０参照）で合成された合成音声情報が配置される。合成音声選択図上に表示されている合成音声候補情報は、ユーザがマウス２１５等を用いて選択できるように構成されている。
【００９２】
図１４に戻って、ＣＰＵ２１１は、決定ボタンＢ１３０１（図１５参照）が選択されたか否かを判断する（Ｓ１２０９）。ＣＰＵ２１１は、決定ボタンＢ１３０１が選択されておらず、一の合成音声候補情報が選択されたと判断すると（Ｓ１２１１）、選択された合成音声候補情報に対する音声をサウンド回路２１８を介してスピーカ２１８ｓから出力する（Ｓ１２１３）。
【００９３】
ＣＰＵ２１１は、決定ボタンＢ１３０１が選択されたと判断すると、その時点で選択されている合成音声候補情報を合成音声情報と判断して、ハードディスク２１３へ記録する（Ｓ１２１５）。
【００９４】
［その他の実施例］
（１）音節アライメント処理
前述の実施例１においては、取得した音声情報のどの位置に音節の区切りがあるのかを判断する音節アライメント処理において、音節配列を構成する音節の標準的な継続時間を加算し、音声情報の継続時間との相関関係から、アクセント位置を判断した。しかし、音声情報のどの位置に音節の区切りがあるのかを判断できるのであれば例示のものに限定されない。例えば、隠れマルコフモデルを用いる音声認識技術等を利用して、音声情報のどの位置に音節の区切りがあるのかを判断するようにしてもよい。
【００９５】
（２）音節持続時間ＤＢ
前述の実施例１においては、［音節］列及び［持続時間］列からなる単純な音節持続時間ＤＢを用いて、文字列情報を構成する仮名文字に対応する持続時間を取得した。しかし、実際には同じ音節であっても、先行、後続する音節や当該音節の発話フレーズ内での位置、発声の強弱によって持続時間は変化する。そのため、それらの条件を含むより複雑なデータベースであっても良い。さらに、データベースから当該音節の持続時間を取得するために単純なテーブル検索を用いるのではなく、確率モデルや決定木などを用いても良い。
【００９６】
（３）音声情報
前述の実施例１においては、音声情報をサウンド回路２１８及びマイクロフォン２１８ｍにより取得するとしたが、音声情報を得られるものであれば例示のものに限定されない。例えば、ＣＤ−ＲＯＭ等の記録媒体を介して音声情報を取得するようにしてもよい。また、通信回線を介して音声情報を取得するようにしてもよい。
【００９７】
（４）文字列情報
前述の実施例１においては、文字列情報として日本語の仮名文字を例示したが、文字列であれば例示のものに限定されない。例えば、英語等の外国語であってもよい。
【００９８】
（５）特徴量
前述の実施例２においては、合成音声候補情報を生成するにあたって、音の高さ及び速度を特徴量としたが、合成音声候補情報を生成できるものであれば、例示のものに限定されない。例えば、明るい、暗い等の音声の主観的な特徴を表現する情報であってもよい。
【００９９】
（６）合成音声候補情報
前述の実施例２においては、合成音声候補情報として合成を生成するにあたり、音声情報及び合成音声情報の音の高さ及び速度の値をパラメータの値として算出した基準コスト値、合成コスト値を用いることとしたが、合成音声候補情報を生成できるものであれば、例示の方法に限定されない。
【０１００】
また、基準コスト値を算出するにあたり、音声情報から取得した音の高さ及び速度を用いたが、例示のものに限定されない。例えば、予め設定されたパラメータの値を用いて、基準コスト値を算出するようにしてもよい。この場合、音声情報から音の高さ及び速度を抽出せずともよい。
【０１０１】
（７）候補の表示
前述の実施例２においては、音の高さ及び速度を特徴量として、音の高さ及び速度を２軸とした合成音声選択図を生成したが、２種類の特徴量に限定されない。例えば、３種類、４種類の特徴量を選択するようにしてもよい。
【０１０２】
また、合成音声選択図は、合成音声候補情報を選択できるものであれば、例示の２軸表示のものに限定されない。例えば、３軸、４軸表示等であってもよい。
【０１０３】
さらに、合成音声選択図の縦軸と横軸との交点（原点）には、ステップＳ１１０５（図１０参照）で合成された合成音声情報が配置されるとしたが、ユーザからステップＳ５１３で取得した音声情報を原点に表示するようにしてもよい。
【０１０４】
（８）フローチャートにおける処理の順番
前述の実施例１及び実施例２においては、図に示した各フローチャートに基づいて、各処理を実現するようにした。しかし、各処理を実現できるものであれば、各フローチャート内における処理の順番は例示のものに限定されない。
【図面の簡単な説明】
【０１０５】
【図１】本発明における音声合成装置の概要を示した図である。
【図２】実施例１における音声合成装置の機能ブロック図を示した図である。
【図３】音声合成装置２１のハードウェア構成を示した図である。
【図４】音節持続時間ＤＢのデータ構造を示した図である。
【図５】音声合成装置２１の動作を示したフローチャートである。
【図６】文字列・音声情報取得画面Ｄ１を示した図である。
【図７】音節アライメント処理を表したフローチャートである。
【図８】文字−音声対応テーブルを示した図である。
【図９】アクセント位置判断処理を示したフローチャートである。
【図１０】音声合成処理を示したフローチャートである。
【図１１】実施例２における音声合成装置の機能ブロック図を示した図である。
【図１２】音声合成装置５１の動作を示したフローチャートである。
【図１３】高さ・速度抽出処理を示したフローチャートである。
【図１４】合成音声候補提供処理を示したフローチャートである。
【図１５】合成音声選択図を示した図である。
【図１６】従来の音声合成装置を説明するための図である。
【図１７】従来の音声合成装置を説明するための図である。
【符号の説明】
【０１０６】
２１・・・・・音声合成装置
５１・・・・・音声合成装置
Ｍ１１・・・・・音声情報取得手段
Ｍ１３・・・・・アクセント情報抽出手段
Ｍ１５・・・・・音声合成手段
Ｍ１７・・・・・文字列情報取得手段
Ｍ２１・・・・・変更合成音声生成手段
Ｍ２３・・・・・合成音声候補表示手段
Ｍ２５・・・・・合成音声決定手段
【図１】
2008185911.tif 000003
【図２】
2008185911.tif 000004
【図３】
2008185911.tif 000005
【図４】
2008185911.tif 000006
【図５】
2008185911.tif 000007
【図６】
2008185911.tif 000008
【図７】
2008185911.tif 000009
【図８】
2008185911.tif 000010
【図９】
2008185911.tif 000011
【図１０】
2008185911.tif 000012
【図１１】
2008185911.tif 000013
【図１２】
2008185911.tif 000014
【図１３】
2008185911.tif 000015
【図１４】
2008185911.tif 000016
【図１５】
2008185911.tif 000017
【図１６】
2008185911.tif 000018
【図１７】
2008185911.tif 000019