唐 小煜,熊 浩良,黃 銳珊,林 威霖
(1.華南師范大學(xué)物理與電信工程學(xué)院,廣州510006;2.廣東省量子調(diào)控工程與材料重點實驗室,廣州510006;3.廣東省光電檢測儀器工程技術(shù)研究中心,廣州510006;4.華南師范大學(xué)物理國家級實驗教學(xué)示范中心,廣州510006)
為了保證輸電線路的可靠運行,輸電線變電系統(tǒng)需要進(jìn)行定期的巡檢、維修以及維護(hù)來確保消除故障或者隱患。絕緣子在輸電線路中起著很大的作用,由于長期遭受惡劣天氣的影響,以及器件的使用壽命及勞損,絕緣子很容易產(chǎn)生缺陷,嚴(yán)重威脅輸電線路的安全可靠運行。傳統(tǒng)的電網(wǎng)巡查方式通過人工進(jìn)行巡檢,該方法存在勞動強(qiáng)度大,工作效率低,在危險地段會危及到巡查工人生命安危等問題。
隨著近些年來計算機(jī)技術(shù)的飛速發(fā)展及計算機(jī)處理性能的增強(qiáng),利用計算機(jī)圖像處理的方法對不同領(lǐng)域的缺陷定位與檢測已經(jīng)成為主要趨勢[1?4]。
而針對絕緣子的分割和爆破絕緣子的檢測,目前已有不少研究通過圖像處理技術(shù)與機(jī)器學(xué)習(xí)算法進(jìn)行實驗并取得了一定的成果。朱文天等[5]提出紅綠色差灰度化方法,并結(jié)合最大類間方差法(Otsu)、紅藍(lán)色差灰度化、K均值聚類算法(K?means)和投影特征實現(xiàn)絕緣子分割;王淼等[6]提出通過閾值分割、圖像邊緣檢測等方法檢測爆破絕緣子,最終實現(xiàn)在復(fù)雜背景下的識別正確率為85%;商俊平等[7]采用分割提取特征的方法,利用最大類間方差法對絕緣子進(jìn)行分割并提取絕緣子的不變特征值,使用Ada?boost分類器[8]定位絕緣子位置并計算相鄰絕緣子的歐氏距離來對爆破絕緣子進(jìn)行定位,最終爆破絕緣子的識別準(zhǔn)確率達(dá)到87%。
基于卷積神經(jīng)網(wǎng)絡(luò)的算法模型在目標(biāo)檢測及圖像分割領(lǐng)域的蓬勃發(fā)展,為絕緣子的分割提取和缺陷檢測提供了更為高效的方法與思路。U?Net模型常被應(yīng)用于醫(yī)學(xué)圖像的語義分割,本文通過引入注意力機(jī)制和殘差結(jié)構(gòu)對網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)一步優(yōu)化,使網(wǎng)絡(luò)能夠捕獲更多高低層的特征信息,進(jìn)一步提高絕緣子的分割精度;同時結(jié)合引入注意力機(jī)制的改進(jìn)YOLOv5,實現(xiàn)對爆破絕緣子的快速和精確定位。
U?Net是一個能夠使用少量訓(xùn)練圖像進(jìn)行訓(xùn)練并且做到精準(zhǔn)分割的網(wǎng)絡(luò)。獲取絕緣子的掩模需要耗費大量的人工以及時間,使用U?Net則可以克服這一點。U?Net主要由收縮路徑和擴(kuò)張路徑組成,收縮路徑和擴(kuò)張路徑基本上是對稱的,因此是一個U形的網(wǎng)絡(luò),網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。收縮路徑是經(jīng)典的卷積網(wǎng)絡(luò)架構(gòu),用于特征提取,包含4層,每層由2個卷積層和1個最大池化層以及ReLU激活函數(shù)組成。每層下采樣后特征通道數(shù)加倍。擴(kuò)張路徑的每一層都先使用反卷積,每次反卷積后特征通道數(shù)減半,特征圖大小加倍。反卷積后的結(jié)果和收縮路徑對應(yīng)步驟的特征圖拼接起來后做2次卷積。通過將收縮過程中產(chǎn)生的高分辨率的特征拼接到上采樣的結(jié)果,可以更好地利用淺層的局部信息,獲取更精確的結(jié)果。
圖1 U?Net的網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 Network structure of U?Net
對于絕緣子掩模的獲取,可以將高分辨率的圖像切割后作為原始輸入圖片,將絕緣子掩模提取視為一個與絕緣子與背景的圖像二分類分割問題。本文利用Ronneberger等[9]提出的U?Net、He等[10]K提出的Resnet block以及Hu等[11]提出的SE block來實現(xiàn)這種分割。網(wǎng)絡(luò)的整體結(jié)構(gòu)如圖2所示。
圖2 SERes?Unet網(wǎng)絡(luò)結(jié)構(gòu)Fig.2 Network structure of SERes?Unet
模型在U?Net的基礎(chǔ)上,將收縮路徑和擴(kuò)張路徑的兩個3×3的卷積層替換成殘差結(jié)構(gòu)(Resnet?block),模塊的組成如圖3(a)所示,由兩個重復(fù)的結(jié)構(gòu),3×3的卷積層以及批量歸一化層(Batchnormalization,BN)和ReLU激活函數(shù)組成,使用Resnet?block可以減少卷積過程中存在梯度消失、結(jié)構(gòu)信息損耗的影響,加入BN層對輸入進(jìn)行標(biāo)準(zhǔn)化處理,可以使網(wǎng)絡(luò)的訓(xùn)練變得更加容易。在收縮路徑的Resnet?block,添加了壓縮-獎懲模塊(Squeeze?and?Excitation block,SE block),SE block是一種注意力機(jī)制,通過支路結(jié)構(gòu)學(xué)習(xí)如何評估通道間的關(guān)聯(lián),作用到原特征圖上,實現(xiàn)對輸入的校正。收縮路徑模塊的組成如圖3(b)所示。同時,對收縮路徑每一層產(chǎn)生的特征圖以及擴(kuò)展路徑每一層產(chǎn)生的特征圖也使用了由全局池化層(Global pooling)全連接層(Fully connected layer,F(xiàn)C)以及Sigmoid激活函數(shù)組成的注意力機(jī)制,通過學(xué)習(xí)選擇性地強(qiáng)調(diào)有用的特征和抑制不太有用的特征,再將特征圖進(jìn)行拼接。
圖3 Resnet?block的結(jié)構(gòu)Fig.3 Structure of Resnet?block
目前在目標(biāo)檢測領(lǐng)域主要分為單階段目標(biāo)檢測器和兩階段目標(biāo)檢測器。而經(jīng)過優(yōu)化和改進(jìn),以通用目標(biāo)檢測器(Single shot multiBox detector,SSD)[12]、目標(biāo)檢測算法(You only look once,YOLO)[13]為代表的單階段目標(biāo)檢測在檢測速度和精度上都有了較大的提升,特別是如EfficientDet[14]、YOLOv5等目標(biāo)模型在檢測精度和速度均能超越以Faster?RCNN為代表的兩階段目標(biāo)檢測器,具有更廣闊的應(yīng)用場景。
YOLOv5算法在YOLOv4的基礎(chǔ)上作進(jìn)一步的優(yōu)化,在輸入端采取Mosaic增強(qiáng)、自適應(yīng)圖片縮放等方法,不僅能夠完成對數(shù)據(jù)的增強(qiáng),更能通過減少由圖片縮放所帶來的冗余信息,從而提高了推理速度。此外,YOLOv5在骨干網(wǎng)絡(luò)中結(jié)合了Focus結(jié)構(gòu)和局部跨階段結(jié)構(gòu)(Cross stage partial,CSP)結(jié)構(gòu)以及特征金字塔(Feature pyramid networks,F(xiàn)PN),路徑聚合網(wǎng)絡(luò)(Path aggregation network,PAN)等特征融合技巧,利用跨階段層次結(jié)構(gòu)將特征信息融合,在減少計算量的同時保證了正確率。通過修改網(wǎng)絡(luò)的深度和寬度,最終YOLOv5迭代出YOLOv5s、YOLOv5m、YOLOv5l、YOLOv5x共4種不同深度的模型,并隨著模型的復(fù)雜度增加,模型的識別準(zhǔn)確率不斷提高。
改進(jìn)的YOLOv5模型在YOLOv5s的基礎(chǔ)上,在模型的預(yù)測層前加入SE block,將經(jīng)過前面卷積層后的融合特征分別作為SE block的輸入,通過SE block分支結(jié)構(gòu)上的全連接層與ReLU、Sigmoid激活函數(shù),實現(xiàn)利用ReLU激活函數(shù)增加網(wǎng)絡(luò)的非線性復(fù)雜度的同時,也能利用Sigmoid激活函數(shù)將輸出縮放到0?1的區(qū)間,從而能表現(xiàn)出各特征維度上(Channel?wise)的信息重要性。最終通過引入注意力機(jī)制實現(xiàn)對輸入的校正、增強(qiáng)模型對有效特征信息的選擇,進(jìn)一步提高檢測的精度,提高網(wǎng)絡(luò)的泛化能力。改進(jìn)后模型結(jié)構(gòu)如圖4所示。
圖4 改進(jìn)的YOLOv5網(wǎng)絡(luò)結(jié)構(gòu)Fig.4 Network structure of improved YOLOv5
本實驗軟件運行的操作系統(tǒng)為Ubuntu16.04,硬件服務(wù)器的配置為:CPUi7?7800X、兩塊NVIDIA 1080Ti GPU顯卡、內(nèi)存為16 GB。
3.1.1 模型訓(xùn)練
本文實驗選取由無人機(jī)拍攝獲得的,分辨率為4 912×7 360、2 624×3 936、4 016×6 016的輸電線路圖像進(jìn)行訓(xùn)練。在分割絕緣子階段,數(shù)據(jù)被視為一個二分類問題,其中絕緣子為前景,除絕緣子外的其他物體皆為背景。
為了降低模型過擬合的風(fēng)險,對原始數(shù)據(jù)進(jìn)行了數(shù)據(jù)增強(qiáng),包括水平翻轉(zhuǎn)增強(qiáng)、垂直翻轉(zhuǎn)增強(qiáng)、高斯噪聲增強(qiáng)、像素乘法增強(qiáng)、裁剪填充增強(qiáng)。同時,為了標(biāo)準(zhǔn)化輸入數(shù)據(jù),對輸入的圖像以及其對應(yīng)掩模圖像進(jìn)行了歸一化處理。
模型選取二進(jìn)制交叉熵函數(shù)和Sigmoid函數(shù)的結(jié)合作為損失函數(shù),Adam算法作為學(xué)習(xí)率的優(yōu)化算法。其中初始化學(xué)習(xí)率Lr設(shè)置為4e-4,并使用自適應(yīng)調(diào)整對學(xué)習(xí)率進(jìn)行調(diào)整,超過4個Epochs準(zhǔn)確率沒有提升則將學(xué)習(xí)率Lr調(diào)整為0.8×Lr。訓(xùn)練的批量大?。˙atch_size)設(shè)置為16。
3.1.2 實驗結(jié)果及分析
本文實驗對原始數(shù)據(jù)進(jìn)行多種方式的數(shù)據(jù)增強(qiáng),并將數(shù)據(jù)增強(qiáng)前后的數(shù)據(jù)在U?Net模型上進(jìn)行訓(xùn)練和效果驗證,最終效果對比如表1實驗結(jié)果表明經(jīng)數(shù)據(jù)增強(qiáng)后,訓(xùn)練數(shù)據(jù)量從5 000張圖像增加到12 000張圖像,并且使用經(jīng)過增強(qiáng)后的數(shù)據(jù)進(jìn)行訓(xùn)練的模型能在任務(wù)上取得更佳的效果。
表1 數(shù)據(jù)增強(qiáng)前后的在U?Net模型上的效果對比Table 1 Performance comparison on the U?Net model before and after data augmentation
本文將U?Net、Res?Unet、SERes?Unet進(jìn)行了對比,其中,Res?Unet是指在U?Net的基礎(chǔ)上將卷積層替換為Resnet?Block以及添加了SE Block的Resnet?Block的 網(wǎng) 絡(luò),SERes?Unet是 指 在Res?Unet的基礎(chǔ)上,在拼接的特征圖上添加由全局池化層以及Sigmoid激活函數(shù)組成的注意力機(jī)制的網(wǎng)絡(luò)。隨著迭代步數(shù)的增加,模型Dice系數(shù)的變化如圖5所示。最終實驗結(jié)果如表2所示,實驗結(jié)果表示SERes?Unet在Dice系數(shù)上達(dá)到了最佳。
圖5 原始模型與改進(jìn)模型的Dice系數(shù)Fig.5 Dice coefficient of the original and im?proved models
表2 原始模型與改進(jìn)優(yōu)化模型的效果對比Table 2 Performance comparison between the original and improved models
預(yù)測結(jié)果如圖6所示,圖6(a)為輸入的原始圖像,將原始圖像切割成256×256的圖像加載到模型中進(jìn)行推理,再將得到的結(jié)果拼接合成原始圖像的預(yù)測圖像。其中圖6(b)表示U?Net網(wǎng)絡(luò)的預(yù)測結(jié)果,圖6(c)表示Res?Unet網(wǎng)絡(luò)的預(yù)測結(jié)果,圖6(d)表示SERes?Unet的預(yù)測結(jié)果。從預(yù)測結(jié)果圖像上看,相較于Res?Unet以及SERes?Unet,U?Net網(wǎng)絡(luò) 的識別精度較低,存在更多背景的識別錯誤,對于較小的絕緣子的識別,邊緣的完整性較差。SERes?Unet相較于Res?Unet,識別精度進(jìn)一步提升了。從指標(biāo)上也可以得出,SERes?Unet的精度相較于Res?Unet的精度提升了0.013 7,因此本文使用SERes?Unet進(jìn)行絕緣子掩模的提取。
圖6 原始模型與改進(jìn)模型預(yù)測結(jié)果對比Fig.6 Comparison of prediction results between original and improved models
對于較小的、顏色與背景接近的絕緣子,相比U?Net網(wǎng)絡(luò)的預(yù)測結(jié)果,改進(jìn)后的模型對于絕緣子的識別更加準(zhǔn)確,掩模的邊緣更加完整,圖7顯示了原始模型與改進(jìn)模型預(yù)測結(jié)果的細(xì)節(jié)對比。
圖7 原始模型與改進(jìn)模型預(yù)測結(jié)果的細(xì)節(jié)對比Fig.7 Detail comparison of the prediction results between original and improved models
3.2.1 模型訓(xùn)練
在目標(biāo)檢測部分,實驗中使用無人機(jī)拍攝的圖像作為原始數(shù)據(jù),由于原始數(shù)據(jù)的分辨率較大,直接輸入模型中存在大量細(xì)節(jié)丟失的問題,因此在實驗中首先對原始數(shù)據(jù)集中的爆破絕緣子的邊界框(Bounding box)的坐標(biāo)信息進(jìn)行提取,通過設(shè)置爆破絕緣子區(qū)域和切割邊界之間的間隔,只保存邊界框與切割邊界的距離大于該間隔的圖像,否則丟棄。使用該方法對數(shù)據(jù)進(jìn)行清洗。
通過對原始數(shù)據(jù)的切割,確保了數(shù)據(jù)集中的圖像均包含爆破絕緣子,且有效降低了圖像的分辨率,更有利于模型的訓(xùn)練。
模型使用隨機(jī)梯度下降算法(Stochastic gradient descent,SGD)算法作為優(yōu)化算法,初始學(xué)習(xí)率設(shè)置為1e-2,訓(xùn)練的批量大?。˙atch_size)設(shè)置為32。使用自適應(yīng)錨定框自動學(xué)習(xí)錨定框的尺寸,共訓(xùn)練400個Epochs。
3.2.2 實驗結(jié)果與分析
本文將YOLOv5和改進(jìn)的YOLOv5以及目前最先進(jìn)的一階段算法之一EfficientDet進(jìn)行比較。實驗結(jié)果如表3所示,結(jié)果表明,針對爆破絕緣子的定位問題,YOLOv5相對于EfficientDet召回率以及精確率更高。引入注意力機(jī)制優(yōu)化后的YOLOv5算法提升了爆破絕緣子的定位精確率。通過實驗驗證,優(yōu)化后的模型降低了爆破絕緣子的誤識率,優(yōu)化YOLOv5訓(xùn)練曲線如圖8所示。
圖8 優(yōu)化YOLOv5訓(xùn)練曲線圖Fig.8 Improved YOLOv5 training curves
表3 目標(biāo)檢測模型與改進(jìn)模型的效果對比Table 3 Performance comparison between target detection model and improved model
實驗通過采集高分辨率的高空絕緣子圖像,采用裁剪、增強(qiáng)的方式對原始數(shù)據(jù)集進(jìn)行擴(kuò)充,同時提出一種改進(jìn)的U?Net模型——SERes?Unet,并通過實驗與原始U?Net等模型進(jìn)行對比,結(jié)果表明引入注意力機(jī)制和殘差結(jié)構(gòu)能有效提高對絕緣子的分割精度;同時針對爆破絕緣子定位問題,本文也利用目前先進(jìn)的一階段檢測算法YOLOv5與EfficientDet進(jìn)行 對比,并在YOLOv5中引入注意力機(jī)制,提升了模型的精確率。經(jīng)實驗驗證,YOLOv5算法能夠以較快檢測速度和較高檢測精度完成對絕緣子缺陷的定位,可大大減少高強(qiáng)度的人工作業(yè),對于輸電線路的絕緣子定期巡檢任務(wù)有一定參考價值。
無論是圖像切割網(wǎng)絡(luò)還是目標(biāo)檢測網(wǎng)絡(luò),大量的訓(xùn)練數(shù)據(jù)不可或缺。實驗中雖已經(jīng)采用了多種數(shù)據(jù)預(yù)處理的方法來對數(shù)據(jù)進(jìn)行擴(kuò)充,但由于原始數(shù)據(jù)場景較少,因此即便經(jīng)過數(shù)據(jù)增強(qiáng),仍具有一定的局限性。為進(jìn)一步提升此方法的魯棒性和實用性,未來的研究計劃將會拓寬途徑去收集更多的數(shù)據(jù)樣本,或者通過生成對抗網(wǎng)絡(luò)等智能算法去生成數(shù)據(jù),使技術(shù)可以達(dá)到真正用于現(xiàn)實場景的標(biāo)準(zhǔn)。