抖音視頻裏那些被驚呼“美爆了”、“酷斃了”、“真想焊在臉上”的特效,到底是怎麼開發出來的?爲何抖音特效能夠在多個平臺的比拼中脫穎而出?

7月28日,抖音聯合火山引擎在北京舉辦智能特效技術開放日。火山引擎特效技術專家在場分享了抖音特效的生產流程和技術原理。

據介紹,抖音特效主要使用了計算機視覺(CV)和計算機圖形學(CG)技術。CV代表對現實世界的理解,CG的作用是將渲染虛擬元素疊加到畫面,特效就是用CV和CG技術的互動把現實和虛擬連接起來,經過大量工程與產品化的迭代,最終爲用戶呈現出生動有趣的視覺效果。

CV技術:數據驅動、場景豐富、算法全面

據火山引擎特效技術專家介紹,抖音特效的CV技術主要有三大特點。

首先,通過用戶的反饋推動CV算法的優化,是一大核心優勢。

抖音擁有龐大的用戶規模,任何算法上的升級、迭代,都會影響到海量用戶,最終反饋到產品的使用數據上。其中某些指標的上升或者下降往往與某個算法的某一次改動之間有着深層次關聯。

其次,更豐富的使用場景,讓CV算法適用性更強。

除了抖音之外,字節跳動其他衆多的APP和業務線,比如視頻拍攝、視頻剪輯、視頻會議等,其他垂類行業如遊戲、廣告、房產、汽車等,都會產生非常豐富的使用場景。不同的使用場景,會產生各種差異化的需求,在同時滿足這些需求的過程中,也在助推CV算法能具備更好的適應面。

以智能電視爲例,客戶需要在電視攝像頭上應用到一些特效。但這個場景和抖音的差別非常明顯:電視和手機,畫面的佔比差別很大。所以一開始CV算法的效果很差。但正是在針對智能電視這一場景進行算法優化的過程,反而推動了CV算法的進步,最終很好地適應了這一場景。後來,火山引擎發現抖音裏面有很多場景也有類似智能電視場景的需求,就直接把相關成果拿過來用就行了。

此外,火山引擎CV算法覆蓋的技術能力也非常全面。

抖音特效裏面使用了100多個不同的CV算法,如果把每一個算法都認爲是對真實場景的理解,在特效中就可以理解爲100多種不同的真實場景,基本包含了各種不同的技術方向。從另一方面看,也證明了火山引擎技術團隊人才的儲備也是非常全面的。

CG技術:爲特效量身打造的輕量級渲染引擎

火山引擎的CG技術團隊通過近兩年的打磨,完成了一個從零到一、自主研發的渲染引擎。這一引擎也有三個特點。

首先是體積小。

提到渲染引擎,大家比較熟悉的是Unity等非常成熟的商業化渲染引擎。與他們不同,抖音特效的渲染引擎,是針對短視頻AI特效的渲染場景,並不需要很多遊戲行業的功能,所以是輕量級的渲染引擎,相比Unity的體積小得多。

其次是具備非常好的跨平臺能力。

火山引擎的CG技術除了可以用在移動端的安卓和iOS平臺上,還可以用在PC上,包括Windows、MacOS、Linux等不同的操作系統。同時,同一個平臺也會有不同的圖形API的版本,這些主流的圖形API版本,火山引擎的CG技術全都可以支持。

另外一點就是可以做到出色的渲染效果。

以下面五個具體的特效爲例,

第一個特效,是材質領域的展示,PBR可以簡單理解爲偏向真實場景的材質,可以明顯的感受到金屬的質感。

第二個特效,是半透明以及有一定反射折射效果的材質。

第三個特效,是自發光的效果。

第四個特效,應用了GPU粒子系統。

在之前大家更爲熟悉的“控雨特效”裏,抖音特效第一次用到“粒子”的概念,但“控雨”裏面的雨滴並不多。但是在GPU粒子系統中,光煙花裏面用的粒子數量就達到上萬,遠遠大於之前的控雨特效。這是因爲之前“控雨”的“粒子”要用到CPU來計算,而“GPU粒子系統”則使用的是GPU來完成上萬粒子的計算。

最後一個演示裏綜合性地包含了很多技術,可以理解爲近乎真實的渲染效果。

在分享抖音特效背後的技術之外,火山引擎相關負責人也表示,作爲字節跳動的技術服務平臺,火山引擎不僅支持了抖音、今日頭條等公司內部產品,也在向外部企業開放,爲客戶提供特效創作工具套件、定製算法、工程化部署和對接聯調等產品及服務。此外,火山引擎資源商城提供了上萬款抖音同款特效,企業可以根據熱度、類型等方式選擇使用。

相關文章