高質(zhì)量VR直播有望了 Google帶來(lái)Equi-Angular Cubemaps

雷鋒網(wǎng)(公眾號(hào):雷鋒網(wǎng))按:Google 博客近期刊發(fā)的系列文章中,從技術(shù)角度更深入探討和剖析了在改善虛擬現(xiàn)實(shí)(下文簡(jiǎn)稱 VR)體驗(yàn)方面的諸多方法。該系列第一篇中,Google 介紹了 Equi-Angular Cubemaps,這項(xiàng)技術(shù)能夠傳輸更高質(zhì)量的 VR 視頻資源。

自古以來(lái)測(cè)繪師的奮斗目標(biāo)就是,繪制出能夠精準(zhǔn)映射現(xiàn)實(shí)世界的地圖。而這門偉大藝術(shù)所面臨的核心挑戰(zhàn)在于,如何在平面的紙張和屏幕上精準(zhǔn)的展現(xiàn)弧形完全的地球。在過(guò)去的幾個(gè)世紀(jì)中,人類智慧的花火碰撞出了諸多卓有成效的方法,但至今仍沒(méi)有出現(xiàn)被大部分人類公認(rèn)的一個(gè)最佳答案,因?yàn)槊糠N方法都是權(quán)衡預(yù)期用途的產(chǎn)物,只能解決某種情境需求而已。

以 Google Maps 為代表的各種新型地圖服務(wù)以及 VR 視頻的豐富應(yīng)用,依然在尋找如何在 2D 屏幕上提供精準(zhǔn)且富有意義的弧形 3D 世界的的方法,即使在現(xiàn)在也是不小的挑戰(zhàn)。

傳統(tǒng)繪圖技術(shù)必須要解決如何在 2D 平面上映射現(xiàn)實(shí)世界的根本挑戰(zhàn)同時(shí),視頻流媒體也面臨前期制圖者不會(huì)存在的煩惱————如何更高效的利用帶寬。高質(zhì)量視頻流的顯示效果極大程度上受到網(wǎng)絡(luò)帶寬的限制,尤其對(duì)于移動(dòng)網(wǎng)絡(luò)來(lái)說(shuō)。

傳統(tǒng)頻流讓我們通過(guò)小窗口去觀察世界,而 VR 視頻流必須要從球狀世界中渲染弧形圖像,必然對(duì)帶寬提出了更嚴(yán)苛的要求。立體視頻的數(shù)據(jù)流會(huì)以幾何倍數(shù)不斷放大對(duì)數(shù)據(jù)的要求,因此讓 VR 視頻進(jìn)入商用的最核心關(guān)鍵就是提升帶寬。

在現(xiàn)有帶寬受限的背景下,YouTube和 Daydream 團(tuán)隊(duì)的共同努力成功找到了諸多全新方法,讓 360 度和 VR 視頻看上去更加逼真更有沉浸感。而在這篇博文中詳細(xì)介紹了依托于 Equi-Angular Cubemaps (EACs) 的各種技術(shù)工作原理。

鑒于這些技術(shù)帶來(lái)的各種優(yōu)勢(shì),Google 團(tuán)隊(duì)已經(jīng)考慮應(yīng)用到 YouTube 的內(nèi)容上。而且 EACs 還能延伸擴(kuò)展至其他領(lǐng)域,因此在這里我們非常期盼這項(xiàng)技術(shù)的更多應(yīng)用。

等距柱狀投影圖(Equirectangular Projection)

對(duì)于普通用戶來(lái)說(shuō)地球最熟悉的呈現(xiàn)方式,就是用經(jīng)度和緯度劃分而成的矩形空間,而這也被稱之為等距柱狀投影圖(Equirectangular Projection)。

Tissot Indicatrix的等距柱狀投影圖

等距柱狀投影圖的優(yōu)點(diǎn)在于將地球劃分成多個(gè)矩形,普通用戶也能非常直觀的進(jìn)行觀察。然而,如果不加調(diào)整就將其運(yùn)用到視頻傳輸過(guò)程中,就會(huì)產(chǎn)生非常嚴(yán)重的問(wèn)題。首先,根據(jù)經(jīng)緯度的劃分方式會(huì)導(dǎo)致南北極區(qū)域的像素點(diǎn)非常密集,而赤道附近的像素則比較稀疏。在 VR 體驗(yàn)中佩戴者的視線范圍通常集中在眼前中心位置,就著意味著在視頻傳輸過(guò)程中需要將重要的內(nèi)容分布在赤道范圍內(nèi)。

其次,這種視頻傳輸必然存在非常高的失真,現(xiàn)有的視頻壓縮技術(shù)很難完全駕馭。綜合以上兩點(diǎn)問(wèn)題表明球面視頻投影的根本挑戰(zhàn)在于,在球狀屏幕上均勻分布視頻像素。

傳統(tǒng)的立方體貼圖(Cube Maps):

在游戲行業(yè)中還廣泛應(yīng)用一種升級(jí)版等距柱狀投影圖,那就是立方體貼圖。這個(gè)概念非常的簡(jiǎn)單:將球形變形成為立方體,然后展開(kāi)立方體的六個(gè)面然后平鋪。

游戲行業(yè)目前最直觀最簡(jiǎn)單的做法就是放射型投影(Radial Projection),在一個(gè)立方體中嵌入球體,然后將球體表面的圖像向外投影到立方體表面。

立方體貼圖的效果要明顯優(yōu)于等距柱狀投影圖,但是在像素密度上依然會(huì)導(dǎo)致根本性變動(dòng)。這個(gè)問(wèn)題是由于立方體的中心位置距離球體最近,但是立方體的邊角離球體則比較遠(yuǎn)。

正如上方圖片中所展示的橫截面,這些射線都以相同的角度從圓中心向外射出,但是投影到立方體上間隔距離則出現(xiàn)了偏差。這樣所導(dǎo)致的結(jié)果是,相比較中心位置邊緣部分會(huì)獲得更多的視頻像素,因?yàn)樵诹⒎襟w邊緣上藍(lán)色射線要比紅色射線具備更多的像素。而且在完整的三維情況下,這個(gè)問(wèn)題會(huì)更加明顯。

Equi-Angular Cubemap(EAC):

通過(guò)更改提取視頻像素樣本的位置,糾正這種變形。

從球體中心發(fā)射的射線代表 VR 頭顯佩戴者的視線,同樣以相同的角度向外投射。左側(cè)是傳統(tǒng)的立方體貼圖,從人臉位置到像素位置的投影是直線。而右側(cè)是更為高效的 EAC 投影。傳統(tǒng)的立方體貼圖視頻采樣的長(zhǎng)度取決于樣本在立方體表面的位置。而 EAC 則通過(guò)特殊的構(gòu)造能夠確保這些采樣長(zhǎng)度保持一致,創(chuàng)造均勻分布的像素。

不管怎么說(shuō)繪制都是非常困難的,這種 2D 圖片很難完美的擴(kuò)展形成 3D:因?yàn)槟闳绻胍A暨@種繪制的某些重要功能,那么必然需要放棄其他東西。共形映射(Conformal Mapping )和等面積投影(Equal Area Projections)都是在某些方面作出犧牲而保留強(qiáng)化某些元素。

EAC 解決方案在 2D 空間中不失為精密算法,但是擴(kuò)展到 3D 空間依然會(huì)存在偏差,只能形成接近于等角度像素分布的空間,但少量的失真已經(jīng)非常接近于完美狀態(tài)。

均勻性比較

不同投影類型的最實(shí)用視覺(jué)比較方式就是使用飽和度圖譜。飽和度圖譜展示了視頻像素到顯示像素密度的色彩編碼比例。色彩編碼從紅色到桔色,黃色,綠色,最終為藍(lán)色。其中綠色代表最佳的像素密度比例,接近于 1:1,而紅色,桔色,黃色則表明像素密度不足(當(dāng)前屏幕上投影的視頻像素太少)的,而藍(lán)色則代表被浪費(fèi)的像素(當(dāng)前屏幕上投影的視頻像素太多)。

在飽和度圖譜上通過(guò)增加視頻的分辨率能夠調(diào)整整體顏色表現(xiàn)。但是對(duì)于那些飽和度圖譜存在巨大差異的投影,提升分辨率固然增加了中心區(qū)域的綠色范圍,但是同時(shí)也增加了被浪費(fèi)的像素資源。因此,最理想的投影是色彩均勻的飽和度圖譜,這樣就能通過(guò)提升分辨率使其變成均勻的綠色。

飽和度極大程度上取決于圖像的尺寸和輸出設(shè)備的分辨率。選擇不同分辨率會(huì)導(dǎo)致飽和度圖譜偏綠或者偏黃。下面的飽和度圖譜來(lái)自一個(gè)具體的案例研究,能夠最大限度的提高飽和度變化。

等距柱狀投影圖(左);標(biāo)準(zhǔn)立方體貼圖(中);Equi-Angular Cubemap (右)

毫不奇怪的是,等距柱狀投影圖在南北極是藍(lán)色的(浪費(fèi)像素,太多的視頻像素)的,而其他部分則都是桔色的(糟糕的視頻質(zhì)量,太少的視頻像素)。

作為比較,標(biāo)準(zhǔn)的立方體貼圖將最佳綠色區(qū)域從南北極移動(dòng)到中間位置。南北極的浪費(fèi)的藍(lán)色區(qū)域也已經(jīng)消失了。另一方面,立方體貼圖的邊緣部分要比中心區(qū)域要更優(yōu)秀。更為重要的是,色彩的變化主要集中在赤道附近,而且這些圓形表面具備比等距柱狀投影圖更糟糕的質(zhì)量。

最后 EAC 投影的保護(hù)度明顯要比其他兩個(gè)更加均勻,而且赤道區(qū)域明顯可以進(jìn)一步提高。這種均勻性能夠最大化的利用帶寬,從而能夠根據(jù)當(dāng)前設(shè)備所使用的網(wǎng)絡(luò),來(lái)選擇傳輸最佳的像素密度。

實(shí)踐才是最佳的檢驗(yàn)

EACs 的最終結(jié)果是在 VR 體驗(yàn)中視頻質(zhì)量的明顯改觀。下面這張圖片是在一個(gè) 1080P 的 Google Cardboard 取景器中播放 720P 的 360 度視頻時(shí)候左眼拍攝到的畫面。在左側(cè)的大圖中用青色和黃色框選了照片中的某個(gè)場(chǎng)景,而在右側(cè)部分則對(duì)比了框選區(qū)域在等距柱狀投影圖和 Equi-Angular Cubemap 兩種投影模式下的差別??梢悦黠@看到采用 EAC 投影的照片更加清晰。

最可怕的是細(xì)節(jié):

在前文的描述中基本上介紹了 EAC 投影的工作原理,但是還需要解決立方體的六個(gè)面在視頻矩形邊界和實(shí)際算法中的難題。立方體表面的一個(gè)點(diǎn)方程投影到視頻像素采樣是非常明確的。

類似的操作需要在立方體的每個(gè)面上進(jìn)行。

現(xiàn)在,所有六套【0,1】紋理坐標(biāo)都需要包裹在一個(gè)單獨(dú)的視頻紋理中。如果視頻分辨率和尺寸受到硬件或者流媒體傳輸?shù)南拗?,那么這些布局是可以不是固定的,而且它們有權(quán)利自己進(jìn)行分析。

目前有很多方法將立方體的六個(gè)面整合成為一段視頻矩形。此外,在組合過(guò)程中可能會(huì)導(dǎo)致不相連的面碰在一起,這可能在渲染過(guò)程中進(jìn)行視頻編碼和像素插值(PixelInterpolation)操作的時(shí)候出現(xiàn)問(wèn)題。

在游戲領(lǐng)域中所使用的紋理地圖集也存在相似的問(wèn)題,目前常見(jiàn)的解決手段是在不連續(xù)面處增加填充物。一旦選擇部署 EAC 概念,那么必然意味著需要在這些細(xì)節(jié)上做出取舍。

對(duì)于那些熟悉 OpenGL 的用戶來(lái)說(shuō),完全可以通過(guò)立方體映射紋理和片段著色器來(lái)計(jì)算出最終的紋理外觀。如果你對(duì)此感興趣,那么就當(dāng)作是給讀者的一次練習(xí)吧。

對(duì)于 VR 來(lái)說(shuō)圖像質(zhì)量代表著很多含義,而 EAS 也是當(dāng)前帶寬束縛下平衡精準(zhǔn)投影的重要突破。鑒于目前等距柱狀投影圖和傳統(tǒng)立方體貼圖方案所面臨的挑戰(zhàn),很明顯 Equi-Angular Cubemaps 提供了更優(yōu)秀的結(jié)果和更高效的資源利用。

我們堅(jiān)信通過(guò)深入了解 EAC 投影,那么用戶在較窄的帶寬網(wǎng)絡(luò)環(huán)境中也能訪問(wèn) YouTube 上的高質(zhì)量視頻直播。未來(lái),我們非常期待能夠看到這項(xiàng)投影技術(shù)運(yùn)用到其他方面。

極客網(wǎng)企業(yè)會(huì)員

免責(zé)聲明:本網(wǎng)站內(nèi)容主要來(lái)自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請(qǐng)進(jìn)一步核實(shí),并對(duì)任何自主決定的行為負(fù)責(zé)。本網(wǎng)站對(duì)有關(guān)資料所引致的錯(cuò)誤、不確或遺漏,概不負(fù)任何法律責(zé)任。任何單位或個(gè)人認(rèn)為本網(wǎng)站中的網(wǎng)頁(yè)或鏈接內(nèi)容可能涉嫌侵犯其知識(shí)產(chǎn)權(quán)或存在不實(shí)內(nèi)容時(shí),應(yīng)及時(shí)向本網(wǎng)站提出書面權(quán)利通知或不實(shí)情況說(shuō)明,并提供身份證明、權(quán)屬證明及詳細(xì)侵權(quán)或不實(shí)情況證明。本網(wǎng)站在收到上述法律文件后,將會(huì)依法盡快聯(lián)系相關(guān)文章源頭核實(shí),溝通刪除相關(guān)內(nèi)容或斷開(kāi)相關(guān)鏈接。

2017-03-16
高質(zhì)量VR直播有望了 Google帶來(lái)Equi-Angular Cubemaps
Google 博客近期刊發(fā)的系列文章中,從技術(shù)角度更深入探討和剖析了在改善虛擬現(xiàn)實(shí)(下文簡(jiǎn)稱 VR)體驗(yàn)方面的諸多方法。該系列第一篇中,Google 介紹了 E

長(zhǎng)按掃碼 閱讀全文