基于MATLAB语音LPC参数,实验4基于MATLAB的语音信号LPC分析.ppt
一、實(shí)驗(yàn)?zāi)康?掌握LPC原理,會(huì)利用已學(xué)的知識(shí),編寫(xiě)程序估計(jì)線性預(yù)測(cè)系數(shù)以及LPC的推演參數(shù) 。 能利用所求的相關(guān)參數(shù)估計(jì)語(yǔ)音的端點(diǎn)、清濁音判斷、基因周期、共振峰等 。 二、實(shí)驗(yàn)原理 自相關(guān)法 在最佳線性預(yù)測(cè)中,若用下式定義的時(shí)間平均最小均方準(zhǔn)則代替(3)式的集合平均最小均方準(zhǔn)則,即令 協(xié)方差法 如果在最佳線性預(yù)測(cè)中,用下式定義的時(shí)間平均最小均方準(zhǔn)則代替(3)式的集合平均最小均方準(zhǔn)則,則可得到類(lèi)似的方程: 全極點(diǎn)聲道模型 能量分析是基于語(yǔ)音信號(hào)能量隨時(shí)間有相當(dāng)大的變化,將線性預(yù)測(cè)分析應(yīng)用于語(yǔ)音信號(hào)處理,不僅是為了利用其預(yù)測(cè)功能,更因?yàn)樗峁┝艘粋€(gè)非常好的聲道模型。 將式(2)所示的方程看成是濾波器在語(yǔ)音信號(hào)激勵(lì)下的輸入輸出方程,則該濾波器稱(chēng)為預(yù)測(cè)誤差濾波器,其e(n)是輸出誤差。變換到z域,P階預(yù)測(cè)誤差濾波器的系統(tǒng)函數(shù)為 LPC 如果聲道特性H(Z)用式(14)所示的全極點(diǎn)模型表示,有 結(jié)合語(yǔ)音幀能量構(gòu)成LPC組合參數(shù) 實(shí)驗(yàn)證明,組合參數(shù)可以提高系統(tǒng)的識(shí)別性能。 組合參數(shù)雖然可以提高系統(tǒng)的性能,但很顯然,無(wú)論是在特征參數(shù)提取環(huán)節(jié),還是在模型訓(xùn)練和模型匹配環(huán)節(jié)都使運(yùn)算量有所增加。在特征參數(shù)提取環(huán)節(jié),要計(jì)算一種以上的特征參數(shù)。在模型訓(xùn)練和模型匹配環(huán)節(jié),由于組合參數(shù)特征矢量的維數(shù)較多,使運(yùn)算復(fù)雜度有所增加。運(yùn)算量的增加會(huì)使系統(tǒng)的識(shí)別速度受到影響。 為使運(yùn)算量問(wèn)題得到較好的解決,所以可以由LPC參數(shù)與語(yǔ)音幀能量構(gòu)成組合參數(shù),能夠在運(yùn)算量增加不明顯的情況下改進(jìn)系統(tǒng)的性能。 語(yǔ)音幀能量是指一幀語(yǔ)音信號(hào)的能量,它等于該幀語(yǔ)音樣值的平方和。選取與語(yǔ)音幀能量構(gòu)成組合參數(shù)主要有以下考慮:1)語(yǔ)音幀能量是語(yǔ)音信號(hào)最基本的短時(shí)參數(shù)之一,它表征一幀語(yǔ)音信號(hào)能量的大小,是語(yǔ)音信號(hào)一個(gè)重要的時(shí)域特征;2)由一幀語(yǔ)音求出的語(yǔ)音幀能量是一個(gè)標(biāo)量值,與其它參量構(gòu)成組合參數(shù)不會(huì)使原特征矢量的維數(shù)明顯增加,特征矢量的維數(shù)越少,則需要的運(yùn)算復(fù)雜度越小,另外,獲取語(yǔ)音幀能量的運(yùn)算并不復(fù)雜;3)語(yǔ)音幀能量與LPC參數(shù)之間的相關(guān)性不大,它們反映的是語(yǔ)音信號(hào)的不同特征,應(yīng)該有較好的效果。 模型增益G 實(shí)驗(yàn)結(jié)果(參考) 我們使用的原始語(yǔ)音為“kdt_070”,采樣頻率為11000Hz,運(yùn)行程序見(jiàn)附錄。 在這里我們?nèi)〉?0幀進(jìn)行觀察,線性預(yù)測(cè)階數(shù)為12,看到圖3.1所示的原始語(yǔ)音幀的波形,預(yù)測(cè)語(yǔ)音幀波形和它們之間預(yù)測(cè)誤差的波形。圖3.2為原始語(yǔ)音幀和預(yù)測(cè)語(yǔ)音幀的短時(shí)譜和LPC譜的波形 fLength(1 : 2 * N) = [origin,zeros(1,N)]; Xm = fft(fLength,2 * N); X = Xm .* conj(Xm); Y = fft(X , 2 * N); Rk = Y(1 : N); PART = sum(coef(2 : N1 + 1) .* Rk(1 : N1)); G = sqrt(sum(Frame.^2) - PART); A = (FTframe1 - FFT_est(1 : length(f1'))) ./ FTframe1 ; % inverse filter A(Z) subplot(2,1,1),plot(f1',20*log(abs(FTframe1)),f1',(20*log(abs(1 ./ A))),'-r');grid;title('短時(shí)譜'); subplot(2,1,2),plot(f1',(20*log(abs(G ./ A))));grid;title('LPC譜'); pause temp = FTframe1 - FFT_est(1 : length(f1')); % not move higher frequnce pitch1 = log(abs(temp)); pLength = length(pitch1); result1 = ifft(pitch1,N); % move higher frequnce pitch1((pLength - 32) : pLength) = 0; result2 = ifft(pitch1,N); % direct do real cepstrum with err pitch = fftshift(rceps(err)); origin_pitch = fftshift(rceps(Frame)); subplot(211),plot(origin_pitch);grid;title('原始語(yǔ)音幀倒譜(直接調(diào)用函數(shù))'); subplot(212),plot(pitch);grid;title('預(yù)測(cè)誤差倒譜(直接調(diào)用函數(shù))'); pause subp
總結(jié)
以上是生活随笔為你收集整理的基于MATLAB语音LPC参数,实验4基于MATLAB的语音信号LPC分析.ppt的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: android 手机听筒和扬声器切换
- 下一篇: 八大内部排序