深度学习中的图像多风格迁移算法
2021-08-02石剑平
李 超,石剑平,姜 麟
(昆明理工大学 理学院,云南 昆明 650500)
0 引言
图像风格迁移又称为图像风格转换,是在保持原图像语义内容不变的情况下,将艺术图像的风格迁移到内容图像上。该操作被广泛应用于社交活动、娱乐应用、户外创作等领域,通过风格迁移可得到新的艺术作品。
早期风格迁移方法为非真实感绘制(Non-photorealis⁃tic Rendering,NPR),其图像渲染方法主要分为以下4 种:笔触渲染[1]、区域渲染[2]、实例渲染[3]和基于图像处理滤波器技术的渲染[4-5]。这些渲染技术虽然能有效对内容图片进行风格化处理,但都是通过原始图像的底层信息完成,并没有利用高层抽象信息。在传统的风格迁移过程中,内容图的风格与语义信息分离是前提条件,也是重点和难点。在深度学习理论被提出后,Gatys 等[6]首次将卷积神经网络应用于图像风格迁移中,并取得了良好效果,解决了传统方法的局限性;Li 等[7]应用拉普拉斯损失增强边缘信息,使细节和轮廓边缘更加明显;Dmitry 等[8]提出一种实时神经网络风格算法;Johnson 等[9]通过引入前馈式传输网络实现了图像的快速风格转换。但上述学者提出的神经网络算法均丧失了原始算法[6]的灵活性,风格迁移网络的目的单一性问题没有被解决,更换风格样式时需要重新训练网络,增加了风格迁移的工作量。
综上所述,目前风格迁移方法局限于单一风格,且当语义信息与风格信息不匹配时容易发生色彩溢出现象。在实际应用中,原始图像的语义信息不同,所要求的风格信息也不同,因此单一风格迁移会导致原图像中所有语义信息均偏向于单一风格,使生成的语义信息被破坏。本文以多种艺术绘画为研究对象,提出一种多风格特点融合的风格迁移算法,将多种风格汇聚在一起得到多风格融合图像。该算法可根据用户需要自由组合艺术图片,为探索新的绘画风格提供了可行性方案。
1 基础工作
自深度学习理论被提出以来,其代表性算法卷积神经网络(Convolutional Nearal Network,CNN)在图像特征提取领域广泛应用并表现出强大性能。CNN 不仅可以提取浅层图像特征,还能很好地捕捉深层抽象特征,为风格迁移提供了更加丰富的原材料。
1.1 CNN 模型
CNN 的本质是多层感知机,其采用的局部链接与全局共享方式,一方面减少了权值数量,使网络更容易优化,另一方面降低了模型复杂度和过拟合的风险。CNN 中的VGG 网络模型包括VGG16 和VGG19[10]。本文选取预训练的VGG19 网络,其由16 个卷积层、5 个池化层、3 个全连接层以及1 个分类层组成[8],网络模型如图1 所示[11]。
Fig.1 VGG19 network structure图1 VGG19 网络结构
CNN 的核心部分为卷积层和池化层。在卷积层中,卷积核会进行局部感知,汇总后可得到全局信息。池化层主要用于特征降维,以便压缩数据和参数数量,减小过拟合风险,提高模型容错性[12]。
1.2 图像特征分析
采用预训练的VGG19 网络得到输入图片的特征图,当图像以数据流的形式传入神经网络时,通过卷积响应得到每一层的响应特征图,根据这些特征图进行图像重建[13]。
针对图2 所示的原始图像,选取神经网络的conv2_1 层和conv4_1 层,通过卷积响应得到这两层的特征图,如图3、图4 所示。结果显示,浅层网络得到的特征图3 与原图像信息吻合度较高,细节信息被很好地保留。但在深层网络中,特征图中的细节像素信息丢失,而高级的、抽象的内容信息被保留下来,如图4 所示。
Fig.2 Original image图2 原始图像
Fig.3 Single feature of conv2_1(left)and summary of feature of conv2_1(right)图3 conv2_1 层单个特征图(左)与conv2_1 层特征汇总图(右)
Fig.4 Single feature diagram of conv4_1(left)and summary of feature diagram of conv4_1(right)图4 conv4_1 层单个特征图(左)与conv4_1 层特征汇总图(右)
量化和精确捕获图像中的抽象风格信息是两个重要的基本问题。在CNN 中,不同的卷积核会得到不同的特征图,不同深度的特征图也会表现不同,每个特征图可抽象为风格信息的一种特征[14]。针对风格信息,本文采用Gat⁃ys 等[6]提出的Gram 矩阵刻画风格。Gram 矩阵是一个对称矩阵,其元素由多个特征图矢量化后进行内积运算定义。通过该矩阵可得到不同特征图之间的相关性,然后根据相关性重建风格。
1.3 评价标准
针对风格转换的效果,本文提出一种新的评价标准:①采用经过训练的分类器提取两幅图像的高级特征,特征之间的欧式距离越小,两幅图像的语义信息相似度越高;②两幅图像在分离器上得到的由特征图组成的Gram 矩阵间的欧式距离越小,两幅图像的风格越相似。
内容判定标准根据图像分类层提出,即一幅图像的语义信息更多的是由图像骨架体现。例如黑熊和北极熊的肤色等纹理信息不同,但其骨骼、躯体形状相同,属于同一类。高级语义信息可以捕获到更加抽象的信息,通过两幅图像高级特征的“距离”可以刻画内容损失情况。
风格判定标准将风格看作一种视觉纹理且在空间上分布均匀,是由重复的结构、色彩等组成的低阶统计度量[15-16]。根据其间的相关性构建出Gram 矩阵,通过比较两幅图像的Gram 矩阵可以刻画风格信息的相似度情况。
定义1:在n 维空间上,两个向量x=(x1,x2,x3,…xn)与y=(y1,y2,y3,…yn)的欧式距离为:
定义2:
通过上述公式可知,两个向量的欧式距离越接近,其代表内容之间的相似度越高。
2 多重风格算法
以CNN 风格转换算法[1]为基础,提出基于深度学习的图像多风格融合算法。利用VGG19 网络提取图像特征,对每幅风格图分别构建风格损失,得到图像损失信息,最后汇聚所有风格信息,得到新的艺术图片[17]。该算法主要分为以下3 个步骤:
(1)内容重建。较深层的网络保留了更高级的语义信息,因此采用CNN 对较深层的特征响应进行内容重建。
(2)风格重建。通过CNN 响应得到不同特征之间的相关性,并构建Gram 矩阵获取图像的风格信息。打乱原风格图的场景布局,构建给定图像的样式匹配。
(3)神经网络风格迁移。构建内容损失函数与多风格损失函数,通过不断优化迭代得到结果图。
定义内容图像C和初始化图像I,将二者捆绑成一个批次输入到VGG19 网络。该网络模型的每一层都会通过卷积的形式对输入图像进行重新编码,得到相应特征图。假设在第l层有Nl个卷积核,可以得到Nl张特征图,每一张特征图的尺寸为H×W,令Ml=H×W,将第l层的特征图信息储存到矩阵Fl∈RNl×Ml中。Fij为第l层第i个特征图上的第j个元素,将较高层的相关特征作为输入图像的内容特征,Fl和Cl分别作为初始化图像和内容图像在第l层的语义信息特征,定义内容损失函数为:
该层损失函数的梯度为:
在VGG19 模型的同一卷积层上可以得到多个不同特征图,见图3 和图4。将不同特征图之间的相关性作为风格图像的特征,采用Gram 矩阵计算特征图之间的相关性,并将得到的Gram 矩阵作为风格信息。Gram 矩阵为Gl∈RNl×Nl,其中Nl为卷积核数量,Glij表示图像在第l层的特征图转成向量后第i个卷积核得到的特征图与第j个卷积核得到的特征图之间的内积值,即:
对于风格图像S和初始化图片I,Gl和Al分别表示风格图像和新生成图像在第l层的风格信息,定义风格损失函数为:
将多层风格损失函数组合在一起,得到该幅图片的风格损失为:
式中,wl为各层对风格损失贡献的权重因子,该损失函数对第l层的响应为:
将内容损失Lcontent与风格损失Lstyle加权联立,可定义总损失为:
根据式(9)构建的风格损失,可通过不断迭代优化得到单风格的新图像[18]。而针对多种风格而言,需分别构建单风格损失,将多个单风格损失函数汇总后再进行多种风格的融合处理,最终形成一组风格特征的损失函数。经融合处理后得到的风格损失为:
式中,αi代表第i种风格的比重。
最终的损失函数为:
式中,Lcontent表示内容图与生成图之间的损失函数,Ltotal_style表示多种风格图与生成图之间的损失函数,γ1和γ2分别表示内容损失与风格损失的函数比重,选择不同的γ12可以控制风格化程度。图5 为图像多风格迁移流程。
Fig.5 Image multi-style migration flow图5 图像多风格迁移流程
3 实验结果与分析
3.1 实验环境
Intel(R)Xeon(R)CPU E7-4809 V3 @2.00GHz 处理器,8GB 内存,配备NVIDIA GeForceRTx 2060 显卡,在Win⁃dows10 操作系统下,配置Python 3.7.1、深度学习框架Ten⁃sorFlow、Keras,使用CUDA 和CuDNN 实现GPU 加速。
3.2 风格结果分析
3.2.1 单风格转换
针对单风格迁移,选取3 张内容图片(金门大桥、摩天大楼、公园)与3 种风格图片(抽象画、油画、山水画)进行风格迁移。在conv4_1 层进行内容重建,在conv1_1、conv2_1、conv3_1、conv4_1 层进行风格重建,设置内容与风格的参数比分别为α/β=10-2、α/β=10-3,得到的生成图如图6 和图7 所示。
Fig.6 Renderings of single style and parameter ratio of 10-2图6 单一风格且参数比为10-2的效果图
Fig.7 Renderings of single style and parameter ratio of 10-3图7 单一风格且参数比为10-3的效果图
单风格迁移结果显示,在一幅图像中有诸多语义信息,无论风格比重是大是小,当内容图片与风格图片的语义信息相似时,转化的视觉感受较好。当内容图片与风格图片的语义信息不相似时,若风格比重较小,艺术风格信息在新图像中表现不明显;而当风格比重较大时,则会出现语义信息与风格信息不匹配的现象,色彩溢出明显[18]。单风格迁移只保留单一绘画风格,无法为艺术形象的多样性提供丰富的视觉信息。
3.2.2 多风格迁移
应用本文提出的算法,将金门大桥作为内容图,选取4种风格图(如图8 的4 个角所示),内容与风格的比值设为γ1/γ2=10-3。设置风格损失中的α1+α2+α3+α4=1,以保证线性同轮,得到如图8 所示的具有渐进风格色彩的新图片。
通过调整风格比重可得到不同的艺术图像,生成的新图像会随着风格比重的变化出现渐进的色彩效果,为艺术创作提供了丰富的原材料。
3.2.3 单风格与多风格损失对比
根据本文提出的新的评价标准,将融合后的新图片与单风格图片进行对比,截取相同语义信息特征,如图9、图10 所示。将截取的特征放入分类网络,在较深层网络计算特征之间的欧几里得距离,在浅层网络计算Gram 矩阵之间的距离,最终得到语义信息相似度与风格信息相似度,如表1 所示。
Table 1 Comparison results表1 对比结果
Fig.8 The multi-style conversion network combining any artistic style图8 可任意组合艺术风格的多风格转换网络
Fig.9 Comparison between the effect of single style and multi-style migration图9 单风格与多风格迁移特征效果对比
Fig.10 Comparison between the effect of single style and multi-style migration图10 单风格与多风格迁移效果对比
由表1 可知,在风格迁移过程中,单风格与多风格的语义信息相似度均超过90%,语义信息得到了很好地保留。风格信息相似度数据表明,在风格迁移过程中,不同语义信息拥有了不同的风格信息,色彩分布也更加合理。
除上述对比外,本文还对多风格迁移结果进行了视觉质量的用户评估。邀请10 名图像处理专业人士和20 名非专业人士参与评价,评估单风格图像与多风格图像的视觉质量、色彩丰富度和色彩分布合理性。评估分为3 个等级,分别为好、一般、差,依次用5 分、3 分和1 分表示,计算出每一种样式的平均分。评估人员给出的分数统计结果如图11 所示。
Fig.11 Average assessment scores given by assessors图11 评估人员给出的分数平均值
本文提出的多风格融合算法解决了单一风格中色彩单一和色彩溢出问题,一方面提取多种风格图的特征共同作用,以填补内容图中的特征空缺;另一方面抑制了色彩溢出,使色彩分布更加合理。在总体风格方面,该算法具有更加丰富的艺术特点,为新的艺术创作提供了借鉴。
4 结语
本文以不同风格图作为研究对象,提出了基于深度学习的图像多风格融合算法。与单风格转换算法相比,本文算法在很好地保留内容图片语义信息的同时,实现了多风格图的风格迁移,可在单幅艺术图像中看到多种风格信息,增加了色彩丰富度,使色彩分布更加合理,特征转换效果良好。但该方法也存在以下问题:一是风格迁移时间较长,二是在内容图片与风格图片语义信息相差较大时存在边缘扭曲现象。为解决上述问题,后续计划应用最新的生成对抗网络方法[19]进行深入探索与研究。