奧推網

選單
科技

人臉屬性編輯應用中核心演算法及應用實踐:人臉屬性編輯如何深入學習

人臉屬性編輯是一個很廣的應用領域,不僅可以用於輔助其他諸如人臉識別等相關的任務,也可以獨立成若干新的任務,在人機互動,娛樂社交領域有廣泛應用,本文我們簡單介紹其中核心演算法以及如何深入學習。

作者&編輯|言有三

1。人臉屬性編輯應用

所謂人臉屬性編輯,即改變人臉的某些屬性,比如姿態、年齡等,或者將人臉圖轉變為具有特定風格的圖人臉屬性編輯包含非常多的應用,比如人臉化妝去妝、人臉年齡的更改、人臉卡通頭像生成、換臉等。

1。1?人臉年齡編輯

人臉年齡編輯,即更改人臉的年齡屬性,可以用於模擬人臉隨著年齡變化的過程,從而在相關領域進行應用。比如在影視等作品中預測年輕演員變老後模樣,或者反之。

另外,它也可以用於輔助跨年齡的人臉識別問題,從而在尋找丟失多年的兒童等應用中提高演算法的精度。

1。2人臉表情編輯

人臉表情編輯即更改臉部的表情屬性,包括嘴唇、鼻子等區域。可以廣泛應用於人機互動和娛樂社交領域,也可以用於人臉表情去除,輔助提升人臉識別等演算法等精度。

1。3人臉姿態編輯

人臉姿態編輯即更改人臉的姿態,可以用於模擬不同的姿態以及對人臉進行正臉化,輔助大姿態下人臉檢測,關鍵點定位以及人臉識別等任務。

1。4人臉身份編輯(換臉)

換臉即將某一人臉變為其他的人臉,可以應用於娛樂和影視製作領域。

1。5人臉妝造編輯

人臉妝造編輯,指的是將一張人像的妝容遷移到任意一張人像照片中,或者進行去妝,這是相對於塑形等更新的美顏技術。

1。6人臉風格化編輯

人臉風格化即將真實人臉影象生成具有特定風格的圖片,主要用於娛樂社交領域。

2。深度學習人臉編輯核心技術

當前的人臉編輯核心技術以GAN和風格化為基礎,本文不會詳解介紹它們,而是直接介紹人臉編輯的相關模型。

2。1?表情編輯

表情的編輯可以廣泛應用於娛樂社交領域,對錶情進行歸一化後也有助於提升大表情影象的關鍵點定位,人臉識別等演算法的效能,下面我們介紹一個代表。

“GeometryGuidedAdversarialFacialExpressionSynthesis”[1]中提出了一個基於關鍵點的表情編輯GAN,簡稱G2-GAN,它將人臉關鍵點的熱圖作為條件來控制表情的生成與去除,其結構如下圖。

該模型包括兩個生成器和兩個判別器。生成器GE是一個表情生成器,輸入帶表情的關鍵點熱圖HE和無表情的正臉圖IN,生成有表情的圖IE。生成器GN則相反,輸入帶表情的關鍵點熱圖HE和有表情的正臉圖IE,生成無表情的圖IN。在表情生成任務中,HE扮演的是控制幅度的角色,而在表情去除的任務中,HE扮演的則是一個類似於標註的角色。

判別器DE用於判別真實的三元組(IN,HE,IE)和生成的三元組(IN,HE,GE(IN,HE)),DN類似。

整體的損失函式包括4部分:

第一部分是標準的GAN損失,包括生成器損失和判別器損失。

第二部分是畫素損失,用於約束生成器的輸出結果與輸入圖的畫素平滑,定義如下:

第三部分是與CycleGAN相同的迴圈損失,從輸入圖經過兩個生成器後構成了一個閉環,定義如下,其中G和G’互為相反方向的生成器。

第四部分是屬性保持損失,用於約束身份資訊不會被更改。

2。2。年齡編輯

人臉年齡對於人臉識別等演算法構成了挑戰,年齡的編輯不僅可以用於娛樂社交領域,對年齡進行歸一化後更有助於提升人臉識別等演算法等效能,下面我們介紹一個代表。

CAAE模型[2]是一個基於LatentSpace的模型,它首先假設人臉影象處於一種高維流形(high-dimensionalmanifol)中,當影象在這個流形中沿著某個特定方向移動時,年齡就會隨著發生自然的變化,不過在高維流形中操作人臉影象是一件非常困難的事情,我們無法直接描繪該軌跡。

因此與大部分生成模型的思路一樣,首先需要將影象對映到低維的latentspace,得到一個低維的向量,最後再把處理後的低維向量映射回到高維流形中。這兩次對映分別由編碼器(EncoderE)和生成器(GeneratorG)實現,模型結構如下圖:

EncoderE輸入影象,輸出特徵向量z,之後與n維的年齡標籤向量進行拼接作為G的輸入,G則輸出模擬後的人臉。

判別器包含兩個,一個是Dimg,一個是Dz。年齡標籤向量填充後與人臉圖進行通道拼接輸入到判別器Dimg,該判別器判別生成圖的真實性,實際上就是年齡段的分類,它包含若干個卷積層和若干個全連線層。Dz則用於約束z是一個均勻分佈,它包含若干個全連線層。

CAAE模型的主要問題是生成的結果圖缺少細節,並且無法保持人臉的身份屬性。

2。3。姿態編輯

FaceFrontalization(FFGAN)[3]是一個早期的姿態編輯GAN,它透過輸入人臉和3DMM模型的係數,使用生成器來生成正臉,並使用判別器判斷正假,使用人臉識別模型來監督人臉身份屬性保持。

在FFGAN模型中,3DMM係數提供了全域性的姿態資訊以及低頻的細節,而輸入的大姿態影象則提供了高頻細節,整個損失函式包括5部分,除了人臉重建損失,全變分平滑損失,GAN的對抗損失以及人臉識別身份保持損失之外,還添加了一個人臉對稱性的約束作為對稱損失。

2。4。妝造編輯

美顏和美妝是人臉中很常見的技術,在網路直播以及平常的社交生活中都有很多應用場景。妝造編輯演算法,指的是將一張人像的妝容遷移到任意一張人像照片中,這是美顏演算法中比較複雜的技術,下面我們介紹一個典型代表BeautyGAN[4]。

BeautyGAN採用了經典的影象翻譯結構,生成器G包括兩個輸入,分別是無妝圖Isrc、有妝圖Iref,透過編碼器(encoder)、若干個殘差模組(residualblocks)、解碼器(decoder)組成的生成器G得到兩個輸出,分別是上妝圖IBsrc、卸妝圖IAref,結構示意圖如下。

BeautyGAN使用了兩個判別器DA和DB,其中DA用於區分真假無妝圖,DB用於區分真假有妝圖。

除了基本的GAN損失之外,BeautyGAN包含了3個重要的損失,分別是迴圈一致性損失Cycleconsistencyloss,感知Perceptualloss,妝造損失Makeuploss,前兩者是全域性損失,最後一個是區域性損失。

為了消除遷移細節的瑕疵,將上妝圖IBsrc和卸妝圖IAref再次輸入給G,重新執行一次卸妝和上妝,得到兩張重建圖Iresrc和卸妝圖Ireref,此時透過迴圈損失(cycleconsistencyloss)約束一張圖經過兩次G變換後與對應的原始圖相同。因為生成器的輸入包含了一對圖,所以與CycleGAN的不同之處在於這裡使用了同一個生成器G,該損失用於維持影象的背景資訊,具體的損失定義與CycleGAN相同,不再贅述。

上妝和卸妝不能改變原始的人物身份資訊,這可以透過基於VGG模型的Perceptualloss進行約束,定義如下:

其中Cl,Hl,Wl分別是網路第l層的通道數,特徵圖高度和寬度。

為了更加精確的控制區域性區域的妝造效果,BeautyGAN訓練了一個語義分割網路提取人臉不同區域的掩膜(mask),使得無妝圖和有妝圖在臉部、眼部、嘴部三個區域需滿足妝造損失(makeuploss),妝造損失透過直方圖匹配實現,其中一個區域的損失定義如下:

item可以分別表示臉部、眼部、嘴部三個區域,HM是一個直方圖匹配操作,M就是圖對應的掩膜,表示逐個畫素相乘。

整個makeup損失定義如下:

完整的BeautyGAN生成器損失為:

2。5。換臉演算法

換臉演算法的流行起源於Deepfakes[5],它是一個開源的專案,同時也是一類演算法的統稱,其訓練流程和測試流程分別如下圖:

Deepfakes的訓練需要兩個域的影象集,稱之為A和B。Deepfakes在使用同樣的編碼器的約束下,分別在集合A和集合B上訓練出一個解碼器。在使用時從集合A中選擇圖片,經過編碼器提取特徵後再輸入在集合B上訓練完成的解碼器,就可以實現將影象A中的人臉換成集合B中的人臉,感興趣的可以參考開原始碼進行嘗試。

2。6人臉風格化

以Pix2pix為代表的條件GAN如今已經被廣泛應用於影象翻譯領域,是當下使用GAN做人臉風格化生成的主流模型架構。由於成對的資料非常難以獲取,因此不需要成對資料的CycleGAN有更廣闊的應用空間。然而直接採用CycleGAN無法保證生成結果圖五官的分佈合理性,因為研究人員會對其進行改進,下面我們介紹一個典型代表。

UGATIT[6]使用了注意力機制對關鍵區域進行學習,生成器和判別器結構如下圖。

注意力機制實際上就是全域性和平均池化下的類啟用圖(ClassActivationMap-CAM)的使用,輸入是下采樣的特徵圖,輸出各個通道的權重,實現了特徵圖下的注意力機制學習,這個注意力機制模型的目標是學習到那些能夠區分源域和目標域區別的重要區域。

另外UGATIT大量使用了AdaLIN。在影象風格化領域中,InstanceNormalization(IN)和LayerNormalization(LN)相比BatchNormalization是更加常用的技術,IN因為對各個影象特徵圖單獨進行歸一化,會保留較多的內容結構,LN與IN相比,使用了多個通道進行歸一化,能夠更好地獲取全域性特徵,AdaLIN便是結合了兩者的特點。

2。7統一的人臉屬性編輯框架

前面針對人臉各個屬性的編輯,分別介紹了相關的研究框架,但實際上還可以透過一個統一的框架來完成。Nvidia公司研究人員提出的StyleGAN[7]是一個非常經典的生成網路,它可以精確控制所生成人臉影象的各類屬性。

上圖展示了StyleGAN和一般GAN的對比,StyleGAN包含了一個對映網路(Mappingnetworkf)和一個生成網路(Synthesisnetworkg)。

對映網路f總共有8層,輸入是512維的噪聲z,然後是8個全連線層,輸出512維的向量w。透過一個網路進行編碼後,模型可以生成一個不必遵循訓練資料集合資料分佈的向量,並且可以減少特徵之間的相關性。

w經過8個不同的仿射變換A得到生成網路g中每一個AdaIN層所需要的尺度和偏移,AdaIN層是一個在生成對抗網路和風格化領域中應用非常廣泛的歸一化層。

生成網路synthesisnetworkg是一個解析度逐級提升的結構,總共有18層,每兩層上取樣一個尺度,輸入大小從4×4變換到1024×1024。其中AdaIN的尺度和偏移可以控制每一層的屬性,以生成人臉影象為例,在論文的實驗中發現,按照尺度可以分為三種特徵。

全域性特徵:主要是在解析度不超過8×8的尺度,影響面部姿勢、髮型、面部形狀等特徵。

中級特徵:主要是在解析度16×16和32×32的尺度,它影響更精細的面部特徵,如髮型、眼睛的睜閉等。

細節特徵:主要是在解析度64×64到1024×1024的尺度,它影響眼睛、頭髮和面板等紋理和顏色細節。

因此,透過改變w到AdaIN層的風格矩陣,就可以影響生成人臉的各方面的屬性,從而實現人臉的屬性編輯。

參考文獻

[1]LingxiaoSong,ZhiheLu,RanHe,ZhenanSun,TieniuTan。GeometryGuidedAdversarialFacialExpressionSynthesis。CoRRabs/1712。03474(2018)。

[2]ZhangZ,SongY,QiH。Ageprogression/regressionbyconditionaladversarialautoencoder[C]//ProceedingsoftheIEEEConferenceonComputerVisionandPatternRecognition。2017:5810-5818。

[3]YinX,YuX,SohnK,etal。Towardslarge-posefacefrontalizationinthewild[C]//ProceedingsoftheIEEEInternationalConferenceonComputerVision。2017:3990-3999。

[4]?LiT,QianR,DongC,etal。Beautygan:Instance-levelfacialmakeuptransferwithdeepgenerativeadversarialnetwork[C]//Proceedingsofthe26thACMinternationalconferenceonMultimedia。2018:645-653。

[5]https://github。com/deepfakes/faceswap

[6]KimJ,KimM,KangH,etal。U-GAT-IT:UnsupervisedGenerativeAttentionalNetworkswithAdaptiveLayer-InstanceNormalizationforImage-to-ImageTranslation[J]。2019。

[7]KarrasT,LaineS,AilaT。Astyle-basedgeneratorarchitectureforgenerativeadversarialnetworks[C]//ProceedingsoftheIEEEConferenceonComputerVisionandPatternRecognition。2019:4401-4410。

3。如何學習這些內容

上面我們簡單講述了人臉編輯的應用以及相關演算法,那麼如何能夠長期進行學習呢,下面有3個渠道。

3。1深度學習之人臉影象處理

上個月有三釋出了新書《深度學習之人臉影象處理:核心演算法與案例實踐》,這是一本講述在人臉各個方向中的深度學習演算法的書籍,同時配套有大量實戰案例,關於具體的內容介紹,請大家閱讀下文新書釋出時的通知。

4。2有三AI知識星球

書籍成書已經超過半年,無法囊括所有內容,後續人臉相關內容的拓展學習,可以移步有三AI知識星球中的人臉板塊,整個星球生態介紹如下:

總結

本次我們給大家介紹了人臉編輯相關的核心技術,這是當下人臉方向最火熱的研究領域和應用方向。人臉影象屬於最早被研究的一類影象,也是計算機視覺領域中應用最廣泛的一類影象,其中需要使用到幾乎所有計算機視覺領域的演算法,可以說掌握好人臉領域的各種演算法,基本就玩轉了計算機視覺領域。

如何學習人臉影象演算法

如果想要擁有一個可以隨時討論和答疑人臉相關技術的學習小組,並能夠完成相關實踐,可以考慮有三AI秋季劃人臉組,報名後會贈送人臉書籍,以及有三AI知識星球和有三AIVIP知識星球一年的使用許可權,介紹如下:

【通知】如何讓你的2020年秋招CV專案經歷更加硬核,可深入學習有三秋季劃4大領域32個方向

轉載文章請後臺聯絡

侵權必究