金芊芊,羅 建,張曉倩,楊 梅,李 楊
(西華師范大學(xué)電子信息工程學(xué)院,四川南充 637009)
簡單來說,遙感圖像就是人們利用各類飛行器(包括無人飛機(jī)、航空衛(wèi)星等)遠(yuǎn)距離對地觀測所拍攝記錄下來的圖像,可以幫助我們實現(xiàn)對地觀測的各項數(shù)據(jù)的分析。遙感圖像的獲取方式使其具有目標(biāo)復(fù)雜多變、目標(biāo)形態(tài)差異巨大、目標(biāo)邊緣不清晰等特征,因此在提高其分割精度和準(zhǔn)確度時會遇到很多困難[1-2]。Maggiori 等[3]使用FCN[4]全卷積神經(jīng)網(wǎng)絡(luò)來提取遙感圖像的地面特征,相比于傳統(tǒng)網(wǎng)絡(luò)有較好的表現(xiàn)。Li 等[5]在U-Net[6]基礎(chǔ)上添加不對稱卷積塊提高了網(wǎng)絡(luò)提取特征的能力。Zhao 等[7]提出的金字塔場景分析網(wǎng)絡(luò)(PSPNet),應(yīng)用金字塔池化模塊獲取更多的全局信息。Chen 等[8]提出的DeepLabV3p 模型,使用可以擴(kuò)充感受野的空洞卷積,減少網(wǎng)絡(luò)中的池化操作,保留特征層的細(xì)節(jié)信息,還提出了ASPP(atros spatial pyramid pooling)來提取不同尺度的信息,較大提升了模型的效果。DeepLabV3p 是當(dāng)前較為流行的遙感圖像分割算法之一。楊蜀秦等[9]在DeepLabV3p中添加多頭自注意力機(jī)制來捕獲無人機(jī)小麥倒伏圖像中的倒伏特征;黃聰?shù)萚10]在DeepLabV3p 中引入坐標(biāo)注意力機(jī)制,并且采用聯(lián)級特征融合的方法來更好地利用圖像的語義特征信息。以上研究雖然對Deep-LabV3p 提出一定的改進(jìn),但是提升的效果有限,仍然難以提高對遙感圖像中小目標(biāo)的分割精度和準(zhǔn)確度。
綜上,找到一種更有效地綜合利用多尺度信息、捕捉細(xì)節(jié)信息的方式,是提高遙感圖像分割精度的關(guān)鍵之一。因此,本文使用DeepLabV3p 作為基礎(chǔ)網(wǎng)絡(luò)模型,并對其做了以下改進(jìn):(1)提出一種多級感受野融合的ASPP 結(jié)構(gòu)(ASPP with multi-level receptive field fusion,Rff-ASPP),獲取更多感受野信息;(2)使用SE注意力機(jī)制[11]來聚焦目標(biāo)區(qū)域提取全局信息,提高分割效率;(3)使用由CrossEntropyLoss 和LovaszSoftmax-Loss 損失函數(shù)[12]構(gòu)成的混合損失函數(shù)替代原有的CrossEntropyLoss,克服樣本不均衡問題;(4)引入全連接條件隨機(jī)場進(jìn)行圖像后處理,將神經(jīng)網(wǎng)絡(luò)輸出的預(yù)測圖做進(jìn)一步處理,最終得到細(xì)節(jié)分割得更加出色的輸出結(jié)果。
DeepLabV3p 是DeepLab 系列語義分割網(wǎng)絡(luò)模型的最新版本,是由DeepLabV1[13]、DeepLabV2[14]、DeepLabV3[15]發(fā)展而來。它的整體結(jié)構(gòu)是encoder-decoder 結(jié)構(gòu),使用先前的DeepLabV3 作為encoder,然后在后面添加一個簡單高效的decoder 來進(jìn)行不同尺度信息的融合。Encoder 把Restnet101 作為骨干網(wǎng)絡(luò)進(jìn)行特征的初步提取,然后將初步提取的特征層送進(jìn)ASPP模塊進(jìn)行加強(qiáng)特征提取,ASPP 通過不同大小采樣率的空洞卷積來提取不同感受野的信息,最后拼接在一起得到加強(qiáng)特征層。Decoder 將骨干網(wǎng)絡(luò)提取出來的低層特征和經(jīng)過編碼器處理的加強(qiáng)特征做進(jìn)一步的特征融合,將不同尺度的細(xì)節(jié)信息和語義信息更好地結(jié)合在一起,減少了信息的流失,最后再通過兩次3×3 的卷積對特征進(jìn)行細(xì)化,通過4 倍上采樣恢復(fù)圖像尺寸得到輸出,DeepLabV3p 結(jié)構(gòu)如圖1所示。
圖1 DeepLabV3p 模型結(jié)構(gòu)圖
為提高DeepLabV3p 模型對遙感圖像中小目標(biāo)的分割效果,本文在多個方面對模型進(jìn)行改進(jìn),提出一種改進(jìn)的圖像分割模型——RSC-DeepLabV3p。Deep-LabV3p 的編碼部分由Restnet101 骨干網(wǎng)絡(luò)和ASPP 組成,為提高模型對多尺度信息的利用,對ASPP 模塊進(jìn)行改進(jìn),提出一種新的多級感受野融合的ASPP 結(jié)構(gòu)。Rff-ASPP 將ASPP 中通過不同采樣率卷積獲得的5 個特征層,從上往下依次通過contact 函數(shù)進(jìn)行融合,使其在獲得不同感受野信息的同時也實現(xiàn)了信息的共享,得到更大范圍的感受野。在解碼部分,添加SE 注意力機(jī)制來聚焦目標(biāo)區(qū)域,用來更好地提取全局信息,提高分割效率。
對損失函數(shù)也進(jìn)行了優(yōu)化,使用加權(quán)的CrossEntropyLoss 和LovaszSoftmaxLoss 損失函數(shù)相結(jié)合替代原有的多分類交叉熵?fù)p失函數(shù)。LovaszSoftmax 損失函數(shù)適用于樣本不均衡的數(shù)據(jù)集,并且對于小目標(biāo)比較友好,與其他損失函數(shù)一起加權(quán)使用時效果較好。為優(yōu)化從改進(jìn)DeepLabV3P 卷積神經(jīng)網(wǎng)絡(luò)得到的預(yù)測圖,引入全連接條件隨機(jī)場進(jìn)行細(xì)分,不僅可以提高模型分割后的結(jié)果,而且算法復(fù)雜度也較低,RSC-Deep-LabV3p 模型結(jié)構(gòu)如圖2所示。
圖2 RSC-DeepLabV3p 模型結(jié)構(gòu)圖
SE 注意力機(jī)制主要是仿照人類的眼睛對圖像重要信息的“聚焦”,只是“聚焦”的是特征層中重要的通道特征。在模型訓(xùn)練過程中,SE 模塊通過自適應(yīng)學(xué)習(xí)找出比較重要的通道特征,并且賦予其更大的權(quán)重,使模型對目標(biāo)特征進(jìn)行關(guān)注。這不僅可以節(jié)省計算量,還保證其在各種網(wǎng)絡(luò)架構(gòu)中的通用性。其結(jié)構(gòu)如圖3所示。
圖3 SE 注意力機(jī)制結(jié)構(gòu)圖
SE 注意力的實現(xiàn)主要有以下3 個步驟:
(1)Squeeze:對獲取到的多個特征圖進(jìn)行全局平均池化,把每個通道的特征壓縮為一個數(shù)來表示,獲取到每個通道的全局信息。其表達(dá)式:
式中,H為特征圖的高,W為特征圖的寬,c為特征通道數(shù)。
(2)Excitation:通過兩個全連接層和一個sigmoid激活函數(shù),實現(xiàn)權(quán)重的學(xué)習(xí),從而找出比較重要的特征信息,減少對其他信息的關(guān)注。其表達(dá)式:
s=Fex(z,W)=σ(g(z,W))=σ(W2ReLU(W1z))
式中,σ代表sigmoid 激活函數(shù),W1、W2代表兩個全連接層。
(3)Reweight:將前面所得的權(quán)重賦值到各特征圖,即將學(xué)習(xí)的權(quán)重與各個通道的原始特征相乘。其表達(dá)式:
式中,s代表學(xué)習(xí)到的權(quán)重信息,u為原始特征圖。
SE 注意力機(jī)制最終能實現(xiàn)通道特征的增強(qiáng),并且不改變其大小。因此,SE 注意力機(jī)制能夠提高模型的精度,并且不改變特征圖的大小。這樣,在網(wǎng)絡(luò)中添加SE 模塊不用添加參數(shù)或者改變結(jié)構(gòu),SE 常被用在各種網(wǎng)絡(luò)模型中。本文方法將SE 注意力模塊添加到decoder 中層卷積之前,提高了模型對于全局特征的提取能力。
ASPP 由多個不同采樣率的空洞卷積并行卷積然后拼接組成,目的是為進(jìn)一步提取多尺度信息。ASPP頂部使用1×1 的卷積提取特征層,第二、三、四層則使用采樣率為6、12、18 的空洞卷積進(jìn)行采樣,提取具有不同大小的感受野的特征層,最后一層使用全局平均池化,目的是提取全局信息;然后,通過contact 函數(shù)拼接在一起;最后,通過1×1 的卷積調(diào)整特征層的形狀。
本文的多級感受野融合的ASPP 結(jié)構(gòu)是在FPN[16]的啟發(fā)下提出的,FPN 是2017年提出的一種網(wǎng)絡(luò)。FPN 提出了一種新的想法,就是將通過下采樣獲得的高層特征進(jìn)行上采樣然后與低層特征逐層相連接,并且在每一層都進(jìn)行預(yù)測,這樣就使得低層特征圖得到了更充分的利用。改進(jìn)ASPP 的結(jié)構(gòu)為沿著ASPP 模塊從上往下的方向,首先對最頂層進(jìn)行一個1×1 的卷積,然后通過contact 函數(shù)將該特征層和相鄰特征層拼接在一起,接著對拼接后的特征層重復(fù)剛才的操作,直到最后的池化層。這樣就實現(xiàn)了不同感受野的特征層的信息共享,提高對感受野的利用。改進(jìn)后的ASPP結(jié)構(gòu)如圖4所示。
圖4 改進(jìn)的ASPP(Rff-ASPP)
損失函數(shù)是用來對模型訓(xùn)練效果好壞進(jìn)行評判的方法,其值越小,模型訓(xùn)練效果就越好。遙感圖像包含的目標(biāo)又多又雜,并且類別十分不均衡,DeepLabV3p模型原有的多分類交叉熵?fù)p失函數(shù)雖然可以處理多分類分割問題,但是對于遙感圖像這種背景像素所占比例較大且中小目標(biāo)較多的圖像,訓(xùn)練效果較差。
為了達(dá)到更好的分割效果,將CrossEntropyLoss 和LovaszSoftmaxLoss 損失函數(shù)加權(quán)結(jié)合來訓(xùn)練改進(jìn)后的DeepLabV3p 網(wǎng)絡(luò)模型。Berman 等[12]提出LovaszSoftmaxLoss 用于樣本不均衡的數(shù)據(jù)集,并且對于小目標(biāo)比較友好,但是使用該損失函數(shù)優(yōu)化時主要針對的是image-level mIoU,適用于微調(diào)的過程。因此LovaszSoftmaxLoss 與其他損失函數(shù)一起加權(quán)使用時效果更優(yōu)。
多分類交叉熵?fù)p失函數(shù)計算公式如下:
Softmax 函數(shù)公式:
Jaccard 索引,即IOU 值,圖像語義分割中常使用IOU 作為評價指標(biāo),計算公式:
LovaszSoftmaxLoss 的作者使用Jaccard 索引作為損失函數(shù),因此最終的LovaszSoftmaxLoss 表達(dá)式:
式中,y*為真實值,為預(yù)測值。
最終的損失函數(shù)為CrossEntropyLoss 和LovaszSoftmaxLoss 加權(quán)結(jié)合的混合損失函數(shù),因此最終表達(dá)式:
式中,a、b為權(quán)重,a+b=1。
全連接條件隨機(jī)場CRFs 能夠?qū)δP皖A(yù)測的分割結(jié)果做進(jìn)一步的處理,以改善分割圖像中的邊緣模糊問題[17]。一張圖片由很多個像素點組成,CRFs 做的工作就是找出原始圖片中各個像素點的位置信息以及顏色信息,結(jié)合改進(jìn)DeepLabV3p 模型的預(yù)測概率分布圖來計算像素點歸類概率,然后進(jìn)行推理,找出每個像素最可能的類,推理次數(shù)不同,優(yōu)化效果也就不同。其推理流程如圖5所示。
圖5 CRFs 流程圖
全連接條件隨機(jī)場符合吉布斯分布,如下:
式中,x是觀測值,E(X|I)是能量函數(shù),該能量函數(shù)由一元勢函數(shù)ψu(yù)(xi)和二元勢函數(shù)ψp(xi,yi)構(gòu)成,如下:
一元勢函數(shù)ψu(yù)(xi)通過模型輸出的預(yù)測圖計算像素點i的類別為xi的概率,二元勢函數(shù)ψp(xi,yi)則是通過原圖中像素點的顏色值、像素點間的距離等來判斷兩個像素之間的關(guān)系,全連接條件隨機(jī)場中的二元勢函數(shù)計算每一個像素點和其他所有像素點之間的關(guān)系。通過推理,使得E(x)能量值越小,則最終相似像素點為相同類別的概率就越大。通過反復(fù)迭代最小化能量函數(shù),可以得到最終的后處理結(jié)果。
本文將原始特征圖與模型輸出的預(yù)測圖放入全連接隨機(jī)場進(jìn)行實驗,進(jìn)行一元勢和二元勢,然后通過設(shè)定推理次數(shù)來確定優(yōu)化次數(shù)。利用全連接條件隨機(jī)場對模型輸出的預(yù)測圖進(jìn)行6 次推理,推理后的對比結(jié)果如圖6所示。由圖6 可以看出,前3 次推理取得的效果較好,后3 次由于過度推理,受顏色信息影響過大,反而優(yōu)化效果不好。因此,本文選擇使用3 次推理的CRFs 全連接條件隨機(jī)場對模型預(yù)測圖進(jìn)行優(yōu)化。
圖6 原圖與不同推理次數(shù)優(yōu)化圖對比
使用DLRSD 數(shù)據(jù)集,該數(shù)據(jù)集是武漢大學(xué)基于UCMerced_LandUse 數(shù)據(jù)集標(biāo)注的,包括17 個類別,共2100 張圖片,且大小均為256×256,其中包括建筑物、飛機(jī)、船、汽車、樹木等中小目標(biāo)類別。按照7 ∶2 ∶1將數(shù)據(jù)集劃分為訓(xùn)練集、驗證集以及測試集,其中對訓(xùn)練集采用縮放、隨機(jī)裁剪、隨機(jī)水平翻轉(zhuǎn)、歸一化等數(shù)據(jù)預(yù)處理操作。
本文實驗均在百度的AI Studio 平臺進(jìn)行,選用PaddlePaddle 2.3.0 框架,選用硬件環(huán)境如表1所示。
表1 實驗的硬件環(huán)境
使用SGD 優(yōu)化算法,PolynomialDccay 學(xué)習(xí)策略,實驗的各項參數(shù)如表2所示。
表2 實驗的訓(xùn)練參數(shù)
使用mIoU(交并比)、Dice(相似系數(shù))、Kappa 系數(shù)、ACC(準(zhǔn)確率)作為模型性能的評價指標(biāo)。這幾個值越大,則模型的性能越好。各指標(biāo)的計算公式如下:
式中,k表示類別,k+1 表示加上背景類,tp表示預(yù)測值屬于該類別并且真實值也屬于該類別的像素點數(shù)目,fn表示預(yù)測是此類別但是真實類別是另一種的像素點數(shù)目,fp表示預(yù)測為其他類別而真實值屬于此類別的像素點數(shù)目;A表示預(yù)測圖,M表示真實標(biāo)簽圖;po為分類器的準(zhǔn)確率,pe為隨機(jī)分類器的準(zhǔn)確率;N表示總的像素點數(shù)目。
2.3.1 對比實驗結(jié)果與分析
基礎(chǔ)DeepLabV3p 與改進(jìn)后的DeepLabV3p 在驗證集上的mIoU 值和在訓(xùn)練集上的loss 值曲線如圖7所示,藍(lán)色線代表本文提出的RSC-DeepLabV3p 模型,黃色線代表DeepLabV3p 模型。損失值隨著迭代次數(shù)增加而降低,mIoU 值隨之增加,當(dāng)訓(xùn)練到1000 個Iters時,mIoU 值與loss 值均開始收斂。改進(jìn)后的Deep-LabV3p 不僅在損失值和mIoU 值曲線的收斂速度上表現(xiàn)更好,并且最終的損失值更低,mIoU 值更高。
圖7 改進(jìn)前后DeepLabV3p 的損失函數(shù)和mIoU 值曲線
為進(jìn)一步證明改進(jìn)的DeepLabV3p 模型的確在遙感圖像中小目標(biāo)的分割上表現(xiàn)優(yōu)秀,對當(dāng)前常用的一些分割網(wǎng)絡(luò)如U-Net、FCN、PSPNet 也進(jìn)行對比實驗,實驗環(huán)境、數(shù)據(jù)集、訓(xùn)練參數(shù)等實驗條件均一致,實驗結(jié)果如表3所示。由表3 可知,Deeplabv3p 模型在DLRSD數(shù)據(jù)集上的綜合表現(xiàn)均優(yōu)于其他模型,而本文改進(jìn)的DeepLabV3p 模型在各方面表現(xiàn)都優(yōu)于Deep-LabV3p 模型,mIoU 為73.22%、準(zhǔn)確率為86.48%、Kappa 系數(shù)為84.44%、dice 為82.03%,其中mIoU 和dice 較基礎(chǔ)模型DeeplabV3p 提高了3.78%、2.58%。說明本文改進(jìn)的方法分割效果較好,有利于遙感圖像中小目標(biāo)的分割。
表3 不同網(wǎng)絡(luò)模型評估對比 單位:%
為更直觀地體現(xiàn)改進(jìn)模型的性能,分別使用不同模型進(jìn)行推理,并對其中部分結(jié)果進(jìn)行可視化分析。圖8 的4 組圖片是各模型分別對包含飛機(jī)、住宅、港口等目標(biāo)的遙感圖像進(jìn)行分割的結(jié)果。可以看出,與UNet、FCN 等相比,DeepLabV3p 模型在分割輪廓上表現(xiàn)更好。如圖8(a)所示,DeepLabV3p 完整地分割出了港口上每一艘船的輪廓,其中穿插的道路的分割形狀也比較完整,而U-Net、FCN 分割邊緣十分粗糙,FCN只能分割出船只的大體位置,且部分道路分割不完整;與DeepLabV3p 相比,RSC-DeepLabV3p 則表現(xiàn)更好,本文模型在船只和道路的細(xì)節(jié)上分割得更加清楚,每一艘船中間間隔的道路也能夠分割出來,整體表現(xiàn)最好。
2.3.2 消融實驗結(jié)果及分析
為驗證改進(jìn)模塊的有效性,分別添加改進(jìn)模塊逐個進(jìn)行實驗,以驗證多級感受野融合的ASPP、Mixed-Loss、SE 模塊對模型性能的提升效果。由表4 的實驗結(jié)果可知,各改進(jìn)方案對模型性能均有提升。改進(jìn)ASPP,能夠提高不同感受野的利用率,mIoU 較原模型提高了2.12%;添加SE 模塊,提高了模型在通道上的信息的聚焦,mIoU 較原模型提高了1.75%;使用MixedLoss,模型收斂速度加快,改善了樣本不均衡的問題,mIoU 較原模型提高了2.26%。每添加一個改進(jìn)模塊,模型的總體性能都有所提高,最終結(jié)合所有改進(jìn)模塊的模型表現(xiàn)最好,mIoU 較基礎(chǔ)模型提高3.78%。
表4 消融實驗
通過對比實驗發(fā)現(xiàn),當(dāng)前常用的語義分割模型在遙感圖像中小目標(biāo)的分割上還存在不足,比如邊緣分割模糊,細(xì)節(jié)分割不到位等,不利于各項遙感工作的開展。本文針對這一問題,使用在遙感圖像分割中表現(xiàn)較好的DeepLabV3p 模型作為基礎(chǔ)模型,對其進(jìn)行多方面的改進(jìn),得出以下結(jié)論:
(1)改進(jìn)的多級感受野融合ASPP 能夠進(jìn)一步對不同采樣率卷積出來的特征層進(jìn)行感受野融合,更大程度發(fā)揮了ASPP 模塊的作用。
(2)在解碼器添加SE 注意力機(jī)制能夠使模型對通道信息中的目標(biāo)信息更加專注,減少了其他通道信息對訓(xùn)練的干擾。
(3)使用加權(quán)的混合損失函數(shù)(LovaszSoftmaxLoss和CrossEntropyLoss),結(jié)合二者的長處,樣本不均衡問題得到了改善。
(4)全連接條件隨機(jī)場對模型預(yù)測圖進(jìn)行精細(xì)化處理,可以改善物體分割邊緣粗糙的問題。
(5)融合以上的改進(jìn)方案能夠更大程度提高模型的性能,為遙感圖像中小目標(biāo)分割的邊緣不清晰、細(xì)節(jié)不準(zhǔn)確的問題提供了一種解決方案,本文模型最終mIoU 提高3.78%。
當(dāng)然,因為網(wǎng)絡(luò)模型的訓(xùn)練過程十分復(fù)雜并且缺乏可解釋性,本文的研究還不夠深入,在后續(xù)工作中將重點研究如何在不增加復(fù)雜計算量的情況下實現(xiàn)更高精度的分割。在進(jìn)行CRFs 圖像后處理時發(fā)現(xiàn),推理次數(shù)較少時,優(yōu)化效果不夠明顯,推理次數(shù)較多時又容易受到顏色信息的影響,因此后續(xù)還將對圖像后處理算法進(jìn)行研究和優(yōu)化。