手把手教你实现抖音里面的漫画脸
抖音里面有一个漫画脸特效,上传一个自拍的头像,会自动给你生成一个漫画脸。市面上有些拍照软件提供了漫画脸的功能,不过需要付费。相信很多人都想拥有一个属于自己的漫画头像。本篇文章将为你解开漫画风格的图像是如何生成的。
提到漫画风格自然离不开机器学习、图像处理等各种算法。这里不会介绍复杂的理论和各种数学公式,而是针对目前的开源方案ganilla进行讲解如何操作。
使用效果
武康路
在这里插入图片描述
风景
千岛湖
大话西游
如何实现
1.从Github上面下载https://github.com/giddyyupp/ganilla
2.安装Anaconda(下面所有的操作都是在Anaconda的终端命令行界面进行的操作)
3.打开Anaconda的终端,安装Pytorch和torchvision
pip install torch
pip install torchvision
4.进入刚刚下载好的ganilla目录,安装相关的依赖文件
pip install -r requirements.txt
5.安装好之后我们选择一个图像风格,具体的风格可以通过https://github.com/giddyyupp/ganilla/blob/master/docs/datasets.md 查看。这里我们选择一个monet2photo安装一下。进入下载好的ganilla的datasets目录下面执行如下的操作
download_cyclegan_dataset.sh monet2photo
然后我们选择已经训练好的模型link,从里面随便下载一个,比如AS这个model文件。
在ganilla的checkpoints的文件夹下面新建一个as_pretrained的文件夹,将下载好的pth文件放在里面。
6.将需要进行漫画处理的图片放入ganilla的datasets目录的monet2photo目录下面。
7.在ganilla的目录下面输入
python test.py --dataroot ./datasets/monet2photo/ --name as_pretrained --model test
上面的–dataroot后面的目录就是需要处理的图片的目录,–name后面的参数就是我们下载好的模型的位置目录,输入之后回车即可。
8.生成的图片会在ganilla的results的as_pretrained目录(按照风格的名字命名的)下面。
FAQ
1.没有安装cuda的应该会报SetDevice的错,可以修改ganilla/options/base_options.py文件里面的gpu_ids参数,修改其默认值从0改为-1
2.生成的图片默认大小是256*256的,图像处理的时候会将原来的图片进行缩放。如果我们想要生成的图片是512尺寸的可以修改ganilla/options/base_options.py文件里面的fineSize参数,修改其默认值从256改为512
展望
片是512尺寸的可以修改ganilla/options/base_options.py文件里面的fineSize参数,修改其默认值从256改为512
展望
该技术进行改造其实是可以用在游戏中的,比如玩家上传头像,将其头像的风格改为漫画风