为艺术而生的惊艳算法

为艺术而生的惊艳算法

来自:https://cuijiahua.com/blog/2020/11/ai-6.htmlhtml

1、前言

你们好,我是 Jack 。python

周一,看到 arXiv 新发了一篇很是有趣的论文:「Stylized Neural Painting」。git

看着颇有意思,文章就先写出来了,这简直就是为艺术而生的算法,看下效果:github

为艺术而生的惊艳算法

你没看错,算法根据咱们提供的图片自动一笔一划的创做油画面试

图像风格迁移算法,一直都有人研究,但以前的效果多少差点意思,而这个刚刚发表的「Stylized Neural Painting」效果有了不错的提高。算法

准备好的你画笔和键盘,今天继续手把手教学。canvas

算法原理、环境搭建、效果实现,一条龙服务,尽在下文!微信

2、Stylized Neural Painting

论文提出了一种图片转画做的算法,生成的画做效果逼真,风格可控。网络

与以往图片风格迁移算法不一样,算法是根据提供的图片推导做画的每个笔划,作到了「一笔一划」的做画效果。app

设计了新的神经网络渲染器,模拟矢量渲染器的行为,将笔画预测做为参数搜索过程,以最大限度提升输入和渲染输出之间的类似性。

用栅格化网络和阴影网络的双通道神经网络渲染器实现颜色和形状的解耦,该方法生成的图像不管在总体外观仍是局部纹理上都具备较高的保真度。

为艺术而生的惊艳算法

右下角小图是原图,大图是算法转换的油画做品。

除了油画风格,还有水彩笔、记号笔的画风:

为艺术而生的惊艳算法

还有颜色或纹理的风格迁移:

为艺术而生的惊艳算法

更详细的内容,能够直接看 paper:

论文地址:https://arxiv.org/abs/2011.08114

3、效果测试

Github 项目地址:https://github.com/jiupinjia/stylized-neural-painting

第一步:搭建测试环境。

根据 Requirements.txt 安装依赖库便可,很简单。

为艺术而生的惊艳算法

没有什么特殊的库。

第二步:下载训练好的模型权重文件,一共有四个模型,我直接打包好了。

我将程序和权重文件都进行了打包,嫌麻烦,能够下载直接使用。

下载地址(提取码:jack):

https://pan.baidu.com/s/1i9OsVHmdIHZG2x3Sch2gBA

第三步:在工程目录,运行程序。

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 分钟,最终效果:

为艺术而生的惊艳算法

5、絮叨

图解深度学习等技术教程,还在写,让我好好梳理一番,敬请期待!

我是 Jack ,咱们下期见。

原文地址:https://mp.weixin.qq.com/s/BnuNQYk4AXbyQpZFwu02qg

文章持续更新,能够微信公众号搜索【JackCui-AI】第一时间阅读,本文 GitHub https://github.com/Jack-Cherish/PythonPark 已经收录,有大厂面试完整考点,欢迎Star。

相关文章
相关标签/搜索