王樹立,唐海蓉,計(jì)璐艷
(1 中國科學(xué)院空天信息創(chuàng)新研究院 中國科學(xué)院空間信息處理與應(yīng)用系統(tǒng)技術(shù)重點(diǎn)實(shí)驗(yàn)室, 北京 100094; 2 中國科學(xué)院大學(xué), 北京 100049)
以 Landsat 衛(wèi)星為代表的遙感數(shù)據(jù)在當(dāng)今社會(huì)的生產(chǎn)和生活中扮演著至關(guān)重要的角色,在農(nóng)業(yè)產(chǎn)量估算[1]、變化檢測(cè)[2]、災(zāi)難評(píng)估[3]等方面發(fā)揮著重要的作用。隨著科技的發(fā)展,遙感數(shù)據(jù)變得越來越多,且越來越容易獲得。海量的多波段遙感數(shù)據(jù)也急切需要高效率和高魯棒性的算法進(jìn)行處理和數(shù)據(jù)挖掘。然而,在 Landsat 數(shù)據(jù)集上,每年有高達(dá) 40% 的像素被云覆蓋[4],云層作為光學(xué)遙感圖像的主要污染源,對(duì)遙感圖像的應(yīng)用造成了極大的限制。所以對(duì)云檢測(cè)算法的研究一直是遙感領(lǐng)域中的熱點(diǎn)。實(shí)時(shí)的云檢測(cè)算法目前可以分為兩類:基于光譜信息的和基于空間信息的。光譜是地物最本質(zhì)的特征之一,不同的地物有不同的輻射與反射特性,云在反射波段表現(xiàn)為亮目標(biāo),發(fā)射波段表現(xiàn)為暗目標(biāo)。有些基于光譜信息的方法[5]直接利用波段特征,也有些通過非線性映射構(gòu)造新的特征(如波段比值、波段指數(shù)等),并精心設(shè)置閾值以更好地區(qū)分地物。Irish等[6]提出的ACCA(automated cloud-cover assessment)使用Landsat7 ETM+譜段2~6的信息,獲得暖云掩碼、冷云掩碼、非云掩碼和雪掩碼。Zhu和Woodcock[7]提出的FMask算法用到了 Landsat 幾乎所有的波段,通過設(shè)置亮度閾值、色度閾值、溫度閾值、NDVI、NDSI 等,通過決策樹選擇出兩個(gè)潛在云掩膜,并組合成最終的結(jié)果。此類方法實(shí)現(xiàn)簡(jiǎn)單,便于理解,可解釋性強(qiáng),在一般情況下可以取得較好的效果,但當(dāng)?shù)孛娓采w了冰、雪、沙漠,或云為薄卷云、小積云時(shí),云和地面難以區(qū)分。
在空間上,云的表現(xiàn)則更加多樣,有小面積的碎云,一大片的層云,有較厚的積云,也有較薄的卷云,但云是由水汽聚集而成,處于中心位置的云更加容易識(shí)別,邊緣部分或者較為模糊的云可以利用空間分布進(jìn)行識(shí)別。一些方法通過提取圖像紋理特征,如LBP特征、HOG特征、haar特征等,利用云與地物在空間結(jié)構(gòu)上的不同進(jìn)行區(qū)分。還有一些文章將高分辨率圖像切割成一張張子圖或超像素,如SLIC(simple linear iterative clustering)[8],再利用機(jī)器學(xué)習(xí)的方法對(duì)子圖或超像素進(jìn)行分類,如支持向量機(jī)(suppurt vector machine,SVM)[9]、多層感知機(jī)(multilayer perceptron,MLP)[10]。這些方法一方面降低了圖像的分辨率,另一方面受到云多樣性的影響,在處理薄云、小面積云時(shí)效果并不佳。
近年來,深度學(xué)習(xí)在自然語言處理、降維、圖像分類、目標(biāo)檢測(cè)、語義分割等方面取得了諸多成果。從 AlexNet 開始,深度學(xué)習(xí)開始席卷圖像處理領(lǐng)域。相較許多傳統(tǒng)方法需要人工構(gòu)造特征和精心選擇閾值,深度學(xué)習(xí)通過構(gòu)造多層神經(jīng)網(wǎng)絡(luò),自動(dòng)提取特征和閾值。而且, 精心選擇的神經(jīng)網(wǎng)絡(luò)可以構(gòu)造出高維特征,更加有效地區(qū)分云與地物。
目前有很多方法將全卷積網(wǎng)絡(luò)應(yīng)用于遙感圖像的云檢測(cè)。Jeppesen等[11]將U-Net應(yīng)用于Landsat遙感圖像云檢測(cè)。Chai等[12]將SegNet應(yīng)用于Landsat圖像。Hughes和Kennedy[13]將FCN(fully convolutional network)應(yīng)用于云檢測(cè)。這些方法是對(duì)已有模型在遙感圖像云檢測(cè)任務(wù)上的應(yīng)用,都取得了不錯(cuò)的效果。Zhang等[14]在原有通道的基礎(chǔ)上增加并行的1×1卷積核,增強(qiáng)了對(duì)光譜的重視,取得了不錯(cuò)的效果。但這些方法存在一些不足,如:沒有充分利用地物的光譜特征;過于重視遙感圖像的空間特征。這不僅會(huì)導(dǎo)致訓(xùn)練過程中容易出現(xiàn)過擬合、訓(xùn)練不穩(wěn)定,也會(huì)使小的碎云容易被忽視,邊緣細(xì)節(jié)容易被丟失,分類結(jié)果過于平滑等。
為了充分利用云的光譜屬性,保持云的邊緣細(xì)節(jié),本文提出一個(gè)新穎的、簡(jiǎn)單的、有效的網(wǎng)絡(luò),稱為勺型網(wǎng)絡(luò)(spoon-net,簡(jiǎn)稱S-Net)用于Landsat圖像云檢測(cè)。網(wǎng)絡(luò)主要包括2個(gè)階段。第1階段,光譜特征提取階段。在這一階段,完全使用1×1的卷積核,不受空間信息干擾,專門對(duì)圖像進(jìn)行光譜特征提取。而且1×1卷積核可以在不降低圖像分辨率的前提下,使得后續(xù)的空間特征更加容易被提取。第2階段,空間特征提取階段。這一階段,采用輕量化的encoder-decoder框架。進(jìn)一步,我們不會(huì)破壞已提取的光譜特征,而是采用組卷積(group conv) 的方式,將第1階段得到的每一種光譜特征作為一組進(jìn)行單獨(dú)的卷積。由于光譜特征提取階段的存在,組卷積在大大減少參數(shù)量的同時(shí),有效提取空間特征。最終的分類結(jié)果將像素分為云與非云2類。實(shí)驗(yàn)結(jié)果表明,S-Net 可以在模型參數(shù)大大減小的情況下,明顯提高云檢測(cè)精度。
本文采用的光學(xué)遙感衛(wèi)星數(shù)據(jù)集來自美國航空航天局(National Aeronautics and Space Administration,NASA)Landsat8衛(wèi)星。2013年2月11日,NASA成功發(fā)射Landsat8衛(wèi)星。Landsat8衛(wèi)星上攜帶2個(gè)傳感器,分別是OLI(operational land imager)陸地成像儀和TIRS(thermal infrared sensor)熱紅外傳感器。OLI提供9個(gè)波段,波段范圍為0.43~2.30 μm;TIRS提供地表溫度數(shù)據(jù),包括2個(gè)波段,波段范圍為10.60~12.51 μm,具體信息見表1。Landsat系列衛(wèi)星每16 d可以實(shí)現(xiàn)一次全球覆蓋。
表1 Landsat8波段信息Table 1 Landsat8 band information
為了對(duì)模型進(jìn)行訓(xùn)練與測(cè)試,本文利用帶人工標(biāo)注標(biāo)簽的全球云和云影驗(yàn)證數(shù)據(jù)集“L8 biome cloud validation masks”[15],該數(shù)據(jù)集共有 96 景圖片,每景約7 000×7 000大小,包含 8 個(gè)種類的下墊面。
每景圖片的標(biāo)簽均是人工標(biāo)注,可信度較高。每個(gè)文件包含Landsat 8 Level-1 數(shù)據(jù)文件、質(zhì)量文件和.img(ENVI)格式的真值標(biāo)簽,人工標(biāo)志位如表2所示。
表2 Landsat8 biome 數(shù)據(jù)人工標(biāo)注標(biāo)志位Table 2 Flag of Landsat8 biome
根據(jù)云量百分比的多少,‘L8 biome’中96景分為clear, midcloud, cloud共3種,每種各占1/3,云量低于35%的為clear,云量高于65%的為cloud,云量介于35%~65%之間的為 midcloud。我們將數(shù)據(jù)標(biāo)簽簡(jiǎn)單地分為云與非云2類,將每景圖像均勻切割為256×256大小的子圖(共約5萬張),切割時(shí)過濾掉帶填充值的圖片,因此圖像邊緣的填充像素并不會(huì)出現(xiàn)在訓(xùn)練與測(cè)試的步驟中。選擇除全色波段的所有波段(TIRS數(shù)據(jù)的空間分辨率已重采樣到30 m),共10個(gè)波段,訓(xùn)練集與測(cè)試集的比例為6∶4。
Encoder-decoder框架是圖像分割領(lǐng)域的主流框架。encoder的作用是提取空間特征,decoder的作用是解析空間特征,并將圖像還原到原圖的大小,以獲得像素級(jí)別的分類,跳層連接統(tǒng)籌兼顧感受野與空間分辨率。FCN[16]與U-Net[17]均采用這種框架。但該框架一般應(yīng)用于灰度圖像與彩色圖像,若應(yīng)用于遙感圖像云檢測(cè),雖然可以涉及光譜維度的計(jì)算,但主要是在提取空間特征,對(duì)光譜特征的提取能力不足。本文考慮遙感圖像多波段的特點(diǎn),對(duì)encoder-decoder框架進(jìn)行改進(jìn),將其擴(kuò)充為兩階段,分步提取光譜特征與空間特征??蚣軐?duì)比如圖1所示。
圖1 Encoder-decoder框架與spoon-net對(duì)比Fig.1 Comparison of encoder-decoder framework and spoon-net
本文提出的 S-Net 是一個(gè)兩階段模型,分別為光譜特征提取階段和空間特征提取階段。詳細(xì)模型結(jié)構(gòu)如圖2所示,每個(gè)矩形框上面的數(shù)字代表特征圖的個(gè)數(shù)。
圖2 S-Net 詳細(xì)結(jié)構(gòu)Fig.2 S-Net framework
光譜特征提取階段:該階段使用1×1的卷積核對(duì)單個(gè)像素進(jìn)行計(jì)算,提取出3個(gè)最優(yōu)的光譜特征。因?yàn)椴簧婕暗娇臻g信息,所以可以有效保持圖像的細(xì)節(jié)。
多層1×1的卷積操作等價(jià)于一個(gè)MLP,MLP可以有效提取非線性光譜特征,為后續(xù)分類提供良好的基礎(chǔ),并且不會(huì)降低圖像分辨率。這一階段輸出的每一層特征圖都是一種有效的光譜特征,類似于NDVI、NDWI等,但遠(yuǎn)比它們復(fù)雜得多,更加具有非線性,也更有效。這一階段生成的光譜特征,不僅會(huì)用于第2階段的空間特征提取,還會(huì)以跳層連接的方式直接參與最終的分類,并且分類層的卷積核也是1×1,這意味著我們的網(wǎng)絡(luò)有足夠的能力保證分割結(jié)果的細(xì)節(jié)。
空間信息提取階段:在第1階段提取的光譜特征基礎(chǔ)上,通過進(jìn)一步的區(qū)域空間信息與上下文信息的提取,充分利用空間信息,有效減少了云檢測(cè)的虛警率。同時(shí)為使模型更加輕量化,采用淺層神經(jīng)網(wǎng)絡(luò)與組卷積。詳細(xì)的空間特征提取過程如圖3所示。
圖3 每組特征圖的卷積過程Fig.3 Convolution process of each group
空間特征提取采用淺層(2層)的encoder-ecoder結(jié)構(gòu),除最后的分類層是1×1的卷積核,其余卷積核為3×3;利用最大池化層降低圖像分辨率,擴(kuò)大感受野;將高分辨率的特征圖通過跳層連接與低分辨率的特征圖進(jìn)行拼接,以檢測(cè)不同大小的目標(biāo)。
同時(shí),引入組卷積的概念,避免在光譜上的重復(fù)計(jì)算,更加有效提取空間信息。圖4展示了組卷積與普通卷積的區(qū)別。普通卷積會(huì)使所有的特征圖參與計(jì)算,而組卷積將特征圖與卷積核分組,每組卷積核只會(huì)與該組內(nèi)的特征圖進(jìn)行卷積。在本文中,組卷積具有明確的意義,將第1階段提取的每種特征作為單獨(dú)的一組,針對(duì)性地提取空間信息,也意味著這一階段不會(huì)重復(fù)提取或破壞已有的光譜特征,專注于空間特征的提取。
圖4 組卷積與普通卷積的區(qū)別Fig.4 The difference between group convolution and ordinary convolution
組卷積也是輕量化模型的重要手段。假設(shè)輸入有ci層特征圖,每個(gè)特征圖都是H×W,3×3的卷積核co個(gè),普通卷積將進(jìn)行H×W×3×3×ci×co次乘法計(jì)算;若將其分為g組,整個(gè)卷積過程只會(huì)進(jìn)行H×W×3×3×(ci/g)×co次乘法,計(jì)算量變?yōu)樵瓉淼?/g。同樣,參數(shù)個(gè)數(shù)也變?yōu)樵瓉淼?/g,減少了模型過擬合的風(fēng)險(xiǎn)。
為保證穩(wěn)定性和精度,S-Net 的網(wǎng)絡(luò)設(shè)計(jì)還包括:
a) 上采樣方式選擇雙線性插值法。
b) 在卷積之后,激活函數(shù)之前,加入批歸一化層(batch normalization, BN)[18]加快模型收斂:
(1)
c) 激活函數(shù)以ReLU函數(shù)為主。本文中幾乎所有的激活函數(shù)都是ReLU函數(shù),即
(2)
ReLU由于非負(fù)區(qū)間的梯度為常數(shù),可以緩解梯度消失問題,使得模型的收斂速度維持在一個(gè)穩(wěn)定狀態(tài)。在最后一層卷積層,激活函數(shù)會(huì)使用Sigmoid函數(shù),即
(3)
用于將輸出映射到0~1之間,代表該像素點(diǎn)為云的概率。
d) 損失函數(shù)采用交叉熵?fù)p失函數(shù),用L表示,即
(4)
Ltotal=w×La+(1-w)×Lm,
(5)
其中:w是權(quán)重因子,w∈[0,1]。
本文將S-Net的分割結(jié)果與CFMask(FMask[7]的C語言實(shí)現(xiàn))、U-Net[17]、SegNet[19]的分割結(jié)果作比較。Foga等[15]使用多種傳統(tǒng)方法在Landsat8 biome數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),結(jié)果表明FMask是最優(yōu)秀的方法。同時(shí)FMask也是Landsat官方生成質(zhì)量評(píng)估(QA)波段所用的方法。U-Net是圖像分割領(lǐng)域中經(jīng)典的深度學(xué)習(xí)方法,Jeppesen等[11]使用UNet在Landsat8 biome數(shù)據(jù)集上進(jìn)行的實(shí)驗(yàn)取得了很好的效果。而且S-Net的空間特征提取部分也借鑒了U-Net的思想。Chai等[12]的實(shí)驗(yàn)表明,SegNet的云檢測(cè)結(jié)果優(yōu)于多種神經(jīng)網(wǎng)絡(luò)模型。因此,將S-Net的分割結(jié)果與CFMask、U-Net、SegNet的分割結(jié)果做比較具有較高的說服力。
輸入是除全色波段的其余10個(gè)波段,將所有圖像按6∶4隨機(jī)劃分為訓(xùn)練集和測(cè)試集,并調(diào)整UNet的輸入通道數(shù)為10。將地物真實(shí)標(biāo)簽(ground truth,GT)分為云與非云2類。Chai等[12]的研究表明輸入DN值(digital number)或大氣頂部(top of atmosphere,ToA)反射率數(shù)據(jù),會(huì)取得相似的結(jié)果,我們選擇使用DN值作為模型輸入,并為使訓(xùn)練更加穩(wěn)定,對(duì)輸入進(jìn)行歸一化。具體參數(shù),如學(xué)習(xí)率為1e-2,批訓(xùn)練大小為8,采用動(dòng)量為0.9的隨機(jī)梯度下降法訓(xùn)練,動(dòng)態(tài)調(diào)整輔助損失與主損失的比例,輔助損失的權(quán)重逐漸降低,主損失的權(quán)重逐漸增高,二者權(quán)重的變化分為3個(gè)階段:(0.8,0.2)、(0.2,0.8)、(0,1)。本文所有實(shí)驗(yàn)均在深度學(xué)習(xí)框架Pytorch上進(jìn)行,操作系統(tǒng)為Ubuntu 16.04,處理器為NVIDIA Titan XP,內(nèi)存16 GB。
為客觀評(píng)定算法的有效性和優(yōu)越性,采用準(zhǔn)確率 (Acc.)、召回率 (Rec.)、精確度 (Prec.)、F1值對(duì)結(jié)果進(jìn)行評(píng)估。其中,準(zhǔn)確率衡量像素分類正確的概率;召回率衡量屬于云的像素中被分類正確的概率,是漏警率的相反數(shù);精確度衡量被識(shí)別為云的像素中真正是云的概率,是虛警率的相反數(shù);F1值是召回率與精確度的調(diào)和平均數(shù),常用于二分類問題,可以有效衡量樣本不均衡時(shí)檢測(cè)結(jié)果的好壞。
在Landsat8 biome數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果如表3所示,一共包括8種下墊面(即:裸土、森林、草地/農(nóng)田、灌木、冰雪、城市、水和濕地)。結(jié)果表明,S-Net在幾乎所有下墊面上的檢測(cè)結(jié)果均優(yōu)于其他算法(除了濕地稍落后于U-Net)。S-Net檢測(cè)結(jié)果的平均F1值達(dá)到0.951 5,高于U-Net的0.945 1、SegNet的0.938和CFMask的0.87;Acc.達(dá)到95.04%,高于U-Net的94.51%、SegNet的93.71%和CFMask的86.16%。雖然Prec.略低于U-Net,但平均Rec.達(dá)到95.88%,并全面領(lǐng)先SegNet與CFMask。需要強(qiáng)調(diào)的是,我們的模型非常輕量,參數(shù)量只有0.34 M個(gè),而U-Net有28 M個(gè)參數(shù),SegNet有30 M個(gè)參數(shù)。
表3 Landsat8 biome數(shù)據(jù)集上,S-Net、U-Net、CFMask、SegNet實(shí)驗(yàn)結(jié)果對(duì)比Table 3 Comparison of S-Net, U-Net, CFMask, and SegNet experimental results on Landsat8 biome dataset
S-Net在計(jì)算時(shí)間上也具有較大優(yōu)勢(shì)。我們將SNet、U-Net、SegNet 3個(gè)模型在256×256大小的圖像上比較檢測(cè)時(shí)間,取遍歷1 000次的平均結(jié)果,S-Net的運(yùn)行時(shí)間最少,SegNet最耗時(shí),3個(gè)模型的消耗時(shí)間分別為42、57和63 ms。
S-Net對(duì)于碎云、細(xì)節(jié)也有良好的檢測(cè)與保持能力。U-Net與SegNet的識(shí)別更加光滑,使得一些細(xì)節(jié)被忽略,而我們的模型更加注重細(xì)節(jié),這對(duì)于云檢測(cè)是一個(gè)很重要的能力。如圖5所示,從左到右依次為真彩色圖、人工標(biāo)注、S-Net提取的光譜特征構(gòu)成的假彩色圖、我們的模型預(yù)測(cè)結(jié)果、U-Net結(jié)果、SegNet結(jié)果、CFMask結(jié)果,白色代表云,黑色代表非云,偶數(shù)行的圖像是奇數(shù)行圖像中黃色方框部分的放大結(jié)果,黃色方框的大小為20×20。圖5共展示了4景,下墊面各不相同,分別為城市、農(nóng)田、冰雪和裸土。在多種下墊面上,S-Net對(duì)于碎云均有良好的檢測(cè)能力,同時(shí)對(duì)于冰雪與裸土這樣的高亮地物,也有較低的虛警率。
為充分體現(xiàn)S-Net的優(yōu)勢(shì),本文進(jìn)一步比較模型對(duì)碎云的檢測(cè)能力,并定義碎云為:面積(四連通)小于30個(gè)像素的云。由于此時(shí)計(jì)算Acc.已無意義,所以只選擇召回率Rec.、Prec.和F1值作為衡量準(zhǔn)則。實(shí)驗(yàn)表明,在識(shí)別碎云時(shí),S-Net擁有0.180 2的平均F1值,顯著高于U-Net的0.154 7、SegNet的0.071 7和CFMask的0.091,僅在城市和農(nóng)田下墊面略遜于U-Net,在森林下墊面遜于CFMask,在所有下墊面優(yōu)于SegNet。
雖然在檢測(cè)碎云時(shí),S-Net的表現(xiàn)顯著優(yōu)于其他算法,但F1也仍不到0.2。原因可能有兩點(diǎn):1)檢測(cè)碎云具有較高的難度;2)人工在標(biāo)注碎云時(shí)存在困難,數(shù)據(jù)存在錯(cuò)誤。Scaramuzza等[20]的研究表明人工標(biāo)注的數(shù)據(jù)可能存在7%左右的錯(cuò)誤。尤其對(duì)于碎云,人工標(biāo)注更加不準(zhǔn)確,且碎云數(shù)量較小,對(duì)錯(cuò)誤標(biāo)簽更加敏感。我們發(fā)現(xiàn),Landsat8 biome數(shù)據(jù)確實(shí)存在一些問題,圖6展示了一些存在問題的圖像樣本。同時(shí),由于人工標(biāo)注的不穩(wěn)定性,簡(jiǎn)單地依靠評(píng)價(jià)指標(biāo)可能并不能真實(shí)反應(yīng)模型的優(yōu)劣,因?yàn)榇蟛糠帜P投己苋菀讓?duì)于大面積的厚云(低下墊面信息的)有較好的識(shí)別能力;并且以這些標(biāo)簽為真值進(jìn)行的訓(xùn)練,可能也會(huì)存在問題。
當(dāng)輸入的遙感圖像具有較少的波段時(shí),光譜信息在云檢測(cè)任務(wù)中的權(quán)重就會(huì)降低,S-Net的性能會(huì)受到影響。
云檢測(cè)一直是遙感領(lǐng)域的研究熱點(diǎn)與難點(diǎn)。本文提出一種兩階段的遙感圖像云檢測(cè)模型。相比于現(xiàn)有的深度學(xué)習(xí)模型,該模型更加輕量,并且具有更好的保持邊緣細(xì)節(jié)的能力和對(duì)小的碎云的檢測(cè)能力。我們注重遙感圖像光譜特征的提取,在第一階段利用1×1的卷積核專門提取光譜特征,使得檢測(cè)結(jié)果保持了“純粹性”,沒有受到其空間信息的干擾,并使其直達(dá)最終的分類層。再利用淺層encoder-decoder結(jié)構(gòu),引入組卷積,對(duì)每個(gè)光譜特征分別計(jì)算空間信息。該模型充分利用遙感圖像多波段的特點(diǎn),有效解決了現(xiàn)有方法在保持邊緣細(xì)節(jié)與擴(kuò)大感受野之間的矛盾,并在Landsat8 biome數(shù)據(jù)集上達(dá)到了95%的準(zhǔn)確率,基本還原了輸入影像的細(xì)節(jié)信息。
值得強(qiáng)調(diào)的是,Landsat8遙感衛(wèi)星可以提供豐富的光譜信息,這是S-Net能表現(xiàn)優(yōu)異的前提。
雖然S-Net表現(xiàn)優(yōu)異,但仍有一些方向值得研究。首先,S-Net采用了較為簡(jiǎn)單的空間特征提取結(jié)構(gòu),后續(xù)將探索更加適合云檢測(cè)的空間特征提取算法。其次,傳統(tǒng)方法對(duì)云檢測(cè)有大量的先驗(yàn)知識(shí),如何將這些先驗(yàn)知識(shí)與深度學(xué)習(xí)方法結(jié)合也是后續(xù)的一個(gè)研究方向。