翟永杰,李海森,吳童桐,苑 朝
(華北電力大學(xué)自動化系,河北 保定 071003)
我國電網(wǎng)規(guī)模龐大,高壓和超高壓輸電線路快速發(fā)展。架空輸電線路及桿塔附件長期暴露在戶外,存在自然破壞和老化等問題,嚴重影響著電網(wǎng)的安全運行。絕緣子是電網(wǎng)中用量龐大的零部件,出現(xiàn)故障的幾率較大,檢測絕緣子的狀態(tài)對保障電網(wǎng)安全運行十分必要,因此需要定期巡檢[1]。但輸電線路所經(jīng)區(qū)域復(fù)雜,利用傳統(tǒng)的人工巡檢方式,不僅工作量大、條件艱苦,而且效率較低。利用無人機搭載高清數(shù)碼相機對桿塔和線路進行巡視,并通過圖傳設(shè)備將視頻及圖像實時傳輸至地面站,具有高效、快速、可靠、成本低、不受地域影響等優(yōu)點,已成為輸電線路巡檢的新方向和研究熱點[2]。
目前國內(nèi)外識別絕緣子的方法可大致分為以下3種:
(1)基于輪廓提取。文獻[3]通過檢測圖像中的圓形輪廓來對應(yīng)絕緣子片的圓形結(jié)構(gòu);文獻[4]基于非下采樣輪廓波變換提取絕緣子輪廓,取得了一定成果;文獻[5]認為航拍圖像中絕緣子為橢圓形狀,通過橢圓擬合實現(xiàn)了絕緣子的定位。但航拍圖像背景復(fù)雜,并且拍攝角度和視距的多變性導(dǎo)致了絕緣子輪廓的不確定性,使得輪廓提取算法的準確度較低。
(2)基于顏色特征。文獻[6]依據(jù)玻璃絕緣子的顏色特征初步定位絕緣子,對于玻璃絕緣子的識別有較好效果;文獻[7]認為絕緣子偏綠,對應(yīng)HIS顏色空間的S分量,采用最大熵閾值分割定位絕緣子;文獻[8]采用分塊統(tǒng)計HIS空間中的H分量和S分量屬于泛綠的區(qū)域來進行絕緣子的粗定位;但以上方法均針對玻璃材質(zhì)的絕緣子,對于白色、紅褐色和黑色的瓷質(zhì)絕緣子難以實現(xiàn)定位。文獻[9]在飽和度分量S中對絕緣子進行閾值分割,但不能排除飽和度分量與絕緣子相近的其他目標(biāo)的干擾。
(3)基于紋理特征。文獻[10]利用灰度共生矩陣提取絕緣子的紋理特征;文獻[11]基于MPEG-7紋理特征對絕緣子進行定位,對于背景簡單且絕緣子紋理性較強的圖像檢測效果較為理想。但是基于紋理特征的方法計算量大,并且航拍圖像也可能因為存在紋理特征而成為與絕緣子相近的偽目標(biāo),因此該方法的應(yīng)用性不強。
由于航拍圖像的背景高度復(fù)雜化和多樣化,現(xiàn)有方法都是基于絕緣子的某單類特征進行檢測,其檢測的準確率很難達到輸電線路巡檢要求。本文引入RPN(區(qū)域候選網(wǎng)絡(luò))對航拍圖像中的絕緣子進行目標(biāo)檢測,但由于文獻[12-13]中的RPN針對的都是多類目標(biāo),而多類目標(biāo)和單類絕緣子目標(biāo)的寬高比以及占畫幅比等方面存在較大差異,所以為了適應(yīng)航拍圖像中絕緣子的檢測,需要對RPN進行改進。
針對航拍圖像中絕緣子的單類目標(biāo)檢測問題,通過改進RPN[12-13],并將其應(yīng)用于航拍圖像中絕緣子檢測。針對航拍圖像中絕緣子的特點,首先通過聚類分析得到最合適的錨點框初始值,從而實現(xiàn)RPN錨點框的初始化;然后,通過改進損失函數(shù),解決RPN在訓(xùn)練過程中正負樣本不均衡的問題,進而實現(xiàn)絕緣子的檢測。
改進后的絕緣子檢測流程如圖1所示,主要從兩方面對算法進行了改進:初始化錨點框;改進損失函數(shù)。具體步驟為:先經(jīng)過卷積神經(jīng)網(wǎng)絡(luò)對絕緣子圖片進行特征提取,然后將其輸入RPN中,經(jīng)過前景和后景的二分類以及候選錨點框的偏移量回歸,最終實現(xiàn)絕緣子的識別與定位。
圖1 絕緣子檢測流程
文獻[12-13]中的RPN針對的是多類目標(biāo),而多類目標(biāo)和單類絕緣子目標(biāo)的寬高比和占畫幅比方面存在較大差異,為了訓(xùn)練出適應(yīng)航拍圖像中絕緣子的檢測模型,需要對RPN的錨點框進行初始化,而初始化的依據(jù)就是訓(xùn)練集中絕緣子的標(biāo)注框信息,通過聚類統(tǒng)計分析出標(biāo)注框的尺度和寬高比,進而初始化RPN的錨點框。
為了解決正樣本數(shù)量太少(S正/S負?γ,其中γ為平衡因子)容易引起訓(xùn)練失衡的情況,在交叉熵損失函數(shù)[14]中加入了權(quán)重系數(shù),如公式(1),對于每張圖片而言,其中正負樣本的權(quán)重系數(shù)隨著 S正/S負變化而動態(tài)地調(diào)整:
根據(jù)上文中邊界框回歸的損失函數(shù)和前后景的損失函數(shù),可以定義改進后的RPN的優(yōu)化函數(shù),最終的損失函數(shù)仍然采用Faster RCNN中的損失函數(shù)[12], 如公式(2)所示:
式中:i是一個mini-batch中錨點的索引;pi是索引為i的錨點被預(yù)測為前景的概率,即目標(biāo)的置信度,如果這個錨點為正樣本,則真實值標(biāo)簽為1;如果這個錨點為負樣本,則真實值標(biāo)簽為0;ti是包含4個參數(shù)的邊界回歸框的預(yù)測值;ti*是正樣本到真實邊界框需要的回歸量;Lfb是用于分類出前后景的損失函數(shù); Lreg(ti, ti*)是邊界框的回歸損失函數(shù)。pi*Lreg意味著只有正樣本(pi*=1)才對回歸損失函數(shù)起作用。用于分類和回歸的層分別由{pi}和{ti}組成。這2個子網(wǎng)絡(luò)層通過Nfb和Nreg進行歸一化,并由平衡因子λ平衡兩者各自的損失函數(shù)。
經(jīng)典的檢測方法,如RCNN和Fast RCNN[15],生成檢測框非常耗時,而Faster RCNN[12]則拋棄了傳統(tǒng)的滑動窗口和seletive search方法[16-17],直接使用RPN生成檢測框,極大提升了檢測框的生成速度和準確性,這也是Faster RCNN最大的優(yōu)勢。
Faster RCNN的結(jié)構(gòu)如圖2所示。其中,RPN是以圖像的特征圖作為輸入,并輸出帶有目標(biāo)對象預(yù)測分數(shù)的一組矩形建議框[11]。
RPN實際上分為2個分支(如圖3所示),上面的一條分支通過Softmax分類器對錨點框進行分類,獲得前景和后景;下面的一條分支用于計算錨點邊界框回歸的偏移量,而最后的區(qū)域候選層則負責(zé)綜合前景和邊界框回歸的偏移量,獲得候選框,同時剔除太大和超出邊界的候選框。
圖2 Faster RCNN的結(jié)構(gòu)
圖3 RPN的結(jié)構(gòu)
在每個滑動窗口位置,同時預(yù)測多個區(qū)域候選框,其中k表示每個位置的最大候選框的數(shù)量。因此,回歸層具有4k個輸出,編碼k個框的坐標(biāo),并且分類層輸出2k個評分,評分每個候選框是目標(biāo)對象或不是目標(biāo)對象的概率,如圖4左側(cè)所示。
圖4 RPN中的錨點框
錨點位于所討論滑動窗口的中心點,并且與尺度和縱橫比相關(guān)(如圖4右側(cè)所示)。 默認情況下,使用3個尺度和3個高寬比,在每個滑動位置產(chǎn)生k=9個錨點框。對于大小為W×H的特征圖,總共有W×H×k個錨點框。
邊界框回歸采用一種對錨點框進行微調(diào)的方法,使得候選框和標(biāo)記的真實目標(biāo)框更加接近。
對于窗口一般使用四維向量(x,y,w,h)來表示,分別表示窗口中心點的坐標(biāo)和寬高。如圖5所示,實線框P代表原始的Proposal,虛線框G代表真實目標(biāo)框。邊界框回歸的目的是尋找一種關(guān)系使得輸入的原始框P經(jīng)過映射得到一個跟真實框G更加接近的回歸框G。
圖5 邊界框回歸
即:給定(Px,Py,Pw,Ph),尋找一種映射 F,使得:
式中: 輸入 P=(Px, Py, Pw, Ph)是 Region Proposal層的輸出,也就是RCNN中的Pool5 feature(特征向量)。
文獻[5]給出一種思路, 先做平移(Δx, Δy):
由式(4)—式(9)可知, 需要學(xué)習(xí)的是 dx(P),dy(P), dw(P), dh(P)這 4 個變換。 當(dāng)輸入的候選框與真實目標(biāo)框相差較小時(RCNN設(shè)置的是Intersection Over Union,即 IoU>0.6),可以認為這是一種線性變換,那么就可以使用線性回歸來建模,對窗口進行微調(diào),從而得到預(yù)測值G=[dx(P), dy(P),dw(P), dh(P)],這 4 個值是經(jīng)過真實目標(biāo)框和候選框計算得到的真正需要的平移量(tx,ty)和尺度放縮量(tw, th)。
線性回歸就是給定輸入的特征向量X,學(xué)習(xí)一組參數(shù)W,使得經(jīng)過線性回歸后的值跟真實目標(biāo)框非常接近,即Y≈WX。
那么目標(biāo)函數(shù)可以表示為 d*(P)=w*Φ5(P), 其中Φ5(P)是輸入Proposal的特征向量,w*是要學(xué)習(xí)的參數(shù)(*表示x,y,w,h,也就是每一個變換對應(yīng)一個目標(biāo)函數(shù)),d*(P)是得到的預(yù)測值。要讓預(yù)測值跟真實值 t*=(tx, ty, tw, th)的差距最小,得到損失函數(shù)為:
函數(shù)優(yōu)化目標(biāo)為:
利用梯度下降法或者最小二乘法可以得到w*。
在圖2的Faster RCNN示意結(jié)構(gòu)圖中,黑色框部分為RPN,與Fast RCNN相比,其第一階段的候選提議框是不同的,而Fast RCNN采用的是探索式的候選提議框[14],這樣的候選框提取效率相對比較低。本文基于Faster RCNN中的RPN進行改進,結(jié)構(gòu)如圖6所示。
與Faster RCNN中的RPN(基于VGG網(wǎng)絡(luò)[18]提取的最后一層特征圖進行第一階段候選框的提?。┫啾?,本文的改進方法結(jié)合ResNet網(wǎng)絡(luò)[19]的跳層連接方式以及inception網(wǎng)絡(luò)[20]的多尺度卷積核思想,不僅使用了VGG網(wǎng)絡(luò)最后一層的特征圖,還使用了VGG網(wǎng)絡(luò)中的Layer2,Layer3和Layer5層的特征圖進行候選框的提取[21]。其中,Layer2和Layer3分別經(jīng)過如圖7(a)所示的inception示意圖,一次性使用多個不同尺度的卷積核來抓取多個范圍不同的特征信息,并讓網(wǎng)絡(luò)自己選擇需要的特征,從而消除卷積核的尺度對識別結(jié)果的影響。同時,Layer2和Layer3使用如圖7(b)所示的ResNet的跳層連接思想,直接將上一層所抓取的特征信息跳層傳遞給下一層,不用讓其每次都重新學(xué)習(xí),而且因為使用了跳層連接的方式,避免了下采樣在進行低層信息保留時,冗余信息的產(chǎn)生。
圖6 改進后的RPN結(jié)構(gòu)
圖7 Inception與ResNet的結(jié)構(gòu)
對于航拍絕緣子圖像而言,存在著訓(xùn)練樣本不足、優(yōu)質(zhì)樣本缺乏等問題,需要對訓(xùn)練樣本進行擴充,通過圖像的旋轉(zhuǎn)、鏡像等方式,并結(jié)合絕緣子的3D人工圖像進行樣本擴充。如圖8為通過3D建模生成的圖像。
圖8 人工合成的3D絕緣子圖像
針對絕緣子這一單一檢測目標(biāo),其人工標(biāo)注框的寬高比可以統(tǒng)計出來,如圖9所示為所有標(biāo)注框的寬高比分布情況,利用K-MEANS[23]方法對標(biāo)注框的寬高比和尺度進行聚類統(tǒng)計,據(jù)此可以選擇錨點框的初始比率為[1:3, 1:1, 3:1], 錨點框尺度為[120,280,460,600]。上述做法解決了訓(xùn)練過程中正樣本較少的問題,有利于提升最終模型的準確性。
圖9 數(shù)據(jù)標(biāo)注框的寬高比分布情況
為驗證改進后的RPN識別絕緣子的有效性,將其與未改進的RPN識別結(jié)果進行比較。實驗采用某電力公司真實航拍絕緣子圖像以及模擬3D絕緣子圖像為樣本集(共計22 244張,訓(xùn)練集200 00張,測試集2244張),如圖10所示,在不同IoU重疊率下,通過對比改進前后RPN對正樣本的召回率,來證明通過對真實目標(biāo)框的分析以及選擇錨點框的初始化是很有必要的。
圖10 在測試集上驗證召回率和IoU重疊率的關(guān)系
使用的服務(wù)器GPU型號為GTX 1080,使用訓(xùn)練集數(shù)據(jù)分別對改進前后的RPN進行訓(xùn)練,總共迭代次數(shù)為128 000次,在70 000次迭代之前使用的學(xué)習(xí)率為0.000 6,在70 000次迭代到100 000次迭代之間使用的學(xué)習(xí)率為0.000 3,之后的迭代使用學(xué)習(xí)率為0.000 03。圖11為改進后的RPN在訓(xùn)練集上的loss曲線和測試集上的loss曲線,由loss曲線可知,迭代120 000次之后,測試集上的loss不再下降,這說明終止迭代的次數(shù)也是合理的。
圖11 改進后的RPN在訓(xùn)練集上的loss和測試集上的loss曲線
在測試集(2 244張絕緣子圖片)上驗證評估改進前后RPN的檢測精度。計算平均精度[24]時采用的重疊率為0.5,圖12(a)為RPN的RP曲線,圖12(b)為改進后的RPN的RP曲線。由此可以得出,改進后RPN的精度較之前提高了約5%。如圖13所示為絕緣子檢測效果的對比。
圖12 在測試集上的絕緣子檢測
圖13 改進前后的RPN用于絕緣子檢測的效果
本文基于改進后的RPN對航拍圖像中絕緣子進行目標(biāo)檢測,具有以下特點:
(1)改進后的RPN使用了Inception的多尺度的卷積核和ResNet跳層連接的思想,對檢測效果有明顯的提升。
(2)針對絕緣子的真實目標(biāo)框進行尺度和寬高比的聚類分析,以此進行錨點框的初始化,有利于提高正樣本的召回,進而有利于最終模型精度的提升。
結(jié)果表明,改進后的RPN能更準確地識別和定位絕緣子。