王彪
(寶雞文理學(xué)院 數(shù)學(xué)系,陜西 寶雞 721013)
近些年來(lái),語(yǔ)音信號(hào)處理技術(shù)已經(jīng)發(fā)展的相當(dāng)成熟。對(duì)語(yǔ)音信號(hào)進(jìn)行各種分析處理之前,要首先從原始語(yǔ)音信號(hào)中找到有用的語(yǔ)音成分,即要確定有音段和無(wú)音段,這也正是語(yǔ)音端點(diǎn)檢測(cè)工作的任務(wù)。因此,語(yǔ)音端點(diǎn)檢測(cè)是語(yǔ)音分析、語(yǔ)音合成和語(yǔ)音識(shí)別等語(yǔ)音信號(hào)處理中的最初始、最基本的環(huán)節(jié),也是最重要的環(huán)節(jié)[1]。
目前,比較常用的端點(diǎn)檢測(cè)方法大多是傳統(tǒng)方法,這些方法在較高的信噪比下均能給出較高的檢出率,但是在低信噪比下卻不夠理想[2]。比如:基于短時(shí)能量的方法,基于短時(shí)過(guò)零率的方法,其中,前者在背景噪聲較小時(shí)較為有效,而后者在背景噪聲較大時(shí)較為有效。
為了能夠較為準(zhǔn)確的檢查語(yǔ)音,以提高語(yǔ)音識(shí)別率,本文提出了一種改進(jìn)的語(yǔ)音端點(diǎn)檢測(cè)方法。在傳統(tǒng)基于能量和過(guò)零率的端點(diǎn)檢測(cè)方法基礎(chǔ)上,再加入第三道門(mén)限——近似熵,即通過(guò)每幀信號(hào)的近似熵進(jìn)一步區(qū)分有音段和無(wú)音段。最后通過(guò)仿真實(shí)驗(yàn)加以驗(yàn)證,改進(jìn)的方法取得了較好的檢測(cè)效果。
基于能量和過(guò)零率的端點(diǎn)檢測(cè)方法把語(yǔ)音短時(shí)能量和過(guò)零率結(jié)合起來(lái),利用二者進(jìn)行檢測(cè)。該方法采用兩級(jí)判別法,首先用語(yǔ)音的短時(shí)能量E判別,在此基礎(chǔ)上再用過(guò)零率進(jìn)行第二次判別。做第一級(jí)判別時(shí),通常采用雙門(mén)限方法。如圖1所示,根據(jù)短時(shí)能量首先選擇一個(gè)較高的門(mén)限R1,信號(hào)的能量大多在門(mén)限R1之上??芍赫Z(yǔ)音的起始位置和終止位置在該門(mén)限與短時(shí)能量包絡(luò)交點(diǎn)所對(duì)應(yīng)的時(shí)間間隔之外(即AB段向外)[3]。然后根據(jù)噪聲平均能量確定一個(gè)較低的門(mén)限R2,找到短時(shí)能量包絡(luò)與門(mén)限R2的兩個(gè)交點(diǎn)C和D,而CD段就是所判定的語(yǔ)音段。接下來(lái)作第二級(jí)判別,這次以短時(shí)平均過(guò)零率Z為依據(jù),從CD段之外的信號(hào)段去搜索短時(shí)平均過(guò)零率包絡(luò)與某個(gè)門(mén)限M3的交點(diǎn)E、F,如圖2所示。E和F就是語(yǔ)音段的起始位置和終止位置。
圖1 基于短時(shí)能量端點(diǎn)檢測(cè)原理Fig.1 Endpoint detection principle based on short time energy
近似熵(Approximate entropy,簡(jiǎn)稱 ApEn)是最近發(fā)展起來(lái)的一種度量序列的復(fù)雜性和統(tǒng)計(jì)量化的規(guī)則。它是在20世紀(jì)90年代初由Pincus為了克服混沌現(xiàn)象中求解熵的困難提出的。Pincus給出的近似熵的定義及計(jì)算方法如下[4]:
圖2 基于短時(shí)過(guò)零率端點(diǎn)檢測(cè)原理Fig.2 Endpoint detection principle based on the short-time zero-crossing rate
1)給定長(zhǎng)為N點(diǎn)的時(shí)間序列u:u(1),u(2),…,u(N),按順序組成m維矢量X(i):X(i)=[u(i),u(i+1),…,u(i+m-1),i=1~N-m=1]。 對(duì)每一個(gè)i計(jì)算矢量X(i)與其余矢量X(j)之間的距離:
2)給定閾值r>0,統(tǒng)計(jì)d[X(i),X(j)]≤r的數(shù)目及此數(shù)目與矢量個(gè)數(shù)N-m+1 的比值,記作(r),先將(r)取對(duì)數(shù),再求其對(duì)所有i的平均值,記作 φm(r),即
實(shí)際應(yīng)用中,對(duì)數(shù)據(jù)的采樣點(diǎn)數(shù)不可能達(dá)到N→∞,可以根據(jù)有限長(zhǎng)N個(gè)采樣點(diǎn)ApEn(m,r)對(duì)進(jìn)行估計(jì):
近似熵本質(zhì)上是確定一個(gè)時(shí)間序列的復(fù)雜程度,它反映了當(dāng)維數(shù)m發(fā)生變化時(shí),時(shí)間序列產(chǎn)生新模式的概率的大小。
在噪聲背景下,基于短時(shí)能量和過(guò)零率的端點(diǎn)檢測(cè)方法效果有限,不能較準(zhǔn)確的檢測(cè)語(yǔ)音信號(hào)。為提高檢測(cè)率,本文提出了改進(jìn)的譜熵端點(diǎn)檢測(cè)方法,即在短時(shí)能量和短時(shí)過(guò)零率兩級(jí)門(mén)限的基礎(chǔ)上,加入了第三級(jí)門(mén)限——近似熵,以能更好的完成檢測(cè)任務(wù)。文中改進(jìn)的端點(diǎn)檢測(cè)方法步驟如下:
1)先將語(yǔ)音信號(hào)用加窗分幀,得到第i幀語(yǔ)音為s(n,i)。
2)計(jì)算每幀信號(hào)短時(shí)能量,設(shè)置第一級(jí)門(mén)限R1。
3)計(jì)算每幀信號(hào)短時(shí)平均過(guò)零率,設(shè)置第二級(jí)門(mén)限R2。
4)計(jì)算每幀信號(hào)近似熵,設(shè)置第三級(jí)門(mén)限R3。對(duì)語(yǔ)音信號(hào)進(jìn)行三級(jí)門(mén)限檢測(cè)。
下面通過(guò)MATLAB軟件進(jìn)行試驗(yàn)仿真,以驗(yàn)證文中方法的有效性和優(yōu)越性。
用普通計(jì)算機(jī)麥克風(fēng)錄入說(shuō)話人的語(yǔ)音,將其保存為.wav文件,以漢語(yǔ)拼音ang的.wav文件為例,進(jìn)行說(shuō)明。首先對(duì)給語(yǔ)音ang以randn函數(shù)加入隨機(jī)噪聲,然后分別用基于短時(shí)能量、基于過(guò)零率和本文的方法對(duì)染噪語(yǔ)音進(jìn)行端點(diǎn)檢測(cè)。得到如下結(jié)果:
圖3 原始語(yǔ)音波形Fig.3 The original speech waveform
圖4 染噪語(yǔ)音波形Fig.4 Noisy speech waveform
圖5 基于短時(shí)能量端點(diǎn)檢測(cè)Fig.5 Endpoint detection based on short time energy
圖6 基于過(guò)零率端點(diǎn)檢測(cè)Fig.6 Endpoint detection based on the zero crossing rate
圖7 本文的端點(diǎn)檢測(cè)方法Fig.7 The endpoint detection method in this paper
表1 不同端點(diǎn)檢測(cè)方法的準(zhǔn)確率Tab.1 The accuracy rate of different endpoint detection method
從上面圖中波形和表中數(shù)據(jù)可知:文中方法無(wú)論對(duì)原始信號(hào)還是對(duì)染噪信號(hào)進(jìn)行端點(diǎn)檢測(cè),都有很好的效果,在波形上要比基于短時(shí)能量、過(guò)零率的方法清晰,在數(shù)據(jù)上要更加的準(zhǔn)確,從而說(shuō)明了本文方法的有效性和優(yōu)越性。
首先,文中介紹了傳統(tǒng)語(yǔ)音端點(diǎn)檢測(cè)方法,如基于短時(shí)能量、基于過(guò)零率、基于短時(shí)能量——過(guò)零率的端點(diǎn)檢測(cè)方法[5];其次,敘述了近似熵;再次,提出改進(jìn)的端點(diǎn)檢測(cè)方法[6],在傳統(tǒng)基于能量和過(guò)零率的端點(diǎn)檢測(cè)方法基礎(chǔ)上,再加入第三道門(mén)限——近似熵;最后,用MATLAB軟件做仿真實(shí)驗(yàn),依次用四種方法對(duì)語(yǔ)音信號(hào)進(jìn)行端點(diǎn)檢測(cè),實(shí)驗(yàn)表明本文的方法取得了比傳統(tǒng)方法更為理想的結(jié)果。
當(dāng)然,文中的方法還有一定的不足之處,如:能否在不同信噪比下去驗(yàn)證本方法?這是亟待解決的問(wèn)題,需要進(jìn)行更加深入地研究。
[1]顧亞強(qiáng),趙暉,昊波.一種語(yǔ)音信號(hào)端點(diǎn)檢測(cè)的改進(jìn)方法[J].計(jì)算機(jī)仿真,2010,27(5):340-343.
GU Ya-qiang,ZHAO Hui,WU Bo.An improved method of the voice endpoint detection [J].Computer Simulation,2010,27(5):340-343.
[2]李曄,張仁智,崔慧娟,等.低信噪比下基于譜熵的語(yǔ)音端點(diǎn)檢測(cè)算法[J].清華大學(xué)學(xué)報(bào):自然科學(xué)版,2005,45(10):1397-1400.
LI Ye,ZHANG Ren-zhi,CUI Hui-juan,et al.Voice activity detection algorithm with low signal-to-noise ratios based on the spectrum entropy[J].Jouranl of Tsinghua University:Science and Technology,2005,45(10):1397-1400.
[3]侯周國(guó).于HMM的漢語(yǔ)數(shù)字語(yǔ)音識(shí)別系統(tǒng)研究 [D].湖南:湖南師范大學(xué),2006.
[4]雷雄國(guó),曾以成,李凌.基于近似熵的語(yǔ)音端點(diǎn)檢測(cè)[J].聲學(xué)技術(shù),2007,26(1):121-125.
LEIXiong-guo,ZENG Yi-cheng,LILing.Noisyspeech endpointdetection based on approximate entropy[J].Technical Acoustics,2007,26(1):121-125.
[5]李晉.語(yǔ)音信號(hào)端點(diǎn)檢測(cè)算法研究[D].湖南:湖南師范大學(xué),2006.
[6]馬靜霞.帶噪語(yǔ)音端點(diǎn)檢測(cè)方法的研究[D].河北:燕山大學(xué),2007.