摘 要: 為了降低圖像配準(zhǔn)誤匹配率以及減少RANSAC算法特征優(yōu)化迭代次數(shù),,提出了SIFT-FCACO的圖像配準(zhǔn)算法,,用快速收斂的蟻群算法對(duì)圖像匹配后的特征點(diǎn)對(duì)進(jìn)行優(yōu)化。實(shí)驗(yàn)結(jié)果表明,,該算法不僅減少了匹配時(shí)間,,而且提高了匹配的準(zhǔn)確率。
關(guān)鍵詞: SIFT-FCACO算法,;蟻群算法,;圖像配準(zhǔn)
圖像配準(zhǔn)是指將采集到的兩幅或多幅圖像進(jìn)行空間變換,利用相關(guān)性尋找像素間的對(duì)應(yīng)關(guān)系,,從而確定幾何變換模型的過(guò)程,。一般將圖像的配準(zhǔn)方法分成基于灰度信息的圖像配準(zhǔn)方法、基于變換域的圖像配準(zhǔn)方法,、基于特征的圖像配準(zhǔn)方法三種[1-2],,其中基于特征的圖像配準(zhǔn)方法在圖像拼接中得到了廣泛的應(yīng)用。2004年LOWE D G提出的尺度不變特征變換算法(SIFT)[3]對(duì)圖像的尺度和旋轉(zhuǎn)具有不變形,,被廣泛應(yīng)用于圖像拼接,。但傳統(tǒng)的SIFT算法在圖像配準(zhǔn)階段誤匹配率比較高,并且傳統(tǒng)RANSAC算法[4]在誤匹配點(diǎn)比例較大時(shí),,特征優(yōu)化迭代次數(shù)多,,大大影響了拼接算法的效率。20世紀(jì)90年代初,,意大利的DORIGO M,、MANIEZZO V和COLORNI A等著名學(xué)者提出一種用來(lái)在圖像中搜索優(yōu)化路徑的機(jī)率型仿生進(jìn)化算法——蟻群算法(Ant Colony Algorithm)[5],該算法是群體智能領(lǐng)域主流的新型研究方法,。
針對(duì)傳統(tǒng)的SIFT算法在圖像配準(zhǔn)階段誤匹配率比較高以及RANSAC算法特征優(yōu)化迭代次數(shù)多,,從而導(dǎo)致圖像拼接后在重疊區(qū)域容易出現(xiàn)拼接縫的問(wèn)題,本文提出SIFT-FCACO的圖像配準(zhǔn)算法,,對(duì)SIFT特征匹配算法進(jìn)行了改進(jìn),,利用快速收斂的蟻群優(yōu)化算法FCACO(Fast Convergence Ant Colony Optimization Algorithm)來(lái)優(yōu)化匹配點(diǎn)對(duì)。仿真實(shí)驗(yàn)證明,,改進(jìn)后的匹配方法不僅能有效地剔除誤配點(diǎn),,而且減少了匹配時(shí)間,。
1 SIFT算法
1.1 尺度空間極值點(diǎn)檢測(cè)
SIFT算法建議,在某一尺度通過(guò)引入一種新算子——DOG算子(Difference of Gaussians,,高斯差分算子)來(lái)檢測(cè)特征點(diǎn),,該算子只需對(duì)平滑后的相鄰尺度高斯圖像作減法計(jì)算,得到相鄰尺度圖像的差異信息,,其優(yōu)點(diǎn)是計(jì)算簡(jiǎn)單,、速度快[6]。DOG函數(shù)表達(dá)式為:
其中,,k是常數(shù),,表示相鄰層之間的間隔距離,k=21/s,,本文中s=2,。
對(duì)高斯差分金字塔尺度空間中的每個(gè)像素點(diǎn)和與它相同層的8個(gè)相鄰像素點(diǎn)以及與其相鄰上下兩層的18個(gè)像素點(diǎn),總共26個(gè)相鄰像素點(diǎn)進(jìn)行比較,,看此像素點(diǎn)是否為它的圖像空間或者尺度空間的極大值或者極小值,,如果該點(diǎn)是極值點(diǎn),則確定該點(diǎn)作為候選點(diǎn),。
1.2 精確定位特征點(diǎn)
由于上述特征檢測(cè)是在離散空間進(jìn)行的,,得到的候選極值點(diǎn)中有許多不是真正的極值點(diǎn),而是隨機(jī)噪聲和邊緣響應(yīng)[7],,因此需要進(jìn)一步優(yōu)化匹配點(diǎn)對(duì)以使匹配的穩(wěn)定性更好,,提高算法的抗噪聲能力。通過(guò)擬合三維二次函數(shù)來(lái)精確確定特征點(diǎn)的位置和尺度,,即對(duì)泰勒二次展開式(2)求極值,,同時(shí)去除低對(duì)比度的極值點(diǎn),并利用Hession矩陣的跡與行列式的比值去除不穩(wěn)定的邊緣響應(yīng)點(diǎn),。
1.3 生成特征描述符
為了使檢測(cè)到的特征點(diǎn)保持一定的方向不變性,,需要根據(jù)圖像的局部特征規(guī)定每個(gè)特征點(diǎn)的方向。特征點(diǎn)(x,,y)處的梯度幅值和相位按式(3),、(4)進(jìn)行計(jì)算:
其中,m(x,,y)表示特征點(diǎn)的梯度幅值,,θ(x,y)表示其相位方向,。
為了使特征點(diǎn)可以適應(yīng)圖像的方向變化,,需要將特征點(diǎn)沿主方向順時(shí)針旋轉(zhuǎn)角度θ,提取特征點(diǎn)的特征向量過(guò)程如下:
?。?)以特征點(diǎn)為中心,,選取大小為16×16的窗口區(qū)域,,高斯加權(quán)圖像窗口區(qū)域(窗口大小為8×8)內(nèi)各像素點(diǎn)(不包括像素點(diǎn)所在行和列的點(diǎn))與特征點(diǎn)間隔距離越小,對(duì)其貢獻(xiàn)越大,,反之則越小,。生成的特征點(diǎn)描述符如圖1所示,。
?。?)將大小為16×16的窗口平均分成16個(gè)小塊,每個(gè)小塊的大小為4×4,,對(duì)每小塊8個(gè)方向的梯度進(jìn)行計(jì)算并且對(duì)其累加,,于是在特征點(diǎn)大小為16×16的窗口內(nèi)總共能夠生成4×4×8=128個(gè)數(shù)據(jù),即每個(gè)特征點(diǎn)可以生成128維的特征向量,,用特征點(diǎn)描述符A=(α1,,α2,…,,α128)來(lái)表示,。
(3)為了去掉光照變化的影響,,將特征向量的長(zhǎng)度進(jìn)行歸一化,。假如一幅圖像共有n個(gè)特征點(diǎn),那么這幅圖像的全部特征向量就組成了初始匹配數(shù)據(jù)的矩陣集合,,大小為128×n,,其中的每一列就表示一個(gè)特征點(diǎn)描述子。
1.4 SIFT特征匹配
?。?)本文采用歐式距離作為待匹配圖像和模板圖像中生成的128維特征向量描述子的相似性度量方法[8],,任意兩個(gè)待匹配描述子的歐氏距離為:
2 FCACO特征點(diǎn)對(duì)優(yōu)化算法
通過(guò)上述特征匹配后得到了一系列特征點(diǎn)對(duì),但是在匹配過(guò)程中由于受到各種外界或者內(nèi)在因素的影響,,容易產(chǎn)生大量的誤配點(diǎn),,影響后續(xù)的圖像拼接過(guò)程。同時(shí),,現(xiàn)有提純誤配點(diǎn)的RANSAC算法在求解最佳模型的過(guò)程中,,假如初始數(shù)據(jù)集合內(nèi)點(diǎn)概率較低時(shí),不僅需要比較多的迭代次數(shù),,而且還可能無(wú)法收斂到最優(yōu)解,,因此要對(duì)匹配的特征點(diǎn)對(duì)進(jìn)行優(yōu)化。本文提出一種用FCACO算法優(yōu)化匹配點(diǎn)對(duì)的方法,,具體過(guò)程如下:
?。?)初始化參數(shù):包括螞蟻數(shù)量m、信息素重要程度因子α,、啟發(fā)函數(shù)重要程度因子β,、信息素蒸發(fā)系數(shù)ρ,、信息素總量Q、最大迭代次數(shù)iter_max,、迭代次數(shù)初始值iter=1,。
(2)構(gòu)建螞蟻城市模型:在兩幅圖像上利用蟻群作為搜索窗口,,SIFT算法匹配出的特征點(diǎn)Ri(i=1,,2,…,,m)被看作m只螞蟻,,根據(jù)圖像S中的窗口在模板圖像R中搜索食物的迭代過(guò)程建立“i只螞蟻的城市模型”,將m只螞蟻Ri隨機(jī)放于n個(gè)城市(m≤n),,并將螞蟻聚類到j(luò)個(gè)聚類中心Sj(j=1,,2,…,,k),,為每只螞蟻建立禁忌表tabuk(k=1,2,,…,,m),并用禁忌表中存儲(chǔ)的初始節(jié)點(diǎn)信息來(lái)記錄螞蟻目前已經(jīng)走過(guò)的城市,。假如算法中的每一只螞蟻都有一定的記憶功能,,可以按照兩幅待拼接圖像上的灰色關(guān)聯(lián)度大小來(lái)引導(dǎo)螞蟻搜索并且向特定的方向移動(dòng),最終朝著灰色關(guān)聯(lián)度最大的方向搜索,,從而確定出兩幅圖像之間匹配點(diǎn)對(duì),。
(3)構(gòu)造螞蟻灰色關(guān)聯(lián)度Di,,j,,并將灰色關(guān)聯(lián)度作為相似性函數(shù),從距離空間的角度反映系統(tǒng)因素間的關(guān)聯(lián)性:
其中,,d(Ri,,Sj)為待優(yōu)化特征點(diǎn)對(duì)間灰色關(guān)聯(lián)度距離;min d(Ri,,Sj)為待優(yōu)化特征點(diǎn)對(duì)間灰色關(guān)聯(lián)度距離的最小值,,maxd(Ri,Sj)為待優(yōu)化特征點(diǎn)對(duì)間灰色關(guān)聯(lián)度距離的最大值,。
?。?)螞蟻搜索過(guò)程:搜索過(guò)程當(dāng)中的狀態(tài)轉(zhuǎn)移概率由道路上的信息量和路徑的啟發(fā)信息決定,i城市的第k只螞蟻選擇下一個(gè)城市j的概率分別為:
其中,p為狀態(tài)轉(zhuǎn)移概率,;α為信息素的重要程度因子,,其值越大,表示信息素的濃度在轉(zhuǎn)移中起的作用越大,;β為啟發(fā)函數(shù)重要程度因子,,其值越大,表示啟發(fā)函數(shù)在轉(zhuǎn)移過(guò)程中所起的作用越大,;allowk為第k只螞蟻可以訪問(wèn)的城市集合,,初始狀態(tài),allowk中有n-1個(gè)集合,,也就是包括除去螞蟻k出發(fā)城市的其余所有城市,,隨著時(shí)間的推移,,allowk中的元素逐漸減少,,直到所有的城市全部訪問(wèn)完成之后變?yōu)榭占沪菫閱l(fā)函數(shù)表達(dá)式,,代表螞蟻由城市i轉(zhuǎn)移到城市j的期望程度,,由兩個(gè)特征點(diǎn)對(duì)之間的灰色關(guān)聯(lián)度大小Di,j決定,。
?。?)更新信息素重要程度因子:當(dāng)信息素達(dá)到某一臨界值后,隨著信息素重要程度因子α逐漸變大,,這條路徑被選擇的概率逐漸變小,,算法的全局搜索能力由弱變強(qiáng),慢慢地跳出局部最優(yōu)解,,直到求得全局最優(yōu)解,。當(dāng)算法在N次循環(huán)之內(nèi)沒(méi)有改進(jìn)當(dāng)前最優(yōu)解時(shí),信息素重要程度因子的取值范圍進(jìn)行變換,,即:
其中,,ρ為信息素蒸發(fā)系數(shù),0≤ρ≤1,;τ為窗口信息素含量,,?駐τijk為第k只螞蟻在城市i與城市j連接路徑上釋放的信息素濃度;?駐τij為所有螞蟻在城市i與城市j連接路徑上釋放的信息素濃度之和,;Q為常數(shù),,為螞蟻循環(huán)一次所釋放的信息素總量。
由于信息素?fù)]發(fā)因子ρ的參數(shù)取值范圍小,,因此需要對(duì)它進(jìn)行微調(diào),。當(dāng)ρ過(guò)小時(shí),在各路徑上殘留的信息素過(guò)多,導(dǎo)致以前搜索過(guò)的路徑被選擇的概率增大,,使全局搜索能力減?。划?dāng)ρ過(guò)大時(shí),,各路徑的信息素堆積速度慢,,以犧牲收斂速度為代價(jià)來(lái)增強(qiáng)算法的全局搜索能力。本文算法將自適應(yīng)地修改ρ:
其中,,ρmax=0.9,;δ是一個(gè)常數(shù),δ≥1,,經(jīng)試驗(yàn),,本文取δ=1.01。
?。?)判斷是否停止搜索:如果iter≤iter_max,,則令iter+1,清空螞蟻經(jīng)過(guò)路徑的禁忌表,,返回步驟(2),;否則停止搜索,輸出結(jié)果,。
SIFT-FCACO算法優(yōu)化匹配點(diǎn)對(duì)的流程圖如圖2所示,。
3 實(shí)驗(yàn)結(jié)果及分析
為了驗(yàn)證本文算法對(duì)光照的魯棒性,采用本文提出的SIFT-FCACO圖像匹配算法與一般的SIFT-RANSAC圖像匹配算法進(jìn)行對(duì)比實(shí)驗(yàn),。實(shí)驗(yàn)所用的圖像為不同光照強(qiáng)度下拍攝的兩幅圖像,,尺寸大小均調(diào)整為400×300,圖像格式為JPG,,圖像如圖3所示,,其中圖3(a)為天氣晴朗的中午拍攝的圖像,圖3(b)是下午五點(diǎn)左右拍攝的圖像,,分別利用SIFT-RANSAC圖像匹配算法和SIFT-FCACO圖像匹配算法進(jìn)行實(shí)驗(yàn),,效果如圖4、圖5所示,。
圖4(c)是采用經(jīng)典的SIFT-RANSAC算法得到的匹配效果圖,,圖5(c)為本文算法得到的匹配效果圖。從提取的特征點(diǎn)進(jìn)行分析,,圖4(a)中提取的特征點(diǎn)比圖5(a)中的特征點(diǎn)要多一些,;從匹配的特征點(diǎn)數(shù)進(jìn)行分析,圖4(b),、4(c)中的特征點(diǎn)雖然多,,但是誤匹配也多,這將導(dǎo)致誤匹配率較高;圖5(b),、5(c)在特征點(diǎn)幾乎相同的情況下錯(cuò)誤匹配并未增加,,從而降低了誤匹配率。
不同工作狀態(tài)的計(jì)算機(jī)硬件設(shè)備對(duì)軟件運(yùn)行速度的影響會(huì)有一定的差異,,因此表1中的數(shù)據(jù)是在對(duì)整個(gè)實(shí)驗(yàn)運(yùn)行10次計(jì)算平均值的結(jié)果,,其中匹配率為優(yōu)化后匹配對(duì)數(shù)與特征個(gè)數(shù)中較小值之比。從表1可以得出,,SIFT-FCACO算法提純的誤配點(diǎn)對(duì)比較多,,對(duì)光照、位移,、尺度變化均保持一定的魯棒性,,經(jīng)過(guò)本文算法優(yōu)化誤配點(diǎn)對(duì)后,有效地提高了匹配效率,,減少了匹配時(shí)間,,更有利于后續(xù)的圖像拼接過(guò)程。
針對(duì)一般的SIFT和RANSAC算法在配準(zhǔn)精度與速度上的不足,,本文提出了一種SIFT-FCACO的圖像匹配算法,,憑借SIFT特征對(duì)于旋轉(zhuǎn)和尺度的不變性以及對(duì)于噪聲,、亮度變化等魯棒性良好的優(yōu)勢(shì)進(jìn)行特征提取和匹配,,并設(shè)計(jì)了一種FCACO算法進(jìn)一步優(yōu)化SIFT匹配的特征點(diǎn)對(duì),從而提取出具有較大信息量的匹配點(diǎn)對(duì),,有利于圖像拼接的進(jìn)行,。
參考文獻(xiàn)
[1] ZITOVA B, FLUSSER J. Image registration methods: a survey[J]. Image and Vision Computing(S0262-8856),,2003,,21(11):977-1000.
[2] LOWE D G. Distinctive image features from scale-invariant keypoints[J]. International Journal of Computer Vision(S0920-5691),2004,,60(2):91-110.
[3] Deng Rongfeng,, Li Xiying. Robust image mosaic algorithm based on SIFT feature matching[J]. Journal of Computer Applications, 2009,,29(6):219-221.
[4] Chen Fuxing,, Wang Runsheng. Fast RANSAC with preview model parameters evaluation[J]. Journal of Software,2005,,16(8):1431-1437.
[5] 何志明.群體智能算法在圖像匹配中的應(yīng)用[D].西安:陜西師范大學(xué),,2010.
[6] 王靜.基于SIFT和角點(diǎn)檢測(cè)的自動(dòng)圖像配準(zhǔn)方法研究[D].武漢:華中科技大學(xué),2010.
[7] Sun Wei,, Guo Baolong. A robust object detecting and tracking method[C]. Fifth International Conference on Fuzzy Systems and Knowledge Discovery,, USA, IEEE Computer Society, 2009:121-125.
[8] 曹建秋.基于SIFT圖像拼接技術(shù)研究[D].重慶:重慶交通大學(xué),,2012.