何永春, 申永偉, 吳 濤, 陳淑波
(國網內蒙古東部電力有限公司興安供電公司, 烏蘭浩特 137400)
隨著變電站自動化技術的日益發展,變電站正不斷向智能化方向發展。在電力狀況自動監控領域,變電站已基本實現無人值班運行模式。即將將變電站現場的情況、設備狀態等通過視頻圖像傳輸到調度中心(集控站)。調度中心通過“遙視”的方式,控制調節現場的設備,并作出合適的應對措施。然而傳統的遙視系統雖能提高變電站的自動化水平,但由于現有的監測技術,管理等方面的原因,在實際應用中,仍需要工作人員遠程監控并及時發現異常,從而作出判斷并進行后續處置,難以實現真正意義上的無人值守,獲得顯著的減員增效。
基于以上問題背景,變電站的儀表自動檢測任務亟需解決。具體來說,要求在場景圖像中檢測出儀表目標,并且實現讀數的自動獲取。在實際的應用中,儀表檢測存在著如下問題:一是儀表類型多樣,不同類型儀表外觀相差較大,比如矩形儀表和圓形儀表,會給檢測提出更高要求;二是場景環境復雜,不同天氣(如雨、霧、雪等)以及儀表所處背景等因素都會給檢測帶來影響;三是實際場景中,由于成像距離、視角等因素,獲得的儀表圖片質量參差不齊,儀表目標的尺度也有較大的差異,容易出現漏檢的情況。因此,研究復雜場景下,多尺度儀表檢測技術仍具有重要的學術和應用價值。
針對儀表檢測問題,傳統的基于計算機視覺的方法中,方立[1]提出一種多尺度儀表檢測方法,通過粗檢測、基于雙級聯參數回歸的儀表圖像校正和后驗驗證方法,實現了較高精度的儀表檢測。近期,張雪飛等[2]通過利用(scale-invariant feature transform, SIFT)特征對多類指針儀表進行了檢測。這些方法運行速度較快,在特定場景下能獲得不錯的識別效果,但由于所采用的傳統目標檢測特征和分割算法容易受到復雜背景和儀表干擾的影響,因此這些方法往往要求較好的成像環境和較高質量的儀表圖像,在實際場景中或儀表圖像存在干擾的條件下,識別性能不能令人滿意。
近年來,深度學習在計算機視覺領域的發展已非常成熟[3],越來越多的視覺問題通過應用深度學習方法獲得了突破。深度學習方法利用搭建的多層網絡來處理數據,從大量的標注樣本中學習任務所需要的特征并進行提取,避免了手工設計特征的局限性。其中,海量的電氣設備圖像通過深度學習方法實現了快速準確的判讀和分類[4];基于深度學習的巡檢機器人識別算法[5]也有較多研究。深度學習在電力狀況自動監控領域有著較好的應用前景。
在此背景下,基于深度學習的儀表檢測工作越來越多。劉葵[6]較早提出采用Faster RCNN進行儀表檢測。在此基礎上, Liu等[7]通過針對性優化Faster RCNN,利用多尺度訓練、加入更小的錨框尺寸以及使用在線難例挖掘(online hard example mining, OHEM)等方法提升模型的魯棒性和檢測精度。與此類似,邢浩強等[8]構建9層的卷積神經網絡實現了儀表目標的檢測;周楊浩等[9]提出通過利用全卷積網絡(fully convolutional networks, FCN)檢測儀表;徐發兵等[10]在原來的YOLO9000基礎上進行改進,添加濾波器和批量標準化,并且通過K-means聚類來獲得預設錨框尺寸,加快bounding box的回歸。雖然上述這些方法的檢測效果有了比較明顯的提升,但是同樣在實際應用中,在復雜干擾條件下性能容易受到影響。
因此在現有的基于深度學習的儀表檢測方法的基礎上,針對存在的問題,提出一種基于注意力機制的多尺度儀表檢測算法。首先,針對實際應用中儀表背景復雜、成像效果差異大的問題,設計基于空間注意力機制的特征提取網絡,通過建模特征的長距離依賴,增強特征的表達能力,有效降低了虛警。其次,針對性地提出一種自適應的特征選擇模塊,對不同階段的特征圖進行權重調整,增強網絡對多尺度目標的檢測能力。并對實際的監控視頻進行測試,獲得檢測精度和處理速度。
所提出的儀表檢測模型結構如圖1所示,整體模型采用Faster RCNN[11]作為基準網絡,紅色框中為主要的改進部分。首先采用基于空間注意力的主干網絡提取特征,突出特征的位置信息,提高特征圖的表達能力;其次引入自適應特征選擇模塊對特征金字塔中不同尺度的特征進行選擇;最后將處理后的多尺度特征圖用于生成候選區域,利用Faster RCNN的檢測網絡進行分類和回歸,獲得最終結果。下面將分別對基準網絡和改進部分進行詳細介紹。

圖1 儀表檢測模型結構示意圖
基準網絡模型采用Faster RCNN目標檢測網絡,該網絡由選擇搜索(selective search)算法以及RCNN[12]和Fast RCNN[13]發展而來。主要由提取特征的主干網絡、生成候選區域的區域候選網絡(region proposal network, RPN)以及最后的檢測網絡構成。
(1)主干網絡主要用于提取輸入的待檢測圖像的特征,通過卷積神經網絡中的卷積、池化等操作獲取豐富的特征圖。本實驗的主干網絡選為ResNet50[14],根據提取到的特征圖的尺度大小,將特征圖大致分為5個階段,分別命名為C1、C2、C3、C4、C5,C3~C5階段的特征圖會被輸入到特征金字塔結構中進行特征融合,處理后的多尺度特征將復用于區域候選網絡和檢測網絡。
(2)區域候選網絡主要用于生成候選框對目標進行定位。定位任務包括兩個部分,在生成了一系列錨框后,一方面判斷生成的錨框是否包含目標,即屬于前景還是背景;另一方面通過計算候選框回歸時候需要的偏移量來修正錨框的位置,使得輸出的候選框中背景部分盡可能少。
(3)檢測網絡需要完成最后目標的分類和精確定位。首先對感興趣區域(region of interest, ROI)進行池化,獲得候選區域的特征圖,通過一個全連接層進行最終分類,同時再次計算回歸時的偏移量進一步定位最終檢測框。
與通用的目標檢測任務不同,由于變電站中儀表的背景環境復雜,高壓變電箱、管道以及罐體等多種多樣的背景使得儀表的準確檢測較為困難,容易出現虛警。通常情況下,針對復雜背景下的目標檢測任務,常規的手段是通過增大網絡提取特征的感受野,提取目標周圍背景信息,利用背景區域提供的語義信息對區域內容進行篩選,從而進一步對背景和目標進行鑒別。
在原來的特征提取網絡上,采用空間注意力(spatial attention, SA)[15]機制對特征提取網絡部分進行優化,捕獲目標特征的長距離依賴提高特征表達能力,提升儀表檢測的效果。設計的SA模塊主要實現的操作可以抽象為三個部分,輸入數據為C×H×W尺寸的矩陣。第一部分是將輸入矩陣進行維度處理并通過Softmax函數進行調整,以便后續進行矩陣相乘;第二部分則是通過Transpose轉置操作,對矩陣進行轉置,并右乘轉置前的矩陣,獲得空間注意圖(HW×HW);最后將空間注意圖加權到原始特征上獲得增強后的特征圖。具體示意如圖2所示。

圖2 SA模塊結構示意圖
由于空間注意力模塊新引入的參數量不多,因此可以應用到特征提取的不同階段而不會顯著增加計算開銷。本實驗中,為了建模待測目標特征的長距離依賴,將SA模塊添加在主干網絡的最后兩個階段。這種做法對于高層特征來說增加的計算成本更小,同時更有效地獲取長距離依賴信息,提高特征的辨別性。
在深度卷積神經網絡中,由于一系列的卷積池化操作,高層特征感受野大、語義信息豐富,但空間細節信息不足。相比之下,低層特征感受野較小,具有更多的細節信息,有利于小尺度目標的檢測。現有的檢測器往往對于大尺度的顯著目標檢測性能較好,而對于小尺度目標容易出現漏檢情況。在實際的儀表檢測中,近處大尺度的儀表檢測準確率很高,但相對較遠的小尺度儀表往往無法檢測出來。針對這一問題,檢測算法對主干網絡提取的特征金字塔在不同階段的層次上進行特征選擇,通過設計的自適應特征選擇模塊(adaptive feature selection module, AFSM),對不同階段的特征圖進行權重調整,通過自適應地選擇不同尺度特征,增強網絡對多尺度目標的檢測能力。
AFSM結構如圖3所示。原來的特征金字塔各級特征表示為{C2,C3,C4,C5},AFSM通過通道注意力獲得加權向量V,并將其與原始的特征圖進行相乘。此過程計算公式為

圖3 AFSM結構示意圖
Si=viCi
(1)
式(1)中:vi是第i階段特征圖的權重,通過網絡自適應學習得到。具體來說,首先將各級特征圖進行全局池化操作,獲得一個一維向量,之后通過1×1卷積和Sigmoid函數將該向量降維至特征金字塔輸入的階段數,此處取為4。
實驗使用自建的儀表檢測數據集。該數據集主要包含了不同形狀下多種類別的圓形儀表和方形儀表。數據集總共包含3 995張圖像,共4 644個儀表盤,標注格式為PASCAL VOC格式。按照7∶3將數據集隨機劃分為兩部分,其中訓練集和驗證集包含2 797幅圖像,測試集包含1 198幅圖像。實驗中,所有圖像的尺寸調整為400×640像素作為檢測器的輸入。
本算法使用在ImageNet數據集上預訓練的ResNet50網絡權重作為模型的初始化權重。使用隨機梯度下降法對網絡訓練40輪,批處理量設置為4。初始學習率為0.005,并在第20輪和第35輪時下降1倍,權重衰減設置為0.000 1,動量參數設置為0.9。所有模型使用Python語言進行開發,基于深度學習框架PyTorch1.1實現。實驗都在搭載32 G內存和NVIDIA Tesla V100 GPU的服務器上實現。
為了評估所提方法對儀表目標的檢測效果,本實驗使用精度(precision)、召回率(recall)、F1值以及平均精度(average precision, AP)作為模型的評價指標,其中精度和召回率的定義為

(2)

(3)
式中:NTP是正確檢測到的目標數量;NFP代表的是錯誤檢測到的樣本數量;NFN表示未檢測到的目標數量。當檢測框與真值框的交并比(intersection-over-union,IoU)大于0.5時,該檢測框被視為正確的。F1值是精度和召回率的調和平均值,計算公式為

(4)
AP指標用于衡量檢測器綜合質量。將所有輸出結果按照置信度從高到低的順序進行排列,然后通過計算不同閾值i下的精度和召回率繪制PR曲線(precision-recall curve),AP反映的是PR曲線下的面積大小,即

(5)
所提的儀表檢測算法對基準網絡Faster RCNN進行了兩部分的改進。為了驗證每種改進的效果,首先進行了消融實驗。實驗對比結果如表1所示。可以看出,兩種改進都可以在不同程度上提升檢測器的性能。與基準網絡相比,算法在AP指標上提升了7.6%。

表1 各改進部分效果對比
在使用SA結構進行改進后,與基準實驗相比,召回率提高了約1%,虛警率有一定的下降。圖4為部分實驗結果的對比圖。從左側基準網絡的實驗結果可以發現,對于直接獲取的視頻圖像,當存在干擾時,會將與儀表形狀類似的目標進行誤判。而使用SA結構改進后,對于這類干擾情況,網絡仍能夠較好地進行區分,這說明使用SA結構能夠對預測框中目標類別的判斷起到積極的作用。

圖4 SA結構的檢測結果圖
改進后的AFSM結構與基準網絡相比在AP指標上提升了約2.3%。兩者的檢測效果對比如圖5所示。可以看出,AFSM能夠有效提升多尺度目標的檢測效果。對于小尺度目標,基準網絡容易出現漏檢情況;對于較大尺寸目標,則可能將儀表的表盤與底座檢測為兩個目標。而使用AFSM結構改進后的網絡,一方面能夠有效檢測出小目標,一方面也能夠更加精確地檢測出復雜的大尺寸目標。這是由于使用特征選擇對特征圖權重調整后,低階段的特征圖提供了更豐富空間細節信息,并基于此補充了語義信息,提升了整體的檢測性能。

圖5 AFSM的檢測結果圖
設計的儀表檢測算法與經典目標檢測算法對比結果如表2所示。其中RetinaNet[16]和Cascade RCNN[17]分別是基于深度卷積神經網絡的單階段、多階段檢測算法代表。從表2中可以看出,在F1和AP綜合評價指標上都取得了最優的效果。

表2 不同檢測算法性能對比
圖6是不同檢測方法的效果對比圖。對于單階段的RetinaNet而言,小目標的漏檢問題比較嚴重。雙階段的Cascade RCNN雖然檢測精度有提升,但虛警問題仍然存在。所設計算法在小尺度目標漏檢以及虛警問題上,都有不錯的表現,獲得的檢測框也更加準確,為后續進一步進行讀數識別等處理奠定了基礎。

圖6 不同檢測方法結果對比圖
為了驗證實際效果,以某地(鐵嶺)變電站監控視頻為測試對象,將其拆分成多幀圖像后進行檢測。該視頻長度約為15 s,處理速度為22幀1秒,總共可以獲取圖像約為330張測試對象。部分的實際檢測結果如圖7所示,所用時間為33.6 s。

圖7 變電站儀表監控視頻的檢測結果
由于變電站監控視頻一般仍然采用攝像頭拍攝,機位較為固定,且儀表變化較為緩慢,實際中連續兩幀之間的相似性極大。因此測試結果中接近10幀/s的處理速度完全能夠滿足實際需要。

本文提出了一種基于注意力機制的多尺度儀表檢測算法。首先,針對實際應用中儀表背景復雜、成像效果差異大的問題,設計了基于空間注意力機制的特征提取網絡,通過建模特征的長距離依賴,增強了特征的表達能力,有效降低了虛警。其次,針對提出了一種自適應的特征選擇模塊,對不同階段的特征圖進行權重調整,提升了網絡對多尺度目標的檢測性能。在自建的儀表數據集上,與主流檢測方法比,檢測結果有明顯的提升,虛警和漏警情況有明顯改善。同時對實際的監控視頻進行了測試,在實際使用中的精度和速度都能滿足儀表自動檢測的需求。準確快速實現儀表的檢測,能有利于實現電力系統監控領域中的無人值守,達到真正意義上的減員增效的目的。
該算法雖然在檢測效果有一定的提升,但仍有許多改進的地方。首先算法主要針對儀表檢測進行研究,對于后續識別儀表示數需要進行進一步研究;其次儀表檢測的速度以及模型的輕量化部署問題還需要優化。