JP3559588B2 - 音声合成方法及び装置 - Google Patents

音声合成方法及び装置 Download PDF

Info

Publication number
JP3559588B2
JP3559588B2 JP11673394A JP11673394A JP3559588B2 JP 3559588 B2 JP3559588 B2 JP 3559588B2 JP 11673394 A JP11673394 A JP 11673394A JP 11673394 A JP11673394 A JP 11673394A JP 3559588 B2 JP3559588 B2 JP 3559588B2
Authority
JP
Japan
Prior art keywords
waveform
pitch
parameter
speech
synthesis
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP11673394A
Other languages
English (en)
Other versions
JPH07319491A (ja
Inventor
充 大塚
隆 麻生
俊明 深田
恭則 大洞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP11673394A priority Critical patent/JP3559588B2/ja
Priority to EP95303606A priority patent/EP0685834B1/en
Priority to DE69519818T priority patent/DE69519818T2/de
Priority to US08/452,545 priority patent/US5745651A/en
Publication of JPH07319491A publication Critical patent/JPH07319491A/ja
Application granted granted Critical
Publication of JP3559588B2 publication Critical patent/JP3559588B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/02Methods for producing synthetic speech; Speech synthesisers
    • G10L13/033Voice editing, e.g. manipulating the voice of the synthesiser
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/08Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Electrophonic Musical Instruments (AREA)

Description

【0001】
【産業上の利用分野】
本発明は、規則合成方式による音声合成方法および装置に関する。
本発明は、入力された文字列に対応する合成音声を出力するよう制御する音声合成制御方法及び装置に関する。
【0002】
【従来の技術】
従来の音声規則合成装置では、合成音声の生成方法として、合成フィルタ方式(PARCOR、LSP、MLSA)、波形編集方式、インパルス応答波形の重ね合わせ方式を用いるものがあった。
【0003】
【発明が解決しようとしている問題点】
しかしながら、上述した従来技術においては、合成フィルタ方式では音声波形の生成に要する計算量が多く、波形編集方式では合成音声の声の高さに合わせる波形編集処理が複雑であり、合成音声の音質が劣化する。また、インパルス応答波形の重ね合わせ方式では波形の重なり合う部分で音質が劣化する、というように各方法共問題があった。
【0004】
上述した従来技術では、サンプリング周期の整数倍にならないピッチ周期をもつ音声波形を生成する処理が難しく、そのため、正確なピッチの合成音声が得られないという問題があった。
【0005】
上述した従来技術では、合成音声のサンプリング周波数を変換するときに、サンプリング速度を上昇・下降させる処理と低域フィルタの処理を行わなければならず、処理が複雑で計算量が多い、という問題がある。
【0006】
上述した従来技術では、周波数領域でのパラメータ操作ができず、操作者にとって感覚的にわかりにくいものであった。
【0007】
上述した従来技術では、合成音声の音色を変える為には、パラメータそのものを操作しなければならず、処理が非常に複雑になるという問題があった。
【0008】
上述した従来技術では、合成音声全ての音声波形を上述の合成フィルタ方式、波形編集方式、インパルス応答波形の重ね合わせ方式で生成しなければならず、計算量が多大になるという問題があった。
【0009】
【課題を解決するための手段】
上記課題を解決するために、本発明は、入力された文字系列に従い音声波形のパラメータとしてのインパルス応答波形から求まる合成パラメータを生成するパラメータ生成手段と、入力された合成音声の声の高さ情報と前記生成された合成パラメータから合成音声のピッチ周期でサンプリングされたスペクトル包絡を求め、そのサンプル値を時間領域の波形に変換することによってピッチ波形を生成するピッチ波形生成手段と、前記生成されたピッチ波形を接続して得た音声波形を出力する音声波形出力手段とを備えることを特徴とする音声合成装置を提供する。
【0010】
上記課題を解決するために、本発明は、入力された文字系列に従い音声波形のパラメータとしてのインパルス応答波形から求まる合成パラメータを生成するパラメータ生成手段と、余弦関数と正弦関数との積和を行列としてピッチ毎に導出する行列導出手段と、入力された合成音声の声の高さ情報に応じた行列と前記合成パラメータとからピッチ波形を生成するピッチ波形生成手段と、前記生成されたピッチ波形を接続して得た音声波形を出力する音声波形出力手段とを備えることを特徴とする音声合成装置を提供する。
【0011】
上記課題を解決するために、本発明は、入力された文字系列に従い音声波形のパラメータとしてのインパルス応答波形から求まる合成パラメータを生成するパラメータ生成工程と、入力された合成音声の声の高さ情報と前記生成された合成パラメータから合成音声のピッチ周期でサンプリングされたスペクトル包絡を求め、そのサンプル値を時間領域の波形に変換することによってピッチ波形を生成するピッチ波形生成工程と、前記生成されたピッチ波形を接続して得た音声波形を出力する音声波形出力工程とを備えることを特徴とする音声合成方法を提供する。
【0012】
上記課題を解決するために、本発明は、入力された文字系列に従い音声波形のパラメータとしてのインパルス応答波形から求まる合成パラメータを生成するパラメータ生成工程と、余弦関数と正弦関数との積和を行列としてピッチ毎に導出する行列導出工程と、入力された合成音声の声の高さ情報に応じた行列と前記合成パラメータとからピッチ波形を生成するピッチ波形生成工程と、前記生成されたピッチ波形を接続して得た音声波形を出力する音声波形出力工程とを備えることを特徴とする音声合成方法を提供する。
【0013】
上記課題を解決するために、本発明は、入力された文字列に対応する音声波形のパラメータとしてのインパルス応答波形から求まる合成パラメータを生成するパラメータ生成手段と、合成する音声の高さ情報を入力する高さ情報入力手段と、余弦関数と正弦関数との積和をピッチ毎に行列として予め求められている波形生成行列から前記高さ情報入力手段により入力された音声の高さ情報に対応する波形生成行列を読み出す波形生成行列読み出し手段と、
前記パラメータ生成手段により生成された合成パラメータと前記波形生成行列読み出し手段により読み出された波形生成行列とを演算することにより、ピッチ波形を生成するピッチ波形生成手段と、前記生成されたピッチ波形を接続して音声波形を出力するよう制御する音声波形出力制御手段とを備えることを特徴とする音声合成制御装置を提供する。
【0014】
上記課題を解決するために、本発明は、入力された文字列に対応する音声波形のパラメータとしてのインパルス応答波形から求まる合成パラメータを生成し、合成する音声の高さ情報を入力し、余弦関数と正弦関数との積和をピッチ毎に行列として予め求められている波形生成行列から前記入力された音声の高さ情報に対応する波形生成行列を読み出し、前記生成された合成パラメータと前記読み出された波形生成行列とを演算することによりピッチ波形を生成し、前記生成されたピッチ波形を接続して音声波形を出力するよう制御することを特徴とする音声合成制御方法を提供する。
【0026】
【実施例】
(実施例1)
図25は実施例の音声合成装置の構成を示すブロック図である。
【0027】
101は合成音声のテキストや制御コマンド等を入力する為のキーボード(K.B)、102は表示器108の表示画面上の所望の位置を入力し得るポインティングデバイスであり、これによりアイコンを指示することで所望の制御コマンド等を入力することができる。103は本装置により実行される、後述する実施例中の各種処理を制御する中央処理装置(CPU)であり、ROM105に格納されている制御プログラムに従って処理を実行する。104は通信インターフェイス(I/F)であり、各種通信機関を利用したデータの送受信を制御する。105はリードオンリーメモリ(ROM)であり、実施例に示すフローチャートに示す処理の制御プログラムを格納する。106はランダムアクセスメモリ(RAM)であり、実施例中の各種処理で生じるデータを格納する手段として用いる。107はスピーカであり、合成音声やオペレータへのメッセージ等の音声を出力する。108はLCDやCRT等の表示器であり、キーボードから入力されるテキストや処理途中のデータ表示を行う。109はバスであり、各構成間のデータ、コマンド等の伝送を行う。
【0028】
図1は実施例1の音声合成装置の機能構成を示すブロック図である。これらの各機能は、図25のCPU103の制御により実行される。1は文字系列入力部であり、合成すべき音声の文字系列を入力する。例えば合成すべき音声が「あいうえお」であるときには、「AIUEO」というような表音テキストの文字系列を入力する。また、この文字系列入力部1より入力する文字系列中には、表音テキストの他に発声速度や声の高さなどを設定するための制御シーケンスなどを意味する文字系列が含まれることもある。文字系列入力部1は、入力した文字系列が表音テキストであるか制御シーケンスであるか判断する。2は制御データ格納部であり、文字系列入力部1で制御シーケンスと判断され、送られてきた文字系列や、ユーザインタフェースより入力される発声速度や声の高さなどの制御データを内部レジスタに格納する。3はパラメータ生成部であり、文字系列入力部1で入力され、表音テキストであると判断された文字系列に対応して、あらかじめ記憶してあるパラメータ系列をROM105より読み出し、生成する。4はパラメータ格納部であり、パラメータ生成部3で生成されたパラメータ系列から処理対象とするフレームのパラメータを取り出して内部レジスタに格納する。5はフレーム時間長設定部であり、制御データ格納部2に格納された発声速度に関する制御データとパラメータ格納部4に格納された発声速度係数K(発声速度に応じてフレーム時間長を決めるために使用するパラメータ)から、各フレームの時間長Niを計算する。6は波形ポイント数格納部であり、1フレームの波形ポイント数n を計算して内部レジスタに格納する。7は合成パラメータ補間部であり、パラメータ格納部4に格納されている合成パラメータを、フレーム時間長設定部5で設定されたフレーム時間長Niと波形ポイント数格納部6に格納された波形ポイント数n で補間する。8はピッチスケール補間部であり、パラメータ格納部4に格納されているピッチスケールを、フレーム時間長設定部5で設定されたフレーム時間Niと波形ポイント数格納部6に格納された波形ポイント数n で補間する。9は波形生成部であり、合成パラメータ補間部7で補間された合成パラメータとピッチスケール補間部8で補間されたピッチスケールからピッチ波形を生成し、ピッチ波形を接続して合成音声を出力する。
【0029】
波形生成部9で行われるピッチ波形の生成について、図2、図3、図4、図5、図6を参照して説明する。
【0030】
ピッチ波形の生成に用いる合成パラメータについて説明する。図2において、フーリエ変換の次数をN、合成パラメータの次数をMとする。ここでN、MはN2Mを満たすようにする。音声の対数パワスペクトル包絡を
【0031】
【外1】
Figure 0003559588
とする。対数パワスペクトル包絡を指数関数に入力して線形に戻し、逆フーリエ変換して求めたインパルス応答は、
【0032】
【外2】
Figure 0003559588
となる。
【0033】
合成パラメータ
p(m)(0m<M)
は、インパルス応答の0次の値と1次以降の値の比を相対的に2倍することにより得られる。すなわち、r≠0として、
p(0)=rh(0)
p(m)=2rh(m)(1m<M)
とする。
【0034】
サンプリング周波数を

とする。サンプリング周期は
【0035】
【外3】
Figure 0003559588
である。合成音声のピッチ周波数を

とすると、ピッチ周期は
【0036】
【外4】
Figure 0003559588
となり、ピッチ周期ポイント数は
【0037】
【外5】
Figure 0003559588
となる。[x]でx以下の最大の整数を表し、ピッチ周期ポイント数を整数で量子化して
(f)=[f/f]
とする。ピッチ周期を角度2πに対応させたときの1ポイントごとの角度をθとすると、
【0038】
【外6】
Figure 0003559588
となる。ピッチ周波数の整数倍におけるスペクトル包絡の値は
【0039】
【外7】
Figure 0003559588
となる(図3)。ピッチ波形を
w(k)(0k<N (f))
ピッチ周波数fに対応するパワ正規化係数を
C(f)
とする。C(f)=1.0となるピッチ周波数をf として
【0040】
【外8】
Figure 0003559588
によってC(f)が与えられる。
【0041】
基本周波数の整数倍の正弦波を重ね合わせて
【0042】
【外9】
Figure 0003559588
のようにピッチ波形w(k)(0k<N (f))が生成される(図4)。
【0043】
または、ピッチ周期の半分位相をずらして重ね合わせて
【0044】
【外10】
Figure 0003559588
のようにピッチ波形w(k)(0k<N (f))が生成される(図5)。
【0045】
ピッチスケールを声の高さを表現するための尺度とする。式(1)、(2)の演算を直接行う代わりに、以下のように計算を高速化することもできる。ピッチスケールsに対応するピッチ周期ポイント数をN (s)とし、
【0046】
【外11】
Figure 0003559588
として、式(1)の場合
【0047】
【外12】
Figure 0003559588
式(2)の場合
【0048】
【外13】
Figure 0003559588
を計算してテーブルに記憶しておく。波形生成行列を
WGM(s)=(ckm(s)) (0k<N (s),0m<M)
とする。さらに、ピッチスケールsに対応するピッチ周期ポイント数N (s)、パワ正規化係数C(s)をテーブルに記憶しておく。
【0049】
波形生成部9では、合成パラメータ補間部7より出力された合成パラメータp(m)(0m<M)とピッチスケール補間部8より出力されたピッチスケールsを入力として、ピッチ周期ポイント数N (s)、パワ正規化係数C(s)、波形生成行列WGM(s)=(ckm(s))をテーブルから読み出し、
【0050】
【外14】
Figure 0003559588
によりピッチ波形を生成する(図6)。
【0051】
以上の表音テキストの入力からピッチ波形を生成するまでの動作を、図7のフローチャートを参照して説明する。
【0052】
ステップS1で、文字系列入力部1より表音テキストを入力する。
【0053】
ステップS2で、外部入力された制御データ(発声速度、声の高さ)と入力された表音テキスト中の制御データを制御データ格納部2に格納する。
【0054】
ステップS3で、文字系列入力部1より入力された表音テキストからパラメータ生成部3においてパラメータ系列を生成する。
【0055】
図8にステップS3で生成されたパラメータ1フレーム分のデータ構造例を示す。
【0056】
ステップS4で波形ポイント数格納部6の内部レジスタを0に初期化する。波形ポイント数をn で表すと
=0
となる。
【0057】
ステップS5で、パラメータ系列カウンタiを0に初期化する。
【0058】
ステップS6で、パラメータ生成部3から第iフレームと第i+1フレームのパラメータをパラメータ格納部4の内部レジスタに取り込む。
【0059】
ステップS7で、制御データ格納部2より、発声速度をフレーム時間長設定部5に取り込む。
【0060】
ステップS8で、フレーム時間長設定部5において、パラメータ格納部4に取り込まれたパラメータの発声速度係数と、制御データ格納部2より取り込まれた発声速度を用いて、フレーム時間長Niを設定する。
【0061】
ステップS9で、波形ポイント数n がフレーム時間長Ni未満か否かを判別することにより、第iフレームの処理が終了していないか否かを判断し、n Niの場合は第iフレームの処理が終了したと判断してステップS14へ進み、n <Niの場合は第iフレームの処理途中であると判断してステップS10へ進み、処理が続けられる。
【0062】
ステップS10で、合成パラメータ補間部7において、パラメータ格納部4に取り込まれた合成パメータと、フレーム時間長設定部5で設定されたフレーム時間長と、波形ポイント数格納部6に格納された波形ポイント数を用いて、合成パラメータの補間を行う。図9は、合成パラメータの補間についての説明図である。第iフレームの合成パラメータをp [m](0m<M)、第i+1フレームの合成パラメータをpi+1 [m](0m<M)、第iフレームの時間長をN ポイントとする。このとき、1ポイント当たりの合成パラメータの差分Δ [m](0m<M)は、
【0063】
【外15】
Figure 0003559588
となる。次に、ピッチ波形を生成するごとに合成パラメータp[m](0m<M)を更新する。
【0064】
p[m]=p [m]+n Δ [m] (3)
の処理をピッチ波形開始点で行う。
【0065】
ステップS11で、ピッチスケール補間部8において、パラメータ格納部4に取り込まれたピッチスケールと、フレーム時間長設定部5で設定されたフレーム時間長と波形ポイント数格納部6に格納された波形ポイント数を用いて、ピッチスケールの補間を行う。図10はピッチスケールの補間についての説明図である。第iフレームのピッチスケールをs 、第i+1フレームのピッチスケールをsi+1 、第iフレームのフレーム時間長をN ポイントとする。このとき、1ポイント当たりのピッチスケールの差分Δ は、
【0066】
【外16】
Figure 0003559588
となる。次に、ピッチ波形を生成するごとにピッチスケールsを更新する。
【0067】
s=s +n Δ (4)
の処理をピッチ波形開始点で行う。
【0068】
ステップS12で、式(3)によって得られた合成パラメータp[m](0m<M)と式(4)によって得られたピッチスケールsを用いて波形生成部9においてピッチ波形を生成する。ピッチスケールsに対応するピッチ周期ポイント数N (s)とパワ正規化係数C(s)と波形生成行列WGM(s)=(ckm(s))(0k<N (s),0m<M)をテーブルから読み出し、ピッチ波形を
【0069】
【外17】
Figure 0003559588
によって生成する。
【0070】
図11は生成されたピッチ波形の接続についての説明図である。波形生成部9から合成音声として出力される音声波形を
W(n) (0n)
とする。ピッチ波形の接続は、第jフレームのフレーム時間をN として
W(n +k)=w(k) (i=0,0k<N (s))
【0071】
【外18】
Figure 0003559588
によって行う。
【0072】
ステップS13で、波形ポイント数格納部6で波形ポイント数n
=n +N (s)
のように更新し、ステップS9に戻り、処理を続ける。
【0073】
ステップS9で、n の場合はステップS14に進む。
【0074】
ステップS14で、波形ポイント数n
=n −N
のように初期化する。
【0075】
ステップS15で、全フレームの処理が終了したか否かを判別し、終了していない場合はステップS16に進む。
【0076】
ステップS16では外部入力された制御データ(発声速度、声の高さ)を制御データ格納部2に格納し、ステップS17でパラメータ系列カウンタiを
i=i+1
のように更新し、ステップS6に戻り、処理を続ける。
【0077】
ステップS15で全フレームの処理が終了したと判断される場合は処理を終了する。
【0078】
(実施例2)
実施例2の音声合成装置の構成および機能構成を示すブロック図は、実施例1と同じく図25および図1である。
【0079】
本実施例では、ピッチ周期ポイント数の小数部分を表現すべく、位相のずれたピッチ波形を生成し、接続する例について説明する。
【0080】
波形生成部9で行われるピッチ波形の生成について、図12を参照して説明する。
【0081】
ピッチ波形の生成に用いる合成パラメータを
p(m) (0≦m<M)
とする。サンプリング周波数を

とする。サンプリング周期は
【0082】
【外19】
Figure 0003559588
である。合成音声のピッチ周波数を

とすると、ピッチ周期は
【0083】
【外20】
Figure 0003559588
となり、ピッチ周期ポイント数は
【0084】
【外21】
Figure 0003559588
となる。
【0085】
[x]でx以下の整数を表す。
【0086】
ピッチ周期ポイント数の小数部を、位相のずれたピッチ波形を接続することで表す。周波数fに対応するピッチ波形の個数を、位相数
(f)
とする。図12はn (f)=3としたときのピッチ波形の例を示したものである。さらに、拡張ピッチ周期ポイント数を
【0087】
【外22】
Figure 0003559588
とし、ピッチ周期ポイント数を
【0088】
【外23】
Figure 0003559588
と量子化する。ピッチ周期ポイント数を角度2πに対応させたときの1ポイントごとの角度をθ とすると、
【0089】
【外24】
Figure 0003559588
となる。ピッチ周波数の整数倍におけるスペクトル包絡の値は
【0090】
【外25】
Figure 0003559588
となる。拡張ピッチ周期ポイント数を2πに対応させたときの1ポイントごとの角度をθ とすると、
【0091】
【外26】
Figure 0003559588
となる。拡張ピッチ波形を
w(k) (0k<N(f))
ピッチ周波数fに対応するパワ正規化係数を
C(f)
とする。C(f)=1.0となるピッチ周波数をf として
【0092】
【外27】
Figure 0003559588
によってC(f)が与えられる。
【0093】
ピッチ周波数の整数倍の正弦波を重ね合わせて
【0094】
【外28】
Figure 0003559588
のように拡張ピッチ波形w(k)(0k<N(f))が生成される。
【0095】
または、ピッチ周期の半分位相をずらして重ね合わせて
【0096】
【外29】
Figure 0003559588
のように拡張ピッチ波形w(k)(0k<N(f))を生成する。
【0097】
位相インデックスを
(0 <n (f))
とする。ピッチ周波数f、位相インデックスi に対応する位相角を
【0098】
【外30】
Figure 0003559588
と定義する。a mod bはaをbで割った剰余を表すとして、
r(f,i )=i N(f)mod n (f)
と定義する。位相インデックスi に対応するピッチ波形のピッチ波形ポイント数は
【0099】
【外31】
Figure 0003559588
によって計算される。位相インデックスi に対応するピッチ波形は
【0100】
【外32】
Figure 0003559588
となる。この後、位相インデックスを
=(i +1)mod n (f)
と更新し、更新された位相インデックスを用いて、位相角を
φ =φ(f,i
と計算する。さらに、次のピッチ波形を生成するときにピッチ周波数がf′に変更されるときは、φ に最も近い位相角を得るために
【0101】
【外33】
Figure 0003559588
を満たすi′を求めて
=i′
のようにi を決定する。
【0102】
ピッチスケールを声の高さを表現するための尺度とする。式(5)、(6)の演算を直接行う代わりに、以下のように計算を高速化することもできる。ピッチスケールs∈S(Sはピッチスケールの集合)に対応する位相数をn (s)、位相インデックスをi (0 <n (s))、拡張ピッチ周期ポイント数をN(s)、ピッチ周期ポイント数をN (s)、ピッチ波形ポイント数をP(s,i )とし、
【0103】
【外34】
Figure 0003559588
として、式(5)の場合
【0104】
【外35】
Figure 0003559588
式(6)の場合
【0105】
【外36】
Figure 0003559588
を計算してテーブルに記憶しておく。波形生成行列を
WGM(s,i )=(ckm(s,i ))
(0≦k<P(s,i ),0≦m<M)
とする。ピッチスケールsと位相インデックスi に対応する位相角
【0106】
【外37】
Figure 0003559588
をテーブルに記憶しておく。また、ピッチスケールsと位相角φ (∈{φ(s,i )|s∈S,0i<n (s)})に対して
【0107】
【外38】
Figure 0003559588
を満たすi を与える対応関係を
=I(s,φ
として、テーブルに記憶しておく、さらに、ピッチスケールsと位相インデックスi に対応する位相数n (s)、ピッチ波形ポイント数P(s,i )、パワ正規化係数C(s)をテーブルに記憶しておく。
【0108】
波形生成部9では、内部レジスタに格納されている位相インデックスをi 、位相角をφ とし、合成パラメータ補間部7より出力された合成パラメータp(m)(0m<M)とピッチスケール補間部8より出力されたピッチスケールsを入力として、位相インデックスを
=I(s,φ
により決定し、ピッチ波形ポイント数P(s,i )、パワ正規化係数C(s)、波形生成行列WGM(s,i )=(ckm(s,i ))をテーブルから読み出し、
【0109】
【外39】
Figure 0003559588
によりピッチ波形を生成する。ピッチ波形を生成した後、位相インデックスを
=(i +1)mod n (s)
のように更新し、更新された位相インデックスを用いて位相角を
φ =φ(s,i
のように更新する。
【0110】
以上の動作を、図13のフローチャートを参照して説明する。
【0111】
ステップS201で、文字系列入力部1より表音テキストを入力する。
【0112】
ステップS202で、外部入力された制御データ(発声速度、声の高さ)と入力された表音テキスト中の制御データを制御データ格納部2に格納する。
【0113】
ステップS203で、文字系列入力部1より入力された表音テキストからパラメータ生成部3においてパラメータ系列を生成する。
【0114】
ステップS203で生成されたパラメータ1フレームのデータ構造は実施例1と同じであり、図8に示されている。
【0115】
ステップS204で、波形ポイント数格納部6の内部レジスタを0に初期化する。波形ポイント数をn で表すと
=0
となる。
【0116】
ステップS205で、パラメータ系列カウンタiを0に初期化する。
【0117】
ステップS206で、位相インデックスi を0に、位相角φ を0に初期化する。
【0118】
ステップS207で、パラメータ生成部3から第iフレームと第i+1フレームのパラメータをパラメータ格納部4に取り込む。
【0119】
ステップS208で、制御データ格納部2より、発声速度をフレーム時間長設定部5に取り込む。
【0120】
ステップS209で、フレーム時間長設定部5において、パラメータ格納部4に取り込まれたパラメータの発声速度係数と、制御データ格納部2より取り込まれた発声速度を用いて、フレーム時間長N を設定する。
【0121】
ステップS210で、波形ポイント数n がフレーム時間長N 未満か否かを判別し、n の場合はステップS217へ進み、n <N の場合はステップS211へ進み、処理を続ける。
【0122】
ステップS211で、合成パラメータ補間部7において、パラメータ格納部4に取り込まれた合成パラメータと、フレーム時間長設定部5で設定されたフレーム時間長と、波形ポイント数格納部6に格納された波形ポイント数を用いて、合成パラメータの補間を行う。パラメータの補間は実施例1のステップS10と同じである。
【0123】
ステップS212で、ピッチスケール補間部8において、パラメータ格納部4に取り込まれたピッチスケールと、フレーム時間長設定部5で設定されたフレーム時間長と波形ポイント数格納部6に格納された波形ポイント数を用いて、ピッチスケールの補間を行う。ピッチスケールの補間は実施例1のステップS11と同じである。
【0124】
ステップS213で、式(4)によって得られたピッチスケールsと位相角φ から
=I(s,φ
によって位相インデックスを決定する。
【0125】
ステップS214で、式(3)によって得られた合成パラメータp[m](0m<M)と式(4)によって得られたピッチスケールsを用いて波形生成部9においてピッチ波形を生成する。ピッチスケールsに対応するピッチ波形ポイント数P(s,i )とパワ正規化係数C(s)と波形生成行列WGM(s,i )=(ckm(s,i ))(0k<P(s,i ),0m<M)をテーブルから読み出し、ピッチ波形を
【0126】
【外40】
Figure 0003559588
によって生成する。
【0127】
波形生成部9から合成音声として出力される音声波形を
W(n)(0n)
とする。ピッチ波形の接続は実施例1と同様であり、第jフレームのフレーム時間長をN として
W(n +k)=w (k) (i=0,0k<P(s,i ))
【0128】
【外41】
Figure 0003559588
によって行う。
【0129】
ステップS215で、位相インデックスを
=(i +1)mod n (s)
のように更新し、更新された位相インデックスi を用いて、位相角を
φ =φ(s,i
のように更新する。
【0130】
ステップS216で、波形ポイント数格納部6で波形ポイント数n
=n +P(s,i
のように更新し、ステップS210に戻り、処理を続ける。
【0131】
ステップS210で、n の場合はステップS217へ進む。
【0132】
ステップS217で、波形ポイント数n
=n −N
のように初期化する。
【0133】
ステップS218で、全フレームの処理が終了したか否かを判別し、終了していない場合はステップS219に進む。
【0134】
ステップS219では外部入力された制御データ(発声速度、声の高さ)を制御データ格納部2に格納し、ステップS220でパラメータ系列カウンタiを
i=i+1
のように更新し、ステップS207に戻り、処理を続ける。
【0135】
ステップS218で全フレームの処理が終了したと判断される場合は処理を終了する。
【0136】
(実施例3)
本実施例では、実施例1におけるピッチ波形生成の方法に加え、無声波形の生成について説明する。
【0137】
図14は、実施例3の音声合成装置の機能構成を示すブロック図である。これらの各機能は、図25のCPU103の制御により実行される。301は文字系列入力部であり、合成すべき音声の文字系列を入力する。例えば合成すべき音声が「音声」であるときには、「OnSEI」というような表音テキストの文字系列を入力する。また、この文字系列入力部301より入力する文字系列中には、表音テキストの他に発声速度や声の高さなどを設定するための制御シーケンスを意味する文字系列などが含まれることもある。文字系列入力部301は、入力した文字系列が表音テキストであるか制御シーケンスであるか判断する。302は制御データ格納部であり、文字系列入力部301で制御シーケンスと判断され、送られてきた文字系列や、ユーザインタフェースより入力される発声速度や声の高さなどの制御データを内部レジスタに格納する。303はパラメータ生成部であり、文字系列入力部301で入力され、表音テキストであると判断された文字系列に対応して予め記憶してあるパラメータ系列をROM105より読み出し、生成する。304はパラメータ格納部であり、パラメータ生成部303で生成されたパラメータ系列から処理対象とするフレームのパラメータを取り出して内部レジスタに格納する。305はフレーム時間長設定部であり、制御データ格納部302に格納された発声速度に関する制御データとパラメータ格納部304に格納された発声速度係数K(発声速度に応じてフレーム時間長を決めるために使用するパラメータ)から、各フレームの時間長Ni を計算する。306は波形ポイント数格納部であり、1フレームの波形ポイント数n を計算して内部レジスタに格納する。307は合成パラメータ補間部であり、パラメータ格納部304に格納されている合成パラメータを、フレーム時間長設定部305で設定されたフレーム時間長Ni と波形ポイント数格納部306に格納された波形ポイント数n で補間する。308はピッチスケール補間部であり、パラメータ格納部304に格納されているピッチスケールを、フレーム時間長設定部305で設定されたフレーム時間長Ni と波形ポイント数格納部306に格納された波形ポイント数n で補間する。309は波形生成部であり、合成パラメータ補間部307で補間された合成パラメータとピッチスケール補間部308で補間されたピッチスケールからピッチ波形を生成し、ピッチ波形を接続して合成音声を出力する。また、波形生成部309は、合成パラメータ補間部307より出力された合成パラメータから無声波形を生成し、無声波形を接続して合成音声を出力する。
【0138】
波形生成部309で行われるピッチ波形の生成は実施例1における波形生成部9と同じである。
【0139】
本実施例では、波形生成部309で行われるピッチ波形の生成の他に更なる無声波形の生成について説明する。
【0140】
無声波形の生成に用いる合成パラメータを
p(m)(0≦m<M)
とする。サンプリング周波数を

とする。サンプリング周期は
【0141】
【外42】
Figure 0003559588
である。無声波形の生成に使用する正弦波のピッチ周波数を

とする。fは、可聴周波数帯域よりも低い周波数に設定される。
【0142】
[x]でx以下の整数を表す。
【0143】
ピッチ周波数fに対応するピッチ周期ポイント数は
【0144】
【外43】
Figure 0003559588
となる。無声波形ポイント数を
uv=N (f)
とする。無声波形ポイント数を角度2πに対応させたときの1ポイントごとの角度をθとすると、
【0145】
【外44】
Figure 0003559588
となる。ピッチ周波数fの整数倍におけるスペクトル包絡の値は
【0146】
【外45】
Figure 0003559588
となる。無声波形を
uv(k)(0k<Nuv
ピッチ周波数fに対応するパワ正規化係数を
C(f)
とする。C(f)=1.0となるピッチ周波数をf として
【0147】
【外46】
Figure 0003559588
によってC(f)が与えられる。無声波形生成に使用するパワ正規化係数を
uv=C(f)
とする。
【0148】
ピッチ周波数fの整数倍の正弦波を、位相をランダムにずらして重ね合わせることにより無声波形を生成する。位相のずれをα (1[Nuv/2])とする。α
−πα <π
を満たすランダムな値に設定される。
【0149】
【外47】
Figure 0003559588
のように無声波形wuv(k)(0≦k<Nuv)が生成される。
【0150】
式(7)の演算を直接行う代わりに、以下のように計算を高速化することもできる。無声波形インデックスを
uv(0uv<Nuv
として、
【0151】
【外48】
Figure 0003559588
を計算してテーブルに記憶しておく。無声波形生成行列を
UVWGM(iuv)=(c(iuv,m))(0≦iuv<Nuv,0≦m<M)
とする。さらに、ピッチ周期ポイント数Nuv、パワ正規化係数Cuvをテーブルに記憶しておく。
【0152】
波形生成部309では、内部レジスタに格納されている無声波形インデックスをiuv、合成パラメータ補間部7より出力された合成パラメータp(m)(0m<M)を入力として、パワ正規化係数Cuv、無声波形生成行列UVWGM(iuv)=(c(iuv,m))がテーブルから読み出され、
【0153】
【外49】
Figure 0003559588
により無声波形が1ポイント生成される。無声波形が生成された後、ピッチ周期ポイント数Nuvがテーブルから読み出され、無声波形インデックスiuv
uv=(iuv+1)modNuv
のように更新し、波形ポイント数格納部306に格納されている波形ポイント数n
=n +1
のように更新する。
【0154】
以上の動作を、図15のフローチャートを参照して説明する。
【0155】
ステップS301で、文字系列入力部301より表音テキストを入力する。
【0156】
ステップS302で、外部入力された制御データ(発声速度、声の高さ)と入力された表音テキスト中の制御データを制御データ格納部302に格納する。
【0157】
ステップS303で、文字系列入力部301より入力された表音テキストからパラメータ生成部303においてパラメータ系列を生成する。
【0158】
図16は、ステップS303で生成されたパラメータ1フレームのデータ構造を示す。
【0159】
ステップS304で、波形ポイント数格納部306の内部レジスタを0に初期化する。波形ポイント数をn で表すと
=0
となる。
【0160】
ステップS305で、パラメータ系列カウンタiを0に初期化する。
【0161】
ステップS306で、無声波形インデックスiuvを0に初期化する。
【0162】
ステップS307で、パラメータ生成部303から第iフレームと第i+1フレームのパラメータをパラメータ格納部304に取り込む。
【0163】
ステップS308で、制御データ格納部302より、発声速度をフレーム時間長設定部305に取り込む。
【0164】
ステップS309で、フレーム時間長設定部305において、パラメータ格納部304に取り込まれた発声速度係数と、制御データ格納部302より取り込まれた発声速度を用いて、フレーム時間長N を設定する。
【0165】
ステップS310で、パラメータ格納部304に取り込まれた有声・無声情報を用いて第iフレームのパラメータが無声であるか否かを判断し、無声の場合はステップS311に進み、有声の場合はステップS317に進む。
【0166】
ステップS311で、波形ポイント数n がフレーム時間長N 未満か否かを判別し、n の場合はステップS315へ進み、n <N の場合はステップS312へ進み、処理を続ける。
【0167】
ステップS312で、合成パラメータ補間部307より入力された第iフレームの合成パラメータp [m](0≦m<M)を用いて波形生成部309において無声波形を生成する。パワ正規化係数Cuvをテーブルから読み出し、さらに、無声波形インデックスiuvに対応する無声波形生成行列UVWGM(iuv)=(c(iuv,m))(0≦m<M)をテーブルから読み出し、無声波形が
【0168】
【外50】
Figure 0003559588
によって生成される。
【0169】
波形生成部309から合成音声として出力される音声波形を
W(n)(0n)
とする。無声波形の接続は、第jフレームのフレーム時間長をN として
W(n +1)=wuv(iuv)(i=0)
【0170】
【外51】
Figure 0003559588
によって行う。
【0171】
ステップS313で、無声波形ポイント数Nuvをテーブルから読み出し、無声波形インデックスを
uv=(iuv+1)modNuv
のように更新する。
【0172】
ステップS314で、波形ポイント数格納部306で波形ポイント数n
=n +1
のように更新し、ステップS311に戻り、処理を続ける。
【0173】
ステップS310で有声・無声情報が有声の場合、ステップS317に進み、第iフレームのピッチ波形を生成・接続する。ここで行われる処理は実施例1のステップS9、S10、S11、S12、S13で行われる処理に同じである。
【0174】
ステップS311でn の場合、ステップS315へ進み、波形ポイント数n
=n −N
のように初期化する。
【0175】
ステップS316で、全フレームの処理が終了したか否かを判別し、終了していない場合はステップS318に進む。
【0176】
ステップS318では外部入力された制御データ(発声速度、声の高さ)を制御データ格納部302に格納し、ステップS319でパラメータ系列カウンタiを
i=i+1
のように更新し、ステップS307に戻り、処理を続ける。
【0177】
ステップS316で全フレームの処理が終了したと判断される場合は処理を終了する。
【0178】
(実施例4)
本実施例では、分析時と合成時で異なるサンプリング周波数で処理を可能とする例について説明する。
【0179】
実施例4の音声合成装置の構成及び機能構成を示すブロック図は、実施例1と同じく図25及び図1である。
【0180】
波形生成部9で行われるピッチ波形の生成について説明する。
【0181】
ピッチ波形の生成に用いる合成パラメータを
p(m)(0m<M)
とする。合成パラメータであるインパルス応答波形のサンプリング周波数を分析サンプリング周波数
s1
とする。分析サンプリング周期は
【0182】
【外52】
Figure 0003559588
である。合成音声のピッチ周波数を

とすると、ピッチ周期は
【0183】
【外53】
Figure 0003559588
となる。分析ピッチ周期ポイント数は
【0184】
【外54】
Figure 0003559588
となる。
【0185】
[x]でx以下の最大の整数を表し、分析ピッチ周期ポイント数を整数で量子化して
p1(f)=[fs1/f]
とする。
【0186】
合成音声のサンプリング周波数を合成サンプリング周波数
s2
とする。合成ピッチ周期ポイント数は
【0187】
【外55】
Figure 0003559588
となり、さらに、
【0188】
【外56】
Figure 0003559588
と量子化する。
【0189】
分析ピッチ周期ポイント数を角度2πに対応させたときの1ポイントごとの角度をθ とすると、
【0190】
【外57】
Figure 0003559588
となる。ピッチ周波数の整数倍におけるスペクトル包絡の値は
【0191】
【外58】
Figure 0003559588
となる。合成ピッチ周期ポイント数を2πに対応させたときの1ポイントごとの角度をθ とすると、
【0192】
【外59】
Figure 0003559588
となる。ピッチ波形を
w(k)(0k<Np2(f))
ピッチ周波数fに対応するパワ正規化係数を
C(f)
とする。C(f)=1.0となるピッチ周波数をf として
【0193】
【外60】
Figure 0003559588
によってC(f)が与えられる。
【0194】
ピッチ周波数の整数倍の正弦波を重ね合わせて
【0195】
【外61】
Figure 0003559588
のようにピッチ波形w(k)(0k<Np2(f))を生成する。
【0196】
または、ピッチ周期の半分位相をずらして重ね合わせて
【0197】
【外62】
Figure 0003559588
のようにピッチ波形w(k)(0k<Np2(f))を生成する。
【0198】
ピッチスケールを声の高さを表現するための尺度とする。式(8)、(9)の演算を直接行う代わりに、以下のように計算を高速化することもできる。ピッチスケールs∈S(Sはピッチスケールの集合)に対応する分析ピッチ周期ポイント数をNp1(s)、合成ピッチ周期ポイント数をNp2(s)とし、
【0199】
【外63】
Figure 0003559588
として、式(8)の場合
【0200】
【外64】
Figure 0003559588
式(9)の場合
【0201】
【外65】
Figure 0003559588
を計算してテーブルに記憶しておく。波形生成行列を
WGM(s)=(ckm(s))(0≦k<Np2(s),0≦m<M)
とする。さらに、ピッチスケールsに対応する合成ピッチ周期ポイント数Np2(s)、パワ正規化係数C(s)をテーブルに記憶しておく。
【0202】
波形生成部9では、合成パラメータ補間部7より出力された合成パラメータp(m)(0≦m<M)とピッチスケール補間部8より出力されたピッチスケールsを入力として、合成ピッチ周期ポイント数Np2(s)、パワ正規化係数C(s)、波形生成行列WGM(s)=(ckm(s))をテーブルから読み出し、
【0203】
【外66】
Figure 0003559588
によりピッチ波形を生成する。
【0204】
以上の動作を、図7のフローチャートを参照して説明する。
【0205】
ステップS1、S2、S3、S4、S5、S6、S7、S8、S9、S10、S11は実施例1と同じである。
【0206】
ステップS12のピッチ波形生成処理について、本実施例における処理を説明する。式(3)によって得られた合成パラメータp[m](0≦m<M)と式(4)によって得られたピッチスケールsを用いて波形生成部9においてピッチ波形が生成される。ピッチスケールsに対応する合成ピッチ周期ポイント数Np2(s)とパワ正規化係数C(s)と波形生成行列WGM(s)=(ckm(s))(0≦k<Np2(s),0≦m<M)がテーブルから読み出され、ピッチ波形を
【0207】
【外67】
Figure 0003559588
によって生成する。
【0208】
波形生成部9から合成音声として出力される音声波形を
W(n)(0n)
とする。ピッチ波形の接続は、第jフレームのフレーム時間長をN として
W(n +k)=w(k)(i=0,0k<Np2(s))
【0209】
【外68】
Figure 0003559588
によって行う。
【0210】
ステップS13で、波形ポイント数格納部6で波形ポイント数n
=n +Np2(s)
のように更新する。
【0211】
ステップS14、S15、S16、S17は実施例1と同じである。
【0212】
(実施例5)
本実施例では、パワスペクトル包絡からピッチ波形を生成することにより、パワスペクトル包絡を利用した周波数領域でのパラメータ操作を可能とする例について説明する。
【0213】
実施例5の音声合成装置の構成及び機能構成を示すブロック図は、実施例1と同じく図25及び図1である。
【0214】
波形生成部9で行われるピッチ波形の生成について説明する。
【0215】
まず、ピッチ波形の生成に用いる合成パラメータについて説明する。図17において、フーリエ変換の次数をN、ピッチ波形の生成に用いるインパルス応答波形の次数をMとする。ここでN、MはN2Mを満たすようにする。音声の対数パワスペクトル包絡を
【0216】
【外69】
Figure 0003559588
とする。対数パワスペクトル包絡を指数関数に入力して線形に戻し、逆フーリエ変換して求めたインパルス応答は、
【0217】
【外70】
Figure 0003559588
となる。
【0218】
ピッチ波形の生成に用いるインパルス応答波形
h′(m)(0m<M)
は、インパルス応答の0次の値と1次以降の値の比を相対的に2倍することにより得られる。すなわち、r≠0として、
h′(0)=rh(0)
h′(m)=2rh(m)(1m<M)
とする。
【0219】
合成パラメータを
p(n)=r・exp(a(n))(0n<N)
とする。このとき、
【0220】
【外71】
Figure 0003559588
となる。
【0221】
【外72】
Figure 0003559588
とすると、
【0222】
【外73】
Figure 0003559588
となる。
【0223】
サンプリング周波数を

とする。サンプリング周期は、
【0224】
【外74】
Figure 0003559588
である。合成音声のピッチ周波数を

とすると、ピッチ周期は
【0225】
【外75】
Figure 0003559588
となり、ピッチ周期ポイント数は
【0226】
【外76】
Figure 0003559588
となる。[x]でx以下の最大の整数を表し、ピッチ周期ポイント数を整数で量子化して
(f)=[f/f]
とする。ピッチ周期を角度2πに対応させたときの1ポイントごとの角度をθとすると、
【0227】
【外77】
Figure 0003559588
となる。ピッチ周波数の整数倍におけるスペクトル包絡の値は
【0228】
【外78】
Figure 0003559588
となる。ピッチ波形を
w(k)(0k<N (f))
ピッチ周波数fに対応するパワ正規化係数を
C(f)
とする。C(f)=1.0となるピッチ周波数をf として
【0229】
【外79】
Figure 0003559588
によってC(f)が与えられる。
【0230】
基本周波数の整数倍の正弦波を重ね合わせて
【0231】
【外80】
Figure 0003559588
のようにピッチ波形w(k)(0k<N (f))を生成する。
【0232】
または、ピッチ周期の半分位相をずらして重ね合わせて
【0233】
【外81】
Figure 0003559588
のようにピッチ波形w(k)(0k<N (f))を生成する。
【0234】
ピッチスケールを声の高さを表現するための尺度とする。式(10)、(11)の演算を直接行う代わりに、以下のように計算を高速化することもできる。ピッチスケールsに対応するピッチ周期ポイント数をN (s)とし、
【0235】
【外82】
Figure 0003559588
として、式(10)の場合
【0236】
【外83】
Figure 0003559588
式(11)の場合
【0237】
【外84】
Figure 0003559588
を計算してテーブルに記憶しておく。波形生成行列を
WGM(s)=(ckn(s))
(0≦k<Np (s),0≦n<N)
とする。さらに、ピッチスケールsに対応するピッチ周期ポイント数N (s)、パワ正規化係数C(s)をテーブルに記憶しておく。
【0238】
波形生成部9では、合成パラメータ補間部7より出力された合成パラメータp(n)(0n<N)とピッチスケール補間部8より出力されたピッチスケールsを入力として、ピッチ周期ポイント数N (s)、パワ正規化係数C(s)、波形生成行列WGM(s)=(ckn(s))をテーブルから読み出し、
【0239】
【外85】
Figure 0003559588
によりピッチ波形を生成する(図18)。
【0240】
以上の動作を、図7のフローチャートを参照して説明する。
【0241】
ステップS1、S2、S3は実施例1と同じである。
【0242】
図19は、ステップS3で生成されたパラメータ1フレームのデータ構造を示す。
【0243】
ステップS4、S5、S6、S7、S8、S9は実施例1と同じである。
【0244】
ステップS10で、合成パラメータ補間部7において、パラメータ格納部4に取り込まれた合成パラメータと、フレーム時間長設定部5で設定されたフレーム時間長と、波形ポイント数格納部6に格納された波形ポイント数を用いて、合成パラメータの補間が行われる。図20は、合成パラメータの補間についての説明図である。第iフレームの合成パラメータをp [n](0n<N)、第i+1フレームの合成パラメータをpi+1 [n](0n<N)、第iフレームの時間長をN ポイントとする。このとき、1ポイント当たりの合成パラメータの差分Δ [n](0n<N)は、
【0245】
【外86】
Figure 0003559588
となる。次に、ピッチ波形を生成するごとに合成パラメータp[n](0n<N)を更新する。
【0246】
p[n]=p [n]+n Δ [n] (12)
の処理をピッチ波形開始点で行う。
【0247】
ステップS11は、実施例1と同じである。
【0248】
ステップS12で、式(12)によって得られた合成パラメータp[n](0n<N)と式(4)によって得られたピッチスケールsを用いて波形生成部9においてピッチ波形を生成する。ピッチスケールsに対応するピッチ周期ポイント数N (s)とパワ正規化係数C(s)と波形生成行列WGM(s)=(ckn(s))(0k<N (s),0n<N)をテーブルから読み出し、ピッチ波形を
【0249】
【外87】
Figure 0003559588
によって生成する。
【0250】
図11は、生成されたピッチ波形の接続についての説明図である。波形生成部9から合成音声として出力される音声波形を
W(n)(0n)
とする。ピッチ波形の接続は、第jフレームのフレーム時間長をN として
W(n +k)=w(k)(i=0,0k<N (s))
【0251】
【外88】
Figure 0003559588
によって行う。
【0252】
ステップS13、S14、S15、S16、S17は実施例1と同じである。
【0253】
(実施例6)
本実施例では、周波数特性を決定する関数を用いてスペクトル包絡を変換する例について説明する。
【0254】
実施例6の音声合成装置の構成及び機能構成を示すブロック図は、実施例1と同じく図25及び図1である。
【0255】
波形生成部9で行われるピッチ波形の生成について説明する。
【0256】
ピッチ波形の生成に用いる合成パラメータを
p(m)(0m<M)
とする。サンプリング周波数を

とする。サンプリング周期は
【0257】
【外89】
Figure 0003559588
である。合成音声のピッチ周波数を

とすると、ピッチ周期は
【0258】
【外90】
Figure 0003559588
となり、ピッチ周期ポイント数は
【0259】
【外91】
Figure 0003559588
となる。[x]でx以下の最大の整数を表し、ピッチ周期ポイント数を整数で量子化して
(f)=[f/f]
とする。ピッチ周期を角度2πに対応させたときの1ポイントごとの角度をθとすると、
【0260】
【外92】
Figure 0003559588
となる。ピッチ周波数の整数倍におけるスペクトル包絡の値は
【0261】
【外93】
Figure 0003559588
となる。スペクトル包絡の操作に用いる周波数特性関数を
r(x)(0 /2)
とする。図21は、f 以上の周波数の高調波の振幅を2倍にする例である。r(x)を変えることによって、スペクトル包絡を操作することができる。この関数を用いて、ピッチ周波数の整数倍におけるスペクトル包絡の値を
【0262】
【外94】
Figure 0003559588
と変換する。ピッチ波形を
w(k)(0k<N (f))
ピッチ周波数fに対応するパワ正規化係数を
C(f)
とする。C(f)=1.0となるピッチ周波数をf として
【0263】
【外95】
Figure 0003559588
によってC(f)が与えられる。
【0264】
基本周波数の整数倍の正弦波を重ね合わせて
【0265】
【外96】
Figure 0003559588
のようにピッチ波形w(k)(0k<N (f))を生成する。
【0266】
または、ピッチ周期の半分位相をずらして重ね合わせて
【0267】
【外97】
Figure 0003559588
のようにピッチ波形w(k)(0k<N (f))を生成する。
【0268】
ピッチスケールを声の高さを表現するための尺度とする。式(13)、(14)の演算を直接行う代わりに、以下のように計算を高速化することもできる。ピッチスケールsに対応するピッチ周波数をf、ピッチ周期ポイント数をN (s)とし、
【0269】
【外98】
Figure 0003559588
とする。さらに、周波数特性関数を
r(x)(0≦x≦f /2)
とする。そして、式(13)の場合
【0270】
【外99】
Figure 0003559588
式(14)の場合
【0271】
【外100】
Figure 0003559588
を計算してテーブルに記憶しておく。波形生成行列を
WGM(s)=(ckm(s))(0≦k<N(s),0≦m<M)
とする。さらに、ピッチスケールsに対応するピッチ周期ポイント数N(s)、パワ正規化係数C(s)をテーブルに記憶しておく。
【0272】
波形生成部9では、合成パラメータ補間部7より出力された合成パラメータp(m)(0m<M)とピッチスケール補間部8より出力されたピッチスケールsを入力として、ピッチ周期ポイント数N (s)、パワ正規化係数C(s)、波形生成行列WGM(s)=(ckm(s))をテーブルから読み出し、
【0273】
【外101】
Figure 0003559588
によりピッチ波形を生成する。(図6)
以上の動作を、図7のフローチャートを参照して説明する。
【0274】
ステップS1、S2、S3、S4、S5、S6、S7、S8、S9、S10、S11は実施例1と同じである。
【0275】
ステップS12で、式(3)によって得られた合成パラメータp[m](0m<M)と式(4)によって得られたピッチスケールsを用いて波形生成部9においてピッチ波形を生成する。ピッチスケールsに対応するピッチ周期ポイント数N (s)とパワ正規化係数C(s)と波形生成行列WGM(s)=(ckm(s))(0k<N (s),0m<M)をテーブルから読み出し、ピッチ波形を
【0276】
【外102】
Figure 0003559588
によって生成する。
【0277】
図11は、生成されたピッチ波形の接続についての説明図である。波形生成部9から合成音声として出力される音声波形を
W(n)(0n)
とする。ピッチ波形の接続は、第jフレームのフレーム時間長をN として
W(n +k)=w(k)(i=0,0k<N (s))
【0278】
【外103】
Figure 0003559588
によって行う。
【0279】
ステップS13、S14、S15、S16、S17は実施例1と同じである。
【0280】
(実施例7)
本実施例では、実施例1における正弦関数に変えて余弦関数を用いる例について説明する。
【0281】
実施例7の音声合成装置の構成及び機能構成を示すブロック図は、実施例1と同じく図25及び図1である。
【0282】
波形生成部9で行われるピッチ波形の生成について説明する。
【0283】
ピッチ波形の生成に用いる合成パラメータを
p(m)(0m<M)
とする。
【0284】
サンプリング周波数を

とする。サンプリング周期は、
【0285】
【外104】
Figure 0003559588
である。合成音声のピッチ周波数を

とすると、ピッチ周期は
【0286】
【外105】
Figure 0003559588
となり、ピッチ周期ポイント数は
【0287】
【外106】
Figure 0003559588
となる。[x]でx以下の最大の整数を表し、ピッチ周期ポイント数を整数で量子化して
(f)=[f/f]
とする。ピッチ周期を角度2πに対応させたときの1ポイントごとの角度をθとすると、
【0288】
【外107】
Figure 0003559588
となる。ピッチ周波数の整数倍におけるスペクトル包絡の値は
【0289】
【外108】
Figure 0003559588
となる。(図3)ピッチ波形を
w(k)(0k<N (f))
ピッチ周波数fに対応するパワ正規化係数を
C(f)
とする。C(f)=1.0となるピッチ周波数をf として
【0290】
【外109】
Figure 0003559588
によってC(f)が与えられる。
【0291】
基本周波数の整数倍の余弦波を重ね合わせて
【0292】
【外110】
Figure 0003559588
となる。さらに、次のピッチ波形のピッチ周波数をf′とすると、次のピッチ波形の0次の値は
【0293】
【外111】
Figure 0003559588
となる。
【0294】
【外112】
Figure 0003559588
として、
w(k)=γ(k)w(k)
のようにピッチ波形w(k)(0k<N (f))を生成する(図22)。
【0295】
または、ピッチ周期の半分位相をずらして重ね合わせて
【0296】
【外113】
Figure 0003559588
のようにピッチ波形w(k)(0k<N (f))を生成する(図23)。
【0297】
ピッチスケールを声の高さを表現するための尺度とする。式(15)、(16)の演算を直接行う代わりに、以下のように計算を高速化することもできる。ピッチスケールsに対応するピッチ周期ポイント数をN (s)とし
【0298】
【外114】
Figure 0003559588
として、式(15)の場合
【0299】
【外115】
Figure 0003559588
式(16)の場合
【0300】
【外116】
Figure 0003559588
を計算してテーブルに記憶しておく。波形生成行列を
WGM(s)=(ckm(s))(0≦k<N (s),0≦m<M)
とする。さらに、ピッチスケールsに対応するピッチ周期ポイント数N (s)、パワ正規化係数C(s)をテーブルに記憶しておく。
【0301】
波形生成部9では、合成パラメータ補間部7より出力された合成パラメータp(m)(0m<M)とピッチスケール補間部8より出力されたピッチスケールsを入力として、ピッチ周期ポイント数N (s)、パワ正規化係数C(s)、波形生成行列WGM(s)=(ckm(s))をテーブルから読み出し、
【0302】
【外117】
Figure 0003559588
によりピッチ波形を生成する。さらに、式(17)によって波形生成行列を計算した場合、次のピッチ波形のピッチスケールをs′として
【0303】
【外118】
Figure 0003559588
を計算し、
w(k)=γ(k)w(k)
をピッチ波形とする。
【0304】
以上の動作を、図7のフローチャートを参照して説明する。
【0305】
ステップS1、S2、S3、S4、S5、S6、S7、S8、S9、S10、S11は実施例1と同じである。
【0306】
ステップS12で、式(3)によって得られた合成パラメータp[m](0≦m<M)と式(4)によって得られたピッチスケールsを用いて波形生成部9においてピッチ波形を生成する。ピッチスケールsに対応するピッチ周期ポイント数N (s)とパワ正規化係数C(s)と波形生成行列WGM(s)=(ckm(s))(0≦k<N (s),0≦m<M)をテーブルから読み出し、ピッチ波形を
【0307】
【外119】
Figure 0003559588
によって生成する。さらに、式(17)によって波形生成行列を計算した場合、ピッチスケール補間部8から1ポイント当たりのピッチスケールの差分Δ を読み出して、次のピッチ波形のピッチスケールを
s′=s+N (s)Δ
のように計算する。このs′を用いて
【0308】
【外120】
Figure 0003559588
を計算し、
w(k)=γ(k)w(k)
をピッチ波形とする。
【0309】
図11は、生成されたピッチ波形の接続についての説明図である。波形生成部9から合成音声として出力される音声波形を
W(n)(0n)
とする。ピッチ波形の接続は、第jフレームのフレーム時間長をN として
W(n +k)=w(k)(i=0,0k<N (s))
【0310】
【外121】
Figure 0003559588
によって行う。
【0311】
ステップS13、S14、S15、S16、S17は実施例1と同じである。
【0312】
(実施例8)
本実施例では、ピッチ波形の対称性を利用して、半周期のピッチ波形を1周期分に用いる例について説明する。
【0313】
実施例8の音声合成装置の構成及び機能構成を示すブロック図は、実施例1と同じく図25及び図1である。
【0314】
波形生成部9で行われるピッチ波形の生成について説明する。
【0315】
ピッチ波形の生成に用いる合成パラメータを
p(m)(0m<M)
とする。
【0316】
サンプリング周波数を

とする。サンプリング周期は
【0317】
【外122】
Figure 0003559588
である。合成音声のピッチ周波数を

とすると、ピッチ周期は
【0318】
【外123】
Figure 0003559588
となり、ピッチ周期ポイント数は
【0319】
【外124】
Figure 0003559588
となる。[x]でx以下の最大の整数を表し、ピッチ周期ポイント数を整数で量子化して
(f)=[f/f]
とする。ピッチ周期を角度2πに対応させたときの1ポイントごとの角度をθとすると、
【0320】
【外125】
Figure 0003559588
となる。ピッチ周波数の整数倍におけるスペクトル包絡の値は
【0321】
【外126】
Figure 0003559588
となる。半周期ピッチ波形を
【0322】
【外127】
Figure 0003559588
ピッチ周波数fに対応するパワ正規化係数を
C(f)
とする。C(f)=1.0となるピッチ周波数をf として
【0323】
【外128】
Figure 0003559588
によってC(f)が与えられる。
【0324】
基本周波数の整数倍の正弦波を重ね合わせて
【0325】
【外129】
Figure 0003559588
のように半周期ピッチ波形w(k)(0[N (f)/2])が生成される。
【0326】
または、ピッチ周期の半分位相をずらして重ね合わせて
【0327】
【外130】
Figure 0003559588
のように半周期ピッチ波形w(k)(0[N (f)/2])が生成される。
【0328】
ピッチスケールを声の高さを表現するための尺度とする。式(18)、(19)の演算を直接行う代わりに、以下のように計算を高速化することもできる。ピッチスケールsに対応するピッチ周期ポイント数をN (s)とし、
【0329】
【外131】
Figure 0003559588
として、式(18)の場合
【0330】
【外132】
Figure 0003559588
式(19)の場合
【0331】
【外133】
Figure 0003559588
を計算してテーブルに記憶しておく。波形生成行列を
【0332】
【外134】
Figure 0003559588
とする。さらに、ピッチスケールsに対応するピッチ周期ポイント数N (s)、パワ正規化係数C(s)をテーブルに記憶しておく。
【0333】
波形生成部9では、合成パラメータ補間部7より出力された合成パラメータp(m)(0m<M)とピッチスケール補間部8より出力されたピッチスケールsを入力として、ピッチ周期ポイント数N (s)、パワ正規化係数C(s)、波形生成行列WGM(s)=(ckm(s))をテーブルから読み出し、
【0334】
【外135】
Figure 0003559588
により半周期ピッチ波形を生成する。
【0335】
以上の動作を、図7のフローチャートを参照して説明する。
【0336】
ステップS1、S2、S3、S4、S5、S6、S7、S8、S9、S10、S11は実施例1と同じである。
【0337】
ステップS12で、式(3)によって得られた合成パラメータp[m](0m<M)と式(4)によって得られたピッチスケールsを用いて波形生成部9において半周期ピッチ波形を生成する。ピッチスケールsに対応するピッチ周期ポイント数N (s)とパワ正規化係数C(s)と波形生成行列WGM(s)=(ckm(s))(0k<[N (s)/2],0m<M)をテーブルから読み出し、半周期ピッチ波形を
【0338】
【外136】
Figure 0003559588
によって生成する。
【0339】
生成された半周期ピッチ波形の接続について説明する。波形生成部9から合成音声として出力される音声波形を
W(n)(0n)
とする。半周期ピッチ波形の接続は、第jフレームのフレーム時間長をN として
【0340】
【外137】
Figure 0003559588
によって行う。
【0341】
ステップS13、S14、S15、S16、S17は実施例1と同じである。
【0342】
(実施例9)
本実施例ではピッチ周期ポイント数に小数点部分があるピッチ波形における波形の対称性を利用して繰り返し用いる例について説明する。
【0343】
実施例9の音声合成装置の構成及び機能構成を示すブロック図は、実施例1と同じく図25及び図1である。
【0344】
波形生成部9で行われるピッチ波形の生成について、図24を参照して説明する。
【0345】
ピッチ波形の生成に用いる合成パラメータを
p(m)(0m<M)
とする。サンプリング周波数を

とする。サンプリング周期は
【0346】
【外138】
Figure 0003559588
である。合成音声のピッチ周波数を

とすると、ピッチ周期は
【0347】
【外139】
Figure 0003559588
となり、ピッチ周期ポイント数は
【0348】
【外140】
Figure 0003559588
となる。
【0349】
[x]でx以下の整数を表す。
【0350】
ピッチ周期ポイント数の小数部を、位相のずれたピッチ波形を接続することで表す。周波数fに対応するピッチ波形の個数を、位相数
(f)
とする。図24はn (f)=3のときのピッチ波形の例を示したものである。さらに、拡張ピッチ周期ポイント数を
【0351】
【外141】
Figure 0003559588
とし、ピッチ周期ポイント数を
【0352】
【外142】
Figure 0003559588
と量子化する。ピッチ周期ポイント数を角度2πに対応させたときの1ポイントごとの角度をθ とすると、
【0353】
【外143】
Figure 0003559588
となる。ピッチ周波数の整数倍におけるスペクトル包絡の値は
【0354】
【外144】
Figure 0003559588
となる。拡張ピッチ周期ポイント数を2πに対応させたときの1ポイントごとの角度をθ とすると、
【0355】
【外145】
Figure 0003559588
となる。a mod bはaをbで割った剰余を表すとして、拡張ピッチ波形ポイント数を
【0356】
【外146】
Figure 0003559588
拡張ピッチ波形を
w(k)(0k<Nex(f))
ピッチ周波数fに対応するパワ正規化係数を
C(f)
とする。C(f)=1.0となるピッチ周波数をf として
【0357】
【外147】
Figure 0003559588
によってC(f)が与えられる。
【0358】
ピッチ周波数の整数倍の正弦波を重ね合わせて、
【0359】
【外148】
Figure 0003559588
のように拡張ピッチ波形w(k)(0k<Nex(f))を生成する。
【0360】
または、ピッチ周期の半分位相をずらして重ね合わせて
【0361】
【外149】
Figure 0003559588
のように拡張ピッチ波形w(k)(0k<Nex(f))を生成する。
【0362】
位相インデックスを
(0 <n (f))
とする。ピッチ周波数f、位相インデックスi に対応する位相角を
【0363】
【外150】
Figure 0003559588
と定義する。
【0364】
r(f,i )=i N(f)mod n (f)
と定義する。位相インデックスi に対応するピッチ波形のピッチ波形ポイント数は
【0365】
【外151】
Figure 0003559588
によって計算される。位相インデックスi に対応するピッチ波形は
【0366】
【外152】
Figure 0003559588
となる。この後、位相インデックスを
=(i +1)mod n (f)
と更新し、更新された位相インデックスを用いて、位相角を
φ =φ(f,i
と計算する。さらに、次のピッチ波形を生成するときにピッチ周波数がf′に変更されるときは、φ に最も近い位相角を得るために
【0367】
【外153】
Figure 0003559588
を満たすi′を求めて
=i′
のようにi を決定する。
【0368】
ピッチスケールを声の高さを表現するための尺度とする。式(20)、(21)の演算を直接行う代わりに、以下のように計算を高速化することもできる。ピッチスケールs∈S(Sはピッチスケールの集合)に対応する位相数をn (s)、位相インデックスをi (0 <n (s))、拡張ピッチ周期ポイント数をN(s)、ピッチ周期ポイント数をN (s)、ピッチ波形ポイント数をP(s,i )とし、
【0369】
【外154】
Figure 0003559588
として、式(20)の場合
【0370】
【外155】
Figure 0003559588
式(21)の場合
【0371】
【外156】
Figure 0003559588
を計算してテーブルに記憶しておく。波形生成行列を
WGM(s,i )=(ckm(s,i ))
(0≦k<P(s,i ),0≦m<M)
とする。ピッチスケールsと位相インデックスi に対応する位相角
【0372】
【外157】
Figure 0003559588
をテーブルに記憶しておく、また、ピッチスケールsと位相角φ (∈{φ(s,i )|s∈S,0i<n (s)})に対して
【0373】
【外158】
Figure 0003559588
を満たすi を与える対応関係を
=I(s,φ
として、テーブルに記憶しておく。さらに、ピッチスケールsと位相インデックスi に対応する位相数n (s)、ピッチ波形ポイント数P(s,i )、パワ正規化係数C(s)をテーブルに記憶しておく。
【0374】
波形生成部9では、内部レジスタに格納されている位相インデックスをi 、位相角をφ とし、合成パラメータ補間部7より出力された合成パラメータp(m)(0m<M)とピッチスケール補間部8より出力されたピッチスケールsを入力として、位相インデックスを
=I(s,φ
により決定し、ピッチ波形ポイント数P(s,i )、パワ正規化係数C(s)をテーブルから読み出す。そして、
【0375】
【外159】
Figure 0003559588
のとき、波形生成行列WGM(s,i )=(ckm(s,i ))をテーブルから読み出し、
【0376】
【外160】
Figure 0003559588
によりピッチ波形を生成する。また、
【0377】
【外161】
Figure 0003559588
のとき、
k′=P(s,n (s)−1−i )−1−k(0k<P(s,i ))として、波形生成行列WGM(s,i )=(c (s,n (s)−1−i ))をテーブルから読み出し、
【0378】
【外162】
Figure 0003559588
によりピッチ波形を生成する。ピッチ波形を生成した後、位相インデックスを
=(i +1)mod n (s)
のように更新し、更新された位相インデックスを用いて位相角を
φ =φ(s,i
のように更新する。
【0379】
以上の動作を、図13のフローチャートを参照して説明する。
【0380】
ステップS201、S202、S203、S204、S205、S206、S207、S208、S209、S210、S211、S212、S213は実施例2と同じである。
【0381】
ステップS214で、式(3)によって得られた合成パラメータp[m](0m<M)と式(4)によって得られたピッチスケールsを用いて波形生成部9においてピッチ波形を生成する。ピッチスケールsに対応するピッチ波形ポイント数P(s,i )とパワ正規化係数C(s)をテーブルから読み出す。そして、
【0382】
【外163】
Figure 0003559588
のとき、波形生成行列WGM(s,i )=(ckm(s,i ))をテーブルから読み出し、
【0383】
【外164】
Figure 0003559588
によりピッチ波形を生成する。また、
【0384】
【外165】
Figure 0003559588
のとき、
k′=P(s,n (s)−1−i )−1−k(0≦k<P(s,i ))として、波形生成行列WGM(s,i )=(C(s,n (s)−1−i ))をテーブルから読み出し、
【0385】
【外166】
Figure 0003559588
によりピッチ波形を生成する。
【0386】
波形生成部9から合成音声として出力される音声波形を
W(n)(0n)
とする。ピッチ波形の接続は実施例1と同様であり、第jフレームのフレーム時間長をN として
W(n +k)=w (k)(i=0,0k<P(s,i ))
【0387】
【外167】
Figure 0003559588
によって行なう。
【0388】
ステップS215、S216、S217、S218、S219、S220は実施例2と同じである。
【0389】
以上説明したように、本実施形態によれば、合成音声の声の高さ(ピッチ)とパラメータからピッチ波形および無声波形を生成して接続することにより音声波形を生成するようにしたことにより、合成音声の音質劣化を防止する効果がある。
【0390】
以上説明したように、本実施形態によれば、ピッチ波形および無声波形の生成において、あらかじめ求めた行列とパラメータとの積を計算するようにしたことにより、音声波形の生成に要する計算量を低減する効果がある。
【0391】
以上説明したように、本実施形態によれば、ピッチ波形の生成において、ピッチ周期ポイント数の小数部を表すために、位相のずれたピッチ波形を生成して接続するようにしたことにより、正確なピッチの合成音声が得られる効果がある。
【0392】
以上説明したように、本実施形態によれば、ピッチ波形生成において、あるサンプリング周波数で求めたパラメータ(インパルス応答波形)を用いて、任意のサンプリング周波数でピッチ波形を生成して接続するようにしたことにより、任意のサンプリング周波数の合成音声を簡単な方法で生成することができる効果がある。
【0393】
以上説明したように、本実施形態によれば、パラメータとして、音声のパワスペクトル包絡を使用し、このパワスペクトル包絡からピッチ波形を生成するようにしたことにより、周波数領域のパラメータから音声波形を生成でき、周波数領域でのパラメータ操作が可能となる効果がある。
【0394】
以上説明したように、本実施形態によれば、ピッチ波形の生成において、周波数特性を決定する関数を持ち、ピッチ周波数の整数倍における関数値を掛けることにより、パラメータから求めたスペクトル包絡のサンプル値を変換し、変換されたサンプル値をフーリエ変換することによりピッチ波形を生成するようにしたことにより、パラメータを操作せずに合成音声の音色を変えることが可能となる効果がある。
【0395】
以上説明したように、本発明によれば、ピッチ波形の生成において、波形の対称性を利用するようにしたことにより、音声波形の生成に要する計算量を低減する効果がある。
【発明の効果】
以上説明したように、本発明によれば、合成音声の音質劣化を防止できる効果がある。
【図面の簡単な説明】
【図1】本発明の実施例に係る音声合成装置の機能構成を示すブロック図。
【図2】本発明の実施例に係る合成パラメータについての説明図。
【図3】本発明の実施例に係るスペクトル包絡についての説明図。
【図4】正弦波の重ね合わせについての説明図。
【図5】正弦波の重ね合わせについての説明図。
【図6】ピッチ波形の生成についての説明図。
【図7】音声波形生成手段を示すフローチャート。
【図8】パラメータ1フレームのデータ構造を示す図。
【図9】合成パラメータの補間についての説明図。
【図10】ピッチスケールの補間についての説明図。
【図11】波形接続についての説明図。
【図12】ピッチ波形についての説明図。
【図13】音声波形生成手段を示すフローチャート。
【図14】音声合成装置の機能構成を示すブロック図。
【図15】音声波形生成手段を示すフローチャート。
【図16】パラメータ1フレームのデータ構造を示す図。
【図17】合成パラメータについての説明図。
【図18】ピッチ波形の生成についての説明図。
【図19】パラメータ1フレームのデータ構造を示す図。
【図20】合成パラメータの補間についての説明図。
【図21】周波数特性関数についての説明図。
【図22】余弦波の重ね合わせについての説明図。
【図23】余弦波の重ね合わせについての説明図。
【図24】ピッチ波形についての説明図。
【図25】実施例における音声合成装置の構成を示すブロック図。

Claims (34)

  1. 入力された文字系列に従い音声波形のパラメータとしてのインパルス応答波形から求まる合成パラメータを生成するパラメータ生成手段と、
    入力された合成音声の声の高さ情報と前記生成された合成パラメータから合成音声のピッチ周期でサンプリングされたスペクトル包絡を求め、そのサンプル値を時間領域の波形に変換することによってピッチ波形を生成するピッチ波形生成手段と、
    前記生成されたピッチ波形を接続して得た音声波形を出力する音声波形出力手段と
    を備えることを特徴とする音声合成装置。
  2. 前記ピッチ波形生成手段は、合成音声のピッチ周期を1周期とするピッチ波形を生成することを特徴とする請求項1に記載の音声合成装置。
  3. 前記ピッチ波形生成手段は、合成音声のピッチ周波数の整数倍におけるスペクトル包絡のサンプル値を合成パラメータと余弦関数との積和により求め、このスペクトル包絡のサンプル値を正弦級数の係数とし、正弦関数との積和を求めることを特徴とする請求項1に記載の音声合成装置。
  4. 前記正弦級数において、位相を半周期ずつずらした正弦関数を使うことを特徴とする請求項に記載の音声合成装置。
  5. 入力された文字系列に従い音声波形のパラメータとしてのインパルス応答波形から求まる合成パラメータを生成するパラメータ生成手段と、
    余弦関数と正弦関数との積和を行列としてピッチ毎に導出する行列導出手段と、
    入力された合成音声の声の高さ情報に応じた行列と前記合成パラメータとからピッチ波形を生成するピッチ波形生成手段と、
    前記生成されたピッチ波形を接続して得た音声波形を出力する音声波形出力手段と
    を備えることを特徴とする音声合成装置。
  6. 前記行列導出手段において、位相を半周期ずつずらした正弦関数を使うことを特徴とする請求項5に記載の音声合成装置。
  7. 前記ピッチ波形生成手段は、合成パラメータを、ピッチ周期毎に補間する手段を更に備えることを特徴とする請求項1または請求項5に記載の音声合成装置。
  8. 前記ピッチ波形生成手段において、合成音声のピッチをピッチ周期毎に補間する手段をさらに備えることを特徴とする請求項1または請求項5に記載の音声合成装置。
  9. 前記ピッチ波形生成手段は、位相のずれたピッチ波形を生成することを特徴とする請求項1または請求項5に記載の音声合成装置。
  10. パラメータから無声波形を生成する無声波形生成手段を更に備え、前記音声波形出力手段は前記無声波形を接続することを特徴とする請求項1または請求項5に記載の音声合成装置。
  11. 前記無声波形生成手段は、音声の対数パワスペクトル包絡から求めた合成パラメータから、無声波形を生成することを特徴とする請求項10に記載の音声合成装置。
  12. 前記無声波形生成手段は、可聴周波数帯域より低い周波数の整数倍におけるスペクトル包絡のサンプル値を合成パラメータと余弦関数との積和により求め、そのスペクトル包絡のサンプル値と位相のずれをランダムに与えた正弦関数との積和を求めることを特徴とする請求項11に記載の音声合成装置。
  13. 前記無声波形生成手段は、前記余弦関数と前記正弦関数との積和を、行列として導出する行列導出手段を更に備え、前記導出された行列と前記合成パラメータとの積を求めることを特徴とする請求項11に記載の音声合成装置。
  14. 前記ピッチ波形生成手段は、あるサンプリング周波数で求めたインパルス応答波形を用いて、任意のサンプリング周波数のピッチ波形を生成することを特徴とする請求項1または請求項5に記載の音声合成装置。
  15. 前記ピッチ波形生成手段は、周波数特性を決定する関数を持ち、ピッチ周波数の整数倍における関数値を掛けることによりスペクトル包絡のサンプル値を変換し、変換されたサンプル値を時間領域の波形に変換することを特徴とする請求項1に記載の音声合成装置。
  16. 前記ピッチ波形生成手段は、波形の対称性を利用してピッチ波形を生成することを特徴とする請求項3または請求項9に記載の音声合成装置。
  17. 入力された文字系列に従い音声波形のパラメータとしてのインパルス応答波形から求まる合成パラメータを生成するパラメータ生成工程と、
    入力された合成音声の声の高さ情報と前記生成された合成パラメータから合成音声のピッチ周期でサンプリングされたスペクトル包絡を求め、そのサンプル値を時間領域の波形に変換することによってピッチ波形を生成するピッチ波形生成工程と、
    前記生成されたピッチ波形を接続して得た音声波形を出力する音声波形出力工程と
    を備えることを特徴とする音声合成方法。
  18. 前記ピッチ波形生成工程は、合成音声のピッチ周期を1周期とするピッチ波形を生成することを特徴とする請求項17に記載の音声合成方法。
  19. 前記ピッチ波形生成工程は、合成音声のピッチ周波数の整数倍におけるスペクトル包絡のサンプル値を合成パラメータと余弦関数との積和により求め、このスペクトル包絡のサンプル値を正弦級数の係数とし、正弦関数との積和を求めることを特徴とする請求項17に記載の音声合成装置。
  20. 前記正弦級数において、位相を半周期ずつずらした正弦関数を使うことを特徴とする請求項19に記載の音声合成方法。
  21. 入力された文字系列に従い音声波形のパラメータとしてのインパルス応答波形から求まる合成パラメータを生成するパラメータ生成工程と、
    余弦関数と正弦関数との積和を行列としてピッチ毎に導出する行列導出工程と、
    入力された合成音声の声の高さ情報に応じた行列と前記合成パラメータとからピッチ波形を生成するピッチ波形生成工程と、
    前記生成されたピッチ波形を接続して得た音声波形を出力する音声波形出力工程と
    を備えることを特徴とする音声合成方法。
  22. 前記行列導出工程において、位相を半周期ずつずらした正弦関数を使うことを特徴とする請求項21に記載の音声合成方法。
  23. 前記ピッチ波形生成工程は、合成パラメータをピッチ周期毎に補間することを特徴とする請求項17または請求項21に記載の音声合成方法。
  24. 前記ピッチ波形生成工程において、合成音声のピッチをピッチ周期毎に補間することを特徴とする請求項17または請求項21に記載の音声合成方法。
  25. 前記ピッチ波形生成工程は、位相のずれたピッチ波形を生成することを特徴とする請求項17または請求項21に記載の音声合成方法。
  26. パラメータから無声波形を生成する無声波形生成工程を更に備え、前記音声波形出力工程は前記無声波形を接続することを特徴とする請求項17または請求項21に記載の音声合成方法。
  27. 前記無声波形生成工程は、音声の対数パワスペクトル包絡から求めた合成パラメータから無声波形を生成することを特徴とする請求項26に記載の音声合成方法。
  28. 前記無声波形生成工程は、可聴周波数帯域より低い周波数の整数倍におけるスペクトル包絡のサンプル値を合成パラメータと余弦関数との積和により求め、そのスペクトル包絡のサンプル値と位相のずれをランダムに与えた正弦関数との積和を求めることを特徴とする請求項27に記載の音声合成方法。
  29. 前記無声波形生成工程は、前記余弦関数と前記正弦関数との積和を行列として導出する行列導出工程を更に備え、前記導出された行列と前記合成パラメータとの積を求めることを特徴とする請求項27に記載の音声合成方法。
  30. 前記ピッチ波形生成工程は、あるサンプリング周波数で求めたインパルス応答波形を用いて、任意のサンプリング周波数のピッチ波形を生成することを特徴とする請求項17または請求項21に記載の音声合成方法。
  31. 前記ピッチ波形生成工程は、周波数特性を決定する関数を持ち、ピッチ周波数の整数倍における関数値を掛けることによりスペクトル包絡のサンプル値を変換し、変換されたサンプル値を時間領域の波形に変換することを特徴とする請求項17に記載の音声合成方法。
  32. 前記ピッチ波形生成工程は、波形の対称性を利用してピッチ波形を生成することを特徴とする請求項19または請求項25に記載の音声合成方法。
  33. 入力された文字列に対応する音声波形のパラメータとしてのインパルス応答波形から求まる合成パラメータを生成するパラメータ生成手段と、
    合成する音声の高さ情報を入力する高さ情報入力手段と、
    余弦関数と正弦関数との積和をピッチ毎に行列として予め求められている波形生成行列から前記高さ情報入力手段により入力された音声の高さ情報に対応する波形生成行列を読み出す波形生成行列読み出し手段と、
    前記パラメータ生成手段により生成された合成パラメータと前記波形生成行列読み出し手段により読み出された波形生成行列とを演算することにより、ピッチ波形を生成するピッチ波形生成手段と、
    前記生成されたピッチ波形を接続して音声波形を出力するよう制御する音声波形出力制御手段と
    を備えることを特徴とする音声合成制御装置。
  34. 入力された文字列に対応する音声波形のパラメータとしてのインパルス応答波形から求まる合成パラメータを生成し、
    合成する音声の高さ情報を入力し、
    余弦関数と正弦関数との積和をピッチ毎に行列として予め求められている波形生成行列から前記入力された音声の高さ情報に対応する波形生成行列を読み出し、
    前記生成された合成パラメータと前記読み出された波形生成行列とを演算することによりピッチ波形を生成し、
    前記生成されたピッチ波形を接続して音声波形を出力するよう制御することを特徴とする音声合成制御方法。
JP11673394A 1994-05-30 1994-05-30 音声合成方法及び装置 Expired - Fee Related JP3559588B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP11673394A JP3559588B2 (ja) 1994-05-30 1994-05-30 音声合成方法及び装置
EP95303606A EP0685834B1 (en) 1994-05-30 1995-05-26 A speech synthesis method and a speech synthesis apparatus
DE69519818T DE69519818T2 (de) 1994-05-30 1995-05-26 Verfahren und Vorrichtung zur Sprachsynthese
US08/452,545 US5745651A (en) 1994-05-30 1995-05-30 Speech synthesis apparatus and method for causing a computer to perform speech synthesis by calculating product of parameters for a speech waveform and a read waveform generation matrix

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11673394A JP3559588B2 (ja) 1994-05-30 1994-05-30 音声合成方法及び装置

Publications (2)

Publication Number Publication Date
JPH07319491A JPH07319491A (ja) 1995-12-08
JP3559588B2 true JP3559588B2 (ja) 2004-09-02

Family

ID=14694447

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11673394A Expired - Fee Related JP3559588B2 (ja) 1994-05-30 1994-05-30 音声合成方法及び装置

Country Status (4)

Country Link
US (1) US5745651A (ja)
EP (1) EP0685834B1 (ja)
JP (1) JP3559588B2 (ja)
DE (1) DE69519818T2 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3548230B2 (ja) * 1994-05-30 2004-07-28 キヤノン株式会社 音声合成方法及び装置
GB9600774D0 (en) * 1996-01-15 1996-03-20 British Telecomm Waveform synthesis
JPH10187195A (ja) * 1996-12-26 1998-07-14 Canon Inc 音声合成方法および装置
JP4632384B2 (ja) * 2000-03-31 2011-02-16 キヤノン株式会社 音声情報処理装置及びその方法と記憶媒体
JP4054507B2 (ja) 2000-03-31 2008-02-27 キヤノン株式会社 音声情報処理方法および装置および記憶媒体
JP2001282279A (ja) * 2000-03-31 2001-10-12 Canon Inc 音声情報処理方法及び装置及び記憶媒体
JP2002132287A (ja) * 2000-10-20 2002-05-09 Canon Inc 音声収録方法および音声収録装置および記憶媒体
WO2002084646A1 (en) * 2001-04-18 2002-10-24 Koninklijke Philips Electronics N.V. Audio coding
JP2003295882A (ja) * 2002-04-02 2003-10-15 Canon Inc 音声合成用テキスト構造、音声合成方法、音声合成装置及びそのコンピュータ・プログラム
US7546241B2 (en) * 2002-06-05 2009-06-09 Canon Kabushiki Kaisha Speech synthesis method and apparatus, and dictionary generation method and apparatus
JP4587160B2 (ja) * 2004-03-26 2010-11-24 キヤノン株式会社 信号処理装置および方法
US20050222844A1 (en) * 2004-04-01 2005-10-06 Hideya Kawahara Method and apparatus for generating spatialized audio from non-three-dimensionally aware applications
JP2008225254A (ja) * 2007-03-14 2008-09-25 Canon Inc 音声合成装置及び方法並びにプログラム
CN111091807B (zh) * 2019-12-26 2023-05-26 广州酷狗计算机科技有限公司 语音合成方法、装置、计算机设备及存储介质

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5331323B2 (ja) * 1972-11-13 1978-09-01
JPS5681900A (en) * 1979-12-10 1981-07-04 Nippon Electric Co Voice synthesizer
US4885790A (en) * 1985-03-18 1989-12-05 Massachusetts Institute Of Technology Processing of acoustic waveforms
US5384891A (en) * 1988-09-28 1995-01-24 Hitachi, Ltd. Vector quantizing apparatus and speech analysis-synthesis system using the apparatus
JP2763322B2 (ja) * 1989-03-13 1998-06-11 キヤノン株式会社 音声処理方法
JPH02239292A (ja) * 1989-03-13 1990-09-21 Canon Inc 音声合成装置
US5300724A (en) * 1989-07-28 1994-04-05 Mark Medovich Real time programmable, time variant synthesizer
DE69028072T2 (de) * 1989-11-06 1997-01-09 Canon Kk Verfahren und Einrichtung zur Sprachsynthese
JP3278863B2 (ja) * 1991-06-05 2002-04-30 株式会社日立製作所 音声合成装置
US5327518A (en) * 1991-08-22 1994-07-05 Georgia Tech Research Corporation Audio analysis/synthesis system
EP0751496B1 (en) * 1992-06-29 2000-04-19 Nippon Telegraph And Telephone Corporation Speech coding method and apparatus for the same

Also Published As

Publication number Publication date
JPH07319491A (ja) 1995-12-08
US5745651A (en) 1998-04-28
EP0685834B1 (en) 2001-01-10
DE69519818T2 (de) 2001-06-28
DE69519818D1 (de) 2001-02-15
EP0685834A1 (en) 1995-12-06

Similar Documents

Publication Publication Date Title
JP3548230B2 (ja) 音声合成方法及び装置
JP3559588B2 (ja) 音声合成方法及び装置
US3982070A (en) Phase vocoder speech synthesis system
JP3528258B2 (ja) 符号化音声信号の復号化方法及び装置
WO2018084305A1 (ja) 音声合成方法
Laroche et al. New phase-vocoder techniques are real-time pitch shifting, chorusing, harmonizing, and other exotic audio modifications
EP1381028A1 (en) Singing voice synthesizing apparatus, singing voice synthesizing method and program for synthesizing singing voice
JPH10187195A (ja) 音声合成方法および装置
JPH11133995A (ja) 音声変換装置
Maia et al. Complex cepstrum for statistical parametric speech synthesis
Bonada et al. Sample-based singing voice synthesizer by spectral concatenation
JPH08254993A (ja) 音声合成装置
JP2018077283A (ja) 音声合成方法
US6253172B1 (en) Spectral transformation of acoustic signals
JP3468337B2 (ja) 補間音色合成方法
Wakefield Chromagram visualization of the singing voice.
CN112820257B (zh) 一种基于matlab的gui声音合成装置
JP2018077280A (ja) 音声合成方法
JP2018077281A (ja) 音声合成方法
JPH07261798A (ja) 音声分析合成装置
JP2712769B2 (ja) 音声開発装置
JPH01151400A (ja) スピーカの高調波歪測定方法
JP3294192B2 (ja) 音声変換装置及び音声変換方法
CN116978346A (zh) 一种音频变速变调方法、装置及存储介质
Mejstrik et al. Estimates of the Reconstruction Error in Partially Redressed Warped Frames Expansions

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040511

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040524

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090528

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100528

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100528

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110528

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120528

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120528

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130528

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140528

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees