三次元風(fēng)景照秒變宮崎駿動畫,還能把石原里美吉卜力化,AnimeGAN已開源
魚羊 發(fā)自 凹非寺
量子位 報道 | 公眾號 QbitAI
看到這樣的街角,是不是想問這是哪一部日本動畫電影里的場景?
宮崎駿、新海誠的電影常常從現(xiàn)實場景中獲取靈感,這張“日本動漫”截圖同樣有對應(yīng)的真實空間。
但這一次,打破次元壁的卻不是人類畫師,而是一只名叫AnimeGAN的GAN。
繁華街道,車水馬龍,幾秒即可在二次元場景中復(fù)現(xiàn):
即便是西方街景,在AnimeGAN的畫筆下,也能毫無違和轉(zhuǎn)化成日漫畫風(fēng):
看完AnimeGAN的作品展示,我產(chǎn)生了一個大膽的想法。
看,我的二次元和三次元老婆完美統(tǒng)一了!
風(fēng)格遷移+生成對抗網(wǎng)絡(luò)(GAN)
這項來自武漢大學(xué)和湖北工業(yè)大學(xué)的研究,采用的是神經(jīng)風(fēng)格遷移 + 生成對抗網(wǎng)絡(luò)(GAN)的組合。
除了解決生成圖像動畫風(fēng)格紋理不明顯、丟失原始圖像內(nèi)容這樣的問題,AnimeGAN最大的特點是快。
比如上面的石原里美,在V100上跑了1.64s就完成了次元的躍遷。
那么,這個輕量級的GAN有什么樣的特別之處呢?
AnimeGAN架構(gòu)
作者介紹,AnimeGAN是基于CartoonGAN的改進,并提出了一個更加輕量級的生成器架構(gòu)。
AnimeGAN的生成器可以視作一個對稱的編碼器-解碼器網(wǎng)絡(luò),由標(biāo)準(zhǔn)卷積、深度可分離卷積、反向殘差塊、上采樣和下采樣模塊組成。
為了有效減少生成器的參數(shù)數(shù)量,AnimeGAN的網(wǎng)絡(luò)中使用了8個連續(xù)且相同的IRB(inverted residual blocks)。
在生成器中,具有1×1卷積核的最后一個卷積層不使用歸一化層,跟隨其后的是tanh非線性激活函數(shù)。
上圖中,K為內(nèi)核大小,C為特征圖數(shù)量,S為每個卷積層的跨度,H是特征圖的高度,W是特征圖的寬度,Resize值用于設(shè)置特征圖大小的插值方法,⊕表示逐元素加法。
損失函數(shù)
論文還提出了三個新的損失函數(shù),以提升風(fēng)格化的動漫視覺效果。
△不同權(quán)重的定性比較
灰度風(fēng)格損失:
灰度對抗損失:
生成器網(wǎng)絡(luò)的顏色重建損失(基于圖像像元的損失):
實驗結(jié)果
與CartoonGAN相比,可以明顯看出AnimeGAN參數(shù)更少,模型更小,計算量更少,推理速度更快,是一個相對輕量級的GAN。
細(xì)節(jié)甚至還更勝一籌。
與此前的SOTA方法相比,可以看出,CartoonGAN生成的動漫圖像中通常會存在顏色偽影區(qū)域(圖中紅框),ComixGAN生成的動漫圖像中通常會存在過度風(fēng)格化的區(qū)域(失去了原始照片的內(nèi)容,目標(biāo)紋理難以辨識),而AnimeGAN很好地解決了這些問題。
定性分析,AnimeGAN取得了比SOTA方法更高質(zhì)量的視覺動漫效果。
目前,AnimeGAN已經(jīng)開源,數(shù)據(jù)集和預(yù)訓(xùn)練模型均可下載。如果你也想把自己記錄的風(fēng)景用宮崎駿/新海誠/今敏的風(fēng)格呈現(xiàn),不妨一試~
One More Thing
或許你已經(jīng)猜出來了,AnimeGAN的作者們本身也是二次元文化愛好者,出于興趣開始了這樣一個研究項目,真·「我的興趣就是我的工作」。
論文作者,是湖北工業(yè)大學(xué)劉罡副教授,陳頡博士和他們的學(xué)生Xin Chen。
此前,劉教授和Xin Chen還研究了一個動漫線稿自動上色模型,GitHub用戶@pradeeplam根據(jù)他們的論文進行了復(fù)現(xiàn),效果也很不錯。
傳送門
GitHub地址(含論文):https://github.com/TachibanaYoshino/AnimeGAN
作者知乎專欄:https://zhuanlan.zhihu.com/p/76574388
上色項目:https://github.com/pradeeplam/Anime-Sketch-Coloring-with-Swish-Gated-Residual-UNet
— 完 —




