張 雷,呂一仕,楊 佳,徐忠峰,徐光平,3
(1.河北大唐國際王灘發(fā)電有限責(zé)任公司,河北唐山 063611;2.蘇州熱工研究院有限公司,江蘇蘇州 215043;3.北京中安吉泰科技有限公司,北京 100029)
機(jī)器視覺是由圖像處理、機(jī)械工程、點(diǎn)光源照明、傳感器和計(jì)算機(jī)軟硬件等技術(shù)組成。在一些危險(xiǎn)的作業(yè)環(huán)境中,用機(jī)器人搭載攝像頭等圖像采集裝置采集作業(yè)環(huán)境的圖像信息,用圖像處理技術(shù)進(jìn)行信息提取,做出各種檢測和判斷,可以在很大程度上代替人工,大大提高檢測的效率和自動化水平。
機(jī)器視覺的發(fā)展速度很快,也越來越成熟,已經(jīng)應(yīng)用到了各個(gè)行業(yè)中,最為廣泛的應(yīng)用是缺陷檢測,可以減少人力投入,提高檢測精度。
本文主要針對深度學(xué)習(xí)算法對水冷壁缺陷宏觀檢測展開研究,利用攝像頭近距離采集水冷壁各種數(shù)據(jù),將圖片數(shù)據(jù)進(jìn)行相應(yīng)的處理分析,完成對鍋爐水冷壁的檢測工作,最終可以代替人完成檢測任務(wù),降低火電廠鍋爐維護(hù)檢測費(fèi)用以及人員安全風(fēng)險(xiǎn)。
計(jì)算機(jī)的性能提升越來越快,變得越來越智能,在目前的大數(shù)據(jù)時(shí)代,AI(Artificial Intelligence,人工智能)是一個(gè)很具研究課題的領(lǐng)域,并且出現(xiàn)了很多優(yōu)秀的AI 企業(yè),從而使人工智能與我們的生活越來越密切。
作為人工智能的一個(gè)分支,機(jī)器學(xué)習(xí)是通過算法讓機(jī)器從歷史數(shù)據(jù)中學(xué)習(xí)潛在的規(guī)律。但是,由于機(jī)器學(xué)習(xí)需要特征,選取特征費(fèi)時(shí)費(fèi)力,有時(shí)候還會選取到不合適的特征。深度學(xué)習(xí)可以解決這個(gè)問題,它不需要人參與特征選取的過程。
Facebook 在DeepFace 項(xiàng)目中,人臉識別的準(zhǔn)確率達(dá)到了97%以上,說明深度學(xué)習(xí)在圖像識別方面具有優(yōu)勢。深度學(xué)習(xí)算法不斷優(yōu)化使深度學(xué)習(xí)不斷發(fā)展。
YOLOv5 提供了5 個(gè)版本的目標(biāo)檢測網(wǎng)絡(luò):YOLOv5n、YOLOv5s、YOLOv5m、YOLOv5l、YOLOv5x。
YOLOv5 的網(wǎng)絡(luò)結(jié)構(gòu)分4 個(gè)模塊:輸入端、Backbone、Neck、Prediction。
(1)輸入端對圖像進(jìn)行預(yù)處理,采用Mosaic 數(shù)據(jù)增強(qiáng)、自適應(yīng)圖片縮放、自適應(yīng)錨定框計(jì)算方法。
(2)Backbone 增加了Focus 結(jié)構(gòu)和CSP 結(jié)構(gòu),其中Focus 結(jié)構(gòu)用來做切片操作。
(3)Neck 采用FPN+PAN 結(jié)構(gòu),Neck 結(jié)構(gòu)中的CSP2_X 結(jié)構(gòu)增強(qiáng)了網(wǎng)絡(luò)特征融合。
(4)Prediction 使用GIOU_Loss 函數(shù)做Bounding Box 的損失函數(shù)。YOLOv5 網(wǎng)絡(luò)模型檢測速度非??欤糠鶊D像的推理時(shí)間只需要0.007 s,達(dá)到了140 FPS。
YOLOv5 網(wǎng)絡(luò)輸入端采用Mosaic 數(shù)據(jù)增強(qiáng),增加了網(wǎng)絡(luò)的魯棒性和檢測數(shù)據(jù)集的多樣性。采用自適應(yīng)錨框方法和自適應(yīng)圖片縮放方式,有效提升檢測精度和檢測速度。主干網(wǎng)絡(luò)采用Focus 結(jié)構(gòu)和CSP 網(wǎng)絡(luò),F(xiàn)ocus 結(jié)構(gòu)的切片操作可以很好的提取特征圖,CSP 網(wǎng)絡(luò)可以增強(qiáng)網(wǎng)絡(luò)的學(xué)習(xí)能力,減少模型參數(shù)的同時(shí)還可以保證檢測的準(zhǔn)確性,降低計(jì)算成本。Neck 網(wǎng)絡(luò)主要采用了SPP 模塊和FPN+PAN,主要是更充分地提取融合特征,在Backbone 和輸出端中插入Neck 層。SPP 網(wǎng)絡(luò)使用不同尺度最大池化,再將得到不同尺度的特征圖Concat 的操作。在輸出端Bounding box 損失函數(shù)為GIOU_Loss,可以提升預(yù)測框回歸的速度和精度。采用DIOU_NMS(非極大值抑制)的方式,可以提升重疊目標(biāo)框的檢測效果。
圖1 為不同版本的YOLOv5 與EfficientDet 檢測算法之間的性能比較曲線。橫軸表示的是該算法在GPU 上面的推理時(shí)間(ms/img),該數(shù)值越小越好;縱軸表示的是該算法在COCO 測試數(shù)據(jù)集上面的AP 指標(biāo),該數(shù)值越大越好。
圖1 性能比較曲線
通過觀察可以得出以下的初步結(jié)論:
(1)與EfficientDet0 相比,YOLOv5s 不僅可以獲得更高的AP指標(biāo),而且可以獲得更快的推理速度。
(2)與EfficientDet4 相比,YOLOv5x 不僅能夠獲得更高的AP指標(biāo),其推理速度是它的1/5 左右。
圖2 為不同版本的YOLOv5 檢測算法在COCO2017 驗(yàn)證集與測試集上面的各項(xiàng)指標(biāo),具體包括:模型輸入大小、AP50指標(biāo)、Speed、FPS、params 與GFLOPS。
圖2 算法指標(biāo)
1.準(zhǔn)確率:所有預(yù)測為正樣本的結(jié)果中,預(yù)測正確的比率。
Precision=TP/(TP+FP)
2.所有正樣本中被正確預(yù)測的比率。
Recall=TP/(TP+FN)
3.PR 曲線
以Recall 為橫坐標(biāo),Precision 為縱坐標(biāo)組成的曲線
4.mAP@0.5
TP:IoU>0.5 的檢測框數(shù)量(同一GT 只計(jì)算一次)
FP:IoU<=0.5 的檢測框數(shù)量,或檢測到同一個(gè)GT 的多余檢測框的數(shù)量
因此,Precision 和Recall 可以表示為:
Precision=TP/all detection boxes
Recall=TP/all ground truths
5.mAP@0.5:0.95 表示在不同IOU 閾值(從0.5 到0.95,步長0.05)上的平均mA。
(0.5、0.55、0.6、0.65、0.7、0.75、0.8、0.85、0.9、0.95)
(1)數(shù)據(jù)來源。采用機(jī)器人搭載的攝像頭對水冷壁表面進(jìn)行視頻圖像采集。
(2)數(shù)據(jù)標(biāo)注。標(biāo)注工具采用LabelImg,標(biāo)注工具快捷鍵比較多,大大的提高標(biāo)注效率。標(biāo)注信息為目標(biāo)框坐標(biāo)和類別,可以在一張圖像上標(biāo)注多個(gè)目標(biāo),保存的標(biāo)注信息為txt 文件。
(3)數(shù)據(jù)集劃分。目標(biāo)檢測訓(xùn)練集共有1500 張圖像,存在缺陷作為檢測目標(biāo),按照8:2 的比例劃分訓(xùn)練集和驗(yàn)證集。
(4)數(shù)據(jù)集優(yōu)化。由于前期缺陷目標(biāo)特征學(xué)習(xí)的不夠,在優(yōu)化前的鍋爐水冷壁管缺陷目標(biāo)檢測數(shù)據(jù)集上訓(xùn)練算法模型mAP 在75%左右。通過制定標(biāo)注的規(guī)范,優(yōu)化數(shù)據(jù)集,最終在鍋爐水冷壁管缺陷目標(biāo)檢測數(shù)據(jù)集上訓(xùn)練的算法模型的mAP 達(dá)到93%左右。
(5)數(shù)據(jù)增強(qiáng)。采用Mosaic、旋轉(zhuǎn)、縮放、翻轉(zhuǎn)、顏色變化、灰度化和裁剪等數(shù)據(jù)增強(qiáng)方法對訓(xùn)練數(shù)據(jù)進(jìn)行數(shù)據(jù)擴(kuò)充。
(6)數(shù)據(jù)標(biāo)注規(guī)范:①參考PASCAL VOC 數(shù)據(jù)集標(biāo)注規(guī)范標(biāo)注;②只保留清晰度高、目標(biāo)清晰的圖像;③去掉相似圖像。
(7)訓(xùn)練過程。采用PyTorch 深度學(xué)習(xí)框架訓(xùn)練算法模型。采用遷移學(xué)習(xí)的方法,減少模型訓(xùn)練時(shí)間和增強(qiáng)模型檢測性能。對輸入圖像采用旋轉(zhuǎn)、縮放、翻轉(zhuǎn)、顏色變化、灰度化、裁剪和Mosaic 數(shù)據(jù)增強(qiáng)的方法進(jìn)行數(shù)據(jù)擴(kuò)充。訓(xùn)練時(shí),設(shè)置的迭代次數(shù)為300 次,選擇準(zhǔn)確率最高的一次迭代作為實(shí)驗(yàn)結(jié)果。
1.3.1 準(zhǔn)確率曲線
圖3 為準(zhǔn)確率和置信度的關(guān)系,x 軸為置信度,y軸為準(zhǔn)確率。設(shè)置置信度為某一數(shù)值時(shí)各個(gè)類別識別的準(zhǔn)確率??梢钥吹剑眯哦仍酱髸r(shí)類別檢測的越準(zhǔn)確。這也很好理解,只有Confidence 很大,才被判斷是某一類別。但也很好想到,這樣的話,會漏檢一些置信度低的類別。實(shí)驗(yàn)結(jié)果曲線符合預(yù)期。
圖3 準(zhǔn)確率和置信度的關(guān)系
1.3.2 召回率曲線
圖4 為召回率和置信度之間的關(guān)系,x 軸為置信度,y 軸為召回率。設(shè)置置信度為某一數(shù)值時(shí),各個(gè)類別查全的概率??梢钥吹?,置信度越小時(shí)類別檢測的越全面。
圖4 召回率和置信度的關(guān)系
1.3.3 P—R 曲線
圖5 為P—R 曲線,其中:P 代表precision(精準(zhǔn)率),R 代表Recall(召回率),P—R 曲線代表精準(zhǔn)率與召回率的關(guān)系,一般情況下,將Recall 設(shè)置為橫坐標(biāo),Precision 設(shè)置為縱坐標(biāo)。從曲線中可以看到mAP@0.5 準(zhǔn)確率達(dá)到0.932,實(shí)驗(yàn)效果還是可以的,擴(kuò)充訓(xùn)練集數(shù)量和標(biāo)簽數(shù)量,提高數(shù)據(jù)集質(zhì)量,模型性能還會有所提升。
圖5 P—R 曲線
1.3.4 各項(xiàng)指標(biāo)
圖6 提供了模型性能的一些其他指標(biāo)。定位損失box_loss:預(yù)測框與標(biāo)定框之間的誤差(GIOU);置信度損失obj_loss:計(jì)算網(wǎng)絡(luò)的置信度;分類損失cls_loss:計(jì)算錨框與對應(yīng)的標(biāo)定分類是否正確;準(zhǔn)確率Precision:精度(找對的正類/所有找到的正類);Recall:真實(shí)為Positive 的準(zhǔn)確率,即正樣本有多少被找出來(召回了多少);mAP@0.5:0.95:表示不同IOU 閾值(從0.5 到0.95,步長0.05)(0.5、0.55、0.6、0.65、0.7、0.75、0.8、0.85、0.9、0.95)上的平均mAP;mAP@0.5:表示閾值大于0.5的平均mAP。
圖6 模型性能其他指標(biāo)
從圖7、圖8 檢測結(jié)果可以看出,模型對水冷壁缺陷的識別效果還是不錯的,基本上能按照標(biāo)注的內(nèi)容識別出來,符合預(yù)期的效果。
圖7 檢測結(jié)果1
圖8 檢測結(jié)果2
本文建立的鍋爐水冷壁管數(shù)據(jù)集缺陷類別和檢測目標(biāo)類別較少,且缺陷類別和缺陷目標(biāo)分布不均衡。未來可以不斷地對這兩個(gè)數(shù)據(jù)集進(jìn)行擴(kuò)充,建立鍋爐水冷壁管缺陷數(shù)據(jù)公開的數(shù)據(jù)集。
本文鍋爐水冷壁管缺陷自動分類識別和檢測模型的建立都是采用遷移學(xué)習(xí)的方法,通過數(shù)據(jù)增強(qiáng)的方式,在建立的數(shù)據(jù)集上訓(xùn)練現(xiàn)有的深度學(xué)習(xí)網(wǎng)絡(luò)獲得自動分類識別和檢測模型??梢噪S著數(shù)據(jù)集的增加,優(yōu)化特征提取網(wǎng)絡(luò),獲得性能更好的鍋爐水冷壁管缺陷分類識別和檢測模型。
對常見的鍋爐水冷壁管檢測目標(biāo)進(jìn)行分級,將比較容易發(fā)生缺陷的區(qū)域檢測出來進(jìn)行分級處理,達(dá)到危險(xiǎn)等級的范圍做出預(yù)警,由專業(yè)的檢修人員復(fù)核判斷是否需要維護(hù)處理。
本文提出并且實(shí)現(xiàn)了鍋爐水冷壁管缺陷目標(biāo)自動檢測的方法,構(gòu)建了鍋爐水冷壁管缺陷目標(biāo)檢測數(shù)據(jù)集,然后基于深度學(xué)習(xí)的方法建立了缺陷目標(biāo)檢測模型。在算法模型選擇方面,采用遷移學(xué)習(xí)的方法對YOLOv5 網(wǎng)絡(luò)訓(xùn)練模型進(jìn)行實(shí)驗(yàn)。采用了數(shù)據(jù)增強(qiáng),進(jìn)行數(shù)據(jù)擴(kuò)充。學(xué)習(xí)率lr 設(shè)為0.005,展開迭代次數(shù)為300 輪的模型訓(xùn)練,獲得在鍋爐水冷壁管數(shù)據(jù)上的最佳缺陷目標(biāo)檢測模型。通過實(shí)驗(yàn)數(shù)據(jù)表明,YOLOv5 算法對本文構(gòu)建的鍋爐水冷壁管缺陷目標(biāo)特征學(xué)習(xí)的很充分,檢測速度最快,IOU 為0.5,mAP 精度為97%,IOU=0.5:0.95 的值,mAP精度為76.3%。這一研究為鍋爐水冷壁管缺陷目標(biāo)自動檢測提供了新的方法,可以提升鍋爐機(jī)組水冷壁管自動化、高效化和智能化的檢測水平,減少電廠鍋爐機(jī)組的非停時(shí)間,提高電廠的經(jīng)濟(jì)效益。