一、引言
從20世紀90年代開始,人類開始進入信息社會,也稱信息化社會。信息作為繼物質和能源之后的第三資源,在商業發展中起著主導作用。語音是人們交流信息的主要手段之一,用數字化的方法進行語音的傳送、存儲、識別、合成等構成了目前商業應用中最重要、最基本的組成部分之一。也正因為信息化社會的高速發展,媒介資源、存儲資源也就顯得更加寶貴。因此,壓縮語音信號的傳輸帶寬一直是人們追求的目標。在貝爾實驗室的Homer Dudley于1939年發明了第一個聲碼器之后,語音壓縮編碼技術進入了一個新的時代。CCITT已經制訂了幾個國際化的語音編碼標準,這些標準規范并推動了語音編碼的研究,但是也可以看出這些標準的編碼速率都比較高;而美國聯邦標準LPC-10以及LPC-10e盡管能夠在2.4kbps合成出清晰可懂的語音,但合成語音在自然度等方面并不令人滿意。MELP是Alan V. McCree等人提出的,是在原來LPC基礎上,吸收了多帶激勵以及原型波形內插等編碼方法的思想發展起來的,使得編碼方法更好的利用語音的發音機制,可以在低速率下得到較高質量的語音。
二、LPC方法的缺點及MELP方法概述
混合激勵模型主要是在二元激勵的基礎上,針對二元激勵模型存在的一些問題做了相應的改進。由于二元激勵模型中濁音采用周期脈沖作為激勵,清音采用白噪聲作為激勵,所以它具有很多的缺點:
1.語音分類太粗糙,激勵信號只有兩種選擇,要么是隨機噪聲,要么是周期性的脈沖。但人的發聲器官并沒有那么簡單,實際情況是在大多數語音幀中既含有濁音成分又含有清音成分,把既含有濁音又含有清音的語音幀按周期性激勵源合成,非周期能量沒有得到恢復,主觀聽覺上會感覺合成語音有明顯的“嗡嗡”聲;反過來,如果將含有濁音的激勵源按噪聲激勵源合成,聽起來就會感覺語音嘶啞。
2.在一幀內采用固定的基音周期不能精確的描述語音激勵。由于語音信號的時變特性,即使是在一幀語音內,基音周期也并非一成不變的。把一幀合成語音的周期作為固定值處理進行語音合成的時候,會失去原始語音的周期性,引入過強的周期性,造成蜂鳴聲。
3.在濁音的時候采用簡單的周期信號不能刻畫激勵信號的形狀,會失去很多說話人的特征。這是因為在每個周期內不僅只有一個主脈沖,還有很多輔助的脈沖,這些脈沖對體現說話人的特征和提高自然度是很重要的,而二元激勵的方法則忽略了這些信息。
由于上面的原因,經典二元激勵LPC聲碼器的合成語音可以使人明白談話的內容,但是它的自然度很差,帶有很重的金屬聲和卡嚓聲,難以辨別說話人,主觀聽覺質量不好。
鑒于上面LPC模型中存在的一些缺陷,在后來的ME模型中有針對性的進行了改進。對于LPC中對語音的分類和激勵過于簡單的問題,ME模型采用了周期脈沖和白噪聲的混合激勵;對于幀內基音周期的時變特性,把語音分為濁音、清音和抖動濁音,對于抖動濁音采用了非周期的脈沖激勵;針對二元激勵LPC忽略了激勵信號的形狀信息,在ME模型中編碼了激勵信號的傅立葉譜的幅度。而且,ME模型還加入了脈沖散布濾波器和自適應譜增強濾波器來提高語音質量,下面我們就來看一下ME模型中的幾個新特征。
三、MELP方法中的新特征
1.混合脈沖和噪聲激勵。MELP算法采用多帶混合激勵模型。語音被分為5個固定的頻帶0Hz~500Hz,500Hz~1000Hz,1000Hz~2000Hz,2000Hz~3000Hz, 3000Hz~4000Hz,在每個子帶上分別對語音進行濁音強度(Voice strength)的計算,依據其濁音強度和基音搜索的結果來判斷該子帶語音是清音、濁音還是抖動濁音。合成時,根據各子帶的屬性和濁音強度對通過該子帶濾波器的噪聲、周期脈沖和非周期脈沖進行加權求和,作為激勵。采用混合激勵,可以減少合成語音中的蜂鳴聲。
2.非周期脈沖。混合脈沖和噪聲激勵可以消除LPC聲碼器的嗡嗡聲,但是總是無法消除一些孤立的,短暫的音調,會產生一些類似電流聲的單音噪聲。這是由于在清/濁的過渡段聲門脈沖不是很穩定,從而導致激勵沒有嚴格的周期性。在過去的LPC方法中,這些都是當作濁音來處理,從而會引進一些很奇怪又很刺耳的音調。在ME模型中,針對這個問題,對基音周期進行抖動,抖動的幅度服從以基音幅度的±25%為上下限的均勻分布。這樣就打破了激勵信號的嚴格的周期性,很好的描述了在聲門激勵不穩定的時候產生的脈沖的特性。
由于這種抖動如果加在強濁音幀的激勵中的話,就會破壞語音的周期性,也就是破壞了該幀激勵的惟一的參數——基音周期,會使得語音質量急劇變壞,這也是引入抖動濁音這一分類的根本原因。所以要準確的判斷,是否可以加抖動,這可以通過計算語音幀的自相關和多峰度來決定。
多峰度的大小描述了峰值是否明顯。
3.余量信號的傅立葉譜幅度。我們知道各種對語音信號的激勵的編碼方法,包括多脈沖、碼激勵、二元激勵等都是為了更好的描述余量信號的信息。在濁音中,余量信號所包含的信息量要遠遠少于原始語音信號,首先在幅度范圍上就小于原始語音信號;而且包含較少的幾個脈沖,形狀上也要比原始語音信號要簡單的多。但是,余量信號也是有一定形狀的。如果只是采用周期性的脈沖作為激勵,雖然可以描述余量信號的周期性信息,卻失去了余量信號的形狀信息,這就導致合成語音質量的下降。
從時域來描述余量信號的形狀信息是比較困難的,因為對于按周期合成的語音來說,周期內的余量信號的長度不定,這就會給量化帶來很大的麻煩,所以可以從頻域來描述余量信號的形狀信息。在ME模型中,采用對各基音周期諧波處的傅立葉級數幅度進行量化的方法來描述余量信號的形狀信息。通過這種方法可以改善LPC合成語音中語音嘶啞等弱點,而且提高了抗噪聲的性能。
4.自適應譜增強。為了使合成語音的頻譜能夠在共振峰所處的頻帶與原始的語音信號匹配得更好, 我們引入自適應譜增強。這是因為從時域看,合成語音兩個主激勵之間會衰減的比自然語音要大的多;而從頻域看,LPC濾波器的共振峰要比自然語音的共振峰要緩和。為了解決這個問題, 我們引入了自適應譜增強濾波器。它是一個零極點濾波器, 由兩部分組成。第一部分是一個全極點的濾波器, 用來增加每個共振峰的帶寬,由LPC濾波器在每個 前面乘以一個因子A=0.8得到;第二部分是為了減小前面全極點濾波器的低通效應而引入,為一個全零點的濾波器, 由LPC濾波器在每個 前面乘以一個因子A=0.5后求倒數得到,可以使處于波谷的信號值有所提升。傳輸函數可以寫為:
5.散布脈沖。為了改善在非共振峰頻率處合成語音與原始語音的匹配,ME模型引入了散布脈沖濾波器。在濁音中,每個基音周期并不只是一個主脈沖,聲門關閉不完全會產生很多的次要脈沖,引入這個濾波器的目的就是要對合成語音作時域擴展處理,將集中的脈沖激勵能量散布開,增加語音的平滑性。ME模型中采用的濾波器的系數可以通過對三角脈沖做DFT變換,然后去除掉低頻部分,進行歸一化處理后再進行IDFT變換即可得到。
四、編碼器算法仿真及結果分析
對上述的編碼算法用Matlab在PC機上進行模擬,原始語音與合成語音的波形(如圖1所示)。
對同一段語音的2.4kbps的LPC、4.8kbps的CELP、2.4kbps的MELP合成語音進行MOS得分測試(如圖2所示),可以發現,在2.4kbps的速率下MELP可以得到在主觀聽音方面與4.8kbps的CELP相近的合成語音。
五、MELP在商業規范化服務中的應用
語音處理技術在人工智能研究領域一直占有重要的地位,而商業管理、服務的智能化、信息化是未來的一種趨勢,所以MELP技術可以廣泛的應用于商業服務領域。例如,自動客戶服務的提出大大降低了各商業企業的客戶服務人工費用,但是由于語音技術的落后,這種自動客戶服務只限于語音提示級別,而不能與人交流。MELP技術可以降低單位語音的存儲空間,大大節省了存儲設備成本,使智能化、規范化的客戶服務成為現實。
另外,MELP技術還可以應用于商場語音答疑系統、語音提示系統、語音密碼系統等方面,可以在節省人工成本的基礎上,提高客戶服務質量。