AnimeGANv2 實現(xiàn)動漫風(fēng)格遷移,簡單操作
作者 | Yunlord
出品 | CSDN博客
前言
之前一直在研究如何將圖像動漫化,嘗試了阿里云api和百度api,效果都不盡如人意。結(jié)果發(fā)現(xiàn)了一個寶藏github項目——AnimeGANv2,能夠?qū)F(xiàn)實世界場景照片進行動漫風(fēng)格化。
可以看出AnimeGAN的效果非常好,而在去年九月發(fā)布的 AnimeGANv2 優(yōu)化了模型效果,解決了 AnimeGAN 初始版本中的一些問題。
相比AnimeGAN,改進方向主要在以下4點:
解決了生成的圖像中的高頻偽影問題。
它易于訓(xùn)練,并能直接達到論文所述的效果。
進一步減少生成器網(wǎng)絡(luò)的參數(shù)數(shù)量。(現(xiàn)在生成器大小 8.17Mb)
盡可能多地使用來自BD電影的新的高質(zhì)量的風(fēng)格數(shù)。
那接下來我們就介紹如何在本地使用該項目。
GitHub鏈接如下:
http://https//github.com/TachibanaYoshino/AnimeGANv2
一、安裝
本文介紹的是基于PyTorch的實現(xiàn),項目地址為animegan2-pytorch。
首先需要配置好適合該項目的環(huán)境,具體需要的安裝步驟如下:
首先,將該項目clone到本地或者下載下來:
git clone https://github.com/bryandlee/animegan2-pytorch
然后,進入到本地的項目中,會看到如下的項目結(jié)構(gòu):
├── convert_weights.py ├── model.py ├── README.md ├── samples │ ├── compare │ │ ├── 1.jpg │ │ ├── 2.jpg │ │ └── 3.jpg │ ├── face_results.jpg │ ├── faces │ └── inputs │ ├── 1.jpg │ ├── 2.jpg │ └── 3.jpg │ ├── results ├── weights │ ├── celeba_distill.pt │ ├── paprika.pt │ ├── face_paint_512_v1.pt │ └── face_paint_512_v2.pt ├── hubconf.py └── test.py
該項目的核心工作就是使用PyTorch構(gòu)建的生成器模型,并將原始TensorFlow的模型參數(shù)轉(zhuǎn)換為了PyTorch模型參數(shù)。其中構(gòu)建模型的腳本為model.py,而轉(zhuǎn)換模型的腳本為convert_weights.py,然后test.py則是封裝的一個的動漫化功能接口。
因為下載下來的項目中的weights文件夾下包含了已經(jīng)轉(zhuǎn)換好的pytorch參數(shù),所以我們不需要進行轉(zhuǎn)化。
至此,本項目環(huán)境配置就完成了,接下來就是使用該項目。
二、現(xiàn)實圖片動漫化
只需要調(diào)用test.py就可以使用該項目,具體的命令格式如下。
python test.py --checkpoint [模型文件路徑] --input_dir [輸入圖像所在目錄] --output_dir [輸出目錄] --device [設(shè)備選擇,cpu或者cuda]
其中weights文件夾下包含四個權(quán)重,其中celeba_distill.pt和paprika.pt是風(fēng)景動漫遷移的權(quán)重,而face_paint_512_v1.pt和face_paint_512_v2.pt是人臉動漫遷移的權(quán)重。只需要選擇對應(yīng)的權(quán)重就能實現(xiàn)自己想要的動漫風(fēng)格遷移。
最終我們看下效果。
三、實現(xiàn)效果
人物:
總結(jié)
本文簡單介紹如何使用AnimeGANv2這個開源項目來實現(xiàn)現(xiàn)實圖片轉(zhuǎn)換為動漫風(fēng)格圖像,該項目對應(yīng)的模型很輕量,希望感興趣的小伙伴們也能夠用起來,生成自己喜歡的動漫圖像。
*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。