本發(fā)明屬于遙感信息處理技術領域,涉及一種高光譜圖像的分類方法,尤其涉及一種基于雙通道卷積神經(jīng)網(wǎng)絡的空譜聯(lián)合的高光譜圖像分類方法。
背景技術:
高光譜遙感圖像光譜分辨率高、成像波段多、信息量大,在遙感應用領域得到廣泛應用。高光譜圖像分類技術是高光譜圖像處理技術中的重要內容,主要包含特征提取及分類兩個步驟,其中從原高光譜圖像中提取用特征,該步驟對高光譜圖像的分類精度影響巨大:如果所提取的分類特征的魯棒性強,能夠大幅提高分類精度;相反,魯棒性較差的分類特征則會明顯降低分類效果。
近幾年,深度學習在特征提取方面成績顯著。為了提高高光譜圖像分類精度,各種深度模型被引入到高光譜圖像的分類中來,并在譜特征的基礎上,引入空間特征,利用深度學習模型,自主提取高光譜圖像的空譜特征,有效提高了高光譜圖像分類精度。
然而,現(xiàn)有的利用深度模型提取高光譜圖像空譜特征的方法,在引入空間特征的時候,會在一定程度上忽視譜特征。同時,存在著鄰域信息選取范圍過大,導致分類效果出現(xiàn)過平滑,分類結果圖不精確的問題。此外,現(xiàn)有的深度模型所含參數(shù)較多,需要的訓練樣本也比較多,對人工標記數(shù)據(jù)較少時的高光譜圖像的分類也帶來一定的限制。
技術實現(xiàn)要素:
要解決的技術問題
為了避免現(xiàn)有技術的不足之處,本發(fā)明提出一種基于雙通道卷積神經(jīng)網(wǎng)絡的空譜聯(lián)合的高光譜圖像分類方法,利用雙通道網(wǎng)絡,同時提取高光譜圖像的空間特征和譜特征,并將二者有機結合,利用深度學習自主學習的優(yōu)勢,自動提取高光譜圖像的空譜深度特征以提高分類精度。同時提出數(shù)據(jù)擴充方法,克服高光譜圖像人工標記數(shù)據(jù)較少時容易過擬合的問題。
技術方案
一種基于雙通道卷積神經(jīng)網(wǎng)絡的空譜聯(lián)合的高光譜圖像分類方法,其特征在于步驟如下:
步驟1:對輸入的高光譜圖像數(shù)據(jù),依照公式對進行歸一化操作;其中xijs表示高光譜圖像中的一個像元,i、j分別表示該像元位于高光譜圖像中的坐標位置,s表示高光譜圖像的譜段,x··smax、x··smin分別表示表示三維高光譜圖像在s波段的最大值和最小值;
步驟2:對每個待分類的像元,提取八鄰域范圍內的所有信息作為該像元的譜數(shù)據(jù)樣本L表示譜段總數(shù);通過PCA降維將圖像壓縮,以該像元為中心提取鄰域范圍41×41內的信息作為該像元的空間數(shù)據(jù)樣本
步驟3:從步驟2中提取出來的數(shù)據(jù)中隨機抽取含有標簽的數(shù)據(jù)樣本作為DC-CNN的訓練數(shù)據(jù)樣本,隨機抽取的數(shù)量為有標簽數(shù)據(jù)總量的百分之五到百分之十;
步驟4構建DC-CNN:
網(wǎng)絡整體結構為兩部分,第一部分包含1D-CNN和2D-CNN,其中1D-CNN包含三層一維卷積層,卷積方向沿著譜方向進行;每層卷積層后連接一一維池化層,第三層池化層后依次連接一層全連接層和一層分類層,一共八層網(wǎng)絡;2D-CNN包含三層二維卷積層,卷積在空間上進行;每層卷積層后連接一二維池化層,第三層池化層后依次連接一層全連接層和一層分類層,一共八層網(wǎng)絡;第二部分包含兩層全連接網(wǎng)絡,第一層為輸入層,第二層是分類層,分類層采用softmax計算損失;
步驟5、網(wǎng)絡預訓練:采用隨機梯度下降算法對1D-CNN和2D-CNN進行訓練,訓練完成之后1D-CNN和2D-CNN分別具備提取深度譜特征和深度空間特征的能力;
步驟6、網(wǎng)絡調優(yōu):通過步驟5中訓練好的1D-CNN和2D-CNN,提取訓練數(shù)據(jù)的譜特征和空間特征,結合提取出的譜特征和空間特征構成訓練數(shù)據(jù)的空譜特征,以訓練數(shù)據(jù)的空譜特征為輸入,訓練網(wǎng)絡的全連接層;
步驟7:將待分類的數(shù)據(jù)依次通過訓練好的1D-CNN和2D-CNN,特征融合,訓練好的全連接層,最終根據(jù)全連接層的輸出確定待分類數(shù)據(jù)的類別,完成高光譜圖像空譜聯(lián)合分類。
所述步驟5網(wǎng)絡預訓練為:
步驟5a)前向運算為卷積層前向運算,激勵函數(shù)前向運算,分類器前向運算三部分,其中一維卷積層前向運算的公式為:
表示卷積運算之后,網(wǎng)絡第l層,第j個特征向量上x位置上的值。bl,j是第l層,第j個特征向量的偏置;f(·)表示激勵函數(shù),m是第(l-1)層特征向量的索引;表示連接到第(l-1)層第m個特征向量的位于卷積核位置h的值。Hl表示核的長度;
二維卷積層前向運算的公式為:
第(l-1)層第m個特征向量的位于卷積核位置(h,w)的值;Hl和Wl分別表示卷積核的高和寬。激勵函數(shù)采用ReLU,分類器采用softmax;
步驟5b)反向求導對應于前向運算:對卷積層的求導,對激勵函數(shù)的求導,對分類器的求導;
步驟5c)卷積核更新:計算出卷積核的偏導之后對卷積核進行更新的一步操作,更新公式如下:
kl+1=kl+vl+1
l表示迭代次數(shù),ε表示學習率,學習率選取0.01。
有益效果
本發(fā)明提出的一種基于雙通道卷積神經(jīng)網(wǎng)絡(Dual Channel Convolutional Neural Network,DC-CNN)的空譜聯(lián)合的高光譜圖像分類方法,針對高光譜圖像數(shù)據(jù)為三維結構的特點,采用一維卷積網(wǎng)絡(1D-CNN)通道和二維卷積網(wǎng)絡(2D-CNN)通道相結合的方式,提取空譜特征完成高光譜圖像的空譜聯(lián)合分類。針對高光譜圖像人工標記數(shù)據(jù)較少的問題,采用適合高光譜圖像的數(shù)據(jù)擴充方法,增加訓練樣本的規(guī)模,提高卷積網(wǎng)絡的訓練效率,減少過擬合問題。
本發(fā)明的有益效果在于:1)構建出適用于三維結構的高光譜圖像數(shù)據(jù)的DC-CNN模型,利用深度網(wǎng)絡模型自主提取空譜深度特征,省去了人為預先設定特征的麻煩;2)基于DC-CNN的高光譜圖像空譜聯(lián)合分類方法,即擴展了深度學習的應用范圍,也為高光譜圖像分類提供了新思路。3)提出的數(shù)據(jù)擴充方法一定程度上減緩了深度學習需要大量訓練數(shù)據(jù)和高光譜圖像人工標記數(shù)據(jù)較少的矛盾,減小了過擬合問題。4)提高了高光譜圖像分類精度。
附圖說明
圖1:本發(fā)明的流程圖
具體實施方式
現(xiàn)結合實施例、附圖對本發(fā)明作進一步描述:
步驟1輸入高光譜圖像數(shù)據(jù),依照公式對對數(shù)據(jù)進行歸一化操作。其中xijs表示高光譜圖像中的一個像元,i、j分別表示該像元位于高光譜圖像中的坐標位置,s表示高光譜圖像的譜段,現(xiàn)有的高光譜圖像一般包含100-240個譜段,x··smax、x··smin分別表示表示三維高光譜圖像在s波段的最大值和最小值。
步驟2提取原始的譜數(shù)據(jù)樣本和空間數(shù)據(jù)樣本。對每個待分類的像元,提取八鄰域范圍內的所有信息作為該像元的譜數(shù)據(jù)樣本L表示譜段總數(shù)。通過PCA降維壓縮數(shù)據(jù),保留前三主成分的信息,即將原始高光譜圖像壓縮到三維,以該像元為中心提取鄰域范圍41×41內的信息作為該像元的空間數(shù)據(jù)樣本
步驟3從步驟2中提取出來的數(shù)據(jù)樣本中隨機抽取少量的含有標簽的數(shù)據(jù)作為DC-CNN的訓練數(shù)據(jù)樣本,一般選取有標簽數(shù)據(jù)總量的百分之五到百分之十作為訓練數(shù)據(jù)樣本。
步驟4構建DC-CNN并利用訓練數(shù)據(jù)樣本對DC-CNN進行訓練。網(wǎng)絡整體結構分為兩部分,第一部分包含1D-CNN和2D-CNN兩部分,其中1D-CNN包含三層一維卷積層(卷積方向沿著譜方向進行),每層卷積層后連接一一維池化層,第三層池化層后依次連接一層全連接層和一層分類層,一共八層網(wǎng)絡,一維卷積核的長度分別依次設置為3,7,5。2D-CNN包含三層二維卷積層(卷積在空間平面上進行),每層卷積層后連接一二維池化層,第三層池化層后依次連接一層全連接層和一層分類層,一共八層網(wǎng)絡,二維卷積核的尺寸依次設置為3×3,7×7,5×5。第二部分包含兩層全連接網(wǎng)絡,第一層為輸入層,第二層是分類層,分類層采用softmax計算損失。網(wǎng)絡的整體運算主要包含預訓練,調優(yōu)兩階段,每階段包含前向運算,反向求導,參數(shù)更新三部分操作。
步驟5網(wǎng)絡預訓練。采用隨機梯度下降算法分別對1D-CNN和2D-CNN進行訓練,訓練完成之后1D-CNN和2D-CNN分別具備提取深度譜特征和深度空間特征的能力。卷積網(wǎng)絡的訓練主要包含前向運算,反向求導,卷積核更新三部分操作:
5a)前向運算主要分為卷積層前向運算,激勵函數(shù)前向運算,分類器前向運算三部分,其中一維卷積層前向運算的公式為:
表示卷積運算之后,網(wǎng)絡第l層,第j個特征向量上x位置上的值。bl,j是第l層,第j個特征向量的偏置。f(·)表示激勵函數(shù),m是第(l-1)層特征向量的索引。表示連接到第(l-1)層第m個特征向量的位于卷積核位置h的值。Hl表示核的長度。二維卷積層前向運算的公式為:
第(l-1)層第m個特征向量的位于卷積核位置(h,w)的值。Hl和Wl分別表示卷積核的高和寬。激勵函數(shù)采用ReLU,分類器采用softmax。
5b)反向求導對應于前向運算,也包含對卷積層的求導,對激勵函數(shù)的求導,對分類器的求導。對卷積層前向運算公式及激勵函數(shù)前向運算公式求導按照基礎的數(shù)學公式即可推導得到。
5c)卷積核更新是在反向求導運算完成,計算出卷積核的偏導之后對卷積核進行更新的一步操作,更新公式如下:
kl+1=kl+vl+1
l表示迭代次數(shù),ε表示學習率,學習率一般選取0.01。
步驟6網(wǎng)絡調優(yōu)。通過步驟5中訓練好的1D-CNN和2D-CNN,提取訓練數(shù)據(jù)的譜特征和空間特征,結合提取出的譜特征和空間特征構成訓練數(shù)據(jù)的空譜聯(lián)合特征。以訓練數(shù)據(jù)的空譜聯(lián)合特征為輸入,采用隨機梯度下降算法訓練網(wǎng)絡的全連接層。
步驟7將待分類的數(shù)據(jù)首先通過訓練好的1D-CNN和2D-CNN得到深度譜特征和空間特征,其次連接譜特征和空間特征得到空譜特征,最后將空譜特征輸入到訓練好的全連接層。最終根據(jù)全連接層的輸出確定待分類數(shù)據(jù)的類別,完成高光譜圖像的空譜聯(lián)合分類。