?

基于雙邊實時語義分割的金屬缺陷檢測

2024-01-05 06:07張偉娜李衛東李曉娟趙子琪
河北省科學院學報 2023年6期
關鍵詞:雙路分支語義

張偉娜,李衛東,李曉娟,趙子琪

(河北經貿大學信息技術學院,河北 石家莊 050061)

0 引言

帶鋼作為鋼鐵類主要產品之一,是現代化工業生產中不可或缺的原材料。然而,帶鋼表面的油污、劃痕、氧化皮等缺陷會嚴重影響產品的抗腐蝕能力、耐磨性以及疲勞強度。因此,設計一種輕量化語義分割網絡實時檢測帶鋼表面質量對制造行業具有重要意義。

由于帶鋼表面缺陷類內差異明顯、類間相似性較高。傳統的缺陷檢測方法如頻閃法[1]、無損檢測[2,3]以及基于圖像處理的方法[4]等效率低下、主觀性強、泛化性差且無法滿足實時性要求?;谏疃葘W習的方法都是通過擴大感受野實現對物體變化的感知,如Chen等人[5]研究了在Deeplabv2中引入空洞卷積增強模型對特征變化的感知,但過多使用空洞卷積會導致網絡偽影;Yang等人[6]提出DenseASPP空間金字塔池化對骨干網不同尺度下提取的特征進行融合,但池化會造成信息的丟失。對于類間相似性問題,模型需要實現對圖中不同類別對象的整體感知,細化邊緣特征。Segnet[7]、UNet[8]將高維抽象特征上采樣與低層邊緣特征進行融合,聚合空間信息,但是在實時場景下,輕量化網絡會剪裁模型,導致網絡中Decoder不能通過淺層網絡恢復空間信息。對于實時任務,一些輕量化分割網絡如ENet[9]、ICNet[10]通過壓縮圖像和模型來降低計算量,但會大大降低精度。

針對以上問題,本文采用較為新穎的雙邊實時分割網絡模型Bisenetv2[11]進行缺陷的分割,該模型將空間信息和語義信息單獨進行處理,然后進行特征融合,做到在檢測缺陷方面速度和精度的相對平衡。針對檢測情況對原模型進行部分改進,在避免網絡偽影和信息丟失的情況下充分提取上下文信息增強模型對物體的整體感知。利用本文模型在NEU數據集[12]上進行測試,相較于原始Bisenetv2網絡,本文模型能更好地區分類內差異信息和類間相似特征,并且在參數量減少4%的情況下,MIoU值提升了11.1%,既保證了推理速度又提升了分割精度。

1 網絡原理與結構

1.1 Bisenetv2算法原理

語義分割既需要豐富的空間信息,又需要相當大的感受野。Bisenetv2是一種雙路分割網絡[11],其結構如圖1所示,模型主要由三部分組成,雙路主干、聚合層和助推部分。雙路主干的空間分支使用寬通道小步幅的卷積操作來提取圖像淺層次的空間細節,該分支特征表征了物體的邊緣細節。雙路主干的語義分支通道容量較低使得該分支輕量化,網絡層數較深旨在捕獲高級語義,在語義分支的最后一層接一個全局平均池化來嵌入全局上下文響應。因為兩路分支提取的特征是獨立的,需要設計聚合層來融合空間分支和語義分支兩個層次的特征表示。在助推部分,設計由3×3卷積和1×1卷積組成的輔助分割頭來增強訓練階段的特征提取,可以將分割頭插入不同位置進行在線增強策略。測試階段可以舍棄,因此并不占用計算資源。Bisenetv2網絡的雙路分割策略實現了分割精度和推理速度的良好平衡。

圖1 Bisenetv2結構圖

1.2 本文模型的網絡總體架構

隨著卷積層的不斷堆疊,缺陷圖像的細節信息會逐步消失,網絡在實際運用中難以區分特征差異較大的同類缺陷并將其歸為背景造成邊緣過分分割和內部欠分割現象。針對上述問題,本文提出的雙邊實時語義分割網絡充分考慮上下文信息來擴大感受野,其網絡總體結構如圖2所示。

圖2 本文模型網絡總體架構

改進了語義分支的上下文嵌入塊以感知不同缺陷對象的區別和聯系。聚合層將具有全局上下文信息的高級特征經過兩倍上采樣和四倍上采樣通過門控機制與低層特征進行融合,更好地過濾噪聲,彌補缺陷圖像在不斷下采樣過程中丟失的細節信息。在模型的預測階段引入兩個連續的交叉注意網絡(criss-cross attention,CC)[13],每個像素最終可以從所有像素捕獲長期依賴關系,以較低的內存和計算成本獲得密集上下文信息。主干部分采用了Faster Bisenet[14]的思想,使用1×1卷積整合了一個共享的淺層網絡對細節特征進行編碼。語義信息仍然可以通過圖2中的語義分支卷積塊對低分辨率特征進行有效學習。在圖2的各階段加入分割頭,同時引入深度監督指導訓練過程,通過控制圖中α1、α2、α3和α來控制各階段損失函數所占比重,經過實驗驗證將α1、α2、α3設為0.1,α設為0.7作為最終損失函數組成。圖2中卷積塊上邊的數字代表卷積核通道大小,下邊的分數代表特征圖分辨率與原圖的比值。

1.3 雙路分支

空間分支的實例化包含三個階段,即將原圖下采樣到1/8大小,每一層都是卷積層,然后是批處理歸一化(BN)和激活函數(Relu)。語義分支的前三層特征共享空間分支的前三層,如圖2中主干部分所示,由1×1卷積連接,第四層和第五層由聚合擴展層(gather-and-expansion layer,GE層)提取特征,其內部結構如圖3所示。

圖3 聚合擴展層

聚合擴展層包括:①用卷積核大小為3的普通卷積聚合特征響應并將其擴展到更高維空間;②在聚合擴展層的每個輸出分支上獨立執行3×3深度卷積;③最后使用1×1卷積進行通道整合,將深度卷積的輸出投影到一個低通道容量空間。當stride=2時,采用兩個3×3深度卷積,進一步擴大了感受野,一個3×3深度可分卷積作為殘差連接進一步加強特征。主干部分雙路分支的實例化見表1,其中opr為操作,k為卷積核大小,c為通道數,s為步幅大小,r為重復次數。

表1 雙路分支實例化

1.4 上下文引導塊

語義分支需要大的接受域捕獲高級語義,但是Bisenetv2的上下文嵌入(context embedding)塊僅使用全局平均池化來獲取全局信息,提取到的信息不夠豐富。因此在語義分支之后設計一個上下文引導(context guided,CG)塊是很有必要的,本文借鑒于CGNet[15],將原文中CG塊的全局平均池化之后的全連接層改為1×1卷積,可以減少參數量并且不破壞圖片空間結構,具體如圖4所示。

圖4 上下文引導塊

圖4中左上方虛線框內為局部特征提取器floc(x),x代表此部分輸入特征,使用3×3卷積獲取局部特征。左下方框內為周圍上下文提取器fsur(x),使用3×3空洞卷積獲取周圍特征,通過控制空洞系數可以調節周圍視野大小,空洞系數設置為3。之后為聯合特征提取器fjoi(x),從floc(x)和fsur(x)中獲取關鍵特征,fjoi(x)被設計為通道連接操作,批處理歸一化加一個激活函數PReLU。最后虛線框內fglo(x)提取全局信息以改進聯合特征,fglo(x)使用一個全局平均池化,聚合對應的全局上下文,然后使用1×1卷積進行擴通道的特征整合,所提取的信息被視作一個加權向量應用于通道細化聯合特征。fglo(x)的細化操作對于輸入圖像是自適應的,因為提取的全局上下文是從輸入圖像生成的。此外,CG塊使用由圖中箭頭所示的殘差連接。這有助于學習高度復雜的特征,并在訓練過程中改善梯度反向傳播。

1.5 雙門控引導聚合層

由于細節分支和語義分支所提取的特征是不同層次的,兩個分支的相關信息較少,簡單的信息融合會導致聚合結果的性能下降。受門控完全融合GGF模塊[16]的啟發,設計了雙門控引導聚合層(dual gated guided aggregation layer,DGA層),DGA在H/16×W/16和H/8×W/8兩個層次對空間分支和語義分支的特征進行選擇性融合,H和W代表原圖的高和寬大小。門控是一種成熟的機制,使用Sigmoid操作衡量特征圖中每個特征向量的有用性,以有效增強有用信息和抑制無用信息。然后利用空間分支中有價值的空間特征來彌補語義分支中缺失的細節。其結構設計如圖5所示,公式定義如下:

圖5 雙門控引導聚合層

Out=[(1+Gspa)·Xspa+(1-Gspa)·Gsem·Xsem]+

[(1+Gspa2)·Xspa2+(1-Gspa2)·Gsem2·Xsem2]

(1)

其中,·為通道維度上逐元素相乘,+為通道維度上逐元素相加,X為兩個分支的輸出特征圖,Xspa2,Xsem2,Gspa2,Gsem2為H/16×W/16層次的信息,每個門值G為對應特征的Sigmoid輸出。由公式(1)可知,只有當Gsem值較大而Gspa值較小時空間分支的特征向量可以融合來自語義分支的特征向量,即當語義分支擁有空間分支所缺少的有用信息時才會發送信息。門控機制可以通過門將有用的信息調節到正確的位置,從而避免信息冗余。與Bisenetv2中的簡單卷積聚合相比,DGA能逐像素衡量每個特征向量的有用性,避免了冗余操作,有效聚合特征。

1.6 交叉注意模塊

長期依賴關系可以捕獲有用的上下文信息,從而有利于語義理解,本文在特征融合之后模型預測之前利用循環交叉注意(recurrent criss-cross attention,RCCA)模塊[13]在基于細分的基準上實現優越的性能??v橫交錯的注意模塊在水平和垂直方向上收集上下文信息,以增強像素的代表能力,獲得聚合遠程上下文的新特征圖。由于基于自注意力的方法需要生成巨大的注意映射來度量每個像素對之間的關系,其計算復雜度較高,因此將交叉注意模塊加在分辨率較小的特征融合之后,可以減少大量參數同時在預測之前增強特征,其結構設計如圖6所示。

圖6 交叉注意模塊

給定局部特征X∈RC×H×W,對局部特征分別進行三個1×1卷積操作生成三個特征映射Q,K,V,其中{Q,K}∈RC′×W×H,V∈RC×W×H,由于降維Q,K特征的通道數小于輸入通道數,然后對獲得的映射Q,K進行Affinity運算和Softmax獲得注意映射A∈R(H+W-1)×W×H。特征圖Q在空間維度的每一個位置u處,可以得到一個向量Qu∈Rc′,對于Q中每一個位置u,從K中與u在同一行同一列的向量提取特征,可以得到一個集合,Ωi,u∈Rc′,Ω∈Rc′代表特征圖Ω中位置i,u處的特征向量。對Q中的每個位置u都與K中對應的Ωi,u進行向量相乘即Affinity操作,即可以獲得一個新的特征圖D,Affinity操作如公式(2)所示:

(2)

di,u∈D為特征Qu與Ωi,u的關聯度,i=[1,...,(H+W-1)],D∈R(H+W-1)×W×C。然后,沿著通道維度在D上應用一個softmax層,得到注意映射A代表Q與K的關聯度。同理,特征圖V在空間維度的每一個位置u處,可以得到向量Vu∈RC和集合Φu∈R(H+W-1)×W×C。集合Φu為V中與位置u同行或同列的特征向量集合,通過Aggregation運算收集遠程上下文信息,運算如公式(3):

(3)

其中,Xu′為輸出特征映射X′∈RC×W×H中對應每一個位置u處的特征向量。Ai,u為A在通道i處位置u處的標量值。將蘊含的遠程上下文信息以權值的方式添加到局部特征X中,增強局部特征的像素表示。由于聚合了局部特征水平和垂直方向的周圍信息它具有廣闊的語義視野,并根據空間維度的注意映射有選擇地聚合語義,這種特征表示實現了計算速度與捕獲長期依賴的雙贏,對分割任務具有更強的魯棒性。

盡管縱橫交錯的注意模塊可以在水平和垂直方向上捕獲長距離的上下文信息,但像素與周圍像素之間的連接仍然稀疏。獲取密集的上下文信息有助于語義分割。本文在上述交叉注意模塊的基礎上引入了循環交叉注意模塊,可以通過控制循環次數決定獲取周圍信息的感受野大小,本文使用兩次循環,在第一個循環中,交叉注意模塊以局部特征映射X作為輸入,輸出特征映射X′,其中X與X′形狀大小相同。在第二個循環中,交叉注意模塊以X′為輸入特征映射,X″為輸出特征映射。

如圖2中循環交叉注意部分所示,本文使用兩個連續的交叉注意模塊,足以從所有像素中獲取遠程依賴關系,生成新的特征圖,具有密集豐富的上下文信息。

2 實驗

2.1 數據集

本文實驗所用圖像數據來自東北大學的NEU缺陷數據集,選取夾雜物(Inclusion)、斑塊(Patches)、劃痕(Scraches)三類圖像樣本進行語義級別標注,并對其進行拼接、翻轉等操作擴充數據,最后包括訓練集圖片4 632張,測試集圖片840張。實驗將圖片分辨率大小調整為480×480,為了標準化數據對輸入的圖像及其對應的掩膜進行歸一化處理。

2.2 實驗設置

實驗所用操作系統為Windows10, 顯卡配置為NVIDIA GeForce MX250,編程語言采用Python3.6集成工具OpenCV、Pandas等擴展庫和PyTorch深度學習框架。

由于網絡模型較小,本文采用從頭訓練的方式,設置訓練迭代次數200次,采用SGD優化器進行迭代優化,初始學習率設置為1e-3,動量設置為0.9,衰減率設置為5e-4,使用動態學習率衰減策略,Batchsize設為8。

2.3 評價指標

本實驗使用平均交并比(MIoU)和平均F1分數(MF)來評價模型的性能,評價指標基于混淆矩陣,其中包含真陽性(TP)、假陽性(FP)、真陰性(TN)和假陰性(FN)四項。對于每個類別,F1分數和IoU計算公式如下:

(4)

(5)

其中Ppre=TTP/(TTP+EFP),Rrec=TTP/(TTP+FFN),此外,MIoU為所有類別IIoU的平均值,MF為所有類別F1的平均值。

2.4 消融實驗

為了驗證本文模型對于帶鋼表面實時缺陷檢測的有效性,分別利用Bisenetv2,Bisenetv2+RCCA,Bisenetv2(特征共享)+RCCA+CG,Bisenetv2(特征共享)+RCCA+CG+DGA(本文模型)進行消融實驗,結果見表2。

表2 消融實驗對比

從表2可以看出,本文模型改進非常有效,原模型加上循環交叉注意網絡、上下文引導塊等獲取全局信息之后,MIoU提高了3.8%,在此基礎上加入本文設計的雙門控引導聚合層之后,MIoU提升了7.3%??傮w來說本文模型在減少0.14 M參數量和計算量的情況下MIoU提升了11.1%。對比改進前后模型的MIoU值可以看出本文模型具有更好的像素表達能力。

在NEU缺陷數據集中選取840張數據進行測試,部分檢測結果如圖7所示。圖7中每一行代表不同的測試圖片。從第一行可以看出,對于簡單背景、缺陷類別數較少的情況,兩者都能達到不錯的檢測效果。從下邊幾行可以看出在復雜背景下,Bisenetv2漏檢、多檢、錯檢的情況,而本文模型可以檢測出第二行和第四行中對比度較弱的內含物如圖7中框內所示,而原模型會漏檢。對于第三行和第五行中框內原模型多檢的情況,本文模型可以更好地對比類間信息,防止邊緣誤差。

圖7 檢測結果對比圖

2.5 對比實驗

為了進一步驗證模型有效性,將本文模型與當前主流語義分割模型進行對比,包括通用語義分割模型Segnet[7]、DenseASPP[6]、實時語義分割模型Enet[9]、CGNet[15]、Bisenetv1_Res18[17]、Bisenetv2等模型進行對比,結果見表3。從表3中可以看出本文模型精確度高于其他模型,參數量除了比ENet、CGNet略高之外遠遠小于其他模型,進一步驗證了本文模型的有效性。

3 結束語

針對缺陷檢測中存在的類內差異性和類間相似性,以及實時語義分割網絡精確度不高的問題,本文提出一種改進的Bisenetv2模型,通過引入全局信息以較低的計算成本和內存成本捕獲了密集上下文信息,提高了精確度。設計雙門控融合機制學習多層次特征圖,更好地彌補了空間分支和語義分支之間的差距,使細節特征可以融合到各級別特征中,提高了聚合效果。經實驗驗證,本文模型能以較快檢測速度和較高檢測精度完成帶鋼表面缺陷的分割任務,可大大減少高強度人工作業,對帶鋼質量的定期巡檢有一定參考價值。

由于帶鋼表面缺陷類型復雜多樣,數據采集標注任務有一定難度,本文僅對內含物、斑塊、劃痕三類容易標注缺陷類型進行了訓練,開裂、氧化皮、軋制鱗片等其他缺陷類型暫未進行實驗。為進一步提升方法的實用性和魯棒性,未來的研究將會拓寬途徑收集標注更多的數據樣本或者通過半監督學習降低對大量數據樣本的依賴,使技術可以應用到更復雜多變的場景中。

猜你喜歡
雙路分支語義
語言與語義
巧分支與枝
一種雙路隔離輸出反激變換器的設計
調度集中系統局間數據的雙路冗余傳輸方案
一類擬齊次多項式中心的極限環分支
“上”與“下”語義的不對稱性及其認知闡釋
一種單電感雙路輸出LED驅動電路分析
認知范疇模糊與語義模糊
生成分支q-矩陣的零流出性
碩果累累
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合