潘建平,李明明,孫博文,李鑫,胡勇
(1.重慶交通大學 土木工程學院,重慶 400074;2.重慶市規劃和自然資源調查監測院,重慶 401123)
城市新增建設用地是城市建設的重要組成部分,其準確提取對制定科學合理的城市規劃與土地利用規劃、合理利用城市土地資源,促進城市土地集約節約利用,提高城市土地利用具有重要意義[1]。隨著遙感技術的快速發展,使得高分辨遙感影像實現對地表覆蓋變化檢測成為一種高效、準確的技術手段[2]。近些年,國內外學者在遙感影像變化檢測中做了大量的研究,常用的方法有分類后比較法[3]、影像代數法[4]、變化向量分析法[5]及基于形狀特征的變化檢測方法[6]等,但是普遍存在影像預處理環節要求嚴格、部分環節需要人工干預,自動化程度低、難以處理多源數據等缺點[7]。
與常用的變化檢測方法相比,深度學習算法具有極強的學習能力,能夠擬合復雜的映射關系,解決復雜的任務場景[8],因此可以將深度學習算法引入遙感領域,利用深度神經網絡強大的特征學習能力來解決復雜的遙感影像變化檢測問題[9]。2010年Mnih等[10]首次將深度學習方法引入遙感領域,提出用DBN(deep belief networks)模型來檢測機載遙感圖像中的道路。2015年戴丹[11]使用BP神經網絡對長沙市城市建設用地擴張規模進行預測研究。2016年Zhang等[12]采用去噪編碼器進行多源遙感影像的變化檢測,變化檢測的精度高于傳統的變化檢測方法。2017年馮麗英[13]采用深度學習對城市建設用地信息進行提取,證明了深度卷積神經網絡在分類精度上優于傳統的分類器。2017年Xie等[14]提出了新的殘差ResNeXt模型,并將這種模型與ResNet進行比較,證明了ResNeXt訓練錯誤率更低、提取精度更高。2019年高峰等[15]采用deeplab語義分割網絡實現了耕地資源的自動化提取與變化檢測。2019年吳海平等[16]利用卷積神經網絡(convolutional neural network,CNN)自動提取新增建筑用地信息,實現了深度學習技術在土地利用遙感監測方面的初步探索。
目前,采用深度學習進行城市新增建設用地的變化檢測研究尚少,同時國內外沒有開放的數據集,給新增建設用地變化檢測工作帶來諸多困難。為此文章通過人工標注遙感影像,解決了缺少數據集的問題,并研發了一種改進U-Net的城市新增建設用地高分遙感變化檢測技術,改進后的U-Net既保留了U-Net跳躍連接和編碼、解碼結構的特點,又引入殘差網絡ResNeXt解決了網絡深度加深帶來的模型退化問題。
以全國土地變更調查遙感監測的DOM成果為數據源,其中前時相影像數據為2010年WorldView2數據,后時相遙感影像數據為2011年QuickBird+WorldView1的鑲嵌數據,分辨率均為0.5 m。改進U-Net的城市新增建設用地高分遙感變化檢測流程如圖1所示。

圖1 城市新增建設用地變化檢測流程
城市建設用地是城市土地的重要組成部分,從廣義上講是城市管轄范圍內所有用于建設的土地,從狹義上講是城市規劃區范圍內根據城市規劃確定進行開發的土地。由于遙感地物種類復雜多樣,不同種類之間相互組合,可以判定為新增的變化眾多,給數據集的制作帶來了困難。通過借鑒《2020年度全國國土利用遙感監測圖斑類型劃分標準》[17],結合重慶市的新增建設用地實際情況,本文對新增建設用地的界定根據下面四個標準:(1)前時相影像有植被覆蓋或明顯非建設痕跡,后時相影像有明顯建設特征;(2)前時相影像有植被覆蓋或明顯非建設痕跡,后時相影像有明顯建設推填土特征;(3)前時相影像有明顯建設推填土特征,后時相影像有明顯建設特征;(4)前時相影像有植被覆蓋或沒有明顯建設,后時相影像有明顯道路或大型溝渠特征。
首先,對前后期影像進行地理配準,保證兩期影像中同名地物的特征點相互匹配。再將兩幅影像分別矢量化,按照城市新增建設用地類型界定的四個標準,提取出新增建設用地的矢量圖斑區域,并通過標注工具轉化為二值標簽圖,即只含有新增建設用地與未變化用地兩個標簽。然后將前期影像、后期影像、標簽圖按照128的步長裁減為256×256的數據。數據集按照9∶1的比例劃分為訓練集、驗證集,并通過隨機旋轉、上下翻轉、左右翻轉三種增廣方法將訓練集擴大為原來的四倍。最后將裁減后的3波段前期影像、后期影像批量疊加為6波段的影像與標簽一起輸入網絡中進行訓練。
首先,將樣本集輸入改進前的U-Net中,在保證所有參數不變的情況下,僅改變三種損失函數的設置進行分別訓練,通過對比分析損失曲線圖、驗證集預測結果圖來尋找其中最優的損失函數,并將該損失函數設置為改進后網絡的損失函數。其次,將樣本集輸入改進后的網絡中進行訓練和預測,并將預測結果與人工真實標注結果進行精度評定。
采用二分類問題中常見的評價指標:精確率(precision)、召回率(recall)、F1分數(是精確率和召回率的調和均值)。
損失函數是用來估量模型預測值與真實值不一致程度,損失值越小,模型的魯棒性就越好,選取一個好的損失函數對于模型至關重要。但是在新增建設用地變化檢測中存在類別不平衡的現象,即未變化的類別數量往往大于發生變化的類別數量,這將導致訓練時損失函數會偏向樣本數量多的一方,造成訓練時損失函數很小,反而對發生變化類別的識別精度不高。針對這種現象,選擇了三種針對類別非均衡的損失函數進行對比,分別是dice loss、focal loss和WCE loss(weight crossentropy loss),找尋其中最優的損失函數來提高精度。
dice loss是比較兩個樣本的相似程度,是一個區域相關的loss。當前像素的loss不僅和當前像素的預測值相關,和其他點的值也相關,訓練更傾向于挖掘前景區域,正負樣本不平衡的情況就是前景占比較小。
focal loss的提出是在目標檢測領域,為了解決正負樣本比例嚴重失調的問題。首先在原有的基礎上加了一個因子gamma,減少易分類樣本的損失,使得更關注于困難的、錯分的樣本。加入平衡因子alpha,用來平衡正負樣本本身的比例不均。
WCE loss是給正樣本加上一定的權重,來解決類別不平衡的現象。
U-Net采用了一種編碼器解碼器的結構,淺層的網絡用來解決像素定位的問題,而深層次的網絡用來解決像素分類的問題。添加的上采樣階段可以擴大特征通道,允許網絡保留更多的原圖信息在高分辨率的網絡層次傳播。沒有使用全連接,全程使用valid來卷積保證了分割結果是基于沒有缺失的全部特征。采用一種對稱結構連接到所有淺層特征,將所有提取到的特征加以利用,保證了輸入與輸出尺寸相同的同時,也進一步提升了分割效果。這些結構使得U-Net可以使用比較少的訓練集就可以得到非常好的分割效果。
殘差網絡ResNeXt是在inception與ResNet上做出的改進,在結構上有兩個特點。首先,借鑒了inception的“分割-轉換-合并”模式,先將輸入通道進行分組,然后對每一組進行卷積運算,最后再把所有分組的結果融合。其次,繼承了ResNet的重復層策略,但不同的是,增加了路徑的數量,每個路徑上使用相同的拓撲結構組建ResNeXt模塊分組卷積。這種獨特的結構使得殘差網絡ResNeXt可以在不增加參數復雜度的前提下提高準確率,同時相同的拓撲結構減少了超參數的數量,便于模型移植。其結構如圖2所示。
為了增加網絡分割結果的精細程度,增加特征的表達能力,同時避免層數加深帶來的模型退化問題,文章采用了ResNeXt 50來對U-Net的編碼層進行改進,以瓶頸殘差模塊對卷積層進行替換,分別以3、4、6、3個bottleneck_block堆疊塊對U-Net的第2、3、4、5層中的卷積進行替代,其中ResNeXt50網絡結構示意圖如圖3所示。改進后的網絡結構如圖4所示。

圖3 ResneXt50網絡結構示意圖

圖4 基于ResNeXt50的改進U-Net示意圖
本文使用Tensorflow框架并在NVIDIA GeForce RTX 2080 Ti上完成訓練與測試。其中訓練集增廣后為7 776組,驗證集未增廣為216組,訓練集的作用是對神經網絡參數進行更新調優,驗證集的作用是驗證神經網絡的預測精度,并不參與參數更新。訓練集中每8組樣本為一批次輸入神經網絡,迭代次數設置為500,優化器為帶動量的隨機梯度下降法,其中學習率設置為0.001,權重衰減為1E-6,動量為0.9。
在同一個U-Net中僅改變三種損失函數的設置,分別進行訓練,生成訓練模型,并對驗證集進行預測與精度評定,訓練時的精度如圖5所示,預測結果為圖6中的第2、3、4列所示。通過對比發現,加權交叉熵函數在基于U-Net的新增建設用地檢測中結果最好。因此將交叉熵設置為殘差U-Net的損失函數,保證上述訓練參數不變的情況下,生成訓練模型,并對驗證集進行預測與精度評定,訓練結果為圖6中的第5列。

注:橘色曲線為加權交叉熵損失函數;紅色曲線為dice損失函數;藍色為focal損失函數;橫坐標為迭代次數;豎坐標為訓練精度。

注:第1列圖片為人工勾畫的真實變化圖,紅色區域為新增建設用地區域,黑色區域為未變化區域。第2、3、4、5列是預測的結果圖,白色區域是預測為新增建設用地的區域,黑色是預測為沒有發生變化的區域。其中第2、3、4列是采用相同的U-Net,基于不同損失函數的預測結果圖,損失函數分別為 focal函數、dice函數、交叉熵函數。第5列是采用殘差網絡對U-Net改進后的網絡預測結果圖,損失函數設置的是交叉熵函數。
從圖5可以看出,加權交叉熵函數在三種損失函數中精度的最高。從圖6也可以看出,加權交叉熵函數較前兩種損失函數在驗證集上提取的邊界輪廓更加完整,提取準確率也更高。所以可以認為,加權交叉熵函數在采用U-Net進行城市新增建設用地的變化檢測中效果最好。從圖6中第4、5列可以看出,改進后的網絡相比于未改進前提取效果更顯著,減少了分割圖形中噪聲點的出現,提取邊緣輪廓更趨近真實標簽圖。
由于本文的研究目標是為了提取出城市建設用地的新增區域,而不是對四種類型的變化進行分類研究,可以直接使用訓練好的模型對實驗區進行預測,而無需考慮不同新增建設用地的形態差異。
選取茶園區變化明顯且包含所有新增用地種類的典型地區作為實驗區,前后期影像大小為3 253像素×2 665像素,面積為2.167 km2,分辨率均為0.5 m,該實驗區與訓練集、樣本集無重復區域,其中前后原始影像如圖7所示,人工標注真實變化區域及改進模型預測結果如圖8所示。提取精度對比如表1所示。

圖7 茶園區部分地區

圖8 結果對比

表1 精度對比 %
從表1可以看出,加權交叉熵在三種損失函數中的綜合值F1分數值最高,為85.056%,優化改進的網絡F1分數高于未改進的U-Net,提高了2.546%。實驗結果證明了優化和改進網絡的有效性和必要性。
本文考慮U-Net結構在變化檢測方面強大的提取能力,通過在U-Net基礎上加入殘差進行改進,制定重慶市特有的城市新增建設用地數據集,設計了一套完整的基于深度學習方法的城市新增建設變化檢測流程。實驗結論主要有以下幾點。
通過三種損失函數在訓練精度曲線和提取結果的對比,找尋最優的損失函數,來盡可能減少類別不平衡對提取精度的影響。實驗結果表明,加權交叉熵函數在三種函數中的精度最高,同時驗證集上提取的邊界輪廓更加完整,提取準確率也更高,實現了U-Net在損失函數上的優化。
殘差網絡ResNeXt已經被證明比ResNet具有更好的效果。為了避免一味地網絡加深而帶來的模型退化現象,本文借鑒了ResNeXt 50結構的殘差模塊對U-Net的編碼結構中卷積層進行替換,在加深了網絡的深度來獲取更高提取精度的同時,這種獨特的結構也可以避免模型退化的問題。實驗結果表明,改進后的網絡相比未改進前在使用同一種損失函數和參數時提取精度更高,證明了加入殘差網絡的有效性。
文章在U-Net上進行了優化和改進,為城市新增建設用地的變化檢測提供了一種好的方法與思路,可以解決傳統檢測方法的工作量大、提取精度低、特征選擇困難、閾值設置難等問題。但由于數據源僅選擇了重慶茶園區的數據,所以數據集所包含的地物類別不夠全面復雜,對其他地區的城市新增建設用地的提取效果還有待考證,下一步將在擴大樣本集的數據量和復雜度方面繼續研究。