白 瑜
山西大學工程學院計算機工程系,山西太原 030013
我們發現依據人類聲音產生的機制,由于激勵方式的不同會形成清音和濁音兩種不同的語音。由這兩種語音又可以組合成兩種不一樣音素:元音及輔音。構成語音的最小單位是音素。元音由不相同的口腔形狀發聲而形成,輔音的形成由發聲的部位以及發聲的方法決定。
音節是構成漢語的最小單位。我們所說的音節指的是一個元音加上一或兩個輔音所構成的音素的組合。漢語當中包括以下4種音節,即:元音、元音+輔音、輔音+元音,輔音+元音+鼻音。一般漢語可以簡單劃分為聲母+韻母兩個部分。音節前部分的輔音稱之為聲母,元音和元音后面有時候出現的鼻音稱之為韻母。漢語可認為是一種聲調語言,根據聲調的不同所表達的意思很可能完全不一樣,漢語共有陰平、陽平、上聲及去聲四種聲調。而聲調的變化可以看成濁音周期的變化。聲調曲線從韻母起始點至韻母的終止點。
語音的產生是因為聲道激勵發生共振,因為發聲過程中聲道是振動的,所以能夠用一個時變線性系統來描述。可以用如圖1所示描述語音生成模型。

圖1 語音信號生成模型
由圖1可知一個完整的語音信號模型由激勵模型、聲道模型、及輻射模型三個子模型串聯而成。激勵模型由濁音激勵與清音激勵組成。對清音部分來說,激勵信號等同于白噪聲,而對于濁音部分來說,因為聲帶在不斷地張開與閉合,所以會有間隙性的脈沖波產生。共振峰模型是當前廣泛使用的一種聲道模型。聲道的終端是人類口與唇,速度波通過聲道輸出,然而語音信號是一種聲壓波。
為了得到我們所需要的信號,須先對模擬語音信號進行數字化,接著進行預處理與加窗。
為將模擬語音信號轉變為數字信號,先對信號進行采樣與量化。在采樣與量化之前,須進行語音信號的預濾波,其目的在于:第一,濾除高頻噪聲;第二,防止50Hz的工頻干擾。
因為語音信號的平均功率受到鼻輻射以及聲門激勵的很大影響,因此在語音信號頻譜的求取時,隨著頻率的增高相應的響應成分越小,也就是說高頻部分頻譜比起低頻部分來不夠精確,為此我們需要對信號進行預加重。為了平滑頻域信號,使得信號處理的后面階段對有限長響應不那么敏感,通常情況下讓數字語音信號通過一個低階的系統。目前廣泛使用的是固定的一階數字濾波器,即

式中a為預加重系數,通常取值0.95左右。
因為語音信號的特性是隨時間變化的,而非平穩過程,但由于人的發音器官的肌肉運動速度比較慢,因此可以認為語音信號是個局部的短時平穩的信號。因此,我們對對語音信號進行分幀加窗的處理。通常情況下語音信號幀長取為10ms~30ms,每秒幀數約為33~100,分幀可以是連續的,有可以是交疊分段的,在語音信號的分析當中常用“短時分析”來表述。我們一般采用窗函數來乘語音信號,常用的窗函數是Hamming窗。
Hamming窗函數是:

端點檢測指的是找出語音信號中的各段落的起始點以及終止點的位置。語音信號的時域處理方法包括:短時平均幅度、短時能量、短時過零率以及短時自相關。端點檢測一般要用到語音信號的短時能量以及短時平均過零率兩中參數。
用En來表示第m幀的短時能量,其計算式如下:

短時平均幅度M n的計算式如下:

短時能量En的最主要作用是:區分清音與濁音、區分聲母與韻母的分界、無聲與有聲的分界、連字的分界以及能夠用于進行語音識別。
“過零率”指的是在單位時間內信號通過零的次數。短時過零率z(m)是用來描述頻譜的簡單有效的方法之一,計算公式如下:

在短時處理技術中,描述一個隨機信號的其中一個重要特征是自相關函數Rn,可以用自相關函數區分清音與濁音,計算公式如下:

短時頻域處理作為語音信號處理的基本方法之一。短時頻域處理適合緩慢變化的語音信號。第m幀的短時傅立葉變換計算式
如下:

在完成語音信號的預加重、分幀、及端點檢測之后,下一步關鍵的是提取特征參數。我們不可能直接識別原始波形,語音信號需要經過變換,提取出其特征參數后再進行識別,特征參數需要滿足:反映語音的本質、參數個分量之間耦合盡量小、參數的提取方便等幾方面的要求。目前語音識別中線性預測倒普參數LPCC、美爾倒普參數MFCC使兩種較為常用的參數。LPCC利用線性預測編碼技術求取倒普參數。MFCC則構造人的聽覺模型,以語音信號經過該模型的輸出值作為聲學特征,直接利用離散傅里葉變換得到。
線性預測分析是語音特征分析方法之一,能夠有效的解決短時語音信號的模型化問題。LPCC的基本原理:語音信號的每個樣值可以通過過去的若干個值的線性組合逼近求得,也能夠用實際語音信號的抽樣與線性預測的均方差值最小的方式,求出一組預測值。

其中a為加權系數,p為線性預測倒普參數的預測階數。
LPCC系數表示的是語音信號頻譜極值點的變化,用該系數來表征語音信號,能夠獲得比較平滑的語音頻譜圖。
MFCC參數與LPCC參數不同,它考慮了人耳的聽覺特性,先將頻譜轉變為美爾頻標的非線性頻譜,接著再轉換到倒普域上。因為MFCC比較地充分考覺特性,所以MFCC參數有很好的識別性能與抗噪能力。由測試可得,MFCC參數性能在漢語語音識別中要明顯優于LPCC參數,由于人類在對1 000Hz頻率以上的聲音的感知能力并不遵循通常的線性關系,它遵循的是對數頻率坐標上的線性關系。
MFCC計算步驟如下:

圖2 MFCC計算過程
首先,語音信號在經過預處理、分幀加窗后轉變為短時信號,經過FFT變換將x(n)轉化為X(m),并計算出其短時能量譜P(f)。在將P(f)在頻率軸上的頻譜轉化為在美爾坐標上的P(M)。接著在美爾頻域內將在美爾坐標上加入三角帶通濾波器得到濾波器組Hm(K),再計算美爾坐標上的能量譜P(M)通過該濾波器組的輸出值。最后在美爾刻度譜上能夠采取修改的離散余弦反變換來求取美爾倒普參數:

式中,p為MFCC階數。
本文主要介紹了語音學的基礎知識、語音信號的數字化及其特征提取,為語音模型的訓練做了很好的鋪墊。在計算機普及的今天能夠讓計算機識別出人的自然語言是人們一直努力的一個方向,對計算機直接用語言信息發號施令,我們的雙手才能真正得到解放。
[1]胡航.語音信號處理.2版.哈爾濱:哈爾濱工業大學出版社,2002:256.
[2]劉幺和,宋庭新.語音識別與控制應用技術.北京:科學出版社,2008:201.
[3]易克初.語音信號處理.北京:國防工業出版社,2000,14:363.
[4]李波,王成友,楊聰,等.基于語音頻譜包絡抽取的MFCC算法.長沙:國防科技大學學報,2004.
[5]桂蘋,吳鎮揚,趙力,等.基于VQ的說話人自動識別系統的實現[D].東南大學,2003.