[论文阅读] FontNet: Closing the gap to font designer performance in font synthesis

1. pre

title: FontNet: Closing the gap to font designer performance in font synthesis
accepted: AI4CC 2022 (AI for Content Creation, CVPR Workshop)
paper: https://arxiv.org/abs/2205.06512
code: 无

亮点(自称):few-shot(8), 跨语言,图片分辨率高

2. Abstract

现存方法缺陷:没见过的字体风格需要大量参考字形微调,近来的few-shot方法要么是特定语言系统,要么合成的图片分辨率较低。本文在嵌入空间学习字体风格来解决问题。提出了FontNet这个模型,能在嵌入空间中学习分离多个字体风格,那个空间中距离直接与字体相似度相关,同时能够将输入图片转换成给定的已知或未知的字体风格。此外还涉及了能用于多种语言系统且输出高分辨率字体图片的网络架构和训练过程。

3. Introduction

中文字符数(50000)韩语(11172)。

提及大多数现有模型都没有 "regularize the style encoders",且大多依赖多任务判别器,用对抗的方式训练其区分每个字体风格。多任务判别器利用字体风格标签给生成器提供有用的梯度进行字体风格转换。FtransGAN通过PatchGAN判别器利用图片而非标签label来学习风格。

FontNet的网络架构简单,可以被用于任何语言系统。为了图片的高分辨率,还用上了为FFG任务修改过的StyleGAN模型。引入一种新的字体分离器网络,灵感来源于度量学习文献,能够在嵌入空间学习字体风格相似度。

除了在训练时将字体风格分类,该分离器网络还学习在嵌入空间中聚集同一字体的字符,并将其与其他字体的字符分离。这种策略是得少量样本(实验中是8个)就能生成未见过的字体。

4. FontNet

4.1. Architecture Overview

网络架构如图1(a)所示,
\(S_E\):separator network,字体风格编码器,输出参考图形\(X_{REF}的\)特征\(x^s\)给G

4.2. Learning to encode font style features

不同于以往用对抗式风格分类学习风格的办法,设计了一个triplet loss,S_E抽取风格嵌入\(f(x)\),从给定图片x到嵌入空间\(R^d\),使得同一字体风格的字体图片平方距离(square distance)小,反之属于不同风格的距离就大。

注:triplet loss,主要是用于训练差异性小的样本,多用于人脸识别任务,公式为\(L = \max(d(a, p) - d(a, n) + margin, 0)\),margin可以避免模型走捷径,将positive跟negative样本划等号,使得\(d(a, p) = d(a, n)\)

\(ℒ_{encstyle}\)就是基于这种思想,只是上式中的d(x)取L2范数,a为某一真实图片,p为跟a字体相同但字不同的正样本,n为字体不同但同一个字的负样本。

4.3. Learn to synthesize font images

生成器基于StyleGAN,但它是非条件模型,因此给它加了个encoder(图1(a)里的\(G_E\)),并用\(G_E\)提取的内容特征\(x^c\)取代StyleGAN的默认常数输入。还去掉了其默认生成器里的mapping network跟G regulaization。

将G作为自编码器训练(\(编码器G_E和解码器G_D\)),还有个跟StyleGAN一样的判别器\(D_{isc}\)。风格特征\(x^s\)通过AdaIN注入\(G_D\)的各层。

损失函数由多项组成:

  1. \(ℒ_{adv}\),借助判别器\(D_y\)的对抗损失,判别图像真假
  2. \(ℒ_{gstyle}\),triplet损失,只是跟\(ℒ_{encstyle}\)不同,这里样本a取生成图片y,确保y的风格跟参考图片\(x_{REF}\)更接近
  3. \(ℒ_{gL1}\),像素级损失,在y跟groundtruth\(x^{gt}\)之间计算L1范数
  4. \(ℒ_{encstyle}\),上述a为真实图片的triplet,可能是作为判别器学习的损失

5. Experiments

5.1. Datasets

Naver1上的90个韩文字体,训练测试比例3:1,2350个常见韩文字符中随机取2000个训练,其他350个测试。明明没在其他语言字体上做实验却说能跨语言,缺少说服力。

5.2. Baselines and Evaluation metrics

跟MX-Font、FUNIT对比,多亏了开源的仓库,嫌弃其他模型需要finetuning或生成的图片分辨率不够高所以没对比,实际上完全可以对比看看效果。

像素级指标SSIM,感知级指标mFID,内容风格分类指标top-1 acc。

5.3. Quantitative evaluation


看图说话,效果好的加粗,原论文中图片的分辨率就很低。

5.4. Qualitative comparison

本实验中源字体固定1种,在粗细、衬线有无的字体上进行评估。指出MX-Font对于粗字体效果很差,草书(cursive fonts)则两个baseline都很差。

5.5. Ablation study

FontNet主要两个思想:

  1. 用triplet regularization训练分离器网络\(S_E\),在风格嵌入空间中分别聚集每种字体。
  2. 修改StyleGAN生成器\(G_D\)去生成高质量图像。


消融实验就是分别用FUNIT的风格编码器跟解码器替代\(S_E、G_E\),并跟没替换的模型进行对比。总之换了之后掉点严重,说明这俩网络确实对生成高质量图片有帮助。

6. Conclusion

提出了能用于任何书写系统的FontNet,利用表征学习representation learning提取风格特征,修改StyleGAN生成器来生成高质量图片。通过实验证明FontNet效果很好。

posted @ 2022-10-04 12:32  NoNoe  阅读(138)  评论(0编辑  收藏  举报