種法廣,溫 蜜,田英杰,張 凱
(1. 上海電力大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,上海 200090;2. 國網(wǎng)上海市電力公司,上海 200122)
隨著輸電線路的不斷建設(shè)以及電網(wǎng)技術(shù)的創(chuàng)新發(fā)展,基于機(jī)器人和無人機(jī)的智能電力巡檢技術(shù)已經(jīng)被廣泛應(yīng)用。電力絕緣子是對(duì)輸電線路起到支撐與絕緣作用的重要電力部件,主要有陶瓷、玻璃和復(fù)合絕緣子三種類型,但其長期暴露在野外容易出現(xiàn)故障,一旦出現(xiàn)故障將會(huì)嚴(yán)重影響穩(wěn)定的電能輸送[1]。為保障電網(wǎng)穩(wěn)定運(yùn)行,對(duì)輸電線路巡檢中故障絕緣子的檢測(cè)尤為重要,其中絕緣子缺陷則是常見的故障類別之一[2]。通常來說,絕緣子處于森林、房屋、河流和不同天氣(如雨、雪、霧)等復(fù)雜場(chǎng)景,且出現(xiàn)的缺陷區(qū)域較小,給絕緣子缺陷檢測(cè)帶來一定挑戰(zhàn)。
目前絕緣子缺陷檢測(cè)的方法可分為人工巡檢、基于機(jī)器學(xué)習(xí)的圖像識(shí)別技術(shù)和基于深度學(xué)習(xí)的目標(biāo)檢測(cè)算法。人工巡檢主要通過人工排查絕緣子明顯、直觀的故障,費(fèi)時(shí)費(fèi)力,且存在安全隱患?;跈C(jī)器學(xué)習(xí)的圖像識(shí)別技術(shù)如局部二值模式特征(Local Binary Pattern,LBP)[3],方向梯度直方圖特征(Histogram of Oriented Gradient,HOG)[4]和Deformable Part Models (DPM)目標(biāo)檢測(cè)算法[5]等雖已取得一定的效果,但其主要使用單一特征(如顏色、紋理、形狀等),同時(shí)依賴人工提取特征,工作量大,檢測(cè)效率低。
近年來,一系列深度學(xué)習(xí)檢測(cè)算法也相繼提出[6],主要分為以Region Convolutional Neural Networks(R-CNN)[7],F(xiàn)ast R-CNN[8],F(xiàn)aster R-CNN[9]和Mask R-CNN[10]等算法為代表的二階檢測(cè)器和以You Only Look Once(YOLO)[11],Single Shot MultiBox Detector(SSD)[12]和YOLOv3[13]等算法為代表的一階檢測(cè)器。文獻(xiàn)[14]通過搭建卷積神經(jīng)網(wǎng)絡(luò)(CNN)定位絕緣子,結(jié)合超像素分割等方法對(duì)絕緣子進(jìn)行建模識(shí)別缺陷部位。文獻(xiàn)[15]提出基于Faster R-CNN的方法提取絕緣子串的位置信息,根據(jù)絕緣子串的周期分布規(guī)律,分析是否存在缺陷。文獻(xiàn)[16]采用多模型融合的思想,將性能差異較為明顯的Mask RCNN、RetinaNet、YOLOv3 三個(gè)目標(biāo)檢測(cè)模型計(jì)算的預(yù)測(cè)框坐標(biāo)與置信度值進(jìn)行融合計(jì)算,實(shí)現(xiàn)絕緣子自爆故障檢測(cè)。上述方法雖然取得了一定的檢測(cè)效果,但對(duì)于復(fù)雜場(chǎng)景下的缺陷絕緣子識(shí)別仍然存在精度偏低、檢測(cè)耗時(shí)等問題,且文中缺陷絕緣子數(shù)據(jù)量太少,阻礙故障絕緣子的進(jìn)一步研究。
圖2 SENet注意力機(jī)制模塊[18]
基于上述問題,本文在YOLOv3算法的基礎(chǔ)上提出一種基于注意力機(jī)制的多尺度絕緣子缺陷檢測(cè)模型。主要貢獻(xiàn)如下:①在特征提取網(wǎng)絡(luò)Darknet53上融合空間注意力機(jī)制SENet結(jié)構(gòu),通過特征重標(biāo)定策略學(xué)習(xí)更豐富的絕緣子缺陷特征,提升特征提取網(wǎng)絡(luò)的性能;②將YOLOv3算法中的3檢測(cè)尺度擴(kuò)展為4個(gè),提高模型對(duì)電力絕緣子缺陷的檢測(cè)精度;③使用K-means++算法對(duì)缺陷絕緣子數(shù)據(jù)集中邊界框的寬和高聚類,該算法獲取初始聚類中心的隨機(jī)性更小,能夠優(yōu)化錨點(diǎn)框。此外,通過數(shù)據(jù)增強(qiáng)技術(shù)擴(kuò)充缺陷絕緣子數(shù)據(jù)集,以滿足模型訓(xùn)練和檢測(cè)需求。結(jié)果表明,提出的檢測(cè)方法能夠在復(fù)雜場(chǎng)景中有效識(shí)別絕緣子的缺陷位置。
2016年,Redmon等人提出的YOLO算法能夠直接預(yù)測(cè)目標(biāo)的類別和位置信息。經(jīng)過不斷改進(jìn),YOLOv3算法以高精度、實(shí)時(shí)性好的特點(diǎn),被廣泛應(yīng)用于計(jì)算機(jī)視覺的不同方向,取得了良好的檢測(cè)效果。
YOLOv3延續(xù)了上一代算法錨點(diǎn)框的生成方法,使用K-means算法對(duì)圖像標(biāo)簽進(jìn)行維度聚類,預(yù)測(cè)框坐標(biāo)信息如圖1所示。YOLOv3首先將原始圖片縮放至416×416大小送入卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行特征提取。然后分別在13×13、26×26、52×52的特征圖上實(shí)現(xiàn)3個(gè)尺度檢測(cè)。圖1中,bw和bh為邊界框?qū)捀撸琾w和ph為錨點(diǎn)框預(yù)測(cè)結(jié)果的寬和高。σ是sigmoid函數(shù),tx、ty、tw、th為網(wǎng)絡(luò)預(yù)測(cè)目標(biāo)中心的坐標(biāo)、寬和高,cx、cy為當(dāng)前網(wǎng)格左上角坐標(biāo)。
圖1 預(yù)測(cè)框坐標(biāo)信息示意圖
在特征提取階段,YOLOv3使用Darknet53網(wǎng)絡(luò)提取目標(biāo)信息,引入多個(gè)ResNet 殘差網(wǎng)絡(luò)模塊增加網(wǎng)絡(luò)深度提升網(wǎng)絡(luò)性能。在目標(biāo)檢測(cè)階段,YOLOv3采用特征金字塔和殘差網(wǎng)絡(luò)相結(jié)合的思想,實(shí)現(xiàn)多尺度特征融合。YOLOv3共有3個(gè)檢測(cè)尺度,通過預(yù)測(cè)最后3個(gè)下采樣層中的特征圖進(jìn)行目標(biāo)檢測(cè)。在第1個(gè)檢測(cè)尺度中,以32倍的下采樣13×13特征圖檢測(cè)大目標(biāo)。第2個(gè)檢測(cè)尺度將26×26特征圖以16倍進(jìn)行采樣檢測(cè)中型目標(biāo)。在第3個(gè)檢測(cè)尺度中,以8倍的下采樣52×52特征圖檢測(cè)小目標(biāo)。最后將預(yù)測(cè)的邊界框經(jīng)過非極大值抑制(Non-Maximum Suppression,NMS)[17]輸出得分較高的預(yù)測(cè)框,實(shí)現(xiàn)目標(biāo)識(shí)別任務(wù)。
SENet(Squeeze-and-Excitation Networks)[18]是2017年提出的一種簡(jiǎn)單而有效的注意力機(jī)制網(wǎng)絡(luò),它可以學(xué)習(xí)包含全局信息的特征,通過選擇重要的特征并抑制非重要的特征實(shí)現(xiàn)特征重標(biāo)定。該網(wǎng)絡(luò)結(jié)構(gòu)由壓縮(Squeeze)、激勵(lì)(Excitation)和重標(biāo)定(Reweight)三部分構(gòu)成。SENet注意力機(jī)制模塊如圖2所示,圖中從左至右英文字母的含義分別是:X表示輸入,U表示中間變換,H、W、C代表網(wǎng)絡(luò)的寬、高和層數(shù),F(xiàn)tr和Fsq代表壓縮操作,F(xiàn)ex代表激勵(lì)操作。
首先是特征U經(jīng)過壓縮(Squeeze)操作,該操作沿著空間維度將C個(gè)W×H二維特征壓縮成長度為C的1×1實(shí)數(shù)列,表示特征響應(yīng)的全局分布,使得鄰近的輸入層也可以獲得全局的感受野。其次是激勵(lì)(Excitation)操作,采用門限機(jī)制的形式通過W(每個(gè)特征通道間的相關(guān)性)生成每個(gè)特征通道的權(quán)重集合。然后特征映射U被重新加權(quán)以生成SENet的輸出,將其直接輸入到隨后的卷積層中。最后是特征重標(biāo)定(Reweight)操作,主要將Excitation輸出的權(quán)重表示為特征選取后每個(gè)通道的重要程度,通過乘法逐通道加權(quán)到先前的特征上,完成通道維度的特征重標(biāo)定。
YOLOv3在檢測(cè)精度和速度上取得了較好的平衡,但由于其僅使用3個(gè)尺度的特征,使得對(duì)淺層信息的利用并不充分,許多小目標(biāo)區(qū)域信息容易丟失,不利于缺陷絕緣子地檢測(cè)。為了提高缺陷絕緣子的檢測(cè)精度,提出SE-YOLOv3多尺度檢測(cè)模型如圖3所示。該模型由以下模塊組成:①SE-Darknet53特征提取網(wǎng)絡(luò)設(shè)計(jì):將通道注意力機(jī)制SENet模塊與Darknet53網(wǎng)絡(luò)融合組成新的特征提取網(wǎng)絡(luò)SE-Darknet53,實(shí)現(xiàn)對(duì)特征權(quán)重的重新標(biāo)定。②多尺度檢測(cè)網(wǎng)絡(luò)改進(jìn):通過4個(gè)檢測(cè)尺度學(xué)習(xí)缺陷絕緣子更深層次的位置信息,提升模型對(duì)小目標(biāo)的檢測(cè)精度。③錨點(diǎn)框維度聚類優(yōu)化:使用K-means++算法重新對(duì)絕緣子數(shù)據(jù)標(biāo)簽進(jìn)行維度聚類分析,獲取更為理想的先驗(yàn)框。
圖3 改進(jìn)的YOLOv3多尺度檢測(cè)模型
DarkNet53使用ResNet模塊加深網(wǎng)絡(luò)深度提高了特征提取能力,但是缺陷絕緣子目標(biāo)小、背景復(fù)雜,直接使用Darknet53提取缺陷絕緣子特征會(huì)影響檢測(cè)精度。SENet能夠很方便地嵌入到ResNet中,得到一個(gè)SE-ResNet模塊,能夠顯著提高特征提取網(wǎng)絡(luò)的性能,進(jìn)一步提升檢測(cè)精度。如圖4所示,SE-ResNet模塊首先使用全局池化層(Global pooling)獲取全局的感受野,然后將兩個(gè)全連接層(FC)結(jié)合ReLU激活函數(shù)可以更好地?cái)M合擬合通道間復(fù)雜的相關(guān)性。首先通過第一個(gè)全連接層將特征維度參數(shù)降到輸入的1/r(r=16),然后使用ReLU激活函數(shù)和下一個(gè)全連接層將參數(shù)升維到之前的維度。之后使用Sigmoid激活函數(shù)輸出1×1×C的序列,獲得0~1之間歸一化的權(quán)重。最后通過Scale操作將歸一化后的權(quán)重加權(quán)到每個(gè)通道的特征上,輸出更新后的通道。
圖4 原殘差模塊(左)與注意力殘差模塊(右)[18]
因此,本文在原始特征提取網(wǎng)絡(luò)Darknet53的基礎(chǔ)上改進(jìn),引入SENet注意力機(jī)制模塊設(shè)計(jì)了SE-Darknet53特征提取網(wǎng)絡(luò)結(jié)構(gòu)如圖5所示。
圖5 SE-Darknet53特征提取網(wǎng)絡(luò)示意圖
YOLOv3使用三種比例尺度來檢測(cè)不同大小的目標(biāo),并使用8倍下采樣的特征圖來檢測(cè)小的目標(biāo)。考慮到輸入的電力絕緣子圖像中缺陷區(qū)域較小,YOLOv3對(duì)小目標(biāo)的檢測(cè)效果不是很理想。為了從小目標(biāo)中獲取更多細(xì)粒度的特征,本文探索使用原始網(wǎng)絡(luò)中4倍下采樣的特征圖。
在圖3中,原始YOLOv3中的3個(gè)檢測(cè)尺度被擴(kuò)展為4個(gè)檢測(cè)尺度,并添加上采樣大小為104×104的特征圖,圖中虛線框即為增加的第4個(gè)檢測(cè)尺度。在執(zhí)行多尺度檢測(cè)時(shí),在第79層之后經(jīng)過3次卷積操作得到第1個(gè)檢測(cè)尺度為13×13的32倍下采樣特征圖。然后將第79層上采樣的結(jié)果與第61層進(jìn)行特征融合,得到第2個(gè)檢測(cè)尺度為26×26的16倍下采樣特征圖,即第91層。接著為了得到細(xì)粒度信息,將第91層進(jìn)行上采樣與第36層進(jìn)行特征融合,得到第3個(gè)檢測(cè)尺度為52×52的8倍下采樣特征圖,即第103層。最后為了獲取更細(xì)粒度信息,將第103層進(jìn)行上采樣與第11層進(jìn)行特征融合,得到第4個(gè)檢測(cè)尺度為104×104的4倍下采樣特征圖。因此,改進(jìn)后的YOLOv3具有更好檢測(cè)不同尺度目標(biāo)的性能。
YOLOv3算法使用K-means對(duì)數(shù)據(jù)集中的bounding box聚類以獲取合適錨點(diǎn),錨點(diǎn)框的選取會(huì)直接影響目標(biāo)檢測(cè)的效果。由于絕緣子缺陷區(qū)域較小且背景復(fù)雜,因此需要對(duì)缺陷絕緣子數(shù)據(jù)集的標(biāo)簽重新聚類獲取新的錨點(diǎn)。但傳統(tǒng)的K-means聚類方法采用歐氏距離函數(shù),這導(dǎo)致較大的bounding box通常比較小的bounding box的誤差更大,影響聚類結(jié)果??紤]到交并比(Intersection over Union,IOU)與bounding box尺寸無關(guān),將 IOU 加入到距離函數(shù)中能夠更好地平衡模型復(fù)雜度和召回率之間的關(guān)系,實(shí)現(xiàn)對(duì)絕緣子缺陷有效的預(yù)測(cè),距離函數(shù)定義如下
d(box,centroid)=1-IOU(box,centroid)
(1)
式中,box表示實(shí)際的邊界框信息,centroid表示聚類中心,IOU表示預(yù)測(cè)框與真實(shí)框的交并比。
K-means聚類算法對(duì)初始聚類中心敏感且需要手動(dòng)設(shè)定,這會(huì)直接影響聚類結(jié)果。因此,本文針對(duì)實(shí)際場(chǎng)景中缺陷絕緣子的位置特點(diǎn),采用隨機(jī)性更小的K-means++算法獲取新的錨點(diǎn),從而能夠高效的檢測(cè)出缺陷絕緣子。在缺陷絕緣子數(shù)據(jù)集上使用兩種不同聚類方法得到的平均交并比(Average IOU)與聚類中心K的對(duì)比曲線如圖6所示??梢钥闯?,相比于K-means算法,K-means++算法具有更高的Average IOU。隨著K的增加,當(dāng)K=12時(shí),Average IOU趨于穩(wěn)定。因此,本文最終選取12個(gè)錨框,并將其分配到4個(gè)檢測(cè)尺度應(yīng)用于模型訓(xùn)練。
圖6 平均交并比與聚類中心曲線
本文以CPLID數(shù)據(jù)集[19]為基礎(chǔ),通過圖像旋轉(zhuǎn)、翻轉(zhuǎn)、放縮和隨機(jī)裁剪等數(shù)據(jù)增強(qiáng)方式重新構(gòu)建缺陷絕緣子數(shù)據(jù)集,包括雨、雪、霧等多天氣因素的圖片,共計(jì)2448張。在數(shù)據(jù)預(yù)處理階段,使用開源工具LabelImg對(duì)絕緣子數(shù)據(jù)根據(jù)VOC2007數(shù)據(jù)集格式標(biāo)注絕緣子缺陷位置,并按照8:2的比例隨機(jī)劃分訓(xùn)練集和測(cè)試集。
本文實(shí)驗(yàn)基于Pytorch 、Python3.7 和 Cuda10.1搭建深度學(xué)習(xí)框架,訓(xùn)練過程中使用YOLOv3官方提供的權(quán)重作為網(wǎng)絡(luò)訓(xùn)練初始化參數(shù),實(shí)驗(yàn)運(yùn)行環(huán)境、相關(guān)軟硬件配置以及部分模型參數(shù)如表1所示。
表1 實(shí)驗(yàn)環(huán)境配置
為了驗(yàn)證提出模型的有效性,本文選取的評(píng)價(jià)指標(biāo)為準(zhǔn)確率 (Precision,P),召回率 (Recall,R),平均準(zhǔn)確率(Average Precision,AP),F(xiàn)1值和每張圖片的檢測(cè)時(shí)間(Time,T),具體公式如下
(2)
(3)
(4)
式中,TP表示成功檢測(cè)出的絕緣子缺陷數(shù)量,F(xiàn)P表示沒有缺陷卻識(shí)別為缺陷絕緣子的數(shù)量,F(xiàn)N表示有缺陷卻沒有識(shí)別為缺陷絕緣子的數(shù)量,平均準(zhǔn)確率AP表示準(zhǔn)確率對(duì)召回率的積分。通常使用P和R兩個(gè)指標(biāo)來衡量模型的好壞,但是同時(shí)要權(quán)衡這兩個(gè)量,影響決策速度??梢允褂肍1來表示準(zhǔn)確率和召回率的調(diào)和均值
(5)
結(jié)合4.3節(jié)給出的相關(guān)評(píng)價(jià)指標(biāo),主要對(duì)比了經(jīng)典的深度學(xué)習(xí)目標(biāo)檢測(cè)算法,如Faster R-CNN、SSD、Tiny-YOLOv3(簡(jiǎn)化版YOLOv3)、YOLOv3和本文提出模型SE-YOLOv3的檢測(cè)性能,最終得出改進(jìn)前后算法的P-R曲線如圖7所示。實(shí)驗(yàn)證明本文提出的SE-YOLOv3算法與原始YOLOv3算法相比,Precision、Recall和AP均表現(xiàn)出良好的性能。
圖7 不同算法的P-R曲線對(duì)比
不同檢測(cè)算法的實(shí)驗(yàn)結(jié)果如表2所示,可以看出,F(xiàn)aster R-CNN作為二階檢測(cè)器,對(duì)于缺陷絕緣子的檢測(cè)較為耗時(shí)。雖然Tiny-YOLOv3對(duì)每張缺陷絕緣子圖片的檢測(cè)時(shí)間是最短的,但精度遠(yuǎn)低于其它檢測(cè)模型。本文提出的模型對(duì)缺陷絕緣子檢測(cè)的P、R、F1和AP明顯好于其它模型。由于改進(jìn)的算法增加了網(wǎng)絡(luò)層數(shù),導(dǎo)致檢測(cè)時(shí)間比原算法增加了一倍,但仍然遠(yuǎn)低于Faster R-CNN檢測(cè)模型,能夠滿足缺陷絕緣子實(shí)時(shí)檢測(cè)的需求。
表2 不同檢測(cè)方法性能對(duì)比
為了進(jìn)一步驗(yàn)證提出模型的檢測(cè)性能,本文使用改進(jìn)前和改進(jìn)后的模型分別對(duì)不同天氣環(huán)境下的缺陷絕緣子進(jìn)行檢測(cè),輸出結(jié)果如表3所示??梢钥闯?,原算法在特殊天氣條件下檢測(cè)準(zhǔn)確率不高且存在漏檢情況,而SE-YOLOv3算法的檢測(cè)結(jié)果明顯優(yōu)于YOLOv3算法,實(shí)現(xiàn)了復(fù)雜天氣環(huán)境下的缺陷絕緣子檢測(cè)。
本文提出的基于注意力機(jī)制的多尺度缺陷絕緣子檢測(cè)模型,能夠解決絕緣子缺陷位置小、復(fù)雜環(huán)境中檢測(cè)精度不高等問題。通過融合通道注意力機(jī)制SENet結(jié)構(gòu),擴(kuò)大網(wǎng)絡(luò)的感知范圍提升檢測(cè)性能;將原始網(wǎng)絡(luò)的3個(gè)尺度更改為4個(gè)增強(qiáng)了缺陷絕緣子小尺度目標(biāo)的檢測(cè)能力;利用K-means++聚類算法,減少隨機(jī)初始化錨框?qū)z測(cè)精度的影響。實(shí)驗(yàn)結(jié)果表明,所提模型能夠有效的識(shí)別出電力絕緣子的缺陷位置。本文的主要研究工作是絕緣子掉片的缺陷檢測(cè),但在現(xiàn)實(shí)場(chǎng)景中存在多種絕緣子缺陷類型,下一步工作是在確保絕緣子缺陷檢測(cè)精度與實(shí)時(shí)性的基礎(chǔ)上,研究如何有效區(qū)分絕緣子缺陷類型。