基於matlab的母音共振峰的估算

2021-08-21 18:33:30 字數 2050 閱讀 6496

一、母音頻譜圖

1、理論知識

不同母音的頻譜不同。其峰值位置稱為共振峰。 不同母音的識別取決於共振峰區域的存在。對於不同頻率的相同母音,共振峰非常相似,無論音高如何都能識別它。

2、實驗結果

聲音取樣頻率為8000hz,fft長度為65536。fft變換後取0—4000hz進行頻譜觀察。

y=fft(y,nfft);                    %用fft計算頻譜

y_abs=abs(y(1:nfft2));

五母音頻譜圖如下所示:

縱軸幅度化為db後的頻譜圖:

二、前三共振峰測試結果

2.1 利用倒譜法計算出共振峰

流程如下:

具體步驟:

1、對語音頻號進行預加重,再進行加窗和分幀。預加重的濾波器常設為: h(

z)=1

−az−

1 h(z

)=1−

az−1

幀長wlen=256,幀移inc=256,這裡將訊號分幀後取其中的六幀進行平均後分析。窗函式為漢明窗,長度為幀長。

xx=enframe(x,256,256);                          %對x 256點分為一幀 

%a1多幀求平均

x1=xx(1,:);x2=xx(3,:);x3=xx(5,:);x4=xx(7,:);x5=xx(9,:);x6=xx(11,:);

x2=(x1+x2+x3+x4+x5+x6)/6;

u=filter([1 -.99],1,x2); % 預加重

u2=u'.*hamming(wlen); % 訊號加窗函式

2、做傅利葉變換

u=fft(u2);
3、取幅值後再取對數lo

g(||

) log

(||)

u_abs=log(abs(u(1:wlen2)));                      % 對數幅值譜(實數部分)
4、進行逆傅利葉變換,得到倒譜序列

cepst=ifft(u_abs);                               % 求取倒譜
5、在倒頻率軸上設定乙個低通的窗函式,一般設定為矩形窗

0是窗函式的寬度。與倒頻率的解析度有關,即和取樣頻率及fft的長度有關。

6、傅利葉變換後取實部部分得到頻譜包絡線。

7、在包絡線上尋找出極大值,就可以獲得相應的共振峰引數。

% 尋找峰值

j=1;

fori=2:wlen2-1

if spect(i)>spect(i-1)&&spect(i)>spect(i+1)

loc(j)=i;val(j)=spect(i);

j=j+1;

endend

2.2 測試結果

低通窗函式n0

=7n 0=

7。測試a1畫出波形如圖所示:

隨手記 共振峰的特性 與音高pitch

人聲的共振峰有乙個有意思的特性,每乙個母音都有對應的乙個共振峰,而且這個共振峰不隨音高 pitch 的改變而改變。我們可以用不同的音高去發出相同乙個母音。此時聲帶振動的頻率改變,但是共鳴腔不變。也可以用相同的音高去發出不同的母音,此時聲帶振動的頻率不變而共鳴腔的形狀改變。也就是說,無論你聲音高低,只...

基於matlab的FFT分析

離散傅利葉變換dft的計算公式如下,fft為dft的一種快速演算法。n 64時 fs 100 取樣頻率 n 64 資料點數 n 0 n 1 抽樣間隔ts 1 fs,所以t n ts n fs為時間序列 t n fs 時間序列 x 0.5 sin 2 pi 15 t 2 sin 2 pi 40 t y...

基於EMD分解和訊號稀疏共振理論的軸承故障訊號分析

背景 本程式以軸承的故障診斷為背景,主要是提取軸承外圈故障特徵頻率與內圈故障特徵頻率。參考文獻 1 陳向民,於德介,羅潔思.基於訊號共振稀疏分解的包絡解調方法及其在軸承故障診斷中的應用 j 振動工程學報,2012 6 628 636.3 張文義,於德介,陳向民.基於訊號共振稀疏分解與能量運算元解調的...