生成對抗網路用於側臉矯正:TP-GAN

來自專欄人工智慧學習

論文地址:openaccess.thecvf.com/c

項目源碼:HRLTY/TP-GAN

論文的標題是:Beyond Face Rotation: Global and Local Perception GAN for Photorealistic and Identity Preserving Frontal View Synthesis,主要用於側臉矯正,並且效果不錯。

之前有兩種人臉矯正的方法

第一種是傳統方法經常使用的,充分利用具有魯棒性的局部描述符(如Gabor,Haar,LBP)解析局部失真並採用度量學習的方法來實現姿態不變形。相比之下,深度學習的方法通常採用池化來處理位置變化並採用三元損失或對比損失來確保大類內間距的不變性。然而,由於需要平衡不變性和可分辨性,這些方法不能很好的處理大姿態的問題。

第二種方法,先將2D圖像與一組通用的或者特定的3G模型做對齊,通過3D幾何變換來渲染正臉。這些方法在小pose人臉能取得較好的效果,但是對於大pose的人臉效果不好,原因是較大的紋理損失。最近,提出了居於深度學習的方法改變數據驅動的方式來還原正臉。但是矯正的圖像缺少細節並導致在大姿態的情況下產生模糊。

作者發明瞭兩種途徑合成正面照的深度網路結構(TP-GAN),兩種途徑分別關注推理全局結構和轉換局部紋理,相應的特徵層融入最後的合成中。

TP-GAN主要有三方面的貢獻

提出了一種類似於人類感知的GAN模型,用於單張圖像合成正面照,儘管在較大姿態的情況下也能有較好的真實感和保持身份特徵。

合併了數據分佈的先驗知識(對抗訓練)和麪部領域(對稱性和身份保持損失),精確的找回了3D圖像到2D圖像轉換時丟失的信息

驗證了一種『生成式識別』網路的可能性,並且在大姿態的情況下取得較好的識別,最先嘗試將合成的正面照用於識別。

方法

正面照合成的目的是從不同姿態下的面部圖像(即側面照 I^F )恢復中保持真實感和身份信息,獲得正面照 I^P 。在訓練階段需要從不同的身份 y 中選取人臉對 {I^P,I^F} ,輸出 I^P 和輸入 I^F 的像素空間大小都是 W × H × C

目標是從學習合成函數使得從不同的側面照合成正面照,設計了雙路CNN,每一路包含一個編碼器和解碼器,標記為 {G_{θ_E^g}, G_{θ_D^g}} {G_{θ_E^l}, G_{θ_D^l}} ,g表示全局結構通路,l表示局部紋理通路,全局通路的網路輸出為 G_{θ^g_E} ,分類通常採用交叉熵損失函數 L_{cross entropy}

參數  G_{θ_G} 最小化,損失函數包括合成損失函數 L_{syn} 和交叉熵損失函數 L_{cross entropy} ,訓練對 {I^F_n, I^P_n } ,優化問題為:

  • 網路結構

  • 雙路生成器

生成器有兩路,一路處理全局結構,另一路有四個的局部標記塊,用於處理面部的局部紋理。

側面照 I^P 合成正面照 I^F 是非線性轉換。由於過濾器共享面部的所有空間位置,僅使用全局網路不能很好的旋轉面部和精確的恢復面部細節。因此,成功的把傳統方法轉換為深度學習框架,並引入了仿人類的合成正面照的雙路生成器。

  • 標定補充網路

四個面部標定網路輸入:左眼中心、右眼中心、鼻尖和嘴巴中心,每一個參數 G_{θ^l_i} i ∈ {0, 1, 2, 3} 學習一組過濾器將輸入旋轉至正面照(旋轉後中心點不變),網路結構基於壓縮-解壓結構,但是沒有全連接層。

為了有效整合全局和局部的信息,採取一種直觀的特徵層融合方法,如圖2,首先將4個局部輸出的特徵張量(多特徵映射)融合到一個特徵張量,與全局特徵張量有相同的空間解析度,把每個特徵張量放入一個』模板標定位置『,引入最大融合策略,使重合區域的拼接偽影最小。然後,簡單的融合各路輸出的特徵向量,產生融合特徵向量,將其依次放入卷積層產生最終的合成圖片。

  • 對抗網路

引入一個 D_{θ_D} 區分真實的正面照 I^F 和合成正面照 G_{θ_G} ( I^P ),訓練 D_{θ_D}G_{θ_G} 變成極小極大值的問題:

不斷擬合生成器的輸出和正面照的分佈,合成照駐留在正面照的立體球面,使得合成照有高頻的細節, D_{θ_D} 對應於每個區域。

合成損失函數

合成損失函數由4部分組成

  • 像素損失

採用L1正則化

像素損失是全局輸出、標定網路輸出的融合。為方便深度監督,增加了  G_{θ^g_D} 的多尺度輸出,雖然這樣會導致合成照過度平衡,但他仍然是精度優化和優異性能的重要部分。

  • 對稱損失

對稱式人臉固有的特徵,對合成圖像引入對稱約束,有效的緩解遮擋問題,提高大姿態情況下的性能。

為簡單起見,有選擇性的翻轉,使得有遮擋的部分都在右邊。此外,只有遮擋部分(右邊) I^{pred} 才會收到對稱損失的影響, L_{sym} 的影響是雙重的,通過激勵對稱性結構和額外的反向傳播消除自遮擋的梯度,加速TP-GAN的收斂速度。然而,由於光線的變化和內在紋理的差異,像素值在大部分時間是不對稱的。局部區域的像素差異是一致的,不同光照下,各個方向的梯度基本得以保留。因此,拉普拉斯在光照變化的情況下更具魯棒,更能反應人的面部。

  • 對抗損失

  • 身份保持損失

在開發』生成式識別『的框架中,合成正面照的過程中保持身份特徵有著重要的意義。

W_iH_i 是第i層的空間維度,在緊湊的特徵空間中,身份保持損失使得預測與置信之間的距離較小,由於light CNN是成千上萬的身份預訓練的,他能很好的抓取特徵或面部結構。因此,身份保持損失在合成正面照中起著槓桿作用。

L_{ip}L_{adv} 有更好的表現。

  • 總目標函數

實驗

輸入 I^P 和預測輸出 I_{pred} = G_{θ_G} (I^P) 都是128*128*3的維度,在MultiPIE數據集驗證。特徵提取網路,Light CNN,在MS-Celeb-1M數據集上訓練並在MultiPIE做微調,使用tesorflow,訓練batch size為10,學習率為 10^{-4}α = 10^{?3}λ1 = 0.3 λ2 = 10^{?3} λ3 = 3 × 10^{?3}λ4 = 10^{?4}

面部合成

給予足夠多的訓練數據、合理的結構和損失函數,TP-GAN能從大姿態的側面合成正面照。

TP-GAN合成的正面照有著較高的身份保持度,完整的保留了面部特徵

和其他的方法對比

身份特徵保持

使用了兩種場景設置與其他的方法做比對


推薦閱讀:
查看原文 >>
相關文章