杜炎播,黃 山
(四川大學(xué) 電氣工程學(xué)院,四川 成都 610065)
近年來(lái),全卷積神經(jīng)網(wǎng)絡(luò)的出現(xiàn),極大地促進(jìn)了遙感圖像語(yǔ)義分割的發(fā)展[1-4]。Keiller等提出了動(dòng)態(tài)多上下文遙感圖像語(yǔ)義分割方法[5]。Li等提出了一個(gè)新的端到端語(yǔ)義分割網(wǎng)絡(luò)[6]。Peng等提出了一種結(jié)合密集連接和全卷積網(wǎng)絡(luò)思想的新結(jié)構(gòu)[7]。Chen等提出了一種基于全卷積網(wǎng)絡(luò)的像素級(jí)分類(lèi)模型,通過(guò)自適應(yīng)閾值算法來(lái)調(diào)整每類(lèi)Jaccard索引的閾值[8]。然而,這些更深更大的卷積神經(jīng)網(wǎng)絡(luò)在提升分割精度的同時(shí)伴隨著參數(shù)量和計(jì)算量大幅提升,網(wǎng)絡(luò)模型在一定程度上減緩了推理速度。為了克服計(jì)算開(kāi)銷(xiāo)和內(nèi)存容量限制語(yǔ)義分割任務(wù)的效率,Paszke等提出一種有效的輕量化神經(jīng)網(wǎng)絡(luò)ENet,采用舍棄下采樣最后階段減少參數(shù)來(lái)得到輕量級(jí)網(wǎng)絡(luò),但此操作的缺點(diǎn)是感受野不足以覆蓋大的物體,導(dǎo)致上下文信息提取不好[9]。Wu等提出對(duì)輸入圖像進(jìn)行降采樣以降低計(jì)算復(fù)雜度,然而這種操作會(huì)使空間信息丟失[10]。Zhao等提出圖像級(jí)聯(lián)網(wǎng)絡(luò)ICNet用于實(shí)時(shí)語(yǔ)義分割,充分利用低分辨率語(yǔ)義信息和高分辨率圖像的細(xì)節(jié)信息,以較低的計(jì)算成本完成語(yǔ)義分割[11]。可以發(fā)現(xiàn),這些方法往往采用丟失信息的方法來(lái)加快推理速度,導(dǎo)致分割精度嚴(yán)重下降。
本文針對(duì)這一問(wèn)題,提出一種基于分支合并策略的輕量級(jí)遙感圖像分割網(wǎng)絡(luò),所設(shè)計(jì)的網(wǎng)絡(luò)能夠在降低模型參數(shù)量及計(jì)算量的同時(shí)準(zhǔn)確地分割高分辨率遙感圖像。此外,還研究了網(wǎng)絡(luò)訓(xùn)練過(guò)程中加權(quán)的多尺度交叉熵?fù)p失函數(shù)對(duì)分割精度的影響,通過(guò)消融實(shí)驗(yàn)發(fā)現(xiàn),該損失函數(shù)有利于提升對(duì)小目標(biāo)的分割效果。本文方法在國(guó)際攝影測(cè)量和遙感學(xué)會(huì)所提供的Potsdam和Vaihingen數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),先對(duì)遙感圖像進(jìn)行裁剪以獲得訓(xùn)練和測(cè)試圖像,然后訓(xùn)練圖像經(jīng)過(guò)數(shù)據(jù)增強(qiáng)輸入到所構(gòu)建的網(wǎng)絡(luò),通過(guò)反向傳播不斷調(diào)整參數(shù)進(jìn)行網(wǎng)絡(luò)訓(xùn)練來(lái)得到最優(yōu)參數(shù),最后依據(jù)評(píng)價(jià)指標(biāo)對(duì)所構(gòu)建的網(wǎng)絡(luò)及其它先進(jìn)網(wǎng)絡(luò)進(jìn)行對(duì)比分析。
模型中不同層次的特征都有助于圖像語(yǔ)義分割。高級(jí)語(yǔ)義特征可以更好地識(shí)別區(qū)域類(lèi)別,而低級(jí)特征可以捕捉更清晰、更詳細(xì)的邊界紋理。為了同時(shí)獲取高級(jí)和低級(jí)特征,本文設(shè)計(jì)了一種基于分支合并策略的輕量級(jí)遙感圖像語(yǔ)義分割網(wǎng)絡(luò),所包含的全局語(yǔ)境分支和空間信息分支分別用來(lái)提取圖像的上下文紋理信息和空間信息,網(wǎng)絡(luò)整體結(jié)構(gòu)如圖1所示,圖中Conv指的是卷積、批標(biāo)準(zhǔn)化和PReLU激活操作。CAM即通道注意力模塊,其定義請(qǐng)參見(jiàn)文獻(xiàn)[12]。FFM即特征融合模塊,其定義請(qǐng)參見(jiàn)文獻(xiàn)[13]。本章將詳細(xì)介紹基于分支合并策略的輕量級(jí)語(yǔ)義分割網(wǎng)絡(luò)的結(jié)構(gòu)組成。
圖1 網(wǎng)絡(luò)整體框架
在高分辨率遙感圖像中,需要足夠的上下文信息來(lái)充分提取圖像的特征。上下文信息對(duì)于分割具有很大的影響,局部信息加全局信息更有助于提高分割準(zhǔn)確性。以往的研究表明,上下文信息的提取依賴(lài)于深層網(wǎng)絡(luò)結(jié)構(gòu),而大量的卷積層和池化層可以有效地?cái)U(kuò)大感受野。因此,需要一個(gè)可以獲取上下文信息的輕量級(jí)主干網(wǎng)絡(luò)來(lái)滿(mǎn)足這一要求。本文引入能夠?qū)W習(xí)局部特征和周?chē)h(huán)境上下文聯(lián)合特征的CGNet[14]的思想構(gòu)建主干網(wǎng)絡(luò)來(lái)搭建全局語(yǔ)境分支。相比全卷積神經(jīng)網(wǎng)絡(luò)FCN結(jié)構(gòu),所構(gòu)建的網(wǎng)絡(luò)考慮了上下文信息。相比Encoder-Decoder類(lèi)型的網(wǎng)絡(luò)結(jié)構(gòu),所構(gòu)建的網(wǎng)絡(luò)包含了編碼上下文信息。全局語(yǔ)境分支網(wǎng)絡(luò)可以獲取包含像素級(jí)別和分割級(jí)別的上下文紋理信息。該網(wǎng)絡(luò)的CG模塊利用全局上下文來(lái)提高聯(lián)合特征,全局上下文用來(lái)逐通道地對(duì)特征圖的權(quán)重進(jìn)行調(diào)整,以此來(lái)突出有用的部分,而壓制沒(méi)有用的部分。CGNet的網(wǎng)絡(luò)架構(gòu)遵循了“深而淺”的原則,且CG模塊采用的是逐通道卷積的方式,能夠有效降低計(jì)算的成本。
CG模塊的結(jié)構(gòu)如圖2所示,輸入圖像首先經(jīng)過(guò)1×1卷積處理,然后分別經(jīng)過(guò)3×3的標(biāo)準(zhǔn)卷積和3×3的膨脹卷積處理,分別得到局部特征和全局特征。特征融合后,經(jīng)過(guò)BN+PReLU得到融合后的特征,再經(jīng)過(guò)一個(gè)通道維度的全局特征處理后得到最終的結(jié)果。從圖中可以看出主要包含4個(gè)部分,分別是局部特征提取器、周?chē)舷挛奶卣魈崛∑鳌⒙?lián)合特征提取器、全局特征提取器。局部特征提取器采用一個(gè)標(biāo)準(zhǔn)的3×3卷積層(Conv),周?chē)舷挛奶卣魈崛∑鞑捎靡粋€(gè)3×3的空洞卷積層(DConv),聯(lián)合特征提取器將局部特征和周?chē)舷挛奶卣鬟M(jìn)行拼接,接著后面加上BN層和PReLU激活函數(shù)層,全局特征提取器是全局池化層后面跟兩個(gè)全連接層抽取特征,得到一個(gè)權(quán)重向量,以此向量來(lái)指導(dǎo)聯(lián)合特征的融合。CG模塊的設(shè)計(jì)能夠?qū)W習(xí)局部特征和周?chē)h(huán)境上下文的聯(lián)合特征。
圖2 CG模塊
在全局語(yǔ)境分支,網(wǎng)絡(luò)主要包含51層,相比空間分支的層數(shù)要深,感受野更大,主要為了獲得更好的上下文信息。該分支分3個(gè)階段。第一個(gè)階段是3個(gè)Conv-BN-PReLU操作,第二個(gè)階段包含3個(gè)CG模塊,CG模塊中的周?chē)舷挛奶卣魈崛∑鞑捎每斩绰蕿?的3×3空洞卷積層,第三個(gè)階段包含21個(gè)CG模塊,CG模塊中的周?chē)舷挛奶卣魈崛∑鞑捎每斩绰蕿?的3×3空洞卷積層。3個(gè)階段的通道數(shù)分別為32,64,128。另外,在全局語(yǔ)境分支增加了通道注意力機(jī)制,強(qiáng)化了有效信息的傳遞,該分支最終輸出圖像大小為64×64。
在高分辨率遙感圖像中,提取豐富的空間信息同樣也是實(shí)現(xiàn)高精度語(yǔ)義分割的關(guān)鍵??臻g信息分支的目標(biāo)是為了更好地提取空間信息,保持特征圖的分辨率。由于提取過(guò)程是獨(dú)立的,因此不必關(guān)心深度和感受野。本文采用簡(jiǎn)單的三層卷積結(jié)構(gòu),避免破壞邊緣信息且降低計(jì)算量,直接從輸入圖像中提取空間信息,經(jīng)過(guò)批標(biāo)準(zhǔn)化(batch normalization,BN)和PReLU激活函數(shù)從高分辨率特征圖中提取豐富的空間信息,輸出大小為輸入圖像的1/8。
通道注意力模塊CAM的結(jié)構(gòu)如圖3所示,輸入特征首先經(jīng)過(guò)全局平均池化處理,再經(jīng)全連接層、ReLU、全連接層及Sigmoid層生成每個(gè)通道的權(quán)重。該模塊運(yùn)用通道相關(guān)性來(lái)突出重要信息,從而提升語(yǔ)義信息。從結(jié)構(gòu)圖可以看出其結(jié)構(gòu)非常簡(jiǎn)單,不必過(guò)多考慮網(wǎng)絡(luò)參數(shù)及計(jì)算量的影響。
圖3 通道注意力模塊
圖4 特征融合模塊
特征融合模塊FFM用來(lái)融合兩個(gè)分支。由于不同層次的語(yǔ)義信息相差較大,直接Concat融合得到的特征圖不利于網(wǎng)絡(luò)后續(xù)的學(xué)習(xí),而通過(guò)特征融合模塊會(huì)使得網(wǎng)絡(luò)在學(xué)習(xí)特征的時(shí)候有所側(cè)重,讓地物分割結(jié)果更加精細(xì)。如圖4所示,首先將兩個(gè)分支的輸出特征圖拼接,然后經(jīng)過(guò)1×1卷積層來(lái)壓縮通道數(shù),接著連一個(gè)通道注意力模塊,最后使用殘差連接來(lái)實(shí)現(xiàn)特征復(fù)用。
文獻(xiàn)[15]闡述了先前的一些網(wǎng)絡(luò)在解碼后使用Softmax分類(lèi)得到的分割精度較差。本文通過(guò)應(yīng)用加權(quán)的多尺度交叉熵?fù)p失函數(shù)來(lái)增強(qiáng)小目標(biāo)分割效果。相比傳統(tǒng)的輸出結(jié)構(gòu),本文網(wǎng)絡(luò)輸出融合了上下文信息和空間信息,并基于加權(quán)的多尺度交叉熵?fù)p失函數(shù)更新參數(shù),使最終分割結(jié)果更加準(zhǔn)確。
實(shí)驗(yàn)是在 Windows 10 操作系統(tǒng)上使用 Python3.6和PyTorch深度學(xué)習(xí)框架來(lái)實(shí)現(xiàn)的,硬件配置為Nvidia GTX 1080Ti GPU(11GB RAM)。
1980年至2015年,在臺(tái)北舉辦的個(gè)人演唱會(huì)共計(jì)810場(chǎng),數(shù)量總體呈上漲趨勢(shì),雖然部分年份有些微滑落(表4)。此外,由表 5可知,在臺(tái)北歷年的流行音樂(lè)個(gè)人演唱會(huì)中,臺(tái) 灣本土歌手一直占最大比重。
為了全面的評(píng)估遙感圖像語(yǔ)義分割網(wǎng)絡(luò)性能,本文采用了4個(gè)不同的語(yǔ)義分割評(píng)價(jià)標(biāo)準(zhǔn),分別是精確率Precision、召回率Recall、F1和總體準(zhǔn)確率OA,公式如式(1)所示
(1)
其中,TP指被模型預(yù)測(cè)為正的正樣本,TN指被模型預(yù)測(cè)為負(fù)的負(fù)樣本,F(xiàn)P指被模型預(yù)測(cè)為正的負(fù)樣本,F(xiàn)N指被模型預(yù)測(cè)為負(fù)的正樣本。
圖5 Vaihingen數(shù)據(jù)集不同類(lèi)別占比
Potsdam數(shù)據(jù)集是德國(guó)歷史名城Potsdam的場(chǎng)景。它由38幅分辨率為6000×6000像素的圖像組成,其中24幅圖像用于訓(xùn)練,14幅圖像用于測(cè)試。每幅圖像包含紅、綠、藍(lán)、近紅外(IR)四通道數(shù)據(jù),以及相應(yīng)的數(shù)字表面模型(digital surface model,DSM)。
Vaihingen數(shù)據(jù)集是德國(guó)一個(gè)相對(duì)較小的村莊Vaihingen的場(chǎng)景。它由33幅分辨率約為2500×2500像素的圖像組成,其中16幅圖像用于訓(xùn)練,17幅圖像用于測(cè)試。每幅圖像包含紅、綠、近紅外(IR)三通道數(shù)據(jù),以及相應(yīng)的數(shù)字表面模型。
原始數(shù)據(jù)集為高分辨率遙感圖像,圖像尺寸過(guò)大?,F(xiàn)有的實(shí)驗(yàn)配置條件有限,無(wú)法使原始圖像直接作為網(wǎng)絡(luò)的輸入,本文設(shè)定的網(wǎng)絡(luò)輸入為512像素×512像素,因此先對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,將所有遙感圖像及標(biāo)注圖切片為512像素×512像素大小,除了最后一行和最后一列圖片小塊之間有重疊外,其它小塊之間無(wú)重疊。裁剪后的圖像可以參照網(wǎng)絡(luò)整體框架圖中的輸入圖像,圖中的標(biāo)注圖為變換后的RGB圖像。
本實(shí)驗(yàn)中的優(yōu)化器采用了Adam優(yōu)化器,批處理大小batch size為6,對(duì)于學(xué)習(xí)率,實(shí)驗(yàn)使用poly策略,初始學(xué)習(xí)率lrinit為0.01,學(xué)習(xí)率變化如式(2)所示
(2)
式中:Tcur為當(dāng)前迭代次數(shù),Tmax為總迭代次數(shù),總迭代次數(shù)為100 000次。設(shè)置動(dòng)量power為0.9。
網(wǎng)絡(luò)訓(xùn)練過(guò)程中,不僅需要設(shè)定超參數(shù),還需要設(shè)計(jì)損失函數(shù)。損失函數(shù)在訓(xùn)練過(guò)程中直接決定著最終的訓(xùn)練效果。本文使用加權(quán)的多尺度交叉熵?fù)p失函數(shù)來(lái)增強(qiáng)小目標(biāo)分割效果,雙分支網(wǎng)絡(luò)融合后的損失函數(shù)用來(lái)指導(dǎo)整個(gè)網(wǎng)絡(luò)訓(xùn)練,而全局語(yǔ)境分支后面的損失函數(shù)可以進(jìn)一步增強(qiáng)該分支中參數(shù)的優(yōu)化,從而增強(qiáng)小目標(biāo)分割效果。本文將這兩個(gè)損失的權(quán)重設(shè)置為λ1和λ2, 表達(dá)式如式(3)所示
(3)
為了驗(yàn)證本文所提出方法的有效性,在相同條件下與典型的模型U-Net[16]、DeepLab-v3+[17]以及前面所提到的輕量化網(wǎng)絡(luò)ENet、ICNet進(jìn)行對(duì)比。U-Net是先編碼后解碼的U型網(wǎng)絡(luò)結(jié)構(gòu),區(qū)別于語(yǔ)義分割的開(kāi)創(chuàng)性網(wǎng)絡(luò)全卷積神經(jīng)網(wǎng)絡(luò)逐點(diǎn)相加的融合方式,將特征在通道維度拼接在一起。DeepLab-v3+是目前精度最高的通用分割網(wǎng)絡(luò),采用空洞空間金字塔池化以及編碼解碼器搭建的深度網(wǎng)絡(luò)。ENet是基于語(yǔ)義分割網(wǎng)絡(luò)SegNet改進(jìn)的輕量化網(wǎng)絡(luò),給低功耗移動(dòng)設(shè)備上的實(shí)時(shí)語(yǔ)義分割提供了實(shí)際操作的可能性。ICNet是基于語(yǔ)義分割網(wǎng)絡(luò)PSPNet改進(jìn)的實(shí)時(shí)語(yǔ)義分割網(wǎng)絡(luò),利用低分辨率快速獲取語(yǔ)義信息、高分辨率獲取細(xì)節(jié)信息,將兩者融合得到一個(gè)折中的模型。表1和表2分別顯示了本文方法與上述提到的網(wǎng)絡(luò)在Potsdam和Vaihingen數(shù)據(jù)集上的對(duì)比。可以看出,本文模型在兩個(gè)數(shù)據(jù)集上的精度優(yōu)于輕量化網(wǎng)絡(luò)ENet、ICNet及編解碼結(jié)構(gòu)的U-Net,相比于最先進(jìn)的DeepLab-v3+精度差距也較小。
為了直觀比較不同網(wǎng)絡(luò)的分割結(jié)果,分別從兩個(gè)數(shù)據(jù)集中選取典型預(yù)測(cè)圖作對(duì)比,預(yù)測(cè)結(jié)果如圖6和圖7所示。對(duì)于Potsdam數(shù)據(jù)集,ENet、ICNet及U-Net 3種方法對(duì)雜類(lèi)區(qū)域預(yù)測(cè)不佳,而本文方法和DeepLab-v3+方法基本能準(zhǔn)確分割雜類(lèi)區(qū)域,說(shuō)明本文方法使用通道注意力模塊和加權(quán)的多尺度交叉熵?fù)p失函數(shù),能夠強(qiáng)化類(lèi)別特征,解決類(lèi)別不均衡問(wèn)題。對(duì)于Vaihingen數(shù)據(jù)集,ENet、ICNet及U-Net 3種方法容易將地面和其它類(lèi)別區(qū)域混淆,而本文方法和DeepLab-v3+方法基本能準(zhǔn)確分割不同區(qū)域,說(shuō)明本文方法通過(guò)雙分支結(jié)構(gòu)添加空間信息,保持特征圖的分辨率,更好地保留細(xì)節(jié)信息。
表1 不同網(wǎng)絡(luò)在Potsdam數(shù)據(jù)集上的結(jié)果對(duì)比
表2 不同網(wǎng)絡(luò)在Vaihingen數(shù)據(jù)集上的結(jié)果對(duì)比
圖6 不同網(wǎng)絡(luò)在Potsdam數(shù)據(jù)集上的分割效果
研究表明,當(dāng)神經(jīng)網(wǎng)絡(luò)層數(shù)加深時(shí),可以更好地提取語(yǔ)義信息。但網(wǎng)絡(luò)加深的同時(shí),模型的計(jì)算復(fù)雜度和參數(shù)量也在不斷加大,會(huì)消耗更多的資源。為了比較各模型的參數(shù)指標(biāo),在GTX 1080Ti GPU平臺(tái)配置下,通過(guò)PyTorch-Opcounter模塊獲得各個(gè)模型的計(jì)算復(fù)雜度及參數(shù)量,并選取Potsdam測(cè)試數(shù)據(jù)集中的單張512像素×512像素的圖片測(cè)試預(yù)測(cè)時(shí)間。表3顯示了不同模型的參數(shù)指標(biāo),分別為計(jì)算復(fù)雜度、參數(shù)量及Potsdam單張測(cè)試圖的預(yù)測(cè)時(shí)間。結(jié)合圖表可以發(fā)現(xiàn),本文模型在兩個(gè)數(shù)據(jù)集上的精度和速度均優(yōu)于U-Net和ICNet。相比于ENet,本文模型在單張預(yù)測(cè)速度降低15 ms的情況下精度提升了10個(gè)百分點(diǎn)左右。相比DeepLab-v3+,本文模型在降低少量精度下網(wǎng)絡(luò)參數(shù)和計(jì)算復(fù)雜度分別為DeepLab-v3+的十五分之一和七分之一。
表3 不同模型的參數(shù)指標(biāo)對(duì)比
總體而言,DeepLab-v3+在精度上具有優(yōu)勢(shì),但計(jì)算復(fù)雜度、參數(shù)量比較大,預(yù)測(cè)速度相對(duì)較慢。ENet速度快但精度并不理想。本文的目標(biāo)是在達(dá)到實(shí)時(shí)速度的同時(shí)保證一定的精度。對(duì)比分析來(lái)看,所提出的基于分支合并策略的輕量級(jí)分割網(wǎng)絡(luò)具有相對(duì)較低的計(jì)算復(fù)雜度和參數(shù)量,且能達(dá)到較高的精度,更具有實(shí)際應(yīng)用價(jià)值。
此外,本文加入了消融實(shí)驗(yàn)來(lái)探究加權(quán)的多尺度交叉熵?fù)p失函數(shù)對(duì)網(wǎng)絡(luò)分割結(jié)果的影響。由于本文雙分支結(jié)構(gòu)的復(fù)雜性,傳統(tǒng)的網(wǎng)絡(luò)末端的單尺度損函數(shù)不足以?xún)?yōu)化所有層,尤其是全局語(yǔ)境分支中的層。因此,為了更好地指導(dǎo)訓(xùn)練過(guò)程,本文設(shè)置了多尺度損失函數(shù),并通過(guò)設(shè)置帶權(quán)重的交叉熵?fù)p失函數(shù)解決數(shù)據(jù)集中類(lèi)不平衡的問(wèn)題。為了驗(yàn)證加權(quán)的多尺度損失函數(shù)Lwm的有效性,分別與單尺度損失函數(shù)Ls、多尺度損失函數(shù)Lm、交叉熵?fù)p失函數(shù)Le和加權(quán)的交叉熵?fù)p失函數(shù)Lw在兩個(gè)數(shù)據(jù)集上進(jìn)行對(duì)比實(shí)驗(yàn)。如表4和表5所示,使用加權(quán)的多尺度交叉熵?fù)p失函數(shù)訓(xùn)練的模型在測(cè)試時(shí)達(dá)到了最佳的分割精度。
表4 消融實(shí)驗(yàn)在Potsdam數(shù)據(jù)集上的結(jié)果對(duì)比
表5 消融實(shí)驗(yàn)在Vaihingen數(shù)據(jù)集上的結(jié)果對(duì)比
高精度的語(yǔ)義分割效果依賴(lài)于日益深入的網(wǎng)絡(luò),增加了計(jì)算開(kāi)銷(xiāo)和參數(shù),不利于在移動(dòng)設(shè)備上部署。本文為了在達(dá)到實(shí)時(shí)分割速度的同時(shí)獲得較高的精度,提出了基于分支合并策略的輕量級(jí)語(yǔ)義分割網(wǎng)絡(luò),分別在Potsdam和Vaihingen數(shù)據(jù)集上測(cè)試,結(jié)果表明,本文方法在具有相對(duì)較低的計(jì)算復(fù)雜度和參數(shù)量的同時(shí)能達(dá)到較高的分割精度。此外,通過(guò)消融實(shí)驗(yàn)分析,發(fā)現(xiàn)加權(quán)的多尺度交叉熵?fù)p失函數(shù)可以進(jìn)一步增強(qiáng)參數(shù)的優(yōu)化,從而達(dá)到改善小目標(biāo)分割效果的目的。本文所提出的方法綜合考慮了速度和精度,在兩者之間做了最優(yōu)權(quán)衡。與主流的方法的比較結(jié)果表明,本文方法在輕量化條件下具有較好的性能。