陳志全,楊 駿,喬樹山
(中國科學院大學 微電子研究所,北京 100029)
基于單類支持向量機的異常聲音檢測
陳志全,楊 駿,喬樹山
(中國科學院大學 微電子研究所,北京 100029)
提出基于單類支持向量機的異常聲音在線檢測算法。該算法針對公共場合正常的環(huán)境聲音,訓練一個單類支持向量機模型,用來判斷聲音是否屬于正常的環(huán)境聲音,若不是則屬于需要進一步識別的異常聲音。采用窗長2秒的滑動窗對聲音進行分窗,對每一個窗內(nèi)的聲音分幀并提取梅爾倒譜系數(shù),短時能量,頻譜質(zhì)心,短時平均過零率等特征。采用基于幀之間互相關系數(shù)的方法對聲音自動分段。最后對分段聲音的判別結果進行中值濾波。當有連續(xù)多個幀被判別為異常時判定有異常聲音出現(xiàn)。最后檢驗了算法在地鐵背景條件下六類異常聲音的漏檢率和每小時誤檢次數(shù),結果表明算法能有效檢測到異常聲音的發(fā)生而且誤檢次數(shù)較低。
單類支持向量機;異常聲音檢測;特征提??;音頻監(jiān)控
近些年隨著信息化和網(wǎng)絡化技術的發(fā)展,安全監(jiān)控在國防和社會安全中的作用越來越突出?,F(xiàn)在的監(jiān)控系統(tǒng)主要由攝像頭采集監(jiān)控區(qū)域的影像視頻信息來完成監(jiān)控,但是僅僅基于視頻的監(jiān)控系統(tǒng)有其自身的一些缺陷。首先:一個攝像頭只能監(jiān)控一個方向,要做到更好的實時監(jiān)控,需要攝像頭能夠移動到事件發(fā)生的區(qū)域;其次,視頻監(jiān)控容易受光線影響,同時在一些私人場合不利于保護個人的隱私;最后,圖像是二維信號,處理相對復雜,計算量較大。與圖像相比,聲音信號具有很多優(yōu)點:是一維信號,復雜度低;分布廣泛,易獲取;包含信息量大。區(qū)域內(nèi)的異常聲音能夠有效的揭示異常狀況以及突發(fā)事件。這些優(yōu)點可以很好的彌補視頻監(jiān)控的不足。通過檢測和識別環(huán)境中的聲音信息,監(jiān)控系統(tǒng)對特定區(qū)域或區(qū)域進行重點關注,監(jiān)控會更加的自動化智能化。這對于智能監(jiān)控以及安全防護具有極其重要的意義。
音頻監(jiān)控主要由兩個階段構成:異常聲音檢測;異常聲音識別。異常聲音指在正常環(huán)境下不應該發(fā)生的聲音如:槍聲,尖叫,爆炸,玻璃破碎聲等。當前,關于異常聲音監(jiān)控的研究主要關注于幾類異常聲音的分類。文獻[1]針對典型的異常聲音的頻譜分布特性,提出一種矯正過濾波器通帶位置,大小以及類型的MFCC。這種方法能夠改善某類聲音的識別率,但是當聲音類別增加時,并不能有效的獲取所有異常聲音的頻譜分布狀況。文獻[2]提出將MFCC以及短時能量作為混合特征訓練高斯混合模型(Gauss Mixture Model,GMM),能夠一定程度提高聲音的識別率,文獻[3]在研究槍聲的發(fā)生原理,頻譜分布特點的基礎上,提出基于經(jīng)驗模態(tài)分解方法的槍聲特征的提取方法,提高了公共場所槍聲的識別率,但是只能針對槍聲這一大類聲音。
在異常聲音檢測方面,文獻[4]采用支持向量機(Support Vector Machine,SVM)檢測是否有歡呼聲和掌聲,文中將音頻按0.5 s滑動分窗,并對每一個窗內(nèi)的判別結果進行平滑。最終獲得的F-value為79.71%。文獻[5]采用4個OC-SVM分別對四類異常聲音進行建模,將待識別的聲音輸入4個模型,比較模型輸出選擇其中一個作為聲音的類別,其實質(zhì)是一個聲音識別算法,當聲音種類較少時能夠有效識別聲音的種類,但種類較多時很難比較模型之間的輸出進而得出正確的分類。文獻[6]針對室內(nèi)異常聲音檢測問題,提出一種基于集成學習的異常聲音檢測方法:先將聲音按幀提取特征,然后將每一幀聲音按內(nèi)容分為不同的類別,接著利用一個異事件檢測器對連續(xù)幀進行判別,此方法引入了環(huán)境的上下文作為判斷的一個依據(jù),但是不適合環(huán)境較為復雜的情況。
文中主要關注于異常聲音的檢測階段,為此提出一種基于單類支持向量機 (One-Class Support Vector Machine,OCSVM)的異常聲音檢測算法。對公共場合的背景聲音構建一個OC-SVM模型,用來判定一段聲音是否屬于正常聲音,否則判定為異常聲音。算法在多種公共場合聲音下能夠有效的檢測到6種異常聲音的發(fā)生且誤檢次數(shù)較低[7-8]。
單類支持向量機 (One-Class Support Vector Machine,OC-SVM)最先由Bernhard Sch?lkopf提出。他基于支持向量機(Support Vector Machine,SVM)最大分類間隔和分離超平面的思想,將單類分類問題視為一個特殊的二類分類問題,在特征空間中尋求一個超平面最大化樣本點和原點之間的距離。給定訓練集s={x1,x2……xl},xi∈Rd其中xi是單類樣本,在文中對應公共場合的正常聲音。給出從Rd到高維特征空間χ的非線性映射函數(shù)φ使得φ(xi)∈χ。OC-SVM的目標就是在高維特診空間里建立一個超平面w·φ(x)-ρ=0,將高維空間中的樣本點和原點以間隔ρ分開,其中w是超平面的法向量,p是學習超平面的截距.為了讓超平面盡量遠離原點,最大化原點到樣本點之間的距離來尋找最優(yōu)超平面。一個二維空間中的最優(yōu)超平面。如圖1所示。
圖1 單類支持向量機超平面示意圖
類似二分類支持向量機,為了提高算法的魯棒性OCSVM也引入了松弛變量ξ,優(yōu)化問題表示為:
其中,w∈χ和ρ∈R是超平面的參數(shù)。v∈(0,1]是提前定義好的百分比參數(shù),表示邊界支持向量率的上界 (分類錯誤率)。為了求解此問題引入拉格朗日函數(shù)α。最終決策函數(shù)為:
其中決策函數(shù)值大于零時預測樣本為正類樣本,否則樣本屬于異常。
特征往往決定了分類算法的效果,好的特征組合能極大的提高算法的效果,所以,特征提取也往往是聲音識別和檢測研究的一個重要的方向。文中從常見的音頻特征中選取一部分作為特征組合。常見的音頻特征如下:
2.1 短時能量
短時能量指信號在一段(文中是指一幀,幀長25 ms)時間內(nèi)的能量值,通過短時能量的變化一定程度上也能反映出信號在時域的幅度的變化情況。計算公式如下:
2.2 短時平均過零率
短時過零率指信號在一幀內(nèi)符號改變的次數(shù),它粗略的估計出了信號的頻率變化情況。短時過零率的計算公式如下:
2.3 梅爾倒譜系數(shù)(Mel Frequency Cepstrum Coefficients,MFCC)
MFCC是語音識別中最常用也是效果最好的特征,也是非語音識別最常用的特征之一。它通過將標準頻率取對數(shù)映射到Mel頻域,更加的符合人耳對不同頻段的聽覺響應特點。對信號作在Mel頻域作傅里葉變換,并經(jīng)過一組部分重疊的濾波器組獲取不同頻段上的信號的能量,最后通過離散余弦變換去除耦合即可得到聲音信號的 MFCC特征。文中MFCC階數(shù)為12階。
2.4 頻譜質(zhì)心(Spectral Centroid,SC)
頻譜質(zhì)心是指信號對數(shù)能量譜的重心,它描述了信號能量譜的形狀,揭示能量譜中高頻及低頻的比重,反映了信號在頻域的分布情況。頻譜質(zhì)心得計算公式如下:
其中f(k)指信號的頻率,s[k]指信號對應頻率的幅度。
由前所述,我們只考慮判斷一段聲音是否屬于環(huán)境中的聲音,如果不是可以判定其為異常聲音(槍聲,爆炸,玻璃破碎,尖叫,碰撞等)。我們對公共場合聲音建立一個OC-SVM模型用來檢測聲音是否屬于環(huán)境中的正常聲音。對于每段聲音通過窗長為2 s的滑動窗將其分段,對每一段聲音分幀并提取其特征,然后計算相鄰幀之間特征的互相關系數(shù),互相關系數(shù)高過閾值的相鄰幀之間合并為同一段聲音,(閾值設為0.9)當聲音的長度超過0.3 s時將其列為待識別聲音,將其每一幀的特征輸入OC-SVM模型中,判斷每一幀信號是否異常。同時對每一段內(nèi)的判別結果進行中值濾波,最后判斷是否為異常聲音,系統(tǒng)的結構流程如圖2所示。
圖2 異常聲音檢測系統(tǒng)結構
系統(tǒng)的結構由以下幾個部分構成。
3.1 滑動分窗及提取特征
對于在線的異常聲音檢測,并不能知道事件的時間長度,因此我們先對聲音滑動分窗,窗長2 s,窗移0.2 s。然后對每一窗口內(nèi)的聲音進行分幀,幀長25 ms,幀移50%。接著對每一幀提取特征組合,特征如前所訴主要MFCC,SC,短時能量和短時平均過零率構成。
3.2 自適應分段
對于在線的異常聲音檢測,事先并不知道異常聲音的長度以及其端點,雖然可以采用端點檢測的方法判定聲音的起始點,但是由于環(huán)境中有各種聲音混疊在一起,而且在每個聲音的不同部分信號的強度時不一樣的,一般聲音的前面部分信號較強,尾部較長但是強度逐漸較弱,要準確的檢測異常聲音的端點難度較大。根據(jù)我們統(tǒng)計收集到的數(shù)據(jù),異常聲音長度范圍最短(如單個手槍槍聲)在 0.3 s左右,文中采用自適應的方法對信號分段?;谙噜弾g的特征的互相關系數(shù),當互相關系數(shù)高過設定的閾值時,多個幀合并為一塊,繼續(xù)計算下一幀和上一段的相關系數(shù),然后合并不同的塊,重復上述步驟直至不能再合并。具體流程見圖3。
圖3 自適應分段示意圖
3.3 結果判斷
對于每一段聲音,我們對每一幀提取特征,將特征輸入到OC-SVM模型中對其進行判斷是否為異常。假設一段待識別的聲音可以分為n幀,則OC-SVM就有多個判斷結果,由于模型的判別準確度不可能為100%,所以所有的幀級的結果不可能完全正確。為此對判別的結果進行中值濾波,規(guī)則如下:
其中s(n)指一幀信號的檢測結果,為1指信號為正常,否則為異常。我們認為當中間一幀與相連的幀判別結果不相同時,我們認為這是一種誤分類。
對待識別的聲音段幀級的識別結果進行中值濾波后,我們統(tǒng)計連續(xù)被判定為異常的幀的數(shù)目,設定一個比例閾值γ,當異常幀的比例超過閾值γ,我們判定此段聲音為異常聲音。當一個異常聲音有一段被檢測到的時候,判定這個異常聲音被檢測到了,否則判為漏檢。另外當一段正常聲音被檢測為異常聲音時判定為出現(xiàn)一次誤檢。
4.1 聲音資源來源
由于還沒有統(tǒng)一公開的異常聲音音效資源,本文的音效資源主要來自網(wǎng)絡,包括findsound.com上的聲音資源以及ideal sound 6 000 series中的部分資源。其中有6種異常聲音包括槍聲,爆炸聲,尖叫聲,玻璃破碎聲,警報聲,撞擊聲等。6種異常聲音的長度從約0.3 s至2 s不等。采樣率為44.1 kHz。背景聲音采用的是錄取的北京地鐵北土城站大廳的聲音,總時長為60分鐘。 背景聲音主要包括人說話的聲音,腳步聲,拉動行李箱的聲音,大廳中電視機的聲音,地鐵經(jīng)過時發(fā)出的聲音以及電機的聲音等等。具體細節(jié)可見表1。
表1 各類聲音資源信息
4.2 實驗結果及分析
測試時,我們將異常聲音按照信噪比公式(7)加入到地鐵環(huán)境正常聲音中。
其中ex指異常聲音的平均能量,en是環(huán)境聲音的平均能量,event指異常聲音事件,ambinece指公共場合背景聲音。對于每個異常聲音,我們每隔4 s的位置放置一次。對應每個異常聲音分別產(chǎn)生時長20 min的聲音,六類異常聲音總共有41 967個異常事件,總時長4 960分鐘。訓練階段用40分鐘的地鐵環(huán)境聲音作為訓練,剩下的20分鐘作為測試。OCSVM的參數(shù)和分別設置為10和0.001。文中首先測試和對比了采用固定窗長為2 s的方法和采用自適應分段算法的效果,結果表明采用相比固定窗長的算法,自適應分段能有效降低漏檢率和誤檢次數(shù)。實驗結果見表2。
表2 兩種分段方法的效果對比(γ=0.7,信噪比為20 db)
最后本文測試了在5 db,10 db,15 db,20 db信噪比條件下各類異常聲音的漏檢和誤檢次數(shù)。由前所述結果判斷階段,異常聲音的判定比例γ將會影響異常聲音的誤檢和漏檢。γ過高則將會降低誤檢次數(shù),但是漏檢也會增加,反之γ過低則提高誤檢次數(shù),降低漏檢。我們測試了在不同的比例下的檢測效果,具體結果見表3。
表3 不同判別比例下的漏檢率和誤檢次數(shù)
由表3可知γ起到一個平衡誤檢和漏檢的作用,最后我們測試了不同的信噪比條件下,各類異常聲音的漏檢率,結果見表4。
表4 各類異常聲音漏檢率(γ=0.7)
由結果可見:6種異常聲音的平均漏檢率都相對較低。槍聲和爆炸聲特征相對明顯,能夠被很好的檢測到??傮w上檢測效果較好,符合預期。
文中提出了一種基于OC-SVM的異常聲音在線檢測算法。用一個單分類OC-SVM模型描述環(huán)境中的正常聲音。并采用滑動窗對環(huán)境聲音進行分窗,采用一個基于互相關系數(shù)的自適應分段方法對信號分段從而找到待檢測的聲音。同時我們對幀級判斷結果進行中值濾波,用一個比例閾值對待檢測段判斷是否為異常聲音。結果表明能夠有效的檢測到異常聲音的發(fā)生且誤檢次數(shù)較低。對于在線的音頻監(jiān)控,如果算法時間復雜度過高帶來了較長的延時則會影響系統(tǒng)的時效性,所以計算時間復雜度是需要研究的一個方面。
[1]欒少文,龔衛(wèi)國.公共場所典型異常聲音的特征提取[J].計算機工程,2010,7(7):208-210.
[2]呂霄云,王宏霞.基于MFCC和短時能量混合的異常聲音識別算法[J].計算機應用,2010,30(3):796-798.
[3]Zhang Z,Li W,Gong W,et al.An improved EEMD model for feature extraction and classification of gunshot in public places[C]//2012 21st International Conference on,Pattern Recognition(ICPR),2012:1517-1520.
[4]LI Lu,GE Fengpei,ZHAO Qingwei,et al.A SVM-Based Audio Event Detection System[C]//2010International Conference on ,Electrical and Control Engineering (ICECE),2010:292-295.
[5]Aurino F,F(xiàn)olla M,Gargiulo F,et al.One-Class SVM based approach for detecting anomalous audio events[C]//2014 International Conference on,Intelligent Networking and Collaborative Systems(INCoS),2014:145-151.
[6]Younghyun Lee,Han DK,Ko Hanseok.Acoustic signal based abnormal event detection in indoor environment using multiclass adaboost[J].IEEE Transactions on Consumer Electronics,2013,59(3):615-622.
[7]龔小章.特定聲識別與定位系統(tǒng) [J].電子科技,2011(8):36-38.
[8]王全,王長元,穆靜,等.車輛行車實時目標區(qū)域特征提取及分類訓練[J].西安工業(yè)大學學報,2015(11):888-892.
Abnormal sound detection based on one class support vector machine
CHEN Zhi-quan,YANG Jun,QIAO Shu-shan
(Institute of Micro-Electronics,University of Chinese Academy of Sciences,Beijing 100029,China)
This paper proposes an abnormal sound detection method based on one-class support vector machine.For the normal sound in the public environment,we build an one-class support vector machine model to detect whether a piece of audio belong to the normal environment,if not,it is an abnormal sound needed to recognize.We apply a slipping window of two seconds length on the sound,frame the sound and extract features including Mel Frequency Cepstrum Coefficients(MFCC),Spectral Centroid(SC),Short term energy(STE).We calculate the Cross Correlation Coefficient of the adjacent two frames,and use the Cross Correlation Coefficients to implement the segmentation automatically.Then distinguish whether one frame is abnormal,finally we apply median filter on the result.If there are more than certain successive frames are abnormal,we think the sound is a abnormal sound.Then we examine our algorithm on the background sound of subway,the result shows that our method can detect abnormal sounds effectively and the false alarm time is low.
one class support vector machine;abnormal sound detection;feature extraction;audio surveillance
TN912
A
1674-6236(2016)23-0019-04
2016-03-22稿件編號:201603305
中科院性戰(zhàn)略性先導科技專項(XDA06020401)
陳志全(1989—),男,貴州畢節(jié)人,碩士研究生。研究方向:信號處理、模式識別。