(57)【要約】【課題】  コーパスベース音声合成では、所望の韻律を持つ素片が見つからなかった場合、合成音声の品質が損なわれるという課題がある。特に、所望の韻律から外れた素片と、その両側の素片との間で韻律的ギャップが生じ、そのために合成音声の自然性が大幅に損なわれるという課題がある。【解決手段】  素片を選択し、選択された素片に対して韻律変更を行なうか否かを判定し、判定の結果に基づいて韻律変更を行なうと判定された素片の韻律変更目標値を計算し、韻律変更を行なうと判定された素片の韻律が計算された韻律変更目標値となるように韻律変更を行なう。【選択図】  図２
2006337476.tif 000002
【特許請求の範囲】
【請求項１】
素片を選択する工程と、
前記選択された素片に対して韻律変更を行なうか否か判定する工程と、
前記判定の結果に基づいて韻律変更を行なうと判定された素片の韻律変更目標値を計算する工程と、
前記韻律変更を行なうと判定された素片の韻律が前記計算された韻律変更目標値となるように韻律変更を行なう工程と、
前記韻律変更された素片および前記判定の結果韻律変更を行なわないと判定された素片とを接続することを特徴とする音声合成方法。
【請求項２】
前記韻律変更を行なうか否かの判定は、隣接する素片との韻律解離度に基づいて行なわれることを特徴とする請求項１記載の音声合成方法。
【請求項３】
前記韻律変更目標値は、前記判定の結果韻律変更を行なわないと判定された素片の韻律値に基づいて計算されることを特徴とする請求項１記載の音声合成方法。
【請求項４】
韻律を予測する工程をさらに備え、
前記韻律変更を行なうか否かの判定は、前記予測された韻律との解離度に基づいて行なわれることを特徴とする請求項１記載の音声合成方法。
【請求項５】
韻律を予測する工程をさらに備え、
前記韻律変更目標値は、前記予測された韻律値に基づいて計算されることを特徴とする請求項１記載の音声合成方法。
【請求項６】
前記判定の結果韻律変更を行なうと判定された素片に関して素片を再選択する工程を更に備えることを特徴とする請求項１記載の音声合成方法。
【請求項７】
前記素片の再選択は、前記判定の結果韻律変更を行なわないと判定された素片の情報に基づいて行なわれることを特徴とする請求項６記載の音声合成方法。
【請求項８】
前記再選択された素片に対して韻律変更を行なうか否かを再判定する工程をさらに備え、韻律変更を行なうと再判定された素片に対して韻律変更を行なうことを特徴とする請求項６記載の音声合成方法。
【請求項９】
請求項１乃至８のいずれかに記載の音声合成方法をコンピュータに実行させるための制御プログラム。
【請求項１０】
素片を選択する手段と、
前記選択された素片に対して韻律変更を行なうか否かを判定する手段と、
前記判定の結果に基づいて韻律変更を行なうと判定された素片の韻律変更目標値を計算する手段と、
前記韻律変更を行なうと判定された素片の韻律が前記計算された韻律変更目標値となるように韻律変更を行なう手段と、
前記韻律変更された素片および前記判定の結果韻律変更を行なわないと判定された素片とを接続することを特徴とする音声合成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所望の音声を合成する音声合成方法に関わるものである。
【背景技術】
【０００２】
従来より、所望の音声を合成する音声合成技術が存在する。これは、所望の発声内容に対応する音声素片を接続し、所望の韻律を持つように調整することで実現される。
【０００３】
音声合成技術のうち、典型的な技術の一つに音源−声道モデルに基づくものがある。これは、声道パラメータ系列を音声素片として持つものである。この声道パラメータを用いて、声帯振動を模擬したパルス列や呼気による雑音を模擬した雑音をフィルタ処理することにより合成音声を得ることができる。
【０００４】
一方、最近になって、コーパスベース音声合成と呼ばれる音声合成技術が広く用いられるようになってきた（例えば、非特許文献１）。これは、あらかじめ様々なバリエーションを持つ音声を収録しておき、合成時には素片の接続だけを行なうものである。コーパスベース音声合成において、韻律調整は、大量の素片から所望の韻律を持つ素片を適切に選択することで行なわれる。
【０００５】
一般に、コーパスベース音声合成では、音源−声道モデルに基づく音声合成と比較して、自然で高品質な合成音が得られるものとされている。これは、モデル化や信号処理といった、音声を変形する（すなわち音声の劣化要因となる）処理を含まないためだと言われている。
【非特許文献１】世木、都木、“ニュース番組の収録音声を利用した高品質な音声合成のための素片選択法、”信学技報、ＳＰ２００３−３５、ｐｐ．１−６、Ｊｕｎｅ（２００３）
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記コーパスベース音声合成では、所望の韻律を持つ素片が見つからなかった場合に、合成音声の品質が損なわれるという課題がある。特に、所望の韻律から外れた素片と、その両側の素片との間で韻律的ギャップが生じ、そのために合成音声の自然性が大幅に損なわれるという課題がある。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明における音声合成方法では、素片を選択する工程と、前記選択された素片に対して韻律変更を行なうか否かを判定する工程と、前記判定の結果に基づいて韻律変更を行なうと判定された素片の韻律変更目標値を計算する工程と、前記韻律変更を行なうと判定された素片の韻律が前記計算された韻律変更目標値となるように韻律変更を行なう工程と、前記韻律変更された素片および前記判定の結果韻律変更を行なわないと判定された素片とを接続することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、韻律の調整を適切に行うことでき、合成音声の品質を高めることが可能となる。
【発明を実施するための最良の形態】
【０００９】
以下、図面を参照しながら本発明の好適な実施例について説明していく。
【実施例１】
【００１０】
図１は本発明の一実施例におけるハードウェア構成である。１は数値演算・制御等の処理を行なう中央処理部であり本発明の手順に従って演算を行なう。２は音声を出力する音声出力部である。３はタッチパネルやキーボード・マウス・ボタン等の入力部であり、ユーザが本装置に対して動作の指示を与えるのに用いられる。ユーザの指示によらず、自律的に動作する機器の場合、入力部は省略される場合がある。
【００１１】
４はディスク装置や不揮発メモリ等の外部記憶部であり、音声合成に使用される言語解析辞書４０１や韻律予測パラメータ４０２、音声素片データベース４０３等が保持される。さらに、外部記憶部４には、ＲＡＭ６に保持される各種情報のうち、恒久的に使用されるべき情報も保持される。また、外部記憶部４は、ＣＤ−ＲＯＭやメモリカードといった可搬性のある形態であっても良く、これによって利便性を高めることもできる。
【００１２】
５は読み取り専用のメモリであり、本発明を実現するためのプログラムコード５０１や図示しない固定的データ等が格納される。もっとも、本発明において、外部記憶部４とＲＯＭ５の使用には任意性がある。例えば、プログラムコード５０１は、ＲＯＭ５ではなく外部記憶部４にインストールされるものであっても良い。６はＲＡＭ等の一時情報を保持するメモリであり、一時的なデータや各種フラグ等が保持される。上記中央処理部１〜ＲＡＭ６は、バス７で接続されている。
【００１３】
次に、本実施例における処理フローを図２に則して説明する。まず、ステップＳ１で、入力された音声合成対象を解析する。音声合成対象が、「今日は良い天気です。」のような自然言語の場合、本ステップでは自然言語処理の手法である形態素解析や構文解析が用いられる。この際、言語解析辞書４０１が適宜用いられる。一方、音声合成対象が、「キョ’ーワ／ヨ’イ／テ’ンキデス。」のように音声合成用の人工言語で記述されている場合、本ステップでは専用の解析処理が行なわれる。
【００１４】
次に、ステップＳ２で、前記ステップＳ１における解析結果をもとに、合成音声の音韻系列を決定する。次に、ステップＳ３で、前記ステップＳ１における解析結果をもとに、素片選択のための要因を取得する。素片を選択するための要因として、各音韻の属する句のモーラ数やアクセント型、文や句あるいは単語内での位置、音韻種別等が用いられる。
【００１５】
次に、ステップＳ４で、前記ステップＳ３の結果に基づいて、外部記憶部４に記憶された音声素片データベース４０３から適切な素片を選択する。素片を選択するための情報として、前記ステップＳ３の結果だけでなく、隣接した素片間のスペクトル形状や韻律のギャップが少なくなるように素片を選択することもできる。
【００１６】
次に、ステップＳ５で、前記ステップＳ４で選択された素片の韻律値を取得する。素片の韻律値は、前記選択された素片から直接測定することもできるし、前もって測定した値を外部記憶部４に記憶しておき、これを読み出して用いることもできる。なお、一般に韻律というと、基本周波数（Ｆ０）・継続時間長・パワーを指すことが多いが、本処理では、それらの一部のみを取得するものとしても良い。これは、コーパスベース音声合成では韻律変更を行なわないのが基本のため、韻律変更の対象とならないものについては必ずしも取得する必要がないためである。
【００１７】
次に、ステップＳ６で、前記ステップＳ５で取得された素片の韻律値の、隣接する素片の韻律値に対する解離度を評価し、解離度が閾値よりも大きい場合には処理をステップＳ７に進め、それ以外の場合は処理をステップＳ９に進める。
【００１８】
なお、韻律がＦ０の場合、１つの素片に対して複数の値が対応する。このため、解離度を評価する際に、複数の方法が考えられる。例えば、Ｆ０の平均値・中間値・最大値・最小値といった代表値、素片の中心におけるＦ０、素片の端点におけるＦ０等を用いることができる。さらに、Ｆ０の傾きを利用することもできる。
【００１９】
ステップＳ７では、韻律変更後の韻律値を計算する。最も単純には、前記ステップＳ６で用いた解離度が最小になるように、前記ステップＳ５で取得された素片の韻律値に対して定数を加算・乗算することができる。あるいは、前記ステップＳ６で用いた解離度が閾値の範囲内に収まる程度に韻律変更量をとどめることも可能である。さらに、前記ステップＳ６で韻律値を変更しないものと判定された素片の韻律値を補間して韻律変更後の韻律値とすることもできる。
【００２０】
次に、ステップＳ８で、前記ステップＳ７で計算された韻律に基づいて素片の韻律を変更する。韻律の変更法として、従来の音声合成で用いられている種々の手法（例えばＰＳＯＬＡ法）を利用することができる。
【００２１】
ステップＳ９では、前記ステップＳ６の結果に基づいて、前記ステップＳ４で選択された素片あるいは前記ステップＳ８で韻律を変更された素片を接続し、合成音声として出力する。
【００２２】
以上のような構成とすることで、所望の韻律を持つ素片が見つからなかった場合であっても、所望の韻律から外れた素片と、その両側の素片との間における韻律的ギャップが緩和される。その結果、合成音声の品質が大幅に損なわれることが防止される。
【実施例２】
【００２３】
第２の実施例として、言語解析結果に基づいて韻律予測を行ない、予測された韻律を利用する方法がある。
【００２４】
本実施例における処理フローを図３に則して説明する。まず、ステップＳ１およびステップＳ２は、前記実施例１と同様の処理である。次に、ステップＳ１０１で、前記ステップＳ１における解析結果をもとに、韻律を予測するための要因を取得する。韻律を予測するための要因として、各音韻の属する句のモーラ数やアクセント型、文や句あるいは単語内での位置、音韻種別、隣接する句や単語に関する情報等が用いられる。
【００２５】
次に、ステップＳ１０２で、前記ステップＳ１０１で取得した韻律予測要因および外部記憶部４に記憶された韻律予測パラメータ４０２をもとに、韻律を予測する。なお、一般に韻律というと、基本周波数（Ｆ０）・継続時間長・パワーを指すことが多いが、本処理では、それらの一部のみを予測するものとしても良い。これは、コーパスベース音声合成では素片の韻律を利用することができるので、必ずしも全ての情報を予測する必要がないためである。
【００２６】
次に、実施例１と同様に、素片選択要因取得（ステップＳ３）・素片選択（ステップＳ４）・素片韻律取得（ステップＳ５）の処理を行なう。なお本実施例では、韻律予測を行なっているため、素片を選択するための情報として、前記ステップＳ１０２で予測した韻律を利用することもできる。
【００２７】
次に、ステップＳ１０３で、前記ステップＳ１０２で予測された韻律値と前記ステップＳ５で取得された素片の韻律値との解離度を評価し、解離度が閾値よりも大きい場合には処理をステップＳ１０４に進め、それ以外の場合は処理をステップＳ９に進める。
【００２８】
なお、韻律がＦ０の場合、１つの素片に対して複数の値が対応する。このため、解離度を評価する際に、複数の方法が考えられる。例えば、Ｆ０の平均値・中間値・最大値・最小値といった代表値、素片の中心におけるＦ０、予測された韻律値と素片の韻律値との二乗平均誤差等を用いることができる。
【００２９】
次に、ステップＳ１０４で、韻律の変更後の韻律値を計算する。最も単純には、韻律変更後の韻律値が前記ステップＳ１０２で予測された韻律値と等しくなるようにすることができる。あるいは、前記ステップＳ１０３で用いた解離度が閾値の範囲内に収まる程度に韻律変更量をとどめることも可能である。ステップＳ８およびステップＳ９は、実施例１と同様である。
【実施例３】
【００３０】
第３の実施例として、前記実施例において、韻律変更を行なうものと判定された素片について、素片選択をやり直す例がある。
【００３１】
本実施例における処理フローを図４に則して説明する。まず、ステップＳ１からステップＳ５まで、前記実施例２と同様に処理する。次に、ステップＳ１０３で、前記実施例２と同様の判定を行ない、解離度が閾値よりも大きい場合には処理をステップＳ２０１に進め、それ以外の場合は処理をステップＳ９に進める。
【００３２】
ステップＳ２０１では、素片を再選択するための要因を取得する。素片を再選択するための要因として、ステップＳ３で用いた要因だけでなく、前記ステップＳ１０３で韻律変更を行なわないと判定された素片の情報を用いることができる。例えば、前記ステップＳ１０３で韻律変更を行なわないと判定された素片の素片韻律値を用いて、韻律の連続性を向上させることができる。あるいは、前記ステップＳ５で取得した素片とのスペクトルの連続性を考慮することもできる。
【００３３】
次に、ステップＳ２０２で、前記ステップＳ４と同様に、前記ステップＳ２０１の結果に基づいて素片を選択する。
【００３４】
さらに、実施例１と同様に、隣接する素片間の韻律値の解離が大きい場合には韻律変更を行なう（ステップＳ６、ステップＳ７、ステップＳ８）。最後に、前記実施例と同様に合成音出力を行なう（ステップＳ９）。
【００３５】
このような構成とすることで、より適切な素片を選択する可能となる。
【００３６】
なお、本発明の目的は、前述した実施例の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても達成されることは言うまでもない。
【００３７】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００３８】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。
【００３９】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００４０】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【図面の簡単な説明】
【００４１】
【図１】本発明の実施例におけるハードウェア構成を示したブロック図である。
【図２】実施例１における処理フローを示すフローチャートである。
【図３】実施例２における処理フローを示すフローチャートである。
【図４】実施例３における処理フローを示すフローチャートである。
【符号の説明】
【００４２】
１  数値演算・制御等の処理を行なう中央処理部
２  ユーザに対して音声を提示する音声出力部
３  タッチパネルやキーボード・マウス・ボタン等の入力部
４  ディスク装置や不揮発メモリ等の外部記憶部
５  読み取り専用のメモリ
６  ＲＡＭ等の一時情報を保持するメモリ
７  バス
４０１  音声合成に使用される言語解析辞書
４０２  音声合成に使用される韻律予測パラメータ
４０３  音声合成に使用される音声素片データベース
５０１  本発明を実現するためのプログラムコード
【図１】
2006337476.tif 000003
【図２】
2006337476.tif 000004
【図３】
2006337476.tif 000005
【図４】
2006337476.tif 000006