柏 順,顏夕宏,張生平,陳建飛,張 勝
(1.南京郵電大學(xué)電子與光學(xué)工程學(xué)院,江蘇 南京 210023)(2.南京梧桐微電子科技有限公司,江蘇 南京 210023)
語(yǔ)音端點(diǎn)檢測(cè)(voice activity detection,VAD)是指在一段語(yǔ)音信號(hào)中區(qū)分出話(huà)音段和無(wú)話(huà)音段,并標(biāo)出起點(diǎn)和終點(diǎn),其本質(zhì)上是尋求能夠區(qū)分話(huà)音段和噪音段的特征參數(shù)來(lái)對(duì)其進(jìn)行準(zhǔn)確劃分[1]. VAD是語(yǔ)音信號(hào)處理領(lǐng)域中至關(guān)重要的一環(huán),其性能優(yōu)劣直接影響語(yǔ)音系統(tǒng)的處理性能. 在低信噪比環(huán)境下,噪音會(huì)對(duì)語(yǔ)音特征參數(shù)的提取結(jié)果造成極大干擾,從而導(dǎo)致檢測(cè)準(zhǔn)確率大幅下降[2-4]. 優(yōu)秀的VAD算法可以降低處理時(shí)間、適應(yīng)各種復(fù)雜的噪聲環(huán)境,因此對(duì)之進(jìn)行深入研究具有較高的實(shí)用價(jià)值.
語(yǔ)音端點(diǎn)檢測(cè)的方法有兩類(lèi):一是針對(duì)語(yǔ)音的特征參數(shù)來(lái)討論的,如能零比[5]、譜熵[6]、頻帶方差[7]、自相關(guān)函數(shù)的主次峰值比等,其中短時(shí)能量對(duì)噪音的敏感度較高,因此常被作為輔助參數(shù)使用[8-9];二是基于模型基礎(chǔ),主要方法有支持向量機(jī)[10]和神經(jīng)網(wǎng)絡(luò)[11]等. 然而,雖然已有大量VAD算法被提出,但在低信噪比環(huán)境中VAD準(zhǔn)確率仍然較低.
有學(xué)者[12]指出MFCC的第一分量的絕對(duì)值占據(jù)了很高的比重,且具有語(yǔ)音追蹤的能力,文章中將其提取并結(jié)合譜熵進(jìn)行端點(diǎn)檢測(cè),得到了較高的VAD準(zhǔn)確率(約提高了20%). 本文發(fā)現(xiàn)MFCC的前3個(gè)分量均具有語(yǔ)音追蹤能力,為了提高特征參數(shù)在端點(diǎn)檢測(cè)中的敏感度,提出將MFCC敏感度較大的3個(gè)分量的絕對(duì)值進(jìn)行累加,再與短時(shí)能量進(jìn)行相比,得到的結(jié)果作為端點(diǎn)檢測(cè)的特征參數(shù)(梅爾能量比,記為MFRE),最后利用模糊C均值聚類(lèi)算法和雙門(mén)限法進(jìn)行端點(diǎn)檢測(cè)[13]. 本文從TIMIT語(yǔ)音庫(kù)選取語(yǔ)音并使用NOISE_92噪聲庫(kù)中不同類(lèi)型噪聲進(jìn)行加噪處理,之后對(duì)帶噪語(yǔ)音進(jìn)行端點(diǎn)檢測(cè). 仿真結(jié)果表明,本算法在5 dB、0 dB、和-5 dB的噪聲環(huán)境下,較傳統(tǒng)的MFCC倒譜距離、能零比、譜熵等算法有較高的識(shí)別準(zhǔn)確率.
梅爾頻率倒譜系數(shù)的分析是基于人的聽(tīng)覺(jué)機(jī)理,即依據(jù)人的聽(tīng)覺(jué)實(shí)驗(yàn)結(jié)果來(lái)分析語(yǔ)音的頻譜,期望能獲得好的語(yǔ)音特性[14]. 以Mel為單位的感知頻率Fmel與實(shí)際頻率f的具體關(guān)系表示如下
Fmel=1 125log(1+f/700).
(1)
語(yǔ)音信號(hào)s(n)經(jīng)過(guò)加窗函數(shù)ω(n)分幀處理后得到y(tǒng)i(n),其中i表示分幀后的第i幀.則yi(n)滿(mǎn)足:
yi(n)=ω(n)*x((i-1)*inc+n), 1≤n≤L, 1≤i≤fn,
(2)
式中,ω(n)為窗函數(shù),一般為矩形窗或漢明窗,L為幀長(zhǎng),inc為幀移長(zhǎng)度,fn為分幀后的總幀數(shù).
(1)對(duì)每一幀信號(hào)進(jìn)行FFT變換,從時(shí)域數(shù)據(jù)轉(zhuǎn)變?yōu)轭l域數(shù)據(jù):
X(i,k)=FFT[yi(n)].
(3)
(2)對(duì)每一幀F(xiàn)FT后的數(shù)據(jù)計(jì)算譜線(xiàn)的能量:
E(i,k)=[X(i,k)]2.
(4)
式中,i表示第i幀,k表示頻域中的第k條譜線(xiàn).
(3)將第i幀語(yǔ)音信號(hào)的能量譜E(i,k)通過(guò)Mel濾波器并求和,得到的能量S(i,m):
(5)
在頻域中相當(dāng)于把每幀的能量譜E(i,k)與Mel濾波器的頻域響應(yīng)Hm(k)相乘并相加,m是指第m個(gè)Mel濾波器.
(4)把Mel濾波器的能量取對(duì)數(shù)后進(jìn)行離散余弦變換,即可得每一幀的MFCC倒譜系數(shù):
(6)
式中,n是離散余弦變換(DOC)后的譜線(xiàn).
MFCC(i,n)是一個(gè)i*m維矩陣,i是語(yǔ)音信號(hào)幀數(shù),m是濾波器個(gè)數(shù).文獻(xiàn)[12]將第一個(gè)濾波器的MFCC系數(shù)定義為MFCC的第一分量,現(xiàn)用MFCC1(i)表示,MFCC1(i)實(shí)際上是一個(gè)i*1維數(shù)組,并對(duì)語(yǔ)音有跟蹤能力,圖1給出了信噪比為0 dB環(huán)境下MFCC的前四分量與語(yǔ)音段(直線(xiàn)開(kāi)始,虛線(xiàn)結(jié)束)的波形.
圖1 MFCC前4分量與語(yǔ)音段比對(duì)圖Fig.1 Comparison between the first four components of MFCC and speech segments
從圖1可以用肉眼看到不僅第一分量具有語(yǔ)音追蹤能力,第二、三分量的波形走勢(shì)和語(yǔ)音起點(diǎn)、話(huà)音段、終點(diǎn)模糊對(duì)應(yīng),但是第四分量的波形開(kāi)始紊亂不具備這一特性應(yīng)舍棄.由于第一分量的幅值均為負(fù)數(shù),第二、三分量的幅值絕大多數(shù)為負(fù)數(shù),可將第二、三的波形向下平移至其幅值的最大值為零,保證所有的MFCC均為負(fù)值. 然后,將每一幀所對(duì)應(yīng)的三個(gè)濾波器MFCC系數(shù)取絕對(duì)值后再相加,記為MFCCa(i):
MFCCa(i)=|MFCC1(i)|+|MFCC2(i)|+|MFCC3(i)|.
(7)
此時(shí),MFCCa(i)是一個(gè)i*1 維數(shù)組,i是幀數(shù).
由于語(yǔ)音信號(hào)的能量隨時(shí)間而變化,清音和濁音之間的能量差別相當(dāng)顯著.因此對(duì)短時(shí)能量進(jìn)行分析,可以描述語(yǔ)音的這種特征變化情況.計(jì)算第i幀語(yǔ)音信號(hào)的短時(shí)能量公式為:
(8)
短時(shí)能量在話(huà)音段的數(shù)值較高,在噪音段的數(shù)值較低,依據(jù)短時(shí)能量可以在高信噪比下區(qū)分話(huà)音段和噪音段以及在低信噪比作為輔助參數(shù)結(jié)合其他特征參數(shù)進(jìn)行端點(diǎn)檢測(cè).
雖然MFCCa(i)可以很好地區(qū)分有話(huà)段和噪音段,對(duì)話(huà)音段的敏感程度較高,但是在低信噪比環(huán)境下效果大打折扣,無(wú)法單獨(dú)作為語(yǔ)音特征參數(shù)進(jìn)行端點(diǎn)檢測(cè).針對(duì)這一問(wèn)題,本文將MFCCa(i)與短時(shí)能量結(jié)合,提出梅爾能量比進(jìn)行端點(diǎn)檢測(cè).MFCCa(i)的幅值在話(huà)音段低于噪音段;而能量的幅值在話(huà)音段高于噪音段,可將MFCCa(i)與能量逐幀相比得到梅爾能量比:
MFRE(i)=MFCCa(i)/E(i).
(9)
理論上梅爾能量比的值在話(huà)音段的值小于噪音段.仿真結(jié)果如圖2(例句為一段男聲“藍(lán)天,白云,碧綠的大?!?信噪比5 dB).
圖2 信噪比5 dB環(huán)境下梅爾能量比與語(yǔ)音對(duì)應(yīng)關(guān)系圖Fig.2 MFRE and speech correspondence graph in SNR 5 dB
可以看出梅爾能量比更加突出了話(huà)音段和噪音段的差異,且在噪音段的波形平穩(wěn)整齊,可以作為端點(diǎn)檢測(cè)的特征參數(shù).
上文中提出了使用梅爾能量比進(jìn)行端點(diǎn)檢測(cè)具有一定的優(yōu)越性和可行性.但是使用雙門(mén)限法還需要進(jìn)行閾值的確定.模糊C均值聚類(lèi)(fuzzy C-means clustering,FCMC)算法在眾多模糊聚類(lèi)算法中是應(yīng)用最廣泛且成功的[15],可用該算法可將帶噪語(yǔ)音的特征參數(shù)分為兩類(lèi),并根據(jù)聚類(lèi)中心的數(shù)值center進(jìn)一步確定閾值并對(duì)其進(jìn)行端點(diǎn)檢測(cè),雙門(mén)限法的高低閾值TH與TL可由下公式求得:
(10)
式中,α與β為經(jīng)驗(yàn)參數(shù);實(shí)驗(yàn)數(shù)據(jù)表明,隨著信噪比的增加聚類(lèi)中心center1與center2的數(shù)值差距成倍的增加,因此,可以根據(jù)兩個(gè)聚類(lèi)中心的差距調(diào)整α與β的數(shù)值,進(jìn)而達(dá)到自適應(yīng)調(diào)整高低閾值的目的.
在端點(diǎn)檢測(cè)的過(guò)程中會(huì)出現(xiàn)將話(huà)音幀誤檢成噪音幀的情況和噪音幀錯(cuò)檢成話(huà)音幀的情況[16].本文在計(jì)算準(zhǔn)確率的時(shí)候同時(shí)考慮了這兩種情況,計(jì)算步驟如下:
(1)設(shè)語(yǔ)音信號(hào)共有X幀.(2)共有P幀話(huà)音幀誤檢成噪音幀,共有Q幀噪音幀錯(cuò)檢成話(huà)音幀.(3)準(zhǔn)確率S=1-(P/X+Q/X).
從TIMIT語(yǔ)音庫(kù)選取50條語(yǔ)音信號(hào)并從NOISE_92噪聲庫(kù)選取不同類(lèi)型的噪音對(duì)其加噪,最后對(duì)帶噪語(yǔ)音進(jìn)行端點(diǎn)檢測(cè). 測(cè)試語(yǔ)音的平均時(shí)長(zhǎng)為3 s,話(huà)音段約為8段. 梅爾能量比(MFRE)的檢測(cè)結(jié)果的準(zhǔn)確率與傳統(tǒng)的MFCC倒譜距離檢測(cè)方法、能零比(EZR)、譜熵(SE)進(jìn)行比對(duì),結(jié)果如表1所示.
表1 端點(diǎn)檢測(cè)準(zhǔn)確率比較Table 1 Comparison of VAD
從仿真結(jié)果可以看出,使用梅爾能量比在不同類(lèi)型的噪音下進(jìn)行的端點(diǎn)檢測(cè)都表現(xiàn)出優(yōu)越的性能. 傳統(tǒng)的MFCC倒譜距離檢測(cè)方法會(huì)在信噪比為-5 dB失效,而梅爾能量比仍然保持較高的準(zhǔn)確率,且高于對(duì)照位30%左右. 說(shuō)明本算法在低信噪比環(huán)境下能較好地實(shí)現(xiàn)語(yǔ)音端點(diǎn)檢測(cè),具有良好的抗噪性和魯棒性.
本文分析了MFCC倒譜距離前3分量具有語(yǔ)音跟蹤的特性,結(jié)合短時(shí)能量提出了以梅爾能量比作為語(yǔ)音特征參數(shù)的端點(diǎn)檢測(cè)算法. 實(shí)驗(yàn)結(jié)果表明,本方法在瀑布、下雨、機(jī)艙運(yùn)轉(zhuǎn)等復(fù)雜噪聲環(huán)境中,和在低信噪比情況下,其VAD準(zhǔn)確率較傳統(tǒng)MFCC倒譜距離等方法均有較大的提升.
在實(shí)驗(yàn)中發(fā)現(xiàn),會(huì)出現(xiàn)對(duì)比較明顯的話(huà)音幀漏檢和有規(guī)律的噪音幀誤檢的情況. 這是因?yàn)椴煌脑胍舡h(huán)境,導(dǎo)致高低閾值并不是一直處于最佳值. 后期可以針對(duì)這一問(wèn)題進(jìn)行進(jìn)一步討論.