吳 捷
(上海地鐵維護保障有限公司供電分公司,上海 201106)
作為軌道交通列車主要的供電方式之一,接觸軌是弓網系統的重要組成設備,用于將電能傳輸到軌道交通系統電力牽引車輛。處于服役狀態的接觸軌長期與集電靴摩擦接觸,容易產生軌面擦傷、腐蝕、疤痕等表面缺陷。這些表面缺陷的產生會對供電的穩定性產生嚴重影響,而穩定的電源供應是保證列車運行的必要條件之一,因此如何及時、準確的發現接觸軌表面缺陷是一個亟須解決的問題[1]。目前全國使用接觸軌供電的地鐵線路中,接觸軌的缺陷檢測主要依靠相關工作人員在線路上使用照明工具和反光鏡通過目視檢查的方法進行,該方法存在效率低、勞動強度大、方便性差、檢測周期長等問題[2]。
近年來,基于機器視覺的缺陷檢測技術在工業中得到廣泛的應用,文獻[3-6]利用利用深度學習網絡實現鋼軌表面缺陷檢測、螺釘定位、扣件檢測等。接觸軌表面缺陷具有類型多、尺寸跨度大等特點,為了實現接觸軌表面缺陷的高效自動化檢測,本文在經典目標檢測模型YOLOv3 的基礎上對特征提取網絡和損失函數進行了改進,設計了一個基于改進YOLOv3 模型的接觸軌表面缺陷檢測方法。該方法使用Ghost 組件代替Darknet-53 中的殘差模塊來減少模型尺寸、提高參數利用率、方便模型在低性能的設備上進行部署,采用GIoU 作為邊界框回歸的損失函數對YOLOv3 的損失函數進行優化,提高模型的收斂速度。
YOLOv3 模型的主要使用Darknet-53 作為新的主干網絡以及采用了特征金字塔網絡FPN[7,8]。YOLOv3 模型將輸入圖像劃分為S×S 網格,在主干網絡中使用殘差模塊來增加網絡深度并執行全卷積操作提取圖像特征,同時使用類似FPN 的上采樣和融合方式以實現多尺度檢測,提高了對小目標物體的檢測能力(圖1)。
YOLOv3 模型使用Darknet-53 作為特征提取網絡。該網絡由53 個1×1 和3×3 的卷積層組成,每個卷積層之后是一個BN層和一個LeakyReLU 層,這3 個層組成了1 個CBL 模塊。從圖1 中可以看出,CBL 模塊是YOLOv3 模型的重要組成部分,模型在原始Darknet-53 的基礎上添加了連接層和下采樣層使得一共由75 個卷積層。為了解決網絡深度加深帶來的梯度發散問題,Darknet-53 使用了殘差模塊。每個殘差模塊中包括兩個卷積層,第一個卷積層卷積核的大小為1×1,第二個卷積層卷積核大小為3×3,在輸入和第二個卷積層之后添加了一個短連接路徑,使用ReLU 函數作為模塊輸出的激活函數。這樣的結構設計可以保證在網絡層數增加的時候模型可以繼續保持收斂和訓練。隨著網絡深度的增加,可以提取到接觸軌表面更深層次的語義特征,使得識別精度可以提高。同時,在殘差模塊中使用1×1 卷積減少了卷積層的通道數,這可以大大減少模型的參數數量。此外,殘差模塊的使用使得網絡的計算量在一定程度上得到了減少,加快了模型的收斂速度。

圖1 原始的YOLOv3 模型結構
選用輕量化的Ghost 組件來代替原始網絡中的殘差模塊,可以減少模型的大小并且增加網絡的推理速度。Ghost 組件包含兩個Ghost 模塊,網絡首先經過一個Ghost 模塊來增加通道數量,然后通過深度可分離卷積對輸入圖像的特征進行重新整合,最后再經過一個Ghost 模塊使得通道數量與短連接路徑進行匹配,兩者相加得到最后的輸出。改進后的特征提取網絡如圖2 所示。

圖2 改進后的特征提取網絡
模型采用均方誤差作為邊界框回歸的損失函數,使用物體真值框和模型預測框的交并比(IoU)作為距離度量。為解決IoU梯度為零無法利用反向傳播進行優化[9,10]的缺陷,提高接觸軌表面缺陷檢測的精度,本文使用廣義交并比GIoU 損失作為邊界框回歸損失:

式(1)中,C 表示同時包含A 和B 的最小矩形框。使用GIoU損失代替均方誤差來對參數進行調整,模型的總損失函數為:

其中,Lcls和Lconf分別為接觸軌表面缺陷分類損失和缺陷判斷置信度損失,均使用交叉熵誤差作為損失函數。
本文實驗用到的接觸軌表面圖像數據集來源于上海地鐵16 號線。對采集到的接觸軌表面圖像進行篩選選出536 張圖像作為實驗數據集,每張圖像中至少包含1 個缺陷。接觸軌表面缺陷檢測實驗在Windows10 環境下使用Pycharm 程序進行,深度學習模型搭建使用PyTorch 框架。硬件設備包括:Intel Xeon Silver 4214 處理器,RTX2080Ti 顯卡,32G 運行內存。挑選375張作為訓練數據集,剩下的161 張作為測試集。訓練時將輸入圖像調整到416×416 pixels,初始學習率設置為0.01,batch-size為6,最大迭代次數為300 次。
改進后的模型對接觸軌表面缺陷的檢測結果如圖3 所示。可以看出,模型對3 種不同類型的接觸軌表面缺陷均能有效識別。

圖3 不同類型接觸軌表面缺陷檢測結果
為了進一步定量驗證模型的有效性,選用3 種目標檢測模型進行比較,包括原始的YOLOv3、Tiny-YOLOv3 和SSD。其中,SSD 模型的特征提取網絡選擇VGG16。本實驗從模型的精確率(Precision)、召回率(Recall)、檢測速度(f/s)和尺寸方面進行比較。

其中,TP 表示人工標注為缺陷的樣本被正確識別的個數,FP 表示被模型錯誤識別為缺陷的樣本個數,FN 表示未被檢測出來的缺陷個數;TP+FP 為被正確識別的樣本總數,TP+FN 為樣本總數。
實驗結果如表1 所示,Tiny-YOLOv3 在模型大小和檢測速度上有明顯優勢,但精確率和召回率較低,只有72.52%和68.29%,難以達到滿意的檢測結果。本文方法對YOLOv3 的特征提取網絡和損失函數進行了優化,使精確率和召回率提升了1.74%和0.47%。另外,使用了更輕量級的Ghost 組件代替殘差模塊將模型大小壓縮到了59.5 MB,同時檢測速度提升了16.7%。因此,比較3 種方法,本文方法最適合用于接觸軌表面的缺陷檢測。

表1 不同接觸軌表面缺陷檢測方法性能對比
針對接觸軌表面缺陷類型繁多、尺寸跨度大等問題,提出了一種基于改進YOLOv3 模型的接觸軌表面缺陷檢測算法:一方面,采用輕量化的Ghost 組件代替原始YOLOv3 模型特征提取網絡中的殘差模塊,來減少模型的尺寸以及提高參數利用率;另一方面,使用GIoU 解決IoU 在檢測框和真值框不相交時損失函數無法反向傳播的問題,并使用GIoU 損失作為邊界框損失加快模型收斂速度。在自制的接觸軌表面圖像數據集上進行實驗,精確率和召回率達到90.21%和89.64%,檢測速度達到每張圖片0.015 s。與其他YOLOv3 系列模型進行對比,實驗結果表明,本文方法在維持高準確率和召回率的同時,大幅減小模型尺寸,提高檢測速率。因此,本文設計的檢測模型有較強的實用價值,未來可靈活部署在性能較弱的軌檢車等檢測設備。