冷紅梅
(四川大學(xué)視覺(jué)合成圖形圖像技術(shù)國(guó)防重點(diǎn)學(xué)科實(shí)驗(yàn)室,成都610065)
近年,自由視角技術(shù)[1-2]熱度逐年提高。2020 年,湖南衛(wèi)視《舞蹈風(fēng)暴》節(jié)目中已經(jīng)利用基于圖像的渲染技術(shù)實(shí)現(xiàn)了自由視角技術(shù)的一種應(yīng)用——360°凝空。但遺憾的是,為了滿足觀眾觀看3D 電視時(shí)的實(shí)時(shí)觀看功能和高質(zhì)量畫(huà)面效果,現(xiàn)階段上述應(yīng)用的自由視點(diǎn)的操控權(quán)并未賦予給觀眾。這不僅是因?yàn)楝F(xiàn)階段網(wǎng)絡(luò)傳輸帶寬和速度的限制,也是因?yàn)楸WC畫(huà)面完整度的自由視角受到現(xiàn)場(chǎng)部署的上百個(gè)精準(zhǔn)矯正的拍攝機(jī)位的約束,因此無(wú)法讓用戶自由發(fā)揮。當(dāng)給予用戶自由視點(diǎn)的操控權(quán),并且不限制用戶在規(guī)定的軌跡上選擇視點(diǎn),這給基于IBR 的自由視角繪制技術(shù)的應(yīng)用(即自由漫游[1-2])帶來(lái)了更大的挑戰(zhàn)。
通常,利用IBR(Image-Based Rendering)技術(shù)繪制自由視角畫(huà)面需要在目標(biāo)場(chǎng)景中拍攝或者渲染多個(gè)不同視點(diǎn)的圖像來(lái)渲染高質(zhì)量的自由視角畫(huà)面[3]。原則上,在自由視點(diǎn)周圍越是密集地采樣看向目標(biāo)場(chǎng)景的多個(gè)視圖,則渲染的自由視點(diǎn)畫(huà)面質(zhì)量越高。但隨之而來(lái)的是明顯的渲染時(shí)間成本,嚴(yán)重影響自由視角畫(huà)面渲染的實(shí)時(shí)性。然而,越是密集的采樣,相鄰視角采樣得到的畫(huà)面的重復(fù)度越高,導(dǎo)致自由視角畫(huà)面渲染中大量重復(fù)的計(jì)算(圖1 中①至④重復(fù)性插值示意流程)。此時(shí),考慮減少參考圖像的數(shù)量是減少重復(fù)計(jì)算提升性能最直接有效的解決方案。但是,隨著參考圖像數(shù)量的減少,自由視角畫(huà)面產(chǎn)生空洞(圖1 中⑥所指區(qū)域)的風(fēng)險(xiǎn)也隨之增大。
圖1 虛擬實(shí)現(xiàn)插值示意圖
基于圖像的渲染技術(shù)雖然在近些年得到了大量的關(guān)注,也有不少研究者發(fā)表了虛擬視點(diǎn)插值相關(guān)的論文,但在大量文獻(xiàn)[4-7]中并未明確指出渲染虛擬視角圖像是以哪些參考圖像作為輸入,又或者是直接手動(dòng)選擇參考圖像[8],只關(guān)注插值算法。
在實(shí)際插值應(yīng)用中,基于右參考視角不能看見(jiàn)的東西可以在往左移動(dòng)的過(guò)程中看到被前景遮擋的物體的規(guī)律,普遍認(rèn)為與虛擬視角同一水平線(baseline)或者運(yùn)動(dòng)軌跡的左右兩個(gè)參考圖像能夠?yàn)樘摂M視點(diǎn)提供目標(biāo)場(chǎng)景比較完整的場(chǎng)景幾何信息。本文基于此,提出了快速正確計(jì)算可以合成高質(zhì)量虛擬視點(diǎn)圖像的左右兩個(gè)參考視點(diǎn)的方法。
在多參考圖像合成虛擬視點(diǎn)圖像過(guò)程中,幾何遮擋、視野范圍、光照,以及采樣率限制都會(huì)影響最終合成圖像的質(zhì)量。下面分別介紹這三個(gè)主要影響合成圖像質(zhì)量的三方面問(wèn)題產(chǎn)生的原理。
通常,由于不知道用戶操控的自由視角(虛擬視角)到底會(huì)出現(xiàn)在場(chǎng)景的哪個(gè)方位,參考圖像采集過(guò)程是隨機(jī)的,因此無(wú)法保證采集的圖像可以提供完整的虛擬視角可見(jiàn)場(chǎng)景的信息。我們可以根據(jù)參考圖像的深度信息直接通過(guò)二次投影得到參考圖像中像素投影到虛擬視角的位置,從而獲得插值信息。然而,當(dāng)參考視點(diǎn)與虛擬視點(diǎn)位置和視角發(fā)生偏差時(shí),因場(chǎng)景中幾何位置固定使得參考圖像無(wú)法采樣被遮擋的幾何表面,但該幾何表面在新視角下會(huì)被看見(jiàn),從而導(dǎo)致空洞現(xiàn)象;而因視角發(fā)生變化也可能使得參考圖像中屬于背景的已采樣區(qū)域會(huì)被前景遮擋,導(dǎo)致該區(qū)域信息成為無(wú)用信息。一般,參考視點(diǎn)虛擬視點(diǎn)差異越大,則遮擋和視野限制問(wèn)題會(huì)出現(xiàn)得越嚴(yán)重,導(dǎo)致合成虛擬視角畫(huà)面質(zhì)量低下。通常,通過(guò)蠻力算法[9]不斷增加輸入的參考圖像數(shù)量可能提高畫(huà)面的質(zhì)量,但卻也會(huì)帶來(lái)大量無(wú)用的計(jì)算負(fù)擔(dān)。
圖2
當(dāng)相機(jī)從不同的視角觀察同一表面,采樣得到的幾何面積會(huì)因視角變化得到不同的大小。如圖3 所示,最左邊的參考圖像采樣幾何表面面積S1 明顯小于右邊的參考圖像面積S2。假設(shè)虛擬視點(diǎn)的Ground Truth 采樣到的幾何表面面積S3 與S1、S2 存在關(guān)系:S1 <S3 <S2,則當(dāng)S1 中像素表面信息被投影到S3 中時(shí),會(huì)出現(xiàn)不連續(xù)的插值結(jié)果,即虛擬視點(diǎn)Ground Truth S3 面積不能被完全插值填充導(dǎo)致空洞失真(如圖1);因?yàn)镾2 采樣的幾何表面面積大于S2,因此當(dāng)S2 中幾何表面像素信息投影到S3 中時(shí),很可能能夠獲得完整的S3 幾何表面信息。然而,通常采樣場(chǎng)景信息時(shí),我們不知道用戶會(huì)如何操控虛擬視點(diǎn)的移動(dòng)。因此,無(wú)法保證在任何情況下都存在幾何采樣面積大于虛擬視點(diǎn)所需要的采樣面積大小,此時(shí)還是不能避免出現(xiàn)空洞現(xiàn)象。但是,可以確定的是當(dāng)采樣面積越大時(shí),虛擬視點(diǎn)插值的效果會(huì)比采樣面積小時(shí)更好。
圖3 對(duì)同一幾何表面的不同視角采樣結(jié)果示意圖
捕獲自然場(chǎng)景中非Lambertian 表面需要遵循微觀光照反射的物理規(guī)律,導(dǎo)致最終從不同采樣視角下采樣得到的幾何表面顏色也不同,即采樣的顏色L與光線的落點(diǎn)wo(觀察視點(diǎn))有關(guān)?;谖锢淼墓庹詹蓸咏Y(jié)果規(guī)律,在圖形學(xué)中抽象表示為如下公式。
如圖4 所示,當(dāng)從Eye1~Eye4 分別捕獲幾何表面同一點(diǎn),得到的光強(qiáng)不同。其中隨著視角偏離反射光線,捕獲的光照強(qiáng)度逐漸減弱,導(dǎo)致最終呈現(xiàn)的顏色也不同。因此,將幾何信息從不同視角投影到虛擬視點(diǎn)時(shí),可能會(huì)因此導(dǎo)致插值同一幾何表面信息過(guò)渡不正常,或者光照強(qiáng)度不正確的問(wèn)題。
圖4 宏觀光照反射示意圖
視野范圍受限具體變現(xiàn)為不同視角中會(huì)采樣新的場(chǎng)景空間,這個(gè)新增場(chǎng)景空間應(yīng)區(qū)別于在1.1 小節(jié)中提到的被遮擋的幾何情況。如果把視角光軸方向看作是場(chǎng)景的縱向擴(kuò)展方向,那么水平軸的方向則是場(chǎng)景橫向擴(kuò)展。1.1 小節(jié)中提到的遮擋問(wèn)題屬于場(chǎng)景縱向擴(kuò)展中出現(xiàn)的問(wèn)題,而視野范圍屬于場(chǎng)景橫向擴(kuò)展導(dǎo)致的問(wèn)題。
前文提到在實(shí)際拍攝過(guò)程中,當(dāng)視角從左往右或者從右往左的方向移動(dòng)時(shí),能夠使得前一個(gè)視角被遮擋的物體逐漸被視角捕獲,也可以逐漸捕獲新的場(chǎng)景空間。當(dāng)虛擬視點(diǎn)處于兩個(gè)視角中間意味著能夠很大程度上減少試圖合成中出現(xiàn)場(chǎng)景物體丟失的概率。但是隨著左右兩個(gè)視點(diǎn)差距變大,兩者捕獲的場(chǎng)景內(nèi)容相關(guān)性也會(huì)降低,使得兩個(gè)視點(diǎn)間無(wú)法進(jìn)行相互補(bǔ)充,而違背初衷。因此,本小節(jié)主要針對(duì)如何快速準(zhǔn)確地計(jì)算與虛擬視點(diǎn)最相鄰的參考視點(diǎn)。
通過(guò)歐氏距離可以直接計(jì)算參考視點(diǎn)與虛擬視點(diǎn)的距離:
其中,Ci和Cv分別視點(diǎn)在場(chǎng)景空間中的參考視點(diǎn)和虛擬視點(diǎn)的世界坐標(biāo)。但歐氏距離選擇最近鄰參考視點(diǎn)的方法只適用于參考視點(diǎn)在直線或者曲線均勻分布的情況,當(dāng)參考視點(diǎn)是隨機(jī)且不均勻的情況下,該方法計(jì)算的一對(duì)參考視點(diǎn)很可能屬于虛擬視點(diǎn)的同一方位,從而導(dǎo)致虛擬視點(diǎn)無(wú)法獲取完整的橫向和縱向的場(chǎng)景空間信息并產(chǎn)生空洞,如圖5 所示。
圖5 非均勻分布參考視點(diǎn)與虛擬視點(diǎn)位置分布案例1
如圖5 所示,當(dāng)與虛擬視點(diǎn)最近的參考視點(diǎn)3 周圍存在一個(gè)與參考視點(diǎn)3 十分靠近的另一個(gè)參考視點(diǎn)2 時(shí),另一個(gè)參考圖像則很有可能被選擇。這種情況下參考視點(diǎn)2、3、4 存在關(guān)系:Dc2→c3+Dc3→v<Dc4→v。因此,為了避免上述同側(cè)選擇問(wèn)題,可以添加反向約束條件:
但是,當(dāng)虛擬視點(diǎn)在圖6 的情況下,該反向約束條件可能導(dǎo)致正確的參考視點(diǎn)對(duì)被丟棄,而選擇錯(cuò)誤的參考視點(diǎn)對(duì)。
圖6 非均勻分布參考視點(diǎn)與虛擬視點(diǎn)位置分布案例2
此時(shí),Dc3→c4<Dc4→cv且Dc4→c5>Dc4→cv,因此,錯(cuò)誤地選擇了同側(cè)的兩個(gè)參考視點(diǎn)。
為了能夠在本文方法下正確地選擇虛擬視點(diǎn)左右方位的參考視點(diǎn),我們需要確定一對(duì)參考視點(diǎn)方案中的視點(diǎn)是否在虛擬視點(diǎn)兩側(cè)。原本計(jì)算歐氏距離采用的是世界坐標(biāo)系下的視點(diǎn)坐標(biāo),而視點(diǎn)本身具有一個(gè)坐標(biāo)系,相機(jī)坐標(biāo)系。在線性代數(shù)中,兩個(gè)坐標(biāo)可以通過(guò)一個(gè)變換矩陣R 來(lái)實(shí)現(xiàn)變換,變換等式如下式。其中,為了將原世界坐標(biāo)的視點(diǎn)都轉(zhuǎn)換到虛擬視點(diǎn)的相機(jī)坐標(biāo)系下,R 設(shè)為相機(jī)的虛擬視點(diǎn)的旋轉(zhuǎn)矩陣。
將參考視點(diǎn)坐標(biāo)轉(zhuǎn)換到相機(jī)(視點(diǎn))坐標(biāo)系后,我們可以很容易地根據(jù)坐標(biāo)中x 軸數(shù)值的正負(fù)來(lái)判斷參考視點(diǎn)是否在虛擬視點(diǎn)的兩側(cè)。
圖7 OpenGL下的相機(jī)(視點(diǎn))坐標(biāo)系
最終,通過(guò)改進(jìn)條件約束,我們能夠得到預(yù)期的參考視點(diǎn)對(duì)。改進(jìn)約束條件如下:
本節(jié)將展示通過(guò)本文方法計(jì)算得到的最佳參考圖像對(duì)來(lái)合成虛擬視點(diǎn)圖像,以及任意選擇參考圖像對(duì)合成虛擬圖像的效果對(duì)比結(jié)果來(lái)展示,本文方法的是否符合最鄰近兩側(cè)參考點(diǎn)是否能產(chǎn)生更加高質(zhì)量的虛擬視點(diǎn)圖像來(lái)證明該方法的應(yīng)用性。
CPU:Intel Xeon CPU E3-1230 V2 3.30GHz
System:Windows 10
圖8 最佳參考圖像對(duì)合成虛擬視點(diǎn)
圖9 自設(shè)參考圖像對(duì)合成虛擬視點(diǎn)
自設(shè)參考圖像選擇是最佳參考圖像對(duì)周圍的更遠(yuǎn)的參考視點(diǎn),從圖8 和圖9 我們可以看到,即使稍微增加參考視點(diǎn)的x 軸距離,自設(shè)參考圖像對(duì)合成的虛擬視點(diǎn)缺失的信息明顯更多(空洞-黑色),而通過(guò)本文方法得到插值結(jié)果空洞相對(duì)較少。當(dāng)合成圖像中缺失信息的面積越大,尤其是連續(xù)缺失信息的區(qū)域的修復(fù)難度增加,修復(fù)的可信度也會(huì)降低。本文方法,可以在給出的參考視點(diǎn)中找出合成虛擬視點(diǎn)圖像空洞最少的最佳參考圖像對(duì)。
由于本文參考十點(diǎn)選擇方法不依賴于場(chǎng)景模型以及虛擬視點(diǎn)插值算法,僅依賴于視點(diǎn)(相機(jī))的信息,因此可以快速計(jì)算虛擬視點(diǎn)最鄰近兩側(cè)參考視點(diǎn)。從而獲得原則上場(chǎng)景信息缺失最少的參考圖像選擇策略,得到高質(zhì)量的虛擬視點(diǎn)合成圖像。
但是,遺憾的是本文方法僅適用于視點(diǎn)的視角方向一致或者看向極遠(yuǎn)處同一點(diǎn)的情況下適用,而在采樣視角也是隨機(jī)時(shí),無(wú)法保證獲取能夠渲染出最高質(zhì)量虛擬視點(diǎn)圖像的參考視點(diǎn)。當(dāng)參考視點(diǎn)的視角與虛擬視點(diǎn)視角方向偏差較大時(shí),即使是最鄰近距離,也對(duì)虛擬視點(diǎn)合成圖像沒(méi)有太大的增益效果。因此,如果在視點(diǎn)和視角完全隨機(jī)設(shè)定的背景下,我們則需要考慮視線方向?qū)?chǎng)景采樣結(jié)果和虛擬視點(diǎn)插值的影響。