韓越興,楊 珅,陳僑川,王 冰
(1.上海大學 計算機工程與科學學院,上海 200444;2.之江實驗室,浙江 杭州 311100)
材料基因工程掀起了新材料研發的革命,而準確對材料微觀結構分割與識別能夠為材料基因工程提供數據基礎。與通用的數據集,例如COCO[1]、CityScapes[2]等數據集相比,材料圖像數據集存在以下特點:①小樣本特點,由于制備成本等因素,獲取的數據集較少;②具有復雜的紋理,相的邊界模糊。③材料圖像中相的分布不平衡,不同數據集的數量相差較大。
材料圖像分割方法分為兩類,分別是基于非學習的圖像處理算法和基于機器學習和深度學習方法[3]?;诜菍W習的圖像處理算法主要是將傳統的圖像處理算法應用于材料圖像算法,但只適用于對比度明顯的簡單紋理的材料圖像?;跈C器學習方法和深度學習方法需要大量的訓練數據和人工標注來建立模型,泛化性能較差,因此其方法在材料圖像處理方面遇到了很多困難。
在材料圖像中,相內像素具有高度相似性,蘊藏豐富的紋理信息,因此如果能夠深度挖掘每相像素豐富的高低層語義特征信息并融合,就能夠精確識別分割各相。針對各相紋理相似的材料圖像,本文提出一種基于復雜紋理特征融合的材料圖像分割方法,使用FCN[4]作為基礎網絡,在編碼階段,使用VGG16作為本文的骨干網絡,融合高低層語義信息;在解碼階段,對恢復每層特征圖施加注意力機制(Attention block),保留關鍵的特征,設計和添加的3種模塊深度挖掘紋理特征,使用較少的樣本實現對材料圖像各相的精確分割,為解決材料圖像分割中的小樣本問題提供新思路。同時,本文采用并改進Dice loss以優化分割結果來解決數據分布不均衡問題。
針對材料圖像微觀結構識別與分割方法的相關研究可分為兩類。第一類是基于非學習的圖像處理算法,即將傳統的圖像處理算法應用于材料圖像。李等[4]使用閾值法檢測單板穿孔缺陷,但閾值方法僅在具有高對比度的材料圖像中表現良好。Zhao等[5]通過構建馬爾可夫隨機場對材料圖像分割,分割結果一定程度上有提升;Lopez等[6]在材料圖像中使用形態濾波方法,在簡單的材料圖像上表現良好。Chen等[7]和Liu等[8]改進分水嶺算法以適應材料圖像,但容易產生過分割的問題。Han等[9]提出了一種方法來自動獲得EBSD花樣(菊池帶)和交點的位置,可以量化地描述菊池帶的信息并可以檢測出更多準確的菊池帶和交點。Lin等[10]利用CNL(control the number of landmarks)方法、改進的霍夫變換方法、GMS(grid-based motion statistics)方法完成鈣鈦礦晶膜的熒光防偽標簽識別。Wang等[11]提出一種基于數學形態學方法識別熱障涂層形貌特征并計算形貌特征參數??偟膩碚f,基于非學習的材料圖像處理算法執行效率較高,但存在一些缺陷,如易產生過分割或欠分割的問題,容易從材料圖像上提取虛假邊緣,使用范圍有限。因此基于非學習的圖像處理算法只適用于紋理簡單的材料圖像或應用于圖像處理預處理步驟。
第二類是基于機器學習和深度學習的材料圖像分割算法。Han等[12]提出了一種混合多類算法的方法來分割金相圖像。在文獻[13]中,Wang等提出了一種基于圖像處理和機器學習方法的重疊納米顆粒自動分割技術。Liu等[14]開發了一種方便可靠的基于人工智能的認證策略,可以對具有不同清晰度、亮度、旋轉度、放大度的不可克隆的花狀圖案進行快速認證。Sheng等[15]針對熱電化合物,提出兩種機器學習圖像分割策略:應用全連接的神經網絡批量分割背散射電子圖像中的不同相,同時使用K-Means算法在熱電化合物圖像中尋找可能被忽略的化合物。Lai等[16]針對材料圖像中一定數量的低分辨率相同材質陶瓷圖像,利用聚類算法識別和分割邊界??聨r等[17]提出一種基于Transformer的復合材料多源圖像實時實例分割網絡Trans-Yolact,用來對復合材料缺陷進行檢測、分類、分割。機器學習模型需要預定義特征,具有一定的主觀性,但其算法的適用范圍有限;同時,深度學習模型有效訓練需要大量的訓練樣本。這些限制了目前機器學習和深度學習算法在材料圖像分割任務的應用。
如圖1所示,本文的網絡包括兩個階段:編碼階段和解碼階段。在編碼階段,首先使用骨干網絡VGG16(VGG block)作為卷積層;其次,將每層的特征圖放入本文改進的級聯的特征融合模塊(CFF block),目的是融合高低層語義信息;然后,將融合的特征圖放入多尺度學習模塊(multi-scale block)進一步提取紋理特征。在解碼階段,對恢復每層特征圖施加注意力機制(Attention block),本文結合空間注意力機制和通道注意力機制對特征圖附加權重,減少特征圖的維數,保留關鍵的特征圖。

圖1 改進的FCN架構
融合高層和低層的特征是提高分割性能的一個重要方法。低層特征具有高分辨率,包含位置與細節信息,但包含的語義信息較少,噪聲較多;高層特征則相反,有較強的語義感知能力,但對細節的感知能力較差。因此,將高層特征與低層特征融合能夠使得網絡深度挖掘復雜的紋理特征,從而提高分割效果。
本文提出一種級聯的特征融合模塊。如圖2所示,F1,F2是不同層輸出的特征圖,分辨率分別為C1×H1×W1和C2×H2×W2, 其中F2的分辨率是F1的2倍,首先,使用上采樣方法——Sub-pixel卷積[18]將F1上采樣至與F2同樣大小,并保留關鍵紋理信息;其次,使用3×3的空洞卷積細化上采樣后的特征圖,空洞卷積只需要較小的卷積核就能實現相同的感受野(常規卷積需要7×7),進一步減少了計算量。然后,使用1×1的卷積將F2的通道數與F1的通道數統一,使用兩個批量歸一化層(batch norm)處理這兩種特征圖;最后對處理后的兩種特征圖進行逐元素相加,使用批量歸一化層(ReLU)處理,最終輸出的融合的特征圖表示為F3, 大小為C3×H2×W2, 有

圖2 級聯的特征融合模塊
F3=F(F1,F2)
(1)
其中,F(·) 表示級聯的特征融合模塊。
本文將級聯的特征融合模塊(CFF block)輸出的特征圖放入多尺度學習模塊(multi-scale block)進一步提取高低層語義信息。如圖3所示,本文的多尺度學習模塊包含兩種不同的多尺度學習模塊——密集的空洞卷積模塊(DAC block)[20]及金字塔池化模塊(PSP block)[19]。密集的空洞卷積模塊基于InceptionV3架構,包含有3種不同擴張率的空洞卷積,擴張率分別是1、3和5,有4個級聯的分支,每個分支的感受野分別是3、7、9和19,具有大的感受野的卷積可以提取和生成更多抽象特征,而具有小的感受野的卷積可以提取更多細節的特征,通過結合不同感受野的空洞卷積,密集的空洞卷積模塊捕獲了不同粒度的信息。本文將密集的空洞卷積模塊輸出的特征圖放入金字塔池化模塊進一步細化特征圖,目的是獲取不同層級的上下文語義信息。首先,使用平均池化層(average-pooling)將輸入的特征圖下采樣至原特征圖的1/16、1/8、1/4、1/2,使用大小1×1的卷積將特征圖的通道數減少為原來的1/4;其次,將4種不同的層級的特征圖上采樣至與輸入特征圖同樣大小;然后,將輸出的4種層級的特征圖與輸入特征圖做合并,即將融合得到的全局特征與原始特征圖連接起來,輸出特征圖F′3。 特征合并的過程其實就是融合目標的細節特征(淺層特征)和全局特征(深層特征),也就是捕獲上下文信息的過程

圖3 多尺度學習模塊
F′3=P(DA(F3))
(2)
其中,DA(·) 表示密集的空洞卷積模塊,P(·) 表示金字塔池化模塊。
本文采用空間與通道混合注意力機制,目的對特征圖附加權重,保留關鍵特征圖,減少計算參數量。如圖4(a)所示,首先,對特征圖施加通道注意力機制,Fl是上一層的特征圖,Fg為下一層的特征圖,大小為Fl的1/2,對Fl進行下采樣至與Fg同樣大??;其次,對Fl和Fg分別使用線性變換Wl,Wg, 線性變換是指對輸入張量使用大小為1×1×1的通道卷積;然后,將Fl和Fg拼接,經過leaky ReLU操作、線性變化Ψ、sigmoid操作和重采樣(resampler)生成注意力系數α。最后,F′l表示對Fl施加注意力系數后的特征圖

圖4 注意力機制模塊
F′l=αFl
(3)
通過通道注意力機制,每張特征圖都獲得了相應的權重,接著本文使用空間注意力機制,獲取每張特征圖的重要區域。如圖4(b)所示,首先,由通道注意力機制輸出的特征圖F′l經過一系列的卷積操作得到特征圖l, 卷積操作包括一個1×1卷積和兩個3×3卷積;然后,由softmax算子在空間值上生成像素級注意力圖L∈RH*W,H表示特征圖l的高度,W表示特征圖l的寬度
Li=eli,i=[1,2,3…,H*W]
(4)
其中,li表示特征圖l中像素i的像素值。
將注意力圖L與輸入的特征圖F′l進行元素級乘法得到特征圖F″l
F″l=LF′l
(5)

(6)
其中,β為超參數,控制Dice損失權重。
如圖5所示,本文在4種數據集上評估所提方法,3種碳鋼數據集和鈦合金(TiAl)數據集。其中碳鋼數據集來源于公開的大型碳鋼數據庫UHCSDB(ultra high carbon steel micrograph database)[21],本文從數據庫選擇了3種碳鋼數據集,分別表示為Carbon steel F、Carbon steel G和Carbon steel H。4種數據訓練集均為兩張,Carbon steel F的測試集為4張,其余的數據測試集均為3張。

圖5 數據集介紹
本網絡的實驗服務器配有一塊Intel至強 E5-2620 V4、2.10 GHz的CPU和128 G的內存,3塊Nvidia Tesla K80顯卡。訓練網絡模型時設置迭代次數epoch為100,通常迭代次數epoch不大于75網絡參數即可收斂至最優值附近,采用Adam一階優化算法優化網絡參數,基于訓練數據迭代地更新神經網絡權重;設置權重衰減系數,以減輕模型過擬合的問題;為了進一步得到更加優秀的網絡性能,設置學習率為0.01,采用動態減小學習率的方案來進一步逼近網絡參數最優值,當一定epoch內損失值不再下降,將學習率lr乘上衰減因子以減小學習率。損失函數超參數β取2。
平均交并比(mIoU)和平均Dice(mDice)是常用的語義分割結果評估指標,它能真實的反映預測的分割效果與真實分割結果的差異性,具體定義如下:圖像中共k類(包括背景),真正例(TP)表示像素實際類別為正例,模型預測為正例的個數;真反例(TN)表示像素類別實際為反例,模型預測為正例的個數;假反例(FN)表示像素實際類別為正例,模型預測為負例的個數;假正例(FP)表示像素實際類別為負例,模型預測為負例的個數。第i類像素的交并比(IoU)[26]的定義為
(7)
平均交并比(mIoU)即為每類IoU的平均值
(8)
第i類像素的Dice[25]的定義為
(9)
平均Dice(mDice)即為每類Dice的平均值
(10)
本文在4種數據集上評估本文的提出的方法(our method)并和其它經典的分割方法比較,包括CENet[20]、UNet[21]、UNet++[22]、UNet+++[23]、Attention-UNet[24]和FCN[4],評價標準使用常用的語義分割度量方法—平均交并比(mIoU)。圖6展示了測試結果,表1展示了結果的平均mIoU和平均Dice。在4種數據集上,本文的方法均取得最好的結果,平均mIoU均在0.75以上,平均mDice均在0.85以上,泛化能力較強。在TiAl數據集上的mIoU和mDice平均值分別為0.750和0.853,Carbon steel F、Carbon steel G、Carbon steel H數據集都來自碳鋼數據庫,但由于紋理復雜程度不同,分割難度不同,Carbon steel F數據集兩相的紋理區分度較為明顯,本文的提出的方法在Carbon steel F測試集上的mIoU和mDice平均值分別為0.952和0.975,Carbon steel G和Carbon steel H兩相的紋理較為相似,對紋理特征信息的粒度大小和全局信息要求較高。本文的方法在Carbon steel G數據集上的mIoU和mDice平均值分別為0.861和0.922,Carbon steel H的mIoU和mDice平均值分別為0.814和0.891。與經典的語義分割網絡相比(UNet、UNet++、UNet+++、FCN),例如從TiAl數據集中的圖像E3可以看出,如方框所示區域,在經典的語義分割網絡下,出現過分割現象,而使用本文的方法該區域的分割結果幾乎與真實標注一致。這是因為圖像E3的兩相的紋理復雜,本文方法施加特征融合模塊融合高低層語義信息,多尺度學習模塊進一步挖掘紋理信息,注意力機制保留重要紋理信息,而經典的語義分割網絡未能進一步提取紋理信息,導致未能明顯區分兩相,尤其是UNet、UNet++幾乎未成功的分割兩相。Attention-UNet與CENet都改進了UNet網絡結構,Attention-UNet施加了注意力機制,CENet施加了上下文信息提取模塊,與這兩種網絡相比,例如從Carbon steel H數據集中的圖像H1可以看出,在這兩種網絡下,方框所示區域出現欠分割現象,而使用本文的方法較完整的識別該區域。這是因為圖像H1兩種相紋理特征相似,本文方法施加的3種模塊使得決策更加全面,而其它兩種網絡只單獨使用注意力機制或上下文信息模塊,導致最終做決策較為片面,分割效果不佳。

表1 本文的方法和其它方法在測試數據集上的mIoU/mDice

圖6 本文的方法和其它方法在測試數據集上的結果
總的來說,本文提出的方法抓住材料圖像同相內的像素具有高度相似性的特點,施加的3種模塊深度挖掘紋理特征,僅使用少量樣本訓練生成的模型在測試集上均取得最優的結果,為解決材料圖像中因小樣本問題未能充分訓練模型的缺陷提供新思路。
3.3.1 驗證CE-Dice loss性能
為了進一步驗證CE-Dice損失的性能,還評估了本文提出的方法和其它深度學習網絡(UNet、Attention-UNet、CENet、FCN)使用CE損失、Dice損失和CE-Dice損失的結果。圖7和表2顯示CE-Dice loss對一些網絡的性能有明顯的提升。特別的,在圖像E2上,通過使用CE-Dice損失,FCN的性能提升了近3%,提升效果明顯。在Carbon steel F數據集上,提升幅度較小,這是因為Carbon steel F數據集分布相對較為均衡,相區分度明顯,不需要使用CE-Dice。在Carbon steel G數據集上,本文提出的方法性能提升了近7%,提升效果明顯。在Carbon steel H數據集上,本方法提升效果也很明顯。通過結合CE損失和Dice loss損失的優勢,優化網絡訓練過程。

表2 CE、Dice和CE-Dice在數據集上的平均mIoU/mDice

圖7 本文的方法和其它網絡使用CE損失、Dice損失、CE-Dice損失的結果
3.3.2 驗證模塊的性能
圖8和表3展示了網絡分別不使用這些模塊和僅使用這些模塊的結果。在TiAl數據集上,使用3種模塊的平均mIoU為0.750,平均Dice為0.853,而其它情況最優平均mIoU為0.747,平均mDice為0.851,特別的,在圖像E2上,使用3種模塊性能提升了13%。在Carbon steel F數據集上,使用3種模塊的平均mIoU為0.952,平均mDice為0.975,而其它情況最優平均mIoU為0.951,平均mDice為0.974(不使用特征融合模塊)。在Carbon steel H數據集上,使用3種模塊的平均 mIoU為0.814,平均mDice為0.891,而其它情況最優平均 mIoU為0.763,平均mDice為0.853(不使用特征融合模塊),特別的,在圖像H1上,使用3種模塊性能提升了5%,提升幅度最大。在Carbon steel G數據集上,僅使用注意力機制模塊就達到最優,這是因為下采樣階段的模塊包含卷積與池化過程,導致丟失一些信息,對Carbon steel G的分割結果影響較大。從每個模塊的重要性的角度來說,在TiAl數據集上,特征融合模塊對分割結果的影響最大,這是因為TiAl數據集紋理信息豐富,特征融合模塊能夠深度挖掘高層和低層語義信息并融合,決策更全面,進而區分各相。在Carbon steel F數據集上,特征融合模塊對分割結果的影響最大,這是因為Carbon steel F數據集邊界較為清晰,紋理區分度明顯,特征融合保留紋理特征并融合了高層與低層語義特征。在Carbon steel G數據集上,注意力機制能夠保留關鍵紋理特征,去除冗余特征。在Carbon steel H 數據集上,多尺度學習制模塊對分割結果的影響最大,這是因為Carbon steel H數據集的兩相紋理較為相似,通過多尺度學習模塊提取的每的特征能夠獨特地表示各相,進而區分各相。

表3 驗證模塊的有效性

圖8 驗證模塊有效性。(a)原圖;(b)真實標注;(c)不使用特征融合模塊;(d)只使用特征融合模塊;(e)不使用多尺度學習模塊;(f)只使用多尺度學習模塊;(g)不使用注意力機制模塊;(h)只使用注意力機制模塊;(i)共同使用3種模塊
本文提出了一種用于具有復雜紋理圖像的分割方法,具有如下特點:首先,本方法提出的特征融合模塊融合高層與低層語義特征,多尺度學習模塊,注意力機制模塊,優化了資源配置,使用較少的樣本實現對材料圖像各相的精確分割,為解決材料圖像分割中的小樣本問題提供新思路;其次,本方法針對材料圖像中數據分布不平衡,提出了一種改進的Dice損失,結合CE損失的優勢,優化訓練過程,進一步提升分割結果。
后續將進一步研究材料圖像中的小樣本問題,并針對大量低分辨率、重疊與被遮擋等低質量的材料圖像,將專家領域知識引入深度學習領域。也可以將基于多模態學習技術應用于材料圖像領域,結合文字、圖像等多種信息,重建高質量的樣本,從而擴充樣本數量。