王湘?zhèn)?,莫秋云,粟定華,陳澤章,李軍
(1.桂林電子科技大學(xué)機電工程學(xué)院,廣西桂林 541004;2.中橡集團(tuán)曙光橡膠工業(yè)研究設(shè)計院,廣西桂林 541004;3.桂林科技創(chuàng)業(yè)服務(wù)中心,廣西桂林 541004)
在實現(xiàn)基于雙目視覺的機械手對輪胎測溫點進(jìn)行測溫的過程中,圖像匹配精度和速度是關(guān)鍵。目前常采用基于外極線約束[1-2]的區(qū)域相關(guān)匹配[3]算法來確定兩個對應(yīng)點間的匹配。但是該算法要求對極線上每一個點都進(jìn)行區(qū)域相關(guān)匹配計算,計算量大、耗時并且匹配準(zhǔn)確度不高。針對此問題,提出一種將像素點之間灰度值比較與區(qū)域匹配相結(jié)合的改進(jìn)算法。由于兩圖片上對應(yīng)點之間灰度值相近,該算法先將目標(biāo)點與對應(yīng)極線上各像素點依次進(jìn)行點灰度比較,排除與目標(biāo)點灰度差別較大的像素點,然后對與目標(biāo)點灰度值相差較小的像素點進(jìn)行區(qū)域灰度相關(guān)匹配計算,以減少區(qū)域灰度相關(guān)計算量,降低誤匹配率,獲得較為準(zhǔn)確的目標(biāo)點的左右圖像坐標(biāo),從而比較準(zhǔn)確地獲取其三維坐標(biāo),提高機械手的定位精度。
如圖1所示,將雙目立體視覺所涉及的兩個視平面分別稱為左視平面和右視平面,分別記為PL和PR。每個攝像機都有一個獨立的光心,分別為OL和OR。過光心OL和OR的連線稱為光心線,也稱基線?;€與視平面的交點稱為該視平面的外極點??臻g某點P與基線所確定的平面稱為外極平面。
對于給定的左圖像平面上的一點PL,它所對應(yīng)的空間點P一定處在該點與左光心點OL的連線上。這條連線與右光心點OR確定了一個外極線平面,該平面與右視平面相交于一條直線PReR,這條直線被稱為左圖像上PL點的外極線。容易知道,對于左圖像上的一點PL,其在右圖像上的匹配點PR一定在外極線上,這就是外極線約束。這個約束很大程度上減少了待驗證的可能匹配點對的數(shù)量,即把一個點在另外一幅圖像上可能的匹配點的分布從二維平面降到了一維的線上,極大地減小了搜索匹配點的范圍,并且減少了誤匹配。這就是立體視覺中最基本的約束。
圖1 一般放置的雙目視覺中的極線和極平面
圖1所示為一般放置的雙目視覺模型,如果使用極線約束原則進(jìn)行匹配,則每求一個目標(biāo)點都需要計算外極線方程,然后根據(jù)極線斜率的不同方向來確定步進(jìn)方向,這個過程需要大量的計算,極大地影響了程序的運行效率,不能滿足機械手測溫實時性的要求。
如圖2所示,該雙目視覺模型在理想狀態(tài)下平行放置[4]。該模型中兩個攝像機C1和C2僅在x軸方向上有一平移b,即左右攝像機光心分別作為左右攝像機坐標(biāo)系的原點OL和OR,以光心的連線方向作為它們x軸的方向,光心之間的距離為b,兩個攝像機的光軸互相平行。
其中OLOR為CL和CR坐標(biāo)系的x軸,POLOR平面與兩個圖像平面IL和IR的交線分別為EL和ER,因為兩個圖像平面位于同一平面,所以EL和ER為該平面上的同一直線。同時,圖像平面平行于x軸,故EL、ER與x軸平行。PL與PR分別為OLP與IL、OLP與IR的交點,故PL與PR分別在EL和ER上。
圖2 平行結(jié)構(gòu)的雙目視覺系統(tǒng)
平行放置的雙目視覺模塊避免了一般放置的雙目視覺模型外極線求解計算量大的缺點,同時簡化了后續(xù)三維求距的計算量。但是平行放置的雙目視覺模塊是理想的模型,在實際情況下基本無法讓兩個攝像機的光軸保持平行??赏ㄟ^數(shù)學(xué)校正,對圖片進(jìn)行校正[5],使兩臺攝像機的光軸變?yōu)槠叫械?,即得到行對?zhǔn)的圖像對。
因此,通過比較兩種雙目視覺模型極線求取的方法,文中選取利用水平極線約束來進(jìn)行區(qū)域匹配。
如圖3所示,設(shè)Image1和Image2分別為已校正好的左右兩幅圖像,在左圖像中選中一目標(biāo)點p,以p為中心的某一領(lǐng)域作為模板T,大小為M×M。從立體圖像對中大致觀察圖像對的視差范圍[6],設(shè)最大的視差dmax,只需沿目標(biāo)點p的同一水平掃描線,在 (i+dmax,j)至 (i-dmax,j)范圍內(nèi)進(jìn)行搜索。匹配時模板圖疊放在匹配圖像上平移,模板圖覆蓋下第k個搜索子圖為Sk。匹配時通過計算相關(guān)函數(shù)來找到與模板圖盡可能相似的搜索子圖以及它的坐標(biāo)位置。若模板圖T和搜索子圖Sk完全一致,則T和Sk之差為零。
圖3 基于水平極線的區(qū)域匹配
一般來說通過相關(guān)函數(shù)來確定最佳匹配點,應(yīng)用中可以用相似性測度函數(shù)[7-8]來衡量T和Sk的相似程度:
展開得:
當(dāng)D(i,j)最小時,T和Sk達(dá)到最佳匹配。
該算法中,基準(zhǔn)圖沿平行線每移動一個像素,模板都需要做一次區(qū)域灰度相關(guān)計算,其中除了匹配點計算以外都是在非匹配點上做無用功,而且受光照等條件影響極有可能存在區(qū)域相似程度更高的非匹配點而造成誤匹配。該算法不能滿足機械手快速準(zhǔn)確定位的要求,因此,文中提出對基于水平極線的區(qū)域匹配算法的改進(jìn),如第3.2節(jié)。
針對上述區(qū)域匹配算法存在的問題,提出一種將像素點灰度值比較與區(qū)域相關(guān)匹配相結(jié)合的改進(jìn)算法。由于點基元灰度值計算量遠(yuǎn)遠(yuǎn)小于區(qū)域灰度相關(guān)計算量,因此先將目標(biāo)點與極線上各像素點進(jìn)行點灰度值比較后再判定是否進(jìn)行區(qū)域匹配,即相當(dāng)于對像素點進(jìn)行一次刷選后再區(qū)域相關(guān)匹配,這樣可減少區(qū)域匹配計算次數(shù)以及減小誤匹配的概率,具體方法如下:
(1)利用點基元灰度值比較排除極線上一部分非匹配點,以減少不必要的區(qū)域灰度匹配相關(guān)計算量。由于受光照等條件影響,左右兩張圖片上對應(yīng)點之間的灰度值一般不會相等,但其值不會相差很大,會保持在一定范圍內(nèi)。若極線上一像素點與目標(biāo)點之間灰度值相差很大,則該點必定不會是匹配點,故沒有進(jìn)行區(qū)域匹配的必要。因此,設(shè)定閥值α(一般很小,可以根據(jù)需要做調(diào)整),取目標(biāo)點p依次沿 (i+dmax,j)至 (i-dmax,j)上的像素點進(jìn)行點灰度值比較。
(2)若兩像素點灰度值之差大于閥值α,則該點必定不是匹配點,因此不進(jìn)行區(qū)域灰度相關(guān)匹配,直接進(jìn)入對下一像素點的灰度值比較。
(3)若兩像素點灰度值之差小于閥值α,則進(jìn)行區(qū)域相關(guān)匹配計算,保存D(i,j)的值,再進(jìn)入下一像素點的灰度值比較。
(4)比較所有記錄下來的D(i,j)的值,取D(i,j)值最小的子圖Si,j的中心點為最佳匹配點。
依據(jù)上述原理,采用C++6.0編程對上述方法進(jìn)行驗證,設(shè)定初始閥值α=10,最大視差dmax=100。用鼠標(biāo)在圖4中框選輪胎上記號點,然后沿水平極線去尋找對應(yīng)匹配點,兩種算法的匹配結(jié)果分別如圖5和圖6所示。為了進(jìn)一步證明該方法的有效性,把記錄下的8個目標(biāo)點與兩種算法所求出的對應(yīng)匹配點的灰度值作對比,如表1所示;并且將兩種算法的區(qū)域灰度相關(guān)計算次數(shù)做比較,如表2所示。
圖4 左視圖
圖5 原算法匹配結(jié)果
圖6 改進(jìn)算法匹配結(jié)果
表1 對應(yīng)點灰度值對比結(jié)果
表2 區(qū)域灰度相關(guān)計算次數(shù)對比結(jié)果
從以上結(jié)果可知:
(1)對于僅利用區(qū)域匹配的算法,如圖5所示,匹配結(jié)果不是很準(zhǔn)確,點3、5、7都出現(xiàn)了誤匹配;從表1可以看出,圖5中的點3、5、7與其對應(yīng)目標(biāo)點灰度值相差很大;并且該算法計算量非常大,目標(biāo)點與沿極線上每一點都進(jìn)行了一次區(qū)域灰度相關(guān)計算,如表2所示。
(2)改進(jìn)算法能將極線上與目標(biāo)點灰度值相差較大的點進(jìn)行排除,提高匹配準(zhǔn)確度,如圖6所示;從表2可知,該算法大大減少了區(qū)域灰度相關(guān)計算次數(shù),從而節(jié)省了大量的計算時間。
通過大量的實驗驗證,可以得到以下結(jié)論:采用先將目標(biāo)點與極線各像素點進(jìn)行點灰度比較后再進(jìn)行區(qū)域匹配的算法,可以有效減少僅采用沿極線進(jìn)行區(qū)域匹配的匹配誤差,提高匹配精度,同時減少計算量。
[1]韓偉,鄭江濱,李秀秀.基于外極線的快速精確立體匹配算法[J].計算機工程與應(yīng)用,2008,44(1):51-53.
[2]鄧志燕,陳熾坤.利用外極線約束的圖像匹配新算法[J].工程圖學(xué)學(xué)報,2009(5):104-107.
[3]ZHOU J,XU Y,YU W R.Phase Matching with Multiresolution Wavelet Transform[C]//Proc SPIE,2002:82-91.
[4]富巍,劉美俊.排爆機器人的研究與開發(fā)[M].北京:電子工業(yè)出版社,2010:68-88.
[5]劉金鑫.雙目視覺的攝像機標(biāo)定與立體匹配技術(shù)研究[D].廣州:廣東工業(yè)大學(xué),2011.
[6]曾吉勇,蘇顯渝.濃密視差圖的快速提?。跩].光學(xué)技術(shù),2004,30(1):40-43.
[7]段湘斌.基于灰度圖像的匹配算法改進(jìn)[D].長沙:中南大學(xué),2012.
[8]馮宇平,趙文倉.基于局部灰度值編碼的圖像匹配[J].青島科技大學(xué)學(xué)報:自然科學(xué)版,2011,32(4):435-440.