西安科技大學(xué) 劉 森 厙向陽
?
一種改進(jìn)雙目視覺立體匹配算法
西安科技大學(xué)劉森厙向陽
【摘要】獲取同一場景的立體圖像對是實(shí)現(xiàn)雙目立體成像的關(guān)鍵問題。針對傳統(tǒng)的固定窗口圖像區(qū)域匹配算法復(fù)雜度高的問題,提出一種改進(jìn)的基于區(qū)域增長的立體匹配算法—基于線增長的立體匹配算法。仿真實(shí)驗(yàn)表明,該算法在滿足實(shí)驗(yàn)需求的情況下提高了匹配速度。
【關(guān)鍵詞】立體視覺;立體匹配;匹配算法
雙目立體視覺是機(jī)器視覺的重要形式之一。立體匹配是雙目面立體視覺中最重要也是最復(fù)雜的部分[1]。然而,由于匹配的不確定性,立體匹配問題始終沒有統(tǒng)一的解決方案。雙目立體匹配主要是通過匹配算法從立體圖像對中找出匹配點(diǎn)并得到視差圖,然后利用三角幾何關(guān)系計(jì)算空間中物點(diǎn)的深度信息,從而生成深度圖[2]。
目前較為常用的立體匹配算法是基于區(qū)域的匹配算法,基于區(qū)域增長的立體匹配算法對紋理信息比較豐富的圖像有比較好的效果[3-4],但是也存在著運(yùn)算量較大,執(zhí)行速度較慢,確定極線方程的計(jì)算過程過于復(fù)雜和算法復(fù)雜度較高等問題。
為了能降低雙目立體匹配算法的復(fù)雜度,同時(shí)保證匹配的可靠性。本文針對傳統(tǒng)的基于區(qū)域增長算法復(fù)雜度高的問題,給出了一種基于線增長的立體匹配算法。仿真實(shí)驗(yàn)表明所給算法具有良好的可靠性和很好的時(shí)效性。
立體圖像對的立體匹配算法在執(zhí)行過程中對部分像素點(diǎn)重復(fù)計(jì)算,造成該算法復(fù)雜度較高。由于立體圖像只在行的方向上有偏差,為了減少其算法的復(fù)雜度,只需在行方向上進(jìn)行區(qū)域增長。因此,只用查找根點(diǎn)的下一個(gè)鄰接點(diǎn)來進(jìn)行區(qū)域增長,如圖1所示。將算法中只在行方向上進(jìn)行區(qū)域增長稱為線增長。
圖1 線增長方式
改進(jìn)后的算法步驟如下:
Step1.根點(diǎn)選擇。在不屬于任何一個(gè)增長區(qū)域的行中選擇一個(gè)像素點(diǎn),然后通過誤差量計(jì)算公式:
求該點(diǎn)誤差量。
如果誤差量不大于VLG(Lin Growing Threshold),將該點(diǎn)設(shè)為根點(diǎn),將其誤差設(shè)為區(qū)域誤差。
Step2.計(jì)算根點(diǎn)在行方向上的右相鄰點(diǎn)與根點(diǎn)的誤差量。如果誤差量等于或小于VLG,將該點(diǎn)劃分到該區(qū)域。否則,標(biāo)記該點(diǎn);
Step3.將歸入該區(qū)域的點(diǎn)設(shè)為新的根點(diǎn),轉(zhuǎn)Step2,直到該次區(qū)域生長完成。
Step4.判斷所有像素點(diǎn)是否已計(jì)算,如果還有點(diǎn)沒有計(jì)算,轉(zhuǎn)Step1,否則,算法結(jié)束。
在立體匹配過程中存在一些噪音,這些噪音使得立體匹配的可靠性大幅度降低,為了提高立體匹配的可靠性,運(yùn)用平均誤差機(jī)制過濾不可靠的視差估計(jì)值。
將雙目立體圖像對作差之后得到的圖像就是兩幅圖像之間的不同部分,然后進(jìn)行二值化操作得到視差圖d,視差圖d的誤差值Ed表達(dá)式為:
視差圖d的可靠度的平均值Rd定義為:
其中,Ne為預(yù)先設(shè)定的誤差值。Sd是誤差量為Ne的像素點(diǎn)個(gè)數(shù)。
對在物體邊界的點(diǎn)來說,它很可能被圖像中的錯(cuò)誤對象掩蓋。這樣的視差圖就會(huì)包含了一些不可靠的信息,這些不可靠的差異信息可以從不能忽視的高誤差量Ed得到。為了增加所得視差圖d的可靠性,采用式(4)過濾掉一些在d中的不可靠差異信息,經(jīng)過過濾的視差圖d0可表示為:
經(jīng)過過濾不可靠信息后的視差圖d0的誤差值設(shè)為,則有:
采用過濾掉不可靠差異信息的d0比d更加可靠。式(5)中,設(shè)置了針對Ne的差異信息來代表沒有被判斷的區(qū)域,包含Ne區(qū)域的Ed的值在計(jì)算Rd時(shí)被排除在外。Ve用來判斷誤差量的閾值是否可靠,為了自動(dòng)定義Ve,我們采用以下方法:
在式(6)中,a代表采用濾波方法所得到可靠值的偏差系數(shù)。降低a的值會(huì)使d更加可靠。但是由于忽略圖像中更多的差異點(diǎn),所以說在降低a的同時(shí)會(huì)損壞視差圖。
為了驗(yàn)證本文算法的有效性,以心臟模型的立體圖像對(圖2)進(jìn)行仿真實(shí)驗(yàn)并對實(shí)驗(yàn)結(jié)果進(jìn)行比對。編程環(huán)境:MATLAB 7.0,硬件環(huán)境:Pentinum(R) Dual-Core CPU T4400,內(nèi)存2G的計(jì)算機(jī)上使用MATLAB 7.0對原有算法和改進(jìn)算法進(jìn)行實(shí)現(xiàn)。數(shù)據(jù)來源:項(xiàng)目組前期工作數(shù)據(jù)。
圖2 左右立體圖像對
通過在實(shí)驗(yàn)中進(jìn)行參數(shù)設(shè)置,分別得出了在不同算法和在相同算法的不同參數(shù)下立體匹配的可靠性和時(shí)間的數(shù)據(jù)。
圖3中橫軸1、2分別代表的是基于區(qū)域的匹配結(jié)果和基于行增長匹配所得結(jié)果(VLG=180)的匹配可靠性。
圖3 可靠性比較
圖4中橫軸1、2分別代表的是基于區(qū)域的匹配算法和基于線增長匹配算法(VLG=180)在實(shí)現(xiàn)過程中所消耗的時(shí)間。
實(shí)驗(yàn)結(jié)果表明基于區(qū)域匹配算法的可靠性相對比較好,但是其時(shí)間消耗最大,超過了7.24s。當(dāng)VLG=180時(shí),本文算法可靠度相比基于區(qū)域匹配算法和基于點(diǎn)的匹配算法有所下降,但是完全滿足實(shí)驗(yàn)需求,該算法突出特性在于它的時(shí)間消耗相比傳統(tǒng)區(qū)域增長算法大幅下降,只有不到2.18s,降低了三倍。
基于線增長的匹配算法在滿足可靠性要求的情況下將時(shí)間消耗大幅度降低,達(dá)到了實(shí)驗(yàn)的期望數(shù)據(jù)。
圖4 時(shí)間消耗(單位:s)
本文對基于區(qū)域的立體匹配算法做了詳細(xì)分析,發(fā)現(xiàn)傳統(tǒng)的區(qū)域增長匹配算法的復(fù)雜度較高,最后通過將待匹配圖像中的某幾行像素設(shè)定為一個(gè)執(zhí)行區(qū)域(即線增長中的“線”)依次進(jìn)行立體匹配,實(shí)驗(yàn)結(jié)果表明,在能夠滿足需求的匹配可靠性的前提下我們的算法復(fù)雜大幅縮小,取得了滿意的效果。
參考文獻(xiàn)
[1]趙亮亮.雙目立體視覺中的圖像匹配技術(shù)研究[D].南京航空航天大學(xué),2007.
[2]何仁杰.雙目立體視覺區(qū)域局部匹配算法的改進(jìn)及其實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2009(12):68-70.
[3]張輝,張麗艷.面向三維點(diǎn)云測量的雙目立體匹配算法[J].南京航空航天大學(xué)學(xué)報(bào),2009,41(5):588-594.
[4]陳登,白洪歡.Census立體匹配算法的DSP實(shí)現(xiàn)[J].科技通報(bào)2008.6:860-865
[5]徐奕,周軍,周源華.立體視覺匹配技術(shù)[J].計(jì)算機(jī)工程與應(yīng)用,2003,39(15):388-392.
劉森,男,碩士,主要研究領(lǐng)域?yàn)橛?jì)算機(jī)圖形學(xué)、圖像處理。
厙向陽,男,教授,主要研究領(lǐng)域?yàn)榇髷?shù)據(jù)和機(jī)器學(xué)習(xí)。
作者簡介:
通訊作者: