Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

杨帅作者北京大学博士生学校图像风格化研究方向

ICCV 2019 开源论文 | ShapeMatchingGAN:打造炫酷动态的艺术字


论文引入

当你制作 PPT 时想要打造与背景图片风格一致的标题,当你设计宣传海报时想要一个引人注意的标题,当你发朋友圈时想要更生动地展示文字所传达的信息,你现在可能需要的是文字风格化算法。

文字风格化是一种为文字设计特效,将之渲染为独一无二的艺术字的过程。艺术字往往需要设计师依靠技术和经验花费几个小时去创作。这种耗时的工作当然可以交给计算机来做,ShapeMatchingGAN 应运而生,只需要提供一张风格图片,就能打造自己的火焰字、水滴字、闪电字、花瓣字等等。

将不同程度的火焰风格渲染到文字上

在文字风格化中,有一点需要注意,以火焰字为例,要使火焰在文字上烧起来,文字边缘势必要进行形状的调整,而过多的调整又会损害文字的可读性。因此,需要在文字的艺术性和可识别性上进行折衷。ShapeMatchingGAN 贴心地考虑到了这一点,提供了文字形变程度 l 这一参数。通过调整 l,就能实时获得不同变形程度的艺术字。想更硬朗一点,还是更飘逸一点,轻松选择。

选择最合适的艺术字效果

本篇的目的是解读在文字风格化任务中,如何让网络在一张用户指定的风格图像上实现训练,以及如何做到对文字不同变形程度的支持。

本篇的主角 ShapeMatchingGAN,是 ICCV 2019 Oral,实现了变形程度可控的文字风格化。作者还开源了 PyTorch 实现:https://github.com/TAMU-VITA/ShapeMatchingGAN,喜欢设计的小伙伴可以去尝试渲染一下自己的艺术字。

双向形状匹配策略

ShapeMatchingGAN 的首要目的是学会文字的变形。不同于纹理尺度、风格强度等可用超参描述的特征,文字变形难以定义与建模,同时也没有对应的数据集支撑。为了解决这个问题,文章提出了双向形状匹配策略:

整体思路是比较直观理解的。分为两个阶段,第一个阶段(反向结构迁移),提取风格图的结构,反向将文字的形状风格迁移到结构图上,获得简化的结构图。第二个阶段(正向风格迁移),正向学习该上述过程的逆过程,即学习将简化的结构映射到原始结构再进一步映射回风格图。这样网络就学会了为文字边缘增添风格图的形状特征和渲染纹理。

但是我们还面临两个挑战,首先,如何在风格图只有一张的条件下,训练网络;其次,如何训练一个网络来快速处理不同的变形程度。

接下来,我们对各个部分详细的进行梳理,展示文章是如何应对这两个挑战的。

反向结构迁移

反向结构迁移的目的是生成风格图的结构图与简化结构图,与风格图构成成对的训练集。针对第一个挑战,文章采用随机裁剪的方式,将风格图,结构图和简化结构图,裁剪为大量的子图像,从而获得足够的训练数据。

为了将文字的形状特征迁移到风格图的结构图上,文章提出了 Sketch Module,它包含一个模糊模块和一个去模糊模块。模糊模块使用高斯滤波模糊图像边缘,将文字图和结构图映射到同一个模糊领域,然后通过在文字图上训练去模糊模块恢复文字简洁的边缘,让网络在测试时能简化结构图的边缘。 

针对第二个挑战,为了学习不同的文字变形程度,对应的,也需要生成不同简化程度的简化结构图。文章的解决方案是使用文字形变程度控制高斯滤波的核函数的标准差。越大,边缘模糊程度越高,对应结构图简化程度也越高,反过来学到的文字变形程度也越大。

正向风格迁移

正向结构迁移包含结构迁移和纹理迁移。在结构迁移任务中,文章训练网络 GS 将不同简化程度的结构图映射回原始的结构图。这是一个多对一的映射问题,网络可能会仅仅记住输出的结果,而忽略输入的不同。

为了应对这个问题,文章提出了可控的 ResBlock,由两个 ResBlock 以 l 权重线性加权组合得到。当 l = 0 或 1 时,其退化为单个 ResBlock,分别学习最大和最小的变形程度。而当 l 在 0 至 1 之间时,网络学会在两个极端下折衷,从而应对第二个挑战。

最后,文章训练一个网络 GT 将结构图映射为风格图,从而学会为文字增添纹理。文章同时还考虑了非边缘部分字形的保持和使用 style loss 增强纹理的细节。

实验

实验对比 

和已有的方法,ShapeMatchingGAN 进行了定性和定量上的对比。与这些方法相比,ShapeMatchingGAN 能够生成更自然的边缘和细节丰富的纹理。在主观打分上,ShapeMatchingGAN 获得了 0.802 的用户倾向均值, 而 Image Analogy [1], NST [2], Doodle [3], T-Effect [4] 和 UT-Effect [5] 分别为 0.513,0.376,0.537,0.230 和 0.542,ShapeMatchingGAN 取得最好的结果。

消融对比 

文章定性上做了消融对比实验,包括直接使用 GT 不使用 GS (baseline),使用串联 l 的方式代替可控的ResBlock (w/o CR),直接使用 GS 不使用 GT (w/o TN),以及完整的网络。

可控的变形程度

下图展示了文字边缘的叶片和文字边缘的冰晶逐渐生长得愈发丰茂的过程。我们的方法能快速且连续地逐步增加文字的变形程度。


动态艺术字

通过对输入图像添加噪声,能得到同一风格下不同形态的艺术字,组合起来就能让艺术字动起来。

总结

文章提出了 ShapeMatchingGAN,一种用于将风格图片的形状和纹理风格渲染到目标文字上的文字风格化模型。通过提出的双向结构匹配策略,ShapeMatchingGAN 能构建文字与风格在形状之间不同尺度上的对应关系,而可控的 ResBlock 的加入支持网络鲁棒地学会这样的对应关系。从实验结果上可以成功地实现文字风格化,并控制文字的形变程度,较其他方法取得了一定的优势。

更多文字风格化的工作

如果你对文字风格化感兴趣,欢迎关注作者其他几篇相关的工作:

基于块匹配的字效迁移:http://www.icst.pku.edu.cn/struct/Projects/TET.html

艺术字生成与图文结合:http://www.icst.pku.edu.cn/struct/Projects/UTS.html

基于特征解耦的字效迁移:http://39.96.165.147/Projects/ys_aaai19/TETGAN.html

关注小配饰的字效迁移:https://daooshee.github.io/Typography2019/TE141K

字效数据库https://daooshee.github.io/TE141K/

参考文献

[1] A. Hertzmann, C. E. Jacobs, N. Oliver, B. Curless, and D. H. Salesin. Image analogies. SIGGRAPH. 2001 
[2] L. A. Gatys, A. S. Ecker, and M. Bethge. Image style transfer using Convolutional neural networks. CVPR. 2016 
[3] A. J. Champandard. Semantic style transfer and turning two-bit doodles into fine artworks. Arxiv. 2016 
[4] S. Yang, J. Liu, Z. Lian, and Z. Guo. Awesome typography: statistics-based text effects transfer. CVPR. 2017 
[5] S. Yang, J. Liu, W. Yang, and Z. Guo. Context-aware text-based binary image stylization and synthesis. TIP. 2019
PaperWeekly
PaperWeekly

推荐、解读、讨论和报道人工智能前沿论文成果的学术平台。

理论ICCV 2019GAN论文
3
相关数据
权重技术

线性模型中特征的系数,或深度网络中的边。训练线性模型的目标是确定每个特征的理想权重。如果权重为 0,则相应的特征对模型来说没有任何贡献。

核函数技术

核函数包括线性核函数、多项式核函数、高斯核函数等,其中高斯核函数最常用,可以将数据映射到无穷维,也叫做径向基函数(Radial Basis Function 简称 RBF),是某种沿径向对称的标量函数。最常应用于SVM支持向量机中

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

数据库技术

数据库,简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据运行新增、截取、更新、删除等操作。 所谓“数据库”系以一定方式储存在一起、能予多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。

映射技术

映射指的是具有某种特殊结构的函数,或泛指类函数思想的范畴论中的态射。 逻辑和图论中也有一些不太常规的用法。其数学定义为:两个非空集合A与B间存在着对应关系f,而且对于A中的每一个元素x,B中总有有唯一的一个元素y与它对应,就这种对应为从A到B的映射,记作f:A→B。其中,y称为元素x在映射f下的象,记作:y=f(x)。x称为y关于映射f的原象*。*集合A中所有元素的象的集合称为映射f的值域,记作f(A)。同样的,在机器学习中,映射就是输入与输出之间的对应关系。

暂无评论
暂无评论~