基于混合梯度最小化的铅笔画生成
2018-05-16胡越黎胡云生
王 权, 胡越黎,3, 燕 明, 胡云生, 陈 朋
在绘画艺术领域,铅笔画作为一种最基本的绘画形式表述了人类对自然场景的抽象认知.近年来,铅笔画已经逐步成为计算机图形学领域的热点研究方向之一,其中利用计算机来模拟艺术家创作,生成具有铅笔画艺术效果的技术更是日渐成为国内外众多学者研究的重点,具有重要的应用价值与广阔的应用前景.
铅笔画的创作主要由以下三个部分组成:首先,需要描绘出画面的整体结构和主要轮廓,这一步无需关注太多细节信息;其次,在局部区域描绘阴影或留出空白来体现色调和纹理;最后,用不同粗细的线条来描绘画面的不同层次和细节信息.针对以上步骤,研究者们进行了大量的研究工作,包括线条绘制的研究[1-4]、阴影生成效果的研究[5-6],以及二者结合的技术研究[3],但对于不同粗细线条绘制及图像层次感和细节信息展现的研究相对较少.
文献[7]提出了可生成铅笔画风格的互动式平台.文献[8]利用图像梯度信息,结合线性卷积积分(line integral convolution,LIC)算法来生成明暗色调.文献[9]根据不同范围把图像划分为各个强度层,再结合区域LIC算法,参考边缘和纹理信息进行融合叠加.文献[10]提出了计算图像边缘切线结合迭代的高斯差分滤波方法.文献[11]采用高斯尺度空间理论结合数学形态学来描述图像的框架结构和细节信息,但该方法需要对图像进行训练.文献[12]提出了一种图像轮廓与背景底纹相结合的方法,具有良好的素描效果,但是该方法忽略了铅笔画中线条粗细对图像真实感的影响,同时未能突出图像的边缘线条信息.
本研究利用L0梯度最小化模型结合L1范数约束,较为完整地提取和保存了重要的图像结构,突出了边缘线条.在色调生成过程中采用graph cut算法进行阈值分割,合理地分配了铅笔画中的明暗色调分布,充分渲染了物体轮廓和纹理较为密集的区域.此外,本研究所提出的铅笔画生成算法不仅适用于普通铅笔画,对彩色铅笔画的生成同样具有很好的效果.
1 笔画生成
基于图像的铅笔画生成过程主要包括笔画生成和色调纹理生成.在铅笔画笔画生成过程中,利用L0梯度最小化来统计平滑图像垂直和水平方向的梯度值不为0的像素之和.对于色调和纹理的生成,首先利用合理的分配方式将明暗色调与原图像充分拟合,然后利用指数组合方式生成铅笔画的纹理,最后将笔画图和纹理图融合得到铅笔画生成效果[13].铅笔画生成的具体流程如图1所示.
图1 铅笔画生成流程图Fig.1 Flowchart of the pencil drawing production
1.1 L 0梯度最小化
L0梯度最小化法基于L0范数对图像梯度进行约束计算,是一种改进的总变差(total variation,TV)模型图像平滑方式[14].经其处理后的图像主要有以下两个特点:一是平滑后的图像与原图像在内容结构上保持高度一致;二是能够突出图像中重要的线条结构和边缘信息[15-16].定义I为输入图像,S为输出图像.在RGB向量空间域中,S在像素点p处的梯度表达式为∇Sp=(∂xSp,∂ySp)T,L0约束下的梯度计算表达式为
式中,#{}是一个运算符,表示图像中梯度值不为0的数量.C(S)的大小不依赖于梯度幅值,因此不会受图像中某些边缘对比度改变的影响.基于此,S的估算预测可由下式得到,
式中:Sp是经p次平滑处理后的图像;S0是原图像,不随p的变化而变化;λ是一个比重参数,控制C(S)对整个最小化过程的影响.λ过大会使得处理后的图像边缘线条减少,因此λ的取值范围一般在[0.01,0.10]之间,本研究选取λ=0.02.上述函数并不能直接求解,因为其存在不能凸优化的问题.为了解决这个问题,对式(2)进行扩充变换,
式中:变量hp和vp分别是对式(2)中S在p点处的梯度∂xSp和∂ySp的近似;β为自适应参数,控制新的变量及其对应梯度的相似性,从初始值β0开始随着迭代运算的进行而逐渐递增.本研究选取β0=2λ=0.04,βmax=10 000.由于L0梯度最小化处理对非零梯度的数量过于依赖,因此不具有很好的鲁棒性.
1.2 混合梯度最小化
在L0梯度最小化处理过程中,h和v可通过计算图像梯度获得.由于图像中难免会出现因噪声的影响而导致计算误差较大的图像梯度,使得整个最小化过程达不到期望的要求.为了进一步改善L0最小化过程的抗干扰能力,增强其鲁棒性,在原有模型基础上采用L1范数作为约束项[17].从最优化问题解的平滑性来看,L1范数的解相对少于L2范数,但往往是最优解,而L2范数的解虽很多,但更多的是倾向于某种局部最优解.基于以上分析,本研究采取如下的混合梯度最小化模型:
由式(4)可知,第一部分求解S相对而言较为简单,可直接利用梯度下降法求得结果.对于h和v的求解,因式(4)中受h和v影响的只有其中一部分,可将其提取变换得
式中,H是一个二值函数,当传递的参数不等于0时,则返回1,否则返回0.因此为了得到最小值,需要进行如下的分情况讨论:
式(6)是取得最小值的两种情况,可求出h和v的取值.自然图像经过混合梯度最小化处理后,再重新求取图像中像素的梯度值,生成对应图像的轮廓信息.由图2的效果图可以清楚地看出,混合梯度最小化算法在细节呈现和重点线条突出方面比L0梯度最小化法有较大的改善.
图2 笔画生成效果图Fig.2 Stroke generated effect pictures
2 铅笔画色调与纹理生成
2.1 色调生成
铅笔画的色调主要由明暗两个部分组成.相比较而言,自然图像的色调组成极为丰富(见图3).为此,本研究基于二值化思想,将自然图像中的每个像素点按照一定标准划分成明暗区域.
图3 自然图像与铅笔画统计直方图比较Fig.3 Comparisons of histograms of natural image and pencil drawing
最简单的划分方式是设定一个阈值来区分明暗区域.为了满足不同偏好设定的需要,本研究利用graph cut算法来求取最佳阈值.定义I(p)为像素点p的强度值,Lp表示该像素点p的明暗状态(即Lp=0时表示暗点,Lp=1时表示亮点),则像素点p的能量函数为
式中,αs∈[0,1]是平衡常数,数据项Dp(Lp)和平稳项S(p,q)(Lp,Lq)分别定义为
其中Dp(Lp)表示每个像素点的明暗状态,S(p,q)(Lp,Lq)表示临近像素点对本像素点的影响,αg为权衡因子,决定着全局平均强度Mg(I)对结果的影响,Ml(N)表示以像素点p为中心,周围局部强度值的平均值(本研究设定为5×5大小),φ为可调参数,可根据不同偏好设定,signD(Lp)为信号函数,其值随Lp的值变化而变化,即Lp=0时,函数值为1,Lp=1时,函数值为–1,N(p)表示像素点p附近的点,当Lp=Lq时,信号函数signE(Lp,Lq)的值为0,否则为1.
本研究通过结合经典的graph cut算法,在所有像素总成本最小化的基础上确定了分割明暗区域的最佳阈值,从而构建了一个二值映射来拟合铅笔画的色调组成.
2.2 背景纹理生成
在艺术家绘制铅笔画的过程中往往通过在同一地方反复涂画来形成背景纹理,并没有特定的方向和模式.因此,生成合适的背景纹理非常困难[18].为了充分模拟这个过程,本研究采用如下的指数组合方式:
式中,J表示最终的背景纹理图,λ=0.2.对输入的纹理图片H进行反复β次运算,生成与原图像背景纹理相契合的映射图.图4中的纹理图片H是对真实纹理图片H1和H2处理后叠加融合得到的.最终的纹理图T由式(12)运算得到,且T的大小与轮廓图的大小相一致.
图4 纹理融合Fig.4 Texture blending
2.3 铅笔画生成
将铅笔画的轮廓图和色调纹理图进行逐个像素之间的点乘,得到最终的铅笔画生成图,同时本研究所提出的方法也可扩展到彩色铅笔画的生成.在进行分层的时候,只需改变亮度通道,将生成的铅笔画作为输入的原始彩色图像YUV空间的Y通道,重新映射到RGB空间,就能够生成彩色铅笔画的效果[16].
3 实验结果
在一台配置了Intel Core i3处理器,主频为2.13 GHz,内存为2 GB的32位操作系统计算机上,用Matlab 2012b编程实现了本算法.从图5中可以明显看出,本研究所提出的基于混合梯度最小化的铅笔画生成算法的效果要优于文献[12]所提出的笔画结构算法,也优于仅仅使用L0梯度最小化法.本算法能够很好保存图像的细节信息和边缘线条,笔画粗细有序,充分展示了原图所表达的层次感.而仅仅使用L0梯度最小化处理时,部分边缘线条不够突出甚至不能清楚显示,容易使得图像信息的完整性缺失.
图5 不同算法下铅笔画生成效果图Fig.5 Effect pictures of pencil drawing under different algorithms
在彩色铅笔画生成方面,本算法同样体现了较强的细节处理能力.相比较而言,采用本算法处理后的图像色彩填充恰到好处,轮廓勾勒清晰,整体效果更为丰富饱满(见图6).为了测试本算法的执行效率,在相同的硬件和软件配置下对一张大小为800×600的图片进行了验证,结果如表1所示.可见,本算法较L0梯度最小化法在耗时上有改进,但算法执行效率有待进一步优化和改善,后期可考虑将本算法优化后应用于移动终端设备.
4 结束语
针对现有铅笔画效果生成算法中存在的画面细节展现不足、层次感不够鲜明、笔画单一、重点线条不够突出等问题,本研究提出了一种基于混合梯度最小化的铅笔画生成算法.结合L0梯度最小化和L1强制约束,本算法突出了边缘重点线条的绘制,更好地展示了图像中局部区域的轮廓形状,层次感鲜明.同时,本算法巧妙融合了图像色调和纹理信息,最终得到了与原图像内容一致、色调相近、纹理相似、真实感和艺术感兼备的铅笔画效果生成图像.
图6 不同算法下彩色铅笔画生成效果图Fig.6 Effect pictures of color pencil drawing under different algorithms
表1 不同算法耗时Table 1 Elapsed time of different algorithms s