劉 帥,鄧曉冰,楊火祥,柳 偉
(1. 深圳信息職業(yè)技術(shù)學(xué)院計(jì)算機(jī)學(xué)院,廣東 深圳 518172;2. 深圳大學(xué)應(yīng)用技術(shù)學(xué)院,廣東 深圳 518118;3. 廣東技術(shù)師范大學(xué)電子與信息學(xué)院,廣東 廣州 510665;4. 深圳大學(xué)電子與信息工程學(xué)院,廣東 深圳 518060)
隨著深度學(xué)習(xí)的不斷發(fā)展,卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network, CNN)以其優(yōu)秀的特征提取能力,被廣泛應(yīng)用于圖像分類(lèi)、目標(biāo)檢測(cè)以及語(yǔ)義分割等任務(wù)中。其中,全卷積神經(jīng)網(wǎng)絡(luò)(Fully Convolutional Network, FCN)的提出標(biāo)志著圖像語(yǔ)義分割技術(shù)邁向了新的階段。Long等[1]在2015年提出全卷積神經(jīng)網(wǎng)絡(luò)FCN,實(shí)現(xiàn)了端到端的圖像語(yǔ)義分割。此后,越來(lái)越多的研究人員開(kāi)始利用CNN模型進(jìn)行圖像語(yǔ)義分割,并取得了較好的分割效果。雖然 CNN 能夠有效地提取圖像特征,但是其卷積和池化等操作會(huì)導(dǎo)致感受野和分辨率受到限制,進(jìn)而影響了語(yǔ)義分割的準(zhǔn)確性。因此,越來(lái)越多的改進(jìn)模型應(yīng)運(yùn)而生。
自編碼器(Autoencoder, AE)因其簡(jiǎn)單且有效的網(wǎng)絡(luò)結(jié)構(gòu)受到研究者們的關(guān)注。其主要思路是將輸入數(shù)據(jù)通過(guò)多個(gè)卷積層提取特征后進(jìn)行降采樣,再通過(guò)反卷積層將特征圖上采樣至原始尺寸。Ronneberger等[2]基于FCN和自編碼結(jié)構(gòu)提出了一種改進(jìn)的圖像語(yǔ)義分割模型U-Net。它的主要特點(diǎn)是網(wǎng)絡(luò)結(jié)構(gòu)完全對(duì)稱(chēng),并且在解碼器部分加入了更多的卷積操作和跳躍連接,以此將局部細(xì)節(jié)的損失降到最小,從而提高圖像分割的效果。隨后,Qin等[3]在2020年提出了U-Net的改進(jìn)版本U2-Net模型。該模型不僅可以用于顯著目標(biāo)檢測(cè)(SOD),還可用于圖像分割等其他任務(wù)。
除了上述利用自編碼結(jié)構(gòu)進(jìn)行模型改進(jìn)的方法外,還有一些研究者通過(guò)在卷積神經(jīng)網(wǎng)絡(luò)中添加注意力機(jī)制來(lái)進(jìn)行模型優(yōu)化[4-6]。注意力機(jī)制[7]的思想源于人類(lèi)頭腦的思考過(guò)程,即通過(guò)專(zhuān)注于自己關(guān)注的事物,來(lái)提高對(duì)這些事物的認(rèn)知和理解。在圖像語(yǔ)義分割任務(wù)中,使用注意力機(jī)制可以根據(jù)圖像的特征自適應(yīng)地選擇感興趣的區(qū)域,突出重要特征,抑制不重要信息,從而提高圖像語(yǔ)義分割的精度。
因此,為了解決現(xiàn)有深度學(xué)習(xí)模型面對(duì)一些存在遮擋、噪聲的圖像容易預(yù)測(cè)出錯(cuò)的問(wèn)題,本文在U2-Net模型的基礎(chǔ)上,通過(guò)引入注意力機(jī)制對(duì)U2-Net模型進(jìn)行改進(jìn)和優(yōu)化。通過(guò)在U2-Net模型中插入同時(shí)包含空間注意力和通道注意力的CBAM[8]模塊,自適應(yīng)的調(diào)整每一個(gè)通道的權(quán)重,捕捉特征圖中的空間相關(guān)性,有效地減少信息丟失和冗余。改進(jìn)后的模型能對(duì)不同通道和空間位置的特征圖進(jìn)行更細(xì)致的加權(quán)融合,以提高特征圖的質(zhì)量和準(zhǔn)確性,進(jìn)而提高模型分割結(jié)果的精度和準(zhǔn)確性。在增廣后的VOC2012數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明,在增加CBAM模塊后,U2-Net模型的MIoU及準(zhǔn)確率分別提高了8.21%和4%。
圖像語(yǔ)義分割技術(shù)按照技術(shù)方法的不同,可以分為傳統(tǒng)的圖像語(yǔ)義分割和基于深度學(xué)習(xí)的圖像語(yǔ)義分割。
傳統(tǒng)的圖像分割算法包括基于閾值、邊緣檢測(cè)、區(qū)域、主動(dòng)輪廓以及圖論等。這類(lèi)方法通過(guò)手工方式根據(jù)顏色、形狀、紋理、灰度等特征對(duì)圖像進(jìn)行劃分,以完成對(duì)物體的分割[9]。然而,傳統(tǒng)方法需要花費(fèi)大量人力,并且在圖像信息處理和實(shí)時(shí)場(chǎng)景理解方面的效率和精度都難以達(dá)到要求。相比之下,基于深度學(xué)習(xí)的圖像語(yǔ)義分割技術(shù)具有更高的效率和精度。
基于深度學(xué)習(xí)的圖像語(yǔ)義分割方法無(wú)需手動(dòng)設(shè)計(jì)特征,而是利用大量的原始圖像數(shù)據(jù),通過(guò)卷積神經(jīng)網(wǎng)絡(luò)模型自動(dòng)學(xué)習(xí)并提取高層次的特征,最終生成帶有像素類(lèi)別標(biāo)簽的分割圖像。2015年,Long等人提出全卷積神經(jīng)網(wǎng)絡(luò)模型FCN,該模型可以適應(yīng)各種尺寸的輸入圖像,是首個(gè)支持端到端訓(xùn)練的語(yǔ)義分割模型。2016年,Ronneberger等人提出經(jīng)典的醫(yī)學(xué)圖像分割模型U-Net,U-Net采用U型自編碼結(jié)構(gòu),并在對(duì)稱(chēng)的編解碼階段引入了跳躍連接,有效地避免了信息丟失的問(wèn)題。該網(wǎng)絡(luò)因其簡(jiǎn)單有效的結(jié)構(gòu),不僅在醫(yī)學(xué)領(lǐng)域有著廣泛應(yīng)用,通過(guò)不斷改進(jìn)也可應(yīng)用于其他場(chǎng)景[10-11]。同年,Google基于DeepLabv1[12]提出了DeeplabV2[13]模型,使用空洞卷積代替部分池化操作進(jìn)行下采樣,并引入空洞卷積金字塔模塊進(jìn)行多尺度特征提取。2017年,DeepLabV3[14]對(duì)空洞卷積金字塔模塊進(jìn)行了改進(jìn),引入輕量卷積結(jié)構(gòu),避免模型的參數(shù)量過(guò)大。2018年,DeepLabV3+[15]將整個(gè)DeepLabV3作為編碼器進(jìn)行特征提取,以獲得更好的分割效果。2020 年 Qin等提出的一種既簡(jiǎn)單又強(qiáng)大的深度網(wǎng)絡(luò)架構(gòu)U2-Net。U2-Net在U-Net的基礎(chǔ)上增加了U型殘缺塊(RSU模塊),該模塊的結(jié)構(gòu)如圖1所示。RSU模塊由三個(gè)部分構(gòu)成,包括輸入卷積層、U型結(jié)構(gòu)和殘差連接層。其中,輸入卷積層是對(duì)輸入圖進(jìn)行通道轉(zhuǎn)換,U型結(jié)構(gòu)可以提取多尺度上下文信息,而殘差連接層則將輸入層和中間層通過(guò)殘差塊進(jìn)行連接。

圖1 RSU結(jié)構(gòu)圖
U2-Net整體結(jié)構(gòu)如圖2所示,主要由三個(gè)主要組成部分構(gòu)成,包括6個(gè)編碼模塊,5個(gè)解碼模塊以及特征融合輸出模塊。每個(gè)模塊都由RSU模塊組成,以逐步地實(shí)現(xiàn)特征提取和上下采樣處理。

圖2 U2-Net模型結(jié)構(gòu)
在編碼模塊En_1至En_4中,分別包含了7至4個(gè)RSU模塊,每個(gè)編碼模塊中RSU模塊的個(gè)數(shù)根據(jù)輸入特征圖的空間分辨率進(jìn)行逐層減少。但在En_5與En_6中,特征圖的分辨率相對(duì)較低,進(jìn)一步下采樣會(huì)導(dǎo)致上下文信息嚴(yán)重丟失。因此,在En_5與En_6使用RSU-4F模塊,其中F表示對(duì)RSU模塊的擴(kuò)展,即使用膨脹卷積來(lái)代替上采樣和下采樣操作,使得RSU-4F模塊中所有特征圖的分辨率相同。
U2-Net模型可以實(shí)現(xiàn)多尺度特征提取和高效率計(jì)算,具有較好的分割準(zhǔn)確性和高效率,在多個(gè)場(chǎng)景中都有改進(jìn)和應(yīng)用[16,17]。
CBAM(Convolutional Block Attention Module)注意力模塊是通道和空間注意力機(jī)制的組合。通過(guò)通道注意力機(jī)制,網(wǎng)絡(luò)可以學(xué)習(xí)到各個(gè)通道的重要性,并強(qiáng)制模型關(guān)注較重要的通道,同時(shí)抑制不重要的通道的影響,從而提高網(wǎng)絡(luò)的性能。而空間注意力機(jī)制能夠?qū)W習(xí)到每個(gè)空間位置的上下文信息,使得網(wǎng)絡(luò)能夠更好地提取圖像中的語(yǔ)義信息。CBAM結(jié)構(gòu)如圖3所示。

圖3 CBAM結(jié)構(gòu)圖
CBAM注意力機(jī)制利用了特征通道和空間上兩個(gè)維度的信息,可以更加準(zhǔn)確地學(xué)習(xí)到特征圖的各個(gè)通道和位置的權(quán)重信息,從而提高了卷積神經(jīng)網(wǎng)絡(luò)的性能還有泛化能力。
1.2.1 通道注意力模塊CAM
CAM模塊主要用于獲取通道注意力特征,將輸入的特征圖F分別進(jìn)行全局最大池化與全局平均池化操作,在空間上對(duì)其進(jìn)行壓縮,生成兩個(gè)大小為1×1×C的特征圖,然后,將這兩個(gè)特征圖輸入到一個(gè)包含兩層ReLU激活函數(shù)的多次感知機(jī)(MLP)中進(jìn)行處理。接著,將得到的輸出特征逐元素相加,并通過(guò)Sigmoid函數(shù)生成通道注意力特征圖FC。最后,將FC和輸入的特征圖F逐元素相乘,得到SAM模塊的輸出特征圖F*。CAM結(jié)構(gòu)如圖4所示。

圖4 CAM結(jié)構(gòu)圖
1.2.2 空間注意力模塊SAM
空間注意力模塊通過(guò)對(duì)特征的空間相關(guān)性進(jìn)行處理來(lái)提取注意力信息,它與通道注意力模塊有所區(qū)別卻也可互補(bǔ)??臻g注意力模塊的輸入特征圖F*是通道注意力圖FC和通道注意模塊的特征輸入逐元素相乘的結(jié)果,對(duì)其做最大池化操作和平均池化操作,得到兩個(gè)H×W×1的特征圖并將它們?cè)谕ǖ郎线M(jìn)行拼接,然后通過(guò)卷積核和Sigmoid激活函數(shù)來(lái)生成空間注意力特征圖FS。最后將其與上一步獲得的特征圖F*逐元素相乘,得到最終的特征圖F**。 SAM結(jié)構(gòu)如圖5所示:

圖5 SAM結(jié)構(gòu)圖
盡管U2-Net模型在圖像語(yǔ)義分割領(lǐng)域中表現(xiàn)很出色,但該模型在面對(duì)一些存在遮擋、噪聲的圖像時(shí),依然容易出現(xiàn)分割不準(zhǔn)確的情況,導(dǎo)致模型整體的分割性能下降。CBAM注意力機(jī)制能夠在空間和通道維度上對(duì)特征圖進(jìn)行加權(quán),提取圖像的全局信息和局部信息,能更好地適應(yīng)不同尺度和形狀的目標(biāo),也能使模型更好地聚焦于感興趣的區(qū)域。此外,CBAM還能夠更好地指導(dǎo)模型從圖像中提取到有關(guān)目標(biāo)的更多信息,并減少噪聲的干擾。因此,為解決U2-Net模型分割目標(biāo)物體形狀復(fù)雜時(shí)模型性能下降的問(wèn)題,本文在U2-Net模型的基礎(chǔ)上,通過(guò)引入注意力機(jī)制對(duì)U2-Net模型進(jìn)行改進(jìn)和優(yōu)化。通過(guò)在U2-Net模型中插入同時(shí)包含空間注意力和通道注意力的CBAM模塊,自適應(yīng)地調(diào)整每一個(gè)通道的權(quán)重,捕捉特征圖中的空間相關(guān)性,有效地減少信息丟失和冗余。本文提出的基于CBAM的U2-Net圖像分割模型的結(jié)構(gòu)如圖6所示,本文模型能對(duì)不同通道和空間位置的特征圖進(jìn)行更細(xì)致的加權(quán)融合,以提高特征圖的質(zhì)量和準(zhǔn)確性,進(jìn)而提高模型分割結(jié)果的精度和準(zhǔn)確性。

圖6 基于CBAM的U2-Net模型設(shè)計(jì)
為了驗(yàn)證提出的基于CBAM的U2-Net模型的有效性,本文將通過(guò)對(duì)比改進(jìn)模型與原始模型的訓(xùn)練結(jié)果和在公共數(shù)據(jù)集上的測(cè)試結(jié)果。在訓(xùn)練模型前,先對(duì)實(shí)驗(yàn)所用到的數(shù)據(jù)集及實(shí)驗(yàn)環(huán)境進(jìn)行介紹。
2.2.1 數(shù)據(jù)集
本文先使用數(shù)據(jù)集SBD[18]對(duì)VOC2012[19]進(jìn)行擴(kuò)充,然后去除兩個(gè)數(shù)據(jù)集中的重復(fù)部分,得到增廣后的VOC2012數(shù)據(jù)集,共包含12 031張圖片。此外,本文還對(duì)增廣后的VOC2012數(shù)據(jù)集進(jìn)行了劃分,將其中90%(共10 827張)作為訓(xùn)練集,剩下10%(共1 204張)作為驗(yàn)證集。
2.2.2 訓(xùn)練參數(shù)設(shè)置
本文所有實(shí)驗(yàn)均基于深度學(xué)習(xí)框架Pytorch[20]進(jìn)行實(shí)現(xiàn),訓(xùn)練過(guò)程中batch統(tǒng)一設(shè)置為32,最大學(xué)習(xí)率設(shè)置為1e-4,模型使用Adam優(yōu)化器[21]進(jìn)行訓(xùn)練,并設(shè)置優(yōu)化器內(nèi)部動(dòng)量參數(shù)為0.9,權(quán)重衰減因子為0。模型總共進(jìn)行100個(gè)epoch的訓(xùn)練,每5個(gè)epoch保存一次權(quán)值,并使用cos學(xué)習(xí)率下降策略對(duì)學(xué)習(xí)率進(jìn)行調(diào)整。為了公平比較,本文模型和原U2-Net模型統(tǒng)一采用預(yù)訓(xùn)練的VGG模型作為主干網(wǎng)絡(luò),并基于預(yù)訓(xùn)練權(quán)重對(duì)模型進(jìn)行訓(xùn)練。
2.2.3 訓(xùn)練結(jié)果對(duì)比
深度學(xué)習(xí)模型的損失函數(shù)是衡量模型性能的關(guān)鍵指標(biāo)之一,損失函數(shù)值越小,則代表模型的預(yù)測(cè)值和真實(shí)值的差異越小,即模型性能越優(yōu)。因此,本文通過(guò)對(duì)比U2-Net模型在增加CBAM注意力模塊前后損失函數(shù)值的變化來(lái)評(píng)估模型的性能改善程度。圖7、圖8分別展示了原始U2-Net模型和基于CBAM的U2-Net模型在增廣VOC2012數(shù)據(jù)集上的訓(xùn)練過(guò)程和損失變化。對(duì)比圖7和圖8,可以發(fā)現(xiàn),基于CBAM的U2-Net模型的損失值下降速度更快,即收斂速度更快。具體而言,優(yōu)化前的U2-Net模型需要經(jīng)過(guò)60次迭代,損失函數(shù)值才會(huì)下降到0.3左右,而優(yōu)化后的模型只需要經(jīng)過(guò)40次迭代。表明優(yōu)化后的模型更快地學(xué)習(xí)到數(shù)據(jù)集的特征,且優(yōu)化后的模型的損失值比原模型的損失值小,證明了優(yōu)化后模型的收斂速度和性能均有所提升。

圖7 U2-Net模型的訓(xùn)練過(guò)程和損失變化

圖8 基于CBAM的U2-Net模型的訓(xùn)練過(guò)程損失變化
本文采用語(yǔ)義分割領(lǐng)域常用的兩個(gè)評(píng)價(jià)指標(biāo)—平均交并比MIoU和準(zhǔn)確率Precision,來(lái)衡量模型性能和預(yù)測(cè)結(jié)果的準(zhǔn)確性。
平均交并比MIoU是指真實(shí)分割結(jié)果與預(yù)測(cè)分割結(jié)果的平均交集占真實(shí)分割結(jié)果和預(yù)測(cè)分割結(jié)果的平均并集的比例。它首先計(jì)算每個(gè)類(lèi)別的交并比IoU,然后將所有結(jié)果求平均值。IoU的計(jì)算方式如公式(1)所示:
上式中TP(True Positive)、FP(False Positives)和FN(False Negatives)分別表示“實(shí)際上是正樣本,預(yù)測(cè)為正樣本”“實(shí)際上是負(fù)樣本,預(yù)測(cè)為正樣本”和“實(shí)際上是正樣本,預(yù)測(cè)為負(fù)樣本”的數(shù)量。假設(shè)共有k+1個(gè)不同的分類(lèi),分別用L0到Lk進(jìn)行標(biāo)記,Pmm表示類(lèi)別m的像素被預(yù)測(cè)為類(lèi)別n的數(shù)量。此時(shí),Pmm就等價(jià)于TP,而Pmn和Pnm則分別等價(jià)于為FP和FN,則MIOU的公式表示可以簡(jiǎn)化成以下形式:
準(zhǔn)確率Precision的含義是在所有被預(yù)測(cè)為正樣本的樣本中,實(shí)際為正樣本的概率,用P來(lái)表示準(zhǔn)確率,計(jì)算方式如公式(3)所示:
為驗(yàn)證所提方法的有效性,本文在增廣后的VOC2012數(shù)據(jù)集上進(jìn)行了實(shí)驗(yàn),比較了添加CBAM模塊前后U2-Net模型的性能變化。同時(shí),為了進(jìn)一步凸顯CBAM模塊的有效性,本文還與基于SENet[22]的U2-Net模型進(jìn)行了比較,對(duì)比測(cè)試結(jié)果如表1所示。

表1 基于CBAM的U2-Net模型優(yōu)化結(jié)果
由表1可以看出,本文所提基于CBAM的U2-Net模型在增廣后的VOC2012數(shù)據(jù)集上的性能優(yōu)于基準(zhǔn)模型U2-Net,所取得的MIoU及準(zhǔn)確率比基準(zhǔn)模型分別提高了8.21%和4%,分別達(dá)到了67.7%和81.82%。由此可見(jiàn),所提模型具有良好的圖像語(yǔ)義分割性能,且通過(guò)在U2-Net模型中插入同時(shí)包含空間注意力和通道注意力的CBAM模塊,可以幫助模型自適應(yīng)地調(diào)整每一個(gè)通道的權(quán)重,捕捉特征圖中的空間相關(guān)性,有效地減少信息丟失和冗余。此外,與僅提取通道注意力信息的SENet模塊相比,基于CBAM的U2-Net模型的MIoU和準(zhǔn)確率也分別提高了0.33%和0.37%。表明引入CBAM模塊后,模型能對(duì)不同通道和空間位置的特征圖進(jìn)行更細(xì)致地加權(quán)融合,以提高特征圖的質(zhì)量和準(zhǔn)確性,進(jìn)而提高模型分割結(jié)果的精度和準(zhǔn)確性。
為了進(jìn)一步體現(xiàn)所提方法的有效性,本文將所提方法和基準(zhǔn)模型U2-Net模型在增廣后的VOC2012數(shù)據(jù)集上的部分圖像分割結(jié)果可視化,如圖9所示。從圖9中的飛機(jī)機(jī)翼分割結(jié)果可以看出,本文所提模型可以完整的分割機(jī)翼部分,原始U2-Net無(wú)法完整的分割出機(jī)翼部分,增加SE模塊的U2-Net模型的分割結(jié)果相較于U2-Net而言更加完整,但仍然存在部分區(qū)域不能正確分割。表明了在U2-Net模型中添加CBAM模塊可以準(zhǔn)確地捕捉特征圖中的空間相關(guān)性,有效地減少信息丟失,提高模型的分割準(zhǔn)確性。

圖9 部分圖像分割結(jié)果對(duì)比
圖10 直觀地展示了增加注意力機(jī)制后的U2-Net模型在MIoU及Precision兩個(gè)評(píng)價(jià)指標(biāo)上的性能變化。不難看出,通過(guò)在U2-Net中添加注意力機(jī)制是一種簡(jiǎn)單且有效的模型優(yōu)化方法,它可以顯著提高模型的性能。

圖10 增加不同模塊的網(wǎng)絡(luò)優(yōu)化分析
本文針對(duì)現(xiàn)有深度學(xué)習(xí)模型面對(duì)一些存在遮擋、噪聲的圖像時(shí)容易分割出錯(cuò)的問(wèn)題,提出通過(guò)引入注意力機(jī)制來(lái)提高模型的魯棒性和泛化能力。本文以U2-Net模型為基準(zhǔn),通過(guò)在U2-Net模型中插入CBAM模塊來(lái)調(diào)整特征圖中每一個(gè)通道的權(quán)重,并捕捉特征圖中的空間相關(guān)性,有效地減少信息丟失和冗余。通過(guò)實(shí)驗(yàn)對(duì)優(yōu)化后模型的性能進(jìn)行了綜合評(píng)估,表明CBAM模塊可以顯著提高模型的性能和泛化能力,證明了所提方法的有效性。
深圳信息職業(yè)技術(shù)學(xué)院學(xué)報(bào)2023年5期