王淑霞,周波
黑龍江科技大學(xué)計算機(jī)與信息工程學(xué)院
一種基于RANSAC算法的單應(yīng)矩陣估計方法
王淑霞,周波
黑龍江科技大學(xué)計算機(jī)與信息工程學(xué)院
在視覺測量、攝像機(jī)標(biāo)定和三維重建等領(lǐng)域中,單應(yīng)矩陣都起著至關(guān)重要的應(yīng)用作用。但在求解單應(yīng)矩陣時,圖像之間的特征點常常出現(xiàn)誤匹配的現(xiàn)象,針對該情況本文運(yùn)用RANSAC (Random Sampling Consensus)算法解決特征點誤匹配問題,描述了從圖像的特征提取、特征點匹配到求解單應(yīng)矩陣的完整的處理過程,并對算法有效性進(jìn)行了驗證。方法簡單、快速、易實現(xiàn),對提高計算機(jī)視覺應(yīng)用穩(wěn)定性具有一定的理論意義和實用價值。
單應(yīng)矩陣;RANSAC方法;計算機(jī)視覺
單應(yīng)性矩陣在圖像與計算機(jī)視覺處理方面有著重要的作用,單應(yīng)性矩陣反映了平面圖像之間的對應(yīng)關(guān)系。單應(yīng)性矩陣已被廣泛用于視覺測量、圖像拼接、圖像配準(zhǔn)和三維重構(gòu)等領(lǐng)域中[1]。
目前關(guān)于單應(yīng)矩陣的估計有以下三種方法即代數(shù)方法、統(tǒng)計估計方法[2]和幾何方法。代數(shù)方法是基于代數(shù)距離的最小化方法,也稱為線性估計方法。統(tǒng)計估計方法是一種在概率模型下進(jìn)行估計的方法。幾何方法是基于幾何距離的最小化方法,該方法是非線性的,需要進(jìn)行迭代計算。
上述方法算法簡單,但是在精度要求嚴(yán)格的情況下效果并不是很理想。所以本文采用隨機(jī)采樣一致性(RANSAC)方法,首先通過特征點對計算單應(yīng)矩陣,然后利用隨機(jī)采樣一致性(RANSAC)方法配準(zhǔn)誤差來衡量匹配的精度,篩選后得出最優(yōu)單應(yīng)性關(guān)系。同時此方法對于一些包含錯誤數(shù)據(jù)的情況也能給出較好的估計。
OpenCV中幾種定位與表示關(guān)鍵點的函數(shù)。"FAST"、"STAR"、"SIFT"、"SURF"、"Dense"、"SimpleBlob"等。
本文圖像特征為圓點,需提取圓點中心坐標(biāo),通過參數(shù)Area控制斑點的面積大小、參數(shù)circularity控制半點圓形度,圓形度為1表示斑點為圓形,圓形度貼近1表示斑點近似圓形,計算公式為:
單應(yīng)矩陣是兩幅圖像之間的相互關(guān)系,也就是說,一張圖像上的任意一個點都可以在另一張圖像上找到對應(yīng)的點,而且對應(yīng)點唯一,反之亦然。
如果給定一個單應(yīng)H={hij},一個單應(yīng)中只有8個自由元素,一般令右下角的那個元素h33=1來歸一化。8個未知數(shù),需要四對點能夠求解,是因為一對點提供兩個方程。我們假設(shè)有兩個圖像上的點[x1,y1]T和[x2,y2]T,它們的齊次坐標(biāo)為:[x1,y1,1]T和[x2,y2,1]T帶到上面的推導(dǎo)可以得到:
把這兩個式子重新組織一下,得到等價的矩陣形式:
Au=v如果有四對不共線匹配點對,這個方程組就能夠得到8行,存在唯一解,如果多于四對點,比如本文有7對點,方程就到14行,就可以最小二乘求解H。
RANSAC算法有一個基本的假設(shè),給定一組正確的數(shù)據(jù),存在可以計算出符合這些數(shù)據(jù)的模型參數(shù)的方法。
(1)取4個點對為假設(shè)的局內(nèi)點,計算單應(yīng)矩陣。
(2)用(1)得到的單應(yīng)矩陣測試所有其它點,如果某個點對適應(yīng)于單應(yīng)矩陣,即映射誤差較小,可認(rèn)為也是局內(nèi)點。
(3)如果被歸類為局內(nèi)點的數(shù)據(jù)足夠多,那么得到的單應(yīng)矩陣就是合理的。
(4)用所有的局內(nèi)點去重新估計單應(yīng)矩陣。
(5)最后通過評估局內(nèi)點與單應(yīng)矩陣映射誤差進(jìn)行評估模型。
(6)以上過程被重復(fù)執(zhí)行固定的次數(shù),每次生成的單應(yīng)矩陣或是因為局內(nèi)點太少而被舍棄,或是因為比現(xiàn)有模型更好而被選用。
通過迭代隨機(jī)選取局內(nèi)點計算單應(yīng)矩陣,能夠?qū)⒄`匹配的外點剔除,提高了單應(yīng)矩陣的精度。
本實驗計算機(jī)硬軟件配置為Microsof Windows 7操作系統(tǒng)、OpenCV開發(fā)環(huán)境、Intel奔騰四核N3530、內(nèi)存容量4G、顯存容量1G。攝像頭是采用相同分辨率為1280*1024的2個微視MVC1000MF黑白攝像頭,鏡頭為兩個Pentax百萬像素鏡頭,拍攝的兩幅圖像如圖4-1所示。
實驗結(jié)果:
圖4-1 特征點圖像
圖4-2 RANSAC糾正的匹配圖像
單應(yīng)矩陣為:
本文對單應(yīng)矩陣的估計問題進(jìn)行了深入研究,并提出了基于隨機(jī)采樣一致性(RANSAC)算法的魯棒估計算法。通過OpenCV中SimpleBlob函數(shù)設(shè)定適當(dāng)閾值來精確定位特征點,在特征匹配方面運(yùn)用RANSAC算法對包含有外點的匹配點對進(jìn)行了參數(shù)估計,提高了算法的魯棒性。實驗結(jié)果表明此算法可以快速、高精度的計算得到兩張圖像之間的單應(yīng)矩陣。
[1]鄭順義,張祖勛,翟瑞芳.基于非量測相機(jī)的復(fù)雜物體三維重建[J].武漢大學(xué)學(xué)報(信息科學(xué)版)2008,33(5):446-449.
[2]曾慧,鄧小明,趙訓(xùn)坡,等.基于線對應(yīng)的單應(yīng)矩陣估計及其在視覺測量中的應(yīng)用[J].自動化學(xué)報,2007,33(5).
王淑霞(1982-),女,黑龍江安達(dá)人,碩士研究生,黑龍江科技大學(xué)在讀。