張榮軍,譚海,馬天浩,于永帥,黃小賢
(1.遼寧工程技術大學 測繪與地理科學學院,遼寧 阜新 123000;2.自然資源部國土衛星遙感應用中心,北京 100048;3.核工業航測遙感中心,石家莊 050000)
隨著遙感技術的發展,從遙感影像上獲取所需信息已經成為一種非常重要的信息獲取手段。道路信息作為一種重要的地理信息,在城市建設和規劃、交通導航等方面發揮著重要作用。從遙感影像中提取道路,已經成為一種有效、快捷的道路提取手段,目前也是遙感信息提取的研究熱點之一。
國內外眾多學者對遙感影像中道路提取做了許多研究,根據道路提取的方法不同,可以分為基于模板匹配提取方法[1-3]、基于面向對象提取方法[4-6]、基于深度學習語義分割提取方法[7-11]?;谀0迤ヅ涞奶崛》椒ㄊ歉鶕缆吩谶b感影像中的特征,利用幾何信息、輻射信息、拓撲關系等,設計道路提取模板,通過模板計算待定區域與已知區域間的相似性程度,根據相似程度確定待定像素區域是否為道路[12]。朱長青等[13]提出了一種矩形模板匹配方法,通過不斷地調整矩形的寬度和方向,根據影像特征、道路拓撲知識以及結合數學形態學的方法,將最佳匹配矩形區域作為道路,該方法提取效果較好,但是對道路模板的自適應能力要求較高。Wang等[14]提出了一種半自動的高分辨率道路提取方法,通過人工輸入一個種子點,設定道路的方向、寬度和起始點信息,生成道路參考模板,用模板自動搜索和跟蹤道路。曹帆之等[15]提出了一種基于均值漂移的道路中心點匹配算法,運用卡爾曼濾波,實現高分辨率遙感影像道路中心線追蹤,準確地提取了高分影像中的道路中心線,對車輛、樹蔭等的遮擋具有很好的魯棒性。譚仁龍等[16]提出基于圓形模板的道路提取方法,克服了傳統矩形模板的局限,使用圓形模板代替矩形模板,省去了旋轉角度計算,降低了算法的時間復雜度,并結合影像灰度、形態學梯度等信息,用迭代內插法對道路中心點加密,最終得到較為準確的道路中心線。
面向對象方法將道路作為一種具體的對象,具有獨特的幾何紋理特征;依據特征進行圖像分類或者分割,實現提取道路信息。余長慧等[17]先將圖像進行預處理分割成多個小區域,然后引入基于對象的MRF方法來提取道路。金靜等[18]提出區域增長算法,其主要做法是在預處理得到的分割結果中,選取一個或者多個區域作為種子點,然后以種子點為起點,對相鄰四個方向區域的像素進行相似度比較,滿足條件的作為新的種子點繼續迭代下去,直到所有的種子點都不滿足條件為止。曹云剛等[19]提出了一種融合像元多尺度對象級特征的道路中心線提取算法,通過像素級上提取影像的紋理和形狀結構特征和多尺度分割集影像上提取對象的區域光譜特征,再將像元級特征與多尺度對象特征進行決策級融合,提取出道路網絡,最后利用非道路區域自動去除算法和張量投票算法,實現道路中心線的精提取。為了解決僅依靠光譜信息提取道路的方法中道路特征與背景難以完全分離,以及提取出來的道路中心線出現毛刺等現象,Miao等[20]提出了一種基于形狀特征和多元自適應樣條回歸的遙感影像道路中心線提取算法,改進了傳統的道路長寬比指數,然后利用該指數對遙感影像分割結果進行濾波,提取線性特征;再結合光譜特征從線性特征中提取純凈道路段,最后利用多元自適應樣條回歸算法提取道路中心線。
深度學習語義分割方法通過設計語義分割網絡模型,利用道路樣本數據,訓練出參數模型,再利用參數模型提取道路。李代棟等[21]提出了一種基于SPUD-ResNet的道路提取方法,利用空洞卷積構建殘差網絡編碼器,通過跳躍連接與對應解碼器相連,構建了條形池化模塊和混合池化模塊,增強網絡對條形道路結構特征的獲取能力。王卓等[22]提出了一種改進U-Net網絡的高分辨率影像道路提取方法,設計了以VGG16作為網絡編碼結構的U-Net網絡結構,利用batch normalization與dropout解決網絡訓練過程中出現的過擬合。Wei等[23]提出了一種新的基于回歸的方法,直接從航空影像中提取道路中心線和邊緣線。首先,訓練基于CNN的端到端回歸網絡來預測道路中心線的置信度圖和估計道路寬度;然后,在CNN預測自信圖后,采用非最大值抑制和道路跟蹤的方法提取準確的道路中心線,構建道路拓撲結構,同時,根據CNN估計的道路寬度生成道路邊緣線;最后,為了提高提取的路網的連通性,采用張量投票的方法檢測交叉口,并將檢測到的交叉口作為克服不連續性的指導。
綜上所述,近年來許多專家、學者對基于高分辨率遙感影像提取道路中心線進行了大量深入研究,提出了多種道路中心線提取算法,但受影像中道路兩旁樹木遮擋、高大建筑物及其陰影覆蓋和道路上車輛等干擾因素影響,基于模板匹配方法、基于面向對象以及基于深度學習的道路中心線提取方法提取出來的道路中心線在一定程度上均存在斷裂、不完整問題。此外,在復雜場景下,道路的中心線提取精度較差。因此,本文提出了一種基于深度學習提取道路掩膜,對掩膜進行形態學膨脹處理,再提取道路矢量中心線,并對其進行優化處理的道路中心線提取方法,在一定程度上消除了樹木遮擋、建筑物及其陰影覆蓋和道路上車輛干擾等因素造成的不完整、斷裂情況,提高了道路中心線的完整性。
本文的道路中心線提取算法主要由道路掩膜提取、道路矢量中心線提取和矢量中心線優化處理三個模塊組成。道路掩膜提取模塊主要利用DeepLabV3+語義分割模型,訓練道路提取模型參數,提取道路掩膜;道路矢量中心線提取模塊中對提取出來的道路掩膜進行形態學膨脹處理,盡可能消除樹木遮擋、高大建筑物及其陰影覆蓋和道路上車輛的干擾,在此基礎上提取矢量道路中心線;矢量中心線優化處理模塊利用斷裂矢量道路中心線間在空間、幾何上的約束關系,建立優化模型,對滿足條件的斷裂線段進行重連接。本文具體技術流程如圖1所示。

圖1 技術流程
本文采用DeepLabV3+語義分割模型提取道路掩膜。首先利用Photoshop等標簽制作軟件制作符合模型訓練要求的道路標簽。通過對高分辨率遙感影像中的道路進行分析,道路在影像中均呈條帶狀,且通常情況下道路間是相連的,可形成道路網狀結構。DeepLabV3+語義分割模型具有帶孔卷積(atrous convolution)、多尺度分割物體(multiplescales)、空洞空間卷積池化金字塔(atrous spatial pyramid pooling,ASPP)模塊。該網絡采用帶孔卷積模板進行卷積運算,增加了感受野面積,能有效地綜合道路周圍的上下文信息,同時結合多尺度分割和ASPP模塊,充分挖掘不同尺度的特征,最大限度地消除影響道路掩膜提取結果斷裂的因素,盡可能地提取出完整的道路。
DeepLabV3+語義分割模型可以分為編碼器模塊和解碼器模塊,如圖2所示。首先輸入原始圖像進行編碼處理,經過一序列的卷積運算,生成大小為原圖像1/16的特征張量,再將這些特征張量傳入ASPP結構中。ASPP結構由一個1×1的卷積層、三個3×3擴張率不同的并行空洞卷積層以及一個全池化層組成。將這些層進行通道拼接處理,之后將拼接處理后的圖層進行1×1卷積處理。在解碼器模塊中,提取出骨干網絡產生的大小為原圖像1/4的卷積特征圖層,將ASPP結果圖層經過四倍上采樣,形成大小相同的圖層進行通道拼接,再將拼接后的圖層進行3×3卷積處理和四倍上采樣處理,形成與原始圖像大小相同的輸出圖像。

圖2 DeepLabV3+語義分割模型框架
通過調用已經訓練好的DeepLabV3+語義分割模型,結合遙感影像裁剪、拼接算法,可實現影像中大區域范圍內的道路掩膜提取。
1)道路掩膜形態學膨脹處理。通過對語義分割模型提取出來的道路掩膜進行分析,發現受道路兩旁的樹木、高大建筑物及其陰影和路面上車輛等因素影響,在提取出來的道路掩膜中存在空洞,而空洞的出現會對道路中心線提取造成干擾,無法準確提取道路中心線。所以采用形態學膨脹處理,能有效填充道路掩膜中的空洞。道路掩膜膨脹處理前后的對比,如圖3所示。
2)基于道路掩膜提取道路中心線及矢量化。通過將語義分割提取出來的道路掩膜經過膨脹處理后,利用細化算法對面狀道路進行道路中心線提取。本文引用經典的Zhang并行快速細化算法[24],在細化的基礎上進行線段搜索,記錄每一個構成線段點的像素坐標,依次對圖像中的每一條線段進行遍歷,再根據源圖像的空間參考信息,將像素坐標轉化為空間坐標,生成shp格式的道路矢量中心線。圖4為生成的矢量數據在ArcMap中的展示。

圖3 膨脹處理前后對比

圖4 道路中心線矢量數據
針對道路矢量中心線仍然存在斷裂、不完整的情況,本文設計了對矢量中心線重連接優化算法。通過對道路矢量中心線進行分析,發現存在斷裂的道路矢量線段間,在空間、幾何上存在一定的關系,將這些關系作為優化的約束規則條件,對滿足條件的矢量中心線段進行重連接優化處理,提高道路數據的完整性。具體算法實現步驟如下。
步驟1:依次計算每一條矢量線段兩端的斜率信息,保存為{K11,K12,K21,K22,…,Kn1,Kn2}。
步驟2:設置距離閾值D和空間幾何斜率差閾值K。
步驟3:取出線段記錄中的一條線段L1,設置其中一個端點為當前端點P。
步驟4:計算點P到其他線段端點的距離{D1,D2,D3,D4,…,Dn}。若Di (1) 對滿足條件的端點進行連接,將以P、Pi為端點的兩條線段構成新的線段,更新線段記錄表中的線段信息。 步驟5:對步驟3中的另外一個端點P重復步驟4操作。 將線段列表中的每一條線段依次取出,重復步驟3、步驟4、步驟5,直到遍歷完所有的線段。 圖5為優化前后對比。從圖中可以看出,本文優化算法對斷裂道路中心線進行了重連接,使道路中心線更加完整。 圖5 優化處理前后對比 1)實驗數據集。本文選取湖南省長沙市高分辨率遙感影像制作實驗數據集,空間分辨率為0.6 m,利用Photoshop軟件制作勾畫深度學習訓練所需要的標簽,再將標簽和原始數據裁剪為320像素×320像素。數據經過預處理后共有9 280張有效標簽數據,采用75%∶25%的比例將數據分成訓練集6 960張和驗證集2 320張,將75%的數據6 960張作為訓練數據集,將25%的數據2 320張作為驗證集,輸入到語義分割網絡模型中。此外,本文還使用了公開的馬薩諸塞州數據集進行實驗對比分析。本研究實驗環境為Ubuntu18.04操作系統,顯卡型號為NVIDIA QuadroP6000,顯卡容量為32 GB,采用Pytorch深度學習框架,實驗參數的學習率設置為0.007,迭代輪數設置為80。 2)道路掩膜提取結果評價分析。語義分割主要評價指標如下。 真陽性(true positive,TP)表示真實情況為道路,檢測結果也為道路的部分。 假陽性(false positive,FP)表示真實情況為非道路的背景部分,檢測結果卻是道路部分。 真陰性(true negative,TN)表示真實情況為非道路的背景部分,檢測結果也為背景部分。 假陰性(false negative,FN)表示真實情況為道路,檢測結果為非道路的背景部分。 為了客觀評價深度學習提取效果,采用了語義分割常用的準確率(accuracy)、精確率(precision)、召回率(recall)、平均交并比(MIoU)四個指標評價DeeplabV3+提取算法的性能。 對于不同的訓練數據集,DeepLabV3+提取結果評價指標如表1所示。 表1 不同數據集道路掩膜提取指標評價 % 從表1可以看出,DeepLabV3+分割模型在長沙影像數據集具有較好的分割效果,各項評價指標接近于公開的馬薩諸塞州數據集。本文數據集訓練出來的模型提取道路掩膜,準確度達到了98.6%,說明DeepLabV3+模型在長沙高分辨率影像中提取道路性能較好,提取出來的掩膜具有較高的可靠性。 1)道路中心線提取對比實驗設計。為了驗證本文的道路中心線提取優化算法的有效性,選擇了不同的道路中心線提取算法進行實驗對比。實驗數據為從湖南省長沙地區的高分辨率影像中裁剪的含有建筑物陰影、植被遮擋道路的兩景影像,空間分辨率為0.6 m,影像大小分別為1 240像素×780像素和1 170像素×790像素,設計了兩個對比實驗。 為了評價不同方法道路中心線提取的精度與提取效率,引入了準確度(accuracy)、完整度(integrity)、運行時間(time)三個評價指標,表達如式(2)、式(3)所示。 (2) (3) 式中:L1表示正確提取的道路中心線總長度;L2表示未檢測的道路中心線總長度;L3表示錯誤提取的道路中心線總長度。 本文算法實現過程中,通過將Pytorch框架下訓練完成的模型進行格式轉換,結合Libtorch、OpenCV及GDAL等開源庫,運用C++語言編程實現原圖像裁剪、道路掩膜提取與膨脹處理、道路矢量中心線提取及優化等一系列操作,其運行時間為輸入圖像至輸出道路矢量中心線時間。 2)道路中心線提取對比實驗與分析。 (1)實驗一。圖6為1 240像素×780像素的城市區域影像局部圖,圖中包含了存在天橋、建筑物陰影的城區道路。對于城區影像的道路中心線提取,陰影區域易造成提取出來的道路中心線出現斷裂、不完整現象。文獻[19]方法融合了影像的多尺度特征提取道路網絡和采用了張量投票算法對斷裂中心線進行了重連接,圖6(a)為文獻[19]方法的提取結果。從圖中可以看出,該方法在一定程度上連接了距離較短的斷裂線段,但對于相隔距離較大的斷裂線段無法實現連接,而本文方法通過對深度學習提取的掩膜進行膨脹處理,不僅能有效地去除道路上車輛、路面污染物造成的空洞,同時能對陰影造成的斷裂掩膜進行連接修復、填充,在此基礎上進行細化處理,就能提取出相對較完整的道路。文獻[20]的方法為基于影像分割結果提取道路的線性信息,結合道路的光譜信息,采用多元自適應樣條回歸算法提取道路中心線,圖6(b)為文獻[20]方法的提取結果。從圖6(b)可以看出,由于該方法基于分割圖像濾波結果提取道路的線性形狀特征,而分割結果易受陰影的干擾,造成提取出來的道路線狀特征無法真實地表達道路的客觀形狀,易造成斷裂情況的出現。圖6(c)為本文方法的提取結果,該方法通過對掩膜的膨脹處理和建立優化規則進行優化處理,能有效克服陰影的干擾,提取出較完整的道路中心線。 (2)實驗二。圖7為1 170像素×790像素的鄉村區域影像局部圖,圖中包含了存在植被及其陰影遮擋的鄉村道路。對于鄉村道路,道路旁的植被遮擋是造成提取道路中心線出現斷裂的主要原因。鄉村道路的寬度通常比城市道路的寬度要小,幾何形狀也更復雜;此外,鄉村道路受道路旁植被遮擋相對嚴重,導致鄉村道路的幾何特征、光譜特征相對于城市道路的幾何特征、光譜特征難以提取和描述。文獻[19]方法融合了道路的多尺度特征提取路網,雖然采用了張量投票算法對斷裂道路中心線進行了重連接,但由于鄉村道路存在較多的樹木遮擋,容易導致提取出來的路網出現斷裂。結合圖7(a)可以看出,對于遮擋區域面積較小造成相隔距離較小的斷裂中心線重連接較好,而對于大面積的遮擋造成相隔距離較大的斷裂中心線連接效果較差。文獻[20]方法改進了道路的長寬比指數對影像進行分割,根據分割結果提取道路的線狀特征,再結合光譜信息提取路網。由于鄉村道路旁樹木的遮擋對道路的線狀特征的影響,樹木的光譜信息與道路的光譜信息有較大差異,造成樹木遮擋區域存在斷裂線段,如圖7(b)所示。圖7(c)為本文方法的提取結果,通過DeepLabV3+模型提取的路網,相對文獻[19]方法和文獻[20]方法更完整,對道路的細節提取更細致;此外,通過對掩膜的膨脹處理,能消除影像中小面積的遮擋造成的斷裂;優化模型則能對相隔距離較大的斷裂線段進行優化重連接。 圖6 城區道路中心線提取 表2將不同的方法進行了定量對比。通過對比可以得出,本文方法不考慮深度學習樣本制作及模型訓練所耗用的時間情況下,在準確度、完整度以及效率上均優于其他方法,再次驗證了本文方法的有效性。 圖7 鄉村道路中心線提取 表2 不同道路中心線提取方法對比 基于遙感影像的道路中心線提取,其準確度、完整度主要受影像中道路兩旁的樹木、建筑物及其陰影以及道路上的車輛影響,造成提取出來的道路中心線出現斷裂、不完整,且難以直接用于實際生產。針對這些問題,本文基于DeepLabV3+網絡分割模型提取道路掩膜,對道路掩膜進行形態學膨脹處理后提取道路中心線并對其進行矢量化處理,同時設計優化算法,對矢量中心線進行優化處理。通過與文獻[19]方法、文獻[20]方法進行實驗對比分析,本文方法具有更高的準確度、完整度及提取效率。但是,本文方法在道路矢量中心線優化過程中仍存在少量錯誤連接問題,后續將建立更完善的優化模型,提高中心線優化的準確度。
2 實驗結果對比分析
2.1 DeepLabV3+網絡道路掩膜提取結果分析

2.2 道路中心線提取實驗對比分析



3 結束語