当前位置: 首页 > 科技观察

Python实战:把头像变成动漫风格!

时间:2023-03-18 22:34:26 科技观察

最近遇到一个问题,需要把头像改成动漫风格。当时第一个念头就是找现成的轮子。▲图片转像素风格将头像转为动漫风格,希望在保持原有图像信息和纹理细节的同时,将真实照片转为动漫/卡通风格的非写实图像。目前除了百度api,Github上还有很多开源库我们可以直接使用。其中,AnimeGAN是武汉大学和湖北工业大学的研究成果。它采用了神经风格迁移+生成对抗网络(GAN)的组合,效果非常符合我们的需求。AnimeGAN最开始使用的是Tensorflow框架,后来查了资料发现项目已经支持PyTorch框架了。地址:https://github.com/bryandlee/animegan2-pytorch而我之前只是基于PyTorch实现了微博评论的情感分析,所以用起来没有负担,而且省去了库的安装。Pytorch安装PyTorch是一个开源的Python机器学习库,基于Torch,用于自然语言处理等应用。这个深度学习框架可以应用于数值建模、图像建模、文本建模、音频建模等多个方向,安装Pytorch会比其他库麻烦一些。如果去官方安装下载,需要根据实际配置获取适合自己的安装命令。如果通过以上步骤发现下载速度慢,或者遇到各种问题,不妨试试以下网址:https://download.pytorch.org/whl/torch_stable.html网站查看:动漫风格迁移安装PytorchFramework之后,我们可以将animegan2-pytorch项目clone到本地/直接下载:gitclonehttps://github.com/bryandlee/animegan2-pytorch下载到文末的本地目录,如图下图:其中,weights文件夹下包含四个权重,选择对应的权重即可实现你想要的动画风格迁移。samples下的inputs文件夹中存放有图像样本,可以直接用来试水。另外,我还在同一个路径下新建了一个output文件夹,用来存放处理后的图片。接下来我们只需要在命令行运行test.py脚本就可以调用项目了。具体命令格式如下:pythontest.py--checkpoint[模型文件路径]--input_dir[输入图像所在目录]--output_dir[输出目录]--device[设备选择,cpu或cuda]实际操作:由于是实现人脸动画迁移,所以我分别使用了face_paint_512??_v1.pt和face_paint_512??_v2.pt权重,效果如下图:实战效果①再看一张图:实战效果②个人认为face_paint_512??_v2.pt权重的成品比较符合我对动漫风格的想象。你怎么认为?最后还尝试了paprika.pt对风景图片进行动画迁移。▲原图效果如下图所示:▲效果图如果有兴趣把自己的头像/图片转成动漫风格的,不妨试试看~注意!注意!如果你看了这篇文章,不想安装Pytorch,而是想直接创建自己的漫画脸?你可以在电脑上打开这个网站:https://huggingface.co/spaces/akhaliq/AnimeGANv2,这是在线的AnimeGANv2APP,本地不需要安装任何框架,直接转换即可。▲AnimeGANv2网站