謝世朋,李 博,張 冬
1.南京郵電大學通信與信息工程學院,江蘇 南京 210003
2.國網(wǎng)江蘇省電力有限公司淮安供電分公司,江蘇 淮安 223002
隨著我國經(jīng)濟的蓬勃發(fā)展,目前社會生產(chǎn)及人民日常生活處處都離不開用電,這對供電部門提出了更高的要求,不僅要保證充足的供電量,還要保證較高的供電可靠性[1]。對配電線路進行帶電作業(yè)[2-3]的技術就是為了滿足在持續(xù)供電的條件下,對供電設備以及供電線路進行維護檢修、測試等相關作業(yè)而誕生的,該技術目前已廣泛應用到相關領域,用以保證供電的可靠性。
然而作業(yè)人員在對配電線路進行不停電作業(yè)時具有較高的危險性,所以精確的安全預警系統(tǒng)在不停電作業(yè)時是非常重要的。而對配電線路進行精準語義分割又是不停電作業(yè)安全預警中最為核心的技術之一,語義分割的精度直接決定了安全預警的可靠性。
圖像語義分割[4-5]是指從像素的角度將表達不同語義類別的像素按區(qū)域分割開來,是圖像處理任務的核心技術之一。隨著人工智能時代到來,圖像語義分割逐漸成為了無人駕駛、室內導航等前沿科技領域的研究熱點。
在圖像語義分割領域,以深度學習為代表的機器學習技術不斷取得更好的成績,逐漸替代了傳統(tǒng)的分割方法。相較于傳統(tǒng)的分割方法,基于深度學習的分割方法可以通過搭建深度學習網(wǎng)絡自主學習、提取圖像的特征,從而進行端到端的分類學習,這樣可以有效地提高語義分割的速度和精度。
2015年,Long等[6]首次提出了全卷積網(wǎng)絡(Fully Convolutional Networks,F(xiàn)CN)用于語義分割領域,它將卷積神經(jīng)網(wǎng)絡中用于圖片分類任務的全連接層全部轉化為卷積層,并且引入反卷積層及跳躍結構,確保了網(wǎng)絡的穩(wěn)定性和魯棒性。隨著FCN的出現(xiàn),深度學習正式進入圖像語義分割領域[4]。
作為在醫(yī)學圖像分割領域中最常用的模型,U?Net[7]以其最典型的U型對稱結構被人熟記,U型對稱結構的兩側分別做下采樣操作和上采樣操作。其中通過下采樣可以獲取圖像的上下文信息,而上采樣可以對語義分割的邊界實現(xiàn)精準定位,這樣使得模型可以在訓練較少數(shù)據(jù)的情況下具有較高的分割能力。同年,一個名為SegNet[8]的語義分割模型問世,其采用編碼器?解碼器結構來對圖像進行語義分割,并利用maxpool的索引進行上采樣,從而節(jié)省了網(wǎng)絡模型的內存。
Google團隊的DeepLab系列的語義分割模型也在語義分割領域不斷進步。DeepLabv1[9]是由深度卷積神經(jīng)網(wǎng)絡(DCNN)和全連接的條件隨機場(CRF)構成,這樣可以有效地解決深度卷積神經(jīng)網(wǎng)絡定位不精確的問題。而DeepLabv2[10]語義分割模型在DeepLabv1的基礎上進行了創(chuàng)新,在模型結構上融合了空洞空間卷積池化金字塔(ASPP)模塊。該模塊可以有效地提高網(wǎng)絡分割能力。同年改進的DeepLabv3[11]版本問世,其核心思想是改進 ASPP結構并引入了批量歸一化層,從而提升網(wǎng)絡的分割精度。而最新的 DeepLabv3+[12]語義分割模型在DeepLabv3的基礎上增加了編解碼器和Xception主干網(wǎng)絡,提高了網(wǎng)絡語義分割的速度和精度。
此外,Zhao等[13]提出的 PSPNet語義分割模型引入了金字塔池化模塊,這樣可以使語義分割網(wǎng)絡提高獲取圖像全局上下文信息的能力。以及He等[14]提出的 Mask?RCNN 語義分割模型,其主要對Faster?RCNN[15-16]模型進行了擴展,在其基礎上增加了用于分割任務的網(wǎng)絡分支,采用 ROIAlign替代Faster?RCNN 中的 RoIPooling,同時將殘差網(wǎng)絡[17]與特征金字塔網(wǎng)絡(Feature Pyramid Network,F(xiàn)PN)[18]相結合用于對圖像進行特征提取,使得網(wǎng)絡在檢測到目標的同時對其實現(xiàn)高質量地分割。
大量實驗表明,基于深度學習的圖像語義分割算法在處理圖像語義分割方面都具有較好的表現(xiàn)。然而不停電作業(yè)環(huán)境復雜,且對分割精度要求較高,傳統(tǒng)的語義分割模型并不能滿足工作需求。為此本文提出了一種基于改進Mask?RCNN的配電線路語義分割方法,對配電線路實現(xiàn)精準的語義分割。
Mask?RCNN[14]是一個非常靈活的框架,可以完成目標檢測[15-16]、語義分割等多種圖像處理任務。Mask?RCNN主要包含以下3個部分:
(1)主干網(wǎng)絡。在 Mask?RCNN模型里采用ResNet50/101+FPN模型作為主干網(wǎng)絡,運用了表達能力較好的算法進行特征提取,并且采用特征金字塔網(wǎng)絡進行多尺度數(shù)據(jù)的提取。
(2) 區(qū)域推薦網(wǎng)絡(Region Proposal Network,RPN)。 Mask?RCNN 中仿照 Faster?RCNN 中的 RPN網(wǎng)絡沒有進行修改,只是將FPN網(wǎng)絡與RPN網(wǎng)絡結合起來。
(3)感興趣區(qū)域校正(Region of Interest Align,RoI Align)。 Mask?RCNN 采用RoI Align技術選取感興趣區(qū)域。RoI Align的輸出是由候選區(qū)域映射得出尺寸固定的特征圖,這也是Mask?RCNN網(wǎng)絡的創(chuàng)新點之一。RoI Align舍棄了量化運算,運用雙線性插值函數(shù),得到像素點上的灰度大小,這種做法就將整個特征聚集過程連續(xù)化了。
傳統(tǒng)Mask?RCNN在配電線路分割中,分割表現(xiàn)不好,如圖1所示,出現(xiàn)斑塊狀分割結果,甚至無法分割。這主要是由于配電線路是大長寬比的物體,在有限的訓練樣本中,測試集的尺度變化和旋轉變化與訓練樣本有較大的差異,使得傳統(tǒng)的Mask?RCNN無法完成比較好的分割效果。
圖1 傳統(tǒng)的Mask?RCNN分割效果
為了保證網(wǎng)絡對大長寬比配電線路的分割精度和速度,本文將對 Mask?RCNN的 Mask分支進行修改。
(1)主干網(wǎng)絡的修改
本文以ResNet101作為主干網(wǎng)絡。ResNet101的網(wǎng)絡結構如圖2所示。
圖2 ResNet101網(wǎng)絡結構細化圖
借鑒InceptionV2的思路網(wǎng)絡,針對圖2中的Input stream模塊,本文對 Mask?RCNN主干網(wǎng)絡(ResNet網(wǎng)絡)拆解大核卷積,即將大核卷積由多層小卷積替代,這樣可以通過加深網(wǎng)絡深度達到原有大核的表現(xiàn)能力。本文使用的網(wǎng)絡改進方法如圖3所示。改進后的網(wǎng)絡在加快網(wǎng)絡計算速度的同時,又減小網(wǎng)絡過擬合的概率。
圖3 對Input Stream模塊的改進
(2)特征金字塔網(wǎng)絡(FPN)階段的改進
在 FPN 階段,借鑒 CoordConv[19],創(chuàng)建一個與輸入相同的空間大小的張量,其中包含像素坐標,這些坐標被標準化至[-1,1],并和原始的輸入進行通道上的數(shù)據(jù)合并。若原始輸入大小為H×W×D,則新輸入張量的大小為H×W×(D+2),其中最后兩個通道為xy像素坐標,從而提供全局位置信息。
由于配電線路設施布置較為密集,測試圖像存在較大的旋轉和尺度變化,傳統(tǒng)的Mask?RCNN模型很難對其實現(xiàn)精準的語義分割,因此本文在對Mask?RCNN的網(wǎng)絡結構進行改進的同時,也對其損失函數(shù)進行了一些改進。本文引入了旋轉錨框(Anchors)[20],這樣可以對大長寬比的目標保持較高的定位精度和速度,即在文獻[15]中的邊框回歸損失中引入新的參數(shù)θ,θ表示邊框在y軸相對于x軸的角度,范圍為[0,π/2],改進后的邊框定義如下
式中,x、y、θ、w和h分別表示邊框的中心坐標、旋轉角度及其寬度和高度;x、y,xa、ya,x?、y?分別表示預測框、錨框和真實框坐標。本文將改進后的邊框回歸損失函數(shù)定義為
式中,N代表錨框的個數(shù),i代表邊框的索引值,其中包含 (x,y,w,h,θ) 5 個參數(shù);為真實值標簽,當錨框與真實框的IoU(Intersection over Union)重疊區(qū)域最大或與真實框的IoU重疊區(qū)域大于0.7,即錨定為正時,的值為1,否則為0;ti表示預測邊界框信息,表示與正錨點相關聯(lián)的真實框信息。同時回歸損失表示為其中R函數(shù)定義為
本文采用的實驗環(huán)境如表1所示,模型訓練過程中各項參數(shù)如表2所示。
表1 實驗環(huán)境
表2 訓練參數(shù)
本文使用高精度視覺相機在不停電作業(yè)現(xiàn)場采集相關配電線路圖片制成數(shù)據(jù)集,數(shù)據(jù)集一共1 800張圖片。首先對數(shù)據(jù)集進行預處理,圖像大小設置為1 920像素×1 080像素。然后用標注工具labelme對數(shù)據(jù)進行人工標注:打開“l(fā)abelme”,調整圖片位置后,點擊鼠標右鍵選擇相應的標記方法,在配電線邊緣任意一點處左鍵單擊,創(chuàng)建起始點,然后沿著圖片中的配電線外圍不斷地增加節(jié)點,都是左鍵單擊的操作,最終回到起點左鍵單擊結束。此時會自動彈出標簽名選擇框,本文只對配電線進行標注,輸入標簽名并點擊確認鍵即可,按照上述方法將圖片中的配電線依次進行標注,最后點擊保存。生成對應的json文件,再轉換為對應的原圖,8位標簽圖和存放標簽名稱的yaml文件。本文選取其中的1 700張圖片用于訓練,100張圖片用于測試。
另外,在模型訓練過程中對數(shù)據(jù)集做以下操作:
(1)圖片縮放。在本文模型的訓練和測試期間,為提升模型訓練速度,需要將數(shù)據(jù)集內的圖片縮放成960像素×540像素。
(2)數(shù)據(jù)增強。為了使輸入圖片滿足網(wǎng)絡架構的需要,本文將去均值、水平翻轉等數(shù)據(jù)增強也應用于訓練中。
(1) 像素精度(Pixel Accuracy,PA):分類正確的像素點數(shù)和所有的像素點數(shù)的比例。
式中,i,j為像素在圖像中的橫縱坐標值,pii表示正確預測的像素點(即屬于某一類別且預測也為該類),pij表示錯誤預測的像素點(即本屬于某一類別卻預測為其他類別的像素點)。
(2) 平均交并比(Mean Intersection over Union,MIoU)。
(3) 平均精度(Average Precision,AP)。
式中,N為數(shù)據(jù)集中圖像的總數(shù),P(k)為識別出的圖像為k時的查準率,Δr(k)為查全率在k與k-1之間的差值。
本文基于改進的Mask?RCNN模型對10 kV配電線路進行語義分割,可視化分割結果如圖4所示。為驗證本文提出的方法對配電線路進行語義分割的效果,將本文提出的方法與 U?Net、Mask?RCNN 網(wǎng)絡分割結果進行對比,對比結果如圖5所示。
圖4 配電線路分割結果圖
圖5 本文方法與其他算法對比結果
由圖5可見,本文提出的方法在不停電作業(yè)的復雜背景下可以對配電線路實現(xiàn)精確地分割,且分割邊界的細節(jié)表現(xiàn)較好,尤其是對較大長寬比的目標。
本文選擇了近年來提出的幾個比較經(jīng)典的語義分割算法與本文提出方法做比較,在本文建立的數(shù)據(jù)集上,采用平均精度(AP),像素精度(PA),平均交并比(MIoU)及分割速度指標進行評估。定量指標見表3。
從表3可以看出,本文算法在平均精度(AP),像素精度(PA),平均交并比(MIoU)及分割速度指標上顯著優(yōu)于U?Net和Mask?RCNN方法。
表3 本文算法實驗結果與其他算法對比
本文提出了一種基于改進Mask?RCNN的配電線路精準語義分割方法,采用高精度視覺相機作為信息輸入,基于改進的Mask?RCNN語義分割網(wǎng)絡,對配電線路進行語義分割工作。實驗結果證明,本文提出的方法可以在復雜的不停電作業(yè)環(huán)境下對配電線路實現(xiàn)精準的語義分割。下一階段研究方向是在保證分割精度的同時加快分割速度。