摘 要:本文基于視點重構(gòu)單元進行研究,通過深度圖繪制算法(Depth Image Based Rendering簡稱DIBR)探討圖像合成所需的視差源序列——虛擬視點,以實現(xiàn)多視點裸眼立體圖像合成的預(yù)處理階段,實驗結(jié)果表明采用DIBR算法不僅可以極大地減少參考圖像的數(shù)量,而且還能產(chǎn)生實時高效且具有任意位置的虛擬視點圖像,非常符合多視點裸眼立體顯示中視點源序列的需求。
關(guān)鍵詞:DIBR算法;虛擬視點;圖像合成
中圖分類號:TP391.41
1 引言(DIBR算法)
本文基于裸眼多視點立體電視進行研究,采用“二維+深度信息”的解決方法,即在我們平常所看到的二維圖像基礎(chǔ)上增加一個Z分量的圖像(即深度圖),從而使用戶產(chǎn)生立體視覺[1]。這種設(shè)計理念追本溯源就是最大程度的重復(fù)使用二維世界的內(nèi)容和概念,其關(guān)鍵在于虛擬視點的合成。
本文圍繞參考圖像和與其對應(yīng)的深度信息合成場景中的虛擬視點圖像進行了相關(guān)研究。實驗結(jié)果表明DIBR算法不僅可以極大地減少參考圖像的數(shù)量,而且還能產(chǎn)生實時高效且具有任意位置的虛擬視點圖像,非常符合多視點裸眼立體顯示中視點源序列的需求。
2 坐標空間
基于DIBR算法實現(xiàn)虛擬視點繪制,需要準確的反映真實場景與圖像平面的變換,因此需要通過坐標系間的相互轉(zhuǎn)換來實現(xiàn)。這里與之密切相關(guān)的坐標系有:世界坐標系,攝像機坐標系,圖像坐標系、像素坐標系。
(1)世界坐標系(X,Y,Z)是客觀世界的絕對坐標,它不但說明了真實世界里物體所在的位置,還指明了觀察攝像機在真實世界所處的位置[2]。它可以設(shè)定為任意位置,但一旦選擇,就不能隨意改變。
(2)攝像機坐標系,即以攝像機的光心為坐標原點制定的坐標系統(tǒng)(Xc,Yc,Zc)。這兩個坐標系之間關(guān)系可以表述為公式(1):
(3)圖像坐標系:用二維矩陣(x,y)表示,是三維空間點對成像平面上的投影。
(4)像素坐標系:以像素為單位,用二維矩陣(u,v)表示,是三維空間點在成像平面所處的具體位置。其中(u0,v0)是圖像坐標系坐標原點在像素坐標系上的坐標。
3 針孔相機模型
CCD攝像機的光學(xué)成像原理一般是由針孔相機模型(或稱作線性成像模)來表示,模型如圖(1)所示。假設(shè)P點是三維空間中的任意一點,則P點和相機光心Oc的連線在成像平面的交點p即為P點在圖像平面上所成圖像的位置。假設(shè)P點的世界坐標是(X,Y,Z),攝像機的坐標是(Xc,Yc,Zc),圖像坐標是(x,y),像素坐標是(u,v)。如果P點的世界坐標和相機的相關(guān)參數(shù)是已知的,那么P點的圖像坐標(x,y)可由攝像機坐標(Xc,Yc,Zc)和相機的焦距?得出,如公式(3)所示:
假設(shè)相機參數(shù)和一個三維空間點的世界坐標已知,那么由此可以計算出該點在成像平面上所對應(yīng)的坐標,從而得出針孔相機模型中像素坐標與世界坐標的關(guān)系[2],用公式(4)表示:
下面對公式(4)作具體說明:P是3×4的投影矩陣,由攝像機的內(nèi)部參數(shù)?/dx,?/dy,u0,v0及其外部參數(shù)R,t共同決定。已知空間任意一點P,如果已知了它的世界坐標P=(X,Y,Z,1)T,則可推出P的像素坐標p(u,v);同理,若已知空間某點P在圖像平面的投影點坐標及其深度值Z,便可得出P點的世界坐標(X,Y,Z,1)T[5]。
4 3D渲染方程
DIBR算法是采用已知圖像及其每個像素對應(yīng)的深度值,通過3D變換(3D Warping)合成虛擬視點的過程。該過程主要可以分為以下兩步:首先由深度信息將已知圖像上的所有像素點重新投影到與之對應(yīng)的3D空間中的位置;第二,再將這些三維空間點投影到目標圖像的平面上[7]。這種由二維到三維的重投影及從三維到二維的投影方法簡稱為三維圖像變換。
三維圖像變換是基于深度圖將已知圖像的像素點投影到虛擬視點的圖像中的,在針孔相機的模型中,三維空間點的世界坐標和像素坐標二者間的關(guān)系如公式(5)的推導(dǎo)[1]:
其中A1,R1,t1是參考相機的參數(shù),A1為相機的內(nèi)參矩陣,R1,t1為外參矩陣;Z1在攝像機坐標系中是Z軸分量在三維空間點相應(yīng)于參考相機的深度值。由公式(5)可以得出參考視點所在像素平面的點(u1,v1)投影到與之對應(yīng)的3D空間點(X,Y,Z)。
其中A2,R2,t2為虛擬相機的相機參數(shù),A2是內(nèi)參矩陣,R2,t2是外參矩陣;Z2為三維空間點與虛擬相機對應(yīng)的深度值。通過公式(6),3D空間點(X,Y,Z)在虛擬視點圖像平面上投影點為(u2,v2)。
假設(shè)世界坐標系和參考視點的攝像機坐標系重合,則以上兩式合并得出適用真實的場景的3D圖像變換方程,即3D渲染方程:
根據(jù)3D渲染方程,m1,m2分別為參考視點圖像和虛擬視點圖像成像平面中的像素點;A1,A2分別是參考相機和虛擬相機的內(nèi)參矩陣;Z1,Z2分別是該三維空間點所對應(yīng)的三維空間對應(yīng)于參考相機和虛擬相機的深度;R一般是一個3×3的矩陣,為虛擬相機對應(yīng)于參考相機的旋轉(zhuǎn)矩陣;t一般也是3×1的矩陣,為虛擬相機對應(yīng)于參考相機的平移矩陣。從而通過3D渲染方程,便可實現(xiàn)DIBR算法中將任一像素點從參考圖像視點到虛擬圖像視點的映射[1]。
5 DIBR算法的實驗
為了驗證本文的算法有效性,實驗采用微軟研究院(Microsoft Research)交換視覺媒體組提供的ballet序列和breakdancers序列進行測試。這些測試序列是由8個視點組成,每個視點分別包括100幀彩色圖像和由其立體對應(yīng)計算的深度圖。每幅圖片的分辨率為1024×768。每兩個攝像機的水平間距為20cm且成一維弧形排列。
程序流程圖:
實驗結(jié)果及分析
實驗結(jié)果如圖3所示。本文利用假設(shè)分析方法和固定參數(shù)代入法進行了大量實驗,主要對參考相機,虛擬相機參數(shù)以及旋轉(zhuǎn)角度R和平移方向T進行調(diào)整。
通過DIBR算法進行視點變換,發(fā)現(xiàn)合成的虛擬視點圖像質(zhì)量存在很多問題。主要包括:重疊問題,重采樣問題和空洞問題。這些問題是今后研究的重點。
參考文獻:
[1]馮雅美.自然三維電視系統(tǒng)中虛擬視點繪制技術(shù)研究[D].浙江:浙江大學(xué),2010.
[2]陳思利,李鵬程.一種基于DIBR的虛擬視點合成算法[J].成都電子機械高等專科學(xué)校學(xué)報,2010(1):15-19.
[3]胡培成.三維信息提取中的攝像機標定技術(shù)研究[D].南京:南京航空航天大學(xué),2007.
[4]林牲.多視點自由立體圖像合成算法研究[D].天津:天津大學(xué),2007.
[5]劉占偉.多視點視頻中基于圖像的繪制技術(shù)研究[D].上海:上海大學(xué),2008.
[6]劉占偉,安平,劉蘇醒.基于DIBR和圖像融合的任意視點繪制[J].中國圖象圖形學(xué)報,2010(1):49-51.
作者簡介:史曉云(1986.6-),女,陜西西安人,助理工程師,研究方向:軟件工程。