Python实现照片卡通化


Posted in Python onDecember 06, 2021

前言

之前看到一个有意思的开源项目,主要是可以将一张照片变成卡通漫画的风格。下面给大家放几张官方给出的部分效果图。

Python实现照片卡通化

Python实现照片卡通化

看到这个效果图,还是非常经验的。下面我会分享一下这个项目,并且选择一些我自己找的图片试验一下。

项目Github地址:github地址 

环境部署

先使用git将项目下载下来。看一下项目结构。

Python实现照片卡通化

我们看一下需要的环境。

Python实现照片卡通化

非常简单,只要pytorch就可以了。如果有不太会安装的,可以参考:机器学习基础环境部署 

项目使用

看一下readme怎么说明的。

Python实现照片卡通化

直接使用命令,或者代码执行都可以,我们先看看如果命令操作的话都有哪些参数支持。

if __name__ == '__main__':
 
    parser = argparse.ArgumentParser()
    parser.add_argument(
        '--checkpoint',
        type=str,
        default='./weights/paprika.pt',
    )
    parser.add_argument(
        '--input_dir', 
        type=str, 
        default='./samples/inputs',
    )
    parser.add_argument(
        '--output_dir', 
        type=str, 
        default='./samples/results',
    )
    parser.add_argument(
        '--device',
        type=str,
        default='cuda:0',
    )
    parser.add_argument(
        '--upsample_align',
        type=bool,
        default=False,
        help="Align corners in decoder upsampling layers"
    )
    parser.add_argument(
        '--x32',
        action="store_true",
        help="Resize images to multiple of 32"
    )
    args = parser.parse_args()
    
    test(args)

可以通过项目结构看到,作者提供了4个模型文件可供选择,可以用--checkpoint参数切换。需要提供图片的输入文件夹,修改--input_dir参数即可,经过我自己的几次验证,发现有的模型适合风景类型的图片,有的适合人像,下面我分成两部使用一下。

景色类图像使用

先看一下我准备的图片,三张风景的照片。

Python实现照片卡通化

Python实现照片卡通化

Python实现照片卡通化

我使用个人认为比较好用的模型是paprika.pt。下面是执行过程。

Python实现照片卡通化

看看效果

Python实现照片卡通化

Python实现照片卡通化

Python实现照片卡通化

 哦,第一张图的漫画效果有所欠缺,但是后面两张还是不错的。没有细品一波算法,猜测一下,可能是颜色区域较多,对比度越明显,可能漫画后的效果会更好。

人像类图像使用

最主要的还是人像,懂的都懂。下面是我准备的图片。

Python实现照片卡通化

Python实现照片卡通化

Python实现照片卡通化

打算使用face_paint_512_v2.pt模型测试一下。下面直接展示处理后的效果。

Python实现照片卡通化

Python实现照片卡通化

Python实现照片卡通化

效果还是很好的,是不是。

总结

我反复测试了不少图片,有的转化的并不是很好,但是大部分还是不错的,瑕不掩瑜。项目还是好项目,只是可能模型本身训练的数据不是非常全面吧。

 以上就是Python实现照片卡通化的详细内容,更多关于Python照片卡通化的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python实现人人网登录示例分享
Jan 19 Python
Python中使用Boolean操作符做真值测试实例
Jan 30 Python
Python变量和数据类型详解
Feb 15 Python
git使用.gitignore设置不生效或不起作用问题的解决方法
Jun 01 Python
python制作小说爬虫实录
Aug 14 Python
使用Python实现博客上进行自动翻页
Aug 23 Python
浅谈python numpy中nonzero()的用法
Apr 02 Python
PyCharm 设置SciView工具窗口的方法
Jan 15 Python
python实现大学人员管理系统
Oct 25 Python
Python生成词云的实现代码
Jan 14 Python
pytorch模型存储的2种实现方法
Feb 14 Python
Python爬虫如何应对Cloudflare邮箱加密
Jun 24 Python
用Python爬取英雄联盟的皮肤详细示例
Python+腾讯云服务器实现每日自动健康打卡
Dec 06 #Python
python 管理系统实现mysql交互的示例代码
Python中super().__init__()测试以及理解
Dec 06 #Python
浅析Python中的随机采样和概率分布
Dec 06 #Python
python程序的组织结构详解
Python中异常处理用法
Nov 27 #Python
You might like
smtp邮件发送一例
2006/10/09 PHP
php 广告调用类代码(支持Flash调用)
2011/08/11 PHP
php常用hash加密函数
2014/11/22 PHP
PHP微信开发之查询微信精选文章
2016/06/23 PHP
php 自定义错误日志实例详解
2016/11/12 PHP
实例讲解YII2中多表关联的使用方法
2017/07/21 PHP
jquery实现盒子下拉效果示例代码
2013/09/12 Javascript
jquery动态加载select下拉框示例代码
2013/12/10 Javascript
用JavaScript实现用一个DIV来包装文本元素节点
2014/09/09 Javascript
node.js中的fs.link方法使用说明
2014/12/15 Javascript
js实现TAB切换对应不同颜色的代码
2015/08/31 Javascript
jQuery获取父元素节点、子元素节点及兄弟元素节点的方法
2016/04/14 Javascript
深入理解jQuery之事件移除
2016/06/02 Javascript
详解js中Json的语法与格式
2016/11/22 Javascript
javascript中this关键字详解
2016/12/12 Javascript
vue2单元测试环境搭建
2018/05/24 Javascript
JavaScript中click和onclick本质区别与用法分析
2018/06/07 Javascript
Vue+webpack项目配置便于维护的目录结构教程详解
2018/10/14 Javascript
不刷新网页就能链接新的js文件方法总结
2020/03/01 Javascript
js实现表单项的全选、反选及删除操作示例
2020/06/05 Javascript
介绍Python的Urllib库的一些高级用法
2015/04/30 Python
解决python3 urllib中urlopen报错的问题
2017/03/25 Python
Python学习笔记之解析json的方法分析
2017/04/21 Python
Python实现SSH远程登陆,并执行命令的方法(分享)
2017/05/08 Python
深入了解Django中间件及其方法
2019/07/26 Python
Python高级特性——详解多维数组切片(Slice)
2019/11/26 Python
html5 自定义播放器核心代码
2013/12/20 HTML / CSS
Bugatchi官方网站:男士服装在线
2019/04/10 全球购物
Java多态性的定义以及类型
2014/09/16 面试题
毕业生就业意向书
2014/04/01 职场文书
会议营销主持词
2015/07/03 职场文书
回复函范文
2015/07/14 职场文书
运动会100米广播稿
2015/08/19 职场文书
吃通javascript正则表达式
2021/04/21 Javascript
Go语言 go程释放操作(退出/销毁)
2021/04/30 Golang
使用CSS实现百叶窗效果示例代码
2023/05/07 HTML / CSS