(3)人工智能参与字体设计的探索
①字体地图
2017年,IDEO的Kevin Ho创建了一个项目——Font Map[22],用人工智能来显示不同字体之间的新关系。Kevin Ho用机器学习探寻了750多个英文字体之间的关系,做出了一个交互式的网页地图,可以把字体降维到二维空间进行展示,更为宏观地观察字体的关系,感受字体的异同。Font Map中(图2-3),视觉特征相似的字体被分布在一起,点击浏览某一字体时用户可以在它周围方便地查看与之相似的字体,也可直接通过字体名称搜索自己想要查询的字体。具体实现思路是通过生成不同字体显示同一段文字的图像,然后使用VGG16的卷积神经网络来评价每个字体的特征[23]。
图2-3 FontMap示例[24]
目前还没见到对于中文字体类似FontMap的分类性质的项目,不过国内有一些团队走了另外一条路:根据少量的样本,用机器学习推导出剩余大量字体的设计。
②中文拆字数据库
2020年,博主“爱可可-爱生活”在Github分享了“汉字拆字-汉字拆字库”[25]项目,旨在将汉字拆解成偏旁部首,在机器学习中作为汉字的字形特征,辅助训练。
2021年,瑞士洛桑艺术与设计大学与瑞士洛桑联邦理工大学共同合作的“AIZI”项目由网站发布[26],该项目旨在开发一个人工智能算法,利用少于500个基础字符自动生成中文字体,帮助中文字体设计更好地发展。项目的第一步就是在其网站提供超过9万字的汉字全字符集偏旁部首拆解数据库。这个数据库是为了训练GAN,生成对抗网络而创建的,任何设计师都可以用它来训练AI或作为字体设计的参考。网站还包含一系列关于该项目研究的文章,探讨对于中文字体设计的想法或是AI对于字体行业的影响以及对于字体设计教育的影响。
③认知科学结合机器学习的汉字生成
谷歌大脑东京分部的研究人员Hardmaru发布了kanji-rnn项目,使用神经网络生成汉字,与众不同的是,由于提供给神经网络的数据是“笔画”,因此生成的是所有理论上可以存在,但现实中并没有使用的汉字。因为汉字系统本质上是开放的,使用可用的元素(偏旁部首、笔画等)可以制作出无数个不同的字符。虽然代码目前还不能很准确地定位笔画的位置,但实验中的一些结果(图2-4)看起来非常像真实存在的汉字。
图2-4 输入“亅”后生成的不同结果[27]
从认知科学的角度,“写”汉字和“读”汉字是两个非常不同的过程,认识一个字,能够阅读或者发出读音,但不一定写得出来;但是,如果能写出一个汉字,你一定认识它,知道它的发音。因此,在Hardmaru看来,生成数据是数据分类的延伸和扩展。相比能够认出某个汉字,能够把这个汉字写出来表明我们对这个汉字有更多的理解。
kanji-rnn项目采用了sketch-rnn的手写体生成模型框架[28]。在sketch-rnn中,每一笔都用类似笔画的数据建模,使用混合高斯分布来估算下一笔的位移(神经网络必须为下一步提供概率分布)。其中每一步数据都包含x轴和y轴的偏移量,以及这一笔是否落在了纸上,如果落在纸上,那么上一笔和这一笔之间就会有连线,形成笔迹。
④小样本估计的字库生成
2015年,北京大学计算机科学技术研究所上线了FlexiFont项目。该项目在网站中提供了字数不等的几个模板,下载后会很像字帖,一边是汉字,另一边是方块空格,对应模板书写汉字,再扫描上传至网站,即可生成字库。最终输出的是一个可以在电脑上安装并使用的.ttf文件。
从理论上来说,使用字数越多的模板,得到的字体就会越精确;使用字数较少的模板,得到的字体可能精确度不够。
⑤文字风格迁移
2016年,Flipboard软件工程师Yuchen Tian在GitHub上发布了用于汉字字体神经风格迁移的Rewrite项目[29]。整个字体设计流程可被表示成一个风格迁移问题(style transfer problem)——将标准样式字体转换为目标风格的字体。该项目通过向一个神经网络提供配对样本的子集,来训练该神经网络近似学会两种字体设计之间的转换[30]。一旦学习完成,该神经网络就可被用来推理其他字符的外形(图2-5)。
图2-5 Rewrite测试示例[31]
2017年,Yuchen Tian优化了Rewrite项目,使用风格迁移解决中文字体生成问题的同时,还加上了条件生成对抗网络(GAN),zi2zi项目由此诞生[32]。用两种不同字体作为训练数据,训练一个神经网络,训练好的神经网络自动将输入的汉字转化为另一种字体(风格)的汉字(图2-6)。
图2-6 zi2zi测试示例[33]
此外,我们还可以在不同样式之间进行插值,并得到介于两个字体之间的状态。这种方法的主要优点在于:编码器能够接触到更多的汉字,不仅限于一个目标字体,还包括所有字体的组合,解码器可以从其他字体中学会同一种偏旁的不同写法。同时训练多种字体,迫使模型从每种字体中学习,然后使用学到的经验改善同一种字体的其他汉字。
2018年,伯克利AI实验室提出适用于少数字体风格迁移的多内容GAN(Multi-Content GAN)[34]。随着深度神经网络的兴起,研究人员开始研究从图形中进行字形建模的方法。设计多内容GAN架构,能够为每个观察到的字符集重新训练一个定制的网络,只需观察少量的字形即可。这个模型的思路是用通道内的文本(A~Z)和神经网络层中的风格,将给定的字形风格迁移到看不到的内容。
但该方法也有其局限性,英文字母的字符较少,因此,字形风格迁移拥有不错的“鲁棒性”[35],但运用到汉字字体设计时仍存在精准度不高的问题。
⑥文字字效迁移
文字字效生成技术的目标是自动为文字增添诸如颜色、描边、阴影、反射和纹理等艺术效果,使之看上去更生动、更有吸引力。其中,字效迁移任务指为文字渲染指定的参考样例字效,可被广泛地应用于广告、杂志、海报等的平面设计中。然而艺术字的人工制作过程繁琐,需要一定的技术,因此,全自动字效生成方法具有巨大的商用价值。
AAAI 2019论文“TET-GAN:Text Effects Transfer via Stylization and Destylization”[36]针对文字字效迁移问题提出了基于字形字效编解码的神经网络结构,对文字进行风格化处理。首先建立了成对的字效数据库,然后训练网络对艺术字、图片进行字形特征和字效特征的提取,通过对字形特征和字效特征的组合,能完成文字特效迁移和艺术字去风格化两个任务。
该方法的优势在于:TET-GAN提出了一种基于字形字效特征解耦与重组的字效迁移方法,使在同一个网络中进行多种字效的迁移与去除成为可能。TET-GAN提出了一个新的字效数据库,包含了上千的成对的文字——字效图片。TET-GAN提出了一种有效的网络微调方法,最少只需要一张字效图用于微调,就能使网络处理新的字效风格。
IEEE TPAMI2020发表的论文“TE141K:Artistic Text Benchmark for Text Effect Transfer”提出了TET-GAN字效迁移模型[37],最后在14种图像风格化模型上进行了性能比较,建立了文字字效迁移问题的基准(Benchmark),以便于后续相关研究的性能评估和分析。
目前已有一些成熟的图像风格化算法在绘画风格迁移上取得优良的性能,并且围绕字效迁移也提出了诸如T-Effect、UT-Effect、TET-GAN等风格化模型。为了促进字效迁移相关研究的发展,亟待建立一个字效迁移的基准,提供可靠的数据和分析用以评价不同图像风格化模型在字效迁移任务上的性能。
⑦结合参数字体技术的人工智能造字实验
2020年,台湾研究者驿窗提出了全濑体AI造字程序。程序在英文参数字体造字技术的基础上增加绝对采样,从而实现汉字造字(图2-7)。通过让AI学习现有字体来实现这个绝对采样过程,达到采样率100%。
图2-7 全濑体造字生成字体示例[38]
但该项目目前存在的不足在于,全濑体AI程序依赖现有字体造字,很难对字体风格进行创新,包括字重的调整;而由人工对笔画进行风格创新,再让AI学习笔画风格,然后根据学习成果创建新风格字体,其投入的资源、人力等成本远远小于对整套字体的投入。所以,由人工对笔画风格进行创新,然后让AI学习新风格的笔画,进而创建新风格的字体,可以解决字体风格创新的问题。