金 鑒,卓東風(fēng),王安紅
(太原科技大學(xué)數(shù)字媒體與通信研究所,太原 030024)
隨著科技的發(fā)展,3D視頻越來(lái)越多地走進(jìn)人們的生活,不論是3D立體電影還是立體視覺(jué)會(huì)議都能為人們提供很好的立體沉浸感,而這種立體沉浸感是通過(guò)分別向兩個(gè)眼睛提供不同角度的兩個(gè)紋理視頻源產(chǎn)生的,因此,3D視頻相較于傳統(tǒng)的視頻方式(向兩只眼睛提供相同的一個(gè)紋理視頻源)具有更大的數(shù)據(jù)量,而隨著自由視點(diǎn)視頻概念的提出,要求為用戶(hù)提供可任意轉(zhuǎn)變觀看角度的視覺(jué)感官,這就要求進(jìn)行多個(gè)視點(diǎn)的信息采集和傳輸,從而對(duì)存儲(chǔ)空間和傳輸帶寬造成更大的壓力。
針對(duì)這種情況,人們提出了基于深度圖像的繪制方法(DIBR)[1-3],通過(guò)DIBR我們只需要傳輸一個(gè)視點(diǎn)的紋理信息以及其對(duì)應(yīng)的深度信息就能繪制出任意視點(diǎn)的圖像,而深度信息的數(shù)據(jù)量只有紋理信息的20%左右。因此,DIBR的提出,極大減少了3D視頻的數(shù)據(jù)量,提高了3D視頻的可行性。然而,深度圖質(zhì)量會(huì)很大程度影響DIBR的繪制質(zhì)量,而深度圖像的失真主要集中在前景與背景的過(guò)渡區(qū)域。對(duì)此,本文將提出一種基于前景的過(guò)渡像素深度劃歸方法,以此來(lái)解決過(guò)渡像素的深度失真問(wèn)題,最終提高繪制質(zhì)量。
在DIBR算法中,3D映射是極其重要的一步,它首先將已知參考視點(diǎn)圖像中的像素及其對(duì)應(yīng)的深度信息投影到世界空間中,然后再將世界坐標(biāo)中的像素根據(jù)所要繪制的虛擬視點(diǎn)的位置信息投影到虛擬視點(diǎn)中??梢哉f(shuō),3D映射是平面圖像和現(xiàn)實(shí)的立體場(chǎng)景之間相互轉(zhuǎn)化的橋梁和紐帶。而世界空間中同一點(diǎn)在不同視點(diǎn)的坐標(biāo)也是不同的,稱(chēng)之為視差。本文主要針對(duì)1D平行模式(只存在水平方向的視差)進(jìn)行分析,因此,給出1D模型的視差計(jì)算如公式(1)所示:
(1)
其中xL,xR分別為空間一點(diǎn)x(對(duì)應(yīng)的深度值為d)在左右兩個(gè)視點(diǎn)中的橫坐標(biāo)。L,fx分別為基線長(zhǎng)度和相機(jī)的焦距長(zhǎng)度。Znear,Zfar分別為場(chǎng)景的最近和最遠(yuǎn)景深[4],D即為視差。由于對(duì)固定的3D采集系統(tǒng),L,fx,Znear,Zfar均為常量,因此,空間中某一點(diǎn)對(duì)左右兩個(gè)視點(diǎn)的視差D與該點(diǎn)的深度d成正比。同時(shí)公式(1)也體現(xiàn)了3D映射的過(guò)程。
(2)
現(xiàn)實(shí)場(chǎng)景中往往會(huì)存在一些區(qū)域介于前景和背景之間,呈現(xiàn)過(guò)渡狀態(tài),如圖1的綠色方框所示。這些區(qū)域通常只有一個(gè)像素大小的寬度,在紋理上表現(xiàn)為其色彩及亮度為前景與背景的內(nèi)插值,我們稱(chēng)之為過(guò)渡像素。同理,其對(duì)應(yīng)的深度圖的深度值上也呈現(xiàn)這種過(guò)渡現(xiàn)象。一般而言,過(guò)渡像素的出現(xiàn)是由于在生成深度圖過(guò)程中采用深度估計(jì)的時(shí)候,過(guò)渡像素所在位置很難找到對(duì)應(yīng)的匹配點(diǎn),因此只能采用類(lèi)似于紋理信息的處理方法,將其深度值也估計(jì)為前景與背景深度的內(nèi)插值。然而,這樣的估計(jì)方法會(huì)在繪制虛擬視點(diǎn)時(shí)造成失真。通常,過(guò)渡像素存在于前景物體的左右兩側(cè),為研究方便,本文假設(shè)用左原始視點(diǎn)指導(dǎo)繪制右虛擬視點(diǎn),并且選擇前景物體右側(cè)的過(guò)渡像素為研究對(duì)象(左側(cè)的過(guò)渡像素也同樣存在該問(wèn)題,為簡(jiǎn)化敘述將其省略)。
注:其中方框?yàn)榫植糠糯髨D,過(guò)渡像素出現(xiàn)在桌子與背景墻之間,呈現(xiàn)為過(guò)渡顏色。
圖1過(guò)渡像素示意圖
Fig.1Illustrationofthetransitionalpixels
繪制失真主要體現(xiàn)在兩方面:其一,過(guò)渡像素?cái)U(kuò)散到背景中,形成偽影;其二,背景像素侵蝕到前景中,改變前景物體的形狀。如圖2所示,(1)表示原始視點(diǎn)的紋理圖,其中T表示過(guò)渡像素區(qū)域,其位置是貼近前景的,根據(jù)該紋理圖(1)所繪制出的新虛擬視點(diǎn)的紋理圖如(2)中所示,由于T區(qū)域的深度值介于前景和背景之間,因此在繪制出的新視點(diǎn)紋理圖中T區(qū)域?qū)?huì)擴(kuò)散到背景中,這種現(xiàn)象稱(chēng)為過(guò)渡像素的擴(kuò)散。而在后期空洞填補(bǔ)完成后部分背景像素將會(huì)填充到原來(lái)過(guò)渡像素的位置,如(3)中所示,這種現(xiàn)象為背景像素的侵蝕。
注:(1)表示原始視點(diǎn)的紋理圖;(2)表示用原始視點(diǎn)的紋理圖繪制的新視點(diǎn)紋理圖;(3)表示新視點(diǎn)完成空洞填補(bǔ)后的效果圖。F(foreground),表示前景區(qū)域;B(background),表示背景區(qū)域;T(transition),過(guò)渡區(qū)域;H(holes),空洞區(qū)域。
圖2繪制失真與過(guò)渡像素關(guān)系示意圖
Fig.2Illustrationofthedistortiongeneratedbytransitionpixels
下面我們將詳細(xì)分析造成這兩種失真的具體原因。如圖3所示,(1)表示原始視點(diǎn)的紋理圖及其對(duì)應(yīng)的深度圖,在繪制新視點(diǎn)時(shí),經(jīng)過(guò)3D映射之后,由公式(1)、(2)的分析,深度連續(xù)的部分將會(huì)繼續(xù)維持原來(lái)的位置狀態(tài)出現(xiàn)在虛擬視點(diǎn)中,如圖3(1)和3(2)F的像素,映射后像素將會(huì)繼續(xù)維持原有的位置狀態(tài)。相反深度不連續(xù)的部分將會(huì)出現(xiàn)分離,如圖3(2)所示,F(xiàn)部分與T部分的分離,以及T部分和B部分的分離。分離之后將會(huì)產(chǎn)生空洞,如3(2)中白色像素所示,即為空洞H,空洞像素一般用背景像素填補(bǔ),如3(3)所示。在原始視點(diǎn)中過(guò)渡像素(T)是緊緊挨著前景像素的,但在新視點(diǎn)中二者出現(xiàn)了分離,從而出現(xiàn)了繪制失真。而此類(lèi)現(xiàn)象的出現(xiàn)是由于采用線性插值造成了過(guò)渡像素的深度誤差。
前面提到了過(guò)渡像素的深度值為前景與背景深度的內(nèi)插值,這樣造成過(guò)渡像素的深度值不合理,從而在繪制虛擬視點(diǎn)時(shí)會(huì)出現(xiàn)繪制失真。本文針對(duì)該現(xiàn)象提出一種基于前景的過(guò)渡像素深度劃歸方法,即將過(guò)渡像素的深度值界定為前景像素的深度值,而不再是內(nèi)插值,具體原因分析如下:
注:圓點(diǎn)表示像素,表示紋理圖中的像素,與之對(duì)應(yīng)的黑灰色像素代表其深度像素。
圖3該圖是圖2的剖面圖
Fig.3TheprofilefigureofFig.2
一方面,假如將過(guò)渡像素的深度值界定為背景像素的深度值,這樣過(guò)渡像素與背景像素將會(huì)是連續(xù)的深度值,則過(guò)渡像素將被視為背景的一部分,映射后將會(huì)繼續(xù)保持與背景像素緊緊相連,而由于前景與過(guò)渡像素間的深度不連續(xù),原有的相鄰的位置狀態(tài)將不會(huì)繼續(xù)維持,虛擬視點(diǎn)中前景與過(guò)渡像素之間將會(huì)出現(xiàn)空洞,其繪制后的結(jié)果如圖4中所示,繪制失真仍然存在;另一方面,假如將過(guò)渡像素的深度值界定為前景像素的深度值,那么過(guò)渡像素的深度值將會(huì)與前景像素的深度值保持連續(xù),3D映射后將會(huì)繼續(xù)保持映射前相鄰的位置狀態(tài),而在過(guò)渡像素與背景之間將會(huì)出現(xiàn)空洞,其繪制后的結(jié)果如圖5所示,可以看到繪制出來(lái)的新視點(diǎn)的過(guò)渡像素仍然與前景物體緊緊相連,依然是前景物體延伸的一部分,而沒(méi)有出現(xiàn)過(guò)渡像素的擴(kuò)散以及背景像素的侵蝕的繪制失真問(wèn)題。因此,將過(guò)渡像素的深度劃歸為前景物體更為合理,會(huì)消除繪制失真的問(wèn)題。
圖4 將過(guò)渡像素的深度值界定為背景像素的深度值繪制新視點(diǎn)時(shí),繪制失真仍然存在。Fig.4 Rendering distortion still exists,when we treattransition pixels depth as background depth.
圖5 將過(guò)渡像素的深度值界定為前景像素的深度值繪制新視點(diǎn)時(shí),繪制失真消失。Fig.5 Rendering distortion disappears,when we treattransition pixels depth as foreground depth.
明確了過(guò)渡像素的深度劃歸問(wèn)題之后,主要任務(wù)是判斷出這些過(guò)渡像素的位置。本文提出了一種方法,即相鄰像素的深度值做差,如果差大于一個(gè)閾值θ,那么其中的一個(gè)像素將會(huì)被判斷為過(guò)渡像素。本小節(jié)主要介紹如何設(shè)定該閾值,通過(guò)閾值找到過(guò)渡像素的具體位置。
上一小節(jié)中介紹了參考視點(diǎn)中相鄰的深度相同兩點(diǎn),在映射之后將會(huì)仍然保持原有的位置狀態(tài),而深度不連續(xù)的區(qū)域在映射后其原本的位置狀態(tài)將可能發(fā)生變化,甚至?xí)霈F(xiàn)相鄰的兩點(diǎn)在映射后分離,產(chǎn)生空洞的現(xiàn)象。由于過(guò)渡像素處于前景背景交界,其深度值為前景與背景像素深度的內(nèi)插值,映射后會(huì)出現(xiàn)過(guò)渡像素既與前景像素分離又與背景像素分離的現(xiàn)象。下面將結(jié)合3D映射公式對(duì)該現(xiàn)象進(jìn)行分析。
由式(1)和式(2)做差可得式(3):
(3)
(4)
(5)
由式(4)可見(jiàn),當(dāng)相鄰像素之差d-d′≥ΔZmax,在映射之后就會(huì)產(chǎn)生空洞。據(jù)此,將ΔZmax設(shè)為閾值θ,如果相鄰三個(gè)像素的深度值之差均小于等于-θ(對(duì)于前景左側(cè)過(guò)渡像素,為相鄰三個(gè)像素的深度值之差均大于等于θ),那么中間的像素將會(huì)被判定為過(guò)渡像素。
具體做法如下,假設(shè)原始視點(diǎn)的深度圖中像素的坐標(biāo)為(x,y),其對(duì)應(yīng)的深度值為d(x,y),與其相鄰左側(cè)和右側(cè)像素的坐標(biāo)分別為(x-1,y)和(x+1,y).如果滿足式(6):
(6)
則位于坐標(biāo)(x,y)的像素為前景的右側(cè)過(guò)渡像素,如果滿足式(7),則位于坐標(biāo)(x,y)的像素為前景的左側(cè)過(guò)渡像素。
(7)
通過(guò)上一小結(jié)的分析我們能夠準(zhǔn)確的判別出過(guò)渡像素的位置,本小結(jié)將對(duì)過(guò)渡像素的深度值進(jìn)行重新劃歸,即將過(guò)渡像素的深度值重新賦值,實(shí)現(xiàn)基于前景的過(guò)渡像素深度的劃歸方法。具體做法如下:
如果該過(guò)渡像素滿足式(6),即為前景右側(cè)過(guò)渡像素,則將相鄰左側(cè)前景像素的深度值賦予過(guò)渡像素如式(8):
d(x,y)=d(x-1,y)
(8)
如果該過(guò)渡像素滿足式(7),即為前景左側(cè)過(guò)渡像素,則將相鄰右側(cè)前景像素的深度值賦予過(guò)渡像素如式(9):
d(x,y)=d(x+1,y)
(9)
總結(jié)我們所提出的基于前景的過(guò)渡像素深度劃歸方法,其整體流程如圖6所示。
步驟1:將原始視點(diǎn)的深度圖的相鄰像素做差(后一個(gè)像素減去前一個(gè)像素,如式(6)和(7)所示);
步驟2:如果相鄰三個(gè)像素的兩個(gè)差值均小于等于-θ(即,滿足式(6)的關(guān)系),則中間像素被判別為前景右側(cè)過(guò)渡像素,與其相鄰左側(cè)像素為前景像素,其深度值將會(huì)被賦予該過(guò)渡像素,如式(8)所示;如果相鄰三個(gè)像素的兩個(gè)差值均大于等于θ(即,滿足式(4)的關(guān)系),則中間像素被判別為前景左側(cè)過(guò)渡像素,與其相鄰右側(cè)像素為前景像素,其深度值將會(huì)被賦予該過(guò)渡像素,如式(9)所示;
步驟3:經(jīng)過(guò)處理的原始視點(diǎn)深度圖將會(huì)作為新的原始視點(diǎn)深度圖用來(lái)指導(dǎo)虛擬視點(diǎn)的繪制。
圖6 基于前景的過(guò)渡像素深度的劃歸方法流程圖Fig.6 Framework of foreground-based decision oftransition pixels depth
本文是基于VSRS虛擬視點(diǎn)繪制實(shí)驗(yàn)軟件平臺(tái)進(jìn)行實(shí)驗(yàn)的。
實(shí)驗(yàn)采用了Microsoft提供的Kendo,Balloons序列,韓國(guó)GIST機(jī)構(gòu)提供的Café序列,MPEG提供的Book Arrival序列,以及Philip公司提供的Mobile序列。
表1 未經(jīng)處理的深度圖指導(dǎo)繪制出的虛擬視點(diǎn)和結(jié)合本文方法處理后的深度圖指導(dǎo)繪制出的虛擬視點(diǎn)質(zhì)量對(duì)比Tab.1 Comparisons between virtual views rendered byusing the original depth image and the novel depth imagewith our algorithm respectively
實(shí)驗(yàn)主要分兩部分:
其一,對(duì)已有的實(shí)驗(yàn)序列不經(jīng)過(guò)任何處理,并在VSRS平臺(tái)上繪制虛擬視點(diǎn),記錄結(jié)果;
其二,運(yùn)用本文提出的方法對(duì)這些實(shí)驗(yàn)序列先進(jìn)行預(yù)處理,具體處理方法參照2.4節(jié)所述,該過(guò)程用Matlab編程實(shí)現(xiàn)完成。之后用預(yù)處理過(guò)的深度序列在VSRS實(shí)驗(yàn)平臺(tái)上進(jìn)行繪制,并記錄結(jié)果。
具體的實(shí)驗(yàn)結(jié)果如表1所示。
通過(guò)表1可以發(fā)現(xiàn),我們的方法在Philip公司提供的Mobile序列中提升效果明顯,這是由于該序列為虛擬序列,因此紋理圖像能夠與深度圖像得到很好的對(duì)齊,可參考文獻(xiàn)[6],本文方法能夠很好的提升繪制視點(diǎn)的質(zhì)量。而其余序列由于深度圖是通過(guò)深度估計(jì)得出,紋理和深度得不到較好的對(duì)齊,因此本文的方法效果不是很顯著(Café序列只提升了0.01 dB,其余三個(gè)序列持平)。
闡述了一種基于前景的過(guò)渡像素深度劃歸方法,其優(yōu)點(diǎn)在于可以減少繪制過(guò)程失真問(wèn)題。通過(guò)實(shí)驗(yàn)驗(yàn)證,該方法對(duì)于紋理與深度對(duì)齊的視頻序列,其繪制虛擬視點(diǎn)的質(zhì)量有顯著的提升。
參考文獻(xiàn):
[1] PULLI K.Surface Reconstruction and Display from Range and Color Data[M].PhD dissertation,University of Washington,1997.
[2] OLIVEIRA M M,BISHOP G,MCALLISTER D.Relief texture mapping[C]∥Proceedings of the 27th annual conference on computer graphics and interactive techniques,Louisiana USA:2000.
[3] 劉占偉,安平,劉蘇醒,等.基于DIBR和圖像融合的任意視點(diǎn)繪制[J].中國(guó)圖像圖形學(xué)報(bào),2007(10):1696-1700.
[4] 曾耀先.基于DIBR的多視點(diǎn)圖像繪制方法研究[J].企業(yè)技術(shù)開(kāi)發(fā),2011(4):10-13.
[5] TIAN D,LAI P L,LOPEZ P,et al.View synthesis techniques for 3D video[J].Proceedings of applications of digital image processing XXXII,2009,7443:1-11.
[6] ZHAO Y,ZHU C,CHEN Z,et al.Boundary artifact reduction in view synthesis of 3D-video:From perspective of texture-depth alignment[J].Proceedings of IEEE transactions on broadcasting,2011(6):510-523.