閭海慶,雷遠華,王靜,邢學敏,楊靜
(1.中國能源建設集團湖南省電力設計院有限公司,湖南 長沙 410007;2.湖南省第三測繪院,湖南 長沙 410004;3.長沙理工大學交通運輸工程學院,湖南 長沙 410114;4.中國水利水電第八工程局有限公司,湖南長沙 410004)
絕緣子是輸電線路中最常見核心部件,具有絕緣和支撐輸電線路的作用,因此絕緣子是否正常工作直接影響電網(wǎng)運行狀態(tài)。由于絕緣子長期暴露室外工作,極易掉串和破損,為了更好檢測絕緣子缺陷,須提前識別絕緣子位置。常見電網(wǎng)輸電線路巡檢的主要方式有人工巡檢、直升機巡檢和無人機巡檢,直升機巡檢成本和難度較高,難以普及;輸電線路環(huán)境復雜,致使人工巡檢的視野盲區(qū)較多,巡檢效率和安全性較低;無人機體積小、成本低和操作簡單,被廣泛應用到電力巡線中。
識別絕緣子方法主要可分成兩類:絕緣子形態(tài)或顏色特征定位和深度學習回歸方法定位。仲莉恩等人[1]提出計算電力線圖像邊緣方向矢量,利用模板匹配的方式得到絕緣子準確位置;黃宵寧[2]等人提出根據(jù)絕緣子顏色信息,利用遺傳算法的最大熵閾值方法分割定位絕緣子;程海燕[3]等人利用遺傳算法分割絕緣子圖像構(gòu)建正負樣本庫,然后提取樣本不變矩訓練增強學習分類器判斷定位絕緣子;商俊平等人[4]利用最大類方法分割絕緣子,然后提取絕緣子不變矩特征,最后借助增強學習分類器定位絕緣子位置;陳文浩等人[5]對RGB絕緣子圖像轉(zhuǎn)化為LAB空間圖像,利用形態(tài)學算法粗略分割絕緣子。上述傳統(tǒng)方法檢測絕緣子速度較快,但可遷移性較差,不同的場景下需要設計不同檢測閾值,難以廣泛應用在復雜多變的輸電線路絕緣子檢測場景。
為了提高絕緣子識別的準確率和魯棒性,侯春萍等人[6]提出借助Faster-RCNN算法(Faster Region-based Convolutional Neural Network)[7]識別絕緣子,對Faster-RCNN模型的分類器和檢測器分別訓練,級聯(lián)組成完整網(wǎng)絡識別絕緣子;蔣姍等人[8]針對絕緣子尺寸變化較大,對Faster-RCNN模型添加特征金字塔結(jié)構(gòu),并借助軟非極大值抑制算法(Soft Non-Maximum Suppression,Soft NMS)[9]規(guī)避不同目標檢測框因重疊而被誤刪的情況,絕緣子檢測準確率相較原Faster-RCNN進一步提高;周自強等人[10]采用多尺度特征融合方法改進傳統(tǒng)Faster-RCNN方法,實現(xiàn)絕緣子小目標的精準識別;針對輸電線路中絕緣子部分遮擋、尺寸不一、檢測難度大、精確度低的問題,易繼禹等人[11]對Faster-RCNN模型運用多尺寸訓練,并引入防止遮擋物體難檢測的在線困難樣本對手生成策略。上述基于Faster-RCNN模型的絕緣子識別方法,雖可有效識別尺寸不同和遮擋的絕緣子,但模型訓練收斂速度較差,檢測多尺度絕緣子的方法過于簡單,目標回歸框穩(wěn)定性較差,嚴重影響絕緣子檢測的穩(wěn)定性和定位精度。
針對Faster-RCNN模型絕緣子識別存在的問題,提出一種基于自適應空間特征融合金字塔網(wǎng)絡(Adaptively Spatial Feature Fusion,ASFF)[12]的改進Libra-RCNN絕緣子檢測模型[13]。首先,使用濾波器響應歸一化層 (Filter Response Normalization,F(xiàn)RN)[14]替代原Libra-RCNN模型中歸一化層(Batch Norm,BN)[15],防止模型陷入局部梯度最優(yōu)區(qū)域;然后借助泛化交并比方法(Generalized Intersection over Union,GIoU)[16]計算Libra-RCNN模型交并比,更高效表達候選框與真實框的關系;最后Libra-RCNN金字塔中引入ASFF網(wǎng)絡,增加絕緣子檢測模型的尺度不變性。
在深度卷積層中,若每層數(shù)據(jù)分布不同,將會致使訓練模型收斂速度下降,很容易陷入局部梯度最優(yōu)解,為了使激活函數(shù)具有一個穩(wěn)定均勻數(shù)據(jù)輸入,多會在卷積層中添加歸一化層。比較常用的歸一化 層 有 BN 方 法[15]和 GN 方 法 (Group Normalization)[17],BN歸一化層嚴重依賴訓練Batch大小;GN歸一化層雖不依賴Batch大小,但當Batch過大時,性能較差。為了更好得到穩(wěn)定分布的輸入特征,谷歌提出FRN歸一化方法,F(xiàn)RN層不僅消除了模型訓練過程中對Batch大小的依賴,而且Batch較大時性能也優(yōu)于BN層。
FRN歸一化方法主要分為兩個部分:FRN層和閾值線性單元(Threshold Linear Unit,TLU)。若輸入特征圖 [B,W,H,C],分別表示Batch大小、特征圖長寬和通道數(shù),F(xiàn)RN層只對特征圖W、H維度上歸一化處理,先求訓練樣本每層特征的均方,可用式(1)表示為:
式中,xi為每個樣本的單層卷積特征,N=W×H。正則化x為:
式中,為防止分母為0,故ε值極小。則特征層歸一化為:
式中,γ、β為可學習參數(shù)。
FRN層缺少去均值操作,可能會致使歸一化結(jié)果以任意方式偏移零值,若FRN層后直接添加ReLU激活層,會產(chǎn)生很多零值,嚴重影響模型訓練和性能。為了解決零值偏移問題,F(xiàn)RN歸一化方法提出具有閾值的ReLU激活層,即TLU激活函數(shù):
常用的特征金字塔在不同尺度特征之間具有不一致性,在檢測對象時采用啟發(fā)式引導的特征選擇:大目標通常與較高特征圖相關聯(lián),而小目標通常與較低特征圖相關聯(lián)。若是待檢測目標與某一特定層級特征圖相關聯(lián),其他層級特征圖位置將會被看成背景。因此,若是待檢測圖像上同時含有大小不同目標時,不同層級中的特征將存在沖突。
為了解決特征金字塔內(nèi)部不一致問題,ASFF網(wǎng)絡能夠直接學習如何在其他層對特征空間濾波,從而保留有用的信息進行組合,主要分為兩步:恒等縮放和自適應融合。
第一步,統(tǒng)一特征圖尺寸和通道數(shù)。對卷積層大小和通道數(shù)統(tǒng)一處理,使得相鄰層大小和通道數(shù)相同。
第二步,自適應融合。統(tǒng)一卷積層后,可獲得三個相同的特征塊xl←1、xl←2、xl←3,對三個特征塊加權融合,對加權系數(shù)可通過網(wǎng)絡自適應學習得到:
式中,αl+βl+γl=1,αl、βl、γl∈[0,1],且滿足約束Softmax函數(shù):
常用交并比(Intersection over Union,IoU)計算候選框和真實邊界框的交集與并集的比值,可有效表明候選框和真實框的距離,但若是候選框與真實邊界框不相交時,則無法表達兩者的距離。為了更好表達候選框和真實框的距離,GIoU方法添加真實框和候選框的最小外接框C,計算公式中I表示IoU的值,G表示GIoU的值,如下所示:
式中,A為候選框;B為真實框;C為候選框與真實框的最小外接框。
目標檢測主要分為兩大類:一階和二階結(jié)構(gòu),這兩種檢測框架遵循同一種訓練范式,即對區(qū)域進行采樣,從中提取特征,然后在一個標準的多任務目標函數(shù)的指導下,共同進行分類和細化位置任務。基于該種訓練范式,目標檢測訓練的效果主要取決三個關鍵方面:1)選取的區(qū)域是否具有代表性;2)提取的特征是否被充分利用;3)目標損失函數(shù)是否是最優(yōu)的。
原Libra-RCNN算法對上述三個關鍵問題重點優(yōu)化,但對選取區(qū)域位置的描述和多尺度特征提取仍有很大不足,故提出一種基于ASFF金字塔網(wǎng)絡結(jié)構(gòu)Libra-RCNN絕緣子檢測算法。
由于樣本分布是不均勻的,生成候選框時隨機采樣會造成背景框遠大于框中真實框,檢測圖像中目標物體占據(jù)的區(qū)域是很小部分,背景占了絕大部分區(qū)域,導致大部分訓練樣本的IoU很小,為了解決該問題Libra-RCNN提出了交并比均衡采樣。
若是真實框和候選框不相交時,IoU交并比不能表達真實框和候選框的關系,故交并比均衡采樣方法對不相交的候選框和真實框效果較差;為了更好的平衡樣本框,提出泛化交并比均衡采樣。
隨機采樣N個困難負樣本,有M個候選框,選中的概率就是:
如果一共還是要采樣N個,通過GIoU值劃分為K個區(qū)間,每個區(qū)間中的候選采樣數(shù)為Mk,則泛化交并比均衡采樣的采樣公式即為:
通過在GIoU上均勻采樣,把困難負樣本在GIoU上均勻分布。
為了將不同特征層的信息融合,得到高分辨率和高語義信息的表達,F(xiàn)PN等網(wǎng)絡結(jié)構(gòu)提出了橫向連接,與以往使用橫向連接來整合多層次特征的方法不同,Libra-RCNN算法核心思想是利用深度整合的均衡語義特征來強化多層次特征。
假設Cl表示第l層特征,lmin和lmax分別表示最底層和最高層的特征。C2有最高的分辨率,為了整合多層次的功能,同時保持它們的語義層次。首先將不同層的特征{C2,C3,C4,C5}尺寸統(tǒng)一,改變尺度到相同尺寸。特征圖完成尺寸統(tǒng)一后,可利用下式得到平衡后的語義特征:
得到特征圖C,先改變尺度大小,然后通過反向操作增強原始每層的特征,每個分辨率特征從其他分辨率特征中同等的獲得信息。為了更好平衡語義特征,使特征層具有更好的分辨力,可對網(wǎng)絡引入注意力機制網(wǎng)路[13]結(jié)構(gòu)。
Libra-RCNN算法對不同尺度特征層融合和分離,得到更多有效的語義特征,但若待檢測圖像上同時存在大小不同檢測目標時,不同層級特征將存在沖突。ASFF網(wǎng)絡可直接對其他特征層空間濾波,保留有用的特征信息進行組合;為了防止不同層級特征出現(xiàn)沖突,在Libra-RCNN特征層中引入ASFF層。雖然注意力機制網(wǎng)路可很好地平衡語義信息,但結(jié)構(gòu)較為復雜,故借助擠壓和激發(fā)網(wǎng)絡[18]替代原注意力機制網(wǎng)路,具體網(wǎng)絡結(jié)構(gòu)如圖1所示。
圖1 改進Libra-RCNN網(wǎng)絡結(jié)構(gòu)
在原Faster-RCNN算法借助多任務損失函數(shù)計算目標分類和定位回歸,可寫成:
式中,Lcls和Lloc分別為分類和定位損失函數(shù),p為預測值,u為真實值,tu為類別u的回歸定位,v為回歸目標,λ是多任務調(diào)整權重參數(shù)。
原Faster-RCNN直接對分類損失定位損失函數(shù)相加,若是分類效果較好會得到較高分類損失值,會降低了回歸損失的重要性,可通過權值λ平衡定位和回歸函數(shù)的重要性。由于目標回歸定位沒有邊界限制,直接增加回歸定位損失函數(shù)權值λ,會造成模型對困難樣本更加敏感。困難樣本會造成很大的梯度阻礙訓練,而簡單樣本對模型訓練的貢獻度較低。為了平衡定位損失函數(shù)和分類損失函數(shù),Libra-RCNN算法提出平衡L1損失函數(shù),可表示為:
式(12)的梯度計算遵從:
基于式(13)可得到:
式中,α控制簡單樣本梯度的提升,很小的α會提升簡單樣本梯度,同時不會影響困難樣本梯度值。γ控制調(diào)整回歸誤差上界,可促進不同任務更加平衡。
對梯度公式積分可得:
為了保證函數(shù)連續(xù)性,當x=1時需要滿足:αln(b+1)=γ。
借助insulators_datasets絕緣子數(shù)據(jù)集訓練目標檢測網(wǎng)絡,該數(shù)據(jù)集共有6 840張無人機航拍采集絕緣子圖像,圖像尺寸為1 152×864,該數(shù)據(jù)集以對絕緣子圖像進行旋轉(zhuǎn)、添加噪聲、Cutout、亮度變化等操作。選擇5 840張絕緣子圖像作為訓練集,1 000張絕緣子圖像作為測試集,數(shù)據(jù)集按照VOC2012數(shù)據(jù)集格式標注。訓練批次大小為4,權值衰減系數(shù)設為0.000 5,初始學習率為0.001。
3.2.1候選區(qū)域比例對檢測的影響
原Libra-RCNN算法的候選區(qū)域比例為{1∶1,2∶1,1∶2},但絕緣子形狀均為長方形,{1∶1,2∶1,1∶2}的候選區(qū)域比例顯然不符合實際需求。為了得到更好的絕緣子候選區(qū)域比例值,設計多種候選區(qū)域比例訓練模型,得到平均準確率(Average Precision,AP),見表1。
表1 不同比例候選區(qū)域AP值 %
由表1知,候選區(qū)域比例在{1∶2,1∶3,1∶4,1∶1,4∶1,3∶1,2∶1}時,得到的AP值最大,故改進Libra-RCNN算法的候選區(qū)域比例為{1∶2,1∶3,1∶4,1∶1,4∶1,3∶1,2∶1}。
3.2.2改進Libra-RCNN算法實驗結(jié)果
選擇1 000張絕緣子圖像作為測試集,借助Faster-RCNN、Libra-RCNN與所提算法對比實驗,1 000張測試集圖像共有絕緣子3 318個,分別統(tǒng)計絕緣子檢測正確個數(shù)、遺漏個數(shù)和錯誤識別個數(shù),統(tǒng)計結(jié)果見表2。表2中,F(xiàn)aster-RCNN算法正確檢測3 129個絕緣子,Libra-RCNN算法正確檢測絕緣子數(shù)量為3 217個,所提算法正確檢測3 235個絕緣子;Faster-RCNN算法遺漏絕緣子數(shù)量最多,本文算法數(shù)量最少,僅遺漏83個;所提改進Libra-RCNN算法錯誤檢測絕緣子數(shù)量僅為107個,遠低于Libra-RCNN算法錯誤檢測191個。
表2 統(tǒng)計結(jié)果
對Libra-RCNN算法引入FRN歸一化層、GIoU交并比和ASFF金字塔網(wǎng)絡,為了更好證明所提方法的有效性,單獨引入FRN歸一化層、GIoU交并比和ASFF金字塔網(wǎng)絡測試對Libra-RCNN模型的影響。用平均準確率(Average Precision,AP)和平均召回率(Average Recall,AR)評價絕緣子檢測算法的優(yōu)越性。表3為上述幾個模塊引入后,Libra-RCNN模型得到的AP值和AR值。
表3 模型改進后AP值和AR值 %
限于顯卡內(nèi)存大小,每個訓練批次大小為4,原Libra-RCNN算法借助BN層歸一化,BN層嚴重依賴Batch大小,Batch過小會致使模型收斂難度增加;FRN歸一化層不依賴Batch大小,可有效增加Libra-RCNN模型的穩(wěn)定性。
由表3知,Libra-RCNN模型添加FRN層后,AP值增加0.52%,AR值增加0.57%。IoU交并比對不相交候選框表達能力有限,GIoU交并比可更好表達候選框和真實框的距離,故引入GIoU交并比后Libra-RCNN算法的AP值增加3.44%,AR值增加1.88%。ASFF網(wǎng)絡可解決特征金字塔內(nèi)部不一致問題,增加模型的多尺度檢測能力,故Libra-RCNN模型引入ASFF網(wǎng)絡后,AP值增加0.96%,AR值增加1.23%。FRN層、GIoU交并比和ASFF網(wǎng)絡皆引入Libra-RCNN模型,極大提高了模型的魯棒性,相較原Libra-RCNN模型AP值提高2.23%,AR值提高2.61%。
借助Faster-RCNN、YOLO-V2[19]、YOLOV3[20]和Libra-RCNN算法與本文所提改進Libra-RCNN算法對比實驗,對模型AP和AR值統(tǒng)計結(jié)果見表4。由表4可知,YOLO-V2平均準確率和召回率值均較低,所提改進Libra-RCNN算法平均準確率和召回率值均為最高,可證明所用方法穩(wěn)定性最好。
表4 各種模型AP值和AR值 %
借助改進Libra-RCNN算法在測試集識別絕緣子效果,如圖2所示,可精準、高效地定位絕緣子。
圖2 絕緣子識別效果
針對常用的絕緣子檢測模型精度較低、尺度不變性較差等問題,提出一種基于ASFF金字塔網(wǎng)絡的改進Libra-RCNN算法。對Libra-RCNN模型中BN層替換成FRN歸一化層,削弱歸一化層對訓練批次大小的依賴;借助GIoU方法計算Libra-RCNN模型交并比,提高了絕緣子定位精度;為了增加Libra-RCNN模型的尺度不變性,在Libra-RCNN模型金字塔中引入ASFF網(wǎng)絡。經(jīng)實驗對比,本文方法相較Libra-RCNN模型具有更好的定位精度和識別準確度,能夠為進一步缺陷檢測提供詳細的位置信息。