肖曾翔, 徐啟峰
(福州大學(xué)電氣工程與自動(dòng)化學(xué)院,福州 350106)
鳥巢與風(fēng)飄物入侵是危及變電站運(yùn)行安全的重大問題,需要及時(shí)地加以識(shí)別與排除。異物識(shí)別的核心是圖像特征提取,目前深度學(xué)習(xí)是提取圖像特征的主要方法。通過神經(jīng)網(wǎng)絡(luò)對(duì)原始圖像信息濃縮精煉,最終獲得異物的特征圖像作為識(shí)別的依據(jù)。卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)通過多卷積層結(jié)合多池化層使得網(wǎng)絡(luò)的特征表達(dá)更加豐富[1],可自動(dòng)學(xué)習(xí)目標(biāo)特征,因此被廣泛應(yīng)用于各種識(shí)別算法中。這些算法可以分為兩類[2]:一類是基于識(shí)別候選區(qū)域的R-CNN系列算法,精度高但速度慢;另一類是基于回歸的SSD(single shot detection)算法與YOLO(you only look once)系列算法,精度稍低但檢測(cè)速度快。
針對(duì)飛機(jī)跑道異物識(shí)別,文獻(xiàn)[3]基于Faster R-CNN(faster regions with convolutional neural network features)算法,將VGG16Net作為特征提取網(wǎng)絡(luò),同時(shí)改進(jìn)損失函數(shù),并自行建立數(shù)據(jù)集進(jìn)行驗(yàn)證。文獻(xiàn)[4]采用了小波變換與數(shù)學(xué)形態(tài)學(xué)的方法,對(duì)小波分解后圖像的高頻與低頻部分邊緣檢測(cè),能達(dá)到90%以上的檢測(cè)率。文獻(xiàn)[5]采用了R-CNN算法對(duì)3類小型電力部件進(jìn)行識(shí)別,對(duì)網(wǎng)絡(luò)進(jìn)行預(yù)訓(xùn)練后,平均準(zhǔn)確率(mean average precision,mAP)可達(dá)80%及以上。文獻(xiàn)[6-7]采用改進(jìn)YOLOv3算法對(duì)街道行人進(jìn)行識(shí)別,通過改良檢測(cè)框與修改網(wǎng)絡(luò),以減少特征信息損失,與YOLOv3相比,能夠?qū)⑵骄鶞?zhǔn)確率提高4.85%。文獻(xiàn)[8]在SSD算法的基礎(chǔ)上,利用遷移學(xué)習(xí)對(duì)變電站設(shè)備部件進(jìn)行識(shí)別,同時(shí)改良預(yù)選框比例以適配識(shí)別對(duì)象,其mAP達(dá)到91%。文獻(xiàn)[9]結(jié)合了Dense-SIFT(dense scale invariant feature transform)、DCNN(diffusion-convolutional neural networks)以及Faster R-CNN對(duì)鐵軌狀態(tài)進(jìn)行檢測(cè),可快速有效地識(shí)別出軌道的各種缺陷。文獻(xiàn)[10]在卷積神經(jīng)網(wǎng)絡(luò)DenseNet的基礎(chǔ)上添加殘差注意力模塊,以災(zāi)難場景為識(shí)別對(duì)象,驗(yàn)證了這一方法的適用性。
目前,圖像識(shí)別主要應(yīng)用于道路交通、人員識(shí)別等場合,在電力系統(tǒng)異物識(shí)別領(lǐng)域研究較少,僅有的研究集中在線路異物以及設(shè)備元件。文獻(xiàn)[11]在tensorflow的框架下構(gòu)建神經(jīng)網(wǎng)絡(luò),對(duì)高壓線路上的異物進(jìn)行識(shí)別,識(shí)別準(zhǔn)確率達(dá)到96.67%。文獻(xiàn)[12]提出了隔離開關(guān)狀態(tài)角概念,將隔離開關(guān)開合角度的梯度方向直方圖(histogram of oriented gradients,HOG)作為特征描述因子,結(jié)合支持向量機(jī)(support vector machine,SVM)識(shí)別高壓隔離開關(guān)的狀態(tài),達(dá)到了90%以上的識(shí)別率。文獻(xiàn)[13]研究了輸電線路的異物識(shí)別,通過精簡關(guān)鍵幀、改進(jìn)幀差法、提出ORB(oriented brief)算子等方法提取異物特征,能夠提升識(shí)別速度,且識(shí)別率達(dá)到93.6%。
現(xiàn)提出一種基于改進(jìn)卷積神經(jīng)網(wǎng)絡(luò)的鳥巢與風(fēng)飄物識(shí)別方法。在變電站無人或少人值守的背景下,基于站內(nèi)的監(jiān)控圖像,采用聚類算法重新設(shè)定錨框尺寸,并糅合深淺層圖像特征,修改損失函數(shù)計(jì)算方法以提升識(shí)別率,修改卷積方式以提升模型的訓(xùn)練速度,利用改進(jìn)的神經(jīng)網(wǎng)絡(luò)方法對(duì)圖像中的異物進(jìn)行識(shí)別。
YOLO算法最早由Redmon等[14]提出,經(jīng)過不斷地改良發(fā)展出YOLOv4與YOLOv5[15-17],使其具有了更深的網(wǎng)絡(luò)結(jié)構(gòu)、更快的識(shí)別速度以及更高的識(shí)別精度。其中YOLOv5在保留YOLOv4識(shí)別效果的同時(shí),結(jié)構(gòu)上更加靈活,體積更小,因此將YOLOv5作為基礎(chǔ)算法。初代YOLO算法的網(wǎng)絡(luò)結(jié)構(gòu)與GoogLeNet類似,原始圖像經(jīng)由24個(gè)卷積池化層以及2個(gè)全連接層后輸出特征圖像。
YOLOv5在結(jié)構(gòu)上與初代相比已經(jīng)有了明顯的改變,網(wǎng)絡(luò)結(jié)構(gòu)更深,并糅合深淺層特征,加強(qiáng)特征提取能力,最終提供多個(gè)檢測(cè)層以應(yīng)對(duì)不同規(guī)格的識(shí)別對(duì)象。YOLOv5識(shí)別異物基本流程如下:①將變電站中監(jiān)控圖像按等比縮放至416*416后送入識(shí)別網(wǎng)絡(luò);②按不同尺度分別對(duì)異物邊界框進(jìn)行預(yù)測(cè),得到尺寸19*19、38*38、76*76的3種特征圖像,并分割得到361、1 444、5 776個(gè)網(wǎng)格。每個(gè)網(wǎng)格預(yù)測(cè)3個(gè)邊框(即錨框),每個(gè)邊框包含3類信息(分別為位置尺寸信息,置信度,異物類別);③采用GIoU(generalized intersection over union)作為損失函數(shù)計(jì)算方法,計(jì)算每個(gè)邊框的置信度,通過設(shè)定閾值,過濾低置信度邊界框,得到預(yù)測(cè)目標(biāo)框。
變電站的異物入侵主要是風(fēng)飄物搭載到設(shè)備上,或是鳥類筑巢,容易造成線路故障甚至事故[18-19]。一般鳥巢的體積較小,出現(xiàn)時(shí)機(jī)難以確定,需要時(shí)刻監(jiān)視,目前沒有好的解決方法。本文從入侵異物本身的特性出發(fā),提出基于改進(jìn)卷積神經(jīng)網(wǎng)絡(luò)的識(shí)別方法。
YOLOv5算法盡管在識(shí)別速率與精度方面有所提升,但對(duì)于具體的應(yīng)用場景并沒有專門的應(yīng)對(duì)方案。針對(duì)模型在訓(xùn)練過程中輸入、計(jì)算、輸出的3個(gè)環(huán)節(jié)進(jìn)行優(yōu)化,提出的方法包括:①采用聚類方法對(duì)標(biāo)注圖像的錨框尺寸進(jìn)行重新設(shè)定,以適配異物圖像;②針對(duì)變電站異物較小的特點(diǎn),增添上采樣模塊,并與底層特征進(jìn)行融合,以加強(qiáng)特征表達(dá);③在上采樣模塊中,采用深度可分離卷積網(wǎng)絡(luò)作為卷積層,降低計(jì)算量,以提升訓(xùn)練速度;④采用CIoU(complete IoU)作為損失函數(shù),以提升損失計(jì)算收斂速度與識(shí)別精度。修改后的網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。
Focus為注意力模塊,是3*3的卷積層;SepConv為深度可分離卷積層;CSP為跨階段局部網(wǎng)絡(luò);SPP為空間金字塔池化網(wǎng)絡(luò);Upsample為上采樣模塊;Concat為連接層
2.2.1 聚類優(yōu)化錨框尺寸
YOLO算法按照對(duì)象大小,對(duì)其特征圖設(shè)定了3種規(guī)格,每種規(guī)格下另設(shè)有3種尺寸錨框?qū)?yīng)識(shí)別對(duì)象。然而其尺寸不一定適配于所有識(shí)別對(duì)象,為了更為契合實(shí)際異物的大小特點(diǎn),采用聚類方法重新確定錨框尺寸。
K-means聚類算法被廣泛應(yīng)用于各種分類情景[20],其基本原理為根據(jù)距離來判斷類別歸屬:預(yù)先將數(shù)據(jù)分為K組,隨機(jī)選取K個(gè)對(duì)象作為初始的聚類中心,計(jì)算其余數(shù)據(jù)與聚類中心的距離,將其分配給最近的聚類中心。每完成一次分配,聚類中心便重新計(jì)算,不斷重復(fù)上述過程直到滿足終止條件。
針對(duì)鳥巢與風(fēng)飄物,實(shí)地拍攝獲取了3 148張圖像。經(jīng)過標(biāo)注,得到1 992張有效圖片,部分標(biāo)注效果如圖2所示。
圖2 圖片標(biāo)注效果預(yù)覽
由于每個(gè)標(biāo)注框的中心點(diǎn)已經(jīng)確定,遂抽取標(biāo)注框的尺度信息(包括寬與高)作為待處理參數(shù),設(shè)置9個(gè)聚類中心,3種規(guī)格的特征圖分別配以3種錨框尺寸,經(jīng)過5 000次迭代計(jì)算,聚類前后錨框尺寸結(jié)果如表1所示。
表1 優(yōu)化前后的錨框尺寸
經(jīng)過聚類處理,錨框尺度能夠更精確地框選異物個(gè)體。
2.2.2 特征加強(qiáng)
在特征提取過程中,通過卷積將特征逐步濃縮,但同時(shí)也拋棄了部分特征。考慮到變電站入侵異物體型較小,表面紋路細(xì)膩,為加強(qiáng)特征表達(dá),在模型中添加上采樣模塊,并融合底層特征以提高圖像的識(shí)別率。
在對(duì)圖像進(jìn)行像素級(jí)別處理時(shí),為匹配圖像規(guī)格,通常會(huì)利用上采樣與下采樣以增大或縮小圖像。常用的方法除插值法外,還有反卷積與反池化。
以插值法中的最鄰近元法(nearest neighbor interpolation,NNI)為例,通過將距離待求像素最近的鄰像素灰度值賦予待求像素,以達(dá)到增加圖形尺寸的目的,如圖3所示。
數(shù)字為示例像素值
在調(diào)整特征圖像尺寸后,通過連接最淺層特征圖像以融合底層特征,加強(qiáng)了圖像的特征提取。
2.2.3 改進(jìn)卷積方式
進(jìn)一步地融合底層特征,雖然加強(qiáng)了圖像的特征提取,但也為模型帶來了額外的計(jì)算量。為輕量化模型,降低計(jì)算量,提升訓(xùn)練速度,本文通過修改卷積方式,大幅縮減了訓(xùn)練用時(shí),降低了硬件的計(jì)算壓力。
深度可分離卷積(depthwise separable convolution,DSC)作為Xception與MobileNet的重要組成部分[20-22],被廣泛應(yīng)用于圖像識(shí)別領(lǐng)域,其原理是將標(biāo)準(zhǔn)卷積過程分解為深度卷積(depthwise convolution)與逐點(diǎn)卷積(pointwise convolution)兩步分別進(jìn)行,如圖4所示。
圖4 深度可分離卷積計(jì)算示意
圖像在輸入時(shí)一般被分為三彩色通道,將其泛化為M個(gè)通道,在經(jīng)過深度可分離卷積層時(shí),首先經(jīng)過尺度為Dk*Dk,且卷積核為M個(gè)(與圖像通道數(shù)相同)的逐通道卷積計(jì)算,形成M個(gè)特征圖,接下來通過N個(gè)1*1*M的點(diǎn)卷積運(yùn)算形成N個(gè)特征圖像輸出。
通常情況下,輸入圖像會(huì)被規(guī)范為正方形,假設(shè)輸入圖像尺度為Di*Di,以常規(guī)卷積作為參照對(duì)象,在進(jìn)行一次普通卷積過程中產(chǎn)生的計(jì)算量為
(1)
式(1)中:Dk為卷積核尺寸;Di為輸入圖像尺寸。
在深度可分離卷積的計(jì)算中,兩部分的計(jì)算量分別為
(2)
(3)
因此,通過修改卷積方式帶來的計(jì)算量優(yōu)化比例K′為
(4)
通常情況下K′都會(huì)小于1。因此,通過修改卷積方式,可以明顯減輕模型的計(jì)算壓力。
2.2.4 損失函數(shù)修正
在完成模型輸入端與結(jié)構(gòu)的優(yōu)化后,損失函數(shù)在模型的訓(xùn)練過程中起著調(diào)整輸出的作用。原始YOLOv5模型采用的GIoU損失函數(shù)仍存在不足,如部分情況下的退化問題。因此,通過修正損失函數(shù),對(duì)模型的輸出端進(jìn)行優(yōu)化提升。
交并比(intersection over union,IoU)損失函數(shù)旨在表現(xiàn)預(yù)測(cè)個(gè)體位置與實(shí)際個(gè)體位置的差別(圖5)可表示為[23]
圖5 IoU計(jì)算方式
(5)
式(5)中:A為預(yù)測(cè)框;B為目標(biāo)框。
但I(xiàn)oU存在兩個(gè)問題:①預(yù)測(cè)框A與目標(biāo)框B不相交時(shí),IoU(A,B)=0,損失函數(shù)不可導(dǎo);②若預(yù)測(cè)框與目標(biāo)框尺度確定,在相交值相同的情況下,IoU(A,B)也是相同的,因此無法反映其實(shí)際的相交情況。文獻(xiàn)[24]提出了GIoU(generalized IoU)以改進(jìn)IoU算法,同時(shí)也應(yīng)用在YOLOv5算法中(圖6)。
(6)
式(6)中:C為圖6中的最小外接矩形。
圖6 GIoU計(jì)算方式
但是GIoU也存在不足,如當(dāng)目標(biāo)框包含預(yù)測(cè)框時(shí),GIoU算法退化為IoU,無法確認(rèn)預(yù)測(cè)框的位置,為進(jìn)一步改良IoU系列損失函數(shù),文獻(xiàn)[25]提出了DIoU(distance-IoU)與CIoU。
通常IoU系列的損失函數(shù)L定義為
L=1-IoU+R(B,Bgt)
(7)
式(7)中:R(B,Bgt)為預(yù)測(cè)框與目標(biāo)框的懲罰項(xiàng);B為預(yù)測(cè)框;Bgt為目標(biāo)框。
(8)
式(8)中:ρ(B,Bgt)為預(yù)測(cè)框與目標(biāo)框的歐幾里得距離;c為預(yù)測(cè)框與目標(biāo)框最小外接矩形的對(duì)角線距離,包括重疊面積與兩個(gè)框的中心點(diǎn)距離,但沒有計(jì)及預(yù)測(cè)框與目標(biāo)框的高寬比的關(guān)系,因此需要引入CIoU。
CIoU損失值在結(jié)構(gòu)上比DIoU損失值多了影響因子α、γ,CIoU的損失值LCIoU可表示為
LCIoU=LDIoU+αγ
(9)
(10)
(11)
式中:α為權(quán)重系數(shù);γ用來衡量高寬比的一致性;ω、h分別為預(yù)測(cè)框的寬與高;ωgt與hgt分別為目標(biāo)框的寬與高。
因此,CIoU解決了目標(biāo)框與預(yù)測(cè)框高寬比擬合的問題,更優(yōu)于DIoU,用來修正GIoU作為本文模型的損失函數(shù)。
從福建電網(wǎng)某變電站實(shí)地拍攝獲取了3 148張圖像,圖像規(guī)格為5 472*3 648、2 048*3 648。其中入侵異物圖像為1 992張,采用LabelImg對(duì)圖像進(jìn)行標(biāo)注,獲得相對(duì)應(yīng)的標(biāo)注文件。
對(duì)所有包含異物的圖像按照訓(xùn)練集∶測(cè)試集=1∶9的比例進(jìn)行隨機(jī)選取,分別獲得訓(xùn)練圖像1 800張,測(cè)試圖像192張,并依據(jù)圖像標(biāo)注框重新計(jì)算錨框尺度。在訓(xùn)練過程中,計(jì)算每代的用時(shí)、查全率(Recall)、查準(zhǔn)率(Precision)、各類別平均準(zhǔn)確率(mAP)、損失值(Loss),并作為評(píng)判依據(jù)。
(12)
(13)
式中:TP(ture positives)為正樣本被預(yù)測(cè)為真的數(shù)目;FP(false positives)為負(fù)樣本被預(yù)測(cè)為真的數(shù)目;FN(false negatives)為正樣本被預(yù)測(cè)為假的數(shù)目。
之后依據(jù)Precision-Recall曲線計(jì)算曲線與坐標(biāo)軸所圍面積,得到平均準(zhǔn)(average precision,AP)與各類別平均準(zhǔn)確率(mean average precision,mAP)值作為判定指標(biāo)。
實(shí)驗(yàn)環(huán)境為64位Windows7操作系統(tǒng),CPU為Intel Core i5-6500 @3.20 GHz×4,內(nèi)存大小為8 GB。統(tǒng)一訓(xùn)練迭代數(shù)設(shè)定為100,識(shí)別效果如圖7所示。
nest為鳥巢;plastic bag為風(fēng)飄物
圖8反映出改進(jìn)前后評(píng)級(jí)參數(shù)隨訓(xùn)練時(shí)長的變化情況。可以看出,改進(jìn)后的模型在保持精度的同時(shí),訓(xùn)練用時(shí)縮短約33%。尤其在訓(xùn)練鳥巢等表面紋理復(fù)雜的異物圖像時(shí),得益于融合底層特征以及深度可分離卷積網(wǎng)絡(luò)的應(yīng)用,能夠更快地提取特征圖像、提升識(shí)別精度。
圖8 改進(jìn)前后的對(duì)比
表2反映了在模型改進(jìn)前后不同異物的識(shí)別結(jié)果。為了說明修改后模型的優(yōu)勢(shì),選取常見的Faster R-CNN與SSD模型對(duì)相同的數(shù)據(jù)進(jìn)行訓(xùn)練,4種算法在識(shí)別兩種異物時(shí),識(shí)別效果對(duì)比如表3所示。
表2 模型改進(jìn)前后的最佳識(shí)別結(jié)果
表3 4種模型的最佳識(shí)別結(jié)果
可以看出,所提出的方法在對(duì)典型的入侵異物進(jìn)行識(shí)別時(shí),與其他常用識(shí)別算法相比有著明顯的優(yōu)勢(shì),尤其在數(shù)據(jù)量不充足的情況下,可以得到更高的精度與更快的訓(xùn)練速度,在保證mAP的基礎(chǔ)上,改進(jìn)后的模型更輕量化,更適于計(jì)算能力有限但又有圖像識(shí)別需求的應(yīng)用場景。
(1)提出了一種基于改進(jìn)卷積神經(jīng)網(wǎng)絡(luò)的變電站鳥巢與風(fēng)飄物識(shí)別方法。這一方法通過聚類重新設(shè)定圖像的錨框尺寸、增添上采樣模塊以糅合深淺層特征并修改損失函數(shù)與卷積方法,從而提高了識(shí)別率并減少了計(jì)算時(shí)間。
(2)將本文方法應(yīng)用于福建電網(wǎng)某變電站,對(duì)鳥巢的識(shí)別率達(dá)到97.2%,對(duì)風(fēng)飄物的識(shí)別率達(dá)到86.6%,高于YOLOv5算法的94.98%與85.44%,訓(xùn)練時(shí)間縮短了33%以上。
(3)方法可以同時(shí)識(shí)別兩種異物,平均識(shí)別率為91.9%,遠(yuǎn)遠(yuǎn)高于Faster R-CNN的55.81%和SSD的59.63%,同時(shí)表明本文方法在小樣本條件下也具備較高的識(shí)別率。下一步將研究圖像的預(yù)處理方法,以提高模型的泛化能力。