代曉林,劉夢玫,生 群,李 林,苗延麒,韓偉
(1.大連惠友自動化有限公司,遼寧 大連 116083;2.大連船舶重工集團(tuán)有限公司,遼寧 大連 116083)
鋼板是鋼鐵行業(yè)的主要產(chǎn)品,占據(jù)行業(yè)總產(chǎn)量的65%。鋼板也是建筑業(yè)、航天航空業(yè)、機械制造業(yè),汽車制造業(yè)、造船業(yè)等制造工業(yè)的主要基礎(chǔ)材料。鋼板的任何質(zhì)量問題,都會對制造業(yè)造成巨大的經(jīng)濟(jì)損失,也會對鋼板制造商造成巨大的聲譽損失。對于厚度薄、寬度大的鋼板材料而言,表面缺陷是產(chǎn)品質(zhì)量最大的威脅。即使是偶爾發(fā)生的鋼板內(nèi)部缺陷,也會大概率的在鋼板表面表現(xiàn)出不同的形態(tài)。傳統(tǒng)的人工鋼板表面缺陷檢測,需要大量人工,效率低且遺漏率高。自動視覺檢測設(shè)備則可以實現(xiàn)高速、高精度、全自動化的缺陷檢測,極大提高產(chǎn)品質(zhì)量和生產(chǎn)效率。自動視覺檢測設(shè)備逐漸成為企業(yè)進(jìn)行鋼板表面質(zhì)量檢測的標(biāo)準(zhǔn)儀器。
自動視覺檢測設(shè)備的核心是高效的算法。早期的缺陷識別算法有統(tǒng)計識別算法、波譜法、模型法等。例如,Neogi[1]等提出基于梯度圖像的全局自適應(yīng)閾值算法;Ma[2]等提出了一種基于鄰域灰度差異的方法;Choi[3]等提出了一種基于形態(tài)增強的雙加博濾波器算法。這些方法對缺陷的規(guī)律性要求高,對小尺寸的缺陷識別精度差,且需要專業(yè)的探測設(shè)備配合獲取數(shù)據(jù)。隨著計算機GPU算力的不斷提高,以及計算機視覺算法的不斷突破,深度學(xué)習(xí)算法得到了廣泛的應(yīng)用。在鋼板缺陷檢測領(lǐng)域,深度學(xué)習(xí)算法可以克服以往算法的缺點,快速、高精度地識別多類別表面缺陷。
提出的改進(jìn)Swin Transformer算法可以準(zhǔn)確、快速地識別多種類別的鋼表面缺陷。相對于常用的Faster RCNN,Mask RCNN等算法,具有對小尺寸缺陷識別精度更高,訓(xùn)練及預(yù)測速度更快的優(yōu)勢。該算法使用Swin Transformer替代計算量較大的卷積神經(jīng)網(wǎng)絡(luò)(CNN),且將Swin Transformer與特征金字塔(FPN)相結(jié)合,使之能夠保留小缺陷數(shù)據(jù),預(yù)測精度更高。
常見的鋼板表面缺陷有6種[4],分別是內(nèi)含物、劃痕、軋制氧化皮、開裂、點蝕表面和斑塊,如圖6所示,每種缺陷的基本特征:
(1)內(nèi)含物:在灰度圖中的特征是暗色點狀及帶狀物,長度、寬度不一,位置隨機。
(2)劃痕:在灰度圖中的特征是明亮的細(xì)長條形物,寬度較小,長度較大,一條劃痕附件經(jīng)常有其他劃痕。
(3)軋制氧化皮:在灰度圖中的特征是暗色斑點,有凹凸感,比點蝕大,比斑塊小。
圖1 鋼表面缺陷類型示例
(4)開裂:在灰度圖中的特征是不規(guī)則的龜裂紋路,多條龜裂同時存在的情況比較常見。
(5)點蝕表面:在灰度圖中的特征是細(xì)小的暗色小點,密集度高,數(shù)量多,多點蝕聚集在一起,大面積出現(xiàn)。
(6)斑塊:在灰度圖中的特征是較大面積的暗色,形狀不規(guī)則,經(jīng)常單獨出現(xiàn),位置隨機。
從對每種缺陷基本特征的分析中可以看出,不同種類的缺陷在灰度圖上的特征有如下特點:點蝕表面、開裂的缺陷尺寸小;軋制氧化皮的灰度對比不明顯;內(nèi)含物和劃痕的缺陷尺寸較為相似。傳統(tǒng)算法難以處理分析具有這些特征的缺陷,因此采用基于深度學(xué)習(xí)的視覺檢測算法進(jìn)行處理[5-6]。
現(xiàn)有的目標(biāo)檢測方法中,例如Faster RCNN,Mask RCNN等,多使用CNN和上采樣作為特征提取的方法,卷積核大小及池化方法的選擇會嚴(yán)重影響檢測的精度及效率。卷積核越小,所需要參數(shù)和計算量也越小,但是感受野也越?。簧喜蓸哟螖?shù)越多,感受野也越大,但是丟失的像素信息越多。Swin Transformer做特征提取,則既可以盡可能多的保留原始像素信息,也可以減少計算量。
圖2是兩個連續(xù)的Swin Transformer模塊,一個Swin Transformer模塊由一個帶兩層的多層感知機(MLP)的非重疊局部窗口多頭自注意力模塊(WMSA)和移位窗口多頭自注意力模塊(SW-MSA)組成。在每個MSA模塊和每個MLP之前使用層歸一化(LayerNorm),并在每個MSA和MLP之后使用殘差連接。
如圖3所示,W-SMA是將特征圖用 大小的窗口進(jìn)行劃分,并在每個窗口中進(jìn)行多頭自注意力操作。在圖3中的多頭自注意力機制中,以頭數(shù)取2說明自注意力機制的運算過程,即通過注意力函數(shù)得到每個子窗的變量(query)、關(guān)鍵字(key)、關(guān)系值(value)集合,然后將該集合映射成頭數(shù)為2的輸出,接著將對應(yīng)位置上的q,k,v進(jìn)行加權(quán)求,最后進(jìn)行多頭數(shù)據(jù)拼接。
SW-SMA是將特征圖用M×M大小的窗口進(jìn)行切分,并對窗口實行移位,實現(xiàn)不同窗口間的信息交互。如圖4所示,被劃分后的窗口沿對角線方向向下移動,然后再將移出坐標(biāo)軸區(qū)域的特征圖移回至相應(yīng)位置,即可獲得新的窗口。最后在分割后的每個窗口進(jìn)行多頭自注意力操作。
圖2 Swin Transformer模塊
圖3 非重疊局部窗口多頭自注意力模塊
圖4 移位窗口多頭自注意力模塊
如圖5所示,Swin Transformer作為特征提取的骨干網(wǎng)絡(luò)能夠保留小尺度缺陷信息,且運算速度快。為了對各種尺寸的缺陷進(jìn)行識別、分類和檢測,還需要將Swin Transformer骨干特征提取網(wǎng)絡(luò)與特征金字塔(FPN)、區(qū)域生成網(wǎng)絡(luò)(RPN)、興趣區(qū)域匹配(ROI Align)及全連接網(wǎng)絡(luò)(FC)進(jìn)行組合。
在FPN網(wǎng)絡(luò)結(jié)構(gòu)中,每一個階段(Stage)的輸出代表不同尺寸的特征圖,對其進(jìn)行上采樣后,與上一個階段的特征圖進(jìn)行融合,新得到的特征圖就包含了不同尺寸缺陷的特征。把特征圖P2、P3、P4、P5輸入RPN區(qū)域建議網(wǎng)絡(luò),根據(jù)原圖尺寸獲取預(yù)定個數(shù)的建議框,對一個物體生成多個候選建議框;把候選建議框輸入進(jìn)行二值分類,然后使用RoI Align進(jìn)行池化綜合,再經(jīng)過全連接網(wǎng)絡(luò)進(jìn)行分類和回歸,得到檢測結(jié)果和相應(yīng)的損失。
采用“[]×d”表示Swin Transformer迭代的次數(shù),win.sz.表示對特征圖進(jìn)行劃分的窗口大小,dim表示通道數(shù),head表示頭數(shù)。則Swin Transformer特征提取網(wǎng)絡(luò)參數(shù)具體見表1。
圖5 基于Swin Transformer的鋼板表面缺陷識別網(wǎng)絡(luò)
表1 Swin Transformer網(wǎng)絡(luò)參數(shù)
原始數(shù)據(jù)采用NEU熱軋帶鋼表面缺陷數(shù)據(jù)庫,包括內(nèi)含物、劃痕、軋制氧化皮、開裂、點蝕表面和斑塊6類缺陷,每類缺陷圖片300張,一共1800張鋼板表面缺陷圖片,圖片尺寸為(200×200)px。使用OpenCV進(jìn)行數(shù)據(jù)增強,將每類圖片增強至600張,一共3600張圖片。其中3000張圖片作為訓(xùn)練樣本,600圖片作為測試一樣本。
為排除試驗環(huán)境對測試數(shù)據(jù)的干擾,所有試驗均在同一臺計算機上進(jìn)行。計算機的操作系統(tǒng)為CentOS 8.0,CPU為Intel Core i7 8700,GPU為RTX8000,內(nèi)存為DDR$3200MHz 32GB,使用Python,OpenCV對數(shù)據(jù)進(jìn)行預(yù)處理,深度學(xué)習(xí)框架為Pytorch v1.10.0。
在評估對鋼板表面缺陷圖片的檢測效果上,使用不同類別的所有類別的平均精度mAP(mean Average Precision)與識別幀率作為評價指標(biāo)。每個模型的超參數(shù)設(shè)置相同,初始學(xué)習(xí)率為0.0001;使用adam優(yōu)化器;學(xué)習(xí)衰減率為0.1,衰減步長為400,衰減周期為50。Batch_size為8,375個batch為一個epoch,訓(xùn)練迭代100個epoch。表2為6種缺陷在測試集數(shù)據(jù)集上的檢測精度與mAP。
表2 6種缺陷的檢測精度
如 表2所 示,YOLO V4,F(xiàn)aster R-CNN,Swin Transformer算法的mAP分別為85.91%,88.81%,91.19%。Swin Transformer算法具有更好的檢測精度。每種算法的檢測速度及權(quán)重文件大小見表3。
表3 缺陷的檢測速度與權(quán)重文件大小
由表3可知,Swin Transformer的檢測速度比Faster R-CNN更快,且權(quán)重文件更小,參數(shù)更少;比YOLO V4的檢測速度慢,但是也可以滿足實時檢測的速度要求。因此,提出的基于Swin Transformer骨干網(wǎng)絡(luò)的鋼板表面缺陷檢測方法,不僅能夠滿足工業(yè)生產(chǎn)中缺陷檢測的速度要求,做到實時檢測;而且檢測精度更高。
用基于Swin Transformer骨干網(wǎng)絡(luò)的鋼板表面缺陷檢測方法檢測鋼板表面常見的6種缺陷。該方法解決了以往方法對小尺寸缺陷識別精度差的問題,且能用較少的模型參數(shù)實現(xiàn)較快的計算速度。與YOLO V4和Faster R-CNN的對比試驗中可以看出,Swin Transformer的mAP分別提高了5.28%和2.38%。該算法檢測速度達(dá)到了35幀/s,可以實現(xiàn)實時檢測。