項新建, 潘 磊, 吳海騰
(浙江科技學院電氣工程及其自動化學院,杭州 310023)
隨著我國變電站的大力建設,維護電力變壓器的穩(wěn)定運行是提供居民優(yōu)質電力的重要保證[1]。呼吸器在變壓器中往往是易受忽略的器件,但是它對于變壓器的長久運行起到關鍵的作用。變壓器呼吸器的作用是隔絕外部空氣中的水汽,也稱干燥劑與吸濕器,當變壓器油溫變化時,它能夠過濾外部空氣水汽,以免變壓器受潮,使變壓器中水含量達標,保證變壓器油的絕緣強度。由此,為了保證變壓器的穩(wěn)定運行,時刻檢查變壓器呼吸器是必不可少的。隨著人工智能的發(fā)展,機器巡檢慢慢出現在變電站中,如室外的巡檢機器人,室內的掛軌機器人,高壓線的無人機等[2~5]。由于人工檢測電力設備缺陷時效率低、成本高,并且還要考慮人身安全等因素,因此,高效利用巡檢機器人檢測缺陷將成為趨勢。
缺陷檢測主要分為目標定位與缺陷識別,早期人們往往都是利用傳統(tǒng)機器視覺的技術。趙永俊等[6]使用模板匹配定位變壓器,然后根據灰色圖的直方圖信息來保證定位圖效果;翟永杰等[7]改進了模板匹配,先通過AdaBoost算法初步識別變壓器來減少背景的影響,再用模板匹配來精確定位,以達到減少誤檢率的效果;唐芳莉等[8]則采用特征匹配機器學習等算法來定位電力行業(yè)的檢測設備。但是,由于模板匹配運算速度較慢,易受到背景與光照的影響,往往不具有適應性與泛化性。Hu等[9]利用矩形檢測法來提取呼吸器區(qū)域,然后在該區(qū)域中進行顏色直方圖統(tǒng)計,根據藍色與粉色的比例來判定是否異常;辛明勇等[10]利用二值分割提取呼吸器區(qū)域,在HSV彩色空間上進行H和S的二維統(tǒng)計來判定異常。但在圖像分割和顏色直方圖的統(tǒng)計上,還是無法解決環(huán)境帶來的影響。
近年來,隨著深度學習的發(fā)展,且卷積神經網絡在目標檢測上具有速度快,泛化性較好的特點。李瑞生等[11]提出了SSD卷積神經網絡來檢測呼吸器區(qū)域,通過計算HSV顏色分量總面積的占比來判定異常;黃銳勇等[12]提出了新型無框CenterNet檢測模型來定位電力設備;Zhao等[13]在判定呼吸器異常時,將所測RGB參數帶入公式中,和給定閾值相比較判定異常。然而,利用傳統(tǒng)方法來判定呼吸器異常,總會受到光照與背景的影響,泛化性差,并且變電站中呼吸器不僅僅有顏色異常,還有外觀異常比如破損、污漬等,都影響著變壓器的穩(wěn)定運行。
本文提出了一種特征匹配與深度學習相結合的呼吸器缺陷檢測方法,首先在巡檢機器人拍得圖片上做SURF特征匹配,能夠得到背景少的高質量大圖,同時還起到了呼吸器初步定位的效果,然后從變電站收集異常數據,利用改進得SSD目標檢測算法直接檢測異常種類。該方法使得巡檢機器人能夠成功檢測變壓器呼吸器的多種異常,提高了檢測準確率。
SURF(Speeded Up Robust Features)[14]算法作為SIFT(Scale-Invariant Feature Transform)算法的優(yōu)化版本,它主要優(yōu)化的是計算速度,體現在特征點檢測的部分。SURF構建了Hessian矩陣,利用Hessian矩陣的行列式來確定特征點的位置。同時為了考慮尺度不變性,在構建Hessian矩陣時,先對圖片進行了高斯濾波。Hessian矩陣表達式如下:
當Hessian矩陣的行列式達到最大值,就是需要測得的特征點的位置,為了簡化行列式的計算過程,SURF算法將盒式濾波器來近似代替了高斯濾波器,如圖1所示。圖1(a)是高斯濾波器分別在y方向和xy方向二階偏導數,由圖可見,原本的高斯核是服從正態(tài)分布,從中心往外,系數越來越低,所以將黑色的部分近似為-2,白色的部分近似為1,灰色的部分為0,最后就得出了盒式濾波器(見圖1(b)),而9×9的盒式濾波器近似于σ=1.2的高斯濾波器,這樣就得出了Hessian矩陣的行列式的近似式:
圖1 高斯濾波器和盒式濾波器轉化圖
式中:Dxx、Dyy分別表示盒式濾波器在x、y方向的二階偏導;ω表示由于將盒式濾波器代替了高斯濾波器的近似誤差,這里取0.9。
在構建特征點描述符時,SURF算法利用Haar小波特性,在16個子區(qū)域中,分別統(tǒng)計水平、垂直方向的Haar小波特征之和,水平、垂直方向的Haar小波特征絕對值之和4個特征向量,一共有64維特征向量作為SURF特征點描述符,而SIFT算法是統(tǒng)計子區(qū)域8個方向,共有128維特征向量,可以看出SURF算法大大地減少了計算量。
SSD(Single Shot MultiBox Detector)[15]作為一種端到端的網絡結構,雖然在精度上沒有以Rcnn[16]為代表的二階段網絡結構高,但是其具有實時檢測的性能,在工業(yè)領域廣泛應用。相比同類型的端到端網絡,SSD具有更多的特征層進行采用,每個特征層擁有較多的先驗框,所以預測結果較為準確。
SSD網絡結構主要分為三部分:①首先是主干特征提取網絡結構,利用了經典的VGG16網絡,同時對VGG16網絡結構做了點改變,將第6和第7層的全連接網絡改為了3×3和1×1的卷積神經網絡。②接著4組1×1和3×3的卷積神經網絡,得到4個不同尺度的特征層。③預測層。在提取的6層不同尺度的特征層上做兩次卷積神經網絡,分別得到先驗框的位置預測和種類預測,最后經過非極大值處理,得到最終的預測框。如圖2所示SSD網絡結構模型,其中Conv4_3是表示第4層的第3次卷積網絡,fc6和fc7代表原本VGG16結構中的第6和第7層的全連接層,現改變?yōu)榫矸e層。其中傳到檢測層的6個特征層分別是Conv4_3卷積層、fc7卷積層、Conv6第二次卷積層、Conv7第二次卷積層、Conv8第二次卷積層和Conv9第二次卷積層。
圖2 SSD網絡結構模型
由于本次實驗處理的圖片是目標大圖,選取SSD300模型,上述步驟的6個特征層每個像素中默認的先驗框數量分別為4、6、6、6、4、4,SSD300最后預測的先驗框一共有8 732個,可以看出SSD是密集采樣模型。
根據目前的國家電網規(guī)定,呼吸器里的硅膠變色程度到達2/3時需要人員更換,但是真實情況中呼吸器硅膠變色狀態(tài)并不是整齊的粉紅變色,也可能是斑點狀的白色,并且呼吸器外觀破碎也會導致安全隱患,以往基于顏色特性的檢測方法在此并不適用,所以本文提出了基于特征匹配與深度學習結合的呼吸器缺陷檢測方法。
首先,利用腳本圖片與巡檢機器人上傳的原圖做特征匹配,得到背景較少的定位大圖,然后使用目標檢測算法直接回歸預測該呼吸器狀態(tài),呼吸器缺陷識別流程如圖3所示,呼吸器缺陷識別具體步驟如下:
圖3 呼吸器缺陷識別流程
(1)特征匹配。將相機拍攝的原圖與腳本圖片做SURF算法特征提取,然后利用最近鄰算法匹配特征點,當匹配的特征點數量滿足閾值時,裁剪出匹配的區(qū)域,最后得到定位大圖。其中特征匹配結果見圖4,圖4(a)是制作的腳本圖,將上傳巡檢機器人云臺;圖4(b)是巡檢機器人拍攝的原圖;圖4(c)是經過特征匹配后的定位放大圖。
圖4 匹配腳本和效果圖
(2)目標檢測。保存SSD目標檢測訓練后的模型,在定位放大圖上做目標檢測,回歸預測該目標三種狀態(tài):變色、破損和正常。
根據上文SURF特征匹配算法找出的特征點,需要從其特征點中裁剪出呼吸器定位大圖,裁剪的具體步驟如下:
(1)FLANN快速最近鄰匹配算法。FLANN主要分為建立K-D樹和K-means樹算法,本文選擇了運算速度較快的建立K-D樹算法。同時,提取匹配同一點的最近的兩個關鍵點,若最近的距離除以次近的距離的比率小于0.7,則保留最近關鍵點最為最佳匹配點;反之,該點沒有最佳匹配點。
(2)計算變換矩陣。上一步驟中,得到腳本圖和機器人拍攝圖對應的匹配點坐標,若匹配點的坐標數量大于閾值時,計算該腳本和拍攝圖片之間的變換矩陣。
(3)透視變換。根據腳本圖的長寬坐標信息和上一步所求的變換矩陣,經過透視變換得到拍攝圖的定位坐標,根據坐標裁剪出并放大該圖。裁剪過程如圖5所示,腳本圖片和拍攝圖能生成較多的匹配點,從而較容易裁剪出腳本相似區(qū)域。
圖5 匹配裁剪效果圖
雖然經過特征匹配的定位放大,變壓器呼吸器更容易識別,但是實際環(huán)境中復雜設施的特征仍然被放大,帶來了一定的干擾,因此增強圖像中呼吸器中的特征是有效的方法之一。
本文引入了通道注意力機制SE網絡模型,通過特征層的通道信息,提取并增強呼吸器的特征,同時抑制背景環(huán)境特征信息,在多次迭代學習中,使得深度學習網絡更加注意到呼吸器目標的特征,從而提高缺陷識別率。
SE通道注意力機制網絡具體設計如圖6所示,注意力機制在圖6的右端,該網絡分為兩個階段:壓縮和激勵階段,在壓縮階段將特征層全局池化為實數,通道數保持不變;在激勵階段使用兩層全連接網絡,通過網絡迭代學習,使用歸一化函數得到每個通道的權重系數,將通道的權重系數分別與特征層相乘,以達到增強抑制特征層的目的。
圖6 SENet網絡結構圖
由于SSD網絡的檢測模塊由6個有效特征層構成,本文改進的SSD網絡將在這6個有效特征層改動,具體改動如圖7所示。本文將在6個有效特征層中分別加入了SE通道注意力機制網絡,由于該6個有效特征層有著不同的分辨率,SE通道注意力機制起到了對大中小不同目標做到了增強和抑制的效果。
圖7 改進的SSD網絡結構
SSD是密集采樣模型,對于特征層的每一個像素都要生成預選框,就會產生正負樣本數量極其不平衡的缺點,不僅使得在訓練時負樣本Loss值很大,而且降低了預測精度。本文收集的數據都是單一的變壓器呼吸器缺陷數據,導致了正負不平衡的問題愈劣。如圖2所示,SSD300模型在經過Conv4_3層時,產生的38×38的特征層上存在5 776個預選框,但是其中大部分是負樣本。為了加快訓練速度,取隨機四倍正樣本的數量的負樣本用于訓練。
本文的數據集來源于巡檢機器人現場拍攝和自己拍照收集完成,一共1 181張圖片,通過了旋轉、裁剪、拼接、高斯濾波等數據增廣到2 760張,分為1 960張訓練集和800張驗證集。
訓練平臺采用NVIDIA GTX1660TI型GPU、英特爾Core(TM)i7-9750H CPU處理器,操作系統(tǒng)為Linux Ubuntu 16.04,并搭建了Opencv4.4和CUDA10.0常用環(huán)境,深度網絡框架使用Pytorch框架。為了加快損失函數的收斂,開始先凍結一部分參數,將學習率設為0.000 5,當迭代次數到達500時,學習率設為0.000 1,解凍訓練至迭代次數為3 000結束。
本次實驗從收集到的數據集中隨機抽取了800張圖片作為驗證集,其中硅膠變色有524張樣本,正常的呼吸器有132張樣本,外觀破損有144張樣本。對此測試集主要統(tǒng)計缺陷檢測情況,結果如表1所示,本實驗的識別準確率在98%左右。因為缺陷檢測主要應用在巡檢機器人上,對于缺陷檢測的精確度要求較高,而檢測方法是拍照檢測,并不要求做到視頻實時檢測。
表1 不同模型缺陷檢測結果
精確度是目標檢測算法中常用的指標,表示預測為正的樣本中實際也為正的樣本比例,反映著目標檢測的精度,精確率公式如下:
式中:Ntp表示檢測為正樣本在實際正樣本中的個數;Nfp表示檢測為正樣本在實際負樣本中的個數。由于現在工業(yè)巡檢機器人是拍照檢測,所以本實驗時間指標是單張圖片檢測的處理時間。
為了體現本實驗的優(yōu)勢,將近年來比較常用端到端的不同算法做對比,如表1所示,在沒有使用SURF特征匹配算法時,Centernet無框檢測算法在變色狀態(tài)準確率到達最高的91.3%,但是破損的準確率較低;Yolov3在變色和破損狀態(tài)上取得較穩(wěn)定的準確率,但是單張圖片處理速度上是其他兩種算法近乎2倍;而SSD算法在變色和破損狀態(tài)的準確率很穩(wěn)定,最突出的是處理時間最快的。
本實驗在SSD缺陷檢測的基礎上,增加了SE注意力機制模塊,在缺陷檢測上均增加了5%的準確率;再使用了SURF特征匹配來定位大圖檢測,通過特征點匹配來定位和腳本相似的位置,本次實驗方法在變色狀態(tài)識別精確率上到達98.5%,在外觀破損識別精確率上到達98.0%,均達到最高精確度,單張圖片所用時間為0.46 s,由于實驗應用在機器人定點拍照檢測,所以基本滿足。
圖8是本實驗預測效果圖,圖8(a)是正常狀態(tài)下檢測圖,圖8(b)是斑點式變色檢測圖,圖8(c)是常見的自下而上的變色的檢測圖,圖8(d)是表面污穢檢測圖,圖8(e)是硅膠完全失效檢測圖,圖8(f)是外觀破裂檢測圖。圖8(b、c、d)用一般彩色空間檢測識別率會比較低,尤其是斑點式變色,白色斑點較難識別。圖8(f)外觀破裂,可以看出其中硅膠也開始變色了,所以有必要識別更換。綜上,本實驗方法比較成功的識別了變電站中較多的呼吸器缺陷問題。
圖8 實驗測試效果圖
針對巡檢機器人拍攝圖片背景復雜,呼吸器占圖片比例太小問題,提出了使用SURF快速特征匹配算法,經過制作腳本圖片,從機器人拍攝的圖片得到背景少的定位大圖,來提高呼吸器缺陷識別率。由于檢測圖片是呼吸器定位大圖,使用SSD300目標檢測模型,這樣能快速獲得缺陷目標,同時深度學習目標檢測和現有顏色空間檢測對比,能夠檢測出更多種類的缺陷問題。根據本文的實驗對比,SSD模型是幾種深度模型速度較快且識別率穩(wěn)定的算法模型,結合SURF特征匹配算法,能夠在實際場景中快速且穩(wěn)定的識別出呼吸器缺陷。本文提供了呼吸器檢測的一種新思路,但是仍有些不足:①由于變電站呼吸器較多,制作腳本圖片耗費大量人力資源,每當換一個變電站時,又必須重復工作。②特征匹配在室內效果較好,但在室外光照影響較大。所以如何能夠快速且穩(wěn)定地定位呼吸器,是后面科研的主要問題。