[Paper] Learning to Cartoonize Using White-box Cartoon Representations(2020)
[Code]SystemErrorWang/White-box-Cartoonization
学习使用白盒卡通表示进行卡通化
本文提出了一种图像卡通化的方法。通过观察卡通绘画行为和咨询艺术家,我们建议从图像中分别识别三个白盒表示:包含卡通图像平滑表面的表面表示,在赛璐珞风格的工作流程中,指的是稀疏色块和扁平化全局内容的结构表示,以及反映卡通图像中高频纹理、轮廓和细节的纹理表示。生成对抗网络 (GAN) 框架用于学习提取的表示并对图像进行卡通化。
我们方法的学习目标分别基于每个提取的表示,使我们的框架可控和可调。这使我们的方法能够满足艺术家在不同风格和不同用例中的要求。已经进行了定性比较和定量分析以及用户研究以验证这种方法的有效性,并且我们的方法在所有比较中都优于以前的方法。最后,消融研究证明了我们框架中每个组件的影响。
概述
卡通是一种流行的艺术形式,广泛应用于各种场景。现代卡通动画工作流程允许艺术家使用各种来源来创建内容。一些著名的产品是通过将现实世界的摄影变成可用的卡通场景素材而创造的,该过程称为图像卡通化。
各种卡通风格和用例需要特定于任务的假设或先验知识来开发可用的算法。例如,一些卡通工作流程更关注全局调色板主题,但线条的清晰度是次要问题。在其他一些工作流程中,稀疏干净的色块在艺术表现中起着主导作用,但主题相对较少。
当面对艺术家在不同用例中的不同需求时,这些变体对黑盒模型(例如 [20, 48, 6])提出了不小的挑战,并且简单地更改训练数据集无济于事。尤其是,CartoonGAN [6] 是为图像卡通化而设计的,其中提出了一种具有新颖边缘损失的 GAN 框架,并在某些情况下取得了良好的效果。但是使用黑盒模型直接拟合训练数据会降低其通用性和风格化质量,在某些情况下会导致糟糕的情况。
针对上述问题,我们对人类的绘画行为和不同风格的卡通形象进行了广泛的观察,并咨询了多位卡通艺术家。根据我们的观察,如图 3 所示,我们建议将图像分解为几个卡通表示,并将它们列出如下:
首先,我们提取表面表示来表示图像的光滑表面。给定图像 I ∈ R W × H × 3 I ∈ R^{W×H×3} I∈RW×H×3 ,我们提取加权低频分量 I s f ∈ R W × H × 3 I_{sf }∈ R^{W×H×3} Isf∈RW×H×3 ,其中颜色成分和表面纹理被保留,边缘、纹理和细节被忽略。这种设计的灵感来自卡通绘画行为,艺术家通常在修饰细节之前绘制构图草图,用于实现平滑表面的灵活和可学习的特征表示。
其次,提出了结构表示,以有效抓住赛璐珞卡通风格中的全局结构信息和稀疏色块。我们从输入图像 I ∈ R W × H × 3 I ∈ R^{W×H×3} I∈RW×H×3 中提取分割图,然后对每个分割区域应用自适应着色算法以生成结构表示 I s t ∈ R W × H × 3 I_{st} ∈ R^{W×H×3} Ist∈RW×H×3 。这种表示的动机是模仿赛璐珞卡通风格,其特点是边界清晰,色块稀疏。结构表示对于生成稀疏视觉效果以及将我们的方法嵌入到赛璐珞风格的卡通工作流程中具有重要意义。
第三,我们使用纹理表示来包含绘制的细节和边缘。输入图像
I
∈
R
W
×
H
×
3
I ∈ R^{W×H×3}
I∈RW×H×3 被转换为单通道强度图
I
t
∈
R
W
×
H
×
1
I_t ∈ R^{W×H×1}
It∈RW×H×1,其中去除了颜色和亮度,并保留了相对像素强度。这种特征表示的动机是一种卡通绘画方法,艺术家首先绘制带有轮廓和细节的线条草图,然后在其上应用颜色。它引导网络独立学习高频纹理细节,排除颜色和亮度模式。
单独提取的卡通表示能够在生成神经网络 (GAN) 框架内端到端优化卡通化问题,使其在实际用例中具有可扩展性和可控性,并且易于通过特定任务的微调满足多样化的艺术需求。我们在不同风格的不同场景中的各种真实世界照片上测试我们的方法。实验结果表明,我们的方法可以生成色彩和谐、艺术风格令人愉悦、边界清晰清晰、伪影明显减少的图像。我们还通过定性实验、定量实验和用户研究表明,我们的方法优于以前最先进的方法。最后,进行消融研究以说明每种表示的影响。总而言之,我们的贡献如下:
- 我们根据对卡通绘画行为的观察提出了三种卡通表示:表面表示、结构表示和纹理表示。然后引入图像处理模块来提取每个表示。
- 在提取表征的指导下优化了基于 GAN 的图像卡通化框架。用户可以通过平衡每个表示的权重来调整模型输出的风格。
- 大量实验表明我们的方法可以生成高质量的卡通化图像。我们的方法在定性比较、定量比较和用户偏好方面优于现有方法。
相关工作
图像平滑和表面提取
图像平滑 [37, 14, 10, 29, 5] 是一个被广泛研究的主题。早期的方法主要是基于过滤的 [37, 14],后来基于优化的方法开始流行。法布曼等人[10]利用加权最小二乘法来约束边缘保留算子,Min等人[29] 通过最小化二次能量函数来解决全局图像平滑问题,Bi 等人[5] 提出了一种用于图像平滑和展平问题的 L1 变换。徐和范等人 [44, 9] 介绍了用于图像平滑的端到端网络。在这项工作中,我们采用了可微导滤波器 [42] 来从图像中提取平滑、卡通般的表面,使我们的模型能够学习艺术家在卡通艺术品中创造的结构级组成和平滑表面。
超像素和结构提取
超像素分割 [11, 31, 30, 2] 将图像中具有相似颜色或灰度级的空间连接像素分组。一些流行的超像素算法 [11, 31, 30] 是基于图的,将像素视为节点,将像素之间的相似性视为图中的边。基于梯度上升的算法 [7, 40, 2] 用粗糙的簇初始化图像,并用梯度上升迭代优化簇直到收敛。在这项工作中,我们遵循 felzenszwalb 算法 [11] 开发一种面向卡通的分割方法,以实现可学习的结构表示。这种表示对于深度模型获取全局内容信息并为赛璐珞风格的卡通工作流程产生实际可用的结果非常重要。
非真实感渲染
非真实感渲染 (NPR) 方法表示具有艺术风格的图像内容,例如铅笔素描 [43、28]、颜料 [12、20]、水彩 [39]。从基于过滤的方法 [34] 到端到端神经网络 [6],图像卡通化也得到了广泛的研究,涵盖照片 [6]、视频 [41] 和肖像 [45] 的用例。
神经风格迁移方法 [12, 20, 8, 16] 在 NPR 算法中很流行,它通过结合一张图像的内容和另一张图像的风格来合成具有艺术风格的图像。盖蒂斯等人[12] 联合优化了风格损失和内容损失,以生成具有风格-内容图像对的风格化图像。约翰逊等人[20] 通过训练具有感知损失的端到端网络来加速风格化。 一些作品 [8, 16] 后来提出了不同的方法来风格化图像。
NPR 方法也广泛用于图像抽象 [24, 21]。这些方法在过滤图像细节的同时突出语义边缘,呈现原始图像的抽象视觉信息,常用于卡通相关应用。我们的方法不同于使用单个图像作为参考的风格迁移方法或仅考虑内容图像的图像抽象方法,从一组卡通图像中学习卡通数据分布。这使我们的模型能够在不同的用例中合成高质量的卡通化图像。
生成对抗网络
生成对抗网络 (GAN) [13] 是最先进的生成模型,它可以通过解决生成器网络和鉴别器网络之间的最小-最大问题来生成具有相同输入数据分布的数据。通过强制生成的图像与真实图像无法区分,它在图像合成方面非常强大。GAN 已广泛用于条件图像生成任务,例如图像修复 [32]、样式迁移 [33]、图像卡通化 [6]、图像着色 [46]。在我们的方法中,我们采用对抗性训练架构并使用两个鉴别器来强制生成器网络合成与目标域具有相同分布的图像。
图像到图像的转换
图像到图像的转换 [19, 17, 25, 48] 解决了将图像从源域转换到另一个目标域的问题。它的应用包括图像质量增强 [18]、将照片风格化为油漆 [20、33]、卡通图像 [6] 和草图 [26],以及灰度照片着色 [47] 和草图着色 [46]。最近,还引入了双向模型用于域间翻译。朱等人[48] 执行未配对图像的转换(即夏天到冬天,照片到油漆)。
在本文中,我们采用不成对的图像到图像的翻译框架进行图像卡通化。与之前使用损失项指导网络训练的黑盒模型不同,我们将图像分解为多个表示,这迫使网络学习具有不同目标的不同特征,从而使学习过程可控和可调。
建议的方法
我们在图 4 中展示了我们提出的图像卡通化框架。图像被分解为表面表示、结构表示和纹理表示,并引入三个独立的模块来提取相应的表示。提出了一个带有生成器 G 和两个鉴别器 Ds 和 Dt 的 GAN 框架,其中 Ds 旨在区分从模型输出中提取的表面表示和卡通,而 Dt 用于区分从输出中提取的纹理表示和卡通。预训练的 VGG 网络 [35] 用于提取高级特征,并对提取的结构表示和输出之间以及输入照片和输出之间的全局内容施加空间约束。可以在损失函数中调整每个组件的权重,这允许用户控制输出样式并使模型适应不同的用例。
从表面表示中学习
表面表示模仿卡通绘画风格,艺术家用粗刷粗略地绘制草稿,并具有类似于卡通图像的光滑表面。为了平滑图像,同时保持全局语义结构,采用可微导滤波器进行边缘保留滤波。表示为
F
d
g
f
F_{dgf}
Fdgf ,它将图像
I
I
I 作为输入并将其自身作为引导图,返回提取的表面表示
F
d
g
f
(
I
,
I
)
F_{dgf} (I, I)
Fdgf(I,I),其中去除了纹理和细节。引入判别器
D
s
D_s
Ds 来判断模型输出和参考卡通图像是否具有相似的表面,并引导生成器
G
G
G 学习存储在提取的表面表示中的信息。让
I
p
I_p
Ip 表示输入照片,
I
c
I_c
Ic 表示参考卡通图像,我们将表面损失公式化为:
从结构表示中学习
结构表示在赛璐珞风格的卡通工作流程中模拟扁平化的全局内容、稀疏的色块和清晰的边界。我们首先使用 felzenszwalb 算法将图像分割成不同的区域。由于超像素算法只考虑像素的相似性而忽略语义信息,我们进一步引入了选择性搜索[38]来合并分割区域并提取稀疏分割图。
标准超像素算法使用像素值的平均值为每个分段区域着色。通过分析处理后的数据集,我们发现这会降低全局对比度,使图像变暗,并对最终结果产生模糊效果(如图 5 所示)。因此,我们提出了一种自适应着色算法,并将其公式化为公式 2,其中我们发现
γ
1
=
20
、
γ
2
=
40
γ1 = 20、γ2 = 40
γ1=20、γ2=40 和
μ
=
1.2
μ = 1.2
μ=1.2 产生了良好的结果。彩色分割图和自适应着色训练的最终结果如图 5 所示,这有效地增强了图像的对比度并减少了雾化效果。
我们使用由预训练的 VGG16 网络 [35] 提取的高级特征来强制我们的结果和提取的结构表示之间的空间约束。让
F
s
t
F_{st}
Fst 表示结构表示提取,结构损失
L
s
t
r
u
c
t
u
r
e
L_{structure}
Lstructure 表示为:
从纹理表示中学习
卡通图像的高频特征是关键的学习目标,但亮度和颜色信息可以轻松区分卡通图像和现实世界的照片。因此,我们提出了一种随机色移算法
F
r
c
s
F_{rcs}
Frcs 从彩色图像中提取单通道纹理表示,它保留了高频纹理并减少了颜色和亮度的影响。
等式4中,
I
r
g
b
I_{rgb}
Irgb代表3通道RGB彩色图像,
I
r
I_r
Ir、
I
g
I_g
Ig和
I
b
I_b
Ib代表三个颜色通道,
Y
Y
Y代表RGB彩色图像转换的标准灰度图像。我们设置
α
=
0.8
,
β
1
,
β
2
α = 0.8, β1, β2
α=0.8,β1,β2和
β
3
∼
U
(
−
1
,
1
)
β3 ∼ U(-1, 1)
β3∼U(−1,1)。如图 4 所示,随机色移可以生成随机强度图,其中去除了亮度和颜色信息。引入判别器
D
t
D_t
Dt 来区分从模型输出和卡通中提取的纹理表示,并指导生成器学习存储在纹理表示中的清晰轮廓和精细纹理。
完整模型
我们的完整模型是一个基于 GAN 的框架,带有一个生成器和两个鉴别器。它与从三个卡通表示中学习的特征联合优化,可以用公式 6 表示。通过调整和平衡
λ
1
、
λ
2
、
λ
3
λ1、λ2、λ3
λ1、λ2、λ3和
λ
4
λ4
λ4,它可以很容易地适应不同艺术风格的各种应用。
总变化损失
L
t
v
L_{tv}
Ltv [4] 用于对生成的图像施加空间平滑度。它还可以降低高频噪声,例如椒盐噪声。在等式 7 中,
H
、
W
、
C
H、W、C
H、W、C 表示图像的空间维度。
内容损失
L
c
o
n
t
e
n
t
L_{content}
Lcontent 用于确保卡通化结果和输入照片在语义上是不变的,
L
1
L_1
L1 范数的稀疏性允许对局部特征进行卡通化。与结构损失类似,它是在预训练的 VGG16 特征空间上计算的:
为了调整输出的清晰度,我们采用可微导滤波器
F
d
g
f
F_{dgf}
Fdgf 进行样式插值。如图 6 所示,它可以在不微调网络参数的情况下有效地调整细节和边缘的锐度。将网络输入表示为
I
i
n
I_{in}
Iin,将网络输出表示为
I
o
u
t
I_{out}
Iout,我们在公式 9 中制定了后处理,其中
I
i
n
I_{in}
Iin 用作引导图:
实验结果
实验装置
**执行。**我们用 TensorFlow [1] 实现了我们的 GAN 方法。生成器和鉴别器架构在补充材料中进行了描述。采用补丁鉴别器[19]来简化计算并增强鉴别能力。我们使用 Adam [23] 算法来优化两个网络。学习率和批量大小在训练期间设置为 2 ∗ 1 0 − 4 2 * 10^{−4} 2∗10−4 和 16 16 16。我们首先用 50000 次迭代的内容损失预训练生成器,然后联合优化基于 GAN 的框架。训练在 100000 次迭代或收敛后停止。
超参数本文中显示的所有结果,除非特别提及,均使用 λ 1 = 1 , λ 2 = 10 , λ 3 = 2 ∗ 1 0 3 , λ 4 = 2 ∗ 1 0 3 , λ 5 = 1 0 4 λ_1 = 1, λ_2 = 10, λ_3 = 2 ∗ 10^3 , λ_4 = 2 ∗ 10^3 , λ_5 = 10^4 λ1=1,λ2=10,λ3=2∗103,λ4=2∗103,λ5=104 生成。该设置基于训练数据集的统计信息。由于我们的方法是数据驱动的,即使参数是粗定义的,神经网络也可以自适应地学习视觉构成。
**数据集.**收集人脸和景观数据以在不同场景中进行泛化。对于真实世界的照片,我们从人脸的 FFHQ 数据集 [22] 中收集了 10000 张图像,从 [48] 中的数据集收集了 5000 张图像用于风景。对于卡通图像,我们从人脸动画中收集 10000 张图像,从风景图像中收集 10000 张图像。收集动画的制作人包括京都动画、P.A.Works、新海诚、细田守和宫崎骏。对于验证集,我们收集了 3011 张动画图像和 1978 张真实世界的照片。主要论文中显示的图像来自 DIV2K 数据集 [3],用户研究中的图像来自互联网和 Microsoft COCO [27] 数据集。在训练期间,所有图像都被调整为 256*256 分辨率,并且每五次迭代只提供一次人脸图像。
**以前的方法.**我们将我们的方法与分别代表神经风格转移 [20]、图像到图像翻译 [48]、图像抽象 [21] 和图像卡通化 [6] 的四种算法进行了比较。
评价指标在定性实验中,我们展示了四种不同方法和原始图像的细节以及定性分析的结果。在定量实验中,我们使用 Frechet Inception Distance (FID) [15] 通过计算源图像分布和目标图像分布之间的距离来评估性能。在用户研究中,要求考生在卡通质量和整体质量方面对不同方法的结果进行 1 到 5 的评分。更高的分数意味着更好的质量。
**时间性能和模型大小。**四种方法在不同硬件上的速度比较,如表 1 所示。我们的模型在所有设备和所有分辨率的四种方法中是最快的,并且模型尺寸最小。特别是,我们的模型可以在 17.23 毫秒内在 GPU 上处理 720*1280 的图像,这使其能够执行实时高分辨率视频处理任务。
**各种用例的通用性。**我们将我们的模型应用于各种真实世界场景,包括自然景观、城市景观、人物、动物和植物,结果如图 7 所示。补充材料中显示了更多不同风格和不同用例的示例。
卡通表示的验证
为了验证我们提出的卡通表示的合理性和有效性,进行了基于 FID 的分类实验和定量实验,结果如表 2 所示。我们在我们的训练数据集上训练一个二元分类器来区分真实世界的照片和卡通图像。分类器是通过向我们框架中的鉴别器添加一个全连接层来设计的。然后在验证集上评估经过训练的分类器以验证每个卡通表示的影响。
我们发现提取的表征成功地欺骗了训练有素的分类器,因为与原始图像相比,它在所有三个提取的卡通表征中的准确度都较低。计算出的 FID 指标也支持我们的提议,即卡通表示有助于缩小现实世界照片和卡通图像之间的差距,因为与原始图像相比,所有三个提取的卡通表示都具有较小的 FID。
可控性说明
如图 8 所示,可以通过改变损失函数中每个表示的权重来调整卡通化结果的风格。增加纹理表示的权重,增加了图像的细节,保留了草原、石头等丰富的细节。这是因为它调节数据集分布并增强存储在纹理表示中的高频细节。使用更高的表面表示权重生成更平滑的纹理和更少的细节,云和山的细节被平滑。原因是引导过滤平滑了训练样本并减少了密集纹理模式。为了得到更抽象和稀疏的特征,我们可以增加结构表示的权重,将山的细节抽象成稀疏的色块。这是因为选择性搜索算法将训练数据扁平化并将它们抽象为结构表示。总而言之,与黑盒模型不同,我们的白盒方法是可控的并且可以轻松调整。
定性比较
我们的方法与以前的方法之间的比较如图 9 所示。白盒框架有助于生成干净的轮廓。图像抽象会导致轮廓嘈杂杂乱,而其他以前的方法无法生成清晰的边界,而我们的方法具有清晰的边界,例如人脸和云。卡通表现也有助于保持色彩和谐。CycleGAN 会生成变暗的图像,而 Fast Neural Style 会导致颜色过度平滑,而 CartoonGAN 会扭曲人脸和船只等颜色。相反,我们的方法可以防止不正确的颜色修改,例如面部和船舶。最后,我们的方法有效地减少了伪影,同时保留了精细的细节,例如坐在石头上的人,但所有其他方法都会导致过度平滑的特征或失真。此外,CycleGAN、图像抽象和某些风格的 CartoonGAN 等方法会导致高频伪影。总而言之,我们的方法在生成具有和谐色彩、清晰边界、精细细节和更少噪声的图像方面优于以前的方法。
定量评价
Frechet 起始距离 (FID) [15] 被广泛用于定量评估合成图像的质量。预训练的 Inception-V3 模型 [36] 用于提取图像的高级特征并计算两个图像分布之间的距离。我们使用 FID 来评估先前方法和我们的方法的性能。由于 CartoonGAN 模型尚未在人脸数据上进行过训练,为了公平比较,我们只计算了风景数据集上的 FID。
如表 3 所示,我们的方法生成具有最小 FID 到卡通图像分布的图像,这证明它生成的结果与卡通图像最相似。我们方法的输出也具有最小的真实世界照片分布的 FID,表明我们的方法忠实地保留了图像内容信息。
用户研究
图像卡通化的质量是高度主观的,受个人喜好的影响很大。我们进行了用户研究,以展示用户如何评估我们的方法和以前的方法。用户研究涉及 30 张图像,每张图像均由我们提出的方法和之前的三种方法处理。十名候选人被要求按照以下标准对二维中 1-5 之间的每个图像进行评分:
卡通品质 要求用户评估显示的图像和卡通图像的相似程度。
总的质量 要求用户评估图像上是否存在色移、纹理失真、高频噪声或其他他们不喜欢的伪影。
我们总共收集了 1200 个分数,并展示了每个算法的平均分数和标准误差表 4。我们的方法在卡通质量和整体质量方面都优于以前的方法,因为我们在这两个标准中都获得了更高的分数。这是因为我们提出的表示有效地提取了卡通特征,使网络能够合成高质量的图像。我们的方法的合成质量也是最稳定的,因为我们的方法在两个标准中都有最小的标准误差。原因是我们的方法是可控的,可以通过平衡不同的组件来稳定。总而言之,我们的方法优于用户研究中显示的所有先前方法。
每个组件的分析
我们在图 10 中显示了消融研究的结果。烧蚀纹理表示会导致细节混乱。如图10(a)所示,草地和狗腿上的不规则纹理仍然存在。这是由于缺乏存储在表面表示中的高频,这降低了模型的卡通化能力。消融结构表示会导致图 10(b) 中的高频噪声。草原和山上出现严重的椒盐。这是因为结构表示使图像变平并去除了高频信息。消融表面表示会导致噪声和杂乱的细节。图 10© 中出现云的边缘不清晰和草原上的噪声。原因是引导滤波抑制了高频信息并保留了光滑的表面。作为比较,我们完整模型的结果如图 10(d) 所示,它具有平滑的特征、清晰的边界和更少的噪声。总之,所有三种表示都有助于提高我们方法的卡通化能力。
结论
在本文中,我们提出了一种基于 GAN 的白盒可控图像卡通化框架,它可以从现实世界的照片中生成高质量的卡通化图像。图像被分解为三种卡通表示:表面表示、结构表示和纹理表示。相应的图像处理模块用于提取三种表示进行网络训练,通过调整损失函数中每个表示的权重可以控制输出风格。已经进行了大量的定量和定性实验以及用户研究来验证我们方法的性能。还进行了消融研究以证明每个表示的影响。