淘系技術:虛擬數字人行業現狀和技術研究

來源:淘系技術

作者:金擘(渚薰)

本文為金擘(渚薰) 在第十六屆D2前端技術論壇上的分享,為你講述當前業界的現狀,包括不同行業中的showcase和優秀的技術/創作平台,引出近幾年比較火熱的數字人,包含多個核心技術點,同時暢想數字人在未來的技術增長和業務價值,以及當下我們該如何布局。

我們理解的數字人

近幾年數字人的概念在互聯網中異常火熱,業界也出現了很多熱門虛擬數字人或虛擬偶像,比如Lil Miquela,洛天依、初音、鹿鳴、暖暖、AYAYI等。這些數字人的商業模式或市場價值通常是:通過運營積攢流量,依靠流量變現。例如:品牌代言(IP、事件)、粉絲經濟(二次元)、虛擬主播(遊戲、帶貨)。

本文為接下來講到的數字人,定義了三個核心要素:

  1. 形:具備人或擬人的外觀,具有特定的相貌等人物特徵。
  2. 動:擁有和人相似的行為,具有用語言、表情和肢體等表達的能力。
  3. 神:擁有比擬人的思想,具有識別外界環境、並能與人交流互動的能力。

這三條要素對於虛擬數字人的“完成度”來說是一個遞進的關係。

▐  市場現狀

近幾年,虛擬數字人在電商、金融、影視、遊戲和金融等行業都擁有不同大小的市場規模。例如:虛擬偶像行業2020年中國的市場規模為34.6億元,預計2021年將達到62.2億元。

淘系技術:虛擬數字人行業現狀和技術研究

市場規模增長,也印證了技術的發展:製作成本逐年降低、形象外貌更加真實、語言交流更加自然。從出現虛擬數字人至今,已經渡過了3個重要的時期:

  1. 初創期:市場初見增長,技術不確定性,入行門檻高。
  2. 發展期:市場競爭者增多,技術逐漸成型,入行門檻低。
  3. 平台期:市場紅海到來,平台化成熟,領頭羊 + 小眾。

▐  解決方案

在如今的平台時期中,各個廠商也聚集在一起提供不同層次的解決方案:

淘系技術:虛擬數字人行業現狀和技術研究
  1. 基礎層:為虛擬數字人提供基礎軟硬件支撐,硬件包括顯示設備、光學器件、傳感器、芯片等,基礎軟件包括建模軟件、渲染引擎。僅有少數幾個頂尖科技公司才具備優秀的軟硬件實力。
  2. 平台層:包括**軟硬件系統、生產技術服務平台、AI 能力平台,**為虛擬形象的製作及開發提供技術能力。提供平台服務的企業非常多,通過出售服務和技術來服務其他企業。
  3. 應用層:除了最終的企業用戶,一些具備出色營銷和運營能力的公司或團隊也為這個行業帶來了不錯的想法和創意。

我們在做什麼

在今年年初,在阿里巴巴前端委員會的互動圖形方向中成立了虛擬角色小組,這個小組有這幾隻團隊組成:大淘寶互動團隊、達摩院智慧數字人團隊、優酷數字人制播團隊、考拉互動&內容導購團隊、螞蟻數字與金融內容社區團隊。他們一起分享和研究虛擬數字人領域的技術和應用。業務涉及遊戲、視頻、直播三個主要的場景。

淘系技術:虛擬數字人行業現狀和技術研究
  1. 遊戲:虛擬數字人在遊戲行業基本是標配,非常多的遊戲都會需要塑造人物,其中能讓玩家通過自定義塑造人物形象功能的這一類遊戲,自定義塑造人物形象的功能也稱為“捏人”。
    淘寶人生:這是手淘App內一款可以打造虛擬形象的遊戲,包含了捏臉、穿搭、美顏、拍照等功能,逛街、家園等玩法。
    養考拉:這是考拉海購App內的一款可以養成考拉的遊戲,包含了裝扮功能,餵養等玩法。
    它們均採用Web為主的技術方案,通過自研的引擎完成渲染、表情、動作等人物的形和行。
  2. 視頻:虛擬數字人的短視頻可以給用戶帶來感官上的優秀體驗,還能給業務帶來增量的收益。在製作虛擬數字人的視頻時,可以通過動作捕捉、智能識別、導演系統等方案,讓虛擬數字人栩栩如生。
  3. 直播:直播和虛擬數字人的結合仍然處於早期的探索階段,因為兩種現象級的產業需要結合且形成新的或增量的商業模式並不容易。這其中涉及到的技術也有實時動作捕捉、算法訓練合成、在直播場景下的雲渲染推流等等。

我們一起來創作

隨着應用場景專業和深入,技術研究也會涵蓋工程和算法等多種綜合性的解決方案,且在不同的應用場景下,側重點也會不太一樣。接下來以大淘寶互動團隊的淘寶人生業務為例子,分別從美術生產、渲染風格、捏臉換裝、表情動作、導演系統和語音合成六大主題為大家呈現如何打造超級虛擬偶像。

▐  形

這個章節我們來完成虛擬數字人的形 – “具備人或擬人的外觀,具有特定的相貌等人物特徵”。

淘系技術:虛擬數字人行業現狀和技術研究

從模子中刻出來 – 美術工作流

我們最先需要確定虛擬數字人的基礎形體特徵,比如使用真人比例的7頭身,還是卡通比例的5頭身;男性,女性,還是動物擬人等。基礎形體特徵確定后,可以交由3D美術來生產基礎形體。整個過程,通常是在傳統DCC軟件里完成,但3D美術和2D美術最大的不同是,在2D內容的美術生產中,技術可以在美術產物交付后再介入;而在3D內容的美術生產中,技術就需要直接介入生產過程中。原因是:3D內容的美術生產流程相對較長也較複雜,美術和技術之間需要頻繁的合作才能保障交付質量或交付效率。我們也稱作這個過程為3D美術工作流。

舉個形象例子:藝術家開始設計並雕刻一個杯子模具,生產線需要解決模具用什麼材料、如何將材料注入到模具中、以及如何順利脫模等“技術性問題”。通常這些就是由技術來負責,並需要提前和藝術家協商製作模具的規範才能確保後續的工程順利進行,最終完成模具的交付。3D美術工作流也有很多大同小異的方案,**大同是因為3D內容生產也是有一定的工業標準的,小異是因為細節會和藝術家使用的軟件、技術實現的引擎有密切的關係。**以淘寶人生中的美術工作流舉例大致經歷這幾個步驟:

  1. 用Maya製作白模,骨骼,把過程產物暫存在OSS,並提供預覽工具
  2. 用Photoshop製作貼圖,把貼圖上傳至CDN
  3. 在Maya里定製GLTF Exporter插件,導出glTF(包含模型數據、骨骼數據、材質、貼圖數據)
  4. Web端內嵌材質編輯器進行自研材質的效果調整
  5. 在EVA Figure引擎通過GLTF Importer導入人體的glTF,並定製材質Shader進行渲染。

經過前期和藝術家的磨合,最終會形成一套針對當前需求的美術工作流,並穩定運行下去。

  • 精雕細琢 – 捏臉

完成了角色的基礎形體后,我們每個人都可以用它來繼續完成自己想要的那個樣子。雖然不同的長相在美術環節中也能完成,但成本相當的高,每個人喜歡的樣子都不一樣,那麼就要很多次的美術生產或修改。所以我們為基礎形體加入了捏臉系統,你就可以輕鬆的完成定製化的要求。淘寶人生提供了捏臉功能,可以體驗到捏臉的樂趣。捏臉技術的的實現基礎就是對已有的模型數據進行局部的修改和變化,最終達到千人千變的目的。

那是如何能通過這樣的系統來達到改變基礎模型的目的的呢?通常,一組模型數據就是頂點數據的集合,改變模型通常就是改變頂點的數據,而改變頂點數據又通常有兩種方式:

骨骼蒙皮

通過“外力”對頂點施加某種“變換”,簡單來說就是包含了位移、旋轉和縮放三種變換的一組數學公式。為了完成這種變換,這股外力可以使用“骨骼”來完成。這裡說的骨骼同樣可以理解成人體的骨骼,當手指上關節的作用發生運動變化時,手型就會發生變化。在捏臉功能中,在淘寶人生中,我們給臉部預置了大約20多種骨骼,可以改變頭圍、眼球、眼角、眼眶、顴骨、臉型等等。

淘系技術:虛擬數字人行業現狀和技術研究

混合變形

骨骼帶來的頂點變換很粗礦,無法完成對嘴形狀的定製,因為這樣一個看似簡單的外表,實際上在模型中會涉及數以萬計的頂點進行不同規律的變換。於是,我們就為這一組頂點變換專門設置變形器,業界一般稱為“Morph Target”或“Blend Shape”。這種變換的原理是給頂點準備一個基準位置,再提供一個”極端變化“后的最大位置,之後乘以一定的”權重比例“,就能讓這個頂點在基準位置和極端位置中的任一位置。但因為臉部需要局部變形的地方太多,且一個變形可能涉及數以萬計的頂點,所以對實時計算壓力也是不小的。

兩種技術比較來說,骨骼蒙皮簡單高效但不夠靈活,而頂點變形更加自由但製作和計算成本都較高。所以在實際開發中,哪些用骨骼,哪些用頂點變形,這是一個權衡“效果”與“效率”的工作,需要具體去看,反覆拿捏。在淘寶人生中,”捏臉“功能小部分使用了骨骼蒙皮,大部分使用了混合變形。這也是長期磨合和經驗累積的結果。

  • 時尚穿搭 – 換裝和美顏

有了基礎形體和長相后,我們必須得給角色穿上時尚的衣服,畫上美麗的妝容。對於人類來說,穿衣和畫妝是個“動作”,在虛擬世界中,我們仍然要能很好的完成“穿”和“畫”這兩件重要的事情。

換裝

現實生活中,衣服穿在身上它就和皮膚緊貼着或者有一定空隙,這種想法放到虛擬世界中其實非常難實現。因為皮膚和衣服其實就是Mesh(網格),當衣服穿在身上時實際上是兩組網格“碰撞”在一起,於是會引出如下兩個問題:

如何在身體做動作時,衣服也跟着身體“做動作”。身體是擁有骨骼的,骨骼外包裹着一層“皮膚”,用同樣思路,衣服實際上也是包裹在同樣骨骼上的一層“皮膚”。在淘寶人生中,我們將身體和衣服採用同一套骨骼模板,並在渲染時實現了兩份骨骼數據的實時“同步”。

如何解決身體的網格穿透到衣服外。用相同骨骼的方案解決衣服“穿”在身上的效果非常巧妙,但也容易出現問題,比如某件衣服局部非常內凹,那麼就很容易出現身體的皮膚突出在衣服之外的問題,俗稱“穿模”。因為仔細調整道具成本實在太高了,所以我們也做了個取巧的方案:通過把人體進行“切割”,並對每件衣服遮擋的人體部位進行標記,當渲染某件衣服時,直接隱藏被遮擋部位Mesh即可。

淘系技術:虛擬數字人行業現狀和技術研究

有了這兩項技術的攻堅后,我們通過和美術生產約定相關的規範和工作流程,就可以批量生產衣服,而換裝僅僅只是加載不同的模型而已,無須逐個特殊處理即可達到目的。

美顏

妝容的細節要求非常多,所以最便捷的方式就是使用貼圖。基礎形體的臉部已經有一張基礎貼圖了,可以簡單理解成“素顏”;要在素顏上畫不同的妝容,我們做法是“動態合成紋理”。整個過程分為兩步。

渲染到紋理(Render To Texture):第一步創建一個可渲染對象(Render Target),把基礎紋理貼圖渲染到這個可渲染對象上,再把妝容紋理貼圖渲染到同一個可渲染對象上。這一步需要注意藝術家在繪製妝容紋理時,需要和基礎紋理的UV是一一對應的。

使用可渲染紋理:第二步就是把合成好的紋理渲染到模型上。

  • 二次元還是三次元 – 渲染風格

最後到了給它設定風格的時候。有人會喜歡真實系,有人也會喜歡卡通系,也會有人喜歡朋克風,也會有人喜歡純欲風,這些不同的風格需要依靠渲染功能來完成。當我們說到渲染時,都會提到圖形渲染管線,它可以根據不同的需求做很多組合和調整,比如最簡單的渲染管線是:加載模型 —> 頂點着色 —> 片元着色 —> 光柵化。其中片元着色的步驟,就是用來完成材質紋理的繪製使之達到想要的角色風格。對材質紋理的繪製通常分為兩大類:

PBR

全稱Physically Based Rendering,顧名思義是基於物理的渲染,既然是基於物理的,那麼它渲染的最終結果會非常接近我們的真實世界。所以也就很好理解,這類材質可以決定人物是寫實或超寫實風格的。此技術由8大核心理論和幾個重要的光照模型組成,在此不一一列舉,有興趣的同學可以去閱讀《Real-Time Rendering》中的PBR相關章節,或是SIGGRAPH的《Physically Based Shading in Theory and Practice》系列文章。例如在淘寶人生中,根據不同部位選取漸變貼圖上採樣色的方式模擬了次表面散射的技術,實現了人臉皮膚的紅潤通透感。

NPR

全稱Non-photorealistic Rendering,即非真實感繪製。其最主要的應用之一,就是非常盛行的二次元風格,特別是日式卡通風格。和PBR不一樣,NPR不會去追求各種物理學模擬,而是從油畫、素描、卡通動畫中得到啟發和靈感。比如,經常被使用的人物描邊、卡通着色、邊緣光、頭髮高光等。這些特殊的材質渲染也都能在找到專業的論文和例子,大家可以自行搜索。

▐  動

這個章節我們來完成虛擬數字人的動 – “擁有和人相似的行為,具有用語言、表情和肢體等表達的能力”。

淘系技術:虛擬數字人行業現狀和技術研究
  • 表情和動作

成功塑造虛擬數字人的關鍵之一是真實且細膩的表情和動作。真人的表情和動作是依靠骨骼和肌肉相互作用而呈現的,在虛擬世界中,我們同樣用數字技術來模擬這些骨骼和肌肉的作用,呈現表情和動作。在上面“形”的章節里,已經提到了臉部使用了骨骼蒙皮和混合變形的方式來改變頂點,在“動”的章節里,仍然會使用這兩項技術,並且通過動畫的方式讓頂點“動”起來,從而完成相應的表情和動作。

  • 手K動畫 

在臉部表情的刻畫中,頂點動畫(也就是Morph Target Animation)是主要實現技術之一。在淘寶人生的“捏臉”功能中骨骼蒙皮是用來確定臉的大小和五官的位置的。混合變形則是用來完成五官包括臉頰、額頭部位的變形,其中用於表情動畫的BlendShape多達50個,它和蘋果的Animoji使用的BlendShape非常接近,這也是業界公認的可以做到絕大多數表情(當然很多微表情非常難達到)的設定。

淘系技術:虛擬數字人行業現狀和技術研究

在肢體動作的製作中,骨骼動畫(也就是Skeletal Animation)是主要實現技術之一。骨骼動畫包含了骨骼(Skeleton)和蒙皮(Skin)兩種數據。首先把Mesh的頂點綁定在骨骼上生成蒙皮,這些頂點會受到多個不同權重骨骼的影響,然後通過改變骨骼的朝向和位置來生成動畫,這時蒙皮就會跟着骨骼一起動起來。

淘系技術:虛擬數字人行業現狀和技術研究
  • 動作捕捉

製作動畫的成本相對都比較高,原因是上述兩種動畫技術通常是關鍵幀動畫。假設一個人抬起手肘,那麼手臂和手腕也會因此而產生連貫性的動作。如果要實現這樣一段動畫,關鍵幀將會非常之多,製作起來也會異常困難。為了有效降低製作成本,我們需要用到動作捕捉的技術,通常我們把動作捕捉技術分為2大方向4個類別,可以用四象限圖來描述:

淘系技術:虛擬數字人行業現狀和技術研究

我們用手機攝像頭完成的AR互動遊戲、AR面具等功能實際就是光學識別+無穿戴設備這一象限內的技術。

  • 編排 – 導演系統

我們再來對比下幾種方式製作的成本和靈活度。

淘系技術:虛擬數字人行業現狀和技術研究

手K動畫的製作成本無疑是最高的,靈活度和效果也是最好的,同時也要求經驗豐富的綁定師和動畫師才能完成。動作捕捉的製作需要一套專業的動捕設備,一個能容納這些設備和能滿足做所需動作的場地,一個動作製作周期少則幾個小時,多則幾天。在面臨諸如眾多舞蹈場景的運營需求下,最適合的方案是把多個已經製作完成的動作,自由或智能編排成一個劇本,就像拍戲時劇本是導演提前設計好的,演員只需依照劇本表演出來就行,故也稱為“導演系統”。

淘系技術:虛擬數字人行業現狀和技術研究

動作的串聯需要解決一個問題:動作1到動作2如何過渡銜接。這便需要用到混合動畫(Blending Animation)技術。混合動畫的基礎原理是以動作1當前狀態為起點、動作2的指定狀態為終點,計算關鍵幀的插值**。簡單的可以使用線性插值,複雜的也可以使用貝塞爾曲線插值等。關於混合動畫的知識點和方案非常多,也適用於不同的場景和需求,大家可以自行搜索,例如Unity和Unreal也都提供了很多不同的混合方案。

淘系技術:虛擬數字人行業現狀和技術研究

有了導演系統后,就可以提供自由的組合能力,比如想舉行一場虛擬演唱會,也可以通過導演系統完成表演。

淘系技術:虛擬數字人行業現狀和技術研究

這個章節我們來探索虛擬數字人的神 – “擁有比擬人的思想,具有識別外界環境、並能與人交流互動的能力”。我們在對“神”的研究上,仍然處於非常初級的階段,一方面它需要大數據的支撐,另一方面它對於前端這個崗位來說已經有相當的距離了。為了讓虛擬數字人更加真實,“神”會是未來重點的研究方向。

  • 性格流露 – 自然語音合成

虛擬數字人的語言表達能力需要用到語音合成技術,比如TTS(Text To Speech)。阿里達摩院有着非常完善的TTS引擎,用它就能讓虛擬數字人開口說話。不過這也僅僅是開口說話,大家其實都能感受到這樣的語言非常蒼白無力,毫無“情感”,無法在不同性格和情感時表達出來的不同語氣。在業界可以看到一些優秀的成果:YAMAHA的歌聲合成系統“VOCALOID”(初音未來和洛天依均在使用),谷歌基於深度學習的端到端語音合成系統“Tacotron”,以及訊飛的語音合成系統等。阿里達摩院也在持續研究更加符合自然表達的語音合成系統,通過為虛擬數字人設定性格,並藉助大數據的深度學習來產生風格迥異的情感型語氣。大家可以細細評委下以下三段真人、普通TTS和風格化TTS的效果。至此,在現有的技術下我們完成了一個超級虛擬偶像的登場。

淘系技術:虛擬數字人行業現狀和技術研究

我們嚮往的數字人

淘寶人生是基於Web技術打造的數字人,在經歷了2年的技術打磨和升級改造,我們也遇到了Web數字人技術的困境。在性能方面,Web應用和原生應用存在無可忽視的差距。WebGL(基於OpenGL ES 2.0)作為Web主要的圖形接口在Vulkan、DirectX、Metal面前無論是能力還是性能上都無法追趕。再加上不同的移動設備在軟硬件上仍會出現奇奇怪怪的兼容性問題。這一系列困境已經成為了Web中的數字人一個很難跨越的天花板。

反觀行業中的數字人技術,超寫實渲染、微表情、肌肉模擬、物理材質、光線追蹤等等,讓身處Web技術中的我們望塵莫及。同時,阿里的虛擬數字人技術也才剛剛起步,其中基礎軟硬件、中台技術、大數據支撐等也都起步較晚,這些都給我們帶來了不小的困難和阻力。

淘系技術:虛擬數字人行業現狀和技術研究

面對這些困境和差距,我們針對淘寶人生中虛擬數字人技術的發展也會從各個方向上去做努力和嘗試。

首先是基於Web技術的優化:在Serverless渲染雲服務基礎上,在EVA Figure(虛擬人像渲染引擎)和Puppeteer技術的結合下,藉助最新的WebGPU/WASM等,讓虛擬數字人的渲染效果和質量得到提升。我們也在積極同阿里云云服務團隊、大淘寶Node架構團隊一起合作建設Web技術下的雲渲染流程。計劃把它應用在一些非實時的渲染任務上,例如生產淘寶人生用戶形象的全身照片、短視頻、動作幀圖等等。這些產物也能被淘寶人生業務或其他業務所使用。

其次是對業務能力的升級,在業務和技術相互滋養的土壤中,不斷將業務能力積累成平台服務,為阿里的虛擬數字人技術貢獻點點滴滴的經驗,並將部分解決方案通過商業化上雲的方式服務大眾。

然後在元宇宙、超寫實、XR/6G、腦機接口等等行業風向標的輻射下,暢想未來Web數字人技術可能性。

文末特別感謝下阿里前端委員會圖形互動虛擬角色小組成員的出色工作,讓我能完成此文章內容。也歡迎大家持續關注虛擬角色小組和各個團隊的成果。

本文鏈接:https://www.8btc.com/article/6738614

轉載請註明文章出處

(0)
上一篇 2022-03-25 20:52
下一篇 2022-03-25 21:04

相关推荐