JP4513556B2 - 音声分析合成装置、及びプログラム - Google Patents
音声分析合成装置、及びプログラム Download PDFInfo
- Publication number
- JP4513556B2 JP4513556B2 JP2004374090A JP2004374090A JP4513556B2 JP 4513556 B2 JP4513556 B2 JP 4513556B2 JP 2004374090 A JP2004374090 A JP 2004374090A JP 2004374090 A JP2004374090 A JP 2004374090A JP 4513556 B2 JP4513556 B2 JP 4513556B2
- Authority
- JP
- Japan
- Prior art keywords
- frequency
- phase
- speech
- waveform
- channel
- 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.)
- Active
Links
Images
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
<分析過程>
元音声波形は、所定の時間間隔で音声をサンプリングして得られるものである。その元音声波形から、予め定めた時間間隔(サンプリング数)分のサンプリングデータがフレームとして切り出され、短時間フーリエ変換(STFT)が行われる。そのSTFTにより、周波数が異なる周波数チャンネル毎に周波数成分が抽出される。その周波数成分は、実数部と虚数部からなり、各周波数チャンネルの周波数振幅、及び位相はその周波数成分から算出する。STFTは、信号データを短時間分、切り出して離散フーリエ変換(DFT)を行うものである。このことから、DFTはSTFTを含む意味で用いることにする。そのDFTでは、高速フーリエ変換(FFT)が用いられるのが普通である。
<変更過程>
元音声波形のDFT(FFT)はフレーム単位で行われることから、合成音声波形の合成もフレーム単位で行われる。その合成音声波形における周波数チャンネルkの位相θ'i,kは下記式で計算される。発音持続時間を変化させるタイムスケーリングのみを行う場合、各周波数チャンネルの周波数振幅は変化させる必要はない。
ここで、ΔΘi,kは元音声波形で周波数チャンネルkにおける直前のフレームと今回のフレームとの間の位相差を表し、ρはピッチスケーリングを行う程度を示すスケーリングファクタを表している。下添字のiは、フレームを表している。今回のフレーム(現フレーム)はi、直前のフレームはi−1で表されている。このようなことから、(1)式は、合成音声波形における現フレームの周波数チャンネルkの位相θ'i,kは、合成音声波形における直前フレーム時点での位相(スケーリングファクタρにより変換された後の位相差積算値)に、位相差ΔΘi,kにファクタρの乗算値を加算することで算出されることを示している。
(1)式により位相θ'k,tを計算するためには折り畳まれている位相θk,tを展開する必要がある。その展開は、(3)式におけるnを推定する作業であり、DFTのチャンネルkの中心周波数を基にして推定することができる。
(4)式中のΔθi,kは、チャンネルkにおける折り畳まれた位相θi,kのフレーム間の位相差を示している。そのチャンネルkの中心周波数(の角速度)Ωi,kは、サンプリング周波数をfs、DFT点数(フレームのサンプリング数)をNとすると
Ωi,k=(2π・fs/N)・k ・・・ (5)
により求めることができる。この周波数Ωi,kのとき、直前のフレームとの時間差をΔtとすると、位相差ΔZi,kは
ΔZi,k=Ωi,k・Δt ・・・ (6)
により算出できる。時間差Δt自体は
Δt=N/(fs・OVL) ・・・ (7)
で求められる。(7)式中のOVLは、フレームサイズをホップサイズ(隣り合うフレームのずれに相当するサンプリング数)で割った値であるオーバーラップファクタを示している。
ΔZi,k=Δζi,k+2nπ ・・・ (8)
(4)式で算出される位相差Δθi,kと(8)式中の位相差Δζi,kの差をδ(=Δθi,k−Δζi,k)とすると、
Δθi,k−Ωi,k・Δt=(Δζi,k+δ)−(Δζi,k+2nπ)
=δ−2nπ ・・・ (9)
が導出できる。従って(9)式の右辺の2nπを削除してその範囲を−πからπの間に制限すればδを算出できる。そのδは、元音声波形において実際に検出される位相差(以降「実位相差」と呼ぶ)である。
ΔΘi,k=δ+Ωi,k・Δt=δ+(Δζi,k+2nπ)=Δθi,k+2nπ
・・・ (10)
(1)式と(10)式によりタイムスケーリングされた位相θ'i,kが算出される。ただしチャンネルの中心周波数を基に位相展開する方法では、実位相差δは|δ|<πとする必要がある。その最大値δmaxの絶対値は隣のチャンネルに信号が遷移しない限界の値であるから、
|δmax|=(2π・fs/N)・(k+0.5)・Δt−(2π・fs/N)・k・Δt
=(2π・fs/2N)・(N/(fs・OVL))=π/OVL
・・・ (11)
となる。
W0=(1/2)N,W1=−(1/4)N,W-1=−(1/4)N ・・・ (13)
となり、これが各チャンネルに畳み込まれる。(13)式から明らかなように、たとえ角周波数ω=(2π/N)・kの場合でも周波数振幅値が1:2:1の割合で3チャンネルが励起される。角周波数ωが隣り合う2つのチャンネルの中間にある場合には、周波数振幅値が1:5:5:1の割合で4チャンネルが励起される。
<合成過程>
合成過程では、変更過程で変更(操作)された後の周波数成分を逆FFT(IFFT(逆高速フーリエ変換))により時間座標上の信号に戻し、1フレーム分の合成音声波形を生成する。その1フレームの音声波形は、オーバーラップファクタOVLをファクタρの値に応じて変更する値で前のフレームとオーバーラップさせて加える。それにより、ピッチスケーリング、及びタイムスケーリングを行った後の合成音声波形を生成する。
そのVPCが保存されない原因は、(1)式右辺第1項が正確な値を保持できないことにある。位相展開ファクタをnとすると、(1)式は(4)、(10)式を用いて以下のように変形できる。
今スケーリングファクタρの値が整数である場合を考えると、(14)式の右辺にある位相展開項2nπは削除可能であることから、次式のように表現できる。
θ'i,k=ρθi,k ・・・ (16)
となり、(1)式の右辺第1項が消去される。このため、HPCと共にVPCも保存され、位相ズレ感の無いスケーリングを行うことができる。しかし、スケーリングファクタρが整数以外の値であった場合には、その第1項は残ることになる。
2) 周波数成分のチャンネル間の遷移
3) 周波数成分の消滅/発生
1)の点に関しては、上述したように、初期位相θ'0,kをρθ0,kとなるように設定することで積算値を正確な値に維持させることができる。
θ'i,k+1=θ'i-1,k+ρ(θi,k+1−θi-1,k+2nπ) ・・・ (17)
と変形させることができる。位相展開ファクタnも位相Ωi,k+1を用いて算出する。しかし、周波数成分の遷移のトラッキングに失敗したときは、その時点で積分値は不正確な値となってしまい、VPCは保存されなくなる。また、チャンネル間における周波数成分の遷移が発生した場合に、その遷移元のチャンネルに対応する直前のフレームのチャンネルが存在しないという事態が発生することがある。その場合には、チャンネルの不整合により正確な積分値は得られなくなる。
<第1の実施の形態>
図1は、第1の実施の形態による音声分析合成装置を搭載した電子楽器の構成図である。
音響効果を付加した音声波形、つまりピッチをシフトした音声波形は、元の音声波形を周波数分析して周波数チャンネル毎に周波数成分(スペクトル成分)を抽出し、抽出した周波数成分をシフトし、そのシフト後の周波数成分を用いて合成(生成)するようになっている。そのために、以下のような機能構成を備えている。
θ'i,k=(ΔΘi,k/ΔΘi,B)(θ'i-1,B−θi-1,B)
+(ρ−1)ΔΘi,k+θi,k ・・・ (18)
(18)式において、下添字として表記したBは最も波長の長い、すなわち最も低い周波数成分が存在するチャンネルを示している。(18)式右辺第1項は、チャンネルBを基準にして、1フレーム前のフレームi−1までに生じた元音声と合成音声間の位相較差(変化)量を示している。その第2項は、その直前フレームi−1から現在のフレームiに移行する間(以降、便宜的に「直前フレーム間」と呼ぶ)に発生する元音声と合成音声間の位相較差量を示している。このことから、(18)式は、それら位相較差量を現フレームiでの位相θに加算することで合成音声における各チャンネルの位相θ' を求めることを示している。
位相θ[rad]を角速度ω[rad/sec]で除算すると、その単位は時間[sec]となる。さらに音速ν[m/sec]を乗算すれば単位は距離[m]となる。この距離を位相(位相差を含む)の表現に用いて説明することとする。
(ρ−1)ΔΘi,k=ρΔΘi,k−ΔΘi,k=ΔΘ'i,k−ΔΘi,k ・・・ (20)
と表すことができる。その第2項が示すのは直前フレーム間で発生する位相の変化量である。この項により、直前フレームから現フレームまでのHPCが保存される。その項と第1項の加算値は元音声と合成音声の間における現フレームまでの位相の変化量である。従って、その加算値を現フレームの位相θに加算すれば合成音声の位相θ'が算出される。
mag=(real2+img2)1/2 ・・・ (21)
により計算される。
phase=arctan(img/real) ・・・ (22)
により計算される。この位相phaseは折り畳まれたものである。それを計算した後はステップ804に移行する。
θ'i,k=ΔΘi,k((θ'i-1,B−θi-1,B)/ΔΘi,B+(ρ−1))
+θi,k ・・・ (23)
と変形することができる。
<第2の実施の形態>
ピッチスケーリングでピッチシフトを行うと、そのピッチシフトに伴って合成音声のフォルマントの位置(周波数)は元音声とは異なる位置に移動する。その移動は、合成音声を不自然なものとするのが普通である。このことから、第2の実施の形態は、元音声のフォルマントを保存する形でピッチスケーリング(ピッチシフト)を行うことにより、より自然と感じられる合成音声を生成できるようにしたものである。
第2の実施の形態では、LPF23によって高周波成分が除去されたフレームはFFT部25に入力される。それにより、タイムスケーリング部26は、ピッチをシフトする前のフレームからFFTの実行により得られる各周波数チャンネルの周波数成分を対象にタイムスケーリングを行う。
その図10では、第1の実施の形態(図7)と基本的に処理内容が同じ処理ステップには同一の符号を付してある。ここでは、第1の実施の形態から異なる部分にのみ着目する形で説明する。
図11は、上記ステップ1002として実行されるフォルマント移動処理のフローチャートである。次に図11を参照して、その移動処理について詳細に説明する。
一般的に音声信号からフォルマントによる共振周波数の影響を取り除いて得られる残差信号、すなわち声帯音源信号の周波数特性は周波数が高くなるほどなだらかに減衰する傾きであることが知られている。その傾きがtilt成分と呼ばれる。それにより、音声信号の周波数特性はこのtilt成分とフォルマントによる共振周波数の特性が重畳されたものとなっている。このようなことから、フォルマント成分のみを抽出する場合は、tilt成分を除去する必要がある。
(25)式による次数Mの算出(設定)は移動平均フィルタリング処理の前に行っている。それにより、元音声のピッチに応じた適切な次数Mで常に移動平均フィルタリング処理を行うようにしている。そのような次数Mで移動平均フィルタリング処理を行うため、フォルマントは常に適切に抽出することができる。次数Mの設定は、周波数振幅magのピークの数に応じて、つまりその数が多いほど次数Mを低く、その数が少ないほど次数Mを高く設定する形で行っても良い。
上記ステップ1103で抽出されたフォルマントの各チャンネルの周波数振幅(フォルマント成分)は、例えばそのチャンネルに対応する周波数と共に配列変数y、xにそれぞれ代入されて保存される。補間処理で用いられるフォルマント成分数(例えば4)は変数Nに代入される。フォルマントを移動させるべき周波数(チャンネル)は元の周波数とピッチスケーリングファクタρの値からフォルマント成分毎に算出される。算出された周波数でのフォルマント成分は、算出された周波数の周辺のN個の、配列変数y、xの各要素に代入された値を参照して算出する。図12に示すNeville補間処理は、一つのフォルマント成分に着目する形で、移動させるべき周波数でのフォルマント成分を求める部分の処理を抜粋したものである。移動させるべき周波数を示す値は変数tに代入されている。
(t−x[s1])/(x[s1]−x[s2]) ・・・ (26)
一方、ステップ1203の判定がNOとなって移行するステップ1206では、変数s1の値をインクリメントする。その次に移行するステップ1207では、変数s1の値が変数Nの値未満か否か判定する。変数s1の値が変数Nの値未満であった場合、判定はYESとなって上記ステップ1202に戻る。そうでない場合には、判定はNOとなり、ここで一連の処理を終了する。
3 スイッチ部
4 ROM
5 RAM
7 マイク
8 A/D変換器
9 楽音生成部
10 D/A変換器
11 アンプ
12 スピーカ
Claims (6)
- 第1の音声波形を分析し、該分析結果を用いて第2の音声波形の合成を行う音声分析合成装置において、
前記第1の音声波形をフレーム単位で周波数分析して周波数チャンネル毎に周波数成分を抽出する周波数分析手段と、
前記第1、及び第2の音声波形間の所定数前のフレームにおける位相較差量を、前記周波数チャンネルのなかの所定の周波数チャンネルを基準にして算出し、該位相較差量を用いる形で、現在のフレームにおける該第2の音声波形の位相を該周波数チャンネル毎に前記周波数分析手段が抽出した周波数成分を参照して算出する位相算出手段と、
前記周波数分析手段が抽出した周波数成分を前記位相算出手段が算出した位相に応じて周波数チャンネル毎に変換し、該変換後の周波数成分を用いて、前記第2の音声波形をフレーム単位で合成する音声合成手段と、
を具備することを特徴とする音声分析合成装置。 - 前記位相算出手段は、前記位相較差量の他に、前記所定数前のフレームから前記現在のフレームまでの間に生じる前記第1、及び第2の音声波形間の位相較差量、及び該現在のフレームにおける該第1の音声波形の位相を用いる形で、該現在のフレームにおける該第2の音声波形の位相を前記周波数チャンネル毎に算出する、
ことを特徴とする請求項1記載の音声分析合成装置。 - 前記所定数前のフレームは直前のフレームであり、前記所定の周波数チャンネルは、前記周波数成分を有するもののなかで周波数が最低の周波数チャンネルである、
ことを特徴とする請求項1、または2記載の音声分析合成装置。 - 前記音声合成手段は、前記第1の音声波形のピッチをシフトした前記第2の音声波形を合成する、
ことを特徴とする請求項1〜4の何れか1項に記載の音声分析合成装置。 - 前記音声合成手段が合成した前記第2の音声波形を前記第1の音声波形と併せて出力することができる、
ことを特徴とする請求項1〜4の何れか1項に記載の音声分析合成装置。 - 第1の音声波形を分析し、該分析結果を用いて第2の音声波形の合成を行う音声分析合成装置として用いられるコンピュータに実行させるプログラムであって、
前記第1の音声波形をフレーム単位で周波数分析して周波数チャンネル毎に周波数成分を抽出する機能と、
前記第1、及び第2の音声波形間の所定数前のフレームにおける位相較差量を、前記周波数チャンネルのなかの所定の周波数チャンネルを基準にして算出し、該位相較差量を用いる形で、現在のフレームにおける該第2の音声波形の位相を該周波数チャンネル毎に前記抽出する機能により抽出した周波数成分を参照して算出する機能と、
前記抽出する機能により抽出した周波数成分を前記算出する機能により算出した位相に応じて周波数チャンネル毎に変換し、該変換後の周波数成分を用いて、前記第2の音声波形をフレーム単位で合成する機能と、
を実現させるためのプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004374090A JP4513556B2 (ja) | 2003-12-25 | 2004-12-24 | 音声分析合成装置、及びプログラム |
US11/311,678 US7672835B2 (en) | 2004-12-24 | 2005-12-19 | Voice analysis/synthesis apparatus and program |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003431630 | 2003-12-25 | ||
JP2004374090A JP4513556B2 (ja) | 2003-12-25 | 2004-12-24 | 音声分析合成装置、及びプログラム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009167427A Division JP5163606B2 (ja) | 2003-12-25 | 2009-07-16 | 音声分析合成装置、及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005208627A JP2005208627A (ja) | 2005-08-04 |
JP4513556B2 true JP4513556B2 (ja) | 2010-07-28 |
Family
ID=34914198
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004374090A Active JP4513556B2 (ja) | 2003-12-25 | 2004-12-24 | 音声分析合成装置、及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4513556B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070186146A1 (en) * | 2006-02-07 | 2007-08-09 | Nokia Corporation | Time-scaling an audio signal |
JP4396646B2 (ja) | 2006-02-07 | 2010-01-13 | ヤマハ株式会社 | 応答波形合成方法、応答波形合成装置、音響設計支援装置および音響設計支援プログラム |
JP4816507B2 (ja) * | 2007-02-28 | 2011-11-16 | カシオ計算機株式会社 | 音声分析合成装置、及びプログラム |
EP2631906A1 (en) | 2012-02-27 | 2013-08-28 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Phase coherence control for harmonic signals in perceptual audio codecs |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05143088A (ja) * | 1991-11-19 | 1993-06-11 | Sharp Corp | 音声処理装置 |
JPH05265486A (ja) * | 1992-03-18 | 1993-10-15 | Sony Corp | 音声分析合成方法 |
JPH07248794A (ja) * | 1994-03-10 | 1995-09-26 | Sony Corp | 音声信号処理方法 |
JPH08202397A (ja) * | 1995-01-30 | 1996-08-09 | Olympus Optical Co Ltd | 音声復号化装置 |
JPH0962257A (ja) * | 1995-08-25 | 1997-03-07 | Yamaha Corp | 楽音信号処理装置 |
JPH09222884A (ja) * | 1996-02-15 | 1997-08-26 | Roland Corp | 効果装置 |
JP2001117600A (ja) * | 1999-10-21 | 2001-04-27 | Yamaha Corp | 音声信号処理装置および音声信号処理方法 |
-
2004
- 2004-12-24 JP JP2004374090A patent/JP4513556B2/ja active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05143088A (ja) * | 1991-11-19 | 1993-06-11 | Sharp Corp | 音声処理装置 |
JPH05265486A (ja) * | 1992-03-18 | 1993-10-15 | Sony Corp | 音声分析合成方法 |
JPH07248794A (ja) * | 1994-03-10 | 1995-09-26 | Sony Corp | 音声信号処理方法 |
JPH08202397A (ja) * | 1995-01-30 | 1996-08-09 | Olympus Optical Co Ltd | 音声復号化装置 |
JPH0962257A (ja) * | 1995-08-25 | 1997-03-07 | Yamaha Corp | 楽音信号処理装置 |
JPH09222884A (ja) * | 1996-02-15 | 1997-08-26 | Roland Corp | 効果装置 |
JP2001117600A (ja) * | 1999-10-21 | 2001-04-27 | Yamaha Corp | 音声信号処理装置および音声信号処理方法 |
Also Published As
Publication number | Publication date |
---|---|
JP2005208627A (ja) | 2005-08-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7672835B2 (en) | Voice analysis/synthesis apparatus and program | |
US8706496B2 (en) | Audio signal transforming by utilizing a computational cost function | |
RU2487426C2 (ru) | Устройство и способ преобразования звукового сигнала в параметрическое представление, устройство и способ модификации параметрического представления, устройство и способ синтеза параметрического представления звукового сигнала | |
JP5655098B2 (ja) | エンベロープ形状を使用してオーディオ信号を変更する装置及び方法 | |
JP5425250B2 (ja) | 瞬間的事象を有する音声信号の操作装置および操作方法 | |
JP6791258B2 (ja) | 音声合成方法、音声合成装置およびプログラム | |
JP2006243006A (ja) | 音響効果付与装置、基音抽出装置、及びプログラム | |
Abe et al. | Sinusoidal model based on instantaneous frequency attractors | |
JP2008281776A (ja) | 旋律抽出装置及び旋律抽出方法 | |
JP2018077283A (ja) | 音声合成方法 | |
JP5163606B2 (ja) | 音声分析合成装置、及びプログラム | |
JP4513556B2 (ja) | 音声分析合成装置、及びプログラム | |
US20090326951A1 (en) | Speech synthesizing apparatus and method thereof | |
Verfaille et al. | Adaptive digital audio effects | |
JPH11259066A (ja) | 音楽音響信号分離方法、その装置およびそのプログラム記録媒体 | |
JP3706249B2 (ja) | 音声変換装置、音声変換方法、および音声変換プログラムを記録した記録媒体 | |
JP4963345B2 (ja) | 音声合成方法及び音声合成プログラム | |
JP6834370B2 (ja) | 音声合成方法 | |
JP2005309464A (ja) | 雑音除去方法、雑音除去装置およびプログラム | |
JP2000010597A (ja) | 音声変換装置及び音声変換方法 | |
JP6683103B2 (ja) | 音声合成方法 | |
JP4816507B2 (ja) | 音声分析合成装置、及びプログラム | |
JP2000003200A (ja) | 音声信号処理装置及び音声信号処理方法 | |
JP2003022100A (ja) | 雑音除去方法、雑音除去装置およびプログラム | |
JP6822075B2 (ja) | 音声合成方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070626 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090619 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090630 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090716 |
|
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: 20100420 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100503 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4513556 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130521 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130521 Year of fee payment: 3 |