楊昌軍, 張昊, 張秀再,4, 李景軒, 馮絢
(1.中國氣象局中國遙感衛星輻射測量和定標重點開放實驗室,國家衛星氣象中心, 北京 100081; 2.許健民氣象衛星創新中心, 北京 100081;3.南京信息工程大學電子與信息工程學院, 南京 210044; 4.南京信息工程大學江蘇省大氣環境與裝備技術協同創新中心, 南京 210044;5.中國科學院空間應用工程與技術中心, 北京 10009)
云層污染限制了光學衛星從地球表面獲取輻射信息,嚴重影響了遙感影像的解譯及陸地、海洋和大氣參數的定量反演,已經成為光學遙感影像應用的重要障礙[1]。研究表明,全球遙感影像的年平均云量約為66%,直接影響遙感影像的質量及可用性[2]。對云與云陰影的檢測已經成為遙感影像分析的前提及基礎步驟。
早期的云檢測方法主要是基于物理規則的云檢測方法,Shao等[3]提出結合閾值來確定云像元。Zhu等[4]針對Landsat 4-8和Sentinel-2遙感影像,開發一種Fmask云檢測算法。Li等[5]提出一種多特征組合(multi-feature combined,MFC)的方法,專門對高分一號WFV(WFV為傳感器型號)遙感影像中的云與云陰影進行檢測。文獻[5-6]提出利用中分辨率成像光譜儀(moderate-resolution imaging spectroradiometer,MODIS)衛星的波段1、6和26,其中波段1是可見光波段,波段6和波段26是中紅外波段,進而實現云檢測。Li等[7]通過將MODIS衛星的波段1、6和26進行融合,得到偽彩色遙感影像,然后將其進行HSV[hue(色度) ,saturation(飽和度) 、 value(亮度) ]轉換,并結合閾值法來分析H通道的數據,得到最終的云檢測結果。宋小宇等[8]通過運用一種基于空間結構分析和神經網絡的云自動檢測算法,最后與其他方法的云檢測結果進行對照分析,說明利用MODIS圖像可成功地檢測云點像元,為云的去除奠定良好基礎。單娜等[9]采用光譜閾值判別和紋理分析相結合的方法在確定圖像中云層覆蓋情況時能有更高分辨精度。閾值方法僅利用低層光譜信息,忽略了更高層空間信息,容易出現誤檢[10]。此外,很難利用光譜特征從一些高反照率的物體中(如雪、白色建筑物等)檢測出云[11]。
近年來,深度卷積神經網絡在一系列語義分割任務中取得顯著的成果,由于其強大的非線性特征提取能力,在各個領域得到廣泛應用。文獻[12-13]通過測試周圍的圖像塊來預測每個像素點的類別,這些云檢測方法不僅效率低下且存在噪聲。為進一步提高空間相干性,文獻[14-15]首先將遙感影像的像素進行超像素分割,然后再進行云檢測。然而,超像素聚類算法的精度限制了基于超像素云檢測方法的性能表現。Zi等[16]使用全連接條件隨機場(fully-connected conditional random field,FC-CRF)對云檢測結果進一步優化。然而,這種后處理優化在處理大尺寸遙感影像時,非常耗時。
為了解決上述問題,提出一種基于深度可分離卷積的輕量化卷積神經網絡模型(lightweight M-shaped network,L-MNet),L-MNet網絡模型是在M-Net(M-shaped network)網絡模型的基礎上進行改進的,引入深度可分離卷積(depthwise separable convolution,DS-Conv)[17],設計一種深度可分離卷積模塊(DS-Conv Block),以減小算法的復雜度及計算量。研究成果有助于實現微小衛星在軌云檢測的任務,極大提高后續遙感影像數據傳輸及處理的速度。
輕量化的卷積神經網絡通常涉及較少的參數量及計算量,且網絡模型所要部署在的星載衛星的算力可以處理這些參數并進行運算。現階段,實現輕量化的卷積神經網絡主要有:一是人工設計輕量化的網絡模型,二是直接壓縮網絡模型。主要采用人工設計輕量化的網絡模型,來減小算法的復雜度及計算量。利用深度可分離卷積替代普通卷積,設計出一種深度可分離卷積模塊,降低參數量,在保證精準檢測的前提下,降低對硬件算力的要求,提高檢測效率。
(1)通卷積。普通卷積(standard convolution)的運算過程如圖1(a)所示,假設輸入特征圖的尺寸為H×W×C,其中,C為特征圖的通道數,H為特征圖的高,W為特征圖的寬,卷積核的尺寸為K×K,輸出特征圖的通道數為M,則普通卷積所涉及的參數量λ1可表示為
λ1=KKCM
(1)
涉及的計算量λ2可表示為
λ2=HWKKCM
(2)


(3)
涉及的計算量λ4可表示為

(4)
由此可知,普通卷積的參數量及計算量均為分組卷積的x倍。
(3)深度卷積。深度卷積(depthwise convolution)的運算過程如圖1(c)所示,假設輸入特征圖的尺寸為H×W×C,卷積核的尺寸為K×K,輸出特征圖的通道數為C,則深度卷積所涉及的參數量λ5可表示為
λ5=KKC
(5)
涉及的計算量λ6可表示為
λ6=HWKKC
(6)
由此可知,普通卷積的參數量及計算量均為深度卷積的M倍。
(4)逐點卷積。逐點卷積(pointwise convolution)的運算過程與普通卷積非常相似,其運算過程如圖1(d)所示。與普通卷積相比,逐點卷積使用的是尺寸為1×1卷積核,主要用于改變輸出特征圖的通道數,逐點卷積所涉及的參數量λ7可表示為
λ7=CM
(7)
涉及的計算量λ8可表示為
λ8=HWCM
(8)
與普通卷積相比,深度可分離卷積由兩部分組成:深度卷積與逐點卷積,深度卷積負責濾波,逐點卷積負責整合。圖2展示了普通卷積與深度可分離卷積的對比,在深度可分離卷積中,通過深度卷積將輸入圖像的通道及空間相關性分離,對每個通道都進行卷積,然后通過逐點卷積使用1×1卷積來整合每個通道的特征。這種濾波及整合的協同技術被稱為深度可分離卷積。利用深度可分離卷積可以有效降低參數的計算次數,進而減小網絡模型的大小。

圖2 普通卷積與深度可分離卷積的對比Fig.2 Comparison of standard convolution and depthwise separable convolution
普通卷積的計算量可由式(2)得出,深度卷積的計算量可由式(6)得出,逐點卷積的計算量可由式(8)得出。引入深度卷積,只能將濾波應用于每個輸入通道,并不能將其整合。因此,需要使用1×1卷積來整合每個通道的特征,得到一個新的特征。深度可分離卷積的計算量由深度卷積的計算量與逐點卷積的計算量相加得到,則深度可分離卷積的計算量λ9可表示為
λ9=HWKKC+HWCM
(9)
由此可知,深度可分離卷積的計算量與普通卷積的計算量之間的關系γ可表示為

(10)
所用深度卷積的卷積核尺寸為3×3,通過式(10)可知,普通卷積計算量為深度可分離卷積計算量的九倍。
基于深度可分離卷積,構建一種深度可分離卷積模塊(DS-Conv Block),其結構如圖3所示,S為步長(stride)。在深度卷積及逐點卷積完成后進行批量歸一化操作(BN),并使用Leaky ReLU激活函數激活[19]。

S為步長
大多數基于卷積神經網絡的方法在微小衛星這種有效載荷及硬件系統算力有限的設備上很難正常工作,無法滿足微小衛星在軌云檢測的需求。因此,為了實現微小衛星在軌云檢測的任務,亟需設計一種精度高、計算量小、算力要求低的輕量化云與云陰影檢測網絡模型。本研究使用高分一號WFV遙感影像數據集[20]進行訓練、驗證和測試,采用的Loss函數L(θ)可表示為

(11)

提出的L-MNet網絡模型是在M-Net網絡模型[21]的基礎上進行改進的,輕量化改進主要體現在以下兩個方面。
(1)使用深度可分離卷積代替普通卷積。M-Net網絡模型主要包括:一條編碼器路徑、一條解碼器路徑、一條左邊路徑和一條右邊路徑,一共有16層卷積核尺寸為3×3的卷積,可以使其實現深度監督的功能。因此,M-Net網絡模型的大小及計算量有較大的改進空間。使用深度可分離卷積可以減少參數的運算次數,從而降低硬件的算力要求。因此,利用深度可分離卷積替代普通卷積,實現輕量化。
(2)使用深度可分離卷積代替池化操作。將M-Net網絡模型中編碼器路徑的最大池化操作更換為步長為2的深度可分離卷積模塊。改進后的L-MNet網絡模型相較于原始M-Net模型,參數量與浮點運算數都有大幅降低。
L-MNet網絡模型是一種編-解碼器架構的模型,編碼器路徑與解碼器路徑之間使用多條跳躍連接進行相連,在M-Net網絡模型的基礎上引入殘差結構,其結構如圖4所示。使用多個步長為1的深度可分離卷積模塊進行特征提取,使用步長為2的深度可分離卷積模塊進行下采樣操作,使用雙線性插值的方法實現上采樣操作(Upsampling)。

圖4 L-MNet網絡模型結構圖Fig.4 The structure of L-MNet
所提方法使用的編程語言為Python,深度學習框架為Keras框架[22],并利用Adam優化器進行優化,其中衰減率設置為β1=0.9和β2=0.999來防止過擬合問題的出現。初始學習率設置為α=0.000 1,批量大小設置為16。當Epoch為76次附近時,損失函數達趨于平穩,并選擇M-Net方法作為對比方法。實驗環境為Windows 10操作系統、Intel Core i7 9700K CPU、32 G內存和NVIDIA GeForce RTX 2080 Ti(11 GB)GPU。
為定量評價云與云陰影的檢測性能,使用精確率(PPrecision)、準確率(AAccuracy)、召回率(RRecall)、F1值(F1)和均交并比(MMIoU)5種語義分割定量評價指標。5種語義分割定量評價指標分別表示為

(12)
(13)

(14)

(15)

(16)
式中:S為正確檢測為云像元的范圍;W為正確檢測為非云像元的范圍;R為將云像元誤檢為非云像元的范圍;E為將非云像元誤檢為云像元的范圍。
在計算云像元的各個評價指標時,將云陰影像元劃為下墊面像元;在計算云陰影像元的各個評價指標時,將云像元劃為下墊面像元。
選取的遙感影像來自高分一號WFV云與云陰影數據集。WFV是高分一號衛星中最關鍵的組件之一,包含4個空間分辨率為16 m,時間分辨率為4 d的集成相機,每個相機有4個多光譜波段,觀測幅寬達800 km。該數據集包含108張遙感影像,基本涵蓋了不同類型的下墊面。根據遙感影像制作相應的標簽,標簽由專家手動標記,將其轉換為灰度圖像,用灰度值0、128和255即黑色、灰色和白色代表下墊面像元、云陰影像元和云像元。為提高語義分割的效率,將數據集中的遙感影像及標簽大小統一轉為1 024×1 024,從中選取87張作為訓練集與驗證集,21張作為測試集。
2.1.1 定性分析
將所提出的方法與M-Net方法進行云檢測結果的定性分析。圖5為L-MNet方法與M-Net方法對高分一號WFV遙感影像進行云檢測結果的視覺比較,紅框內表示各模型實驗結果有差異處。從圖5中可以看出,L-MNet方法得到的云檢測結果在視覺上與真實值最為接近。M-Net方法在大面積云塊及海陸下墊面場景下出現了漏檢,如圖5(a)所示;如圖5(b)所示,在海洋下墊面場景中,M-Net方法在一些云邊緣細節檢測上弱于L-MNet方法;如圖5(c)所示,在碎云及貧瘠下墊面場景中,M-Net方法遺漏了大量的碎云及小面積云塊;如圖5(d)所示,在高反射地物場景中,M-Net方法出現了錯分的問題,無法正確檢測云層;如圖5(e)所示,在薄云場景中,M-Net方法無法精確提取薄云的特征信息,對薄云檢測效果較差。L-MNet方法在幾個場景中的表現均優于M-Net方法,檢測更為精細,獲得了更好的云檢效果。
2.1.2 定量分析
將所提出的方法與M-Net方法進行云檢測結果的定量分析。使用PPrecision、AAccuracy、RRecall、F1和MMIoU和推斷時間作為云檢測定量分析的評價指標。由于在軌云檢測平臺算力有限,不能實現多個并行計算,而計算機的GPU算力較高且對并行計算進行了特殊優化,在GPU環境下的推斷時間相差不大,因此所用推斷時間為在CPU環境下完成推斷的平均時間。表1為L-MNet方法與M-Net方法對高分一號WFV遙感影像進行云檢測得出的定量評價指標的平均值。由表1可知,L-MNet方法各項云檢測定量評價指標均優于M-Net方法,驗證了L-MNet方法的有效性及合理性。其精確率、準確率、召回率、F1值、均交并比和推斷時間分別為93.78%、95.85%、91.92%、0.9284、0.8243和3.24 s。L-MNet方法能夠在保證精準檢測云與云陰影的前提下,減小網絡模型的規模及計算量,大幅縮短模型在CPU環境下的推斷時間。

表1 不同方法的云檢測定量比較結果
2.2.1 定性分析
將所提出的方法與M-Net方法進行云陰影檢測結果的定性分析。圖6為L-MNet方法與M-Net方法對高分一號WFV遙感影像進行云陰影檢測結果的視覺比較,紅框內表示各模型對云陰影檢測的差異處。從圖6中可以看出,M-Net方法對云陰影檢測效果較差,無法有效檢測云陰影。L-MNet方法可以獲得較為精細的云陰影邊緣,捕捉云陰影輪廓,可以有效檢測云陰影。

紅色框體現出在云陰影檢測過程中,所提出的L-MNet模型在云陰影檢測中能夠有效、完整的檢測出云陰影,檢測效果在完整度和邊緣信息檢測方面相比M-Net模型有明顯區別
2.2.2 定量分析
將所提出的方法與M-Net方法進行云陰影檢測結果的定量分析。表2為L-MNet方法與M-Net方法對高分一號WFV遙感影像進行云陰影檢測得出的定量評價指標的平均值。由表2可知,L-MNet方法各項云陰影檢測定量評價指標均優于M-Net方法,表明L-MNet方法對云陰影的檢測也能取得較好的效果。其精確率、準確率、召回率、F1和均交并比分別為83.78%、95.43%、78.98%、0.813 1和0.701 5。

表2 不同方法的云陰影檢測定量比較結果
針對現有的基于卷積神經網絡的模型算法復雜度高、計算量大,限制了微小衛星在軌云檢測的應用,提出一種基于深度可分離卷積的輕量化卷積神經網絡模型(L-MNet)。首先,對輕量化卷積神經網絡中常用的幾種卷積運算做了詳細的講解。然后,介紹了深度可分離卷積的原理及構成,比較了其與普通卷積的優勢。使用深度可分離卷積極大減少了計算量及參數,防止出現過擬合的問題,可以有效提取多層的空間信息。基于深度可分離卷積,設計一種深度可分離卷積模塊(DS-Conv Block)進行特征的提取。最后,對本研究提出的L-MNet網絡模型進行詳細的講解,并進行實驗驗證。實驗結果表明,L-MNet網絡模型在保證高精度云與云陰影檢測的前提下,實現了輕量化的設計,突破了微小衛星有效載荷及硬件系統算力較低的限制,為微小衛星在軌云檢測提供了新的思路及理論支撐。