爲什麼VR視頻的清晰度不高?

VR內容的清晰度一直以來廣受關注,也是提升用戶沉浸感體驗的重要因素。不過,體驗過VR視頻的不少用戶都會抱怨: 我們看的明明是4K甚至是8K內容,可實際觀感還不如手機1080P的畫質。是我買了個假VR設備?還是看了個假4k內容?


爲什麼VR視頻的清晰度不夠高呢?這裏面有幾點或許需要我們釐清。


01

4k畫質不等於4K觀感


對於傳統視頻的播放,用戶們都很熟悉,就是使用手機,ipad,電視這些媒介去看視頻。在我們面前的是一個比較小的屏幕,用戶只能盯着屏幕去觀看。傳統的視頻觀看已經發展很多年了,在這期間,用戶體驗的提升主要靠的是視頻分辨率的增加。從傳統的DVD到現在的4K/8K,視頻的清晰度已經提高了N倍以上。


圖來自網絡


分辨率的提升是否有盡頭,是否提高分辨率就是提高用戶的觀看體驗呢?


事實上,在屏幕分辨率和實際觀看感受之間還有一個重要指標——PPD(Pixels Per Degree),即每角度人眼看到的像素點,這纔是衡量視頻觀看清晰度的核心標準。


以視網膜屏幕的手機爲例,假設用戶距離手機屏幕30cm,手機屏幕在用戶視野中水平所佔據的度數大約是10度。根據蘋果對視網膜屏幕的界定,這樣的屏幕寬度大約是 600 個像素,也就是相當於,每一度視場角被分配了 60 個像素,即 60PPD,而這就意味着在視覺上達到了視網膜級別的效果。


正是在這個意義上,4K的屏幕分辨率,並不一定代表超高清的觀看體驗,關鍵要看人眼能夠從中獲取的像素點的多少。在正常距離觀看傳統的屏幕時,用戶基本能夠看到整塊屏幕,因此整屏分辨率和用戶觀看體驗較爲一致。


但在VR視頻這種立體觀看場景中,用戶相當於拿着一隻放大鏡在看屏幕,用戶觀看的只是屏幕的一個小塊,它對於視頻分辨率的要求自然也會呈指數級上升。


02

VR眼鏡的PPD


圖片來自網絡


那麼,來到第二個問題,用戶在距離40CM的2K分辨率的手機屏幕面前,或者在2米外的8K電視面前的觀看體驗能達到多少PPD呢?下圖給出一個粗略的數據。


表格數據來自《VR與自由視角視頻關鍵技術與標準制定》PPT,主講人,王榮剛,北京大學深圳研究生院


可見,看4K電視時,用戶的PPD已經可以達到80+了,已經超過了視網膜顯示效果的上限。有研究者做過相關的實驗,讓不知情的用戶分別觀看4K和8K的電視,然後自主分辨電視的清晰度,結果是正確與錯誤的判斷幾乎相當。


但是回到VR設備,上圖裏的VR設備,毫無例外PPD都直線下降,遠遠達不到60PPD這個視網膜標準。爲什麼在VR設備中,同樣的像素會這麼模糊呢?



圖片自來網絡


通常的VR視頻,是一個球面模型,用戶相當於站在球心向外觀看,由於人眼的視角有限,所以在同一時間,用戶只能看到360度球面的一小部分。當用戶轉動視角時,才能看到球面的其他部分圖像。



用戶看到的這個區域,我們稱之爲“視口”(Viewport),即是上圖裏的黃色區域。


這時我們就比較好理解爲什麼VR不清晰了:如果整個球面是一個4K分辨率的視頻,那用戶觀看到的,大概僅僅是一個1K x 1K左右分辨率的小區域,PPD數值大大降低,畫質模糊在所難免。


03

如何提升VR視頻的清晰度


那我們該如何提升VR視頻的清晰度呢?提升用戶的使用體驗呢?


第一種方法就是提升視頻的分辨率,從理論上來說,只要整屏清晰度達到一定高度,VR觀感也會相應提升。


但是單純地提高分辨率,4K不清晰就8K,8K不清晰就16K,這樣可以嗎?


事實是,這種等級的清晰度的提高,編碼,傳輸,解碼的複雜度都是成倍增加的。目前能夠對一幅8K全圖實時解碼的手機設備就已經非常有限了,更不用說8K以上的清晰度。


所以現有硬件設備的性能很快就會達到瓶頸,是無法滿足如此高清的流媒體播放的,根本無法大規模生產,送到用戶的眼前。


現在市面上的VR設備較爲通用的解決方法是:既然用戶只能在VR中看到一小塊區域,那就只解碼這一小塊區域的圖像,讓用戶觀看,當用戶轉動視口後,再更新相應的區域。



由於目前的編碼技術基本都是針對矩形圖像塊來編碼的,那麼我們可以把原圖做一個4x4分割,將每個小塊獨立編碼。如果原圖是8K的(7680x4320),則每個分割後的小塊剛好是1080P的。這樣一來,似乎我們只需要判斷用戶當前的視口在哪裏,覆蓋了幾個小塊,然後僅僅去解碼這幾個小塊,渲染到窗口上就可以了。


這樣做確實能夠解決部分問題,能降低一些解碼的負擔,但是這種劃分是不太理想的。從上圖中仔細觀察就可以得到答案:如果用戶的視口在圖上位置,我們需要同時解碼9個小塊(即解碼全圖的9/16),但其實用戶主要視口都在這9塊中的最中心的1塊上,邊緣的8個小塊,雖然都被解碼出來,但僅僅渲染一點邊邊角角。解碼資源還是被浪費了很多。


而如果再對畫面進行細分,又會增加解碼器的數量,通常來說,手機或VR一體機上,硬件解碼器的個數都是有限制的,不能創建太多,一次性開放太多硬解碼器,是不可行的。


針對這個問題,愛奇藝技術團隊也經過了一系列實踐,提出了自己的解決方法,選定了Tile分塊編碼方式,以此實現VR下的8K技術。


簡單地說,就是一幀圖像,可以劃分成若干個矩形子塊,每個塊的編碼參數保持一致,但分別獨立編碼。在解碼時,只需要把MxN個塊拼成一個矩形,各塊的幀數據頭尾相接,一起輸送到解碼器裏,解碼後的圖像就是一個MxN分割的圖案,在渲染時把相應區域渲染到窗口上就可以了。這樣就起到了降低解碼器個數的作用。


愛奇藝世界大會現場圖


如上圖所示,8K視頻做了8x8分割,用戶視口是黃色區域部分,此時可見12個小塊,假設我們把每4個小塊組合在一起,形成一個2x2的矩形,一起輸送給解碼器。那麼僅需要3個解碼器就可以覆蓋這個場景。


目前用戶視口內區域的解碼顯示問題,已經比較完善的被解決了。但視口外的大片區域現在還是一片漆黑。用戶不可能不轉動視角,當他快速把視角轉到其他地方怎麼辦?


而視野之外新圖像的編碼都是以GOP(group of pictures 圖片集 )爲單位的,新的圖像也需要從GOP起點開始解碼,而解碼幀序列是需要時間的。所以視口快速轉動時,用戶會看到當前沒有正在解碼的地方。


愛奇藝世界大會現場圖


解決這個問題的辦法是再編碼一個相對低清一些的一路視頻流,比如1080P或者2K,這個一路視頻流和8K全幅畫面在圖像上完全一樣,只是分辨率和碼率低一些。在解碼時,始終開啓一個解碼器解碼這種1080P或2K的碼流,並且在解碼完成後立即貼到整個渲染球面上,作爲一個兜底的顯示視頻先呈現給用戶,以防止“黑場”的出現。


愛奇藝世界大會現場圖


當用戶旋轉視角,若干新的8K Tile解碼完畢後,會覆蓋到這個球面的對應位置,這樣用戶就可看到更清晰的視頻了。上圖中,假設用戶視口向右移動,原來紅色的Tile會移出視口,綠色的Tile會移入視口,綠色的Tile會在一個GOP內更新。


愛奇藝世界大會現場圖


Tile的組合方式非常靈活,只要組成MxN的矩形就可以,2x2, 2x3, 4x2等,都可以自由組合。



整個解碼渲染的架構如上圖所示,數據接收下來後,首先根據用戶此時的姿態進行命中Tile的計算,得到當前視口內的Tile編號列表。然後將Tile進行組合,2x2或2x3等方式。接下來,將每個組合好的Tile送給對應的解碼線程,多線程並行開始解碼。各解碼器輸出的幀,進行pts同步之後,最終輸送給渲染器。渲染器做反畸變渲染,或直接渲染。


圖片來自網絡


用戶當前的姿態是由Sensor(傳感器)實時給出的,經由球面座標到平面直角座標系的變換,可以得到當前用戶視口跨越的經緯度範圍,進而得到當前都覆蓋了球面上的哪些Tile。


這種方法使得VR設備的流媒體播放更加清晰,流暢,同時降低了硬件設備的門檻,使VR下的8k觀感成爲現實。



04

VR行業標準與未來


LiveVideoStack 2019大會上,Visbit公司CTO周昌印PPT中展示的VR行業標準


事實上,VR設備的使用體驗,除清晰度外,還受到很多因素的影響,上圖是一個較概括的VR沉浸感指標,下面挑選其中的幾項,做展開說明。


1.MTP時延


MTP(Motion-To-Photon)是輸入動作(頭部轉動)與屏幕更新顯示(從刷新的屏幕發出的光線)之前的時間


圖片來自網絡


這項指標是非常重要的,好的體驗要求MTP時延不能大於20ms,如果時延過大,用戶轉動視角,而畫面沒有及時更着變化,體驗的感覺是非常眩暈的。


2.鏡頭畸變引起的圖像誤差


圖片來自網絡


徑向畸變,光線遠離透鏡中心的地方更彎曲,以上圖爲例又分爲枕形畸變和桶形畸變。通常畸變率要控制在1%左右。


圖片來自網絡


切向畸變,透鏡與相機傳感器平面不平行,多是安裝偏差導致。圖像會像“躺着”一樣。


3.單眼,雙眼視覺效果對比


圖片來自網絡


人類是雙目視覺動物,在現實中雙眼看到的目標是有一定視差的,反應在大腦中就是景物更有立體感,景深明顯。


其他的例如分辨率,幀率,色階更爲用戶熟知,和普通視頻的相應概念也類似,就不再重複說明。


以上是VR播放的一些技術指標,每種指標都直接影響着用戶的觀感體驗。


最後,我們還想聊聊對於VR未來的進展和探索,我們認爲主要有以下幾個方面:


1.降低編碼的碼率

圖片來自《VR與自由視角視頻關鍵技術與標準制定》PPT,主講人,王榮剛,北京大學深圳研究生院


視頻編碼也是隨着清晰度的提高不斷地更新換代的,根據國家廣電總局《5G 高新視頻—VR 視頻技術白皮書(2020) 》標準,在8KVR清晰度上,尚可使用H.265和AVS2等編碼標準。但在今後8K以上的分辨率裏,還需要有H.266/AVS3等更先進的標準給予支持。AVS3的預期碼率能比AVS2減少一半。


圖片來自網絡


降低碼率還可以通過改變投影方式來實現。傳統的ERP(Equirectangular Projection)投影方式,南北極區域被極大的拉伸了,造成很多的像素冗餘,給編碼帶來了額外的碼率。


上面的立方體投影和四棱錐投影則是對ERP的改進,可以有效地減少需要編碼的像素個數。


2.減少傳輸負載


圖片來自網絡


如果360度球面數據全部通過網絡傳輸,顯然需要較高的帶寬支持。根據用戶在VR眼鏡中的實際使用數據來看,他們在看視頻時很少有180度轉向這種行爲。所以可以考慮只加載半個球面數據,當用戶視角稍轉時,更新半球面即可。


同時也可以考慮基於深度學習或AI等預測算法,預測圖像中的熱點區域和用戶未來的行動軌跡,提前加載熱點區域的數據,或運動軌跡上的後續數據。


3.優化解碼模塊


愛奇藝世界大會現場


解碼模塊可以支持CPU+GPU混合調度,比如CPU僅負責解碼清晰度相對較低的兜底背景碼流。而GPU負責解碼衆多的高清Tile。


8x8的劃分方式也可以稍做改進,例如南北極區域圖像簡單,球面模型上的原始像素較少,所以可以把這些區域的Tile劃分的大一些,解碼時用一個解碼器即可覆蓋更多的原始圖像範圍。


4.從3DoF到6DoF


圖片來自網絡


DoF(degree of freedom)即自由度,是VR技術當中的一個重要指標,指的是物體在空間裏面的基本運動方式,總共有前後、左右、上下、前後翻轉、左右搖擺以及水平轉動6種。關於DoF,這裏不做過多解釋。總的來說,DoF越多,說明物體在空間中運動的方式越靈活。放到影視標準中同理,DoF越高,允許用戶與設備交互的方式也就越多。


0DoF視頻

4K/8K視頻,看手機,電視的方式

3DoF視頻

全景視頻(360°視頻),目前大部分VR的觀看方式,用戶在固定位置,只能旋轉自己的頭部,但不能走動

6DoF視頻

真正的自由交互視頻,用戶可以在VR場景中任意的走動


圖片來自網絡


衆所周知,自然沉浸的交互體驗是VR技術的一貫追求,目前已有很多設備支持6DoF,相信在不久的將來,會有越來越多的人能夠感受到VR的深度沉浸效果!


部分圖片來源於網絡,如有版權問題請及時與我方聯繫。

也許你還想看
我們都是追夢人——愛奇藝8K VR直播技術方案
一個算法“拿下”兩個榜單!愛奇藝ICCV 2021論文提出人手三維重建新方法
愛奇藝攜手華爲實現5G邊緣計算驗證 網絡超低延時助力VR爆發

 關注我們,更多精彩內容陪伴你!

本文分享自微信公衆號 - 愛奇藝技術產品團隊(iQIYI-TP)。
如有侵權,請聯繫 [email protected] 刪除。
本文參與“OSC源創計劃”,歡迎正在閱讀的你也加入,一起分享。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章