趙健, 戴子堯, 丁義權, 夏軍
(1.南京工程學院 計算機工程學院, 江蘇 南京 211167;2.東南大學 信息顯示與可視化國際聯合實驗室, 電子科學與工程學院, 江蘇 南京 210096)
近年來,隨著新型顯示技術的發展,三維顯示技術開始走進普通大眾的視野,已經廣泛應用于醫療、軍事、教育、廣告、游戲等領域[1-4]。例如,在醫療立體顯示領域,醫療專業人員可以依靠三維顯示器輕松完成內科手術[5];在汽車導航領域[6],自由立體顯示系統可以為駕駛員提供基于現實場景的沉浸式導航體驗;在中小學教育方面[7],學生可以直觀地體驗3D模型的外觀和結構。這些應用涉及到的三維顯示技術包括近眼顯示[8]、全息顯示[9]、超顯微成像[10]、自由立體顯示[11]等。
人之所以能感知三維空間,是因為雙目的輻輳與調節機制使得人眼采集到的空間信息具有一定的水平視差。大腦通過生理立體視覺和心理立體視覺共同決策,進而獲取立體視覺感知。因此,現有的三維顯示技術普遍利用雙目視差原理進行三維重建。然而,長時間觀看會出現眼干、眼澀、眩暈等問題。這種問題產生的根本原因在于人眼的輻輳調節機制被阻斷。傳統的近眼顯示技術或者裸眼立體顯示技術,由于其重建的虛擬場景一般處于一個固定深度,且該深度往往會區別于物理顯示器所在位置,會引起人眼的輻輳深度和調節深度不一致的問題,進而產生沖突。研究表明,基于多視點的光場顯示技術,通過向單目投射多角度信息,可以有效緩解輻輳調節沖突,提升視覺舒適度。
基于多視點的光場顯示技術通過特質光學器件精確控制每個像素的光線傳播方向,雙目可以在特定位置接收預先設計好的視點信息。根據視點數量的多少,光場顯示技術可以分為雙視點顯示技術、多視點顯示技術和超多視點顯示技術。同時,為了滿足多視點光場顯示技術的發展,虛擬視點生成技術也是必不可少的。
從人眼立體視覺原理出發,本文對多種三維顯示技術典型案例進行分類總結,并對重要性能參數進行對比分析,如視場角和視點數量。現有三維顯示技術朝著更多視點、更快渲染速度方向發展,因此,本文對虛擬視點生成算法進行整理歸類,并對虛擬視點圖像的生成質量和渲染速度進行比較。
自然狀態時,雙眼利用雙目視差原理可以將空間一點在視網膜上清晰成像,并產生深度立體感知[12]。目前,雙視點顯示技術均是利用特殊光學器件向雙眼投射具有一定視差的雙視點內容,典型方案包括抬頭顯示技術(HUD)[6]、3D眼鏡顯示技術[13]和基于眼跟蹤的裸眼3D顯示技術,如圖1所示。
由Sony推出的27 in(1 in=2.54 cm)4K裸眼3D顯示器[7]如圖2所示。屏幕集成眼球跟蹤功能,可以快速跟蹤用戶眼球移動,在各個角度都能帶來舒適自然的3D立體畫面,已廣泛應用于教育[14]、設計、醫療[15]等領域。

圖2 基于人眼跟蹤的裸眼3D顯示器Fig.2 Naked-eye 3D display based on eye tracking
正常情況下,人眼的輻輳匯聚深度和調節深度是一致的,如圖3(a)所示。當人眼聚焦在非明視距離內的近眼顯示器而輻輳距離仍為真實世界的某點時,就會產生輻輳調節深度不一致的問題,即輻輳調節沖突(VAC)[16]。這個問題是造成視疲勞的主要因素之一,如圖3(b)所示。同理,在裸眼3D顯示中,也會存在這個問題,如圖3(c)所示。

圖3 人眼輻輳調節原理圖。(a)正常狀態;(b)近眼顯示;(c)裸眼3D顯示。Fig.3 Schematic diagram of vergence-accommodation.(a) Natural state;(b) Near-eye display;(c) Naked eye 3D display.
在保證足夠高空間分辨率的基礎上,盡可能地提高角度分辨率,被認為是解決或緩解VAC的有效途徑之一[17]。以近眼顯示為例,放置在非明視范圍的近眼顯示器通過特殊光學器件向視網膜投影,進而在大腦中被動產生一個位于正前方的虛擬像,如圖4所示。空間分辨率取決于虛擬顯示器能夠提供的最小虛擬像素尺寸,而角度分辨率取決于相鄰抽樣光線的最小角間距。如果空間某深度虛擬點可以形成單目聚焦,那么定向射線束的角間距需要在約0.2°~0.4°[18]以允許每只眼睛有兩個以上的視圖樣本,才能誘發單目調節反應。另外,出瞳范圍、視場角、眼盒大小也是評價近眼顯示性能的核心指標。

圖4 近眼光場顯示系統原理圖Fig.4 Schematic diagram of near-eye light field display system
北京理工大學王涌天團隊提出的基于光場和麥克斯韋的近眼顯示方案[19]可以提供接近準確的深度線索。該方案對背景區域(31.5°)和視網膜凹窩區域(10.1°)分別進行獨立渲染,在實現大視場角的同時,對凹窩區域進行高角度分辨率光場成像,如圖5所示。

圖5 基于麥克斯韋和光場顯示的近眼顯示[19]Fig.5 Near-eye display combining Maxwellian-view and light-field methods[19]
Byoungho Lee[20]團隊提出基于雙層液晶的近眼光場顯示模型[21],將三維場景的光場分解成兩層,通過改變雙層液晶的透過率來實現光線精確調控,如圖6所示。該方案可以成功誘發單目調節效應,且空間分辨率更高。但是,該方案面臨著景深受限和通道串擾嚴重的問題。斯坦福大學的Gordon Wetzstein[22]團隊提出的基于疊加圖方法的全息近眼顯示方案可以對密集視點圖像進行壓縮計算,解決了傳統全息顯示在空間和角度分辨率之間需艱難權衡的問題,如圖7所示。多視點視網膜投影法[23]和可變焦透鏡法[24]可以將多視點信息按照視點陣列的方式在視網膜上聚焦成像。但是,上述方案都面臨著重建光場景深范圍受限的難題。針對這個問題,東南大學夏軍團隊提出基于集成成像原理的復合光場景深拓展方案[25-26],相比于傳統的單光場重建,有效拓展復合光場景深范圍150%以上,光路圖見圖8。

圖6 基于多層液晶的近眼顯示Fig.6 Near-eye display based on multilayer liquid crystal

圖7 基于圖像疊加的全息近眼顯示Fig.7 Holographic near-eye displays based on overlap-add stereograms

圖8 基于復合光的近眼顯示Fig.8 Near-eye display based on composite light field
多視點技術不僅應用在近眼顯示領域,在裸眼3D領域也有廣泛應用。集成成像技術可以提供高角度分辨率的多視點顯示技術,具有景深連續、視覺舒適度高等特點。但是分辨率損失嚴重是這項技術的主要挑戰之一。近些年,集成成像與散射膜結合的研究取得了很大進展。如圖9所示,基于光學低通衍射膜的集成成像技術[27]可以極大地減少重建三維場景的顆粒感,視點數量達到31×31時,理論分辨率提升2.12倍。

圖9 基于投射鏡的集成成像技術。(a)系統結構圖;(b)子圖排布。Fig.9 Integral imaging 3D display by using a transmissive mirror device. (a) System structure diagram; (b)Elemental image array.
由于視點數量有限,多視點方案僅能通過提供近似準確的深度線索來緩解輻輳調節沖突,但不能完全消除。基于超多視點的方案,不僅可以在超大視場角內提供連續的視差成像,并且有望徹底解決視疲勞的問題。
北京郵電大學的桑新柱團隊[28]發明的基于新型柱透鏡陣列的光場顯示器由柱透鏡陣列、微透鏡陣列和全息功能屏組成。該顯示器具有水平70°、垂直30°的可視角,并且具有高達11 000個視點,是目前為止視點數量最多的裸眼3D顯示器,如圖10所示。2022年,Joonku Hahn團隊[9]基于不對稱擴散全息光學元件的體三維顯示系統,通過時序的方法投射512個視點,最終實現了360°范圍內連續視差成像,如圖11所示。但是該方案需要強大的投影系統,成本高昂和體積龐大是它面臨的最大問題。北京航空航天大學的王瓊華團隊提出的基于集成成像的桌面3D顯示系統通過觀看區疊加的形式,實現了在360°環形觀看區內連續視差分布,如圖12所示。

圖10 基于新型柱透鏡陣列的光場顯示器Fig.10 Light field display based on a new lenticular lens array

圖11 體三維顯示技術Fig.11 Volumetric display

圖12 桌面集成成像顯示技術Fig.12 Tabletop integral imaging 3D display
表1列出了雙視點顯示、多視點顯示和超多視點顯示中幾種典型顯示方案,并對視場角和視點數做了對比。從表1可知,視場角更大、視點數量更多是目前新型立體顯示的主流發展方向。

表1 典型的光場顯示器參數比較Tab.1 Parameter comparison of typical light-field displays
虛擬視點生成方法有多種,包括單信源虛擬視點生成和多信源虛擬視點生成。其中,單信源虛擬視點生成是基于2D圖像或者2D視頻完成3D虛擬視點生成;而多信源虛擬視點生成法是指基于多視點信息、深度信息或者點云等多輔助信息,實現任意視角虛擬視點生成。
3.1.1 卷積神經網絡虛擬視點生成法
2016年,Jure Zbontar[30]團隊首次將卷積神經網絡(CNN)引入到立體顯示虛擬視點生成中并取得成功。CNN通過卷積層進行特征提取,反卷積層進行重構,將代表不同視角下的空間特征重建為新的圖像,生成目標場景的新視角圖。本部分僅討論基于單信源的CNN虛擬視點生成算法。
Richard Tucker團隊[31]提出一種基于尺度不變的虛擬視點合成神經網絡,實現了從單一2D圖片預測并渲染密集虛擬視點。該神經網絡可以對在線視頻數據進行訓練,實現前景邊緣缺失信息有效填充,提升合成圖像質量,如圖13所示。虛擬視點的峰值信噪比(PSNR)最高為19.3 dB,結構相似性(SSIM)最高為0.696。Evain[32]提出的基于單張圖片的虛擬視角合成方法,采用了MobileNet編碼器,可以在少量參數下獲得較好的視差預測結果。在出現偽影的區域、被遮擋的區域和誤判的區域中,使用Refiner進行進一步的優化。該方法能夠估計自身視差預測的置信度,并能夠識別其不能正確預測的結構。該方法在KITTI數據集中優于現有技術(Deep3D),并且適用于不同分辨率的圖像。合成虛擬視點的PSNR和SSIM最高可達19.24 dB和0.74。

圖13 基于單視點的虛擬視點合成技術Fig.13 Virtual viewpoint synthesis technology based on single viewpoint
為了進一步提升虛擬視點圖像質量,來自牛津大學的Olivia Wiles 提出SynSin模型[33]。這是一種端到端的神經網絡模型,與現有方法不同的是,該模型在測試時無需任何基準3D信息。該模型利用可微分的點云渲染器將潛在的3D點云特征轉換為目標視角,并通過修飾網絡解碼出所需的3D細節,從而為缺失的區域進行精確填充,生成虛擬視點。此外,還可以生成高分辨率虛擬視點,對輸入圖像的分辨率要求很低。該模型在Matterport、Replica和RealEstate10K數據集上均優于基準方法,PSNR和SSIM最高可達22.21 dB和0.74。
3.1.2 神經輻射場虛擬視點生成法
神經輻射場(Neural Radiance Fields,NeRF)[34-35]根據相機光線采樣提取出靜態場景圖片的5D函數,即空間位置(x,y,z)和視角方向(θ,?),將其轉化為對應的輻射亮度和密度,通過圖像投影渲染技術,實現虛擬視點合成,原理圖如圖14所示。因其具有高質量的3D場景渲染能力,已成為研究熱點。目前,該領域研究主要集中在提升虛擬視點圖像質量和渲染速度兩個方面。
在提升圖像質量方面,基于預訓練的MVSNeRF[36]方法通過將預先提取輸入視圖的圖像特征映射到3D體繪制中,可以大幅提升圖像質量。NeRF in the wild(NeRF-W)[34]基于稀疏視圖集合,將圖像序列中的NeRF參數進行共享分析,進而提升虛擬視點質量。但這些方法都嚴重依賴大量外部數據,不適用于單信源虛擬視點生成的場景。另外,傳統的NeRF是像素級光線渲染,因此,對不同分辨率的圖像進行訓練或者測試時,就會出現過度模糊或者混疊現象。Mip-NeRF[37-38]模型通過抗鋸齒錐形截錐體(Anti-aliased conical frustums)渲染,成功減少了虛擬視點的鋸齒偽影,并顯著提高了NeRF表示精細細節的能力,如圖15(a)所示。相對于NeRF,錯誤率最高降低了60%,同時速度提升了7%。雖然,這種方法可以很好地提升虛擬視點的圖像質量,但是對于具有鏡面反射的場景渲染效果不佳。Ref-NeRF[39]方法通過在物體表面的法向量上引入正則化矩陣,以定向MLP作為圖像差值核心,周邊鏡面區域渲染共享該矩陣,如圖15(b)所示。該方法可以顯著提升虛擬視點圖像質量,渲染結果的PSNR達到33.99 dB,相對于傳統方法至少提升了6 dB。

圖15 虛擬視點圖像質量提升算法Fig.15 Algorithm for enhancing virtual view image quality
上述方法雖然都顯著提升了虛擬視點的圖像質量,但是在渲染過程中,NeRF需要查詢深度多層感知器(MLP)數百萬次,導致圖像處理時間過長。這是NeRF面臨的另外一個挑戰。Lingjie Liu[40]嘗試通過引入神經稀疏體素場(NSVF)定義了一組以稀疏體素八叉樹組織的體素邊界隱式字段,以模擬每個元格中的局部屬性。相對于Mildenhall[35]方法,該方法的渲染速度提升了10倍以上。Tao Hu[41]設計了一種新穎的數據結構,在測試過程中緩存整個場景以加快渲染速度。該方法減少了超過88%的訓練時間,渲染速度達到200 FPS以上,同時生成了具有競爭力的高質量圖像。KiloNeRF[42]方法通過將復雜的空間場景分解為規則網格并為每個網格單元分配小容量網絡的方式,實現了NeRF實時渲染。該方法沿坐標軸均勻分解場景,把場景最多分為4 096個小場景。同時對數千個獨立的MLP進行并行處理,相對于傳統的NeRF,速度提升3個數量級。Instant NeRF[43]引入了一種新的編碼方法,該方法可以在不犧牲圖像質量的情況下使用更小的神經網絡進行訓練,這種架構可以很輕松地在全融合CUDA內核上完成并行加速運算,如圖16所示。在同等的渲染圖像質量(PSNR)的情況下,渲染速度提升20~60倍,可以在數十毫秒內完成1 920×1 080分辨率的圖像渲染。

圖16 Instant NeRF原理圖Fig.16 Schematic diagram of Instant NeRF
為了評估上述算法的性能,根據公開的論文資料,基于相同數據集Synthetic-NeRF Database,對幾種典型NeRF模型的虛擬視點圖像質量和合成速度做定量比較,結果見表2和表3。

表2 典型的NeRF模型性能比較Tab.2 Performance comparison of typical NeRF mode

表3 典型的NeRF模型源碼鏈接Tab.3 Source link of typical NeRF mode
相對于單信源虛擬視點生成,多信源虛擬視點生成需要依賴更多的目標場景特征信息作為輔助。目前,多信源虛擬視點生成算法已較為成熟,并廣泛應用于科研和商用領域[46]。對于采用相機陣列[47]和光場相機[48-49]等多視點直采方式,這里不做討論。幾種典型的生成算法如下。
基于深度信息的虛擬視點生成算法(Depthimage-based rendering,DIBR)[50-52]利用深度信息,將2D圖像的像素進行三維空間拓展,并按照需要的角度進行二維投影即可得到相對應的虛擬視點。但遮擋區域的空洞填充是該方法所面臨的挑戰之一。東南大學的趙健團隊提出基于傅里葉切片理論的圖像修復算法[53],可以快速、自然地修復空洞區域,如圖17所示。但對于較大的空洞區域,一般需要參考其他視點內容進行填充[54-56]。
基于建模的虛擬視點生成算法(Model-based Rendering,MBR)[57-58],根據自然場景中物體的構造特征對目標場景進行幾何建模(圖18)。按照光場設備的光學參數,通過虛擬相機陣列對三維模型進行視差圖像序列采集[57,59]。該方法可以獲得任意角度的高質量虛擬視點,但是三維場景建模的難度高、周期長,不能滿足光場顯示對復雜、多變場景的生成需求,但在游戲、教育等場景相對固定的應用領域具有巨大潛力[60-61]。

圖18 MBR原理圖Fig.18 Schematic diagram of model-based rendering
基于稀疏視點的密集虛擬視點生成算法(Sparse viewpoint-based Rendering, SVBR)[62]利用已有的稀疏視點,通過幾何信息編碼獲得虛擬視點插值(圖19)。該方法可以獲得高質量的合成視點[63-64]且理論視點密度無限大,但該方法存在計算資源消耗大、渲染速度慢、相機基線有限等問題。來自北京郵電大學的Binbin Yan[65]團隊提出基于cutoff-NeRF的虛擬視點合成算法,實現了8K分辨率的虛擬視點實時渲染。虛擬視點的PSNR約為29.75 dB,SSIM約為0.88,合成8K 3D圖像時間約為14.41 s。

圖19 SVBR原理圖Fig.19 Schematic diagram of sparse viewpoint-based rendering
光場顯示技術具有沉浸感好、視覺舒適度高等特點,已成為新型顯示技術的研究熱點。目前,光場顯示技術向著視點數量越來越多、視場角越來越大、光場渲染速度越來越快的方向發展。但現有顯示技術仍不能完全消除輻輳調節沖突,更符合人眼立體視覺的光學設計和更加密集的虛擬視點被認為是解決該問題的關鍵。另外,相對于多信源虛擬視點生成技術,單一信源虛擬視點生成技術還不成熟,圖像質量和渲染速度均有待提高。但是,單一信源虛擬視點生成技術具有廣泛的市場前景和發展潛力,有望徹底解決光場成像技術內容缺少的難題。