APP下载

基于照片的可编辑光照效果卡通人脸生成算法

2015-03-15刘艳丽

图学学报 2015年1期
关键词:真实感卡通人脸

宋 阳, 刘艳丽,2

(1. 四川大学视觉合成图形图像技术国防重点学科实验室,四川 成都 610065;2. 四川大学计算机学院,四川 成都 610065)

基于照片的可编辑光照效果卡通人脸生成算法

宋 阳1, 刘艳丽1,2

(1. 四川大学视觉合成图形图像技术国防重点学科实验室,四川 成都 610065;2. 四川大学计算机学院,四川 成都 610065)

提出一种基于照片的可编辑光照效果卡通人脸图像生成算法。算法首先提取输入人脸照片的边缘轮廓,生成线条画;其次对输入照片进行本征分解,分离出光照图像和材质图像;然后对光照图像进行光照编辑,如量化、非线性增强等;对材质图像进行抽象化处理,并融合线条画得到卡通图像;最后将编辑过的光照图像添加到卡通图像上生成含有光照效果的人脸卡通图像。实验结果表明:该算法生成的人脸卡通图像效果逼真,并且可对光照进行编辑。

人脸;卡通图像;光照编辑;非真实感绘制

非真实感绘制指的是利用计算机生成不具有照片真实感,而具有手绘风格的图形技术。由于人脸肖像画在日常生活中具有重要作用,因此人脸的非真实感绘制成为非真实感绘制中的一个重要部分。研究成果可用于广告宣传、影视制作、卡通画制作等许多领域。

在以往的工作中,已经有一些从人脸图像生成卡通画的研究工作。例如Gooch等[1]介绍了一种模拟人眼的亮度感知的方法,用于绘制黑白漫画效果,同时可以对头像进行夸张的变形;Chen等[2-4]提出了基于样本学习的生成人脸卡通效果图的方法,该方法使用主动轮廓模型[5]提取人脸的特征点,然后利用人脸特征之间存在相对固定位置关系的特点确定人脸各个部分(如眼睛,眉毛)的位置,生成人脸卡通肖像图。这些方法生成的卡通人脸画都没有利用原图像中人脸的光照信息。人脸的光照信息特别是阴影信息可有效揭示脸部结构的深度变化,使卡通画更有立体感、更生动。文献[6]提出了一种可编辑光照的卡通画生成算法,首先生成线条的矢量图,然后用户手动上色。增加了光照信息和交互性,交互性的引入使得用户能够参与到绘制的过程,增强了创造性,并且绘制出来的结果带有用户的主观性,可以实现形式更为多样化的卡通艺术效果;但是不能保持原有照片的颜色和一些人物特征信息,且矢量图会丢失一些面部细节,引入的交互性由于需要用户的参与,会在一定程度上增加绘制过程的复杂性。

近年来,对输入照片进行图像的风格化或抽象化[7-8]以获得非真实感效果的方法得到研究者们的极大关注。如文献[7]提出的图像抽象方法是通过对输入图像进行抽象,然后进行量化获得,用这种方法得到的结果有一定卡通漫画效果,而且人脸还保持着原来的光照信息。但是由于没有把材质图像和光照图像分离,在量化时,就会出现混合的情况,且不能对光照进行多样化编辑。

本文提出了一种新的基于照片的可编辑光照效果的人脸卡通图像生成算法。首先利用基于边切线流的线条画生成算法对输入照片进行处理,生成连贯一致的线条画;然后利用Barron和Malik[9-10]提出并改进的 SAIFS分解算法对输入照片进行光照图像和材质图像的分离,对分离出的材质图像用双边滤波进行处理,量化之后再融合之前生成的线条画,得到不含任何光照效果的卡通图像;最后,对分离出的光照图像进行编辑(量化,增强对比度,非线性变化),再与生成的卡通图像进行融合,得到含光照效果的人脸卡通图像。本文算法由于对输入图像进行了光照与材质的分离,在量化的过程中就不会产生混合,由于分离了光照图像,就可以实现光照的多样化编辑,生成丰富的光照效果。本文算法对输入图像没有严格的要求,使用范围更广。

1 相关工作

计算机非真实感绘制技术根据输入的不同,大致分为两类:一类是基于几何的非真实感绘制技术,它以三维场景的几何模型描述作为输入;另一类是基于图像的非真实感绘制技术,它以原始数字图像作为输入。

关于几何空间的非真实感绘制技术的研究主要包括:几何信息的存储方式、非真实感的光照模型以及对三维模型的空间变形等,该技术主要通过对三维模型进行投影、透视、变形等处理,并添加特殊的光照阴影效果,从而得到具有艺术风格的图形。

基于图像的非真实感绘制技术按照对艺术作品的模拟方式的不同又可分为基于笔划的绘制和无笔划的绘制两种。前者将笔划作为最基本的绘图元素,由画家预先根据图像特征生成大小和形状不同的笔划,然后将其作用于原图,生成具有手工作品特点的图像。代表算法有Hertzmann[11]提出的基于笔划的油画风格化绘制的经典算法;陈洪等[4]提出的基于样本学习的卡通人脸生成算法。而后者避免了对绘画过程的复杂建模,它主要通过对输入的数字图像进行滤波、特征增强、边缘检测、图像分割等处理,使处理后的图像具有某种特殊的视觉效果。如Curtis等[12]水彩画的物理模拟绘制系统;阎芳等[13]提出了一种漫画风格的人脸肖像生成算法;黄华和程威[14]提出了一种实时的图像素描风格化算法。

基于三维场景的非真实感绘制也是最近研究的热点。传统的三维模型建模方法主要是真实感领域,通过参数调整和形状构造的方法获取。非真实感绘制方式可以通过模型的几何体、光照等信息来模拟,并且用户和系统可以进行笔触的交互。这种方法可以更好地迎合用户的感受,生成符合大众审美情趣的三维场景是非真实感绘制技术一直追求的。

此外,非真实感绘制中用户交互性的应用也是近期的一个研究热点。微软的MSN Cartoon和最近流行的一款手机软件“脸萌”都是在进行卡通人脸肖像画的绘制中引入了用户交互性,使得用户可以参与到卡通画的绘制过程中,增加了创造性,绘制出带有用户主观效果的卡通图。与此同时,交互性的引入使得绘制过程需要用户的参与,破坏了绘制过程的自动性,在一定程度上增加了绘制过程的复杂性。所以交互的引入是一个辩证的问题,需要根据用户的具体需求和绘制的目的来决定是否引入。

本征图像分解是指假定图像场景为朗伯漫反射场景,光照模型为朗伯模型的情况下,将一幅图像分解成一幅光照图像和一幅材质图像,其中材质图像又称为本征图像。从其定义可知,材质图像对应于每个像素处可见景物表面的材质,光照图像是入射光强度、入射角以及阴影项综合作用的结果。由于本征图像分解将场景的光照属性和材质属性单独剥离开来,使得对图像的处理(滤波、量化、合成卡通图)能直接应用在材质图像上,避免了光照产生的影响。且同时可以对分离出的光照图像进行编辑,产生丰富的光照效果。目前已有大量的研究工作尝试从多幅图像和单幅图像中恢复图像的光照图像和材质图像。

本文采用由Barron和Malik[9-10]提出并改进的SAIFS分解算法,该算法的分解结果表现的更为出色。其仅需要单幅图像就可以对未知朗伯模型对象进行本征图像分解操作,通过平滑、形状、深度、各向异性等方面进行约束,从中准确得到材质图像以及对应的光照图像。

2 本文算法

2.1 算法框架

本文算法框架如图1所示,首先提取人脸肖像轮廓,生成线条画;然后分离光照和材质,对材质图像进行抽象化处理并融合线条画,对光照图像进行编辑;最后把生成的不含光照效果的卡通图像和光照图像进行融合,得到含光照效果的卡通图像。

图1 算法框架图

2.2 基于图像的轮廓提取

人脸卡通肖像画的绘制是属于人脸非真实感绘制的范畴,其核心问题是如何保护图像场景的重要部分而减少场景的复杂度。为了保护图像场景的重要部分,需要对输入图像进行轮廓提取,生成线条画。本文采用基于边切线流的高斯差分滤波器(flow difference of Gaussian,FDOG)[15]提取人脸肖像轮廓线,该算法是在差分高斯算法(difference of gaussian,DOG)滤波器[6]的基础上改进的。

FDOG算法首先根据 I( x)构建边切线流向量t( x),记为 ETF。 t( x)是垂直于图像的梯度g( x) =∇I ( x), x = (x , y )为图像为 I( x)上的像素点坐标。由于要生成连贯一致的线条画,所以对应的ETF需要满足以下3个条件:①每一个切向量表示的是邻域内最主要的边的切线方向;②除了锐角处,邻域内的向量是平滑地排列的;③重要的边必须保持它们的初始方向。取切向 ()t x为:

在式(1)中 Ω (x)表示点x的邻域, tcur(y)是指当前归一化后的切向量,k代表的是归一化常数。ws( x, y )是空间权函数,是一个半径为r的径向对称盒滤波器。 wm(x ,y ),wd(x , y )则分别是模长权函数和方向权函数。

根据边切线流向量图(edge tangent flow,ETF),可采用基于流的DOG沿ETF得到的边缘线进行积分,从而得到人脸轮廓图。

该方法简单有效,生成线条画非常流畅。如图2所示,与传统的DOG相比,线条画没有经过夸张,线条连贯,突出人脸的细节特征且与原图是对齐的,效果更好。

图2 生成线条画

2.3 光照提取

若直接对输入图像进行抽象化操作(双边滤波,量化)会把材质和光照混合在一起进行处理,其不利于对光照进一步的编辑,所以在进行图像抽象化操作之前需对输入图像进行光照的提取,即利用本征分解的方法把输入图像分离为光照图像和材质图像,然后分别在分离出的光照图像和材质图像上进行操作,以避免光照信息和材质信息的混合,便于后续对光照的编辑。

本征分解的算法有很多种,本文采用由Barron和Mailk[9-10]提出并改进的SAIFS分解算法, 把输入图像分解为光照图像和材质图像。

如式(2)所示:其中 I( x , y )表示输入图像,L( x, y )表示分解产生的光照图像,R ( x , y )表示分解产生的材质图像。如图3所示,利用本征分解算法把输入图片分离为光照图像和材质图像。

图3 光照提取示意图

2.4 基于图像的抽象化

卡通风格的效果图在实现过程中,对图像进行抽象化处理是非常重要的,它可以提高图像的对比度,忽略图像中不重要的细节。运用抽象化技术传递的可视化信息,往往能够更加吸引人眼的注意力,增进信息交流。本文在2.2中得到的材质图像采用双边滤波器进行抽象化处理。双边滤波器是一种非线性扩展滤波器[7,16-17],能使图像中对比度高的区域变得更高,反之更低。双边滤波器不仅考虑了空间的远近程度,还考虑了信息的强度差。

设 f(·)为输入图像,根据式(3)定义的滤波器H(·)对输入图像进行抽象化处理如下所示:

式(3)中ˆx表示当前像素的位置,x表示邻域像素的位置,dσ是模糊半径,模糊程度与dσ成反比,dσ 太大可能会使重要的边界变得模糊。在本文中选取dσ的值为3,rσ的值为4.25。迭代的使用 ()H·,范围权函数 ()w·将决定图像中哪些区域被平滑处理,哪些区域被锐化处理。

在式(4)中,如果 m(·)= 0, H(·)那么就变成了双边滤波器。实际上,双边滤波是一种简单而实用的图像滤波方法。

图像抽象化处理后,源图像中的很多细节信息被忽略,大块区域颜色比较接近或平滑过渡。这时需要对图像进行量化处理,以使生成的图像具有卡通画的着色风格。在对输入图像进行量化处理时,需要将输入图像由RGB空间转换到Lab空间,以分离出亮度通道进行量化,将量化后的亮度通道与a和b两空间融合,得到量化图像,再将色彩空间由Lab转换到RGB空间。本文利用文献[7]提出的颜色软量子化方程对亮度通道进行量化。式(6)中 Δq 是量化等级宽度, qnearest是f()最近的量化级, φq是控制不同的量化等级之间过渡的尖锐程度。

量化后,在用2.1中用FDOG得出的线条画叠加到量化图像上,得到不含光照效果的卡通图像。如图4所示。

2.5 光照编辑

由于分离出了输入照片的光照图像和材质图像,因此,可以对光照信息进行单独的编辑和增强,然后添加到2.3方法得到的卡通头像上,从而生成具有不同光照效果的人脸卡通图像。

图4 材质图的抽象化

对光照进行编辑和增强的方法有很多种,本文主要采取了以下几种方法对光照进行编辑:

(1) 量化:量化操作就是对分离出的光照图像进行量化,把变化连续的光照图像量化成几个等级,使人脸上的光照看起来层次分明,增强图像的卡通效果。可采用一般的均匀量化来实现。

式(7)将光照图像 Li( x , y )量化成4个等级。a0、 a1、 a2、 a3、 a4是选取量化范围的阈值参数。l1、 l2、 l3、 l4是每一量化等级选取的量化值,当然还可以根据需要任意选取量化等级,量化范围与量化值。

(2) 阈值化:是另一种直接的光照编辑方法,即选取一个合适的阈值将光照图像简单地分成亮区和暗区。使人们直观地感受到照片中光源的入射方向。具体做法是:首先将得到的彩色光照图Li( x, y ) (i=1,2,3表示R,G,B三个通道)转换成灰度图 G( x ,y );然后给定一个阈值 a0,满足G( x, y ) >a0的点,属于亮部区域B,否则,属于暗部区域S。

式(8)采用阈值 a0将光照图像简单地分为亮区B和暗区S。

(3) 反向:将分解得到的光照图像进行反转,这样得到的效果是将光源反转后产生的光照效果。反向的具体做法是:首先取彩色光照图像 Li( x , y) (i=1,2,3表示R,G,B三个通道)在此存储精度上的像素最大值为Max(x ,y ),然后令:

经式(9)计算得到反转之后的光照图像Li( x, y)。

(4) 增强明暗对比度:通过改变明暗对比度的方法,增强光照的视觉感受。增大光照图像里亮区的像素值,减小光照图像暗区的像素值。实现增强光照明暗对比度的效果,随着对比度的增加,照片明暗部分更加分明,看起来光照增强了。

(5) 非线性增强:对光照图像在R,G,B三个通道分别做非线性变换,获得更丰富的效果。常用的非线性变换有对数变换和指数变换等。

对数变换的一般表达是为:

这里a,b,c是为了调整曲线的位置和形状而引入的参数,通过调整参数可以得到丰富的效果。当希望对图像的低灰度区域产生较大的拉伸而对高灰度区域压缩时,采用这种变换。

指数变换的一般表达式为:

这里a,b,c是为了调整曲线的位置和形状,这种变换能对图像的高灰度区域给予较大的拉伸。

(6) 滤波:对经过变换的光照图像进行各种滤波平滑,产生更为丰富的效果。

以上几种方法可以综合运用,按照各自的需求改动光照图像以获得满意的光照效果。图5是经过编辑后光照的效果图。可以看到,对人脸卡通图像加上丰富的光照效果后,使得图片三维立体感更强,形象更加生动。

3 实验结果

名星人脸照片一般是由专业摄影师拍摄,光照效果明显,因此,选取了几幅明星人脸肖像照片用本文的算法进行处理,得到卡通人脸画。Befunky软件是现今一款较为流行的图像编辑软件,能实现多种多样的图片特效,这里只使用Befunky生成卡通图像的功能。将本文算法的结果与用Befunky软件处理得到的卡通人脸图像进行比较,如图6所示。

经过比较图6可以看到:本文算法由于采用了ETF的轮廓提取算法,生成的线条画更加连贯,轮廓更加清晰明显,且抽象算法中加入了颜色亮度通道的软量化,使得卡通图的颜色更加层次分明,编辑光照之后可产生更加丰富的光影效果。

图5 光照编辑结果图

图6 本文算法与Befunky的对比图

将本文算法与文献[7]进行比较。图7(a)是文献[7]算法得到的卡通效果图,图7(b)是本文算法的结果。与本文算法的结果进行比较可以看出,由于左图中是在没有将光照和材质分离的情况下对整个图片进行量化抽象处理的,量化的结果在光照上没有明显的意义;而本文算法是将光照与材质进行分离之后再进行量化操作,量化操作是对光照和材质分别进行的。这样不仅改善了量化的效果,还方便了对光照的后续编辑操作。从图中可以看出,图7(a)的效果比较凌乱,效果图中脸颊和眼眶处的光照对比强烈,效果生动。

图7 与文献[7]结果对比图

本文算法更多实验结果如图8所示,其中左列图是对光照图像进行量化等级(L=8)的量化操作得到的结果;中列图是对光照图像进行量化(L=8)并增强光照后的结果;右列图是对光照图像进行量化,量化等级(L=8)并进行线性指数变换(a=1,b=2.2,c=1.4)后得到的结果。可以看到,对光照图像的量化产生的效果更加符合卡通图的特点,量化之后再辅助其他光照编辑操作,就可以产生含有丰富光照效果的人脸卡通图。从图8中可以看出本文算法产生的卡通图像效果逼真,保留了原有照片的丰富细节,并可以编辑光照,使图片的三维立体感更强,看起来更加形象。

图8 更多实验结果

4 总结与展望

针对人脸肖像照片,本文提出了可编辑光照效果的人脸卡通肖像画生成算法。利用本征分解方法分离光照和材质,把经过编辑之后的光照图像加到基于材质图像生成的不含光照的卡通图像上,得到含有光照效果的人脸卡通肖像画。算法输入简单且操作方便,生成的卡通肖像画效果理想。其算法的缺陷是对某些光照较强的照片,本征分解不能很好地分离光照和材质信息,使得生成的不含光照的卡通图实际上还是包含一少部分光照信息,影响编辑的光照效果。同时,本征分解算法复杂度较高,运行速度较慢。如何更准确地分离光照和材质信息以及提高本征分解算法的效率将是今后努力和研究的方向。此外,对输入信息是三维模型进行非真实感绘制也是算法今后扩展和研究的方向。

[1]Gooch B, Reinhard E, Gooch A. Human facial illustrations: creation and psychophysical evaluation [J]. ACM Transactions on Graphics (TOG), 2004, 23(1): 27-44.

[2]Chen Hong, Xu Yingqing, Shum H Y, et al. Example-based facial sketch generation with non-parametric sampling [C]//Computer Vision, 2001. ICCV 2001. Proceedings. Eighth IEEE International Conference on. IEEE, 2001: 433-438.

[3]Chen Hong, Liu Ziqiang, Rose C, et al. Example-based composite sketching of human portraits [C]//Proceedings of the 3rd International Symposium on Non-Photorealistic Animation and Rendering. ACM, 2004: 95-153.

[4]陈 洪, 郑南宁, 梁 林, 等. 基于样本学习的肖像画自动生成算法[J]. 计算机学报, 2003, 26(2): 147-152.

[5]Simoncelli E P. Statistical models for images: compression, restoration and synthesis [C]//Signals, Systems & Computers, 1997. Conference Record of the Thirty-First Asilomar Conference on. IEEE, 1997: 673-678.

[6]姚 芸. 基于照片含可调光照效果的人脸非真实感绘制[D]. 杭州: 浙江大学, 2008.

[7]Winnemöller H, Olsen S C, Gooch B. Real-time video abstraction [J]. ACM Transactions On Graphics (TOG), 2006, 25(3): 1221-1226.

[8]DeCarlo D, Santella A. Stylization and abstraction of photographs [C]//ACM Transactions on Graphics (TOG). ACM, 2002, 21(3): 769-776.

[9]Barron J T, Malik J. Color constancy, intrinsic images,and shape estimation [M]. Computer Vision–ECCV 2012. Springer Berlin Heidelberg, 2012: 57-70.

[10]Barron J T, Malik J. Shape, albedo, and illumination from a single image of an unknown object [C]//Computer Vision and Pattern Recognition (CVPR), 2012 IEEE Conference on. IEEE, 2012: 334-341.

[11]Hertzmann A. Painterly rendering with curved brush strokes of multiple sizes [C]//Proceedings of the 25th annual conference on computer graphics and interactive techniques. ACM, 1998: 453-460.

[12]Curtis C J, Anderson S E, Seims J E, et al. Computer-generated watercolor [C]//Proceedings of the 24th Annual Conference on Computer Graphics and Interactive Techniques. ACM Press/Addison-Wesley Publishing Co., 1997: 421-430.

[13]阎 芳, 费广正, 柳婷婷, 等. 漫画风格的人脸肖像生成算法[J]. 计算机辅助设计与图形学学报, 2007, 19(4): 442-447.

[14]黄 华, 程 威. 实时图像素描风格化[J]. 计算机学报, 2009, 32(10): 2023-2029.

[15]Kang H, Lee S, Chui C K. Coherent line drawing [C]// Proceedings of the 5th International Symposium on Non-Photorealistic Animation and Rendering. ACM, 2007: 43-50.

[16]Tomasi C, Manduchi R. Bilateral filtering for gray and color images [C]//Computer Vision, 1998. Sixth International Conference on. IEEE, 1998: 839-846.

[17]Barash D, Comaniciu D. A common framework for nonliear diffusion, adaptive smoothing, bilateral filtering and mean shift [J]. Image and Vision Computing, 2004, 22(1): 73-81.

An Algorithm Generating Human Face Cartoon Portrait Including Light Editing Based on Photo

Song Yang1, Liu Yanli1,2
(1. State Key Laboratory of Fundamental Science on Synthetic Vision, Sichuan University, Chengdu Sichuan 610065, China; 2. College of Computer Science, Sichuan University, Chengdu Sichuan 610065, China)

An algorithm generating human face cartoon portrait including light editing is presented based on photo. The algorithm first extracts the contour of the input image to generate the line drawing. Secondly, the intrinsic image decomposition method is used to produce the shading and reflectance image. Then the illumination image is edited by using of methods such as quantization, nonlinear enhancement, and the cartoon image is produced combining the abstracted reflectance image with line drawing. Finally, edited illumination image is added to the cartoon image to generate the facial cartoon portrait with illumination effects. The experimental results show that the generated facial cartoon portrait looks lifelike by our algorithm which has the function of editing illumination.

human face; cartoon; illumination edit; non-photorealistic rendering

TP 391

A

2095-302X(2015)01-0083-07

2014-08-11;定稿日期:2014-08-20

国家自然科学基金资助项目(61103137);国家科技支撑计划资助项目(2012BAH62F02);国家“863”计划资助项目(2013AA013902)

宋 阳(1988-),男,河南平顶山人,硕士研究生。主要研究方向为计算机视觉与图形图像、非真实感绘制。E-mail:softwaresy@sina.com

刘艳丽(1981-),女,河南周口人,副教授,博士。主要研究方向为增强现实、图像视频处理。E-mail:yanliliu@scu.edu.cn

猜你喜欢

真实感卡通人脸
有特点的人脸
一起学画人脸
三国漫——人脸解锁
鸡鸣狗盗皮皮猪卡通
南丰蜜桔造型
趣味的卡通穿上身
找不同
长得象人脸的十种动物