周 宸 高 偉 郭謀發(fā)
(福州大學(xué)電氣工程與自動化學(xué)院,福州 350108)
隨著智能電網(wǎng)的發(fā)展,電力系統(tǒng)自動化水平日漸提高,人們對電力系統(tǒng)日常運(yùn)行的安全及穩(wěn)定性提出了更高的要求。絕緣子作為電力系統(tǒng)的重要元件,應(yīng)用廣泛且數(shù)量龐大。絕緣子的工作環(huán)境通常位于層巒疊嶂的山路之間,工作環(huán)境惡劣,導(dǎo)致絕緣子故障頻發(fā),嚴(yán)重影響電力系統(tǒng)的安全及穩(wěn)定[1]。
絕緣子缺陷辨識一直是國內(nèi)外研究的熱點(diǎn),傳統(tǒng)的檢測方式為人工觀測法[2]。該方法雖然精確度高,但在觀測上存在工作量大、效率低等缺陷。此外,還有借助外加設(shè)備測量的方法,如紅外圖譜[3]和巡檢機(jī)器人[4]等。借助外界設(shè)備可以有效減小檢測過程中的安全隱患,但外加設(shè)備一般較為昂貴。由于無人機(jī)成本低、易操控,且具備數(shù)據(jù)采集簡單、運(yùn)行風(fēng)險(xiǎn)較低等特點(diǎn),已在電力巡檢工作中逐漸普及[5]。盡管無人機(jī)巡檢可獲得大量現(xiàn)場的圖像信息,但采集到的圖像仍是由人工進(jìn)行處理,海量的圖像數(shù)據(jù)帶來了巨大的工作量;同時(shí),由于工作人員自身專業(yè)水平不同、視覺疲勞等原因,檢測過程中容易導(dǎo)致缺陷遺漏。
通過計(jì)算機(jī)自動辨識圖像成為研究熱門,常用的方法主要可以分為基于機(jī)器視覺與基于機(jī)器學(xué)習(xí)的方法?;跈C(jī)器視覺的缺陷檢測方法首先在原圖中將待測目標(biāo)與背景進(jìn)行分割,分割后再根據(jù)人為設(shè)定的特征判斷絕緣子是否存在缺陷[6]?;跈C(jī)器視覺的缺陷檢測方法實(shí)現(xiàn)較為簡單,不需要復(fù)雜的訓(xùn)練過程,在特定的場景有較高的辨識準(zhǔn)確率,但在使用過程中存在諸多局限性,如算法的準(zhǔn)確率依賴分割算法的分割結(jié)果。由于絕緣子的工作環(huán)境復(fù)雜、現(xiàn)場條件惡劣,這會嚴(yán)重影響分割結(jié)果的準(zhǔn)確性,且人工選定的缺陷判別特征缺乏魯棒性,當(dāng)拍攝條件發(fā)生改變,都有可能導(dǎo)致算法發(fā)生誤判。在圖像辨識領(lǐng)域,機(jī)器學(xué)習(xí)算法的應(yīng)用十分廣泛,通過機(jī)器學(xué)習(xí)訓(xùn)練的模型對無人機(jī)航拍的絕緣子圖像進(jìn)行檢測及缺陷辨識已逐漸成為電力系統(tǒng)絕緣子缺陷辨識方法研究的熱門方向[7]。機(jī)器學(xué)習(xí)算法訓(xùn)練出的模型能自適應(yīng)地從海量的航拍圖像中挖掘絕緣子的表層特征,對噪聲干擾有很強(qiáng)的魯棒性。模型的目標(biāo)是既能準(zhǔn)確地辨識出缺陷又能滿足實(shí)時(shí)檢測的要求,但事實(shí)上,檢測速度與準(zhǔn)確率很難同時(shí)提升。針對這個(gè)問題,本文提出基于改進(jìn)YOLOv4的絕緣子缺陷檢測模型,模型通過在訓(xùn)練過程中采用多階段遷移學(xué)習(xí)及檢測過程優(yōu)化輸入圖像能有效提高網(wǎng)絡(luò)檢測準(zhǔn)確率。
YOLO(you only look once)模型是一種機(jī)器學(xué)習(xí)模型,通過單獨(dú)的端到端網(wǎng)絡(luò),完成從原始圖像的輸入直接到物體位置和類別的輸出。YOLOv4模型[8]由Alexey Bochkovskiy等于2020年提出,算法處理速度快,精確度較高,常用于多目標(biāo)實(shí)時(shí)檢測系統(tǒng)。文獻(xiàn)[9]采用YOLOv4網(wǎng)絡(luò)對視頻數(shù)據(jù)集中的小汽車、卡車、自行車與行人進(jìn)行多目標(biāo)檢測,算法檢測速度能跟上視頻播放速度且準(zhǔn)確率高達(dá)99%。YOLOv4模型主要由主干特征提取網(wǎng)絡(luò)、外加模塊和特征處理層構(gòu)成,檢測流程如圖1所示,具體如下所述。
圖1 YOLOv4檢測流程
主干特征提取網(wǎng)絡(luò)的作用是提取目標(biāo)對象的特征。YOLOv4的主干特征提取網(wǎng)絡(luò)為CSPDarkNet53,其中DarkNet53中卷積層的激活函數(shù)由LeakyReLU修改成了Mish,并將其殘差塊與CSPNet網(wǎng)絡(luò)[10]結(jié)構(gòu)結(jié)合,構(gòu)成CSPResNet結(jié)構(gòu)。以一個(gè)輸入維度為(416, 416, 3)的圖像為例,各模塊輸出維度如圖1所示。圖像每次經(jīng)過殘差塊處理后,通道數(shù)變?yōu)樵瓉淼膬杀?,圖像維度變?yōu)樵瓐D的1/2。為了加強(qiáng)網(wǎng)絡(luò)對特征的提取能力,避免目標(biāo)圖像經(jīng)過多次卷積后丟失特征,提取網(wǎng)絡(luò)最后三層特征用于后續(xù)處理。維度分別為(13, 13, 1 024)、(26, 26, 512)和(52, 52,256)。
外加模塊對主干特征提取網(wǎng)絡(luò)提取的特征進(jìn)行額外的處理,輸出更好的特征用于分類或者回歸任務(wù)。YOLOv4主要的外加模塊為SPPNet[11]與PANet[12]。對于前述例子,SPPNet通過四個(gè)大小不同的池化核對輸入的圖像進(jìn)行最大池化,并將結(jié)果堆疊。PANet對低層特征進(jìn)行上采樣,特征圖的維度翻倍,與上一層同維度特征進(jìn)行堆疊。對高層特征下采樣,特征圖的維度減半,與下一層同維度特征進(jìn)行堆疊,實(shí)現(xiàn)特征融合。經(jīng)過外加模塊后,輸出特征的維度大小分別為(13, 13, 75)、(26, 26, 75)、(52, 52, 75)。
特征處理層主要的作用為對處理后的特征進(jìn)行解碼,得出預(yù)測結(jié)果。經(jīng)過YOLOv4網(wǎng)絡(luò)處理后,輸出3個(gè)n×n×x維的張量進(jìn)行預(yù)測。這里的x是由3×(1+4+y)計(jì)算得到。其中,3代表3個(gè)不同尺度的先驗(yàn)框;1代表先驗(yàn)框中預(yù)測物體的置信度;4代表先驗(yàn)框的調(diào)整策略,包括中心點(diǎn)x、y坐標(biāo)調(diào)整策略和長寬調(diào)整策略,調(diào)整先驗(yàn)框中心點(diǎn)的位置及長寬;y代表數(shù)據(jù)集的類別個(gè)數(shù)。以輸出張量維度為(13, 13,x)為例,首先將原圖分為13×13的網(wǎng)格,每個(gè)網(wǎng)格生成3個(gè)先驗(yàn)框,分別預(yù)測每個(gè)框?qū)儆谀愁惖闹眯哦龋又鴮⑾闰?yàn)框的調(diào)整策略定義為長寬調(diào)整與中心點(diǎn)坐標(biāo)的調(diào)整,調(diào)整后的輸出結(jié)果即為預(yù)測框。
本文采用多階段遷移學(xué)習(xí)[13]作為網(wǎng)絡(luò)訓(xùn)練的迭代策略。遷移學(xué)習(xí)是將已經(jīng)訓(xùn)練完成的模型用于另一個(gè)領(lǐng)域模型繼續(xù)訓(xùn)練的方法。訓(xùn)練過程能發(fā)掘兩個(gè)領(lǐng)域數(shù)據(jù)之間的內(nèi)在聯(lián)系,減少訓(xùn)練時(shí)間,提高模型辨識準(zhǔn)確率。遷移學(xué)習(xí)示意圖如圖2所示。
圖2 遷移學(xué)習(xí)示意圖
首先,加載一個(gè)在ImageNet上訓(xùn)練完成、用于目標(biāo)檢測任務(wù)的YOLOv4模型作為預(yù)訓(xùn)練模型。其次,通過收集的絕緣子數(shù)據(jù)對預(yù)訓(xùn)練模型進(jìn)行訓(xùn)練,根據(jù)絕緣子數(shù)據(jù)集大小選擇凍結(jié)層數(shù)。訓(xùn)練集越小,需要訓(xùn)練的參數(shù)就越少,凍結(jié)層數(shù)越多。由于凍結(jié)的部分具備良好的特征提取能力,因此保留凍結(jié)層的權(quán)重作為訓(xùn)練層額外的特征提取器,為訓(xùn)練層輸入更好的特征。最后,解凍所有層一起訓(xùn)練。此時(shí),訓(xùn)練過程只需要較小的學(xué)習(xí)率對整個(gè)模型進(jìn)行微調(diào)。
大部分目標(biāo)檢測算法要求輸入圖片的長寬一樣,本文輸入圖像的大小為(416, 416)。現(xiàn)場采集的絕緣子圖像大小不一,在輸入算法中進(jìn)行處理時(shí)需要先改變圖像的尺寸。直接修改圖像大小容易導(dǎo)致輸入圖像失真,用失真的圖像進(jìn)行檢測或者訓(xùn)練,會導(dǎo)致檢測結(jié)果不準(zhǔn)確。為解決該問題,本文對需要修改尺寸的圖像加灰條處理,如圖3所示。如需要將原圖壓縮為(416, 416),具體做法為:首先,對輸入圖像按原圖的比例進(jìn)行壓縮,當(dāng)其中一邊壓縮為416、另外一邊的值小于416時(shí)停止壓縮;然后,對長度小于416的邊兩側(cè)等比例填充灰條,填充至416后停止填充;最后,將填充后的圖像作為輸入圖像送入網(wǎng)絡(luò)處理。
原始數(shù)據(jù)集由4 000張無人機(jī)采集的高清絕緣子圖像組成,數(shù)據(jù)集中大部分為玻璃絕緣子,也包括一小部分橡膠、陶瓷絕緣子。從結(jié)構(gòu)上包含耐張型絕緣子、單絕緣子串、雙絕緣子串和懸掛絕緣子串。圖4為無人機(jī)采集的絕緣子現(xiàn)場圖像,圖4(a)為正常絕緣子圖像,圖4(b)為缺陷絕緣子圖像。訓(xùn)練集由3 600張圖片構(gòu)成,包括正常絕緣子圖像1 700張,缺陷絕緣子圖像1 900張。缺陷圖像包括60張現(xiàn)場缺陷圖像和1 840張通過對缺陷數(shù)據(jù)進(jìn)行旋轉(zhuǎn)、翻轉(zhuǎn)、縮放生成的缺陷圖像,生成缺陷圖像如圖5所示。測試集由原始數(shù)據(jù)集中剩余的400張圖像構(gòu)成。訓(xùn)練集中所有的標(biāo)簽采用VOC2007格式。
圖3 圖像加灰條
圖4 無人機(jī)采集的絕緣子現(xiàn)場圖像
圖5 生成缺陷圖像
算法的評價(jià)指標(biāo)包括精確度(precision, Pr)、召回率(recall, Re)、每類目標(biāo)的平均精度(average precision, AP)、平均精度均值(mean average precision, mAP)。其中,精確度與召回率的計(jì)算公式分別為
式中:TP為正樣本被正確識別為正樣本的樣本數(shù);FP為負(fù)樣本被錯(cuò)誤識別為正樣本的樣本數(shù);FN為正樣本被錯(cuò)誤識別為負(fù)樣本的樣本數(shù)。精確度用于衡量算法找出的正樣本的準(zhǔn)確性;召回率用于衡量算法找出數(shù)據(jù)集中樣本的能力。
當(dāng)預(yù)設(shè)交并比(intersection over union, IOU)值不同時(shí),各類目標(biāo)的精確度與召回率也會發(fā)生改變。當(dāng)預(yù)設(shè)不同的IOU值時(shí),精確度與召回率組成的曲線稱為P-R(precision-reacll)曲線。AP定義為P-R曲線與坐標(biāo)軸所圍成的面積,AP值作為目標(biāo)檢測算法的評價(jià)指標(biāo),同時(shí)衡量了算法在檢測某類目標(biāo)時(shí)的精確度與召回率,AP值越大,算法對某類目標(biāo)的檢測效果越好。當(dāng)求出所有類目標(biāo)的AP值后,mAP的公式為
式中:n為分類的總數(shù);APi為第i類的AP值。mAP值越大,表明算法整體檢測效果越好。訓(xùn)練時(shí)的實(shí)驗(yàn)參數(shù)見表1。
表1 實(shí)驗(yàn)參數(shù)
為了提高絕緣子缺陷辨識準(zhǔn)確率,本文提出了改進(jìn)YOLOv4模型,通過一些方法改善網(wǎng)絡(luò)的整體性能,包括在訓(xùn)練過程采用多階段遷移學(xué)習(xí),檢測過程通過優(yōu)化輸出層結(jié)構(gòu)和圖像加灰條實(shí)現(xiàn)對缺陷快速準(zhǔn)確的辨識。本節(jié)評價(jià)了各種改進(jìn)措施對網(wǎng)絡(luò)整體性能的影響,不同措施對算法性能的提升見表2,其中,“√”表示施加了對應(yīng)的措施。由表2可知,單獨(dú)使用YOLOv4模型進(jìn)行檢測,算法的mAP值達(dá)到77.13%。對圖像加灰條能夠防止圖像失真,相比于改進(jìn)前,算法的mAP值提升了4.5%。倘若訓(xùn)練過程采用遷移學(xué)習(xí)作訓(xùn)練策略,由于多階段遷移學(xué)習(xí)通過載入預(yù)訓(xùn)練權(quán)重進(jìn)行訓(xùn)練,訓(xùn)練過程只需對模型未凍結(jié)部分進(jìn)行微調(diào)。從表2可以看出,凍結(jié)不同層數(shù)對訓(xùn)練模型性能的提升不同。當(dāng)凍結(jié)層數(shù)為25層時(shí),訓(xùn)練的參數(shù)量最合適,對模型的整體性能提升最大,算法mAP值提升了7.8%。改進(jìn)后的算法對復(fù)雜背景下的目標(biāo)辨識準(zhǔn)確率有顯著提升。檢測結(jié)果對比如圖6所示,在氣象環(huán)境不佳、桿塔和絕緣子背景深度融合等不利條件下,未改進(jìn)的算法喪失了對玻璃絕緣子的檢測能力,而改進(jìn)后的算法卻能有效地辨識與背景相融合的玻璃絕緣子,置信度達(dá)到82%。
表2 不同措施對算法性能的提升
圖6 檢測結(jié)果對比
玻璃絕緣子串檢測結(jié)果如圖7所示,可以看出,所提方法能準(zhǔn)確檢測出圖像中缺陷所在的位置,對于經(jīng)過翻轉(zhuǎn)、旋轉(zhuǎn)、縮放等方式生成的圖像也有較好的辨識效果。
圖7 玻璃絕緣子串檢測結(jié)果
算法對不同類型和結(jié)構(gòu)的絕緣子檢測結(jié)果如圖8所示,由于檢測目標(biāo)的輪廓具有一致性并且將不同類型的絕緣子一起訓(xùn)練,故所提方法對不同類型和結(jié)構(gòu)的絕緣子均具有較高的辨識準(zhǔn)確度??紤]到實(shí)際中不同電壓等級的絕緣子具有一定的差異性,為了進(jìn)一步提高算法的泛化能力和辨識精度,后期可收集更多的不同類型和結(jié)構(gòu)的絕緣子樣本進(jìn)行訓(xùn)練,使得方法在絕緣子目標(biāo)檢測中具備通用性和實(shí)用性。
圖8 不同類型和結(jié)構(gòu)的絕緣子檢測結(jié)果
本文提出了基于YOLOv4的絕緣子缺陷識別方法。相比于現(xiàn)有方法,YOLOv4模型具有速度更快、精度更高的特點(diǎn)。針對檢測圖像中出現(xiàn)圖像修改尺寸后失真的問題,提出了對圖像加灰條處理的方法,同時(shí)在訓(xùn)練過程中采用了多階段遷移學(xué)習(xí)策略顯著提高了模型整體的性能。實(shí)驗(yàn)結(jié)果表明,所提方法的缺陷檢測mAP值達(dá)到89.54%,所提方法在實(shí)際應(yīng)用中可以滿足絕緣子缺陷檢測的準(zhǔn)確性要求。