新闻  |   论坛  |   博客  |   在线研讨会
AnimeGANv2 实现动漫风格迁移,简单操作
AI科技大本营 | 2022-02-12 15:42:34    阅读:4402   发布文章

作者 | Yunlord

出品 | CSDN博客

前言

之前一直在研究如何将图像动漫化,尝试了阿里云api和百度api,效果都不尽如人意。结果发现了一个宝藏github项目——AnimeGANv2,能够将现实世界场景照片进行动漫风格化。

可以看出AnimeGAN的效果非常好,而在去年九月发布的 AnimeGANv2 优化了模型效果,解决了 AnimeGAN 初始版本中的一些问题。 

相比AnimeGAN,改进方向主要在以下4点:

解决了生成的图像中的高频伪影问题。

它易于训练,并能直接达到论文所述的效果。

进一步减少生成器网络的参数数量。(现在生成器大小 8.17Mb)

尽可能多地使用来自BD电影的新的高质量的风格数。

那接下来我们就介绍如何在本地使用该项目。

GitHub链接如下:

http://https//github.com/TachibanaYoshino/AnimeGANv2

一、安装

本文介绍的是基于PyTorch的实现,项目地址为animegan2-pytorch。

首先需要配置好适合该项目的环境,具体需要的安装步骤如下:

微信图片_20220212154026.jpg

首先,将该项目clone到本地或者下载下来:

git clone https://github.com/bryandlee/animegan2-pytorch


然后,进入到本地的项目中,会看到如下的项目结构:

├── 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构建的生成器模型,并将原始TensorFlow的模型参数转换为了PyTorch模型参数。其中构建模型的脚本为model.py,而转换模型的脚本为convert_weights.py,然后test.py则是封装的一个的动漫化功能接口。

因为下载下来的项目中的weights文件夹下包含了已经转换好的pytorch参数,所以我们不需要进行转化。

至此,本项目环境配置就完成了,接下来就是使用该项目。

二、现实图片动漫化

只需要调用test.py就可以使用该项目,具体的命令格式如下。

python test.py --checkpoint [模型文件路径] --input_dir [输入图像所在目录] --output_dir [输出目录] --device [设备选择,cpu或者cuda]

其中weights文件夹下包含四个权重,其中celeba_distill.pt和paprika.pt是风景动漫迁移的权重,而face_paint_512_v1.pt和face_paint_512_v2.pt是人脸动漫迁移的权重。只需要选择对应的权重就能实现自己想要的动漫风格迁移。

最终我们看下效果。

三、实现效果

人物:

微信图片_20220212154107.jpg微信图片_20220212154111.jpg

总结

本文简单介绍如何使用AnimeGANv2这个开源项目来实现现实图片转换为动漫风格图像,该项目对应的模型很轻量,希望感兴趣的小伙伴们也能够用起来,生成自己喜欢的动漫图像。

*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客