安建平,劉曉群
(河北建筑工程學院,河北 張家口 075000)
指針式儀表被廣泛應用在各個變電站中,用于各種電氣參數(shù)的實時監(jiān)控[1]。如今,隨著數(shù)字圖像處理算法和計算機技術的不斷發(fā)展,指針式儀表的檢測和識別也逐漸向自動化的方向前進[2-3]。目前,數(shù)字儀表應用廣泛,但在有電磁干擾的環(huán)境中易出現(xiàn)故障。指針式儀表由于其在抗干擾能力、結(jié)構(gòu)和成本方面相較數(shù)字顯式儀表、電子式儀表都具有顯著優(yōu)越性,因此現(xiàn)如今我國各類工業(yè)中指針式儀表已經(jīng)被使用到生產(chǎn)流程的每一個角落。指針式儀表的讀取過程需要專業(yè)人員的定期判讀,易受到人眼分辨能力、工作人員熟練程度、視覺疲勞等主觀因素的影響,儀表檢測效率較低且難以保證數(shù)據(jù)的準確性。而在高輻射、強噪聲、高低溫等不適宜近距離測量環(huán)境內(nèi),指針式儀表的采集和讀取是一項艱巨的任務[4-5]。指針式儀表非常精確,需要按時檢查準確度。以往的檢查方式是靠人工解決的,且人工采集儀表數(shù)據(jù)已經(jīng)不能滿足實時數(shù)據(jù)的需求,可能存在主觀錯誤導致經(jīng)濟損失。巡檢機器人也存在檢測速度慢、檢測精度低、漏檢、誤檢等問題。針對目前的機器人不能很好地適應實際需求,指針式儀表的檢測成了一項非常重要的工作,得到了廣泛的研究和應用。
近年來,出現(xiàn)了首先使用局部像素不均勻因子模型來提高二值化圖像中指針儀表區(qū)域的顯著性,然后使用霍夫圓檢測來檢測儀表的刻度盤范圍的方法。但使用得到的識別結(jié)果霍夫圓檢測常因光線、拍攝角度、復雜背景等原因出現(xiàn)誤讀漏檢。另外,不同大小的圓在檢測時需要設置不同的參數(shù),穩(wěn)定性較差。孫婷等[5]將二維伽馬函數(shù)應用于儀表識別,適應了不同光照和不同類型的儀表指針定位。傳統(tǒng)檢測方法通過尺度不變特征,將待檢測圖像與模板匹配,并利用隨機樣本一致性去除錯誤的特征點,實現(xiàn)儀表的檢測。然而,這兩種方法計算復雜且對儀表特性和各種模板圖像都有依賴,導致實時性差且易受限制。在復雜實際環(huán)境中準確檢測和定位儀表,需要高精度的目標檢測算法。因此,筆者建議采用深度學習技術解決這些問題。
為避免人工抄表出現(xiàn)誤讀、漏讀,筆者建議使用手機拍照并自動分析儀表指針讀數(shù)。自動識別儀表指針讀數(shù)的難點在于區(qū)分復雜背景的表盤區(qū)域以及提高指針檢測精度和消除校準偏角影響。針對以上問題,本文提出了基于目標-關鍵點檢測的儀表指針讀數(shù)識別方法,并構(gòu)建了相應模型,包括目標檢測模塊和關鍵點檢測模塊。通過改進YOLOv3目標檢測網(wǎng)絡準確檢測表盤區(qū)域和指針區(qū)域,以及改進RFN-Net關鍵點檢測網(wǎng)絡準確檢測指針關鍵點,實現(xiàn)在復雜背景環(huán)境下高精度執(zhí)行的目標檢測算法。
YOLOv3采用了圖像金字塔FPN的思想,利用3種不同規(guī)模的特征圖進行目標檢測預測。具體來說,大尺寸特征圖用于檢測小目標,小尺寸特征圖用于檢測大目標,而中間特征層則適合檢測中等大小的目標。YOLOv3通過聚類選取先驗框的方式,能夠同時很好地兼顧不同大小目標的檢測和識別。
在框架上,YOLOv3參考了SSD和ResNet網(wǎng)絡結(jié)構(gòu),并設計了分類網(wǎng)絡基礎模型DarkNet-53。相比于YOLOv2的DarkNet-19,DarkNet-53使用了52層卷積層,每個卷積層后都有歸一化操作(Batch Normalization)來防止過擬合。此外,為了降低模型的運算量,YOLOv3采用了Residual Learning的思想,在網(wǎng)絡中添加了大量的殘差塊。具體而言,YOLOv3增加了殘差模塊來進一步加深網(wǎng)絡的層數(shù)。在YOLOv3中,卷積層與卷積層之間采用3×3與1×1的卷積核交替使用的方法,以降低模型的計算量和參數(shù)。最后,該算法使用全局平均池化來進行預測。具體的網(wǎng)絡結(jié)構(gòu)如表1所示。
表1 Darknet-53
為解決傳統(tǒng)識別方法和其他深度學習識別方法的問題,筆者提出了目標關鍵點檢測模型,包括目標檢測模塊和關鍵點檢測模塊。目標檢測模塊的任務是檢測表盤區(qū)域和指針區(qū)域。模型流程如圖2所示。首先,目標檢測模塊用于檢測儀表圖像中的刻度盤區(qū)域I,并提取撥號區(qū)域圖像O1。若成功檢測到撥號區(qū)域,則截取圖像O1;否則,輸出異常信息給操作員。接著,關鍵點檢測模塊在圖像O1中檢測出6個關鍵點(指針的4個關鍵點、尺度0關鍵點和尺度5關鍵點)。若成功檢測到所有關鍵點,則進行指針讀取;否則輸出異常信息給操作員。根據(jù)關鍵點檢測結(jié)果O3,建立直角坐標系R,并計算指針的偏轉(zhuǎn)角度。結(jié)合表盤類型和單位信息,得到正確的指針讀數(shù)V。目標關鍵點檢測模型中,筆者使用改進的YOLOv3網(wǎng)絡進行目標檢測,使用改進的RFB-Net網(wǎng)絡進行關鍵點檢測。
圖1 由目標檢測模塊和關鍵點檢測模塊組成
圖2 改進后的YOLOv3網(wǎng)絡結(jié)構(gòu)
對于YOLOv3檢測網(wǎng)絡的深度學習改進方法,主要有兩種:單階段檢測算法和兩階段檢測算法。單階段檢測算法代表有SSD、YOLO算法家族等,兩階段檢測算法代表有R-CNN系列和其改進版本。兩階段算法通常具有更高的檢測精度,但速度卻不如單階段算法。指針儀表識別存在實時性且高精度的兩個要求,經(jīng)比較YOLO系列在使用較小的網(wǎng)絡能夠獲得較高的精度。YOLOv3網(wǎng)絡在保持高精度的同時具有快速檢測的優(yōu)勢,相較于同期其他單階段算法更為明顯。因此,最佳算法選擇為YOLOv3。
改進后的YOLOv3網(wǎng)絡結(jié)構(gòu)由主干網(wǎng)絡、頸部和檢測頭組成,如圖3所示。主干網(wǎng)絡采用了改進后的CSPdarknet53_tiny網(wǎng)絡,用于儀表圖像的特征提取。相較于CSPdarknet53網(wǎng)絡,CSPdarknet53_tiny網(wǎng)絡簡化了網(wǎng)絡結(jié)構(gòu),僅使用3個CSP模塊,并將Mish激活函數(shù)替換為Leaky ReLu激活函數(shù),降低了復雜度和參數(shù)數(shù)量。
改進后的網(wǎng)絡頸部用于特征圖的融合。改進后的YOLOv3采用了特征金字塔網(wǎng)絡,對不同尺度的特征圖進行處理,以實現(xiàn)對不同大小物體的檢測。該方法通過特征圖的多尺度處理提高了準確性,并有效提升了檢測速度。改進后的YOLOv3模型利用3種不同尺度的特征圖(13×13、26×26和52×52)進行目標檢測任務,從而提升了檢測的多樣性和全面性。
為了識別儀表圖像中的刻度盤和指針區(qū)域,本文提出了目標檢測模塊。筆者使用LabelMe工具對圖像進行標注,標記刻度盤和指針區(qū)域,并進行相應的分類(刻度盤類型和指針標記為“P”)。使用建立的目標檢測網(wǎng)絡,筆者將標記好的圖像用于訓練,以實現(xiàn)對表盤和指針區(qū)域的檢測。雖然表盤和指針區(qū)域的檢測任務不同,但訓練過程相同。為了提高準確性和訓練速度,筆者采用了預訓練的YOLOv3模型。在完成訓練后,筆者對目標檢測模塊進行了獨立測試,并得到了改進后的YOLOv3在測試集中對儀表圖像刻度盤區(qū)域的檢測結(jié)果。
經(jīng)實驗測試,改進后的YOLOv3目標檢測網(wǎng)絡在各種使用場景下表現(xiàn)出色,能夠準確地檢測出儀表圖像中的表盤區(qū)域,并準確識別表盤類型。這證明了改進算法在表盤區(qū)域檢測任務中的高可行性和有效性。此外,改進后的YOLOv3還可以應用于類似的目標檢測任務,為相關領域的研究和應用提供重要幫助。
測試結(jié)果表明,在強光和弱光環(huán)境下,改進后的網(wǎng)絡仍能準確檢測出刻度盤區(qū)域。改進后的YOLOv3網(wǎng)絡的測試結(jié)果中證明能夠在昏暗或反光環(huán)境中準確定位所有指針。以上測試結(jié)果表明,改進后的網(wǎng)絡在不同光照環(huán)境下表現(xiàn)出令人滿意的效果。
本文還介紹了關鍵點檢測模塊中RFB-Net網(wǎng)絡的改進。RFB-Net是一種卷積神經(jīng)網(wǎng)絡模型,通過引入感受野模塊(Receptive Field Block,RFB)來增強特征提取能力。在該網(wǎng)絡中,作者利用VGG16網(wǎng)絡的基礎層(Conv3_3、Conv4_3和Conv5_3)進行檢測,以解決淺層特征信息丟失的問題。然而,這些低層信息中缺乏語義信息,直接作為特征檢測層容易導致梯度爆炸。
為解決此問題,本文引入RFB模塊連接在這些低層信息層的后面,以增強淺層特征信息并提高收斂速度。RFB模塊借鑒了Inception的思想,并在其基礎上增加了Dilated Convolution層。Dilated Convolution層能夠在不增加參數(shù)的情況下利用更大的感知域?qū)Ω叻直媛蕡D像中的冗余信息進行優(yōu)化,該設計在語義分割和目標檢測領域取得了良好效果。改進后的RFB-Net網(wǎng)絡增強了淺層特征信息的提取,從而提高了關鍵點檢測的準確率。
改進后的RFB-Net網(wǎng)絡用于指針圖像的關鍵點檢測,該網(wǎng)絡通過融合淺層特征的高分辨率和高層特征的高語義信息,提升了指針關鍵點的識別準確率,優(yōu)化了檢測效果。
RFB-Net網(wǎng)絡用于檢測指針上的4個關鍵點,即scale 0關鍵點和scale 5關鍵點。它以指針圖像為輸入,輸出6個關鍵點的位置坐標。為了創(chuàng)建關鍵點檢測模塊的訓練集,可以使用LabelMe工具:用指針尖端標記指針圖像,標注指針軸邊緣的3個點,以及尺度0關鍵點和刻度5關鍵點,分別用標簽0、1、2、3、4、5表示(其中4個關鍵點從指針尖端順時針標注)。在進行網(wǎng)絡訓練之前,需要對指針圖像進行預處理,將其等比例縮放到80~120的范圍內(nèi),以避免因統(tǒng)一尺寸縮放而導致關鍵點檢測的準確性下降。
完成RFB-Net網(wǎng)絡的訓練后,在進行指針讀數(shù)之前,有必要對網(wǎng)絡進行測試以評估其效果。測試結(jié)果表明,在明亮和昏暗的光線條件下,該網(wǎng)絡能夠準確檢測出指針圖像的6個關鍵點,驗證了本文改進的RFB-Net網(wǎng)絡的可靠性。
本文提出了一種基于目標關鍵點檢測的儀表指針讀數(shù)識別方法。該方法引入基于深度學習的YOLOv3模型,根據(jù)儀表圖像的特點對YOLOv3網(wǎng)絡進行改進。通過對比本文模型與對照組的漏檢率和誤檢率指標,本文模型對于表盤區(qū)域和指針區(qū)域的漏檢率分別為1.97%和1.09%,錯誤檢測率為0。一幅圖像的平均處理時間分別為 0.17 s和 0.15 s。事實證明,改進后的YOLOv3網(wǎng)絡不僅學習能力強,而且耗時更少。本文為儀表刻度盤和指針檢測提供了一種新方法。
本文提出用關鍵點檢測方法代替?zhèn)鹘y(tǒng)的特征聚類方法,在兼顧檢測效果和速度的前提下,對RFB-Net進行改進,重新設計RFB模塊,加強網(wǎng)絡對淺層特征信息的提取。改進后的實驗結(jié)果與對照組的實驗結(jié)果相比,改進后的RFB-Net網(wǎng)絡的準確率達到了97.68%,平均處理時間為1.00 s。