photo2cartoon-人像卡通化测试代码和部署

相关资料网址

https://github.com/minivision-ai/photo2cartoon

代码介绍

引用自Github:

人像卡通风格渲染的目标是,在保持原图像ID信息和纹理细节的同时,将真实照片转换为卡通风格的非真实感图像。我们的思路是,从大量照片/卡通数据中习得照片到卡通画的映射。一般而言,基于成对数据的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模块,渐进地提升模型特征抽象和重建能力。

由于实验数据较为匮乏,为了降低训练难度,我们将数据处理成固定的模式。首先检测图像中的人脸及关键点,根据人脸关键点旋转校正图像,并按统一标准裁剪,再将裁剪后的头像输入人像分割模型去除背景。

研究过程记录

模型下载和目录问题处理

本次使用Windos环境测试,遇到模型下载提示:
Downloading: "https://www.adrianbulat.com/downloads/python-fan/2DFAN4-cd938726ad.zip" to C:\Users\liji5/.cache\torch\hub\checkpoints\2DFAN4-cd938726ad.zip

这里要求checkpoint文件下载要到torch hub文件夹下,所以我手动下载到用户文件夹下。
C:\Users\liji5/.cache\torch\hub\checkpoints\

运行测试

基本依赖环境我已经都安装好了,只要pytorch踩过坑的,基本就没什么问题了。
测试的命令是如下
python test.py --photo_path ./images/photo_test.jpg --save_path ./images/cartoon_result.png

python test_onnx.py --photo_path ./images/photo_test.jpg --save_path ./images/cartoon_result.png
并不复杂,基本没有遇到别的坑,所以本文较短。

web服务器部署

尝试在服务器上部署的CPU版本,在centos下测试成功,使用streamlit做了web版的部署测试。
numpy版本报错,后来安装了下面的版本解决的。
pip install numpy==1.16.4

因为模型载入目录还是非写死的,所以经过测试,模型需要保存到/root/.cache/torch/checkpoints/
比如/root/.cache/torch/checkpoints/2DFAN4-11f355bf06.pth.tar

web版的代码我写的很简单,要是有感兴趣的可以留言,我看看是不是回头放出来,大家可以自行部署玩。

代码已经开源至码云:
https://gitee.com/geekerlee/photo2cartoon_web.git

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 8
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jayli517

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值