吳克河 王敏鑒 李淵博
(華北電力大學控制與計算機工程學院 北京 102206)
隨著國民生產生活過程中對電能需求量的不斷增加,電網的建設規模也日益壯大,其中電力設備作為電網的重要組成部分對于電網的安全運行起著至關重要的作用。據統計資料表明[1],電力系統中許多故障都與電力設備故障有著直接關系,而其中設備溫度的異常變化一般出現在故障的早期階段[2],因此,實現電力設備溫度變化的自動監控和分析對電力設備的故障診斷有著極其重要的意義。
紅外熱成像診斷技術將電力設備的紅外輻射能轉變成可見的紅外圖像,通過觀察紅外圖像,確定電力設備任意部位的溫度,異常溫度值可以反映出設備內部潛在的故障[3~4]。紅外成像技術能簡單快速地完成對設備健康狀況的分析,滿足對電力設備故障診斷的要求,從而在電力設備故障診斷領域得到了廣泛應用。在設備紅外圖像分析的過程中,首先需要把設備的紅外圖像從其他背景圖像中分割出來,分割的準確性直接影響著故障分析的結果。
傳統的圖像分割多采用基于閾值的分割、基于邊緣的分割以及基于區域的分割等方法[5~6],這些圖像分割方法能大體上完成分割任務,但是分割結果不夠精確,而且分割結果圖大多沒有保留原始紅外圖像信息,不利于紅外診斷分析工作。近年來,由于深度學習在計算機視覺領域取得諸多顯著成果,其逐漸成為解決計算機視覺問題的最好解決辦法。文獻[7]提出了全卷積網絡,將全連接網絡替換成了卷積網絡,使得網絡可以接受任意大小的圖片,并輸出和原圖一樣大小的分割圖,但訓練麻煩且分割結果不夠精細;文獻[8]提出空洞卷積,在特征圖縮小到同樣倍數的情況下可以掌握更多圖像的全局信息,但模型無法捕捉物體的精細邊界;Li等將文獻[9]中的分割候選系統與文獻[10]中的目標檢測系統進行了“全卷積目標分割”(FCIS)的融合,用全卷積得到一組位置敏感的輸出通道候選,使得系統速度變得更快[11],但FCIS在重疊實例上出現系統錯誤,并產生虛假邊緣。而Mask R-CNN提取更精細的物體空間布局,可用來解決目標檢測、目標分類、像素級目標分割三大任務[12],且分割結果更加精細,故本文采用基于Mask R-CNN的實例分割模型對電力設備紅外圖像進行實例分割和目標檢測,能夠為電力設備的故障診斷提供信息支持。
Mask R-CNN是一個兩階段的框架:第一階段掃描圖像并生成建議區域(proposals,即可能包含目標物體的區域);第二階段對建議區域進行分類,生成邊界框(bounding boxes)和掩碼(mask)。Mask R-CNN是在Faster R-CNN的基礎上提出的,Faster R-CNN是一個流行的目標檢測框架[13],Mask R-CNN將其擴展為實例分割框架。Mask R-CNN整體架構如圖1所示。

圖1 Mask R-CNN整體架構圖
Mask R-CNN框架主要由四個部分組成:
1)主干架構
主干架構的主要作用是來進行特征提取,因此一般主干架構是一個標準的卷積神經網絡,通常采用ResNet50和ResNet101的殘差卷積神經網絡。主干架構作為特征提取器,底層提取輸入圖像的低級特征,比如邊角和邊緣等,高層提取更高級的特征,比如貓、鳥、天空等。以輸入圖像1024px×1024px×3(RGB)為例,經過主干網絡的前向傳播之后,圖像轉換為32×32×2048的特征圖,該特征圖作為下一個階段的輸入。
對主干網絡引入特征金字塔網絡(FPN)可使主干網絡的性能進一步提升,同時這也是Mask R-CNN相較于Faster R-CNN的一次進步。圖2是引用自文獻[14]的金字塔網絡模型結構示意圖。

圖2 FPN模型結構示意圖
由圖2可看出,FPN通過增加另一個金字塔,將第一個金字塔上提取到的高級特征傳遞到底層,在這個過程中,每一級的特征都可以和高級、低級的特征相結合。通過自上而下和橫向連接將高層的語義信息與低層的高分辨率進行融合,提高特征的表達能力,更好的實現物體檢測[15]。
2)區域建議網絡
RPN層是一個輕量級神經網絡,其使用滑動窗口來掃描共享特征圖尋找存在目標的區域。RPN掃描過的區域被稱為anchor,對于每個anchor,RPN做兩個操作,第一是判斷該anchor是前景還是背景,第二是為屬于前景的anchor進行坐標修正。RPN是一個樹狀結構,樹干是一個3×3的卷積層,樹枝是兩個1×1的卷積層,其中第一個卷積層解決前背景的輸出問題,第二個卷積層解決了邊框修正的輸出。
使用RPN的預測可以選出最好的包含了目標的anchor,并對其位置和尺寸進行精調。如果有多個anchor互相重疊,保留擁有最高前景分數的an?chor,并舍棄余下的(非極大值抑制)。然后就得到了最終的區域建議,并將其傳遞到下一個階段。
3)ROI分類器和邊界框回歸器
這個階段是在由RPN提出的ROI上運行的。與RPN類似,它為每個ROI生成了兩個輸出:
(1)ROI中的目標的類別。與RPN得到前景和背景的兩個類別不同的是,這個網絡更深并且可以判斷區域的具體類別,比如貓、鳥、天空等。除此以外,還能生成一個背景類別。
(2)邊框精調:進一步精調邊框的大小和位置以封裝目標。
Mask R-CNN對Faster R-CNN中的ROI Pool?ing做了改進并提出了ROI Align,應用雙線性插值在特征圖的不同點采樣生成固定尺寸的特征圖,在解決RPN中經過邊框精調之后尺寸不一的問題的同時,很好地解決了ROI Pooling操作中兩次量化造成的區域不匹配(mis-alignment)的問題。
4)分割掩碼
這一部分是Mask R-CNN相較于Faster R-CNN所獨有的部分,經過前三部分的網絡,可以完成目標檢測任務,而第四部分完成目標分割任務。
掩碼分支同樣也是一個卷積神經網絡,該網絡以ROI分類器選擇的正區域為輸入,生成它們的低分辨率的浮點數型的軟掩碼。
本文采用基于Mask R-CNN的實例分割模型對電力設備紅外圖像進行分割,整體流程如圖3所示。
2.2.1 網絡結構設計
1)特征提取網絡結構
本實驗采用使用ResNet101和FPN的主干網絡來進行特征提取。ResNet101的結構組成如表1所示。
經 過 表 1 中 的 conv2_x、conv3_x、conv4_x、conv5_x四個殘差網絡輸出分辨率分別為65×65×256(包含conv1、pool和conv2_x的輸出分辨率)、33×33×512、17×17×1024、9×9×2048。由于 Mask R-CNN特征網絡部分采用的是ResNet+FPN的形式,每個殘差網絡都對應一個FPN輸出層,分別為65×65×256、33×33×256、17×17×256、9×9×256,融合殘差網絡輸出和FPN輸出后生成最終的5個特征矩陣,分別為65×65×256、33×33×256、17×17×256、9×9×256、5×5×256,其中第5個特征矩陣5×5×256直接由倒數第二層降維而來。

圖3 電力設備紅外圖像分割流程圖

表1 ResNet101結構組成
2)分割網絡結構
根據前文介紹,Mask R-CNN的最后一部分網絡結構負責候選框分類和分割處理。這一部分是對前一部分得到的候選窗口的進一步處理,在得到目標檢測的結果之后進行目標分割,具體流程是在ROI Align后得到特征矩陣并對其進行反卷積操作。
2.2.2 損失函數設置
Mask R-CNN的損失函數具體公式如下所示:

其中為權重正則化損失,為區域推薦網絡損失,Lcls為目標檢測分類損失,Lbox為目標檢測坐標回歸損失,Lmask為目標。
分割結果的損失。下面是這五部分損失函數的具體計算公式:
1)權值正則化損失函數
權值正則化損失函數為所有權重系數的平方和與比例系數α的乘積,如式(2)所示。

2)目標檢測分類損失函數
目標檢測根據網絡結構會得到200個區域推薦窗口,設pi為正確分類所對應的概率值,選擇交叉熵作為衡量標準,計算公式如式(3)所示。

3)目標檢測坐標回歸損失函數
坐標回歸損失函數與目標檢測分類損失函數標準不同,具體計算公式如式(4)所示。

4)目標分割結果損失函數
目標分割的結果為200個28*28維度的矩陣,矩陣的每個元素為0至1的概率值。式(5)為對數損失函數在單個數據點的定義。

每個目標分割圖像矩陣維度為28*28,具體計算公式如式(6)所示。

(其中200為200個區域推薦窗口,目標分割會輸出200個28*28的矩陣,矩陣的每個元素為0至1的概率值)
5)區域推薦網絡損失函數
值區分候選框是否為前景,二分類問題,參考Lcls、Lbox進行計算。
本文實驗硬件環境如表2所示,在此基礎上搭建軟件環境:Ubuntu16.04、Python等,框架使用Ten?sorflow1.11框架。

表2 實驗硬件環境配置
實驗數據集來自某市國家電網供電公司巡檢人員現場拍攝的紅外圖像庫,經過篩選之后留下設備分明、背景清晰和角度正確的2000張紅外圖像和500張紅外圖像分別作為訓練數據集和測試數據集,同時為了保證訓練模型的準確性,采用遷移學習的思想[16],取代從零開始訓練一個新模型。本次實驗先在COCO數據集(一個包含91類目標,328 000影像和2 500 000個標簽的可以用來分割訓練的圖像數據集)訓練得到權重文件,雖然COCO數據集中不包含電力設備類別,但它包含了目前自然界的大量其他圖像(約12萬張),所以訓練所得的權重文件已經具有辨識大量常見特征的能力。
準備好實驗數據集之后需要對圖像進行預處理,主要分為統一尺寸和圖像標注兩部分。統一尺寸是將尺寸參差不齊的圖像統一到固定的尺寸,Mask R-CNN對于輸入圖像的尺寸沒有具體要求,但每次進行訓練的所有圖像需要統一尺寸,分析數據集中所有圖像中尺寸最小的圖像為256×256,因此最終將所有圖像的尺寸統一調整為256×256。
本實驗的模型訓練分為兩種:使用遷移學習的模型訓練和不使用遷移學習的模型訓練。對于使用遷移學習的模型訓練,首先在COCO數據集進行訓練得到權重文件,然后在該權重文件的基礎上訓練電力設備紅外圖像集合。訓練采用隨機梯度下降算法(SGD),設置初始迭代數為5000次,隨機梯度下降算法的原理是不停地尋找某個節點中下降幅度最大的趨勢進行迭代計算,逐步計算出最優解的方法。對于整體步驟來說,首先是將輸入的數據輸入到模型之中,之后構建數據模型,然后根據梯度下降算法更新一次模型的權重值,之后進入下一次迭代,在下一次迭代的過程中,重復上述的步驟,但是使用一個不同的數據點去計算。重復這個過程,直到達到預定的迭代次數或者損失函數的差值在閾值之內,從而停止模型的訓練。
經過5000次迭代,得到各loss值的變化情況如圖 4所示,其中 loss對應式(1)中的Lfinal,mrcnn_bbox_loss、mrcnn_class_loss、mrcnn_mask_loss分別為分割網絡層中的坐標回歸損失、目標分類損失和目標分割損失,rpn_bbox_loss、rpn_class_loss分別為區域推薦網絡中的坐標回歸損失、目標分類損失。

圖4 訓練迭代5000次各loss值變化圖
由上圖可以看到,隨著訓練次數的增加,各loss的值也在逐漸下降,在5000次迭代訓練結束時,loss值的變化仍有下降的趨勢,所以再次增加迭代8000次和10000次的實驗進行比較。經過比較,隨著訓練迭代次數的增加,最終的loss值也逐漸降低,但下降的幅度逐漸放緩,從8000次迭代以后,各loss值逐漸穩定。因此,針對電力設備紅外圖像集模型訓練迭代次數應在8000次左右為宜。
對于不使用遷移學習的模型訓練,也采用隨機梯度下降算法進行訓練,但模型收斂速度慢,經過12000次迭代后,各loss值才逐漸穩定。

表3 迭代次數對比表
使用8000次迭代訓練獲得的使用遷移學習模型和12000次迭代訓練獲得的不使用遷移學習的模型分別對不包含在訓練集中的圖像進行目標分割測試,對比結果如圖5所示。

圖5 從左至右分別為原圖和未使用遷移學習、使用遷移學習的模型分割圖
由圖5可看出,未使用遷移學習的Mask R-CNN實例分割模型對電力設備紅外圖像的分割結果并不是很好,對電力設備的邊緣處理精度較差,還會出現不完整分割、錯割等情況。而使用了遷移學習的Mask R-CNN實例分割模型在電力設備紅外圖像分割方面則取得了良好的效果,其分割結果更加準確,雖然對于電力設備的邊緣處理仍未達到極高的精確度,但這是由于實驗數據集較小造成的,若實驗數據集更大,則精度會進一步得到提升。
本文選用在目標分割領域先進的Mask R-CNN框架來進行電力設備紅外圖像的目標分割,首先準備了充分的實驗環境,并對實驗數據集完成分類、整理和標注工作,然后采用基于ResNet101和FPN的Mask R-CNN結構作為訓練模型進行訓練。在訓練過程中,通過分析不同迭代次數的Loss值的變化情況,確定電力設備紅外圖像分割效果最好的迭代次數,生成最終的訓練模型。實驗結果展示了模型的分割效果,并且對比了遷移學習和非遷移學習對分割結果的影響,結果表明遷移學習可以大大地提高模型的分割效果。因此,本文驗證了Mask R-CNN框架在電力設備紅外圖像分割領域具有良好的應用前景,可以極大地提高電力設備故障分析工作的效率和準確率。