Python实用案例,Python脚本实现快速卡通化人物头像,让我想起了QQ秀时光!

往期回顾

Python脚本实现天气查询应用

Python实现自动监测Github项目并打开网页

Python实现文件自动归类

Python实现帮你选择双色球号码

Python实现每日更换“必应图片”为“桌面壁纸”

Python实现批量加水印

Python实现破译zip压缩包

Python实现批量下载百度图片

前言

今天我们就利用Python脚本实现天气查询应用吧。直接开整~

思路分析

从大量照片/卡通数据中习得照片到卡通画的映射。

Python实用案例,Python脚本实现快速卡通化人物头像,让我想起了QQ秀时光!_第1张图片

开发工具

python版本: 3.6

相关模块:

pytorch 1.4

tensorflow-gpu 1.14

face-alignment

dlib

1.数据准备

训练数据包括真实照片和卡通画像,为降低训练复杂度,该项目对两类数据进行了如下预处理:

  • 检测人脸及关键点。
  • 根据关键点旋转校正人脸。
  • 将关键点边界框按固定的比例扩张并裁剪出人脸区域。
  • 使用人像分割模型将背景置白。

项目开源了204张处理后的卡通画数据,您还需准备约1000张人像照片(为匹配卡通数据,尽量使用亚洲年轻女性照片,人脸大小最好超过200x200像素),使用以下命令进行预处理:

python data_process.py --data_path YourPhotoFolderPath --save_path YourSaveFolderPath

将处理后的数据按照以下层级存放,trainA、testA中存放照片头像数据,trainB、testB中存放卡通头像数据。

├── dataset
    └── photo2cartoon
        ├── trainA
            ├── xxx.jpg
            ├── yyy.png
            └── ...
        ├── trainB
            ├── zzz.jpg
            ├── www.png
            └── ...
        ├── testA
            ├── aaa.jpg
            ├── bbb.png
            └── ...
        └── testB
            ├── ccc.jpg
            ├── ddd.png
            └── ...

重新训练:

python train.py --dataset photo2cartoon

加载预训练参数:

python train.py --dataset photo2cartoon --pretrained_weights models/photo2cartoon_weights.pt

测试

将一张测试照片(亚洲年轻女性)转换为卡通风格:

python test.py --photo_path ./images/photo_test.jpg --save_path ./images/cartoon_res

文章到这里就结束了,感谢你的观看,Python实用脚本系列,下篇文章分享python玩转emoji表情

为了感谢读者们,我想把我最近收藏的一些编程干货分享给大家,回馈每一个读者,希望能帮到你们。

干货主要有:

① 2000多本Python电子书(主流和经典的书籍应该都有了)

② Python标准库资料(最全中文版)

③ 项目源码(四五十个有趣且经典的练手项目及源码)

④ Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)

⑤ Python学习路线图(告别不入流的学习)

⑥ 两天的Python爬虫训练营直播权限

All done~详见个人简介或者私信获取完整源代码。。

你可能感兴趣的:(Python实用案例,Python脚本实现快速卡通化人物头像,让我想起了QQ秀时光!)