張艷月,張寶華*,趙云飛,呂曉琪,谷 宇,李建軍
(1.內(nèi)蒙古科技大學(xué) 信息工程學(xué)院,包頭 014010;2.內(nèi)蒙古科技大學(xué) 內(nèi)蒙古自治區(qū)模式識(shí)別與智能圖像處理重點(diǎn)實(shí)驗(yàn)室,包頭 014010;3.內(nèi)蒙古工業(yè)大學(xué) 信息工程學(xué)院,呼和浩特 010051)
遙感影像分類[1-2]是遙感領(lǐng)域不可或缺的一部分,被廣泛應(yīng)用在土地資源管理、城市設(shè)計(jì)規(guī)劃、氣象觀測(cè)、環(huán)境及自然災(zāi)害的變化監(jiān)測(cè)等領(lǐng)域。為了反映地面復(fù)雜的空間結(jié)構(gòu),需要充分利用遙感圖像中的豐富地理信息,但目前從遙感圖像中精確提取有效信息并適度表達(dá),還面臨諸多挑戰(zhàn)[3]。
圖像分類任務(wù)中如何提取圖片特征至關(guān)重要,而且對(duì)于實(shí)驗(yàn)結(jié)果的影響不容忽略。中低層次上的方法提取圖像語(yǔ)義特征,如視覺(jué)詞袋模型(bag of visual words,BOVW)[4],在此基礎(chǔ)上出現(xiàn)眾多基于視覺(jué)詞袋的模型,如改進(jìn)的同心圓多尺度結(jié)構(gòu)視覺(jué)詞袋(concentric circle-structured multi-scale BOVW,CCM-BOVW)[5]模型,該模型利用特征組合描述視覺(jué)詞的空間信息,但特征表達(dá)能力較弱,影響分類精度;共線性核以一種空間金字塔形式(spatial pyramid co-occurrence kernel,SPCK)[6],通過(guò)捕獲單詞的絕對(duì)和相對(duì)空間排列表征圖像的光度和幾何特征,但采用的是底層局部特征導(dǎo)致其分類結(jié)果不佳。大多數(shù)經(jīng)典方法是基于人工或淺層學(xué)習(xí)的算法,而且提取的中低級(jí)語(yǔ)義特征在描述能力上受到限制,難以進(jìn)一步提高分類準(zhǔn)確性。
近些年,深度學(xué)習(xí)方法作為計(jì)算機(jī)視覺(jué)識(shí)別領(lǐng)域的主要方法已成功應(yīng)用于目標(biāo)識(shí)別,取得巨大成功,如空間卷積的顯著性方法[7]檢測(cè)物體、捷徑卷積神經(jīng)網(wǎng)絡(luò)[8]識(shí)別人臉、改進(jìn)馬爾可夫模型[9]分割合成孔徑雷達(dá)(synthetic aperture radar,SAR)圖像,以及深度學(xué)習(xí)的方式用于遙感圖像分類[10]等。但是,訓(xùn)練卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural networks,CNN)處理圖像分類任務(wù)時(shí),大規(guī)模標(biāo)簽數(shù)據(jù)是前提。由于圖像本身的信息較復(fù)雜,導(dǎo)致目前單一標(biāo)簽的圖像數(shù)據(jù)較少,而人工標(biāo)注又耗時(shí)間和精力,因此成為圖像分類精度的一個(gè)影響因素。在此基礎(chǔ)上,卷積神經(jīng)網(wǎng)絡(luò)及其一系列改進(jìn)[11-12]用于解決上述問(wèn)題,將多尺度圖像[13]送到輸入端,產(chǎn)生圖像的豐富特征信息,然后用多種編碼方式對(duì)特征編碼,最后輸入分類器分類。利用聯(lián)合顯著性算法與卷積神經(jīng)網(wǎng)絡(luò)結(jié)合的方法[14]對(duì)遙感圖像采樣,對(duì)于圖像場(chǎng)景差異小的類別識(shí)別效率低。將微調(diào)和卷積神經(jīng)網(wǎng)絡(luò)模型結(jié)合提取圖像特征[15]的方法有效解決了遙感圖像場(chǎng)景分類的相同類內(nèi)差異和不同類間相似性的問(wèn)題,但同時(shí)局部信息的表達(dá)被減弱。LI等人[16]提出一種多尺度費(fèi)舍爾編碼方法來(lái)構(gòu)建卷積深度特征的中層特征表示,通過(guò)主成分分析方法融合了從卷積層中提取的中層特征和全連通層的特征,但該方法著重于中層特征的表達(dá),沒(méi)有利用更高層次的特征。
為充分利用圖像中包含的豐富場(chǎng)景信息,本文中提出一種用雙通道深度密集網(wǎng)絡(luò)提取特征并融合的分類方法。首先,改變深層密集卷積神經(jīng)網(wǎng)絡(luò)(dense convolutional network, DenseNet)的DenseNet-40網(wǎng)絡(luò)結(jié)構(gòu),使其適應(yīng)原遙感圖像尺度大小,其次通過(guò)改進(jìn)的DenseNet-40表征遙感圖像的全局信息,原DenseNet-40表征遙感圖像的局部信息,然后利用BOVW模型對(duì)深層局部特征進(jìn)行重組編碼,最后,利用局部特征和全局特征的互補(bǔ)性,將密集網(wǎng)絡(luò)的各層特征加權(quán)融合,使融合后特征帶有更深層次語(yǔ)義信息,利于改善分類準(zhǔn)確率。
HUANG等人[17]聯(lián)合提出的一種深層密集卷積神經(jīng)網(wǎng)絡(luò)DenseNet,其網(wǎng)絡(luò)核心機(jī)制與殘差網(wǎng)絡(luò)(residual network,ResNet)相同,但DenseNet把網(wǎng)絡(luò)中相鄰兩卷積層密集連接起來(lái),即通過(guò)各卷積層特征在每個(gè)通道上的密集連接實(shí)現(xiàn)特征高效復(fù)用。上述特點(diǎn)使DenseNet既能夠減少訓(xùn)練的參量,又有效改善了網(wǎng)絡(luò)訓(xùn)練費(fèi)時(shí)費(fèi)力的問(wèn)題。
DenseNet密集連接方式的前提是特征圖尺寸相同。因此網(wǎng)絡(luò)中采用密集塊(dense block,DB)加過(guò)渡層(transition layer,TL)重復(fù)使用的結(jié)構(gòu)。密集塊每個(gè)層的特征層尺寸保持一致,內(nèi)部的瓶頸層(bottleneck layer,BL)使計(jì)算量大大減少,分別有批次歸一化(batch normalization,BN)、修正線性單元(rectified li-near unit,ReLU)和卷積層三部分,如圖1所示。而過(guò)渡層在相鄰兩個(gè)密集塊之間起連接作用,并經(jīng)池化降低特征圖尺寸。此結(jié)構(gòu)有效解決了梯度消失帶來(lái)的影響。此外,DenseNet具有抑制過(guò)擬合的正則化效應(yīng)。

Fig.1 Dense block structure
設(shè)某卷積神經(jīng)網(wǎng)絡(luò)共有l(wèi)層,傳統(tǒng)CNN的第l層輸入為其前一層的輸出,計(jì)算公式為:
Xl=Hl(Xl-1)
(1)
式中,Xl是第l層的輸出,Hl()為第l個(gè)卷積中的復(fù)雜線性變換操作。不同的是,DenseNet中該層的輸入為0~(l-1)層的輸出特征圖,計(jì)算公式為:
Xl=Hl([X0,X1,…,Xl-1]),(l∈N+)
(2)
每個(gè)密集塊經(jīng)前面的卷積后得到特征圖的數(shù)目一致,表示為k,k為一個(gè)超參量。一般情況下k取較小時(shí)可得到較好的結(jié)果。若取輸入特征圖個(gè)數(shù)為k0,則輸入特征圖的數(shù)量會(huì)隨復(fù)合卷積的層數(shù)呈線性增加的狀態(tài)。輸入特征圖的數(shù)量m計(jì)算公式為:
m=k0+(l-1)×k
(3)
本文中選用通道一網(wǎng)絡(luò),即DenseNet-40網(wǎng)絡(luò)提取圖像的局部特征,用BOVW對(duì)末尾卷積層特征編碼,得到低維詞頻分布直方圖,從而降低特征維度,表達(dá)出圖像的局部特征。在卷積中,特征圖是由卷積層和卷積核進(jìn)行卷積之后的結(jié)果,因此抽取卷積后的眾多特征圖上相同位置的元素,并將這些元素排列,可得到輸入圖像不同的局部抽象特征的表達(dá),如圖2所示。假設(shè)第l層卷積層的輸出特征圖為dl×nl×nl,nl×nl表示單個(gè)特征圖大小,dl表示特征圖數(shù)目,fl,k為經(jīng)卷積層l得到的第k(1≤k≤dl)個(gè)特征圖,該圖的某個(gè)元素(i行j列)為fl,k(i,j)(1≤i≤nl,1≤j≤nl),則該卷積層的全部特征圖在此位置的元素重組后,可獲取一個(gè)新的特征向量,計(jì)算公式為:
fl(i,j)=
(fPReLU(fl,1(i,j),fl,2(i,j),…,fl,dl(i,j)))T
(4)

Fig.2 Feature reorganization
式中,fPReLu表示激活函數(shù),fl(i,j)表示dl維列向量。
本文中所用框架中有大量的訓(xùn)練參量,這意味著訓(xùn)練時(shí)間長(zhǎng),并且有過(guò)度訓(xùn)練的傾向。為了使訓(xùn)練更快并防止過(guò)度擬合,選擇參量修正線性單元(parame-tric rectified linear unit,PReLU)作為激活函數(shù)[18],它在ReLU 的基礎(chǔ)上引入了極少數(shù)的參量,公式表示為:

(5)
式中,xi是第i個(gè)通道上非線性激活的輸入,i是可學(xué)習(xí)的參量,ai用于確定負(fù)部分的斜率。更新i時(shí),PReLU采用動(dòng)量法,公式表示為:

(6)
式中,μ表示動(dòng)量,lr表示學(xué)習(xí)率。因?yàn)閕可能趨于0,因此i在更新狀態(tài)下,考慮棄用權(quán)重衰減。ai=0.25用作初始值。盡管ReLU是一種有用的非線性函數(shù),但它阻礙了反向傳播,而PReLU使模型更快地收斂。
視覺(jué)詞典可以實(shí)現(xiàn)將所獲取的視覺(jué)詞匯從高維降至低維,依據(jù)生成的視覺(jué)詞典對(duì)視覺(jué)單詞進(jìn)行編碼,編碼后即表示出了圖像中包含的信息。具體編碼過(guò)程如下:計(jì)算某一任取視覺(jué)詞匯與視覺(jué)詞典中所有視覺(jué)單詞的距離,并從結(jié)果中找到一個(gè)最小值,記錄產(chǎn)生該距離最小值的視覺(jué)單詞,代替當(dāng)前的詞匯,記錄各視覺(jué)單詞在其總數(shù)中所占比例,即生成其詞頻分布直方圖。
算法設(shè)計(jì)的擴(kuò)展DenseNet-40網(wǎng)絡(luò)實(shí)現(xiàn)了對(duì)遙感圖像全局信息的表征。由于一些含區(qū)分性的信息會(huì)存在于網(wǎng)絡(luò)的某些層中,擴(kuò)展DenseNet-40的全連接層(fully connected layers,F(xiàn)C)可以將這些局部信息整合,整合后的輸出可用一個(gè)N維特征向量表示,即由N個(gè)1×1的特征圖組成,公式表示為:
Y=fPReLU(WX+b)
(7)
假設(shè)第l層卷積層的輸出特征圖為dl×nl×nl,nl×nl表示單個(gè)特征圖大小,dl表示特征圖數(shù)目,Y∈RN×1×1為輸出特征向量,R表示實(shí)數(shù)域,N表示經(jīng)全連接層整合后的特征圖個(gè)數(shù),X∈Rdl×nl×nl為輸入特征圖,W∈R(dl×nl×nl)×N為權(quán)重,b∈RdFC為偏置項(xiàng),dFC表示全連接層的特征圖個(gè)數(shù)。
整體算法結(jié)構(gòu)如圖3所示。網(wǎng)絡(luò)設(shè)計(jì)為以DenseNet為中心的雙通道網(wǎng)絡(luò),分別將兩種不同尺度的圖像作為輸入,捕獲更全面的圖像特征。預(yù)處理是通過(guò)將圖像樣本進(jìn)行直方圖均衡化,尺度變換和數(shù)據(jù)集的劃分等操作,以節(jié)省訓(xùn)練時(shí)間同時(shí)去除圖像的冗余信息。經(jīng)過(guò)圖像預(yù)處理操作后,得到兩組圖像集,分別是大小為32pixel×32pixel尺寸的圖像集和大小為256pixel×256pixel尺寸的圖像集,最后將圖像集隨機(jī)分為8∶2的訓(xùn)練集和測(cè)試集,待雙通道網(wǎng)絡(luò)訓(xùn)練完成后,將網(wǎng)絡(luò)最后提取的局部和全局特征進(jìn)行線性加權(quán)融合,最后經(jīng)softmax分類器分類輸出結(jié)果。

Fig.3 Algorithm structure
具體步驟如下:(1)圖像樣本經(jīng)預(yù)處理操作后獲得尺寸分別為32pixel×32pixel和256pixel×256pixel的圖像集,并隨機(jī)將其劃分為8∶2,分別作為訓(xùn)練集和數(shù)據(jù)集;(2)將劃分后的圖像訓(xùn)練集輸入通道1的DenseNet-40網(wǎng)絡(luò)進(jìn)行訓(xùn)練,各個(gè)DB模塊均采用k=24,卷積層的數(shù)量為12,由于提取的局部和全局特征的維度不同,在經(jīng)過(guò)DenseNet-40獲取卷積層特征后,對(duì)這些特征重組并通過(guò)詞袋模型編碼,得到局部信息的分布直方圖;同時(shí)輸入通道2的擴(kuò)展DenseNet-40網(wǎng)絡(luò)進(jìn)行訓(xùn)練,提取全局特征;(3)將上一步中的兩部分特征矩陣以線性加權(quán)方式進(jìn)行融合,得到融合特征矩陣;(4)融合特征矩陣經(jīng)softmax分類器,得出驗(yàn)證結(jié)果,進(jìn)行模型評(píng)估;(5)模型評(píng)估完成后用先前劃分的測(cè)試集進(jìn)行測(cè)試,得到最終分類結(jié)果。
選取第1個(gè)公開數(shù)據(jù)集是UC Merced Land-Use,該數(shù)據(jù)集每一類分別有100張角度不同的遙感圖片,共21類,圖片總數(shù)量為2100張,每張大小為256pixel×256pixel,空間分辨率為0.3m/pixel,部分類別圖像樣本如圖4所示。樣本均隨機(jī)選取情況下,將該數(shù)據(jù)集中每類的80%當(dāng)作訓(xùn)練集,其余20%當(dāng)作測(cè)試集。

Fig.4 UC Merced Land-Use dataset image sample display
選取第2個(gè)公開數(shù)據(jù)集是NWPU-RESISC45,該數(shù)據(jù)集有沙漠、海港、島嶼等共45類場(chǎng)景,每類場(chǎng)景有700張遙感圖片,每張圖片大小為256pixel×256pixel,圖片總數(shù)量為31500張,該數(shù)據(jù)集是由一些人從已有的常用數(shù)據(jù)集中挑選、組合而成的新數(shù)據(jù)集,大多數(shù)圖像的空間分辨率在0.2m/pixel~30m/pixel,部分類別圖像樣本如圖5所示。該數(shù)據(jù)集上同樣隨機(jī)選取測(cè)試集和訓(xùn)練集為8∶2的比例進(jìn)行實(shí)驗(yàn)。

Fig.5 NWPU dataset image sample display
本文中的實(shí)驗(yàn)均是基于深度學(xué)習(xí)框架軟件TENSORFLOW1.9的基礎(chǔ)上完成,所用服務(wù)器硬件配置為DGX-1服務(wù)器,內(nèi)含8塊NVLink V100 GPU,每塊32GB顯存,共256GB,本地固態(tài)硬盤為7TB的固態(tài)驅(qū)動(dòng)器(solid state disk,SSD),當(dāng)采用深度學(xué)習(xí)方法或?qū)τ?jì)算性能要求較高時(shí),一般應(yīng)用該設(shè)備;實(shí)驗(yàn)操作系統(tǒng)為L(zhǎng)inux4.15.0-47-generic x86_64。
由于實(shí)驗(yàn)中所用數(shù)據(jù)集輸入圖片大小均為256pixel×256pixel,圖片尺寸相對(duì)較大,因此在提取全局特征時(shí)需對(duì)密集網(wǎng)絡(luò)進(jìn)行擴(kuò)展,網(wǎng)絡(luò)詳細(xì)參量設(shè)置信息見(jiàn)表1。算法學(xué)習(xí)率為0.001,批量大小為20。將圖片輸入網(wǎng)絡(luò)后,經(jīng)第1次卷積(采用same方式),使輸出與輸入大小一致,保留了圖像的邊界信息;第1個(gè)池化方式采用最大池化,目的是減小偏移誤差,解決了原始遙感圖像部分紋理信息丟失的問(wèn)題。
實(shí)驗(yàn)結(jié)果采用評(píng)價(jià)指標(biāo):分類準(zhǔn)確率A、誤分類率E和混淆矩陣。計(jì)算公式如下所示:
A=T/M
(8)
式中,T表示測(cè)試集中被正確分類的圖片數(shù);M表示測(cè)試集圖像總數(shù)。

Table 1 Extended DenseNet-40 structure
誤分類率公式如下所示:
E=1-A
(9)
本文中方法在UC Merced Land-Use dataset上分類產(chǎn)生的混淆矩陣如圖6所示。由圖中可看出,場(chǎng)景中分類目標(biāo)不單一,背景對(duì)象多導(dǎo)致分類精度較低;并且有些圖像場(chǎng)景之間具有相似性,往往讓網(wǎng)絡(luò)認(rèn)為是同一場(chǎng)景,如森林和中等密集住宅、中等密集住宅和密集住宅等;而對(duì)于場(chǎng)景單一、目標(biāo)突出、特征明顯的場(chǎng)景,分類精度較高,如茂密樹叢、海港、跑道等。本文中的算法從整體來(lái)看分類效果較為理想,但很少數(shù)類別的分類結(jié)果未達(dá)到理想值,可能是場(chǎng)景之間的相似性,才導(dǎo)致誤分率相對(duì)較高。
采用支持向量機(jī)(support vector machine,SVM)加文檔主題生成模型(latent dirichlet allocation,LDA)的SVM-LDA[19]方法、包含空間信息的費(fèi)舍爾核(Fisher kernel-spatial,F(xiàn)K-S)[20]方法、多尺度深度卷積神經(jīng)網(wǎng)絡(luò)(multi-scale deep convolutional neural network,MS-DCNN)[13]方法及主成分分析(principal components analysis,PCA)加CNN的PCA-CNN[14]方法與本文中的算法對(duì)比,在UC Merced Land-Use Data Set上的各個(gè)類別的分類精度如圖7所示。SVM-LDA[19]算法通過(guò)使用顯著性檢測(cè),從圖像數(shù)據(jù)集中的顯著區(qū)域提取一

Fig.7 Scenes classification accuracy of three comparison methods on UC Merced Land-Use
組代表性圖像塊,用無(wú)監(jiān)督的特征學(xué)習(xí)方法利用這些未標(biāo)記的數(shù)據(jù)塊,組成一個(gè)強(qiáng)大而高效的特征提取器。其中,最大池化的步長(zhǎng)為1,稀疏值0.4;PCA-CNN[14]方法的閾值β=0.3,α=0.8,并且為每個(gè)圖像隨機(jī)選擇100張大小為64×64×3的圖像塊。由圖可知,算法SVM-LDA[19]的每一類分類結(jié)果均比其余兩種算法低,而PCA-CNN[14]算法的整體分類結(jié)果較為平均,但其分類準(zhǔn)確率低于本文中所提出的方法,證實(shí)了本算法的優(yōu)勢(shì)。
為了分析不同尺度的遙感圖像輸入對(duì)分類結(jié)果的影響,取原圖像(256pixel×256pixel)和壓縮后(32pixel×32pixel)的圖像尺寸作為輸入圖像,分類結(jié)果見(jiàn)表2。由表2可知,前兩組分類精度相對(duì)較低,因?yàn)檩斎雴我怀叨鹊膱D像時(shí),僅能提取到部分的圖像特征,從而特征利用率不高,導(dǎo)致分類結(jié)果較低。前兩組實(shí)驗(yàn)對(duì)比來(lái)看,輸入圖像尺度為32pixel×32pixel時(shí),圖像信息被壓縮,提取特征失真,導(dǎo)致分類結(jié)果偏低。第3組實(shí)驗(yàn)同時(shí)將兩種尺度的圖像輸入,提取更加豐富的圖像特征,分類效果較好。

Table 2 Impact of two different scale input images on classification accuracy
為了評(píng)價(jià)不同算法的分類效果,對(duì)兩種數(shù)據(jù)集應(yīng)用本文中方法與現(xiàn)有文獻(xiàn)中其它方法的分類準(zhǔn)確率見(jiàn)表3,誤分類率見(jiàn)表4。由表可知,深度卷積神經(jīng)網(wǎng)絡(luò)在圖像分類任務(wù)中有著不可替代的作用。傳統(tǒng)方法中,提取的圖像特征大多數(shù)屬于中低層次的圖像特征,而深度學(xué)習(xí)方法還能提取高層次的圖像語(yǔ)義特征,高、中、低層次圖像特征綜合分析,比中低層圖像特征更具有可分析性,因此采用深度學(xué)習(xí)的方法是當(dāng)前的趨勢(shì),因此本文中采用雙通道密集網(wǎng)絡(luò)來(lái)提取圖像特征,把圖像信息各層次特征提取出來(lái)并高效復(fù)用,達(dá)到全面分析的效果,從而實(shí)現(xiàn)更優(yōu)的分類結(jié)果。

Table 3 Classification accuracy of five methods for datasets experiments

Table 4 Error rate of five methods for datasets experiments
由于在圖像識(shí)別ImageNet數(shù)據(jù)集上運(yùn)用DenseNet有很好的分類效果,因此使用DenseNet網(wǎng)絡(luò)設(shè)計(jì)雙通道特征融合網(wǎng)絡(luò),利用網(wǎng)絡(luò)中各層特征較強(qiáng)的表示能力,提取更多圖片的特征,并且該網(wǎng)絡(luò)特點(diǎn)是能保證高效的特征復(fù)用,因此提高了各層的特征利用率。為了增加保留圖片的有用信息的同時(shí)去除冗余信息的能力,算法最初設(shè)計(jì)數(shù)據(jù)增強(qiáng)等預(yù)處理操作。從實(shí)驗(yàn)結(jié)果可知,該融合模型在兩個(gè)數(shù)據(jù)集上表現(xiàn)出了良好的分類性能。后續(xù)研究中,可嘗試引入多層特征融合的方法來(lái)提高目標(biāo)的識(shí)別分類。