孔 頡,孫權(quán)森
(1.南京理工大學(xué)計算機科學(xué)與工程學(xué)院,南京 210094;2.江蘇科技大學(xué)計算機學(xué)院,鎮(zhèn)江 212100)
遙感圖像目標檢測是從一幅遙感圖像中檢測出所有目標物,并確定其類別信息。遙感圖像以其尺度多樣性、視角特殊性、多方向問題、小目標問題以及背景復(fù)雜度高等特殊性,為解譯圖像處理任務(wù)帶來了很大的挑戰(zhàn)。傳統(tǒng)的基于機器學(xué)習(xí)的遙感圖像目標檢測方法有K 近鄰法(K?nearest neighbour,KNN)[1]、支持向量機(Support vector machine,SVM)[2]和神經(jīng)網(wǎng)絡(luò)(Neural network,NN)[3]等。然而這些方法會面臨以下問題:(1)時間復(fù)雜度與樣本數(shù)相關(guān);(2)隨樣本集的增大,機器內(nèi)存空間需求不斷增大;(3)高效的特征提取方法與高效分類器的兼容性問題。
為解決以上問題,考慮引入哈希學(xué)習(xí)方法,提升檢測效率。哈希技術(shù)以其低存儲、高效率的優(yōu)勢已經(jīng)廣泛應(yīng)用于圖像處理領(lǐng)域。經(jīng)典的哈希方法包括局部敏感哈希(Locality sensitive hashing,LSH)[4]、譜哈希(Spectral hashing,SH)[5]、核哈希(Kernel supervised hashing,KSH)[6]以及監(jiān)督離散哈希(Super?vised discrete hashing,SDH)[7]方法等。然而,要直接引入到遙感圖像領(lǐng)域,需要考慮遙感的特殊性。在先前的工作中,通過將SDH 中引入仿射不變因子構(gòu)造仿射不變離散哈希(Affined invariant discrete hashing,AIDH),可以解決因遙感成像中出現(xiàn)的仿射變換引起的語義理解問題[8]。然而,遙感數(shù)據(jù)的復(fù)雜性使得AIDH 在目標檢測的總體精度提升有限,一些漏判和誤判的問題難以解決。目前流行的深度學(xué)習(xí)方法具備超強的特征表達優(yōu)勢并且取得了不錯的效果,卻是對樣本集有很大的依賴性。從解決漏判和誤判問題入手,以傳統(tǒng)的數(shù)據(jù)驅(qū)動的目標檢測思想為指導(dǎo),通過引入空間信息的學(xué)習(xí)提升檢測精度。于是,引入條件隨機場模型[9],利用其在標簽學(xué)習(xí)方面的優(yōu)勢,通過對AIDH 的目標檢測結(jié)果進行鄰域空間信息學(xué)習(xí)與消息傳遞復(fù)原圖像中的目標區(qū)域。而為了更好地利用空間鄰域信息,通常采用超像素分割方式。本文使用了基于簡單線性迭代聚類(Simple linear iterative clustering,SLIC)生成超像素塊[10],既能滿足條件隨機場構(gòu)建概率無向圖的模型需求,也為AIDH 方法提供了機器學(xué)習(xí)所需的測試樣本。此外,在最終結(jié)果生成時為了更好地生成目標框,本文引入了一種基于凸殼邊界的最小外接矩形框生成方法,生成了一種更有效的、更能代表目標信息的檢測框[11?12]。
基于SLIC 的超像素分割方法,在2010年的MICCAI 上首先由Lucchi 等[13]提出,被用于醫(yī)學(xué)圖像處理中的細胞顯影,其后由Achanta 等將其應(yīng)用到自然圖像分割處理中,而逐漸為大家熟知[10]。該算法生成的超像素塊緊湊、均勻,并且運算速度、物體輪廓保持方面也都能滿足后續(xù)算法需求。該方法的主要思想是:首先確立以顏色和坐標為主體的相似性度量方式;再針對用戶需求(超像素塊個數(shù)k)使用種子生長的方式聚合相似的像素點,通過限定種子搜索范圍和超像素塊的連通性保證超像素塊都不會產(chǎn)生鄰域失衡的情況。
SLIC 的優(yōu)勢為:(1)生成的超像素做到了緊致性和均勻程度的平衡,有利于完成基于鄰域信息的機器學(xué)習(xí)任務(wù);(2)具有線性計算復(fù)雜度低、存儲效率高等優(yōu)點,能夠保持圖像的全局特性;(3)既可以分割彩色圖像,也可以用于分割灰度圖像;(4)算法需要設(shè)置的參數(shù)很少,只需要設(shè)置預(yù)分割的超像素塊數(shù)量即可。
監(jiān)督離散哈希的目標函數(shù)可以表示為
式中:X為樣本數(shù)據(jù)矩陣;W為哈希碼在C個分類上的投影矩陣;Y為樣本的標簽矩陣;B為哈希碼矩陣;H(X)為哈希函數(shù);λ1為投影矩陣的正則化參數(shù);λ2為懲罰因子。
哈希函數(shù)H(X)采用映射學(xué)習(xí)算法獲取,為保持樣本的非線性結(jié)構(gòu),采用如下形式
式中?(X) 為徑向基核映射產(chǎn)生的矩陣;矩陣P為降維矩陣。
依據(jù)多尺度自卷積(Multi?scale autoconvolution,MSA)特征提取的方法,圖像的仿射變換不會改變圖像所代表物體的語義信息[14]。由于仿射變換前后的圖像對應(yīng)著相同標簽?zāi)J筋惖男畔ⅲ敲纯梢詫⒎律浜髷U大的樣本加入訓(xùn)練樣本集,并加以仿射約束信息優(yōu)化原有目標函數(shù),生成更優(yōu)質(zhì)的具有仿射不變性的哈希碼。AIDH 的構(gòu)造如下。
定義R個旋轉(zhuǎn)角度α={α1,α2,…,αR}及其旋轉(zhuǎn)變換Tα={Tα1,Tα2,…,TαR},其中Tαi表示經(jīng)αi角度旋轉(zhuǎn)變換;定義S個縮放因子β={β1,β2,…,βS} 及其縮放變換Tβ={Tβ1,Tβ2,…,TβS},
其中Tβi表示βi倍縮放變換。那么仿射變換可表達為旋轉(zhuǎn)變換和縮放變換的笛卡爾積:Tα,β=Tα×Tβ。將Tα,β應(yīng)用于所有訓(xùn)練樣本X,結(jié)合原始訓(xùn)練集,即構(gòu)成了新的用于仿射不變離散哈希模型的樣本集Xα,β={X,Tα,β X}。
由于仿射變換前后不改變物體本身的語義信息,那么所得到的哈希碼應(yīng)該是相似的,生成的哈希碼對數(shù)據(jù)集具有仿射不變性。因此,可以在目標函數(shù)中添加仿射不變約束項,即有
式中:Tα,β xi={TαjTβk xi}表示樣本xi所有仿射變換張成的樣本子空間,而為樣本空間Tα,β xi對應(yīng)哈希碼的均值。
AIDH 的目標函數(shù)為
新的約束項可以使每個樣本生成哈希碼更接近于其張成的仿射樣本子空間的均值,從而實現(xiàn)整體樣本集Xα,β與其二值哈希編碼B盡可能相似。
AIDH 求解方案如下:
(1)P?step。固定B、W,優(yōu)化P。
(2)W?step。固定P、B,優(yōu)化W。
(3)B?step。固定W、P,優(yōu)化B。原問題等價于求解
式中:A=WY+λ2H(X)+表示矩陣的跡。
另受SDH 優(yōu)化方式的啟發(fā),采用梯度下降法按位求解哈希碼,可以獲得如下的閉解[15]
條件隨機場是建立在概率無向圖模型基礎(chǔ)的,在給定隨機變量X條件下,求隨機變量Y的馬爾可夫隨機場;其內(nèi)涵在于對無向圖中任意結(jié)點,其條件概率分布只和與之有連接的結(jié)點有關(guān),與其他結(jié)點無關(guān)。
設(shè)概率無向圖G=(V,E),當(dāng)無向圖每個頂點對應(yīng)的的數(shù)據(jù)X與其類別標簽Y滿足相同圖結(jié)構(gòu)的線性鏈條件隨機場。那么可以按照決定Y的因素,定義條件隨機場模型的參數(shù)形式為
式中Z為歸一化因子。其表達式為
在式(9)中,A(yi,X) 為一階勢能或自相關(guān)勢能,是指當(dāng)前頂點的特征信息對條件概率的影響;Iij(yi,yj,X)為二階勢能或交互勢能,表示空間相鄰頂點間的上下文信息對類別條件概率的影響;Ni代表與第i個頂點空間相鄰的超像素塊集合;j∈Ni是與頂點i空間相鄰的所有頂點組成的頂點集[16]。
本節(jié)重點介紹算法4 部分內(nèi)容:基于SLIC 的遙感圖像超像素分割,基于AIDH 的遙感圖像多目標分類,基于CRF 的標簽學(xué)習(xí)以及基于凸殼邊界的最小目標框生成。算法流程圖如圖1 所示。
圖1 基于AIDH?CRF 的目標檢測流程圖Fig.1 Flow chart of object detection based on AIDH?CRF
SLIC 是遙感圖像目標檢測的第一步,重點是將包含相似信息的區(qū)域聚合在同一個超像素塊中,這樣每個超像素塊都代表了目標或負樣本的信息,超像素塊成為了測試樣本的載體。
SLIC 的主要思想是,先確立以顏色和坐標為主體的相似性度量方式;再針對用戶需求(超像素塊個數(shù)k)使用種子生長的方式聚合相似的像素點在一起,通過限定種子搜索范圍和超像素塊的連通性保證超像素塊均勻分布。
SLIC 的基本步驟如下:
(1)對遙感圖像,依照超像素塊個數(shù)k 初始化等間距為S的聚類中心Ci=[li,ai,bi,xi,yi]T。
(2)在聚類中心的8 鄰域內(nèi)搜索梯度最小的位置,將其確定為新的聚類中心。
(3)對每個聚類中心Ci,計算其與周圍2S鄰域內(nèi)所有像素點的相似度距離,將距離最近的像素點與聚類中心標記為同類。
(4)強化聚類像素塊間的連通性。
(7)從圖像左上方開始,依次給矩陣Label 賦值,相同像素塊的坐標注賦相同的編號。
算法結(jié)束后,矩陣Label 保存的是超像素塊的編號,用于計算目標類別標簽。
基于AIDH 的多目標分類,是指依據(jù)數(shù)據(jù)集中已經(jīng)訓(xùn)練好的學(xué)習(xí)機,預(yù)測遙感圖像上的目標位置及類別的過程[15]。與傳統(tǒng)的機器學(xué)習(xí)方法中多目標分類的方式不同[8],本文方法是以超像素塊作為目標檢測的測試樣本。而這些超像素塊,除了包含目標信息(正樣本集),還包含背景類(負樣本集)信息。因此AIDH 的訓(xùn)練過程,需要由超像素塊提煉生成負樣本集,與正樣本集共同組成樣本訓(xùn)練集,這樣才能生成優(yōu)質(zhì)的哈希碼,預(yù)測圖像中的目標?;贏IDH 的目標檢測框架圖如圖2 所示,經(jīng)過AIDH 的目標檢測后,超像素塊變量Label 存儲的是初步預(yù)測的類別標簽。
圖2 基于AIDH 的遙感圖像目標檢測Fig.2 AIDH?based remote sensing image object detection
為了改進AIDH 方法的分類結(jié)果,采用CRF 方法,進行標簽再學(xué)習(xí)的方式,通過鄰域信息傳遞的方法修正漏判、錯判情況。
CRF 模型的一階勢能探討的是觀測序列與狀態(tài)序列間的決定關(guān)系。這里以AIDH 模型作為一階勢函數(shù)A(yi,X),其形式為
式中:H( ?)表示AIDH 方法的哈希函數(shù);train表示訓(xùn)練集中類別標簽為l樣本;Ham ( ?)是以漢明距離度量某類別樣本與樣本點i之間相似性的函數(shù)。
CRF 模型的二階勢能探討的是空間相鄰超像素塊間的狀態(tài)轉(zhuǎn)移關(guān)系,本文采用的是對差異敏感的Potts 模型[17]。該模型通過懲罰相鄰超像素塊間的不一致性,修正模型標簽的分配情況。具體公式為
式中:βs、θs為模型參數(shù),其中βs為權(quán)重參數(shù),用于調(diào)節(jié)空間勢能在總勢能中的權(quán)重;θs為高斯核的尺度參數(shù),用于調(diào)節(jié)空間勢能隨特征向量變化的平滑程度。R為哈希函數(shù)H(xi)產(chǎn)生哈希向量的維度,也即哈希碼的比特數(shù)。
在Potts 模型的應(yīng)用中,當(dāng)鄰域樣本同類時,兩點間距離越小,空間勢能越大,則兩點屬于同類的可信度越大,此時可以解決目標檢測中的漏判情況。此外,當(dāng)鄰域樣本不同類時,對兩點間特征距離采取懲罰機制。若兩點間距離越小,則兩點間屬于不同類的可信度越小,那么兩個點也有可能歸于同類,此時可以解決目標檢測中的誤判情況[18]。
對于算法的訓(xùn)練過程,由于二階勢能參數(shù)θs采用的是高斯核的尺度函數(shù),無法計算正確的目標函數(shù)。于是,本文采用網(wǎng)格搜索的方式估計二階勢能參數(shù)。而在算法的預(yù)測過程,采用的是環(huán)狀置信傳播算法(Loopy belief propagation,LBP)[19]。LBP 算法是一種消息傳遞算法,主要思想是通過將當(dāng)前節(jié)點下接收到的所有來自鄰域的消息傳遞給目標節(jié)點,完成節(jié)點間信息傳遞。
LBP 算法消息傳遞的方式是最大積方式,通過更新節(jié)點間(本章為超像素塊)消息的傳遞和計算置信度更新節(jié)點勢能直至收斂或達到最大迭代次數(shù)。使用最大積方式的消息傳遞公式msgi→j(cm)如式(13)所示,表示的是從超像素塊i到j(luò)傳遞的信息,即超像素塊i“認為”超像素塊j屬于類別cm。
式中
式(14)是簡化表示的一階、二階勢能表達式,即超像素塊i屬于第m類目標的概率、超像素塊i屬于第m類且超像素塊j屬于第n類目標的概率;l∈Ni≠j表示的是與超像素塊i對應(yīng)的除j以外的鄰域超像素塊集合;Ω表示目標檢測的類別種類。
式中p為迭代次數(shù)
通過更新超像素塊間消息傳遞,計算置信度至循環(huán)結(jié)束,得出超像素塊屬于某類別標簽的最大后驗概率(Maximum a posterior estimation,MAP),認為超像素塊i的置信度最大的類別即為目標所屬的類別標簽,有
為了規(guī)范化目標檢測的結(jié)果,對CRF 生成的由多個超像素塊組成的多邊形檢測區(qū)域,本文采用基于凸殼邊界(Convex hull boundary,CHB)的方法,求取最小外接矩形框,保證矩形框的面積盡量小。具體算法如下:
(1)使用格雷厄姆法獲取CRF 檢測結(jié)果的多邊形的頂點和邊。
(2)計算多邊形每條邊的斜率,確定其反正切角為旋轉(zhuǎn)方向角anglei。
(3)從i=1 開始計算每次旋轉(zhuǎn)anglei后,多邊形每個頂點的坐標xyr。
(4)計算xyr中xmin、xmax、ymin、ymax,并以M_i=(xmax-xmin,ymax-ymin)的2?范數(shù)作為矩形框是否更新的評判標準。當(dāng)新向量M_i的2?范數(shù)更小時,則進入下一步;否則跳過本次循環(huán),計算下一次旋轉(zhuǎn)變換的結(jié)果。
(5)更新最小外接矩形框的坐標為rect=[[xmin,ymin];[xmax,ymin];[xmax,ymax];[xmin,ymax]]。
(6)當(dāng)完成所有旋轉(zhuǎn)變換后,以rect 的最終結(jié)果作為最小外接矩形框的頂點。
圖3 給出了基于凸殼邊界方法生成最小外接矩形框的效果。從圖3(a)可以看到,經(jīng)過CRF 處理后的目標檢測結(jié)果雖然能勾勒出飛機的大體輪廓,但是受超像素塊質(zhì)量和飛機陰影的影響,目標檢測結(jié)果的展示效果并不理想,過多的輪廓線使得飛機目標并不突出。而在圖3(b)經(jīng)過CHB方法處理后,飛機在矩形框中完整地展現(xiàn)出來,在保證了飛機兩翼的最大臂展邊界同時,使得矩形框的面積更小。背景信息越小,目標更突出。這樣的矩形框,更能代表目標信息。
圖3 凸殼邊界法處理前后目標檢測結(jié)果對比Fig.3 Comparison of target detection results before and after convex hull boundary method
本文以NWPU VHR?10 作為檢測數(shù)據(jù)集[20],以Dense?SIFT 作為特征[21]。AIDH 旋轉(zhuǎn)系數(shù)為R=11,α={ 30°,60°,…,330° },縮放系數(shù)為S= 2,β={ 0.5,0.75 };CRF 方法的最大迭代次數(shù)P=4,CRF 的兩個參數(shù)分別為二階勢能權(quán)重參數(shù)βs= 6,高斯核尺度參數(shù)θs= 2。
(1)本文方法目標檢測各階段結(jié)果如圖4 所示。圖4 是本文方法各階段結(jié)果示意圖。其中圖4(a)是原圖,含有12 個網(wǎng)球場目標。圖4(b)是SLIC 超像素分割結(jié)果,完成目標物和非目標物的初步分離。圖4(c)是AIDH 處理結(jié)果,可以看到該階段能夠檢測出一部分網(wǎng)球場目標,但是存在漏判的情況。圖4(d)是CRF 處理結(jié)果,該階段恢復(fù)了漏判的網(wǎng)球場目標,復(fù)原了整幅圖像網(wǎng)球場的結(jié)果。最后圖4(e)是最終目標檢測結(jié)果,在最小外接矩形框提取后,檢測結(jié)果中目標信息更加鮮明,背景信息更少,更能代表圖像上的目標信息。
圖4 本文方法各階段結(jié)果示意圖Fig.4 Results of each stage of the proposed method
(2)本文方法目標檢測結(jié)果,如圖5 所示。圖5 給出了本文方法目標檢測的結(jié)果圖,圖中綠色標識為飛機,紅色為艦船,粉紅色為棒球場,紫色為橋梁??梢钥闯觯疚姆椒饶軝z測出單個目標,也能檢測出多個目標,還能檢測出多個不同類別的目標,并且能很好地勾勒出目標框。而對復(fù)雜背景下的橋梁信息,本文方法也能檢測出來,這表明了算法的有效性。
圖5 本文方法目標檢測結(jié)果圖Fig.5 Object detection results of the proposed method
為定量分析本文方法有效性,選取了兩種經(jīng)典的基于機器學(xué)習(xí)的目標檢測方法KNN[1]和SVM[2]以及兩種新的哈希方法KSH[6]和SDH[7]方法作對比,此外還列舉了先前的工作AIDH?SVM[15]作為對比。在定量數(shù)據(jù)指標上,采用單類別平均精度AP 和綜合平均精度mAP 作為評判標準。
表1 給出了不同算法下各類別目標的檢測精度以及綜合平均精度,可以看出:
表1 各算法在NWPU VHR?10 數(shù)據(jù)集下的AP 和mAP 對比Table 1 AP and mAP comparison of each algorithm in the NWPU VHR?10 dataset
(1)從橫向角度看,幾種哈希方法在AP、mAP 上都優(yōu)于KNN、SVM 兩種經(jīng)典方法,體現(xiàn)出哈希方法相對于經(jīng)典方法的優(yōu)越性。 此外,幾種哈希方法間對比發(fā)現(xiàn),AIDH?CRF 的檢測精度要優(yōu)于KSH?CRF、SDH?CRF,這體現(xiàn)了AIDH 在哈希系方法中的突出性;而與AIDH?SVM 對比中,AIDH?CRF 在精度上有了明顯的提升,說明本文方法使用CRF 改進的有效性。
(2)從縱向角度看目標類檢測的情況,本文方法保持了先前在小目標檢測上的精度,如飛機、油桶和棒球場;同時提升了網(wǎng)球場、籃球場等大型運動場的檢測率。正因為在大目標檢測的成功,才實現(xiàn)了綜合平均精度的提升。
表2 給出了不同目標檢測算法的算法用時。首先,可以看到KNN、SVM 的算法用時明顯高于幾種哈希方法,而比較幾種哈希方法發(fā)現(xiàn),3 種結(jié)合CRF的哈希方法(KSH?CRF、SDH?CRF、AIDH?CRF)用時高于AIDH?SVM 方法,表明了CRF 的引入會增加算法用時。結(jié)合表1 的mAP 數(shù)據(jù)來看,AIDH?CRF以犧牲少許時間為代價,換取了檢測精度的大幅提升,做到了精度和速度上的權(quán)衡。
表2 各算法的算法用時對比Table 2 Comparison of time consuming between each algorithm
本文通過分析傳統(tǒng)的遙感圖像目標檢測方法的不足,引入條件隨機場方法,利用其在標簽學(xué)習(xí)中的優(yōu)勢提高目標檢測的精度。利用SLIC 超像素分割方法在空間信息獲取上的優(yōu)勢,構(gòu)建高質(zhì)量的超像素塊,完成不同目標物的初步分離。而基于條件隨機場的標簽學(xué)習(xí)方法,利用SLIC 生成的超像素塊構(gòu)建其模型所需的概率無向圖模型,繼承了AIDH 良好的機器學(xué)習(xí)性能,又通過二階勢能的概率計算改進了檢測結(jié)果,彌補了大量的漏判和誤判情況。此外,采用基于凸殼邊界的最小外接矩形框生成方法獲得了更能代表目標信息的矩形框。通過在NW ?PU VHR?10 數(shù)據(jù)集進行實驗,取得了不錯的目標檢測結(jié)果,定量分析發(fā)現(xiàn),本文方法以犧牲部分時間復(fù)雜度為代價換取了AP 和mAP 的大幅提升,實現(xiàn)了檢測算法速度和精度的有效權(quán)衡。