(桂林電子科技大學(xué)信息與通信學(xué)院,廣西 桂林 541004)
隨著信息技術(shù)的飛速發(fā)展,雙目立體視覺(jué)已經(jīng)在很多領(lǐng)域得到了廣泛應(yīng)用。雙目立體視覺(jué)三維測(cè)量是基于視差原理,而視差是根據(jù)兩特征匹配點(diǎn)的相對(duì)位置獲得的。根據(jù)采用優(yōu)化方法的不同,立體匹配算法可以分為局部匹配算法和全局匹配算法。目前,國(guó)內(nèi)的研究現(xiàn)狀是在基于特征的選擇上,以及在匹配的相似度的度量上進(jìn)行研究,同時(shí)針對(duì)遮擋的問(wèn)題、弱紋理問(wèn)題也進(jìn)行了討論[1]。在國(guó)際上主要是基于顏色分割,進(jìn)行全局立體匹配,在局部立體匹配方面,在聚合上采用了自適應(yīng)的權(quán)值進(jìn)行聚合匹配能量,同時(shí)也采用多窗體、自適應(yīng)的支持窗體匹配算法。但是到目前為止,所有的算法都不能完整的反映像素點(diǎn)的真實(shí)視差,只能局部的,或多或少的反映真實(shí)視差,在實(shí)際應(yīng)用過(guò)程中視差圖會(huì)有很多無(wú)效黑斑區(qū)域,本文提出一種基于前景檢測(cè),利用最小二乘法直線擬合的方法,局部?jī)?yōu)化視差[2]。
目前的所有匹配算法都可以歸結(jié)為在下面三個(gè)方向上進(jìn)行的創(chuàng)新,即選擇匹配基元、選擇相似度函數(shù)和優(yōu)化算法。目的都是為了盡量減少基元在匹配中的模糊性或奇異性,能盡量找到能反映像素點(diǎn)的真實(shí)視差。在文獻(xiàn)[3]中把立體匹配分為4個(gè)步驟:匹配代價(jià)計(jì)算、支持能量聚合、視差計(jì)算和優(yōu)化、視差的精細(xì)和評(píng)價(jià)方法,可以認(rèn)為目前所有的研究工作都?xì)w納為在這4個(gè)步驟之內(nèi),任何改進(jìn)都是針對(duì)4個(gè)步驟中的其中一個(gè)進(jìn)行的改進(jìn)和研究,但并不是每一種算法都必須包含這4個(gè)步驟,而是只采用其中的個(gè)別步驟,例如局部的立體匹配算法就沒(méi)有視差優(yōu)化和視差細(xì)化階段,而全局立體匹配算法卻包含了視差優(yōu)化和視差細(xì)化步驟,反而沒(méi)有能量聚合步驟。
局部立體匹配算法主要是采用局部?jī)?yōu)化方法進(jìn)行視差值估計(jì),局部立體匹配算法有SAD,SSD等算法,與全局立體匹配算法一樣,也是通過(guò)能量最小化方法進(jìn)行視差估計(jì),但是,在能量函數(shù)中,只有數(shù)據(jù)項(xiàng),而沒(méi)有平滑項(xiàng)。主要是利用局部的信息進(jìn)行能量最優(yōu)化,所以得到的視差估計(jì)是局部最優(yōu),而不是全局最優(yōu)[4]。局部立體匹配算法得到的視差值準(zhǔn)確度不是很高,但是其速度比較快,效率比較高,能滿足實(shí)時(shí)性要求。
全局立體匹配算法主要是采用了全局的優(yōu)化理論方法估計(jì)視差,建立全局能量函數(shù),通過(guò)最小化全局能量函數(shù)得到最優(yōu)視差值[5]。主要的算法有圖割、信念傳播、動(dòng)態(tài)規(guī)劃等算法。全局立體匹配算法是通過(guò)能量最小化方法進(jìn)行視差估計(jì),在其建立的能量函數(shù)中,除了數(shù)據(jù)項(xiàng)之外,還有平滑項(xiàng)。數(shù)據(jù)項(xiàng)主要是測(cè)量像素之間的相似性問(wèn)題,而平滑項(xiàng)是平滑像素之間的視差關(guān)系,保證相鄰像素之間視差的平滑性[6]。全局立體匹配算法得到的結(jié)果比較準(zhǔn)確,但是其運(yùn)行時(shí)間比較長(zhǎng),不適合實(shí)時(shí)運(yùn)行。
雙目立體成像原理圖如圖1所示:
圖1 雙目立體成像原理圖
其中基線距B為兩攝像機(jī)的投影中心連線的距離;相機(jī)焦距為f。設(shè)兩攝像機(jī)在同一時(shí)刻觀看空間物體的同一特征點(diǎn)分別在“左眼”和“右眼”上獲取了點(diǎn)P的圖像,它們的圖像坐標(biāo)分別為現(xiàn)兩攝像機(jī)的圖像在同一個(gè)平面上,則特征點(diǎn)P的圖像坐標(biāo)Y坐標(biāo)相同,即則由三角幾何關(guān)系得到:
則視差為:
由此可計(jì)算出特征點(diǎn)P在相機(jī)坐標(biāo)系下的三維坐標(biāo)為:
左相機(jī)像面上的任意一點(diǎn)只要能在右相機(jī)像面上找到對(duì)應(yīng)的匹配點(diǎn),就可以確定出該點(diǎn)的三維坐標(biāo)[7]。這種方法是完全的點(diǎn)對(duì)點(diǎn)運(yùn)算,像面上所有點(diǎn)只要存在相應(yīng)的匹配點(diǎn),就可以參與上述運(yùn)算,從而獲取其對(duì)應(yīng)的三維坐標(biāo)。
本文提出的基于前景檢測(cè)的視差優(yōu)化算法,是在前景區(qū)域內(nèi),按行檢測(cè)出有效視差和無(wú)效視差,并記錄存取,有效視差作為最小二乘法的已知條件,對(duì)無(wú)效視差部分進(jìn)行直線擬合,而有效視差保持不變,達(dá)到整個(gè)目標(biāo)物體區(qū)域有完整的視差圖,并分離出這區(qū)域的視差圖。算法的實(shí)現(xiàn)分為兩部分,分別是前景區(qū)域提取和最小二乘法優(yōu)化視差。
前景檢測(cè)主要分為:幀差法、平均背景法、光流法、前景建模法、背景非參數(shù)估計(jì)、背景建模法等。背景差分法具有簡(jiǎn)單,運(yùn)動(dòng)速度快,對(duì)緩慢變換的光照不是很敏感等優(yōu)點(diǎn),但同時(shí)也會(huì)有空洞等缺點(diǎn)?;趯?shí)時(shí)性考慮,本文采用的幀差法是背景相減法中的一種,幀差法的基本原理就是將前后兩幀或者當(dāng)前幀與固定背景幀圖像的對(duì)應(yīng)像素點(diǎn)的灰度值相減,得到幀差灰度圖[8]。如果對(duì)應(yīng)像素灰度相差很大就可以認(rèn)為此處景物為前景。針對(duì)幀差法會(huì)產(chǎn)生空洞的缺點(diǎn),以及更好的提取前景物體,本文將得到的幀差灰度圖二值化后,利用形態(tài)學(xué)的取最大連通域法進(jìn)行處理,能很大程度的去除空洞現(xiàn)象,得到感興趣區(qū)域二值化前景圖,最后用淹模法(mask)摳出目標(biāo)物體。
圖2 算法實(shí)現(xiàn)流程圖
本文提出的視差優(yōu)化算法是在傳統(tǒng)匹配算法計(jì)算得出視差圖的基礎(chǔ)上,在前景區(qū)域內(nèi)利用最小二乘法直線擬合對(duì)前景區(qū)域內(nèi)的無(wú)效視差進(jìn)行優(yōu)化,得到一個(gè)比較完整的前景區(qū)域視差圖,由于在特定應(yīng)用中我們并不是對(duì)所有的區(qū)域感興趣,因而其他不感興趣區(qū)域的視差好壞我們并不關(guān)心。
算法實(shí)現(xiàn)過(guò)程流程框圖如圖2所示。
視差的生成是以左視圖為基匹配的,所以視差圖的像素點(diǎn)和左視圖有一一對(duì)應(yīng)的關(guān)系[9],在左視圖中進(jìn)行前景檢測(cè)生成二值化前景圖,然后進(jìn)行掩模處理,摳出前景區(qū)域。這樣,左視圖、視差圖和前景圖三幅圖的像素點(diǎn)坐標(biāo)都是以一一對(duì)應(yīng)的關(guān)系。把前景區(qū)域?qū)?yīng)的像素點(diǎn)集合作為感興趣區(qū)域,那么左視圖、視差圖以及前景圖中的感興趣區(qū)域是一樣的;對(duì)視差圖的感興趣區(qū)域利用最小二乘法直線擬合實(shí)現(xiàn)對(duì)前景區(qū)域的視差優(yōu)化,呈現(xiàn)較為完整的前景視差圖。
算法說(shuō)明:算法中第2、3、4步為算法前半段,按行掃描二值化前景區(qū)域,記錄連續(xù)不間斷白色像素點(diǎn)數(shù)大于n(閾值)的所有連續(xù)點(diǎn)的像素坐標(biāo),得坐標(biāo)集 V。這部分是對(duì)前景圖進(jìn)行處理,獲取感興趣區(qū)域的像素坐標(biāo)集V,其中V只是記錄下感興趣區(qū)域的各個(gè)像素的坐標(biāo)值,由于左視圖、視差圖以及前景圖中的感興趣區(qū)域是一樣的,所以V也是一樣的。
該算法是針對(duì)前景區(qū)域的局部視差優(yōu)化算法,其優(yōu)缺點(diǎn)明顯,該算法的優(yōu)點(diǎn):算法相對(duì)簡(jiǎn)單,運(yùn)算復(fù)雜度底;能克服紋理性差等因素造成的影響,生成完整的感興趣區(qū)域視差;算法只對(duì)視差進(jìn)行優(yōu)化,對(duì)前面的匹配等過(guò)程不造成影響;對(duì)三維點(diǎn)云有間接優(yōu)化作用,生成更多有效的三維點(diǎn),有助于三維重建與三維測(cè)距。
算法的缺點(diǎn):適用場(chǎng)合有限;算法存在一定的誤差,不滿足高精度要求;會(huì)增加有效視差圖生成的時(shí)間復(fù)雜度。
實(shí)驗(yàn)過(guò)程可以分為兩部分:第一部分,感興趣區(qū)域提取,即前景檢測(cè)和提取;第二部分,基于感興趣區(qū)域的視差優(yōu)化。
前景區(qū)域提取實(shí)驗(yàn)圖如圖2(a)、2(b)所示,利用幀差法獲得前景二值化圖,接著對(duì)二值化圖采用形態(tài)學(xué)最大連通域法有效去除黑斑,最后利用淹模法獲得前景真實(shí)像素圖。
圖2(a) 前景提取效果圖
圖2(b) 前景提取效果圖
圖3(a) 沒(méi)優(yōu)化效果圖
圖3(b) 優(yōu)化后效果圖
在獲得感興趣區(qū)域后(如圖 2(b)所示),利用本文提出的基于前景的視差優(yōu)化算法,對(duì)視差圖進(jìn)行優(yōu)化,得到較為完整的感興趣區(qū)域視差圖,其他非感興趣區(qū)域不處理,如圖3(b)所示。作為對(duì)比,圖3(a)為沒(méi)有采用本文提出的基于前景檢測(cè)的視差優(yōu)化算法,生成的視差圖。對(duì)比可以明顯看出本文提出的算法在視差優(yōu)化方面顯著的效果。
[1]章毓晉.圖像工程[M].北京:清華大學(xué)出版社, 2006.
[2]伊傳歷,劉冬梅,宋建中.改進(jìn)的基于圖像分割的立體匹配算法[J].計(jì)算機(jī)工程. 2008.
[3]Daniel Scharstein, Richard Szeliski. A taxonomy and evaluation of dense two-frame stereo correspondence algorithms[J].International Journal of Computer Vision,2002, 47(1/2/3): 7-42.
[4]Boykow Y, Kolmogorov V. An experimental comparison of min-cut/max-flow algorithms for energy minimization in vision [J].IEEE Transaction on Pattern Analysis and Machine Intelligence, 2004, 26(9): 1124-1137.
[5]Bleyer M, Gelautz M. A layered stereo algorithm using segmentation and global visibility constraions[J].ISPRS Journal of Photogrammetry and Remote Sensing,2005,59(3): 128-150.
[6]Bleyer M, Gelautz M. Graph-cut-based stereo matching using image segmentation with symmetrical treatment of occlusions[J].Signal Processing Image Communication. 2007,22(2): 127-143.
[7]Asmaa Hosni, Michael Bleyer, Margrit Gelautz, Christoph Rhemann. Local stereo matching using geodesic support weights-In international conference on image processing[J]2009. TR-188-2-2009-08.
[8]Qingxiong Yang, Liang Wang, Ruigang Yang, Henrik Stewenius,and David Nister, Stereo Matching with Color-Weighted Correlation, Hierarchical Belief Propagation, and Occlusion Handling, In IEEE Transactions on Pattern Analysis and Machine Intelligence[J].2009Vol.31,No.3, 492-504.
[9]Xiaoyong Lin, Yu Liu and Wenzhan Dai. Study of Occlusions Problem in Stereo Vision. In IEEE Proceedings of the 7th World Congress on Intelligent Control and Automation. [C].2008, 5062-5067.