基于GAN的字体风格迁移 | CVPR 2018论文解读
本文研究的问题看上去没啥亮点,但在实际应用中,很多设计师在设计海报或者电影标题的字体时,只会创作用到的字母,但想将风格迁移到其他设计上时,其他的一些没设计字母需要自己转化,造成了不必要的麻烦。
如何从少量(5 个左右)的任意类型的艺术字中泛化至全部 26 个字母是本文的难点。本文通过对传统 Condition GAN 做扩展,提出了 Stack GAN 的两段式架构,首先通过 Conditional GAN #1 根据已知的字体生成出所有 A-Z 的字体,之后通过 Conditional GAN #2 加上颜色和艺术点缀。
如果你对本文工作感兴趣,点击底部的阅读原文即可查看原论文。
关于作者:黄亢,卡耐基梅隆大学硕士,研究方向为信息抽取和手写识别,现为波音公司数据科学家。
■ 论文 | Multi-Content GAN for Few-Shot Font Style Transfer
■ 链接 | https://www.paperweekly.site/papers/1781
■ 源码 | https://github.com/azadis/MC-GAN
论文动机
在很多 2D 宣传海报设计中,艺术家们花了很多时间去研究风格兼容的艺术字,也因此只去设计当前作品中所需要的少部分字母,之后若是作品成功想要将艺术字的风格转移到其他项目中时,难免会出现新的字母,这时候得花更多的时间去补充和完善。
本文希望在只看到少量已有艺术字母的劣势下,通过 GAN 来自动生成那些我们需要但又缺失的相同风格的字母。
模型介绍
本文的模型建立在许多已有的工作基础之上。先从宏观角度来看,整个网络分为两个个阶段:第一阶段先根据不同字母之间的相互联系产生出基本的灰度字形,第二阶段给字母上色以及合成相应的装饰效果。
GAN 本来就难训练,作为 Stack GAN 我们有必要把第一阶段网络给预训练一下。那就让我们把Stack GAN 拆成 Glyph(字形)网络和 Ornamentation(修饰)网络单独来看。
Glyph 网络其实是 Conditional GAN [1] 的衍生,只不过中间网络更复杂,损失函数更加丰富。
我们知道传统 GAN 的输入是 Random Noise,这里它采用了和 Conditional GAN 一样的做法,只把要模仿的字母作为输入而忽略了 Random Noise。输入维度是B X 26 X 64 X 64,B 是 Batch Size,26 指的是 A-Z,64X64 指的是每个字母图片的长宽大小。
▲ 图1:Glyph Network输入示例
Glyph 网络中 Generator 延续了 Image Transformation Network [2] 中相同的架构,即多层 ResNet Block 抽取隐含特征再通过 transpose convolution 上采样输出和原来大小一致的图片,即输出也是 B X 26 X 64 X 64。
这里值得注意的是,作者没有直接将图 1 作为输入,否则二维卷积由于横向的感受野太小很难捕捉到相邻较远字符之间(例如 A 和 Z)的特征。因此作者巧妙的增加了一个维度——输入字母的数目,即将平铺开来的输入图片给垂直垒起来。
作者在代码中第一层还用了三维卷积去模拟了用独立不相关的 filter 去二维卷积每个字母图片的效果,经过 Image Transformation Network 的输出也为 B X 26 X 64 X 64,也就是 64 X 64 的 fake A-Z 26 个字母。
Discriminator 引用了 PatchGAN [1] 的思想,即在公共网络加了 3 层卷积层采用了 21 × 21 Local Discriminator 去衡量局部真假,然后又在公共网络上平行加了 2 层作为 Global Discriminator 去衡量整个图片的真假。
最后,Glyph 网络有 3 个 loss:Local & Global Discrimnator 的 least squares GAN ( LSGAN ) loss [3],以及 Generator 的 L1 loss。loss 之间的权重作为网络的 hyperparameter。
整个网络的示意图如下图:
▲ 图2
Ornamentation 网络架构本质上和 Glyph 网络是一样的,但不同的在于 GlyphNet 从大量的训练字体中学得字形联系,而 OrnaNet 是从少量已观察到的艺术字符中,学习如何把已观察到的字母颜色或修饰迁移到其他未观察到字母上。
▲ 图3
最后要 end2end training 两个网络,此时 GlyphNet 已经有了 pretrained model。最后的训练只是 finetune,所以理所当然地拆掉了 Discriminator 只保留了 Generator。
真正需要训练的是 random initialized 的 OrnaNet,整个网络的输入换成了图 3 所示左图,采用 leave one out 通过 GlyphNet 生成 OrnaNet 的输入。
例如图 4 原本观察到字符是 water 的艺术字,GlyphNet 的输入是便是 water 这 5 个字母依次轮流抽出一个后的其中 4 个作为输入(wate),抽出的那一个作为要 predict 的字母(r),最后是 5 个字母全部在场的情况下预测其余 22 个字母。
▲ 图4
换句话说就是 GlyphNet 的输出仍然是 6 X 26 X 64 X 64,但我们拿对应想要的维度拼接成 1 X 26 X 64 X 64,即 26 个灰度字形作为 OrnaNet 的输入。也就是说,OraNet 最后的输出就是最后完整的 26 个艺术字了。
为了稳定训练,OrnaNet 除了具备和 Glyph 一样的 3 个 loss,又额外增加了两个二值化掩码损失(sigmoid),分别是 Generator 的输入和输出的 mean square error,以及 Generator 的输入和 ground truth 的 mean square error,共计 6 个loss function。各个 loss 之间的权重仍是网络的超参。
实验结果
本文以 Image to Image Translation Network [5] 为 baseline,做了几个小实验:
1. Ablation Study(控制变量实验),通过是否预训练模型,去除某些模块的 loss 来体验网络各个部分对整体字体效果做出的贡献。
2. A-Z 不同字体之间的关系,Structural Similarity 是一种测量字体相似程度的标准,我们可以通过大量的 test 画出已知 A 字体,预测出的 B 字体和真实 B 字体之间的 Structural Similarity的分布,由此我们可以定性地分析出各个字符对于任意字符预测的信息贡献量。
3. 研究关于输入字符的数量对于 GlyphNet 预测质量的影响,发现当输入字符为 6 时,Structural Similarity 的分布已经趋于稳定。
4. 主观评价:由于 task 特殊无法定量的用 metric 去衡量,找了 11 个人在 MC-GAN 和 Patch Synthesis Model [4] 产生的结果之间做选择,80% 胜出。
总结心得
文本融合已有的大量 GAN 的成果,本文将字体风格迁移的工作分为两个阶段逐个击破,首先生成字体,其次添加颜色和修饰。此外,利用字母之间相互的联系,只用少量字母就能将风格迁移到所有字母,也是本文的一大特色。
小小的不足是实验只包括了 26 个字体,实际中我们可能还需要包括数字或小写字母。虽然生成的质量和 baseline 相比有很大提高,但和 Ground Truth 比起来仍有差距。
最后,虽然文章着眼于 2D deisgn 中艺术字的风格迁移,不过把第一个网络单独拿出来用于生成 handwriting 的 data 也是值得研究的。
原文发布时间为:2018-04-3
本文作者:黄亢
本文来自云栖社区合作伙伴“PaperWeekly”,了解相关信息可以关注“PaperWeekly”微信公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
科技变革,未来已来,第六届全球软件案例研究峰会成功落幕
会上,百度云、美团、小米等众多企业的代表分享了诸多精彩案例。 2017年,软件研发行业再一次迎来大跨步前进,深度学习、人工智能、大数据等领域的发展带来道的革新,DevOps、微服务等技术的日益成熟带动术的发展。 由麦思博(msup)有限公司主办的,以“人工智能时代的研发战略演进”为主方向的第六届全球软件案例研究峰会,于11月9日-12日在北京国家会议中心举办。本次峰会,来自全球范围内的100个年度优秀软件研发实践案例对2017年的行业发展进行了一次整体复盘。 开幕式,人工智能时代下的研发战略演进 在11月9日举行的开幕式上,中国国家外国专家局、中国国际人才交流基金会主任苏光明先生,msup创始人兼CEO、全球软件案例研究峰会主席刘付强先生,百度云副总经理傅徐军先生,小米开发者生态负责人李晓璐女士,Riot Games大数据和人工智能负责人李仁杰先生,爱奇艺公司首席科学家王涛博士,北京大学信息科学技术学院张铭教授,七牛云创始人兼CEO 许式伟先生,ThoughtWorks中国区CTO徐昊先生,msup研究院院长姚冬先生,阿里巴巴人工智能实验室智能终端总经理茹忆先生,360智能工程中心总经...
-
下一篇
阿里云API应用创新大赛总决赛,强者之争即将开启
2018年4月8号,即将迎来阿里云API应用创新大赛总决赛。15个战队将于淘宝城开启夺冠之战。 历时117天,400+参赛战队参与,60+作品提交,25个优秀作品入围,提交与API相关建议362条;使用阿里云及云市场API应用50+;人工智能、物联网、医疗、汽车维修、农业成为热门题材。 还记得第一届API大赛总决赛于2017年6月11日在上海云栖大会举办,10个参赛战队在不同纬度展示了API经济强势回归带来的新型商业模式。 而第二届,随着API经济的不断成熟与普及,客户的接受能力也越来越强,API的价值也变得不可缺失。无论是医疗、物联网,还是农业、汽车维修,API已经渗透至公民日常生活的各各环节。政府的最多跑一次政策,就是效用API的方式,整合各不同政府平台资源,进行统一管控,是政府处理事情更便捷,公民办事更省事省力省心。 API应用势在
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- 面试大杂烩
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果