国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于GAN的人臉圖像三維重建

2022-09-22 07:48羅健郝泳濤
電腦知識與技術(shù) 2022年23期
關(guān)鍵詞:三維重建人臉頂點(diǎn)

羅健,郝泳濤

(同濟(jì)大學(xué)CAD研究中心,上海 201804)

1 引言

人臉圖像三維重建的意義主要可以從兩個方面來考量:在實(shí)際應(yīng)用方面,在許多與人們生活密切相關(guān)的領(lǐng)域中,人臉三維模型都有著極其廣泛的應(yīng)用和十分旺盛的需求。例如在游戲影音這樣的傳統(tǒng)娛樂領(lǐng)域,人們需要更逼真的三維模型來提升沉浸感以期獲得良好的體驗(yàn),在公共安全領(lǐng)域,高精度的人臉模型也能夠幫助獲得更詳細(xì)的外貌信息從而在一定程度上減小人力物力的損耗。在這些情況下,人臉圖像三維重建能夠獲得人臉三維模型的難度和成本,從而更加拓寬人臉三維重建技術(shù)的應(yīng)用范圍,并通過降低需要獲取人臉模型行業(yè)成本的方式促進(jìn)其發(fā)展。另一方面,從科學(xué)研究的角度來看,人臉圖像三維重建不是一門孤立的技術(shù),而是與圖像處理、特征提取等多個研究領(lǐng)域都息息相關(guān)。對于人臉圖像三維重建的研究能夠?qū)Ξ?dāng)下諸多的熱門領(lǐng)域例,如人臉關(guān)鍵點(diǎn)檢測、人臉識別、人臉編輯等方向的研究提供一些啟發(fā)和經(jīng)驗(yàn),在一定程度上促進(jìn)這些方向研究的發(fā)展,提升其應(yīng)用能力,以便更好地造福人類的生活。

1.1 相關(guān)工作

基于圖像人臉三維重建方法,總體上來說可以分為基于從運(yùn)動恢復(fù)結(jié)構(gòu)、基于明暗恢復(fù)形狀、基于三維形變模型三種方法。

1)基于從運(yùn)動恢復(fù)結(jié)構(gòu)的三維人臉重建方法

這種方法的主要原理是通過多幅圖像中與運(yùn)動視差信息中隱含著被測物體的三維結(jié)構(gòu)信息,通過這些信息來進(jìn)行三維人臉的構(gòu)建。其中有兩個具有代表性的方法。Sun等在文獻(xiàn)[1]提出的算法是利用非線性最小方差模型和約束的獨(dú)立成分分析(Constrained Independent Component Analysis,CICA)模型估計人的正臉和非正臉圖像中一些重要特征點(diǎn)的深度值;Dai等在文獻(xiàn)[2]提出一種基于塊的SFM算法,首先利用稀疏的人臉特征點(diǎn)重建粗糙的三維人臉模型,接著采用核偏最小二乘算法,根據(jù)人臉輪廓優(yōu)化彌補(bǔ)基于稀疏人臉特征點(diǎn)的SFM算法的局限性,細(xì)化粗糙的三維人臉模型。

2)基于從明暗恢復(fù)形狀的三維人臉重建方法

這種方法源自由Horn等在文獻(xiàn)[3]提出的僅需輸入的單幅圖像就可以獲得人臉的三維信息算法。主要原理是通過坐標(biāo)變換和敏感信息計算出人臉各個點(diǎn)位所對應(yīng)的深度值,并以此為依據(jù),構(gòu)建人臉重建模型。Liao等在文獻(xiàn)[4]中將SFS算法與局部形變模型相結(jié)合,首先利用SFS算法快速獲取人臉的三維輪廓線,接著通過局部形變模型恢復(fù)精確的三維數(shù)據(jù),最后在得到的人臉三維輪廓線和精確三維數(shù)據(jù)上,不斷迭代平滑從而獲得高質(zhì)量的三維人臉模型;Maurer等在文獻(xiàn)[5]中將SFS算法與雙目視覺算法相結(jié)合,為能量函數(shù)添加保留細(xì)節(jié)的各向異性二階平滑項,通過這種方式擴(kuò)展結(jié)果模型,使其可以估計深度、反射率和照度,從而使該方法適用于反射率不均勻的物體以及光照條件未知的場景。基于從明暗恢復(fù)形狀的三維人臉重建算法能夠更好地對低紋理人臉圖像進(jìn)行三維重建,但這類方法在處理人臉五官時可能會存在變形問題。因此在效果上存在一定的不穩(wěn)定性。

3)基于三維形變模型的三維人臉重建方法

這種算法的核心在于三維形變模型(3DMM),它的本質(zhì)是一個通用的三維人臉模型,用固定的點(diǎn)數(shù)來表示人臉。核心思想就是人臉可以在三維空間中進(jìn)行一一匹配,并且可以由其他許多幅人臉正交基加權(quán)線性相加而來。Blanz等人1999年在文獻(xiàn)[6]中提出了三維形變模型。規(guī)模面部模型(LSFM)—一種由9663個不同的面部身份自動構(gòu)建的3D可變形模型(3DMM)是由Booth等人在文獻(xiàn)[7]中提出的一個能夠適應(yīng)不同人種、膚色等情況的模型。除此之外,還有許多效果比較好的非線性3DMM模型陸續(xù)被提出,例如由Tran等人在文獻(xiàn)[8]中提出的非線性3DMM模型,作者提出了一種新的框架,在不采集三維人臉掃描數(shù)據(jù)的情況下,從大量無約束的人臉圖像中學(xué)習(xí)非線性3DMM模型,它比傳統(tǒng)的線性模型具有更大的表示能力。本文的方法中就用到了3DMM模型從單張圖片獲取粗糙的人臉模型。

但是對于人臉圖像三維重建這一具體問題來說,需要考慮問題與寬泛概念下的三維重建有著很大的區(qū)別。首先,人臉一般都是對稱結(jié)構(gòu),不需要考慮重建不對稱的情況,如果使用和一般三維重建相同的方法,就意味著會增加一部分不必要的開銷。其次,人臉有著明顯的特征區(qū)域(如眼睛、嘴巴、鼻子等),如果在這些區(qū)域內(nèi)的細(xì)節(jié)處理可以達(dá)到很好的效果,那么在方法中即使存在對其他區(qū)域的粗放處理,對于最終呈現(xiàn)效果的影響也可以被降到較低水平的。因此,將GAN與人臉圖像三維重建的具體情景相結(jié)合,進(jìn)行因地制宜的調(diào)整和優(yōu)化,并吸納其他人臉三維重建方法的優(yōu)點(diǎn)和成果,將它們結(jié)合起來共同作用,來取得更好的生成效果,是筆者工作的重點(diǎn)。

2 網(wǎng)絡(luò)模型

2.1 生成器

首先是用于從輸入的圖片中提取出三維結(jié)構(gòu)形狀和粗糙紋理的模塊,這一部分采用了一個CNN網(wǎng)絡(luò),從輸入圖片中提取出表示光照和面部姿勢的矢量,和3DMM模型中必要的參數(shù)向量,然后把這些向量作為輸入,來獲取人臉三維立體結(jié)構(gòu)的形狀和面部的粗糙紋理貼圖。

其次是從文獻(xiàn)[9]中提取出的網(wǎng)絡(luò)結(jié)構(gòu)FaceNet。它的作用也是提取輸入圖片中的特征向量,其目的有兩個,一是提供給下一部分的紋理細(xì)化網(wǎng)絡(luò)作為輸入,二是用來衡量身份距離,用來計算網(wǎng)絡(luò)的身份距離損失函數(shù)。

最后是采用了圖卷積網(wǎng)絡(luò)(GCN)的技術(shù),共使用Decoder、Refiner、Combiner三個圖卷積網(wǎng)絡(luò)的紋理優(yōu)化模塊,把接收第一部分中的結(jié)果作為輸入,輸出細(xì)化后的紋理結(jié)果。其中,Decoder部分接收并處理FaceNet的結(jié)果,Refiner接收3DMM的結(jié)果并細(xì)化模型數(shù)據(jù)中的頂點(diǎn)顏色,最后的Combiner負(fù)責(zé)綜合其他兩部分的輸出,得到最終結(jié)果的模型中每個頂點(diǎn)的顏色,結(jié)合原來的頂點(diǎn)坐標(biāo)、法線、面等信息,作為生成器最后的結(jié)果輸出。

圖1 人臉三維重建流程

2.1 判別器

判別器工作的原理是將生成的人臉三維模型重新投影到輸入圖片的像平面上(姿勢監(jiān)督數(shù)據(jù)和光照信息數(shù)據(jù)都在第一個模塊中獲得)之后得到一張新的圖片,進(jìn)而通過判別這兩張圖片是重投影得到的,還是自然輸入的原始圖片,來和生成器網(wǎng)絡(luò)進(jìn)行對抗訓(xùn)練,提升人臉三維模型生成的效果。在重投影的策略上,筆者選擇參照了文獻(xiàn)[10]中的可微渲染層。在該文獻(xiàn)中,Genova等人提出了基于一種延遲著色模型的泛用性較強(qiáng)的可微光柵化器。這種光柵化器利用三角形的ID和像素的重心坐標(biāo)來計算屏幕空間緩沖,模型網(wǎng)格結(jié)構(gòu)中的顏色和發(fā)現(xiàn)都會在像素間進(jìn)行插值。在訓(xùn)練中,頂點(diǎn)法線會使用鄰近的三角形的法線的平均值替代。筆者應(yīng)用這個文獻(xiàn)中的可微渲染層來完成三維模型到輸入圖片像平面的重投影工作。然后將生成圖片和輸入圖片一起送入判別器網(wǎng)絡(luò)。網(wǎng)絡(luò)一共包含6個核大小為3的卷積層,同時每個卷積層之后都有一個最大池化層。訓(xùn)練中筆者遵循帶有梯度懲罰的Wasserstein GANs中描述的流程進(jìn)行處理和訓(xùn)練。

2 損失函數(shù)

2.1 逐像素的損失

考慮到在輸入的圖片中人臉部分可能被各種物品遮擋(如頭發(fā)、眼鏡、口罩等),而筆者的模型生成時卻并不會生成這些結(jié)構(gòu),因此在計算像素?fù)p失時這些區(qū)域不能夠被計算進(jìn)去,只需要計算能夠生成區(qū)域的損失,設(shè)這個區(qū)域?yàn)镸face,包含面部、眼睛、嘴巴、鼻子、眉毛等部位,筆者使用了預(yù)訓(xùn)練的一個人臉識別網(wǎng)絡(luò)來進(jìn)行這些部位的分辨。Pixel wise loss定義如下,其中x和x'分別代表輸入圖片和重投影出的圖片結(jié)果,Mproj表示面部三維模型可以被投影到的區(qū)域。

2.2 身份保留損失

在使用像素級別損失的情況下,一般的情景已經(jīng)可以產(chǎn)生比較良好的結(jié)果了,但是這樣產(chǎn)生的人臉模型可能還與輸入的二維圖片有明顯差異,尤其是在一些極端的情況下。因此筆者在模型中應(yīng)用了所謂的身份保留損失,這是一種面部特征級別的損失函數(shù),它要求將輸入圖片和生成的圖片使用FaceNet提取到的特征信息向量應(yīng)該盡可能地接近。如公式(2),它的定義是輸入圖片和重投影圖片通過FaceNet得到的特征信息之間的余弦距離,其中<>代表內(nèi)積,F(xiàn)()代表FaceNet得到的輸出。

2.3 逐頂點(diǎn)損失

在圖卷積網(wǎng)絡(luò)訓(xùn)練的早期過程中,圖像中面部的遮擋物可能還會導(dǎo)致其無法正確地判斷頂點(diǎn)的顏色數(shù)據(jù)的情況出現(xiàn),造成模型的效果下降,因此在第一個三維形狀和粗糙紋理提取模塊提取出的粗糙紋理的基礎(chǔ)上,在網(wǎng)絡(luò)中使用了一個逐頂點(diǎn)的損失,并在訓(xùn)練過程中逐步降低這一損失的權(quán)重。除此之外還要考慮到,為了獲取人臉的細(xì)節(jié)特征,還需要將面部頂點(diǎn)投影到2D圖片上來取回頂點(diǎn)顏色,然后將其和3DMM模型的紋理顏色一起送入Refiner中。綜合考慮下逐頂點(diǎn)損失的定義為式(3),其中N表示頂點(diǎn)個數(shù),xi表示由三維形狀和粗糙紋理提供模塊提取出的粗糙問題反照率值T或者取回的頂點(diǎn)顏色Tp,x'i則表示Refiner得到的顏色'。

2.4 對抗損失

對于對抗學(xué)習(xí)中的對抗損失GAN loss來說,筆者采用了參考文獻(xiàn)[11]中的改進(jìn)的Wasserstein GAN范式,將對抗損失定義如公式(3),其中x和x'分別代表輸入圖片和重投影出的圖片結(jié)果,x是沿輸入圖像分布PI和渲染圖像分布PR'采樣的點(diǎn)之間的直線均勻采樣的隨機(jī)樣本。

2.5 最終損失

綜合上述四種需要計算的損失,網(wǎng)絡(luò)整體上的損失函數(shù)可以定義如公式(5):

在訓(xùn)練過程中,控制身份保留損失與對抗學(xué)習(xí)損失的權(quán)重α2,α3均為固定值,分別為α2=0.2,α3=0.002。α1和α4的初始值設(shè)定分別為0和1,每經(jīng)過一輪訓(xùn)練,就下調(diào)α1的值并上調(diào)α4的值,但始終保持α1+α4=1,直至最后一輪α1和α4變?yōu)?和0。

2 實(shí)驗(yàn)結(jié)果與討論

該數(shù)據(jù)集的原始圖片是由文獻(xiàn)[12]中的CelebA數(shù)據(jù)集中挑選而來的。并且通過文獻(xiàn)[13]中的方法進(jìn)行了分割,生成了不同部位的mask圖片。通過這些mask圖片可以很簡單地挑選需要的部位進(jìn)行實(shí)驗(yàn)。數(shù)據(jù)集中包含有:30000張分辨率為1024×1024的原始圖片,每個原始圖片的每個分割部位的mask圖片,其分辨率為512×512,以黑白二值圖的形式儲存。除此之外還包含有:每個圖片與CelebA數(shù)據(jù)集中圖片的對應(yīng)關(guān)系,每個圖片的人臉包含的屬性信息,每個人臉的姿勢信息(以歐拉角形式存儲)。

接下來,將本文的模型生成三維結(jié)構(gòu)的效果與其他幾個常見的人臉三維重建模型進(jìn)行了對比,實(shí)驗(yàn)如圖3所示??梢钥闯觯疚牡姆椒ㄉ傻娜S模型的效果具有更貼近原圖片的紋理信息和三維結(jié)構(gòu),具有更好的表現(xiàn)。

圖3 對比實(shí)驗(yàn)結(jié)果圖

3 結(jié)束語

基于GAN的人臉圖像三維重建算法在試驗(yàn)中取得了比較好的表現(xiàn),但是仍然存在著一些問題,最明顯的一個問題就是,盡管人臉部分的生成已經(jīng)具有很高的質(zhì)量,但是頭發(fā)部位的生成卻很難進(jìn)行,一方面,頭發(fā)部位不同于人臉這樣的基本一致結(jié)構(gòu),因?yàn)榘l(fā)型等的不同,其立體結(jié)構(gòu)很難找到共同點(diǎn),無法使用類似于3DMM這樣的思路來解決其生成問題;另一方面,頭發(fā)的加入會導(dǎo)致集合上的遮擋關(guān)系快速復(fù)雜化,現(xiàn)有的思路下,在訓(xùn)練中處理這些遮擋關(guān)系可能需要花費(fèi)十分高昂的代價,因此需要新的思路來解決這一問題。如果僅有人臉部模型而沒有其他區(qū)域,那么這項技術(shù)的應(yīng)用領(lǐng)域就會受到極大限制,獲取其他部位模型的難度也會降低人臉圖像三維重建技術(shù)在降低三維模型獲取成本上的作用。

猜你喜歡
三維重建人臉頂點(diǎn)
過非等腰銳角三角形頂點(diǎn)和垂心的圓的性質(zhì)及應(yīng)用(下)
有特點(diǎn)的人臉
關(guān)于頂點(diǎn)染色的一個猜想
三國漫——人臉解鎖
基于關(guān)系圖的無人機(jī)影像三維重建
三維重建結(jié)合3D打印技術(shù)在腔鏡甲狀腺手術(shù)中的臨床應(yīng)用
多排螺旋CT三維重建在頜面部美容中的應(yīng)用
馬面部與人臉相似度驚人
一個人在頂點(diǎn)