林藝明 李 應
(福州大學數(shù)學與計算機科學學院 福建 福州 350108)
低信噪比聲音事件檢測的目標是從音頻信號中檢測出微弱的聲音對象,并識別和分類這些聲音。近年來,隨著數(shù)字聲音分析技術(shù)的發(fā)展,它在現(xiàn)實世界里有許多的實際運用,例如生物監(jiān)控、智能家居、自然環(huán)境識別、公共場所槍聲檢測等。
現(xiàn)有的聲音事件檢測研究主要有:基于注意力機制的聲音事件檢測方法[1];嘈雜環(huán)境下的特定聲音事件檢測方法[2];基于聲音事件分區(qū)和特征標準化的聲音事件檢測方法[3];城市環(huán)境下特定聲音事件的檢測方法[4];特定聲音事件的聲音信號增強方法[5];聲音信號數(shù)據(jù)不平衡的聲音事件檢測方法[6];聲音事件的特征、分類器以及特征與分類器的組合等[7-13]。這些方法對各類聲音事件的檢測與分類進行單一的改進或組合,從不同方面對聲音事件檢測深入研究,在高信噪比環(huán)境下都取得了較高的檢測率,但是對低信噪比聲音事件檢測的效果不佳,檢測率亟待提高。
針對低信噪比環(huán)境下各種聲音事件的檢測,本文提出了基于能量壓縮與灰度增強的多頻帶能量分布圖的聲音事件檢測方法(Energy Compressed and Grey-Scale Enhanced Multi-Band Power Distribution,CEMBPD)。該方法通過奇異值分解(SVD)提取奇異值特征,即CEMBPD-SVD,并用隨機森林(RF)分類器對奇異值特征進行訓練與檢測。
文獻[14]通過利用粒子群算法優(yōu)化正交匹配跟蹤(OMP)稀疏分解對信號進行重構(gòu)和利用短時譜估計對重構(gòu)后的殘余信號做增強處理。二次重構(gòu)后提取信號的MFCC特征、時頻特征和基頻特征組成特征集。最后采用深度置信網(wǎng)絡進行分類識別,在-5 dB下達到49.9%的識別率。
文獻[15]提取聲音信號的MFCC特征,計算七個MFCC的統(tǒng)計特征,包括方差、均值、中值、最大值、最小值、峰度和偏度;然后將以上七個統(tǒng)計特征組成特征集合;最后用SVM進行建模分類。
對于低信噪比聲音事件檢測,文獻[16-18]提出的聲音事件分類方法過程如圖1所示。
圖1 現(xiàn)有聲音事件分類框架
如圖1中的虛線箭頭路徑所示,文獻[16]通過對灰度對數(shù)譜圖jet映射生成三色子圖,然后對每幅子圖進行9×9分塊,提取每個子塊的均值和方差作為特征,特征共有486維,最后通過SVM分類器進行訓練與分類。采用這種方法,在0 dB的情況下,平均檢測率達到74.4%[16]。文獻[17]在文獻[16]的基礎上做進一步改進,如圖1下半部分實線箭頭路徑所示,其包括:灰度gammatone譜圖、子帶能量分布(SPD)、增強的子帶能量分布圖、幀缺失掩飾估計、去除不可靠維度、分類器選擇k近鄰分類器(KNN)。同時,文獻[17]也將子帶能量分布圖通過jet映射成三色子圖,然后對每幅子圖進行10×10分塊,提取每個子塊的均值和方差作為特征,特征共有600維。最后通過KNN分類器進行訓練與分類。在0 dB情況下,該方法聲音事件的平均檢測率達到了88%[17]。
如圖1上半部分虛線框所示,文獻[18]將聲音信號以多頻子帶能量分布圖(Multi-Band Power Distribution,MBPD)表示,通過對MBPD圖進行8×8分塊,并對每個子塊求離散余弦變換,把DCT系數(shù)的Z編碼的前5個系數(shù)作為聲音事件的特征,特征共有1 280維,并用隨機森林分類器對特征進行訓練與分類。通過這種方法在-10 dB下,聲音事件平均檢測率達45.3%;-5 dB情況下,平均檢測率達87.2%;0 dB情況下,平均檢測率達91.8%[18]。
對文獻[18]方法進一步分析,在低信噪比的情況下,如在-10或-5 dB,基于多頻帶能量分布圖的聲音事件檢測存在著能量等級下移的問題。即低信噪比下,環(huán)境噪聲的能量高于聲音事件的能量,在能量譜圖轉(zhuǎn)換為MBPD圖時,最高能量等級分配給了環(huán)境噪聲。聲音事件的能量等級,不再是最高等級,而是被按比例壓縮并下移,聲音事件的有用成分減少[18]。這是MBPD在低信噪比下聲音事件檢測中存在的問題,使得在低信噪比環(huán)境下的聲音事件檢測性能受到影響。
針對聲音事件在低信噪比下檢測效果不佳的問題,本文對基于MBPD聲音事件檢測的方法進行了改進。具體包括:(1) 根據(jù)聲音信號能量譜的不同頻帶進行能量壓縮調(diào)整處理,使其在低信噪比下一定程度上解決能量下移問題。(2) 本文對聲音信號劃分為280個頻帶和64個能量等級,但CEMBPD圖大小為280×72,能量等級65到72恒為0。因此在按子帶順序排列特征時,每個子帶特征之間有一定的間隔,使其每個子帶的局部特征更為明顯。(3) 對能量壓縮后的多頻帶能量分布圖進行灰度增強,對灰度值低的進行增強,使得其灰度值細節(jié)更明顯。(4) 8×8分塊SVD,對CEMBPD圖進行8×8分塊奇異值分解提取奇異值,捕捉CEMBPD圖的細微變化。
本文方法過程簡化如圖2所示,其中包括:gammatone頻譜圖、能量譜圖、壓縮函數(shù)fs、能量壓縮后的MBPD圖、灰度增強、CEMBPD圖、CEMBPD圖分塊SVD、RF檢測。
圖2 基于CEMBPD圖的聲音事件檢測
聲音信號的gammatone頻譜圖轉(zhuǎn)換成能量譜,對聲音信號的能量譜的不同頻帶進行能量壓縮處理,步驟如下:
(1) gammatone頻譜圖。聲音信號y(t)通過gammatone濾波器組濾波,得到y(tǒng)[t][19]。取y[t]的對數(shù)進行動態(tài)壓縮,得到聲音信號的gammatone譜圖Sg(f,t)。
Sg(f,t)=lg|y[t]|
(1)
式中:f表示濾波器的中心頻率;t表示幀索引。
(2) 壓縮函數(shù)fs。本文將Sigmoid函數(shù)變形為式(2)。式(2)的定義域約束在[1,280]內(nèi),值域約束在(0,1)之間。
(2)
式中:a取0.008。壓縮函數(shù)fs(x)的特性曲線如圖3所示。
圖3 壓縮函數(shù)fx(x)曲線
(3)
圖4 茶隼叫聲在-10 dB風聲背景噪聲下式(3)的演示
(4)
多頻帶能量分布。對式(4)的G(f,t)的每一個頻率子帶的能量概率密度進行統(tǒng)計,將能量譜圖轉(zhuǎn)換為頻率子帶能量分布圖,得到聲音信號的能量分布情況。
(5)
(6)
式中:設B為能量等級數(shù)目;T為聲音信號的長度;Ib(G(f,t))為指示函數(shù)。當G(f,t)屬于能量等級b時,G(f,t)=1,否則為0。H(f,b)表示在頻帶f中能量等級為b的元素占頻帶總元素的比例,0≤H(f,b)≤1。
(1) 灰度增強?;叶茸儞Q是基于像素操作的增強方法,它將每一個像素的灰度值按照數(shù)學變換公式轉(zhuǎn)換為一個新的灰度值。對能量壓縮后的多頻帶能量分布圖進行灰度增強。
(7)
式中:本文實驗h取50[17]。
(2) 奇異值分解與奇異值。奇異值分解是線性代數(shù)中一種重要的矩陣分解。設A是一個n×m的矩陣,則對任意矩陣A都存在著一個分解使得:
(8)
式中:U是n×n階酉矩陣;V是m×m階酉矩陣,VT是V的轉(zhuǎn)置;Σ是n×m階對角矩陣。以上分解就稱作矩陣A的奇異值分解。
Σ的對角上的元素Σi稱為矩陣A的奇異值。在各階奇異值中,前幾階較大的奇異值包含了矩陣A的主要特征,因此一般將Σi從大到小排列,取前幾階作為該矩陣A的特征[20-21]。
(3) 多頻帶能量分布圖的特征提取。受圖像分塊處理技術(shù)啟發(fā),本文對280×72大小的CEMBPD圖進行8×8分塊,即一幅CEMPBD圖有315個8×8子塊。每個子塊進行奇異值分解,然后將奇異值降序排列,本文取前3個奇異值當做8×8子塊的特征。接著,按子帶順序、每個子帶按能量等級低到高順序,依次將子塊的特征提取出來,組成特征向量,共有945(315×3)維,即一幅280×72大小的CEMBPD圖的特征用945維的特征向量來表示,該過程為CEMBPD-SVD,如圖5所示。其中:圖5(b)對應圖5(a)的黑框子塊,頻帶從137至144,能量等級從17至24。圖5(c)為圖5(a)對應的特征向量的部分特征值,黑框部分的數(shù)值為圖5(b)對應的奇異值特征數(shù)值。
(a) CEMBPD 8×8分塊圖
(b) 黑框子塊
(c) CEMBPD的特征值向量圖5 圖像分塊及奇異值提取
隨機森林分類器就是通過集成學習的思想將多棵決策樹分類器集成的一種算法,隨機森林對多維特征的數(shù)據(jù)集分類效果比較好,泛化能力強,還可以進行特征重要性的選擇,運行效率較高,實現(xiàn)簡單[22]。本文使用的隨機森林分類器中決策樹的個數(shù)k設為500,決策樹中節(jié)點特征數(shù)量m為5。
實驗數(shù)據(jù)來自Freesound聲音數(shù)據(jù)庫,實驗中的樣本集由50種純凈動物聲音和6種背景噪聲組成。其中50類動物聲音包括不同鳥鳴聲和哺乳動物叫聲,每類共有30個樣本,共1 500個樣本。實驗使用到6種背景噪聲環(huán)境分為平穩(wěn)噪聲和非平穩(wěn)噪聲,其中:非平穩(wěn)噪聲包括流水聲、風聲、海浪聲、公路聲和雨聲;平穩(wěn)噪聲為粉噪聲。噪聲樣本與聲音事件樣本的采樣頻率為44.1 kHz,采樣精度為16 bit,格式為單聲道“.wav”格式,長度為2 s。
本文將每類聲音事件樣本中的20個樣本作為訓練集,剩下的10個樣本與背景噪聲按不同信噪比組合,生成各種信噪比的測試樣本,作為聲音信號輸入。實驗將得到4種信噪比下的不同背景噪聲的平均檢測率。同時,將基于灰度增強的多頻帶能量分布圖的聲音事件檢測方法(EMBPD-SVD)作為對比實驗。為了驗證本文方法的檢測性能,共進行了四組實驗:(1) CEMBPD-SVD中子塊的奇異值特征個數(shù)的選擇以及壓縮函數(shù)系數(shù)a的選擇;(2) CEMBPD-SVD與EMBPD-SVD的實驗對比;(3) CEMBPD-SVD特征與常用特征性能的比較;(4) CEMBPD-SVD-RF與現(xiàn)有方法的比較。
1) CEMBPD-SVD方法中子塊的奇異值特征個數(shù)與壓縮函數(shù)系數(shù)a都會影響聲音事件的檢測率。本文在討論CEMBPD-SVD子塊奇異值特征個數(shù)時,直接選取EMBPD-SVD子塊的2到5階奇異值進行實驗,將EMBPD-SVD方法最佳檢測率對應子塊的奇異值特征個數(shù)作為CEMBPD-SVD方法的子塊特征個數(shù)。確定CEMBPD-SVD子塊的奇異值特征個數(shù)后,系數(shù)a選取0.005~0.015,共11個系數(shù)進行實驗,在4種信噪比下比較檢測率的高低,選取最佳的系數(shù)a。本文以動物聲音集為基礎,在-10 dB、-5 dB、0 dB和5 dB 4種信噪比下的風聲、海浪、流水三種背景噪聲下進行對比實驗。子塊奇異值特征個數(shù)的選擇對平均檢測率的影響結(jié)果如圖6所示。壓縮函數(shù)系數(shù)a對平均檢測率的影響結(jié)果如圖7所示。
圖6 不同子塊特征值個數(shù)的平均檢測率
圖7 不同系數(shù)a的平均檢測率
由圖6可知,EMBPD-SVD方法在-5 dB、0 dB和5 dB信噪比情況下,子塊特征個數(shù)為2和3的平均檢測率略高于個數(shù)為4和5;在-10 dB信噪比情況下個數(shù)為3的平均檢測率高于其他三者。因此,本文認為子塊特征個數(shù)取3個的平均檢測率最佳,后續(xù)實驗中的子塊奇異值特征個數(shù)選擇為3。
由圖7可知,在5 dB、0 dB和-5 dB信噪比情況下,聲音事件的平均檢測率隨著系數(shù)a的變化而略微上下波動,整體變化不大;在-10 dB信噪比情況下,平均檢測率隨著系數(shù)a的增大整體呈現(xiàn)下降趨勢,并在a=0.008處取得最高點。因此,后續(xù)實驗中壓縮系數(shù)a取0.008。
2) 壓縮函數(shù)fs是CEMBPD-SVD方法與EMBPD-SVD方法的區(qū)別,以動物聲音事件集為基礎,進行3次交叉實驗。在-10 dB、-5 dB、0 dB和5 dB信噪比與6種背景噪聲組合實驗中驗證壓縮函數(shù)fs的有效性。實驗結(jié)果如表1所示,其中:A為CEMBPD-SVD特征,B為EMBPD-SVD特征。
表1 CEMBPD-SVD特征與EMBPD-SVD特征的聲音事件平均檢測率 %
由表1數(shù)據(jù)可知,在-10 dB低信噪比下聲音事件檢測中,CEMBPD-SVD方法在6種背景噪聲中的檢測效果明顯都優(yōu)于EMBPD-SVD方法,最高約有35%的提升,最差也有約11百分點的提升,平均提升了約21百分點。在-5 dB情況下,平均約有3個百分點的提升。而在相對高的信噪比,如0 dB和5 dB,幾乎保持著相同的檢測率。因此,不論在哪種信噪比條件下,CEMBPD-SVD特征都表現(xiàn)出了良好的性能,這說明了壓縮函數(shù)的有效性。尤其在-10 dB低信噪比下,表現(xiàn)更為優(yōu)異,達到了平均67.0%的檢測效果。
3) 為了進一步說明CEMBPD-SVD特征在低信噪比聲音事件檢測的性能,本文將幾種常用的特征結(jié)合RF分類器進行比較,包括:MFCC[23]、HOG[24]、PNCC[25]、GLCM-SDH[26]、LBP[27]、MBPD-DCTZ[18]。本文也將EMBPD-SVD特征加入對比實驗。在6種背景噪聲、4種信噪比下的不同特征對動物聲音事件的平均檢測率如表2所示。
表2 不同特征對動物聲音事件的平均檢測率 %
可以看出,CEMBPD-SVD特征、EMPBD-SVD特征和MBPD-DCTZ特征在4種信噪比下的表現(xiàn)大幅度優(yōu)于MFCC、HOG、PNCC、LBP、GLCM-SDH特征;在0 dB和5 dB信噪比下三者檢測率相近,但在-10 dB信噪比下,CEMBPD-SVD特征檢測率明顯優(yōu)于EMPBD-SVD特征和MBPD-DCTZ特征。這驗證了CEMBPD-SVD特征在低信噪比下具有良好的檢測性能。
4) 不同信噪比及不同環(huán)境下,本文方法與MFCC-SVM[23]、SIF-SVM[16]、MP-SVM[13]、SPD-KNN[17]、CNN-MNIST手寫數(shù)字識別網(wǎng)絡[28]和AlexNet[29]網(wǎng)絡的實驗結(jié)果比較如表3所示。由表3可知,神經(jīng)網(wǎng)絡在較高的信噪比下識別效果優(yōu)于本文方法,說明了神經(jīng)網(wǎng)絡強大的特征表征能力。但在低信噪比情況下,由于強噪聲的干擾,使得聲音事件的有用信息減少,神經(jīng)網(wǎng)絡識別效果不佳。而本文所提的CEMBPD-SVD與RF結(jié)合的方法均能保持較好的檢測率,且低信噪比下的檢測效果大幅度優(yōu)于其他幾種方法。
表3 6種噪聲下不同方法對動物聲音事件的平均檢測率 %
從上述實驗及結(jié)果可知,在更低的信噪比,如-10 dB和-5 dB情況下,本文方法在各種背景噪聲下的聲音事件檢測都表現(xiàn)出良好的性能,尤其在-10 dB情況下,平均檢測率達67%。在較高的信噪比,如0 dB和5 dB下,本文方法仍保持著高的檢測率。下面本文以圖8所示的茶隼聲音為例,就本文方法在低信噪比下相關(guān)的機理進行討論,其中黑框均為茶隼聲音所處主要頻帶范圍。
1) 當聲音能量所處頻帶與噪聲能量所處頻帶在能量譜上區(qū)分明顯時,主要是聲音事件能量處在中高頻帶,噪聲能量處在低頻帶。由圖3的壓縮函數(shù)曲線可見,低頻部分的系數(shù)小,高頻部分的系數(shù)大,此時不同頻帶的能量乘以對應的壓縮系數(shù)。在歸一化的規(guī)則下,相當于低頻部分的噪聲能量被壓縮,中高頻部分的聲音事件能量被增強,從而在CEMBPD圖上實現(xiàn)噪聲能量等級下移,聲音事件能量等級提升,使聲音事件所在的區(qū)域特征最大程度保持與純凈樣本的特征一致,從而使聲音事件檢測率大幅上升。公路背景噪聲的能量主要集中在較低頻部分,如圖8(a)所示,此時壓縮函數(shù)表現(xiàn)最佳。如圖8(d)到圖8(e)黑框的變化:黑框的能量等級顯著提升與圖8(b)純凈聲音事件的黑框相似,而且黑框左側(cè)的噪聲能量等級明顯下移。這是公路背景噪聲在-10 dB低信噪比下比EMBPD-SVD方法提升了約35個百分點,達到90%左右的主要原因。
2) 當聲音事件能量與噪聲能量兩者所處的頻帶相近時,由圖3的壓縮函數(shù)曲線可以看出相近頻帶的壓縮系數(shù)差距不大。在低信噪比下,聲音事件能量與噪聲能量乘以對應的壓縮系數(shù)。由于壓縮系數(shù)差距不大,在歸一化后,噪聲與聲音事件在CEMBPD圖上的能量等級變化不如問題1)那樣明顯,此時噪聲的能量等級有所下降,聲音事件的能量等級有所提升,噪聲仍處于能量等級較高的位置。如圖8(f)到圖8(g)過程所示(橫線僅圖8(f)與圖8(g)做對比時用):黑框的能量等級有所提升,黑框左側(cè)的能量等級有所下降,能量等級仍處于較高的位置。因此,最終檢測率的提升不如問題1)幅度大,但仍有較高的提升,表1中的海浪背景噪聲就是這類情況,-10 dB下約有15百分點的提升。
3) 當聲音事件能量所處的頻帶被噪聲能量所處的頻帶掩蓋,主要是背景噪聲為寬頻高能的噪聲。此時壓縮函數(shù)fs在壓縮聲音事件的能量的同時也同比例壓縮了同頻帶的噪聲能量,在歸一化的規(guī)則下,高能噪聲仍處于能量等級高的位置,此時壓縮函數(shù)fs對聲音事件的能量等級提升有限,對于低頻部分的能量等級起到壓縮作用。雨聲背景噪聲頻域?qū)捛矣性S多分布不均的高能點,如圖8(b)所示。從圖8(h)、圖8(i)、圖8(j)三圖對比可以看出,圖8(j)相對于圖(i)黑框能量等級變化很小,這說明此時壓縮函數(shù)fs對被掩蓋的聲音事件能量等級調(diào)整有限;圖8(i)、圖8(j)與圖8(h)對比黑框以外的區(qū)域變化不大,且圖8(j)低頻部分相對于圖8(i)低頻部分的能量等級有所下移,這說明壓縮函數(shù)fs對寬頻噪聲的調(diào)整起到壓縮低頻帶能量等級的作用。同時,高能噪聲點會對聲音事件形成污染,從而影響最終檢測結(jié)果。從表1的數(shù)據(jù)來看,基于MBPD的CEMBPD在處理寬頻且有分布不均的高能點的雨聲背景噪聲所表現(xiàn)出來的性能并不理想,檢測率雖然從28.5%提升到42%,但仍遠低于其他噪聲類型的檢測率。
(a) 公路能量譜圖 (b) 雨聲能量譜圖
(c) 純凈茶隼叫聲能量譜圖及EMBPD圖
(d) -10 dB公路環(huán)境下茶隼叫聲能量譜圖及EMBPD圖
(e) -10 dB公路環(huán)境下茶隼叫聲壓縮后的能量譜圖及CEMBPD圖
(f) -10 dB海浪環(huán)境下茶隼叫聲能量譜圖及EMBPD圖
(g) -10 dB海浪環(huán)境下茶隼叫聲壓縮后的能量譜圖及CEMBPD圖
(h) 雨聲的EMBPD圖
(i) -10 dB雨聲環(huán)境下茶隼叫聲的EMBPD圖
(j) -10 dB雨聲環(huán)境下茶隼叫聲的CEMBPD圖圖8 各種環(huán)境下的茶隼叫聲能量譜圖以及對應的EMBPD圖和CEMBPD圖
從表1可以看出系數(shù)a對不同噪聲背景下的聲音事件檢測率提升不同,因此本文對進一步提高聲音事件檢測率提出猜想:(1) 針對不同類型噪聲的能量、頻帶寬度、能量均勻程度等特點對系數(shù)a做出調(diào)整或者尋找一個更合適的壓縮函數(shù)fs模型,提升對某一類型噪聲的聲音事件檢測率;(2) 將本文方法與神經(jīng)網(wǎng)絡結(jié)合,利用神經(jīng)網(wǎng)絡強大的特征提取能力,對CEMBPD圖進行深度的特征挖掘,提升聲音事件的檢測率。
本文提出一種基于CEMBPD-SVD特征的隨機森林檢測方法。該方法在較高信噪比下保持著高的檢測率的同時,在更低的信噪比下,通過壓縮噪聲能量等級,提升聲音事件能量等級的方式,從而有效地提升了低信噪比下聲音事件的檢測率。同時,CEMBPD一定程度上解決了MPBD和SPD在低信噪比聲音事件檢測中出現(xiàn)的聲音事件能量下移問題,在低信噪比情況下,尤其在-10dB信噪比下,CEMBPD-SVD特征表現(xiàn)出的優(yōu)勢更為明顯。