作者丨杨帅
学校丨北京大学博士生
研究方向丨图像风格化
当你制作 PPT 时想要打造与背景图片风格一致的标题,当你设计宣传海报时想要一个引人注意的标题,当你发朋友圈时想要更生动地展示文字所传达的信息,你现在可能需要的是文字风格化算法。
文字风格化是一种为文字设计特效,将之渲染为独一无二的艺术字的过程。艺术字往往需要设计师依靠技术和经验花费几个小时去创作。这种耗时的工作当然可以交给计算机来做,ShapeMatchingGAN 应运而生,只需要提供一张风格图片,就能打造自己的火焰字、水滴字、闪电字、花瓣字等等。
▲ 将不同程度的火焰风格渲染到文字上
在文字风格化中,有一点需要注意,以火焰字为例,要使火焰在文字上烧起来,文字边缘势必要进行形状的调整,而过多的调整又会损害文字的可读性。因此,需要在文字的艺术性和可识别性上进行折衷。ShapeMatchingGAN 贴心地考虑到了这一点,提供了文字形变程度 l 这一参数。通过调整 l,就能实时获得不同变形程度的艺术字。想更硬朗一点,还是更飘逸一点,轻松选择。
▲ 选择最合适的艺术字效果
本篇的目的是解读在文字风格化任务中,如何让网络在一张用户指定的风格图像上实现训练,以及如何做到对文字不同变形程度的支持。
本篇的主角 ShapeMatchingGAN,是 ICCV 2019 Oral,实现了变形程度可控的文字风格化。作者还开源了 PyTorch 实现:https://github.com/TAMU-VITA/ShapeMatchingGAN,喜欢设计的小伙伴可以去尝试渲染一下自己的艺术字。
ShapeMatchingGAN 的首要目的是学会文字的变形。不同于纹理尺度、风格强度等可用超参描述的特征,文字变形难以定义与建模,同时也没有对应的数据集支撑。为了解决这个问题,文章提出了双向形状匹配策略:
整体思路是比较直观理解的。分为两个阶段,第一个阶段(反向结构迁移),提取风格图的结构,反向将文字的形状风格迁移到结构图上,获得简化的结构图。第二个阶段(正向风格迁移),正向学习该上述过程的逆过程,即学习将简化的结构映射到原始结构再进一步映射回风格图。这样网络就学会了为文字边缘增添风格图的形状特征和渲染纹理。
但是我们还面临两个挑战,首先,如何在风格图只有一张的条件下,训练网络;其次,如何训练一个网络来快速处理不同的变形程度。
接下来,我们对各个部分详细的进行梳理,展示文章是如何应对这两个挑战的。
反向结构迁移的目的是生成风格图的结构图与简化结构图,与风格图构成成对的训练集。针对第一个挑战,文章采用随机裁剪的方式,将风格图,结构图和简化结构图,裁剪为大量的子图像,从而获得足够的训练数据。
为了将文字的形状特征迁移到风格图的结构图上,文章提出了 Sketch Module,它包含一个模糊模块和一个去模糊模块。模糊模块使用高斯滤波模糊图像边缘,将文字图和结构图映射到同一个模糊领域,然后通过在文字图上训练去模糊模块恢复文字简洁的边缘,让网络在测试时能简化结构图的边缘。
针对第二个挑战,为了学习不同的文字变形程度,对应的,也需要生成不同简化程度的简化结构图。文章的解决方案是使用文字形变程度控制高斯滤波的核函数的标准差。l 越大,边缘模糊程度越高,对应结构图简化程度也越高,反过来学到的文字变形程度也越大。
正向结构迁移包含结构迁移和纹理迁移。在结构迁移任务中,文章训练网络 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/
#活 动 推 荐#
10.31-11.1 北京智源大会
🔍
现在,在「知乎」也能找到我们了
进入知乎首页搜索「PaperWeekly」
点击「关注」订阅我们的专栏吧
关于PaperWeekly
PaperWeekly 是一个推荐、解读、讨论、报道人工智能前沿论文成果的学术平台。如果你研究或从事 AI 领域,欢迎在公众号后台点击「交流群」,小助手将把你带入 PaperWeekly 的交流群里。
▽ 点击 | 阅读原文 | 下载论文 & 源码