一秒拥有自己的卡通头像!

公众号关注 “程序员遇见GitHub”

设为“星标”,重磅干货,第一时间送达。

一秒拥有自己的卡通头像!_第1张图片

首发 | 程序员遇见GitHub

大家好,我是阿三,今天给大家带来的一个自动把头像转化为漫画效果的开源项目

一. photo2cartoon

这个开源项目是做人像卡通风格渲染,将真实照片转换为卡通风格的非真实感图像。

作者的思路是:

从大量照片/卡通数据中习得照片到卡通画的映射。一般而言,基于成对数据的pix2pix方法能达到较好的图像转换效果,但本任务的输入输出轮廓并非一一对应,例如卡通风格的眼睛更大、下巴更瘦;且成对的数据绘制难度大、成本较高,因此我们采用unpaired image translation方法来实现。

Unpaired image translation流派最经典方法是CycleGAN,但原始CycleGAN的生成结果往往存在较为明显的伪影且不稳定。近期的论文U-GAT-IT提出了一种归一化方法——AdaLIN,能够自动调节Instance Norm和Layer Norm的比重,再结合attention机制能够实现精美的人像日漫风格转换。

与夸张的日漫风不同,我们的卡通风格更偏写实,要求既有卡通画的简洁Q萌,又有明确的身份信息。为此我们增加了Face ID Loss,使用预训练的人脸识别模型提取照片和卡通画的ID特征,通过余弦距离来约束生成的卡通画。

此外,我们提出了一种Soft-AdaLIN(Soft Adaptive Layer-Instance Normalization)归一化方法,在反规范化时将编码器的均值方差(照片特征)与解码器的均值方差(卡通特征)相融合。

模型结构方面,在U-GAT-IT的基础上,我们在编码器之前和解码器之后各增加了2个hourglass模块,渐进地提升模型特征抽象和重建能力。

实际操作也很简单:

1. Clone 上述项目

2. 安装python 3.6、pytorch 1.4、tensorflow-gpu 1.14、face-alignment、dlib一定要用conda

3. 安装过程中有很多坑,比如pillow的版本要调整之类的

4. 下载pretrain的模型

5. 执行以下命令,生成图片会在save_path路径下找到:python3 test.py --photo_path ./images/photo_test.jpg --save_path ./images/cartoon_result.png

更加详细的步骤在readme中。

最后的效果:

一秒拥有自己的卡通头像!_第2张图片

想要拥有自己的卡通头像的小伙伴快快尝试起来吧~


重磅!忆臻自然语言处理-Pytorch交流群已正式成立!
群内有大量资源,欢迎大家进群学习!
添加小助手领取,还可以进入官方交流群!
注意:请大家添加时修改备注为 [学校/公司 + 姓名 + 方向]
例如 —— 哈工大+张三+对话系统。
号主,微商请自觉绕道。谢谢!

Alt

Alt

推荐阅读:
一文搞懂BERT在NLP上的应用,详解模块代码实现细节!
CS 224n 推荐阅读文献!
肝了1W字!文本生成评价指标的进化与推翻

在这里插入图片描述

你可能感兴趣的:(深度学习,技术经验,python学习)