任永梅 楊 杰 郭志強(qiáng) 曹 輝
①(武漢理工大學(xué)信息工程學(xué)院寬帶無線通信與傳感器網(wǎng)絡(luò)湖北省重點(diǎn)實(shí)驗(yàn)室 武漢430070)
②(湖南工學(xué)院電氣與信息工程學(xué)院 衡陽421002)
船舶圖像分類是海上安全和交通管理中的一個(gè)重要問題,它廣泛應(yīng)用于民用和軍事領(lǐng)域[1,2]。實(shí)際場景中的船舶圖像不僅背景復(fù)雜,不同的光照強(qiáng)度、視角等也會(huì)對分類性能產(chǎn)生影響,因此船舶圖像分類已經(jīng)成為模式識(shí)別領(lǐng)域的研究熱點(diǎn)之一。
現(xiàn)有船舶圖像分類方法主要分為基于傳統(tǒng)特征的分類方法和基于卷積神經(jīng)網(wǎng)絡(luò)的分類方法。傳統(tǒng)特征主要有方向梯度直方圖(Histogram of Oriented Gradients,HOG)[3]、尺度不變特征變換(Scale-Invariant Feature Transform,SIFT)[4]以及局部二值模式(Local Binary Pattern,LBP)[5]等。傳統(tǒng)特征是目標(biāo)的底層視覺特征,在表達(dá)圖像的能力上有較大局限性,并且需要依賴專家知識(shí),通用性差。近年來,隨著深度學(xué)習(xí)技術(shù)的快速發(fā)展,卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)成為許多學(xué)者的研究熱點(diǎn),并成功運(yùn)用在圖像分類[6]、目標(biāo)檢測[7]以及行人檢測[8]等領(lǐng)域。文獻(xiàn)[9]提出AlexNet和極限學(xué)習(xí)機(jī)結(jié)合的分類方法,在Fleetmoom船舶圖像庫上的分類準(zhǔn)確率達(dá)到了94%。文獻(xiàn)[10]提取多個(gè)船舶分類特征組成特征向量集,并將特征向量集作為深度學(xué)習(xí)算法的輸入,建立船舶分類模型。文獻(xiàn)[11]提出一種集成多特征的卷積神經(jīng)網(wǎng)絡(luò)(MECNN)對光學(xué)遙感船舶圖像進(jìn)行分類。文獻(xiàn)[12]提出用多分辨率CNN對TerraSAR-X圖像進(jìn)行船舶分類,不同的通道連接不同分辨率的原始圖像,所有通道具有固定的2.5 m的像素空間和128×128的圖像尺寸。但圖像分辨率的變化是如何影響CNN內(nèi)部激活的,還需要進(jìn)行更多的實(shí)驗(yàn)。文獻(xiàn)[13]提出“中心—擴(kuò)散池化”CNN和“前景—擴(kuò)散池化”CNN,對可視化船舶圖像進(jìn)行分類,在其自建數(shù)據(jù)集上的分類準(zhǔn)確率達(dá)到92.8%。
上述研究中,都是利用單一尺度的CNN進(jìn)行船舶圖像分類,對不同種類的樣本的分類具有不確定性,分類準(zhǔn)確率還需進(jìn)一步提高。近年來,決策融合技術(shù)受到模式識(shí)別領(lǐng)域的學(xué)者的關(guān)注,其依據(jù)各個(gè)數(shù)據(jù)源的單獨(dú)決策結(jié)果在融合中心進(jìn)行關(guān)聯(lián)處理,做出最終的決策,使得融合方法比單個(gè)分類器在決策時(shí)出錯(cuò)更少[14]。因此,本文針對單一尺度CNN在船舶圖像分類中的精度需要進(jìn)一步提高的問題,提出一種多尺度CNN的自適應(yīng)熵加權(quán)決策融合船舶圖像分類方法。在該方法中,先使用3個(gè)不同的子網(wǎng)絡(luò)提取多尺度下的船舶圖像特征,并利用Softmax函數(shù)輸出的概率值計(jì)算信息熵,保證對不同輸入船舶圖像賦予自適應(yīng)的權(quán)重;最后對3個(gè)不同子網(wǎng)絡(luò)的Softmax輸出值進(jìn)行自適應(yīng)熵加權(quán)決策融合處理以實(shí)現(xiàn)對船舶圖像的高精度分類,同時(shí)確保提高模型的穩(wěn)定性和魯棒性。通過與其他方法的對比,發(fā)現(xiàn)本文方法能取得良好的分類效果。
卷積神經(jīng)網(wǎng)絡(luò)(CNN)是一個(gè)多層感知機(jī),使用局部連接和權(quán)值共享方式,可以降低網(wǎng)絡(luò)訓(xùn)練參數(shù)的數(shù)量。單一尺度的CNN在執(zhí)行圖像分類任務(wù)時(shí)需要輸入固定尺寸的圖像[15],而實(shí)際環(huán)境中的圖像大小往往是多樣化的。雖然可以經(jīng)過縮放等預(yù)處理步驟將圖像尺寸調(diào)整為CNN需要的大小,但這會(huì)影響圖像的分類準(zhǔn)確率。在卷積過程中,網(wǎng)絡(luò)感受野在不同尺寸的圖像塊上的占比不同,大尺寸的圖像塊進(jìn)行卷積操作后得到的特征信息更豐富,也能更好地反映圖像的局部特征,小尺寸的圖像塊進(jìn)行卷積操作后得到的特征則能更好地反映圖像的全局特征[16]。因此本文將使用多尺度CNN對不同尺寸輸入船舶圖像進(jìn)行特征提取,可以得到更多的圖像特征,并通過Softmax函數(shù)獲得不同尺度船舶圖像的輸出概率值。
本文選擇3個(gè)并行的子網(wǎng)絡(luò)組成如圖1所示的多尺度CNN,圖1中分別使用文獻(xiàn)[17]中提出的卷積神經(jīng)網(wǎng)絡(luò),命名為CNN1、文獻(xiàn)[12]中的卷積神經(jīng)網(wǎng)絡(luò),命名為CNN2以及AlexNet[6](命名為CNN3)來提取船舶圖像的多尺度特征。因?yàn)樯鲜?個(gè)網(wǎng)絡(luò)的輸入圖像尺寸不同,分別覆蓋了小尺寸、中尺寸和大尺寸圖像,網(wǎng)絡(luò)深度不同,同時(shí)在單一尺度輸入樣本情況下可以提取到比較有用的特征。另外與其他網(wǎng)絡(luò)模型如ResNet-34、GoogLeNet、VGG-16和VGG-19等深層網(wǎng)絡(luò)相比,上述網(wǎng)絡(luò)具有層數(shù)少、參數(shù)量少等優(yōu)點(diǎn)。
圖1 多尺度卷積神經(jīng)網(wǎng)絡(luò)
(1)CNN1:CNN1的輸入圖像尺寸要求為56×56的船舶圖像,有4個(gè)卷積層,2個(gè)池化層,2個(gè)全連接層,1個(gè)Softmax層,卷積層步長為1,池化層步長為2。網(wǎng)絡(luò)結(jié)構(gòu)和具體參數(shù)如圖2所示。卷積層和全連接層使用的激活函數(shù)為修正線性單元(Rectified Linear Units,ReLU)函數(shù),相比Sigmoid和tanh等激活函數(shù),ReLU函數(shù)具有能夠加速收斂、緩解過擬合等特點(diǎn)。圖2中Conv1-32@(5×5)表示第1個(gè)卷積層的濾波器個(gè)數(shù)為32,卷積核尺寸為5×5,Max Pooling1(2×2)表示第1個(gè)最大池化層的卷積核大小為2×2,FC1-384表示第1個(gè)全連接層將第4個(gè)卷積層的特征映射連接得到384個(gè)1× 1維的神經(jīng)元,Softmax-6(4)表示利用Softmax函數(shù)得到6個(gè)或4個(gè)輸出決策類別,6和4分別對應(yīng)文中的兩個(gè)數(shù)據(jù)集的船舶類型數(shù)目(見5.1節(jié))。
(2)CNN2:CNN2的輸入圖像尺寸要求為128×128的船舶圖像,有4個(gè)卷積層,4個(gè)池化層,1個(gè)全連接層,1個(gè)Softmax層,卷積層步長為1,池化層步長為2。網(wǎng)絡(luò)結(jié)構(gòu)和具體參數(shù)如圖3所示。全連接層使用的激活函數(shù)為Sigmoid函數(shù)。
(3)CNN3:AlexNet在本文中用CNN3表示,CNN3網(wǎng)絡(luò)的輸入圖像尺寸要求為227×227的船舶圖像,有5個(gè)卷積層,3個(gè)池化層,2個(gè)全連接層,1個(gè)Softmax層。卷積層和全連接層使用的激活函數(shù)為ReLU函數(shù)。
可以看出以上3個(gè)子網(wǎng)絡(luò)在最后一個(gè)全連接層均使用Softmax函數(shù)來進(jìn)行分類,Softmax函數(shù)的輸出為概率型,表示輸入樣本屬于每一類的概率。
最大輸出概率決策融合方法是一種最簡單的決策融合方法,該方法通過對不同子分類器輸出的概率計(jì)算出最大值的方式來求出輸入圖像最終的所屬類別。如果每個(gè)分類器的輸出概率的最大值出現(xiàn)在同一類別上,決策結(jié)果就沒有變化,然而,隨著概率的變化,決策的可能性有很大的不同。這種方法沒有涉及各個(gè)分類器在決策融合時(shí)所占的權(quán)重,然而每個(gè)分類器所占的融合權(quán)重決定著決策融合的分類效果。不同尺寸的圖像經(jīng)過多尺度CNN提取的特征不同,并且樣本具有一定的隨機(jī)性,所以需要制定一個(gè)適合船舶圖像的決策方法,進(jìn)而獲得最優(yōu)的分類性能。本文使用自適應(yīng)熵加權(quán)決策融合方法為不同輸入船舶圖像賦予不同融合權(quán)重,進(jìn)一步提高算法的分類準(zhǔn)確率,同時(shí)確保模型具有更好的穩(wěn)定性和魯棒性。本文的多尺度CNN是由3個(gè)CNN組成,因此1個(gè)輸入船舶圖像的分類結(jié)果就由3個(gè)Softmax函數(shù)的輸出概率值進(jìn)行自適應(yīng)熵加權(quán)決策融合得到最終分類結(jié)果。具體的自適應(yīng)熵加權(quán)決策融合算法如下。
采用多尺度CNN的3個(gè)Softmax函數(shù)并行輸出時(shí),可以得到每個(gè)輸入船舶圖像的概率輸出矩陣為
其中,每一行代表1個(gè)子網(wǎng)絡(luò)的Softmax函數(shù)對輸入樣本x的概率輸出值,n表示船舶種類數(shù),每一行概率最大的列標(biāo)即為每個(gè)子網(wǎng)絡(luò)的Softmax函數(shù)對該樣本的預(yù)測類別。輸入樣本x屬于每一類的概率值的特點(diǎn)將對分類準(zhǔn)確率產(chǎn)生影響,具體為,如果各個(gè)概率值的差別越小,分類的不確定性就越大;如果最大的概率值與其他概率值的差別越大,則分類結(jié)果越可靠。因此,本文引入如式(2)所示的信息熵[18]H i(x) 來表征輸入樣本x被第i個(gè)子網(wǎng)絡(luò)的Softmax函數(shù)分類的不確定性。
圖2 CNN1網(wǎng)絡(luò)結(jié)構(gòu)和參數(shù)
圖3 CNN2網(wǎng)絡(luò)結(jié)構(gòu)和參數(shù)
自適應(yīng)熵加權(quán)決策融合算法充分考慮了不同子網(wǎng)絡(luò)的Softmax函數(shù)對相同的輸入船舶圖像的分類性能不同以及同一個(gè)子網(wǎng)絡(luò)的Softmax函數(shù)對不同的輸入船舶圖像的分類性能也有差異的特性,自適應(yīng)地對不同的輸入船舶圖像賦予更為合理的融合權(quán)重,同時(shí)解決了單一尺度CNN由于Softmax函數(shù)輸出的概率值過于接近而造成的誤分類問題。
本文提出的方法主要包括訓(xùn)練過程和自適應(yīng)熵加權(quán)決策融合測試過程。具體實(shí)現(xiàn)如下:
(1)訓(xùn)練過程:使用“從頭開始訓(xùn)練”(training CNN network from scratch)的方法訓(xùn)練3個(gè)子網(wǎng)絡(luò),訓(xùn)練的目的是尋找最優(yōu)參數(shù),以最小化損失函數(shù)。數(shù)據(jù)集的訓(xùn)練樣本(見5.1節(jié))經(jīng)過預(yù)處理后分別送入3個(gè)CNN中進(jìn)行特征提取,利用Softmax函數(shù)得到船舶圖像的預(yù)測類別,計(jì)算預(yù)測類別標(biāo)簽和真實(shí)類別標(biāo)簽之間的誤差,通過反向傳播過程調(diào)整權(quán)值和偏差,使誤差最小化,得到不同子網(wǎng)絡(luò)的最優(yōu)模型并進(jìn)行保存。
(2)自適應(yīng)熵加權(quán)決策融合測試過程:測試樣本預(yù)處理后,輸入到多尺度CNN中提取特征,分別調(diào)用訓(xùn)練好的3個(gè)最優(yōu)模型進(jìn)行測試,得到Softmax輸出的概率值,最后利用自適應(yīng)熵加權(quán)決策融合算法得到最終的分類結(jié)果。本文方法的總體流程圖如圖4所示。
本文采用雙3次插值方法調(diào)整每幅圖像的大小。對于CNN1,CNN2和CNN3,將圖像分別預(yù)處理為64×64像素、147×147像素和256×256像素,將輸入到以上3個(gè)子網(wǎng)絡(luò)的訓(xùn)練樣本分別隨機(jī)裁剪為56×56像素、128×128像素和227×227像素;測試集樣本僅作中心裁剪。對訓(xùn)練樣本進(jìn)行隨機(jī)裁剪,不僅能夠增加訓(xùn)練數(shù)據(jù),保證樣本的隨機(jī)性,避免過擬合,而且保留了圖像的重要信息。同時(shí),我們也使用了隨機(jī)水平翻轉(zhuǎn)等數(shù)據(jù)增強(qiáng)方法,進(jìn)一步提升模型的魯棒性和泛化能力。
實(shí)驗(yàn)仿真環(huán)境為Inter(R)Core(TM)i9-7980XE@2.6 GHz,內(nèi)存32 GB,顯卡NVIDIA TITAN Xp Pascal,采用Python3.5,Pytorch框架編程實(shí)現(xiàn)所有實(shí)驗(yàn)。
圖4 本文方法的總體流程圖
本文使用的第1個(gè)數(shù)據(jù)集是VAIS數(shù)據(jù)集[19],包括2865幅圖像(1623幅可視化圖像,1242幅紅外圖像)。該數(shù)據(jù)集包含6種粗粒度類別,分別為mediums“other”ships,merchant ships,medium passenger ships,sailing ships,small boats,tugboats。本文僅選擇可視化圖像,隨機(jī)選取共873幅為訓(xùn)練圖像,剩余750幅為測試圖像,訓(xùn)練集和測試集樣本數(shù)量如表1所示。第2個(gè)數(shù)據(jù)集是自建數(shù)據(jù)集[17],包括9000幅船舶圖像。該數(shù)據(jù)集包含4種類別,分別為散貨船、集裝箱船、客船以及帆船。從數(shù)據(jù)集中隨機(jī)選取共7201幅為訓(xùn)練圖像,剩余1799幅為測試圖像,訓(xùn)練集和測試集樣本數(shù)量如表2所示。
本文使用分類準(zhǔn)確率(Accuracy,Acc)、誤分類樣本數(shù)、每幅圖的特征提取時(shí)間以及混淆矩陣來評價(jià)船舶圖像分類效果。分類準(zhǔn)確率是分類正確的樣本數(shù)占樣本總數(shù)的比例,如式(6)所示
誤分類樣本數(shù)是總樣本數(shù)與錯(cuò)誤率(1?Acc)的乘積?;煜仃嚤硎痉诸惼魈幚矶喾诸悊栴}時(shí)造成的混淆情況,橫軸表示預(yù)測類別,縱軸表示真實(shí)類別,對角線上的值表示每類圖像被正確分類的個(gè)數(shù)。
為驗(yàn)證本文方法的有效性,將本文方法與單一尺度CNN分類方法以及近幾年代表性的幾種分類方法在相同實(shí)驗(yàn)條件下作了比較。本文使用隨機(jī)梯度下降算法(SGD)最小化交叉熵?fù)p失函數(shù),迭代更新卷積神經(jīng)網(wǎng)絡(luò)權(quán)重。不同子網(wǎng)絡(luò)訓(xùn)練得到最優(yōu)模型的參數(shù)設(shè)置如下:
表1 VAIS數(shù)據(jù)集的訓(xùn)練樣本和測試樣本數(shù)量
表2 自建數(shù)據(jù)集的訓(xùn)練樣本和測試樣本數(shù)量
對于文中使用的兩個(gè)數(shù)據(jù)集,CNN1,CNN2和CNN3的學(xué)習(xí)率均為0.001,動(dòng)量參數(shù)均為0.9,批處理樣本數(shù)量(batch size)均為32,丟棄率(dropout)均為0.5。不同的是對于VAIS數(shù)據(jù)集,CNN1的權(quán)重衰減系數(shù)取0.0005,學(xué)習(xí)周期為269。CNN2和CNN3的權(quán)重衰減系數(shù)均為0.0001,學(xué)習(xí)周期分別為572和276。對于自建數(shù)據(jù)集,CNN1的權(quán)重衰減系數(shù)取0.0005,學(xué)習(xí)周期為97。CNN2和CNN3的權(quán)重衰減系數(shù)均為0.0001,學(xué)習(xí)周期分別為70和30。
5.3.1與單一尺度CNN分類方法的對比
表3和表4為單一尺度CNN分類方法及本文方法在兩個(gè)數(shù)據(jù)集上的分類準(zhǔn)確率和對于每幅圖像用于特征提取的平均時(shí)間消耗??梢钥闯?,本文方法的分類準(zhǔn)確率最高,因?yàn)槎喑叨菴NN提取了更豐富的船舶圖像特征并且決策策略考慮了各個(gè)子網(wǎng)絡(luò)的Softmax函數(shù)針對不同輸入樣本分類性能不同的特性,確定了更為合理的融合權(quán)重。由于進(jìn)行了決策融合,所以本文方法對于每幅圖像用于特征提取的平均時(shí)間消耗比單一尺度CNN分類方法的特征提取時(shí)間稍高,但0.391 ms和0.396 ms的時(shí)間消耗也是比較快的,在可接受范圍內(nèi),實(shí)際應(yīng)用中也不會(huì)產(chǎn)生很大的影響。
為了進(jìn)一步驗(yàn)證本文方法的性能,表5和表6列出了單一尺度CNN分類方法及本文方法在兩個(gè)數(shù)據(jù)集上對每一類的分類準(zhǔn)確率??梢钥闯霰疚姆椒ū葐我怀叨菴NN分類方法表現(xiàn)出更好的分類性能,對于VAIS數(shù)據(jù)集,本文方法對于除medium-passenger之外的其余5類船舶圖像的分類準(zhǔn)確率都最高,對med ium-p assenger的分類準(zhǔn)確率比CNN 2和CNN3方法對medium-passenger的分類準(zhǔn)確率有提升,但低于CNN1方法對medium-passenger的分類準(zhǔn)確率。原因是CNN2和CNN3方法對于mediumpassenger的分類準(zhǔn)確率與它們對其他5類的分類準(zhǔn)確率相比是最低的,并且它們對于medium-passenger的分類準(zhǔn)確率與CNN1方法對于medium-passenger的分類準(zhǔn)確率相差較多;而對其他5類的分類準(zhǔn)確率都有提高,說明本文方法可以更好地解決單一尺度CNN網(wǎng)絡(luò)由于Softmax函數(shù)輸出的概率值過于接近而造成的誤分類問題。對于自建數(shù)據(jù)集,本文方法對散貨船、集裝箱船的分類準(zhǔn)確率提高最多。
表3 不同方法在VAIS數(shù)據(jù)集上的分類準(zhǔn)確率和對于每幅圖像用于特征提取的平均時(shí)間消耗
表4 不同方法在自建數(shù)據(jù)集上的分類準(zhǔn)確率和對于每幅圖像用于特征提取的平均時(shí)間消耗
表5 不同方法在VAIS數(shù)據(jù)集上對每一類的分類準(zhǔn)確率(%)
表6 不同方法在自建數(shù)據(jù)集上對每一類的分類準(zhǔn)確率(%)
5.3.2與近幾年代表性的分類方法的對比
為了進(jìn)一步驗(yàn)證本文方法的優(yōu)勢,將本文方法與近幾年代表性的分類方法進(jìn)行了對比,結(jié)果見表7和表8。從表7和表8可以看出,與其他幾種方法相比,本文方法的分類準(zhǔn)確率最高,誤分類樣本數(shù)最少,進(jìn)一步說明本文方法充分權(quán)衡了不同子網(wǎng)絡(luò)的分類性能和輸入船舶圖像的隨機(jī)性,為輸入船舶圖像分配了合理的融合權(quán)重,確保了多尺度輸入船舶圖像的分類魯棒性,在船舶圖像分類方面具有顯著的優(yōu)勢。
5.3.3本文方法的分類結(jié)果的混淆矩陣
圖5為本文方法在VAIS數(shù)據(jù)集和自建數(shù)據(jù)集上的分類結(jié)果的混淆矩陣。圖5(a)中:0為mediumother;1為merchant;2為medium-passenger;3為sailing;4為small;5為tug。圖5(b)中:0為散貨船;1為集裝箱船;2為客船;3為帆船。從圖5(a)可以看出,混淆主要發(fā)生在第0類和第4類之間,第2類和第3類之間以及第2類和第4類之間。VAIS數(shù)據(jù)集中的medium-other船舶包括fishing,medium other;small船舶包括speedboat, jetski,smaller pleasure,larger pleasure。因此,一些small和mediumother有很高的相似性。數(shù)據(jù)集中的有些mediumpassenger和sailing的圖像是模糊的,一些mediumpassenger和small也有相似性。因此決策融合后有些medium-passenger仍被錯(cuò)分為sailing和small。從圖5(b)可以看出,混淆主要發(fā)生在第0類和第1類之間,第1類和第2類之間,因?yàn)樯⒇洿图b箱船的船長很接近,有的散貨船和集裝箱船類似。另外,有些集裝箱船和客船從外觀上遠(yuǎn)距離看比較類似。
表7 本文方法與其他方法在VAIS數(shù)據(jù)集上的分類準(zhǔn)確率和誤分類樣本數(shù)
表8 本文方法與其他方法在自建數(shù)據(jù)集上的分類準(zhǔn)確率和誤分類樣本數(shù)
圖5 本文方法的分類結(jié)果的混淆矩陣。
本文提出了一種基于多尺度CNN的自適應(yīng)熵加權(quán)決策融合船舶圖像分類方法。該方法首先使用3個(gè)不同的CNN得到輸入樣本的Softmax函數(shù)的輸出概率值,然后使用自適應(yīng)熵加權(quán)決策融合方法得到最終的分類結(jié)果。自適應(yīng)熵加權(quán)決策融合可以綜合考慮不同子網(wǎng)絡(luò)的Softmax函數(shù)對輸入樣本的分類結(jié)果的不同,自適應(yīng)地確定了比較合理的融合權(quán)重。為了驗(yàn)證本文方法的有效性,在VAIS數(shù)據(jù)集和自建的船舶圖像數(shù)據(jù)集上分別進(jìn)行了實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果表明,與單一尺度CNN分類方法以及近幾年代表性的方法相比,本文方法的分類性能都有較大提升。在以后的研究中,可以考慮研究進(jìn)一步優(yōu)化分類模型等方面的工作。