當前位置:
首頁 > 知識 > 有趣!旋轉吧!換裝少女:一種可生成高解析度全身動畫的GAN

有趣!旋轉吧!換裝少女:一種可生成高解析度全身動畫的GAN

編者按:近日,和任天堂關係密切的日本網路服務公司DeNA發布了一篇頗為有趣的文章:Full-body High-resolution Anime Generation with Progressive Structure-conditional Generative Adversarial Networks,即用PSGAN生成高解析度的全身動畫。據了解,DeNA的業務涵蓋社交遊戲、電子商務等領域,此前公司推出的手游《忍者天下》也在中國市場取得了驕人的成績。昔日忍者化身換裝暖暖,DeNA想用GAN做些什麼呢?


摘要

本文提出了一種漸進結構—條件生成對抗網路(PSGAN),它是一個能基於姿態信息生成全身的高解析度圖像的新框架。

近年來,許多人都研究過用深度生成模型自動生成圖像和視頻,這項技術對媒體創建工具來說很有幫助,它可以被用來進行圖片編輯、動畫製作甚至是電影製作。

就動漫產業角度看,一個能自動生成動畫角色的神經網路不僅能為創作者帶來諸多靈感,它還能為整個產業節省作畫上巨額開支。現在我們已經有了能生成人物臉部圖像的GAN,但還沒有能生成角色全身圖的工具。而且就這些生成臉部圖像的神經網路來說,它們的圖像質量還達不到工業級作畫標準。

因此,開發一個既能生成全身圖像,又能生成高質量姿態的GAN將對製作新角色、繪製新動漫大有裨益。但達成這個目標還有兩大難點:(1)生成高解析度圖像;(2)用特定的姿態序列生成圖像。

為了解決上述問題,我們引入PSGAN,它能根據結構信息,在訓練過程中逐步提高生成圖像的解析度,以此細化圖像在結構上的細節特徵,如生成對象的全身圖。同時,我們也在網路上添加了任意的潛在變數和結構條件,讓它能基於目標姿勢序列生成多樣化和可控制的動作視頻。

在這篇文章中,我們用實驗證明了PSGAN的有效性,如下文這個512x512的視頻所示,視頻中的動畫角色展示了PSGAN生成的人物服裝細節、身體姿態的整體調整。


生成結果預覽

下方的視頻展示了由PSGAN生成的各種動漫角色和動畫。首先,我們用隨機潛在變數生成大量動畫角色;其次,我們再對具體的動漫角色進行潛在插值,以生成新的動畫角色;最後,我們用連續的姿勢序列製作出流暢的動畫。


換裝PLAY

PSGAN生成全新全身圖的主要方式是插入不同的服飾,這是利用改變潛在變數實現的。需要注意的一點是,換裝時人物的姿態是固定的。


舞動人「身」

下圖展示了指定動畫角色生成目標姿態的具體過程:

和生成服飾相反,這裡我們固定潛在變數,並給PSGAN提供連續的姿勢序列。更具體地說,就是將指定動畫角色的表示映射到潛在變數內——它處於潛在空間誒,是PSGAN的輸入向量——然後用這個新的潛在變數做PSGAN的輸入,以此做到在不改變外觀的前提下改變姿態。


漸進結構的條件GAN

我們的主要想法是逐步學習具有結構條件的圖像表示。我們參考了Karras等人提出的GAN的結構,並在生成器和判別器上都添加上結構條件,這樣做之後,無論圖像解析度是什麼,它們都帶有相應縮放比例的姿態信息。

PSGAN的生成器和判別器

如上圖所示,N×N的白色框表示的是NxN空間解析度下正在工作的可學習卷積層,灰色框表示的則是結構條件的不可學習的下採樣層。


訓練數據

本文用到的數據集有Unity合成的原始頭像動漫角色數據集,以及由Openpose檢測到的關鍵點的DeepFashion數據集。PSGAN的訓練要求是有成對的圖像和成對的關鍵點坐標。

Avatar Anime-Character數據集

我們按照以下3個要求為PSGAN重新構建了新數據集:

姿態多樣性。為了生成平滑、自然地圖像,我們需要各式各樣的姿態。

訓練圖像的數量。通過用Unity生成3D頭像,我們無需任何手動注釋就可以獲得大量帶注釋的合成圖像。

背景消除。我們把背景統一設置成白色,以避免不必要的信息對圖像產生負面干擾。

我們把單個角色的幾個連續動作分解成600個姿勢,並不捉每個姿勢的關鍵點。通過對79種服飾進行同樣的處理,我們最終獲得了47,400張圖像。此外,我們還根據3D模型的骨骼結構獲得了20個關鍵點。

下圖是幾個訓練樣本(上:動漫角色;下:姿態圖):

對於這個數據集,我們用Adam收斂網路,其中β1= 0,β2= 0.99。當生成器中的圖像解析度為4x4—64x64時,學習率為0.001。隨著尺寸逐漸變為128x128、256x256、512x512,學習率也逐漸降低為0.0008、0.0006和0.0002。

DeepFashion數據集

PSGAN利用姿態信息在圖像生成網路上施加結構條件。我們使用Openpose從沒有關鍵點注釋的圖像中提取關鍵點坐標。

同樣的,這裡我們還是使用Adam,β1= 0,β2= 0.99,學習率α始終是0.0008。


不同GAN的比較

我們先來看看PSGAN在多樣性上的表現。如下圖所示,PSGAN為每個姿勢條件生成各種各樣的圖像。

接下來,我們再來看看PSGAN在生成姿態上的表現。在對照組中,PG2和DPG2需要同時輸入源圖像和相應的目標姿態才能生成目標圖像,但PSGAN只需調整潛在變數就能使圖像具備目標結構,它所受到限制更少。

下圖對比了PG2、DPG2和PSGAN生成的姿態圖,其中前兩者所需的參考姿態圖沒有顯示出來。通過對比我們可以發現,PSGAN生成的圖像和PG2、DPG2一樣自然合理,但又一定的瑕疵。由於這是通過調整潛在變數實現的,所以從理論上來說,如果變數調試得完美,PSGAN同樣能生成具有相同的質量的姿態圖。

最後,我們還評估了PSGAN與Progressive GAN在結構一致性上的表現。實驗結果顯示,無論是細節還是全局,PSGAN生成的圖像都更自然,而且它在結構細節上的處理也更合理。


小結

本文展示了PSGAN在生成平滑、高解析度動畫上的水平,也通過實驗證實它能基於512x512的目標姿勢序列生成動畫角色全身圖和相應動畫。由於實驗條件有限,神經網路在一些方面還發揮欠佳,所以未來我們還會在更多條件下進行試驗和評估。

此外,經處理的Avatar Anime-Character數據集即將開放。


參考文獻

原文地址:dena.com/intl/anime-generation/

- 加入AI學院學習 -

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 AI講堂 的精彩文章:

AI工程師工作中最常用的編程語言和數據分析工具!
基於圖割演算法的木材表面缺陷圖像分析

TAG:AI講堂 |