張 磊,胡仕林,張家瑞
(1.三峽大學 電氣與新能源學院,湖北 宜昌 443002;2.智慧能源技術湖北省工程研究中心(三峽大學),湖北 宜昌 443002)
配電網線路多數為野外架空線路。受野外復雜氣象環境的影響,線路上的絕緣子在長期運行過程中容易出現污穢、破損等問題[1]。因此,對配電網絕緣子的定期巡檢至關重要。
無人機在配電線路巡檢中的應用,降低了人工巡線的工作量;同時,機器視覺自動識別可見光巡檢圖像數據技術的使用,極大提高了電力巡檢的效率[2]。
基于深度學習的巡檢圖像自動識別主要分為2 類[3]。
一類是以 Faster R-CNN[4](towards real-time object detection with region proposal networks)系列為代表的2階段檢測算法。該類檢測方法的檢測精度高,但是速度較慢。文獻[5]采用Faster R-CNN網絡對多種電力設備進行識別,并討論了不同參數對識別結果的影響;但是僅實現了不同目標部件分類,未做缺陷檢測。文獻[6]使用Faster R-CNN網絡先對絕緣子定位,再使用 U-net網絡檢測切割出來的圖像中所顯示出的玻璃絕緣子自爆缺陷;該方法計算時間較長,并且制作圖像分割的像素級標簽的工作量大。
另一類是以 SSD[7](single shot multibox detector)、YOLO[8](you only look once: unified,real-time object detection)系列為代表的單階段檢測算法。該類算法極大地提高了目標檢測速度。文獻[9]先對采集的圖像數據進行銳化預處理,再使用 YOLOv3神經網絡定位并截取出防鳥刺區域,最后利用改進的Resnet(residual network)網絡實現了故障防鳥刺檢測;算法提高了對輪廓模糊和目標重疊的防鳥刺檢測效果,但是增加了檢測時間。文獻[10]制作了絕緣子破損缺陷融合圖像數據集,用GhostNet模塊替代YOLOv5主干網絡中的殘差模塊;算法提高了破損絕緣子檢測準確率,但還需要在文中未涉及的其他類型絕緣子缺陷檢測方面做更進一步研究。
雖然現有的研究已經在輸電線路巡檢圖像的缺陷檢測方面取得了一定成果,但是這些成果的實際應用較少。
與輸電線路中的長串絕緣子相比,配電線路絕緣子尺寸更小、其巡檢圖像現場環境更復雜、其缺陷在圖像中表現出更加多樣化的形態,這使得檢測算法的訓練集往往難以覆蓋到所有的缺陷形態[11];同時,陰影和塔材的遮擋容易導致檢測算法對缺陷的誤檢。
基于此,本文提出了一種基于改進 YOLOv5s的配電網絕緣子缺陷分級檢測方法:通過YOLOv5s定位絕緣子區域,以減小復雜背景的干擾;再由圖像分類網絡DenseNet(dense convolutional network)對定位區域做進一步的故障識別。
在配電線路中,常見的絕緣子缺陷[12]主要有污穢、破損和灼傷。采集到的絕緣子缺陷圖像具體示例如圖1所示。

圖1 配電網絕緣子缺陷圖像示例Fig.1 Examples of insulator defects in distribution networks
如圖2所示,本文提出一種基于改進YOLOv5s的配電網絕緣子缺陷分級檢測方法:

圖2 配電網絕緣子故障檢測流程Fig.2 Distribution network insulator fault detection process
在離線訓練階段,通過絕緣子定位和故障分類數據集對YOLOv5s和DenseNet201網絡分別進行訓練。
在實時檢測階段,先通過YOLOv5s神經網絡對所采集圖像中的絕緣子進行區域定位;然后,將YOLOv5s模型定位的絕緣子區域裁剪成單獨的圖片。
最后,由圖像分類網絡DenseNet201進行進一步的故障分類;在準確識別故障絕緣子的同時,有效識別出第一階段目標檢測中出現的誤檢區域。
本文模型采用輕量級目標檢測網絡 YOLOv5s的6.0版本模型,優點是:在保證準確率的同時,可使檢測速度更快;同時,使算法適用于無人機巡檢所使用的嵌入式設備。
在YOLOv5的6.0版本基礎上,將原有的Focus模塊替換為6×6的卷積層,將空間金字塔池化結構(spatial pyramid pooling,SPP)替換為快速空間金字塔池化結構(spatial pyramid pooling-fast,SPPF)。具體網絡結構如圖3所示。

圖3 基于YOLOv5的模型結構Fig.3 Model structure based on YOLOv5
Input模塊的作用是,將輸入圖片尺寸調整為640×640,再通過“Mosaic數據增強”和“自適應圖片縮放”操作對圖片進行隨機縮放、裁剪、拼接、自適應填充,最后送入網絡中。在訓練時,根據絕緣子檢測數據集中的目標框,使用Kmeans算法聚類重新生成Anchors模板。
Backbone是用于特征提取的主干網絡。在網絡第一層,使用6×6的卷積層替換原有Focus模塊,目的是使算法在現有的GPU設備上運行得更加高效。
SPPF結構如圖4所示。相比SPP結構,在相同計算結果條件下,SPPF結構的將輸入串行通過多個 maxpool層的方式可以達到大幅縮短計算時間的效果,同時起到了進一步壓縮模型的目的。

圖4 SPPF結構圖Fig.4 SPPF structure diagram
為融合多層特征,Neck采用了由FPN(feature pyramid network)+PAN(pixel aggregation network)構建的特征金字塔經典結構。FPN從上到下傳遞語義特征,PAN從下到上加強定位信息[13]。
Output模塊是輸出端,用于計算交并比(intersection of union,IOU)損失。其采用CIOU_Loss作為邊界框的損失函數,同時通過非極大值抑制(non-maximum-suppression,NMS)來篩選目標框。考慮配電網絕緣子巡檢圖像中會有絕緣子相互遮擋的情況發生,所以采用加權NMS,使重疊預測框容易被濾除。同時,將NMS中的IOU修改為DIOU,以更好地檢測出遮擋重疊的絕緣子。

式中:b和bgt分別為模型預測的絕緣子定位框和實際框的中心;ρ為2個中心點間的歐式距離;c為同時包含預測框和實際框的最小矩形對角線長度。
在完成絕緣子目標檢測之后,利用檢測框坐標信息來截取絕緣子區域,然后再對絕緣子區域進行缺陷檢測。
本文采用 DenseNet201[14]網絡進行絕緣子缺陷檢測。DenseNet201網絡結構如圖5所示,其特點是通過 Dense Block模塊實現對淺層特征的重復利用[15],使得絕緣子特征信息提取效果較好。

圖5 DenseNet201算法結構圖Fig.5 DenseNet201 algorithm structure diagram
在傳統卷積神經網絡中,每一層的輸入直接連接到下一層;而ResNet網絡在運算過程中則是通過跨層連接來減小梯度消失,如公式(2)所示。

DenseNet網絡在運算時,通過 Dense Block模塊將前面所有層的輸出作為每一層的輸入,具體如公式(3)所示。

式中:Hl為對應網絡中BN、ReLU、Pooling、Conv等操作的非線性變換;Xl為對應第l層的輸出特征圖;X0,X1,···,Xl-1為對應所有層的特征映射的拼接。
由于本文自建的絕緣子故障檢測數據集樣本數量有限,所以采用遷移學習的方法加載經過大型數據集ImageNet充分訓練的參數作為預訓練權重,然后將其遷移到本文的絕緣子故障分類網絡上做微調訓練,以提高絕緣子故障檢測準確率。
實驗計算環境如下。
硬件條件:Intel Core i7-7700K@4.20 GHz CPU、16 GB運行內存;NVIDIA GTX1060 6 GB顯卡。
軟件條件:Python3.8、Pycharm 社區版、Pytorch1.10.1深度學習框架、cuda11.3.1和cuDNN8.2.1。
所用數據來自某省35 kV和10 kV架空配電線路巡檢無人機航拍圖像。35 kV線路安裝有玻璃和陶瓷材質的盤形絕緣子;10 kV線路安裝有陶瓷材質的針式絕緣子。
選取拍攝絕緣子的圖像約3 252張,其中含有故障絕緣子的圖像共1 013張。考慮在計算時,圖像過高的分辨率會占用大量內存空間,所以將樣本圖像分辨率統一調整為1 920×1 280。數據集的劃分如表1所示。

表1 實驗數據集描述Tab.1 Description of experimental dataset 張
針對絕緣子定位數據集,采用Labelimg標注工具對絕緣子區域用矩形框進行人工標注。數據集按8:1:1的比例劃分,用于YOLOv5s絕緣子定位模型的訓練。
為降低人工標記工作量,先用少量人工標注的樣本對YOLOv5s進行訓練,再用訓練好的模型對剩余圖像進行自動標注,最后由人工對標注框進行調整[16]。
針對故障分類數據集圖像,采用基于絕緣子定位數據集中的標注框信息截取絕緣子區域,同時隨機截取沒有絕緣子的背景區域。于是,標注區域分為正常絕緣子、故障絕緣子和背景3類,將其用于 DenseNet201故障分類網絡的訓練。加入背景這一類可以有效排除絕緣子定位階段的誤檢對第二階段故障分類的影響。
本文使用6個指標來綜合評價模型性能,分別是精確率(Precision)、召回率(Recall)、均值平均精度(mAP)、準確率(ACC)、F1-score和平均檢測處理時間。
采用定位數據集來訓練絕緣子定位模型YOLOv5s。由于本文的數據集較小,訓練時選用Adam優化器。
設置參數:初始學習率為 0.001;批量大小(batchsize)為8;輸入圖像分辨率為640×640;迭代次數(epoch)為300。
YOLOv5s模型在訓練過程中的準確率、召回率和平均精確度隨迭代次數變化曲線如圖6所示。圖6中,mAP@0.5表示IOU閾值為0.5時的平均精確度曲線,mAP@IOU0.5~0.95表示IOU閾值在0.5到0.95之間時平均精確度曲線。

圖6 YOLOv5s參數變化曲線Fig.6 YOLOv5s parameter change curve
由圖6可以看出,mAP@IOU0.5~0.95可以更好地評價絕緣子定位框位置的準確性。
在模型訓練 100次后,準確率、召回率和mAP@0.5曲線基本趨于穩定;模型訓練200次后,mAP@IOU0.5~0.95趨于穩定。
最終,定位模型在絕緣子定位數據集的測試集上精確率為96.5%,召回率為94.4%,mAP@0.5值為97.4%,mAP@IOU0.5~0.95值為75.6%,平均檢測時間為11.8 ms。這說明,模型能夠快速準確地定位絕緣子區域。
使用故障分類數據集訓練絕緣子故障檢測模型DenseNet201。設置訓練參數:批量大小為16,迭代次數為300,初始學習速率為0.001。
DenseNet201網絡首先加載經過ImageNet數據集訓練的預訓練權重,然后使用故障分類數據集對網絡進行進一步的調整。
DenseNet201模型訓練過程的準確率和損失值變化如圖7所示。從圖7中可以看出,在迭代次數達到100次以上時,模型準確率和損失值逐漸趨于穩定;在迭代次數達到200次以上時,模型訓練準確率最終穩定在95%左右。

圖7 平均正確率和損失值變化曲線Fig.7 Change curves of average accuracy rate and loss value
最終,模型在故障分類數據集的測試集上檢測準確率為 93.3%;這表明模型能夠較好地實現故障絕緣子故障檢測。
為了驗證本文方法的性能,進行與 Faster R-CNN和YOLOv5s算法的對比實驗。
實驗中,對目標檢測網絡設置相同的參數訓練次數——300次。實驗結果如表2所示。

表2 絕緣子定位結果對比Tab.2 Comparison of insulator positioning results %
由表2可以看出,Faster R-CNN檢測速度較慢且效果不理想。與原始YOLOv5s算法相比,本文改進的算法優勢在于:(1)縮短了計算時間,平均檢測時間縮短了4.7 ms;(2)降低了漏檢率,召回率提高了 2.7%;(3)可以更好地檢測出遮擋重疊的絕緣子,mAP值提高了3.8%。
為了驗證本文絕緣子故障分類模型的先進性,進行與VGG16、ResNet50和DenseNet169算法的對比實驗。
實驗中,對故障分類網絡設置相同的參數訓練次數——300次。實驗結果如表3所示。

表3 絕緣子故障分類結果對比Tab.3 Comparison of insulator fault classification results %
由表3可以看出,DenseNet201能夠有效地實現絕緣子故障的檢測,其準確率為 93.3%,精確率為92.5%,召回率為94.0%,F1值為93.2%,均高于其他3種絕緣子故障分類模型。
對以農田和樹林等野外環境為背景的圖像樣本進行絕緣子檢測,結果如圖8所示。由圖8可以看出,在各種遮擋導致特征表達能力不足的情況下,改進后的YOLOv5s算法可以準確定位絕緣子。

圖8 野外背景下樣本檢測結果對比Fig.8 Comparison of sample detection results in wild background
為了進一步驗證本文方法的有效性,在典型場景下對模型進行識別對比驗證,結果如圖9所示。圖中,樣本的背景環境復雜,圖像中絕緣子數量較多,存在多尺度目標且相互遮擋。

圖9 經典場景下樣本檢測結果對比Fig.9 Comparison of sample detection results in classic scenarios
對比圖9(a)與圖9(b)可以看出,改進的YOLOv5s算法可以檢測出被遮擋的絕緣子,檢測的結果范圍更全面,但是出現了對背景雜物的誤檢。從圖9(c)中可以看出,本文方法通過第二級 DenseNet201網絡有效排除了對背景雜物的誤檢,同時能夠將故障絕緣子和正常絕緣子進行分類;但是檢測結果中出現被遮擋的絕緣子出現了重復標注的情況,其主要原因是IOU閾值參數設置偏大。后續將針對該問題進行研究。
本文提出一種基于YOLOV5和DenseNet201的配電網絕緣子缺陷分級檢測方法——先通過YOLOv5s網絡定位配電網絕緣子區域,再由DenseNet201網絡對絕緣子區域做進一步的故障分類和誤檢排除。
對比實驗結果表明,本文改進后的分級檢測網絡檢測準確度更高,能夠更好地識別出在遮擋情況下特征表達能力不足的故障絕緣子,同時排除對背景雜物的誤檢。
考慮分級檢測在漏檢的小目標檢測方面沒有有效改進,后期將針對該問題進一步展開研究。