基於改進的GMM和頻率彎折的高質量語音轉換算法

大三下的數字信號處理的課程設計--變音處理,大體要求是完成聲音的轉變:例如將男聲變成女聲,童聲變哆啦A夢等。

當時時間緊迫,沒有足夠的時間和組員自主完成,從網上下載了一些現成的東西。現把當時完成的東西貼上來,有機會再從頭看看。內容均來自網絡,其中GMM方法來自CodeOcean,文件如有侵權,請告知以便給您道歉並刪除資源。大體有兩種方法來實現變聲,第一個比較的簡單,通過聲音的加速播放完成音色的轉變;第二個是利用GMM算法進行學習聲音的特點,將第二種聲音得以轉換。

一、加速變聲色

原理不贅述,直接上代碼如下(包括GUI,我源哥和強哥的作品)

通過改變聲音的播放速度實現簡單的變聲

存在的問題:只能實現一次變換,多次試聽不可操作。

二、GMM算法

簡單說明:語音轉換通過語音特徵參數的轉換來實現,想獲得準確的語音特徵參數,首先需要有一個良好的系統模型來對語音進行分析和合成。利用這個模型將語音特徵參數提取處理後,經過訓練和轉換,再利用轉換後的語音特徵參數進行對應的語音合成,這樣可以保證所得結果的準確性。 語音轉換系統一般分爲訓練階段和轉換階段。訓練階段主要完成的工作是將源和目標說話人的語音特徵參數提取出來, 經過訓練後找到轉換規則,並得到轉換函數。到了轉換階段時,將源說話人語音中的特徵參數通過之前所得到的轉換函數來進行轉換,最終利用完成轉換的參數以及語音合成技術來合成語音。整個系統的工作流程如圖1所示(只能放圖)。

圖1 語音轉換系統的流程圖
圖1 語音轉換系統的流程圖

 

對語音特徵參數的提取主要包括聲源參數和譜包絡參數的提取。聲源參數中主要對駐頻參數進行提取,常見的提取方法包括短時自相關函數法、短時平均幅度差函數法(AMDF)和循環幅度差平方和函數法(SCMDSF)等。對於譜也絡參數的提取算法比較多,其中線性預測係數模型提取信號譜參數較多。

通過提取的聲道參數進行譜包絡的訓練和轉換。常用的譜包絡轉換方法較多,例如:向量量化法、說話人插值法、線性多變量回歸法、動態頻率規整 DFW)、神經網絡法以及高斯混合模型法(GMM);

實現代碼如下:

利用GMM算法實現指定的音色間轉換

 

參考文獻

[1] 楊秀峯. 基於神經網絡的語音轉換算法研究[D]. 西安: 西安建築科技大學, 2017.

[2] 唐斌. 基於 GMM 模型的語音轉換技術研究[J]. 通訊世界, 2017 (18): 296-296.

[3] 解偉超. 語音轉換中聲道譜參數和基頻變換算法的研究[D]. 南京: 南京郵電大學, 2013.

[4] 馬倩倩. 基於個性特徵的語音轉換技術研究[D]. 河北經貿大學, 2013.

[5] Qavi A, Khan S A, Basir K. Voice morphing based on spectral features and prosodic modification[C]//Multi-Topic Conference (INMIC), 2014 IEEE 17th International. IEEE, 2014: 401-405.

[6] 李波, 王成友, 蔡宣平, . 語音轉換及相關技術綜述[J]. 通信學報, 2004, 25(5): 109-118.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章