杜曉亮,姜香菊
(蘭州交通大學 自動化與電氣工程學院,蘭州 730070)
鐵路接觸網絕緣子作為接觸網的重要組成部分,起到電氣絕緣和接觸網支撐作用,其性能狀態對鐵路安全運營有較大的影響.由于長期處在復雜的室外環境并受到列車運行時的高速沖擊,絕緣子會出現破損、臟污、老化等故障,造成接觸網接地、絕緣子放電等安全隱患.因此,對絕緣子的表面狀態檢測是保障行車安全的重要環節.目前,我國鐵路系統采用人工看圖的方式對4C系統采集的接觸網圖像進行排查[1].該方法耗時長,錯檢和漏檢率高,自動化水平低.為提高檢測效率和準確度,學者將圖像處理技術引入絕緣子缺陷檢測研究當中.
對絕緣子缺陷檢測的前提是絕緣子的精準識別.近幾年來,對于絕緣子的識別定位,國內外學者做了大量研究.文獻[2]基于Harri角點與圖像差分實現絕緣子的抗旋轉匹配和故障檢測;文獻[3]通過Canny邊緣特征與SURF(speeded up robust features)點特征對絕緣子邊緣進行提取,實現接觸網絕緣子的智能識別;文獻[4]采用自動重建法利用點云數據實現絕緣子的三維重建;文獻[5]利用接觸網絕緣子圖像的多樣性分布,提出了一種基于輪廓波變換和Chan-Vese模型的高速鐵路棒形絕緣子檢測與識別方法;文獻[6]以接觸網支架為參照,將絕緣子識別轉換為支架的識別,最后通過絕緣子與支架之間的相對位置定位絕緣子.這幾種方法雖然實現簡單,但定位結果仍受到目標形態、光照、背景的影響,普適性差.隨著深度學習在圖像處理領域的興起,卷積神經網絡算法被大量應用在了目標檢測任務中.文獻[7]利用K-means++算法和YOLOv3構建了一種對航拍絕緣子定位的輕量級網絡;文獻[8]利用二值賦范分類器與卷積神經網絡算法進行絕緣子的精細識別;文獻[9]提出基于卷積神經網絡的絕緣子目標識別方法,解決了復雜背景下的絕緣子識別;文獻[10]使用改進Mask R-CNN算法對各類絕緣子進行識別.此類算法都能夠實現絕緣子的識別,但大多是對高壓輸電線絕緣子的識別,只有少量針對鐵路接觸網絕緣子.
因此,本文提出一種改進Faster R-CNN的鐵路接觸網絕緣子識別方法.通過融合不同卷積層特征圖像,達到多尺度檢測要求,并采用改進非極大值抑制(non-maximum suppression,NMS)算法提高算法整體的準確率和召回率,以提高鐵路接觸網絕緣子的識別效果.
Faster R-CNN是Fast R-CNN網絡結合RPN(region proposal network)組成,較于Fast R-CNN在VOC2007數據集上的70%的mAP(mean average precision)表現,Faster R-CNN將其提高到78%[11].Faster R-CNN主要分為特征提取模塊、RPN模塊、分類回歸模塊.Faster R-CNN具體網絡框架如圖1所示.

圖1 Faster R-CNN網絡結構
特征提取網絡目的是獲得輸入圖像的特征圖,一般有ZFNet[12]、VGGNet[13]、ResNet[14]等網絡.由于ResNet-50具有適宜的深度,網絡非線性程度高,可以提取更多細節的特征,所以本文選擇該網絡作為絕緣子精確識別網絡的特征提取網絡.ResNet-50組成結構見表1.

表1 ResNet-50組成結構
RPN網絡作為Faster R-CNN核心,較于SS(selective search)算法[15]從原圖中提取2 000多個目標框,RPN直接在特征圖像中生成候選區域,極大地提高了檢測速度和準確率.RPN網絡選取一個3像素×3像素大小的滑動窗口將特征圖像中的每個像素點依次作為基點在特征圖像上進行滑動.滑動窗口以該基點為中心生成K個anchor,K通常為9,對應128像素×128像素、256像素×256像素、512像素×512像素三種大小和1∶1、1∶2、2∶1三種長寬比.RPN結構如圖2所示.

圖2 RPN結構
在獲取到大量的錨框后,通過非極大值抑制獲取交并比(IOU)大于0.7的anchor作為正標簽,小于0.3的作為負標簽,將前后背景區分,之后對前景邊框進行初步回歸.
RPN的損失函數由分類損失和邊界回歸損失兩部分組成,損失函數定義如下:
(1)

(2)
(3)
(4)
(5)
該模塊首先通過ROI Pooling層將RPN中生成的建議區域結合主干網絡提取的特征圖像計算得到尺寸固定的區域特征圖像,然后通過全連接層與一個Softmax對區域特征圖像進行分類打分,同時利用全連接層與邊框回歸(bounding box regression)得到更加精確的目標檢測框.分類回歸模塊網絡結構圖如圖3所示.

圖3 分類回歸模塊
傳統的Faster R-CNN目標檢測算法是在主干網絡所提取的單一頂層特征圖像上進行目標檢測.由于卷積神經網絡運算特性,在圖像特征提取過程中隨著網絡的加深,圖像經過多次卷積和池化操作,使得最后輸出的特征圖像分辨率降低,從而導致大量細節信息遺漏,對于小目標的特征會弱化,甚至遺漏.使用頂層特征圖像進行目標識別時,對小目標檢測精度低,不能夠達到鐵路檢測系統對絕緣子多尺度識別的要求.為解決該問題,采用文獻[16]中提出的改進VGG16網絡中淺層特征與深層特征融合的思想,設計一種改進的ResNet-50網絡,將不同特征層融合,可以將處于低層的高語義信息特征圖與高層目標位置粗糙的特征圖進行融合,達到絕緣子多尺度目標檢測的要求.具體改進Faster R-CNN算法網絡結構如圖4所示.

圖4 改進Faster R-CNN算法網絡結構
為獲得多尺度的特征圖,需要將深層特征圖像和淺層特征圖像進行融合,生成新的特征圖.仿真實驗表明,所引入的融合特征層組合可以獲得目標信息更加完整的特征圖像.其具體組合是將ResNet-50網絡中C5層特征圖與C3層特征圖進行融合,C4層特征與C2層特征融合得到新的特征層P3和特征層P2.得到的新特征圖像語義信息強,分辨率高.改進網絡如圖5所示.圖5中,Conv()表示卷積操作,kernel_size()表示卷積核大小,stride()表示步長,4×up表示4倍上采樣操作.

圖5 改進特征提取網絡結構
具體步驟:C4和C2層進行1×1×256的卷積操作,擴充通道數至256個;C4層通過4倍上采樣,保持與C2層圖像大小一致;之后將兩個特征層進行融合操作;最后進行一次3×3的卷積操作,消除混疊效應,生成新的特征圖P2.C5與C3進行上述同樣的操作生成特征圖P3、C4與C5各自經過1×1×256的卷積和3×3的卷積操作,生成新的特征圖P5,P4.
通過上述操作后,新生成的特征圖層P2,P3,P4,P5的維度是256,而此時RPN在不同層級的特征圖中進行計算.所以在RPN計算時,將感受野小的P2和P3特征層中的錨框設置為32像素×32像素和64像素×64像素大小,將感受野大的P4和P5特征層中的錨框設置為128像素×128像素和256像素×256像素大小,長寬比仍然設置為1∶1,1∶2,2∶1三種類型.特征圖像如圖6所示.

圖6 特征圖像
NMS算法[17]的性能直接影響候選框的品質,從而影響識別精度.傳統的NMS算法是通過IOU得分的高低進行計算,核心思想是將目標框的IOU與設定閾值的大小進行比較,一般閾值設定為0.3~0.5,IOU超出閾值的目標框將被認為是冗余框,被剔除.該類算法雖然實現簡單,但是在被剔除的檢測框中可能會包含目標,導致目標的漏檢,影響絕緣子識別的整體性能.傳統的NMS算法的表達式為:
(6)
其中:si為檢測框對應類別的置信度;M為置信度最大的檢測框;IOU(M,bi)為交并比;Nt為設置的IOU閾值;bi表示目標框.
為解決該問題,本文引入文獻[18]中優化的NMS算法,文中通過高斯降權函數對NMS算法進行了優化.改進NMS算法的表達式為:
當IOU(M,bi) 當IOU(M,bi)≥Nt時,si值為: (7) 其中:Ni為新增設定閾值;Nt為傳統NMS算法設置的IOU閾值,Ni (8) 式中,σ為懲罰項因子. 優化NMS算法的具體流程如下: Step1:設置B為初始檢測框集合,si為檢測框bi對應的置信度,Nt為原NMS算法中設定的閾值,Ni為優化NMS算法中新增閾值條件,D為最終檢測框集合. Step2:求出B集合中所有檢測框的置信度,尋出置信度最大的檢測框M. Step3:將除M以外的剩余檢測框bi各自與M計算交并比IOU(M,bi),之后IOU(M,bi)與Nt進行比較,若值小于Nt,則將對應bi保留在D集合中. Step4:將IOU(M,bi)值大于等于Nt的檢測框進行高斯降權處理,得到新的置信度si=sif(IOU(M,bi)).將si與Ni進行比較,若si大于等于Ni時,將對應bi保留在D中;若si小于Ni,則將bi剔除. Step5:將剩余的bi重復步驟Step3、Step4,直至B集合為空,結束篩選,輸出最終結果. 本文數據為蘭州鐵路公司4C監測系統所采集的圖像.挑選適用于本實驗的2 200張原圖像,大小為6 600像素×4 400像素.之后通過加霧、改變曝光度、裁剪和旋轉等操作,將數據擴充至3 500張.通過LabelImg將數據標注為PASCAL VOC格式的數據集,圖像大小變換為660像素×440像素.數據按照1∶10的比例分為測試集和訓練集.圖7為數據制作樣本,圖8為擴充樣本數. 圖7 數據集制作樣本 圖8 樣本擴充示例 本實驗使用Intel Core i7-10750H 2.6 GHz、NVIDIA GeForceRTX2060 GPU硬件環境.運行環境為Windows10(64位)操作系統,PyTorch框架,Python3.7.10版本,Torch1.6.0版本,CUDA10.1版本,VS2020版本和CUDNN7.6深度學習加速器. 改進Faster R-CNN算法中采用SGD(stochastic gradient descent)對網絡進行訓練.SGD算法每次只選擇一個樣本進行模型參數的更新,同時進行在線更新,所以SGD算法有效避免了冗余數據的干擾,因此學習速度非常快.其計算公式為: (9) wi=wi-1-αw. (10) 其中:x(i)為訓練集樣本;y(i)為對應目標;w為初始參數;w為損失函數;f(x;w)為學習器;α是學習速率. 設定初始學習率為0.01,學習衰減速率為0.000 2,動量為0.7,每個批次訓練樣本量為16,訓練步數最大為1 000,輸入圖片大小為660像素×440像素. 為評價檢測算法的效果,本文選擇檢測精度P(precision)和識別召回率R(recall)作為接觸網絕緣子檢測算法的評價指標,直觀地了解網絡性能.表達式如下: (11) (12) 其中:Tp表示正確識別的接觸網絕緣子數量;Fp表示錯誤識別的接觸網絕緣子數量;FN表示漏識別的接觸網絕緣子數量. 使用不同識別算法對接觸網絕緣子進行識別,識別效果如圖9所示.圖9(a)是本文算法的識別結果,能夠精確地識別出絕緣子,同時對圖像中不完整的絕緣子也有較高的識別度;圖9(b)是傳統Faster R-CNN算法的識別結果,從圖中可以看出有兩個絕緣子因為疊加遮擋,一個識別框檢測了兩個物體,同時對不完整的絕緣子識別不敏感;圖9(c)為YOLOv3算法的識別結果,可以看出有對絕緣子的遺漏及誤檢.從實驗結果的對比中可知,改進Faster R-CNN算法對絕緣子的識別準確率較高,同時漏檢現象低,可靠性高,為后續絕緣子缺陷識別奠定了堅實基礎. 圖9 識別結果 表2為改進Faster R-CNN算法、Faster R-CNN算法和YOLOv3算法識別測試結果數據. 表2 各類算法性能指標 從表2中的數據可以看出:改進后的Faster R-CNN網絡對接觸網絕緣子的識別率為99.5%,召回率為99.02%,與傳統Faster R-CNN算法相比,識別率和召回率都有所提升,但由于NMS算法的改進,處理時間有所增加;通過與YOLOv3算法對比可以看出,本文算法在識別準確率上具有優勢,但由于Faster R-CNN網絡的結構特點,時效性不足.對比結果表明,特征提取網絡和NMS算法的改進提高了網絡檢測接觸網絕緣子的準確率和召回率,滿足鐵路系統對絕緣子準確定位的要求. 特征融合后的改進算法與原算法的訓練總損失對比如圖10所示,連續曲線表示原算法中訓練過程的損失,點曲線代表改進算法中訓練過程的損失. 因為文中算法只是對圖像中的絕緣子目標進行單一識別,從圖10中可以看出,訓練過程中第140個批次后訓練損失就開始逐漸趨于穩定.因為改進算法中加入了SGD算法對網絡進行訓練,訓練過程中排除了冗余數據的干擾,提高了訓練速度,降低了訓練損失,圖10中兩條曲線反映出改進Faster R-CNN算法的最終訓練損失為0.2,較于原算法0.5的損失值降低了0.3. 圖10 改進前后算法訓練損失對比 1) 本文對接觸網絕緣子識別問題進行研究,提出一種基于改進Faster R-CNN改進目標識別算法,對接觸網絕緣子進行有效識別.該方法通過多維特征融合的思想,對特征提取網絡進行改進,實現了高層特征與低層特征的融合,提高了小目標識別的準確率. 2) 對傳統算法中處理區域建議框的NMS算法進行優化,采用高斯降權函數對候選框的置信度進行降權,提高了算法的檢測準確率和召回率. 3) 對本文中使用的數據集在相同硬件環境下,用不同識別算法進行驗證.仿真結果表明,改進Faster R-CNN算法對鐵路接觸網絕緣子的識別準確率較于其他算法更高,為后續絕緣子缺陷的檢測奠定了基礎.3 實驗驗證及結果分析
3.1 數據集制作


3.2 仿真實驗環境及實驗性能評價指標
3.3 識別結果及算法性能分析



4 結論