JP3559588B2 - 音声合成方法及び装置 - Google Patents
音声合成方法及び装置 Download PDFInfo
- 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
Links
- 238000001308 synthesis method Methods 0.000 title claims description 17
- 230000015572 biosynthetic process Effects 0.000 claims description 118
- 238000003786 synthesis reaction Methods 0.000 claims description 118
- 239000011159 matrix material Substances 0.000 claims description 71
- 238000000034 method Methods 0.000 claims description 40
- 238000005070 sampling Methods 0.000 claims description 30
- 230000004044 response Effects 0.000 claims description 25
- 238000001228 spectrum Methods 0.000 claims description 23
- 230000003595 spectral effect Effects 0.000 claims description 17
- 230000010363 phase shift Effects 0.000 claims description 5
- 239000002131 composite material Substances 0.000 claims description 3
- 239000011295 pitch Substances 0.000 description 415
- 238000010586 diagram Methods 0.000 description 39
- 238000010606 normalization Methods 0.000 description 37
- 230000006870 function Effects 0.000 description 19
- 238000013500 data storage Methods 0.000 description 16
- 238000004364 calculation method Methods 0.000 description 14
- 230000014509 gene expression Effects 0.000 description 11
- 230000000694 effects Effects 0.000 description 9
- 238000004458 analytical method Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 239000011318 synthetic pitch Substances 0.000 description 2
- 229910006119 NiIn Inorganic materials 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 238000005316 response function Methods 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/02—Methods for producing synthetic speech; Speech synthesisers
- G10L13/033—Voice editing, e.g. manipulating the voice of the synthesiser
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/08—Text 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
【産業上の利用分野】
本発明は、規則合成方式による音声合成方法および装置に関する。
本発明は、入力された文字列に対応する合成音声を出力するよう制御する音声合成制御方法及び装置に関する。
【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フレームの波形ポイント数nW を計算して内部レジスタに格納する。7は合成パラメータ補間部であり、パラメータ格納部4に格納されている合成パラメータを、フレーム時間長設定部5で設定されたフレーム時間長Niと波形ポイント数格納部6に格納された波形ポイント数nW で補間する。8はピッチスケール補間部であり、パラメータ格納部4に格納されているピッチスケールを、フレーム時間長設定部5で設定されたフレーム時間Niと波形ポイント数格納部6に格納された波形ポイント数nW で補間する。9は波形生成部であり、合成パラメータ補間部7で補間された合成パラメータとピッチスケール補間部8で補間されたピッチスケールからピッチ波形を生成し、ピッチ波形を接続して合成音声を出力する。
【0029】
波形生成部9で行われるピッチ波形の生成について、図2、図3、図4、図5、図6を参照して説明する。
【0030】
ピッチ波形の生成に用いる合成パラメータについて説明する。図2において、フーリエ変換の次数をN、合成パラメータの次数をMとする。ここでN、MはN>2Mを満たすようにする。音声の対数パワスペクトル包絡を
【0031】
【外1】
とする。対数パワスペクトル包絡を指数関数に入力して線形に戻し、逆フーリエ変換して求めたインパルス応答は、
【0032】
【外2】
となる。
【0033】
合成パラメータ
p(m)(0<m<M)
は、インパルス応答の0次の値と1次以降の値の比を相対的に2倍することにより得られる。すなわち、r≠0として、
p(0)=rh(0)
p(m)=2rh(m)(1<m<M)
とする。
【0034】
サンプリング周波数を
fs
とする。サンプリング周期は
【0035】
【外3】
である。合成音声のピッチ周波数を
f
とすると、ピッチ周期は
【0036】
【外4】
となり、ピッチ周期ポイント数は
【0037】
【外5】
となる。[x]でx以下の最大の整数を表し、ピッチ周期ポイント数を整数で量子化して
Np (f)=[fs/f]
とする。ピッチ周期を角度2πに対応させたときの1ポイントごとの角度をθとすると、
【0038】
【外6】
となる。ピッチ周波数の整数倍におけるスペクトル包絡の値は
【0039】
【外7】
となる(図3)。ピッチ波形を
w(k)(0<k<Np (f))
ピッチ周波数fに対応するパワ正規化係数を
C(f)
とする。C(f)=1.0となるピッチ周波数をf0 として
【0040】
【外8】
によってC(f)が与えられる。
【0041】
基本周波数の整数倍の正弦波を重ね合わせて
【0042】
【外9】
のようにピッチ波形w(k)(0<k<Np (f))が生成される(図4)。
【0043】
または、ピッチ周期の半分位相をずらして重ね合わせて
【0044】
【外10】
のようにピッチ波形w(k)(0<k<Np (f))が生成される(図5)。
【0045】
ピッチスケールを声の高さを表現するための尺度とする。式(1)、(2)の演算を直接行う代わりに、以下のように計算を高速化することもできる。ピッチスケールsに対応するピッチ周期ポイント数をNp (s)とし、
【0046】
【外11】
として、式(1)の場合
【0047】
【外12】
式(2)の場合
【0048】
【外13】
を計算してテーブルに記憶しておく。波形生成行列を
WGM(s)=(ckm(s)) (0<k<Np (s),0<m<M)
とする。さらに、ピッチスケールsに対応するピッチ周期ポイント数Np (s)、パワ正規化係数C(s)をテーブルに記憶しておく。
【0049】
波形生成部9では、合成パラメータ補間部7より出力された合成パラメータp(m)(0<m<M)とピッチスケール補間部8より出力されたピッチスケールsを入力として、ピッチ周期ポイント数Np (s)、パワ正規化係数C(s)、波形生成行列WGM(s)=(ckm(s))をテーブルから読み出し、
【0050】
【外14】
によりピッチ波形を生成する(図6)。
【0051】
以上の表音テキストの入力からピッチ波形を生成するまでの動作を、図7のフローチャートを参照して説明する。
【0052】
ステップS1で、文字系列入力部1より表音テキストを入力する。
【0053】
ステップS2で、外部入力された制御データ(発声速度、声の高さ)と入力された表音テキスト中の制御データを制御データ格納部2に格納する。
【0054】
ステップS3で、文字系列入力部1より入力された表音テキストからパラメータ生成部3においてパラメータ系列を生成する。
【0055】
図8にステップS3で生成されたパラメータ1フレーム分のデータ構造例を示す。
【0056】
ステップS4で波形ポイント数格納部6の内部レジスタを0に初期化する。波形ポイント数をnW で表すと
nW =0
となる。
【0057】
ステップS5で、パラメータ系列カウンタiを0に初期化する。
【0058】
ステップS6で、パラメータ生成部3から第iフレームと第i+1フレームのパラメータをパラメータ格納部4の内部レジスタに取り込む。
【0059】
ステップS7で、制御データ格納部2より、発声速度をフレーム時間長設定部5に取り込む。
【0060】
ステップS8で、フレーム時間長設定部5において、パラメータ格納部4に取り込まれたパラメータの発声速度係数と、制御データ格納部2より取り込まれた発声速度を用いて、フレーム時間長Niを設定する。
【0061】
ステップS9で、波形ポイント数nW がフレーム時間長Ni未満か否かを判別することにより、第iフレームの処理が終了していないか否かを判断し、nW >Niの場合は第iフレームの処理が終了したと判断してステップS14へ進み、nW <Niの場合は第iフレームの処理途中であると判断してステップS10へ進み、処理が続けられる。
【0062】
ステップS10で、合成パラメータ補間部7において、パラメータ格納部4に取り込まれた合成パメータと、フレーム時間長設定部5で設定されたフレーム時間長と、波形ポイント数格納部6に格納された波形ポイント数を用いて、合成パラメータの補間を行う。図9は、合成パラメータの補間についての説明図である。第iフレームの合成パラメータをpi [m](0<m<M)、第i+1フレームの合成パラメータをpi+1 [m](0<m<M)、第iフレームの時間長をNi ポイントとする。このとき、1ポイント当たりの合成パラメータの差分Δp [m](0<m<M)は、
【0063】
【外15】
となる。次に、ピッチ波形を生成するごとに合成パラメータp[m](0<m<M)を更新する。
【0064】
p[m]=pi [m]+nw Δp [m] (3)
の処理をピッチ波形開始点で行う。
【0065】
ステップS11で、ピッチスケール補間部8において、パラメータ格納部4に取り込まれたピッチスケールと、フレーム時間長設定部5で設定されたフレーム時間長と波形ポイント数格納部6に格納された波形ポイント数を用いて、ピッチスケールの補間を行う。図10はピッチスケールの補間についての説明図である。第iフレームのピッチスケールをsi 、第i+1フレームのピッチスケールをsi+1 、第iフレームのフレーム時間長をNi ポイントとする。このとき、1ポイント当たりのピッチスケールの差分Δs は、
【0066】
【外16】
となる。次に、ピッチ波形を生成するごとにピッチスケールsを更新する。
【0067】
s=si +nW Δs (4)
の処理をピッチ波形開始点で行う。
【0068】
ステップS12で、式(3)によって得られた合成パラメータp[m](0<m<M)と式(4)によって得られたピッチスケールsを用いて波形生成部9においてピッチ波形を生成する。ピッチスケールsに対応するピッチ周期ポイント数Np (s)とパワ正規化係数C(s)と波形生成行列WGM(s)=(ckm(s))(0<k<Np (s),0<m<M)をテーブルから読み出し、ピッチ波形を
【0069】
【外17】
によって生成する。
【0070】
図11は生成されたピッチ波形の接続についての説明図である。波形生成部9から合成音声として出力される音声波形を
W(n) (0<n)
とする。ピッチ波形の接続は、第jフレームのフレーム時間をNj として
W(nW +k)=w(k) (i=0,0<k<Np (s))
【0071】
【外18】
によって行う。
【0072】
ステップS13で、波形ポイント数格納部6で波形ポイント数nW を
nW =nW +Np (s)
のように更新し、ステップS9に戻り、処理を続ける。
【0073】
ステップS9で、nW >Niの場合はステップS14に進む。
【0074】
ステップS14で、波形ポイント数nW を
nW =nW −Ni
のように初期化する。
【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)
とする。サンプリング周波数を
fs
とする。サンプリング周期は
【0082】
【外19】
である。合成音声のピッチ周波数を
f
とすると、ピッチ周期は
【0083】
【外20】
となり、ピッチ周期ポイント数は
【0084】
【外21】
となる。
【0085】
[x]でx以下の整数を表す。
【0086】
ピッチ周期ポイント数の小数部を、位相のずれたピッチ波形を接続することで表す。周波数fに対応するピッチ波形の個数を、位相数
np (f)
とする。図12はnp (f)=3としたときのピッチ波形の例を示したものである。さらに、拡張ピッチ周期ポイント数を
【0087】
【外22】
とし、ピッチ周期ポイント数を
【0088】
【外23】
と量子化する。ピッチ周期ポイント数を角度2πに対応させたときの1ポイントごとの角度をθ1 とすると、
【0089】
【外24】
となる。ピッチ周波数の整数倍におけるスペクトル包絡の値は
【0090】
【外25】
となる。拡張ピッチ周期ポイント数を2πに対応させたときの1ポイントごとの角度をθ2 とすると、
【0091】
【外26】
となる。拡張ピッチ波形を
w(k) (0<k<N(f))
ピッチ周波数fに対応するパワ正規化係数を
C(f)
とする。C(f)=1.0となるピッチ周波数をf0 として
【0092】
【外27】
によってC(f)が与えられる。
【0093】
ピッチ周波数の整数倍の正弦波を重ね合わせて
【0094】
【外28】
のように拡張ピッチ波形w(k)(0<k<N(f))が生成される。
【0095】
または、ピッチ周期の半分位相をずらして重ね合わせて
【0096】
【外29】
のように拡張ピッチ波形w(k)(0<k<N(f))を生成する。
【0097】
位相インデックスを
ip (0<ip <np (f))
とする。ピッチ周波数f、位相インデックスip に対応する位相角を
【0098】
【外30】
と定義する。a mod bはaをbで割った剰余を表すとして、
r(f,ip )=ip N(f)mod np (f)
と定義する。位相インデックスip に対応するピッチ波形のピッチ波形ポイント数は
【0099】
【外31】
によって計算される。位相インデックスip に対応するピッチ波形は
【0100】
【外32】
となる。この後、位相インデックスを
ip =(ip +1)mod np (f)
と更新し、更新された位相インデックスを用いて、位相角を
φp =φ(f,ip )
と計算する。さらに、次のピッチ波形を生成するときにピッチ周波数がf′に変更されるときは、φp に最も近い位相角を得るために
【0101】
【外33】
を満たすi′を求めて
ip =i′
のようにip を決定する。
【0102】
ピッチスケールを声の高さを表現するための尺度とする。式(5)、(6)の演算を直接行う代わりに、以下のように計算を高速化することもできる。ピッチスケールs∈S(Sはピッチスケールの集合)に対応する位相数をnp (s)、位相インデックスをip (0<ip <np (s))、拡張ピッチ周期ポイント数をN(s)、ピッチ周期ポイント数をNp (s)、ピッチ波形ポイント数をP(s,ip )とし、
【0103】
【外34】
として、式(5)の場合
【0104】
【外35】
式(6)の場合
【0105】
【外36】
を計算してテーブルに記憶しておく。波形生成行列を
WGM(s,ip )=(ckm(s,ip ))
(0≦k<P(s,ip ),0≦m<M)
とする。ピッチスケールsと位相インデックスip に対応する位相角
【0106】
【外37】
をテーブルに記憶しておく。また、ピッチスケールsと位相角φp (∈{φ(s,ip )|s∈S,0<i<np (s)})に対して
【0107】
【外38】
を満たすi0 を与える対応関係を
i0 =I(s,φp )
として、テーブルに記憶しておく、さらに、ピッチスケールsと位相インデックスip に対応する位相数np (s)、ピッチ波形ポイント数P(s,ip )、パワ正規化係数C(s)をテーブルに記憶しておく。
【0108】
波形生成部9では、内部レジスタに格納されている位相インデックスをip 、位相角をφp とし、合成パラメータ補間部7より出力された合成パラメータp(m)(0<m<M)とピッチスケール補間部8より出力されたピッチスケールsを入力として、位相インデックスを
ip =I(s,φp )
により決定し、ピッチ波形ポイント数P(s,ip )、パワ正規化係数C(s)、波形生成行列WGM(s,ip )=(ckm(s,ip ))をテーブルから読み出し、
【0109】
【外39】
によりピッチ波形を生成する。ピッチ波形を生成した後、位相インデックスを
ip =(ip +1)mod np (s)
のように更新し、更新された位相インデックスを用いて位相角を
φp =φ(s,ip )
のように更新する。
【0110】
以上の動作を、図13のフローチャートを参照して説明する。
【0111】
ステップS201で、文字系列入力部1より表音テキストを入力する。
【0112】
ステップS202で、外部入力された制御データ(発声速度、声の高さ)と入力された表音テキスト中の制御データを制御データ格納部2に格納する。
【0113】
ステップS203で、文字系列入力部1より入力された表音テキストからパラメータ生成部3においてパラメータ系列を生成する。
【0114】
ステップS203で生成されたパラメータ1フレームのデータ構造は実施例1と同じであり、図8に示されている。
【0115】
ステップS204で、波形ポイント数格納部6の内部レジスタを0に初期化する。波形ポイント数をnw で表すと
nw =0
となる。
【0116】
ステップS205で、パラメータ系列カウンタiを0に初期化する。
【0117】
ステップS206で、位相インデックスip を0に、位相角φp を0に初期化する。
【0118】
ステップS207で、パラメータ生成部3から第iフレームと第i+1フレームのパラメータをパラメータ格納部4に取り込む。
【0119】
ステップS208で、制御データ格納部2より、発声速度をフレーム時間長設定部5に取り込む。
【0120】
ステップS209で、フレーム時間長設定部5において、パラメータ格納部4に取り込まれたパラメータの発声速度係数と、制御データ格納部2より取り込まれた発声速度を用いて、フレーム時間長Ni を設定する。
【0121】
ステップS210で、波形ポイント数nw がフレーム時間長Ni 未満か否かを判別し、nw >Ni の場合はステップS217へ進み、nw <Ni の場合はステップS211へ進み、処理を続ける。
【0122】
ステップS211で、合成パラメータ補間部7において、パラメータ格納部4に取り込まれた合成パラメータと、フレーム時間長設定部5で設定されたフレーム時間長と、波形ポイント数格納部6に格納された波形ポイント数を用いて、合成パラメータの補間を行う。パラメータの補間は実施例1のステップS10と同じである。
【0123】
ステップS212で、ピッチスケール補間部8において、パラメータ格納部4に取り込まれたピッチスケールと、フレーム時間長設定部5で設定されたフレーム時間長と波形ポイント数格納部6に格納された波形ポイント数を用いて、ピッチスケールの補間を行う。ピッチスケールの補間は実施例1のステップS11と同じである。
【0124】
ステップS213で、式(4)によって得られたピッチスケールsと位相角φp から
ip =I(s,φp )
によって位相インデックスを決定する。
【0125】
ステップS214で、式(3)によって得られた合成パラメータp[m](0<m<M)と式(4)によって得られたピッチスケールsを用いて波形生成部9においてピッチ波形を生成する。ピッチスケールsに対応するピッチ波形ポイント数P(s,ip )とパワ正規化係数C(s)と波形生成行列WGM(s,ip )=(ckm(s,ip ))(0<k<P(s,ip ),0<m<M)をテーブルから読み出し、ピッチ波形を
【0126】
【外40】
によって生成する。
【0127】
波形生成部9から合成音声として出力される音声波形を
W(n)(0<n)
とする。ピッチ波形の接続は実施例1と同様であり、第jフレームのフレーム時間長をNj として
W(nW +k)=wp (k) (i=0,0<k<P(s,ip ))
【0128】
【外41】
によって行う。
【0129】
ステップS215で、位相インデックスを
ip =(ip +1)mod np (s)
のように更新し、更新された位相インデックスip を用いて、位相角を
φp =φ(s,ip )
のように更新する。
【0130】
ステップS216で、波形ポイント数格納部6で波形ポイント数nw を
nw =nw +P(s,ip )
のように更新し、ステップS210に戻り、処理を続ける。
【0131】
ステップS210で、nw >Ni の場合はステップS217へ進む。
【0132】
ステップS217で、波形ポイント数nw を
nw =nw −Ni
のように初期化する。
【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フレームの波形ポイント数nw を計算して内部レジスタに格納する。307は合成パラメータ補間部であり、パラメータ格納部304に格納されている合成パラメータを、フレーム時間長設定部305で設定されたフレーム時間長Ni と波形ポイント数格納部306に格納された波形ポイント数nw で補間する。308はピッチスケール補間部であり、パラメータ格納部304に格納されているピッチスケールを、フレーム時間長設定部305で設定されたフレーム時間長Ni と波形ポイント数格納部306に格納された波形ポイント数nw で補間する。309は波形生成部であり、合成パラメータ補間部307で補間された合成パラメータとピッチスケール補間部308で補間されたピッチスケールからピッチ波形を生成し、ピッチ波形を接続して合成音声を出力する。また、波形生成部309は、合成パラメータ補間部307より出力された合成パラメータから無声波形を生成し、無声波形を接続して合成音声を出力する。
【0138】
波形生成部309で行われるピッチ波形の生成は実施例1における波形生成部9と同じである。
【0139】
本実施例では、波形生成部309で行われるピッチ波形の生成の他に更なる無声波形の生成について説明する。
【0140】
無声波形の生成に用いる合成パラメータを
p(m)(0≦m<M)
とする。サンプリング周波数を
fs
とする。サンプリング周期は
【0141】
【外42】
である。無声波形の生成に使用する正弦波のピッチ周波数を
f
とする。fは、可聴周波数帯域よりも低い周波数に設定される。
【0142】
[x]でx以下の整数を表す。
【0143】
ピッチ周波数fに対応するピッチ周期ポイント数は
【0144】
【外43】
となる。無声波形ポイント数を
Nuv=Np (f)
とする。無声波形ポイント数を角度2πに対応させたときの1ポイントごとの角度をθとすると、
【0145】
【外44】
となる。ピッチ周波数fの整数倍におけるスペクトル包絡の値は
【0146】
【外45】
となる。無声波形を
wuv(k)(0<k<Nuv)
ピッチ周波数fに対応するパワ正規化係数を
C(f)
とする。C(f)=1.0となるピッチ周波数をf0 として
【0147】
【外46】
によってC(f)が与えられる。無声波形生成に使用するパワ正規化係数を
Cuv=C(f)
とする。
【0148】
ピッチ周波数fの整数倍の正弦波を、位相をランダムにずらして重ね合わせることにより無声波形を生成する。位相のずれをαl (1<l<[Nuv/2])とする。αl は
−π<αl <π
を満たすランダムな値に設定される。
【0149】
【外47】
のように無声波形wuv(k)(0≦k<Nuv)が生成される。
【0150】
式(7)の演算を直接行う代わりに、以下のように計算を高速化することもできる。無声波形インデックスを
iuv(0<iuv<Nuv)
として、
【0151】
【外48】
を計算してテーブルに記憶しておく。無声波形生成行列を
UVWGM(iuv)=(c(iuv,m))(0≦iuv<Nuv,0≦m<M)
とする。さらに、ピッチ周期ポイント数Nuv、パワ正規化係数Cuvをテーブルに記憶しておく。
【0152】
波形生成部309では、内部レジスタに格納されている無声波形インデックスをiuv、合成パラメータ補間部7より出力された合成パラメータp(m)(0<m<M)を入力として、パワ正規化係数Cuv、無声波形生成行列UVWGM(iuv)=(c(iuv,m))がテーブルから読み出され、
【0153】
【外49】
により無声波形が1ポイント生成される。無声波形が生成された後、ピッチ周期ポイント数Nuvがテーブルから読み出され、無声波形インデックスiuvを
iuv=(iuv+1)modNuv
のように更新し、波形ポイント数格納部306に格納されている波形ポイント数nw を
nw =nw +1
のように更新する。
【0154】
以上の動作を、図15のフローチャートを参照して説明する。
【0155】
ステップS301で、文字系列入力部301より表音テキストを入力する。
【0156】
ステップS302で、外部入力された制御データ(発声速度、声の高さ)と入力された表音テキスト中の制御データを制御データ格納部302に格納する。
【0157】
ステップS303で、文字系列入力部301より入力された表音テキストからパラメータ生成部303においてパラメータ系列を生成する。
【0158】
図16は、ステップS303で生成されたパラメータ1フレームのデータ構造を示す。
【0159】
ステップS304で、波形ポイント数格納部306の内部レジスタを0に初期化する。波形ポイント数をnw で表すと
nw =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より取り込まれた発声速度を用いて、フレーム時間長Ni を設定する。
【0165】
ステップS310で、パラメータ格納部304に取り込まれた有声・無声情報を用いて第iフレームのパラメータが無声であるか否かを判断し、無声の場合はステップS311に進み、有声の場合はステップS317に進む。
【0166】
ステップS311で、波形ポイント数nw がフレーム時間長Ni 未満か否かを判別し、nw >Ni の場合はステップS315へ進み、nw <Ni の場合はステップS312へ進み、処理を続ける。
【0167】
ステップS312で、合成パラメータ補間部307より入力された第iフレームの合成パラメータpi [m](0≦m<M)を用いて波形生成部309において無声波形を生成する。パワ正規化係数Cuvをテーブルから読み出し、さらに、無声波形インデックスiuvに対応する無声波形生成行列UVWGM(iuv)=(c(iuv,m))(0≦m<M)をテーブルから読み出し、無声波形が
【0168】
【外50】
によって生成される。
【0169】
波形生成部309から合成音声として出力される音声波形を
W(n)(0<n)
とする。無声波形の接続は、第jフレームのフレーム時間長をNj として
W(nw +1)=wuv(iuv)(i=0)
【0170】
【外51】
によって行う。
【0171】
ステップS313で、無声波形ポイント数Nuvをテーブルから読み出し、無声波形インデックスを
iuv=(iuv+1)modNuv
のように更新する。
【0172】
ステップS314で、波形ポイント数格納部306で波形ポイント数nw を
nw =nw +1
のように更新し、ステップS311に戻り、処理を続ける。
【0173】
ステップS310で有声・無声情報が有声の場合、ステップS317に進み、第iフレームのピッチ波形を生成・接続する。ここで行われる処理は実施例1のステップS9、S10、S11、S12、S13で行われる処理に同じである。
【0174】
ステップS311でnw >Ni の場合、ステップS315へ進み、波形ポイント数nw を
nw =nw −Ni
のように初期化する。
【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)(0<m<M)
とする。合成パラメータであるインパルス応答波形のサンプリング周波数を分析サンプリング周波数
fs1
とする。分析サンプリング周期は
【0182】
【外52】
である。合成音声のピッチ周波数を
f
とすると、ピッチ周期は
【0183】
【外53】
となる。分析ピッチ周期ポイント数は
【0184】
【外54】
となる。
【0185】
[x]でx以下の最大の整数を表し、分析ピッチ周期ポイント数を整数で量子化して
Np1(f)=[fs1/f]
とする。
【0186】
合成音声のサンプリング周波数を合成サンプリング周波数
fs2
とする。合成ピッチ周期ポイント数は
【0187】
【外55】
となり、さらに、
【0188】
【外56】
と量子化する。
【0189】
分析ピッチ周期ポイント数を角度2πに対応させたときの1ポイントごとの角度をθ1 とすると、
【0190】
【外57】
となる。ピッチ周波数の整数倍におけるスペクトル包絡の値は
【0191】
【外58】
となる。合成ピッチ周期ポイント数を2πに対応させたときの1ポイントごとの角度をθ2 とすると、
【0192】
【外59】
となる。ピッチ波形を
w(k)(0<k<Np2(f))
ピッチ周波数fに対応するパワ正規化係数を
C(f)
とする。C(f)=1.0となるピッチ周波数をf0 として
【0193】
【外60】
によってC(f)が与えられる。
【0194】
ピッチ周波数の整数倍の正弦波を重ね合わせて
【0195】
【外61】
のようにピッチ波形w(k)(0<k<Np2(f))を生成する。
【0196】
または、ピッチ周期の半分位相をずらして重ね合わせて
【0197】
【外62】
のようにピッチ波形w(k)(0<k<Np2(f))を生成する。
【0198】
ピッチスケールを声の高さを表現するための尺度とする。式(8)、(9)の演算を直接行う代わりに、以下のように計算を高速化することもできる。ピッチスケールs∈S(Sはピッチスケールの集合)に対応する分析ピッチ周期ポイント数をNp1(s)、合成ピッチ周期ポイント数をNp2(s)とし、
【0199】
【外63】
として、式(8)の場合
【0200】
【外64】
式(9)の場合
【0201】
【外65】
を計算してテーブルに記憶しておく。波形生成行列を
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】
によりピッチ波形を生成する。
【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】
によって生成する。
【0208】
波形生成部9から合成音声として出力される音声波形を
W(n)(0<n)
とする。ピッチ波形の接続は、第jフレームのフレーム時間長をNj として
W(nw +k)=w(k)(i=0,0<k<Np2(s))
【0209】
【外68】
によって行う。
【0210】
ステップS13で、波形ポイント数格納部6で波形ポイント数nw を
nw =nw +Np2(s)
のように更新する。
【0211】
ステップS14、S15、S16、S17は実施例1と同じである。
【0212】
(実施例5)
本実施例では、パワスペクトル包絡からピッチ波形を生成することにより、パワスペクトル包絡を利用した周波数領域でのパラメータ操作を可能とする例について説明する。
【0213】
実施例5の音声合成装置の構成及び機能構成を示すブロック図は、実施例1と同じく図25及び図1である。
【0214】
波形生成部9で行われるピッチ波形の生成について説明する。
【0215】
まず、ピッチ波形の生成に用いる合成パラメータについて説明する。図17において、フーリエ変換の次数をN、ピッチ波形の生成に用いるインパルス応答波形の次数をMとする。ここでN、MはN>2Mを満たすようにする。音声の対数パワスペクトル包絡を
【0216】
【外69】
とする。対数パワスペクトル包絡を指数関数に入力して線形に戻し、逆フーリエ変換して求めたインパルス応答は、
【0217】
【外70】
となる。
【0218】
ピッチ波形の生成に用いるインパルス応答波形
h′(m)(0<m<M)
は、インパルス応答の0次の値と1次以降の値の比を相対的に2倍することにより得られる。すなわち、r≠0として、
h′(0)=rh(0)
h′(m)=2rh(m)(1<m<M)
とする。
【0219】
合成パラメータを
p(n)=r・exp(a(n))(0<n<N)
とする。このとき、
【0220】
【外71】
となる。
【0221】
【外72】
とすると、
【0222】
【外73】
となる。
【0223】
サンプリング周波数を
fs
とする。サンプリング周期は、
【0224】
【外74】
である。合成音声のピッチ周波数を
f
とすると、ピッチ周期は
【0225】
【外75】
となり、ピッチ周期ポイント数は
【0226】
【外76】
となる。[x]でx以下の最大の整数を表し、ピッチ周期ポイント数を整数で量子化して
Np (f)=[fs/f]
とする。ピッチ周期を角度2πに対応させたときの1ポイントごとの角度をθとすると、
【0227】
【外77】
となる。ピッチ周波数の整数倍におけるスペクトル包絡の値は
【0228】
【外78】
となる。ピッチ波形を
w(k)(0<k<Np (f))
ピッチ周波数fに対応するパワ正規化係数を
C(f)
とする。C(f)=1.0となるピッチ周波数をf0 として
【0229】
【外79】
によってC(f)が与えられる。
【0230】
基本周波数の整数倍の正弦波を重ね合わせて
【0231】
【外80】
のようにピッチ波形w(k)(0<k<Np (f))を生成する。
【0232】
または、ピッチ周期の半分位相をずらして重ね合わせて
【0233】
【外81】
のようにピッチ波形w(k)(0<k<Np (f))を生成する。
【0234】
ピッチスケールを声の高さを表現するための尺度とする。式(10)、(11)の演算を直接行う代わりに、以下のように計算を高速化することもできる。ピッチスケールsに対応するピッチ周期ポイント数をNp (s)とし、
【0235】
【外82】
として、式(10)の場合
【0236】
【外83】
式(11)の場合
【0237】
【外84】
を計算してテーブルに記憶しておく。波形生成行列を
WGM(s)=(ckn(s))
(0≦k<Np (s),0≦n<N)
とする。さらに、ピッチスケールsに対応するピッチ周期ポイント数Np (s)、パワ正規化係数C(s)をテーブルに記憶しておく。
【0238】
波形生成部9では、合成パラメータ補間部7より出力された合成パラメータp(n)(0<n<N)とピッチスケール補間部8より出力されたピッチスケールsを入力として、ピッチ周期ポイント数Np (s)、パワ正規化係数C(s)、波形生成行列WGM(s)=(ckn(s))をテーブルから読み出し、
【0239】
【外85】
によりピッチ波形を生成する(図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フレームの合成パラメータをpi [n](0<n<N)、第i+1フレームの合成パラメータをpi+1 [n](0<n<N)、第iフレームの時間長をNi ポイントとする。このとき、1ポイント当たりの合成パラメータの差分Δp [n](0<n<N)は、
【0245】
【外86】
となる。次に、ピッチ波形を生成するごとに合成パラメータp[n](0<n<N)を更新する。
【0246】
p[n]=pi [n]+nw Δp [n] (12)
の処理をピッチ波形開始点で行う。
【0247】
ステップS11は、実施例1と同じである。
【0248】
ステップS12で、式(12)によって得られた合成パラメータp[n](0<n<N)と式(4)によって得られたピッチスケールsを用いて波形生成部9においてピッチ波形を生成する。ピッチスケールsに対応するピッチ周期ポイント数Np (s)とパワ正規化係数C(s)と波形生成行列WGM(s)=(ckn(s))(0<k<Np (s),0<n<N)をテーブルから読み出し、ピッチ波形を
【0249】
【外87】
によって生成する。
【0250】
図11は、生成されたピッチ波形の接続についての説明図である。波形生成部9から合成音声として出力される音声波形を
W(n)(0<n)
とする。ピッチ波形の接続は、第jフレームのフレーム時間長をNj として
W(nw +k)=w(k)(i=0,0<k<Np (s))
【0251】
【外88】
によって行う。
【0252】
ステップS13、S14、S15、S16、S17は実施例1と同じである。
【0253】
(実施例6)
本実施例では、周波数特性を決定する関数を用いてスペクトル包絡を変換する例について説明する。
【0254】
実施例6の音声合成装置の構成及び機能構成を示すブロック図は、実施例1と同じく図25及び図1である。
【0255】
波形生成部9で行われるピッチ波形の生成について説明する。
【0256】
ピッチ波形の生成に用いる合成パラメータを
p(m)(0<m<M)
とする。サンプリング周波数を
fs
とする。サンプリング周期は
【0257】
【外89】
である。合成音声のピッチ周波数を
f
とすると、ピッチ周期は
【0258】
【外90】
となり、ピッチ周期ポイント数は
【0259】
【外91】
となる。[x]でx以下の最大の整数を表し、ピッチ周期ポイント数を整数で量子化して
Np (f)=[fs/f]
とする。ピッチ周期を角度2πに対応させたときの1ポイントごとの角度をθとすると、
【0260】
【外92】
となる。ピッチ周波数の整数倍におけるスペクトル包絡の値は
【0261】
【外93】
となる。スペクトル包絡の操作に用いる周波数特性関数を
r(x)(0<x<fs /2)
とする。図21は、f1 以上の周波数の高調波の振幅を2倍にする例である。r(x)を変えることによって、スペクトル包絡を操作することができる。この関数を用いて、ピッチ周波数の整数倍におけるスペクトル包絡の値を
【0262】
【外94】
と変換する。ピッチ波形を
w(k)(0<k<Np (f))
ピッチ周波数fに対応するパワ正規化係数を
C(f)
とする。C(f)=1.0となるピッチ周波数をf0 として
【0263】
【外95】
によってC(f)が与えられる。
【0264】
基本周波数の整数倍の正弦波を重ね合わせて
【0265】
【外96】
のようにピッチ波形w(k)(0<k<Np (f))を生成する。
【0266】
または、ピッチ周期の半分位相をずらして重ね合わせて
【0267】
【外97】
のようにピッチ波形w(k)(0<k<Np (f))を生成する。
【0268】
ピッチスケールを声の高さを表現するための尺度とする。式(13)、(14)の演算を直接行う代わりに、以下のように計算を高速化することもできる。ピッチスケールsに対応するピッチ周波数をf、ピッチ周期ポイント数をNp (s)とし、
【0269】
【外98】
とする。さらに、周波数特性関数を
r(x)(0≦x≦fs /2)
とする。そして、式(13)の場合
【0270】
【外99】
式(14)の場合
【0271】
【外100】
を計算してテーブルに記憶しておく。波形生成行列を
WGM(s)=(ckm(s))(0≦k<Np(s),0≦m<M)
とする。さらに、ピッチスケールsに対応するピッチ周期ポイント数Np(s)、パワ正規化係数C(s)をテーブルに記憶しておく。
【0272】
波形生成部9では、合成パラメータ補間部7より出力された合成パラメータp(m)(0<m<M)とピッチスケール補間部8より出力されたピッチスケールsを入力として、ピッチ周期ポイント数Np (s)、パワ正規化係数C(s)、波形生成行列WGM(s)=(ckm(s))をテーブルから読み出し、
【0273】
【外101】
によりピッチ波形を生成する。(図6)
以上の動作を、図7のフローチャートを参照して説明する。
【0274】
ステップS1、S2、S3、S4、S5、S6、S7、S8、S9、S10、S11は実施例1と同じである。
【0275】
ステップS12で、式(3)によって得られた合成パラメータp[m](0<m<M)と式(4)によって得られたピッチスケールsを用いて波形生成部9においてピッチ波形を生成する。ピッチスケールsに対応するピッチ周期ポイント数Np (s)とパワ正規化係数C(s)と波形生成行列WGM(s)=(ckm(s))(0<k<Np (s),0<m<M)をテーブルから読み出し、ピッチ波形を
【0276】
【外102】
によって生成する。
【0277】
図11は、生成されたピッチ波形の接続についての説明図である。波形生成部9から合成音声として出力される音声波形を
W(n)(0<n)
とする。ピッチ波形の接続は、第jフレームのフレーム時間長をNj として
W(nw +k)=w(k)(i=0,0<k<Np (s))
【0278】
【外103】
によって行う。
【0279】
ステップS13、S14、S15、S16、S17は実施例1と同じである。
【0280】
(実施例7)
本実施例では、実施例1における正弦関数に変えて余弦関数を用いる例について説明する。
【0281】
実施例7の音声合成装置の構成及び機能構成を示すブロック図は、実施例1と同じく図25及び図1である。
【0282】
波形生成部9で行われるピッチ波形の生成について説明する。
【0283】
ピッチ波形の生成に用いる合成パラメータを
p(m)(0<m<M)
とする。
【0284】
サンプリング周波数を
fs
とする。サンプリング周期は、
【0285】
【外104】
である。合成音声のピッチ周波数を
f
とすると、ピッチ周期は
【0286】
【外105】
となり、ピッチ周期ポイント数は
【0287】
【外106】
となる。[x]でx以下の最大の整数を表し、ピッチ周期ポイント数を整数で量子化して
Np (f)=[fs/f]
とする。ピッチ周期を角度2πに対応させたときの1ポイントごとの角度をθとすると、
【0288】
【外107】
となる。ピッチ周波数の整数倍におけるスペクトル包絡の値は
【0289】
【外108】
となる。(図3)ピッチ波形を
w(k)(0<k<Np (f))
ピッチ周波数fに対応するパワ正規化係数を
C(f)
とする。C(f)=1.0となるピッチ周波数をf0 として
【0290】
【外109】
によってC(f)が与えられる。
【0291】
基本周波数の整数倍の余弦波を重ね合わせて
【0292】
【外110】
となる。さらに、次のピッチ波形のピッチ周波数をf′とすると、次のピッチ波形の0次の値は
【0293】
【外111】
となる。
【0294】
【外112】
として、
w(k)=γ(k)w(k)
のようにピッチ波形w(k)(0<k<Np (f))を生成する(図22)。
【0295】
または、ピッチ周期の半分位相をずらして重ね合わせて
【0296】
【外113】
のようにピッチ波形w(k)(0<k<Np (f))を生成する(図23)。
【0297】
ピッチスケールを声の高さを表現するための尺度とする。式(15)、(16)の演算を直接行う代わりに、以下のように計算を高速化することもできる。ピッチスケールsに対応するピッチ周期ポイント数をNp (s)とし
【0298】
【外114】
として、式(15)の場合
【0299】
【外115】
式(16)の場合
【0300】
【外116】
を計算してテーブルに記憶しておく。波形生成行列を
WGM(s)=(ckm(s))(0≦k<Np (s),0≦m<M)
とする。さらに、ピッチスケールsに対応するピッチ周期ポイント数Np (s)、パワ正規化係数C(s)をテーブルに記憶しておく。
【0301】
波形生成部9では、合成パラメータ補間部7より出力された合成パラメータp(m)(0<m<M)とピッチスケール補間部8より出力されたピッチスケールsを入力として、ピッチ周期ポイント数Np (s)、パワ正規化係数C(s)、波形生成行列WGM(s)=(ckm(s))をテーブルから読み出し、
【0302】
【外117】
によりピッチ波形を生成する。さらに、式(17)によって波形生成行列を計算した場合、次のピッチ波形のピッチスケールをs′として
【0303】
【外118】
を計算し、
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に対応するピッチ周期ポイント数Np (s)とパワ正規化係数C(s)と波形生成行列WGM(s)=(ckm(s))(0≦k<Np (s),0≦m<M)をテーブルから読み出し、ピッチ波形を
【0307】
【外119】
によって生成する。さらに、式(17)によって波形生成行列を計算した場合、ピッチスケール補間部8から1ポイント当たりのピッチスケールの差分Δs を読み出して、次のピッチ波形のピッチスケールを
s′=s+Np (s)Δs
のように計算する。このs′を用いて
【0308】
【外120】
を計算し、
w(k)=γ(k)w(k)
をピッチ波形とする。
【0309】
図11は、生成されたピッチ波形の接続についての説明図である。波形生成部9から合成音声として出力される音声波形を
W(n)(0<n)
とする。ピッチ波形の接続は、第jフレームのフレーム時間長をNj として
W(nw +k)=w(k)(i=0,0<k<Np (s))
【0310】
【外121】
によって行う。
【0311】
ステップS13、S14、S15、S16、S17は実施例1と同じである。
【0312】
(実施例8)
本実施例では、ピッチ波形の対称性を利用して、半周期のピッチ波形を1周期分に用いる例について説明する。
【0313】
実施例8の音声合成装置の構成及び機能構成を示すブロック図は、実施例1と同じく図25及び図1である。
【0314】
波形生成部9で行われるピッチ波形の生成について説明する。
【0315】
ピッチ波形の生成に用いる合成パラメータを
p(m)(0<m<M)
とする。
【0316】
サンプリング周波数を
fs
とする。サンプリング周期は
【0317】
【外122】
である。合成音声のピッチ周波数を
f
とすると、ピッチ周期は
【0318】
【外123】
となり、ピッチ周期ポイント数は
【0319】
【外124】
となる。[x]でx以下の最大の整数を表し、ピッチ周期ポイント数を整数で量子化して
Np (f)=[fs/f]
とする。ピッチ周期を角度2πに対応させたときの1ポイントごとの角度をθとすると、
【0320】
【外125】
となる。ピッチ周波数の整数倍におけるスペクトル包絡の値は
【0321】
【外126】
となる。半周期ピッチ波形を
【0322】
【外127】
ピッチ周波数fに対応するパワ正規化係数を
C(f)
とする。C(f)=1.0となるピッチ周波数をf0 として
【0323】
【外128】
によってC(f)が与えられる。
【0324】
基本周波数の整数倍の正弦波を重ね合わせて
【0325】
【外129】
のように半周期ピッチ波形w(k)(0<k<[Np (f)/2])が生成される。
【0326】
または、ピッチ周期の半分位相をずらして重ね合わせて
【0327】
【外130】
のように半周期ピッチ波形w(k)(0<k<[Np (f)/2])が生成される。
【0328】
ピッチスケールを声の高さを表現するための尺度とする。式(18)、(19)の演算を直接行う代わりに、以下のように計算を高速化することもできる。ピッチスケールsに対応するピッチ周期ポイント数をNp (s)とし、
【0329】
【外131】
として、式(18)の場合
【0330】
【外132】
式(19)の場合
【0331】
【外133】
を計算してテーブルに記憶しておく。波形生成行列を
【0332】
【外134】
とする。さらに、ピッチスケールsに対応するピッチ周期ポイント数Np (s)、パワ正規化係数C(s)をテーブルに記憶しておく。
【0333】
波形生成部9では、合成パラメータ補間部7より出力された合成パラメータp(m)(0<m<M)とピッチスケール補間部8より出力されたピッチスケールsを入力として、ピッチ周期ポイント数Np (s)、パワ正規化係数C(s)、波形生成行列WGM(s)=(ckm(s))をテーブルから読み出し、
【0334】
【外135】
により半周期ピッチ波形を生成する。
【0335】
以上の動作を、図7のフローチャートを参照して説明する。
【0336】
ステップS1、S2、S3、S4、S5、S6、S7、S8、S9、S10、S11は実施例1と同じである。
【0337】
ステップS12で、式(3)によって得られた合成パラメータp[m](0<m<M)と式(4)によって得られたピッチスケールsを用いて波形生成部9において半周期ピッチ波形を生成する。ピッチスケールsに対応するピッチ周期ポイント数Np (s)とパワ正規化係数C(s)と波形生成行列WGM(s)=(ckm(s))(0<k<[Np (s)/2],0<m<M)をテーブルから読み出し、半周期ピッチ波形を
【0338】
【外136】
によって生成する。
【0339】
生成された半周期ピッチ波形の接続について説明する。波形生成部9から合成音声として出力される音声波形を
W(n)(0<n)
とする。半周期ピッチ波形の接続は、第jフレームのフレーム時間長をNj として
【0340】
【外137】
によって行う。
【0341】
ステップS13、S14、S15、S16、S17は実施例1と同じである。
【0342】
(実施例9)
本実施例ではピッチ周期ポイント数に小数点部分があるピッチ波形における波形の対称性を利用して繰り返し用いる例について説明する。
【0343】
実施例9の音声合成装置の構成及び機能構成を示すブロック図は、実施例1と同じく図25及び図1である。
【0344】
波形生成部9で行われるピッチ波形の生成について、図24を参照して説明する。
【0345】
ピッチ波形の生成に用いる合成パラメータを
p(m)(0<m<M)
とする。サンプリング周波数を
fs
とする。サンプリング周期は
【0346】
【外138】
である。合成音声のピッチ周波数を
f
とすると、ピッチ周期は
【0347】
【外139】
となり、ピッチ周期ポイント数は
【0348】
【外140】
となる。
【0349】
[x]でx以下の整数を表す。
【0350】
ピッチ周期ポイント数の小数部を、位相のずれたピッチ波形を接続することで表す。周波数fに対応するピッチ波形の個数を、位相数
np (f)
とする。図24はnp (f)=3のときのピッチ波形の例を示したものである。さらに、拡張ピッチ周期ポイント数を
【0351】
【外141】
とし、ピッチ周期ポイント数を
【0352】
【外142】
と量子化する。ピッチ周期ポイント数を角度2πに対応させたときの1ポイントごとの角度をθ1 とすると、
【0353】
【外143】
となる。ピッチ周波数の整数倍におけるスペクトル包絡の値は
【0354】
【外144】
となる。拡張ピッチ周期ポイント数を2πに対応させたときの1ポイントごとの角度をθ2 とすると、
【0355】
【外145】
となる。a mod bはaをbで割った剰余を表すとして、拡張ピッチ波形ポイント数を
【0356】
【外146】
拡張ピッチ波形を
w(k)(0<k<Nex(f))
ピッチ周波数fに対応するパワ正規化係数を
C(f)
とする。C(f)=1.0となるピッチ周波数をf0 として
【0357】
【外147】
によってC(f)が与えられる。
【0358】
ピッチ周波数の整数倍の正弦波を重ね合わせて、
【0359】
【外148】
のように拡張ピッチ波形w(k)(0<k<Nex(f))を生成する。
【0360】
または、ピッチ周期の半分位相をずらして重ね合わせて
【0361】
【外149】
のように拡張ピッチ波形w(k)(0<k<Nex(f))を生成する。
【0362】
位相インデックスを
ip (0<ip <np (f))
とする。ピッチ周波数f、位相インデックスip に対応する位相角を
【0363】
【外150】
と定義する。
【0364】
r(f,ip )=ip N(f)mod np (f)
と定義する。位相インデックスip に対応するピッチ波形のピッチ波形ポイント数は
【0365】
【外151】
によって計算される。位相インデックスip に対応するピッチ波形は
【0366】
【外152】
となる。この後、位相インデックスを
ip =(ip +1)mod np (f)
と更新し、更新された位相インデックスを用いて、位相角を
φp =φ(f,ip )
と計算する。さらに、次のピッチ波形を生成するときにピッチ周波数がf′に変更されるときは、φp に最も近い位相角を得るために
【0367】
【外153】
を満たすi′を求めて
ip =i′
のようにip を決定する。
【0368】
ピッチスケールを声の高さを表現するための尺度とする。式(20)、(21)の演算を直接行う代わりに、以下のように計算を高速化することもできる。ピッチスケールs∈S(Sはピッチスケールの集合)に対応する位相数をnp (s)、位相インデックスをip (0<ip <np (s))、拡張ピッチ周期ポイント数をN(s)、ピッチ周期ポイント数をNp (s)、ピッチ波形ポイント数をP(s,ip )とし、
【0369】
【外154】
として、式(20)の場合
【0370】
【外155】
式(21)の場合
【0371】
【外156】
を計算してテーブルに記憶しておく。波形生成行列を
WGM(s,ip )=(ckm(s,ip ))
(0≦k<P(s,ip ),0≦m<M)
とする。ピッチスケールsと位相インデックスip に対応する位相角
【0372】
【外157】
をテーブルに記憶しておく、また、ピッチスケールsと位相角φp (∈{φ(s,ip )|s∈S,0<i<np (s)})に対して
【0373】
【外158】
を満たすi0 を与える対応関係を
i0 =I(s,φp )
として、テーブルに記憶しておく。さらに、ピッチスケールsと位相インデックスip に対応する位相数np (s)、ピッチ波形ポイント数P(s,ip )、パワ正規化係数C(s)をテーブルに記憶しておく。
【0374】
波形生成部9では、内部レジスタに格納されている位相インデックスをip 、位相角をφp とし、合成パラメータ補間部7より出力された合成パラメータp(m)(0<m<M)とピッチスケール補間部8より出力されたピッチスケールsを入力として、位相インデックスを
ip =I(s,φp )
により決定し、ピッチ波形ポイント数P(s,ip )、パワ正規化係数C(s)をテーブルから読み出す。そして、
【0375】
【外159】
のとき、波形生成行列WGM(s,ip )=(ckm(s,ip ))をテーブルから読み出し、
【0376】
【外160】
によりピッチ波形を生成する。また、
【0377】
【外161】
のとき、
k′=P(s,np (s)−1−ip )−1−k(0<k<P(s,ip ))として、波形生成行列WGM(s,ip )=(ck ′m (s,np (s)−1−ip ))をテーブルから読み出し、
【0378】
【外162】
によりピッチ波形を生成する。ピッチ波形を生成した後、位相インデックスを
ip =(ip +1)mod np (s)
のように更新し、更新された位相インデックスを用いて位相角を
φp =φ(s,ip )
のように更新する。
【0379】
以上の動作を、図13のフローチャートを参照して説明する。
【0380】
ステップS201、S202、S203、S204、S205、S206、S207、S208、S209、S210、S211、S212、S213は実施例2と同じである。
【0381】
ステップS214で、式(3)によって得られた合成パラメータp[m](0<m<M)と式(4)によって得られたピッチスケールsを用いて波形生成部9においてピッチ波形を生成する。ピッチスケールsに対応するピッチ波形ポイント数P(s,ip )とパワ正規化係数C(s)をテーブルから読み出す。そして、
【0382】
【外163】
のとき、波形生成行列WGM(s,ip )=(ckm(s,ip ))をテーブルから読み出し、
【0383】
【外164】
によりピッチ波形を生成する。また、
【0384】
【外165】
のとき、
k′=P(s,np (s)−1−ip )−1−k(0≦k<P(s,ip ))として、波形生成行列WGM(s,ip )=(Ck ′m(s,np (s)−1−ip ))をテーブルから読み出し、
【0385】
【外166】
によりピッチ波形を生成する。
【0386】
波形生成部9から合成音声として出力される音声波形を
W(n)(0<n)
とする。ピッチ波形の接続は実施例1と同様であり、第jフレームのフレーム時間長をNj として
W(nw +k)=wp (k)(i=0,0<k<P(s,ip ))
【0387】
【外167】
によって行なう。
【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周期とするピッチ波形を生成することを特徴とする請求項1に記載の音声合成装置。
- 前記ピッチ波形生成手段は、合成音声のピッチ周波数の整数倍におけるスペクトル包絡のサンプル値を合成パラメータと余弦関数との積和により求め、このスペクトル包絡のサンプル値を正弦級数の係数とし、正弦関数との積和を求めることを特徴とする請求項1に記載の音声合成装置。
- 前記正弦級数において、位相を半周期ずつずらした正弦関数を使うことを特徴とする請求項3に記載の音声合成装置。
- 入力された文字系列に従い音声波形のパラメータとしてのインパルス応答波形から求まる合成パラメータを生成するパラメータ生成手段と、
余弦関数と正弦関数との積和を行列としてピッチ毎に導出する行列導出手段と、
入力された合成音声の声の高さ情報に応じた行列と前記合成パラメータとからピッチ波形を生成するピッチ波形生成手段と、
前記生成されたピッチ波形を接続して得た音声波形を出力する音声波形出力手段と
を備えることを特徴とする音声合成装置。 - 前記行列導出手段において、位相を半周期ずつずらした正弦関数を使うことを特徴とする請求項5に記載の音声合成装置。
- 前記ピッチ波形生成手段は、合成パラメータを、ピッチ周期毎に補間する手段を更に備えることを特徴とする請求項1または請求項5に記載の音声合成装置。
- 前記ピッチ波形生成手段において、合成音声のピッチをピッチ周期毎に補間する手段をさらに備えることを特徴とする請求項1または請求項5に記載の音声合成装置。
- 前記ピッチ波形生成手段は、位相のずれたピッチ波形を生成することを特徴とする請求項1または請求項5に記載の音声合成装置。
- パラメータから無声波形を生成する無声波形生成手段を更に備え、前記音声波形出力手段は前記無声波形を接続することを特徴とする請求項1または請求項5に記載の音声合成装置。
- 前記無声波形生成手段は、音声の対数パワスペクトル包絡から求めた合成パラメータから、無声波形を生成することを特徴とする請求項10に記載の音声合成装置。
- 前記無声波形生成手段は、可聴周波数帯域より低い周波数の整数倍におけるスペクトル包絡のサンプル値を合成パラメータと余弦関数との積和により求め、そのスペクトル包絡のサンプル値と位相のずれをランダムに与えた正弦関数との積和を求めることを特徴とする請求項11に記載の音声合成装置。
- 前記無声波形生成手段は、前記余弦関数と前記正弦関数との積和を、行列として導出する行列導出手段を更に備え、前記導出された行列と前記合成パラメータとの積を求めることを特徴とする請求項11に記載の音声合成装置。
- 前記ピッチ波形生成手段は、あるサンプリング周波数で求めたインパルス応答波形を用いて、任意のサンプリング周波数のピッチ波形を生成することを特徴とする請求項1または請求項5に記載の音声合成装置。
- 前記ピッチ波形生成手段は、周波数特性を決定する関数を持ち、ピッチ周波数の整数倍における関数値を掛けることによりスペクトル包絡のサンプル値を変換し、変換されたサンプル値を時間領域の波形に変換することを特徴とする請求項1に記載の音声合成装置。
- 前記ピッチ波形生成手段は、波形の対称性を利用してピッチ波形を生成することを特徴とする請求項3または請求項9に記載の音声合成装置。
- 入力された文字系列に従い音声波形のパラメータとしてのインパルス応答波形から求まる合成パラメータを生成するパラメータ生成工程と、
入力された合成音声の声の高さ情報と前記生成された合成パラメータから合成音声のピッチ周期でサンプリングされたスペクトル包絡を求め、そのサンプル値を時間領域の波形に変換することによってピッチ波形を生成するピッチ波形生成工程と、
前記生成されたピッチ波形を接続して得た音声波形を出力する音声波形出力工程と
を備えることを特徴とする音声合成方法。 - 前記ピッチ波形生成工程は、合成音声のピッチ周期を1周期とするピッチ波形を生成することを特徴とする請求項17に記載の音声合成方法。
- 前記ピッチ波形生成工程は、合成音声のピッチ周波数の整数倍におけるスペクトル包絡のサンプル値を合成パラメータと余弦関数との積和により求め、このスペクトル包絡のサンプル値を正弦級数の係数とし、正弦関数との積和を求めることを特徴とする請求項17に記載の音声合成装置。
- 前記正弦級数において、位相を半周期ずつずらした正弦関数を使うことを特徴とする請求項19に記載の音声合成方法。
- 入力された文字系列に従い音声波形のパラメータとしてのインパルス応答波形から求まる合成パラメータを生成するパラメータ生成工程と、
余弦関数と正弦関数との積和を行列としてピッチ毎に導出する行列導出工程と、
入力された合成音声の声の高さ情報に応じた行列と前記合成パラメータとからピッチ波形を生成するピッチ波形生成工程と、
前記生成されたピッチ波形を接続して得た音声波形を出力する音声波形出力工程と
を備えることを特徴とする音声合成方法。 - 前記行列導出工程において、位相を半周期ずつずらした正弦関数を使うことを特徴とする請求項21に記載の音声合成方法。
- 前記ピッチ波形生成工程は、合成パラメータをピッチ周期毎に補間することを特徴とする請求項17または請求項21に記載の音声合成方法。
- 前記ピッチ波形生成工程において、合成音声のピッチをピッチ周期毎に補間することを特徴とする請求項17または請求項21に記載の音声合成方法。
- 前記ピッチ波形生成工程は、位相のずれたピッチ波形を生成することを特徴とする請求項17または請求項21に記載の音声合成方法。
- パラメータから無声波形を生成する無声波形生成工程を更に備え、前記音声波形出力工程は前記無声波形を接続することを特徴とする請求項17または請求項21に記載の音声合成方法。
- 前記無声波形生成工程は、音声の対数パワスペクトル包絡から求めた合成パラメータから無声波形を生成することを特徴とする請求項26に記載の音声合成方法。
- 前記無声波形生成工程は、可聴周波数帯域より低い周波数の整数倍におけるスペクトル包絡のサンプル値を合成パラメータと余弦関数との積和により求め、そのスペクトル包絡のサンプル値と位相のずれをランダムに与えた正弦関数との積和を求めることを特徴とする請求項27に記載の音声合成方法。
- 前記無声波形生成工程は、前記余弦関数と前記正弦関数との積和を行列として導出する行列導出工程を更に備え、前記導出された行列と前記合成パラメータとの積を求めることを特徴とする請求項27に記載の音声合成方法。
- 前記ピッチ波形生成工程は、あるサンプリング周波数で求めたインパルス応答波形を用いて、任意のサンプリング周波数のピッチ波形を生成することを特徴とする請求項17または請求項21に記載の音声合成方法。
- 前記ピッチ波形生成工程は、周波数特性を決定する関数を持ち、ピッチ周波数の整数倍における関数値を掛けることによりスペクトル包絡のサンプル値を変換し、変換されたサンプル値を時間領域の波形に変換することを特徴とする請求項17に記載の音声合成方法。
- 前記ピッチ波形生成工程は、波形の対称性を利用してピッチ波形を生成することを特徴とする請求項19または請求項25に記載の音声合成方法。
- 入力された文字列に対応する音声波形のパラメータとしてのインパルス応答波形から求まる合成パラメータを生成するパラメータ生成手段と、
合成する音声の高さ情報を入力する高さ情報入力手段と、
余弦関数と正弦関数との積和をピッチ毎に行列として予め求められている波形生成行列から前記高さ情報入力手段により入力された音声の高さ情報に対応する波形生成行列を読み出す波形生成行列読み出し手段と、
前記パラメータ生成手段により生成された合成パラメータと前記波形生成行列読み出し手段により読み出された波形生成行列とを演算することにより、ピッチ波形を生成するピッチ波形生成手段と、
前記生成されたピッチ波形を接続して音声波形を出力するよう制御する音声波形出力制御手段と
を備えることを特徴とする音声合成制御装置。 - 入力された文字列に対応する音声波形のパラメータとしてのインパルス応答波形から求まる合成パラメータを生成し、
合成する音声の高さ情報を入力し、
余弦関数と正弦関数との積和をピッチ毎に行列として予め求められている波形生成行列から前記入力された音声の高さ情報に対応する波形生成行列を読み出し、
前記生成された合成パラメータと前記読み出された波形生成行列とを演算することによりピッチ波形を生成し、
前記生成されたピッチ波形を接続して音声波形を出力するよう制御することを特徴とする音声合成制御方法。
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)
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)
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 |
-
1994
- 1994-05-30 JP JP11673394A patent/JP3559588B2/ja not_active Expired - Fee Related
-
1995
- 1995-05-26 DE DE69519818T patent/DE69519818T2/de not_active Expired - Lifetime
- 1995-05-26 EP EP95303606A patent/EP0685834B1/en not_active Expired - Lifetime
- 1995-05-30 US US08/452,545 patent/US5745651A/en not_active Expired - Lifetime
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 |