李雪迪 李公平 王文學 許經(jīng)偉 查德飛
(中國電信股份有限公司安徽分公司,安徽 合肥 230000)
借助AI 能力提升工程管理的數(shù)字化、智慧化有利于提高工程建設管理的效率和質(zhì)量。目前需要施工質(zhì)量管控的工程數(shù)量多、分散在各地,而工程管理員數(shù)量嚴重不足。面對大量的現(xiàn)場施工質(zhì)檢環(huán)節(jié)的拍照圖片,工程管理員無法逐一完成人工審核,需借助AI 能力檢測和識別出圖像中的關(guān)鍵信息。工程質(zhì)檢中圖像應用離不開目標檢測算法,目標檢測算法的主要功能為找出圖像中所感興趣的目標,同時獲得目標的類別信息和位置信息。目標檢測算法主要分為傳統(tǒng)的目標檢測算法和基于深度學習的圖像檢測算法,傳統(tǒng)的目標檢測算法存在特征設計困難且效率低下、滑動窗口尋找識別目標框速度慢等缺點,本文主要研究分析基于深度學習的圖像檢測算法在工程質(zhì)檢中的應用。
工程管理中存在大量的設備型號檢測和識別場景,本文將以空開設備和熔絲設備圖片為實驗數(shù)據(jù)進行目標檢測,為施工質(zhì)量審計驗收、資產(chǎn)盤點、故障溯源等提供依據(jù)。圖1 為空開圖片,該類型圖片型號主要以C 開頭,如C63、C32、C10等,存在少部分以A 結(jié)尾的型號,如32A、50A 等;圖2 為熔絲圖片,該類型圖片型號主要以A 結(jié)尾,如10A、63A、100A、250A、500A 等;圖像中紅色矩形框為業(yè)務側(cè)在收集圖片數(shù)據(jù)集時,已在原圖上作的標記;圖片中紅色框內(nèi)的型號即為本模型需要檢測的區(qū)域。
業(yè)務要求識別空開熔絲圖片上特定設備的型號,而非全部設備的型號,即識別出圖片中標記在紅色框內(nèi)以C 開頭或A 結(jié)尾的具體型號值,比如圖1 中3 個紅框內(nèi)的C63、圖2中2 個紅框內(nèi)的63A。
圖2 熔斷器
假如直接檢測設備型號文字區(qū)域可能會導致檢測到非業(yè)務部門關(guān)注的設備型號,即非紅框內(nèi)的設備型號,會造成業(yè)務上的干擾。現(xiàn)將工程任務拆分成如下三個階段: 圖像中紅色框區(qū)域檢測、紅色框內(nèi)文字區(qū)域檢測、文字區(qū)域設備型號識別。
在深度學習時代,基于CNN 的目標檢測算法主要分為One-Stage 和Two-Stage 兩個方向,這兩種方法的主要區(qū)別在于是否產(chǎn)生候選區(qū)域,Two-Stage 先通過RPN(Region Proposal Network)生成候選區(qū)域,再通過分類和回歸網(wǎng)路得到圖片中目標的位置和類別,而One-Stage 不需要RPN 階段,直接單次檢測出類別和位置信息。目前流行的兩階段算法包括:FasterRCNN、CascadeRCNN 等;一階段算法包括:YOLO 系列(YOLOv5、PPYOLO)等。以上四個模型經(jīng)過工業(yè)實踐打磨,已在施工質(zhì)量管控場景中得到廣泛應用,本文將針對空開設備和熔絲設備型號識別任務分別進行實驗,通過mAP 和Fps 比較幾種算法的實驗效果,為工程質(zhì)檢中遇到的圖像檢測場景提供測試依據(jù),同時選取適合的算法完成空開設備和熔絲設備型號識別任務。
FasterRCNN[1]模型提出了一種名為RPN 的網(wǎng)絡結(jié)構(gòu)來提取候選框,相比于傳統(tǒng)R-CNN 算法,替代了通過規(guī)則等產(chǎn)生候選框的方法,實現(xiàn)了端到端訓練的同時大幅提升了訓練速度。FasterRCNN 作為經(jīng)典的two-stage 檢測器,包含了用于推薦ROI 的RPN 網(wǎng)絡和用于分類和回歸的ROI Head,同時在RPN 網(wǎng)絡和ROI Head 中間加入了RoI Pooling 層,將RPN提取的不同大小的RoIs 固定到統(tǒng)一的大小,在沒有變形的情況下保證了全連接的輸入要求。
在FasterRCNN 算法中,不同輸入的proposal 自身IoU 分布和檢測器訓練用的閾值IoU 較為接近的時候,檢測器的性能才達到最優(yōu),如果兩個閾值相距比較遠就會出現(xiàn)mismatch問題,很難產(chǎn)生良好的檢測效果。為了解決mismatch 問題,多階段的CascadeRCNN[2]橫空出世。它由多個感知器構(gòu)成,這些感知器通過遞增的IoU 閾值分級段訓練。一個感知器輸出一個良好的數(shù)據(jù)分布來作為輸入訓練下一個高質(zhì)量感知器,緩解了假陽性的問題,在推理階段使用同樣的網(wǎng)絡結(jié)構(gòu)合理的提高了IoU 的閾值而不會出現(xiàn)之前所說的mismatch 問題。
CascadeRCNN 指出級聯(lián)多個R-CNN 模塊,并且不斷提高IoU 閾值,在每個階段不斷進行正負樣本重采樣策略,不僅不會出現(xiàn)過擬合,而且可以實現(xiàn)極大的性能提升。
在Faster RCNN 中,RPN 與R-CNN 雖然共享卷積層,但RPN 網(wǎng)絡和R-CNN 網(wǎng)絡在模型訓練過程中,需要反復訓練。相對于R-CNN 系列的“看兩眼”(候選框提取與分類),YOLO 系列只需要Look Once。YOLO 將物體檢測作為一個回歸問題進行求解,輸入圖像經(jīng)過一次inference,便能得到圖像中所有物體的位置和其所屬類別及相應的置信概率。而RCNN 系列將檢測結(jié)果分為兩部分求解:物體類別(分類問題)和物體位置即bounding box(回歸問題)。
YOLO 系列是非常熱門的單階段目標檢測算法,同時YOLO 系列也在不斷的進化發(fā)展,YOLOV3[3]相比于YOLOV2在Head 部分增加了multi-scale 預測,將預測的bbox 分為大、中、小,有效增加了bbox 的數(shù)量,同時加深了主干網(wǎng)絡,將Darknet19 變成Darknet53[4]。YOLOV5 和V4 在YOLOV3的基礎(chǔ)上,加入了一些創(chuàng)新且有效的tricks,權(quán)衡檢測速度與精度,進一步提升YOLO 的效果。YOLOV5 和V4 都使用PANET[5]作為Neck 來聚合特征,Neck 主要用于生成特征金字塔,增強模型對于不同縮放尺度對象的檢測,從而能夠識別不同大小和尺度的同一個物體。百度提出的PPYOLO[6]也是基于YOLOV3 算法通過有效的tricks 組合來平衡目標檢測器的性能以及速度。PPYOLO 的主干網(wǎng)絡使用ResNet50-vd[7]替換了Darknet53,為了彌補這種變換可能導致的性能損失,用可變形卷積替換了ResNet50-vd 的部分卷積層,適當增加了網(wǎng)絡復雜度。但過多的DCN 會帶來額外的推理時間,PPYOLO 僅僅將最后一層的3x3 卷積替換成DCN卷積。
前面對幾種算法的原理和改進方法做了介紹,下面將通過對空開設備和熔絲設備抽樣數(shù)據(jù)進行實驗,比較Faster-RCNN、Cascade-RCNN、YOLOV5 和PPYOLO 中在工程管理應用中的目標檢測效果。
隨機抽選1000 張空開設備和熔斷器標注圖片。
本次測試模型的數(shù)據(jù)增強方法和相關(guān)超參如表1 所示。
表1 訓練模型相關(guān)參數(shù)
實驗環(huán)境:GPU: Tesla V100,顯存: 16GB;CPU: 2 Cores,內(nèi)存: 16GB。
用Faster-RCNN、Cascade-RCNN、YOLOV5 和PPYOLO分別對隨機抽樣的1000 個樣本訓練的結(jié)果如圖3 和圖4 所示。
圖3 mAP 曲線
圖4 訓練時長和推理Fps
由四個模型的mAP 曲線圖中可以看出:Cascade-RCNN在第3 個epoch 時趨于收斂,F(xiàn)aster-RCNN 在第10 個epoch時趨于收斂,收斂時Cascade-RCNN 的mAP 值(0.978)高于Faster-RCNN 的 mAP 值(0.961),Cascade-RCNN 采用muti-stage 重采樣proposals 以適應更高閥值的階段,提升了模型的mAP 值;YOLOV5 在第6 個epoch 時趨于收斂,PPYOLO 在第16 個epoch 時趨于收斂,收斂時YOLOV5 的mAP 值(0.981)略低于PPYOLO 的mAP 值(0.986),YOLOV5收斂速度優(yōu)于PPYOLO,而PPYOLO 訓練時loss 更加穩(wěn)定,抖動較小。四種算法在空開和熔絲場景下mAP 表現(xiàn)相差不大,而YOLOV5 和Cascade-RCNN 收斂于更少的epoch。
由四個模型的訓練時長和Fps 圖中可以看出:四個模型訓練時YOLOV5、PPYOLO、Cascade-RCNN 每個epoch 的訓練時長相差不大,而Faster-RCNN 每個epcoh 的訓練時長是其它三種算法的2 倍左右;推理時,YOLOV5 的Fps 最高(22.75),F(xiàn)aster-RCNN 的Fps 值(4.43)遠低于其它三個模型,Cascade-RCNN 和PPYOLO 的Fps 值分別為12.91 和14.69。
綜上所述:單階段的YOLOV5 和PPYOLO 在訓練速度和推理速度上明顯優(yōu)于二階段的Cascade-RCNN 和Faster-RCNN;隨著YOLO 系列在實際工程實踐中應用普及,在不同方向增加了平衡有效性和效率的改進方法,檢測的精準度大幅度提高,四個模型在本次任務數(shù)據(jù)集上的mAP 效果基本一致??紤]到訓練硬件限制和本場景后期應用的時效性,在生產(chǎn)時使用mAP 和Fps 綜合表現(xiàn)更加合理的YOLOV5 算法。
將3 個階段模型進行整合,檢測一推理服務→檢測二推理服務→階段三推理服務,推理效果如圖5 所示。原始圖像經(jīng)過第一次推理服務,檢測并裁剪出紅框區(qū)域,圖像邊緣即為第一次檢測框;在檢測裁剪后的圖像中,第二次推理檢測出文字區(qū)域,如圖5 所示。
圖5 推理效果
本文主要聚焦在工程質(zhì)檢中的圖像目標檢測場景,對工業(yè)界目前流行的兩階段Faster RCNN、Cascade RCNN 和一階段YOLOV5、PPYOLO 算法在空開熔絲檢測場景進行應用研究。在空開熔絲檢測場景數(shù)據(jù)集上,YOLOV5、PPYOLO 的Fps 優(yōu)于Faster RCNN、Cascade RCNN;YOLOV5 和PPYOLO通過有效的tricks 組合平衡目標檢測器的性能以及速度后,大幅度提高了檢測的均值平均精度mAP,在本數(shù)據(jù)集上的表現(xiàn)甚至略優(yōu)于Faster RCNN、Cascade RCNN。雖然本實驗受限特征數(shù)據(jù)集(標注質(zhì)量、目標大小、目標類別等)、模型自身tricks 和硬件條件等因素的影響,不能完全橫向的比較四種算法效果,但實驗效果上還是能為后續(xù)的工程質(zhì)檢場景提供基礎(chǔ)的參考依據(jù),比如mAP 提升、訓練速度、推理速度、模型穩(wěn)定性等。