從草圖到人臉:這篇SIGGRAPH2020論文幫你輕松畫出心中的「林妹妹」,開源「計圖」實現代碼

尋夢新聞LINE@每日推播熱門推薦文章,趣聞不漏接❤️

加入LINE好友

機器之心報導

機器之心編輯部

圖一:DeepFaceDrawing 草圖合成人臉結果

可以看到,即使草圖是「歪瓜裂棗」、欠缺細節表達,或者線條粗獷甚至線條不完整,DeepFaceDrawing 都能為這些草圖生成美觀真實的人臉圖像。與此同時,基於 DeepFaceDrawing 的方法,用戶甚至無需進行繪畫,可以直接拼湊,從而生成新的人臉:

從草圖到人臉:這篇SIGGRAPH2020論文幫你輕松畫出心中的「林妹妹」,開源「計圖」實現代碼 科技 第1張

圖二. DeepFaceDrawing 實現的人臉拼接結果

下面讓我們來具體看看這種高度逼真的人臉生成究竟是怎樣做到的。

在已有的研究中,往往將輸入的草圖作為條件生成網路的硬約束,生成效果受草圖質量影響較大。也有將草圖投影到 3D 空間然後用 3D 模型作條件生成人臉圖形的方法,但這種全局參數模型不夠靈活,無法容納豐富的圖像細節,難以支持局部編輯。受作者之前 SDM-NET [4]工作啟發,並且通過驗證發現,全局 – 局部結構的網路對於細節的合成非常有效。因此,這篇論文也採取了對人臉進行分塊,然後在特征空間隱式建模的思路。

在這篇論文中,作者一方面將人臉關鍵區域(雙眼、鼻、嘴和其他區域)作為面元,學習其特征嵌入,將輸入草圖的對應部分送到由資料庫樣本中面元的特征向量構成的流形空間進行校準。另一方面,參考 pix2pixHD [5]的網路模型設計,使用 conditional GAN 來學習從編碼的面元特征到真實圖像的映射生成結果。該方法核心亮點之一,便是以多通道特征圖作為中間結果來改善資訊流。從本質上看,這是將輸入草圖作為軟約束來替代傳統方法中的硬約束,因此能夠用粗糙甚至不完整的草圖來生成高質量的完整人臉圖像。

DeepFaceDrawing 模型什麼樣

正所謂大道至簡,本論文效果好,框架其實也不龐雜。如圖三所示,DeepFaceDrawing 系統由三個模塊組成:內容嵌入模塊(Component Embedding)、特征映射模塊(Feature Mapping)、圖像合成模塊(Image Synthesis),在下文它們分別被簡稱為 CE、FM、IS 模塊。

從草圖到人臉:這篇SIGGRAPH2020論文幫你輕松畫出心中的「林妹妹」,開源「計圖」實現代碼 科技 第2張

圖三:DeepFaceDrawing 網路構架。

CE 模塊採用自編碼器結構,將人臉草稿分為五部分(左眼、右眼、鼻、嘴、其他部位)作為五個特征描述符,投影到局部線性的流形空間。每個部位的流形空間由資料庫中大量樣本編碼的特征向量構成。輸入的手繪草圖樣本特征向量則作為點樣本投影到這個空間中尋找近鄰,通過線性組合重構成來進行優化草圖輸入,如圖四所示。

從草圖到人臉:這篇SIGGRAPH2020論文幫你輕松畫出心中的「林妹妹」,開源「計圖」實現代碼 科技 第3張

圖四:流形空間中的投影示意圖

FM 和 IS 模塊一起構成另一個用於條件圖像生成的深度學習子網路,並將組件特征向量映射到現實圖像。FM 模塊與 CE 模塊的解碼部分類似,然而所不同的是,FM 模塊將特征向量映射到 32 通道的特征映射空間並非 1 通道的草圖。由於草圖只有一個通道,因此通過草圖到圖像的網路很難解決重疊區域相鄰組件的不兼容性問題。FM 模塊中的映射方法改進了資訊流,從而提供了更大的靈活性來融合單個人臉部位,以獲得更高質量的合成結果。

搭建好整體的框架之後,要想訓練出好的生成結果自然需要大量的人臉與草圖圖片對。為了實現用稀疏線條便能抽象表示人臉,該論文基於 CelebAMask-HQ[6]人臉圖像資料庫,篩選無遮擋的面部圖像後,利用 Photoshop 加草圖簡化的方法提取草圖,構建了一個新的含有 17K 對人臉圖像和相應草圖的數據集。

數據集構建完畢之後,則開始對網路進行訓練。在這裡,訓練分為兩個階段,如圖三所示,階段一先訓練內容嵌入模塊,將編碼的草圖重建後的 MSE loss 做為損失函數訓練。階段二則是固定好內容嵌入模塊參數後,再以端到端方式對特征映射模塊和圖像合成模塊網路進行訓練。

用戶怎麼畫

為了更方便用戶輕松畫好,DeepFaceDrawing 提供了數據驅動下預測的草圖供用戶參考。每次用戶畫下一筆後,系統就會根據更新的草圖匹配出最接近 「真實人臉」 的草圖作為背景陰影,供用戶參考。

同時為了方便用戶調整細節,DeepFaceDrawing 也提供了對細節的調整,如下圖五所示,包括針對臉部五部分的五個參數(eyeL、eyeR、Nose、Mouth、Others)的控制滑條。每個滑條的值代表著原始草圖特征和系統優化特征的混合權重,滑條值越高代表混合特征越接近原始草圖特征。

從草圖到人臉:這篇SIGGRAPH2020論文幫你輕松畫出心中的「林妹妹」,開源「計圖」實現代碼 科技 第4張

圖五:界面展示

不止畫臉,更多應用

由於 DeepFaceDrawing 實現了將草圖各部位編碼為對應特征空間中的特征向量,並在流形空間長進行投影,因而可以對相應分量的源特征向量與目標特征向量進行線性插值,再將插值後的特征向量送入網路模塊生成中間人臉圖像結果,實現人臉變換(Face Morphing)。

同樣,因為採用特征向量解析,也可以將來自不同人不同部位的圖像提取草圖編碼成特征向量,將其整合看作一張臉送入網路生成人臉圖像,實現人臉拼接(Face Copy-Paste),結果如圖二所示。

結語

DeepFaceDrawing 採用局部到全局的方法,將用戶輸入的草圖分塊投影到特征空間進行重構優化,避免了不合理草圖的影響,能生成完整優美的人臉圖像,行之有效,十分巧妙。

有關論文的更多細節,及論文、視訊、代碼的下載,請瀏覽項目主頁。

抓緊來畫出你心中的那個他 / 她!

  • 智能人臉畫板系統和論文見項目主頁:http://www.geometrylearning.com/DeepFaceDrawing/

  • Jittor 實現代碼:https://github.com/IGLICT/DeepFaceDrawing-Jittor

論文:DeepFaceDrawing: Deep Generation of Face Images from Sketches

從草圖到人臉:這篇SIGGRAPH2020論文幫你輕松畫出心中的「林妹妹」,開源「計圖」實現代碼 科技 第5張

目前智能人臉畫板開程式將提供 Pytorch 版本和 Jittor 兩個版本。計圖(Jittor)是清華大學計算機系胡事民教授帶領團隊研發的一個全新的國產深度學習框架。對比 Jittor 版本和 Pytorch 版本運行時間,網路模型在模型訓練上 Jittor 相對於 Pytorch 平均加速比為 168%,在圖像生成上平均加速比為 300%。

Jittor 網址:https://cg.cs.tsinghua.edu.cn/jittor/

參考內容:

[1] Tao Chen, Ming-Ming Cheng, Ping Tan, Ariel Shamir, and Shi-Min Hu. Sketch2Photo: Internet Image Montage.ACM Transactions on Graphics (Siggraph Asia 2009), 2009, Vol 28, No. 5, 124:1-124:10.

[2] Shuyang Gu, Jianmin Bao, Hao Yang, Dong Chen, Fang Wen, and Lu Yuan. MaskGuided Portrait Editing with Conditional GANs, CVPR 2019.

[3] Tiziano Portenier, Qiyang Hu, Attila Szabo, Siavash Arjomand Bigdeli, Paolo Favaro, and Matthias Zwicker. Faceshop: Deep sketch-based face image editing. ACM Transactions on Graphics, 2018, Vol. 37, No. 4, 99:1-99:13.

[4] Lin Gao, Jie Yang, Tong Wu, Yu-Jie Yuan, Hongbo Fu, Yu-Kun Lai, and Hao (Richard) Zhang. SDM-NET: Deep Generative Network for Structured Deformable Mesh. ACM Transactions on Graphics (Siggraph Asia 2019), 2019, Vol 38, No. 6, 243:1–243:15.

[5] Ting-Chun Wang, Ming-Yu Liu, Jun-Yan Zhu, Andrew Tao, Jan Kautz, and Bryan Catanzaro. High-resolution image synthesis and semantic manipulation with conditional gans, CVPR 2018.

[6] Cheng-Han Lee, Ziwei Liu, Lingyun Wu, and Ping Luo. MaskGAN: Towards Diverse and Interactive Facial Image Manipulation, CVPR 2020.

WAIC 2020 駭客馬拉松由世界人工智慧大會組委會主辦,張江集團、優必選科技、軟銀集團旗下軟銀機器人、Watson Build 創新中心、機器之心聯合承辦,受到新冠疫情的影響,比賽將於 7 月 8 日- 11 日期間以遠程和小規模線下結合的方式舉辦,招募全球頂級開發者同臺競技。

點擊圖片或「閱讀原文」搭乘參賽

從草圖到人臉:這篇SIGGRAPH2020論文幫你輕松畫出心中的「林妹妹」,開源「計圖」實現代碼 科技 第6張

文章已於修改

About 尋夢園
尋夢園是台灣最大的聊天室及交友社群網站。 致力於發展能夠讓會員們彼此互動、盡情分享自我的平台。 擁有數百間不同的聊天室 ,讓您隨時隨地都能找到志同道合的好友!