邱志斌,王海祥,廖才波,盧祖文,況燕軍,張宇
(1.南昌大學信息工程學院,江西南昌 330031;2.國網(wǎng)江西省電力有限公司電力科學研究院,江西南昌 330096)
隨著生態(tài)環(huán)境的不斷改善,鳥類活動與電網(wǎng)運行的矛盾日益突出,涉鳥故障已成為導致輸電線路跳閘的重要原因[1-3].引起電網(wǎng)故障的危害鳥種具有地區(qū)差異,且鳥種體型、習性、活動范圍各異,所造成的故障類型與故障機理也各不相同[4].為了提高鳥害防治的有效性,電網(wǎng)運維人員需要了解并識別輸電線路周邊活動的鳥種,針對不同鳥種可能引起的故障類型采取差異化的防治措施.
鳥種識別的方法包括圖像識別和鳴聲識別,近年來,研究人員針對影響電網(wǎng)安全的鳥種開展了圖像或鳴聲識別研究.通過提取巡檢圖像中的鳥類形狀、顏色和紋理等特征信息作為輸入量,利用智能學習算法構(gòu)建分類器[5],或者通過大樣本數(shù)據(jù)集訓練深度學習目標檢測算法[6-7],可以實現(xiàn)鳥種圖像識別.由于夜間活動或飛行中的鳥類圖像采集存在一定困難,有必要將圖像與鳴聲信息共同作為電網(wǎng)危害鳥種識別的手段.鳴聲識別是以鳥鳴信號作為特征提取對象,利用不同鳥類鳴叫聲的差異性進行分類.
通過鳴聲信息進行鳥種識別一般包括信號預處理、特征提取、算法識別等過程.常用的鳥類鳴聲特征參數(shù)包含Mel 倒譜系數(shù)(Mel-frequency Cepstrum Coefficients,MFCC)[8-10]、Gammatone 倒譜系數(shù)(Gammatone Frequency Cepstrum Coefficients,GFCC)[11]、線性預測倒譜系數(shù)[12-13]、功率譜密度[14]、Mel 子帶參數(shù)[15]和時頻譜圖特征[16-17]等.鳥種分類算法包括高斯混合模型[18-19]、隱馬爾科夫模型[20-22]、隨機森林[14,16,23]、支持向量機[15,24-25],以及卷積神經(jīng)網(wǎng)絡(Convolutional Neural Network,CNN)等深度學習算法[17-18,26-27].文獻[15]通過Mel 濾波器組輸出各個子帶的能量序列,然后基于自回歸模型分別對各個子帶輸出的隨時間變化的能量序列進行建模,得到野外環(huán)境下11 種鳥類的鳴聲參數(shù)化特征,并利用支持向量機進行分類.文獻[17]利用動態(tài)系統(tǒng)擴充數(shù)據(jù)集,生成替代訓練的數(shù)據(jù),提取鳥鳴信號的時頻譜圖特征,結(jié)合CNN 對6 種鳥類進行分類.文獻[19]以MFCC 作為特征參數(shù),結(jié)合高斯混合模型對陜西省8種鳥類的鳴叫聲和鳴唱聲分別進行建模識別.文獻[27]利用較容易獲取的鳥類鳴聲數(shù)據(jù)集和環(huán)境聲音對ResNet-50網(wǎng)絡進行訓練,把訓練好的模型遷移到鳴聲獲取較為困難的小數(shù)據(jù)集上進行分類,獲得了79%的準確率.文獻[28]對MFCC 和GFCC 進行融合,利用CNN對環(huán)境聲音進行分類,結(jié)果表明融合特征分類模型具有更高的識別精度.目前,對鳥類鳴聲的識別研究多是在較小的數(shù)據(jù)集上進行種類較少的鳥種分類,且使用單一的鳥鳴特征.由于輸電線路跨越距離較長,沿線經(jīng)過不同的地理環(huán)境,涉及的危害鳥種具有多樣化特點.為了輔助涉鳥故障防治,提高危害鳥種的識別準確率,有必要在多種類大數(shù)據(jù)集上開展鳥種鳴聲識別研究.
本文針對與輸電線路相關(guān)的23 種鳥類,通過對收集的鳴聲信號進行降噪與剪輯等預處理,構(gòu)建了包含3 290段鳴聲信號的數(shù)據(jù)集,然后計算鳥鳴信號的MFCC、GFCC 和短時能量(Short-term Energy,STE)特征,經(jīng)過組合與歸一化后得到新的特征集,將其作為CNN模型的輸入,對網(wǎng)絡進行訓練,利用Softmax 層進行分類識別.算例結(jié)果表明,本文所提出的方法對涉鳥故障相關(guān)鳥種具有較高的識別率,可為運維人員開展輸電線路鳥種識別與涉鳥故障防治提供參考.
由于鳥種鳴聲信號大多是在野外條件下采集的,其中含有大量噪聲,為了獲取更加清晰的鳴聲信號特征,提高鳥種鳴聲識別的準確率,需要對鳥鳴信號進行降噪處理.鳥鳴信號中含有的噪聲多為風聲和流水聲,可以看作加性噪聲.本文采用改進譜減法去除鳥鳴信號中的這類背景噪聲.
譜減法[29-30]是一種有效的降噪方法,在噪聲處理與語音增強方面應用廣泛.其基本原理是采用帶噪鳥鳴信號的功率譜減去噪聲段的平均能量值,從而得到降噪后的鳥鳴信號.已知鳥鳴信號前導噪聲段對應的幀數(shù)為T,采用Xi(k)表示經(jīng)過快速傅里葉變換后的鳥鳴信號,則噪聲段的平均能量值D(k)可表示為:
式中:i為第i幀;k為第k條譜線;|Xi(k)|為第i幀每個頻率分量的幅值.譜減法的計算方法為:
式中:a為過減因子;b為增益補償因子;|X′i(k)|表示譜減后的第i幀每個分量的幅值.
式(2)利用每一幀的值進行譜減,降噪效果較差,為得到較小的譜估算方差,提高鳥鳴音頻中環(huán)境噪聲的降噪效果,改進譜減法采用鳥鳴信號相鄰幀之間的平均值Yi(k)代替式(2)中的Xi(k)進行譜減計算.Yi(k)的表達式為:
對于第i幀,在Xi-P(i),…,Xi(k),…,Xi+P(k)之間計算其平均值Yi(k).
此外,由于鳥鳴信號中噪聲是隨機的,在降噪過程中會存在噪聲譜線的譜值大于a·D(k)的情況,若按式(2)進行計算會導致噪聲不能被完全消除.改進譜減法在降噪過程中從前導噪聲段保留了噪聲的最大值,利用噪聲最大值對含噪聲頻進行譜減,從而在譜減過程中盡可能減少噪聲殘留.本文將功率譜作為譜減對象,取式(3)中的P=1,即在相鄰3幀之間取平均值Yi(k)進行譜減計算.以高危鳥種大杜鵑的一段鳴聲信號為例,原始大杜鵑鳴聲信號如圖1(a)所示,經(jīng)過改進譜減法降噪后的鳴聲信號波形如圖1(b)所示.可見,改進譜減法有效濾除了原始鳴聲信號中的噪聲,使得鳥鳴信號更加清晰.
降噪后的鳥種鳴聲信號大多持續(xù)時間較長,而且可能包含其他鳥類鳴聲的干擾,為了節(jié)約計算資源并減少干擾,需要對降噪后的鳥鳴信號進行剪裁.自然界中,絕大多數(shù)鳥類一聲鳴叫的時間都在1 s 以內(nèi).因此,本文將鳥鳴信號樣本均剪裁為1 s,構(gòu)建鳥鳴樣本集,用于特征提取.以圖1(b)中的大杜鵑信號為例,剪裁為1 s后的信號波形如圖1(c)所示.
圖1 大杜鵑鳴聲信號預處理效果Fig.1 Preprocessing results of a cuculus canorus sound signal
根據(jù)電網(wǎng)運行部門關(guān)于歷史涉鳥故障及相關(guān)鳥種的統(tǒng)計結(jié)果,本文以某省電網(wǎng)引起輸電線路涉鳥故障的13種高危鳥類、8種微害鳥類和2種無害鳥類為對象,構(gòu)建23 種鳥類的鳴聲信號樣本集,每種鳥類的樣本數(shù)目為106~209 個不等,共計3 290 個樣本,其中高危、微害和無害鳥種樣本數(shù)量分別為1 848、1 193和249,每個樣本時長均為1 s,采樣頻率為16 kHz.上述用以鳴聲識別研究的電網(wǎng)涉鳥故障相關(guān)鳥種樣本數(shù)量及導致的故障類型如圖2 所示.為保證數(shù)據(jù)集的可信度和真實性,采用不同噪聲環(huán)境和錄音條件下的鳥類鳴聲構(gòu)建數(shù)據(jù)集,同一段鳴聲不重復使用.
圖2 電網(wǎng)涉鳥故障相關(guān)鳥種鳴聲樣本分布Fig.2 Sound sample distribution of bird species related to power grid faults
短時能量是鳥鳴信號時域特征,由于不同的鳥鳴音節(jié)之間能量差別十分顯著,因此可以通過短時能量的變化來分析不同鳥種的發(fā)音特點.已知降噪后并進行分幀加窗處理的鳥鳴時域信號為xi(u),短時能量Est(i)的計算公式為:
式中:R表示幀長;I表示鳥鳴音頻總幀數(shù).
MFCC特征是聲音識別領域最常用的特征之一,它將時域信號轉(zhuǎn)化為頻域,然后基于人耳的聽覺機理來分析語音頻譜,具有特征表達準確、特征維度低的優(yōu)點.MFCC提取流程如下:
1)計算每一幀信號的線譜能量Ei(k),即
2)將每一幀信號的線譜能量通過Mel 濾波器組,計算在Mel濾波器組中的能量Si(m),即
式中:m表示濾波器編號;M為濾波器的個數(shù);Hm(k)為濾波器的頻率響應;N為譜線條數(shù).
3)將通過Mel 濾波器的能量取對數(shù)后進行離散余弦變換(Discrete Cosine Transform,DCT),得到鳥鳴信號的MFCC特征參數(shù),即
式中:d為進行DCT 后的譜線,1≤d≤D,D為MFCC 特征維數(shù).通過式(7)計算得到的MFCC 特征參數(shù)為二維矩陣,將其轉(zhuǎn)化為圖像,橫、縱坐標分別表示幀數(shù)和特征維度,采用顏色深淺代表參數(shù)值大小,即可得到鳥鳴信號的MFCC特征圖.
鳥鳴信號的GFCC 特征與MFCC 特征提取流程的主要差別在于使用的濾波器不同,GFCC 特征是將鳥鳴信號輸入n通道的Gammatone 濾波器[31],其表達式為:
式中:f、t、φ分別為頻率、時間和相位;A為濾波器增益的常數(shù);n為濾波器的階數(shù);u(t)為單位階躍函數(shù);s為濾波器帶寬,其計算式為:
式中:BER(f)為等效矩形帶寬.
Gammatone 濾波器對鳥種鳴聲信號的濾波過程可以表示為:
式中:Si(g)為第g個濾波器輸出的對數(shù)能量值;Hg(k)為Gammatone 濾波器頻率響應;g為濾波器編號;G為濾波器的個數(shù).對每個濾波器的輸出取對數(shù)后進行離散余弦變換,其表達式為:
式中:Gi(q)為第q維GFCC 特征參數(shù),1≤q≤Q,Q為GFCC特征維數(shù).
鳥鳴識別相較于人類聲音識別更為困難,單一類型特征往往無法對鳥鳴特點進行完全表達,故需要進行特征的組合.由于GFCC特征與MFCC特征使用不同的濾波器組,二者組合能夠有效改善MFCC特征能量泄漏問題,而GFCC 和MFCC 特征都是頻域特征,引入短時能量可以增加時域信息.所以本文將MFCC 特征及其一階差分、GFCC 特征及其一階差分和短時能量特征進行組合,然后刪除差分為零的幀,經(jīng)過歸一化得到鳥種鳴聲的組合特征集.組合特征計算流程如圖3所示,相關(guān)計算參數(shù)如表1所示.
圖3 組合特征計算流程圖Fig.3 Flow chart of combined feature calculation
表1 組合特征相關(guān)計算參數(shù)Tab.1 Parameters related to the combined features
MFCC 和GFCC 特征都屬于靜態(tài)特征,為了獲取鳥鳴信號的動態(tài)特性,對MFCC 和GFCC 特征的一階差分進行計算.同時,為了降低信號中的毛刺對一階差分動態(tài)特征的影響,計算相鄰三幀的一階差分并求取其平均值.以MFCC 特征為例,一階差分特征的計算方法為:
以圖2所示的大杜鵑鳴聲信號為例,取MFCC 和GFCC 特征維數(shù)均為12,通過上述方法計算所得的MFCC 特征圖、GFCC 特征圖、二者的一階差分特征圖以及組合特征圖如圖4所示.
圖4 大杜鵑鳴聲信號的特征參數(shù)圖Fig.4 Sound signal feature diagrams of cuculus canorus
將上述不同特征進行組合,可以對鳥種鳴聲包含的聽覺信息進行綜合表征.組合特征集的維數(shù)由MFCC、GFCC 和短時能量特征維數(shù)決定.由于一階差分是通過對不同幀進行差分運算,差分前后特征維數(shù)不變,而短時能量特征只有一維,故組合特征維數(shù)為2(D+Q)+1,不同特征的維度如表2 所示.由于采用相鄰三幀計算差分的方法,導致首尾兩幀一階差分值為不包含信息的零值,因此將首尾兩幀刪除.
表2 組合特征的維度Tab.2 Dimensions of the combined features
鳥種鳴聲的短時能量、MFCC 特征與GFCC 特征的計算方法不同,導致數(shù)值上存在較大差異,為防止特征尺度與量綱不同對識別結(jié)果造成影響,需要將各個特征量歸一化到[0,1].特征量歸一化方法為:
式中:Fmax和Fmin分別表示特征量F的最大值和最小值.以大杜鵑的鳴聲信號為例,將各個特征量進行歸一化后,組合特征如圖4(e)所示.
本文構(gòu)建24 層卷積神經(jīng)網(wǎng)絡用于鳥種鳴聲特征的訓練與鳥種識別,網(wǎng)絡主要包含5 個卷積層+ReLU、5 個批量歸一化層和4 個池化層.卷積核和池化核大小分別為[3×3]和[2×2],設置卷積步幅為1,池化步幅為2.卷積神經(jīng)網(wǎng)絡結(jié)構(gòu)如圖5所示.
圖5 卷積神經(jīng)網(wǎng)絡結(jié)構(gòu)Fig.5 Structure of the convolutional neural network
網(wǎng)絡輸入大小為224×224×3,將保存為相同大小的組合特征作為網(wǎng)絡的輸入,經(jīng)Conv_1、Conv_2、Conv_3 卷積層進行卷積,通道數(shù)分別為12、24 和48,卷積前后特征大小保持不變.在每次卷積之后進行池化操作,池化以后通道數(shù)目不變,特征大小變?yōu)樵瓉淼?∕2.Conv_4 和Conv_5 的卷積核個數(shù)都為48,卷積前后特征圖大小和通道數(shù)均保持不變,卷積后的池化層使特征大小變?yōu)樵瓉淼?∕2,最終輸出大小為14×14×48,經(jīng)過全連接層后輸出一個包含23 種鳥類可能性的概率分布.
本文開展的電網(wǎng)危害鳥種鳴聲識別算例是在Matlab 2021a 的軟件環(huán)境以及CPU 為AMD Core R7-5800H、主頻3.2 GHz、16 GB 內(nèi)存,GPU 為NVIDIA GeForce RTX3060、顯存大小為6 GB 的硬件環(huán)境下完成.采用小批量梯度下降法(Mini-Batch Gradient Descent,MBGD)進行網(wǎng)絡優(yōu)化,設置批大小為16,最大輪數(shù)為8,初始學習率為0.000 3,每經(jīng)6 輪訓練學習率降低為原來的50%,由此對23 種鳥類鳴聲信號進行分類識別.
利用本文構(gòu)建的涉鳥故障相關(guān)鳥種鳴聲樣本集對CNN 進行訓練,識別鳥種鳴聲,具體流程如圖6所示.
圖6 鳥種鳴聲識別流程圖Fig.6 Flowchart for sound identification of bird species
由于不同的數(shù)據(jù)集劃分比例會對識別結(jié)果產(chǎn)生影響,分別按照訓練集、驗證集和測試集比例為8∶1∶1、7∶1∶2、7∶2∶1 和6∶2∶2 劃分數(shù)據(jù)集,設置組合特征維度為57 維時對網(wǎng)絡進行訓練,識別結(jié)果如表3 所示.可見,當數(shù)據(jù)集劃分比例為8∶1∶1 時驗證準確率最高為91.49%,測試準確率最高為91.21%.
表3 不同數(shù)據(jù)集劃分比例下的識別結(jié)果Tab.3 Identification results under different division proportions of data set
為了探究組合特征集的識別效果,設置數(shù)據(jù)集劃分比例為8∶1∶1,同時以MFCC、GFCC、MFCC+STE、GFCC+STE、MFCC+GFCC 作為CNN 模型的輸入,將其作為對照組.當MFCC 和GFCC 的特征維數(shù)D、Q均取12 時,以驗證集準確率作為評價指標.上述各組特征集對應的CNN訓練結(jié)果如圖7所示.
圖7 不同鳴聲特征下的CNN訓練結(jié)果Fig.7 CNN training results with different bird sound feature set
由圖7 可知,采用單一MFCC 和GFCC 特征作為輸入對CNN 進行8 輪訓練后,驗證準確率分別為88.75%和88.14%;引入短時能量STE 特征后,驗證準確率提升為89.06%和89.67%.采用MFCC+GFCC組合特征作為網(wǎng)絡輸入后,驗證準確率可進一步提升至91.50%.以本文組合特征作為輸入時,CNN 模型的驗證準確率達到了92.40%,相比于5 個對照組分別提高了3.65%、4.26%、3.34%、2.73%和0.9%,這一結(jié)果表明,采用組合特征作為網(wǎng)絡輸入,可使CNN取得更好的訓練效果.
MFCC 和GFCC 特征包含的鳥種鳴聲信息量受到特征維數(shù)D和Q的影響,特征維數(shù)低,包含的鳥鳴信息較少;特征維數(shù)高,則干擾更為嚴重且計算量增大,占用更多計算資源.為了研究組合特征維數(shù)對識別結(jié)果的影響,設置數(shù)據(jù)集劃分比例為8∶1∶1,D=Q且分別取值6、10、14、18、22、26,即組合特征維數(shù)分別為25、41、57、73、89 和105,比較不同特征維數(shù)下CNN 模型的驗證集準確率,結(jié)果如圖8所示.可見,當組合特征維數(shù)從25增加至73時,驗證準確率逐漸增大,分別增大至86.63%、90.58%、91.50%、93.31%;當特征維數(shù)增加至89和105時,驗證準確率反而下降,分別下降至91.79%和90.58%.因此,本文取73 維組合特征訓練后的CNN模型用以測試集的鳥種識別.
圖8 不同特征維數(shù)下的CNN訓練結(jié)果Fig.8 CNN training results with different feature dimensions
采用訓練后的CNN 模型對23 種鳥類鳴聲測試集進行識別,結(jié)果如圖9所示.由圖9可知,識別正確率分布在61.1%~100%內(nèi),總體識別正確率可達92.2%.13 種高危鳥類和8 種微害鳥類的平均識別正確率分別為94.3%和89.9%,高危鳥種鳴聲的識別效果表現(xiàn)更為優(yōu)異,其中大杜鵑、戴勝、蒼鷺等8 種高危鳥種,大天鵝、松鴉、翠鳥3 種微害鳥種的測試樣本識別正確率均為100%,其余5種高危鳥種和5種微害鳥種的識別正確率為61%~80%的有2種,為81%~90%的有5 種,在90%以上(不包含100%)的有3 種.無害鳥種作為干擾選項仍然具有較好的識別效果,鵪鶉和環(huán)頸斑鳩的識別正確率分別為92.3%和83.3%.
圖9 鳥種鳴聲測試集的識別結(jié)果Fig.9 Recognition results of bird sound signals in test set
在樣本預測類別結(jié)果中,大嘴烏鴉對其他鳥種識別的干擾最為嚴重,5 個禿鼻烏鴉、2 個赤麻鴨樣本均被錯誤識別為大嘴烏鴉.禿鼻烏鴉識別正確率最低,這是由于同科鳥種鳴聲非常相似,造成了識別難度增大.以蒼鷹、鶚、鳳頭麥雞、喜鵲、大杜鵑、大天鵝6 種鳥類的其中一個鳴聲樣本為例,其識別結(jié)果如圖10所示.由圖10可知,確定概率均在83%以上,說明網(wǎng)絡模型對測試集具有較好的識別效果.
圖10 部分鳥種的識別結(jié)果和確定概率Fig.10 Recognition results and determinate probabilities of some bird species
本文提出了一種用以電網(wǎng)涉鳥故障危害鳥種識別的方法.通過對鳥種鳴聲信號進行降噪等預處理,提取MFCC、GFCC 與短時能量等構(gòu)成鳴聲組合特征集.采用CNN 構(gòu)建鳥種識別模型,按照8∶1∶1比例劃分訓練集、驗證集和測試集,以73 維組合特征作為模型輸入時可取得最優(yōu)識別效果.對23 種輸電線路涉鳥故障相關(guān)鳥種的整體識別正確率可達92.2%,其中高危鳥種可達94.3%.本文研究可為電網(wǎng)運維人員開展鳥種智能識別與差異化防治提供參考.