廖婧琳,何 青
(長(zhǎng)沙理工大學(xué)電氣與信息工程學(xué)院,長(zhǎng)沙 410114)
隨著科技發(fā)展,目前可獲取到大量的高分辨率衛(wèi)星地圖,為遙感圖像下的道路提取提供了重要的數(shù)據(jù)源。與低分辨率的衛(wèi)星地圖相比,高分辨率的衛(wèi)星地圖具有更好的光譜和紋理特征,使得提取更精確的道路成為可能[1]。在現(xiàn)代社會(huì)中,道路作為國(guó)家基礎(chǔ)地理信息的一部分具有關(guān)鍵性作用。道路提取是車輛導(dǎo)航、自動(dòng)駕駛[2]、城市規(guī)劃[3]、災(zāi)難救援[4]、智慧城市建設(shè)和地理信息系統(tǒng)更新[5]等應(yīng)用的必要前提。道路提取方法可分為基于像素、面向?qū)ο蠛蜕疃葘W(xué)習(xí)的方法?;谙袼氐姆椒ㄖ饕貌煌牟ǘ翁卣鳎梢蕴崛【哂泻?jiǎn)單背景的衛(wèi)星圖像中的道路[6]?;趯?duì)象的方法將道路對(duì)象作為一個(gè)整體來識(shí)別,具有良好的抗噪聲性和適用性[7]。然而,由于高分辨率衛(wèi)星地圖具有較豐富的光譜特征和比例更大的幾何特征,傳統(tǒng)的道路提取方法缺乏對(duì)復(fù)雜道路多樣性特征的考慮,難以提取完整、連續(xù)的道路。
近年來,深度學(xué)習(xí)的發(fā)展極大地推動(dòng)了道路提取的進(jìn)展[8]。完全卷積神經(jīng)網(wǎng)絡(luò)FCN[9]疊加多個(gè)卷積層和匯集層以逐漸擴(kuò)大網(wǎng)絡(luò)的接收域,這更有利于道路信息的提?。?0]。U-Net[11]已被用于有效提取道路信息,將不同級(jí)別的特征地圖連接起來[12]。使用編碼器-解碼器架[13]構(gòu)通過高級(jí)特征獲得道路提取的粗定位,并通過包含空間結(jié)構(gòu)細(xì)節(jié)的低級(jí)特征細(xì)化邊界[14]。
但以往的道路提取工作存在以下問題:由于建筑物和樹木的陰影、不同的成像條件以及道路光譜與其他特征的相似性,提取的道路網(wǎng)絡(luò)往往產(chǎn)生支離破碎的路段。在以往的研究中,大多忽略了整個(gè)輸入圖像的道路結(jié)構(gòu)特性,對(duì)于較為復(fù)雜、多道路區(qū)域的情況,難以產(chǎn)生完整的道路結(jié)果。
綜上可得,必須要結(jié)合道路目標(biāo)的結(jié)構(gòu)特性來改進(jìn)模型,道路提取任務(wù)需要捕獲多尺度上下文,捕獲長(zhǎng)期依賴關(guān)系的方法包括:擴(kuò)張卷積,旨在擴(kuò)大CNN 的接受域,而不引入額外的參數(shù);金字塔池化,總結(jié)圖像的全局線索。然而,這些方法存在共同的限制:都使用了普通的N×N卷積核對(duì)狹長(zhǎng)道路特征進(jìn)行建模,這使得在提取道路的過程中,由于道路目標(biāo)呈細(xì)長(zhǎng)、帶狀結(jié)構(gòu),從而使用傳統(tǒng)的大正方形池窗口來進(jìn)行池化操作不可避免地引入很多不相關(guān)的上下文。
本研究引入了條紋池化模塊(strip pooling module,SPM)來改善道路提取中的不連續(xù)性問題,同時(shí)利用遙感影像數(shù)據(jù)特征,提出了一種新的融合方法,和一個(gè)級(jí)聯(lián)的多尺度注意增強(qiáng)模塊(cascade multi-scale attention enhancement,CMSAE)的SPM-Unet網(wǎng)絡(luò)。
本文提出的SPM-Unet 是基于U-Net 網(wǎng)絡(luò)結(jié)構(gòu)改進(jìn)的,網(wǎng)絡(luò)主要由編碼器、解碼器組成,是個(gè)高度對(duì)稱的網(wǎng)絡(luò),網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。
圖1 SPM-Unet結(jié)構(gòu)
SPM-Unet 編碼器采用VGG16 進(jìn)行特征提取,針對(duì)道路狹長(zhǎng)窄小的結(jié)構(gòu)特點(diǎn),本文提出使用條紋池化模塊SPM 代替普通的下采樣以提取到更多有用的道路細(xì)節(jié)信息。該模塊能精確縮小池化區(qū)域,在捕獲遠(yuǎn)距離道路區(qū)域信息的同時(shí)又關(guān)注道路局部細(xì)節(jié)信息。U-Net 網(wǎng)絡(luò)通過級(jí)聯(lián)不同層次的特征圖,重新利用低層次的語義信息。盡管U-Net在下采樣時(shí)增加了感受野范圍,但也存在損失一些細(xì)小道路目標(biāo)信息的問題。因此,在使用U-Net進(jìn)行道路提取時(shí)存在局限性。為了聚合連續(xù)道路的空間細(xì)節(jié)和語義信息,本文提出一個(gè)多尺度注意增強(qiáng)模塊,將其置于編碼-解碼中間。
首先,平均池化操作如下:設(shè)x∈RH×W為二維輸入張量,其中H和W分別為空間高度和空間寬度。形式上,平均池操作可以寫為
其中平均池化操作在0 ≤i0<H0和0 ≤j0<W0的范圍內(nèi),y的每個(gè)空間位置對(duì)應(yīng)一個(gè)大小為H×W的池窗口。然而,在處理不規(guī)則形狀的對(duì)象時(shí),采用平均池化操作可能會(huì)引入許多與目標(biāo)無關(guān)的區(qū)域,如圖2所示。
圖2 平均池化和帶狀池化
為了緩解平均池化操作不可避免地包含許多不相關(guān)的區(qū)域的問題,本文提出了“條形池化”,主要是使用一個(gè)條形池化窗口沿著水平或垂直維度執(zhí)行池化操作,如圖2第一行所示。在數(shù)學(xué)上,給定二維張量x∈RH×W,在條形池中,需要一個(gè)空間范圍(H,1)或(1,W)。與二維平均池不同,提出的條形池平均了一行或一列中的所有特征值。因此,水平條形池后的輸出yh∈RH可寫為
同理,垂直條形池后的輸出yv∈RW可寫為
給定水平和垂直條形池層,由于長(zhǎng)而窄的形狀,很容易在離散分布的區(qū)域之間建立長(zhǎng)距離依賴關(guān)系,并用帶狀形狀編碼區(qū)域。同時(shí),除了在其他維度上側(cè)重于捕獲局部細(xì)節(jié)外,這些特性還使得我們提出的條形池不同于依賴于方形核的傳統(tǒng)空間池。
在本小節(jié)中,介紹了如何通過條形池化操作來幫助骨干網(wǎng)捕獲長(zhǎng)期上下文。本文提出了一種新的條帶池模塊(SPM),利用水平和垂直條帶池操作收集來自不同空間維度的長(zhǎng)距離上下文。圖3 展示了本文提出的SPM。設(shè)x∈RC×H×W是一個(gè)輸入張量,其中C表示通道數(shù)。首先,我們將輸入數(shù)據(jù)分成兩個(gè)平行的路徑,每個(gè)路徑包含一個(gè)條形池層,其中有水平和垂直方向。
圖3 條形池化模塊SPM示意圖
一個(gè)內(nèi)核尺寸為3 的一維卷積層,用于調(diào)節(jié)當(dāng)前位置及其鄰近特征。給出了yh∈RC×H,yv∈RC×W,為了得到一個(gè)包含更多有用的全局先驗(yàn)的輸出z∈RC×H×W,我們首先將yh和yw組合成如下形式,得到y(tǒng)∈RC×H×W:
然后,將輸出z計(jì)算為
其中:Scale(·,·)指的是元素的相乘,σ是S形函數(shù),f是1 × 1 的卷積。公式(4)和(5)中,允許輸出張量中的每個(gè)位置與輸入張量中的各個(gè)位置建立關(guān)系。例如,在圖3 中,輸出張量中以黑色格子為界的正方形連接到所有具有與其相同的水平或垂直坐標(biāo)的位置。因此,通過多次重復(fù)聚合過程,就能在整個(gè)上下文中構(gòu)建遠(yuǎn)程依賴關(guān)系。受益于元素乘法操作,本文提出的SPM 也可以被視為一種注意機(jī)制,可以直接應(yīng)用于任何預(yù)先訓(xùn)練的骨干網(wǎng)絡(luò),而無需從頭開始訓(xùn)練它們。與全局平均池相比,條形池化關(guān)注的是較長(zhǎng)但較窄的局部范圍,而不是整個(gè)特征映射,從而避免了建立大多數(shù)不必要的連接,這與基于注意力機(jī)制的模塊[15]不同,后者需要大量計(jì)算來建立每對(duì)位置之間的關(guān)系。本文提出的SPM 是輕量級(jí)的,可以很容易地嵌入到任何構(gòu)建塊中,以提高捕獲長(zhǎng)距離空間依賴性和利用通道間依賴性的能力。
首先,針對(duì)固定長(zhǎng)度編碼矢量產(chǎn)生的瓶頸問題提出了注意機(jī)制[16],其中解碼器對(duì)輸入提供的信息受到局限。級(jí)聯(lián)多尺度注意增強(qiáng)模塊利用編碼器隱狀態(tài)的加權(quán)和,靈活地將解碼器的注意力集中在輸入序列的最相關(guān)部分,極大地提高了序列模型的性能。近年來,級(jí)聯(lián)多注意增強(qiáng)模塊已成功地應(yīng)用于圖像處理,特別是語義分割領(lǐng)域,顯著提高了遙感圖像處理的性能。在圖像處理應(yīng)用中,注意機(jī)制主要分為空間注意和通道注意??臻g注意的目的是通過空間像素逐像素的相似性計(jì)算來獲取長(zhǎng)距離相關(guān)性,而通道注意主要是通過計(jì)算信道級(jí)別的相關(guān)性來為每個(gè)特征信道賦權(quán)。
如圖1 所示,有五個(gè)尺度的特征提取的VGG16 預(yù)訓(xùn)練骨干。從淺層提取的高分辨率特征保持了大量的空間細(xì)節(jié),從深層卷積層提取的低分辨率特征含有豐富的語義特征,但空間信息丟失。在遙感影像中,道路通常表現(xiàn)為狹長(zhǎng)的線性結(jié)構(gòu),由于道路寬度的限制,道路橫斷面上的像素很少。因此我們只利用三個(gè)尺度的高分辨率特征,更好地保存了必要的道路空間信息,如圖4 所示。為了擴(kuò)大接收域,提取更廣泛的連續(xù)路徑,引入了ASPP 模塊,以獲得更多的全局特征。同時(shí)引入空間注意(SA)層來捕捉道路的長(zhǎng)距離相似性,提高道路特征的一致性,特別是對(duì)于狹窄的道路。在解碼階段,通過跳躍連接對(duì)增強(qiáng)后的多尺度特征進(jìn)行融合,同時(shí)利用信道注意(CA)層對(duì)上采樣階段的多尺度特征進(jìn)行信道級(jí)濾波,獲得語義豐富、空間細(xì)節(jié)準(zhǔn)確的聚合特征。
圖4 級(jí)聯(lián)多尺度注意增強(qiáng)模塊示意圖
在遙感圖像中,由于道路狹窄且連續(xù),微小的道路易受到鄰近背景像素的干擾,導(dǎo)致提取出不連續(xù)的道路信息。通過引入空間注意機(jī)制來捕捉道路的長(zhǎng)距離相關(guān)性,增強(qiáng)了道路區(qū)域的語義特征,顯著提高了狹窄道路的連續(xù)性。此外,語義分割網(wǎng)絡(luò)的解碼器通過空間加法或通道級(jí)聯(lián)的跳躍連接對(duì)特征進(jìn)行融合,增強(qiáng)語義特征的能力。在此基礎(chǔ)上引入通道注意機(jī)制,實(shí)現(xiàn)了不同尺度特征的自適應(yīng)融合,優(yōu)化了特征的空間細(xì)節(jié)和語義信息,從而增強(qiáng)了道路表示的特征。
為驗(yàn)證本文所提出的SPM-Unet 模型的有效性,本文基于馬薩諸塞州道路數(shù)據(jù)集(massachusetts roads)[8]進(jìn)行實(shí)驗(yàn)。實(shí)驗(yàn)基于PyTorch 框架設(shè)計(jì),在ubuntu22.04系統(tǒng)進(jìn)行實(shí)驗(yàn),硬件設(shè)施主要包括Intel(R)xeon(R)w-2150B CPU@3.00 GHz,內(nèi)存為32 GB,使用一塊顯存為24 的NVIDIA GeForce Rtx 3090 GPU進(jìn)行加速。
采用Massachusetts Roads 作為訓(xùn)練數(shù)據(jù)。標(biāo)簽圖為二值圖,道路像素值為1,非道路像素值為0??紤]到Massachusetts Roads 存在部分缺失、不完整的問題,手工篩選出853 張圖片。為了有效增加訓(xùn)練樣本數(shù)據(jù),我們采取了以下步驟:首先,對(duì)原始遙感影像和相應(yīng)的標(biāo)簽進(jìn)行了90°的旋轉(zhuǎn),然后進(jìn)行了隨機(jī)的水平和垂直平移操作。這樣,獲得了4110 張大小為1500×1500 像素的樣本子影像。接下來,將這些樣本以9∶1 的比例分成3699 張用于訓(xùn)練和411 張用于驗(yàn)證。這些圖像被輸入到提出的網(wǎng)絡(luò)中進(jìn)行訓(xùn)練。在模型訓(xùn)練過程中,采用了Adam 優(yōu)化器,學(xué)習(xí)率設(shè)置為0.00001,訓(xùn)練集和驗(yàn)證集的批處理樣本大小均設(shè)置為4,并且總共進(jìn)行了50 輪迭代。在每一輪訓(xùn)練結(jié)束后,我們都在驗(yàn)證集上計(jì)算一次損失。
為評(píng)定模型提取結(jié)果的好壞,引入了召回率(Recall)、精度(Precision)、交并比(IoU)、準(zhǔn)確度(ACC)[17-18]四個(gè)指標(biāo)對(duì)提取后的道路數(shù)據(jù)進(jìn)行評(píng)定。其中精度(Precision)表示模型能夠正確預(yù)測(cè)的道路與真實(shí)道路的像素之比;召回率(Recall)代表真實(shí)道路中預(yù)測(cè)正確的百分比;交并比(IoU)用來度量圖像的預(yù)測(cè)結(jié)果與真實(shí)標(biāo)簽的重疊程度;準(zhǔn)確度(ACC)是所有預(yù)測(cè)中預(yù)測(cè)正確的比例。如式(6)~(9)所示。
式中:TP表示將道路像素預(yù)測(cè)為真的數(shù)量,TN表示將非道路像素預(yù)測(cè)為假的數(shù)量,F(xiàn)P表示將非道路像素預(yù)測(cè)為道路像素的數(shù)量,F(xiàn)N表示將道路像素預(yù)測(cè)為非道路像素的數(shù)量。
本文在Massachusetts Roads 上進(jìn)行了分析,使用了SPM-Unet 網(wǎng)絡(luò)以及進(jìn)行了消融實(shí)驗(yàn)得到的網(wǎng)絡(luò)模型。實(shí)驗(yàn)中采用了相同的環(huán)境和參數(shù)設(shè)置,確保了公平比較。對(duì)于在Massachusetts Roads 上訓(xùn)練完成的模型,在測(cè)試集上進(jìn)行了預(yù)測(cè),輸入圖像的尺寸與訓(xùn)練集圖像保持一致,都是1500×1500像素大小。預(yù)測(cè)結(jié)果如圖5所示。
表1 各算法評(píng)價(jià)指標(biāo)對(duì)比(%)
圖5 各類算法道路提取結(jié)果對(duì)比
本文的研究是基于Massachusetts Roads 數(shù)據(jù)局提取道路信息,考慮道路目標(biāo)的結(jié)構(gòu)特點(diǎn),為了提高分割精度并獲得連續(xù)道路信息,基于U-Net 網(wǎng)絡(luò)設(shè)計(jì)了一種高度對(duì)稱的解碼-編碼器網(wǎng)絡(luò),命名為SPM-Unet。本文的研究結(jié)論如下:
(1)通過引入條紋池化模塊,可以限制池化操作的范圍,從而有效地捕獲長(zhǎng)距離的依賴關(guān)系,并專注于局部細(xì)節(jié)信息。
(2)考慮道路尺度信息的多樣化,加入了級(jí)聯(lián)的多尺度注意增強(qiáng)模塊,在一定程度上解決了現(xiàn)有方法中不連續(xù)道路提取和鋸齒狀邊界識(shí)別的問題,并且聚合連續(xù)道路的空間細(xì)節(jié)和語義信息。
(3)與原始U-Net 網(wǎng)絡(luò)相比,本文網(wǎng)絡(luò)在道路提取方面表現(xiàn)出明顯的改善,避免了明顯的漏分和斷裂現(xiàn)象,能夠生成輸出影像中的多尺度道路目標(biāo),使其顯得更加完整和連續(xù)。與其他現(xiàn)有的語義分割模型相比,本文提出的模型在精確率、召回率、平均交并比和準(zhǔn)確度這四個(gè)評(píng)價(jià)指標(biāo)上表現(xiàn)出色。這表明本文方法適用于處理地物背景復(fù)雜的遙感影像中的道路提取任務(wù)。