王欣然,張 斌*,湛 敏,趙成龍
(1.中國計量大學 計量測試工程學院,浙江 杭州 310018;2.杭州萊霆科技有限公司,浙江 杭州 310009)
隨著現代工業的迅猛發展,工業儀表[1]被廣泛應用于各類工業場景中。設備若要平穩運行,則需要采用大量的儀表對設備進行實時監測。
傳統的巡檢方式主要依靠人工排查、記錄儀表當前情況,但由于設備分布在不同區域且儀表種類不一,如再遇到雨雪或大風等不佳環境情況的干擾,易發生誤檢、漏檢。故傳統的檢測方法已經不能滿足現代工業中自動化、智能化的需求。
目前,國內外已有眾多學者針對目標檢測算法[2]進行了研究。宋冬梅[3]提出了基于機器視覺的指針式儀表檢測模型,采用優化后的YOLO v3檢測方法,提高了指針儀表的檢測精度;但當單張圖片存在多個儀表進行同時檢測時,上述算法存在漏檢問題。趙麟坤等人[4]提出了改進的Faster RCNN碳纖維編織物缺陷檢測算法模型,采用ResNet 50作為特征提取網絡的方法,解決了小缺陷特征圖在卷積操作中的失真問題;但缺陷檢測速度較原模型并沒有很大提升。楊彬等人[5]提出了改進Mask RCNN的焊縫缺陷檢測模型,對模型中的殘差網絡最后階段進行了變形卷積,使其充分提取到了不同的缺陷信息以防止細節的丟失;但其忽略了目標檢測的實時性。張彥凱等人[6]提出了一種高精度優化Faster RCNN變電站安全帽檢測方法,采用雙線性插值的區域特征聚集方式(region of interest align,ROI Align)代替原始的興趣區域池化(region of interest pooling,ROI Pooling)的方法,避免了量化操作引起的像素誤差;但該方法在針對復雜場景中存在著遮擋、重疊情況,仍存在檢測精度低的問題。
研究人員雖然已經在目標檢測算法上進行了有效改進,但是在復雜環境中,多目標檢測的精度與效率方面仍然不高。
針對上述問題,筆者在Faster RCNN模型的基礎上,提出一種基于改進Faster RCNN的儀表自動識別方法:使用ResNet101代替VGG16特征提取網絡,改進特征金字塔模塊,采用注意力機制與Softer-MNS非極大值抑制算法,簡化網絡結構,融合高層語義信息,以獲得識別效果更佳的圖像。
基于卷積神經網絡模型的目標檢測模型可以分為基于單個神經網絡的目標檢測系統(you only look once,YOLO)、單次多邊框檢測(single shot multi-box detector,SSD)、單階段目標檢測等[7-9]一階段檢測算法和RCNN、Fast RCNN等[10-12]二階段目標檢測算法。Faster RCNN屬于二階段目標檢測。
Faster RCNN模型基本結構如圖1所示。

圖1 Faster RCNN結構圖
Faster RCNN主要是由特征提取網絡、候選框建議網絡(region proposal networks,RPN)和檢測網絡三個主要部分組成。其中,特征提取網絡為VGG16;RPN生成候選框,其核心為錨框機制;檢測網絡由統一大小特征向量的ROI Pooling層、分類層中的全連接層和回歸層中的全連接層組成。
首先,筆者將數據集中的輸入圖像在預處理階段進行歸一化操作,然后將圖像輸入特征提取網絡中進行提取,提取到圖像特征,得到共享特征圖,將共享特征圖傳入RPN層與ROI Pooling層繼續使用。
候選框建議網絡將獲取的圖像作為輸入,生成候選矩形區域。錨框的作用是覆蓋圖像上各個位置各種大小的目標,經過卷積處理完成分類與回歸后生成建議框。
筆者將候選框尺寸映射到特征圖上,在ROI Pooling層進行池化處理并輸出,得到局部特征層后,采用全連接層進行回歸預測與分類預測。
Faster-RCNN算法是一種基于卷積神經網絡的更快速且更準確的目標檢測算法,但是當圖像中包含重要的小目標和低質量圖像時,存在識別精度低、檢測效果差等問題。針對上述問題,筆者對Faster RCNN模型算法做以下四點改進:
1)為了解決VGG16網絡訓練時間長、存儲容量大、信息傳遞時出現信息丟失或損耗等問題,引入了Resnet101網絡代替VGG16網絡;
2)為了將不同尺度的特征進行融合,更好地提取多尺度的特征信息,引入了特征金字塔網絡,并進行改進;
3)為了抑制模型對背景和冗余信息的關注,提高模型對小目標的識別精度與效率,增強網絡提取特征能力,引入了注意力機制;
4)為了提高定位框的定位精度,減少候選區域的重疊性,使結果得到更好地回歸,引入了Softer-MNS算法。
改進后Faster RCNN結構圖如圖2所示。

圖2 改進后Faster RCNN結構圖
在深度學習的網絡中,隨著網絡層次的深入,每一個特征無論大小都會經過非線性的變換,然后被轉換成具有表征能力的深度特征。其中,2016年被HE Kai-ming等人[13]提出的殘差網絡推動了深層模型的發展,大大提升了模型的檢測效果。
相比于VGG16,ResNet101擁有運算量更小、準確性更高的優點,ResNet101網絡具有更強的表示能力,ResNet101網絡的深度可以達到上百層或更深。改進后的ResNet101網絡中,將第4個卷積層(convolu-tional layer 4,Conv Layer4)的輸出作為RPN層和ROI Pooling層共享,ROI Pooling層池化后將特征圖再傳入第5個卷積層(convolutional layer 5,Conv Layer5)處理輸出,將其用于分類和回歸。
網絡提取特征下,對語義的提取會直接影響到后面的檢測效果。FPN[14]利用卷積神經網絡模型提取圖片中各維度特征,解決目標檢測中多尺度的問題。FPN輸出傳入圖像后,進行2倍上采樣,再經過卷積,消除上采樣中帶來的混疊效應,得到特征圖。
筆者在FPN網絡上進行了改進,引入遞歸特征金字塔(recursive feature pyramid,RFP)網絡。RFP建立在特征金字塔網絡上,通過遞歸結構展開為順序實現。
實現RFP的過程相當于輸出兩次FPN過程:首先按順序展開的反饋鏈接,并將第一次FPN各層輸出的特征傳入空洞空間金字塔進行池化與輸出;然后將其與主干網絡的各層進行鏈接,最終將兩次FPN結果融合輸出。
RFP結構圖如圖3所示。

圖3 RFP結構圖
輸出的特征圖是經過空洞空間金字塔池化(atrous spatial pyramid pooling,ASPP)操作完成。
ASPP結構圖如圖4所示。

圖4 ASPP結構圖
筆者將第一次FPN提取的特征圖作為其輸入,共有4條并行分支對輸入進行擴展。其中針對三條分支使用卷積層與激活函數(ReLU),所輸出的通道數均為輸入通道數的1/4;針對第4條分支使用全局平均池化層壓縮特征,使用卷積層和ReLU函數將壓縮后的特征轉換為1/4;最后,將由四條分支得到的特征圖進行連接,并生成尺寸相同的特征圖以進行輸出。
當Faster RCNN模型中的特征圖權重相同時,將導致背景與目標運算分配不均,故筆者利用嵌入壓縮和激勵網絡(squeeze-and-excitation networks,SENet)模塊,以增強Faster RCNN模型對目標的運算能力和對特征的表達能力,排除干擾,提高準確率。
SENet模塊[15]采用學習通道特征的方式,增強對特征圖的分類,提取特征信息。權重s表示如下:
s=σ(W2δ(W1z))
(1)
式中:σ(*)為Sigmoid函數;δ(*)為ReLU函數;z為壓縮操作輸出向量;W1,W2為全連接操作權重矩陣。
筆者采用在空間維度壓縮輸入特征圖的方式,得到特征信息以及全局的描述,對壓縮后的特征圖進行全局平均池化,得到全局統計值;通過激勵關系中兩個全連接層來降低模型的復雜度,還原維度向量,使用ReLU函數完成非線性變換,使用Sigmoid函數還原得到的維度向量,并進行歸一化操作;將所得到各通道的權重s轉換到[0,1]范圍間,并將其與最初輸入的特征相乘后得到最后結果。
在Faster RCNN模型中,需要對候選框與錨框進行篩選,常使用NMS算法[16]。該算法通過在候選框中選出一個置信度最高,且對目標物體來說最準確的包圍框而得以實現,但當物體發生重疊時,易發生漏檢。
后又有Soft-NMS算法[17]代替NMS。
Soft-NMS表示如下:
(2)
式中:Si為第i個預測框對應的得分;M為最高得分的候選框;bi為待檢預測框;Ni為預設閾值;IoU為M與bi的交并比;σ為懲罰項系數。
Soft-NMS是一種連續函數,解決了目標重疊的問題。其利用邊框得分和IoU交并比,重新評定邊框得分,當IoU交并比大于所設定的閾值時,降低邊框得分,但仍存在定位精度不高的問題。
故筆者通過引入Softer-NMS非極大值抑制算法[18]來提高單個框的定位精度。
Softer-NMS通過高斯加權衰減降低置信度,以及對候選框進行加權平均優化計算,確定目標候選框的位置。
Softer-NMS結構圖如圖5所示。

圖5 Softer-NMS結構圖
首先,筆者需要分別對目標檢測中產生的候選框與人工標注的真實框進行高斯分布函數構建與狄拉克函數構建;然后,利用相對熵(Kullback-Leibler diverg-ence,KL Divergence)進行網格訓練;最后,利用Soft-NMS方法中所產生的不確定網絡預測的標準差,對候選框進行加權平均。
回歸分支比傳統結構預測類別的class分支和預測坐標回歸參數的Box分支多一個Box std分支。該分支用于預測每個候選框坐標的標準差,根據標準差的大小進一步預測候選框坐標的準確度。
為了增加對數據集場景中小目標的占比,數據集中使用了Mosaic數據增強[19]技術,采用隨機縮放、隨機剪裁、隨機翻轉以及隨機排布等方式,可將現有數據集中的任意四張圖片拼接成為一張新的樣本圖像。
Mosaic數據增強結構圖如圖6所示。

圖6 Mosaic數據增強結構圖
筆者采用Mosaic數據增強技術填充數據集,得到了更加豐富的數據集,增加了樣本場景中的小目標圖像的數量,增強了其對小目標的檢測能力以及訓練模型的魯棒性。
此處使用的儀表圖像數據來自于VOC 2007數據集,經過Mosaic數據增強處理后,最終得到了3 650張樣本圖像,大小均為640×480。
筆者將圖片進行統一命名;進行訓練時,將數據集的80%作為訓練集,20%作為驗證集;使用開源標注工具Labeling對每張圖片進行標注,并生成.XML文件。
實驗環境配置如表1所示。

表1 實驗環境配置
實驗裝置平臺示意圖如圖7所示。

圖7 實驗裝置平臺示意圖
訓練的參數設置如下:每次向神經網絡喂入批次為32的數據,迭代次數為12 000次,最大學習率設為0.001,權重衰減系數為0.000 2。
為了更好地衡量該改進Faster RCNN儀表檢測算法的性能,筆者采用精確率(precision,P)、召回率(recall,R)、平均準確率均值(mean average precision,mAP)和目標識別速率作為該次實驗的評價指標。
精確率P、召回率R表示如下:
(3)
(4)
式中:TP為圖像中正確檢測出來的儀表盤數量;FP為圖像中錯誤檢測到的儀表盤;FN為圖像中沒有檢測出的儀表盤數量。
平均準確率(average precision,AP)是P-R曲線與坐標軸所圍成的面積,表示如下:
(5)
平均準確率均值(mAP)是所有類別的AP值求平均后所得到的均值。考慮精確率和召回率對模型的平均,筆者采用mAP來評價模型優劣,表示如下:
(6)
3.4.1 改進主干網絡的實驗分析
首先,在實驗1中,筆者在不改動Faster RCNN原有模型結構其他部分的基礎上,對Faster RCNN的主干網絡檢測效果進行對比。筆者分別提取VGG16、Resnet50、ResNet101三種特征提取網絡,進行實驗對比。
實驗結果如表2所示。

表2 不同特征提取網絡對比實驗
由表2對比可知:對比三種特征提取網絡,ResNet101的召回率與準確率為90.2%和91.1%,單張檢測時間為41 ms,與VGG16相比,召回率和準確率分別提高了2.1%和1.4%;與ResNet50相比,召回率和準確率分別提高了1.3%和0.9%。
由此也表明,ResNet101網絡對特征的提取優于VGG16和ResNet50兩種主干網絡對特征的提取。
3.4.2 消融實驗
然后,在實驗2中,筆者針對該儀表自動識別改進方案的有效性,設計消融實驗進行驗證,即以原始Faster RCNN算法模型(原模型)為基礎,分別增加一種改進方法進行對照實驗,以驗證改進方法對各模型的改進效果[20-21]。
消融實驗在筆者所提供的數據集上進行。原模型算法在數據集上的消融實驗結果如表3所示。

表3 不同模型算法在數據集上的消融實驗結果
分析表3可知:改進1使用ResNet101主干網絡,使該算法準確率提高了1.4%,mAP提高了1.2%;改進2在改進1的基礎上使用了改進后的FPN,使其能夠重復應用主干網絡特征提取能力,迭代融合輸出特征圖,故算法準確率較改進1提高了1.2%,mAP提高了1.1%;改進3引入了注意力機制SENet模塊,其能夠增強該模型對目標的運算能力,較改進2的算法準確率提高了0.4%,mAP提高了0.5%;改進4在候選框篩選過程中將NMS改進為Softer-NMS算法,采用對候選框進行加權平均計算的方式來確定目標候選框的位置,使算法準確率較改進3提高了0.8%,mAP提高了0.9%。
綜合改進2~改進4,基于ResNet101主干網絡的改進準確率提高了2.4%,mAP提高了2.5%,較原Faster RCNN模型的mAP共提高了3.7%。
3.4.3 不同模型的實驗分析
最后,通過實驗3,筆者驗證了改進后的Faster RCNN算法模型的有效性。
筆者選擇SSD算法、YOLO v5算法、Mask RCNN算法、Faster RCNN算法、文獻[4]提供的改進算法模型與改進后的Faster RCNN算法模型,采用相同的數據集與訓練方法,將準確率與mAP值作為評估對比指標,進行實驗對比,驗證該方法的性能。
不同模型的實驗結果如表4所示。

表4 不同模型實驗結果
由表4可知:SSD算法的準確率與mAP值最低,Faster RCNN原算法的準確率與mAP值高于YOLOv5模型,但低于Mask RCNN算法;對比文獻[4]中的算法可知,文獻[4]中算法結果雖然優于Faster RCNN原算法,但其準確率與mAP值仍低于改進后的Faster RCNN模型。
故從總體來看,改進后的Faster RCNN模型在精度性能上更具優越性。
3.4.4 檢測結果展示
為了可視化改進后的Faster RCNN模型,筆者在驗證集上進行檢測,檢測結果如圖8所示。

圖8 算法改進前后的檢測效果對比圖
根據檢測結果發現:無論是單目標檢測還是多目標檢測,改進后的Faster RCNN算法檢測效果準確率更高,模型的適用度更好,可以更精準地檢測到分辨率較低的目標。
針對在檢測環境復雜的工業場景下,因儀表盤相似性高、類別分類多而導致的目標檢測過程中識別效果差、檢測效率低等問題,筆者以Faster RCNN網絡作為基礎框架,研究了基于改進Faster RCNN的儀表自動識別方法。
研究結論如下:
1)與原模型相比,采用Resnet101特征提取網絡,解決了梯度下降的問題;采用改進遞歸特征金字塔網絡提高了主干網絡特征提取能力;通過引入SENet注意力機制,有效提高了目標權重;采用改進非極大值抑制算法,提高了目標定位精度;
2)對該模型進行了訓練,實驗結果表明,訓練后的網絡模型準確率為93.5%,提高了3.8%,mAP值為92.6%,提高了3.7%,證明該算法模型具有較強的魯棒性與泛化能力。
在后續研究中,筆者將針對算法模型輕量化與儀表讀數進行研究,進一步提高算法的檢測精度與速度,訓練出更好的檢測網絡模型,并將其應用到實際工業環境中。