徐夢瑩, 劉文波, 鄭祥愛, 蔡 超
(1.南京航空航天大學 自動化學院, 江蘇 南京 211106;2.高速載運設(shè)施的無損檢測監(jiān)控技術(shù)工業(yè)和信息化部重點實驗室, 江蘇 南京 211106)
圖像匹配技術(shù)是圖像處理中非常重要的一個分支,被廣泛應(yīng)用于各種不同領(lǐng)域,如人臉識別、圖像拼接、視覺跟蹤、三維重建等。圖像匹配是指通過對兩幅或多幅圖像之間的相似性或一致性進行分析,判斷圖像間的相似關(guān)系。成像設(shè)備對某一物體或場景記錄時,由于受設(shè)備焦距、成像方式、角度變化、光照變化等因素影響,會產(chǎn)生不小的差距(圖像間存在較大的幾何差異和灰度變化)。現(xiàn)有的圖像匹配方法主要分為基于灰度的圖像匹配[1,2]和基于特征的圖像匹配[3,4]。普遍應(yīng)用的是基于特征的圖像匹配算法,其特點是匹配速度快、性能穩(wěn)、運算量小等。
基于特征的圖像匹配算法主要提取圖像的點特征、線特征、邊緣特征等局部不變特征。點特征具有計算簡單、魯棒性強等特點應(yīng)而受到眾多研究人員和學者的青睞[5],基于點特征的圖像匹配算法包括三個步驟:特征點檢測、特征點描述以及特征點匹配?;谔卣鼽c的圖像匹配算法主要有SIFT算法[6]、SURF算法[7]、ORB算法[8]等,這些特征點的提取多以手工設(shè)計為主,雖然手工設(shè)計的特征點具有很好的效果,但它們通常依賴于預(yù)先設(shè)計的結(jié)構(gòu),在復雜場景或劇烈光照變化下難以取得穩(wěn)定的精度。隨著深度學習的快速發(fā)展,越來越多的工作嘗試使用學習的方式來提取特征點或者是計算特征點的描述符?;趯W習的特征點提取方法可以針對各類場景和成像條件訓練特征點模型,如LIFT[9],SuperPoint[10]。
在特征點匹配方面,一般計算需要匹配的兩個特征點的最近鄰與次近鄰歐氏距離的比值對比設(shè)定好的閾值進行取舍, 并采用隨機抽樣一致性(random sample consensus,RANSAC)算法[11,12]進行誤匹配點的去除。雖然RANSAC算法具有極大的容錯性和較好的魯棒性,但當所提取的匹配點對集中錯誤的匹配點對占有較高比例時,該算法的運算時間會呈指數(shù)增加,經(jīng)過剔除誤匹配后仍然存在著錯誤的匹配點對。Bian J等人[13]提出了一種基于網(wǎng)格運動統(tǒng)計(grid-based motion statistics,GMS)的特征匹配算法,可以快速可靠地區(qū)分正確匹配和錯誤匹配。
綜上所述,本文提出了一種基于深度學習的圖像特征匹配方法,著重進一步提高圖像匹配的正確率。首先,使用SuperPoint特征點學習模型提取圖像的特征點并進行描述,用最近鄰和次近鄰比值法得到初匹配點對,使用GMS算法區(qū)分初匹配點對中的正確匹配和錯誤匹配,最后采用RANSAC算法完成圖像匹配。
2018年,DeTone D等人[10]設(shè)計了一種稱為SuperPoint的全卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),該結(jié)構(gòu)可在全尺寸圖像上運行,并在單次前向傳遞中產(chǎn)生帶有固定長度描述符的興趣點。該框架的實施過程如下:1)在簡單的合成數(shù)據(jù)集上采用全卷積網(wǎng)絡(luò)訓練興趣點基礎(chǔ)檢測器。該合成數(shù)據(jù)集由三角形、四邊形、線、立方體、棋盤和星形等簡單的幾何形狀組成。受過訓練的探測器具有良好的抗噪能力。2)用上面生成的檢測器檢測未被標注的真實場景圖像,應(yīng)用單應(yīng)性變換(homographic adaptation)自動標記未標記區(qū)域的圖像,生成帶標簽的數(shù)據(jù)集。3)生成的標簽數(shù)據(jù)集來訓練全卷積神經(jīng)網(wǎng)絡(luò),該網(wǎng)絡(luò)可以從圖像中同時提取興趣點和描述符。SuperPoint框架一共包含三部分,共享編碼器、興趣點解碼器和描述符解碼器。如圖1所示。
圖1 SuperPoint框架
共享編碼器其實就是共享的卷積網(wǎng)絡(luò),共享卷積層不僅提取了圖像中的特征,同時還對圖像進行了降維。SuperPoint框架使用VGGNet網(wǎng)絡(luò)模型中的卷積部分充當共享卷積層。假設(shè)輸入圖片的尺寸為H×W,經(jīng)過共享編碼器的輸出張量尺寸為Hc×Wc,其中,Hc=H/8,Wc=W/8。定義一個低維輸出的張量Hc×Wc為一個單元,則一個尺寸為H×W的圖像有8×8個單元。對于輸入圖像I∈RH×W經(jīng)過編碼器,輸出一個中間張量B∈RHc×Wc×F。其中,Hc
對于興趣點檢測,輸出的每個像素對應(yīng)于輸入中該像素是特征點的概率。解碼器將低維的輸出張量還原到和輸入一樣的維度。興趣點解碼器處理X∈RHc×Wc×65并輸出張量為RH×W,即圖像的尺寸。這里的65表示原圖8×8的局部區(qū)域,加上一個非特征點Dustbin。然后經(jīng)過SoftMax函數(shù)處理,將Dustbin這一維度移除。最后執(zhí)行Reshape函數(shù),完成RHc×Wc×F到RH×W過程。為了使模型易于訓練,解碼器使用非學習的上采樣。
描述符解碼器含有兩個卷積層,兩個卷積核的尺寸分別為3×3×256和1×1×256。描述符解碼器處理D∈RHc×Wc×D,并輸出尺寸H×W×D的張量。然后,解碼器執(zhí)行描述符的雙三次插值,最后執(zhí)行L2標準化輸出描述符。這個非學習的描述符解碼器如圖1所示。
GMS算法具有快速、強魯棒性的特點,能夠?qū)⒏邤?shù)量的匹配轉(zhuǎn)換為高質(zhì)量的匹配。該算法將運動平滑性約束轉(zhuǎn)化為統(tǒng)計量,以剔除錯誤的匹配[14]。圖2為正確匹配和錯誤匹配的特征分布圖。左邊為參考圖像Ia,右邊為待匹配圖像Ib分別有M,N個特征點,其相應(yīng)的特征點集合為{M,N}。使用暴力匹配(brute force,BF)算法得到圖像Ia到圖像Ib的匹配點對集合χ={x1,x2,…,xN}。GMS算法通過計算法每個匹配點對鄰域內(nèi)支持匹配點對的特征點數(shù)量來區(qū)分集合χ中正確與錯誤的匹配點對。a,b分別為圖像Ia和圖像Ib的子區(qū)域,其匹配點集合為x={x1,x2,…,xn}。xi為正確匹配對,xj為錯誤匹配對。對于圖3中的區(qū)域a,用Si表示xi鄰域匹配點支持估計量,則有
Si=|xi|-1
(1)
式中 -1為除去區(qū)域a的原始特征點。
圖2 正確與錯誤匹配特征分布
由于匹配點對是相互獨立的,Si服從二項分布,如式(2)所示
(2)
式中K為與不相交區(qū)域的個數(shù),n為區(qū)域點鄰域特征點數(shù)量,pt為xi正確匹配的概率,pf為xi錯誤匹配的概率。Si的均值和標準差分布如下
(3)
GMS算法定義區(qū)分正確與錯誤匹配能力P,用均值的差除以標準差的和表示
(4)
為了驗證本文算法的可靠性和有效性,選用了Mikolajczyk標準數(shù)據(jù)集中圖像模糊Bikes集、光照變化Leuven集、視角變化Wall集進行測試,每組中包括6張變化程度依次增強的圖像。圖3(a)與(b),(c)與(d),(e)與(f)分別為Leuven,Bikes和Wall的第一幅和第六幅圖像。采用結(jié)合RANSAC算法的SIFT,SURF,KAZE特征算法和本文算法進行匹配對比實驗。實驗平臺為Windows 8.1操作系統(tǒng),CPU為Intel?CoreTMi5—4210U,4 GB內(nèi)存的個人電腦。編程環(huán)境為Pycharm,基于OpenCV 3.4.1進行仿真實驗。
圖3 實驗中所用的樣本圖像
采用匹配正確率(correct matching rate,CMR)和運行時間等評價指標對圖像匹配算法進行全面的評價與定量分析。CMR值越大,該匹配算法匹配效果越好,CMR定義為
CMR=mc/m
(5)
式中mc為正確匹配點對數(shù)量,m為所有匹配點對數(shù)量。
圖4展示了各算法在三種圖像條件變化下的CMR。CMR越高,該算法的匹配效果就越好。橫軸的1~5代表每個數(shù)據(jù)集中的第一幅圖像依次與后面5幅圖像進行匹配(記為對比組1~5)。
圖4 不同算法在不同圖像變換下的CMR
從圖4中可以看出,對于光照變換的圖像,在變換強度增加的情況下,相比于其他三種算法,本文算法具有良好的匹配效果,其CMR基本保持在97 %以上,適用性強。其次是SIFT算法、KAZE算法,SURF匹配效果欠佳。相比較于SIFT算法,本文算法在光照變化條件下平均CMR提高了2.2 %。對于不同程度模糊的圖像,本文算法匹配效果不是很好。對于視角變化的圖像,在最后一組圖像匹配時,由于視角變化程度太大,本文算法、KAZE、SIFT和SURF算法的匹配到的特征點對數(shù)都小于設(shè)定的最小匹配點對數(shù),不能有效匹配,認為匹配失敗。本文算法在前幾幅圖像匹配中保持較高的CMR,基本在95 %以上。綜上所述,本文算法在圖像模糊的圖像集中匹配效果欠佳,在其他場景測試下,本文算法CMR都高于其他三種算法,并且平均正確率達95 %以上。
表1給出了各算法在實驗圖像數(shù)據(jù)集上的運行時間進行對比。從表中可以看出,本文算法平均運行時間最長,在實時性上略有欠缺,后期需要在時間上進行優(yōu)化。
表1 不同算法針對每組圖像的平均運行時間 s
本文提出了一種基于深度學習的圖像特征匹配方法。將卷積神經(jīng)網(wǎng)絡(luò)應(yīng)用于圖像的特征匹配工作,采用了特征點提取和描述同步進行的SuperPoint網(wǎng)絡(luò)架構(gòu)。并共用了大部分網(wǎng)絡(luò)結(jié)構(gòu)和參數(shù),減少了網(wǎng)絡(luò)的訓練量。通過最近鄰和次近鄰距離比值法得到初始匹配點對,使用GMS算法對其篩選,提高了匹配點對數(shù)據(jù)集的質(zhì)量,最后通過RANSAC算法進一步剔除了誤匹配點對。實驗結(jié)果表明:與SIFT算法、SURF算法和KAZE算法等3種算法相比,本文算法擁有較高的CMR,并且在光照變化、視角變化下具有很強的魯棒性。本文算法對模糊變化的圖像匹配效果欠佳,并且本文算法運行時間較長,對此如何解決,也將成為后續(xù)研究的重點。