一種面向單視點繪制的空洞填補方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于數(shù)字圖像處理及立體成像領(lǐng)域,涉及一種面向單視點繪制的空洞填補 方法,可以有效改善基于單視點繪制的虛擬視點質(zhì)量。 技術(shù)背景
[0002] 基于深度的圖像繪制(DIBR)技術(shù)通過采用彩色圖和與其一致的深度圖繪制虛擬 視點。該技術(shù)在繪制虛擬視點的過程中,參考視點中一些被前景遮擋的區(qū)域在虛擬視點圖 像上會形成較大的空洞,這種空洞被稱為Disoclusion。
[0003] 針對Disoclusion的空洞填補是基于單視點的虛擬視點繪制(SVD)所要解決的關(guān) 鍵問題之一。前人對該問題進行的研究工作可以分為兩大類:1)深度圖預(yù)處理;2)彩色圖 后處理。本發(fā)明屬于深度圖預(yù)處理一類。張等人提出一種對深度圖進行全局濾波來降低深 度不連續(xù)處的銳利程度。處理后的深度圖繪制的虛擬視圖中Disoclusion空洞減小了,易 于修補。但是該方法會導(dǎo)致繪制的虛擬視點出現(xiàn)幾何畸變,失真嚴(yán)重。Lee等人在全局濾波 的基礎(chǔ)上進行改進,只針對于會產(chǎn)生Disoclusion的區(qū)域進行深度圖局部濾波。該種方法 使得繪制虛擬視點失真區(qū)域變小,但是在場景中不同對象的交接處還是存在明顯的幾何失 真。Xu等人提出一種基于深度邊界膨脹的深度圖預(yù)處理方法。采用該方法處理后的深度圖 繪制虛擬視點中的Disoclusion位置發(fā)生了改變。Disoclusion從前景背景的交界處移位 到了背景區(qū)域,從而使得空洞周圍色彩都是背景像素,沒有明顯差異,圖像修復(fù)效果得到大 大改善,但是還存在一些尾影失真,大的空洞區(qū)域色彩模糊等問題。
【發(fā)明內(nèi)容】
[0004] 為克服現(xiàn)有技術(shù)的不足,本發(fā)明的目的是在分析Disoclusion的位置和大小與深 度圖深度像素分布關(guān)系的基礎(chǔ)上,通過對深度圖深度值變化銳利并且位于背景部分的像素 進行線性差值,采用分而治之的策略,實現(xiàn)基于單視點繪制的空洞填補方法,有效改善繪制 虛擬視點的質(zhì)量。為此,本發(fā)明采取的技術(shù)方案是,一種面向單視點繪制的空洞填補方法, 包括如下步驟:
[0005] 一 :Disoclusion 區(qū)域檢測
[0006] 通過遍歷深度圖的像素進行Disoclusion區(qū)域檢測;
[0007] 二:深度圖局部膨脹
[0008] 依據(jù)上述檢測的區(qū)域進行深度邊界局部膨脹。膨脹像素為從檢測到Disoclusion 位置開始的前η個水平像素;
[0009] 三:深度圖邊界區(qū)域線性差值
[0010] 依據(jù)檢測區(qū)域進行深度邊界區(qū)域線性差值;
[0011] 四:深度圖中值濾波
[0012] 對調(diào)整后的深度圖進行中值濾波,去除孤立的像素;
[0013] 五:虛擬視點繪制
[0014] 采用處理后的深度圖進行虛擬視點繪制,得到繪制后的虛擬視點。采用圖像修補 方法對圖像進行殘留空洞的修補,得到最終的虛擬視點。
[0015] 通過遍歷深度圖的像素進行Disoclusion區(qū)域檢測具體步驟為:Disoclusion產(chǎn) 生于深度圖深度像素變化銳利的區(qū)域,也就是相鄰像素深度差大于某一定義閾值的區(qū)域, 定義公式如下:
[0016] df(x, y) = d(x-l, y)-d(x, y)
[0017] 其中d(x,y)表示位于坐標(biāo)(x,y)處的深度像素值,df(x,y)表示相鄰深度像素 (x,y)和(x-l,y)處的水平深度差,如果df(x,y)大于定義的閾值T。,則坐標(biāo)(x,y)處標(biāo)記 為深度不連續(xù)區(qū)域。將上述檢測的深度不連續(xù)區(qū)域進行標(biāo)記,標(biāo)記公式如下:
[0021] 其中X。表示b(x。,y) = 1.處的橫坐標(biāo),條件d(xQ+k, y)_d(x。,y) < T。用于限制其 他前景像素不被標(biāo)記為mask,Disoclusion區(qū)域的寬度等于df (X,y) 〇
[0022] 進行深度邊界區(qū)域線性差值具體步驟是,調(diào)整位于掩模標(biāo)記區(qū)域的深度值,線性 差值的算法從第η個像素開始,定義如下:
[0024] 其中cT表示重定義的深度像素。
[0025] 擴張 η個像素,η的取值為3。
[0026] 與已有技術(shù)相比,本發(fā)明的技術(shù)特點與效果:
[0027] 發(fā)明依據(jù)深度圖與虛擬視點的關(guān)系,提出一種面向單視點繪制的空洞填補方法, 將Disoclusion區(qū)域的深度值通過線性差值的方法進行調(diào)整,這樣合成虛擬視點中的 Disoclusion區(qū)域變成一些易于修補的小洞,優(yōu)先保證顯著的前景區(qū)域不產(chǎn)生失真,通過最 大化的利用背景像素,有效的改善了繪制虛擬視點的質(zhì)量。
【附圖說明】
[0028] 圖1給出了 Venus原始彩色圖、深度圖和Disoclusion空洞區(qū)域的標(biāo)記圖。
[0029] 圖2給出了不同方法的空洞填補效果對比圖。
[0030] 圖3給出了使用本發(fā)明的方法流程圖。
【具體實施方式】
[0031] 本發(fā)明依據(jù)Disoclusion產(chǎn)生原理,實現(xiàn)了 一種面向單視點繪制的空洞填補方 法,具體的技術(shù)方案分為下列步驟:
[0032] I :Disoclusion 區(qū)域檢測
[0033] 首先通過遍歷深度圖的像素進行Disoclusion區(qū)域檢測,標(biāo)記為一個掩模。 Disoclusion產(chǎn)生于深度圖深度像素變化銳利的區(qū)域,也就是相鄰像素深度差大于某一定 義閾值的區(qū)域。定義公式如下:
[0034] df (X,y) = d (x-1,y) -d (X,y)
[0035] 其中d(x,y)表示位于坐標(biāo)(X,y)處的深度像素值,df (X,y)表示相鄰深度像素 (x,y)和(x-l,y)處的水平深度差,如果df(x,y)大于定義的閾值T。,則坐標(biāo)(x,y)處標(biāo)記 為深度不連續(xù)區(qū)域。將上述檢測的深度不連續(xù)區(qū)域進行標(biāo)記,標(biāo)記公式如下:
[0039] 其中X。表示b(x。,y) = 1.處的橫坐標(biāo),條件d(xQ+k, y)_d(x。,y) < T。用于限制其 他前景像素不被標(biāo)記為mask。Disoclusion區(qū)域的寬度等于df (X,y) 〇
[0040] 2 :深度圖局部膨脹
[0041] 依據(jù)上述檢測的區(qū)域進行深度邊界局部膨脹。膨脹像素為從檢測到Disoclusion 位置開始的前η個水平像素。
[0042] 3 :深度圖線性差值
[0043] 依據(jù)檢測區(qū)域進行深度邊界區(qū)域線性差值,調(diào)整位于掩模標(biāo)記區(qū)域的深度值。線 性差值的算法從第η個像素開始,定義如下:
[0045] 其中cT表示重定義的深度像素。
[0046] 4:深度圖中值濾波
[0047] 對調(diào)整后的深度圖進行中值濾波,去除孤立的像素。
[0048] 5 :虛擬視點繪制
[