鄭東鵬,徐立軍,王啟龍,徐麗艷
(1.遼寧省水利水電勘測設(shè)計(jì)研究院有限責(zé)任公司,遼寧 沈陽 110000;2.遼寧巨維建設(shè)工程有限公司,遼寧沈陽 110000)
快速準(zhǔn)確地測量水體面積,在水資源調(diào)查規(guī)劃、預(yù)防洪澇災(zāi)害、船舶航行等應(yīng)用中占有重要作用。傳統(tǒng)方法主要通過人工調(diào)繪的方式進(jìn)行水體面積測量,然而此類方法往往耗費(fèi)大量的人力物力財(cái)力。隨著遙感技術(shù)的發(fā)展,高分辨率遙感影像成為水體面積量測的重要數(shù)據(jù)源,該方法不直接與地面接觸,可動態(tài)對水資源進(jìn)行深入監(jiān)測,具有成像周期短、時(shí)效性強(qiáng)等特點(diǎn),彌補(bǔ)了人工野外觀察的問題。
目前,隨計(jì)算機(jī)技術(shù)的發(fā)展,深度學(xué)習(xí)技術(shù)憑借高精度、高適用性等特點(diǎn),在遙感影像處理領(lǐng)域具有更高的優(yōu)勢,其中卷積神經(jīng)網(wǎng)絡(luò)與Transformer 結(jié)構(gòu)是其兩大主要分支,二者特性的相互補(bǔ)充可大大提升檢測效能,因此本文基于高分二號衛(wèi)星影像,從計(jì)算機(jī)視覺角度出發(fā),聯(lián)合卷積神經(jīng)網(wǎng)絡(luò)與Transformer 進(jìn)行水體量測。
為了更加精準(zhǔn)高效地進(jìn)行水體檢測與測量,本文提出了一種卷積神經(jīng)網(wǎng)絡(luò)(以下簡稱CNN)與Transformer 聯(lián)合的雙邊網(wǎng)絡(luò)框架。在現(xiàn)有網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)中,卷積神經(jīng)網(wǎng)絡(luò)由于較強(qiáng)的歸納偏置,被認(rèn)為可提取較多的水體局部信息,但缺乏水體全局信息的編碼;Transformer 方法缺乏局部信息,全局建模機(jī)制對水體的全局信息有著更好的認(rèn)知,因此二者相互補(bǔ)充可對水體信息形成更為良好的認(rèn)知。
基于上述理論,本文提出一種CNN-Transformer 聯(lián)合的深度學(xué)習(xí)網(wǎng)絡(luò),通過結(jié)合二者特性進(jìn)行水體提取,網(wǎng)絡(luò)結(jié)構(gòu)見圖1。其中,卷積神經(jīng)網(wǎng)絡(luò)采用ResNet50 架構(gòu),該模型結(jié)構(gòu)被認(rèn)為可更好地提取局部信息。在Transformer 部分,本文選用Swin-Transformer 用于全局信息的編碼。對于二者在四個(gè)階段產(chǎn)生的特征,本文將特征相互融合,以此達(dá)到水體特征相互補(bǔ)充的目的。
殘差網(wǎng)絡(luò)(ResNet)作為卷積神經(jīng)網(wǎng)絡(luò)的重要分支,被認(rèn)為具有較強(qiáng)的局部信息提取能力。該模型利用殘差連接,連接不同的卷積層,從而將淺層的特征信息傳播到深層。目前,殘差網(wǎng)絡(luò)主要有ResNet-18、ResNet-34、ResNet-50和ResNet-101 四類模型,考慮到準(zhǔn)確性與參數(shù)量的權(quán)衡,選用ResNet50 用于水體提取,具體結(jié)構(gòu)見圖2。給定輸入H×W×3(3 代表RGB 通道),經(jīng)過卷積(Conv)、批量歸一化(BN)、激活函數(shù)(ReLU)和最大池化(Max Pool)后,分辨率降低到H/4×H/4,其中通道維度變?yōu)?4。然后,特征經(jīng)過四個(gè)階段生成C1、C2、C3 和C4 特征,這四個(gè)特征包含了大量的水體局部信息,適用于水體這類的多尺度對象。另外,四個(gè)特征的分辨率依次降低一半,分別為4、8、16、32,通道數(shù)依次增加到C、2C、4C、8C。在該模型中,每個(gè)階段有3、4、6 和3 個(gè)殘差模塊,殘差模塊(ResNet Block)具體結(jié)構(gòu)見圖2。
圖2 ResNet50 網(wǎng)絡(luò)結(jié)構(gòu)
Transformer 由于自注意力機(jī)制與加權(quán)融合策略使其能夠更好地捕獲全局信息,這有助于改善水體提取結(jié)果的斷裂缺陷。目前,Swin-Transformer 是一種新型視覺主干,由Patch Partition 層、Linear Embedding 層、Patch Merging 層 以及Transformer Block 層組成。其中,Patch Partition 層將輸入水體影像分塊降維,Linear Embedding 層用于線性變換,Patch Merging 層則起到了下采樣的作用,核心模塊Swin Transformer Block 采用移位窗口計(jì)算自注意力,見圖3,該方法將自注意力限制在非重疊的局部窗口上,并允許特征之間的跨窗口連接,這使得該模型在降低復(fù)雜度的同時(shí)提搞了特征提取效率,注意力計(jì)算如下所示:
圖3 Swin-Transformer 網(wǎng)絡(luò)結(jié)構(gòu)
式中:Q、K、V 分別為查詢、鍵、值矩陣;d 為向量維度;B 為偏置矩陣;SoftMax 為激活函數(shù)。
通過公式(1)的特征響應(yīng),即可捕獲水體的全局信息。
特征融合目的是將圖像中不同分支的特征進(jìn)行合并,從而形成相比于先前特征更具有判別能力的水體特征圖。在本文方法中,卷積神經(jīng)網(wǎng)絡(luò)由于編碼局部特征的優(yōu)勢,包含更多水體的位置、邊緣等細(xì)節(jié)信息。而Swin-Transformer 中則包含更多的全局信息,因此二者的相互融合可實(shí)現(xiàn)局部特性與全局特性的互補(bǔ)。本文選擇逐像素相加的方式將二者進(jìn)行融合,并使用雙線性插值法進(jìn)行上采樣,以便進(jìn)行接下來特征階段間的特征融合。這一過程可公式化為式(2):
式中:Add 表示逐像素相加方法;Upsample 則表示雙線性上采樣插值方法;cnn′_x 表示Resnet50 輸出特征;trans_x 表示Swin-Transformer 輸出特征。
從公式(2)可以看出,特征融合可分為兩部分,第一部分在第一階段,此部分只有兩種網(wǎng)絡(luò)結(jié)構(gòu)的第一階段輸入,在2~4 階段則為三種輸入,分別為上一階段輸入featurei-1,當(dāng)前階段的resnet50 特征與Swin-transformer 特征,以此完成特征融合。
選取精確率(Precision)、召回率(Recall)、IoU 和 F1對本文方法與對比方法進(jìn)行評價(jià),四種評價(jià)指標(biāo)計(jì)算公式如下:
式中:TP 為正確提取水體像素;FP 為誤提取水體像素;FN為漏提取像素?cái)?shù)。
精確率表示所有預(yù)測為水體像素中正確分類的水體像素的百分比,體現(xiàn)了模型對負(fù)樣本的區(qū)分能力,精確率越高,模型對負(fù)樣本的區(qū)分能力越強(qiáng);召回率表示所有實(shí)際水體像素中正確分類的水體像素的百分比,體現(xiàn)了模型對正樣本的識別能力,召回率越高,模型對正樣本的識別能力越強(qiáng)。F1值是兩者的綜合,F1值越高,說明模型越穩(wěn)健。交并比和均交比是綜合性的指標(biāo),前者表示GroundTruth 和預(yù)測圖的重疊面積與聯(lián)合面積的比率,后者表示所有類別的IOU 的平均值。上述四個(gè)評估指標(biāo)都是逐像素計(jì)算的,計(jì)算通式(3)~式(6)是這些評估指標(biāo)的定義。
數(shù)據(jù)集。在實(shí)驗(yàn)數(shù)據(jù)方面,選用高分二號上海地區(qū)影像進(jìn)行實(shí)驗(yàn),該影像空間分辨率為0.8 m/像素。本文初次裁剪圖像1050 張,每張大小為512×512 像素大小,代表實(shí)地面積為0.17 km2。使用數(shù)據(jù)增強(qiáng)方式增加至6300 張將其作為訓(xùn)練集,數(shù)據(jù)增強(qiáng)方法包括:亮度變化、對比度變化、色度變化、圖像鏡像、圖像旋轉(zhuǎn)以及銳度變化,以上方法已被證明可加強(qiáng)水體目標(biāo)表達(dá)。另外,本文選用測試集為100 張,每張大小同樣為為512×512 像素。數(shù)據(jù)標(biāo)注采用開源軟件Labelme。
本文超參數(shù)等相關(guān)設(shè)置見表1。
表1 超參數(shù)設(shè)置
實(shí)驗(yàn)環(huán)境。為保證實(shí)驗(yàn)對比的公平性,采用相同的硬件設(shè)備軟件環(huán)境進(jìn)行實(shí)驗(yàn)。計(jì)算機(jī)顯卡為NVIDIA GeForce RTX 3070 Ti,處理器為12 th Gen Intel(R)Core(TM)i7-12700 KF,64 內(nèi)存。基于此硬件設(shè)備,使用Python 在Pytorch 環(huán)境下進(jìn)行模型編寫。
為了驗(yàn)證本文方法的有效性,本文選用語義分割經(jīng)典網(wǎng)絡(luò)——全卷積網(wǎng)絡(luò)(Fully Convolutional Networks,FCN)進(jìn)行對比分析。針對CNN 在像素級分割任務(wù)的局限性,Jonathan Long 等學(xué)者提出FCN 用于影像分割,FCN 可從抽象的特征中恢復(fù)單個(gè)像素的所屬類別,將圖像級別的分類延伸到像素級別分類,從而解決語義分割問題。首先,FCN 使用卷積層取代了經(jīng)典CNN 中的全連接層。如圖4 所示,FCN 將傳統(tǒng)CNN最后三層全連接層替換為卷積層;其次,FCN 使用雙線性插值使特征圖恢復(fù)到輸入影像相同的尺寸,保留了原始影像的空間信息;最后,FCN 提出一種“跳躍”連接結(jié)構(gòu),該結(jié)構(gòu)將深層特征與淺層特征進(jìn)行結(jié)合,達(dá)到了可同時(shí)兼顧局部預(yù)測和全局預(yù)測的要求。
圖4 全卷積網(wǎng)絡(luò)結(jié)構(gòu)示意圖
本文及對比部分實(shí)驗(yàn)結(jié)果見圖4,圖中從左到右展示結(jié)果依次為實(shí)驗(yàn)影像、真值(GroundTruth)、對比方法結(jié)果及本文結(jié)果(白色像素即為水體信息)。
從圖中第一行紅色矩形框內(nèi)可以看出,該區(qū)域存在大面積人工建造水體信息,此處水體信息由兩處相鄰矩形水體結(jié)構(gòu)組成,邊緣較為規(guī)則和清晰。在計(jì)算機(jī)視覺中,物體邊緣信息屬局部信息,卷積神經(jīng)網(wǎng)絡(luò)的滑動窗口策略可較好地編碼該圖像特征。從圖5 中可以看出,本文選用的ResNet50 結(jié)構(gòu)與Transformer 相結(jié)合較為完整清晰地分離出相鄰水體。然而對比方法粘連現(xiàn)象較為嚴(yán)重,這對水體信息的面積評價(jià)是不利的。
圖5 實(shí)驗(yàn)結(jié)果
在圖中第二行紅色矩形框內(nèi)展示區(qū)域可以看出,自然水體結(jié)構(gòu)具有彎曲、狹窄等特點(diǎn)。此類水體在圖像編碼過程中局部信息容易丟失,造成提取結(jié)果斷裂。解決斷裂問題的方法之一則為全局信息的約束。該方法通過建立遠(yuǎn)距離水體像素之前的依賴關(guān)系,使得神經(jīng)網(wǎng)絡(luò)在編碼水體信息過程中保證水體信息的正確性。Swin-Transformer 應(yīng)用類卷積的滑動窗口策略與自注意力機(jī)制獲取水體信息的全局特征,與此同時(shí),豐富的底層信息對于狹窄水體也很重要,本文使用Resnet50 結(jié)構(gòu)保證了局部信息的豐富,因此本文提取結(jié)果沒有發(fā)生斷裂。然而,對比方法由于沒有建立遠(yuǎn)程依賴關(guān)系,在狹窄處存在斷裂現(xiàn)象,這體現(xiàn)了本文方法的優(yōu)越性。
為進(jìn)一步對本文方法以及對比方法進(jìn)行比較,定量化對比結(jié)果見表2,從評價(jià)結(jié)果中可以看出,本文各項(xiàng)評價(jià)指標(biāo)均優(yōu)于FCN 方法,Precision、Recall、F1、IoU 較對比方法分別高出13%、14%、1%、20%。其中,IoU 作為較為全面的評價(jià)指標(biāo),突出了本文方法在精度上的優(yōu)勢,體現(xiàn)了本文模型將水體局部信息與全局信息考慮在內(nèi)的必要性與可靠性。總之,本文方法優(yōu)勢在于,一方面,本文考慮到局部信息與水體的邊界、形狀密不可分,使用ResNet50 結(jié)構(gòu)進(jìn)行局部信息的提??;另一方面,水體的全局信息對于水體提取結(jié)果的連續(xù)性也至關(guān)重要,因此本文使用Swin-Transformer 進(jìn)行水體全局信息的表達(dá)。
表2 對比方法與本文方法定量對比結(jié)果
針對水體面積與檢測時(shí)間進(jìn)一步分析,結(jié)果見圖6。從圖中可以看出檢測時(shí)間隨水體面積增加呈線性增長趨勢,遵循上述硬件配置,當(dāng)水體面積為6 km2時(shí),檢測時(shí)間為11.5 s左右,水體面積為11 km2時(shí),測量時(shí)間約為14 s。這證明本文方法可用于水體面積測量,且大大提升了工程效率。
圖6 水體面積與檢測時(shí)間關(guān)系折線
本文提出了一種用于水體面積的智能測量方法,經(jīng)實(shí)驗(yàn)對比分析論證了卷積神經(jīng)網(wǎng)絡(luò)與Transformer 網(wǎng)絡(luò)結(jié)構(gòu)的結(jié)合是提升水體測量精度與效率的關(guān)鍵所在,該方法可在實(shí)際工程中展開應(yīng)用。