点赞再看,养成习惯,微信公众号搜索【JackCui-AI】关注这个爱发技术干货的程序员。本文 GitHub https://github.com/Jack-Cherish/PythonPark 已收录,有一线大厂面试完整考点、资料以及我的系列文章。
大家好,我是 Jack 。
上篇文章「感谢有你,写作以来的得与失」的投票结果出来了,图解深度学习基础知识 126 票,票数最多,正在根据大家的投票结果准备文章,敬请期待!
周一,看到 arXiv 新发了一篇非常有趣的论文:「Stylized Neural Painting」。
看着很有意思,文章就先写出来了,这简直就是为艺术而生的算法,看下效果:
你没看错,算法根据我们提供的图片,自动一笔一划的创作油画!
图像风格迁移算法,一直都有人研究,但之前的效果多少差点意思,而这个刚刚发表的「Stylized Neural Painting」效果有了不错的提升。
准备好的你画笔和键盘,今天继续手把手教学。
算法原理、环境搭建、效果实现,一条龙服务,尽在下文!
1 Stylized Neural Painting
论文提出了一种图片转画作的算法,生成的画作效果逼真,风格可控。
与以往图片风格迁移算法不同,算法是根据提供的图片推导作画的每一个笔划,做到了「一笔一划」的作画效果。
设计了新的神经网络渲染器,模拟矢量渲染器的行为,将笔画预测作为参数搜索过程,以最大限度提高输入和渲染输出之间的相似性。
用栅格化网络和阴影网络的双通道神经网络渲染器实现颜色和形状的解耦,该方法生成的图像无论在整体外观还是局部纹理上都具有较高的保真度。
右下角小图是原图,大图是算法转换的油画作品。
除了油画风格,还有水彩笔、记号笔的画风:
还有颜色或纹理的风格迁移:
更详细的内容,可以直接看 paper:
https://arxiv.org/abs/2011.08114
2 效果测试
Github 项目地址:
https://github.com/jiupinjia/...
第一步:搭建测试环境。
根据 Requirements.txt 安装依赖库即可,很简单。
没有什么特殊的库。
第二步:下载训练好的模型权重文件,一共有四个模型,我直接打包好了。
我将程序和权重文件都进行了打包,嫌麻烦,可以下载直接使用。
下载地址(提取码:jack):
https://pan.baidu.com/s/1stm0...
第三步:在工程目录,运行程序。
python demo_prog.py --img_path ./test_images/apple.jpg --canvas_color 'white' --max_m_strokes 500 --max_divide 5 --renderer oilpaintbrush --renderer_checkpoint_dir checkpoints_G_oilpaintbrush
img\_path:要输入的图片。
canvas\_color:可以理解为画板的背景颜色。
max\_m\_strokes 和 max\_divide:控制笔划的大小,画作最后的细致程度。
renderer:画作风格,可选参数有watercolor、markerpen、oilpaintbrush、rectangle。
renderer\_checkpoint\_dir:权重文件路径。
最终的生成效果会根据笔划,由少到多,保存在 output 文件夹里。
运行效果:
运行在 RTX 2060 super 上,花费大约 5 分钟,最终效果:
3 絮叨
图解深度学习等技术教程,还在写,让我好好梳理一番,敬请期待!
我是 Jack ,我们下期见。
·················END·················
作者:Jack Cui
原文:https://mp.weixin.qq.com/s/Bn...
关注作者公众号,获取更多有趣AI应用~
系列篇
更多AIoT领域有趣的算法应用及产品请关注有趣的AIoT应用专栏。