本文轉自《機器之心》。
不會畫畫卻也想畫出帥哥美女?夢中情人不用空想!
計算機圖形學頂會 SIGGRAPH 2020的一篇論文提出了一種新的基於草圖深度生成人臉圖像的方法。
基於該方法的智能人臉畫板,不需要用戶擁有專業的繪畫技巧,就能夠從粗糙甚至不完整的草圖生成高質量的人臉圖像,並且同時支持對面部細節的編輯與控制。該算法降低了人臉肖像繪製的門檻,同時也減輕專業畫家的工作難度,簡單實用。人臉圖像的生成在各個行業有著重要應用,例如刑事調查、人物設計、教育培訓等。然而一幅逼真的人臉肖像,對於職業畫家也要至少數小時才能繪製出來;對於從未接觸過繪畫的新手,就更是難如登天了。新手繪製出來的人臉草圖往往非常簡陋抽象,甚至有不勻稱、不完整。但如果使用智能人臉畫板,無疑是有如神助。在 2009 年就有使用草圖作為輸入進行圖像合成的研究工作 Sketch2Photo [1],CVPR 2018 上的工作 Mask-guided[2] 實現了基於參考圖像和語義標籤的人臉圖像生成。2018 年 SIGGRAPH 上發表的工作 FaceShop[3] 利用草圖交互實現人臉圖像編輯。現有的從徒手草圖快速生成的方法中,大部分都是基於深度學習的圖像到圖像轉換技術,如 pix2pix,cycleGAN,pix2pixHD 等。然而,當前這些解決方案通常過擬合於草圖,往往需要專業繪畫的草圖甚至邊緣圖作為輸入,才能生成五官勻稱合理的圖像。對於線條粗獷、邊緣不完整封閉的情況難以處理。這就意味著現有的解決方案對於輸入草圖的質量要求偏高,即無法滿足新手或者手殘黨的需求。為了解決這個問題,DeepFaceDrawing 工作另闢蹊徑。其核心思路並非直接用輸入草圖作為網絡生成條件,而是將人臉進行分塊操作後利用數據驅動的思想對抽象的草圖特徵空間進行隱式建模,並在這個流形空間中找到輸入草圖特徵的近鄰組合來重構特徵,進而合成人臉圖像。
讓我們先來看一下基於該方法使用簡陋草圖生成人臉的效果:
圖1:DeepFaceDrawing 草圖合成人臉結果在已有的研究中,往往將輸入的草圖作為條件生成網絡的硬約束,生成效果受草圖質量影響較大。也有將草圖投影到 3D 空間然後用 3D 模型作條件生成人臉圖形的方法,但這種全局參數模型不夠靈活,無法容納豐富的圖像細節,難以支持局部編輯。受作者之前 SDM-NET [4]工作啟發,並且通過驗證發現,全局 - 局部結構的網絡對於細節的合成非常有效。因此,這篇論文也採取了對人臉進行分塊,然後在特徵空間隱式建模的思路。
在這篇論文中,作者一方面將人臉關鍵區域(雙眼、鼻、嘴和其他區域)作為面元,學習其特徵嵌入,將輸入草圖的對應部分送到由資料庫樣本中面元的特徵向量構成的流形空間進行校準。另一方面,參考 pix2pixHD [5]的網絡模型設計,使用 conditional GAN 來學習從編碼的面元特徵到真實圖像的映射生成結果。該方法核心亮點之一,便是以多通道特徵圖作為中間結果來改善信息流。從本質上看,這是將輸入草圖作為軟約束來替代傳統方法中的硬約束,因此能夠用粗糙甚至不完整的草圖來生成高質量的完整人臉圖像。
正所謂大道至簡,本論文效果好,框架其實也不複雜。如圖3所示,DeepFaceDrawing 系統由三個模塊組成:內容嵌入模塊(Component Embedding)、特徵映射模塊(Feature Mapping)、圖像合成模塊(Image Synthesis),在下文它們分別被簡稱為 CE、FM、IS 模塊。CE 模塊採用自編碼器結構,將人臉草稿分為五部分(左眼、右眼、鼻、嘴、其他部位)作為五個特徵描述符,投影到局部線性的流形空間。每個部位的流形空間由資料庫中大量樣本編碼的特徵向量構成。輸入的手繪草圖樣本特徵向量則作為點樣本投影到這個空間中尋找近鄰,通過線性組合重構成來進行優化草圖輸入,如圖4所示。FM 和 IS 模塊一起構成另一個用於條件圖像生成的深度學習子網絡,並將組件特徵向量映射到現實圖像。FM 模塊與 CE 模塊的解碼部分類似,然而所不同的是,FM 模塊將特徵向量映射到 32 通道的特徵映射空間並非 1 通道的草圖。由於草圖只有一個通道,因此通過草圖到圖像的網絡很難解決重疊區域相鄰組件的不兼容性問題。FM 模塊中的映射方法改進了信息流,從而提供了更大的靈活性來融合單個人臉部位,以獲得更高質量的合成結果。搭建好整體的框架之後,要想訓練出好的生成結果自然需要大量的人臉與草圖圖片對。為了實現用稀疏線條便能抽象表示人臉,該論文基於 CelebAMask-HQ[6]人臉圖像資料庫,篩選無遮擋的面部圖像後,利用 Photoshop 加草圖簡化的方法提取草圖,構建了一個新的含有 17K 對人臉圖像和相應草圖的數據集。數據集構建完畢之後,則開始對網絡進行訓練。在這裡,訓練分為兩個階段,如圖3所示,階段一先訓練內容嵌入模塊,將編碼的草圖重建後的 MSE loss 做為損失函數訓練。階段二則是固定好內容嵌入模塊參數後,再以端到端方式對特徵映射模塊和圖像合成模塊網絡進行訓練。用戶怎麼畫
為了更方便用戶輕鬆畫好,DeepFaceDrawing 提供了數據驅動下預測的草圖供用戶參考。每次用戶畫下一筆後,系統就會根據更新的草圖匹配出最接近 「真實人臉」 的草圖作為背景陰影,供用戶參考。
同時為了方便用戶調整細節,DeepFaceDrawing 也提供了對細節的調整,如下圖5所示,包括針對臉部五部分的五個參數(eyeL、eyeR、Nose、Mouth、Others)的控制滑條。每個滑條的值代表著原始草圖特徵和系統優化特徵的混合權重,滑條值越高代表混合特徵越接近原始草圖特徵。
由於 DeepFaceDrawing 實現了將草圖各部位編碼為對應特徵空間中的特徵向量,並在流形空間上進行投影,因而可以對相應分量的源特徵向量與目標特徵向量進行線性插值,再將插值後的特徵向量送入網絡模塊生成中間人臉圖像結果,實現人臉變換(Face Morphing)。同樣,因為採用特徵向量解析,也可以將來自不同人不同部位的圖像提取草圖編碼成特徵向量,將其整合看作一張臉送入網絡生成人臉圖像,實現人臉拼接(Face Copy-Paste),結果如圖2所示。結語
DeepFaceDrawing 採用局部到全局的方法,將用戶輸入的草圖分塊投影到特徵空間進行重構優化,避免了不合理草圖的影響,能生成完整優美的人臉圖像,行之有效,十分巧妙。該論文由中科院計算所高林副教授、夏時洪教授、香港城市大學傅紅波教授等合作完成。有關論文的更多細節,及論文、視頻、代碼的下載,請瀏覽項目主頁。
抓緊來畫出你心中的那個他 / 她!
智能人臉畫板系統和論文見項目主頁:
http://www.geometrylearning.com/DeepFaceDrawing/Jittor 實現代碼:https://github.com/IGLICT/DeepFaceDrawing-Jittor論文:DeepFaceDrawing: Deep Generation of Face Images from Sketches目前智能人臉畫板開原始碼將提供 Pytorch 版本和 Jittor 兩個版本,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.GGC往期回顧
1. 從CVPR最佳論文獎看深度幾何學習
2. 多尺度骨幹神經網絡Res2Net | 計圖研討會
3. 計圖深度學習研討會成功舉辦,發布GAN模型庫,13種GAN模型加速過超一倍
4. 清華大學發布深度學習新框架- 計圖
您可通過下方二維碼,關注清華大學圖形學實驗室,了解圖形學、Jittor平臺、CVMJ期刊的相關資訊。