陳劍波, 唐 銳, 姚 平, 張賽飛, 廖 林, 楊春萍
(1.國(guó)網(wǎng)新疆電力有限公司巴州供電公司,新疆 庫(kù)爾勒 841000; 2.華北電力大學(xué) 電氣學(xué)院,北京 102206)
架空線路是輸送電力的重要紐帶,確保架空線路安全對(duì)于電力系統(tǒng)安全穩(wěn)定運(yùn)行意義重大。絕緣子、懸垂線夾和均壓環(huán)等金具是架空線路中常見的部件,由于長(zhǎng)期暴露于外部自然環(huán)境下,這些部件難免會(huì)出現(xiàn)缺陷從而產(chǎn)生隱患,威脅電力系統(tǒng)安全穩(wěn)定運(yùn)行,因而需要定期巡檢來(lái)確保電能持續(xù)供應(yīng)和架空線路安全運(yùn)行。
現(xiàn)有巡檢方式主要包括人工巡檢、直升機(jī)巡檢[1]、機(jī)器人巡檢[2]、無(wú)人機(jī)巡檢[3-4]等。目前國(guó)內(nèi)架空線路巡檢模式主要為無(wú)人機(jī)巡檢結(jié)合人工輔助巡檢方式,通過(guò)給無(wú)人機(jī)設(shè)定航線對(duì)架空線路進(jìn)行巡檢,對(duì)無(wú)人機(jī)回傳的圖像進(jìn)行人工甄別,或者將無(wú)人機(jī)取得的影像數(shù)據(jù)上傳服務(wù)器,服務(wù)器再采取深度學(xué)習(xí)方法對(duì)架空線路影像數(shù)據(jù)進(jìn)行甄別,在人力物力上投入較大。
當(dāng)前基于深度學(xué)習(xí)的目標(biāo)檢測(cè)方法大致可以分為基于候選區(qū)域的兩階段目標(biāo)檢測(cè)方法和基于回歸的單階段目標(biāo)檢測(cè)方法。基于候選區(qū)域的兩階段檢測(cè)方法有R-CNN[5]、Faster-R-CNN[6]、Mask R-CNN[7]等,這類檢測(cè)方法精度較高;基于回歸的單階段檢測(cè)方法有YOLO[8-10]、SSD[11]等,這類檢測(cè)方法具有更快的處理速度。在滿足檢測(cè)精度要求下,由于基于回歸的單階段檢測(cè)方法檢測(cè)速度更快,因此其在實(shí)際應(yīng)用中使用更加廣泛,適用于實(shí)時(shí)性要求高、需要快速檢測(cè)的場(chǎng)景?;谏疃葘W(xué)習(xí)方法,國(guó)內(nèi)外許多學(xué)者對(duì)架空線路關(guān)鍵部件檢測(cè)進(jìn)行了研究,文獻(xiàn)[12]提出了一種改進(jìn)的單級(jí)多框檢測(cè)器模型對(duì)架空線路部件進(jìn)行檢測(cè),在SSD模型中使用改進(jìn)的斥力損失函數(shù),對(duì)于小目標(biāo)和密集目標(biāo)取得了較好的檢測(cè)效果。文獻(xiàn)[13]通過(guò)引入注意力機(jī)制和空間金字塔結(jié)構(gòu),改進(jìn)了特征提取網(wǎng)絡(luò),提出了一種基于YOLOv3改進(jìn)的絕緣子缺陷檢測(cè)算法,提升了模型的特征表達(dá)能力。文獻(xiàn)[14]以YOLOv3為框架,提出了基于最小凸集的損失函數(shù),同時(shí)以基于最小凸集的預(yù)測(cè)框選擇代替非極大值抑制處理,能有效檢測(cè)識(shí)別架空線路中多種典型的缺陷和故障。文獻(xiàn)[15]以 VGG-16 作為骨干網(wǎng)絡(luò),在倒數(shù)第二個(gè)全連接層 FC7 提取金具的深度特征向量后利用主成分分析(Principal Component Analysis,PCA)實(shí)現(xiàn)降維,基于全局混雜平衡原理進(jìn)行特征和標(biāo)簽的匹配學(xué)習(xí)完成分類,進(jìn)一步提升了金具缺陷識(shí)別精度。
考慮到架空線路中關(guān)鍵部件缺陷的多樣性,并針對(duì)檢測(cè)精度不高的問題,本文提出了一種改進(jìn)YOLOv3的架空線路常見缺陷檢測(cè)方法。
YOLOv3整體設(shè)計(jì)采用編碼器-解碼器架構(gòu)來(lái)進(jìn)行特征提取,Darknet-53網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)借鑒了殘差結(jié)構(gòu)的思想,在網(wǎng)絡(luò)加深的同時(shí)避免了梯度爆炸和梯度消失等問題[16],Darknet-53共有53層, 其結(jié)構(gòu)如圖1所示[8]。
圖1 Darknet-53網(wǎng)絡(luò)結(jié)構(gòu)
YOLOv3在COCO開源數(shù)據(jù)集上取得了較好的效果,但是在架空線路關(guān)鍵部件檢測(cè)問題上,需要進(jìn)行相應(yīng)的改進(jìn)。為解決上述問題,本文在YOLOv3基礎(chǔ)上進(jìn)行優(yōu)化,提出了一種基于YOLOv3的架空線路關(guān)鍵部件識(shí)別算法,通過(guò)實(shí)驗(yàn)和測(cè)試,驗(yàn)證了改進(jìn)算法的有效性。
主要改進(jìn)思路如下:① 對(duì)YOLOv3的骨干網(wǎng)絡(luò)進(jìn)行改進(jìn),融合RepVGG網(wǎng)絡(luò),節(jié)省內(nèi)存;② 采用SIoU邊界框回歸損失函數(shù),有效降低回歸的自由度,加快網(wǎng)絡(luò)收斂;③ 采用更加簡(jiǎn)潔高效的解耦頭,維持精度并加快解耦速度。
YOLO3網(wǎng)絡(luò)有著更高的精度,但由于使用較多的分支結(jié)構(gòu),會(huì)明顯增加內(nèi)存消耗,降低推理速度,不利于模型推理。VGG網(wǎng)絡(luò)屬于直筒型結(jié)構(gòu),由于只使用3×3卷積核,且沒有分支結(jié)構(gòu),運(yùn)算并行度更高。丁霄漢等[17]提出的RepVGG網(wǎng)絡(luò)結(jié)構(gòu),通過(guò)結(jié)構(gòu)重參數(shù)化,實(shí)現(xiàn)了在訓(xùn)練階段的網(wǎng)絡(luò)多分支訓(xùn)練,以強(qiáng)化模型特征提取能力;以及在推理階段進(jìn)行網(wǎng)絡(luò)分支合并,以加快模型推理速度。用SiLU激活函數(shù)代替原RepVGG網(wǎng)絡(luò)中的ReLU激活函數(shù),收斂更快。RepVGG網(wǎng)絡(luò)訓(xùn)練和推理模型如圖2所示。網(wǎng)絡(luò)的訓(xùn)練模型如圖3(a)所示,通過(guò)3×3卷積核、1×1卷積核分支及Identity殘差連接構(gòu)成多分支結(jié)構(gòu),能有效緩解梯度消失等問題,讓模型更快收斂。網(wǎng)絡(luò)的推理模型如圖3(b)所示,通過(guò)多個(gè)3×3卷積和多次SiLU激活函數(shù)堆疊,形成直筒型結(jié)構(gòu),加快了模型推理速度。通過(guò)結(jié)構(gòu)重參數(shù)化方法實(shí)現(xiàn)訓(xùn)練模型到推理模型的轉(zhuǎn)化:① 將卷積層和批歸一化層進(jìn)行融合;② 通過(guò)填充等效方式將卷積核轉(zhuǎn)化為3×3卷積核,從而將卷積層都變?yōu)?×3大小的卷積核;③ 合并所有3×3大小的卷積核,即將分支的權(quán)重和偏置疊加到一個(gè)3×3卷積核之中,并由此卷積核進(jìn)行模型推理。
圖2 RepVGG網(wǎng)絡(luò)訓(xùn)練和推理模型
圖3 改進(jìn)后網(wǎng)絡(luò)結(jié)構(gòu)圖
為滿足實(shí)際需求,本文引入改進(jìn)后的RepVGG網(wǎng)絡(luò)作為骨干網(wǎng)絡(luò),加強(qiáng)特征提取能力,減少信息損失,同時(shí)加快推理速度,便于部署到無(wú)人機(jī)上。改進(jìn)后的網(wǎng)絡(luò)整體結(jié)構(gòu)如圖3所示。
CIoU[18]、DioU[18]、GIoU[19]等都沒有考慮到所需要的真實(shí)框與預(yù)測(cè)框之間的不匹配的方向,導(dǎo)致收斂速度慢且訓(xùn)練效率低,為此SIoU[20]被提出,其考慮了回歸之間的向量角度,重新定義了懲罰指標(biāo)。SIoU損失函數(shù)由4個(gè)成本函數(shù)構(gòu)成。
第1部分是角度成本函數(shù),其計(jì)算方法如圖4所示。
圖4 角度成本函數(shù)計(jì)算方法
圖4左下角為預(yù)測(cè)框,右上角為真實(shí)框。角度成本函數(shù)計(jì)算公式如下:
(1)
第2部分是距離成本函數(shù),定義如下:
(2)
式中:ch和cw為預(yù)測(cè)框和真實(shí)框最小外接框的高度和寬度。當(dāng)預(yù)測(cè)框和真實(shí)框之間的角度α趨近于零時(shí),距離成本函數(shù)的貢獻(xiàn)大大降低;相反,α越接近π/4,距離成本函數(shù)貢獻(xiàn)越大。ρ為衡量預(yù)測(cè)框與真實(shí)框之間距離接近程度的參數(shù),γ為被賦予時(shí)間優(yōu)先的距離值。當(dāng)α趨近于零時(shí),距離成本函數(shù)趨近于一個(gè)常數(shù)。
第3部分是形狀成本函數(shù),其計(jì)算公式如下:
(3)
式中:wgt和hgt為真實(shí)框的寬和高;w和h為預(yù)測(cè)框的寬和高。θ的值決定了形狀成本函數(shù)的大小,根據(jù)數(shù)據(jù)集不同,其取值也不同。θ的值是形狀成本函數(shù)中非常重要的一項(xiàng),它控制著對(duì)形狀成本函數(shù)的關(guān)注程度。如果θ的值設(shè)置為 1,它將立即優(yōu)化一個(gè)邊框,從而損害邊框的自由移動(dòng)。此處參考文獻(xiàn)[20]的作者建議,設(shè)置為2到6之間的一個(gè)值。
第4部分是交并比(Intersection over Union,IoU)成本函數(shù),其計(jì)算公式如下:
(4)
式中:I為IoU。和傳統(tǒng)IoU函數(shù)類似,B為預(yù)測(cè)框大小;BGT為真實(shí)框大小。
最終得到邊框回歸損失表達(dá)式如下:
(5)
檢測(cè)頭的設(shè)計(jì)已經(jīng)在目標(biāo)檢測(cè)和目標(biāo)分類的網(wǎng)絡(luò)中被驗(yàn)證有效。檢測(cè)有著分類任務(wù)和定位任務(wù)2個(gè)分支,而采用不同的分支進(jìn)行運(yùn)算,有利于效果的提升。原始YOLOv3采用的解耦頭是同時(shí)計(jì)算分類任務(wù)和定位任務(wù), 在分類和定位任務(wù)之間共享參數(shù),而YOLOX中的檢測(cè)頭將兩個(gè)分支解耦,在每個(gè)分支中引入了額外的2個(gè) 3×3 卷積層以提高精度,但是降低了速度。為避免2個(gè)3×3卷積帶來(lái)的額外開銷,此處只用了一個(gè)3×3卷積,降低時(shí)延。改進(jìn)后的檢測(cè)頭結(jié)構(gòu)如圖5所示。
圖5 改進(jìn)后的檢測(cè)頭結(jié)構(gòu)
為了驗(yàn)證提出的改進(jìn)模型網(wǎng)絡(luò)Rep-YOLOv3方法的性能,本文選取架空線路常見的3種缺陷進(jìn)行檢測(cè)實(shí)驗(yàn)。本文原始數(shù)據(jù)共446幅圖片,來(lái)自國(guó)網(wǎng)某檢修公司無(wú)人機(jī)巡檢作業(yè)時(shí)拍攝的標(biāo)準(zhǔn)化照片,鑒于數(shù)據(jù)集樣本較小,直接用于訓(xùn)練難以滿足實(shí)際需求,本文利用Imgaug數(shù)據(jù)增強(qiáng)庫(kù)進(jìn)行數(shù)據(jù)擴(kuò)充,提升訓(xùn)練模型的魯棒性。本文通過(guò)添加噪聲、翻轉(zhuǎn)、銳化、調(diào)整對(duì)比度等方法對(duì)圖片進(jìn)行數(shù)據(jù)增強(qiáng),無(wú)人機(jī)航拍圖片經(jīng)數(shù)據(jù)增強(qiáng)后如圖6所示。
在對(duì)原始數(shù)據(jù)集進(jìn)行數(shù)據(jù)增強(qiáng)后,篩選并剔除不能用于訓(xùn)練的數(shù)據(jù),共得到5352幅原始數(shù)據(jù)加增強(qiáng)數(shù)據(jù)圖片,將圖片按照7∶3的比例劃分為測(cè)試集和驗(yàn)證集。再利用Labelimg進(jìn)行手動(dòng)標(biāo)注:部件及部件缺陷檢測(cè)主要包括絕緣子、懸垂線夾和均壓環(huán)。訓(xùn)練集用于模型訓(xùn)練,驗(yàn)證集用于在訓(xùn)練過(guò)程中對(duì)訓(xùn)練結(jié)果進(jìn)行評(píng)估防止過(guò)擬合。數(shù)據(jù)樣本情況如表1所示。
在實(shí)驗(yàn)平臺(tái)為GTX2080TI,深度學(xué)習(xí)框架為Pytorch,加速庫(kù)CUDA版本為11.3的環(huán)境下訓(xùn)練,設(shè)置訓(xùn)練epoch為300,batchsize設(shè)置為16,初始學(xué)習(xí)率設(shè)置為1×10-4。由于數(shù)據(jù)集內(nèi)圖片大小不一,需要通過(guò)預(yù)處理將它們轉(zhuǎn)換為416像素×416像素大小的圖像,并作為網(wǎng)絡(luò)輸入。采用余弦退火策略調(diào)整學(xué)習(xí)率,同時(shí)利用動(dòng)量為0.937的隨機(jī)梯度下降優(yōu)化器來(lái)調(diào)整網(wǎng)絡(luò)參數(shù),權(quán)重衰減設(shè)定為0.000 5防止模型訓(xùn)練過(guò)擬合,非極大值抑制閾值設(shè)置為0.5。評(píng)價(jià)指標(biāo)選擇精確度P(Precision)和召回率R(Recall),精確度表示模型預(yù)測(cè)正確的結(jié)果占所有預(yù)測(cè)為正類的比率,召回率表示模型預(yù)測(cè)正確的結(jié)果占所有樣本的比率。計(jì)算公式如下:
(6)
式中:TP表示預(yù)測(cè)結(jié)果與真實(shí)標(biāo)注結(jié)果一致都為正樣本;FP表示預(yù)測(cè)結(jié)果為正樣本且與實(shí)際標(biāo)注相反;FN表示預(yù)測(cè)為負(fù)樣本且與真實(shí)標(biāo)注相反。改進(jìn)算法召回率與精確度之間的對(duì)比如表2所示,由表2可知改進(jìn)模型網(wǎng)絡(luò)Rep-YOLOv3的精確度與召回率相比于YOLOv3、Faster R-CNN和SSD都有不同程度的提升,其中改進(jìn)模型網(wǎng)絡(luò)相比于YOLOv3,召回率增加了2.8%,精確度增加了3.4%,表明Rep-YOLOv3網(wǎng)絡(luò)對(duì)于架空線路關(guān)鍵部件檢測(cè)精確率提升明顯。在表2的結(jié)果中,SSD和Faster R-CNN的檢測(cè)精度差距在3%以內(nèi),SSD模型的結(jié)果最差,主要是因?yàn)镾SD模型的特征提取能力不如Faster R-CNN和YOLOv3。改進(jìn)模型網(wǎng)絡(luò)通過(guò)引入SIoU函數(shù),讓預(yù)測(cè)框能夠更快地靠近最近的軸,提升了預(yù)測(cè)框和真實(shí)框的匹配度。
表2 改進(jìn)算法召回率與精確度對(duì)比
從未標(biāo)注的圖像數(shù)據(jù)中選取3幅具有代表性的圖像用來(lái)測(cè)試算法對(duì)不同目標(biāo)的檢測(cè)結(jié)果,可以直觀看出不同模型對(duì)關(guān)鍵部件及缺陷識(shí)別的優(yōu)劣,圖7為Rep-YOLOv3和YOLOv3的檢測(cè)結(jié)果對(duì)比圖,在對(duì)部件定位的矩形框上展示目標(biāo)類別及置信度。在懸垂線夾傾斜缺陷及絕緣子大傘裙破損缺陷上,YOLOv3可以正確識(shí)別,但是置信度低于改進(jìn)模型網(wǎng)絡(luò);在均壓環(huán)識(shí)別上,YOLOv3及Rep-YOLOv3都存在漏檢情況;而YOLOv3檢測(cè)絕緣子時(shí)出現(xiàn)漏檢情況,改進(jìn)模型網(wǎng)絡(luò)則正常識(shí)別出絕緣子。
圖7 Rep-YOLOv3和YOLOv3檢測(cè)效果對(duì)比圖
各模型的訓(xùn)練時(shí)間和單張圖片推理耗時(shí)如表3所示,由表3可以看出,經(jīng)過(guò)改進(jìn)的模型網(wǎng)絡(luò)無(wú)論是訓(xùn)練速度還是單幅圖片推理耗時(shí),都比原始模型快,這是由于改進(jìn)了骨干網(wǎng)絡(luò),模型復(fù)雜度降低,計(jì)算量下降使得模型訓(xùn)練和推理速度極大地加快,因而更加符合實(shí)際架空線路無(wú)人機(jī)巡檢應(yīng)用的需求。
表3 模型訓(xùn)練時(shí)間和單幅圖片推理耗時(shí)
針對(duì)架空線路無(wú)人機(jī)巡檢提出了一種基于YOLOv3的改進(jìn)模型網(wǎng)絡(luò),通過(guò)對(duì)骨干網(wǎng)絡(luò)和檢測(cè)頭進(jìn)行改進(jìn),同時(shí)引入SIoU損失函數(shù),在提升檢測(cè)精度的同時(shí)也提升了檢測(cè)速度。通過(guò)實(shí)驗(yàn)證明,使用改進(jìn)模型網(wǎng)絡(luò)識(shí)別精度達(dá)到89.1%,單幅圖片推理耗時(shí)僅為42 ms,與其他方法對(duì)比可知,改進(jìn)后的模型效果更好,具有一定的實(shí)際參考價(jià)值。下一階段,對(duì)于復(fù)雜背景下和拍攝模糊的關(guān)鍵部件檢測(cè)仍需要進(jìn)行進(jìn)一步研究。