,,
(1. 東莞市測繪院,廣東 東莞 523129; 2. 遼寧工程技術大學測繪與地理科學學院,遼寧 阜新 123000; 3. 中國測繪科學研究院,北京100830)
隨著遙感技術的快速發(fā)展,遙感影像已廣泛應用于科學研究、社會服務等各個領域。在國內,以高分一號、高分二號、資源三號等為代表的國產(chǎn)衛(wèi)星各項指標趨近國際先進水平,國產(chǎn)衛(wèi)星影像的質量和數(shù)據(jù)量迅速增加,市場化程度較之前有了極大提升,在社會各領域發(fā)揮了重要作用[1]。然而,并非所有的遙感影像都可直接用于工程項目與研究實踐,其中一個重要的限制因素是由于云覆蓋導致星載衛(wèi)星獲取的影像一般都含有云層,且占比較大,一般在50%以上[2]。云層的存在不僅覆蓋了地表信息,也給影像的配準、融合、影像信息提取等處理造成諸多影響,因此對遙感影像云檢測和去除是非常有必要的[3],但目前的影像云檢測和去除技術還存在著瓶頸。
近幾年,許多學者提出了多種遙感影像云檢測方法,其中光譜閾值法是當前云檢測領域中最簡單有效的算法之一。該方法主要是利用遙感影像光譜特征,即根據(jù)云在可見光波段或紅外波段反射率或亮溫值與其他地物光譜特征的差異,通過亮度閾值將目標云層與非云地物進行分離[4-5],其亮度閾值的確認常用經(jīng)驗閾值或基于最大類間方差(Otsu)原理的自動閾值。此類云檢測方法具有計算簡單、監(jiān)測效率高等優(yōu)點,但是也存在較多的缺陷,如要求影像具有熱紅外波段信息、監(jiān)測精度略低、產(chǎn)生誤判等。文獻[6]采用改進的顏色轉換模型,生成影像修正圖,然后利用Otsu閾值分割提取紋理信息生成云種子圖,相比傳統(tǒng)云檢測方法,精度提升了10%以上。文獻[7]將最大類間自適應閾值(Otsu)應用到遙感影像云檢測中,獲得了較好檢測結果,但要求被檢測遙感影像需要有足夠多波段。目前,市場上的國產(chǎn)高分衛(wèi)星影像一般含有藍、綠、紅、近紅外4個波段,其波段范圍為0.43~0.90 μm[8],因此基于閾值的云檢測方法難以在國產(chǎn)高分辨率影像上體現(xiàn)優(yōu)勢。
基于云層和地物紋理特征差異,通過提取特征組合(如灰度共生矩陣、Gabor紋理特征等)來區(qū)分云和地物,是另外一種效果較好的遙感影像云檢測方法。但由于光學遙感影像上的云特征多樣,不同的云特征在特征組合中的分布并不典型,使用紋理差異進行云檢測尚存在一定難度[9]。部分改進的基于紋理特征的云檢測算法[10]在一定程度上提升了云檢測精度,但存在著訓練分類器耗時、費力、難以滿足海量影像數(shù)據(jù)自動提取等缺陷。
卷積神經(jīng)網(wǎng)絡是一種典型的深度學習算法,其模型參數(shù)可通過梯度下降方法進行網(wǎng)絡訓練獲得,避免了對圖像前期的復雜預處理過程,且經(jīng)過訓練的卷積神經(jīng)網(wǎng)絡能夠充分挖掘影像中的特征,高效完成遙感影像的云檢測[11]。
針對國產(chǎn)高分辨率遙感影像云檢測現(xiàn)存問題,本文提出基于卷積神經(jīng)網(wǎng)絡的高分辨率遙感影像云檢測方法。基本思路為:首先采用主成分分析(principal component analysis,PCA)非監(jiān)督預訓練網(wǎng)絡結構;其次利用少量標簽數(shù)據(jù)對網(wǎng)絡結構進行微調;然后采用超像素分割方法進行影像分割,并將影像塊輸入已訓練卷積神經(jīng)網(wǎng)絡中進行云檢測;最后將檢測結果影像塊拼接,完成整幅影像的云檢測。
卷積神經(jīng)網(wǎng)絡(CNN)是受生物神經(jīng)學知識啟發(fā)并參考其結構原理結合人工神經(jīng)網(wǎng)絡而產(chǎn)生的開創(chuàng)性研究成果之一,是一種具有深度學習能力的前饋人工神經(jīng)網(wǎng)絡系統(tǒng),典型的卷積神經(jīng)網(wǎng)絡模型主要由輸入層、卷積層、采樣層、全連接層等幾個部分組成[12]。與傳統(tǒng)神經(jīng)網(wǎng)絡相比,卷積神經(jīng)網(wǎng)絡具有適用性強、特征提取與分類同時進行、泛化能力強、全局優(yōu)化訓練參數(shù)少等優(yōu)點,已逐漸成為目前學習領域的研究熱點[13]。其原理結構如圖1所示。
卷積神經(jīng)網(wǎng)絡的工作過程為:首先目標影像(輸入影像)通過卷積層進行卷積運算,并通過采樣層對卷積輸出特征圖進行下采樣,然后經(jīng)過多次的卷積運算和下采樣處理,最后通過全連接層對提取的特征影像進行分類,輸出目標結果。
本文采用Gi表示卷積神經(jīng)網(wǎng)絡第i層的特征圖,卷積過程可以描述為[14]
Gi=f(Gi-1?Wi+bi)
(1)
式中,Gi表示卷積神經(jīng)網(wǎng)絡第i層的特征圖;符號“?”表示第i層影像與第i-1層特征圖進行卷積運算;Wi表示第i層卷積核的權值向量;bi表示偏移向量;線性激活函數(shù)f(·)表示卷積過程中第i層的特征圖像Gi。
通過卷積神經(jīng)網(wǎng)絡計算之后的特征圖,特征維度一般在百萬數(shù)量級,如果直接訓練分類器,很容易導致過擬合現(xiàn)象發(fā)生[15]。因此,在卷積運算之后需要對影像特征圖進行下采樣,即池化操作,同時為避免在池化操作中的信息損失,一般常采用概率最大化進行池化操作。
假定采樣塊Xn中有一個神經(jīng)元是激活狀態(tài),則采樣值Pn就產(chǎn)生響應,否則不響應,池化過程可表示為
P(Pn|i)=eGi-1?Wi+bi/(1+eGi-1?Wi+bi)
(2)
傳統(tǒng)全連接層參數(shù)巨大,會導致過擬合問題。因此本文在設計網(wǎng)絡框架時,考慮將最后全連接層由全最大化池化層代替。本文設計深度卷積神經(jīng)網(wǎng)結構如圖2所示。
卷積神經(jīng)網(wǎng)絡訓練時需要大量樣本,而實際建立樣本庫需要大量的時間和人力。針對此問題,本文采用半監(jiān)督分類方式訓練卷積神經(jīng)網(wǎng)絡,在保證訓練樣本的同時可有效提升訓練效率。
(3)
采用主成分分析方法最小化重構誤差求解特征向量[17]
(4)
式中,IH為H×H單位矩陣;V為協(xié)方差矩陣XXT的前H個特征向量。V可以表示輸入影像塊的主要特征。主成分分析初始化卷積神經(jīng)網(wǎng)絡的濾波器組Wh可以表示為[18]
Wh=mg1g2(Vh)h=1,2,…,H
(5)
式中,mg1g2(Vh)表示將向量V映射到矩陣Wh,Vh表示影像的第h個主要特征。
通過主成分分析監(jiān)督預訓練網(wǎng)絡結構,得到網(wǎng)絡初始權值參數(shù),再通過云標簽數(shù)據(jù)對整個網(wǎng)絡進行微調。本文訓練卷積神經(jīng)網(wǎng)絡流程如圖3所示。
為了避免將整幅影像輸入卷積神經(jīng)網(wǎng)絡進行云檢測效率低的問題,在云檢測之前需要對遙感影像進行分塊預處理。本文在顧及遙感影像像元的光譜特征和空間特征的基礎上,采用簡單線性迭代聚類算法(simple linear iterative cluster,SLIC)[17]生成超像元,以提高分類精度。
采用像元光譜在N波段上與生成所有超像元歐氏距離之和來描述光譜特征相似,其可表達為[21]
(6)
式中,j表示影像波段數(shù);k表示原始影像的第k像元;d1表示像元光譜在N個波段上與超像元歐氏距離之和。
采用像元和超像元在平面坐標系的距離來描述空間特征,其表達式為
(7)
則最終的SLIC聚類函數(shù)可定義為
(8)
式中,S是控制超像元間的緊密程度的參數(shù),其范圍一般控制在[1,40],該參數(shù)表示XY空間的最大可能值。為防止超像元的聚類中心落在邊界點或噪聲像元上,在聚類中心4×4鄰域中尋找像元光譜梯度最小的點,作為新的超像元種子點,迭代完成超像元生成。
基于卷積神經(jīng)網(wǎng)絡的高分辨率遙感影像云檢測方法主要實現(xiàn)步驟如下:①采用半監(jiān)督分類方式訓練卷積神經(jīng)網(wǎng)絡;②對待檢測遙感影像進行分塊預處理;③對待檢測遙感影像進行超像素分割;④以超像素聚類中心為中心,將影像劃分為64×64像素和32×32像素影像塊;⑤將影像塊輸入已訓練卷積神經(jīng)網(wǎng)絡中進行云檢測;⑥最后將檢測后影像塊拼接,完成整幅影像的云檢測。
本文高分辨率遙感影像云檢測技術流程如圖4所示。
本文試驗采取Linux下的TensorFlow深度學習框架,硬件環(huán)境為CPU Intel(R) Xeon(R)E5-2630,GPU Nvidia Tesla M40 32GB內存。
本文構建的卷積神經(jīng)網(wǎng)絡結構如圖1所示,含兩個卷積層、兩個池化層、一個全連接層:第一層卷積濾波器設置為340個,第二層卷積濾波器設置為200個,濾波器大小均設置為5×5,采樣間隔設置為1,采用概率最大化進行池化。在云檢測之前,首先將待檢測遙感影像進行簡單線性迭代聚生成超像元影像,以超像素聚類中心為中心,將影像劃分為64×64像素和32×32像素影像塊,最后將卷積神經(jīng)網(wǎng)絡學習的云特征輸入Softmax分類器完成影像云檢測。本文試驗的云檢測結果如圖5(b)和圖5(e)所示。
為驗證本文云檢測方法的有效性,筆者將本文云檢測結果與文獻[7]提出的帶有限定條件Otsu云檢測方法進行對比(文獻[7]Otsu閾值云檢測結果如圖5(c)和圖5(f)所示)。試驗選取資源三號遙感影像和高分一號遙感影像為數(shù)據(jù)源,其中資源三號影像為多光譜影像,空間分辨率為5.8 m,大小為600×600像素,研究區(qū)域主要是薄云和厚云,如圖5(a)所示;高分一號影像為多光譜影像,大小為600×600像素,研究區(qū)域主要是厚云,如圖5(d)所示。在選擇云標簽數(shù)據(jù)方面,本文綜合考慮研究區(qū)域的云分布情況,綜合選取300個云標簽數(shù)據(jù)對卷積神經(jīng)網(wǎng)絡微調。
從圖5(b)和圖5(e)可以得出,本文云檢測方法結果云邊界清晰和完整,且能很好地識別薄云和面積較小云層。從圖5(c)和圖5(f)可以得出,文獻[7]Otsu云檢測結果存在“椒鹽”現(xiàn)象,易將反射率較低的云層檢測為地物,并且易將高反射率的地物誤檢為云。如在資源三號遙感影像中,存在將高反射率建筑物誤檢為云;在高分一號遙感影像中,將高反射率地物誤檢為云。綜上所述,通過目視評價方法,本文云檢測方法試驗結果優(yōu)于文獻[7]Otsu云檢測方法的結果。
為了定量評價本文云檢測試驗結果,本文采用人工目視解譯方式勾取的云區(qū)域作為真值,并采用總體精度(OA)和Kappa系數(shù)兩個評價指標與試驗結果進行定量評價。其中,人工目視解譯方式勾繪原則設定為:①針對云邊界模糊區(qū)域勾繪精度控制在4個像素以內;②針對云邊界清晰區(qū)域勾繪精度控制在1個像素以內。最終評價結果見表1。
表1 不同云檢測方法的評價結果
由表1可知,與文獻[7]云檢測方法相比,本文云檢測方法在兩幅遙感影像云檢測中精度較高。其中資源三號遙感影像云檢測總體精度為0.986 451,比文獻[7]云檢測方法高出8.193 2%;高分一號遙感影像云檢測總體精度為0.990 163,比文獻[7]云檢測方法高出8.554 2%。本文云檢測方法在兩種不同數(shù)據(jù)源云檢測的總體精度均在98%以上,Kappa系數(shù)均在93%以上。通過定量評價方式,說明本文將深層卷積神經(jīng)網(wǎng)絡算法應用于國產(chǎn)高分辨遙感影像云檢測中,能有效提高云檢測精度。
針對國產(chǎn)高分辨率遙感影像的云檢測,本文提出了基于卷積神經(jīng)網(wǎng)絡的高分辨率遙感影像云檢測方法。通過試驗分析,該方法在一定程度上可彌補傳統(tǒng)Otsu方法、多光譜綜合法的不足。傳統(tǒng)Otsu云檢測方法主要不足表現(xiàn)為高反射率地物如建筑物、裸地、雪很容易產(chǎn)生誤判,而本文提出的云檢測方法檢測精度高,誤判較少,適合國產(chǎn)高分辨遙感影像云檢測,并且不受光譜范圍限制。
通過本文研究發(fā)現(xiàn),卷積神經(jīng)網(wǎng)絡算法在國產(chǎn)高分辨率遙感影像云檢測領域有著較大潛力,本文提出的基于卷積神經(jīng)網(wǎng)絡的高分辨率遙感影像云檢測方法還存在許多不足。如沒有判斷本文卷積神經(jīng)網(wǎng)絡的層次結構和參數(shù)設置是否最優(yōu);沒有引入其他特征參與云檢測(紋理特征、相關指數(shù)特征等)。在接下來的工作中,擬將紋理特征引入高分辨率遙感影像云檢測中,期待進一步提高云檢測精度。