雙目立體匹配可劃分為四個(gè)步驟:匹配代價(jià)計(jì)算、代價(jià)聚合、視差計(jì)算和視差優(yōu)化。
Step1 匹配代價(jià)計(jì)算
匹配代價(jià)計(jì)算的目的是衡量待匹配像素與候選像素之間的相關(guān)性。兩個(gè)像素?zé)o論是否為同名點(diǎn),都可以通過匹配代價(jià)函數(shù)計(jì)算匹配代價(jià),代價(jià)越小則說明相關(guān)性越大,是同名點(diǎn)的概率也越大。
每個(gè)像素在搜索同名點(diǎn)之前,往往會(huì)指定一個(gè)視差搜索范圍D(Dmin ~ Dmax),視差搜索時(shí)將范圍限定在D內(nèi),用一個(gè)大小為W×H×D(W為影像寬度,H為影像高度)的三維矩陣C來存儲(chǔ)每個(gè)像素在視差范圍內(nèi)每個(gè)視差下的匹配代價(jià)值。矩陣C通常稱為DSI(Disparity Space Image)。
匹配代價(jià)計(jì)算的方法有很多,傳統(tǒng)的攝影測量中,使用灰度絕對值差(AD,Absolute Differences)、灰度絕對值差之和(SAD,Sum of Absolute Differences)、歸一化相關(guān)系數(shù)(NCC,Normalized Cross-correlation)等方法來計(jì)算兩個(gè)像素的匹配代價(jià);計(jì)算機(jī)視覺中,多使用互信息(MI,Mutual Information)法、Census變換(CT,Census Transform)法、Rank變換(RT, Rank Transform)法、BT(Birchfield and Tomasi)法等作為匹配代價(jià)的計(jì)算方法。不同的代價(jià)計(jì)算算法都有各自的特點(diǎn),對各類數(shù)據(jù)的表現(xiàn)也不盡相同,選擇合適的匹配代價(jià)計(jì)算函數(shù)是立體匹配中不可忽視的關(guān)鍵步驟。
下圖為DSI示意圖(C(x,y,d)代表像素(x,y)在視差為d時(shí)的匹配代價(jià)):
Step2 代價(jià)聚合
代價(jià)聚合的根本目的是讓代價(jià)值能夠準(zhǔn)確的反映像素之間的相關(guān)性。上一步匹配代價(jià)的計(jì)算往往只會(huì)考慮局部信息,通過兩個(gè)像素鄰域內(nèi)一定大小的窗口內(nèi)的像素信息來計(jì)算代價(jià)值,這很容易受到影像噪聲的影響,而且當(dāng)影像處于弱紋理或重復(fù)紋理區(qū)域,這個(gè)代價(jià)值極有可能無法準(zhǔn)確的反映像素之間的相關(guān)性,直接表現(xiàn)就是真實(shí)同名點(diǎn)的代價(jià)值非最小。
而代價(jià)聚合則是建立鄰接像素之間的聯(lián)系,以一定的準(zhǔn)則,如相鄰像素應(yīng)該具有連續(xù)的視差值,來對代價(jià)矩陣進(jìn)行優(yōu)化,這種優(yōu)化往往是全局的,每個(gè)像素在某個(gè)視差下的新代價(jià)值都會(huì)根據(jù)其相鄰像素在同一視差值或者附近視差值下的代價(jià)值來重新計(jì)算,得到新的DSI,用矩陣S來表示。
實(shí)際上代價(jià)聚合類似于一種視差傳播步驟,信噪比高的區(qū)域匹配效果好,初始代價(jià)能夠很好的反映相關(guān)性,可以更準(zhǔn)確的得到最優(yōu)視差值,通過代價(jià)聚合傳播至信噪比低、匹配效果不好的區(qū)域,最終使所有影像的代價(jià)值都能夠準(zhǔn)確反映真實(shí)相關(guān)性。常用的代價(jià)聚合方法有掃描線法、動(dòng)態(tài)規(guī)劃法、SGM算法中的路徑聚合法等。
下圖為代價(jià)聚合前后視差圖示意圖:
Step3 視差計(jì)算
視差計(jì)算即通過代價(jià)聚合之后的代價(jià)矩陣S來確定每個(gè)像素的最優(yōu)視差值,通常使用贏家通吃算法(WTA,Winner-Takes-All)來計(jì)算,如下圖所示,即某個(gè)像素的所有視差下的代價(jià)值中,選擇最小代價(jià)值所對應(yīng)的視差作為最優(yōu)視差。這一步非常簡單,這意味著聚合代價(jià)矩陣S的值必須能夠準(zhǔn)確的反映像素之間的相關(guān)性,也表明上一步代價(jià)聚合步驟是立體匹配中極為關(guān)鍵的步驟,直接決定了算法的準(zhǔn)確性。
Step4 視差優(yōu)化
視差優(yōu)化的目的是對上一步得到的視差圖進(jìn)行進(jìn)一步優(yōu)化,改善視差圖的質(zhì)量,包括剔除錯(cuò)誤視差、適當(dāng)平滑以及子像素精度優(yōu)化等步驟,一般采用左右一致性檢查(Left-Right Check)算法剔除因?yàn)檎趽鹾驮肼暥鴮?dǎo)致的錯(cuò)誤視差;采用剔除小連通區(qū)域算法來剔除孤立異常點(diǎn);采用中值濾波(Median Filter)、雙邊濾波(Bilateral Filter)等平滑算法對視差圖進(jìn)行平滑;另外還有一些有效提高視差圖質(zhì)量的方法如魯棒平面擬合(Robust Plane Fitting)、亮度一致性約束(Intensity Consistent)、局部一致性約束(Locally Consistent)等也常被使用。
由于WTA算法所得到的視差值是整像素精度,為了獲得更高的子像素精度,需要對視差值進(jìn)行進(jìn)一步的子像素細(xì)化,常用的子像素細(xì)化方法是一元二次曲線擬合法,通過最優(yōu)視差下的代價(jià)值以及左右兩個(gè)視差下的代價(jià)值擬合一條一元二次曲線,取二次曲線的極小值點(diǎn)所代表的視差值為子像素視差值。如下圖所示。
局部匹配算法的步驟一般包括匹配代價(jià)計(jì)算、代價(jià)聚合和視差計(jì)算三個(gè)步驟,全局算法則包括匹配代價(jià)計(jì)算,視差計(jì)算與視差優(yōu)化三個(gè)步驟,半全局算法SGM則四個(gè)步驟都有。
-
立體匹配
+關(guān)注
關(guān)注
0文章
11瀏覽量
8760
原文標(biāo)題:雙目立體匹配步驟詳解
文章出處:【微信號(hào):vision263com,微信公眾號(hào):新機(jī)器視覺】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論