鐘力強,屈娟娟,姜新麗,黃炎
(1.南方電網(wǎng)電力科技股份有限公司 a.廣東省特殊行業(yè)特種機器人工程技術研究中心;b.中國南方電網(wǎng)電力機器人聯(lián)合實驗室,廣東 廣州 510080;2.廣州新華學院,廣東 廣州 510520;3.許昌開普電氣研究院有限公司,河南 許昌 461000)
變電站是電網(wǎng)電能傳輸?shù)年P鍵節(jié)點,對設備安全的要求較高。傳統(tǒng)人工巡檢勞動強度大,工作效率低,且存在一定的人身安全風險,而固定式視頻監(jiān)控由于盲區(qū)較多,也難以滿足變電站全面巡檢的需求。近年來,大量變電站開始采用機器人執(zhí)行常規(guī)巡檢任務,智能化巡檢逐漸成為行業(yè)的發(fā)展趨勢[1-3]。其中,表計讀數(shù)識別是變電站巡檢工作的重要內(nèi)容[4],如氣壓表、溫度表、油溫表、避雷器表等均為機器人采集表計讀數(shù)的主要對象。然而,目前變電站機器人對表計讀數(shù)的讀取仍以預設模板匹配為主[4-5],這就要求在機器人部署調(diào)試階段,針對每一個表計單獨進行模板歸類、設定識別范圍等工作,不僅部署周期長,可擴展性差,且效果參差不齊,與部署人員的經(jīng)驗、責任心密切相關。
針對指針表計的識別讀數(shù)問題,研究人員從不同角度開展研究。在預處理方面,劉晶[6]等基于視覺識別進一步提高了機器人拍攝的精確程度;黃炎[4]等基于擴展掃描區(qū)域的方法,對模板匹配算法進行改進,提高了讀取準確率。在讀數(shù)算法方面,黃炎[5]等通過設置識別基線,將刻度區(qū)域轉(zhuǎn)化為一維線性信號,并通過灰度突變獲取指針角度;李治瑋等[7]使用最大灰度法計算無指針的儀表模板圖像,然后通過模板圖像與實際圖像相減得到指針位置;施健等[8]使用減影法得到指針位置,然后利用Hough變換計算指針夾角;張文杰等[9]利用視覺顯著性區(qū)域檢測先驗知識,提取儀表圖像指針區(qū)域,再計算指針與橫軸的夾角,最后采用最小二乘法擬合指針夾角與指針刻度之間的線性函數(shù)參數(shù),計算儀表讀數(shù)。上述研究均建立在一定的人工標注(指定模板、劃分區(qū)域、標注圓心刻度等)基礎上,均難以實現(xiàn)對部分或者大部分表計的自動識讀。
針對這一問題,本文融合Faster-RCNN[10](faster region-based convolutional network)識別方法和快速傅里葉變換(fast Fourier transform,F(xiàn)FT)頻域分析等技術進行指針刻度位置識別的研究。首先對表計圖像進行顏色過濾預處理;再通過Faster-RCNN對預處理結(jié)果進行篩選與調(diào)整,從而獲取表盤刻度的初步位置和指針圓心初步位置;最后通過微調(diào)周期、起始位置等操作,實現(xiàn)軸坐標轉(zhuǎn)換后的曲線對齊,以及采用一維線性映射[5]方法獲得指針與刻度的相對位置,實現(xiàn)無人工干預的表計智能識讀。
已有的表計讀數(shù)方法中,典型標注信息如圖1所示,圖1(b)所示輔助線均為人工標注。
圖1 原圖與典型輔助線
以圖1中的空氣壓力表為例,首先對原圖進行分通道顏色濾波和拆分預處理。對圖像進行此類預處理的主要目的是增加算法的普適性和神經(jīng)網(wǎng)絡學習的準確性,降低因表盤顏色設計、光影、反光問題造成的識別誤差,同時也有利于增加樣本量,提高識別準確率。
圖2所示為1(b)的RGB直方圖,各通道上均存在多個峰值,但3個通道并不重合,每個峰值處均為顏色趨向一致的圖像元素。分別對3個顏色通道進行單獨的峰值濾波,進而生成多張圖像,如圖3所示。其中部分通道通過峰值篩選后的部分圖像刻度區(qū)域信息被突出顯示出來,也有部分圖像的刻度信息并不明顯,但并不影響Faster-RCNN的識別與訓練。
圖2 圖1(b)RGB直方圖
圖3 直方圖波峰篩選后的樣例圖像(未列出特征完全不明顯圖像)
預處理后,同一張圖片擴展為10余張黑白圖像。由于變電站表計種類繁多,且部署期間經(jīng)常會遇到新的表計種類,傳統(tǒng)特征識別等方法需要預先對表計特征有所描述,因此考慮使用深度學習方法進行表盤識別。
Faster-RCNN是近年來應用比較廣泛的二階段檢測模型的神經(jīng)網(wǎng)絡方法[11-15],是Ross B. Girshick在2016年結(jié)合RCNN和Fast-RCNN提出的改進算法[11]。相比于傳統(tǒng)RCNN,F(xiàn)aster-RCNN在結(jié)構上將特征抽取、區(qū)域提名、邊界框校正歸類等整合在1個網(wǎng)絡中,使得速度和準確率有了較大的提高。與SSD、YOLO等基于回歸的經(jīng)典檢測算法相比,F(xiàn)aster-RCNN算法在速度上雖有一定不足,但定位精確度較高,而機器人在表計識別上對實時性的要求并不高。因此,選用Faster-RCNN算法進行表計初步定位。圖4所示為Faster-RCNN的基本結(jié)構。
圖4 Faster-RCNN基本結(jié)構
Faster-RCNN算法的基本識別流程如下。
a)提取特征:通過預訓練網(wǎng)絡,提取圖片特征。
b)區(qū)域提名:利用提取的圖片特征,經(jīng)過區(qū)域提名網(wǎng)絡(region proposal networks,RPN),找出一定數(shù)量的感興趣區(qū)域。
c)分類與回歸:將感興趣區(qū)域和圖像特征輸入到全連接層,對感興趣區(qū)域進行分類,判斷分別屬于什么類別,同時對其位置進行微調(diào)。
其中,該算法的關鍵性創(chuàng)新在于使用其獨創(chuàng)RPN代替?zhèn)鹘y(tǒng)的滑動窗口或圖像金字塔法生成檢測框,大幅提升了算法的綜合性能。
2.1.1 骨干網(wǎng)絡
Faster-RCNN中,對輸入圖像進行語義信息提取的部分稱為骨干網(wǎng)絡或主干網(wǎng)絡,視覺幾何組(visual geometry group,VGG)網(wǎng)絡[16]和深度殘差網(wǎng)絡(residual network,ResNet)[17]均為較傳統(tǒng)的Faster-RCNN骨干網(wǎng)絡,其中ResNet增加了臨近網(wǎng)絡層之間的信息傳遞,在對速度影響不大的前提下,可大幅提升網(wǎng)絡的可設置深度??紤]平衡識別時間,本文選用ResNet中經(jīng)典的ResNet_50網(wǎng)絡作為骨干網(wǎng)絡。
2.1.2 區(qū)域提名網(wǎng)絡
RPN主要用于在骨干網(wǎng)絡輸出特征圖的基礎上,確定目標候選位置,再對這一位置的目標類別進行預測。首先在特征圖上生成各尺度和長寬比的錨點(Anchor),通過Softmax分類器[11]判斷錨點框內(nèi)是前景還是背景,將前景部分作為目標候選區(qū)域。其損失函數(shù)為
(1)
其中分類損失函數(shù)
(2)
預測損失函數(shù)
(3)
式中:x、y為預測框的中心點坐標;w、h為預測框?qū)捄透?;fsmooth表示為
(4)
最后通過線性回歸對輸出框(預測框)的位置進行微調(diào),獲得檢測結(jié)果。
整體學習模型采用python-Keras框架搭建,選取變電站各類型表計圖像共計1 200余張作為原始樣本庫,并通過預處理進行單通道濾波,形成最終學習樣本共14 325張,其中含有完整刻度信息文件約6 000余張;標注采用VOC2007格式,僅標注較為明顯的刻度段位置,標注時盡可能保持標注框中心在刻度尺度上。圖5所示為Faster-RCNN訓練樣本;圖6所示為采用Faster-RCNN模型經(jīng)過樣本庫訓練后,對圖1(a)及其相關圖片(原圖及圖3所有圖片)的預測結(jié)果。
圖5 Faster-RCNN訓練樣本示例
圖6 圖1(a)部分峰值濾波圖像的識別預測框
由于不同濾波圖像差異較大,預測框定位并不完全準確一致,不同圖像找到的預測框數(shù)量也不同。將所有預測框中心坐標(表1為圖7中所有點的具體坐標)在原始圖象上用紅點標出,如圖7所示。
表1 多圖預測框參數(shù)
圖7 預測框中心點位置(紅點有重疊)
如表1、圖7所示,F(xiàn)aster-RCNN具備基本定位刻度位置的能力,但對部分形狀或方向不規(guī)則的刻度區(qū)域,定位并不準確,識別率也有一定的偏差。不考慮Faster-RCNN本身對定位精度和標注時存在誤差的原因,刻度分布和方向不規(guī)則也必然造成此類誤差。基本確定表盤刻度位置后,采用一維信號處理方法進一步精確定位刻度盤成為可能。
如表1所示,F(xiàn)aster-RCNN算法共定位39個疑似刻度所在區(qū)域中心點,采用最小二乘法[17]對點進行擬合以獲取圓心和半徑。假設平面上1個圓的圓心為(xc,yc),半徑為R,則圓上任一點(xi,yi)的方程為
(xi-xc)2+(yi-yc)2=R2.
(5)
因此,任一點(xi,yi)到最小二乘圓上的距離的平方和最小時,殘差
ei=(xi-xc)2+(yi-yc)2-R2,
(6)
則平方和
min∑(xi2+yi2+Axi+Byi+C)2.
(7)
式中A、B為多項式分解后的一次項系數(shù),C為常量。
當f取極小值時有
(8)
令
(9)
式中n為需擬合點的總個數(shù)。
可得
(10)
則
(11)
因此,可計算得出表1中39個點擬合圓的圓心為(855,600),半徑為372。
將圖1(a)按照圖8所示圓心進行軸坐標轉(zhuǎn)換(如圖9所示),并取與(xc,yc)點距離為R×(1±30%)的范圍進行FFT頻域分析(如圖10所示)。由圖9和圖10可見,在有刻度的曲線上,存在較明顯的周期性分量,可利用頻率特征對曲線進行篩選。
圖8 預測框中心點及刻度圓擬合
圖9 軸坐標轉(zhuǎn)換
圖10 刻度區(qū)域的FFT頻域分析
篩選步驟如下:
步驟1,初步篩選。調(diào)用scipy的signal庫中find_peaks,通過遍歷波峰間距的方式獲取最高的5個頻域峰值,因曲線總長定為1,考慮基頻信號干擾較多,取4 kHz后峰值仍大于周邊平均值1倍以上的曲線作為候選曲線。
步驟2,精確篩選。①統(tǒng)計篩選后曲線在4~6 kHz間的峰值所在位置均方根平均值,排除均方根值大于平均值2倍的曲線;②統(tǒng)計①所篩選曲線的間隔,與周邊曲線無法形成5組以上連續(xù)分布的曲線應為誤篩選值,需要進行排除。據(jù)此,圖9中刻度區(qū)域半徑最終限定為384~461像素區(qū)域(如圖11所示)。
步驟3,曲線對齊。由于Faster-RCNN識別后,預測框位置存在一定誤差,圓心位置也必然存在偏差;因此,以圖11所示的中心線為基準,進行曲線周期和起始位置的微調(diào)。①周期統(tǒng)一,即通過插值微調(diào)曲線長度,將所有曲線的周期/頻率調(diào)整為均方根平均值;②互相關對齊,即以篩選后中心曲線為基準,計算所有曲線與該曲線的互相關值,并根據(jù)最大相關值位置將所有曲線與中心曲線對齊(如圖12所示)。
圖11 篩選后的刻度區(qū)域
圖12 周期調(diào)整和互相關對齊
步驟4,計算灰度平均值確定刻度線位置。將篩選后的曲線疊加,其均值曲線的谷值點角度即為表計刻度所在位置(如圖13所示),具體角度位置見表2。
圖13 曲線均值及谷值點位置
表2 刻度位置角度表
參考文獻[5]對指針角度的確定方法,取R×(1±30%)范圍內(nèi)除刻度區(qū)域以外的區(qū)域進行灰度值統(tǒng)計后,計算得到指針位置為153.5°(如圖14所示)。從圖9直接讀取數(shù)據(jù)可知指針尖端覆蓋的角度范圍約為153.1°~154.0°,鄰近2段刻度線覆蓋角度分別為152.4°~153.5°和157.1°~158.0°,與表3、圖14的結(jié)果基本一致。根據(jù)表盤信息,對刻度讀數(shù)進行人工標注后程序自動讀數(shù)為1.488 3(星號處),人工讀數(shù)約為1.49,誤差為0.3%。
圖14 指針位置
為驗證算法的有效性,取機器人在變電站拍攝的表計圖像共60張進行實驗驗證。表3列出了實驗中程序智能識別的各環(huán)節(jié)準確率和性能參數(shù)。
由表3可見,在神經(jīng)網(wǎng)絡成功識別的基礎上,本文方法對指針、刻度相對位置的識別較為準確,與人工讀數(shù)基本處于同一水平或優(yōu)于人工識別,但受限于訓練樣本、模型適配性等原因,部分表計(如圖15所示)仍存在無法識別的情況,有待進一步研究。
圖15 無法識別表計示例
表3 各類型表計程序自動識讀驗證試驗結(jié)果
針對變電站巡檢機器人部署過程中需針對每一個表計人工配置模板的現(xiàn)實問題,本文介紹了一種基于Faster-RCNN并進行一維信號處理的識別方法,從而實現(xiàn)無需人工干預智能識別指針與刻度相對位置的方法。首先借助分通道的峰值濾波預處理,降低不同類型間表計設計可能引入的識別誤差;接著通過Faster-RCNN算法初步確定刻度區(qū)域范圍,并獲得擬合圓的圓心完成軸坐標展開,再通過頻域分析對疑似刻度區(qū)域進行篩選,獲取刻度區(qū)域的準確范圍;然后通過微調(diào)刻度所在曲線的周期和刻度對齊、疊加,獲得區(qū)域在各角度上的灰度平均值,從而讀取各刻度的角度信息;最后統(tǒng)計刻度區(qū)域外的灰度分布獲得指針角度信息,從而最終實現(xiàn)表計刻度與指針相對位置的準確識讀。
對60張典型變電站表計圖像的實驗結(jié)果顯示,本文方法對訓練數(shù)據(jù)較多的表計識別準確率較高,但對訓練數(shù)據(jù)較少的表計仍存在無法識別的可能。此外,在解決了指針、刻度相對位置的準確識別后,有待引入表盤印刷體數(shù)字的識別能力[18-20],最終解決表計無人工干預的智能識別問題。