張 斌 毛順丹 楊鐵梅
(太原科技大學,山西 太原030024)
科學技術的不斷發(fā)展,給工業(yè)生產(chǎn)帶來了極大便利,其中工業(yè)儀表作為工業(yè)監(jiān)控系統(tǒng)的一個重要檢測設備,可以對生產(chǎn)中的設備進行溫度、流量、壓力等參數(shù)的測量和指示,并實時顯示系統(tǒng)的運行狀態(tài),通過對儀表的數(shù)據(jù)的獲取可以提前預測得到設備的預警狀態(tài),從而預防設備故障發(fā)生。
儀表自動識別不僅僅是儀表數(shù)據(jù)讀取,更重要的是對變電站各種設備運行狀態(tài)的自動識別[1]。采用機器視覺技術代替人工對儀表進行識別和數(shù)據(jù)提取,大大減輕了工作人員的工作負擔,提高了工廠生產(chǎn)效率和質量,且節(jié)省了大量財力和物力支出。最重要的是,機器視覺技術相比于傳統(tǒng)人工識別更客觀,不會產(chǎn)生疲勞期,機器識別更加準確、高效。
Mask-RCNN 由何凱明團隊于2017 年提出的一個目標檢測網(wǎng)絡,是基于Faster-RCNN[2]提出來的一個改進網(wǎng)絡架構,主要作用是對目標個體進行語義分割。Mask-RCNN 相較于原來的框架,極大的提高了對目標識別的效率和分割質量。這個網(wǎng)絡不僅檢測精度高,同時檢測速度達到了5fps,滿足了目標檢測與分割的要求[3]。Mask-RCNN 主要分為四個方面:卷積層FPN(特征金字塔網(wǎng)絡)、RPN(區(qū)域候選網(wǎng)絡)、ROIAlign 和輸出分支。
Mask-RCNN 相對于Faster-RCNN 主要提出兩個方面的改進:為了解決網(wǎng)絡中圖像像素和興趣區(qū)域匹配產(chǎn)生錯位的問題,將原來的池化層替換為ROIAlig;提出了第三種輸出分支mask 分支,來解決目標類別間的相互競爭,提高了檢測效率。
ROIAlign 是對Faster-RCNN 網(wǎng)絡中池化層的優(yōu)化,原算法中,當候選區(qū)域映射到feature map 上,與特征圖上的像素點不匹配時,會直接進行間隔取整,最后得到的每個格子里面的值均為整數(shù),當映射回原圖上時誤差更大。在RoIAlign 算法中,對每個格子都取一個浮點數(shù),對于feature map 上的每一個RoI 都會被分成m*m 個格子,并在其中選取4 個點,分別對應格子中四個部分的中點,然后對于每一個點所在格子的四個頂點進行雙線性插值計算,使得像素和興趣區(qū)域更匹配。
Mask-RCNN 網(wǎng)絡采用了三種輸出分支的損失函數(shù):分類損失(cls)、檢測損失(box)和分割損失(mask)。其中mask 分支為分割損失,只針對該興趣區(qū)域該類別的目標進行分類,不會與其他類別的mask 值產(chǎn)生關系,從而有效的避免了類間競爭,提高了檢測的精度和效率。
在對儀表圖像進行訓練時,首先對巡檢機器人獲得的儀表圖像進行整理,最后選取了1000 張儀表的原始圖像,選取900張圖片將大小改為640*640 大小,然后用labelme 軟件將每張圖像中的興趣區(qū)域也就是儀表表盤部分進行選標注,制作成數(shù)據(jù)集。剩余的100 張圖片作為測試集,在Mask-RCNN 網(wǎng)絡訓練完成時進行驗證,可以在復雜的背景下將儀表表盤區(qū)域精準識別,為方便觀察截取了局部儀表區(qū)域如圖1 所示,可以看出儀表的匹配精確度達到了98%以上。


圖1 Mask-RCNN 算法檢測效果
從復雜背景中提取到儀表表盤區(qū)域后,儀表圖像會存在表盤傾斜、光照不足、細節(jié)模糊的情況,因此需要對表盤區(qū)域進行預處理。首先對傾斜表盤圖像進行透視變換;其次對光照不足的圖像進行暗光增強;最后選取自適應濾波算法對圖像進行降噪,去除圖像噪聲,保留圖像細節(jié)[4]。
通過觀察,指針式儀表的圓心位于指針根部,刻度區(qū)域也是呈環(huán)形,所以利用同心圓原理定位儀表刻度區(qū)域,可以看出環(huán)形區(qū)域包括圓心位置、起始刻度位置、量程和單位。首先進行霍夫檢測確定儀表的圓心位置,然后按照儀表的實際比例在儀表盤上構建一個同心圓把刻度區(qū)域截取出來。因為環(huán)形區(qū)域并不方便數(shù)據(jù)讀取,在獲取儀表的環(huán)型刻度區(qū)域后,還是無法順利進行數(shù)據(jù)讀取,所以還需要對儀表的刻度區(qū)域進行變換。針對這個問題,采用了極坐標變換的方法,將圓環(huán)區(qū)域經(jīng)過極坐標轉換后,轉為矩形區(qū)域的圖像,從而更方便獲取儀表刻度信息[5]。
因為指針儀表的指針呈線型,而且比較容易識別。因此,能夠采用霍夫直線檢測算法來對儀表的指針實現(xiàn)定位,再采用最小二乘算法將儀表指針進行細化,得到指針的角度。
3.4 儀表示數(shù)識別

圖2 儀表圖像坐標標定
獲取儀表信息后,建立圖2 所示的直角坐標系,原點為儀表中心,根據(jù)已知信息,該壓力表的量程為0~1.6MPa,儀表指針與起始刻度的夾角為65.3°,所求的儀表指針讀數(shù)為x,根據(jù)以下公式求取儀表讀數(shù):

其中,Δ1為儀表的起始刻度值,Δ2為儀表的最大刻度值,λ 為儀表刻度值覆蓋的角度范圍260°,最后進行計算可以得出該儀表示數(shù)0.402MPa,為確保識別的準確性,分別選取了幾種代表性的儀表進行驗證,試驗結果表明可以達到實際應用需求,如表1 所示。

表1 指針儀表測試結果
傳統(tǒng)的指針式儀表自動識別方法存在著一定的弊端,當背景中出現(xiàn)類似儀表的圖像很容易產(chǎn)生誤檢和漏檢,由于其很難適應實際的應用環(huán)境,不能獲得很好的識別效率和精度。
本文主要研究了基于Mask-RCNN 網(wǎng)絡指針式儀表的自動識別方法。首先對巡檢機器人獲取的圖像進行預處理;其次通過Mask-RCNN 網(wǎng)絡對儀表區(qū)域進行精確定位,提取儀表表盤區(qū)域;最后針對不同指針儀表的檢測難題,采用了對指針儀表表盤的刻度和指針分別處理的方法,根據(jù)指針與儀表盤刻度的關系,獲得儀表數(shù)據(jù)。試驗結果表明本算法可以很好的從復雜背景中獲取儀表區(qū)域,并且儀表自動識別算法的識別效率和精度可以滿足實際需求。