符 涛 陈昭炯 叶东毅
(福州大学计算机与大数据学院 福州 350108)(1746098280@qq.com)
中国画简称“国画”,是我国传统的绘画形式.山水画是国画的一个重要分支,以山川等自然景观为主要的绘制题材.如何对山水画进行计算机仿真在图像处理领域一直是一个富有挑战性的课题.随着深度学习的快速发展,将其用于中国山水画仿真已经成为一个新兴的研究方向[1].近期有相关工作[2-4]基于语义标签图生成完整的仿真山水画,而本文则思考山水画仿真中的一个新问题:输入一幅山水画,如何构建一个仿真系统使之能够模拟山水画的绘制特点和布局结构进而自动外推出山水画边界外的内容,输出一幅笔触形态过渡自然、语义内容连贯多样、画面视野更加开阔的中国山水画?本文称该问题为画作外推问题.该研究有助于历史画作的残卷分析、基于画作风格的再创作、辅助画家进行构思等工作,并可应用于艺术教育、广告宣传、影视等领域.
画作外推是受到图像外推的启发而提出的研究问题.图像外推是指给定一幅无损完整图像,相关方法分析图像边界的轮廓信息及语义内容特征继而延伸扩充原图的过程.由于图像外推的对象是摄影照,属于真实感图像,外推的内容需要对人眼产生逼真且自然的效果,因此图像外推的任务是具有挑战性的.山水画外推与图像外推不同之处在于其外推内容是山水画,属于非真实感图像.非真实感图像具有画家独特的笔触形态和精心设计的布局结构,其间融入了画家丰富的思想情感,并赋予其复杂的高层次语义信息,以此留下美好的想象空间和视觉享受,与真实感图像追求的“极致细节、惟妙惟肖”不同的是,山水画外推更加强调艺术真实感[5].
迄今为止,针对山水画外推研究尚未见到公开的文献报道,相关研究主要是面向真实感图像的外推,其方法主要以深度学习为主,比较典型的思路是通过生成对抗网(generative adversarial network, GAN)[6]来建模实现的.2018年,Sabini等人[7]提出了一种基于GAN的对抗学习方法来预测图像边界之外的内容.该网络采用生成器和鉴别器的组合,生成器用于生成虚拟的外推图像,训练过程中鉴别器用于鉴别生成的外推图像和原图像是否一致以帮助生成器生成符合原有图像分布的外推图像.该方法能够粗略地外推简单自然场景图像,这表明将对抗学习方法应用于图像外推是可行的;2019年,Guo等人[8]提出了一种基于结构感知和视觉注意力机制[9]的图像外推策略,该外推方法包括粗推和精推2个过程,分别进行结构感知性粗略外推和视觉注意性精细外推,该网络可以预测输入图像外推部分的全局结构,但难以生成与输入图像结构风格一致的外推图像且无法获得具有合理边界细节的真实感结果;2019年,Lin等人[10]提出了CoCo-GAN模型,其中生成器以空间坐标为条件,通过部件生成图像;鉴别器通过全局一致性、局部外观和边缘交叉连续性来鉴别外推图像和真实图像,该网络能够感知坐标,将多个已知小块图像互不重叠的拼接在一起生成大块图像,也即完成一种图像外推,但存在训练过程中难以生成完整的图像以及生成图像的局部结构会带有较多斑驳等问题;2019年,Teterwak等人[11]将图像修复方法应用于图像外推,发现外推图像会产生语义不一致的模糊现象,于是在修复网络中引入了语义条件,加强网络对外推图像的语义内容鉴别,该方法在简单自然场景图像中可以取得较好的效果,但对一些复杂场景图像的外推表现得却不够理想;2020年,Zhang等人[12]提出了一种图像外推方法,将注意力机制应用于外推网络结构,并引入了2阶段网络来提高图像生成的质量.该方法较以往的外推方法生成的外推图像在视觉上更为真实,但在局部上仍然会产生扭曲或模糊的现象;2020年,Kasaraneni等人[13]研究了基于GAN的图像修复的相关工作,发现修复网络不能很好地应用到图像外推,反之亦然,故提出了一种既能用于图像修复又能用于图像外推的方法,该方法在全局上可以外推出比较合理的图像结构,但在局部上仍然会产生扭曲或马赛克的现象;2020年,Hoorick等人[14]在研究前人的图像外推方法之后,认为GAN在延伸图像边界方面有较强的潜力,于是借鉴图像修复网络的模型结构设计出一个上下文编码器和一个鉴别器,并将其作为对抗网络的博弈双方以完成图像外推.同时,还将L2正则化项作为损失函数的一部分以提高上下文编码器的生成图像质量,该方法可以基本学习到图像的浅层特征,但外推方式仅仅是简单的复制黏贴;2021年,Wang等人[15]提出了一种基于草图引导的图像外推方法,允许用户获得个人定制的外推结果.该方法首先采用整体对齐模块使得外推部分逼近全局视图;其次,利用草图对齐模块使得外推部分反向生成的草图与训练时提供的草图一致.通过草图指导的方式,生成器会更加关注细节,并对指导草图敏感.该方法需要借助草图标签安排好整个图像全局尺度上的布局,生成结果在多样性方面表现欠佳.
从以上分析可知,基于生成对抗网的图像外推方法具有可行性和一定的效果,但外推结果会产生语义内容不一致的扭曲、模糊、斑驳以及马赛克等现象,并且上述工作主要是针对自然场景摄影照片进行的,未涉及山水画独有的纹理结构和布局特点.中国山水画是对自然山水的抽象和艺术化的表达,落笔前要勾勒出山水画大致的轮廓,安排好全局尺度上的布局;后续山石、云水和植被是山水画的3个主要构成因素,其中又以山石为重,画家构造多种皴法来表现山石纹理特征及其植被形态,这是第2个尺度上的描绘;最后还会对山水画进行细节上的点缀、局部线条的丰富,这是小尺度上的细化.由于中国山水画这种布局和多尺度的艺术表现手法与自然摄影照片有很大的不同.因此,要实现山水画外推的关键是如何加强对山水画布局特征和不同尺度语义信息的学习和模拟,使得山水画外推部分既和原有内容语义相关联,又能符合山水画的布局特点,同时在不同尺度语义内容表现上更合理、自然.
本文针对山水画外推这一新问题,提出了一种可以模拟画家的绘制特点和布局结构、实现大幅画作生成的中国山水画外推算法.算法基于GAN的框架,设计并训练了一个新的双向解码特征融合网络(bidirectional decoding feature fusion generative adversarial network, BDFF-GAN),主要包含以下2个方面的工作:其一,提出了一种新的双向解码特征融合生成器UY-Net.UY-Net在现有U型网络(U-Net)生成器[16]的基础上增设了一个多尺度解码器,增强了不同尺度特征之间的连接交融,同时每一层双向解码的结果还通过条件跳跃连接进一步相互融合,以利于山水画不同尺度的语义特征和纹理特征的传递与学习;其二,设计并采用了全局鉴别器和局部鉴别器[17]相结合的鉴别器网络结构.全局鉴别器将整幅山水画作为输入来控制外推结果的全局一致性,局部鉴别器将山水画边界周围的小区域作为输入来提高布局结构的连贯性和小尺度内容的生成质量.
实验结果表明,本文算法生成的外推山水画能较好地模拟山水画的笔触形态、布局结构等多尺度内容,不仅能够保持语义的连贯性,还可以在不同语义内容间进行合理的过渡,特别是在多次递归外推的结果上有比较明显的体现.此外,本文还设计了一种新的用户交互方式以实现布局可控的外推效果,该方式通过边界引导线的方式控制外推部分的轮廓走向,扩展了上述BDFF-GAN网络的生成多样性和应用互动性.
本文算法的工作流程如图1所示,用户输入一幅山水画,经过本文训练的BDFF-GAN网络,外推出山水画左右2边界外的内容,输出一幅笔触形态过渡自然、语义内容连贯多样、画面视野更加开阔的中国山水画.上述过程完成了山水画的1次外推,将山水画的前一次外推结果再放入本文训练的BDFF-GAN网络,可产生山水画的递归外推结果.算法的核心在于BDFF-GAN网络的结构设计与模型训练.
GAN由Goodfellow等人[6]在2014年提出,该模型由生成器和鉴别器2个模块构成,鉴别器计算样本来自真实训练数据的概率,生成器生成新样本来骗过鉴别器,生成器和鉴别器相互博弈,最终使得生成器能够生成符合训练数据分布的新样本.正如引言所述,基于GAN的图像外推方法对摄影照片的外推具有可行性和一定的效果.有鉴于此,本文借鉴GAN的思想设计了双向解码特征融合的网络结构BDFF-GAN,完成一幅尺幅较窄的山水画的边界外推,输出一幅图幅较宽、内容协调一致、语义内容过渡自然的山水画.
从输入山水画内核到外推山水画的生成,BDFF-GAN网络模型结构的设计需要考虑3个方面:其一,山水画外推需要维持原图整体的结构统一,所以要根据山水画的整体布局合理生成外推内容,即全局一致性;其二,给定的山水画内核内容需要与外推内容在边界附近具有相似的语义特征和笔触形态,即语义连贯性;其三,在完成从输入山水画到外推山水画的生成后,需要保证外推的内容足够完整、层次足够丰富、笔触特点足够明显,即山水画多尺度内容的自然性.
图2是BDFF-GAN网络的原理图,网络训练输入的是以原作山水画x经过掩码Mask作用后的输入山水画Image和掩码Mask构成的二元组z=Image+Mask(参见图6),双向解码生成器G学习输入山水画Image的布局结构特征和笔触形态等多尺度信息,生成符合输入山水画Image特征分布、轮廓线条勾勒皴擦的外推山水画G(z).鉴别器D从山水画整体布局、局部线条等方面判断生成的外推山水画G(z)是否为原作山水画x,并输出外推山水画G(z)为真的概率值,当该值大于1/2时,鉴别器D认为生成结果G(z)为真;当该值小于1/2时,鉴别器D认为生成结果G(z)为假;当该值等于1/2时,此时生成器G的生成结果G(z)无论是在整体布局还是笔触形态等各方面都非常接近原作山水画x,鉴别器D无法判断生成的外推山水画G(z)是真是假,双向解码生成器G和鉴别器D达到纳什均衡,训练过程结束,获得的双向解码生成器G就可用于外推用户输入的山水画左右2边界外的内容.
Fig. 2 Schematic diagram of bidirectional decoding generator and discriminator of BDFF-GAN图2 BDFF-GAN双向解码生成器和鉴别器原理图
为了保证外推山水画和原作山水画的语义内容、笔触手法等多尺度信息的一致性,本文使用L1正则化项对外推山水画和原作山水画的相似性进行约束.最终本文山水画外推网络损失函数outBDFF-GAN设计为
(1)
其中,Mask代表掩码,x代表原作山水画,z代表原作山水画经过掩码Mask作用后的输入山水画Image和掩码Mask的二元组,G(z)表示生成器生成的外推山水画,D(x)表示x为原作山水画的概率,D(G(z))表示G(z)为原作山水画的概率,λ表示正则系数,‖ ‖1代表L1正则化,∘代表图像像素间的点乘.
上述基于GAN的深度网络结构、改进的双向解码生成器UY-Net、全局和局部相结合的鉴别器以及考虑了内容一致性的损失函数形式,使得本文的BDFF-GAN模型能够较好地满足山水画外推预想的要求.
图5为本文所设计的双向解码特征融合网络结构BDFF-GAN.其中,双向解码生成器UY-Net网络学习和模拟山水画的不同尺度语义内容用于生成外推山水画;鉴别器网络包含一个全局鉴别器和一个局部鉴别器,用于引导双向解码生成器生成的外推山水画在整体布局结构和局部细节上更加接近原作山水画.下面具体分析生成器和鉴别器的设计过程.
Fig. 3 Comparison of differences between landscape photography and Chinese landscape painting图3 山水摄影照与中国山水画的差异对比
正如引言中所述,中国山水画与山水摄影照片不同,在布局和多尺度表达上有着独特的方式和技法.以图3为例,以往用于外推的山水摄影图大多类似图3(a)的形态,布局比较随意自然、山水纹理比较单一,细节层次感不够丰富,因此针对山水摄影照片的外推算法在布局和多尺度表现上无需有较高的要求,就可达到较好的效果;观察图3(b)中的山水画,可以看出山石、云水以及植被的布局错落有致,画面主体为山峰,布局上有着清晰的山形轮廓,其间又采用荷叶皴的技法来体现山的筋脉,同时还夹杂着一些短线条增强岩石纹理,这种整体布局上的艺术性和多尺度的表现方法就需要外推模型考虑更多的因素.
本文正是着眼于此,在生成器的设计方面提出了多尺度关联的跳跃连接方式,同时采用双向解码的方式进行尺度的互补和融合;在鉴别器设计上采用全局鉴别器和局部鉴别器相结合的方式,既考虑在整体布局结构上的学习能力又兼顾局部范围细尺度的特征刻画.
现有GAN的生成器常通过引入一系列的卷积神经网络(convolutional neural network, CNN)[18]来做无监督训练,利用其良好的特征提取能力提升生成网络的学习效果,使得GAN能够在大规模数据上学习到一系列有用的特征.而在山水画的外推问题上,山石、云水、植被等对象就是一系列的结构和语义特征,网络生成的外推山水画需要具备和这些对象特征相似的结构,而不能是其他随意的特征.虽然CNN具备这种特征提取和学习的能力,但是多次的卷积操作会丢失部分山水画较小尺度的结构信息;其次,山水画具有特定的纹理特征和布局结构,山石、云水以及植被等自然景物都是经过画家精心设计的景物造型,被赋予复杂而丰富的高层次语义信息,注重轮廓线条和语义内容之间的一致性,除了保证外推部分不同语义内容之间合理的过渡之外,还要求外推内容的纹理细节和轮廓线条与输入山水画具有相似的粒度感和线条感,因此单纯的CNN结构难以满足这些要求.
2015年,Ronneberger等人[16]提出了对称式的U型长连接U-Net网络模型,该模型采用的是编码器和解码器相结合的网络结构,并在编码器和解码器的同层添加了长连接.这种U型结构的编码器可以捕获训练样本的语义信息;解码器可以对训练样本进行准确定位;中间的长连接能够结合编码器和解码器同层的语义特征,特征提取效果超过了CNN[19-20],不少基于GAN的图像生成模型都采用U-Net网络作为生成器模型.
为了测试U-Net生成器在山水画外推中的性能,本文在GAN网络中将U-Net作为生成器模型用于山水画外推,生成结果如图4所示.可以看出,该网络学习到了山水画的部分语义特征,但在其笔触手法和布局结构上表现得还不太理想,外推部分的植被等尺度较小的对象均存在轮廓和线条呈马赛克的现象,同时两侧的景物布局较为紧凑,整幅山水画失去了艺术真实感.
Fig. 4 Shortcomings of the U-Net generator in the extrapolation of landscape painting图4 山水画外推中U-Net生成器的不足
Fig. 5 Schematic diagram of BDFF-GAN in the extrapolation of Chinese landscape painting图5 中国山水画外推中BDFF-GAN示意图
分析发现,随着网络层数的加深,U-Net网络编码器中多次的卷积和下采样操作会丢失部分结构信息;其解码器每一层融合的编码器同层尺度的语义特征不足以恢复山水画的细节纹理等细粒度特征.因此,为了加强网络对山水画不同尺度语义特征与纹理特征的传递与学习,本文基于尺度增强学习的思路设计了双向解码生成器UY-Net,如图5所示.
UY-Net双向解码生成器是由编码器和解码器2部分构成的.主要设计思路是增强不同尺度特征的传递、学习和交融.
2.3.1 多尺度解码器结构设计
为了加强网络对山水画特征的解码能力和山水画不同粒度的语义特征与纹理特征的传递与学习,本文基于U-Net在解码器部分增设了一个多尺度解码器,构建了横看呈“Y”型的双向解码结构的UY-Net生成网络,如图5所示.Y型双向解码结构在编码器部分增加不同尺度特征层的交叉组合,UY-Net的上分支解码器部分基本保留U-Net原有结构,不同的是每一个解码层都融合了来自下分支解码器部分(多尺度解码器)的内容;多尺度解码器选择编码器相邻不同尺度层的特征进行融合,一系列跨层的短连接和长连接较好地弥补了U-Net解码器跳跃层忽略的信息.这一双向解码结构不仅增强了对原有编码器的解读能力,还有利于加强山水画不同粒度特征在不同层之间的传递与学习.
2.3.2 条件跳跃连接
在UY-Net生成器中,为了加强U-Net编码器和多尺度解码器之间的信息沟通和融合,本文通过设计一个称为条件跳跃连接(conditional skip connection, CSC)的结构来实现,多层细化每个解码尺度所需的山水画特征.与U-Net中的跳跃连接不同的是,CSC既关注编码器的同层信息又关注其前一层特征,用于补充和恢复山水画不同尺度的特征.
例如,图5中U-Net解码器的每一层特征是由同层编码器特征、本层解码器特征、同层多尺度解码器特征所拼接而成.本层解码器特征是对该尺度山水画特征的解读,由于编码器每一层的卷积操作会丢失部分山水画结构信息,因此同层编码器特征可以恢复山水画该尺度的整体结构信息但不足以恢复局部细节信息;而多尺度解码器融合了编码器同层和前一层的山水画特征,使得山水画不同粒度的特征得到一定的补充和恢复.
图5中BDFF-GAN的生成器总共10层,各层卷积核均采用标准的4×4规格,具体参数详见表1.在4.4节的消融实验中可以看出,UY-Net在处理山水画方面与U-Net相比有比较明显的性能提升.
Table 1 Parameters of UY-Net Generator
传统GAN网络模型的鉴别器通常只包含一个全局鉴别器,只能用于判断输入山水画的全局语义信息,但在本文的山水画外推问题中,为了增强山水画的艺术真实感,还需要考虑山水画的轮廓线条和纹理结构等尺度信息.据此,本文在全局鉴别器的基础上增加了一个局部鉴别器,将山水画内核内容与外推内容边界周围的小区域作为鉴别内容来提高整幅山水画小尺度细节内容的生成质量.全局鉴别器和局部鉴别器的结合,加强了全局语义信息和局部细粒度信息的相关性,使得鉴别器网络更倾向于从山水画多尺度信息的相似性来判断图像的真假,提高了外推山水画的质量.
如图5所示,整个鉴别器结构由一个全局鉴别器和一个局部鉴别器组成.全局鉴别器共6层,局部鉴别器共5层,最后全局鉴别器和局部鉴别器通过一个连接层融合输出.鉴别器网络的每一层均采用标准的5×5卷积核,具体各参数详见表2和表3所示:
Table 2 Parameters of Global Discriminator
Table 3 Parameters of Local Discriminator表3 局部鉴别器参数
本文研究的是中国山水画的外推,需要从网络上搜集足够多的山水画来训练BDFF-GAN网络.然而网络直接获取的山水画存在分辨率较低和题字印章等问题,为了得到满足要求的山水画,就需要使用专门的图像处理工具去除山水画数据集中的非自然景观,同时还要删除内容不清晰的画作,最终得到“青绿”“浅绛”“水墨”3种色彩风格的山水画.本文使用的外推网络模型,无论是生成器还是鉴别器,其内核是1个卷积神经网络,如果输入的山水画图像大小不一致,卷积核的感受野获取的信息就会存在差异.因此,本文将数据集中的图像尺寸均调整为128×128像素大小.
Fig. 6 Preprocessing flow chart of Chinese landscape painting图6 山水画预处理流程图
为了促进和稳定BDFF-GAN网络训练过程,本文采用3阶段的训练方式.3阶段训练的损失函数分别如下:L1(x,z)用于约束生成器生成的外推山水画与原作山水画保持一致;LD(x,z)用于鉴别双向解码生成器生成的外推山水画和原作山水画;LG(x,z)用于对抗性地训练双向解码生成器和鉴别器.α是一个权衡L1(x,z)和LD(x,z)的可调超参数,具体公式为:
L1(x,z)=‖Mask∘(G(z)-x)‖1,
(2)
LD(x,z)=-lnD(x)-ln(1-D(G(z))),
(3)
LG(x,z)=L1(x,z)-α·lnD(G(z)),
(4)
第1阶段训练双向解码生成器,根据L1(x,z)损失的变化来更新生成器的权重;第2阶段训练鉴别器,根据LD(x,z)损失的变化来更新鉴别器的权重;第3阶段用于对抗性地训练双向解码生成器和鉴别器,分别根据LG(x,z)损失和LD(x,z)损失的变化来更新双向解码生成器和鉴别器的权重.
本文在Google Colaboratory平台下处理山水画的训练数据,并在预处理后的数据集上训练山水画外推网络BDFF-GAN,Batch的大小为16,训练方式采用的是由生成器优化、鉴别器优化以及生成器与鉴别器对抗优化组成的3阶段训练方式,3个阶段的迭代次数分别为7 000次、4 000次以及1 000次,总计12 000次;网络测试1幅山水画需要花费1.6 s左右的时间.在Tensorflow实验环境下配置GPU Tesla K80,使用Adam优化器,权衡L1(x,z)和LD(x,z)的可调超参数α=0.000 4.
本次实验共获得山水画1 426张,其中包含“青绿”“浅绛”“水墨”3种色彩风格的山水画.其中1 226张用作训练集,剩下的200张作为测试集.
4.2.1 本文算法单次外推结果
单次外推结果主要展示模型在输入山水画近端的学习效果,有原作图像可作比较.图7分别选择了“青绿”“浅绛”“水墨”3种风格的山水画,展示了它们应用本文BDFF-GAN网络的外推效果图.对比原作山水画可以看出,输入山水画的外推部分与原作在内容上是有差异的,网络对测试数据的外推预测不可能与原作完全一致是合理的,虽然内容有差异但是外推部分在笔触手法上较为接近原作,同时空间结构布局较为合理,整幅山水画在语义内容、风格上都保持了较好的过渡性和一致性.表明BDFF-GAN网络在输入山水画近端的学习和外推的效果较好.
Fig. 7 Single extrapolation effect by the proposed algorithm图7 本文算法山水画单次外推效果
Fig. 8 Acquisition of network test data图8 网络测试数据的获取
正如引言所述,山石、云水以及植被是山水画的3个主要绘制内容,为了从客观上评估山水画外推效果,本文首先采用引入Rosenfeld等人[21]提出的粗糙度指标衡量山石、云水以及植被3类绘制内容在外推山水画与原作山水画上的差异.该指标通过计算每个类别像素点水平和垂直方向灰度变化最大邻域的均值差值,以反映类别的纹理信息.3个类别分割图的获取采用了文献[2]提出的语义关联的颜色像素聚类分割方法.
表4展示了外推山水画与原作山水画分别在山石、云水和植被上的粗糙度对比,可以看出本文的外推山水画在纹理的粗糙度上与原作山水画的差异较小,表明本文算法在3类绘制内容上与原作山水画的笔触和纹理结构是相类似的.
Table 4 Comparison of the Roughness Between the Original and the Extrapolated Result in the Three Types of Objects in Fig.7
4.2.2 本文算法递归外推结果
本文算法还可进一步用于山水画的递归外推,将1幅n×n大小的山水画作为输入,通过BDFF-GAN网络,预测其左右2边n×m大小内容,产生n×(n+2m)大小的外推山水画;将前一次外推结果再放入BDFF-GAN网络,产生下一次递归外推结果.递归外推结果展示的是模型对输入图远端的学习和生成效果,更能反映模型对山水画布局规律的学习效果和多尺度信息与布局的融合自然性.
图8展示用于测试的非训练集手绘山水画,以及递推生成中输入图的截取过程.大小为128×128的原作是在手绘山水画中通过下采样得到的,所得数据放入BDFF-GAN网络进行递归测试.图9展示山水画递归外推3次后的效果,其中n=128和m=32.可以看到,图9(a)外推出原作中不存在的内容,图9(b)和图9(c)推出与原作不同的内容,且其语义和笔法都较为一致和自然,表明网络较好地学习到山水画的布局规律以及边界语义特征和轮廓信息,可以较为自然地模拟山水画中山石、云水以及植被等自然景物特征.第1次外推后的语义内容与其相邻部分保持高度一致,即山石连接山石、云水连接云水等;同时,随着递归次数的增加,山水画的外推内容能够在不同语义内容间合理、自然的转换形成错落有致的布局,如图9(b)右侧中的山石过渡到云水等,3次递归外推的结果与输入的山水画相比更加气势磅礴、内容呼应连贯、布局错落有致以及在不同尺度的笔触形态上也能做到统一和谐.
Fig. 9 Recursive extrapolation effect of landscape painting of proposed algorithm图9 本文算法山水画递归外推效果
为公平起见,本文选择比较的论文是已开源的文献[7,11,14],其余相关论文由于未开源暂时无法比较.
4.3.1 单次外推结果对比
本文算法与其他算法的单次外推结果对比如图10所示.可以看出,文献[11]算法的生成结果基本丢失了山水画的语义特征,轮廓信息可以看到马赛克似的图案,整幅山水画基本失去了艺术真实感;文献[7]算法生成结果的景物纹理细节特征较文献[11]算法为好,但仍然存在外推内容不清晰等问题;文献[14]算法有一定的学习山水画特征的能力,但其生成结果在语义内容和纹理细节方面表现得不够理想,外推内容无法完整地体现出山水画的多尺度特点;而本文算法生成的外推山水画不论是在整体布局还是在多尺度特征的效果上都优于前3种算法,更具有艺术真实感.图10中矩形框部分对比效果更明显.
Fig. 10 Comparison of single extrapolation results between the proposed and other algorithms图10 本文算法与其他算法单次外推结果对比
本文采用结构相似性(structural similarity, SSIM)和峰值信噪比(peak signal to noise ratio, PSNR)这2个指标[22]进一步评估本文算法与其他算法的山水画外推效果.SSIM是一种分别从亮度、对比度、结构3方面度量图像相似性的图像质量评价指标,取值范围在0~1之间,其值越大表示图像失真越小,图像质量更好;PSNR常作为一个衡量图像失真的客观标准,其值越大,图像保真性越好.表5展示了本文算法与其他算法的外推山水画与原作山水画之间的SSIM值以及PSNR值.可以看出除了1项PSNR指标外,本文算法较文献[7,11,14]算法更优.
Table 5 Comparison of the Results of the Proposed and Other Algorithms on the Two Indicators in Fig.10表5 本文算法和其他算法结果在图10的2项指标上的对比
Fig. 11 Comparison of the recursive generation effects of the proposed and other algorithms图11 本文算法与其他算法递归生成效果对比
4.3.2 递归外推结果对比
图11展示了本文算法和其他算法3次递归外推后的结果.可以看出,随着递归次数的增加,文献[11]算法生成的递归外推山水画多处语义特征的丢失现象更明显,外推内容越来越模糊,不能在不同语义内容间合理、自然的转换,整幅山水画失去了完整性、连贯性,不仅难以完成布局上的外推,在多个尺度上信息无法生成;文献[7]算法生成结果基本能够合理的过渡,但仍存在外推内容模糊、山水画内容整体不连贯等问题;文献[14]算法基本学习到山水画的一些浅层特征,但在山水画的布局方式和语义内容过渡方面表现较差,其递归外展方式仅仅是机械式的复制黏贴;而采用本文算法在布局和多尺度特征外推上均表现较好,随着递归次数的增加,山水画外推的不同语义内容仍然能保持较好的过渡性和协调一致性,并保证整幅山水画的连贯性,且在不破坏山水画整体性的情况下扩大了山水画的视野范围.图11中矩形框部分对比效果更明显.
本文设计的UY-Net生成器具有双向解码及不同尺度特征融合的特点,为了验证该生成器的效果,在整个算法中仅将生成器模块UY-Net替换为U-Net,进行消融实验对比.
4.4.1 单次外推结果对比
采用UY-Net生成器和U-Net生成器的山水画外推结果如图12所示.可以看出,U-Net生成器基本学习到了山水画的绘制特点与布局方式,但外推内容仿佛披了一层轻纱,其能够填补合理的语义结构但是在视觉上不能取得令人愉悦的感受;而UY-Net生成器融合了山水画不同语义内容特征,以多尺度的方式恢复山水画的纹理、线条等细粒度特征,一定程度上缓解了U-Net生成器所造成的不清晰问题.
为进一步量化这2种方法在生成效果上的差异,本文采用基于图像平均梯度的清晰度指标对比其生成效果.一般而言,图像平均梯度越大,表明图像的层次越丰富、也更清晰.表6展示了2种生成器结果的图像平均梯度值,可以看出UY-Net生成器的生成效果在大多数情况下优于U-Net.
Fig. 12 Comparison of UY-Net and U-Net generator effects图12 UY-Net和U-Net生成器效果对比
Table 6 Comparison of the Clarity of the Two Generators in Fig.12
4.4.2 递归外推结果对比
图13展示了UY-Net生成器和U-Net生成器3次递归外推结果.可以发现,随着递归次数的增加,U-Net生成器的结果靠近外侧的部分逐渐模糊,在不同语义内容间不能很好地保持整幅山水画的协调一致性,多次递归外推后不仅没有增强山水画的艺术真实性,反而破坏了山水画的整体性;而本文设计的UY-Net生成器的外推效果在整体布局和多尺度方面都有较为明显的提升.
Fig. 13 Comparison of recursive effects between UY-Net generator and U-Net generator图13 UY-Net生成器和U-Net生成器的递归效果对比
Fig. 14 Schematic diagram of BDFF-GAN network modeling with adjustable layout图14 布局可调的BDFF-GAN网络建模示意图
上述BDFF-GAN网络在应用时只能输出1幅外推图,缺乏多样性和用户参与的互动性.有鉴于此,本文进一步扩展了网络的交互方式,引入了一种边界弱引导的外推布局可调形式,具体方式是用户给出外推部分的山石边界引导线,网络生成外推图时会以用户给出的线条作为山石部分的边界线,其余部分则由算法自主生成.这种方式即可控制外推部分大致的布局走向,又不至于过度限制网络的外推意向;而对用户而言,仅仅提供简单的线条也不会造成过多的负担,又能在应用中丰富山水画的多样性和趣味性.
使用山石边界线引导外推部分生成是一种有限制的山水画外推问题,本文引入条件生成对抗网(conditional adversarial generative network,CGAN)[23]的思想,把带有山石边界引导线的输入图作为一种条件信息,和BDFF-GAN共同构成布局可调的网络结构,其总体网络结构建模示意图如图14所示.网络训练建模过程中在原有的输入z的基础上,增加了原作山石粗边界作为训练输入,以学习输入图内核的山水画特征以及外推部分的引导线分布,外推出与原作相同笔触形态和山石边界的结果图像.
图15展示了配合不同的边界引导线的同幅输入山水画内核经过已训练好的布局可调BDFF-GAN网络得到的多样化外推结果.可以看出,在输入图边界引导线出现之处,外推图都对应着山脊线或山石轮廓,其余部分则由网络自主推出,表明引导线能够恰如其分地控制布局走向,但又不过多干涉其他外推内容.布局可调的BDFF-GAN网络增加了山水画外推的艺术多样性和交互性.在现实生活中可将其应用在艺术绘画布局构思、仿真创作等方面.
Fig. 15 Diversified extrapolation results of BDFF-GAN network with adjustable layout图15 布局可调的BDFF-GAN网络多样化外推结果
本文基于GAN设计一个新的双向解码特征融合的BDFF-GAN网络,通过此网络可以实现大幅中国山水画的生成.为增强山水画不同尺度特征的传递与学习,在现有U-Net网络的基础上提出一种双向解码特征融合的生成器UY-Net.同时,为提高外推山水画的生成质量,设计并采用全局鉴别器和局部鉴别器相结合的鉴别器网络结构.实验结果表明,本文提出的BDFF-GAN网络能够以多尺度的方式融合山水画的边界语义特征和轮廓信息,较自然地模拟山水画中的不同语义内容、细节特征和笔触形态,保持整幅山水画的语义连贯性和不同语义内容间合理的过渡,且在不破坏山水画整体性的情况下扩大了山水画的视野范围,增强了山水画的观赏效果.虽然本文算法生成的外推山水画相对真实,但仍有需要深入研究和改进的地方,如图9中外推部分与输入部分的清晰度不一致、图7(a)中外推部分瀑布结构的不完整性等问题.此外,本文设计外推边界引导线的交互形式,实验表明能够扩展上述BDFF-GAN网络的生成多样性和应用互动性.后续工作将考虑在网络结构设计方面借助时间卷积网络(temporal convolutional network, TCN)[24]的思想,例如在UY-Net生成器中引入残差网络和门卷积来增强网络学习能力,提升山水画远端的外推效果,并更多地收集不同风格的山水画作,结合图像融合的思想对山水画的长卷生成进行研究;同时,也会借鉴文献[25]提到的基于结构感知的特定目标移除工作,进一步完善本文所设计引导线的功能,以实现更复杂的山水画外推效果.
作者贡献声明:陈昭炯负责收集了重要的背景信息,并组织符涛、叶东毅参与本研究课题的确定;陈昭炯和叶东毅协助符涛进行了数据的采集与处理、实验设计以及实验数据的分析;符涛起草了手稿,陈昭炯和叶东毅对手稿进行修订并确定终稿;全体作者对本研究课题的国内外研究现状进行梳理并确定本课题的研究方法.