劉 超,莊圣賢
(西南交通大學(xué) 信息科學(xué)與技術(shù)學(xué)院,四川 成都610031)
語(yǔ)音端點(diǎn)檢測(cè)就是從帶有背景噪聲的一段輸入語(yǔ)音中識(shí)別出真實(shí)語(yǔ)音段的端點(diǎn),有效地識(shí)別語(yǔ)音端點(diǎn)不僅可以減少語(yǔ)音信號(hào)后續(xù)處理的計(jì)算量,而且還可以提高語(yǔ)音識(shí)別的正確率。有研究發(fā)現(xiàn)[1],人們說(shuō)話過(guò)程中,有效語(yǔ)音片段持續(xù)時(shí)間大約只占整個(gè)說(shuō)話時(shí)間的40%。在無(wú)音片段中主要以噪聲為主,說(shuō)話人的主要語(yǔ)音信息在有音片段,所以屏蔽各種噪聲的干擾,檢測(cè)出真實(shí)的語(yǔ)音段在現(xiàn)代語(yǔ)音信號(hào)處理中顯得尤為重要。
現(xiàn)代語(yǔ)音端點(diǎn)檢測(cè)技術(shù),主要包括[2]短時(shí)平均過(guò)零率、短時(shí)平均能量值、短時(shí)能頻值、雙門(mén)限法[3]及最近大熱的小波變換及小波熵端點(diǎn)檢測(cè)[4],這些檢測(cè)方法能在一定的噪聲環(huán)境中較為準(zhǔn)確地檢測(cè)出有效的語(yǔ)音段,但在面對(duì)短時(shí)高能量的噪聲的干擾時(shí),會(huì)出現(xiàn)錯(cuò)誤的檢測(cè)。文中介紹一種改進(jìn)式的雙門(mén)限,即通過(guò)雙門(mén)限加上時(shí)間門(mén)限對(duì)高能量的噪聲進(jìn)行檢測(cè)并對(duì)其屏蔽。
根據(jù)漢語(yǔ)發(fā)音的特點(diǎn),漢語(yǔ)每個(gè)字都是單音節(jié),每個(gè)音節(jié)又都是由聲母和韻母拼音而成。漢語(yǔ)音節(jié)末尾都是濁音,用短時(shí)能量就可以較好地判斷一個(gè)詞語(yǔ)的末尾。漢語(yǔ)音節(jié)聲母多是以清輔音開(kāi)始,受到噪聲干擾時(shí),容易被噪聲干擾。
語(yǔ)音端點(diǎn)檢測(cè)方法可以分為時(shí)域分析和頻域分析,前邊提到的短時(shí)平均過(guò)零率、短時(shí)平均能量值、短時(shí)能頻值、雙門(mén)限法都屬于時(shí)域分析。基本思想是在時(shí)間軸上設(shè)置一個(gè)門(mén)限值,讓語(yǔ)音信號(hào)與此門(mén)限值進(jìn)行比較,看其是否超出。而小波變換及小波熵端點(diǎn)檢測(cè)出屬于頻域分析,通過(guò)在頻域上提取語(yǔ)音的特征值進(jìn)行判斷。語(yǔ)音信號(hào)處理主要受噪聲影響有普通的背景噪聲,而高脈沖噪聲又屬于背景噪聲的一種。根據(jù)以上介紹的端點(diǎn)檢測(cè)方法能有效解決背景噪聲問(wèn)題。本文通過(guò)改進(jìn)式雙門(mén)限法,針對(duì)高脈沖噪聲設(shè)置了一個(gè)最短時(shí)間門(mén)限,正確地識(shí)別了有效語(yǔ)音段的起始。
由于其他[5]方法可以有效的解決部分普通噪聲對(duì)語(yǔ)音端點(diǎn)檢測(cè)的影響,所以本文針只對(duì)高脈沖噪聲提出解決方案。
由于語(yǔ)音能量隨時(shí)間變化,清音和濁音之間的能量差別較明顯。通常識(shí)別漢語(yǔ)音節(jié)的末尾發(fā)音。定義n時(shí)刻某語(yǔ)音信號(hào)的短時(shí)平均能量En為
式中,N為窗長(zhǎng),每個(gè)窗長(zhǎng)代表一幀,可見(jiàn)短時(shí)能量為一幀樣點(diǎn)值的加權(quán)平方和。
圖1所示為100~200之間的高脈沖噪聲,短時(shí)能量檢測(cè)法無(wú)法有效屏蔽。
圖1 短時(shí)能量端點(diǎn)檢測(cè)
過(guò)零分析屬于語(yǔ)音時(shí)域分析,是端點(diǎn)檢測(cè)中較簡(jiǎn)單的一種,是指每幀內(nèi)信號(hào)過(guò)零值的次數(shù)。采用短時(shí)平均過(guò)零分析可以在一定程度上反映其頻譜特性,由此可獲得譜特性的一種粗略估計(jì)。短時(shí)平均過(guò)零率定義為
圖2所示說(shuō)明,面對(duì)采樣點(diǎn)100~200之間的高脈沖噪聲,短時(shí)過(guò)零率還是不能有效地被判斷和屏蔽。
將語(yǔ)音信號(hào)經(jīng)過(guò)分幀、加窗,按幀間50%的重疊求FFT變換,得到其某頻率分量fi的能量譜為Ym(fi),則每個(gè)頻率分量歸一化譜概率密度(pdf)函數(shù)定義為
其中,pi為某一頻率的分量i對(duì)應(yīng)的概率密度;N為FFT變換長(zhǎng)度;m為分析某一幀語(yǔ)音。語(yǔ)音的能量頻率主要集中在250~45 000 Hz,為增強(qiáng)pdf區(qū)分語(yǔ)音和非語(yǔ)音段的能力,對(duì)式(4)引入約束條件Y(fi)=0,fi<250 Hz或fi>4 500 Hz??紤]上述約束條件后,每個(gè)分析語(yǔ)音幀的短時(shí)譜熵定義為
利用短時(shí)能量、短時(shí)平均過(guò)零率及最短時(shí)間門(mén)限相互配合,可以實(shí)現(xiàn)較可靠的各種噪聲種類(lèi)中語(yǔ)音端點(diǎn)檢測(cè)。短時(shí)能量和短時(shí)平均過(guò)零率設(shè)置的雙門(mén)限,一個(gè)是比較低的門(mén)限,其數(shù)值較小,對(duì)信號(hào)變化較敏感,容易被超過(guò)。另一個(gè)是較高的門(mén)限,數(shù)值較大,信號(hào)必須達(dá)到一定的強(qiáng)度,該門(mén)限才可能被超過(guò)。根據(jù)這個(gè)特性,低門(mén)限被超過(guò)不一定是語(yǔ)音的開(kāi)始,有可能是背景噪聲引起的。高門(mén)限被超過(guò)也不一定是語(yǔ)音的開(kāi)始,有可能是短時(shí)高能量的噪聲。這時(shí)再設(shè)置一個(gè)最短時(shí)間門(mén)限,其數(shù)值幾乎小于所有說(shuō)話人發(fā)出語(yǔ)音的時(shí)長(zhǎng),如果超過(guò)這個(gè)門(mén)限則可以確定是由于語(yǔ)音信號(hào)引起的。
基于Matlab程序?qū)崿F(xiàn)改進(jìn)式雙門(mén)限法語(yǔ)音端點(diǎn)檢測(cè)算法步驟如下:
(1)對(duì)錄入語(yǔ)音信號(hào)進(jìn)行預(yù)加重、分幀處理,每一幀記為n=1,2,3,…,N,n為離散語(yǔ)音信號(hào)時(shí)間序列,N為幀長(zhǎng)。(2)用式(1)計(jì)算每一幀語(yǔ)音的短時(shí)能量得到語(yǔ)音的每幀能量。(3)用式(3)計(jì)算每一幀語(yǔ)音的過(guò)零率,得到短時(shí)過(guò)零率。(4)首先對(duì)短時(shí)能量值設(shè)置一個(gè)較高的門(mén)限M1以確定是有效語(yǔ)音段,再利用背景噪聲設(shè)置一個(gè)較低的門(mén)限M2以確定有效語(yǔ)音段的濁音段S1開(kāi)始,完成第一級(jí)的起點(diǎn)判斷。再次,在門(mén)限M2對(duì)應(yīng)語(yǔ)音點(diǎn)處S1對(duì)過(guò)零率設(shè)置一個(gè)門(mén)限M3,如果S1處過(guò)零率超過(guò)了門(mén)限M3這說(shuō)明有效語(yǔ)音的清音段在S1前面,就需要向前查找,當(dāng)找到未超過(guò)門(mén)限M3的點(diǎn)S2時(shí),S2后面的一幀就是有效的語(yǔ)音端點(diǎn)起始點(diǎn)。(5)用同樣的方法找到語(yǔ)音的終點(diǎn)S3。(6)最后在時(shí)域上設(shè)置一個(gè)最短時(shí)間門(mén)限T,如果S3-S2<T則說(shuō)明所檢測(cè)出的這個(gè)語(yǔ)音段為高脈沖噪聲,對(duì)其進(jìn)行屏蔽,繼續(xù)下一個(gè)語(yǔ)音段的檢測(cè)。
門(mén)限值選擇對(duì)語(yǔ)音端點(diǎn)檢測(cè)的影響較大,本實(shí)驗(yàn)的門(mén)限值都是通過(guò)查閱資料[6]和大量實(shí)驗(yàn)得到的經(jīng)驗(yàn)值。
圖3是用改進(jìn)式雙門(mén)限確定語(yǔ)音起始端點(diǎn)的示意圖。
圖3 檢測(cè)過(guò)程示意圖
圖中M2為正確的語(yǔ)音起點(diǎn)。
分別采用短時(shí)能量值、短時(shí)過(guò)零率、能頻值、雙門(mén)限、語(yǔ)音譜熵和改進(jìn)雙門(mén)限的端點(diǎn)檢測(cè)技術(shù)對(duì)語(yǔ)音信號(hào)在各種環(huán)境下進(jìn)行實(shí)驗(yàn),并給出了實(shí)驗(yàn)結(jié)果。
在改進(jìn)雙門(mén)限端點(diǎn)檢測(cè)下,由于用時(shí)間門(mén)限對(duì)高脈沖噪聲進(jìn)行了檢測(cè)、屏蔽,所以當(dāng)端點(diǎn)信號(hào)大于所設(shè)置的閾值時(shí),說(shuō)明檢測(cè)到了準(zhǔn)確的語(yǔ)音信號(hào)的端點(diǎn)。
利用Windows自帶的錄音機(jī)錄制語(yǔ)音文件,聲卡完成了語(yǔ)音波形的A/D轉(zhuǎn)換,獲得WAVE文件。實(shí)驗(yàn)設(shè)置錄制的語(yǔ)音信號(hào)采樣頻率為11.025 kHz,16位的單聲道語(yǔ)音信號(hào)。短時(shí)高脈沖噪聲是用鼓掌得到。
通過(guò)實(shí)驗(yàn)可以得出,用雙門(mén)限檢測(cè)可以較為準(zhǔn)確地檢測(cè)出在高脈沖噪聲環(huán)境中語(yǔ)音段的起始點(diǎn)。圖4的最后一列給出了帶有短時(shí)高能量的噪聲的“西南交通大學(xué)”這段語(yǔ)音的各種端點(diǎn)檢測(cè)方法的比較。圖4(a)是原始語(yǔ)音;圖4(b)是短時(shí)平均能量;圖4(c)是短時(shí)平均過(guò)零率;圖4(d)是短時(shí)能頻值;圖4(e)是改進(jìn)式雙門(mén)限;圖4(f)是語(yǔ)音譜熵。
通過(guò)對(duì)圖4的觀測(cè),其他4種本文用到的語(yǔ)音檢測(cè)方法對(duì)高脈沖噪聲都不能有效地識(shí)別和屏蔽。最后設(shè)置了最短時(shí)間門(mén)限的雙門(mén)限法可以準(zhǔn)確地檢測(cè)出語(yǔ)音起點(diǎn)。通過(guò)對(duì)實(shí)驗(yàn)室人員采取語(yǔ)音信號(hào)進(jìn)行試驗(yàn),正確率達(dá)到93%。
圖4 多種端點(diǎn)檢測(cè)方法比較
語(yǔ)音端點(diǎn)檢測(cè)是語(yǔ)音信號(hào)處理的一個(gè)基本步驟,準(zhǔn)確地檢測(cè)語(yǔ)音端點(diǎn)才能更有效、更快速地進(jìn)行語(yǔ)音后續(xù)處理。本文針對(duì)短時(shí)高能量的干擾噪聲,將雙門(mén)限法進(jìn)行改進(jìn),有效地消除了短時(shí)高能量噪聲的干擾。通過(guò)仿真實(shí)驗(yàn)驗(yàn)證得到了較滿意的結(jié)果。
[1] 劉曉明,覃勝,劉宗行,等.語(yǔ)音端點(diǎn)檢測(cè)的仿真研究[J].系統(tǒng)仿真學(xué)報(bào),2005,17(8):1974-1976.
[2]HE Qiang,ZHANG Youwei.On prefiltering and endpoint detection of speech signal[C].1998 Fourth International Conference on Signal Processing Proceedings,ICSP'98,1998,1:749-752.
[3] 路青起,白燕燕.基于雙門(mén)限兩級(jí)判決的語(yǔ)音端點(diǎn)檢測(cè)方法[J].電子科技,2012,25(1):13-15.
[4] 邱文武,蔣建中,郭軍利.基于小波能量熵的語(yǔ)音端點(diǎn)檢測(cè)算法[J].計(jì)算機(jī)應(yīng)用與軟件,2011,28(2):227-228.
[5] 韓韜.基于強(qiáng)背景噪聲下的語(yǔ)音端點(diǎn)檢測(cè)算法及實(shí)現(xiàn)[D].長(zhǎng)沙:湖南大學(xué),2007.
[6] 劉永紅.說(shuō)話人識(shí)別系統(tǒng)的研究[D].成都:西南交通大學(xué),2003.