ICCV 2021 Oral | Paint Transformer - 基于笔触预测的快速油画渲染算法

林天威 将门创投 4天前
本文主要介绍百度视觉技术部视频理解与编辑组发表于ICCV 2021上的Oral工作:“Paint Transformer: Feed Forward Neural Painting with Stroke Prediction”。文章提出首个基于前馈笔触预测来进行快速油画渲染的算法 Paint Transformer,可以快速将一张图片变成一幅充满质感的油画。相关的代码已经基于PaddlePaddle框架开源在PaintTransformer,欢迎大家试用。

图片

论文链接:

https://arxiv.org/pdf/2108.03798.pdf

代码: 

https://github.com/wzmsltw/PaintTransformer

图片
一、研究背景

图片

将一张照片通过算法模拟成某种绘画的质感,是计算机视觉以及图形学领域中的一个比较经典的任务。Siggraph 1998 上的一篇经典工作【1】,提出了一种基于图片梯度场来计算多尺度笔触参数的算法,我们去年下半年复现了这个算法,做了很多改进并进行了落地。但这个算法在效果上也存在很多的问题,比较突出的就是缺乏油画的质感,以及笔触比较杂乱,其核心问题在于其基于规则搜索笔触的方式很难获得好的笔触解。

图片
度熊-传统方法绘制

在去年年底的时候,我们看到了网易伏羲实验室放出来的的油画渲染算法 Stylized Neural Painting[2],效果非常惊艳(见下面的gif)。比起暴力地生成大量笔触,这篇工作能够用相对较少量的笔触就勾勒出一幅惊艳的油画,同时,其逐笔绘画的过程也非常地吸引人。[2] 的核心算法思想是,固定渲染模块的网络参数,将笔触参数作为可优化的对象,通过优化的方式来寻找合适的笔画参数(包括颜色、坐标位置,旋转角度等)。这样的框架使得[2]具有很好的灵活性, 可以针对多种不同的笔触类型(比如油画、水彩、方块等)来生成绘画结果。但同时因为需要优化,其处理一张图片的速度较慢,需要好几分钟的时间,这使得其难以落地。

图片

Stylized Neural Painting (CVPR 2021)
二、算法框架

因此在读完[2] 后,我们很直接的一个想法就是,能否将笔触参数生成从一个优化任务改变成一个前馈预测问题,从而将生成笔触参数的时间大大降低到一秒内呢?

基于这样的想法,经过很多的探索和试错,我们设计了一套基于Transformer的笔触参数预测网络,其网络结构如下图所示:

图片

Paint Transformer 的输入是一张画布图 和一张目标图 ,网络的任务是预测若干笔触参数,使得在 上绘制这些笔画后,能得到与 尽可能接近的图像结果。Paint Transformer 采用了与DETR 非常接近的网络结构,本质上,我们将笔画预测看作是一个旋转目标检测的任务。网络所预测的笔触参数包括笔画的中心点位置、长度、宽度以及旋转角(笔触的颜色也可以预测,不过后续我们发现直接在图像上采样颜色作为笔触颜色效果更佳),此外对于每个笔画还会预测一个二值的decision,用来判断是否要采用这个笔触(类似于DETR)。

图片

在获得笔触参数后,区别于[2] 中所采用的神经网络可微渲染器,我们设计了一个可微的非网络渲染器。基于初始笔触图像以及笔触参数,我们采用仿射变换的方式获得变形后的笔触图像,并与画布进行融合。

算法的框架并不复杂,Paint Transformer 所遇到的主要难点还是缺乏合适的训练数据。因此,我们提出了一种基于仿真数据的训练框架,能够获得海量的数据用于训练。如下图所示,我们首先随机生成若干笔触参数并进行渲染得到画布图像 ,然后在 的基础上,再随机生成若干前景笔触,并渲染得到目标图像 ,Paint Transformer 的预测目标即是预测这部分前景笔触。训练时,我们同时在笔触参数层面以及图像层面添加了损失函数约束,具体的损失函数设计可见论文。

图片

Inference

在inference阶段,参考[2]中的实现,我们也采用了金字塔式的多尺度渲染,即先预测并渲染最大尺度的笔触(将整张图看做是一个1*1 的patch),然后再逐渐缩小范围。从而实现笔触从粗到细的绘画过程。算法流程如下图所示。

图片

在实际实现中,每个笔触实际上都需要对一张初始笔触图做仿射变换再和画布融合。对于较精细的尺度,由于笔触数量较多,所以会比较耗时。我们实现了并行渲染和串行渲染两种方式,其中并行渲染需要1s左右,速度快,显存消耗高;串行渲染则速度较慢,5s左右(魔改优化了不少),其优点主要是能生成绘画过程,并且因为额外添加了笔触排序的策略,效果更佳。感兴趣的同学可以用开源代码试玩一下两种渲染方式的差别。

三、实验结果

图片
图片
除了直接渲染油画,我们还尝试了一些好玩的玩法,比如在油画的基础上添加风格化。
图片

或者是把大师的油画重新画一遍。

图片

四、讨论

这篇工作的核心贡献,主要是将笔触参数生成定义成了一个新的任务,即预测能尽可能缩小画布图和目标图差异的笔触集合。也因此,在仿真数据下训练好的网络,在真实图像上也能够实现“将画面合理地填满”的任务。当然,Paint Transformer 也还有很多不足之处,比如不像[2]一样能够支持更复杂的曲线笔触,以及细长笔触生成效果不佳等问题。这些都是值得后续研究的问题。

最后,除了开源代码之外,大家也可以下载【一刻相册】APP来直接试玩~

参考文献:

[1] Hertzmann A. Painterly rendering with curved brush strokes of multiple sizes[C]//Proceedings of the 25th annual conference on Computer graphics and interactive techniques. 1998: 453-460.
[2] Zou Z, Shi T, Qiu S, et al. Stylized neural painting[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2021: 15689-15698.
Illustrastion by Maria Shukshina from Icons8
-The End-
图片

扫码观看

本周上新!

图片

关于我“

将门是一家以专注于发掘、加速及投资技术驱动型创业公司的新型创投机构,旗下涵盖将门创新服务将门技术社群以及将门创投基金

将门成立于2015年底,创始团队由微软创投在中国的创始团队原班人马构建而成,曾为微软优选和深度孵化了126家创新的技术型创业公司。

如果您是技术领域的初创企业,不仅想获得投资,还希望获得一系列持续性、有价值的投后服务,欢迎发送或者推荐项目给我“门”: 
bp@thejiangmen.com
将门创投
将门创投
将门是一家以技术创新为切入口的新型创投机构,由前微软创投在中国的创始团队于2015年底创立。将门旗下设有将门创新服务、将门技术社群以及将门投资基金。关注技术领域包括机器智能、物联网、自然人机交互、企业计算。
1303篇原创内容
公众号
图片    
点击右上角,把文章分享到朋友圈