Print

发布时间: 2017-07-16
摘要点击次数:
全文下载次数:
DOI: 10.11834/jig.160578
2017 | Volume 22 | Number 7




    图像处理和编码    




  <<上一篇 




  下一篇>> 





线积分卷积与双色调映射相结合的彩色素描模拟方法
expand article info 潘龙1,2, 纪庆革1,2, 陈靖1,2
1. 中山大学数据科学与计算机学院, 广州 510006;
2. 广东省大数据分析与处理重点实验室, 广州 510006

摘要

目的 目前学者已经设计了很多模拟油画、水彩、水墨等风格的非真实感绘制方法,而能够生成彩色素描的算法还不是很多。针对这一课题,在前人工作的基础上,结合线积分卷积与双色调映射技术,改进了一种彩色素描模拟方法。 方法 首先基于K-means聚类对彩色图像进行分割,通过计算色彩差异性为每个区域指定两种基本色,并利用双色调映射技术计算每种颜色的密度。而后利用线积分卷积分别生成两个基本色层的素描纹理,并将两层纹理相融合来生成彩色纹理。与此同时,利用霓虹变换生成素描轮廓线。最后,将轮廓与彩色纹理相融合来得到彩色素描效果。 结果 实验结果表明,本文方法能够实现由彩色图像到彩铅画的自动、实时转化。 结论 本文方法从轮廓和纹理两个角度模拟了真实的彩铅绘画过程。基于K-means聚类的分割方法得到的结果能够更好地反映彩色图像的颜色分布特性。通过色彩差异性计算指定基本色的策略提高了该环节的效率,满足了实时性要求。由于粉笔、蜡笔等绘画风格的调色与彩铅画类似,本文不同颜色层上下叠加的方式可以扩展到对其他介质绘画的模拟当中。

关键词

非真实感绘制; 彩色素描; 双色调映射; 线积分卷积

Color sketch simulation combining line integral convolution with duotones color reproduction technique
expand article info Pan Long1,2, Ji Qingge1,2, Chen Jing1,2
1. School of Data and Computer Science, Sun Yat-sen University, Guangzhou 510006, China;
2. Guangdong Province Key Laboratory of Big Data Analysis and Processing, Guangzhou 510006, China
Supported by: Joint Funds of the National Natural Science Foundation of China(U0735001)

Abstract

Objective Non-photorealistic rendering is a technique which is committed to generate art style works. The goal of this technique is not only to represent the authenticity of graphics but also to simulate their art features, as well as their defects. This concept was first proposed in the 1980s. After years of development, non-photorealistic rendering techniques can simulate a numerous painting styles, including oil paintings, watercolor paintings, Chinese ink paintings, pencil sketches, and cartoons. The sketch is a kind of painting which presents the light and shade of an object by lines. The color sketch is a sketch painted by a small number of color pencils. Except for the light and shade, the color sketch represents color features of an object as well. When painting a color sketch, people follow the monochrome sketch and render different regions with disparate color pencils. People usually need to blend two or more colors to obtain the desired color because the types of pencils are limited. In addition, the color mixing of sketches differs from that of oil or watercolor paintings. Typically, people mix pigments on a palette. However, when doing a color sketch, they directly draw disparate color layers on the paper. The layers of stroke for each color are superimposed and interspersed to build the target color through optical blending. This feature creates a very special kind of texture and color style for the color sketch. Although many people are fond of sketches, mastering the skill of pencil drawing is not easy for everybody. Based on previous works and characteristics of color sketch, combining the duotone color reproduction with LIC techniques, we realized an improved way of generating color sketch. Method First, we fulfilled a monochrome sketch simulation process based on LIC(line integral convolution). On this basis, we realized a new approach for the color sketch generation based on color customization, which can automatically convert a digital image into a colored pencil drawing, by researching on the features of the color sketch and combining with the duotones color reproduction technique. The first step of this method is image segmentation. We use a primary color, as well as a secondary color, to paint each segmented region. Our method can automatically calculate the color set of each particular region. Such kind of color customization can successfully simulate the color mixing of sketch paintings, and it can also be expanded to the simulation of similar painting styles, such as chalk drawing and pastel drawing. In addition, we propose a way to superpose the real paper texture into digital images, which will make the final effect closer to real paintings. We achieve an ideal way to generate improved profile for the color sketch based on neon-transformation because the profile is one of the most important elements. We zoom the color of the original image before generating the white noise, which generates a clear hierarchy for the final effects, to improve the contrast ratio. We also fulfill a new way for image segmentation based on K-means cluster, which obtains suitable segmentation results for the color sketch generation. Result To validate the effectiveness of the proposed approach, we conducted extensive experiments. Experimental results demonstrate that our approach outperforms several state-of-the-art approaches on challenging automatic and real-time transformation from color image to color painting, as well as bridging the gap between them. In contrast to Yamamoto's method, the proposed technique incorporates the idea of hierarchical method and color scale transformation into linear integral convolution with two-tone color sketch mapping technology. As such, we obtain sketch texture closer to a hand-painted effect. Matsui's method can generate a soft texture. However, the entire stroke fusion process is really complicated and time-consuming. Particularly, this method does not consider the sketch contours and could be error-prone to lose structure characteristics of the object in drawing effect. Kim's method extracts basic image feature for sketch generation. This method also has high efficiency and can be well applied to mobile devices. However, this method only considers the contour perspective, thus ignoring the sketch texture effect which often suffers a decrease in accuracy compared to real color sketch. In the comparison of the two approaches, the proposed method considers contour and texture. Simulating color image from the contour and texture aspects helps in issuing object characteristics preservation and preventing potential unrealistic sketch transformation. Way's method can generate a soft and saturated but cluttering texture, thus missing the natural line sense of color sketch. We calculate texture direction by transforming image space to frequency domain for energy statistical characteristics to tackle this issue. The simulation results obtain obvious intensive line sense. In the color fusion aspect, Way's method is based on the color of the original image and only overlays strokes texture on the basic color. However, in the real drawing process, people can only use limited colors. We have established the library of basic colors to dispose this challenge. All colors used for sketch simulation are fused from the library and by two basic color layers. Simulation results show robustness to changing imaging conditions, as well as satisfactory human visual sense. Conclusion In general, our study reveals new insights into the drawing scheme, implementing method, algorithm complexity, and interactivity when simulating color sketch. First, the proposed method is accomplished using the image transformation approach. Therefore, the method can interactively transform color image to color sketch or any other basic color specified by the user. Second, our study encompasses contour and texture simulation, facilitating the simulation of a realistic painting process. Third, the proposed method finds inspiration from human drawing experience. We overlay and fuse different color layers to generate color texture. This way can also be employed to simulate a wide spectrum of painting style, such as chalk drawing and crayon drawing.

Key words

non-photorealistic rendering; color sketch; duotone mapping; line integral convolution

0 引言

铅笔画作为非真实感绘制的重要研究内容,在近些年越来越受到人们的重视。现阶段已经提出了许多生成铅笔画的方法,但大部分是对黑白素描的模拟。Takagi等人[1]通过研究真实的彩色素描绘制过程,设计了基于3D技术的绘制方法。它利用计算机来模拟纸张的结构以及铅笔颗粒在纸张上的散布。这种方法能够生成较为逼真的彩铅画,但它的运算复杂度比较高,很难运用到日常的交互系统当中。Matsui等人[2]提出的方法把重点放到笔刷融合技术上,它能够通过图像的边沿特征来控制细长的素描笔触。这种方法能够模拟出柔和的彩色素描纹理,却容易丢失物体的结构特征。Way等人[3]实现了一套基于YUV颜色模式的模拟算法,并通过将YUV色彩映射回RGB颜色模式来完成彩色素描的绘制。Kim等人[4]还提出了一套基于特征提取的方法,该方法有较低的运算复杂度,因而可以被很好地移植到手机或平板电脑等移动设备上。Lu等人[5]利用卷积生成素描轮廓,利用纹理映射结合直方图规定化生成素描纹理,再将轮廓与纹理融合得到黑白素描效果。此外他们还对彩色图像的YUV 3个通道分别进行上述操作,最后将YUV映射至RGB模式,以此实现了彩色素描效果。

Mao等人[6]利用线积分卷积能够实现向量场可视化这一特点,结合黑白噪声图像,实现了一种基于图像的黑白素描自动绘制算法。然而由黑白到彩色并不是通过简单的通道叠加就能够实现的。主要原因在于,在绘制彩色铅笔画时能够利用的颜色种类是非常有限的,往往需要将多种颜色进行组合才可以得到某个特定的颜色。此外彩色素描的调色方式与油画或水彩也有很大差异:在画油画时艺术家会事先在调色板上将颜料进行调和,然后再将调好的色彩涂抹到画布上;而画彩色铅笔画时,人们会直接用不同颜色的铅笔在素描纸上逐层地绘制,利用不同颜色层之间的叠加和穿插来达到调色的效果。铅笔素描的颜色混合主要有两种形式,如图 1所示。一种是颜色层之间的叠加,即底层颜色反射的光线穿透上层的颜料来呈色。还有一种是颜色的并置,即两种颜色很紧密地挨在一起,它们反射的颜色同时在人眼中进行混合。以上这些特点共同造就了彩色素描非常特殊的质感。

图 1 色彩的叠加与并置
Fig. 1 Overlay and juxtaposition of color

Power和Stollnitz等人[7-8]介绍了一种双色调映射技术,它可以像印刷过程那样,将一幅彩色图像通过两种基本色的混合来描述:这两种基本色可以用图像的原始颜色为依据,通过密度计算来获取;也可以让用户随机指定来得到特殊的效果。Yamamoto等人[9]使用这种双色调映射技术,结合线积分卷积实现了一种彩色素描模拟方法。本文也是在对图像进行分割的基础上,利用这种方法模拟了彩色素描特殊的调色过程。用一个主色调和一个辅色调对特定的颜色区域进行绘制,每一个颜色层的纹理仍使用线积分卷积的办法来生成。

Gatys和Selim等人[10-11]介绍了一种基于卷积神经网络的图像风格转换技术,它可以指定一种绘画的风格,然后动态地将其他图片转化为我们需要的风格。该技术主要是在图像语义的层面上对图像进行理解,通过卷积神经网络有效地区别图像的背景与内容。

1 彩色素描的绘制策略

本文的彩色素描绘制步骤可以概括如下:1) 对图像进行区域分割;2) 以原始图像中的颜色为依据,为分割后的每个区域指定颜色集,为每个区域计算其颜色集中两种基本色的密度;3) 分别为两个基本色层生成黑白噪声图;4) 为每个区域判定纹理方向;5) 利用线积分卷积,分别为两个基本色层生成卷积纹理;6) 为两个基本色层叠加纸张纹理;7) 将两个基本色层进行融合叠加,得到彩色素描纹理[7];8) 提取边缘轮廓并与纹理融合,得到最终的绘制结果。

1.1 图像预处理

在图像预处理阶段,想要得到一个好的图像的分割效果,常用的图像分割算法有基于图论的分割算法,基于边沿检测的方法等[12-13],基于K-means聚类[14]的分割算法。选择K-means算法进行图像分割。在分割开始时,选择$K$个初始的聚类中心。对于彩色图像而言,确定$K$值也就相当于确定图像当中主要色调的个数。将图像转化到HSV色彩空间,并通过计算色调直方图来判定彩色图像中主色调的个数,这样就可以自动地确定$K$值的大小。之后设置$K$个聚类中心,最后得到的分割效果如图 2所示。

图 2 K-means聚类分割结果
Fig. 2 Result of K-means clustering segmentation((a) original image; (b) result of segmentation($K$=4))

1.2 颜色基本色并计算密度

在绘画过程中,对特定的色块,人们会首先用一种主要的色调进行铺底,此后再用一到两种副色调进行修饰补充,以此达到调色的效果。按照这一特性,在图像分割完成后,要为每一个分割的区域按照其颜色特性指定两种基本色。图 3给出了本文在实验中使用的12种基本色,去除了24色彩铅的黑、白、灰等无彩色系颜色,而后又按照绘画配色的原则进行了筛选以更好地满足绘制需求。

图 3 基本色库
Fig. 3 Basic color library

基本色的指定可以由用户交互地进行,也可以通过计算来自动获取。本文为每个区域自动地指定两种基本色,流程如图 4所示。

图 4 基本色指定流程
Fig. 4 Process of choosing basic color

通过比较颜色的差异性来自动地选择主色调。对每个特定的区域,假定其K-means聚类的中心色为$c$,基本色库中的颜色${c_i}$$c$的颜色差异${d_i}$可以定义为

$\begin{array}{*{20}{c}} {{d_i} = i \times \sqrt {{{\left( {{r_i} - r} \right)}^2}} + j \times \sqrt {{{\left( {{g_i} - g} \right)}^2}} + }\\ {k \times \sqrt {{{\left( {{b_i} - b} \right)}^2}} } \end{array}$ (1)

式中,$r$$g$$b$分别代表颜色$c$在RGB色彩空间下的三原色分量,$i$$j$$k$则为依照人眼的生理特性设置的3个权值,一般$i$取0.3,$j$取0.59,$k$取0.11。依次算出12种基本色与区域平均色$c$的颜色差异,取${d_i}$最小时的颜色${c_i}$作为该区域的主色调。

在确定了主色调之后,还剩11种颜色可以作为副色调使用。以区域中心色$c$为依据,用双色调映射的方法依次算出11种组合的映射后的颜色${{\hat c}_i}$,再用式(1) 计算出它们与区域中心色的颜色差异${{\hat d}_i}$,取${{\hat d}_i}$最小时对应的颜色作为副色调。在确定两种基本色之后,即可利用双色调映射的方法分别算出两个基本色层的颜色密度,具体的计算在第2节介绍。

基本色密度的计算结果为[0, 1]内的值,将其线性映射到[0, 255]范围中,再进行反向变换,以使得计算结果更为直观。如图 5所示。

图 5 主副色调的色密度
Fig. 5 Color density of dominant hue and vice hue ((a) color density of dominant hue; (b)color density of vice hue)

1.3 生成噪声图像

在真实的素描绘制中,笔芯的碳粒会随着纸张的凹凸随机地散布。为了模拟这一特征,可将图像中的像素值按照一定的概率随机的赋值为黑或白。这种方法生成的结果图具有很强的颗粒感,因而也被称作黑白噪声图。依据这一原理,分别为主色调和副色调生成噪声图像。

实验中发现,仅仅由0和255两个值描述的黑白噪声图过于单调。采用了分级的方法将0至255分成了3个不同的范围,以此增加了噪声图像的随机灰度值的个数,这使得最终绘制的铅笔素描有更强的明暗层次感[15]。噪声图像的计算方法为

$noise = \left\{ {\begin{array}{*{20}{l}} {nois{e_1} = \left\{ {\begin{array}{*{20}{l}} {nois{e_{\max }}}&{r \ge {t_1}}\\ {nois{e_{\min 1}}}&{\rm{其他}} \end{array}} \right\}}&{p \le {l_1}}\\ {nois{e_2} = \left\{ {\begin{array}{*{20}{l}} {nois{e_{\max }}}&{r \ge {t_2}}\\ {nois{e_{\min 2}}}&{\rm{其他}} \end{array}} \right\}}&{{l_1} < p \le {l_2}}\\ {nois{e_3} = \left\{ {\begin{array}{*{20}{l}} {nois{e_{\max }}}&{r \ge {t_3}}\\ {nois{e_{\min 3}}}&{\rm{其他}} \end{array}} \right\}}&{{l_2} < p} \end{array}} \right.$ (2)

式中,$p$代表当前像素的灰度值,$noise$为计算的结果噪声值,$r$代表一个随机数;${{l_1}}$${{l_2}}$将[0, 255]分成了3个灰度级,${{l_1}}$一般可以取24,${{l_2}}$取79;${nois{e_{\max }}}$为噪声图像中的最大强度值,一般取255;${nois{e_{\min 1}}}$${nois{e_{\min 2}}}$${nois{e_{\min 3}}}$对应着3个灰度级的最小灰度值,${nois{e_{\min 1}}}$一般为5,${nois{e_{\min 2}}}$一般取25,${nois{e_{\min 3}}}$一般为80。${{t_i}}$的计算为

${t_i} = {k_i} \times \left( {1 - p/255} \right)$ (3)

式中,${{k_i}}$为3个经验值,根据实验效果,可以一次取值0.9、0.7和0.7。实验中还计算了主色调和副色调的密度比,并对${{k_i}}$做相应比例的调整,并以此来控制主、副色调噪声图的生成概率。

人们在绘画过程中会有主次地表达图像中的事物,对主体部分往往着重刻画,次要细节则会选择留白处理。本文在生成噪声图之前对图像进行了颜色缩放处理,将强度乘以一个比例值(一般取值1.5),以此来保证绘制结果具有一定程度的留白[15]图 6显示了噪声图像和颜色缩放变换的效果。

图 6 噪声图像的色彩缩放
Fig. 6 Color zoom of noise image ((a) noise image; (b) the result of color zoom)

1.4 区域纹理方向的确定

艺术家在绘制铅笔素描时,常会用不同方向的笔触来表现不同的区域。为了模拟这一特性,需要分析各区域本身的纹理的走向,进而控制线积分卷积的过程。由此生成的素描纹理能够较好地反映物体本身的质感。

可以利用傅里叶变换将图像转换到频域,然后将频域分成几个不同的角度区间,并统计每个角度区间的能量。若某个角度区间的能量明显高于其余的区间,则可以认为原始图像在与这个高能量区间相垂直的方向上有明显的纹理走势,如图 7所示。

图 7 原始图像与傅里叶谱
Fig. 7 Original image and Fourier spectrum ((a) original image; (b)Fourier spectrum)

对每个区域,围绕其中心建立边长为$m$的窗口;将该窗口转换至频域,同时计算每个角度区间的能量值和总体均值;进而将最大的能量和能量均值作比较,当比例大于某个特定的阈值我们就判定纹理走向为与该角度垂直的方向。简化起见,实验中仅考虑了水平、垂直以及正负45°这4种方向。如果无法获取一个特定的纹理走向,为该区域指定一个随机的方向。首先利用上述方法获取主色调层各个区域的纹理走向,副色调层可以与其一致,也可以呈一定的偏转角度。

1.5 生成卷积纹理

线积分卷积是在上个世纪九十年代由Cabral和Leedom共同提出的,起初是为了对图像的矢量场进行可视化[16]。以黑白噪声图像结合方向矢量场进行卷积所得到的结果,卷积效果如图 8所示。这与手绘的铅笔素描纹理非常类似。利用线积分卷积分别生成主色调层和副色调层的线条纹理。

图 8 卷积纹理的生成
Fig. 8 Generation of convolutional texture ((a) noise image; (b)vector field; (c) convolutional texture)

线积分卷积处理可以描述为:对图像中的每个像素点,以其为中心沿特定角度的正、反两个方向查找与它相邻的$n$个像素以形成流线,利用卷积核将这条线上的各个像素的噪声值进行卷积计算,并将最后的结果赋值给原点像素。这种算法本质上是根据图像在特定方向上的关联性对黑白噪声图进行的平滑滤波处理。线积分卷积的基本公式为

$g\left( {x,y} \right) = \frac{{\sum\limits_{i = 0}^l {{p_i} \times {h_i}} + \sum\limits_{i = 0}^l {{{p'}_i} \times {{h'}_i}} }}{{\sum\limits_{i = 0}^l {{h_i}} + \sum\limits_{i = 0}^l {{{h'}_i}} }}$ (4)

式中,$g$($x$, $y$)为生成的纹理在($x$, $y$)坐标处的值,${{p_i}}$${{{p'}_i}}$分别为基于该原点,在特定角度的正、反方向上的第$i$个相邻像素的强度,$l$代表纹理线条的长度。${{h_i}}$的计算为

$\begin{array}{*{20}{c}} {{h_i} = \int\limits_{{s_i}}^{{s_i} + \Delta {s_i}} {k\left( w \right){\rm{d}}w} }\\ {{s_0} = 0,{s_i} = {s_{i - 1}} + \Delta {s_{i - 1}}} \end{array}$ (5)

$k$($w$)代表卷积核,采用hanning窗口来实现对黑白噪声图像的平滑滤波。Δ${{s_i}}$代表流线在矢量的正、反两个方向上实际走过的距离,它始终都应该是一个大于零的值。

在真实的彩色素描绘制过程中,用于铺底的主色调的线条一般较长,修饰色调的线条相对短促。图 9为卷积生成的线条纹理。

图 9 卷积生成的线条纹理
Fig. 9 The line texture of convolution ((a) noise image; (b)convolutional texture)

1.6 叠加纸肌理

专业的素描纸具有明显的凹凸感,这也影响了铅笔颗粒在纸上的分布。事实上素描纸越是毛糙,用彩铅就越容易画出痕迹。纸张凸起的点会更容易着色,因而呈现加深的效果;纸张凹陷的点着色相对较少,因而会呈现减淡的效果。

将一张纸纹理灰度图像当做一个高度场来考虑,其中的高、低强度分别对应着素描纸张本身的凸起和凹陷[9]。首先计算出纸张高度的平均值,对于强度大于平均值的点,对图像在相同位置的强度做同比例的加深;而对强度小于平均值的点,则对图像在该位置的值做相同比例的减淡处理。这种做法更好地保留了素描图像整体的明度,计算公式为

$p = {p_{x,y}} - k \times \left( {{t_{x,y}} - \hat t} \right)$ (6)

式中,${p_{x,y}}$代表原图在($x$, $y$)坐标处的强度,${t_{x,y}}$代表素描纸在($x$, $y$)位置的灰度,${\hat t}$代表整张素描纸灰度的平均值,$k$代表一个强度系数。

图 10显示了纸肌理叠加的效果。

图 10 叠加纸肌理的效果
Fig. 10 Effect of adding paper texture ((a) convolutional texture; (b)adding paper texture)

1.7 生成素描轮廓

拥有简单的轮廓线条是素描的一个显著的特点。计算机提取图像轮廓最简单的做法就是运用边缘检测算子,这种方法能够快速地生成图像的轮廓,但随着阈值系数的调整,提取的线条要么过于复杂,勾勒出一些多余的区域,要么又过于简单,勾勒不连贯或不完整。与真实手绘的轮廓相比较,边缘检测算子生成的素描轮廓并不理想。考虑以上问题,在实验中采用了基于霓虹变换的方法,生成了更为理想的素描轮廓[15]。但是霓虹变换的结果是用明亮的线条显示了物体的轮廓,这与想要的深色轮廓线条刚好相反,所以需要进一步对图像进行反向处理和灰度化。经以上处理后的图像,其灰度值仍离散地分布在[0, 255]的范围内,将灰度大于180的像素点的灰度值归一化为255。由此,轮廓线之外的像素将被统一设置为白色,至此,便成功地生成了铅笔素描的轮廓线条。图 11给出了轮廓提取的结果。

图 11 轮廓提取
Fig. 11 Contour extraction((a) original image; (b) contour drawing)

1.8 主色调与副色调的融合

将副色调与主色调按照上下次序用双色调映射的原则进行融合,即可得到彩色素描的纹理图,如图 12(a)所示。双色调映射的计算将在第2节介绍。在纹理的基础上叠加轮廓线条,即可得到彩色素描的效果,如图 12(b)所示。

图 12 彩色素描效果
Fig. 12 Effect of Color sketch((a)texture of color sketch image; (b)graphing result)

2 双色调映射

双色调映射的色域由纸张颜色、基本色1、基本色2、以及两个基本色叠加后的色彩这4个颜色向量共同来决定,即

$\begin{array}{l} \mathit{\boldsymbol{c = }}\left[ {\begin{array}{*{20}{c}} {{g_0}}&{{g_1}}&{{g_2}}&{{g_{1,2}}} \end{array}} \right] \times \\ \quad \quad \left[ {\begin{array}{*{20}{c}} {\left( {1 - {\alpha _1}} \right)\left( {1 - {\alpha _2}} \right)}\\ {{\alpha _1}\left( {1 - {\alpha _2}} \right)}\\ {\left( {1 - {\alpha _1}} \right){\alpha _2}}\\ {{\alpha _1}{\alpha _2}} \end{array}} \right] \end{array}$ (7)

式中,${{g_0}}$代表纸张的颜色,${{g_1}}$${{g_2}}$分别代表两种基本色,${{g_{1,2}}}$用来代表两种基本色相叠加后的色彩,${{\alpha _1}}$${{\alpha _2}}$则分别代表两种颜色的权值。这样一来,${{g_0}}$${{g_1}}$${{g_2}}$${{g_{1,2}}}$这4个颜色向量就共同定义了一个在XYZ颜色空间中的双线性曲面,也相当于是定义了用这两种基本色进行色彩重现的色域,如图 13所示。

图 13 双色调色域曲面
Fig. 13 Bilinear surface of the duotone gamut

2.1 色彩重现

彩色素描的绘制过程可以抽象地描述为:利用少量的彩色铅笔对真实的彩色图像进行重现的过程。学者已经针对这一课题做了很多研究,主要集中在印刷领域。Power等人[7-8]介绍了一种双色调映射的方法。该方法允许为每一次色彩重现单独设定两个基本色,此外它还能够以原始图像中的颜色为依据,分别计算两个基本色的颜色密度(比例)。这个方法恰好可以用来模拟真实绘画的过程中,用两种颜色描绘一个特定色块的过程。

2.2 双色调映射的原则

双色调映射就是把在$XYZ$全彩色域中颜色向双线性曲面进行映射。要模拟绘画的过程,所以要尽可能地保留原始图像的辨识度。每种颜色都是由一个3维向量来表示,映射也就需要分别在3个维度下进行,映射原则介绍如下[7]

1) 保留图像的明暗差异。实验结果表明,人眼对明暗变换最为敏感,保留图像的明暗差异是我们需要优先考虑的因素。$XYZ$色彩空间的$Y$向量反映了像素的明度信息,所以将$Y$轴作为双线性曲面的第一个映射坐标。

2) 保留图像的色彩差异。为了尽可能地保留图像的色彩分布差异,第2个坐标轴需要对应着双线性曲面上具有最大的颜色变化的方向。将向量${g_2}{g_1}$相对于$Y$轴正交,进而得到坐标轴$S$,作为色彩映射的第2个方向。

3) 牺牲法向量差异。已经确定了两个映射坐标,由$Y$×$S$就可以得到映射的第3个方向$P$。由此便指定了双色调映射的原则。

双色调映射的计算方法详见文献[7]。

3 绘制结果与分析

本文方法能够合理地模拟手工绘制彩铅画的调色过程,得到了较为理想的绘制结果,如图 14所示。

图 14 算法结果
Fig. 14 Algorithm result ((a)original image; (b)bottle drawing; (c)original image; (d)toy drawing)

Yamamoto等人的方法[9]与本文均是利用线积分卷积与双色调映射技术实现了彩色素描的模拟,如图 15(a)给出了本文与该方法的模拟效果对比。与之相比:1) 本文采用基于K-means聚类的方法分割图像,分割结果能更好地反应彩色图像本身的颜色分布特性,因而更好地适用于彩色素描的模拟。2) 在指定基本色时,该方法需要对基本色库中颜色的所有组合方式进行比较,相对耗时。而本文在K-means分割的基础上,利用色彩差异性计算来自动指定基本色,极大地提高了这一过程的效率。3) 本文采用分级的方法生成噪声图像,同时引入色彩缩放变换,这使得彩色素描的纹理与真实的手绘效果更为接近。4) 本文在纹理的基础上还添加了素描的轮廓,使模拟结果更好地保留了图像的结构特征。

图 15 本文方法与不同方法比较结果图
Fig. 15 Comparision of different methods ((a)Yamamoto[9]; (b)Matsui[2]; (c)Way[3]; (d)Kim[4]; (e)Lu[5])

图 15(b)显示了本文与Matsui等人[2]的方法在模拟效果上的不同:1) 该方法绘制的彩色素描具有明显的笔触感,生成的纹理也更为柔和。但笔划融合的过程相对复杂和耗时,且不易控制。本文方法能够实现图像到彩色素描的自动转换。2) 笔划融合的方法并未考虑素描的轮廓,绘制效果容易丢失物体的结构特征。本文方法是从轮廓和纹理两个角度对素描效果进行模拟,能够更好地保留物体本身的结构特征。

图 15(c)显示了本文与Way等人[3]的方法在绘制效果上的不同:1) 该方法生成的彩色素描具有通透、柔和的纹理,但缺失了素描本身的线条感。本文方法的模拟结果具有明显的密集线条感,不足之处则在于纹理略显生硬。2) 该方法的色彩变换是以原始图像本身的颜色为基础的,并未考虑真实绘画过程中只能使用少量颜色的限制。本文则建立了基本色库,模拟效果图的颜色均由这些基本色融合而来。3) 该方法是在颜色铺底的基础上叠加了笔划纹理。与之相比,本文采用的两个基本色层上下融合的方式,与真实的绘画过程更为类似。

图 15(d)显示了本文与Kim等人[4]算法在绘制效果上的不同:1) Kim等人[4]算法是利用基本的图像特征提取函数来实现的,具有较高的处理效率,可以很好地运用到移动设备上。本文方法则需要进行图像分割、基本色指定、纹理方向分析、线积分卷积和双色调叠加等步骤,处理过程相对复杂。2) 该算法仅从轮廓的角度进行变换,并未考虑彩色素描的纹理,因而与真实的彩铅画存在差异。与之相比,本文方法分轮廓提取和纹理生成两条线,这与真实的彩色素描绘制过程更为接近。此外发现在处理轮廓色层较为复杂的图片时,可能会出现轮廓的模糊,例如下图林间小屋的水中倒影就不是很清晰。这一方面是图像本身的色系都过于接近,影响主色调与副色调的选取。另一方面选取更高效准确的图像分割算法也是未来需要努力的方向。

图 15(e)显示了本文与Lu等人[5]方法在绘制上效果的不同。Lu的方法也生成了较为理想的彩色素描效果。与之相比:1) 该方法利用纹理映射生成的纹理更为逼真和柔和,但未考虑真实的绘画中艺术家用不同的笔触方向表现不同区域这一特征。本文在图像分割的基础上分析各区域的纹理走向,进而控制线积分卷积,以此生成的纹理有更多的变化,不足之处则在于略显生硬。2) 该方法在生成黑白素描的基础上,通过色彩模式映射得到彩色素描效果。本文方法则是将不同的颜色层相融合得到彩色纹理,这更为合理地模拟了彩铅绘画的调色过程。

4 结论

与现有的方法相比较,本文方法在绘制思路、实现手段、算法复杂性、交互性等方面都与它们存在差异,具有以下的一些优点:1) 本文方法是基于图像变换实现的,能够做到由原始图像到彩色素描的自动转化,也可以由用户交互地指定基本色而调节绘制效果。2) 本文方法是从轮廓和纹理两个角度来进行模拟,更为全面地模拟了真实的绘画过程。3) 本文将不同的颜色层进行叠加融合生成彩色纹理的方法,与真实的绘画过程一致。这种不同颜色层上下叠加调色的方式也可以扩展到对粉笔画、蜡笔画、色粉画等类似绘画风格的模拟当中,因为它们的调色方式与彩铅画一致。

本文方法能够对彩铅绘画的调色过程进行模拟,然而现有方法还处在实验阶段,仍存在如下一些方面需要做进一步优化:1) 线积分卷积虽能够生成近似于铅笔素描的纹理,与真实的手绘效果相比较却仍显得生硬了一些,因而新的纹理生成方法有待进一步研究。2) 绘画是主观提炼的过程,艺术家往往会主次分明地表现现实当中的事物。如何在计算机绘制过程中对这一特征进行模拟是有待继续研究方向。3) 现有的方法仍旧是基于PC平台来实现的,降低算法复杂度以适应移动平台的运算能力,也是未来的研究方向。4) 在真实的绘画过程中,有一些特殊的色彩区域可能会需要两种以上的彩铅进行调和,这也是本文的一个缺陷。5) 要想得到更好的结果,还需要从图像理解的角度,通过深度学习算法区分内容与背景,从而使用不同的纹理,得到更好的效果。

参考文献

  • [1] Takagi S, Fujishiro I, Nakajima M. Volumetric modeling of artistic techniques in colored pencil drawing[C]//Proceedings of SIGGRAPH’99 ACM SIGGRAPH 99 Conference Abstracts and Applications. New York: ACM, 1999: 283. [DOI:10.1145/311625.312375]
  • [2] Matsui H, Johan H, Nishita T. Creating colored pencil style images by drawing strokes based on boundaries of regions[C]//Proceedings of Computer Graphics International 2005. Stony Brook, NY: IEEE, 2005: 148-155. [DOI:10.1109/cgi.2005.1500406]
  • [3] Way D L, Yang M K, Shih Z C, et al.A colored pencil non-photorealistic rendering for 2D images[J]. International Journal of Innovative Computing, Information and Control, 2014, 10(1): 233–241.
  • [4] Kim G, Woo Y, Yim C. Color pencil filter for non-photorealistic rendering applications[C]//Proceedings of the 18th IEEE International Symposium on Consumer Electronics(ISCE 2014). JeJu Island: IEEE, 2014: 1-2. [DOI:10.1109/isce.2014.6884312]
  • [5] Lu C W, Xu L, Jia J Y. Combining Sketch and Tone for Pencil Drawing Production[C]//Symposium on Non-Photorealistic Animation and Rendering. Annecy: ACM, 2012: 65-73.
  • [6] Mao X Y, Nagasaka Y, Imamiya A. Automatic generation of pencil drawing from 2D images using line integral convolution[C]//Proceedings of the 7th International Conference on Computer Aided Design and Computer Graphics. Kunming: CAD, 2001, 9: 240-248.
  • [7] Power J L, West B S, Stollnitz E J, et al. Reproducing color images as duotones[C]//Proceedings of the 23rd Annual Conference on Computer Graphics and Interactive Techniques. New York: ACM, 1996: 237-248. [DOI:10.1145/237170.237261]
  • [8] Stollnitz E J, Ostromoukhov V, Salesin D H. Reproducing color images using custom inks[C]//Proceedings of the 25th Annual Conference on Computer Graphics and Interactive Techniques. New York: ACM, 1998: 267-274. [DOI:10.1145/280814.280889]
  • [9] Yamamoto S, Mao X Y, Imamiya A. Colored pencil filter with custom colors[C]//Proceedings of the 12th Pacific Conference on Computer Graphics and Applications. Seoul: IEEE, 2004: 329-338. [DOI:10.1109/pccga.2004.1348364]
  • [10] Gatys L A, Ecker A S, Bethge M. Image style transfer using convolutional neural networks[C]//Proceedings of 2016 IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas, NV: IEEE, 2016: 2414-2423. [DOI:10.1109/cvpr.2016.265]
  • [11] Selim A, Elgharib M, Doyle L.Painting style transfer for head portraits using convolutional neural networks[J]. ACM Transactions on Graphics, 2016, 35(4): #129. [DOI:10.1145/2897824.2925968]
  • [12] Felzenszwalb P F, Huttenlocher D P.Efficient graph-based image segmentation[J]. International Journal of Computer Vision, 2004, 59(2): 167–181. [DOI:10.1023/B:VISI.0000022288.19776.77]
  • [13] Kolliopoulos A. Image segmentation for stylized non-photorealistic rendering and animation[D]. Toronto: University of Toronto, 2005.
  • [14] Burney S M A, Tariq H.K-means cluster analysis for image segmentation[J]. International Journal of Computer Applications, 2014, 96(4): 1–8. [DOI:10.5120/16779-6360]
  • [15] Li L S, Zhou J Y, Chen Y Q, et al.A improved generation method of pencil sketching[J]. Journal of Image and Graphics, 2007, 12(8): 1423–1429. [李龙生, 周经野, 陈益强, 等. 一种改进的铅笔画的生成方法[J]. 中国图象图形学报, 2007, 12(8): 1423–1429. ] [DOI:10.3969/j.issn.1006-8961.2007.08.019]
  • [16] Cabral B, Leedom L C. Imaging vector fields using line integral convolution[C]//Proceedings of the 20th Annual Conference on Computer Graphics and Interactive Techniques. New York: ACM, 1993: 263-270. [DOI:10.1145/166117.166151]