天天看點

用深度學習快速人臉模組化

本篇論文發表于 siggraph 2017,并入選 technical papers preview trailer。為便于非專業人士閱讀,以下介紹盡量不夾帶英文和公式,也盡量精簡扼要。

關鍵詞:face modeling, face database, deep learning, face caricatures, gestures, sketch-based modeling

簡介

臉部模組化一直是計算機圖像和視覺領域的熱門話題,包括卡通人物模組化、人臉藝術設計、人臉實時重構等等,尤其是互動式人臉模組化。我們建構了一個快速的、互動的、基于深度學習的人臉模組化架構。通過簡單勾勒人臉圖畫(caricature),我們的模型可以迅速生成對應的三維人臉模型,并且可以同時拟合面部輪廓和細節表情。同時我們也提供了多種方式進行快速的模型修改。實驗證明我們的結果具有高精度和快速度。

架構

非常推薦大家通過視訊了解我們的架構:

架構的流程如圖所示:

用深度學習快速人臉模組化

初始繪制模式(initial sketching mode)

我們采用了卷積神經網絡(cnn)來學習二維繪畫的人臉特征。如圖所示,輸入是 256 乘 256 大小的繪畫圖檔,通過卷積層提取特征,結合每個像素點的雙線性插值編碼,利用不同的全連接配接層,最終輸出一個 50 維的人臉向量和一個 16 維的表情向量。我們預設了 50 個人臉基底和 16 個表情基底,最終輸出的模型則是向量和基底的點乘。我們可以做到近乎實時的渲染,即使用者每勾勒一筆線條,迅速輸出對應的拟合三維模型。(對于卷積層,我們采用了較老的 alexnet。我們也試驗了 resnet 等更新的網絡結構,在精度上沒有特别顯著的提升;同時考慮到實時繪制的速度要求,我們選擇了這樣一個折衷方案。)

用深度學習快速人臉模組化

以下是一些真實渲染結果:

用深度學習快速人臉模組化

連續繪制模式(follow-up sketching mode)

利用同樣的卷積神經網絡以及區域變形技術(laplacian deformation),我們給使用者提供了簡易修改的繪制方案。對于不精于從空白紙張繪制肖像的使用者,或者不想生成複雜人臉形狀的使用者,可跳躍第一步直接進行連續繪制。在連續繪制模式下,由單向工程(二維 -> 三維)轉變為雙向工程 (二維 <-> 三維):使用者可直接從目前生成或預設的三維模型得到一個二維的人臉輪廓,并基于這個人臉輪廓進行修改、删除、變形等操作;類似于第一步,這個二維輪廓可以生成相應的三維模型。

下圖是一個典型的通過連續繪制模式生成的模型:

用深度學習快速人臉模組化

精細修改模式(gesture-based refinement)

我們提供了基于手勢的精細修改模式。如圖所示,使用者可以通過相應的手勢,選取圖像的區域進行變形,如面頰凸起,眉毛修改、面部輪廓修改等等。使用者的手勢也是通過一個簡單的卷積神經網絡學習,輸入是使用者繪畫的手勢,輸出是對應的操作。

用深度學習快速人臉模組化

其他

平均來講,基于我們的架構,新手繪制一個人臉模型隻需要 5~7 分鐘,熟練後甚至在一兩分鐘内就畫出一個逼真的人臉模型。我們支援多種模型格式輸出,以便對接其他平台。使用者在實時操作過程中可以無障礙地進行撤銷和恢複操作。使用者操作視窗本身也支援各種常見的渲染操作,如放大縮小旋轉移動貼圖等等。同時,我們也提供了一個用于人臉模組化的資料庫,包含極大量的人臉模型,及其不同的表情和誇張程度(levels of exaggeration)

用深度學習快速人臉模組化

結尾

有了這個軟體,再也不用擔心不會模組化了!更多關于模型的細節和數學公式,請參考原論文。

----------------------------------

====================================分割線================================

本文作者:ai研習社

繼續閱讀