機(jī)器之心專欄
機(jī)器之心編輯部
3D 人臉重建是一項(xiàng)廣泛應(yīng)用于游戲影視制作、數(shù)字人、AR/VR、人臉識(shí)別和編輯等領(lǐng)域的關(guān)鍵技術(shù),其目標(biāo)是從單張或多張圖像中獲取高質(zhì)量的 3D 人臉模型。借助攝影棚中的復(fù)雜拍攝系統(tǒng),當(dāng)前業(yè)界成熟方案已可得到媲美真人的毛孔級(jí)精度的重建效果 [2],但其制作成本高、周期長(zhǎng),一般僅用于 S 級(jí)影視或游戲項(xiàng)目。
近年,基于低成本人臉重建技術(shù)的交互玩法(如游戲角色捏臉玩法、AR/VR 虛擬形象生成等)受到市場(chǎng)歡迎。用戶只需輸入日?色@取的圖片,如手機(jī)拍攝的單張或多張圖片,即可快速得到 3D 模型。但現(xiàn)有方法成像質(zhì)量不可控,重建結(jié)果精度較低,無(wú)法表達(dá)人臉細(xì)節(jié) [3-4]。如何在低成本條件下得到高保真 3D 人臉,仍是一個(gè)未解的難題。
人臉重建的第一步是定義人臉表達(dá)方式,但現(xiàn)有主流的人臉參數(shù)化模型表達(dá)能力有限,即使有更多約束信息,如多視角圖片,重建精度也難以提升。因此,騰訊 AI Lab 提出了一種改進(jìn)的自適應(yīng)骨骼 - 蒙皮模型(Adaptive Skinning Model,以下簡(jiǎn)稱 ASM)作為參數(shù)化人臉模型使用,利用人臉先驗(yàn),以高斯混合模型來(lái)表達(dá)人臉蒙皮權(quán)重,極大降低參數(shù)量使其可自動(dòng)求解。
測(cè)試表明,ASM 方法在不需要訓(xùn)練的前提下僅使用少量的參數(shù),即顯著提升了人臉的表達(dá)能力及多視角人臉重建精度,創(chuàng)新了 SOTA 水平。相關(guān)論文已被 ICCV-2023 接收,以下為論文詳細(xì)解讀。
論文題目:ASM: Adaptive Skinning Model for High-Quality 3D Face Modeling
論文鏈接:https://arxiv.org/pdf/2304.09423.pdf
研究挑戰(zhàn):低成本、高精度的 3D 人臉重建難題
從 2D 圖像得到信息量更大的 3D 模型,屬于欠定問(wèn)題存在無(wú)窮多解。為了使其可解,研究者將人臉先驗(yàn)引入重建,降低求解難度的同時(shí)能以更少的參數(shù)來(lái)表達(dá)人臉 3D 形狀,即參數(shù)化人臉模型。當(dāng)前大部分參數(shù)化人臉模型都是基于 3D Morphable Model (3DMM) 及其改進(jìn)版,3DMM 是 Blanz 和 Vetter 在 1999 年首次提出的參數(shù)化人臉模型 [5]。文章假設(shè)一張人臉可以通過(guò)多個(gè)不同的人臉線性或非線性組合得到,通過(guò)收集數(shù)百個(gè)真實(shí)人臉的高精度 3D 模型構(gòu)建人臉基底庫(kù),進(jìn)而組合參數(shù)化人臉來(lái)表達(dá)新的人臉模型。后續(xù)研究通過(guò)收集更多樣的真實(shí)人臉模型 [6, 7],以及改進(jìn)降維方法來(lái)優(yōu)化 3DMM [8, 9]。
然而,3DMM 類人臉模型的魯棒性高但表達(dá)能力不足。盡管他能夠在輸入圖像模糊或有遮擋的情況下穩(wěn)定地生成精度一般的人臉模型,但當(dāng)使用多張高質(zhì)量圖像作為輸入時(shí),3DMM 表達(dá)能力有限,不能利用上更多的輸入信息,因此限制了重建精度。這種限制源于兩方面,一是方法本身的局限性,二是該方法依賴于人臉模型數(shù)據(jù)的收集,不僅數(shù)據(jù)獲取成本高,且因人臉數(shù)據(jù)的敏感性,在實(shí)際應(yīng)用中也難以廣泛復(fù)用。
ASM 方法:重新設(shè)計(jì)骨骼 - 蒙皮模型
為了解決現(xiàn)有 3DMM 人臉模型表達(dá)能力不足的問(wèn)題,本文引入了游戲業(yè)界常用的 “骨骼 - 蒙皮模型” 作為基準(zhǔn)人臉表達(dá)方式。骨骼 - 蒙皮模型是游戲與動(dòng)畫制作過(guò)程中表達(dá)游戲人物角色臉型與表情的一種常見的人臉建模方式。它通過(guò)虛擬的骨骼點(diǎn)與人臉上的 Mesh 頂點(diǎn)相連,由蒙皮權(quán)重決定骨骼對(duì) Mesh 頂點(diǎn)的影響權(quán)重,使用時(shí)只需要控制骨骼的運(yùn)動(dòng)即可間接控制 Mesh 頂點(diǎn)的運(yùn)動(dòng)。
通常情況下,骨骼 - 蒙皮模型需要?jiǎng)赢嫀熯M(jìn)行精確的骨骼放置與蒙皮權(quán)重繪制,具有高制作門檻與長(zhǎng)制作周期的特點(diǎn)。但是現(xiàn)實(shí)的人臉中不同的人骨骼與肌肉的形狀具有較大差異,一套固定的骨骼 - 蒙皮系統(tǒng)難以表達(dá)現(xiàn)實(shí)中多種多樣的臉型,為此,本文在現(xiàn)有的骨骼 - 蒙皮基礎(chǔ)上進(jìn)行進(jìn)一步設(shè)計(jì),提出了自適應(yīng)骨骼 - 蒙皮模型 ASM,基于高斯混合蒙皮權(quán)重(GMM Skinning Weights)與動(dòng)態(tài)骨骼綁定系統(tǒng)(Dynamic Bone Binding)進(jìn)一步提高了骨骼 - 蒙皮的表達(dá)能力與靈活度,為每一個(gè)目標(biāo)人臉自適應(yīng)生成獨(dú)有的骨骼 - 蒙皮模型,以表達(dá)更為豐富的人臉細(xì)節(jié)。
為了提高骨骼 - 蒙皮模型對(duì)于建模不同人臉時(shí)的表達(dá)能力,ASM 對(duì)骨骼 - 蒙皮模型的建模方式進(jìn)行了全新的設(shè)計(jì)。
圖 1:ASM 整體框架
骨骼 - 蒙皮系統(tǒng)通;诰性混合蒙皮(Linear Blend Skinning, LBS)算法,通過(guò)控制骨骼的運(yùn)動(dòng)(旋轉(zhuǎn)、平移、縮放)來(lái)控制 Mesh 頂點(diǎn)的變形。傳統(tǒng)的骨骼 - 蒙皮包含兩個(gè)部分,即蒙皮權(quán)重矩陣與骨骼綁定,ASM 對(duì)這兩部分分別進(jìn)行了參數(shù)化,以實(shí)現(xiàn)自適應(yīng)的骨骼 - 蒙皮模型。接下來(lái)會(huì)分別介紹蒙皮權(quán)重矩陣與骨骼綁定的參數(shù)化建模方法。
公式 1:傳統(tǒng)骨骼 - 蒙皮模型的 LBS 公式
公式 2:ASM 的 LBS 公式
高斯混合蒙皮權(quán)重(GMM Skinning Weights)
蒙皮權(quán)重矩陣是一個(gè) mxn 維的矩陣,其中 m 為骨骼數(shù)量,n 為 Mesh 上的頂點(diǎn)數(shù)量,該矩陣用于存放每一根骨骼對(duì)每一個(gè) Mesh 頂點(diǎn)的影響系數(shù)。一般來(lái)說(shuō)蒙皮權(quán)重矩陣是高度稀疏的,例如在 Unity 中,每個(gè) Mesh 頂點(diǎn)只會(huì)被最多 4 根骨骼影響,除了這 4 根骨骼外,其余骨骼對(duì)該頂點(diǎn)的影響系數(shù)為 0。傳統(tǒng)的骨骼 - 蒙皮模型中蒙皮權(quán)重由動(dòng)畫師繪制得到,并且蒙皮權(quán)重一旦得到,在使用時(shí)將不再發(fā)生改變。近年來(lái)有工作 [1] 嘗試結(jié)合大量數(shù)據(jù)與神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)如何自動(dòng)生成蒙皮權(quán)重,但這樣的方案有兩個(gè)問(wèn)題,一是訓(xùn)練神經(jīng)網(wǎng)絡(luò)需要較大量的數(shù)據(jù),如果是 3D 人臉或者蒙皮權(quán)重的數(shù)據(jù)則更難獲得;二是使用神經(jīng)網(wǎng)絡(luò)建模蒙皮權(quán)重存在較為嚴(yán)重的參數(shù)冗余。是否存在一種蒙皮權(quán)重的建模方式,在不需要訓(xùn)練的前提下使用少量的參數(shù)即可完整表達(dá)整張人臉的蒙皮權(quán)重呢?
通過(guò)觀察常見的蒙皮權(quán)重可發(fā)現(xiàn)以下性質(zhì):1. 蒙皮權(quán)重局部光滑;2. 離當(dāng)前骨骼位置越遠(yuǎn)的 Mesh 頂點(diǎn),對(duì)應(yīng)的蒙皮系數(shù)通常也越;而這樣的性質(zhì)與高斯混合模型(GMM)非常吻合。于是本文提出了高斯混合蒙皮權(quán)重(GMM Skinning Weights)將蒙皮權(quán)重矩陣建模為基于頂點(diǎn)與骨骼某個(gè)距離函數(shù)的高斯混合函數(shù),這樣就能使用一組 GMM 系數(shù)表達(dá)特定骨骼的蒙皮權(quán)重分布。為了進(jìn)一步壓縮蒙皮權(quán)重的參數(shù)量,我們將整個(gè)人臉 Mesh 從三維空間轉(zhuǎn)移到 UV 空間,從而只需要使用二維 GMM 并且使用頂點(diǎn)到骨骼的 UV 距離就能計(jì)算出當(dāng)前骨骼對(duì)特定頂點(diǎn)的蒙皮權(quán)重系數(shù)。
動(dòng)態(tài)骨骼綁定(Dynamic Bone Binding)
對(duì)蒙皮權(quán)重進(jìn)行參數(shù)化建模不僅使我們能用少量參數(shù)表達(dá)蒙皮權(quán)重矩陣,還使我們?cè)谶\(yùn)行時(shí)(Run-Time)調(diào)整骨骼綁定位置成為了可能,由此,本文提出了動(dòng)態(tài)骨骼綁定(Dynamic Bone Binding)的方法。與蒙皮權(quán)重相同,本文將骨骼的綁定位置建模為 UV 空間上的一個(gè)坐標(biāo)點(diǎn),并且能夠在 UV 空間中任意移動(dòng)。對(duì)于人臉 Mesh 的頂點(diǎn),能夠通過(guò)很簡(jiǎn)單地通過(guò)預(yù)定義好的 UV 映射關(guān)系將頂點(diǎn)映射為 UV 空間上的一個(gè)固定坐標(biāo)。但是骨骼并沒(méi)有預(yù)先定義在 UV 空間中,為此我們需要將綁定的骨骼從三維空間轉(zhuǎn)移到 UV 空間上。本文中這個(gè)步驟通過(guò)對(duì)骨骼與周圍頂點(diǎn)進(jìn)行坐標(biāo)插值實(shí)現(xiàn),我們將計(jì)算得到的插值系數(shù)應(yīng)用在頂點(diǎn)的 UV 坐標(biāo)上,就能獲得骨骼的 UV 坐標(biāo)。反過(guò)來(lái)也一樣,當(dāng)需要將骨骼坐標(biāo)從 UV 空間轉(zhuǎn)移到三維空間時(shí),我們同樣計(jì)算當(dāng)前骨骼的 UV 坐標(biāo)與臨近頂點(diǎn)的 UV 坐標(biāo)的插值系數(shù),并將該插值系數(shù)應(yīng)用到三維空間中同樣的頂點(diǎn)三維坐標(biāo)上,即可插值出對(duì)應(yīng)骨骼的三維空間坐標(biāo)。
通過(guò)這種建模方式,我們將骨骼的綁定位置與蒙皮權(quán)重系數(shù)都統(tǒng)一為了 UV 空間中的一組系數(shù)。當(dāng)使用 ASM 時(shí),我們將人臉 Mesh 頂點(diǎn)的形變轉(zhuǎn)變?yōu)榍蠼?UV 空間中骨骼綁定位置的偏移系數(shù)、UV 空間中的高斯混合蒙皮系數(shù)與骨骼運(yùn)動(dòng)系數(shù)三者的組合,極大地提高了骨骼 - 蒙皮模型的表達(dá)能力,實(shí)現(xiàn)更為豐富的人臉細(xì)節(jié)的生成。
表 1:ASM 每根骨骼的參數(shù)維度
研究結(jié)果:人臉表達(dá)能力與多視角重建精度達(dá)到 SOTA 水平
對(duì)比不同參數(shù)化人臉模型的表達(dá)能力
我們使用參數(shù)化人臉模型注冊(cè)高精度人臉掃描模型的方式(Registration),將 ASM 與傳統(tǒng)的基于 PCA 方法的 3DMM(BFM [6],F(xiàn)LAME [7],F(xiàn)aceScape [10])、基于神經(jīng)網(wǎng)絡(luò)降維方法的 3DMM(CoMA [8], ImFace [9])以及業(yè)界前沿的骨骼 - 蒙皮模型(MetaHuman)進(jìn)行了對(duì)比。結(jié)果指出,ASM 在 LYHM 與 FaceScape 兩個(gè)數(shù)據(jù)集上的表達(dá)能力均達(dá)到了 SOTA 水平。
表 2:LYHM 與 FaceScape 的 registration 精度
圖 2:LYHM 與 FaceScape 上 registration 精度的誤差分布
圖 3:LYHM 與 FaceScape 上 registration 的可視化結(jié)果與誤差熱力圖
多視角人臉重建中的應(yīng)用
我們使用了 Florence MICC 的數(shù)據(jù)集測(cè)試了 ASM 在多視角人臉重建任務(wù)上的表現(xiàn),在 Coop(室內(nèi)近距離攝像頭,人物無(wú)表情)測(cè)試集上的重建精度達(dá)到了 SOTA 水平。
圖 4:Florence MICC 數(shù)據(jù)集上的 3D 人臉重建結(jié)果
我們還在 FaceScape 數(shù)據(jù)集上測(cè)試了多視角重建任務(wù)中圖片數(shù)量對(duì)重建結(jié)果的影響,結(jié)果可以看到當(dāng)圖片數(shù)量在 5 張左右時(shí) ASM 相比其他的人臉表達(dá)方式能夠?qū)崿F(xiàn)最高的重建精度。
表 3:FaceScape 上不同輸入數(shù)量的多視角重建結(jié)果精度
圖 5:FaceScape 上不同輸入數(shù)量的多視角重建可視化結(jié)果與誤差熱力圖
總結(jié)及展望
在低成本條件下獲得高保真人臉這一行業(yè)難題上,本研究邁出了重要一步。我們提出的新參數(shù)化人臉模型顯著增強(qiáng)了人臉表達(dá)能力,將多視角人臉重建的精度上限提升到了新的高度。該方法可用于游戲制作中的 3D 角色建模、自動(dòng)捏臉玩法,以及 AR/VR 中的虛擬形象生成等眾多領(lǐng)域。
在人臉表達(dá)能力得到顯著提升之后,如何從多視角圖片中構(gòu)建更強(qiáng)的一致性約束,以進(jìn)一步提高重建結(jié)果的精度,成為了當(dāng)前人臉重建領(lǐng)域的新瓶頸、新挑戰(zhàn)。這也將是我們未來(lái)的研究方向。
參考文獻(xiàn)
[1] Noranart Vesdapunt, Mitch Rundle, HsiangTao Wu, and Baoyuan Wang. Jnr: Joint-based neural rig representation for compact 3d face modeling. In Computer VisionECCV 2020: 16th European Conference, Glasgow, UK, August 2328, 2020, Proceedings, Part XVIII 16, pages 389405. Springer, 2020.
[2] Thabo Beeler, Bernd Bickel, Paul Beardsley, Bob Sumner, and Markus Gross. High-quality single-shot capture of facial geometry. In ACM SIGGRAPH 2010 papers, pages 19. 2010.
[3] Yu Deng, Jiaolong Yang, Sicheng Xu, Dong Chen, Yunde Jia, and Xin Tong. Accurate 3d face reconstruction with weakly-supervised learning: From single image to image set. In Proceedings of the IEEE/CVF conference on computer vision and pattern recognition workshops, pages 00, 2019.
[4] Yao Feng, Haiwen Feng, Michael J Black, and Timo Bolkart. Learning an animatable detailed 3d face model from in-the-wild images. ACM Transactions on Graphics (ToG), 40 (4):113, 2021.
[5] Volker Blanz and Thomas Vetter. A morphable model for the synthesis of 3d faces. In Proceedings of the 26th annual conference on Computer graphics and interactive techniques, pages 187194, 1999.
[6] Pascal Paysan, Reinhard Knothe, Brian Amberg, Sami Romdhani, and Thomas Vetter. A 3d face model for pose and illumination invariant face recognition. In 2009 sixth IEEE international conference on advanced video and signal based surveillance, pages 296301. Ieee, 2009.
[7] Tianye Li, Timo Bolkart, Michael J Black, Hao Li, and Javier Romero. Learning a model of facial shape and expression from 4d scans. ACM Trans. Graph., 36 (6):1941, 2017.
[8] Anurag Ranjan, Timo Bolkart, Soubhik Sanyal, and Michael J Black. Generating 3d faces using convolutional mesh autoencoders. In Proceedings of the European conference on computer vision (ECCV), pages 704720, 2018.
[9] Mingwu Zheng, Hongyu Yang, Di Huang, and Liming Chen. Imface: A nonlinear 3d morphable face model with implicit neural representations. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, pages 2034320352, 2022.
[10] Haotian Yang, Hao Zhu, Yanru Wang, Mingkai Huang, Qiu Shen, Ruigang Yang, and Xun Cao. Facescape: a large-scale high quality 3d face dataset and detailed riggable 3d face prediction. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, pages 601610, 2020.