一種改進的高精度視頻幀間匹配算法
1、引言
圖像匹配技術(shù)是數(shù)字圖像處理領(lǐng)域的一項重要研究,并已在計算機視覺、虛擬現(xiàn)實場景生成、航空航天遙感測量、醫(yī)學(xué)影像分析、光學(xué)和雷達跟蹤、景物制導(dǎo)等領(lǐng)域得到了廣泛的應(yīng)用。它涉及到許多相關(guān)領(lǐng)域,如圖像預(yù)處理、圖像采樣、圖像分割、特征提取等,并且將計算機視覺、多維信號和數(shù)值計算方法等緊密結(jié)合在一起。因此,如何找到一種有效的圖像匹配方法,使得它能快速而準確的從大量信息中找出所需圖像信息成為急待需要解決的問題。
特征法[1]是圖像匹配算法中的一種經(jīng)典方法,其原理是選取圖像中的典型特征作為運動估計的基本單元,這種方法比較接近于人的視覺特性,主要受制于特征提取的穩(wěn)定性和特征定位的精確性。而SIFT (scale in-variant feature transform)特征[2,3]是一種對尺度、旋轉(zhuǎn)、亮度、仿射、噪音等都具有不變性的圖像局部特征。所以,本文針對視頻幀間匹配的要求,結(jié)合SIFT特征對尺度和旋轉(zhuǎn)具有不變性的優(yōu)點,將歐式距離判別和RANSAC法融合到對SIFT特征點的匹配計算中,通過研究得到了一種高精度的視頻幀間匹配算法。
2、基于SIFT特征的視頻幀間匹配
在需要處理的視頻幀間圖像中,普遍地存在旋轉(zhuǎn)和尺度縮放,而常用的Harris角點[4] 和K-L角點[5]不適用于這種場合。SIFT特征是分別在兩幀圖像的高斯差分尺度空間(DOG scale-space)提取出的圖像局部特征,以某段在直升機上拍攝的航拍視頻為例,對視頻中某兩幀圖像的SIFT特征點進行匹配,仿真結(jié)果如圖1所示。
圖1 視頻中某兩幀圖像的SIFT特征匹配結(jié)果
仿真結(jié)果表明,SIFT特征不僅具有對旋轉(zhuǎn)、尺度縮放、亮度變化的不變性,而且對視角變化、仿射變換、噪聲也具有一定程度的穩(wěn)定性。由于該算法不以單個像素作為研究對象,所以提高了對圖像局部變形的適應(yīng)能力。
但是在傳統(tǒng)的僅采用歐式距離判別法對特征點進行匹配的過程中,仍舊存在誤匹配問題。圖2是將相鄰兩幀圖像中提取的特征點在同一幀圖像中顯示,可以根據(jù)性質(zhì)將誤匹配點分為兩類:第一類是完全匹配錯誤的點,如圖2方框(a)所示,即被配對的兩幀圖像上的兩個點實際上不是一對具有匹配關(guān)系的點,他們具有相同或極其相似的SIFT特征向量,但他們并不是同一個圖像特征;第二類是有誤差的匹配點,如圖2方框(b)所示,即兩個點雖然是同一個圖像特征,但是由于鏡頭的晃動,圖像的局部運動及其他擾動的影響,同一個點在兩幀圖像中的坐標差異與其他大部分點的坐標差異相比,存在較大的偏差。這兩種情況都會影響到運動參數(shù)估計的準確度,因此都是需要被去除的誤匹配點。
圖2 歐式距離法判別匹配點
實驗表明,利用歐式距離進行關(guān)鍵點匹配的匹配精度基本取決于比例閾值r 的大小,r 取值過大會出現(xiàn)大量錯匹配點,而r取值過小可能得到的匹配點數(shù)目過少。然而存在這樣的情況,即如果兩幀圖像上的某兩個不同的特征點的特征向量的歐式距離值非常小,則閾值r 需要取足夠小的值才有可能去掉這一對錯誤的匹配點,這樣一來匹配點總數(shù)目就太少甚至為零,甚至無法進行后面的參數(shù)計算。故單純靠調(diào)節(jié)歐式距離匹配中的比例閾值r無法解決上述誤配點問題,難以達到高精度、數(shù)目適中的特征點匹配結(jié)果。
3、匹配準則的改進
RANSAC法和傳統(tǒng)的方法的區(qū)別在于傳統(tǒng)的方法先把全部的數(shù)據(jù)點作為內(nèi)點而計算出初始參數(shù)值,然后重新計算并統(tǒng)計內(nèi)點和外點;而RANSAC法最開始是利用一部分數(shù)據(jù)作為內(nèi)點得到初始值,然后尋找數(shù)據(jù)集中所有別的內(nèi)點。即應(yīng)用RANSAC法對歐式距離法粗匹配的特征點進行準確度檢驗,可以最大限度地減少噪聲及外點的影響。所以,本文首先采用關(guān)鍵點特征向量的歐式距離判定視頻中某兩幀圖像的特征點相似性,進行粗略匹配,然后利用RANSAC法對粗略匹配結(jié)果進行迭代演算[7,8],通過二次精確匹配來剔除粗匹配中的誤配點,得到精確的匹配點,從而得到精確的圖像匹配結(jié)果。
3.1 歐式距離判別法的一次粗匹配
當兩幀圖像的SIFT特征向量生成后,首先采用關(guān)鍵點特征向量的歐式距離作為兩幀圖像中關(guān)鍵點的相似性判定度量。歐氏距離(Euclidean distance)是一個通常采用的距離定義,它是在n維空間中兩個點之間的真實距離。
計算兩幀圖像中特征點的歐式距離的公式是:
(1)
Xi1表示第一幀圖像上某一點的第i 維坐標,Xi2表示第二幀圖像上某一點的第i 維坐標。
判斷準則:取圖像1中的某個關(guān)鍵點,計算出圖像2中與其歐式距離最近的前兩個關(guān)鍵點,在這兩個關(guān)鍵點中,如果最近的距離d1除以次近的距離d2少于某個比例閾值r ,則接受這一對匹配點,否則拋棄。
3.2 RANSAC法的二次精確匹配
RANSAC(Random Sampling Consensus) 法[6]的基本思想是在進行參數(shù)估計時,不是不加區(qū)分地對待所有可用的輸入數(shù)據(jù),而是首先針對具體問題設(shè)計出一個目標函數(shù),然后迭代地估計該函數(shù)的參數(shù)值,利用這些初始參數(shù)值把所有的數(shù)據(jù)分為所謂的“內(nèi)點”(Inliers, 即滿足估計參數(shù)的點)和“外點”(Outliers,即不滿足估計參數(shù)的點),最后反過來用所有的“內(nèi)點” 重新計算和估計函數(shù)的參數(shù)。
本文中的全局運動包括尺度變換、旋轉(zhuǎn)變換和平移變換。如果用X 和Y 表示一幀圖像中任意一個特征點的位置坐標,x 和y 表示另一幀圖像中任意一個特征點的位置坐標,L 表示這兩幀圖像之間的尺度變換,θ表示旋轉(zhuǎn)變換, a 和b 表示平移變換。那么,計算全局運動參數(shù)可以用相似變換表示如下: (2)
在兩幀圖像的粗匹配點中選出8 對,利用它們的坐標信息,組成一個方程組,計算出運動參數(shù),利用參數(shù)把第二幀圖像中所有的點都變換到第一幀圖像上,反變換后的點坐標用X’,Y’表示,則:
(3)
判斷準則:如果某一點變換到第一幀圖像上能和它在第一幀圖像上的對應(yīng)點重合或者基本重合(位移值小于1象素),即:
(4)
那它們就是該變換確定的一對對應(yīng)點。若對應(yīng)點的個數(shù)占區(qū)域中全部點個數(shù)的比例達到一定的閾值(人工選定),那就認為這組變換關(guān)系是可接受的。利用經(jīng)該變換確定的所有對應(yīng)點即內(nèi)點以最小二乘的方法去重新求解運動參數(shù),至此匹配點檢驗結(jié)束,不再向下計算。若對應(yīng)點比例不能達到要求,則重新選擇一組點,再去計算它們所對應(yīng)的運動參數(shù)。如果對于每一組求出的運動參數(shù),對應(yīng)點的比例都達不到設(shè)定的閾值,則判定這兩幀圖之間不存在匹配關(guān)系。
4、實驗結(jié)果及分析
在實驗中,視頻圖像大小為884×662,視頻幀率為25fps,計算機配置為AMD Athlon(tm) 64×2 Dual Core Processor 5000+,內(nèi)存2.00GB。圖3為歐式距離判別法的一次粗匹配得到的匹配點,其中(a)、(b)分別為在兩幀圖像中得到的匹配點,(c)表示特征點在兩幀圖像中的點位移,可以看出,絕大多數(shù)點位移是微小的,故(c)中的長線表示點位移值較大,證明該匹配點為誤配點。
(a) (b) ?。╟)
圖3 歐式距離判別法的一次粗匹配結(jié)果
圖4為經(jīng)過RANSAC法的二次精確匹配得到的匹配結(jié)果,由4(c)可得,經(jīng)過二次匹配,去掉了一次粗匹配中錯配的點和由于局部運動造成的有誤差的匹配點,得到了完全正確的匹配結(jié)果。表1 給出了用傳統(tǒng)歐式距離判別算法和本文的歐式距離—RANSAKC二次匹配法對視頻幀間圖像進行SIFT特征匹配所得結(jié)果。
(a) (b) ?。╟)
圖4 經(jīng)過RANSAC法二次匹配檢驗得到的匹配結(jié)果
表1 歐式距離法和RANSAC二次匹配法的視頻幀間圖像特征匹配結(jié)果比較
經(jīng)過對該段視頻430幀圖像的處理,得出單純采用歐式距離匹配算法得到的平均正確匹配率為96.2%,平均峰值信噪比為21.8541dB,其中單次正確匹配率100%的幀數(shù)為8幀,而本文所用的歐式距離-RANSAC兩次匹配法的平均正確匹配率為98.8%,平均峰值信噪比為31.2271dB,單次正確匹配率100%的幀數(shù)為349幀,有效地減少了誤配點數(shù),根據(jù)峰值信噪比(PSNR)值可以看出視頻幀間圖像的匹配精度得到了顯著提高。
5、結(jié)論
本文研究了視頻幀間圖像特征的提取和匹配問題,采用關(guān)鍵點SIFT特征向量的歐式距離判定視頻中某兩幀圖像的特征點相似性進行粗略匹配,通過采用RANSAC法的二次精確匹配算法最大限度地減少噪聲及外點的影響,從而解決粗匹配中的誤匹配點問題。仿真試驗表明,該算法能夠有效地解決僅采用歐式距離判別法進行匹配時的誤匹配問題,顯著地提高視頻幀間圖像的匹配精度,同時仿真試驗還顯示出該算法具有較強的魯棒性。