王源
(西京學(xué)院,陜西西安,710123)
作為鋼材工業(yè)生產(chǎn)和出口大國(guó),熱軋帶鋼在宇航、土地建筑、車輛制造業(yè)等領(lǐng)域的需求日益增加,其具有良好的耐腐性、韌性和易于加工的特點(diǎn),但是由于工業(yè)生產(chǎn)工藝技術(shù)要求或機(jī)械設(shè)備工藝技術(shù)等因素的限制,熱軋帶鋼表面上容易出現(xiàn)點(diǎn)蝕、軋制氧化物、斑塊、裂縫、夾雜塊和劃痕等問(wèn)題[1],這些缺陷在影響產(chǎn)品外觀的同時(shí)使產(chǎn)品的剛度和強(qiáng)度有所降低,一定環(huán)境下產(chǎn)品更易形成銹蝕和開(kāi)裂,進(jìn)而形成安全隱患問(wèn)題[2]。如何減少缺陷,提高鋼材表面質(zhì)量,是長(zhǎng)期以來(lái)很多企業(yè)亟須破解的難點(diǎn)與熱點(diǎn)。
熱軋帶鋼表層問(wèn)題可以分為點(diǎn)蝕、軋制氧化物、斑塊、裂紋、夾雜塊和劃痕等各類,而傳統(tǒng)的測(cè)試方法則包括人工測(cè)試、渦流測(cè)試、紅外測(cè)試、漏磁測(cè)試和激光掃描等[3]。這些方法都可以一定程度地測(cè)試出熱軋帶鋼表層的問(wèn)題情況。人工監(jiān)測(cè)通常是檢查人員用眼睛觀察缺陷情況,但缺陷的發(fā)生是不定時(shí)偶發(fā)性的,檢查人員長(zhǎng)期工作在振動(dòng)嘈雜、強(qiáng)光高熱、粉塵異味的環(huán)境中很難24 小時(shí)高效工作;渦流檢測(cè)應(yīng)用電磁感應(yīng)原理,通過(guò)帶鋼缺陷位置產(chǎn)生交變電流的大小來(lái)判斷缺陷情況,受表層缺陷分布情況限制和缺陷塊面大小的影響,很難高速穩(wěn)定檢測(cè);紅外檢測(cè)根據(jù)帶鋼表層不同位置的溫度變化,判斷缺陷的分布情況。雖然可以對(duì)缺陷進(jìn)行檢測(cè),但是這種方法對(duì)缺陷范圍較小或者有重疊時(shí)檢測(cè)效果很差;漏磁檢測(cè)法是鋼坯被磁化后,若鋼坯表層有缺陷,缺陷位置會(huì)形成漏磁場(chǎng),然后檢測(cè)磁場(chǎng)的變化來(lái)達(dá)到缺陷檢測(cè),缺陷區(qū)域較小或者缺陷復(fù)雜時(shí),漏磁檢測(cè)法不能有效進(jìn)行檢測(cè);激光掃描檢測(cè)法是把激光信源投射到帶鋼表面,通過(guò)收集帶鋼表面發(fā)射的光線形成計(jì)算機(jī)可以接收的信號(hào),在經(jīng)過(guò)一定算法的分析和處理進(jìn)行檢測(cè),雖然可以識(shí)別諸類型的缺陷,但是對(duì)環(huán)境要求高,設(shè)備成本較高且算法的泛化性能差;機(jī)器視覺(jué)可以替代人眼進(jìn)行檢測(cè),但在實(shí)際生產(chǎn)中仍不能保持實(shí)時(shí)高速的檢測(cè),且算法泛化和調(diào)整缺陷圖庫(kù)困難。
系統(tǒng)總體設(shè)計(jì)圖1 如所示。本系統(tǒng)主要由照射光源、圖像攝像機(jī)、表面缺陷圖像采集卡以及計(jì)算機(jī)數(shù)據(jù)處理系統(tǒng)等構(gòu)成。根據(jù)熱軋帶鋼表面缺陷檢測(cè)的特點(diǎn),首先設(shè)計(jì)構(gòu)建圖像采集裝置。在帶鋼傳輸軌道上方架設(shè)多架綠色光源LED燈以提高成像質(zhì)量,并具有減少閃爍和壽命較長(zhǎng)的特性。采用綠色光源可以有效避免帶鋼自身紅色光段和生產(chǎn)環(huán)境其他光源的干擾。光源對(duì)稱設(shè)置在掃描相機(jī)周圍均勻分布,大約呈45 度斜角。相機(jī)的兩邊設(shè)置有可控標(biāo)記筆,標(biāo)記筆的旁邊有警報(bào)器裝備,最后連接上顯示器。

圖1 表面缺陷檢測(cè)系統(tǒng)總體設(shè)計(jì)
根據(jù)檢測(cè)要求的精確度和帶鋼軌道實(shí)際的寬度距離接入一定數(shù)量的相機(jī),并給相機(jī)配置防塵和除塵模塊以協(xié)助提高成像質(zhì)量和檢測(cè)的穩(wěn)定效果。把相機(jī)攝取的數(shù)字圖像信息根據(jù)相應(yīng)的SDK 接口傳遞到計(jì)算機(jī)圖像數(shù)據(jù)處理系統(tǒng),再對(duì)帶鋼表面進(jìn)行檢測(cè)分析。若檢測(cè)結(jié)果中檢測(cè)到有缺陷存在則控制標(biāo)記筆在缺陷附近做出記號(hào),并傳遞信息到警報(bào)器發(fā)出警報(bào)信號(hào),把控制及檢測(cè)結(jié)果實(shí)時(shí)投放到顯示器上用于顯示實(shí)際的檢測(cè)效果。檢測(cè)過(guò)程可以軟件控制面板設(shè)置相應(yīng)的參數(shù)以控制保存缺陷或者全部數(shù)據(jù)到文件系統(tǒng)和數(shù)據(jù)庫(kù)系統(tǒng)。
帶鋼表面缺陷檢測(cè)系統(tǒng)的功能主要有實(shí)時(shí)檢測(cè)監(jiān)控顯示、檢測(cè)模型相關(guān)設(shè)置、相機(jī)及工控機(jī)設(shè)置、數(shù)據(jù)管理、用戶及權(quán)限管理以及軟件系統(tǒng)的設(shè)置等[4],各模塊功能大致如下:
(1) 實(shí)時(shí)檢測(cè)監(jiān)控顯示:主要顯示生產(chǎn)過(guò)程中缺陷檢測(cè)的實(shí)時(shí)畫(huà)面,當(dāng)沒(méi)有缺陷正常生產(chǎn)時(shí)顯示帶鋼傳輸運(yùn)行畫(huà)面,當(dāng)檢測(cè)到缺陷時(shí)會(huì)有錨框標(biāo)記缺陷類型和缺陷大小位置等信息。同時(shí)由日志區(qū)域輸出最近的缺陷日志及時(shí)間等信息。
(2) 檢測(cè)模型相關(guān)設(shè)置:可設(shè)置檢測(cè)算法模型選擇等,目前可選的檢測(cè)算法有Yolov5,后續(xù)可配置加入R-CNN、Fast R-CNN、SSD 等可選擇。
(3) 相機(jī)及工控機(jī)設(shè)置:配置波特率、串口位置、通訊協(xié)議、光源信息、外接記號(hào)筆等。除了正常通訊工作設(shè)置的參數(shù)外,放置連接測(cè)試按鈕以檢測(cè)設(shè)置的參數(shù)及硬件設(shè)備是否能有效工作。
(4) 數(shù)據(jù)管理:對(duì)缺陷檢測(cè)歷史數(shù)據(jù)的管理,包括對(duì)歷史數(shù)據(jù)進(jìn)行統(tǒng)計(jì)和分析。由于缺陷的發(fā)生是不定時(shí)的,具有偶發(fā)等特點(diǎn),缺陷數(shù)據(jù)會(huì)被記錄保存到數(shù)據(jù)庫(kù)中。管理員可以根據(jù)條件參數(shù)據(jù)進(jìn)行檢索,并統(tǒng)計(jì)缺陷的發(fā)生率,合格率等。
(5) 用戶及權(quán)限管理:根據(jù)生產(chǎn)需要,配置多用戶使用權(quán)限管理。一些基礎(chǔ)設(shè)備信息一旦設(shè)定不允許更改,不同級(jí)別的權(quán)限設(shè)定防止因?yàn)檎`操作而造成系統(tǒng)罷工。還有一些敏感信息只允許安全員查看,例如密碼。
(6) 軟件系統(tǒng)設(shè)置:配置選擇數(shù)據(jù)庫(kù)等系統(tǒng)信息。數(shù)據(jù)保存可配置選擇Oracle、MySql、MS SQLServer 等數(shù)據(jù)庫(kù)。保存到文件系統(tǒng)的文件格式可選XML 或者JSON,年月日的時(shí)間格式。
CNN 是一種應(yīng)用于深度學(xué)習(xí)方面的神經(jīng)網(wǎng)絡(luò),它具有訓(xùn)練復(fù)雜度低、訓(xùn)練參量少的優(yōu)勢(shì),可以有效提升問(wèn)題檢測(cè)系統(tǒng)的準(zhǔn)確性。它由注入層、卷積層、池化層、全連結(jié)層和輸入輸出層組成,當(dāng)中卷積層和池化層可以有效地抽取出特征數(shù)據(jù),從而實(shí)現(xiàn)更高效的問(wèn)題檢測(cè)能力。在卷積神經(jīng)網(wǎng)絡(luò)中,上一級(jí)神經(jīng)元僅與下一級(jí)神經(jīng)元連通,而CNN 則使用了權(quán)值共同的卷積核,減少了神經(jīng)網(wǎng)絡(luò)中參數(shù)的總量還能夠有效地規(guī)避過(guò)擬合的現(xiàn)象[5]。圖2 展示了卷積神經(jīng)網(wǎng)絡(luò)的基本原理。

圖2 卷積神經(jīng)網(wǎng)絡(luò)
深度學(xué)習(xí)技術(shù)具有強(qiáng)大的特征提取能力,可以有效地自動(dòng)學(xué)習(xí)和處理原始數(shù)據(jù),從而大大提高了處理效率,解決了傳統(tǒng)方法存在的許多困難。YOLOv5 提高了檢測(cè)的精度、速度,目前普遍應(yīng)用于視頻和實(shí)時(shí)目標(biāo)等的檢測(cè)中[6]。本文對(duì)熱軋帶鋼表面缺陷檢測(cè)采用YOLOv5 模型進(jìn)行檢測(cè)??梢杂行У靥岣呔W(wǎng)絡(luò)系統(tǒng)對(duì)小目標(biāo)的識(shí)別,這種方法更加適用于熱軋帶鋼表面缺陷塊分布不均勻和外形結(jié)構(gòu)多樣的情況。
本次網(wǎng)絡(luò)模型基于東北學(xué)院提供的NEU-DET 數(shù)據(jù)集,該集收錄了熱軋鋼帶六種常見(jiàn)外觀瑕疵樣本,包含軋制氧化皮、斑塊、裂紋、點(diǎn)蝕外觀、內(nèi)含物和劃痕,典型樣本如圖3 所示,為建模訓(xùn)練提供了有效的參考依據(jù)。針對(duì)數(shù)據(jù)集圖像樣本數(shù)量較少,且同類缺陷樣本相似度較高的情況,對(duì)樣本數(shù)據(jù)進(jìn)行了數(shù)據(jù)集擴(kuò)增。同時(shí)用圖像處理的知識(shí)對(duì)已有圖像樣本做了隨機(jī)放縮、隨機(jī)裁剪、反轉(zhuǎn)和拼接等操作。使用Python 標(biāo)記軟件labelimg 對(duì)新圖形中的缺陷加以標(biāo)記,并將標(biāo)記數(shù)據(jù)轉(zhuǎn)換為xml 格式,以便模型能夠更好地理解和分析。

圖3 典型樣本
本次深度學(xué)習(xí)網(wǎng)絡(luò)模型實(shí)驗(yàn)使用 PyTorch-1.13.1 框架搭建,當(dāng)前計(jì)算機(jī)操作系統(tǒng)為Windows11。配置NVIDIA GeForce RTX 3070 Ti GPU,CUDA11.6。訓(xùn)練模型選擇YOLOV5S,將數(shù)據(jù)集割裂成三塊部分:練習(xí)集、檢測(cè)集和檢驗(yàn)集,以便更好地開(kāi)展模型訓(xùn)練。輸入圖像尺寸大小為640×640,batch_size 設(shè)為8,迭代次數(shù)epochs=100 學(xué)習(xí)率 lr=0.005。
如圖4 的訓(xùn)練:Box_loss 是GIoU 損失參數(shù)的平均值。Obj_loss 是目標(biāo)檢測(cè)loss 的平均值;Cls_loss 是分類loss的平均值,隨著練習(xí)數(shù)量的增加,cls_loss 值會(huì)逐漸減??;Precision 是精度;Recall 是positive 的準(zhǔn)確性。通過(guò)使用Val box_loss 和obj 兩種方法,我們可以驗(yàn)證bounding box 損失的平均數(shù),以及目標(biāo)檢測(cè)的平均數(shù),并使用cls 來(lái)分類loss 均值,mAP 則是通過(guò)將Precision 和Recall 作為兩個(gè)坐標(biāo)軸,數(shù)據(jù)線圍成一個(gè)面積。

圖4 模型訓(xùn)練部分結(jié)果
根據(jù)缺陷檢測(cè)的需求檢測(cè)流程如圖5 所示。開(kāi)啟光源以為相機(jī)等設(shè)備,待系統(tǒng)硬件設(shè)備就位后,啟動(dòng)軟件并連接數(shù)據(jù)庫(kù)進(jìn)入就緒狀態(tài)。若過(guò)程中有任何環(huán)節(jié)失敗則啟動(dòng)警報(bào)器提示工作人員進(jìn)行人工排查原因,以完成系統(tǒng)初始化步驟。

圖5 檢測(cè)流程圖
設(shè)備和軟件系統(tǒng)啟動(dòng)成功后,控制缺陷檢測(cè)系統(tǒng)進(jìn)入檢測(cè)工作狀態(tài),設(shè)備開(kāi)始循環(huán)檢測(cè)。對(duì)掃描到的位置圖像記錄原圖,使用圖像處理算法經(jīng)過(guò)灰度化歸一處理,去噪濾波等處理后送入檢測(cè)模型進(jìn)行檢測(cè)。對(duì)檢測(cè)到缺陷的情況,控制記號(hào)筆在帶鋼陷位置附近標(biāo)記橫線,根據(jù)參數(shù)確定是否控制警報(bào)器啟動(dòng),并把缺陷數(shù)據(jù)記入到數(shù)據(jù)庫(kù),最后把檢測(cè)情況實(shí)時(shí)投放到顯示器上并繼續(xù)檢測(cè)。
熱軋帶鋼表面缺陷檢測(cè)系統(tǒng)如圖6 所示,主要有實(shí)時(shí)檢測(cè)監(jiān)控顯示界面,檢測(cè)模型設(shè)置及圖像參數(shù)設(shè)置,相機(jī)和光源以及工控機(jī)的設(shè)置,檢測(cè)數(shù)據(jù)管理,用戶及權(quán)限管理,檢測(cè)軟件系統(tǒng)的設(shè)置。

圖6 熱軋帶鋼表面缺陷檢測(cè)系統(tǒng)
主界面由標(biāo)題欄、菜單欄、實(shí)時(shí)檢測(cè)畫(huà)面、操作控制區(qū)及日志輸出組成。在檢測(cè)模型設(shè)置圖像處理以及檢測(cè)模型的參數(shù),調(diào)整光源和相機(jī)參數(shù)。圖像處理包含濾波、降噪、調(diào)整亮度、剪裁、灰色化和二值化等,通過(guò)分析和處理圖像最后檢測(cè)出目標(biāo)缺陷,并記錄數(shù)據(jù)。數(shù)據(jù)管理功能可支撐后期的查詢和相關(guān)報(bào)表統(tǒng)計(jì)。
熱軋帶鋼表面缺陷檢測(cè)系統(tǒng)主要的功能是對(duì)熱軋帶鋼表面缺陷的在線實(shí)時(shí)檢測(cè),在一定的光源照射協(xié)助下,通過(guò)采集熱軋帶鋼表面數(shù)據(jù),經(jīng)過(guò)一定技術(shù)的圖像處理后把數(shù)字圖像信息傳遞到缺陷檢測(cè)模型進(jìn)行檢測(cè),再把檢測(cè)后的結(jié)果保存到文件系統(tǒng)和數(shù)據(jù)庫(kù)系統(tǒng),并將檢測(cè)結(jié)果在外部顯示器上進(jìn)行實(shí)時(shí)顯示。
該系統(tǒng)提高了缺陷檢測(cè)的準(zhǔn)確性和穩(wěn)定性,降低了檢測(cè)的復(fù)雜性和勞動(dòng)強(qiáng)度,并能24 小時(shí)不間斷的檢測(cè)??梢宰龅饺詣?dòng)無(wú)人值守,為進(jìn)一步更高效地研究熱軋帶鋼表面缺陷檢測(cè)成套系統(tǒng)提供了參考。
基于深度學(xué)習(xí)的熱軋帶鋼表面缺陷檢測(cè)系統(tǒng)在Windows11 (64 位) 系統(tǒng)環(huán)境下,使用Python3.8 作為開(kāi)發(fā)語(yǔ)言,PyCharm 2021.3.3 (Professional Edition) 作為開(kāi)發(fā)工具,選擇初始數(shù)據(jù)庫(kù)為MySQL,可供選擇的數(shù)據(jù)庫(kù)有Oracel 以及MS SQLServer。導(dǎo)入Numpy,OpenCV,Pytorch 等通過(guò)對(duì)圖像處理,實(shí)現(xiàn)檢測(cè)模型的設(shè)計(jì)、訓(xùn)練、調(diào)試和缺陷檢測(cè)。PyCharm(Professional Edition)是Python 腳本語(yǔ)言的應(yīng)用開(kāi)發(fā)環(huán)境(IDE),并入多種開(kāi)發(fā)框架,可以使用Git 等對(duì)代碼版本控制管理,此外PyCharm 提供了多種數(shù)量的集成函數(shù)庫(kù)以便快速高效的開(kāi)發(fā)完成Python 應(yīng)用程序。英特爾公司發(fā)起并參與開(kāi)發(fā)的一種開(kāi)源的跨平臺(tái)計(jì)算機(jī)視覺(jué)庫(kù)OpenCV(Open Source Computer Vision Library),有多種語(yǔ)言的SDK,包括C++、Python、Java 等,內(nèi)置了滿足大部分功能的函數(shù)和算法??蓪?duì)方便地對(duì)圖像數(shù)據(jù)進(jìn)行常用處理,包括對(duì)邊緣的檢測(cè)和圖像的分割,對(duì)目標(biāo)識(shí)別和對(duì)象的跟蹤檢測(cè)、對(duì)目標(biāo)特征的提取及對(duì)圖像和視頻的處理,常用在計(jì)算機(jī)視覺(jué)、機(jī)器人、智能視頻監(jiān)控等領(lǐng)域。MySQL 數(shù)據(jù)庫(kù)是目前使用較為廣泛的關(guān)系式數(shù)據(jù)庫(kù),數(shù)據(jù)存儲(chǔ)可靠,不會(huì)因?yàn)橄到y(tǒng)故障或其他原因?qū)е聰?shù)據(jù)丟失。能夠高效地處理大量數(shù)據(jù),其內(nèi)置的索引和查詢優(yōu)化器能夠使查詢快速執(zhí)行,并有免費(fèi)的版本。以操作靈活度強(qiáng)、體積小、速度快等顯著優(yōu)點(diǎn),可以在多種操作系統(tǒng)和編程語(yǔ)言中運(yùn)行,且與其他數(shù)據(jù)庫(kù)系統(tǒng)兼容,能應(yīng)用在大多數(shù)的平臺(tái)中。