羅玉鶴, 龐紅旗, 高飛翎, 白文博, 陳 靜
(1. 寧波市電力設(shè)計(jì)院, 浙江 寧波 315000; 2. 福州大學(xué)電氣工程與自動(dòng)化學(xué)院, 福建 福州 350108)
在輸電線路中, 防振錘是一種廣泛使用的設(shè)備, 具有減少導(dǎo)線因風(fēng)力扯起振動(dòng)的作用. 由于常年暴露在自然環(huán)境中, 受雷擊、 污穢等眾多因素影響極易發(fā)生損壞, 對輸電線路的安全穩(wěn)定運(yùn)行造成不利影響. 因此, 定期對防振錘進(jìn)行狀態(tài)檢測和故障診斷顯得尤為重要. 近年來, 無人機(jī)巡檢憑借著高效安全的優(yōu)點(diǎn)逐漸取代傳統(tǒng)的人工巡檢[1]. 與此同時(shí), 利用圖像處理技術(shù)和機(jī)器視覺發(fā)現(xiàn)航拍圖像中的防振錘故障成為熱點(diǎn)問題[2].
從航拍圖像中識別防振錘是實(shí)現(xiàn)防振錘故障檢測的基礎(chǔ). 金立軍等[3]提出一種基于類Haar特征和級聯(lián)AdaBoost分類器的輸電線路防振錘的識別方法, 能在復(fù)雜背景中有效識別防振錘. 其中的級聯(lián)AdaBoost分類器是一組串行的分類器, 只有每一級都判定為正樣本最終才能作為正樣本輸出, 由于每一級分類器都采用AdaBoost算法進(jìn)行訓(xùn)練, 極大地增加了計(jì)算成本. Wu等[4]提出改進(jìn)的氣球力Snake方法用于噪聲模糊圖像中防振錘的邊緣檢測, 相比傳統(tǒng)的氣球力Snake模型取得了更好的檢測效果, 但Snake方法對初始輪廓位置敏感, 限制了使用范圍. 朱銘武等[5]提出一種基于檢測局部輪廓特征的防振錘與間隔棒識別方法, 首先對提取圖像的邊緣進(jìn)行拆分處理, 檢測邊緣關(guān)鍵點(diǎn)或角點(diǎn), 得到直線段邊緣. 再利用 Gestalt感知定律中的連續(xù)性、 近似性、 共線性對斷續(xù)的線段進(jìn)行合并. 該方法在背景干擾、 遮擋及拍攝角度影響下具有很好的魯棒性, 但過程復(fù)雜, 識別速度較慢. 以上方法在一定程度上能達(dá)到最終的識別目的, 但仍存在成本高、 計(jì)算復(fù)雜、 效率低等問題, 不足以滿足實(shí)際工程應(yīng)用當(dāng)中的高效與實(shí)時(shí)等需求.
近年來, 隨著計(jì)算機(jī)硬件性能和相關(guān)算法的提高, 以卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network, CNN)為代表的深度學(xué)習(xí)技術(shù)逐漸取代了傳統(tǒng)的機(jī)器學(xué)習(xí)方法[6], 在圖像目標(biāo)識別與檢測、 語音識別等領(lǐng)域取得了顯著的效果[7-8]. 在圖像目標(biāo)識別中通過CNN能夠很好地識別出目標(biāo), 但無法定位目標(biāo)區(qū)域. 而基于區(qū)域的卷積神經(jīng)網(wǎng)絡(luò)(region-based convolutional neural network, R-CNN), 在卷積層后接入了感興趣區(qū)域(region of interest, RoI)池化層, 從而使網(wǎng)絡(luò)能夠定位目標(biāo), 如Fast R-CNN、 Faster R-CNN等. 基于區(qū)域的卷積神經(jīng)網(wǎng)絡(luò)由于在全連接層上的計(jì)算不共享, 在訓(xùn)練過程中會(huì)造成大量的參數(shù)冗余. 而Dai等[9]提出的R-FCN能夠在整個(gè)圖像上共享計(jì)算, 減少了參數(shù)冗余, 提高了檢測速度. 此外, 通過引入位置敏感分?jǐn)?shù)圖解決了分類平移不變性和目標(biāo)檢測平移變換之間的矛盾, 是一種適用于識別復(fù)雜背景中小目標(biāo)的神經(jīng)網(wǎng)絡(luò).
本研究提出一種基于R-FCN的輸電線路防振錘智能識別方法. 作為一種端到端的處理架構(gòu), R-FCN可以直接使用電力巡檢圖像作為輸入, 降低了對圖像數(shù)據(jù)預(yù)處理的要求, 避免了復(fù)雜的特征工程, 且與傳統(tǒng)的防振錘識別方法相比具有檢測速度快、 識別準(zhǔn)確率高等優(yōu)點(diǎn), 為實(shí)現(xiàn)輸電線路的智能化巡檢奠定基礎(chǔ).
圖1 防振錘識別原理圖Fig.1 Identification schematic of dampers
針對電力巡檢圖像中背景復(fù)雜、 防振錘形態(tài)各異、 識別準(zhǔn)確率不高等問題, 提出一種基于R-FCN的防振錘智能識別方法, 分為離線訓(xùn)練、 在線識別兩個(gè)部分, 具體流程如圖1所示. 在離線訓(xùn)練階段, 以無人機(jī)巡檢系統(tǒng)獲得的巡檢圖像為原始數(shù)據(jù)集, 經(jīng)過數(shù)據(jù)預(yù)處理后將數(shù)據(jù)集隨機(jī)劃分為訓(xùn)練集、 測試集, 并用于訓(xùn)練構(gòu)建好的R-FCN模型. 再對訓(xùn)練完畢的R-FCN模型實(shí)施固化操作, 以獲得防振錘識別模型. 一旦R-FCN模型訓(xùn)練固化完畢, 即可將其加載到不同的無人機(jī)智能檢測終端使用, 無需重復(fù)訓(xùn)練, 只需將無人機(jī)巡檢所得的圖像數(shù)據(jù)直接輸入識別模型, 即可迅速獲得防振錘智能識別結(jié)果.
圖2 圖像預(yù)處理流程圖 Fig.2 Flow chart of the images pre-processing
原始巡檢圖像的預(yù)處理流程如圖2所示, 首先通過數(shù)據(jù)增強(qiáng)手段擴(kuò)充原始數(shù)據(jù)集, 其次通過LabelImg軟件標(biāo)注巡檢圖像中的防振錘目標(biāo)并生成對應(yīng)的XML標(biāo)簽文件. 接著, 將處理后的圖像數(shù)據(jù)隨機(jī)分成兩部分, 組成訓(xùn)練圖像庫以及測試圖像庫, 每個(gè)庫中包含對應(yīng)的圖像數(shù)據(jù)以及XML標(biāo)簽文件. 最后, 將其轉(zhuǎn)換為TFRecord格式文件, 構(gòu)成訓(xùn)練數(shù)據(jù)集以及測試數(shù)據(jù)集, 用以后續(xù)的R-FCN模型訓(xùn)練.
為解決原始巡檢圖像數(shù)據(jù)短缺造成的訓(xùn)練數(shù)據(jù)不足, R-FCN模型識別準(zhǔn)確率不高的問題, 可通過數(shù)據(jù)增強(qiáng)手段擴(kuò)充原始巡檢圖像數(shù)據(jù), 主要包括旋轉(zhuǎn)、 裁剪. 其中旋轉(zhuǎn)為將原始巡檢圖像數(shù)據(jù)旋轉(zhuǎn)180°, 并保存旋轉(zhuǎn)后的圖像. 而裁剪則是將原始圖像數(shù)據(jù)進(jìn)行適當(dāng)剪裁, 與旋轉(zhuǎn)相比, 裁剪后的圖像可使防振錘目標(biāo)處于圖像的中心位置, 凸顯防振錘目標(biāo)特征, 更有利于后續(xù)的模型訓(xùn)練.
防振錘目標(biāo)標(biāo)注旨在在巡檢圖像中標(biāo)出防振錘的位置. 通過LabelImg軟件可用矩形框定位防振錘目標(biāo)的位置, 其中位置信息由包含防振錘目標(biāo)的矩形框左上角頂點(diǎn)坐標(biāo)(xmin,ymin)和右下角頂點(diǎn)坐標(biāo)(xmax,ymax)表示. 當(dāng)一張圖片包含多個(gè)防振錘目標(biāo)時(shí), 需一一標(biāo)出該圖片中所有防振錘的位置信息, 并保存在同一份XML標(biāo)簽文件中, 用于R-FCN訓(xùn)練過程反向傳播中的損失值計(jì)算和驗(yàn)證檢測精度. 此后, 將圖像數(shù)據(jù)及其對應(yīng)的XML標(biāo)簽文件隨機(jī)分成訓(xùn)練圖像庫用于模型訓(xùn)練, 測試圖像庫用于驗(yàn)證模型準(zhǔn)確率.
R-FCN是以Faster R-CNN為基礎(chǔ)改進(jìn)的一種適用于小物體檢測的深度神經(jīng)網(wǎng)絡(luò). 與Faster R-CNN[10]相比, R-FCN去除了感興趣區(qū)域RoI池化層后的全連接層, 使所有RoI在整個(gè)網(wǎng)絡(luò)上可以共享參數(shù), 減少參數(shù)冗余,提升識別速度. 此外, 在目標(biāo)分類過程中要求網(wǎng)絡(luò)具有良好的平移不變性, 而在目標(biāo)檢測時(shí)則需要平移變換, R-FCN通過專門的卷積層構(gòu)建位置敏感分?jǐn)?shù)圖, 解決這一矛盾. R-FCN的網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示, 主要由特征提取網(wǎng)絡(luò)、 區(qū)域建議網(wǎng)絡(luò)以及RoI子網(wǎng)三部分組成.
圖3 R-FCN網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.3 The structure diagram R-FCN network
1.2.1特征提取
電力巡檢圖像中, 由于背景復(fù)雜以及不同的拍攝角度尺度, 導(dǎo)致防振錘形態(tài)多樣, 特征信息繁多, 手動(dòng)提取特征費(fèi)時(shí)費(fèi)力, 影響防振錘識別效率. 而由全卷積網(wǎng)絡(luò)構(gòu)成的特征提取網(wǎng)絡(luò)能夠自主地提取防振錘圖像特征, 并生成高質(zhì)量的特征圖, 提高防振錘識別準(zhǔn)確率. 目前已有如AlexNet、 ZF以及VGG等深層神經(jīng)網(wǎng)絡(luò)模型可供選擇, 其中每一種網(wǎng)絡(luò)都可通過增加自身的網(wǎng)絡(luò)層數(shù)建立更深的網(wǎng)絡(luò), 從而達(dá)到更高精度的目的. 但隨著神經(jīng)網(wǎng)絡(luò)層數(shù)的增加會(huì)導(dǎo)致網(wǎng)絡(luò)訓(xùn)練及檢測的速度降低, 無法滿足實(shí)時(shí)識別航拍圖像中的防振錘的需求. 而殘差網(wǎng)絡(luò)(residual neural network, ResNet)由殘差塊組成, 殘差塊的引入有效緩解了隨著網(wǎng)絡(luò)層數(shù)加深所帶來的梯度消失和訓(xùn)練退化問題, 從而提升網(wǎng)絡(luò)收斂性能. 因此, 本研究采用殘差網(wǎng)絡(luò)中的ResNet101作為R-FCN的特征提取網(wǎng)絡(luò), 在預(yù)訓(xùn)練的Resnet101模型基礎(chǔ)上, 移除了ResNet101中的平均池化層和全連接層, 同時(shí)增加了1×1×1 024的卷積層用來降維, 并使用防振錘數(shù)據(jù)集對模型進(jìn)行微調(diào), 實(shí)現(xiàn)特征提取網(wǎng)絡(luò)優(yōu)化訓(xùn)練, 進(jìn)一步加強(qiáng)網(wǎng)絡(luò)提取防振錘特征能力.
1.2.2區(qū)域建議網(wǎng)絡(luò)
圖4 RPN網(wǎng)絡(luò)示意圖Fig.4 RPN network diagram
區(qū)域建議網(wǎng)絡(luò)(region proposal network, RPN)的原理如圖4所示, 其輸入為基礎(chǔ)卷積網(wǎng)絡(luò)生成的特征圖, 通過一個(gè)3 × 3的滑動(dòng)窗口掃描整個(gè)特征圖, 得到一個(gè)維數(shù)為256的向量. 將該向量作為兩個(gè)1 × 1卷積的輸入, 從而將特征圖的信息映射成為防振錘候選區(qū)域的位置信息以及其為前后景的概率信息, 同時(shí)將每一特征點(diǎn)映射回原圖, 并生成若干個(gè)尺寸不一可能包括防振錘的RoI. 由于巡檢圖像背景復(fù)雜, 航拍圖像角度多, 導(dǎo)致同一圖片上防振錘大小不一, 在產(chǎn)生RoI時(shí), 設(shè)計(jì)了128 × 128, 256 × 256, 512 × 512三種面積尺寸, 以提高區(qū)域建議準(zhǔn)確率. 經(jīng)統(tǒng)計(jì), 防振錘目標(biāo)的標(biāo)注矩形框長寬比約在0.3~2.0之間, 部分側(cè)拍角度的防振錘標(biāo)注矩形框長寬比為1∶1, 因此設(shè)計(jì)0.5、 1.0、 2.0三種長寬比, 并結(jié)合三種面積尺寸對包含防振錘目標(biāo)的窗口位置進(jìn)行預(yù)測, 以進(jìn)一步提高防振錘的識別準(zhǔn)確率.
1.2.3RoI子網(wǎng)
RPN生成的RoI并不能十分準(zhǔn)確地定位巡檢圖像中防振錘的位置, 此時(shí)通過RoI子網(wǎng)對防振錘的位置信息進(jìn)行回歸修正, 能夠進(jìn)一步提高防振錘識別的準(zhǔn)確率. 利用卷積操作為每種類別在ResNet 101生成的特征圖上生成k2個(gè)(C+1)維的位置敏感分?jǐn)?shù)圖. 其中C為防振錘的種類數(shù), 設(shè)為1,C+1 為防振錘種類數(shù)加背景. 而k2表示 RoI 池化層將每個(gè)RoI 劃分成k2個(gè)空間位置. 令k=3, 則RoI可被分割成3 × 3共9個(gè)矩形塊, 對應(yīng)的位置敏感分?jǐn)?shù)圖也就分割成9塊, 分別為{上左, 上中, 上右, …, 下右}. 由于這些位置敏感分?jǐn)?shù)圖對位置敏感, 所以RoI池化層會(huì)有選擇地池化, 只有編碼相應(yīng)位置的位置敏感分?jǐn)?shù)圖才會(huì)做出池化反應(yīng).
(1)
其中:zi, j, C是k2(C+1)個(gè)位置敏感分?jǐn)?shù)圖當(dāng)中的一個(gè); (x0,y0)是RoI左上角的坐標(biāo); (x,y)表示以(x0,y0)為原點(diǎn)時(shí)每個(gè)元素的坐標(biāo)值;n是bin(i,j)中的像素大小; Θ是網(wǎng)絡(luò)學(xué)習(xí)得到的參數(shù). 最后計(jì)算k2個(gè)子區(qū)域的池化響應(yīng)輸出rC(i,j|Θ)的均值, 再通過Softmax響應(yīng)確定其屬于防振錘和背景的概率.
1.2.4誤差函數(shù)
防振錘識別的目標(biāo)是最小化預(yù)測的防振錘區(qū)域與真實(shí)防振錘標(biāo)記區(qū)域之間的誤差, R-FCN網(wǎng)絡(luò)采用誤差函數(shù)來衡量防振錘識別的誤差, 誤差函數(shù)由分類誤差Lcls和定位誤差Lreg組成:
L(s,tx, y, w, h)=Lcls(sc*)+λsign(c*)Lreg(t,t*)
(2)
(3)
定位誤差Lreg中的平滑公式:
(4)
通過隨機(jī)梯度下降法來更新網(wǎng)絡(luò)參數(shù), 使所得的誤差函數(shù)最小.
實(shí)驗(yàn)計(jì)算平臺的軟硬件配置如下: Ubuntu 18.04 LTS, Intel Core i7-6850K @ 3.60GHz12CPUs, NVIDIA GeForce GTX 1080 Ti GPUs , CUDA版本9.0, cuDNN版本6.0, 內(nèi)存共32 GB. 深度學(xué)習(xí)框架采用tensorflow. 實(shí)驗(yàn)數(shù)據(jù)由1 442張不同背景條件下包含防振錘的無人機(jī)巡檢原圖構(gòu)成, 通過人工標(biāo)注用于訓(xùn)練防振錘目標(biāo)識別模型R-FCN. 并隨機(jī)將這1 442張圖像分成訓(xùn)練集與測試集. 其中, 訓(xùn)練集由1 200張圖像組成, 而測試集由242張圖像組成.
(5)
其中: TP表示防振錘被正確識別為防振錘的個(gè)數(shù); FP表示將背景誤識別為防振錘的個(gè)數(shù); FN表示未識別到的防振錘個(gè)數(shù);p(R)表示以R為參數(shù)的函數(shù).
防振錘智能識別模型初始預(yù)加載經(jīng)過ImageNet數(shù)據(jù)集訓(xùn)練的權(quán)重, 然后使用本研究所述的防振錘數(shù)據(jù)集對網(wǎng)絡(luò)進(jìn)行微調(diào)訓(xùn)練. 訓(xùn)練過程中初始學(xué)習(xí)率設(shè)為0.000 3, 動(dòng)量設(shè)置為0.9, batch_size為64, 非極大值抑制值設(shè)為0.5, 訓(xùn)練步數(shù)為40 000步, 且每迭代4 000步保存一次模型權(quán)重. 模型訓(xùn)練平均損失曲線隨訓(xùn)練迭代次數(shù)變化情況如圖5所示. 由圖5可得, 隨著迭代次數(shù)的不斷增加, 損失不斷減小, 到20 000步后, 損失逐漸收斂, 最終維持在0.1上下, 說明所選用的方法具有較好的魯棒性.
在目標(biāo)檢測中, 常通過P-R曲線衡量模型的檢測性能, 該曲線以召回率為橫軸, 準(zhǔn)確率為縱軸. 所提的防振錘識別方法的P-R曲線如圖6所示. 通過圖6可以發(fā)現(xiàn), 準(zhǔn)確率與召回率二者相互影響, 此消彼長. 當(dāng)召回率從0增加到90%時(shí), 準(zhǔn)確率呈現(xiàn)下降的趨勢, 尤其當(dāng)召回率為0.9時(shí)下降幅度增大. 但準(zhǔn)確率都維持在85%以上, 仍處在較高水平. 最終計(jì)算出的綜合評價(jià)指標(biāo)AP高達(dá)88%, 說明本方法在準(zhǔn)確率和召回率上有一個(gè)很好的平衡, 防振錘檢測精度性能出色.
圖5 損失函數(shù)變化圖Fig.5 Loss function variation diagram
圖6 P-R曲線變化圖 Fig.6 P-R curve diagram
利用訓(xùn)練固化后的模型識別巡檢圖像中的防振錘, 識別結(jié)果如圖7所示. 其中, 黃色矩形框?yàn)槟P蜋z測后自動(dòng)在原圖上標(biāo)注得到的識別框, 每一個(gè)識別框代表模型識別得到的一個(gè)防振錘. 受拍照距離、 角度和光照等外界因素的影響, 同一圖片上存在不同形態(tài)和大小的防振錘. 大尺寸防振錘特征明顯易于識別檢測, 而小尺寸防振錘特征易與其他電力部件混淆造成漏檢誤檢. 由圖可見, 本方法不僅能很好地識別出大尺寸防振錘, 而且不受小尺寸防振錘特征易被混淆的影響, 同樣能夠準(zhǔn)確地識別出小尺寸防振錘. 此外, 背景的復(fù)雜程度也會(huì)對防振錘的識別造成重大影響. 簡單背景下, 防振錘與背景差異大, 大小防振錘都易于檢測. 而在線路、 森林、 道路等交雜在一起的復(fù)雜背景下, 防振錘不易與背景區(qū)分開, 同樣易造成漏檢誤檢. 而實(shí)驗(yàn)結(jié)果表明, 處于復(fù)雜背景中的防振錘仍然能被R-FCN網(wǎng)絡(luò)準(zhǔn)確識別.
圖7 防振錘識別結(jié)果Fig.7 Identification result of dampers
為進(jìn)一步驗(yàn)證所選用方法的有效性, 將該算法的防振錘識別結(jié)果與基于類Haar特征和級聯(lián)Adaboost[11]、 基于局部輪廓特征[5]以及基于Faster R-CNN的防振錘識別[12]結(jié)果進(jìn)行對比. 其中, 其它算法所涉及到的防振錘識別結(jié)果為直接引用相應(yīng)文獻(xiàn)本身的防振錘識別結(jié)果, 對比結(jié)果如表1所示. 由表1可得, 與基于局部輪廓特征的防振錘識別方法對比, 本方法的防振錘識別精度有了較大提高, 共提高了5.3個(gè)百分點(diǎn). 而與基于類Haar特征與Adaboost的防振錘識別方法對比, 識別精度提高不明顯, 僅1個(gè)百分點(diǎn). 事實(shí)上, 在參考文[11]中僅輪廓明顯、 尺寸較大等較好的防振錘目標(biāo)的識別精度才高達(dá)90%, 而存在遮擋、 重疊、 尺寸較小等問題的較差防振錘目標(biāo)識別精度較低, 整體識別精度僅45.6%. 而本方法不論是較好的防振錘目標(biāo)亦或是較差的防振錘目標(biāo)均能準(zhǔn)確識別. 文[12]中利用包含1 500張防振錘航拍圖像的訓(xùn)練集訓(xùn)練Faster R-CNN, 最終識別結(jié)果僅為79.3%, 比本方法少了近11個(gè)百分點(diǎn). 可見, 本方法在識別防振錘目標(biāo)上可以取得更優(yōu)越的效果.
表1 不同識別方法精度對比
針對電力巡檢圖像中背景復(fù)雜, 防振錘形態(tài)各異, 識別準(zhǔn)確率不高等問題, 提出一種基于R-FCN的防振錘智能識別方法. 首先通過ImageNet數(shù)據(jù)集初始化網(wǎng)絡(luò)模型, 再通過包含不同背景形態(tài)的防振錘數(shù)據(jù)集對網(wǎng)絡(luò)進(jìn)行微調(diào). 實(shí)驗(yàn)結(jié)果表明, 本文所提方法具有較好的魯棒性, 能夠準(zhǔn)確識別不同形態(tài)的防振錘, 平均準(zhǔn)確率高達(dá)88%. 同時(shí), 與現(xiàn)有文獻(xiàn)的防振錘識別方法相比, 具有更優(yōu)越的識別能力. 本方法為后續(xù)防振錘故障檢測奠定了基礎(chǔ), 具有較強(qiáng)的推廣意義.