賀 浩,王仕成,楊東方,王舒洋,劉 星
1. 火箭軍工程大學控制工程系,陜西 西安 710025; 2. 火箭軍工程大學信息工程系,陜西 西安 710025
道路作為交通的主要組成部分,在人類各項活動中發揮著不可替代的作用。在現代社會中,道路也是地圖和地理信息系統中重要的標識對象。隨著交通地理信息系統的建設,道路的自動提取技術隨之出現并不斷發展[1]。及時而完備的道路交通信息系統,可在交通導航、城市規劃、農林及飛行器自動駕駛等諸多領域發揮重要作用。人類觀測手段的更新和交通建設的日新月異對道路自動提取技術不斷地提出更高的要求。一方面,當今人類建設活動快速地改變著交通和地貌信息,與此同時,人們對數字地圖、導航等需求也十分旺盛。另一方面,人類觀測地球的手段也更加豐富,高分辨率衛星、航拍無人機、成像雷達等設備的應用使得可用數據出現海量增長。在此情況下,如何利用海量的數據,快速且完備地提取道路信息以更新地理信息系統,成為該領域的研究熱點。
在過去的幾十年里,人們對遙感圖像的道路自動提取技術進行了大量的研究。這些研究絕大多數都采用“特征匹配+道路連接”的思路[2-10],即,先通過設計道路的一般特征,如灰度特征、平行雙邊緣、道路交叉口等,來確定道路種子的位置,并通過連接算法,如Snake算法等完成道路的提取。如文獻[10]通過形狀、距離、語義等設計度量特征,并使用支持向量機(SVM)訓練道路網的回歸模型以實現道路提取。這些方法在一定的應用場合下發揮了積極作用,但是其特征設計和連接算法中有諸多閾值參數需要人工調節,才能在某類型圖片下取得較好效果,這就限制了其在大規模數據上的應用,使其難以實現通用[11]。
隨著深度學習技術在計算機視覺領域的開疆拓土,圖像分類、物體識別和語義分割任務等都獲得了重大突破。遙感影像的道路提取任務,可作為圖像的語義分割任務的子集進行研究,即設計分割算法,將遙感影像中的道路與背景分割開來。隨著深度語義分割研究的進展[12-18],遙感影像道路提取技術的研究也不斷深入。文獻[11,19—20]通過深度神經網絡對Massachusetts城市道路和建筑的標注及提取進行了大量研究,并建立了相應的道路提取數據集。文獻[21]基于經典深度神經網絡和滑動窗口來識別道路方向,并用有限狀態機來連接道路,該方法采用了滑動窗口操作實現對像素區域的分類,因而其提取速度較為緩慢。文獻[22]基于FCN[15]網絡架構,將道路結構信息約束到損失函數中,改進了深度分割網絡在道路提取任務中的表現效果。文獻[23]基于SegNet[17]網絡結構和ELU激活單元,進一步提升了道路提取效果,在Massachusetts Roads數據集[20]測試中其F1-score達到了81.2%。但是這兩種方法均未考慮道路特征自身特點,而使用通用的分割網絡結構完成道路提取任務。
本文針對道路目標的特點,針對性地設計了深度卷積編解碼網絡結構(deep convolutional Encoder-Decoder network,DCED):為保留道路網絡豐富的低層細節特征,增加了低層特征向高層的跳連,并減少Encoder過程中下采樣次數,保證中間特征圖的分辨率;針對道路語義信息較為簡單的特點,壓縮了DCED網絡層數,減少了需要訓練的參數數量,降低了網絡訓練難度。同時,針對遙感影像中道路目標所占像素較少的特點,針對性地改進了損失函數,改善了網絡訓練中正負樣本嚴重失衡的問題。最后,通過試驗驗證了本文方法性能,并與其他算法進行了比較分析。
道路是線形的,具有網狀分布的特殊結構,其細節信息豐富,但是語義信息較為簡單。這樣的特點對分割網絡的細節特征提取能力提出了較高要求。經典的語義分割網絡面對的圖像復雜多樣,對于語義信息的提取要求更高,其Encoder部分大多采用了經典分類網絡(如VGG16)的預訓練模型。在這些網絡架構中,輸入圖片經過多次下采樣,網絡得到的中間特征圖尺寸被多倍壓縮,如文獻[22]采用FCN架構,最小的中間特征圖被壓縮了32倍,因而丟失了目標的部分細節信息。隨后這些網絡雖然采用了“上采樣+跳連”的方式來解碼圖片細節信息,但是對于道路目標,仍然不足以有效地還原道路網的細節。同時,道路目標語義信息簡單的特點,也決定了道路提取任務并非必須采用大規模圖片分類網絡的預訓練模型來進行特征提取。針對道路提取問題的特殊性,本文設計了深度相對較淺的DCED網絡,其結構如圖1所示。
將輸入圖片規范到512×512像素大小,經過若干層卷積和兩次最大池化對圖片完成編碼部分,此時特征圖6大小壓縮為原圖大小的1/4,而后將特征圖送入解碼網絡。在完成第1次上采樣后,將原圖1/2大小的特征圖5跳連至上采樣層后,與特征圖10并聯送入后續網絡。在完成第2次上采樣后,將原圖大小的特征圖2跳連至本次上采樣層后,與上采樣輸出的特征圖14并聯送入后續網絡。而后,通過包含兩個卷積核的卷積層將特征圖映射到512×512×2大小的特征圖17,實現輸入的RGB圖到輸出二分類分割圖的映射。而后通過包含一個卷積核,卷積核大小為1×1的卷積層,將輸出映射成為像素分類的概率圖,其大小為512×512×1。

圖1 針對道路提取任務的Encoder-Decoder網絡結構Fig.1 The architecture of the designed Encoder-Decoder network for road extraction
本文所設計的網絡結構只經過兩次下采樣處理,其最小特征圖仍然具有原圖1/4的尺度,因而能夠更多地保留道路的局部細節特征。同時,在較淺的網絡結構下,通過跳連操作將低層局部特征與高層語義特征融合起來,使得最終輸出的特征圖對道路網的語義信息及細節信息均具有良好的表示能力。網絡中使用到的方法具體情況如下。
1.1.1 卷積
除去用于輸出的1×1卷積層,其他卷積層卷積核大小均為3×3,并設置padding為1,使得卷積層輸入特征圖與輸出特征圖的寬、高一致。
1.1.2 ELU激活
在過去一段時間里,修正線性單元(rectified linear unit,ReLU)激活在深度卷積神經網絡中被廣泛采用。文獻[24]提出了指數線性單元(exponential linear unit,ELU),可以加速網絡收斂速度,有效克服梯度消失等問題。假設某節點輸出為xi,則經過ELU層后的輸出ri可表示為
(1)
1.1.3 最大池化
池化操作可以匯合低層特征信息,縮減計算數據量,擴大高層濾波器的感受野。本網絡的池化操作均采用最大池化,尺寸設置為2×2,步長也為2×2。經過最大池化層后的特征圖,其輸出的深度不變,高和寬變為原來的1/2。
1.1.4 跳層連接
在所設計的網絡中,特征圖經過卷積層后其寬和高是不變的。因此,經過若干卷積層,兩次下采樣與兩次上采樣的特征圖14與特征圖2的尺寸是一致的。同理,特征圖10與特征圖5的尺寸也是一致的。所謂跳連操作,即將低層特征圖與相應高層特征圖整合為新的張量,并進行后續的計算和處理。其具體的實現方式為將特征圖2(512×512×64)與特征圖14(512×512×64)在深度維度上串聯,構成新的組合特征圖(512×512×128)并送入后續卷積層進行運算。同理,對特征圖5與特征圖10也進行相似的操作。跳連操作能夠融合高層的語義信息和低層的局部特征信息,從而實現準確而又精細的道路特征提取。
1.1.5 上采樣
與池化操作相反,對較小的特征圖進行上采樣,其輸出的特征圖深度不變,高和寬變為原來的2倍。本文采用了雙線性插值實現上采樣。通過如下方式計算上采樣后某一點(x,y)的值P:假設輸入的特征圖在相鄰4個像素(x1,y1)、(x1,y2)、(x2,y1)和(x2,y2)處的值分別為Q11、Q12、Q21和Q22。首先在x方向進行線性插值
(2)
(3)
式中,R1和R2分別代表輸出圖在(x,y1)和(x,y2)位置的值。然后在y方向進行線性插值,可得
(4)
聯立式(2)、式(3)、式(4)可得

(5)
本文將特征圖上采樣為原來大小的2倍,則式(5)可以簡化為
(6)
1.1.6Sigmoid
經過該操作,輸出為
(7)
式中,zi為上層節點輸出值。輸出值介于0與1之間,可作為二分類預測的概率描述。
道路提取問題可看作是對像素的二分類問題。對于二分類問題,TP(true-positive)代表標簽為正,預測也為正;TN(true-negative)代表標簽為負,預測為負;FP(false-positive)代表標簽為負,預測為正;FN(false-negative)代表標簽為正,預測為負。
通常此類問題采用二分類交叉熵損失函數:
(8)
式中,yi為第i個像素的真實值,yi=0代表該像素屬于背景區域,yi=1則代表該像素為道路區域;ai為經過sigmoid函數第i個像素的預測值,ai取值落于(0,1)內,ai越趨近于1,代表其屬于道路的概率越高。訓練的過程即通過不斷調整網絡的權值參數,使得損失函數L達到最小的過程。
可以看出,式(8)無差別對待輸出yi,給予了所有像素相同的權重,因而忽略了yi的位置與其分類之間的聯系。基于此觀點,文獻[22]將損失函數改進為
(9)
式中,f(di)的定義為
(10)


log(1-ai))
(11)
式中,比例系數λ1和λ2均為正數且有λ1>λ2。對于二分類問題而言,正負樣本的合理比例約為1∶1。

圖2 遙感影像與其道路標注圖Fig.2 The remote sensing images and the ground truth of the road
針對每一份訓練樣本,統計其正樣本數目Np和負樣本數目Nn,設置加權系數使得其滿足λ1+λ2=2且滿足

(12)
可得
(13)
一般而言,二分類問題中,正負樣本所占比例應大致相等,因而設置常數P≈1,但是P值的設置還與正負樣本特征的多樣性、復雜程度等多種因素相關,在應用中應進一步深入研究。
1.3.1 數據擴充
深度學習是一種數據驅動技術,要訓練性能優異的深度網絡,數據量是其基礎。同時,目前規范的遙感影像道路數據集容量還不能絕對滿足網絡對數據的需求。在目標樣本量不足的情況下,一種解決方案是利用遷移學習,使用大規模圖片識別預訓練模型的強大表示能力來提取圖片特征,另一種思路則是通過對樣本圖像的處理和變換來擴充訓練數據容量。
本文通過對道路影像的多角度旋轉和鏡像映射來擴充訓練數據集。如圖3所示,通過旋轉以及上下、左右的鏡像映射,可用的訓練數據量擴充為原來的6倍。
1.3.2 樣本預處理
1.3.3 優化算法配置
深度學習網絡的訓練,一方面需要足夠的計算資源和大量訓練數據,另一方面也需要配置合理的超參數,采用有效的優化算法。本文采用了Adam優化算法[26]來訓練網絡參數。該算法可利用梯度的一階矩估計及二階矩估計動態地調整每個參數的學習率。
Adam算法:
require:α,步長
require:β1,β2∈[0,1) #矩估計的指數衰減速率
require:f(θ) #基于參數θ的損失函數
require:θ0#初始參數向量
require:ε#較小的常數
m0=0 #(初始化一階矩向量)
v0=0 #(初始化二階矩向量)
t=0 #(計數器歸0)
whileθt未收斂do
t=t+1

mt=β1mt-1+(1-β1)gt#更新有偏一階矩估計




end while
returnθt
這里,根據實際情況,配置基礎學習率α=10-4,β1=0.9,β2=0.999,ε=10-8。另外,受限于計算資源,本文設置批處理大小(batch size)為6。
試驗數據集采用目前最大的遙感影像道路數據集,Massachusetts Roads。該數據集采用覆蓋了美國馬薩諸塞州超過2600 km2面積的衛星遙感圖像,圖片為1500×1500像素的RGB圖,地面分辨率約1 m/像素。數據集包含訓練集1108張衛星照片及其對應標注圖,測試集49張衛星照片及其對應標注圖,驗證集14張衛星照片及其對應標注圖,每一幅衛星照片中都包含有道路目標。在訓練集中,為了增強數據的容錯性,數據集的制作者故意對一些照片添加了遮擋。網絡的訓練采用了數據集中訓練集及增強數據共6648張照片及對應標注圖,并將原始圖片從1500×1500像素縮放為512×512像素,使用其測試集共49張照片及其標注圖對DCED網絡性能進行評估。
當作語義分割任務來看,道路提取所得的結果也通常采用語義分割的評價方法,即準確率(accuracy),召回率(recall),F1-score和精度(precision)等。其中,準確率定義為accuracy=(TP+TN)/(TP+TN+FP+FN),召回率的定義為recall=TP/(TP+FN),F1-score定義為F1=2TP/(2TP+FN+FP),精度定義為precision=TP/(TP+FP)。
從經典的道路提取方法來看,文獻[27—28]采用道路的完整度(completeness)、正確度(correctness)和質量(quality)等作為指標。完整度的定義為completeness=TP/(TP+FN),正確度的定義為correctness=TP/(TP+FP),質量的定義為quality=TP/(TP+FP+FN)。
可以看出這兩種評價體系基本觀點的類似,本文采用召回率(完整度)和精度(正確度)及F1-score作為評價指標。
2.2.1 對比試驗結果及分析
在Massachusetts Roads數據集下,通過與文獻[18—23]所提方法進行對比,證明了本文所提方法的良好性能。U-net[18]主要運用于醫療影像分割,其應用對象,如血管陰影等,與道路目標結構相似,因而也可用于遙感影像的分割。與一般的深度分割網絡類似,U-net也使用了包含跳連、上采樣和全卷積的Encoder-Decoder架構。雖然U-net并未使用通用的預訓練模型,但是其基本結構與一般分割模型并無大的區別,其下采樣縮小倍率為32倍,最小特征圖為28×28,對于遙感道路網絡的細節分辨率不足。RSRCNN[22]的基本網絡架構是基于FCN實現的,其Encoder部分采用了VGG16預訓練模型,對輸入進行了4次下采樣,縮小32倍,最小特征圖僅為7×7,因而其細節表達存在缺陷。ELU-SegNet[23]引入了更加先進的分割網絡結構SegNet和激活函數ELU,使得道路分割結果大為改善,在對訓練數據進行了擴充后,ELU-SegNet-R取得了更好的效果。但是ELU-SegNet仍然基于SegNet網絡基本架構,其Encoder部分使用了VGG16預訓練模型,與RSRCNN存在同樣的問題。
使用Massachusetts Roads數據集中49張測試圖片進行了驗證,所得結果指標如表1所示。
U-net網絡難以獲得令人滿意的效果,可見其模型結構設計并不能完全適應遙感影像的道路提取任務。在使用FCN架構情況下,RSRCNN通過對損失函數進行改進,使F1-score達到了66.2%,證明了其對損失函數的改進是有效的。ELU-SegNet-R則由于采用了更加先進的網絡結構和激活函數,并擴充了訓練數據,將F1-score提到了81.2%;但是ELU-SegNet-R的改進并沒有考慮道路本身的特征特點,而直接利用了適合于街景分割的SegNet基本架構,因而限制了其提取道路網絡的性能。
表1不同方法的道路提取結果對比
Tab.1Theexperimentalresultsofroadextractionindifferentmethods

方法recallprecisionF1-scoreU-net[18]0.6320.5410.545RSRCNN[22]0.7290.6060.662ELU-SegNet-R[23]0.8470.7800.812本文方法(網絡結構)0.8310.8140.822本文方法(網絡結構+改進損失函數)0.8390.8250.829
由于本文方法的網絡結構適應了遙感影像的特征特點,在不引入損失函數改進的情況下,本文對網絡結構的改進將F1-socre提高到了82.2%,并且在細節辨識能力上明顯優于其他方法。在改進的網絡結構基礎上,引入所提出的加權交叉熵損失函數,進一步提高了對道路網絡的提取能力,使得F1-score進一步達到了82.9%。除了結果指標有所提升,道路邊緣區域預測的置信度也顯著高于未改進之前,提高了約10%,證明了對損失函數的改進可以改善數據樣本不均衡帶來的影響。
本文所提方法除了在以上數據指標上表現更好,其優勢更在于能夠保留道路細節信息,實現更加精確清晰的道路提取。對預測輸出進行可視化來比較本文與文獻[22—23]的道路提取效果,如圖4所示。

圖4 道路提取結果的可視化對比 Fig.4 Subjective results of road extraction
2.2.1.1 在細節表示能力方面
在圖4(a)、(c)、(d)中,RSRCNN方法受限于網絡結構不足,其細節提取能力較差,不能有效地分離雙車道,而ELU-SegNet-R及本文方法能夠結合低層特征,有效地提取了雙車道信息;在圖4(a)中,由于網絡結構過深,對細節特征分辨率不足,RSRCNN及ELU-SegNet-R均不能準確地提取圖片頂端的圓形道路區域,其結果形狀和結構均存在缺陷。本文方法可以完整準確地提取該目標。
可以看出,本文方法適應了道路特征特點,因而能夠準確有效地提取道路局部特征信息,在細節表示能力方面明顯優于對照方法。
2.2.1.2 在提取結果準確性方面
在圖4(b)、(c)、(d)中,RSRCNN方法存在較多誤檢測區域,野值點明顯多于ELU-SegNet-R及本文方法,同時,在所有圖例中,RSRCNN方法所提取的道路結構都存在著邊緣較為粗糙的問題。在圖4(c)、(d)中,ELU-SegNet-R出現了道路結構缺損的情況。相較于對照方法,本文方法所得結果野值點較少,且道路結構清晰完整。
相較于對照方法,本文方法分辨率高,較好地保存了道路結構細節信息,因而能夠有效避免周圍背景環境干擾,準確地提取道路結構。可以看出,本文方法在結果的準確性方面優于其他方法。
2.2.2 試驗結果的適應性分析
本文方法是一種有監督的機器學習方法,因此其適應性能依賴于訓練數據的多樣性。對于道路提取任務而言,訓練樣本能夠涵蓋同類型圖片中大部分道路,因此本文方法在同類數據中具有較好的適應性能。例如,遙感影像或航拍照片中的道路存在有周圍建筑物、行道樹陰影遮擋的問題,這對傳統的道路提取方法造成了嚴重的干擾,而本文方法則不受影響。
試驗所采用的測試數據中包含了部分遮擋較為明顯的樣本,某些樣本只是道路的邊緣及顏色特征發生了改變,而極端的例子中道路被樹木所阻斷,如圖5中遙感影像所示。

圖5 被遮擋道路區域提取效果Fig.5 The extraction of the obscured road area
通過圖5的提取結果可以看出,本文方法對于被樹木遮擋的道路也有良好的提取效果,甚至于被樹木阻斷的道路結構也能有效提取。這是由于訓練樣本中包含了被樹蔭遮擋的道路,在訓練過程中,網絡自動學習了這部分道路的特征,因而能夠在測試樣本中提取具有相同特征的道路區域。這證明了本文方法對于復雜環境下的道路提取具有良好的適應性能。
針對遙感影像中,道路目標細節豐富且語義較為簡單的特點,本文針對性地設計了層數相對較淺、細節分辨率較高的Encoder-Decoder深度分割網絡,相較一般方法,更多地保留了道路的局部特征信息,提高了道路提取的細節識別能力;針對目標圖像正負樣本嚴重不均衡的情況,改進了二分類交叉熵損失函數,改善了正樣本對損失函數影響不夠的問題。通過對訓練數據進行旋轉和鏡像映射擴充了樣本容量,在此基礎上訓練并利用試驗驗證了DCED網絡性能。
試驗表明,本文所提的Encoder-Decoder網絡在召回率、精度和F1-score指標上均表現優異,所提取道路結構完整清晰,且具有良好的適應性能,可以有效地從遙感影像中提取道路網絡。相較于傳統的“特征提取+道路連接”的方法,深度分割網絡在應用階段不需要人工設計特征和預設閾值參數,并且在特定應用場合下泛化性能良好,能夠經受大量樣本檢驗,因而具有良好的應用前景。
同時,深度學習技術的性能依賴于訓練數據,其特征都是從訓練數據中學習得到的,因而其泛化性能受到訓練數據集多樣性的制約。在單一類背景和視場下訓練得到的網絡并不能完全適應新的應用場合。對于本文的應用場合而言,同一組衛星或飛行器對一定區域獲取的影像在視場和背景上均相似,其特征能夠從訓練樣本中學習得到,因此適應性能良好。如需在新的應用場合使用深度分割網絡,一般需將該類型數據加入訓練集并對網絡權重值進行訓練微調。
深度語義分割是從像素域對道路目標進行提取的,相應的結果評價方法也是基于像素域的,因此缺乏對道路拓撲結構完整性和準確性的表示能力。下一步的研究可以基于道路的拓撲結構信息,設計和實現深度網絡提取道路的拓撲結構,與本文所提取的分割結果進行融合,以達到更加精確和完整的道路提取成果。