【实战】(字节跳动、日本东京大学)学习使用白盒表示+GAN来创作卡通图片:Learning to Cartoonize Using White-Box Cartoon Representations
要說亞洲動漫制作的王者,當然是我們一衣帶水的鄰邦——日本。
2020年字節跳動和日本東京大學聯合發表了一篇《Learning to Cartoonize Using White-Box Cartoon Representations》(學習使用白盒表示+GAN來創作卡通圖片),基于卡通圖片的繪畫技法和圖像特點,可以將真實的人物或風景圖片轉化為卡通圖片,效果很出色,在這篇文章里我們介紹一下這個項目。
論文地址:https://github.com/SystemErrorWang/White-box-Cartoonization/blob/master/paper/06791.pdf
Github項目:https://github.com/SystemErrorWang/White-box-Cartoonization
(一)架構簡介
論文的摘要中是這樣說的:
這篇論文提出了一種圖像卡通化的方法。通過觀察卡通繪畫行為和咨詢藝術家,我們建議從圖像中分別識別出三種白盒表示:(1)包含卡通圖像光滑表面的外觀表示;(2)在賽璐珞風格工作流中描述稀疏色塊和扁平化全局內容的結構表示;以及(3)反映卡通圖像中高頻紋理、輪廓和細節的紋理表示。生成性對抗網絡(GAN)框架用來學習提取圖像表示和卡通化圖像。該方法的學習目標分別基于每個提取的表示(特征),使得框架具有可控性和可調整性。
上圖中展示的是本項目的圖像卡通化框架。將圖像分解為外觀表示、結構表示和紋理表示,并引入三個獨立的模塊來提取相應的表示。GAN框架由生成器G和兩個判別器Ds和Dt組成,其中Ds用于判別從模型輸出和卡通中提取的外觀表示,Dt用于判別從輸出和卡通中提取的紋理表示。預訓練的VGG網絡用于提取高級特征,并在提取的結構表示和輸出之間,以及在輸入圖片和輸出之間對全局內容施加空間約束。每個組件的權重可以在loss函數中進行調整,這允許用戶控制輸出樣式并使模型適應不同的用例。
本項目所使用的GAN的生成器和判別器架構如下圖所示,其中生成器網絡類似于U-Net,而判別器網絡來自于PatchGAN:
生成器網絡使用步長為2的卷積層進行下采樣,使用雙線性插值層進行上采樣,以避免棋盤偽影(Checkerboard Artifacts)。該網絡僅由三種層組成:卷積層、泄漏ReLU(LReLU)層和雙線性層,這使得它可以很容易地嵌入移動電話等邊緣設備中。
判別器網絡最后一層是卷積層,輸出特征圖中的每個像素對應于輸入圖像中的一個面片(Patch),面片大小等于感知場,用于判斷面片屬于卡通圖像(Cartoon Images)還是生成圖像。PatchGAN增強了對細節的辨別能力,加快了訓練速度。在每個卷積層(最后一層除外)之后放置譜歸一化(Spectral Normalization),以對網絡實施Lipschitz約束并穩定訓練。
(二)上手試用
(2.1)必備環境(Windows 10,NVIDIA Geforce RTX 2080Ti)
cuda?? ???????????????? 10.0.0
cudnn?? ?????????????? 7.6.5
python???????????????? 3.7.4
tensorflow?????????? 1.14.0
tensorflow-gpu:?? 1.14.0(官網建議:1.12.0或者1.13.0)
scikit-image???????? 0.14.5
(2.2)從 Github 下載源代碼,解壓縮,進入工作目錄:
https://github.com/SystemErrorWang/White-box-Cartoonization
(2.3)把待卡通化處理的圖片放到 ./test_code/test_images 目錄下
(2.4)在 ./test_code 目錄下運行:
python cartoonize.py
(2.5)生成的圖片放在 ./test_code/cartoonized_images 目錄下。
(三)使用效果
(3.1)論文中給出的例子
(3.2)實測效果
真實圖片????????????????????????????????????????????????????????????????? 卡通效果
?
?
?
?
這樣,我們即使不掌握繪畫技術,也可以通過手機拍照+PS修圖+AI技術,創作出一些個性化的卡通作品,這是不是也挺有意思呢?
(完)
?
?
?
總結
以上是生活随笔為你收集整理的【实战】(字节跳动、日本东京大学)学习使用白盒表示+GAN来创作卡通图片:Learning to Cartoonize Using White-Box Cartoon Representations的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2020-2021前端面试题合集,面试题
- 下一篇: Hyper-V安装Ubuntu 18使用