劉艷瓊,張建州
(四川大學(xué)計(jì)算機(jī)學(xué)院,成都610065)
近年來高鐵因高速度和高安全性越來越多投入使用,高鐵的牽引動(dòng)力來自接觸網(wǎng)提供的高壓交變電。絕緣子在高鐵架空輸電路中起支撐接觸網(wǎng)導(dǎo)線和防止電流回地的作用。在高鐵系統(tǒng)中的安全檢測(cè)中,絕緣子的檢測(cè)不容輕視[1]。傳統(tǒng)的絕緣子檢測(cè)手段是人工攜帶檢測(cè)裝置實(shí)地檢測(cè),檢測(cè)效率低,成本高且安全性低[2]。
目前較多的絕緣子檢測(cè)方法有:利用圖像處理技術(shù)提取絕緣子的邊緣紋理信息檢測(cè)絕緣子[3-8]、使用紅外圖像檢測(cè)絕緣子[9-10]、人工設(shè)計(jì)絕緣子特征,使用SVM分類器檢測(cè)絕緣子[11-12]。以上方法中,基于圖像處理技術(shù)檢測(cè)絕緣子的檢測(cè)過程復(fù)雜,適應(yīng)性較弱,對(duì)于背景復(fù)雜的絕緣子檢測(cè)效果會(huì)大打折扣,而基于紅外圖像或紫外脈沖數(shù)據(jù)的絕緣子檢測(cè)手段需要額外的硬件設(shè)備,成本較高。基于絕緣子特征,使用SVM分類器檢測(cè)絕緣子的方法因人工特征泛化能力較弱,特征設(shè)計(jì)需要依賴設(shè)計(jì)者的經(jīng)驗(yàn),且人工設(shè)計(jì)特征過程繁瑣,特征的通用性較低,在不同場(chǎng)景下的魯棒性較差。
相比以上幾種絕緣子檢測(cè)方法,文獻(xiàn)[13-16]使用深度學(xué)習(xí)檢測(cè)與定位絕緣子,檢測(cè)過程更簡(jiǎn)單,精確率更高。文獻(xiàn)[13]通過輔助技術(shù)驅(qū)動(dòng)攝像機(jī)轉(zhuǎn)動(dòng),使拍攝的絕緣子保持在攝像視野的中心位置,再通過對(duì)SSD網(wǎng)絡(luò)中增加多尺度感興趣區(qū)域池化層,并微調(diào)SSD模型參數(shù)實(shí)現(xiàn)電網(wǎng)巡檢圖像中的絕緣子定位,最終實(shí)現(xiàn)了基于目標(biāo)圖像識(shí)別技術(shù)的絕緣子前端定位系統(tǒng)。在SSD網(wǎng)絡(luò)中,其prior box的基礎(chǔ)形狀需要手工設(shè)置,且每一層特征中使用的prior box形狀大小不一,調(diào)試過程依賴經(jīng)驗(yàn)。此外,SSD網(wǎng)絡(luò)對(duì)小目標(biāo)檢測(cè)精度較低,絕緣子圖像中部分絕緣子占比較小,因此較難滿足絕緣子的檢測(cè)要求。文獻(xiàn)[14]使用了端到端的神經(jīng)網(wǎng)絡(luò)檢測(cè)框架YOLOv3,通過對(duì)輸入圖像經(jīng)過候選框提取,目標(biāo)候選框生成等步驟定位目標(biāo)候選區(qū)域,再通過非極大值抑制得到最終的絕緣子檢測(cè)框。文獻(xiàn)[15]采用Focal Loss函數(shù)和均衡交叉熵函數(shù)改進(jìn)YOLOv3算法的損失函數(shù),優(yōu)化了網(wǎng)絡(luò)訓(xùn)練的損失值,實(shí)現(xiàn)了絕緣子的識(shí)別定位。YOLOv3網(wǎng)絡(luò)在YOLOYOLOv2網(wǎng)絡(luò)的基礎(chǔ)上調(diào)整網(wǎng)絡(luò)結(jié)構(gòu),利用多尺度特征進(jìn)行對(duì)象檢測(cè),并用Logistic取代了Softmax做目標(biāo)分類,在檢測(cè)速度和檢測(cè)精度上有很大提升。但絕緣子檢測(cè)中存在遮擋、密集小目標(biāo)的場(chǎng)景,YOLOv3的檢測(cè)精度相比Faster R-CNN低。文獻(xiàn)[16]在對(duì)自爆絕緣子定位時(shí),使用Faster R-CNN網(wǎng)絡(luò)檢測(cè)并定位絕緣子。Faster R-CNN網(wǎng)絡(luò)的檢測(cè)精度高,但檢測(cè)速度較慢,在絕緣子數(shù)量較多時(shí)難以滿足檢測(cè)時(shí)間要求。
Faster R-CNN的特征提取網(wǎng)絡(luò)VGG的深度為16層,且在網(wǎng)絡(luò)的最后有3個(gè)全連接層,使用參數(shù)較多,計(jì)算耗時(shí)長,難以滿足絕緣子檢測(cè)的速度要求。為提升Faster R-CNN網(wǎng)絡(luò)的絕緣子檢測(cè)速度,本文借鑒Inception網(wǎng)絡(luò)模型的思想設(shè)計(jì)特征提取網(wǎng)絡(luò)替換VGG特征提取網(wǎng)絡(luò)。相比VGG網(wǎng)絡(luò),該特征提取網(wǎng)絡(luò)中使用卷積核組合和非對(duì)稱卷積核,使得網(wǎng)絡(luò)維度增加而深度減小,能更快地提取絕緣子的多維度特征信息。實(shí)驗(yàn)在Python環(huán)境下訓(xùn)練網(wǎng)絡(luò),對(duì)比了Faster RCNN、YOLOv3、SSD網(wǎng)絡(luò)。實(shí)驗(yàn)證明,基于本文提出的方法檢測(cè)絕緣子時(shí)間雖然較YOLOv3算法和SSD算法長,但相差較小,而檢測(cè)精確率和召回率明顯優(yōu)于YOLOv3算法和SSD算法。相比未改進(jìn)的Faster R-CNN算法,改進(jìn)后的算法檢測(cè)時(shí)間及檢測(cè)精度均有提升。
Faster R-CNN[17]網(wǎng)絡(luò)相比其前身Fast R-CNN[18]網(wǎng)絡(luò),改進(jìn)了候選區(qū)域生成方式。其目標(biāo)識(shí)別過程主要分為兩部分:特征提取網(wǎng)絡(luò)(VGG網(wǎng)絡(luò))和候選區(qū)域生成網(wǎng)絡(luò)(RPN網(wǎng)絡(luò)),網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。特征提取網(wǎng)絡(luò)負(fù)責(zé)提取圖像的特征信息,RPN網(wǎng)絡(luò)在提取的特征信息上生成候選區(qū)域并作初步篩選,最后經(jīng)過全連接層對(duì)候選區(qū)域分類和回歸。
VGG網(wǎng)絡(luò)由13個(gè)卷積層,13個(gè)激活函數(shù)和4個(gè)池化層組成的,卷積層全部采用3×3的尺寸的卷積核[19],其結(jié)構(gòu)如圖2所示。VGG網(wǎng)絡(luò)通過卷積,激活函數(shù)和池化等操作提取原始圖像的特征映射,提取的特征映射用于RPN層生成目標(biāo)候選區(qū)域。VGG網(wǎng)絡(luò)因?yàn)閷訑?shù)過深和卷積核單一而引起的特征提取時(shí)間過長和識(shí)別精度較低不能滿足絕緣子識(shí)別中的高精度和高速率的要求。
圖1 Faster R-CNN網(wǎng)絡(luò)結(jié)構(gòu)圖
圖2 VGG網(wǎng)絡(luò)結(jié)構(gòu)圖
RPN網(wǎng)絡(luò)結(jié)構(gòu)如圖1中的下半部分所示,RPN網(wǎng)絡(luò)使用“滑動(dòng)窗口+錨”生成錨框(anchors),通過Softmax對(duì)anchors做前景背景分類,利用邊框回歸修正anchors的位置信息以獲取更精確的候選框。RPN層的ROI Pooling對(duì)特征映射和候選區(qū)域信息做整合提取候選區(qū)域的特征映射,對(duì)尺寸不一的候選區(qū)域歸一化為固定尺寸,送入后續(xù)全連接層判定目標(biāo)類別并再次邊框回歸獲取檢測(cè)框精確位置。
本文參考Inception網(wǎng)絡(luò)的思想所設(shè)計(jì)的特征提取網(wǎng)絡(luò)在特征提取的前三層采用對(duì)稱卷積核提取特征,在后兩層使用非對(duì)稱卷積核組合(3×1+1×3)代替部分3×3的卷積核。此外,相比VGG網(wǎng)絡(luò)在兩層網(wǎng)絡(luò)之間只采用3×3的卷積核實(shí)現(xiàn)特征提取,本文在兩層網(wǎng)絡(luò)之間使用多個(gè)不同尺寸的卷積核提取特征。本文提出的特征提取網(wǎng)絡(luò)如圖3所示。
圖3 特征提取網(wǎng)絡(luò)
圖3 中輸入的原始圖像的信息中P和Q分別代表原始輸入圖像的寬和高,M和N代表重定義大小后的圖像的寬和高,3代表彩色圖像的RGB三個(gè)通道。Conv_n(n=1,2,3,4,5)分別是特征提取網(wǎng)絡(luò)中的第n個(gè)卷積層,每個(gè)卷積層中包含一組卷積核組合實(shí)現(xiàn)該層的特征提取,每次卷積之后的激活函數(shù)都采用線性修正單元(ReLU函數(shù)),池化層采用最大池化(MaxPooling),絕緣子特征的維度從初始輸入的3依次到64,192,320,最后輸入RPN網(wǎng)絡(luò)的特征的維度為576。
非對(duì)稱卷積核(3×1+1×3)相比3×3的卷積核,在感受野不變的情況下能減小計(jì)算量,縮短特征提取時(shí)間[20]。3×3卷積核提取特征如圖4所示,非對(duì)稱卷積核(3×1+1×3)提取特征如圖5所示。
圖4 3×3卷積核提取特征示意圖
圖5 非對(duì)稱卷積核提取特征示意圖
圖4 中的特征圖A和特征圖B分別是3×3卷積核提取特征前后的特征圖,其中特征圖B中的每個(gè)1×1的區(qū)域都感受到了特征圖A中的每個(gè)3×3區(qū)域。圖5中的特征圖A、特征圖B、特征圖C分別是原特征圖、依次經(jīng)過3×1卷積核提取的特征圖和1×3卷積核提取的特征圖。如圖所示,最終的特征圖C中的每個(gè)1×1的區(qū)域都感受到了特征圖A中的每個(gè)3×3的區(qū)域。因此,3×3的卷積核相比先使用3×1的核卷積再使用1×3的核卷積,在原特征圖中的感受野是一樣的。對(duì)稱卷積核和非對(duì)稱卷積核的計(jì)算量公式如下:
公式(1)和公式(2)中,W,H分別是原特征圖的寬和高。公式(1)中C1表示same填充下,尺寸為n×n的卷積核的計(jì)算量,公式(2)中C2表示same填充下,尺寸為n×1和1×n的卷積核的總計(jì)算量。當(dāng)n為3時(shí),非對(duì)稱卷積核能減少1/3的計(jì)算量。
實(shí)驗(yàn)配置信息如表1所示。
表1 實(shí)驗(yàn)配置信息
絕緣子檢測(cè)屬于單標(biāo)簽分類學(xué)習(xí),故本文采用如下四個(gè)單標(biāo)簽分類學(xué)習(xí)評(píng)估標(biāo)準(zhǔn)對(duì)網(wǎng)絡(luò)的性能進(jìn)行評(píng)估。
(a)準(zhǔn)確度(Accuracy)
其中:Acc表示檢測(cè)準(zhǔn)確度,其中TP、TN、FP和FN的定義參考表2。該指標(biāo)衡量絕緣子正確分類的概率,包括真實(shí)類別為絕緣子,檢測(cè)結(jié)果為絕緣子和真實(shí)類別不為絕緣子,檢測(cè)結(jié)果不為絕緣子。
(b)精確度(Precision)
其中:P表示檢測(cè)精確度,TP和FP的定義參考表2。該指標(biāo)衡量的是一個(gè)分類器對(duì)正類分類正確的概率。
(c)召回率(Recall)
其中:R表示召回率,TP和FN的定義參考表2。該指標(biāo)衡量的是分類器能將所有正類找出來的能力。
(d)平均相對(duì)檢測(cè)時(shí)間
其中:T avg表示相對(duì)于Faster R-CNN算法的平均相對(duì)檢測(cè)時(shí)間,其中Tmax是最長平均檢測(cè)時(shí)間,T是當(dāng)前算法的平均檢測(cè)時(shí)間,其表達(dá)式如公式(7)所示。
其中:T是當(dāng)前算法的平均檢測(cè)時(shí)間,N是當(dāng)前算法檢測(cè)到的絕緣子總數(shù),Ti是每個(gè)絕緣子的檢測(cè)時(shí)間。
表2 TP、TN、FP和FN的定義參考表
表2 中:TP表示真實(shí)分類為絕緣子,網(wǎng)絡(luò)判定也為絕緣子、FP表示真實(shí)分類不為絕緣子,網(wǎng)絡(luò)判定為絕緣子、FN表示真實(shí)分類為絕緣子,網(wǎng)絡(luò)判定不為絕緣子、TN表示真實(shí)分類不為絕緣子,網(wǎng)絡(luò)判定也不為絕緣子。
本文分別與Faster R-CNN算法,YOLOv3算法[21]和SSD算法[22]做對(duì)比實(shí)驗(yàn)。其中,F(xiàn)aster R-CNN算法、YOLOv3算法、SSD算法和本文的改進(jìn)算法分別在相同絕緣子訓(xùn)練數(shù)據(jù)集下獨(dú)立訓(xùn)練。實(shí)驗(yàn)分別從定性和定量兩個(gè)維度對(duì)四種算法比較,定性比較側(cè)重于顯示絕緣子的檢測(cè)效果圖,定量比較側(cè)重于展示多組圖片中4種算法的絕緣子檢測(cè)性能,其衡量標(biāo)準(zhǔn)已在3.2小節(jié)中闡述。
(1)實(shí)驗(yàn)結(jié)果定性比較
在四種不同場(chǎng)景下比較Faster R-CNN算法、YOLOv3算法、SSD算法和本文算法的絕緣子檢測(cè)性能。四種不同場(chǎng)景分別是:場(chǎng)景1中絕緣子背景簡(jiǎn)單、場(chǎng)景2中絕緣子背景復(fù)雜、場(chǎng)景3中部分絕緣子顯示不全(等同于絕緣子被遮擋)、場(chǎng)景4中絕緣子占比較小,其中絕緣子占比較小定義為相對(duì)占比較小,即絕緣子的寬高分別小于等于圖像寬高的1/10。圖6為絕緣子檢測(cè)的結(jié)果,本文使用準(zhǔn)確度作為定性分析的結(jié)果,表3為四種場(chǎng)景下絕緣子檢測(cè)的準(zhǔn)確度。
圖6 絕緣子檢測(cè)結(jié)果
表3 不同算法檢測(cè)絕緣子的準(zhǔn)確度
在圖6中,圖片從左到右依次為基于Faster R-CNN算法、YOLOv3算法、SSD算法和本文方法的絕緣子檢測(cè)結(jié)果。從檢測(cè)結(jié)果中可以看出,本文方法正確檢測(cè)到的絕緣子數(shù)目明顯多于其他三種算法。表3表明,絕緣子背景簡(jiǎn)單時(shí)(場(chǎng)景1),四種算法的準(zhǔn)確度均高于80%,但在復(fù)雜場(chǎng)景(場(chǎng)景2、場(chǎng)景3、場(chǎng)景4)中,基于本文方法的絕緣子檢測(cè)準(zhǔn)確度明顯高于其他三種算法,表明在復(fù)雜環(huán)境的絕緣子檢測(cè)與定位中,本文算法更占有優(yōu)勢(shì)。
(2)實(shí)驗(yàn)結(jié)果定量比較
神經(jīng)網(wǎng)絡(luò)的檢測(cè)性能會(huì)因?yàn)闄z測(cè)圖像的差異性表現(xiàn)各異,本文基于300張絕緣子圖像,在四類場(chǎng)景下分別做Faster R-CNN算法、YOLOv3算法、SSD算法和本文方法的絕緣子檢測(cè)對(duì)比實(shí)驗(yàn),并將四種場(chǎng)景下的檢測(cè)指標(biāo)做平均值對(duì)比,定量檢測(cè)比較結(jié)果見表4。
表4 結(jié)果表明,在多種場(chǎng)景中,基于本文方法的絕緣子檢測(cè)性能優(yōu)于其他三種算法。從所有場(chǎng)景下絕緣子檢測(cè)均值來看,在檢測(cè)時(shí)間上,本文提出的改進(jìn)方法相比原始Faster R-CNN,其檢測(cè)時(shí)間縮短到59%,SSD算法和YOLO算法的平均相對(duì)檢測(cè)時(shí)間分別為53%和42%。相對(duì)檢測(cè)時(shí)間對(duì)比表明本文提出的改進(jìn)算法的檢測(cè)時(shí)間與YOLOv3算法以及SSD算法相差不大。但是本文算法的檢測(cè)精確度和召回率分別為98.4%和97.6%,對(duì)比Faster R-CNN的精確率和召回率上有所上升,也明顯優(yōu)于YOLOv3和SSD算法。
本文提出一種基于Faster R-CNN的改進(jìn)方法檢測(cè)絕緣子,實(shí)驗(yàn)證明了本文方法檢測(cè)絕緣子的有效性。相比傳統(tǒng)的使用專有設(shè)備檢測(cè)絕緣子、使用數(shù)據(jù)處理技術(shù)與人工特征分類的絕緣子檢測(cè)方法,本文的方法絕緣子檢測(cè)過程簡(jiǎn)單,成本低,且不需要人工設(shè)計(jì)絕緣子特征,通用性更強(qiáng)。對(duì)比目前已有的基于深度學(xué)習(xí)的絕緣子檢測(cè)手段,本文的方法在絕緣子檢測(cè)時(shí)間相當(dāng)?shù)幕A(chǔ)上,檢測(cè)精確度更高,更能符合多種場(chǎng)景下絕緣子檢測(cè)的高精確度要求。
表4 不同算法檢測(cè)絕緣子性能