劉艷飛,丁樂樂,孟凡效,孫叔民
(1.天津市勘察設(shè)計院集團有限公司,天津 300000;2.萬方星圖(北京)數(shù)碼科技有限公司,北京 102218)
隨著對地觀測技術(shù)的快速發(fā)展,高分辨率遙感影像已經(jīng)可以大量獲取,為地理國情普查、精細農(nóng)業(yè)、環(huán)境監(jiān)測等提供了堅實的數(shù)據(jù)基礎(chǔ)。相較于中低分辨率遙感,高分辨率遙感呈現(xiàn)了更加精細的空間細節(jié)信息[1-3],使得遙感地物目標的精細識別成為可能。然而隨著空間分辨率的提高,高分辨率影像也面臨著可用波段少、地物目標可變性大等問題,為其分類帶來了挑戰(zhàn)[4]。如何提取有效特征提高地物識別精度已經(jīng)成為當前高分辨率遙感影像處理領(lǐng)域的研究熱點之一。目前高分辨率遙感影像已經(jīng)發(fā)展出了基于頻譜變換的分類方法[5]、基于條件隨機場的方法[6-7]、面向?qū)ο蟮姆诸惙椒╗8-10]等。如Zhao等[11]利用面向?qū)ο蟮姆椒▽l件隨機場的分類結(jié)果進行融合,提高了高分辨率遙感影像分類結(jié)果。Li等[12]將面向?qū)ο笥糜诘乇砀采w提取,獲得了比基于像素的方法更高的分類精度。然而以上方法都需要人工設(shè)計特征,特征設(shè)計過程依賴專家先驗知識,且特征表達能力有限。
深度學(xué)習(xí)作為一種數(shù)據(jù)驅(qū)動的模型方法,可以有效地從數(shù)據(jù)中自動學(xué)習(xí)特征,無需專家先驗,已經(jīng)被成功應(yīng)用于道路提取、建筑物提取[13]、目標檢測[14-15]、場景分類[16-17]等領(lǐng)域。如Lu等[18]通過構(gòu)建多任務(wù)卷積神經(jīng)網(wǎng)絡(luò)同時提取道路和道路中心線,利用任務(wù)之間的相關(guān)性來提高道路提取精度。為融合多層卷積特征,Mou等[19]提出空間關(guān)聯(lián)模塊和通道關(guān)聯(lián)模塊用于構(gòu)建深度卷積網(wǎng)絡(luò)模型,學(xué)習(xí)、推理任意2個空間位置或特征圖之間的全局關(guān)系,提取關(guān)系增強特征。Tong等[20]利用網(wǎng)絡(luò)遷移技術(shù)采用已經(jīng)在其他數(shù)據(jù)集上經(jīng)過預(yù)訓(xùn)練的網(wǎng)絡(luò)作為初始化參數(shù)進行微調(diào)訓(xùn)練,獲得了比傳統(tǒng)方法更優(yōu)的語義分割精度。
相較于傳統(tǒng)方法,基于卷積神經(jīng)網(wǎng)絡(luò)的高分辨率影像分割方法已經(jīng)取得了更優(yōu)的語義分割效果,但是由于高分辨率遙感影像中存在同類地物方差增大、類間方差減小的問題,利用深度卷積神經(jīng)網(wǎng)絡(luò)進行高分辨率影像語義分割仍然面臨分類混淆的問題。針對這一問題,本文提出了基于深度辨別性增強網(wǎng)絡(luò)的高分辨率影像語義分割算法(discriminability improved convolutional neural networks,DICNN),用于提高深度特征的可辨別能力。在DICNN中,在傳統(tǒng)分類器Softmax的基礎(chǔ)上加入相似度懲罰因子,使得同類像素樣本特征向量向其類別中心靠近,從而增加深度特征的可辨別性。
傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)主要包含卷積層、池化層、全連接層等構(gòu)成單元。卷積層、池化層用于提取局部特征,全連接層對卷積層和池化層得到的局部特征進行聚集,獲得全局特征。然而將卷積神經(jīng)網(wǎng)絡(luò)用于高分辨率影像語義分割時,需要分類的對象是像素,即基于卷積神經(jīng)網(wǎng)絡(luò)的高分辨率影像語義分割是像素級別的分類,一般不需要影像全局特征。同時,為了保證輸入數(shù)據(jù)和輸出數(shù)據(jù)的大小一致,需要將全連接層從卷積神經(jīng)網(wǎng)絡(luò)中剔除。圖1為基于卷積神經(jīng)網(wǎng)絡(luò)的高分辨率影像語義分割的基本流程,主要包括數(shù)據(jù)預(yù)處理、深度特征提取和分類3個部分。
圖1 基于卷積神經(jīng)網(wǎng)絡(luò)的高分辨率影像語義分割一般流程圖
數(shù)據(jù)預(yù)處理階段主要指歸一化處理,使像素值落在某一區(qū)間。本文將每一像素除以255,使其落在[0,1]區(qū)間。
深度特征提取階段對輸入的圖像通過卷積、池化等操作進行逐層特征提取。在利用卷積層和池化層進行特征提取階段會造成細節(jié)信息的丟失,為保證影像細節(jié)信息,提高分類精度,目前已經(jīng)發(fā)展出了Unet、D-LinkNet[21]、HRNet[22]等網(wǎng)絡(luò)模型。
分類部分負責輸出像素分類分布概率,常用Softmax作為分類器。Softmax作為二元邏輯回歸的擴展,主要用于多元分類。對于一個具有n個類別的分類任務(wù),分類器Softmax輸出n元向量,每一元素代表待分類樣本屬于某一類的概率。
卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練過程分為前向與后向階段。前向階段主要包括預(yù)處理計算、特征提取和分類概率預(yù)測。后向階段是根據(jù)分類器Softmax計算損失誤差,然后利用鏈式求導(dǎo)法則進行梯度計算和網(wǎng)絡(luò)參數(shù)更新。高分辨率遙感影像往往呈現(xiàn)出同類地物方差大、類間方差小的問題,限制了基于深度卷積神經(jīng)網(wǎng)絡(luò)高分影像語義分割的進一步提升。針對這個問題,本文提出了深度辨別性增強網(wǎng)絡(luò)用于高分辨率遙感影像語義分割。在分析了基于卷積神經(jīng)網(wǎng)絡(luò)語義分割原理的基礎(chǔ)上,在分類器Softmax中加入相似度懲罰因子,使得像素樣本對應(yīng)的特征向其類別中心靠攏,增加特征辨別性,進而提升基于卷積神經(jīng)網(wǎng)絡(luò)的高分辨率語義分割精度。
為提高深度特征的可辨別性,本文提出了基于深度辨別性增強網(wǎng)絡(luò)的高分辨率影像語義分割分類方法,其訓(xùn)練流程圖如圖2所示,主要包括數(shù)據(jù)預(yù)處理、深度特征提取、相似度計算、最小化損失函數(shù)計算4個部分。
設(shè)卷積神經(jīng)網(wǎng)絡(luò)中每一層的輸出為zl∈RHl×Wl×Cl,其中l(wèi)為每一層網(wǎng)絡(luò)的序列號。對一個具有L層的網(wǎng)絡(luò)來說,l的取值為1至L。Hl、Wl和Cl分別代表該層網(wǎng)絡(luò)輸出特征圖的行、列和通道數(shù)。記輸入影像為z0∈RH0×W0×C0,其中H0、W0和C0分別為輸入影像的行、列以及通道數(shù),在本文中使用RGB三通道影像,因此C0為3,輸入影像大小設(shè)置為300像素×300像素,因此H0和W0都設(shè)置為300。
在數(shù)據(jù)預(yù)處理階段,本文將原始高分辨率影像像素值除以255使其落在[0,1]區(qū)間,同時為了增加數(shù)據(jù)的多樣性對其進行隨機左右翻轉(zhuǎn)以及鏡像等操作,之后將經(jīng)過上述處理的數(shù)據(jù)輸入到深度網(wǎng)絡(luò)中進行特征提取。
在特征提取階段,本文采用HRNet用于高分辨率遙感影像特征提取,其網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示。HRNet包含4個網(wǎng)絡(luò)分支用于提取不同尺度的特征,在最后一層將多尺度特征進行疊加融合,其基本構(gòu)成主要包括卷積層和上采樣層。
圖2 基于深度辨別性增強網(wǎng)絡(luò)的高分影像語義分割訓(xùn)練流程圖
圖3 本文采用網(wǎng)絡(luò)HRNet
對于第l層卷積網(wǎng)絡(luò),假設(shè)其輸入數(shù)據(jù)為zl-1∈RHl-1×Wl-1×Cl-1(Hl-1、Wl-1和Cl-1分別代表輸入數(shù)據(jù)的行、列以及通道數(shù)),具有Cl個卷積核,其第s個卷積核為wl,s∈Rker×ker×Cl-1(ker為卷積核的大小),則該卷積層的卷積過程可表達為式(1)。
al,s=zl-1*wl,s+bs
(1)
zl,s=f(al,s)
(2)
式中:bs表示卷積核wl,s對應(yīng)的偏置;al,s表示卷積核wl,s對應(yīng)的卷積結(jié)果。式(1)表達的函數(shù)為線性函數(shù),為增加模型的復(fù)雜度,將非線性函數(shù)f(·)作用于卷積計算結(jié)果al,k,得到該卷積核對應(yīng)的最終輸出結(jié)果zl,k。假設(shè)該卷積層卷積核移動步長為str,則該卷積層的輸出特征圖zl的行Hl和列Wl可由式(3)、式(4)得到。
Hl=(Hl-1-ker)/str+1
(3)
Wl=(Wl-1-ker)/str+1
(4)
由式(3)、式(4)可知,通過設(shè)置卷積核移動步長在特征提取過程中會造成數(shù)據(jù)空間維度的減小,為使得特征圖和原始輸入影像具有相同空間尺度,往往會采用上采樣對特征圖進行空間維度的擴展。常采用的上采樣層包括反卷積、插值法等。HRNet利用雙線性差值來恢復(fù)特征圖的空間維度。卷積神經(jīng)網(wǎng)絡(luò)通過疊加卷積層、上采樣層等網(wǎng)絡(luò)來逐層地獲得每一個像素對應(yīng)的深度特征向量。
在經(jīng)過深度特征提取階段之后,HRNet利用Softmax對提取到的特征進行分類。假設(shè)采用的卷積神經(jīng)網(wǎng)絡(luò)一共有L層,第L層網(wǎng)絡(luò)為分類器Softmax,其分類過程如式(5)所示。
(5)
式中:z0,i表示輸入影像第i個像素;p(k|z0,i)表示樣本像素z0,i屬于k類的概率(k=1,2,…n);wL,t為Softmax中t類對應(yīng)的參數(shù)向量;zL-1,i為像素z0,i在第L-1層網(wǎng)絡(luò)輸出的深度特征。
通過分析式(5)可知,Softmax分類過程本質(zhì)是一個相似度計算過程,其通過計算像素z0,i的特征向量zL-1,i與每一類的參數(shù)向量wL,t的內(nèi)積作為相似度來判斷像素z0,i屬于類別,因此每一類的參數(shù)向量wL,t可以看做該類對應(yīng)的類別中心。當每一類的參數(shù)向量wL,t的模相等時,其分類過程如圖4(a)所示。此時,待分類像素的深度特征與類別中心的內(nèi)積相似度轉(zhuǎn)化為比較像素的高維深度特征與每一類的類別中心的夾角,即通過計算待分類像素的深度特征與類別中心的夾角來判斷其類別。在圖4(a)中,因為特征點zL-1,i與類別中心wL,1的夾角θi,1最小,小于與其他類別中心wL,2、wL,K的夾角θi,2和θi,K,所以像素z0,i被分為1類。此時,Softmax變?yōu)槭?6)。
(6)
式中:Sc為類別中心向量wL,t與像素z0,i的深度特征向量模的乘積,即Sc=|wL,t|·|zL-1,i|;θt,i代表二者之間的夾角。
因此,為增加深度特征的可辨別性,使得同類像素的深度特征向其對應(yīng)的類別中心靠攏,本文將Softmax中類別中心wL,t與像素的深度特征之間的夾角作為相似度度量,加入一個夾角懲罰因子β,迫使在訓(xùn)練階段,訓(xùn)練樣本與其對應(yīng)的類別中心之間具有更小的角度。因此在相似度計算階段,本文首先計算特征向量與類別中心wL,t的夾角(式(7))。
θt,i=arcos(wL,t·zL-1,i)
(7)
式中:θt,i代表像素i的特征向量zL-1,i與類t的類別中心wL,t之間的夾角。對于任一像素z0,i,假設(shè)其類別為t,由式(7)導(dǎo)出其屬于類t的概率,如式(8)所示。
(8)
式中:β為懲罰因子。
在損失計算階段,根據(jù)最大似然法則使得分類概率最大,則得到分類損失函數(shù)J,如式(9)所示。
(9)
式中:m為參與訓(xùn)練的像素樣本個數(shù);yi為像素i的類別。在最小化式(9)時,為取得最小值,損失函數(shù)會更加傾向于迫使該類樣本向其類別中心移動,使得夾角更小,以彌補懲罰因子β本身帶來的角度增加量,如圖4(b)所示。對比圖4(a)與圖4(b)可知,通過式(6)和式(8)分別計算2個圖中像素z0,i屬于類1的概率,在二者得到相同概率時,圖4(b)中像素z0,i與類別中心wL,1的夾角比圖4(a)中夾角小(差值為β)。因此在訓(xùn)練階段,可利用式(8)代替式(6),使得像素樣本特征向其對應(yīng)的類別中心靠攏。本文在實驗部分對β的取值進行了分析。
在訓(xùn)練階段,通過交替執(zhí)行前向運算、后向運算更新網(wǎng)絡(luò)參數(shù)。在后向階段,本文采用梯度下降算法對網(wǎng)絡(luò)參數(shù)更新,如式(10)所示。
(10)
式中:w代表卷積神經(jīng)網(wǎng)絡(luò)中的各層參數(shù);lr為學(xué)習(xí)率,用于控制網(wǎng)絡(luò)參數(shù)更新的步長。
圖4 傳統(tǒng)Softmax與DICNN改進的Softmax分類原理
為驗證提出算法的有效性,采用2個數(shù)據(jù)集進行實驗。數(shù)據(jù)集1為高分二號數(shù)據(jù)集GID[20],包含建筑物、農(nóng)田、森林、草地和水域5個類別,有150張影像,每張大小為6 800像素×7 200像素。在實驗中隨機抽取120張影像用于訓(xùn)練,剩余30張用于測試。數(shù)據(jù)集2為The SpaceNet Buildings數(shù)據(jù)集,該數(shù)據(jù)集主要用于建筑物提取,大小為650像素×650像素。本文選取上海和拉斯維加斯2個城市的建筑物數(shù)據(jù),分別從這2個城市選取60%(5 059張影像)作為訓(xùn)練集,剩余的40%(3 374張影像)作為測試集。圖5為實驗數(shù)據(jù)代表樣本。本文利用HRNet作為特征提取網(wǎng)絡(luò),在這個網(wǎng)絡(luò)的基礎(chǔ)上施加所提出的角度懲罰項進行實驗,并將HRNet作為對比方法驗證所提方法的有效性。
為了使網(wǎng)絡(luò)獲得一個較好的初始化,首先,在cityscapes數(shù)據(jù)集[23]上對HRNet網(wǎng)絡(luò)進行預(yù)訓(xùn)練,獲得一個較好的參數(shù)初始化結(jié)果;然后,在實驗數(shù)據(jù)集上進行網(wǎng)絡(luò)微調(diào)。對數(shù)據(jù)集1,采用Kappa系數(shù)、總體精度OA和生產(chǎn)者精度作為評價指標。對數(shù)據(jù)集2,采用準確率Precession、召回率Recall以及F1 Score作為評價指標。
圖5 實驗數(shù)據(jù)示例樣本
1) 數(shù)據(jù)集1。表1給出了HRNet以及本文所提出的DICNN在β=0.5時于GID上的分割結(jié)果。從表1可以看出,本文提出的方法相較于對比方法HRNet,Kappa系數(shù)提高了1.8,總體精度OA提高了1.3,而且在建筑、農(nóng)田、森林、草地、水域等類別相較于對比方法均有所提高,在農(nóng)田和水域2個類別上精度提高明顯,分別有1.4和2.3的提升。
圖6給出了HRNet和DICNN在GID上的分類混淆矩陣。從混淆矩陣可以看出,DICNN降低了農(nóng)田錯分為水域和水域錯分為森林的比例,將農(nóng)田錯分為水域的比例由2.35降至0.9,將水域錯分為森林的比例由4.37降至1.33。然而,DICNN同時也增加了草地錯分為農(nóng)田的比例,將其比例由1.7擴大至3.67,這可能是因為在訓(xùn)練數(shù)據(jù)集中農(nóng)田的數(shù)據(jù)樣本多于其他類別,呈現(xiàn)出數(shù)據(jù)不平衡現(xiàn)象,而利用DICNN的損失函數(shù)相較于HRNet中采用的Softmax對樣本不平衡更敏感。圖7給出了2種方法在GID數(shù)據(jù)集上的分類結(jié)果可視化對比。從圖7的第一行可以看出,相較于HRNet,DICNN減少了草地錯分為森林的現(xiàn)象,在區(qū)域1、2、3、4得到更純凈的分類結(jié)果。在第二行中HRNet將部分農(nóng)田錯分為水域,而DICNN減少了該類錯分,在區(qū)域1和區(qū)域2完全消除了農(nóng)田錯分為水域的現(xiàn)象,在區(qū)域3也有部分消除。
表1 數(shù)據(jù)集1分割結(jié)果評價表 %
圖6 HRNet和DICNN在GID數(shù)據(jù)集上混淆矩陣
圖7 DICNN與HRNet在數(shù)據(jù)集1上的分類結(jié)果可視化對比
2)數(shù)據(jù)集2。數(shù)據(jù)集2包含上海、巴黎、拉斯維加斯和喀土穆等地區(qū)的建筑物目標。本文選用上海和拉斯維加斯2個城市的圖像作為實驗數(shù)據(jù)進行驗證。表2給出了HRNet和DICNN在β=0.3時于數(shù)據(jù)集2上的實驗結(jié)果。從表2可以看出,DICNN在準確率Precession、召回率Recall以及F1 Score 3個評價指標上均高于HRNet。相較于HRNet,DICNN在準確率Precession、召回率Recall以及F1 Score 3個指標上分別提高1.7、1.3和1.6,證明了其在提高特征辨別性方面的有效性。
表2 數(shù)據(jù)集2分割結(jié)果評價 %
圖8給出了HRNet和DICNN在數(shù)據(jù)集2上的可視化分割結(jié)果。對于圖8中的區(qū)域1、區(qū)域3,HRNet將背景區(qū)域錯分為建筑,而DICNN有效地消除了這一錯分現(xiàn)象。對于區(qū)域4,HRNet無法將建筑正確識別,造成遺漏,而DICNN識別出了部分區(qū)域,消除了部分遺漏。對于區(qū)域2,HRNet和DICNN都錯誤地將背景錯分為了建筑,可能是因為區(qū)域2對應(yīng)的影像與建筑過于相似,無法有效識別。另外,從圖8可以看出,與2個參考圖相比,基于HRNet和DICNN預(yù)測的建筑在邊界區(qū)域的分割效果不理想,這主要是因為卷積神經(jīng)網(wǎng)絡(luò)采用卷積和池化的操作,造成空間信息的丟失,使得網(wǎng)絡(luò)最后的分割結(jié)果無法精確定位物體的邊界信息。在以后的工作中應(yīng)當考慮加入邊界約束,改善預(yù)測結(jié)果的邊界。
圖8 HRNet和DICNN在數(shù)據(jù)集2上的分割結(jié)果對比
圖9 β不同取值時DICNN在2個數(shù)據(jù)集上的分割結(jié)果變化
在DICNN方法中,夾角懲罰項β決定了像素特征向其類別中心靠攏的程度,即決定了所學(xué)特征的辨別性。為研究β對遙感影像語義分割的精度影響,分別令β取值{0.1,0.3,0.5,0.7,1.0,1.2}進行分析。圖9給出了DICNN在β不同取值下,在2個數(shù)據(jù)集上的精度變化。從圖9可以看出,對于數(shù)據(jù)集1,在β從0.1增加至0.5的過程中,分割精度不斷提升,在β=0.5時取得最優(yōu)值,隨后隨著β的繼續(xù)增加,分割精度不斷下降。對于數(shù)據(jù)集2,指數(shù)Precision在β從0.1升至1.3的過程中不斷下降,指數(shù)F1 Score于β為0.3時取得最大值。當β從0.1升至0.7時,Recall增加,隨后隨著β的繼續(xù)增加而下降。
當卷積神經(jīng)網(wǎng)絡(luò)用于高分辨率遙感影像語義分割時,高分辨率影像所呈現(xiàn)出的類間方差小、類內(nèi)方差大的問題,往往會造成錯分。針對這一問題,本文在Softmax的基礎(chǔ)上引入夾角懲罰項,使得同類像素樣本特征向量向其類別中心靠近,增加深度特征的可辨別性,提高高分辨率遙感影像語義分割的精度。在GID和The SpaceNet Buildings 2個數(shù)據(jù)集上,本文所提出的算法分別將語義分割評價指標Kappa和F1 Score 提高1.8和1.6,證明了其有效性。然而,所提出的方法在類別不平衡和邊緣保持方面表現(xiàn)不佳。在未來的研究中將考慮通過自適應(yīng)加權(quán)技術(shù)解決類別不平衡問題。針對分割邊緣不完整的問題,將考慮在初步語義分割結(jié)果的基礎(chǔ)上,利用邊緣提取技術(shù)對語義分割圖進行約束優(yōu)化,獲得完整分割邊緣。