黃禹康 熊 凌 劉 洋 鄧 攀 但斌斌
(*武漢科技大學冶金自動化與檢測技術教育部工程研究中心 武漢 430081)
(**武漢科技大學冶金裝備及其控制教育部重點實驗室 武漢 430081)
(***寶鋼股份中央研究院(武鋼有限技術中心)武漢 430081)
鋼包底吹氬是爐外精煉的一種重要手段[1],目前,往往采用人工觀察的方法對吹氬流量進行手動調(diào)節(jié),難以實現(xiàn)吹氬流量的精準控制[2]。為了實現(xiàn)氬氣流量智能控制,需要通過采集鋼包底吹氬圖像并對圖像進行分割,檢測出鋼渣、鋼水區(qū)域,并計算裸露鋼水區(qū)域面積,根據(jù)面積與吹氬流量之間的關系調(diào)節(jié)吹氬流量。吹氬流量智能控制的效果直接影響鋼水的純凈度、質(zhì)量和生產(chǎn)成本,因此,有必要對鋼包底吹氬圖像分割技術開展研究。
近年來,隨著人工智能技術的發(fā)展,深度學習技術被廣泛應用于圖像分割領域。語義分割是一種像素級的分類任務,其通過將目標圖像分為不同的語義類別,對不同類的像素點進行標記[3]。早期的語義分割方法主要使用傳統(tǒng)聚類算法,在全卷積語義分割網(wǎng)絡出現(xiàn)后,深度學習技術在圖像語義分割領域得到了快速的推廣。Long 等人[4]在2015 年提出全卷積神經(jīng)網(wǎng)絡(fully convolutional networks,FCN),使用卷積層替換網(wǎng)絡中原有的線性層,使網(wǎng)絡可以適應任意尺寸圖像的輸入,實現(xiàn)像素級的圖像語義分割。全卷積神經(jīng)網(wǎng)絡在網(wǎng)絡層之間使用了跳級結構,將低層特征與高層特征結合起來,使分割的效果更好。Ronneberger 等人[5]提出了U-Net 網(wǎng)絡,該網(wǎng)絡具有對稱的U 型結構,通過對圖像特征的編碼與解碼,融合了網(wǎng)絡高層與低層的語義特征,提高了分割的準確性。與FCN 網(wǎng)絡相比,U-Net 網(wǎng)絡對圖像特征的利用率更高,可以在較少樣本量的情況下完成模型訓練并實現(xiàn)圖像語義分割。Noh 等人[6]提出了DeconvNet 網(wǎng)絡,對FCN 網(wǎng)絡感受野固定、上采樣粗糙等問題進行了改進。Yue 等人[7]在U-Net 網(wǎng)絡及DeconvNet 網(wǎng)絡基礎上,提出了SegNet 網(wǎng)絡,在解碼器中使用反池化對特征圖進行上采樣,并在分割中保持高頻細節(jié)的完整性,在保證網(wǎng)絡分割精度的前提下,減少了網(wǎng)絡的參數(shù)量。其他還有如PSPNet、E-Net、Link-Net、Mask R-CNN 等網(wǎng)絡基礎上發(fā)展而來的網(wǎng)絡模型在語義分割研究方向取得了很大的進展[8-11]。這些方法雖然在分割精度上不斷提升,但模型對硬件設備和計算量的需求也在不斷增加,導致圖像處理速度較慢,不適合應用于工業(yè)實踐。在實踐生產(chǎn)過程中,關鍵在于如何使用較少的計算資源,既好又快地完成指定任務。目前對于輕量化模型的研究并不多見,主要的輕量化模型結構有 Xception、SqueezeNet、ShuffleNet、MobileNet等[12-14],雖然它們能夠有效地降低模型的參數(shù)和計算量,但是仍存在訓練過程復雜、模型精度不高的缺點。
本文針對吹氬生產(chǎn)中對圖像處理實時性的要求改進了U-Net 網(wǎng)絡,該網(wǎng)絡使用傳統(tǒng)U-Net 網(wǎng)絡的特征融合方法,使網(wǎng)絡具有較好的圖像分割效果,參考了MobileNet 網(wǎng)絡對深度可分離卷積方法的運用,利用深度可分離卷積參數(shù)量和計算量較小的特點,設計了輕量化的語義分割網(wǎng)絡。改進的U-Net 網(wǎng)絡同時具有較好的實時性和圖像分割精度,可以滿足吹氬生產(chǎn)中對圖像處理快速性和準確性的需求。
為了實現(xiàn)吹氬流量自動控制,需要得到裸露鋼水面積和吹氬流量之間的關系,將裸露鋼水區(qū)域從鋼液液面中分割出來是其中的關鍵步驟。U-Net 網(wǎng)絡作為語義分割的經(jīng)典模型,適用于吹氬圖像分割。將U-Net 網(wǎng)絡應用于工業(yè)生產(chǎn)時,U-Net 網(wǎng)絡存在著模型參數(shù)量大和計算量大等問題,不能滿足工業(yè)生產(chǎn)中的高實時性要求,也對便攜式硬件設備有較大的局限性。因此需要對U-Net 網(wǎng)絡進行輕量化設計,減少網(wǎng)絡參數(shù),提高圖像處理速度。
為了對U-Net 網(wǎng)絡進行輕量化設計,降低網(wǎng)絡的參數(shù)量和計算量,采用MobileNet 網(wǎng)絡中的深度可分離卷積方法來替代傳統(tǒng)卷積。深度可分離卷積與傳統(tǒng)卷積方法的不同點在于,輸入的特征張量的每個通道都對應了一個單獨的卷積核來進行卷積操作,卷積后輸出特征張量。傳統(tǒng)卷積和深度可分離卷積對比如圖1 所示。
圖1 傳統(tǒng)卷積和深度可分離卷積對比圖
由圖1 可知,傳統(tǒng)的卷積運算由標準卷積層、批量歸一化(batch normalization,BN)和ReLU 激活函數(shù)組成。深度可分離卷積運算由深度可分離卷積、逐點卷積、批量歸一化和ReLU 激活函數(shù)操作組成。
假設輸入張量尺寸為DF×DF×M,輸出張量尺寸為Dk×Dk×N,卷積核的尺寸是K ×K,那么普通卷積的參數(shù)量和計算量分別為
深度可分離卷積的參數(shù)量和計算量分別為
則網(wǎng)絡參數(shù)量和計算量之比為
由式(5)可以看出,深度可分離卷積操作的參數(shù)量和計算量明顯低于普通卷積操作,因此利用深度可分離卷積這一特點設計輕量化的快速語義分割網(wǎng)絡。
本文以U-Net 框架為主體,網(wǎng)絡結構如圖2 所示。
圖2 改進的U-Net 網(wǎng)絡結構
改進的U-Net 網(wǎng)絡仍然使用編碼與解碼結構,網(wǎng)絡將低層特征與高層特征融合在一起,加強網(wǎng)絡對圖像細節(jié)的處理能力。相較于傳統(tǒng)U-Net 網(wǎng)絡,本網(wǎng)絡在以下方面進行了改進。
(1)使用深度可分離卷積替代傳統(tǒng)卷積,為了彌補快速語義分割網(wǎng)絡損失的精度,在提取特征的過程中連續(xù)使用5 次步長為1 的深度可分離卷積,使用多層深度可分離卷積增強網(wǎng)絡對抽象特征的提取能力,可以提高特征的利用率,增加網(wǎng)絡分割精度,使網(wǎng)絡模型在準確率和實時性上達到較好的平衡。
(2)由于吹氬圖像中鋼渣區(qū)域與鋼水區(qū)域在圖像中所占比例不平衡,選擇結合Dice 相似系數(shù)(dice similarity coefficient,DSC)損失函數(shù)與二值交叉熵(binary cross entropy,BCE)損失函數(shù)的混合損失函數(shù)作為網(wǎng)絡的損失函數(shù),減少目標區(qū)域與背景區(qū)域在圖像中占比不平衡對網(wǎng)絡訓練效果的影響,提高網(wǎng)絡的分割精度。
(3)網(wǎng)絡中的激活函數(shù)均采用Leaky-ReLU 激活函數(shù),避免過濾掉激活函數(shù)的負值信息導致卷積神經(jīng)元的失活從而影響網(wǎng)絡的訓練。
在只區(qū)分目標和背景的語義分割任務中,常使用二值交叉熵公式作為網(wǎng)絡的損失函數(shù),計算公式為
式中,Gi為像素點i 的真實類別,Pi為語義分割網(wǎng)絡對像素點i 的預測結果。
在吹氬圖像中,裸露鋼水區(qū)域占圖像的比例通常比鋼渣區(qū)域要小。由于二值交叉熵損失函數(shù)在優(yōu)化網(wǎng)絡的過程中對圖像上的每一個類別都平等地進行評估,再將各類對應的梯度進行回傳,當兩類區(qū)域占圖像的比例不平衡時,占圖像比例更大的那一類對網(wǎng)絡的優(yōu)化方向影響更大,從而使分割結果產(chǎn)生誤差。
Dice 相似系數(shù)損失函數(shù)也是一種常用于語義分割任務的損失函數(shù),在優(yōu)化網(wǎng)絡權重的過程中,使預測結果逐漸接近真實結果。但是當有像素預測錯誤時,會導致梯度變化十分劇烈,影響網(wǎng)絡的訓練過程。其公式如下:
本文綜合二值交叉熵損失函數(shù)和Dice 系數(shù)損失函數(shù)的特點,針對吹氬圖像的特性,提出了一種混合損失函數(shù),公式為
本文的模型在TensorFlow 和Keras 框架下實現(xiàn)。硬件環(huán)境為CPU 為Intel Core i7-9700,GPU 為NVIDIA RTX 2070。軟件環(huán)境為Window10、Tensor-Flow、Keras、Python3.7。
為了驗證網(wǎng)絡的有效性,選取了精準率(precision,P)、召回率(recall,R)、F 分數(shù)和平均交并比(mean intersection over union,MIOU)指標對網(wǎng)絡的分割性能進行了測試。為了量化每種網(wǎng)絡的分割效果,通過對原始圖像進行手工標注,得到真實標簽(ground truth,GT)圖像,如圖3 所示。
圖3 人工標注的真實標簽圖像
通常,基于GT 圖像的精度指標是從真陽性(true positive,TP)、假陽性(false positive,FP)、假陰性(false negative,FN)和真陰性(true negative,TN)計算出來的。將分割結果與GT 圖像進行比較,如果都將一個像素劃分為背景類,則將其表示為TP;如果僅有分割結果將其歸類為背景類,則將其視為FP;如果僅有GT 圖像將其分類為背景類,則將其視為FN;如果此像素既沒有在GT 圖像中出現(xiàn),也沒有在分割結果中出現(xiàn),則被認為是TN。精準率和召回率的公式為
其中|·|運算符表示相關區(qū)域中的像素數(shù)。當使用P 和R 指標比較不同的分割方法時,需要一個單獨的性能指標進行度量。F 分數(shù)是P 和R 指標的結合,表示算法在P-R 空間中的性能,其公式如式(11)所示。
其中|·|運算符表示相關區(qū)域中的像素數(shù)。
MIOU 指標的公式如下所示:
本文采用吹氬工業(yè)生產(chǎn)現(xiàn)場采集的數(shù)據(jù),數(shù)據(jù)集由110 張圖像組成,其中70 張是訓練集,30 張是驗證集,10 張是測試集。圖像分辨率為224 ×224像素,每張圖像都有對應的手工標注標簽。為了增加訓練數(shù)據(jù),本文采用數(shù)據(jù)擴充的方式增加可用的訓練樣本數(shù)量。本文采用了5 種數(shù)據(jù)擴充的方式,包括水平方向平移、水平方向翻轉、垂直方向平移、垂直方向翻轉和隨機角度圖像旋轉。部分吹氬圖像數(shù)據(jù)集擴充結果如圖4 所示。
圖4 部分數(shù)據(jù)集擴充結果
在擴充了數(shù)據(jù)集之后,訓練集、驗證集和測試集在數(shù)據(jù)前后包含的圖像數(shù)量如表1 所示。
表1 訓練集、驗證集和測試集的大小
訓練時設置批尺寸為8,使用Adam 優(yōu)化器對網(wǎng)絡參數(shù)進行優(yōu)化。改進U-Net 網(wǎng)絡模型訓練集和驗證集的準確率變化曲線如圖5 所示,損失函數(shù)隨訓練次數(shù)的變化曲線如圖6 所示。
圖5 準確率變化情況
圖6 損失函數(shù)變化情況
可以看出,訓練50 輪時,損失函數(shù)已經(jīng)收斂,此時訓練集的準確率達到了99%以上。
實驗在吹氬數(shù)據(jù)集上進行,實驗中將原始圖像縮放至224 ×224 像素分辨率,再進行數(shù)據(jù)擴充操作。
各網(wǎng)絡模型實驗結果如圖7 所示。
圖7 吹氬圖像分割結果對比圖
從圖7 可以看出,對比人工標注的真實標簽圖像,本文提出的網(wǎng)絡分割圖像能夠取得與傳統(tǒng)U-Net網(wǎng)絡接近的效果,且在分割細節(jié)上優(yōu)于FCN網(wǎng)絡,FCN 網(wǎng)絡將部分鋼渣區(qū)域誤分為了裸露鋼水區(qū)域。本文方法整體的計算量更少,計算速度表現(xiàn)得更快。在CPU 上運行時,傳統(tǒng)U-Net 網(wǎng)絡分割一張圖片需要1.95 s,不能達到實時處理的要求,改進的U-Net網(wǎng)絡需要0.43 s,將速度提升了近5 倍。在GPU 運行條件下U-Net 網(wǎng)絡分割一張圖片需要0.18 s,而改進的U-Net 網(wǎng)絡只需要0.03 s。
實驗的各項性能指標與參數(shù)對比如表2 所示。
從表2 中可以看出,在吹氬數(shù)據(jù)集中,本文方法的各項精度指標略低于傳統(tǒng)U-Net 網(wǎng)絡,優(yōu)于FCN網(wǎng)絡,在保持分割精度的同時,大幅縮小了網(wǎng)絡的參數(shù)量和計算量。參數(shù)量為24.3 MB,對比傳統(tǒng)U-Net網(wǎng)絡縮小了15 倍;計算量為11.2 GFlops,對比傳統(tǒng)U-Net 網(wǎng)絡縮小了21 倍,通過減少網(wǎng)絡的參數(shù)量和計算量,降低了設備的計算負擔,加快了運行速度。本文方法在2 種計算條件下的平均耗時均為最低,通過對比實驗證明本文改進的U-Net 網(wǎng)絡在保證網(wǎng)絡具有較好分割精度的同時,可以完成快速語義分割的任務,同時網(wǎng)絡具有輕量化的結構,適合應用于吹氬生產(chǎn)實踐場景中。
表2 吹氬數(shù)據(jù)集不同網(wǎng)絡分割結果
工業(yè)生產(chǎn)應用對圖像語義分割的實時性和準確性都有較高的要求,本文在傳統(tǒng)U-Net 網(wǎng)絡框架的基礎上,進行輕量化網(wǎng)絡設計,實現(xiàn)了快速語義分割。相較于傳統(tǒng)U-Net 網(wǎng)絡,改進的U-Net 網(wǎng)絡使用深度可分離卷積方法降低網(wǎng)絡的參數(shù)量和計算量,在保持較好的精確度的同時,提高了網(wǎng)絡運行速度。實驗結果表明,改進的U-Net 網(wǎng)絡大幅減少了設備的計算負擔,加快了語義分割的速度,在硬件設備方面更適合便攜式設備使用,同時能保證工業(yè)生產(chǎn)的實時性要求,能夠應用于工業(yè)生產(chǎn)實踐。后續(xù)研究將引入更先進的算法和網(wǎng)絡結構,提高輕量化網(wǎng)絡的分割精度。