本發(fā)明涉及人臉重建領(lǐng)域,尤其是涉及了一種基于深度神經(jīng)網(wǎng)絡(luò)的端到端三維人臉重建方法。
背景技術(shù):
人臉是人類最重要的生物特征之一,反映了很多重要的生物信息,如身份、性別、種族、年齡、表情等。三維人臉重建技術(shù)有著廣泛的用途和前景,一直以來都是計(jì)算機(jī)視覺和計(jì)算機(jī)圖形學(xué)研究的熱點(diǎn)和難點(diǎn)。人臉建模在人臉識(shí)別系統(tǒng)、醫(yī)學(xué)、電影電視劇、廣告、計(jì)算機(jī)動(dòng)畫、游戲、視頻會(huì)議以及可視電話、人機(jī)交互等許多領(lǐng)域都具有廣泛的應(yīng)用前景。特別是在人臉識(shí)別方面,其可以應(yīng)用在公共安全防范、逃犯追捕、網(wǎng)絡(luò)安全、金融安全商場(chǎng)安全等諸多領(lǐng)域。但是,人臉建模技術(shù)存在計(jì)算成本較高的問題,面部圖像中的姿態(tài)、表情和照明變化也會(huì)給識(shí)別和重建帶來影響。
本發(fā)明提出了一種基于深度神經(jīng)網(wǎng)絡(luò)的端到端三維人臉重建方法,采用3d面部形狀子空間模型,并將3d面部作為一組形狀和混合形狀基線的線性組合,基于vgg網(wǎng)絡(luò)的臉部模型添加了子卷積神經(jīng)網(wǎng)絡(luò)(融合cnn)用于回歸表達(dá)參數(shù),以及用于身份參數(shù)預(yù)測(cè)和表達(dá)參數(shù)預(yù)測(cè)的多任務(wù)學(xué)習(xí)損失函數(shù),端到端訓(xùn)練中深度神經(jīng)網(wǎng)絡(luò)的輸入是一個(gè)二維圖像,輸出由身份參數(shù)向量和表達(dá)式參數(shù)向量組成。本發(fā)明解決面部圖像中的姿態(tài)、表情和照明變化帶來的影響,避免了圖像采集過程中深度信息的損失;同時(shí)簡(jiǎn)化了框架,降低計(jì)算成本,提高了重建精度和識(shí)別的魯棒性。
技術(shù)實(shí)現(xiàn)要素:
針對(duì)面部圖像中的姿態(tài)、表情和照明變化也會(huì)給識(shí)別和重建帶來影響的問題,本發(fā)明的目的在于提供一種基于深度神經(jīng)網(wǎng)絡(luò)的端到端三維人臉重建方法,采用3d面部形狀子空間模型,并將3d面部作為一組形狀和混合形狀基線的線性組合,基于vgg網(wǎng)絡(luò)的臉部模型添加了子卷積神經(jīng)網(wǎng)絡(luò)(融合cnn)用于回歸表達(dá)參數(shù),以及用于身份參數(shù)預(yù)測(cè)和表達(dá)參數(shù)預(yù)測(cè)的多任務(wù)學(xué)習(xí)損失函數(shù),端到端訓(xùn)練中深度神經(jīng)網(wǎng)絡(luò)的輸入是一個(gè)二維圖像,輸出由身份參數(shù)向量和表達(dá)式參數(shù)向量組成。
為解決上述問題,本發(fā)明提供一種基于深度神經(jīng)網(wǎng)絡(luò)的端到端三維人臉重建方法,其主要內(nèi)容包括:
(一)3d面部形狀子空間模型;
(二)深度神經(jīng)網(wǎng)絡(luò)(dnn)架構(gòu);
(三)端到端訓(xùn)練。
其中,所述的3d臉部重建,可分為兩個(gè)子任務(wù),即重建3d面部形狀和重建面部表情,并結(jié)合多任務(wù)學(xué)習(xí)損失函數(shù)訓(xùn)練不同的層次,分別預(yù)測(cè)身份和表達(dá)參數(shù)。
其中,所述的3d面部形狀子空間模型,采用3d面部形狀子空間模型,并將3d面部作為一組形狀和混合形狀基線的線性組合:
其中,s是目標(biāo)3d面部,
其中,所述的深度神經(jīng)網(wǎng)絡(luò)(dnn)架構(gòu),基于vgg網(wǎng)絡(luò)的臉部模型由13個(gè)卷積層和5個(gè)池層組成,并且添加了兩個(gè)關(guān)鍵組件:子卷積神經(jīng)網(wǎng)絡(luò)(融合cnn),融合了基于vgg網(wǎng)絡(luò)的臉部模型中間層的特征,用于回歸表達(dá)參數(shù),以及用于身份參數(shù)預(yù)測(cè)和表達(dá)參數(shù)預(yù)測(cè)的多任務(wù)學(xué)習(xí)損失函數(shù)。
進(jìn)一步地,所述的兩個(gè)關(guān)鍵組件,通過多任務(wù)損失函數(shù),3d臉部重建被分為中性3d面部形狀重建和表達(dá)3d面部形狀重建;使用融合cnn,融合和變換不同中間層的特征,以預(yù)測(cè)3d面部形狀。
進(jìn)一步地,所述的訓(xùn)練神經(jīng)層,通過這兩個(gè)組件,可以在單個(gè)dnn架構(gòu)中訓(xùn)練三種類型的神經(jīng)層;第一種類型的神經(jīng)層包括第四池層以下的部分,其學(xué)習(xí)對(duì)應(yīng)于低級(jí)面部結(jié)構(gòu)(例如邊緣和角落)的通用特征;這些層由兩個(gè)任務(wù)共享;第二類神經(jīng)層包括融合cnn中的三個(gè)卷積層和以下完全連接的層;這些層將學(xué)習(xí)表達(dá)特征;第三類型的神經(jīng)層包括在第四池層以上的部分,其學(xué)習(xí)更適合于預(yù)測(cè)身份參數(shù)的類別特征。
進(jìn)一步地,所述的卷積神經(jīng)網(wǎng)絡(luò),網(wǎng)絡(luò)的輸入是裁剪的rgb圖像并縮放到180×180像素;為了融合第4層和第5層的中間特征,將conv6和conv7層的內(nèi)核大小和步長分別設(shè)置為{5×5,2}和{1×1,1};在連接conv6和conv7的特征后,添加另外1×1個(gè)內(nèi)核卷積層conv8以減少特征維度。
其中,所述的端到端訓(xùn)練,深度神經(jīng)網(wǎng)絡(luò)的輸入是一個(gè)二維圖像,面部感興趣區(qū)域(roi)由面部檢測(cè)器定位;首先將檢測(cè)到的面部包圍盒放大到原始尺寸的0.25倍,然后將較短的邊緣延伸,以裁剪面部roi的平方圖像,其尺寸為180×180;深度神經(jīng)網(wǎng)絡(luò)的輸出由身份參數(shù)向量和表達(dá)式參數(shù)向量組成;它們用于使用公式(1)重建與輸入的2d圖像相對(duì)應(yīng)的3d面部形狀。
進(jìn)一步地,所述的訓(xùn)練數(shù)據(jù),使用真實(shí)2d圖像和合成2d圖像來訓(xùn)練深度神經(jīng)網(wǎng)絡(luò);真實(shí)2d圖像用于初始化深度神經(jīng)網(wǎng)絡(luò),合成2d圖像用于微調(diào);對(duì)于每個(gè)3d面部,合成25張具有不同面部姿勢(shì)、照明和面部表情的圖像。
進(jìn)一步地,所述的成本函數(shù),選擇訓(xùn)練成本作為預(yù)測(cè)的3d面和標(biāo)定的真實(shí)數(shù)據(jù)的差異;為了測(cè)量這個(gè)差異,使用所有3d頂點(diǎn)的平方誤差之和:
其中,c∈{e,d},
總損失函數(shù)計(jì)算為兩個(gè)損失函數(shù)的加權(quán)和:
e=λded+λeed(3)
其中,λd和λe是兩個(gè)單獨(dú)損失函數(shù)的權(quán)重。
附圖說明
圖1是本發(fā)明一種基于深度神經(jīng)網(wǎng)絡(luò)的端到端三維人臉重建方法的系統(tǒng)框架圖。
圖2是本發(fā)明一種基于深度神經(jīng)網(wǎng)絡(luò)的端到端三維人臉重建方法的3d面部重建實(shí)例。
圖3是本發(fā)明一種基于深度神經(jīng)網(wǎng)絡(luò)的端到端三維人臉重建方法的深度神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)。
具體實(shí)施方式
需要說明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互結(jié)合,下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步詳細(xì)說明。
圖1是本發(fā)明一種基于深度神經(jīng)網(wǎng)絡(luò)的端到端三維人臉重建方法的系統(tǒng)框架圖。主要包括3d面部形狀子空間模型,深度神經(jīng)網(wǎng)絡(luò)(dnn)架構(gòu),端到端訓(xùn)練。
3d面部形狀子空間模型,采用3d面部形狀子空間模型,并將3d面部作為一組形狀和混合形狀基線的線性組合:
其中,s是目標(biāo)3d面部,
端到端訓(xùn)練,深度神經(jīng)網(wǎng)絡(luò)的輸入是一個(gè)二維圖像,面部感興趣區(qū)域(roi)由面部檢測(cè)器定位;首先將檢測(cè)到的面部包圍盒放大到原始尺寸的0.25倍,然后將較短的邊緣延伸,以裁剪面部roi的平方圖像,其尺寸為180×180;深度神經(jīng)網(wǎng)絡(luò)的輸出由身份參數(shù)向量和表達(dá)式參數(shù)向量組成;它們用于使用公式(1)重建與輸入的2d圖像相對(duì)應(yīng)的3d面部形狀。
訓(xùn)練數(shù)據(jù),使用真實(shí)2d圖像和合成2d圖像來訓(xùn)練深度神經(jīng)網(wǎng)絡(luò);真實(shí)2d圖像用于初始化深度神經(jīng)網(wǎng)絡(luò),合成2d圖像用于微調(diào);對(duì)于每個(gè)3d面部,合成25張具有不同面部姿勢(shì)、照明和面部表情的圖像。
成本函數(shù),選擇訓(xùn)練成本作為預(yù)測(cè)的3d面和標(biāo)定的真實(shí)數(shù)據(jù)的差異;為了測(cè)量這個(gè)差異,使用所有3d頂點(diǎn)的平方誤差之和:
其中,c∈{e,d},
總損失函數(shù)計(jì)算為兩個(gè)損失函數(shù)的加權(quán)和:
e=λded+λeee(3)
其中,λd和λe是兩個(gè)單獨(dú)損失函數(shù)的權(quán)重。
圖2是本發(fā)明一種基于深度神經(jīng)網(wǎng)絡(luò)的端到端三維人臉重建方法的3d面部重建實(shí)例。3d臉部重建可分為兩個(gè)子任務(wù),即重建3d面部形狀和重建面部表情,并結(jié)合多任務(wù)學(xué)習(xí)損失函數(shù)訓(xùn)練不同的層次,分別預(yù)測(cè)身份和表達(dá)參數(shù)。
圖3是本發(fā)明一種基于深度神經(jīng)網(wǎng)絡(luò)的端到端三維人臉重建方法的深度神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)?;趘gg網(wǎng)絡(luò)的臉部模型由13個(gè)卷積層和5個(gè)池層組成,并且添加了兩個(gè)關(guān)鍵組件:子卷積神經(jīng)網(wǎng)絡(luò)(融合cnn),融合了基于vgg網(wǎng)絡(luò)的臉部模型中間層的特征,用于回歸表達(dá)參數(shù),以及用于身份參數(shù)預(yù)測(cè)和表達(dá)參數(shù)預(yù)測(cè)的多任務(wù)學(xué)習(xí)損失函數(shù)。
通過多任務(wù)損失函數(shù),3d臉部重建被分為中性3d面部形狀重建和表達(dá)3d面部形狀重建;使用融合cnn,融合和變換不同中間層的特征,以預(yù)測(cè)3d面部形狀。
通過這兩個(gè)組件,可以在單個(gè)dnn架構(gòu)中訓(xùn)練三種類型的神經(jīng)層;第一種類型的神經(jīng)層包括第四池層以下的部分,其學(xué)習(xí)對(duì)應(yīng)于低級(jí)面部結(jié)構(gòu)(例如邊緣和角落)的通用特征;這些層由兩個(gè)任務(wù)共享;第二類神經(jīng)層包括融合cnn中的三個(gè)卷積層和以下完全連接的層;這些層將學(xué)習(xí)表達(dá)特征;第三類型的神經(jīng)層包括在第四池層以上的部分,其學(xué)習(xí)更適合于預(yù)測(cè)身份參數(shù)的類別特征。
卷積神經(jīng)網(wǎng)絡(luò)的輸入是裁剪的rgb圖像并縮放到180×180像素;為了融合第4層和第5層的中間特征,將conv6和conv7層的內(nèi)核大小和步長分別設(shè)置為{5×5,2}和{1×1,1};在連接conv6和conv7的特征后,添加另外1×1個(gè)內(nèi)核卷積層conv8以減少特征維度。
對(duì)于本領(lǐng)域技術(shù)人員,本發(fā)明不限制于上述實(shí)施例的細(xì)節(jié),在不背離本發(fā)明的精神和范圍的情況下,能夠以其他具體形式實(shí)現(xiàn)本發(fā)明。此外,本領(lǐng)域的技術(shù)人員可以對(duì)本發(fā)明進(jìn)行各種改動(dòng)和變型而不脫離本發(fā)明的精神和范圍,這些改進(jìn)和變型也應(yīng)視為本發(fā)明的保護(hù)范圍。因此,所附權(quán)利要求意欲解釋為包括優(yōu)選實(shí)施例以及落入本發(fā)明范圍的所有變更和修改。