国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于MATLAB GUI的變聲器設(shè)計與實現(xiàn)

2018-09-20 02:10孟若蘭劉艷麗陳錦苗李昊天王琪瑤
電子測試 2018年17期
關(guān)鍵詞:基音變聲男聲

孟若蘭,劉艷麗,陳錦苗,李昊天,王琪瑤

(承德醫(yī)學(xué)院生物醫(yī)學(xué)工程系,河北承德,067000)

關(guān)鍵字: MATLAB GUI;變聲器;設(shè)計

1 關(guān)于MATLAB和 GUI的概念和含義分析

1.1 關(guān)于MATLAB的概述

MATLAB是兩個詞組組合而成的,這兩詞組分別是matrix和laboratory。其用漢語可以翻譯成為矩形實驗室或者矩形工廠。其原理或者功能是,MATLAB能夠?qū)?shù)值分析、矩陣計算、科學(xué)數(shù)據(jù)可視化以及非線性動態(tài)系統(tǒng)的建模和仿真等諸多強大功能集成在一個易于使用的視窗環(huán)境中,這便為我國的科學(xué)研究、工程設(shè)計以及必須進行有效數(shù)值計算的眾多科學(xué)領(lǐng)域帶來了一場全新的變革,其成功為這些科學(xué)領(lǐng)域提供了一種全面且科學(xué)的解決方案,并且成功突破了傳統(tǒng)非交互式程序設(shè)計語言(如C、Fortran)編輯模式的局限性??偠灾?,MATLAB是能夠在一定程度上作為代表當今國際科學(xué)計算軟件水平的一個重要產(chǎn)物。

1.2 關(guān)于 GUI的概述

關(guān)于 GUI,其英文全稱為Graphical User Interface。為了應(yīng)用方便,都習(xí)慣性使用其簡稱—— GUI。 GUI用漢語翻譯稱為人機交互圖形用戶界面設(shè)計。從理論層面來進行解釋,其主要指的是采用圖形方式顯示的計算機操作用戶界面。GUI和傳統(tǒng)意義上所使用的計算機命令界面相比較,其最大的一個優(yōu)勢或者特點便是其所具備的圖形界面。但從視覺上來分析,圖形界面要比命令界面更具有可接受性,更能夠吸引住大眾的目光。

2 基于MATLAB GUI 的變聲器設(shè)計

為了實現(xiàn)變聲的目的,從男聲變女聲、女聲變男聲、老人變童聲等需要在分析語音信號參數(shù)的過程當中適時采用短時自相關(guān)法提取語音信號的基音周期。與此同時,也會應(yīng)用到LPC即倒譜分析法分析共振峰的范圍,然后再通過MATLAB編寫程序來對語音參數(shù)進行修改,進而使其更加接近想要的聲音的范圍,構(gòu)置GUI界面。

2.1 關(guān)于變聲原理分析

一般情況下,在進行性別變聲的過程中,我們需要考慮的因素主要包括幾個方面,諸如基音的周期、基音的頻率、共振峰的頻率等等,其主要變化諸如以上幾個因素的頻率來實現(xiàn)聲音的轉(zhuǎn)變。下表是不同聲音即男聲、女聲和童聲在基頻、共振峰方面的關(guān)系。

表1 人群中基頻和共振峰之間的關(guān)系

2.2 參數(shù)提取

對語音信號進行低通濾波,借助MATLAB編程采用自相關(guān)算法,對基音周期進行估值,然后再繼續(xù)完成自相關(guān)計算。

首先,構(gòu)建巴特沃斯濾波器。我們需要根據(jù)特定人的說話特征在第一時間內(nèi)確定相應(yīng)的指標參數(shù),然后根據(jù)本段語音設(shè)計計算出巴特沃斯模擬濾波器的階數(shù)N是5,3dB截止頻率,計算出? 為0.175,歸一化c低通原型系統(tǒng)函數(shù)為:

其中,b0=1.0000,b1=3.2361,b2=5.2361,b3=5.2361,b4=3.2361。將 P= S/ ?c代入 Ga(p)中,得到低通濾波器 :

以設(shè)定的濾波器作為根據(jù),進行MATLAB程序的編寫,如果有信號經(jīng)過低通濾波器之后,其必然對會原始信號的濾波產(chǎn)生一定的影響。經(jīng)過低通濾波器后,其還是會保留原始基音頻率。隨后我們再用2KHz采用頻率進行采用,采樣的序列設(shè)為X(n),然后再進行自相關(guān)計算。

然后,語音信號的短時自相關(guān)函數(shù)

我們將語音信號的自相關(guān)函數(shù)定義為:

在這個公式當中,不同的字母代表著不同的含義:第一,xn(n)代表的是語音信號,K代表的是信號延遲點數(shù),N代表的是語音幀長度。經(jīng)過低通濾波之后,我們選取了160個樣點數(shù),每一個語音幀長度都確定為10ms,對每幀語音求短時自相關(guān),獲取到最大點數(shù),這就是其在基音周期當中表現(xiàn)出來的峰值。而峰值之間的間隔平均值也就是我們要計算出的基音周期。在這里筆者想要強調(diào)一點內(nèi)容,因為在圖中并不是所有的樣點都是有價值的,其會摻雜著很多的野點,因為我們在編寫MATLAB程序時,一定要在排除掉這些野點之后計算出對應(yīng)基音周期。

2.3 利用LPC倒譜法來提出共振峰

我們在分析線性預(yù)測之后,可以得出合成濾波器的系統(tǒng)函數(shù)是:

2.4 線性預(yù)測語音信號合成

我們利用線性預(yù)測的基本思想,來對現(xiàn)在或者未來的樣點值進行預(yù)測,其中會借用到過去M個樣點值:。其中,?()yn代表的是預(yù)測信號,ia代表的是預(yù)測系數(shù),而y(n)則代表的是取樣信號,預(yù)測誤差ε(n)則為

基于此,我們便可以通過在某個準則下使預(yù)測誤差ε( n )達到最小值的方法來決定位移的一組線性預(yù)測參數(shù)。此外,把語音信號的某一幀內(nèi)的短時均方預(yù)測誤差定義為:

2.5 GUI界面設(shè)計

關(guān)于GUI界面設(shè)計,其需要在MATLAB的基礎(chǔ)上新建立起GUI,根據(jù)需求添加各個部件,完成以下設(shè)計。

圖1 GUI界面設(shè)計圖

然后,打開一段男聲錄制好的聲音,進行仿真實驗,其具體效果如圖2所示。

圖2 最終的仿真合成變聲圖

3 結(jié)束語

上述此種變聲器的設(shè)計最大的優(yōu)勢就在于其新建了LPC倒譜法,專門用來提取共振峰。除此之外,其還能夠有效控制相關(guān)參數(shù),省去了很多比較復(fù)雜或者麻煩的計算步驟和問題。這會是未來變聲器的一個重要發(fā)展和完善方向。

猜你喜歡
基音變聲男聲
融合CNN和Transformer編碼器的變聲語音鑒別與還原
木星地
長江夢
基于深度學(xué)習(xí)算法的真人變聲設(shè)備的設(shè)計與實現(xiàn)
基于基音跟蹤的語音增強研究
中 年 人
天下父母心(男聲獨唱)
初中男聲合唱教學(xué)的探索
一種改進的基音周期提取算法
一種高效的基音估計算法