speech production model
文章目錄
- 1 概述
- 2 source model
- 3 filter model
- 4 小結
- 參考資料
1 概述
本文的目的是為了厘清在speech production model中source model和filter model所扮演的角色,不涉及具體公式的推導或者模型的建立,只是為了把這兩個model在干什么事情說明白。文中用到的圖片均來自底部參考資料,如有侵權,必定刪除。
如下圖1-1所示,speech production model把人發聲的過程分成了三大塊,分別是power,source和filter。
power就是我們的肺部,用來產生氣體;source是我們的喉嚨,用來控制聲音的音調pitch和響度loudness;filter是我們的嘴、舌、齒等等組成的聲道,用來控制最終發出什么音。
power這塊我們不關心,我們用模型去模擬的時候直接從source開始模擬就可以了。我們假定source產生的信號在頻域內如下圖1-2最左側所示,這是由一個基頻F0F_0F0?和它的諧波組成的,這個信號和filter在頻域內做乘積得到了下圖1-2最右側的頻域圖。可以看出這是source和filter的結合。
2 source model
source model模擬的就是我們的喉嚨。我們的喉嚨在發聲的時候,會產生振動,相當于有一個閥門在一開一關。這樣使得source model產生的信號是一個以F0F_0F0?為極品的信號,這也就是我們的音調pitch。有這種振動的聲音被稱為濁音(voiced),沒有這種振動的被稱為清音(unvoiced)。清音也就是讓氣體直接通過喉嚨,不加任何振動。
圖2-1中的u(t)u(t)u(t)就是source model產生的結果,其在經過傅里葉變換之后,得到的頻域上的圖如圖1-2所示,會伴有很多的諧波(harmonics)。諧波都在基頻的整數倍上,比如我們F0F_0F0?是200Hz,那么400Hz,600Hz,800Hz等等都是它的諧波。直觀上來看,就是圖1-2中最左側的圖和最右側的圖的毛刺。
3 filter model
filter model就是我們的聲道,各種形狀會讓我們聲道變成不同參數的濾波器。這個濾波器我們假設它是g(n)g(n)g(n)。從source model出來的信號u(n)u(n)u(n)會和g(n)g(n)g(n)在時域上做卷積得到最終的信號x(n)x(n)x(n)。
x(n)=u(n)?g(n)(3-1)x(n) = u(n)*g(n) \tag{3-1} x(n)=u(n)?g(n)(3-1)
時域上的卷積就是頻域上的乘積
X(k)=U(k)G(k)(3-2)X(k) = U(k)G(k) \tag{3-2} X(k)=U(k)G(k)(3-2)
這個G(k)G(k)G(k)就決定了我們發出的是"a"還是"u"這樣的音。
如圖1-2所示不同的聲道形狀就表示了不同形狀的濾波器,由于頻域內是乘積的操作,最終得到的信號會在濾波器的幾處頻域峰值處產生共振峰(format frequencies)。這些共振峰叢小到大依次為F1F_1F1?,F2F_2F2?,F3F_3F3?,F4F_4F4?等等。一般濁音的共振峰會隨著頻率的增大而幅值減小,而濁音的在高頻處幅值較大。圖3-1中是濁音和清音不帶毛刺的X(k)X(k)X(k)示意圖。
我們對x(n)x(n)x(n)做短時傅里葉變換之后,往往會得到如下圖3-2所示的頻譜圖。其中的白線就是各個共振峰。據此可以判斷發出的是什么音。
圖3-2 formant frequency contour4 小結
據此,我們可以知道source model決定了harmonic frequencies,也即
- 聲音的音調(F0F_0F0?)
- 聲音的強度
- 聲音的時長
- 聲音的質量
filer model決定了formant frequencies,也即
- 發出的是什么音
參考資料
[1] Speech Acoustics 4 - Source-filter model
[2] 李琳山-Speech Signal and Front-end Processing
總結
以上是生活随笔為你收集整理的speech production model的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Mongoose aggregate 多
- 下一篇: JavaScript高级之ECMAScr