立體匹配——左右一致性檢測、遮擋區域填充

來源:https://blog.csdn.net/u010368556/article/details/75371035
左右一致性檢測(Left-Right Consistency(LRC) check):

左右檢測對實驗效果的提升是很顯著的,無論是視差圖的視覺效果還是數據精度。很多時候LRC都是論文的遮羞布,在論文主體部分優勢不明顯的情況下,通過LRC依然能得到過得去的結果,從而掩蓋了核心算法的孱弱。是的,一些不錯的會議文章也是這么干的。這就是論文寫作的小trick吧,也是一種潛規則了。

[Occlusion]遮擋,顧名思義是只出現在一幅圖像,而在另一幅圖中看不到的那些點。在立體匹配算法中如果不針對遮擋區域做一些特殊處理是不可能通過單幅圖提供的有限信息得到遮擋點的正確視差的。遮擋點通常是一塊連續的區域,記作occluded region/area。

[LRC check] LRC check的作用是實現遮擋檢測(Occlusion Detection),得到左圖對應的遮擋圖像。 具體做法:根據左右兩幅輸入圖像,分別得到左右兩幅視差圖。對于左圖中的一個點p,求得的視差值是d1,那么p在右圖里的對應點應該是(p-d1),(p-d1)的視差值記作d2。若|d1-d2|>threshold,p標記為遮擋點(occluded point)。

如下依次是,左圖的視差圖,右圖的視差圖,teddy左圖,左圖對應的二值遮擋圖。
[圖片上傳失敗...(image-6b8de2-1532239908133)]

[圖片上傳失敗...(image-eeb7ca-1532239908134)]
[Occlusion Filling]得到了二值的遮擋圖像,之后是為所有黑色的遮擋點賦予合理的視差值。對于左圖而言,遮擋點一般存在于背景區域和前景區域接觸的地方。遮擋的產生正是因為前景比背景的偏移量更大,從而將背景遮蓋。 具體賦值方法是:對于一個遮擋點p,分別水平往左和往右找到第一個非遮擋點,記作pl、pr。點p的視差值賦成pl和pr的視差值中較小的那一個。d(p)= min (d(pl),d(pr))(Occluded pixels have the depth of the background)。
下面依次是左圖的視差圖,進行occlusion filling后的視差圖。

[圖片上傳失敗...(image-38629b-1532239748802)]

[圖片上傳失敗...(image-bb833e-1532239748802)]

[Median Filtering]這種簡單的Occlusion Filling方法在遮擋區域賦值方面效果顯著,但是對初始視差的合理性和精度依賴較高。而且會出現類似于動態規劃算法的水平條紋,所以其后常常跟著一個中值濾波步驟以消除條紋。

下圖是中值濾波的結果。

          [圖片上傳失敗...(image-a05f5-1532239748802)]

[圖片上傳失敗...(image-4d09c9-1532239748802)]

這樣,通過LRC check檢測出遮擋點,對其進行視差估計,再對整幅圖做中值濾波,得到的結果就好多了。

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容