站在時代尖端,別開生「面」的示範

作者 Curtis Beeson

電腦特效的魅力幾乎持續延燒了整個世代。然而,在為故事最重要的元素建構模型時,電腦特效的成果始終不盡理想;這最重要的元素就是人臉。現在,一切有了轉變。

NVIDIA 執行長黃仁勳在本週的年度 GPU 技術會議專題演講中,展示了逼真無比的人頭數位模型。更令人訝異的是,僅利用市售的 GPU 搭配 NVIDIA 創新技術 FaceWorks,竟然就能即時產生如此驚人的效果。

Ira 的臉孔在螢幕上浮現後,黃仁勳先生說:「讓 Ira 和大家說幾句話好了。」「你早餐吃什麼?」

Ira 說他早餐吃優格,但對於裡面大部分都是冷凍水果這點感到不滿。

問到有關 Project SHIELD 的問題時,Ira 大叫:「我買定了!」

為了創造「Ira」,NVIDIA 和南加州大學創新技術研究所 (ICT) 的 Paul Debevec 博士攜手合作。Debevec 與其團隊打造的次世代系統,無需仰賴特殊化妝、難看的標記或專業相機,便可捕捉細微至 0.1 公釐的臉部資料。

ICT 的「Light Stage」技術運用攝影技法產生人臉的 3D 形狀,並創造了可精確呈現人類皮膚所不可或缺的關鍵要素;例如皮膚的反光和透光效果、臉部的油光,以及極為精細的皮膚表面線條與凹凸起伏。

Debevec 的團隊先請演員做出數種基本的臉部表情,隨後再透過壓縮引擎執行基本表情的連續影像。成果: 資料精簡化後可加以搭配混用,產生各式各樣的表情。

接著是 GPU 上場的時候了。如果無法將所有逼真細節加以處理並即時呈現在螢幕上,則 Debevec 團隊的一切努力也是徒然。NVIDIA 的 FaceWorks 技術搭配世上最快速的 GPU 後,即可達成此任務。

眼睛周圍的魚尾紋、耳朵和鼻子的透光效果、皮膚表面的細微起伏等所有微妙細節,皆可在螢幕上精確呈現,並即時操控。

這項任務絕非易事。為了在任何光影環境下呈現逼真的臉部渲染效果,精密的皮膚著色器執行的每像素指令數超過 8,000 項;Full HD 解析度的每幀每秒浮點運算次數 (FLOPs) 高達 820 億 (換算成每秒 60 幀,FLOPs 即為 4.9 兆);而每像素的過濾紋理擷取次數更達 161 次之多。

為呈現這些細節,代價就是資料大小。Debevec 團隊光從少許表情收集的資料便超過 32 GB。即使最先進的 GPU,也可能無法負荷如此龐大的資料量。但 FaceWorks 能將資料量縮減為 300 MB,使資料變得易於管理。

其訣竅在於善用每種表情紋理的相似之處。FaceWorks 將各種紋理劃分成 8×8 的方格,若某方格遭認定與其他表情的方格幾乎相同,便會被捨棄。

Ira」於 NVIDA 年度 GPU 技術會議登台亮相。

成果: 模型網格和紋理的資料精簡化後可加以搭配混用,產生各式各樣的表情。很高明對吧?

這麼說吧,NVIDIA 的確善用了人的「頭」腦。