徐保民+李文婧



摘 要:在綜合分析聲音端點檢測技術的基礎上,針對公共場所異常聲音的特點,提出一種綜合短時優化過零率和短時TEO對數能量自適應端點檢測方法,以及特征數據的模糊歸一化方法,在此基礎上引入背景噪聲動態建模、前后端延時確認、閾值動態更新機制,進行異常聲音端點檢測。Matlab仿真實驗表明,該方法能較好地適應低信噪比背景噪聲變化的公共場所環境,具有較好的檢出率和較低的誤報率。
關鍵詞:異常聲音;端點檢測;自適應;模糊歸一化
DOIDOI:10.11907/rjdk.171236
中圖分類號:TP306
文獻標識碼:A 文章編號文章編號:1672-7800(2017)008-0001-04
0 引言
隨著語音處理技術的發展,異常聲音的感知已逐步引入到公共場所來感知異常事件發生,而異常聲音端點檢測是進行異常聲音感知的重要環節。與語音端點檢測類似,異常聲音端點檢測屬于二類分類的問題。語音端點檢測技術作為語音識別的基礎環節,近幾年相關學者展開了深入研究,其檢測方法大致分為時域參數法、頻域參數法、模型檢測法等,其中時域特征主要包括短時過零率、短時能量等,而頻域特征主要包括Mel倒譜系數等[1-2]。為了更好地提高語音端點檢測的準確度,有學者提出利用語音長時信息提高檢測準確度[3-4]。針對低信噪比環境,文獻[5]中提出了一種通過優化、綜合短時能量和短時過零率的方法實現不同信噪比下的語音端點檢測;文獻[6]提出了一種綜合短時對數能量和Mel能量的方法來適應不同的信噪比環境;文獻[7]通過綜合短時TEO能量和Mel倒譜距離的方式進行了端點檢測。以上方法由于利用了不同語音特征的互補性,進而有效提高了算法適應不同信噪比的能力。
然而,公共場所出現的異常聲音與平常說話人的語音有所區別,例如其頻帶較窄,聲音往往開始時響度較大,以后逐漸消退。另外,公共場所的背景噪聲較大,并且背景噪聲隨時間變化較大,即它是一種低信噪比的背景噪聲變化環境,與普通語音識別環境有所區別。因此,直接采用語音端點檢測方法來實現對異常聲音端點的檢測難以得到理想效果。文獻[8]針對公共場所異常聲音的端點檢測提出了一種使用非線性中值濾波器有選擇地放大聲音能量序列中的沖擊信號,然后根據放大后的信號能量變化情況,獲得異常聲音的端點。然而僅僅利用能量信息在低信噪比環境中檢測異常聲音的端點難于獲取較高的準確度。文獻[9]在Mel倒譜系數的基礎上進行了異常聲音識別。文獻[10]引入了Mel倒譜系數與短時能量相混合的方法,并通過GMM模型對異常聲音進行識別,然而在信噪比較低的環境下,Mel倒譜系數對異常聲音與背景噪聲的區別度不大,這勢必影響端點檢測的準確度。
本文提出一種綜合短時優化過零率和短時TEO對數能量的自適應端點檢測方法。對不同的特征數據,首先進行模糊歸一化,然后引入背景噪聲動態建模、前后端延時確認和閾值動態更新機制進行端點檢測。
1 異常聲音特征提取
在實際環境中,由于受諸多因素影響,數字化后的聲音信號頻率和振幅特性復雜,信號采樣值隨時間的變化而劇烈波動,因此不具有時間平穩性,也難以進行特征描述。然而,聲音信號往往在10~30ms內是相對平穩的,因此聲音信號的處理可以通過分幀以獲取短時較為平穩的特征描述,并以此為基礎進行后續處理。為了實現對異常聲音特征的描述,本文對輸入的聲音信號首先以20ms左右為間隔進行信號幀劃分,在此基礎上進行幀特征提取,主要包括優化過零率和TEO對數能量。
1.1 過零率優化
過零率(Zero Crossing Rate, ZCR)描述了信號幀中信號采樣點符號改變的次數,它反映了信號波動情況,在固定時間信號幀中,過零率大則意味著信號變化快速,其頻率也相應大。實驗分析表明,在信噪比較高的環境中,過零率可以有效區分異常聲音和背景噪聲。然而在信噪比較低的環境中,過零率容易被噪聲影響,甚至淹沒。為此,在文獻[5]研究的基礎上,給出了一種優化的過零率計算方法,第i幀的優化過零率計算如下:
ZRC(i)=∑nm=1[TP(S,X(i,m)-Tup)+TN(S,X(i,m)-Tdown)](1)
其中,TP(S, x)為正數判定函數,即當S=0,且x為正數時將S設置為1,并返回1;否則,不改變S的值,并返回0。TN (S, x)為負數判定函數,即當S=1,且x為負數時將S設置為0,并返回1;否則,不改變S的值,并返回0;Tup和Tdown為上下閾值,X(i,m)為第i幀的第m個語音信號值。
為了更好地減少背景噪聲對所提取的過零率特征值的影響,上下閾值的確定方法如下:
Tup=X+ασ
Tdown=X-ασ(2)
其中,X為背景噪聲段信號的均值,而σ為背景噪聲段信號的標準差,α為閾值系數。
1.2 TEO對數能量
作為一種能夠很好地表征信號的共振峰信息,能在抑制背景噪聲中消除零均值噪聲,起到信號增強作用的TEO在文獻[7]中被用來檢測語音端點,并且綜合了Mel倒譜系數和TEO能量來進行語音信號的端點檢測。然而,筆者通過對大量異常聲音素材的實驗分析發現,TEO能量信息在描述異常聲音特征方面較TEO對數能量相對較弱,在異常聲音處理中TEO對數能量將能獲取較為準確的端點檢測,為此本文引入了TEO對數能量作為異常聲音特征之一。根據文獻[11],對于離散信號,TEO變換的公式可描述如式(3)所示。
φ(x(t))=x(t)2-x(t-1)*x(t+1)(3)
其中,x(t)為t時刻的信號值,ψ(x(t))為t時刻TEO變換后的信號值。在此基礎上對于第i幀的TEO對數能量LE(i)的計算公式如式(4)所示。
LE(i) = log(E(i) + a)-log(a)endprint
E(i) = ∑Lt = (i-1)*L + 12i (x(t))(4)
其中,i為幀序號,L為幀長,因此,E(i)便是為第i幀的短時TEO能量,而a為常數,可以取值為1。
2 特征值模糊歸一化
由于優化過零率和TEO對數能量具有不同的量綱和取值范圍,同時為了進一步減少背景噪聲的影響,筆者提出了一種特征值模糊歸一化方法,其歸一化計算公式如式(5)所示。
FD(i)=sng(F(i)-Fbg)*min{F(i)-Fbgβσbg,1}β=FuzzyRules(noiseI)Fbg=(1-α)Fbg+αF(i)(ifF(i)-Fbg<γ)(5)
式(5)中,sng(x)為符號函數,當x<0時,返回-1,否則返回1; F(i)為第i個特征數據值;Fbg為背景噪聲段該特征數據均值;σbg為背景噪聲段該特征數據標準差;β為依據背景噪聲大小noiseI,由預設的模糊規則FuzzyRules確定的歸一化系數,α為背景更新系數,γ為背景更新閾值。因此,歸一化以后的特征值反映了不同背景噪聲強度下特征數據的偏離程度。在此基礎上,第i幀特征描述FFD(i)的計算如式(6)所示。
FFD(i)=NZCR(i)*NLE(i)(6)
其中,NZCR(i)為由式(5)歸一化后的優化過零率,NLE(i)為由式(5)歸一化后的TEO對數能量。
圖1從上到下分別顯示了未混合噪聲的異常聲音波形、按0db混合白噪聲后的異常聲音波形以及混合噪聲后異常聲音的以0為基準的過零率、TEO、Mel倒譜距離、歸一化后的優化過零率和歸一化后的對數TEO能量。不難看出,本文提出的模糊歸一化方法能較好地提高特征數據反映異常聲音的特征狀態的能力,并且可以較好地克服背景噪聲的影響。
3 異常聲音端點檢測
由于公共場所是一種低信噪比且背景噪聲隨機變化的環境,同時,公共場所所出現的異常聲音往往具有開始時響度較大,以后逐漸消退的明顯特征。為此,筆者引入背景噪聲動態建模更新機制,并在此基礎上引入自適應前后閾值的端點檢測方法,其中前端閾值用于檢測異常聲音起始點,而后端閾值用于檢測結束點。為了使端點檢測更加準確,對于雙閾值引入了動態更新機制,以及端點延時確認機制,整個端點檢測算法描述如下:
(1)Initialize N、K0、K1、K2, and α、β;//初始化前后端點延時確認幀數N,背景噪聲、閾值更新系數K0、K1、K2,前端閾值系數α和后端閾值系數β。
(2)FFDbg=mean(FFD1-10),FSi= FFDi-FFDbg;//將前10幀的特征向量平均值作為背景噪聲初始值FFDbg,求前10幀幀特征向量與FFDbg的差值FSi。
(3)T= mean(FS1-10),D= std(FS1-10);//求前10幀與背景噪聲FFDbg差值的平均值T,以及前10幀與背景噪聲FFDbg差值的標準差D。
(4)TH1=T+α*D,TH2=T+β*D;//初始化前端閾值TH1,后端閾值TH2。
(5)S =0;//對狀態變量S初始化,對于第11幀以后的每一幀重復如下操作。
FSi= FFDi-FFDbg;//求幀差stf=0; //后端點標志置0if (S==0) and (FSi>TH1) then S=1;elseif (S>0) and (S 4 實驗分析 4.1 實驗方法 為了驗證本文算法的有效性,在Matlab軟件環境下對本文端點檢測算法進行仿真實驗。其中異常聲音素材主要來自互聯網,包括槍聲、爆炸聲、打碎玻璃的聲音、狗叫聲、鞭炮聲等,采樣頻率為11 025Hz;噪聲素材來自NOISEX-92噪聲數據庫,包括白噪聲(white)、粉紅噪聲(pink)、工廠噪聲(factory)和飛機噪聲(f16)。噪聲數據分別與待測試的異常聲音數據按信噪比-5db、0db、5db、10db和20db進行混合生成帶噪聲數據進行實驗測試。 4.2 實驗結果評價方法 對于實驗結果的比較評價,不少文獻都是通過與手動標記的分段結果進行比較,然而筆者認為這種比較方式可操作性不足,因為檢測出來的異常聲音段不可能完全與所標注的起止點完全吻合,當有差異時如何量化評價?本文引入了如下評判方式:首先,對沒有添加任何噪聲的測試異常聲音數據使用本文中的優化過零率進行檢測,將檢測出來的異常聲音段作為參考標準;然后,用需要比較的方法對混合不同噪聲的該異常聲音數據進行檢測;最后,對檢測結果分別用公式(7)和公式(8)計算其檢出率和誤報率。 檢出率=∑(PS0∩PS)∑PS0*100(7) 誤報率=∑(PS0∩PS)∑PS*100(8) 在式(7)和(8)中,PS0為對沒有添加任何噪聲的待測異常聲音數據使用本文中的優化過零率進行檢測所檢測出來的異常聲音段點標記集合,在該集合中是異常聲音段的點標記為1,否則標記為0;PS為需用比較的方法對添加不同噪聲的異常聲音數據進行檢測所檢測出來的異常聲音段點標記集合,同樣,在該集合中是異常聲音段的點標記為1,否則標記為0。
4.3 實驗結果分析
圖2為混合不同噪聲后鞭炮聲檢測結果。不難看出,即使在-5db和0db的低信噪比下,本文方法仍有較好的檢出率和較低的誤報率。
為了更進一步證明本文方法的有效性,首先選擇了10段不同的待測試異常聲音數據(包括槍聲、爆炸聲、打碎玻璃的聲音、狗叫聲、鞭炮聲等),按信噪比-5db、0db、5db、10db和20db分別與白噪聲(white)、粉紅噪聲(pink)、工廠噪聲(factory)和飛機噪聲(f16)進行混合,生成50段帶不同信噪比噪聲異常數據進行實驗測試,然后分別用歸一化優化過零率、歸一化對數TEO和本文方法進行測試,結果如圖3所示,不難看出,雖然利用歸一化對數TEO檢測能有較好的檢出率,然而其誤報率也較高。而本文方法在不同的信噪比下都有較好的檢出率和較低的誤報率。
5 結語
公共場所異常聲音的檢測對于感知公共場所異常事件的發生有重要作用,而異常聲音的端點檢測是實現異常聲音檢測的重要環節,在綜合分析語音端點檢測技術的基礎上,結合公共場所異常聲音的特點,提出了一種自適應的端點檢測方法,該方法首先綜合了短時優化過零率和短時TEO對數能量作為特征向量,并提出了一種特征數據模糊歸一化方法對其進行歸一化。在此基礎上引入背景噪聲動態建模、檢測閾值動態更新和前端端點延時確認機制進行端點檢測,通過對混合不同噪聲不同信噪比的聲音實驗表明,算法能較好地適應低信噪比下背景噪聲變化的檢測環境,具有較好的檢出率和較低的誤報率。
參考文獻:
[1] YANG X, TAN B, DING J,et al. Comparative study on voice activity detection algorithm[C]. 2010 International Conference on Electrical and Control Engineering (ICECE),2010:599-602.
[2] FANG Z, GUOLIANG Z, ZHANJIANG S. Comparison of different implementations of MFCC[J]. 計算機科學技術學報:英文版,2001, 16(6):582-589.
[3] 趙歡,馮璐,陳佐,等,基于動態特性的D-LTSV語音端點檢測方法[J],計算機工程,2014,40(12):277-281.
[4] 陳振鋒,吳蔚瀾,等,基于Mel倒譜特征順序統計濾波的語音端點檢測算法[J],中國科學院大學學報,2014,31(4):524-529.
[5] 孫戰先,儲飛黃,王 江,一種自適應語音端點檢測算法[J],計算機工程與應用,2014,50(1):206-210.
[6] 王曉華,屈雷,基于時頻參數融合的自適應語音端點檢測算法[J],計算機工程與應用,2015,51(20):203-207.
[7] 王茂蓉,周萍,景新幸,楊青,基于Mel-TEO的帶噪語音端點檢測算法[J].微電子學與計算機,2016,33(4):46-49.
[8] ALAIN DUFAUX,LAURENT BESACIER,MICHAEL ANSORGE.Automatic sound detection and recognition for noisy environment[C].European Signal Processing Conference, Finland, 2000:1033-1036.
[9] 欒少文,龔衛國.公共場所典型異常聲音的特征提取[J].計算機工程,2010,36(7):208-210.
[10] 呂霄云,王宏霞.基于MFCC和短時能量混合的異常聲音識別算法[J].計算機應用,2010,30(3):797-798.
[11] KAISER J F. On a simple algorithm to calculate the energy of a signal[C]. IEEE International Conference on Acoustic, Speech and Signal Processing, Albuquerque,NM:IEEE,1990:381-384.endprint