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