陳科峻,張 葉
(1.中國科學院大學 長春光學精密機械與物理研究所 應(yīng)用光學國家重點實驗室, 吉林 長春 130033;2.中國科學院大學,北京 100039)
隨著航空技術(shù)的日益成熟,航空圖像分辨率日益提高,航空圖像在人們?nèi)粘I钪邪l(fā)揮著越來越重要的作用。自然災(zāi)害探測、城市規(guī)劃、資源勘探及專題地圖制作等任務(wù)都離不開航空圖像分類,因此對航空圖像進行準確分類具有重要的意義。在實際的場景中,航空圖像通常包含多個不同類別的物體,一張圖像往往和多個標簽相關(guān)聯(lián)。這在一定程度上給分類模型帶來了干擾,即類內(nèi)呈現(xiàn)較大的多樣性,而類間具有較大的相似性。同時,受到視點、旋轉(zhuǎn)、背景等多種變化的影響使得航空圖像多標簽分類任務(wù)依然存在嚴峻的挑戰(zhàn)。
近年來,隨著基于深度學習的圖像分類算法取得了重大的突破[1],利用計算機視覺技術(shù)對航空圖像進行分類成為了當前研究的熱點[2],同時也涌現(xiàn)出了大量的相關(guān)研究工作:文獻[3]采用遺傳算法優(yōu)化LVQ(Learning Vector Quantization)神經(jīng)網(wǎng)絡(luò)的權(quán)值與閾值,同時融入相似灰度值創(chuàng)建分類圖像特征矢量輸入神經(jīng)網(wǎng)絡(luò)中進行訓練。但基于淺層神經(jīng)網(wǎng)絡(luò)的分類模型往往由于特征提取能力有限而導(dǎo)致分類精度不高。文獻[4]提出了一種基于多尺度特征融合(Multiscale Features Fusion,MSFF)的航空圖像分類方法,對各卷積層和全連接層提取出的不同尺度的特征進行降維和池化操作。將各尺度特征進行編碼融合并利用多核支持向量機(Multikernel Support Vector Machine,MKSVM)進行場景分類。但是,基于SVM(Support Vector Machine)的分類方法往往受限于樣本的特征提取方式和核函數(shù)參數(shù)的選取。文獻[5]通過多層卷積神經(jīng)網(wǎng)絡(luò)對航空圖像進行卷積和池化處理,抽取高層特征構(gòu)建圖像特征庫,并根據(jù)圖像特征和圖像特征庫中特征向量之間的距離大小,進行圖像檢索分類。但是通過距離度量圖像之間的相似性計算量較大并且容易造成信息的丟失。而對于多標簽航空圖像分類問題,現(xiàn)有的研究[6-7]大都是假設(shè)標簽類之間是相互獨立的,缺乏對標簽之間潛在相關(guān)性的挖掘。例如,船舶往往出現(xiàn)在包含有水域或碼頭的圖像中,汽車往往與路面和建筑物共同出現(xiàn)在同一張圖像中。一個良好的多標簽分類系統(tǒng)不僅需要能夠?qū)W習整體特征,還應(yīng)該能夠利用標簽間的相關(guān)性特點進行圖像分類。
本文針對傳統(tǒng)航空圖像分類模型對圖像主體特征提取能力不足的問題,提出了采用預(yù)訓練卷積神經(jīng)網(wǎng)絡(luò)結(jié)合注意力機制的特征提取方法,將多尺度注意力特征圖與卷積神經(jīng)網(wǎng)絡(luò)高層特征加權(quán)對航空圖像進行特征提取。注意力機制的引入,提高了圖像主體在模型中的權(quán)重,增加了特征的可分性。同時,針對傳統(tǒng)研究中缺乏對航空圖像標簽之間相關(guān)性的挖掘的問題,本文考慮到不同標簽之間存在著潛在的相互依賴關(guān)系,采用改進的雙向長短期記憶網(wǎng)絡(luò)(Bidirectional Long Short-Term Memory,BiLSTM )對圖像標簽間的高階依賴關(guān)系進行挖掘,以提高網(wǎng)絡(luò)的多標簽分類能力。實驗結(jié)果表明,本文方法能夠在一定程度上提高航空圖像多標簽分類任務(wù)的準確率。
傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)在對圖像進行特征提取時,往往難以有效地將圖像主體特征與噪聲特征區(qū)分開來。為了有效提取圖像中的主體特征,本文特征提取網(wǎng)絡(luò)受到文獻[8]的啟發(fā),將不同尺度的注意力特征圖嵌入卷積神經(jīng)網(wǎng)絡(luò)中,以使得網(wǎng)絡(luò)能夠捕獲場景中主體對象的顯著性信息,提高模型的特征提取能力。同時,將卷積神經(jīng)網(wǎng)絡(luò)輸出的特征序列化,作為雙向長短期記憶網(wǎng)絡(luò)的輸入,利用雙向長短期記憶網(wǎng)絡(luò)的序列學習能力對標簽之間的相關(guān)性進行挖掘,輸出最終的圖像類別標簽。本文總體的網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。
圖1 總體網(wǎng)絡(luò)框架Fig.1 Overall architecture of network
航空圖像背景復(fù)雜,為了提高卷積神經(jīng)網(wǎng)絡(luò)對圖像主體的特征提取能力,本文將注意力機制與卷積神經(jīng)網(wǎng)絡(luò)相結(jié)合對圖像特征進行提取?;谧⒁饬C制的卷積神經(jīng)網(wǎng)絡(luò)首先需要生成注意力特征圖。本文通過對圖像進行超像素分割,采用計算特征熵的方式提取圖像的最優(yōu)特征,生成注意力特征圖。
超像素分割算法(Simple Linear Iterative Clustering,SLIC)[9]通過將彩色圖像轉(zhuǎn)化為CIELAB顏色空間和XY坐標下的5維特征向量,然后對特征向量構(gòu)造距離度量標準,對圖像像素進行局部聚類。SLIC算法在運算速度、物體輪廓保持及超像素形狀方面具有較高的綜合性能。在特征提取階段,可以從超像素圖像中獲得顏色、紋理、梯度等12個低層特征。本文采用計算特征熵的方式提取最優(yōu)特征,特征熵的計算公式如式(1)所示:
(1)
式中pI表示特征圖中灰度值為I的像素在圖中所占的比例。選擇熵最大的8個特征作為最優(yōu)特征,計算顯著性分數(shù),生成注意力特征圖。對注意力特征圖進行尺度變換之后,嵌入卷積神經(jīng)網(wǎng)絡(luò)中對網(wǎng)絡(luò)進行訓練。顯著性分數(shù)計算公式如式(2)所示:
(2)
其中Fm(si)表示超像素si對應(yīng)的第m個特征。c(si)的計算公式如式(3)所示:
(3)
其中:c(si)為超像素的坐標(xi,yi)與圖像中心坐標(x′,y′)之間的距離;vx和vy是由圖像的水平和垂直信息決定的變量;dis(si,sj)計算公式如式(4)所示:
dis(si,sj)=[(Li-lj)2+(ai-aj)2+
(4)
其中:[L A B]表示CIELAB顏色空間像素的三個顏色分量;(xi,yi),(xj,yj)分別表示超像素si,sj的空間坐標;Z為相鄰超像素的空間距離;β為常數(shù),取值范圍為[1,40];dis(si,sj)表示超像素之間的顏色-空間加權(quán)距離。最終,通過注意力機制生成的注意力特征圖可視化結(jié)果如圖2所示。
圖2 注意力圖Fig.2 Attention map
從注意力圖可以看出,嵌入注意力機制的特征提取方法,能夠突出圖像中的主體信息,有利于提高圖像特征的可分性。
在完成注意力特征圖的生成之后,需要將注意力特征圖嵌入卷積神經(jīng)網(wǎng)絡(luò)當中。因此構(gòu)建基于注意力機制的特征提取網(wǎng)絡(luò)的第二步則是構(gòu)建基礎(chǔ)卷積神經(jīng)網(wǎng)絡(luò)。
近年來,隨著深度學習算法的興起,涌現(xiàn)出了許多經(jīng)典的卷積神經(jīng)網(wǎng)絡(luò)模型。其中,文獻[10]對傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)進行改進,提出的ResNet ( Residual Network ) 解決了層數(shù)過深的卷積神經(jīng)網(wǎng)絡(luò)模型在訓練過程中發(fā)生退化而導(dǎo)致難以收斂的問題,大大提高了卷積神經(jīng)網(wǎng)絡(luò)的分類精度。因此,本文以ResNet50作為基礎(chǔ)網(wǎng)絡(luò)對輸入圖像進行特征提取。ResNet50網(wǎng)絡(luò)結(jié)構(gòu)參數(shù)如表1所示。
表1 ResNet50網(wǎng)絡(luò)參數(shù)
ResNet50網(wǎng)絡(luò)將多個殘差塊堆疊在一起,殘差塊之間存在直連通道,用于將輸入信息直接連接到輸出端,并且每個殘差塊都是由卷積核大小為1×1,3×3,1×1的三個卷積串聯(lián)在一起,這樣的做法保存了信息的完整性,整個網(wǎng)絡(luò)只需要學習輸入、輸出之間的殘差,簡化了學習目標和難度。通過ResNet50提取圖像特征所得到的卷積特征圖如圖3所示。
圖3 卷積特征圖Fig.3 Convolutional feature map
從圖3可以看出,ResNet50卷積神經(jīng)網(wǎng)絡(luò)的淺層對圖像中的輪廓具有很好的特征提取能力。越深的卷積層則越利于提取圖像的抽象特征。
最終得到的基于注意力機制的特征提取網(wǎng)絡(luò)結(jié)構(gòu)如圖4所示。其中,ResNet50的卷積層1至卷積層5_x的結(jié)構(gòu)相同。在每個分支網(wǎng)絡(luò)的卷積層都嵌入注意力圖,使得網(wǎng)絡(luò)能夠從圖像中提取到更多層次的對象信息。同時,為了提高模型的收斂速度,本文在網(wǎng)絡(luò)的激活函數(shù)之前,增加批歸一化層(Batch Normalization,BN)[11],提高模型的泛化能力。由于不同尺度大小的輸入圖像經(jīng)過卷積和池化之后得到的特征圖大小不同,本文在網(wǎng)絡(luò)結(jié)構(gòu)的最后增加了全局平均池化,以便于對多尺度特征進行融合。
圖4 特征提取網(wǎng)絡(luò)框架Fig.4 Framework of feature extraction network
為了對航空圖像多分類任務(wù)中各標簽之間相關(guān)性的挖掘,本文利用UCM多標簽數(shù)據(jù)集[12]進行標簽之間相關(guān)性的研究。UCM數(shù)據(jù)集[13]由美國國家地質(zhì)調(diào)查局(USGS)地圖中心提供,數(shù)據(jù)集中包含2 100張航拍圖片,一共21個類別。UCM多標簽數(shù)據(jù)集是在UCM數(shù)據(jù)集的基礎(chǔ)之上,根據(jù)原始對象為每個圖像樣本分配一個或多個標簽來重新標記組合而成。新定義的標簽類總數(shù)為17個,包括:飛機、沙地、路面、建筑物、汽車、灌木叢、球場、樹林、碼頭、儲水罐、水域、草地、活動房屋、輪船、裸土、海洋和田野。表2為每個類別的圖像數(shù)量分布。
表2 UCM多標簽數(shù)據(jù)集每一類別圖像數(shù)量
Tab.2 Number of images per category in UCM multi-label dataset
類別名稱總數(shù)/張類別名稱總數(shù)/張Airplane100Mobile-home102Bare-soil718Pavement1 300Buildings691Sand294Cars886Sea100Chaparral115Ship102Court105Tanks100Dock100Trees1 009Field104Water203Grass975
UCM多標簽數(shù)據(jù)集樣例如圖5所示,其中場景(a)包含了飛機,裸地,汽車,草地,道路的標簽。場景(b)包含了沙地、海洋的標簽。場景(c)包含了裸地、網(wǎng)球場、草地、樹木的標簽。
圖5 UCM多標簽數(shù)據(jù)集樣例Fig.5 Sample of UCM multi-label dataset
在傳統(tǒng)的研究當中,常見的假設(shè)是圖像中的多個標簽是相互獨立的,模型分別對每個類別進行預(yù)測。通過計算類別之間的條件概率,可以發(fā)現(xiàn)實際的場景中,多個標簽之間往往是相互關(guān)聯(lián)的。條件概率的計算公式如式(5)所示:
(5)
其中:Cr表示標簽中的一個類別,Cp表示潛在的共現(xiàn)類別。P(Cr)表示類別Cr出現(xiàn)的先驗概率,P(Cp,Cr)表示類別Cp,Cr的聯(lián)合概率,P(Cp|Cr)表示類別Cp,Cr的條件概率。UCM多標簽數(shù)據(jù)集條件概率矩陣如圖6所示。
圖6 UCM多標簽數(shù)據(jù)集條件概率矩陣Fig.6 UCM multi-label dataset conditional probabilities matrix
從條件概率矩陣可以看出,P(ship|dock)的值為0.98,表示出現(xiàn)船這一類別的圖像中,同時出現(xiàn)碼頭的概率很高。P(dock|ship)的值為1,表示出現(xiàn)碼頭這一類別的圖像中出現(xiàn)船的概率也很高,也即這兩個類別具有很高的相關(guān)度。因而可以采用卷積神經(jīng)網(wǎng)絡(luò)與循環(huán)神經(jīng)網(wǎng)絡(luò)相結(jié)合的方式,將特征提取網(wǎng)絡(luò)輸出的特征圖向量化為W2維的向量作為循環(huán)神經(jīng)網(wǎng)絡(luò)的輸入,其中W為特征圖的尺寸。
結(jié)合UCM多標簽數(shù)據(jù)集條件概率矩陣可以看出,同一圖像中不同的標簽序列之間存在相關(guān)性。因此本文受文獻[14]的啟發(fā),采用長短期記憶網(wǎng)絡(luò)(Long Short-Term Memory,LSTM )[15]對標簽之間的潛在相關(guān)性進行挖掘。其中,LSTM網(wǎng)絡(luò)通過門控單元將短期記憶與長期記憶結(jié)合起來,被廣泛應(yīng)用于序列數(shù)據(jù)問題的處理。
在傳統(tǒng)LSTM網(wǎng)絡(luò)中,輸入門輸入的信息狀態(tài)不能影響輸出門的輸出信息,并且遺忘門和輸入門之間是相互獨立的。本文在傳統(tǒng)LSTM網(wǎng)絡(luò)的基礎(chǔ)上,增加輸入門到輸出門的連接,并且將遺忘門和輸入門合并成一個單一的更新門,由原本的遺忘門和輸入門分別決定信息的剔除和保留,變?yōu)檫z忘門和輸入門共同進行決策,以使輸入狀態(tài)更好地控制每一內(nèi)存單元輸出的信息,改進的LSTM網(wǎng)絡(luò)結(jié)構(gòu)如圖7所示。
圖7 改進型LSTM單元Fig.7 Improvement of LSTM cell
3.2.1 改進型LSTM網(wǎng)絡(luò)門限更新過程
改進的LSTM網(wǎng)絡(luò)首先進行細胞狀態(tài)中冗余信息的剔除,這個過程通過遺忘門的控制完成。公式(6)表示的是LSTM網(wǎng)絡(luò)的遺忘門信息過濾過程:
ft=σ(Wf·[ht-1,xt]+bf),
(6)
it=σ(Wi·[ht-1,xt]+bi),
(7)
(8)
(9)
ot=σ(Wo[Ct,ht-1,xt]+bo),
(10)
ht=ot·tanh(Ct),
(11)
其中:ot表示輸出門輸出的信息,ht表示該LSTM單元的最終輸出。
考慮到多標簽圖像中,類與類之間的依賴關(guān)系是雙向的,而基于單向的LSTM網(wǎng)絡(luò)不足以全面描述標簽類別間的關(guān)系。因此本文在模型中采用BiLSTM網(wǎng)絡(luò)對多標簽序列進行學習。BiLSTM網(wǎng)絡(luò)結(jié)構(gòu)如圖8所示。
圖8 BiLSTM網(wǎng)絡(luò)結(jié)構(gòu)Fig.8 Structure of bidirectional LSTM network
為了驗證本文方法的有效性,本文設(shè)計了實驗進行驗證。首先,對特征提取網(wǎng)絡(luò)中多尺度注意力特征圖尺度的選擇上,大尺度的圖像包含的信息豐富,細節(jié)清晰,但是會增加模型的計算量。而小尺度的圖像雖然計算量較小,但是缺乏細節(jié)。本文以224×224的圖像作為基準,選定尺度0.8,1,1.3,2,分別得到179×179,256×256,291×291,448×448不同大小尺度的圖像,通過不同組合交叉驗證,得到的最優(yōu)尺度組合為1、1.3、2。同時,為了使模型能夠充分收斂,本文在原始圖像數(shù)據(jù)集上進行了數(shù)據(jù)增強,對原始圖像進行縮放、旋轉(zhuǎn)、模糊等數(shù)據(jù)增強方式,對原始數(shù)據(jù)集進行了10倍地有效擴充。最終訓練圖片的總數(shù)量達到了20 000張。實驗中將數(shù)據(jù)集按照8∶2的比例隨機劃分為訓練集和測試集。
本文的實驗在Linux環(huán)境下進行,采用的GPU為英偉達K80,在基于Tensorflow的深度學習框架進行模型訓練。模型訓練過程中采用動量梯度下降法(Momentum),動量momentum=0.9,初始學習率lr=0.01,并且當測試集精度飽和時進行0.9倍的權(quán)值衰減,進行80 000次迭代的訓練。訓練的損失函數(shù)定義為均方誤差損失函數(shù)。訓練過程的損失曲線如圖9所示。
圖9 網(wǎng)絡(luò)訓練損失曲線圖Fig.9 Network training loss curve
為了對實驗結(jié)果進行分析,全面評估模型的性能,本文通過計算精確率,召回率和F1值來評判模型的性能。精確率表示的是在所有被預(yù)測為正的樣本中實際為正樣本的概率,代表了正樣本結(jié)果中預(yù)測的準確程度,精確率的公式如式(12):
(12)
其中:TP表示模型判斷為正樣本,實際為正樣本。FP表示模型判斷為正樣本,實際為負樣本。召回率表示的是實際為正的樣本中被預(yù)測為正樣本的概率。召回率公式如式(13):
(13)
其中,F(xiàn)N表示模型判斷為負樣本,實際為負樣本。引入F1-Score作為綜合評價模型的指標。F1值是精確率和召回率的調(diào)和平均,F(xiàn)1值的公式如式(14):
(14)
為了驗證本文算法的有效性,本文在UCM 多標簽數(shù)據(jù)集上進行了對比試驗。分別使用在ImageNet圖像上訓練的VGGNet16[16]和ResNet50作為預(yù)訓練模型。其中方法1表示以ResNet50結(jié)合多尺度注意力機制,采用未改進的BiLSTM網(wǎng)絡(luò)對多標簽數(shù)據(jù)進行分類實驗。本文方法采用預(yù)訓練ResNet50與多尺度注意力機制相結(jié)合的方式對圖像特征進行提取,結(jié)合改進型BiLSTM網(wǎng)絡(luò)挖掘UCM多標簽數(shù)據(jù)集標簽之間相關(guān)性信息。對比試驗結(jié)果如表3所示。
表3 UCM多標簽數(shù)據(jù)集實驗結(jié)果
Tab.3 UCM multi-label dataset experimental result
模型精確率/%召回率/%F1值VGGNet1678.0878.110.781ResNet5080.6982.290.815文獻[14]78.0886.350.82方法182.2283.170.827本文方法85.3387.050.862
從實驗結(jié)果可以看出,本文方法的分類性能相比于標準的卷積神經(jīng)網(wǎng)絡(luò)均有所提升。同時,本文對雙向長短期記憶網(wǎng)絡(luò)進行了改進,對比于方法1采用的傳統(tǒng)長短期記憶網(wǎng)絡(luò)的方法,模型的精確率提高了3.11%,模型的召回率提高了3.88%,驗證了對傳統(tǒng)BiLSTM網(wǎng)絡(luò)改進的有效性。本文實驗的部分分類預(yù)測結(jié)果如表4所示。
表4 UCM多標簽數(shù)據(jù)集測試樣例結(jié)果
表4中,小括號中的值代表假正例,表示原圖中不存在而模型誤測出的類別,即誤識。中括號中的值代表假負例,表示圖像中存在而模型沒有預(yù)測出的類別,即漏識。
從表4可以看出,本文模型可以檢測出多標簽航空圖像中絕大部分的標簽類別,但在個別情形下發(fā)生了漏識或誤識的情況。究其原因,在類別特征區(qū)分度不高,多個相似類別的特征混雜在一起的情況下,則可能會導(dǎo)致誤識的發(fā)生。例如表4中第2張測試圖像,“Grass”,“Chaparral”,“Trees”的圖像特征具有一定相似性,并且“Chaparral”這一類別的物體在圖像中特征區(qū)分度較弱,因此所有模型都對“Chaparral”這一類別產(chǎn)生了誤識。同時,對于圖像中目標較小的物體,由于物體特征不明顯,因此導(dǎo)致漏識情況的發(fā)生。例如表4中最后一張圖像,“Grass”這一類別的物體在圖像中占比較小,所有模型都對“Grass”這一類別產(chǎn)生了漏識。但同時也可以看出,本文模型的多標簽分類方法相比于傳統(tǒng)方法,誤識和漏識的情況得到了明顯地改善,識別準確率有了較大提升,體現(xiàn)出了本文模型良好的多標簽分類性能。
針對航空圖像多標簽分類問題,本文提出了一種基于循環(huán)神經(jīng)網(wǎng)絡(luò)的航空圖像多標簽分類方法。通過將多尺度注意力圖嵌入預(yù)訓練的ResNet50卷積神經(jīng)網(wǎng)絡(luò)中對圖像進行特征提取。在模型層中加入批歸一化層,提高模型的泛化能力。針對標簽序列,采用改進的BiLSTM網(wǎng)絡(luò)進行序列特征提取,增加了BiLSTM網(wǎng)絡(luò)輸入門到輸出門之間的連接,使得輸入狀態(tài)更好地控制每一內(nèi)存單元輸出的信息。通過這種設(shè)計,模型輸出是結(jié)構(gòu)化的序列,而不是離散的值。最后,本文在UCM多標簽數(shù)據(jù)集上進行了實驗。實驗結(jié)果表明,本文方法相比于VGGNet16模型,精確率提高了7.25%,召回率提高了8.94%。相比于ResNet50模型,精確率提高了4.64%,召回率提高了4.76%。相比于傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)模型,本文方法表現(xiàn)出了良好的多標簽分類性能。但對于圖像中類別特征不明顯或特征之間區(qū)分度不高的情況下,本文模型也會存在漏識或誤識的情況,如何針對性地解決這一問題將是本文下一步的研究重點。