李佳,任慧
(1.中國傳媒大學(xué) 理工學(xué)部,北京 100024;2.視聽技術(shù)與智能控制系統(tǒng)文化部重點實驗室,北京 100024)
在3D動畫、電子通訊(可視電話、視頻會議)[1],醫(yī)療和法醫(yī)應(yīng)用(如顱頜面外科手術(shù)模擬,基于頭骨數(shù)據(jù)的面部重建[2],虛擬老化)等領(lǐng)域,3D人臉建模發(fā)揮著不可替代的增強現(xiàn)實的作用。三維建模系統(tǒng)可分為主動視覺和被動視覺系統(tǒng)兩種。
主動視覺系統(tǒng)通過測量從外部設(shè)備(如三維激光掃描儀或帶有結(jié)構(gòu)光的校準(zhǔn)立體像片的相機)照射的光束來捕捉三維點云,計算三維坐標(biāo)和貼圖數(shù)據(jù),進(jìn)而生成網(wǎng)格人臉。Lee[3]提出根據(jù)激光立體掃描儀的景深數(shù)據(jù)和色彩數(shù)據(jù)重建個性化模型的方法。Liao[4]在美化人臉五官的研究中也使用三維激光掃描儀獲取人臉網(wǎng)格和貼圖。Briggs[5]使用面部激光掃描器來制作用于局部放療治療的醫(yī)用口罩。這些方法也有若干缺點,如耗時多,而且需要的設(shè)備比較昂貴等。
基于被動視覺的建模系統(tǒng)指的是一個不需要發(fā)光器件并且三維空間人臉信息從二維數(shù)字圖像中估計的系統(tǒng)。三維信息可以通過分析基于多視角相關(guān)特征點的相機空間參數(shù)得到,也可以通過調(diào)整3D統(tǒng)計模型符合人臉圖像來獲得。
基于對應(yīng)特征點的研究方案中,Pighin[6]的個性人臉擬合系統(tǒng)采取了散亂數(shù)據(jù)插值的技術(shù)。該算法的優(yōu)點是變形不需要與目標(biāo)網(wǎng)格相同的頂點數(shù);缺點是如果變形控制點超出了所在區(qū)域,該變形在邊界區(qū)域會變得不連續(xù)。
Blanz和Vetter等人[7]使用主成分分析法從一個數(shù)字化真人人臉數(shù)據(jù)庫中提取構(gòu)象參數(shù)。該方法的缺點是不是一個直觀的參數(shù)空間,而且需要通過優(yōu)化查找的方式匹配人臉。
Kuo[8]等人提出了一種估計方法,即根據(jù)一幅沒有深度數(shù)據(jù)的正臉二維灰度圖合成對應(yīng)的人臉側(cè)面,基于數(shù)據(jù)集采用最小均方誤差估量理論從正面人臉參數(shù)估量出側(cè)面參數(shù)。三維通用人臉模型然后根據(jù)從圖像中提取的正面坐標(biāo)和它們的估計深度進(jìn)行擬合。
Furukawa[9]提出一種高精度、高密度和高魯棒性的多視點立體圖像匹配與重建(MULTI-view stereo,MVS)算法,取得了完整度更高的形狀模型。Bouaziz[10]的人臉建模算法中根據(jù)手持電話的相機拍攝的一組圖片序列,使用MVS生成了個性人臉點云,然后用形變統(tǒng)計模型去匹配注冊這個點云,得到了真實度較高的人臉模型。
微分坐標(biāo)模式的網(wǎng)格變形技術(shù)的核心是回歸一個線性方程組Ax=B,其中A是一個大型稀疏陣列。
(1)基于拉普拉斯算子的微分坐標(biāo)的定義
令M=(V,Ea,F(xiàn))是一個有n個頂點的三角網(wǎng)格。V是頂點的集合,Ea是邊的集合,Ea是面的集合。網(wǎng)格的頂點鄰接矩陣A和網(wǎng)格的頂點自由度矩陣D表示如下。其中,di是與頂點i鄰接的所有頂點的個數(shù)。于是定義圖拉普拉斯矩陣K=D-A。
(1)
(2)
每個v都用笛卡爾坐標(biāo)空間下的絕對位置描述,即為:vi=(xi,yi,zi)。
(3)
其中M(i)={j|(i,j)∈Ea} 且ni=|M(i)|是頂點i鄰接頂點的個數(shù)。LS=K,x是包括了網(wǎng)格中全數(shù)子點水平方向絕對坐標(biāo)分量的一個n維單列陣,y以及z也一樣,得到了網(wǎng)格的微分坐標(biāo)之后,我們要考慮的就是怎樣操作這些微分坐標(biāo)(4),并完成重建,最終得到變形后的三維網(wǎng)格模型:
Lsx=Dδ(x),Lsy=Dδ(y),Lsz=Dδ(z)
(4)
(5)
(2)網(wǎng)格的變形與重建
通過線性代數(shù)矩陣運算的數(shù)學(xué)處理,可得到三維的大型矩陣求解方程,這些方程可解耦分別運算后再重耦合得到變形網(wǎng)格的拓?fù)湫畔?。在實際應(yīng)用中我們通常采用的方法是在網(wǎng)格上選取多個約束點,并用最小二乘法來處理這些約束。即不是用其去除線性系統(tǒng)中的某些特征點序號對應(yīng)的行和列,而是將其作為額外的行逐次添加到已更新的線性系統(tǒng)中。經(jīng)過上述處理我們就有了一個可以求解的線性系統(tǒng):
(6)
(7)
如果保持約束頂點新位置不變,送入微分網(wǎng)格求解器求解后得的模型將變得光滑,相當(dāng)于將原來棱角的誤差擴散到全部網(wǎng)格??梢耘e例說明,下圖1右邊為網(wǎng)格平滑結(jié)果??傮w而言,該方法實現(xiàn)簡捷、效果良好、操作簡便、交互性高??梢耘e例說明如下,用facegen[11]生成的有5832個頂點的高模,在手動控制特征點后的變形效果如圖2。
圖1 微分網(wǎng)格算法的平滑網(wǎng)格作用
圖2 手動控制特征點變形效果
Waters[12]將人臉肌肉分成了三種基本類別:線性肌肉、括約肌和片狀肌肉。其中括約肌分為口部括約肌和眼部括約肌,片狀肌肉主要是額肌。臉部還有臉頰肌和蘋果肌。圖3分別對這四種肌肉模型原理以及基于微分網(wǎng)格法的肌肉變形模擬實驗進(jìn)行介紹。
根據(jù)人臉網(wǎng)格變形的實際需要,于傳統(tǒng)特征約束的前提下,本文加入人臉肌肉模型約束,在約束集合大小為r時,E和I的矩陣含義相同,S(x)為肌肉函數(shù),則微分網(wǎng)格變形算法的數(shù)學(xué)依據(jù)為(8),以x空間為例:
線性肌肉彈性變形與圓錐體模擬
括約肌彈性變形與環(huán)狀體模擬
片狀肌肉彈性變形與立方體模擬
球狀肌肉彈性變形與球體模擬圖3
(8)
圖4 模擬網(wǎng)格變形
以下說明添加肌肉模型約束的必要性。單獨考慮人臉的某一塊區(qū)域,選擇含16×16個四邊形,頂點數(shù)為289的網(wǎng)格,取中心點[144]與中心點左側(cè)邊緣點[280]為控制點,分別模擬肌肉質(zhì)心與五官約束。左圖表示當(dāng)[144]與[280]都向右側(cè)水平移動0.25后的結(jié)果,其中深色藍(lán)為移動后的網(wǎng)格;中圖綠色表示當(dāng)[144]向右移動0.25,但[280]向左移動0.15的變形結(jié)果,表明若不考慮肌肉形狀約束將導(dǎo)致肌肉影響區(qū)域的畸變;右圖綠色為添加位置約束(包括中心點左上角[252],左下角[240],右上角[48],右下角[36])后,其他約束和中圖一致后得到的變形效果,可見在保持五官特征驅(qū)動的情況下也極大得保持了肌肉的基本形狀和拓?fù)浣Y(jié)構(gòu)。本文選取特征點的依據(jù)具體如下:
圖5 肌肉位置約束特征點形狀(上),模型上的分布(中左)及添加肌肉形狀約束前后模型拓?fù)浣Y(jié)構(gòu)對比示意圖(中右,下)
圖5的中右圖為kinect2獲得的個性人臉模型,下左圖為僅考慮五官特征點的優(yōu)化變形結(jié)果,下右圖為綜合考慮五官特征點和肌肉形狀特征點的優(yōu)化變形結(jié)果。假定kinect2獲得模型的肌肉形狀是規(guī)范的,那在使用五官特征點變形kinect2模型時也應(yīng)該盡量保持這些肌肉的拓?fù)浜托螤钍且?guī)范的。這樣才能在之后的表情動畫實現(xiàn)時確保正確合理的肌肉運動,為表情動畫奠定良好的模型基礎(chǔ)。
特征點的信息提取直接影響了特征約束的可靠性。本文主要對檢測人臉特征點的一些算法和相關(guān)實驗做闡述。主要對比分析了ASM、正則化均值漂移、kinect和face++四種路徑和方法。
本節(jié)人臉變形采用的基于正面照的特征點檢測算法步驟如下,其中中性模型由facegen軟件生成:
1.截取3D中性模型的正面照,并使用ASM算法檢測77個特征點,存入數(shù)組ref_x,ref_y;
2.相應(yīng)地使用ASM檢測參考人臉的特征點;
3.以中性人臉特征點作為參照點,將個性人臉的面部的特征點通過仿射變換正則化并存儲到spec_x,spec_y。
4.以X坐標(biāo)為例,給出了基于中性模型的特征點自動移動的公式:
modelNew_X=modelX_+(spec_x-ref_x)×D
(9)
(10)
圖6 基于ASM算法的人臉建模
正則化均值漂移算法是核密度描述的估量算法[13]。本文基于正則化均值漂移關(guān)鍵點檢測算法,做了相關(guān)微分網(wǎng)格人臉變形的實驗可以發(fā)現(xiàn),模型和真人相似度比較高,但由于鼻翼部分特征點的缺失會導(dǎo)致鼻子整體結(jié)構(gòu)的建模失真。
圖8 不同人臉基于Kinect2的建模結(jié)果
本文是在kinect建模中間結(jié)果基礎(chǔ)上的優(yōu)化。下圖為不同人臉基于Kinect2 的建模結(jié)果,從圖8的結(jié)果中對比發(fā)現(xiàn),不同人臉的眼部、鼻子、臉型特征同樣并不夠明顯。
由于正臉角度,人臉還不能更好地表達(dá)個性特征,所以本文通過face++人臉識別的特征點來約束指導(dǎo)Kinect2建模的人臉變形。針對face++鼻梁和鼻翼特征點不足的問題,通過觀察對比,新補充添加的特征點如圖9。
鼻翼形狀的S形曲線特征
新添加的鼻部特征點N0-N5圖9
(11)
XN0=XN1=(X56+X60)/2 YN2=YN3 =(Y60+Y63)/2
(12)
(13)
圖10 補充鼻翼特征點約束后的實驗結(jié)果(左一為未添加鼻翼特征點的建模結(jié)果,左二為基于face++的改進(jìn)結(jié)果,右邊兩幅為參照圖片)
通過對比ASM、正則化均值漂移和face++三種算法獲得的人臉特征點來選擇更精確的位置,最終本文選取89個特征點用于Kinect2中性人臉模型的五官個性化變形優(yōu)化,這89個特征點構(gòu)成了面向人臉重建的特征點優(yōu)化模型,即多任務(wù)局部最優(yōu)點集合模型。與此同時,肌肉形狀約束量有43個,將用于肌肉個性化的保持及形變。
圖11 同一人臉的不同特征點檢測結(jié)果(從左至右,圖一為ASM結(jié)果,圖二為正則化均值漂移的結(jié)果,圖三為face++結(jié)果)(上)及特征點整合優(yōu)化(下)
算法眉毛眼睛鼻子嘴巴臉頰ASM60060正則化均值漂移204017face++8188122face++拓展00600
在人臉變形完成后,可根據(jù)優(yōu)化過的照片的五官特征點位置指導(dǎo)uv貼圖坐標(biāo)移動變形,從而實現(xiàn)利用平面微分網(wǎng)格法進(jìn)行貼圖自適應(yīng)匹配。以下為自適應(yīng)變形前后的uv坐標(biāo)示意圖;UV坐標(biāo)的基于拉普拉斯微分方程自適應(yīng)變形的算法依據(jù)為:
(14)
(15)
實驗結(jié)果如下,左邊為對三維模型平面映射后在maya的UV貼圖編輯器中的結(jié)果,右圖為經(jīng)過微分網(wǎng)格自適應(yīng)變形的uv坐標(biāo)分布結(jié)果:
圖12 自適應(yīng)變形前后的uv坐標(biāo)示意圖
下圖左為未添加次表面散射時的模型外觀,右為添加次表面散射后的模型外觀。但由于本文僅使用了人臉照片,故本文主要用后置散射貼圖來渲染[14]。注意照片本身有皮膚紋理精度低的缺點且自帶模糊性。
圖13 次表面散射模擬前后對比
圖14 算法流程
圖15 本文實現(xiàn)的效果
本文深入鉆研了三維人臉個性化建模的相關(guān)方法,在傳統(tǒng)基于微分坐標(biāo)的網(wǎng)格變形算法基礎(chǔ)上加入面向人臉的肌肉形狀約束,使得人臉模型在五官外表和肌肉解剖級層面都保持良好的魯棒性。然后研究對比人臉特征點檢測算法,提升了Kinect2中間模型的個性精確度。最后通過基于微分坐標(biāo)的網(wǎng)格變形算法實現(xiàn)了紋理的自適應(yīng)保細(xì)節(jié)映射,同時加入次表面散射貼圖,提升了Kinect2中間模型的個性真實度。未來可通過深度學(xué)習(xí)檢測人臉側(cè)臉的特征點,為人臉個性化建模提供更多、更精確的側(cè)臉信息。
[1]Sansoni G,Trebeschi M,Docchio F.State-of-the-art and applications of 3D imaging sensors in industry,cultural heritage,medicine,and criminal investigation[J].Sensors,2009,(9):568-601.
[2]K K?hler,J Haber,H Yamauchi,H P Seidel.Reanimating the Dead:Reconstruction of Expressive Faces from Skull Data[J].ACM Trans Graphics(Proc SIGGRAPH 2003),22(3):554-561,July,2003.
[3]Lee Y,Terzopoulos D,Waters K.Realistic modeling for facial animation[C].Proceedings of the 22nd annual conference on Computer graphics and interactive techniques,ACM,1995,55-62.
[4]Liao Q,Jin X,Zeng W.Enhancing the symmetry and proportion of 3D face geometry[J].IEEE transactions on visualization and computer graphics,2012,18(10):1704-1716.
[5]Briggs M,Clements H,Wynne N.3D printed facial laser scans for the production of localised radiotherapy treatment masks-A case study[J].Journal of Visual Communication in Medicine,2016,39(3-4):99-104.
[6]Pighin F,Auslander J,Lischinski D.Realistic facial animation using image based 3d morphing[J].Microsoft Research,1997.
[7]Blanz V,Vetter T.A morphable model for the synthesis of 3D faces[C].Proceedings of the 26th annual conference on Computer graphics and interactive techniques,ACM Press/Addison-Wesley Publishing Co,1999,187-194.
[8]Kuo C J,Huang R S,Lin T G.Synthesizing lateral face from frontal facial image using anthropometric estimation[C].Image Processing,1997,Proceedings International Conference on IEEE,1997,(1):133-136.
[9]Furukawa Y,Ponce J.Accurate,dense,and robust multiview stereopsis[J].IEEE transactions on pattern analysis and machine intelligence,2010,32(8):1362-1376.
[10]Ichim A E,Bouaziz S,Pauly M.Dynamic 3D avatar creation from hand-held video input[J].ACM Transactions on Graphics(ToG),2015,34(4):45.
[11]Face Gen Modeller3.2(Free version)[OL].http://www.facegen.com.
[12]Waters K.A muscle model for animation three-dimensional facial expression[J].Acm siggraph computer graphics,1987,21(4):17-24.
[13]Saragih J M,Lucey S,Cohn J F.Deformable model fitting by regularized landmark mean-shift[J].International Journal of Computer Vision,2011,91(2):200-215.
[14]Nguyen H.Gpu gems 3[M].Addison-Wesley Professional,2007.