南郵通達語音時頻參數的提取和應用和語音編碼實驗_第1頁
南郵通達語音時頻參數的提取和應用和語音編碼實驗_第2頁
南郵通達語音時頻參數的提取和應用和語音編碼實驗_第3頁
南郵通達語音時頻參數的提取和應用和語音編碼實驗_第4頁
南郵通達語音時頻參數的提取和應用和語音編碼實驗_第5頁
已閱讀5頁,還剩25頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、資料收集于網絡如有侵權請聯系網站刪除謝謝南京郵電大學通達學院實驗報告實驗名稱語音時頻參數的提取和應用實驗語音編碼實驗課程名稱信息處理技術專業綜合實驗班級學號姓名開課時間2016/2017學年 ,第 二 學期精品文檔資料收集于網絡如有侵權請聯系網站刪除謝謝實驗一語音時頻參數的提取和應用一、實驗目的熟悉基本的語音時頻參數提取方法,觀察并比較各類參數采用不同提取方法的效果,了解這些時頻參數在語音處理中的應用。二、實驗內容1、編寫并調試語音時域參數提取程序,包括短時功率、短時過零率等函數。2、編寫并調試語音頻域參數提取程序,包括頻譜、語譜圖、基音頻率、共振峰等。3、利用提取出的時頻參數對語音信號進行靜

2、/ 清 /濁音的劃分。三、實驗原理語音信號具有短時平穩性,需對其進行分段(幀)處理(幀長一般取10 至 30ms之間)。根據激勵方式的不同,語音信號可以分成濁音和清音兩大類:濁音:激勵源可模擬成準周期性的脈沖串。該周期稱為基音周期,其倒數就是基音頻率,基音頻率一般在幾百赫茲以內。清音:激勵源可模擬成隨機白噪聲。簡化的語音生成數學模型如圖所示:基音周期準周期脈沖序列發生器濁音時變線性清音系統語音取樣值隨機噪聲發生器增益控制時變參數對語音時頻波形進行繪制與觀察,有助于了解語音的清/濁音等特性。對基音周期等聲門參數和共振峰等聲道參數進行提取與分析,是語音處理與應用的重要內容。對于時變語音信號x( n

3、) ,可以計算它的短時功率Px (m) 和短時過零率Z x (m) 。第m幀(幀長為N個樣點)的功率計算公式為:1m2x(n)Px ( m)Nn m N 1精品文檔資料收集于網絡如有侵權請聯系網站刪除謝謝過零率計算公式為:1msign x(n) sign x(n 1)Z x ( m)2N n m N 1對于濁音語音,可以利用其頻譜X () 具有豐富的諧波分量的特點,求出其諧波乘積譜,計算公式為:RHPSx ()X ( r)r1式中, R一般取為5。在諧波乘積譜中,基頻分量變得很大,更易于估計基音周期。四、實驗方法及程序1. 調用 matlab 中的 wavread 和 wavplay 讀入并播

4、放語音文件。2. 調用 fft 命令計算語音的頻譜。3. 調用 specgram 命令得到語音的語譜圖。4. 調用 plot 命令繪制并觀察語音的時頻域波形。5. 根據短時功率、短時過零率、諧波乘積譜的計算公式,編寫分別用以計算短時 功 率 、 短 時 過 零 率 、 基 音 頻 率 的 函 數 : functionPx=stpower、 functionZx=stzerocross(x, N)和 function HPSx = hpspectrum(x,N,R)。6. 利用短時功率和短時過零率這兩個參數可以對語音信號進行濁音/清音分類。編寫實現此分類功能的函數voiunvoi.m。五、實驗結

5、果與分析1. 清音和濁音的短時功率、短時過零率各有何特點?清音段的能量一般比濁音段的小得多。濁音時能量集中于較低頻率段內,具有較低的過零率,而清音時能量集中于較高頻率段內,具有較高的過零率。2. 如何利用短時功率和短時過零率這兩個參數對語音信號進行濁音/ 清音的分類?發濁音時,由于聲門波引起了譜的高頻跌落。所以其語音能量集中在3kHz 以下;發清音時,多數能量出現在高頻。高頻率意味著高的平均過零率,低頻率意味著低的平均過零率,一般可認為濁音具有較低的平均過零率,清音具有較高的平均過零率。3. 如何根據時域波形估計各幀元音的基音周期?看圖可知四幀語音的周期均為0.01s ,第一幀0100Hz 有

6、 10個峰值點,基頻約為10Hz ,第二幀0100Hz 有 5 個峰值點,基頻約為20Hz ,第三幀0100Hz 有 5 個峰值點,基頻約為20Hz ,第四幀0100Hz 有 4個峰值點,基頻約為25Hz 。4. 如何根據基于 DFT 的對數幅度譜估計某幀濁音的基音周期?01172 為一個基因周期。精品文檔資料收集于網絡如有侵權請聯系網站刪除謝謝5. 如何根據基于 DFT 的對數幅度譜,估計出共振峰頻率?有 7個峰點,因此基頻約為167 。6. 時域對語音信號進行加窗,反映在頻域,其窗譜對基于DFT 的對數幅度譜有何影響?如何估計出窗譜的主瓣寬度?因為時 間窗 幅度 的傅 立葉 變換 為脈 沖

7、狀 態 ,則頻譜偏差 很小 , 當 定常 過程 x(n) 的平均值 為零且 N 很大時ETN()=f()(12)所以加窗的周期圖TN( ) 是頻譜密度函數的無偏估計。固有TN()=1+ ( )f()。如果原始信號的頻譜成份與FFT 中的譜線完全一致,這種情況下采樣數據的長度為信號周期的整數倍,頻譜中只有主瓣。7. 如何根據窄帶、寬帶語譜圖,提取出語音的基音和共振峰軌跡?在基音提取中,廣泛采用語音波形或誤差信號波形的低通濾波。提取共振峰特性最簡便的手段是使用語譜儀。提取共振峰還有倒譜法、LPC 分析法等更為有效、準確的方法。(做完試驗后,記住要回答這些問題)實驗過程記錄與結果分析1、進入 mat

8、lab1.1 在 Windows 環境中,創建一個名為speech 的文件夾,存放語音數據和與實驗相關的 Matlab 文件。如:E:speech 。用于實驗的語音數據(.mat )及相應說明(.txt )包括:digits.mat%digits.txtgliss.mat%兩個包含 /i/ 的滑音gliss.txtletters.mat%英文字母表中26 個字母的發音letters.txtma1.txtma1-1.mat%一句連續語音ma1-2.mat%一句連續語音ma1-3.mat%一句連續語音ma1-4.mat%一句連續語音timit.txttimit1.mat%一句連續語音timit2.

9、mat%一句連續語音timit3.mat%一句連續語音timit4.mat%一句連續語音vowels.mat%元音 /a/, /i/, /o/, /u/ 的發音vowels.txtwords.mat%十個孤立字的發音精品文檔資料收集于網絡如有侵權請聯系網站刪除謝謝words.txt1.2在 Windows桌面上,雙擊Matlab的圖標,進入Matlab的工作環境。在命令窗口 >> 提示符后,鍵入cd E:speech指令,進入實驗文件夾路徑。1.3 在命令窗口鍵入clear all指令,清除工作空間的所有變量。2、加載語音數據,熟悉matlab 命令2.1 加載“ timit1.m

10、at”語音數據,命令為:load timit12.2用命令“who ”和“whos ”列出當前工作空間中的變量。變量“timit1 ”會以包含55911 個元素的矩陣(列向量)形式出現Your variables are:timit1NameSizeBytesClassAttributestimit155911x1447288double2.3 利用命令“length ”和“ size ”查看語音信號timit1的長度和維數:m = length(timit1)m,n = size(timit1)(粘貼實驗結果)m =55911m =55911n =12.4 通過以下命令,分別查看語音信號ti

11、mit1中間的1 個、 2 個和 20 個數據值:timit1(5001)timit1(5001,5003)timit1(5001:5020)(粘貼實驗結果)ans =精品文檔資料收集于網絡如有侵權請聯系網站刪除謝謝-0.0646ans =-0.06460.0111ans =-0.06460.03070.0111-0.02000.20210.40120.1869-0.1756-0.19020.08230.23630.17120.0637-0.0209-0.0683-0.03940.00810.01050.03110.06962.5 Matlab中,符號“”可以實現轉置運算,運行以下命令進行觀察

12、:size (timit1)(粘貼實驗結果)ans =1559112.6 使用函數max 和 min 可以分別得到信號的最大值和最小值:max(timit1)min(timit1)(粘貼實驗結果)ans =1精品文檔資料收集于網絡如有侵權請聯系網站刪除謝謝ans =-0.80683、語音信號的時域分析3.1 使用以下命令,畫出語音信號timit1 (采樣頻率為16kHz ,長度為3.5 秒)的時域波形。plot (timit1)title ( timit1 )xlabel ( Time Index,it n)ylabel ( Amplitude)axis (0 length(timit1) -

13、1 1)grid3.2 分別畫出一幀濁音和一幀清音的語音時域波形(采樣頻率為16kHz ,幀長為25ms ,每幀有400 個樣點) 。subplot(211), plot(timit1(14501:14900)%/a/ in dark.subplot(212), plot(timit1(35501:35900)%/s/ in wash.精品文檔資料收集于網絡如有侵權請聯系網站刪除謝謝3.3 編寫個一用以計算信號短時功率的函數“stpower.m ”,其Matlab代碼如下:function Px=stpower (x, N)M = length (x);Px = zeros (M, 1);Px

14、 (N)=x (1:N)*x (1:N)/N;For (m = (N+1): M)Px (m) = Px (m-1)+ (x (m) 2-x (m-N) 2)/N;3.4 編寫一個用以計算信號短時過零率的函數“stzerocross.m ”,其Matlab代碼如下:function Zx = stzerocross(x, N)M=length(x);Zx=zeros(M,1);Zx (N+1)=sum (abs (sign (x (2:N+1)sign (x (1:N) ) ) )/ (2*N);for (m= (N+2):M)Zx (m) = Zx (m-1) + (abs (sign (x

15、 (m) )sign (x (m-1) ) ) abs(sign (x (m-N) ) sign (x (m-N-1 ) ) ) )/ (2*N); end3.5 加載“ digits.mat”語音數據,該數據包含英文數字“ 0 ” 到“ 9 ”的發音。計算其中的單詞“four ”的短時功率和過零率(采樣頻率為10kHz ,幀長為30ms ,每幀有300 個樣點) 。load digits;N = 300; x=digits.four1;精品文檔資料收集于網絡如有侵權請聯系網站刪除謝謝Px = stpower (x,N);Zx = stzerocross (x,N);plot(Px*1e -5

16、Zxx/2000)3.6 加載“ vowels.mat ”語音數據,該數據包含元音/a/, /i/, /o/, /u/ 的發音。分別畫出一幀/a/ 、一幀/i/ 、一幀 /o/和一幀 /u/ 的時域波形(采樣頻率為10kHz ,幀長為30ms ,每幀有300 個樣點) 。load vowelssubplot(221)plot (vowels.a_1(2001:2300)subplot(222)plot (vowels.i_1(2001:2300)subplot(223)plot (vowels.o_1(2001:2300)subplot(224)plot (vowels.u_1(2001:23

17、00)精品文檔資料收集于網絡如有侵權請聯系網站刪除謝謝3.7編寫一個利用短時功率和短時過零率這兩個參數對語音信號進行濁音/清音分類的函數“voiunvoi.m”,其Matlab代碼如下:function voi = voiunvoi(x,N,Pth,Zth)% Short-time power Px and zero crossing Zx measures. Px = stpower(x,N);Zx = stzerocross(x,N);% Compare estimates with threshold values.voi = (Px>Pth*max(Px) & (Zx&l

18、t;Zth);% Shift the voi-flag N/2 samples to the left (middle sample in window). voi = voi(fix(N/2)+1:length(voi);voi(length(voi)*ones(fix(N/2),1);4、語音信號的頻域分析4.1 加載“ ma1_1 ”語音數據。基于DFT 變換,畫出其中一幀數據(采樣頻率為8kHz ,幀長為37.5ms ,每幀有300 個樣點)的頻域波形(對數幅度譜)。load ma1_1;x = ma1_1 (4161:4460);subplot(121), plot(x)N = 10

19、24; k = 0:N/2-1;X = fftshift (fft (x.*hann (length (x),N);subplot(122), plot (k,20*log10 (abs(X(N/2:-1:1),axis (0N/2-1-infinf )精品文檔資料收集于網絡如有侵權請聯系網站刪除謝謝4.2 編寫一個用以計算信號諧波乘積譜的函數“hpspectrum.m ”,其Matlab代碼如下:function HPSx = hpspectrum(x,N,R)k = 1:R:N/2; K = length(k);X = fft (x.*hann(length(x), N);HPSx = X

20、(k);for (r = R-1:-1:1)HPSx = HPSx.*X (1:r:r*K);end4.3 利用函數“hpspectrum.m ”,來估計一幀濁音的基音周期。代碼如下:X = ma1_1(4161:4460);N=1024;R=5;HPSx = hpspectrum (x, N, R);plot (20*log10 (abs (HPSx)精品文檔資料收集于網絡如有侵權請聯系網站刪除謝謝4.4 加載“ vowels.mat ”語音數據, 分別畫出一幀/i/ 和一幀 /u/(采樣頻率為10kHz ,幀長為30ms ,每幀有300 個樣點)的基于DFT 的對數幅度譜。其Matlab代

21、碼如下:load vowelsx = vowels.i_1(2001:2300);N = 1024; k= -N/2:N/2-1;X = fftshift (fft (x.*hann (length(x),N);plot (k,20*log10(abs(X), axis(0 fix (N/2) 0 100)x = vowels.u_1(2001:2300);N= 1024; k = - N/2:N/2-1;X = fftshift (fft (x.*hann(length(x),N);plot (k,20*log10(abs(X), axis(0 fix(N/2) 0 100)精品文檔資料收集

22、于網絡如有侵權請聯系網站刪除謝謝4.5 畫出一幀清音語音的基于DFT的對數幅度譜。語音數據為ma1_1中的第15701 15860 個樣點(采樣頻率為8kHz ,幀長為20ms ,每幀有160 個樣點) 。load ma1_1;x = ma1-1 (4161:4460);plot (x)N = 1024; k = - N/2;N/2-1;X = fftshift (fft (x.*hann (length (x),N);plot (k,20*log10 (abs(X), axis (0 fix (N/2)- infinf )精品文檔資料收集于網絡如有侵權請聯系網站刪除謝謝4.6加載“ timi

23、t1 ”語音數據。利用函數specgram ,畫出該句語音的語譜圖。其Matlab代碼如下:load timit1;NFFT = 256 ; Fs = 16000; Win = 256; Noverlap = 128;specgram(timit1, NFFT, Fs, Win, Noverlap);4.7 加載“ gliss ”語音數據。畫出該句語音的語譜圖。load gliss;NFFT = 256 ; Fs = 10000;Win = 256; Noverlap = 128;specgram(gliss.i_2, NFFT, Fs, Win, Noverlap);精品文檔資料收集于網絡如

24、有侵權請聯系網站刪除謝謝4.8基于濁音/ 清音分類函數voiunvoi.m和諧波乘積譜函數hpspectrum.m ,編寫一個用以計算濁音短時基音周期的函數“stpitch.m ”。其Matlab代碼如下:function Fp = stpitch(x,N,Pth,Zth,NFFT,R,Fs)M = length(x);N = 2*fix(N/2);win = hann(N);Fp = zeros(M,1);voi = voiunvoi(x,N,Pth,Zth);invoi = 0;for (m=N:N/2:M)n1 = m-N+1:m-N/2;n2 = m-N/2+1:m;n= n1 n2;

25、if (any(voi(n)if (invoi)Fp(n1) = Fmax;invoi= 0;endelseHPSmax,Fmax = max(abs(hpspectrum(x(n),NFFT,R);精品文檔資料收集于網絡如有侵權請聯系網站刪除謝謝if (invoi)Fp(n) = Fp(n) + win*Fmax;elseFp(n) = Fmax*ones(N/2,1) win(N/2+1:N);invoi = 1;endendendwsave = warning; warning('off');Fp = (Fp*Fs/NFFT).*(Fp./Fp);warning(wsav

26、e);1. 調用 matlab 中的 wavread 和 wavplay 讀入并播放語音文件。2. 調用 fft 命令計算語音的頻譜。3. 調用 specgram 命令得到語音的語譜圖。4. 調用 plot 命令繪制并觀察語音的時頻域波形。5. 根據短時功率、短時過零率、諧波乘積譜的計算公式,編寫分別用以計算短時 功 率 、 短 時 過 零 率 、 基 音 頻 率 的 函 數 : functionPx=stpower、 functionZx=stzerocross(x, N)和 function HPSx = hpspectrum(x,N,R)。6. 利用短時功率和短時過零率這兩個參數可以對語

27、音信號進行濁音/清音分類。編寫實現此分類功能的函數voiunvoi.m。4.9 利用函數stpitch.m ,分別求出兩句語音“timit1 ”和“ timit2 ”的基音周期。精品文檔資料收集于網絡如有侵權請聯系網站刪除謝謝實驗二語音編碼一、實驗目的熟悉語音基本壓縮編碼的方法,觀察語音壓縮效果,加深對語音線性預測編碼( LPC )的理解。二、實驗內容1、編寫并調試語音LPC 參數提取程序。2、編寫并調試語音基音周期提取程序。3、編寫并調試語音LPC 合成程序。三、實驗原理語音信號中含有大量的冗余信息,采用各種信源編碼技術減除語音信號的冗余度,并充分利用人耳的聽覺掩蔽效應,就可以將其編碼速率壓

28、縮很多倍,而仍能提供可懂語音。LPC 聲碼器是一種比較簡單實用的語音壓縮方法,其基本原理是:根據語音生成模型,將語音看作激勵源通過一個線性時不變系統產生的輸出,利用線性預測分析對聲道參數進行估值,將求得的線性預測系數,結合基音周期等少量參數進行傳輸,就可以在接收端利用合成濾波器重構語音信號。線性預測系數的估計方法為:假設語音的當前樣值可以用過去的M 個語音樣值來進行預測MaM x n Mai x n ix n a1 x n 1 a2 x n 2i 1式中ai 即為線性預測系數。實際值和預測值之間的均方誤差可表示為M22 nEx nai x n inni 1要求均方誤差總和最小,將E 關于 ai

29、 的偏導數設置為零,可以得到Mx nkx nai x ni0ni1通過采用自相關法、協方差法或格形法求解該方程,即可得到最優的ai 。精品文檔資料收集于網絡如有侵權請聯系網站刪除謝謝四、實驗方法及程序1. 調用 xcorr 命令計算一幀語音的自相關函數。2. 調用 toeplitz命令形成該幀語音的自相關矩陣。3. 調用 durbin 命令,采用杜賓遞推算法計算該幀語音的線性預測系數。4. 編寫 lpcauto.m 函數,求取一句語音信號的線性預測系數及預測殘差。選擇設當的窗函數對語音信號進行分幀。5. 編寫 lpcpitch 函數,由殘差信號計算該句語音的基音周期。6. 編寫 lpcgain

30、 函數,由預測殘差能量,求出該句語音的增益。7. 編寫 lpcsyn 函數,由該句語音的基音周期、預測殘差能量和增益進行LPC 合成。五、實驗結果與分析1. 如 何對 全極點 模型的線 性預測 參數進 行提取? 加窗等 預處理 對提取結 果有何影響?自相關法、協方差法求解線性預測方程組、格型法。協方差法是先把計算均方誤差的間隔 N固定下來,再研究它對計算 n( i,1 )的其中 N 是基音周期值。添加漢明窗和漢寧窗可以得到效果不錯的波形,很明顯兩個波形相似,矩形窗的波形相對不是很平穩。通過改變幀長、幀移后波形更加的清晰,特征更加的明顯,更方便觀察。2. 如何實現線性預測參數的各種表現方式之間的

31、轉換?對于語音信號,確定了各線性預測系數后,根據H ( z)可得其頻率響應的估值即 LPC 譜。3. 使用預測殘差求基音周期有何優點?該方法能進一步去除聲道共振峰的影響,簡化清濁音判決過程,提高判決精度,有效降低發生基音倍頻和半頻的錯誤。4. 如何根據線性預測系數求得LPC 頻譜?對于語音信號,確定了各線性預測系數后,根據H ( z)可得其頻率響應的估值即 LPC 譜。5. LPC 頻譜與基于 DFT 求得的語音對數幅度譜相比有何不同?LPC 譜優點在于可以很好地表示共振峰結構而不出現額外的蜂起和起伏,基本不含有噪聲,其頻率靈敏度與人耳不相匹配; DET 得到的對數幅度譜受基頻諧波的影響,最大

32、值只出現在諧波頻率上,共振峰測定誤差較大。6. LPC 合成語音的質量如何?有何改進措施?LPC 合成技術的優點是簡單直觀。其合成過程實質上只是一種簡單的解碼和拼接過程。另外,由于波形拼接技術的合成基元是語音的波形數據,保存了語音的全部信息,因而對于單個合成基元來說能夠獲得很高的自然度。但是,由于自然語流中的語音和孤立狀況下的語音有著極大的區別,如果只是簡單地把各個孤立的語音生硬地拼接在一起,其整個語流的質量勢必是不太理想的。而LPC 技術從本質上來說只是一種錄音+ 重放,對于合成整個連續語流LPC 合成技術的效果是不理想的。因此, LPC 合成技術必須和其他技術相結合,才能明顯改善LPC 合

33、成的質量。實驗過程記錄與結果分析1、計算短時自相關函數1.1分別計算正弦信號和白噪聲的短時自相關函數,估計正弦信號的基音周期。精品文檔資料收集于網絡如有侵權請聯系網站刪除謝謝其 Matlab 代碼如下:x=sin(2*pi*0.01*(0:499)');r,eta=xcorr(x,100,'unbiased');stem(eta,r);w=randn(500,1);r,eta=xcorr(w,100,'unbiased');stem(eta,r);精品文檔資料收集于網絡如有侵權請聯系網站刪除謝謝1.2計算正弦信號疊加白噪聲的短時自相關函數,試估計正弦信號

34、的基音周期。其 Matlab 代碼如下:x=sin(2*pi*0.01*(0:499)');w=randn(500,1);x1=x+w;r,eta=xcorr(x1,100,'unbiased');stem(eta,r);精品文檔資料收集于網絡如有侵權請聯系網站刪除謝謝1.3分別畫出一幀濁音和一幀清音的語音自相關波形(采樣頻率為10kHz ,幀長為 25.6ms ,每幀有256 個樣點) ,估計濁音的基音周期。load digits; x=digits.three1;m=2756; N=256; n=m-N+1:m;r,eta=xcorr(x(n),250,'u

35、nbiased');plot(eta,r);m=500; N=256; n=m-N+1:m;r,eta=xcorr(x(n),250,'unbiased');plot(eta,r);精品文檔資料收集于網絡如有侵權請聯系網站刪除謝謝2、求取 LPC系數2.1加載“ digits.three1”語音數據。基于自相關法,求出其中一幀數據(采樣頻率為10kHz ,幀長為25.6ms ,每幀有256 個樣點)的14 階 LPC 系數。畫出相應的 LPC 譜。load digits; x=digits.three1;m=2756; N=256; n=m-N+1:m; M=14;r,

36、eta=xcorr(x(n),250,'unbiased');Rx=toeplitz(r(M+1:2*M);rx=r(M+2:2*M+1);a=Rxrx;NFFT=1024; k=1:NFFT/2;X=fft(x(n).*hann(N),NFFT);Theta=1./fft(1;-a,NFFT);plot(k,20*log10(abs(353*Theta(k) X(k)axis(0 NFFT/2inf inf)2.2 編寫一個用以實現杜賓遞推算法的函數“durbin.m ”,其 Matlab代碼如下:function a,xi,kappa=durbin(r,M)kappa =

37、zeros (M,1);a = zeros (M, 1);xi=r(1); zeros(M,1);for (j=1:M)kappa(j)=r(j+1)-a(1:j-1)'*r(j:-1:2)/xi(j);a(j)=kappa(j);精品文檔資料收集于網絡如有侵權請聯系網站刪除謝謝a(1:j-1)=a(1:j-1)-kappa(j)*a(j-1:-1:1);xi(j+1)=a(1:j-1)-kappa(j)*a(j-1:-1:1);xi(j+1)=xi(j)*(1-kappa(j)2);end2.3 利用函數“durbin.m ”,計算2.1 中語音數據幀的14 階 LPC 系數,并與2

38、.1中的結果進行比較:x=digits.three1;m=2756; N=256; n=m-N+1:m; M=14;r,eta=xcorr(x(n),250,'unbiased');aLD,xi,kappa=durbin(r(M+1:2*M+1),M);a, aLD, norm(a-aLD)a =0.35120.20720.38080.31630.0522-0.1639-0.2903-0.2898-0.12220.19600.34920.30240.1713-0.8258aLD =0.35120.20720.38080.31630.0522-0.1639-0.2903-0.28

39、98-0.12220.19600.3492精品文檔資料收集于網絡如有侵權請聯系網站刪除謝謝0.30240.1713-0.8258ans =1.0047e-142.4 編寫一個用以實現反射系數轉換為LPC 系數的函數“rf2lpc.m ”,其Matlab代碼如下:function a = rf2lpc(kappa)M = length(kappa);a = zeros(M,1);for (j=1:M)a(j) = kappa(j);a(1:j-1) = a(1:j-1) - kappa(j)*a(j-1:-1:1);end2.5編寫一個用以實現LPC 系數轉換為反射系數的函數“lpc2rf.m”

40、,其 Matlab代碼如下:function kappa = lpc2rf(a)M = length(a);kappa = zeros(M,1);for (j=M:-1:1)kappa(j) = a(j);a(1:j-1) = (a(1:j-1) + a(j)*a(j-1:-1:1)/(1 - kappa(j)2);end2.6 使用函數“rf2lpc.m ”和“ lpc2rf.m ”,檢驗反射系數和LPC 系數相互轉換結果。norm(kappa-lpc2rf(aLD)norm(aLD-rf2lpc(kappa)ans =1.4760e-14ans =03、語音信號的逆濾波3.1利用2.3 中求出的一幀語音數據的LPC 系數,構造逆濾波器,并畫出該幀語音信號的殘差波形。精品文檔資料收集于網絡如有侵權請聯系網站刪除謝謝ehat=filter(1;-1,1,x(n);plot(x(n) ehat)3.2 編寫一個用以實現語音信號LPC 分析的函數“lpcauto ”,其Matlab代碼如下:function ar,xi,e,m = lpcauto(x,M,win,Olap)Nx = length(x);N = length(win);if (N = 1)N = win;win = ones(N,1);endF = fix(Nx-Olap)/(N-Olap);ar = ze

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論