APP下载

基于卷积神经网络的蜡染染色模拟

2020-05-21智,徐

图学学报 2020年2期
关键词:风格化蜡染染色

黎 智,徐 丹

基于卷积神经网络的蜡染染色模拟

黎 智,徐 丹

(云南大学信息学院,云南 昆明 650504)

蜡染是中国少数民族的传统技艺,广泛流行于中国西南地区。蜡染模拟是针对布料染色进行模拟,主要有裂纹模拟和布料染色模拟2个关键工作。此前的蜡染染色模拟方法只能进行单色染色,且对晕染模拟效果不明显。因此,提出一种基于卷积神经网络的蜡染多色染色方法。首先,使用基于距离变换的方法生成裂纹,并对裂纹的形状进行修正;然后,使用图像标注软件Labelme对图像特定区域进行手动分割,以方便之后对其进行染色;最后,使用PhotoWCT算法对图像的特定区域进行染色,并利用内容图中的像素相似性来平滑染色后的结果,使结果更接近真实的蜡染图像。实验结果表明,该方法能针对图像进行多色染色模拟,且在晕染效果方面较之此前的方法有明显提升,更接近于真实蜡染图像。

蜡染染色;距离变换;图像分割;PhotoWCT算法;晕染

蜡染是一种具有独特装饰效果、色底白花的印染品。《贵州通志》对蜡染的解释是:“用蜡绘画于布而染之,即去蜡,则花纹如绘”。在西南少数民族地区,人们崇拜自然界的万物和鬼神,因此,将图案印在自己的身上,不仅具有审美的功能,还能够表达人们对自然的崇拜和敬仰。但是,传统手工印染技术生产效率低、污染大,因此,蜡染模拟方法应运而生。

蜡染的特点主要体现在冰纹和布料染色特征上。浸染中,蜡层开裂,染料随之渗入形成冰纹,其具有独特的粗细、曲度、交叉、分布、形态等视觉特征。蜡染常用棉线纺布,由于纺线的交叉、重叠,产生了晕染、矩形织纹和边缘梯度变化的布料染色特征。蜡染作品主要组成部分为图案、冰纹和布料染色,在计算机模拟中,主要对冰纹和布料染色效果进行模拟。蜡染图像的基本生成过程如图1所示。

图1 具有不同风格或特征的示例图像

近年来,随着深度学习的兴起,卷积神经网络(convolutional neural networks, CNN)强大的特征提取能力受到了广泛关注,进而在计算机视觉领域得到广泛的研究,取得了很多应用层面的成果。如喻扬涛等[1]提出的蜡染染色算法只能针对单一布料或单一颜色;而GATYS等[2]、ZHANG和DANA[3]提出的将深度卷积神经网络应用于风格迁移方面的方法能够将一种甚至多种风格迁移到内容图上。本文针对蜡染布料染色这个关键工作采用深度卷积神经网络进行模拟,并与真实的蜡染作品进行比较,以此证明深度卷积神经网络在蜡染风格模拟研究上的可行性。

1 相关工作

1.1 图像裂纹生成

裂纹生成是蜡染模拟的第一步,主要包括2种方法:①基于物理建模:TERZOPOULOS等[4]引入公共图形(graphics community)方法模拟弹性和非弹性物体的形变及裂纹,NORTON等[5]提出了弹簧质点(mass-spring)模型进行固体裂纹仿真;②基于非真实感绘制(non-photorealistic rendering,NPR):JIN等[6]提出了基于图形处理器(graphics processing unit,GPU)的交互式大理石裂纹设计系统,LU等[7]采用了封闭形式的数学方法模拟裂纹,喻扬涛和徐丹[8]提出基于漫水思想的距离变换算法提高了裂纹生成效率。

1.2 艺术风格迁移

随着深度学习的开展,在非真实感绘制(non-photorealistic rendering,NPR)研究领域,对艺术风格图像进行仿真模拟的研究在不断深入。EFROS和FREEMAN[9]提出了以区块为基础的纹理合成算法,ZHAO等[10]提出了基于风格感知的图像克隆算法均被应用于图像风格迁移领域。

基于深度学习的图像风格迁移的方法主要包括2种:①基于图像迭代:文献[2]提出利用CNN进行图像艺术风格迁移,其迁移效果较先前的迁移算法有了长足的进步,LI和WAND[11]提出了结合马尔可夫随机场(Markov random fields,MRFs)和CNN的图像合成算法,YIN[12]提出基于内容感知的神经风格迁移算法;②基于模型迭代:JOHNSON等[13]提出了基于感知损失的实时风格迁移算法,ULYANOV等[14]提出了基于图像纹理的神经网络模型,以前馈传播的方式进行纹理合成和图像风格化,ZHANG和DANA等[3]提出了多风格的实时风格迁移网络。

图像风格迁移应用于蜡染模拟则主要针对于布料染色。在布料染色方面,刘世光等[15]对布料上污渍效果进行模拟,MORIMOTO和ONO[16]对日本扎染的织纹进行模拟,喻扬涛等[1]对平织纹棉布料进行单色模拟。

通过对上述算法的比较,本文采用基于CNN的方法对蜡染染色进行模拟。首先,为了生成更加逼真的蜡染裂纹,使用漫水标记变换算法(flood identity transform,FIT)[8]生成裂纹,并通过添加高斯噪声对裂纹的形状进行扰动,使得到的裂纹更接近于真实的蜡染裂纹;然后,为了分割出内容图和风格图中的特定区域,对图像中所需要的区域使用图像标注软件Labelme[17]进行分割,使图像中的特定区域得到自定义的标签,以便将风格图中的指定颜色染色到内容图的指定区域;最后,为了使结果图中的线条不扭曲且图案边缘不生成结构伪影,使用照片级增白和着色变换(photo whitening and coloring transform,PhotoWCT)算法[18]对图像进行染色,并通过像素相似性对染色后的结果进行平滑,使生成图像更具有真实蜡染图像所具有的特征。

2 蜡染染色模拟

本文以CNN为蜡染染色模拟的主要理论基础,并将其分为3个处理阶段:图像的裂纹生成、语义分割和染色模拟。将前一阶段的输出作为后一阶段的输入,依次完成每一阶段的工作,最终得到蜡染染色结果。具体过程如下:首先,对内容图使用基于距离变换的方法生成裂纹;然后,对风格图和加了裂纹的内容图使用Labelme进行分割;最后,使用PhotoWCT算法将风格图的颜色迁移到内容图上。其框架流程如图2所示。

图2 蜡染染色模拟流程图

2.1 图像裂纹生成

本文在裂纹生成模拟中,采用文献[8]提出的基于距离变换的方法得以实现。先对盖蜡区进行距离变换,变换后的结果用于产生裂纹种子点以及确定裂纹的生长方向。距离变换完成后,随机产生种子点,并由其开始沿2个相反的方向生成初始裂纹。之后,经过形态修正,以单像素裂纹轮廓的形式存储。

2.1.1 距离变换

首先,设输入图像为,盖蜡区为,盖蜡区边缘和裂纹为,旧裂纹和边界处张力为零。因为张力与距离有关,可用距离代替张力,因此求中任一点至距其最近裂纹的距离,即

其中,()的计算仅限盖蜡区。为了体现裂纹的宽度特征,还需记录年龄。()初始化为

然后使用FIT算法进行距离变换。在该算法中,初始化先进先出队列,取得最新生成裂纹编号,其上所有点入列,()=;队首元素出队,对Î(),若()+|–|<(),则()=()+|–|,()=(),入队;若非空,转上一步,若为空,算法结束。

在FIT算法[8]中,新裂纹的产生只对其附近像素的距离产生影响,裂纹越短,影响的像素越少。在图3的距离图中,红色线条为裂纹,橙色框内为新裂纹生成后,距离值将发生改变的区域。

图3 新裂纹对距离值的影响

2.1.2 裂纹生成

当单条裂纹生成时,首先利用随机算法找到一个种子点,然后从该点进行生长,到达旧裂纹时停止。当裂纹数量达到要求时,算法终止。

图4 冰纹生成结果

2.1.3 裂纹视觉特征控制

使用参考宽度()、密度()、随机度()控制裂纹的视觉特征。其中,()为不考虑年龄时裂纹的宽度;()为单位面积分布的裂纹数量;()为冰纹的摆动幅度。另,因为交点加粗程度与到交点距离cross()及到裂纹距离()有关,所以交点复合距离为

其中,plr为点线比,控制交点的加粗程度。图5为不同plr值对交点加粗的影响,可以看出,plr值越大,交点加粗现象越明显。

2.2 图像语义分割

图像语义分割可以采用全卷积网络(Fully convolutional networks,FCN)[19]等自动分割的算法实现。但由于本文的内容图是白描图,自动区域分割算法不适用。同时为了满足一幅图多颜色蜡染的目的,同一语义部分可能需要晕染不同的颜色;另外,风格图只需分割其中特定的部分,而无需进行完全分割。因此,自动分割算法无法满足上述特殊的分割要求。本文选择Labelme[17]对内容图和风格图进行语义分割,界面如图6所示。Labelme是基于LabelMe[20]改进的一个图形界面的图像标注软件,其使用Python语言编写。其可用于目标检测、图像分割、图像分类等任务,还可以对视频进行标注,生成VOC或者COCO格式的数据集。

将内容图和风格图分割成既定的部分,然后将其中需要相对应的部分定义为相同的语义标签,如将图7中绿色部分均定义为标签“1”,在后续的染色过程中,将风格图中对应风格分割图中标签为“1”的部分的色彩传输到内容图中对应内容分割图中标签为“1”的部分。分割后的图像保存为JSON格式,使用命令labelme_json_to_dataset将JSON文件转为一组图像和标签文本文件。

图6 Labelme分割界面

图7 分割图

2.3 图像染色模拟

2.3.1 图像风格化

将内容图和风格图进行语义分割和标注处理后,需要对内容图进行染色,即风格化。图像风格化步骤可以通过风格迁移算法增白和着色变换(whitening and coloring transform,WCT)[21]来实现。该算法在图像特征空间中,将内容图的特征和风格图的特征进行整合(编码),再通过一个通用的解码网络将整合的特征进行解码,进而产生风格化后的图片。WCT算法不需要针对某一种特征图进行训练,可以使用任意风格图对内容图风格化。但是,该算法会产生结构伪像,在应用于蜡染染色中会使内容图中的图案边缘扭曲,如图8(c)所示。因此,本文考虑基于WCT算法改进后的PhotoWCT[18]算法。

在WCT中,首先构建一个用于一般图像重建的自动编码器网络。在该网络中,采用VGG19模型作为编码器E,对图片进行编码,并保持编码器的权重不变,然后设计解码网络,采用像素重建损失和特征损失训练解码器D,以重建输入图像。编码器与解码器对称,使用上采样层来放大特征图的空间分辨率。训练了自动编码器之后,在网络瓶颈处插入一对投影功能,白化变换P和着色变换P来实现风格化。WCT的关键思想是通过2个投影将内容图像的特征相关性与风格图像的特征相关性直接匹配。即,给定一对内容图像I和风格图像I,WCT首先提取其矢量化特征H=(I)和H=(I),然后转换内容特征H,即

图8 WCT与PhotoWCT对比图

在PhotoWCT中,为了更好地保留局部细节,解码器需使用上池化层代替上采样层,并加入池化掩码以记录相应池化层中每个最大池化区域的最大值,即

2.3.2 图像风格平滑

经过风格化后的图像仍然不像蜡染图像,如图8(d)所示,因为语义相似的区域通常风格化不一致,所以利用内容图中的像素相似性来平滑风格化后的结果。

图9 网络结构图

图10 δ值与平滑结果的关系

式(6)是基于图表的排名算法,在排名算法中,是二进制的输入,其中每个元素指示特定项是否查询。在该方法中,为风格化的结果,最优解是基于成对像素拟合的的平滑版本,对语义相似区域的风格化的一致是有利的。该优化问题是一个简单的二次问题,采用封闭形式的解决方案为

由于构造的通常是稀疏图,因此可以高效地计算上式的逆运算。即整个平滑步骤可以写为

2.3.3 相似性矩阵计算

为了计算相似性矩阵,一般选用高斯相似性(Gaussian affinity,GaussianAFF)

其中,II为相邻像素,的RGB值;为全局缩放超参数。对于具有相似颜色的相邻像素,相似性很高,当色差远大于时,相似性接近于零。在实践中值是很难确定的,其会产生过度平滑(图11(d))或风格化不一致(图11(e))的结果。因此,为了避免选择全局缩放超参数,使用抠图相似性(matting affinity,MattingAFF)[22]

蜡染染色模拟的过程如图12所示。其中,从图12(d)可以看出,为了避免结果的色彩过于杂乱,仅选取风格图中的部分颜色对内容图进行晕染,为了得到更佳的体现晕染效果,在风格图中选取的图形部分均较小。

图11 GaussianAFF与MattingAFF对比图

图12 蜡染染色模拟的过程

3 实验与分析

3.1 数据库及实验设置

为了验证本文算法的有效性,在Linux+ Windows环境下进行实验。实验设备配置:操作系统Ubuntu 16.04LTS、Windows 7专业版,处理器Intel(R) Core(TM) i7-6700 CPU@3.40 GHz,内存8 GB。其中,裂纹生成在Visual Studio 2019中实现,语义分割阶段在PyQt+Python环境下实现,风格化阶段在pytorch+Python环境下实现。

本文染色阶段所使用网络,采用VGG19模型中的conv1_1到conv4_1作为编码器E,编码器的权重由ImageNet预训练给出,解码器D是编码器的逆,解码器的详细配置见表1。通过使用Microsoft COCO数据集最小化2重建损失和感知损失来训练解码器,采用WCT中提出的多级风格化策略并将PhotoWCT应用于不同层中的VGG特征。

表1 解码器配置表

3.2 实验效果图分析

图13为使用语义分割和未使用语义分割的染色图像及局部放大效果图。从图13(a)可以看出,未使用语义分割直接染色出现的色彩杂乱无章,不符合实际蜡染的效果。而从图13(b)可以看出,使用语义分割后再进行染色,出现的色彩有序,更符合视觉效果及实际蜡染效果。

图13 语义分割与染色结果的关系

图14给出了使用文献[1]算法和本文算法染色后的图像及局部效果放大图。从图14(a)和14(b)对比可以看出,使用文献[1]算法晕染效果没有使用本文晕染效果好。从图14(c)可以看出,使用文献[1]算法若想得到较好的晕染效果则无法同时对背景进行染色,而从图14(d)可以看出,使用本文提出的算法可以在保证前景晕染效果较好的同时对背景也进行染色。从图14(e)可以看出,若使用文献[1]算法进行多色染色,则无晕染效果,而从图14(f)可以看出,使用本文算法可以进行多色染色且晕染效果较好。

蜡染染色模拟的实验结果及对比如图15所示。可以看出,文献[1]算法更适合表现传统的单色蜡染,而本文算法更能表现现代的多色蜡染效果。

虽然本文算法在一些输入样本中能取得较好的模拟结果,但也存在一些质量较低的结果。如图16所示,本文算法所得结果几乎无晕染效果,主要是对风格图分割时所选取的区域过大造成的。因为内容图本身是由一些较小的图形所组成的,为了保留这些小图形,因此内容图被分割的较小,若风格图被分割的过大,可能导致风格图中的颜色特征不能较好的在内容图中所体现。

图14 文献[1]算法与本文算法结果

图15 蜡染染色模拟实验结果

图16 质量较低的蜡染染色模拟结果

4 结束语

针对现有算法只能模拟传统的单色蜡染,且无法较好地模拟真实蜡染的晕染效果,本文提出了基于CNN的蜡染多染色模拟方法。该方法利用图像标注软件Labelme对图像进行语义分割,对图像的所需区域进行标注,使染色过程更具有针对性,避免了生成的染色结果出现杂乱的颜色,具有更好地视觉效果;利用PhotoWCT算法对内容图进行染色并平滑,使最终获得的染色结果更贴近真实的现代多色蜡染,且较好地模拟了真实蜡染图像的晕染效果。实验结果表明,使用本文算法染色后的图像,能得到较好的接近真实蜡染图像的结果。但是,该算法仍存在不足之处,如无法较好地模拟真实蜡染所具有的矩形织纹、边缘梯度变化效果,这些将是今后的工作中需要进一步研究解决的问题。

[1] 喻扬涛, 俞振璐, 钱文华, 等. 基于扩散的蜡染染色模拟[J]. 系统仿真学报, 2018, 30: 2117-2124.

[2] GATYS L A, ECKER A S, BETHGE M. Image style transfer using convolutional neural networks[C]//IEEE Conference on Computer Vision and Pattern Recognition. New York: IEEE Press, 2015: 2414-2423.

[3] ZHANG H, DANA K J. Multi-style generative network for real-time transfer[EB/OL]. [2019-07-28]. https:// arxiv.org/abs/1703.06953.

[4] TERZOPOULOS D, PLATT J, BARR A, et al. Elastically deformable models[J]. Computer Graphics, 1987, 21(4): 205-214.

[5] NORTON A, TURK G, BACON B, et al. Animation of fracture by physical modeling[J]. The Visual Computer, 1991, (7): 210-219.

[6] JIN X G, CHEN S C, MAO X Y. Computer-generated marbling textures: a gpu-based design system[J]. IEEE Computer Graphics and Applications, 2007, 27(2): 78-84.

[7] LU S F, JAFFER A, JIN X G, et al. Mathematical marbling[J]. IEEE Computer Graphics and Applications, 2012, 32(6): 26-35.

[8] 喻扬涛, 徐丹. 蜡染冰纹生成算法研究[J]. 图学学报, 2015, 36: 159-165.

[9] EFROS A, FREEMAN W. Image quilting for texture synthesis and transfer[C]//Proceedings of the 28th Annual Conference on Computer Graphics and Interactive Techniques. New York: ACM Press, 2001: 341-346.

[10] ZHAO Y D, JIN X G, XU Y Q, et al. Parallel style-aware image cloning for artworks[J]. IEEE Transactions on Visualization and Computer Graphics, 2015, 21(2): 229-240.

[11] LI C, WAND M. Combining markov random fields and convolutional neural networks for image synthesis[C]// IEEE Conference on Computer Vision and Pattern Recognition. New York: IEEE Press, 2016: 2479-2486.

[12] YIN R. Content aware neural style transfer[EB/OL]. [2019-07-25]. https://arxiv.org/abs/1601.04568.

[13] JOHNSON J, ALAHI A, LI F F. Perceptual losses for real-time style transfer and super-resolution[C]// European Conference on Computer Vision. Heidelberg: Springer, 2016: 694-711.

[14] ULYANOV D, LEBEDEV V, VEDALDI A, et al. Texture networks: feed-forward synthesis of textures and stylized images[C]//International Conference on Machine Learning. New York: ACM Press, 2016: 1349-1357.

[15] 刘世光, 陈国军, 杨鹏, 等. 布料上污渍效果的真实感模拟[J]. 计算机辅助设计与图形学学报, 2008, 20(9): 1110-1116.

[16] MORIMOTO Y, ONO K. New cloth modeling for designing dyed patterns[C]//ACM Siggraph Asia 2010 Posters. New York: ACM Press, 2010: 11.

[17] Baidu. Labelme[EB/OL]. [2019-07-28]. https://github. com/wkentaro/labelme.

[18] LI T J, LIU M Y, LI X T, et al. A closed-form solution to photorealistic image stylization[C]//European Conference on Computer Vision. Heidelberg: Springer, 2018: 468-483.

[19] LONG J, SHELHAMER E, DARRELL T. Fully convolutional networks for semantic segmentation[C]// IEEE Conference on Computer Vision and Pattern Recognition. New York: IEEE Press, 2015: 3431-3440.

[20] Baidu. LabelMe[EB/OL]. [2019-06-30]. http://labelme. csail.mit.edu.

[21] LI Y, FANG C, YANG J, et al. Universal style transfer via feature transforms[C]//Neural Information Processing Systems. Cambridge: MIT Press, 2017: 385-395.

[22] LEVIN A, LISCHINSKI D, WEISS Y. A closed-form solution to natural image matting[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2008, 30(2): 228-242.

Batik dyeing simulation based on convolutional neural network

LI Zhi, XU Dan

(School of Information Science & Engineering, Yunnan University, Kunming Yunnan 650504, China)

Batik, a traditional art of the Chinese ethnic minority, is widely popular in southwest China. The Batik simulation mainly includes two major tasks: crack simulation and fabric dyeing simulation. In this paper, we mainly focus on fabric dyeing simulation. Previously, the method of Batik dyeing simulation can only perform monochromatic dyeing, and the simulation effect of self-dyeing is not obvious. Thus, a multicolor batik dyeing method based on convolutional neural network is proposed. To begin with, the crack was generated by the method based on distance transformation and then the shape of the crack is modified. Furthermore, we used Label me to segment the specific areas of the image manually, which facilitated the subsequent coloring. Finally, the PhotoWCT algorithm was applied to dye the specific regions of the image, and then the pixel affinities in the content map were used to smooth the dyed result. In this way, the result obtained is closer to the real Batik image. The experimental results indicate that, the method proposed in this article is applicable to multicolor dyeing simulation. In addition, this method is superior to the previous method in terms of sfumato effect.

batik dyeing; distance transform; image segmentation; PhotoWCT algorithm; sfumato technique

TP 391

10.11996/JG.j.2095-302X.2020020196

A

2095-302X(2020)02-0196-08

2019-10-01;

2020-01-06

国家自然科学基金项目(61540062,61761046);云南省教育厅科学研究基金产业化培育项目(2016CYH03);云南省“云岭学者”计划项目(YNWR-YLXZ-2018-022)

黎 智(1995-),女,云南宣威人,硕士研究生。主要研究方向为非真实感绘制、语义分割。E-mail:zli0605@163.com

徐 丹(1968-),女,云南昆明人,教授,博士。主要研究方向为基于图像的建模和绘制、非真实感绘制、图像处理与理解、虚拟现实、多媒体等。E-mail:danxu@ynu.edu.cn

猜你喜欢

风格化蜡染染色
无限路及其笛卡尔积、直积的孪生α-距离边染色
基于深度神经网络的图像风格化方法综述
蜡染的纹饰探讨
贵州蜡染的审美特征及其创新应用
节水染色和非水介质染色技术的研究进展
若干Mycielski图的邻点扩展和可区别全染色
蜡染及扎染图案的风格与印染技法
马丽蜡染作品
修拉的点的可能性与不可能性
两类图的b—染色数和研究