劉相云,龔志輝,金 飛,楊 光,范煒康
(信息工程大學(xué),河南 鄭州 450001)
衛(wèi)星影像拍攝質(zhì)量的大幅提高使得利用遙感影像進行目標識別成為可能。飛機是現(xiàn)代社會中必不可少的工具,利用遙感影像進行飛機目標識別無論是在民航上的飛機飛行情況監(jiān)督,還是軍事上的掌握敵機部署情況都有廣泛的應(yīng)用前景。因此,飛機目標的檢測識別一直是備受關(guān)注的研究課題,也有不少有效的檢測識別算法被提出。
目前,飛機目標識別算法主要可分為4類:①模板匹配[1]算法,該算法是傳統(tǒng)飛機目標識別中常用的算法;②基于不變矩[2-6]的算法,可以提取多種不變矩,完成對飛機目標的識別;③基于顯著圖的算法[7-9],即使用顯著圖去除復(fù)雜背景[10]進行識別;④基于機器學(xué)習(xí)[5]和神經(jīng)網(wǎng)絡(luò)[11]的算法,已經(jīng)將深度學(xué)習(xí)[12]運用到飛機目標識別中。上述4類方法從不同角度對飛機目標識別進行了研究,取得了一定的效果,但是也存在一些問題。如模板匹配算法過程過于簡單,精度不高;基于不變矩的算法在一定程度上提高了識別精度,但是提高程度有限;基于顯著圖的算法容易造成誤檢及漏檢;機器學(xué)習(xí)算法中淺層的算法如SVM(support vector machine)等還需要改進,深度學(xué)習(xí)算法則存在訓(xùn)練時間過長的問題。針對這些問題,本文提出了一種視覺顯著圖和多種特征融合的基于深度置信網(wǎng)絡(luò)的飛機目標識別算法。算法在粗定位階段提取影像的視覺顯著圖,定位顯著目標的位置;在精確識別階段提取顯著目標的顏色、紋理、形狀等多種特征,然后使用深度置信網(wǎng)絡(luò)進行飛機目標的識別,不僅克服了單一特征的局限性,同時也避免了深度網(wǎng)絡(luò)從像素級直接進行訓(xùn)練速度緩慢的現(xiàn)象。
本文算法主要由兩部分組成:一是目標的粗定位,二是目標的精確識別,其流程如圖1所示。
具體步驟為:①使用HC算法處理影像,提取影像的顯著目標;②使用Ostu算法對顯著圖進行二值化,通過標記連通區(qū)域來定位候選目標;③提取候選目標及樣本庫影像的顏色、紋理、形狀特征,形成多維特征向量,并對特征向量進行歸一化;④使用訓(xùn)練集對DBN進行訓(xùn)練,并使用訓(xùn)練過程中得到的權(quán)重及偏置對測試集進行測試,最后用訓(xùn)練好的DBN網(wǎng)絡(luò)識別粗定位階段標記的候選目標,判斷是否為飛機目標。
粗定位主要運用直方圖對比度(HC)算法,該算法由文獻[13]于2011年提出,效率較高且效果良好,主要目的是將影像中的顯著目標檢測出來。HC算法根據(jù)圖像的色彩統(tǒng)計特征來確定圖像的顯著性,即圖像中某像素與其他像素的顏色對比度即為這個像素的顯著值。如圖像中的某像素Ik,其顯著值可表示為
(1)
式中,I為圖像,把圖像中像素排成一列;Ik和Ii為第k和第i個像素;D(IK,Ii)為像素Ik和像素Ii在CIELab彩色空間上的顏色歐氏距離。將相同顏色的像素分為一組,即可以獲取顏色不同的像素的顯著值為
(2)
式(2)表示第k個像素的顏色為圖像中第i個顏色ci。圖像里總的顏色數(shù)目為n;fj為顏色ci在圖像I中出現(xiàn)的次數(shù)。
由于一幅圖像所包含的顏色數(shù)量很龐大,HC算法通過量化RGB空間中各個通道的顏色來減少顏色數(shù)量,從而減少計算量。在量化過程中,相近的顏色可能被量化為不同的值,HC算法通過平滑每種顏色的顯著值來降低這種情況引起的誤差,即使用與每種顏色最相近的m種顏色顯著值的加權(quán)平均來代替其顯著值,平滑公式為
(3)
經(jīng)過HC算法提取顯著目標后,能夠濾除背景圖像,突出圖中飛機等候選目標,只需再把顯著圖轉(zhuǎn)化為二值圖像,就能夠通過二值化圖像定位顯著目標。本文使用Ostu算法對顯著圖進行二值化,隨后,用外接矩形將連通區(qū)域標記出來,完成目標的粗定位。
在粗定位完成之后,還會存在一些干擾目標,如房屋建筑等,需要進行精確識別剔除干擾目標。本文采用了提取目標顏色、形狀、紋理[14]等多種特征,最后與深度置信網(wǎng)絡(luò)結(jié)合進行分類識別的方法。
進行飛機目標識別時,先提取飛機目標的特征,單一特征很難具有足夠辨識度,本文采用提取多種特征的方式,主要提取了目標的顏色、紋理、形狀這3種類型的特征,包括9個顏色矩、6個Tamura特征、8個灰度共生矩陣、7個Hu不變矩、36個邊緣方向直方圖,組成多維的特征向量并進行歸一化,提高識別準確性。
深度學(xué)習(xí)通過組合底層特征形成更抽象的高層表示或特征,從而發(fā)現(xiàn)數(shù)據(jù)分布的特征表示[15]。深度置信網(wǎng)絡(luò)(deep belief networks,DBN)是由限制波爾茲曼機擴展而來的一種深度架構(gòu)的推廣,由Geoffrey Hinton在2006年提出,是包含多個隱層(隱層數(shù)大于2)的概率生成模型,可以對非線性數(shù)據(jù)進行有效訓(xùn)練。
深度置信網(wǎng)絡(luò)由多層限制波爾茲曼機(restricted boltzmann machine,RBM)組成,RBM是一個由可視層(記為v)和隱含層(記為h)組成的深度學(xué)習(xí)算法,RBM中的可視層與隱含層兩層的層內(nèi)節(jié)點之間是條件相互獨立,沒有關(guān)聯(lián)的。因此,可視層和隱含層的全概率分布滿足下式
p(h|v)=p(h1v)=…=p(hnv)
(4)
式中,v為可視層狀態(tài)向量;h為隱含層狀態(tài)向量。求解最小化損失函數(shù)之后,就能得到可視層和隱含層之間的權(quán)值W。RBM的訓(xùn)練過程實際上是求出一個最能產(chǎn)生訓(xùn)練樣本的概率分布。也即要求在一個分布里,訓(xùn)練樣本的概率最大,由于這個分布的決定性因素在于權(quán)值W,因此訓(xùn)練RBM的目標就是尋找最佳的權(quán)值。圖2即為RBM模型。深度置信網(wǎng)絡(luò)的結(jié)構(gòu)與RBM相同,都是通過權(quán)重層W把層與層之間聯(lián)系起來,層內(nèi)節(jié)點相互獨立。深度置信網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示。
DBN的訓(xùn)練過程主要分為兩步:一是分別單獨無監(jiān)督地訓(xùn)練每一層RBM網(wǎng)絡(luò),確保特征向量映射到不同的特征空間時,都盡可能多地保留特征信息;二是在DBN的最后一層設(shè)置BP網(wǎng)絡(luò),接收RBM的輸出特征向量作為它的輸入特征向量,有監(jiān)督地訓(xùn)練實體關(guān)系分類器。本文算法的DBN采用4個RBM組成的結(jié)構(gòu),其結(jié)構(gòu)為:66-100-100-100-2。在第4層中加入sigmoid函數(shù),作為最終結(jié)果的輸出層。
本文試驗環(huán)境為Windows 10系統(tǒng)下的Matlab 2014a,電腦硬件配置為Inter(R)Core(TM)i5-6300HQ CPU @2.30 GHz,8 GB內(nèi)存,465 GB硬盤,試驗數(shù)據(jù)來源于Google Earth,共1400幅飛機影像和700幅背景影像作為樣本集,其中1200幅飛機影像及600幅背景影像作為訓(xùn)練樣本,200幅飛機影像和100幅背景影像作為測試樣本,訓(xùn)練樣本不參與測試,樣本集影像統(tǒng)一縮放為64×64像素,另外選取75幅機場影像用來識別。樣本影像如圖4所示。
試驗各步驟結(jié)果如圖5所示,從圖5(b)可以看出,提取顯著圖后,原始影像中無意義的背景被去除,突出了顯著目標;經(jīng)過Ostu閾值分割得到圖5(c)二值化影像,顯著目標視覺效果明顯,但是還存在不少噪音,需要進行去噪,去除連通區(qū)域面積較小的目標;為了避免飛機目標的部分機身被當(dāng)作噪音去除,在去噪之前先進行形態(tài)學(xué)膨脹,結(jié)果如圖5(d)所示;隨后去除面積較大的干擾目標,得到圖5(e)的結(jié)果,此時圖中僅剩飛機目標及少量干擾目標,標記連通區(qū)域,得到圖5(f)的結(jié)果;再在原圖中進行標記,即可得到圖5(g)的粗定位結(jié)果;粗定位完成后經(jīng)過DBN分類,得到圖5(h)最終識別結(jié)果。
DBN網(wǎng)絡(luò)的層數(shù)很大程度上影響著網(wǎng)絡(luò)對數(shù)據(jù)的擬合精度,為了驗證最佳隱含層層數(shù),對層數(shù)為1、2、3、4這4種情況分別進行試驗,網(wǎng)絡(luò)分類精度見表1。
表1 不同深度DBN網(wǎng)絡(luò)分類正確率比較
從表1可以看出,本文選用的3層隱含層的結(jié)構(gòu)分類正確率最高,達到94.33%,當(dāng)層數(shù)增加到4時,分類正確率反而下滑,這是由于網(wǎng)絡(luò)深度增加更容易陷入局部最優(yōu)點,使分類正確率不高。
為了驗證組合特征與單一特征對網(wǎng)絡(luò)分類效果的影響,用測試樣本分別測試了單一特征和組合特征下DBN網(wǎng)絡(luò)的分類正確率,結(jié)果見表2。從表2可以看出,單一特征中使用邊緣方向直方圖分類正確率最高,為84.67%,而使用本文算法的組合特征對網(wǎng)絡(luò)進行訓(xùn)練,正確率達到94.33%,顯然高于單一特征算法。
表2 單一特征與本文算法DBN網(wǎng)絡(luò)分類正確率比較 (%)
為了評價飛機目標識別效果,本文選用檢測率(DR)和虛警率(FA)[16]作為評價指標。飛機的檢測率是指算法所檢測出的飛機目標數(shù)量占所有飛機目標的比重,可以定義為
(5)
式中,DR為飛機檢測率;mi為檢測出的第i幅影像中的飛機目標數(shù)量;Ni為第i幅影像中飛機目標的總數(shù);n為試驗影像的總數(shù)。虛警率反映被判定為飛機的樣本中背景所占的比率。定義為
(6)
式中,F(xiàn)A為虛警率;FP為把非目標判斷為目標的數(shù)量;TP為正確識別的目標數(shù)量。用來識別的75幅影像中,含有飛機259架,檢測出255架,誤檢4架,檢測率為98.46%,虛警率為5.20%。本文算法與其他算法的對比結(jié)果見表3。
表3 不同識別算法性能對比 (%)
從表3可以看出,本文的HC算法與深度置信網(wǎng)絡(luò)結(jié)合進行飛機識別的檢測率明顯高于BP神經(jīng)網(wǎng)絡(luò)算法及SVM算法,虛警率也較低。圖6所示為在不同機場不同分辨率的飛機目標的識別結(jié)果。
本文提出了一種由粗到精的顯著圖和多特征結(jié)合的基于DBN的飛機目標識別算法。首先利用HC算法和Ostu算法對目標進行粗定位并標記候選目標,然后提取候選目標的多種特征進行融合,最后使用深度置信網(wǎng)絡(luò)進行分類識別。試驗結(jié)果表明,本文算法的檢測率為98.46%,虛警率為5.20%,能克服復(fù)雜背景的干擾。飛機識別的精度很大程度上取決于樣本庫的完善程度,下一步將繼續(xù)完善樣本數(shù)據(jù)庫以提高分類識別精度。