?

基于殘差網絡特征融合的高光譜圖像分類

2021-07-08 10:42韓彥嶺崔鵬霞楊樹瑚劉業錕王靜張云
自然資源遙感 2021年2期
關鍵詞:巢湖殘差卷積

韓彥嶺,崔鵬霞,楊樹瑚,劉業錕,王靜,張云

(上海海洋大學信息學院,上海 201306)

0 引言

高光譜圖像是若干個光譜波段組成的三維立體圖,含有豐富的空間信息和光譜信息,并且具有較高的空譜分辨率,能提取到不同地物的細節特征,在農作物監測、海洋環境監測、地圖繪制等方面發揮著重要作用[1],因此利用高光譜圖像進行地物分類識別已經成為國內外研究熱點。近年來很多分類方法被應用于高光譜圖像分類中,包括支持向量機(support vector machine,SVM)[2]分類法、決策樹分類法、最大似然分類法等,但是這些傳統分類方法由于只能提取到高光譜圖像的淺層特征信息而忽略了深層特征信息導致其分類精度的進一步提高受到限制,另外,高光譜圖像數據量巨大,且存在較多冗余信息,也給傳統分類方法的處理提出了挑戰。

由于深度學習方法可以較好地提取圖像的深層特征信息,近年來逐漸受到重視并廣泛應用于高光譜圖像分類領域,常用的網絡模型有卷積神經網絡(convolutional neural networks,CNN)、深度置信網絡(deep belief nets,DBN)、循環神經網絡(recurrent neural network,RNN)等,比如文獻[3]將傳統的深度CNN進行改進,采用分層特征融合的方法,得到更加有效的深度特征;文獻[4]基于反卷積提取高光譜圖像的高層特征,提出了一種結合高層特征空間和遷移學習網絡的遙感地物圖像分類算法,有效提高了分類精度;文獻[5]基于由光譜特征和紋理特征作為淺層特征,尺度不變特征變換(scale-invariant feature transform,SIFT)經編碼后得到的中層特征,以及CNN提取的深層特征,基于不同層次特征選用不同的分類器進行分類。研究表明利用深度學習一定程度上可以有效獲得深層特征信息,但是還不能充分融合深度學習網絡中各個層之間的深層特征,需要結合其他算法使層與層之間的深層特征得以充分利用。另外,在像素級分類中,高光譜遙感圖像的訓練樣本輸入尺寸偏小,深度學習模型的層數受到限制,模型優化的可能性較少,一定程度上也限制了高光譜圖像分類精度的提高。2015年He等[6]提出深度殘差網絡,在ImageNet大規模視覺識別競賽中獲得了圖像分類和物體識別的優勝,解決了網絡層數不足的問題;文獻[7]提出一種基于深度殘差CNN的高光譜遙感數據的方法,提高分類的準確度;文獻[8]利用CNN提取到空間光譜特征的同時,結合了三層殘差網絡模塊提高了高光譜圖像的分類精度。

基于以上研究,針對高光譜圖像分類中目前存在的樣本輸入小,網絡層數有限,導致深層特征無法充分提取的問題,本文提出一種基于殘差網絡特征融合的高光譜圖像分類方法。利用殘差網絡加深網絡層數,解決了高光譜圖像分類中由于訓練樣本輸入尺寸偏小導致的網絡層數受限問題;另外,通過反卷積算法實現特征圖的擴充并進行不同尺度特征的深度融合,充分挖掘高光譜圖像中的深度特征信息,進一步提升高光譜圖像分類精度。在“珠海一號”衛星拍攝的江蘇太湖和安徽巢湖兩個區域數據上進行分類實驗,以驗證本文方法的有效性。

1 基于殘差網絡特征融合的高光譜圖像分類方法

本文方法主要思想是利用殘差網絡加深網絡層數,通過反卷積擴大特征圖,并將不同尺度的特征進行特征融合,進一步挖掘高光譜圖像中的深層特征,以此獲得較高的分類精度。本文首先對高光譜圖像的原始數據進行主成分分析(principal component analysis,PCA),利用PCA將圖像的重要特征集中在第一個波段中,處理成二維圖像作為樣本輸入;考慮到深度學習網絡層數加深會造成梯度消失,以及網絡層數加深會造成參數過大的問題,利用殘差網絡中的恒等映射減少訓練過程中的參數,并且緩解了梯度消失的問題;傳統的殘差網絡只能夠一層一層提取特征并輸入到下一層殘差單元,層與層之間的特征沒有被充分地挖掘和利用,限制了高光譜圖像分類精度的進一步提升,因此本文利用反卷積擴大特征圖,并且通過多尺度融合算法使不同層的特征進行融合,充分挖掘高光譜圖像中的深層特征信息以提高分類精度。本文總體架構如圖1所示,主要包含3部分,第一部分為數據預處理,第二部分為算法實現部分,包含本文算法以及與其他方法的對比,第三部分為精度驗證,通過計算混淆矩陣,得出總體分類精度(overall accuracy,OA)和Kappa系數驗證精度的一致性。

圖1 本文總體框架Fig.1 Overall framework of this paper

1.1 改進的殘差網絡

殘差網絡的恒等映射的設計,使誤差不會繼續增加,因為可以從x恒等映射到F(x),這就是殘差網絡解決深度學習中因網絡層數增加而導致梯度消失問題的關鍵所在。如圖2所示,把輸入x傳到輸出作為初始結果,輸出結果為Y=F(x)+x,當F(x)=0時,Y=x,也就是恒等映射。于是,殘差網絡相當于將學習目標改變了,不再是學習一個完整的輸出,而是目標值Y和x的差值,也就是所謂的殘差F(x)=Y-x,因此,后面的訓練目標就是要將殘差結果逼近于0,隨著網絡加深,準確率不下降。

圖2 殘差網絡構思圖Fig.2 Conceptual diagram of the residual network

圖3為本文改進的殘差網絡結構,convij稱為殘差層,其中i表示第i個殘差層,j表示對應殘差層中的殘差單元,如conv1j為第一殘差層,conv2j為第二殘差層,虛線框中稱為殘差塊,包含6個殘差單元和2個池化層,每個殘差單元的卷積核大小均為3×3,32和64為卷積核個數。網絡中卷積核大小一般為3×3,5×5,7×7,考慮本文中樣本輸入大小為27×27,若選用5×5和7×7大小的卷積核,會導致網絡模型層數較少,優化網絡模型的可能情況更少,因此本文中選取卷積核大小為3×3。該網絡結構先經過3個殘差單元和1個池化層,將池化后的輸出作為反卷積Dconv1的輸入,反卷積中卷積核大小為5×5,卷積核個數為64,步長為1,無填充層,激活函數為ReLU。隨后將第一個池化層的輸出作為第二個殘差層的輸入,經過三個殘差單元和一個池化后的輸出作為反卷積Dconv2的輸入,Dconv2中除了卷積核大小為3×3與Dconv1中不同外,其余參數設置均一樣。Dconv1和Dconv2輸出維度不同的特征進行多尺度融合(M1),將低層特征擴大融合為同維度的特征后輸入到殘差塊中進行特征提取,其中殘差塊與第一殘差層和第二殘差層參數設置完全一樣,分別命名為第三殘差層和第四殘差層,最后通過conv5殘差層,增加了特征的數量,最后將提取到的特征輸入到全連接層FC和softmax分類器進行分類。

圖3 改進的殘差網絡結構Fig.3 Improved residual network structure

1.2 卷積和反卷積

(1)

本文采用ReLU函數作為激活函數,該函數不存在梯度消失問題,使得模型的收斂速度維持在一個穩定的狀態,其公式為:

(2)

卷積層的主要作用是提取特征信息,反卷積為卷積的逆運算,反卷積的主要作用是通過信息填充使特征圖擴大。在本文算法中,由于不同層的特征圖維度不同,不能直接進行融合,需要將高層特征圖擴大。卷積和反卷積示意圖如圖4所示。圖4中藍色為卷積輸入的特征圖,綠色為卷積(反卷積)之后的特征圖,圖4(a)為卷積過程,卷積核大小為3×3,步長為1×1,無填充層,將圖中大小為4×4的特征圖卷積為2×2。圖4(b)為反卷積過程,卷積核大小為3×3,步長為1,填充2層(虛線部分為填充層),將圖中大小為2×2的特征圖反卷積為4×4。在步長為1時,反卷積輸出特征的計算公式為:

out=n+2s-d+1,

(3)

式中:out為輸出特征圖大??;n為輸入特征圖大??;s為填充層數;d為卷積核個數。

(a)卷積過程 (b)反卷積過程

1.3 多尺度融合

在卷積網絡進行特征提取的過程中,隨著網絡層數的加深,每層獲得的特征信息會有所不同,低層網絡側重提取地物顏色、邊緣等紋理特征信息,高層網絡側重提取高層抽象特征,同時獲得的特征圖維度也會逐漸縮小,由于不同層的特征信息具有不同的特點,只利用最后的高層信息進行地物分類會在一定程度上丟失部分信息。因此通過多尺度特征融合可以將低層網絡的特征圖和高層網絡的特征圖進行融合,通過特征融合獲取更多來自不同卷積層的空譜特征,從而進一步提升高光譜圖像的分類精度。本文多尺度融合思想[10]源于RefineNet網絡中的多分辨率融合(multi-resolution fusion,MRF)模塊,經過殘差塊后將提取到的不同尺度的特征圖實現融合,不同尺度的特征融合過程示意如圖5所示,對18×18,9×9和3×3的特征圖分別進行二維卷積(其中,padding層為same、卷積核大小為3×3),再進行不同Scale的上采樣過程(Scale為擴大整數倍),其中9×9特征圖擴大2倍變為18×18,3×3的特征圖擴大6倍變為18×18,最后將所有的18×18的特征圖加和后輸入到下一層。

圖5 多尺度融合結構圖Fig.5 Multi-scale fusion structure diagram

1.4 算法描述

基于以上算法分析,本文的算法實現過程描述如下:

開始:

輸入:原始高光譜圖像

1)樣本標簽。

①對原始高光譜圖像做樣本標簽,形成樣本庫;

②按一定比例將樣本庫分為訓練樣本和測試樣本;

2)提取空間特征。

③通過PCA算法求得原始圖像的第一主成分作為輸入;

3)改進殘差網絡。

a.訓練階段:

④從訓練樣本中按照迭代批次(batch)隨機輸入到第一殘差層中,進行卷積核大小為l×l的最大池化;

⑤將步驟④中的輸出作為第二殘差層的輸入,再進行卷積核大小為l×l的最大池化;

⑥將步驟④,⑤中的輸出作為反卷積的輸入,卷積核大小為ci×ci(表示第i層卷積核大小為c),步長為1;

⑦將兩個反卷積之后圖像進行多尺度特征融合;

⑧將⑦中的輸出作為第三殘差層的輸入,然后進行卷積核大小為l×l的最大池化;

⑨將步驟⑧中的輸出作為第四殘差層的輸入,再進行卷積核大小為l×l的最大池化;

⑩將步驟⑨中的輸出作為conv5殘差層的輸入,獲得更多的特征;

b.測試階段:

輸出:混淆矩陣,OA,Kappa系數。

結束

2 實驗結果與分析

2.1 數據描述

本文采用的數據集為珠海一號衛星高光譜數據,該數據共有32個波段,空間分辨率是10 m,原始圖像大小為5 056×5 056。分別在江蘇省無錫市太湖地區和安徽省合肥市巢湖地區裁剪2個3 000×3 000的實驗區域,其中太湖地區影像成像時間為2018年10月1日,左上角經度為E120°11′34″,緯度為N31°06′52″,文中稱為太湖,如圖6(a);巢湖區域影像成像時間為2019年4月17日,左上角經度為E117°14′41″,緯度為N31°50′25″,文中稱為巢湖,如圖6(b)。

(a)太湖及局部放大圖像 (b)巢湖及局部放大圖像

實驗中將數據分為湖水、房屋、農田3類,依據光譜曲線和谷歌地圖兩者結合一起以像素點為單位做樣本標簽,太湖和巢湖的平均光譜曲線如圖7所示,紅色表示湖水,綠色表示房屋,藍色表示農田,從這2個圖中可以看出數據中3種類別地物可以較好地區分。太湖實驗數據中帶標簽的像素共有29 346個,巢湖帶標簽的像素共有29 512個,實驗中訓練樣本與測試樣本都是按照1∶1的比例,具體數量見表1。

(a)太湖區域 (b)巢湖區域

表1 數據集樣本個數Tab.1 Number of data set samples (個)

2.2 預處理與實驗設置

預處理方式采用PCA算法對高光譜圖像降維,將32個波段的數據降維為1個波段作為輸入,其中對于訓練樣本是隨機輸入,測試樣本為總樣本數減訓練樣本,訓練樣本的隨機性使模型精度不完全一致,因此每個實驗都是訓練5次確保實驗結果的穩定性,使實驗結果更加具有說服力。

深度學習中包含大量待訓練參數,網絡結構直接影響訓練參數的多少,結構越復雜訓練參數越多,訓練難度也會增加,固定部分參數是非常有必要的。本文實驗中設置學習率為0.000 5,丟棄比例(drop_prob)為0.5,批量處理(batch_size)大小為20,迭代次數為20 000次。改進殘差網絡參數及其網絡設置見表2,同樣的兩套數據進行孿生網絡[11],SVM[12],CNN[13],GLCMCNN[14]和傳統殘差網絡的對比實驗。孿生網絡(Siamese)是將兩個輸入映射到統一特征空間中,并共享權值,判別兩個樣本是否為正樣本或者負樣本,只需一次前向傳播操作就可以計算出精度;SVM采用徑向基函數作為核函數,參數g和懲罰因子c都是經過5次交叉驗證尋優得到;CNN參數設置見表3;GLCMCNN中選取了平均值、方差、熵、偏度4個值,再結合CNN網絡進行分類,其中CNN網絡參數與表3相同;傳統殘差網絡參數及其網絡設置見表4。

表2 改進殘差網絡Tab.2 Improved residual network

表3 CNN網絡結構Tab.3 CNN network structure

表4 傳統殘差網絡Tab.4 Traditional residual network

2.3 實驗結果與分析

表5為本文方法與孿生網絡,SVM,CNN,GLCMCNN和傳統殘差網絡在太湖和巢湖數據集進行對比的分類結果,從總體分類精度和Kappa系數看,本文方法獲得了最高的分類精度,證明該算法分類性能較好,總體分類精度和Kappa系數的值均為“平均值±標準差”格式。表5中,相對傳統方法,本文方法取得了最好的效果,在太湖數據中,相比于孿生網絡,SVM,CNN,GLCMCNN和傳統殘差網絡,本文方法的OA分別高出了50.60%,20.25%,7.00%,3.74%和2.44%,Kappa值分別高出了66.16%,25.47%,9.01%,7.94%和1.39%;在巢湖數據中,相比與孿生網絡,SVM,CNN,GLCMCNN和傳統殘差網絡,本文方法的OA分別高出了41.41%,13.57%,9.68%,7.02%和2.30%,Kappa值分別高出了62.94%,23.57%,16.06%,11.39%和3.52%。孿生網絡是將兩個輸入映射到統一特征空間中,提取相似特征,由于沒能有效提取不同類別的地物特征,導致其精度偏低;SVM屬于傳統機器學習,提取的特征屬于淺層特征,高光譜圖像中的深層特征沒有得到充分利用,影響了其分類精度;CNN模型和GLCMCNN模型精度低是因為高光譜圖像輸入樣本尺寸偏小,導致CNN模型的網絡層數被限制,不能充分提取到高光譜圖像的深層特征;傳統的殘差網絡由于加深了網絡層次,可以進一步提取高光譜圖像中的深層特征,獲得了較高的精度,但是由于它只是將每層提取的特征輸入到下一層殘差單元,不同層之間的特征沒有進行深度融合和挖掘,限制了高光譜圖像分類精度的進一步提升;本文方法通過采用殘差網絡提高網絡深度,并利用其捷徑連接解決由于加深網絡導致的梯度消失問題,提高了圖像分類精度;同時利用反卷積擴大特征圖,并且通過多尺度融合算法使不同層的特征進行深度融合,不僅解決了網絡層數被限制的問題,還充分挖掘高光譜圖像中的深度特征信息進一步提高了分類精度,因此獲得了最高的分類精度。

表5 不同方法的對比結果Tab.5 Comparison results of different methods

圖8所示為可視化結果,圖中(a)和(c)分別為太湖和巢湖經裁剪后的原始圖像,(b)和(d)分別為本文方法在太湖和巢湖數據集進行分類后的可視化結果,從圖中可以看出,本文方法取得了較好的分類效果。

(a)太湖原圖像 (b)太湖可視化結果 (c)巢湖原圖像 (d)巢湖可視化結果

2.4 參數對實驗影響

2.4.1 卷積核個數對實驗的影響

在深度學習中,卷積核個數與最終的分類精度并不是成正比的,該參數的設置尚未有明確的理論支持,本文采用根據經驗值設置候選值,并通過實驗分析確定最優的卷積核個數。一般而言,殘差網絡中第一層網絡中卷積核個數為16,本節做了第一層卷積核個數分別設置為8,16,32和40分別進行5次實驗,結果如表6和表7所示。

表6 不同卷積核個數下太湖數據的分類結果Tab.6 Classification results of Taihu Lake data under different numbers of convolution kernels

表7 不同卷積核個數下巢湖數據的分類結果Tab.7 Classification results of Chaohu Lake data with different numbers of convolution kernels

可以看出:

1)卷積核個數為16時比卷積核個數為8時的精度高,驗證了候選值的可靠性。

2)卷積核個數為32時精度最高,太湖和巢湖數據集卷積核為32時比卷積核個數為16時的總體分類精度上分別提高了3.16%和1.11%,在Kappa系數上也分別提高了2.64%和1.65%。

3)在卷積核個數為40時精度比卷積核個數為32時在太湖和巢湖數據上分別降低了4.03%和1.83%。綜合考慮本文卷積核個數采用32。

2.4.2 輸入大小對實驗的影響

本文中輸入樣本是以某一像素點為中心、以N×N(N為奇數)的鄰域塊作為二維卷積神經網絡的輸入,圖像分類中鄰域塊的分類結果作為中心像素點的類別。樣本輸入大小不同會影響高光譜圖像分類精度,本節主要討論15×15,25×25,27×27和29×29這4個不同輸入對太湖和巢湖的影響,表8和表9分別為太湖和巢湖在不同輸入的分類結果,從表8中可以看出在輸入為27×27時精度最高,而表9中是輸入為29×29時精度最高,比27×27時提高了0.9%,但是隨著輸入尺寸增加計算成本也會隨之增加,綜合考慮分類精度和計算代價,本文算法選取了輸入大小為27×27。

表8 不同輸入大小下太湖的分類結果Tab.8 Classification results of Taihu Lake under different input sizes

表9 不同輸入大小下巢湖的分類結果Tab.9 Classification results of Chaohu Lake with different input sizes

3 結論

為進一步充分挖掘高光譜圖像中的深層特征,本文提出基于殘差網絡特征融合的高光譜圖像分類方法,利用殘差網絡中殘差單元進行特征提取,通過其恒等映射的特點加深網絡層數,利用反卷積擴充特征圖,并通過融合不同尺度的特征實現高光譜圖像的深度特征提取和融合。實驗結果表明,與其他學習方法相比,本文方法獲得了最好的分類性能。具體總結如下:

1)高光譜圖像蘊含豐富的地物圖譜信息,傳統機器學習只能提取淺層特征,不能充分利用高光譜圖像中的深層特征影響了其分類精度的提高;而深度學習技術由于其良好的深度特征提取能力獲得了較好的分類效果。

2)傳統殘差網絡可以利用其恒等映射特點加深網絡層數,解決了高光譜圖像分類中由于樣本輸入尺寸偏小導致的網絡層數有限的問題,同時緩解了由于網絡層數加深容易出現的梯度消失問題,可以進一步深度提取地物特征,提高了高光譜圖像的分類精度。

3)本文方法充分利用了殘差網絡在加深網絡層數、緩解梯度消失方面的優勢,并結合反卷積通過填充信息擴大特征圖、進行不同維度的特征圖多尺度有效融合,實現層與層之間的深層特征互補,深度挖掘并充分利用高光譜圖像中的深層特征信息,進一步提高了高光譜圖像分類精度。

本文方法主要是針對高光譜圖像進行分類,但是目前高光譜傳感器由于時空分辨率的限制,有些區域的高光譜圖像難以獲取,為滿足更廣泛的地物分類識別,充分利用高空間分辨率、高光譜分辨率及高時間分辨率的遙感數據進行多源數據融合是我們接下來的研究方向。

猜你喜歡
巢湖殘差卷積
基于雙向GRU與殘差擬合的車輛跟馳建模
基于3D-Winograd的快速卷積算法設計及FPGA實現
基于殘差學習的自適應無人機目標跟蹤算法
基于遞歸殘差網絡的圖像超分辨率重建
從濾波器理解卷積
Always be gr atef ul
基于傅里葉域卷積表示的目標跟蹤算法
平穩自相關過程的殘差累積和控制圖
春季和夏季巢湖浮游生物群落組成及其動態分析
巢湖玉卮意蘊長
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合