一種基于邊緣分割和種子點(diǎn)的局部立體匹配方法
【專利摘要】本發(fā)明公開(kāi)了一種基于邊緣分割和種子點(diǎn)的局部立體匹配方法,所述的方法包括:A.利用邊緣輪廓構(gòu)造動(dòng)態(tài)變化匹配窗口;B.對(duì)視差值進(jìn)行一致性檢測(cè),得到視差種子點(diǎn);C.基于顏色差異將種子點(diǎn)的視差值傳遞給周?chē)欠N子點(diǎn);D.基于水平和豎直上的投票方法來(lái)消除錯(cuò)誤的匹配點(diǎn)。本發(fā)明根據(jù)邊緣提取方法提取邊緣輪廓,然后通過(guò)邊緣分割構(gòu)建匹配窗口,從而提高了分割的魯莽性和準(zhǔn)確性。通過(guò)采用基于顏色差異的種子點(diǎn)視差傳遞策略和基于投票的優(yōu)化方法,有利于得到精確的視差圖。
【專利說(shuō)明】—種基于邊緣分割和種子點(diǎn)的局部立體匹配方法【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及圖像處理領(lǐng)域,尤其涉及基于圖像的雙目立體匹配方法及其實(shí)現(xiàn)。
【背景技術(shù)】
[0002]通過(guò)給定的兩幅圖像得到稠密的視差圖是計(jì)算機(jī)視覺(jué)領(lǐng)域的研究熱點(diǎn)和難點(diǎn)。獲得精確的稠密視差圖之所以富于挑戰(zhàn),是因?yàn)槿缦乱蛩?1.低紋理信息區(qū)域。當(dāng)進(jìn)行匹配時(shí),噪聲會(huì)對(duì)匹配結(jié)果產(chǎn)生很大影響。2.遮擋問(wèn)題。當(dāng)深度不連續(xù)時(shí)會(huì)出現(xiàn)“foregroundfattening”現(xiàn)象。3.高紋理區(qū)域。4.重復(fù)紋理區(qū)域。
[0003]早期的立體視覺(jué)匹配方法是基于特征的,即它們首先使用興趣算子或者其它邊緣檢測(cè)器來(lái)提取潛在能夠匹配的圖像位置集合,然后使用基于塊的度量在其它圖像中搜索對(duì)應(yīng)的位置。因而得到的是稀疏的視差圖,如Matthies,Bolles。1996年,Collins提出邊緣才是唯一穩(wěn)定的特征并將其用于立體匹配。這個(gè)方向最新的工作是Zhang和Shan在2000年做的工作,他們關(guān)注于如何提取出高穩(wěn)定性的特征并使用它們作為種子以生長(zhǎng)出更多的匹配。
[0004]因?yàn)榛趫D像的渲染和建模中都需要稠密的視差圖,目前的立體匹配方法主要關(guān)注于稠密視差圖的獲取。Scharstein和Szeliski在2002年將立體匹配方法分為以下四個(gè)步驟:1.像素點(diǎn)匹配代價(jià)的計(jì)算。2.匹配代價(jià)的聚集。3.視差計(jì)算和優(yōu)化(亞像素)。4.視差求精(refinement)。立體匹配方法大致可以分為兩類:局部方法和全局方法。局部方法利用像素周?chē)钠ヅ浯翱趤?lái)計(jì)算匹配代價(jià),并通過(guò)WTA方法得到最優(yōu)的視差值;全局方法主要是采用了全局的優(yōu)化理論方法估計(jì)視差,建立全局能量函數(shù),通過(guò)最小化全局能量函數(shù)得到最優(yōu)視差值。
[0005]全局方法通常利用平滑性假設(shè),然后求解一個(gè)全局優(yōu)化問(wèn)題,即求取一個(gè)視差賦值來(lái)最小化一個(gè)包含數(shù)據(jù)和平滑項(xiàng)的全局代價(jià)函數(shù)。這些方法間的主要區(qū)別在于所使用的最小化過(guò)程,例如圖割方法(Boykov, Veksler和Zabih在2001年提出),置信傳遞方法(Sun, Zheng和Shum在2003年提出),期望最大化方法(Birchfield在2007年提出)。總的來(lái)說(shuō)全局方法的精度較高,但是速度較慢。
[0006]局部方法是基于匹配窗口的,它在計(jì)算一個(gè)給定點(diǎn)的視差值時(shí)依賴于局部有限窗口內(nèi)的灰度值。通過(guò)計(jì)算匹配窗口內(nèi)總的匹配代價(jià)(聚集過(guò)程),利用WTA策略選擇匹配代價(jià)最小的聚集值來(lái)確定視差。局部方法的代表有SSD方法,SGBM方法,Adapt.Weights方法,SegmentSup.方法等??偟膩?lái)說(shuō)局部方法獲得的視差圖的精度要差于全局方法,但是速度較快,適合于實(shí)時(shí)系統(tǒng)。
[0007]局部立體匹配方法的關(guān)鍵是找到合適的匹配窗口。最先采用固定窗口(FixedWindow),效果很差。1999年Bobick和Intille引入固定在不同點(diǎn)的多窗口以提高匹配窗口的靈活性。 Okutomi等利用自適應(yīng)大小窗口,根據(jù)區(qū)域信息動(dòng)態(tài)改變窗口大小,提高了匹配效果。2006年Yoon和Kweon提出了基于彩色分割方法,這是局部方法里一個(gè)里程碑式的改進(jìn),使得局部方法的精度可以與全局方法相媲美。后來(lái)又提出了通過(guò)分割的方法得到匹配窗口。
[0008]目前已經(jīng)出現(xiàn)了很多局部立體匹配方法,但是在時(shí)間復(fù)雜度和視差圖精度方面仍然需要進(jìn)行改進(jìn)。
【發(fā)明內(nèi)容】
[0009]1.一種基于邊緣分割和種子點(diǎn)的局部立體匹配方法,其特征在于包括:
[0010]A.利用邊緣輪廓構(gòu)造動(dòng)態(tài)變化匹配窗口 ;
[0011]B.對(duì)視差值進(jìn)行一致性檢測(cè),得到視差種子點(diǎn);
[0012]C.基于顏色差異將種子點(diǎn)的視差值傳遞給周?chē)欠N子點(diǎn);
[0013]D.基于水平和豎直上的投票方法來(lái)消除錯(cuò)誤的匹配點(diǎn)。
[0014]2.如權(quán)利要求1所述的方法,其特征在于,在步驟A中利用Canny邊緣檢測(cè)方法提取輪廓,將提取得到的邊緣作為條件來(lái)構(gòu)造匹配窗口。
[0015]3.如權(quán)利要求1所述的方法,其特征在于,將像素點(diǎn)P周?chē)狞c(diǎn)分為內(nèi)點(diǎn)和外點(diǎn),所有的內(nèi)點(diǎn)構(gòu)成P的匹配窗口。匹配窗口的構(gòu)造過(guò)程是尋找所以內(nèi)點(diǎn)的過(guò)程。
[0016]4.如權(quán)利要求1所述的方法,其特征在于,在步驟A中像素點(diǎn)p的匹配窗口通過(guò)如下過(guò)程獲得:以像素點(diǎn)為起始點(diǎn),在豎直方向上,在上、下兩個(gè)方向上標(biāo)記內(nèi)點(diǎn),直到遇到邊緣像素點(diǎn)而停止;以豎直方向上得到的內(nèi)點(diǎn)為起始點(diǎn),在水平方向上,在左、右兩個(gè)方向上標(biāo)記內(nèi)點(diǎn),直到遇到邊緣像素點(diǎn)而停止;以上標(biāo)記的所有內(nèi)點(diǎn)構(gòu)成該像素點(diǎn)的匹配窗口。匹配窗口最大為31X31,最小為3X3。
[0017]5.如權(quán)利要求1中所述的方法,其特征在于,在所述步驟B之前得到的視差值進(jìn)行一致性檢測(cè)。通過(guò)了一致性檢測(cè)的像素點(diǎn),被標(biāo)記為種子點(diǎn);否則,被標(biāo)記為非種子點(diǎn)。
[0018]6.如權(quán)利要求5所述的方法,其特征在于,一致性檢測(cè)方法為:對(duì)于左圖中的像素點(diǎn)P,通過(guò)WTA策略找到右圖中與之匹配的像素點(diǎn)q,以及對(duì)應(yīng)的視差值disp(L);對(duì)于右圖中的像素點(diǎn)q,通過(guò)WTA策略找到左圖中與之匹配的像素點(diǎn)p’,以及對(duì)應(yīng)的視差值disp (R)。如果disp(L)等于disp (R),則通過(guò)了一致性檢測(cè);否則,未通過(guò)。
[0019]7.如權(quán)利要求1所述的方法,其特征在于,在步驟C中循環(huán)地尋找非種子點(diǎn),一旦找到非種子點(diǎn),則其視差值通過(guò)其周?chē)姆N子點(diǎn)的視差值得到。循環(huán)直到全部的非種子點(diǎn)視差值都求得之后才結(jié)束。所有的非種子點(diǎn)和種子點(diǎn)的視差值構(gòu)成了完整的稠密視差圖。
[0020]8.如權(quán)利要求7所述的方法,其特征在于,對(duì)于非種子點(diǎn)P,我們?cè)谒椒较蛏?,P的兩側(cè)分別找到距離P點(diǎn)最近的左、右非種子點(diǎn)SI和S2,SI和S2的視差值分別為displ和disp2。如果displ < disp2,則像素點(diǎn)p的視差值被賦值為displ和disp2之間的較小者。否則像素點(diǎn)P的視差值通過(guò)顏色差異來(lái)得到。
[0021]9.如權(quán)利要求8所述的方法,其特征在于,顏色差異的方法為:對(duì)于非種子點(diǎn)P,我們分別比較P和SI和S2的顏色差異。如果P和SI的顏色差異大于p和S2的顏色差異,則將S2的視差值賦值給p ;否則,將SI的視差值賦值給P。顏色差異是像素P和像素q在RGB空間里的R、G、B三通道的灰度值差異的絕對(duì)值之和。
[0022]10.如權(quán)利要求1所述的方法,其特征在于,由步驟C得到的視差圖中仍然存在錯(cuò)誤的視差值,我們先后通過(guò)水平和垂直方向上的投票機(jī)制來(lái)消除它們。
[0023]水平方向上,對(duì)任意相鄰像素點(diǎn)p和q,若它們的視差值的差值的絕對(duì)值大于一個(gè)設(shè)定的閾值,則在像素點(diǎn)P的兩側(cè)構(gòu)建分割段,其依據(jù)為顏色差異的大小。然后在分割段里的所有像素點(diǎn)的視差值進(jìn)行投票,得到票數(shù)最多的視差值賦值給像素點(diǎn)P。
[0024]在垂直方向上,在像素點(diǎn)p兩側(cè)構(gòu)建分割段(p,P-N / 2)和(p,p+N / 2),其中N為分割段的長(zhǎng)度。在分割段里進(jìn)行投票,得到票數(shù)最多的視差值將賦值給像素點(diǎn)P。
[0025]有益效果
[0026]本發(fā)明根據(jù)Canny方法得到的邊緣輪廓構(gòu)造局部匹配窗口,通過(guò)一致性檢測(cè)生成一系列的視差種子點(diǎn);然后通過(guò)新的基于顏色差異的傳遞方法將種子點(diǎn)的視差值賦值給周?chē)姆欠N子點(diǎn),從而得到稠密的反映深度信息的視差圖。本發(fā)明中的方法能夠自動(dòng)地調(diào)整局部匹配窗口,通過(guò)種子點(diǎn)的視差值傳遞得到精確的稠密視差圖。具有魯莽性好、精度高、時(shí)間復(fù)雜度低的優(yōu)點(diǎn),得到的視差圖可以進(jìn)一步實(shí)現(xiàn)3D重建。
【專利附圖】
【附圖說(shuō)明】
[0027]圖1為本發(fā)明的一種基于邊緣分割和種子點(diǎn)的立體匹配方法的結(jié)構(gòu)示意圖;
[0028]圖2為本發(fā)明的一種立體匹配方法實(shí)施例的流程圖;
[0029]圖3為本發(fā)明的一種根據(jù)邊緣輪廓生成局部匹配窗口的原理示意圖;
[0030]圖4為本發(fā)明的雙目立體視覺(jué)系統(tǒng)的結(jié)構(gòu)原理圖;
[0031]圖5為本發(fā)明的立體匹配過(guò)程中依賴的對(duì)極幾何原理圖。
【具體實(shí)施方式】
[0032]下面通過(guò)【具體實(shí)施方式】結(jié)合附圖2對(duì)本發(fā)明進(jìn)行詳細(xì)說(shuō)明。
[0033]立體匹配方法通過(guò)匹配兩個(gè)不同的攝像機(jī)視圖的像素點(diǎn),從而獲得像素點(diǎn)的視差圖和深度信息。這兩個(gè)視圖必須要有一定的重疊區(qū)域(否則無(wú)法進(jìn)行匹配),通常可以通過(guò)數(shù)碼相機(jī)或者攝像機(jī)得到。
[0034]在局部立體匹配方法中,為了提高匹配的準(zhǔn)確性,需要以像素點(diǎn)為中心構(gòu)建一個(gè)匹配窗口,匹配的時(shí)計(jì)算匹配窗口內(nèi)的總的匹配代價(jià)。由于在深度不連續(xù)的地方,會(huì)出現(xiàn)“Foreground flattening”現(xiàn)象,因此動(dòng)態(tài)調(diào)整匹配窗口至關(guān)重要。
[0035]請(qǐng)參考圖1,在本發(fā)明的一種實(shí)施例中,我們通過(guò)步驟stepl?step8,最終獲得了精確的稠密視差圖,整個(gè)過(guò)程包括圖像的采集、攝像機(jī)的校正、邊緣輪廓的提取、匹配窗口的構(gòu)建、匹配代價(jià)的計(jì)算、WTA策略、一致性檢測(cè)、視差值的傳遞和視差圖的優(yōu)化等部分。具體步驟如下:
[0036]Stepl:圖像的采集和攝像機(jī)的標(biāo)定。
[0037]1.圖像的采集。通過(guò)數(shù)碼相機(jī)或攝像機(jī)采集圖像,圖像之間要有一定的重疊區(qū)域。
[0038]2.攝像機(jī)的標(biāo)定。得到兩臺(tái)攝像機(jī)之間幾何關(guān)系。
[0039]Step2:調(diào)整攝像機(jī)間的角度和距離,輸出行對(duì)準(zhǔn)的校正圖像(左圖像和右圖像)。行對(duì)準(zhǔn)指的是兩圖像在同一個(gè)平面上,并且圖像的每一行是嚴(yán)格對(duì)齊的(具有相同的方向和y坐標(biāo))。
[0040]Step3:通過(guò)Canny邊緣提取方法提取左右圖像的邊緣輪廓。Canny邊緣提取方法是目前公認(rèn)性能最好的邊緣提取方法之一。我們將提取到的邊緣輪廓上的像素點(diǎn)的灰度值設(shè)為255,將其它像素點(diǎn)的灰度值設(shè)為0,這樣就得到了以灰度值255和0標(biāo)識(shí)的邊緣輪廓圖1I。
[0041]Step4:利用St印3中得到的邊緣輪廓構(gòu)造動(dòng)態(tài)變化的匹配窗口。在局部立體匹配中一個(gè)關(guān)鍵的因素是如何根據(jù)像素周?chē)男畔?dòng)態(tài)調(diào)整匹配窗口的大小,從而使得在匹配窗口中的所有像素具有相同或像素的視差值。本步驟通過(guò)邊緣分割來(lái)構(gòu)造動(dòng)態(tài)的匹配窗口,原理圖如附圖3。
[0042]對(duì)于左圖中的任意像素點(diǎn)p(x,y),我們將它周?chē)南袼攸c(diǎn)分為兩類:內(nèi)點(diǎn)和外點(diǎn),所有內(nèi)點(diǎn)(包括像素點(diǎn)P本身)構(gòu)成像素點(diǎn)P的匹配窗口。接著我們要做的就是尋找像素點(diǎn)P周?chē)乃袃?nèi)點(diǎn),方法如下:
[0043]1.我們以像素點(diǎn)p為起始點(diǎn),首先在正I軸(豎直向上的方向)尋找內(nèi)點(diǎn)。將遇到的所有像素點(diǎn)q(x,y’)標(biāo)記為內(nèi)點(diǎn),直到如下兩種情況之一出現(xiàn)為止:一是發(fā)現(xiàn)像素點(diǎn)q為邊緣輪廓上的一個(gè)像素點(diǎn);二是像素點(diǎn)P和像素點(diǎn)q的距離(因?yàn)镻和q的橫坐標(biāo)相同,他們的距離就是y軸上的距離)大于L(L是用來(lái)限制匹配窗口的最大值,可以設(shè)定為10)。同樣,在負(fù)y軸(豎直向下的方向)上以像素點(diǎn)P為起始點(diǎn)來(lái)尋找內(nèi)點(diǎn)。將遇到的所有像素點(diǎn)q標(biāo)記為內(nèi)點(diǎn),直到上面介紹過(guò)的兩種情況之一的出現(xiàn)為止。
[0044]在具體實(shí)施的時(shí)候,我們可以根據(jù)邊緣輪廓圖1l中p(x,y)周?chē)南袼攸c(diǎn)的灰度值來(lái)判斷是否為邊緣點(diǎn):若q(x,I,)的灰度值為255,則說(shuō)明q是一個(gè)邊緣點(diǎn),此時(shí)滿足上面情況,內(nèi)點(diǎn)標(biāo)記停止;若q(x, y’ )的灰度值為0,則說(shuō)明不是邊緣點(diǎn),應(yīng)該標(biāo)記為內(nèi)點(diǎn)。
[0045]2.通過(guò)上面的方法,我們已經(jīng)得到了以像素點(diǎn)p為中心的在豎直方向(y軸)上所有的內(nèi)點(diǎn)ql,q2,q3...。接下來(lái)我們通過(guò)y軸方向上的內(nèi)點(diǎn)構(gòu)造水平方向上的內(nèi)點(diǎn):以這些內(nèi)點(diǎn)為起始點(diǎn)(例如ql(x,y’),我們?cè)谒较蜃?X軸負(fù)方向)和水平向右(X軸正方向)上將遇到的所以像素點(diǎn)標(biāo)記為內(nèi)點(diǎn),直到如下兩種情況之一出現(xiàn)為止:一是發(fā)現(xiàn)像素點(diǎn)s(x’,y’ )為邊緣輪廓上的一個(gè)像素點(diǎn);二是像素點(diǎn)s和像素點(diǎn)ql之間的距離(由于他們的縱坐標(biāo)相同,他們的距離就是水平距離)大于L(與上面相同,設(shè)定為10)。
[0046]同樣我們根據(jù)邊緣輪廓圖1l中ql(x,y’ )周?chē)南袼攸c(diǎn)的灰度值來(lái)判斷是否為邊緣點(diǎn),與前面介紹的方法相同。
[0047]這樣通過(guò)I和2我們標(biāo)記處了像素點(diǎn)p周?chē)乃袃?nèi)點(diǎn),包括豎直方向上的內(nèi)點(diǎn)ql,q2,q3...和以它們?yōu)橹行臉?biāo)記的水平內(nèi)點(diǎn)sl,s2,s3...。這些內(nèi)點(diǎn)構(gòu)成了像素點(diǎn)P周?chē)钠ヅ浯翱?。除去?nèi)點(diǎn)之外的所有像素點(diǎn)為外點(diǎn)。
[0048]在本實(shí)例中,我們可以選擇一個(gè)二維數(shù)組來(lái)標(biāo)識(shí)像素點(diǎn)p的匹配窗口:ucharmask[21] [21] (21 = 2*L+1)。當(dāng)mask中的一個(gè)元素的值為I時(shí)代表的是一個(gè)內(nèi)點(diǎn),為0代表的是一個(gè)外點(diǎn)。一個(gè)可能的mask數(shù)組的值為:
[0049]Mask [21] [21] = {
[0050]{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
[0051]{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
[0052]{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
[0053]{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
[0054]{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
[0055]{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
[0056]{0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0},[0057]{0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0},
[0058]{0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0},
[0059]{0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0},
[0060]{0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0},
[0061] {0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0},
[0062] {0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0},
[0063]{0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0},
[0064]{0,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0},
[0065]{0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0},
[0066]{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
[0067]{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
[0068]{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
[0069]{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
[0070]{0,0,0,0,0,0,0`,0,0,0,0,0,0,0,0,0,0,0,0,0,0}}
[0071]可以看到Mask由值為0或者I的元素構(gòu)成,所有為I的元素是像素P的內(nèi)點(diǎn),從而它們構(gòu)成像素點(diǎn)P的匹配窗口。注意:像素點(diǎn)P對(duì)應(yīng)Mask 二維數(shù)組中的Mask[10] [10],匹配窗口是以像素點(diǎn)P為中心,在P的周?chē)袼攸c(diǎn)中找到的。
[0072]St印5:在局部匹配窗口中計(jì)算匹配代價(jià)。匹配窗口內(nèi)的匹配代價(jià)的計(jì)算方法有很多種,如 SAD(sum of absolute differences), SSD (sum of squared differences),STAD (sum of truncated differences)。在本實(shí)例中為了提高性能,我們選擇STAD方法來(lái)計(jì)算匹配代價(jià),它的計(jì)算公式如下:
[0073]CSTAD(p,d) ^ I ip)~ I?sh\q%T)
i = R;C,B
[0074]CAgg(P>d) = S cSTaAs
!SU(P)
[0075]Step6:利用WTA選擇最優(yōu)的視差值。對(duì)于左圖中的像素點(diǎn)P,我們需要在右圖中的搜索范圍為[0,dmax) (dmax是可能出現(xiàn)的最大的視差值)內(nèi)尋找匹配代價(jià)最小的像素點(diǎn)q(x-d,y),并把此時(shí)的視差值d昨晚像素點(diǎn)p的視差值。不斷重復(fù)這個(gè)過(guò)程,我們就能夠找到左圖像中所有像素點(diǎn)的視差值。
[0076]Step7:一致性檢測(cè)。有上一步得到的視差值中存在著很多錯(cuò)誤的匹配點(diǎn),這是由于遮擋、低紋理和高紋理因素的影響所導(dǎo)致的。這一步我們采用一致性檢測(cè)來(lái)消除這些錯(cuò)誤匹配的點(diǎn),從而得到可信度較高的、可以認(rèn)為是正確的視差值種子點(diǎn)。具體而言就是:對(duì)于左圖中的每一個(gè)像素點(diǎn)P(x,y),我們找到右圖中的匹配點(diǎn)q(x_dl,y),它的視差值為dl ;然后以右圖中像素點(diǎn)q(x_dl,y)為基準(zhǔn),找到左圖中與之最匹配的匹配點(diǎn)p’(x-dl+d2,y),如果P就是P’,這意味著dl == d2,那么我們就說(shuō)像素點(diǎn)p通過(guò)了一致性檢測(cè),我們將其標(biāo)記為視差種子點(diǎn);否則,我們便將其標(biāo)記為非種子點(diǎn)。
[0077]StepS ;將種子點(diǎn)的視差值傳遞給非種子點(diǎn)。由St印7將左圖中所有的像素帶你分為兩類:視差種子點(diǎn)和非視差種子點(diǎn)。視差種子點(diǎn)的視差值具有很高的可信度,我們將其視為正確的視差值。而通過(guò)視差種子點(diǎn)構(gòu)成的視差圖是稀疏的視差圖,我們需要將這些種子點(diǎn)的視差值傳遞給周?chē)姆且暡罘N子點(diǎn),從而構(gòu)成了稠密的視差圖。[0078]有學(xué)者提出通過(guò)插值法來(lái)實(shí)現(xiàn):非種子點(diǎn)的視差值通過(guò)周?chē)罱彽姆N子點(diǎn)的視差值的插值方法來(lái)得到,并對(duì)深度不連續(xù)的區(qū)域和遮擋區(qū)域進(jìn)行特殊處理(選取較小的視差值作為它的非種子點(diǎn)的視差值)。本發(fā)明采用另外一種新的視差值傳遞方法,它采用顏色差異比較來(lái)進(jìn)行傳遞,具有更好的實(shí)現(xiàn)效果。
[0079]對(duì)于左圖中的每一個(gè)非種子點(diǎn)P,我們?cè)谒椒较虻膬啥藢ふ易罱彽姆N子點(diǎn)(此處我們假設(shè)SL,SR分別為左邊最近鄰種子點(diǎn)和右邊最近鄰種子點(diǎn)),SL和SR的視差值分別為dL, dR。
[0080]我們首先比較dL和dR的大小,如果dL < dR,說(shuō)明像素點(diǎn)p位于深度信息不連續(xù)的區(qū)域,而且像素點(diǎn)P極有可能位于遮擋區(qū)域。此時(shí)我們將點(diǎn)P標(biāo)記為處于遮擋區(qū)域,它的視差值為min(dL, dR)。
[0081]如果dL > dR,此時(shí)我們通過(guò)比較像素點(diǎn)p和SL和SR的顏色差異來(lái)選取最終的視差值。具體而言如下:如果P和SL的顏色差異較小,我們選擇SL的視差值作為非種子點(diǎn)p的視差值;否則,我們選擇SR的視差值作為非種子點(diǎn)p的視差值。
[0082]顏色差異的定義如下
【權(quán)利要求】
1.一種基于邊緣分割和種子點(diǎn)的局部立體匹配方法,其特征在于包括: A.利用邊緣輪廓構(gòu)造動(dòng)態(tài)變化匹配窗口; B.對(duì)視差值進(jìn)行一致性檢測(cè),得到視差種子點(diǎn); C.基于顏色差異將種子點(diǎn)的視差值傳遞給周?chē)欠N子點(diǎn); D.基于水平和豎直上的投票方法來(lái)消除錯(cuò)誤的匹配點(diǎn)。
2.如權(quán)利要求1所述的方法,其特征在于,在步驟A中利用Canny邊緣檢測(cè)方法提取輪廓,將提取得到的邊緣作為條件來(lái)構(gòu)造匹配窗口。
3.如權(quán)利要求1所述的方法,其特征在于,將像素點(diǎn)p周?chē)狞c(diǎn)分為內(nèi)點(diǎn)和外點(diǎn),所有的內(nèi)點(diǎn)構(gòu)成P的匹配窗口。匹配窗口的構(gòu)造過(guò)程是尋找所以內(nèi)點(diǎn)的過(guò)程。
4.如權(quán)利要求1所述的方法,其特征在于,在步驟A中像素點(diǎn)p的匹配窗口通過(guò)如下過(guò)程獲得:以像素點(diǎn)為起始點(diǎn),在豎直方向上,在上、下兩個(gè)方向上標(biāo)記內(nèi)點(diǎn),直到遇到邊緣像素點(diǎn)而停止;以豎直方向上得到的內(nèi)點(diǎn)為起始點(diǎn),在水平方向上,在左、右兩個(gè)方向上標(biāo)記內(nèi)點(diǎn),直到遇到邊緣像素點(diǎn)而停止;以上標(biāo)記的所有內(nèi)點(diǎn)構(gòu)成該像素點(diǎn)的匹配窗口。匹配窗口最大為31X31,最小為3X3。
5.如權(quán)利要求1中所述的方法,其特征在于,在所述步驟B之前得到的視差值進(jìn)行一致性檢測(cè)。通過(guò)了一致性檢測(cè)的像素點(diǎn),被標(biāo)記為種子點(diǎn);否則,被標(biāo)記為非種子點(diǎn)。
6.如權(quán)利要求5所述的方法,其特征在于,一致性檢測(cè)方法為:對(duì)于左圖中的像素點(diǎn)P,通過(guò)WTA策略找到右圖中與之匹配的像素點(diǎn)q,以及對(duì)應(yīng)的視差值disp(L);對(duì)于右圖中的像素點(diǎn)q,通過(guò)WTA策略找到左圖中與之匹配的像素點(diǎn)P’,以及對(duì)應(yīng)的視差值disp(R)。如果disp(L)等于disp(R),則通過(guò)了一致性檢測(cè);否則,未通過(guò)。
7.如權(quán)利要求1所述的方法,其特征在于,在步驟C中循環(huán)地尋找非種子點(diǎn),一旦找到非種子點(diǎn),則其視差值通過(guò)其周?chē)姆N子點(diǎn)的視差值得到。循環(huán)直到全部的非種子點(diǎn)視差值都求得之后才結(jié)束。所有的非種子點(diǎn)和種子點(diǎn)的視差值構(gòu)成了完整的稠密視差圖。
8.如權(quán)利要求7所述的方法,其特征在于,對(duì)于非種子點(diǎn)p,我們?cè)谒椒较蛏希琾的兩側(cè)分別找到距離P點(diǎn)最近的左、右非種子點(diǎn)SI和S2,SI和S2的視差值分別為displ和disp2。如果displ < disp2,則像素點(diǎn)p的視差值被賦值為displ和disp2之間的較小者。否則像素點(diǎn)P的視差值通過(guò)顏色差異來(lái)得到。
9.如權(quán)利要求8所述的方法,其特征在于,顏色差異的方法為:對(duì)于非種子點(diǎn)P,我們分別比較P和SI和S2的顏色差異。如果P和SI的顏色差異大于p和S2的顏色差異,則將S2的視差值賦值給p ;否則,將SI的視差值賦值給P。顏色差異是像素P和像素q在RGB空間里的R、G、B三通道的灰度值差異的絕對(duì)值之和。
10.如權(quán)利要求1所述的方法,其特征在于,由步驟C得到的視差圖中仍然存在錯(cuò)誤的視差值,我們先后通過(guò)水平和垂直方向上的投票機(jī)制來(lái)消除它們。 水平方向上,對(duì)任意相鄰像素點(diǎn)P和q,若它們的視差值的差值的絕對(duì)值大于一個(gè)設(shè)定的閾值,則在像素點(diǎn)P的兩側(cè)構(gòu)建分割段,其依據(jù)為顏色差異的大小。然后在分割段里的所有像素點(diǎn)的視差值進(jìn)行投票,得到票數(shù)最多的視差值賦值給像素點(diǎn)P。在垂直方向上,在像素點(diǎn)P兩側(cè)構(gòu)建分割段(P,P-N / 2)和(p,p+N / 2),其中N為分割段的長(zhǎng)度。在分割段里進(jìn)行投票,得到票數(shù)最多的視差值將賦值給像素點(diǎn)P。
【文檔編號(hào)】G06T7/00GK103489183SQ201310404483
【公開(kāi)日】2014年1月1日 申請(qǐng)日期:2013年9月4日 優(yōu)先權(quán)日:2012年10月17日
【發(fā)明者】趙勇, 胡剛, 張亞莉, 袁譽(yù)樂(lè) 申請(qǐng)人:北京大學(xué)深圳研究生院