江 山,陳曉西,劉晨曦,黃張英
多層顯示技術 (multi-layer display,MLD),是由PureDepth公司研發(fā)的立體顯示技術[1]。其基本原理是通過一個顯示器內布置兩個以上的顯示屏幕,在不同的顯示屏中顯示有差異的視頻圖像,當然這個圖像是經過處理的有一定的深度信息的,通過多個顯示屏幕的合成效果,就可以達到立體顯示效果。
麻省理工學院媒體實驗室在2011年對技術進行了改進,該實驗室公開了他們關于裸眼3D技術的研究成果,可以視作光場三維顯示的最新進展。他們提出了基于衰減型和偏振型兩種多層結構的光場三維顯示。
本文主要以衰減圖的計算為核心,對3D多層屏顯示算法進行一個優(yōu)化整合,并在硬件上加以實現,得到了較為滿意的結果。
所謂投影圖,就是相機在不同視角捕捉得到的物體的圖像。不同視角拍攝得到圖片將會擁有圖像的方位信息,將這些信息加以利用,便可近似地模擬出原物體的光場信息。將這些投影圖通過算法便可計算出三層衰減圖[3]。
我們在通過模擬來獲取物體投影圖。首先定義視場角 (field of view,FOV)的概念,視場角就是人眼 (或者相機)觀察物體的最大張角[4]。它又分水平視場角和垂直視場角。在本文中視場角是針對物體而言的,即物體在一定范圍內發(fā)出的光線的集合,如圖1所示。
由于物體發(fā)出的光場信息是連續(xù)的,所以我們只能通過采樣的方式,獲取一定數量的投影視圖。具體的采樣方式就是對視場角的正切值進行等分,擺放5×5相機陣列同焦平面的捕捉畫面[5]。物體的投影視圖保留了物體各個方位的信息,將這些信息通過接下來的算法,便可模擬出圖像真實的光場信息[6]。
圖1 視場角示意圖
三層屏分別通過多屏顯卡驅動顯示。在背光燈的照射下,從第一屏上方向下看,便可以看到多層屏綜合顯示的效果。多層3D顯示模塊的基本構成如圖2所示,大致上由前、中、后3層液晶顯示層及背光源組成[2]。
圖2 多層3D顯示模塊
首先,計算衰減圖的原材料就是上一節(jié)所說的不同視角的投影圖,不考慮光線在傳播過程中的能量損失 (屏與屏之間的距離非常小,能量大小幾乎不變),以光線貫穿三層屏路徑上的像素點線性相加來盡最大可能接近實際投影圖,為這個算法的核心思想[7]。
該算法的主要模型如圖3所示。圖中的3個平面分別對應3個衰減圖形。貫穿3個平面的直線代表實際光場中的任意一條光線。直線與平面法線的夾角就是相應的視角。觀察點位于第一層平面的正上方,從而觀察到來自3個平面發(fā)出來的光的集合。坐標系的x,y方向分別平行于平面的水平與豎直方向,z方向為平面的法線方向。在后面的分析中主要以x,y方向的坐標為主。
先根據初始定義的視場角θFOV的大小,來決定觀察點的位置。假設觀察點所在平面距離焦平面的距離為z,則最大橫向偏移或縱向偏移量為:
該最大偏移指的是觀察點在一定高度 (z為定值)能夠活動的x,y方向的范圍大小。
再對其進行等間距取值,這樣可以得到每個觀察點的橫縱坐標。5×5幅投影圖中任意一幅上的任意一個像素點值都代表著某一束光線對應的強度,而這個光線對應的強度我們用其貫穿3個平面交點像素值線性來表示。接下來我們所要知道的就是光線與3層屏的交點像素值的大小。
我們以中間屏幕為參考面,找到對應 (m,n)的像素點。假設屏幕間的間距為l,經過 (m,n)偏向角為θ的光線與第一層屏和第三層屏依次相交于 (xA,yA),(xC,yC),如圖3所示。
A和C點的坐標通過式(2)和式(3)也可以很簡單地求出。
圖3 光線路徑圖
假設A,B,C三個交點對應的像素值為PA,PB,PC,則模擬出來這條光線的強度,即為三者之和。若最后相應位置模擬出來的光線強度與實際光場信息相一致,則說明效果較好[8],相當于以下函數的極小值:
式中,P=PA+PB+PC,B為原真實光場信息,即5×5投影視圖中視角為θ的圖的 (m,n)坐標的像素點值。求解的方法采用最小二乘法[9],通過調用Matlab中的函數lsqlin進行求解,求解模型如下:式中,xnum為投影圖水平像素個數,ynum為投影圖豎直像素個數,經過多次迭代,直到收斂。得到三層衰減屏該顯示的圖像內容,再根據函數返回值可得到殘差和重構出來的圖像,與原圖可以進行一個比對,以此來評判效果的好壞程度。
本實驗采用顯卡為藍寶石 (Sapphire)ATI FirePro 2450 PCI-E X16多屏專業(yè)顯卡,其核心為ATI FirePro 2450,專為需要在多個屏幕上查看和操作多個內容源的金融和企業(yè)專業(yè)人士而設計。4個DVI和VGA輸出端口,2個VHDCI接口,最大數字分辨率為1 920×1 200,512 MB顯存。
實驗中采用的三層屏為藍色背光,屏幕的分辨率為1 024×768,屏幕間距為11 mm。
3DSMAX是目前最流行的一款功能強大的專業(yè)三維建模、動畫和圖像制作軟件[10],可創(chuàng)建人物、物品等物體的三維立體模型,然后通過設置相機陣列就可得到通過相機鏡頭模擬出相應視場的圖像,最后再將圖像在有限的景深下渲染,得到模型的三維信息[11]。
首先在3DSMAX中建立兩輛轎車的基本模型,并呈不同角度傾斜擺放,同時再產生一定的前后偏差,便于3D效果的觀察。
然后在距離模型一定距離處的垂直平面內架設25臺虛擬相機來捕捉各個角度拍攝下來的畫面。為了達到拍攝視角正切值等分的條件,將相機在垂直平面內擺放成5行5列等間距的樣式,且正中間的相機拍攝到的是物體的正視圖。
圖4 5×5投影圖
通過渲染得到了25幅圖像,它們按照一定的順序展示了相機拍攝的景象,如圖4所示。從每一行的5幅圖像可以發(fā)現模型有水平方向的旋轉,從每一列的5幅圖像可以發(fā)現模型有豎直方向的旋轉,符合投影圖的實際效果。最后對獲取的投影圖代入到之前敘述的Matlab算法中得到如圖5所示的三層衰減圖。
圖5 三層衰減圖
從衰減圖本身就可看出物體的大致信息,離鏡頭較近的物體的主要信息顯示在第一層屏上,而離鏡頭較遠的物體的主要信息顯示在第三層屏上,根據這些衰減圖重構出了物體5×5范圍視角的信息。取中心視圖如圖6所示。
圖6 重構圖
圖7 原中心光場
對比圖7所示,可知邊緣存在著一些信息的失真。這種失真是在允許范圍內的,原物體的深度信息是連續(xù)的,而在實驗中由于成本及技術限制的緣故,僅僅采用有限的三層屏來企圖顯示所有的信息。通過最小二乘法來擬合真實空間的全部信息,然而變量的個數的限制導致了無法達到完美的效果。從原理上來說,屏幕的個數越多,效果越好。
我們采用均方差 (MSE)和峰值信噪比(PSNR)來衡量重構出來圖像的失真程度[12]。
計算出來均方差為71.479 7,峰值信噪比為29.589 0 dB。信噪比接近30 dB,效果較好。
我們將三層衰減圖通過軟件導入到三層屏幕上,在小角度的偏移范圍內拍攝了一段小視頻,其中分別從上下左右4個角度截取了圖像,如圖8所示。我們可以清楚觀察到3D效果,無論左右視角還是上下視角實際視角圖都體現反映了其良好的立體顯示效果。
當然,觀察的角度也是有一定的范圍限制的,也就是之前定義的視場角的范圍。一旦超過了一定的觀察角度,就會出現很明顯的分層失真現象。
分層失真現象的原因也很好理解。衰減圖的作用就是為了模擬實際光場的效果,而它來源于實際光場的取樣。當時采樣的時候也就只采了一定視角范圍內的信息,故無法模擬出視角范圍外的情形。
利用物體投影圖可得到相應的衰減圖。將其置于多層屏儀器上觀察,也能很明顯地觀察到3D的效果。唯一的不足就是存在著微小的失真。在之后的研究中將繼續(xù)優(yōu)化算法并完善這一點。
圖8 實際效果圖
[1]COSSAIRT,OLIVER S.A view-sequential 3D display[J].Massachusetts Institute of Technology, 2003,11(2):65-66.
[2]HONG J,KIM Y,CHOI H J,et al.Three-dimensional display technologies of recent interest:principles,status,and issues[J].Applied Optics,2011, 50(34):87-115.
[3]HOLLIMAN N S,DODGSON N A,FAVALORA GE,et al.Three-dimensional displays:a review and applications analysis[J].IEEE Transactions on Broadcasting,2011,57(2):362-371.
[4]張雷,楊勇,趙星,等.多級投影式集成成像三維顯示的視場角拓展[J].光學精密工程,2013,21(1):1-6.
[5]夏新星.水平光場三維顯示機理及實現技術研究[D].杭州:浙江大學,2014.
[6]WETZSTEIN G,LANMAN D,HIRSCH M,et al.Tensor displays:compressive light field synthesis using multilayer displays with directional backlighting[J].Acm Transactions on Graphics,2012,31(4):13-15.
[7]劉桃麗,黎道武,萬雄.基于光學層析技術的圖像重建[J].光電技術應用,2008,23(6):60-63.
[8]NICOLA R,SIMON H,QUINN S,et al.Multi-layered automultiscopic displays[J].Computer Graphics Forum,2012,31(7):2135-2143.
[9]賈小勇,徐傳勝,白欣.最小二乘法的創(chuàng)立及其思想方法[J].西北大學學報 (自然科學版),2006,36(3):507-511.
[10]黎慶.3DSMAX設計應用[M].南寧:廣西美術出版社,2014.
[11]林剛,張鋒,張登福.多屏顯示技術及其在圖像處理系統(tǒng)中的應用[J].計算機應用研究,2002,19(4):154-155.
[12]蔣昊.三維顯示信息重建及評價方法研究[D].長春:吉林大學,2013.