SlideShare a Scribd company logo
音声分析合成システムWORLDにより
実時間音声合成を実現するための拡張と実装例
目次
・論文情報
・はじめに
・WORLD:基盤となる音声分析合成システム
・実時間合成の実装例
・合成速度に関する評価
・おわりに
論文情報
論文情報
 「音声分析合成システムWORLDにより
実時間音声合成を実現するための拡張と実装例」
 著者 森勢将雅
 発行年 2016年
 情報処理学会研究報告
はじめに
はじめに
 高品質な音声分析合成技術は多分野で利用されている
◎実時間で制御して出力するアプリケーションでは分析と合成を
実時間で完了する必要がある(歌声合成,性質変換など)
一方
統計的音声合成や統計解析
◎たくさんの音声の処理の必要は必要だが,リアルタイム性は必ずし
も必要ではない
→音声パラメータを逐次生成し,波形を実時間合成することでアプリ
ケーションの利便性を大幅に向上できる
はじめに
著者は
音声分析合成システム「WORLD」を提案
仕様:音声パラメータを引数とし,合成波形を出力
…音声パラメータから波形を逐次合成することは可能ではない
インタラクティブ性に欠く
問題への対処法
問題への対処法
Nサンプルごとに波形を出力する機能を有する合成器の実装
実装言語 C++
合成品質は可能な限り低下しない実装方法とし,時間測定・評価を行う
WORLD:基盤となる音声分析合成システム
各パラメータ合成法
 F0 DIO:高SNRの音声を対象とした高速・高精度なF0推定法
・声帯振動の時刻検出を用いた方法と基本波抽出法を改良した方法
・高SNRの音声に限定されるが高速かつ高精度
 スペクトル CheapTrick:高精度なスペクトル包絡推定法
・ピッチ周期分析とCepstrum法の考えを改良した方法
・計算コストが低く高品質
 非周期性指標 D4C:音声の揺らぎに頑健な非周期性指標推定法
・群遅延に基づくパラメータから推定する方法
音声パラメータからの波形合成
音声合成処理では 声帯振動が生じる時刻をF0軌道から算出
周期性成分 : 最小位相応答 / 非周期性成分 : ホワイトノイズ
それぞれ励起信号として最小位相応答を畳み込む
実時間合成では
F0軌道から合成イベント時刻を逐次求める処理をどうするか?
実時間合成への要求事項
 音声パラメータからNサンプル単位で合成する機能の追加
 +既存の合成関数で出力される音声波形と等価な品質
実時間合成の実装例
実時間合成の構造体の導入
 逐次音声追加可能
 Nサンプル分合成すると
CurrentPositionがN個ずれる
 使用後は自動でバッファから外れる
出典: 「音声分析合成システムWORLDにより実時間
音声合成を実現するための拡張と実装例(森勢,2016)
音声パラメータへ
のポインタを有す
るリングバッファ
実時間合成用の構造体の導入
音声パラメータを求めた後の処理
(1)InitializeSynthesizer関数で構造体を初期化
(2)AddParameters関数で音声パラメータを構造体に追加
(3)Synthesize2関数でNサンプル分の波形を合成
(4)DestroySynthesizer関数でメモリを解放
以降のスライドで説明
InitializeSynthesizer():構造の初期化
 WoeldSynthesize構造体を初期化
 構造体の要素
サンプリング周波数/一回の合成によって得られるサンプル数
ポインタ数/WORLDで分析した際の分析シフト幅とFFT長
*初期化後に書き換えることはできない
AddParameter():音声パラメータを構造体にリンク
 初期化後 本関数によって音声パラメータをリングバッファへリンク
 引数は音声パラメータ
 特徴:任意のフレーム数をまとめてリンクすることが可能
 リングバッファがフルの場合は,何も行われずにエラーを示す戻り値を
返す
Synthesis2():Nサンプルごとに合成
 Nサンプル以上の合成が可能であるとき,本関数によりNサンプル分を
一気に合成を実施
 合成完了したサンプル数とAddParameter関数でリンクされたパラメー
タの時刻から今後アクセスされることがない音声パラメータをリング
バッファから自動的に削除
 合成可能サンプルがN個に満たない場合,なにもせず,合成がなされな
かったことを戻り値として返す
DestorySynthesizer():構造体のメモリを
解放
 合成処理後は,構造体で内部的に確保したメモリを開放する
必要がある
 構造体内部で利用したすべてのメモリを開放する
IsLock():構造体の状態を確認
 本実装では,リングバッファのサイズを設定可能
 バッファのサイズが小さかったりすると,リンクも合成もできない状態
になる危険性がある
 本関数は,ロック状態を検出するために実装された関数
 ロックを抑止する対策
・構造体の初期化時にバッファ数を多く確保する
・AddOarameter関数呼び出しにリンクするフレーム数を増やす
・AddParameter関数でリンクする前にF0の下限を確定させる
合成速度に関する評価
評価に用いる音声と実験条件
 声帯振動の回数とFFT回数が比例関係
 FFTが合成処理のボトルネックとなって声帯振動回数が多くF0が高い音
声は合成に時間がかかる
 一つの目安として女性発話者音声を対象に分析,結果から有効性を考察
 分析に用いた音声 「コーヒーにミルクを入れますか」(約2秒)
 サンプリング周波数48kHz
 分析されたF0軌跡
・下限204Hz,上限346Hz
・FFT長は2048サンプル
 実時間合成に関して
・一回Synthesis2関数を呼び出すたび256サ
ンプル(5.33ms)合成されるように初期化
・従来の音声パラメータから一括して合成/
本実装でNサンプルごとに合成
→Rreal time factor(RTF)を用いて速度の評価
実験に用いた音声のF0軌跡,女性発話で「コー
ヒーにミルクを入れますか」と発音せいている
現WORLDの合成関数と比較した速度の評価1
 音声波形全体の合成にかかった時間
 2秒の女性声を合成した例に対する
RTFの結果,実時間処理は従来の合成
処理と比較して,15.7%速度が低下
 Synthesis2関数を呼び出すごとに内
部パラメータの調整を行う処理が含
まれるため
現WORLDの合成関数と比較した速度の評価2
 Synthesis2関数を1回呼び出す毎にかかる時間
 1回関数を呼び出す毎に5.33ms合成する条件
下において,一回当たりのRTFを求めヒストグ
ラムとして表示
 3つのピークは,一回の合成関数呼び出しで合
成される中に含まれる声帯振動回数に対応
考察
 本実装では,音声波形を一括で合成する場合と比較して15.7%の速度低下
 RTF0.01以下であるから実時間合成は問題なく可能
 音声合成の処理時間は音声振動を合成する回数に比例する
 →合成対象となる音声パラメータの平均F0と処理時間は比例関係
 現在の有声音の合成は周期性成分と非周期性成分逐次処理で合成してい
るが,並列で合成も可能 →速度の更なる最適化も可能
考察
 実時間処理に関して,本実装により要求事項は満足したと考える
 次の課題は実時間分析
 WORLDの問題点
 入力サンプル数から出力される音声パラメータのフレーム数が一意に決定でき
ない
 実時間分析機能が実装されれば,現状の品質を維持して実時間声質変換アプリ
ケーションへの応用が可能
おわりに
 本稿では,WORLDで得られた音声パラメータを用いて実時間音声合成を
表現する方法について説明した
 実装例では品質が劣化することなく,WORLDの品質をそのまま実時間合
成することに成功した
 次のステップでは,実時間声質変換のカギとなる分析合成を実現するた
め,実時間分析を行う拡張が必要
→ 今後,実時間で音声を加工しつつ演奏するような電子楽器の実現も?

More Related Content

More from Natsumi KOBAYASHI

音声分析合成[7].pptx
音声分析合成[7].pptx音声分析合成[7].pptx
音声分析合成[7].pptx
Natsumi KOBAYASHI
 
音声分析合成[6].pptx
音声分析合成[6].pptx音声分析合成[6].pptx
音声分析合成[6].pptx
Natsumi KOBAYASHI
 
音声分析合成[5].pptx
音声分析合成[5].pptx音声分析合成[5].pptx
音声分析合成[5].pptx
Natsumi KOBAYASHI
 
音声分析合成[4].pptx
音声分析合成[4].pptx音声分析合成[4].pptx
音声分析合成[4].pptx
Natsumi KOBAYASHI
 
音声分析合成[3].pptx
音声分析合成[3].pptx音声分析合成[3].pptx
音声分析合成[3].pptx
Natsumi KOBAYASHI
 
音声分析合成[2].pptx
音声分析合成[2].pptx音声分析合成[2].pptx
音声分析合成[2].pptx
Natsumi KOBAYASHI
 
音声分析合成[1].pptx
音声分析合成[1].pptx音声分析合成[1].pptx
音声分析合成[1].pptx
Natsumi KOBAYASHI
 
seminar-text_3.pptx
seminar-text_3.pptxseminar-text_3.pptx
seminar-text_3.pptx
Natsumi KOBAYASHI
 
seminar-text_2.pptx
seminar-text_2.pptxseminar-text_2.pptx
seminar-text_2.pptx
Natsumi KOBAYASHI
 
seminar-text_1.pptx
seminar-text_1.pptxseminar-text_1.pptx
seminar-text_1.pptx
Natsumi KOBAYASHI
 
seminar-paper_mapping.pptx
seminar-paper_mapping.pptxseminar-paper_mapping.pptx
seminar-paper_mapping.pptx
Natsumi KOBAYASHI
 
seminar-paper_diarization.pptx
seminar-paper_diarization.pptxseminar-paper_diarization.pptx
seminar-paper_diarization.pptx
Natsumi KOBAYASHI
 
seminar-paper_VMusingCCA.pptx
seminar-paper_VMusingCCA.pptxseminar-paper_VMusingCCA.pptx
seminar-paper_VMusingCCA.pptx
Natsumi KOBAYASHI
 
seminar-paper_vtln.pptx
seminar-paper_vtln.pptxseminar-paper_vtln.pptx
seminar-paper_vtln.pptx
Natsumi KOBAYASHI
 
seminar-paper_karaoke.pptx
seminar-paper_karaoke.pptxseminar-paper_karaoke.pptx
seminar-paper_karaoke.pptx
Natsumi KOBAYASHI
 
seminar-paper_ForeignAccentConv.pptx
seminar-paper_ForeignAccentConv.pptxseminar-paper_ForeignAccentConv.pptx
seminar-paper_ForeignAccentConv.pptx
Natsumi KOBAYASHI
 
論文紹介FaceSwap-dongyue.pptx
論文紹介FaceSwap-dongyue.pptx論文紹介FaceSwap-dongyue.pptx
論文紹介FaceSwap-dongyue.pptx
Natsumi KOBAYASHI
 
論文紹介D4C-morise.pptx
論文紹介D4C-morise.pptx論文紹介D4C-morise.pptx
論文紹介D4C-morise.pptx
Natsumi KOBAYASHI
 
論文紹介PIE-patrick.pptx
論文紹介PIE-patrick.pptx論文紹介PIE-patrick.pptx
論文紹介PIE-patrick.pptx
Natsumi KOBAYASHI
 
論文紹介Morphing-hui.pptx
論文紹介Morphing-hui.pptx論文紹介Morphing-hui.pptx
論文紹介Morphing-hui.pptx
Natsumi KOBAYASHI
 

More from Natsumi KOBAYASHI (20)

音声分析合成[7].pptx
音声分析合成[7].pptx音声分析合成[7].pptx
音声分析合成[7].pptx
 
音声分析合成[6].pptx
音声分析合成[6].pptx音声分析合成[6].pptx
音声分析合成[6].pptx
 
音声分析合成[5].pptx
音声分析合成[5].pptx音声分析合成[5].pptx
音声分析合成[5].pptx
 
音声分析合成[4].pptx
音声分析合成[4].pptx音声分析合成[4].pptx
音声分析合成[4].pptx
 
音声分析合成[3].pptx
音声分析合成[3].pptx音声分析合成[3].pptx
音声分析合成[3].pptx
 
音声分析合成[2].pptx
音声分析合成[2].pptx音声分析合成[2].pptx
音声分析合成[2].pptx
 
音声分析合成[1].pptx
音声分析合成[1].pptx音声分析合成[1].pptx
音声分析合成[1].pptx
 
seminar-text_3.pptx
seminar-text_3.pptxseminar-text_3.pptx
seminar-text_3.pptx
 
seminar-text_2.pptx
seminar-text_2.pptxseminar-text_2.pptx
seminar-text_2.pptx
 
seminar-text_1.pptx
seminar-text_1.pptxseminar-text_1.pptx
seminar-text_1.pptx
 
seminar-paper_mapping.pptx
seminar-paper_mapping.pptxseminar-paper_mapping.pptx
seminar-paper_mapping.pptx
 
seminar-paper_diarization.pptx
seminar-paper_diarization.pptxseminar-paper_diarization.pptx
seminar-paper_diarization.pptx
 
seminar-paper_VMusingCCA.pptx
seminar-paper_VMusingCCA.pptxseminar-paper_VMusingCCA.pptx
seminar-paper_VMusingCCA.pptx
 
seminar-paper_vtln.pptx
seminar-paper_vtln.pptxseminar-paper_vtln.pptx
seminar-paper_vtln.pptx
 
seminar-paper_karaoke.pptx
seminar-paper_karaoke.pptxseminar-paper_karaoke.pptx
seminar-paper_karaoke.pptx
 
seminar-paper_ForeignAccentConv.pptx
seminar-paper_ForeignAccentConv.pptxseminar-paper_ForeignAccentConv.pptx
seminar-paper_ForeignAccentConv.pptx
 
論文紹介FaceSwap-dongyue.pptx
論文紹介FaceSwap-dongyue.pptx論文紹介FaceSwap-dongyue.pptx
論文紹介FaceSwap-dongyue.pptx
 
論文紹介D4C-morise.pptx
論文紹介D4C-morise.pptx論文紹介D4C-morise.pptx
論文紹介D4C-morise.pptx
 
論文紹介PIE-patrick.pptx
論文紹介PIE-patrick.pptx論文紹介PIE-patrick.pptx
論文紹介PIE-patrick.pptx
 
論文紹介Morphing-hui.pptx
論文紹介Morphing-hui.pptx論文紹介Morphing-hui.pptx
論文紹介Morphing-hui.pptx
 

論文紹介Morphing-morise.pptx