Intel FreeD Replay Technologies技術分析
- 2019 年 10 月 8 日
- 筆記
Intel FreeD Replay Technologies
1. 簡介
我在FreeD 的官網上沒有找到相關技術介紹文章,只能從FreeD發佈的視頻中猜測他們所用的技術。FreeD是一家來自以色列的創業公司,專職業務是給運動賽事提供具有沉浸感的三維實時回放技術。現已被Intel在2016年3月收購。FreeD技術已經被應用在NBA 全明星賽,以及NFL超級盃賽事上,西甲賽事等。
2. 可能用到的技術
1) 系統設置


如上圖FreeD在一場棒球比賽中的攝像機配置。在球場周圍繞半圈靜態4K攝像機。中間黃色的攝像頭是虛擬攝像頭,可由導演控制在球場空間內運動。

在操控室,我發現了他們用到的幾款軟件。

左下角:Maya。
右下角:全屏程序為Boujou(攝像機追蹤軟件)。還用TeamViewer作為多電腦遠程登錄軟件。
1) 相關技術
a) 三維重建
據FreeD發佈的視頻中說到,我們可以把他們的系統看作一個巨大的三維掃描儀。他們的系統會三維重建某一時刻的場景。
比如下圖。

我發現系統把球員的稠密三維點雲重建出來了。另外,周邊場景並沒有出現三維點雲的顯示效果。所以,我覺得他們應該提前對這個球場做了背景提取,前景分割。下面幾幅圖可以看出一些端倪。


這樣做的目的是降低三維重建的壓力,僅用重建的三維點雲和背景紋理來渲染某一個視點的圖像。
我們再看他們渲染的某兩個視點的圖像。


我們可以看到圖片左邊穿黑衣的運動員旁邊出現了「鬼影」。這一現象在Image-Based Rendering技術中生成新視點圖像的技術中常出現的現象。比如微軟之前類似於該技術的應用PhotoSynth。該應用主要實現[1]的應用。[1]使用基於多視角的圖片集,基於SfM算法來重建三維場景。並可以實現多視角瀏覽的效果。下圖就是該應用中一個場景,可以看出紅框部分,出現了略微重影的現象。這是這種基於三維重建的基於圖片渲染技術一個普遍缺陷[3]。比如[2]。


a) 4D 回放
FreeD公司發佈的視頻以及主打的技術就是對某一時刻做三維回放。這方面的技術主要是上面所講到的。
但是,FreeD公司發佈的幾個視頻中涉及到的對「某一時間段」的三維回放。也就是說原來的三維加了一維時間——4D回放。但這不是該公司主打的技術,而且,我發現了他們用到了一些不一樣的技術方案。因為我沒有看到實際應用場景,這些視頻貌似是一些測試Demo,所以我覺得這些技術並不完善,也沒有對外發佈、招商。
i. 對視頻做空間場景分析。
大概就是做前景和背景分割。和前面說到的一樣。

ii. 多個靜態鏡頭獲取視頻。

iii. 對分割後的前景做三維重建。如下圖,每個被恢復深度的像素是由三個攝像頭獲得的視頻幀重建。

iv. 最後得到彩色深度點雲信息構成的三維模型。

v. 根據三維重建的信息來渲染新視點圖片。注意這裡新視點可以是不同時刻的不同視點的視圖。

這裡說到的4D回放技術可能和前面的3D回放技術沒有多少不同。
但是,我看到了另一個視頻,我覺得,可能不是簡單的三維重建,涉及到了兩視點間圖像插值的相關算法。如下面幾幅圖。



在這個4D回放視頻中,我們看到背景中的電線杆發生了扭曲。根據周邊視點圖像生成新視點圖像的技術中,我們經常使用單應矩陣對周邊視點圖像做預扭曲。這一步,我們是為了讓新視點圖像中的直線保證還是直線。我們都知道,單應矩陣是兩個平面之間的投影映射。根據投影映射的概念,在一個平面內的直線,投影到另一個平面內依然是直線。這是我們經常用單應矩陣做預扭曲的原因。由上圖,我們發現本應作為直線的電線杆發生的扭曲,所以,肯定沒有做單應矩陣的預扭曲,這樣生成的新圖像連直線都保證不了,我們更不能保證新視點圖像的內容的完整程度。
往往,在基於圖像渲染的新視點圖像生成算法中,只用單應矩陣就夠用了。但是,還是需要進一步的對新視點圖像做扭曲保證內容。如下圖是只用單應矩陣生成新視點圖像的樣例。我們會發現周邊的房子直線還是直線,但是發生不同程度的偏斜。

如下圖,沒有用單應矩陣做預扭曲的新視點圖片。

為了解決這個圖像內容保持的問題,可以參考[3]。
3. 另外一個代表性的回放技術

這是一個基於View Interpolation[6]技術的可以在時間-空間這個範圍內做任意視點的瀏覽[4]。如下圖,先看一下該技術的攝像機配置。

幾個攝像機架上豎直放置幾個攝像頭。全部攝像頭,我們認為他們都在同一平面內。這樣如上圖的綠色坐標軸space,space的相應坐標表示某一攝像頭拍攝的圖片。加一個黃色坐標軸time,這樣不同時刻的圖片就可以放在某一個坐標處。最後我們就可以得到一個圖像矩陣。如(v1, v2, v3, v4)這個空間里的紅色點,紅色點表示新視點,我們可以基於View Interpolation技術根據v1, v2, v3, v4的圖像來插值生成新視點圖像。最後,我們就可以讓視點在整個space-time空間來任意瀏覽。如下圖。

下圖為該系統的應用實例。

其實,新視點圖像生成算法還有一個非常經典的算法,View Morphing算法[5]。這就是《黑客帝國》的子彈時間的主要技術。如下圖,為View Morphing 算法的效果圖。

View Morphing 算法只需要兩張圖片,就可以生成這兩張圖片間對應的新視點的圖片,如上圖的Morphed View。
在FreeD的視頻中也出現了View Morphing的應用。我們先看一下當年《黑客帝國》的應用。使用一圈攝像機來獲得space-time的視點的圖像。

這是生成的某一幀。可以看到底下兩個角出現了扭曲。這是View Morphing出現的問題。

我們再看FreeD視頻里的截圖。


我們可以看到四個角出現了不同程度的扭曲。所以從這裡我覺得應該是FreeD想用《黑客帝國》的Bullet Time的技術。但是只是在處於測試,沒有對外發佈。
4. 參考文獻
[1] Snavely, Noah, Steven M. Seitz, and Richard Szeliski. "Photo tourism: exploring photo collections in 3D." ACM transactions on graphics (TOG). Vol. 25. No. 3. ACM, 2006.
[2] Buehler, Chris, Michael Bosse, and Leonard McMillan. "Non-metric image-based rendering for video stabilization." Computer Vision and Pattern Recognition, 2001. CVPR 2001. Proceedings of the 2001 IEEE Computer Society Conference on. Vol. 2. IEEE, 2001.
[3] Liu, Feng, et al. "Content-preserving warps for 3D video stabilization." ACM Transactions on Graphics (TOG) 28.3 (2009): 44.
[4] Lipski, Christian, et al. "Virtual Video Camera: Image‐Based Viewpoint Navigation Through Space and Time." Computer Graphics Forum. Vol. 29. No. 8. Blackwell Publishing Ltd, 2010.
[5] Seitz, Steven M., and Charles R. Dyer. "Toward image-based scene representation using view morphing." Pattern Recognition, 1996., Proceedings of the 13th International Conference on. Vol. 1. IEEE, 1996.
[6] Chen, Shenchang Eric, and Lance Williams. "View interpolation for image synthesis." Proceedings of the 20th annual conference on Computer graphics and interactive techniques. ACM, 1993.