面向在线实时应用的卡通风格化方法
2015-08-17洪朝群陈旭辉
洪朝群,陈旭辉
(1.厦门理工学院计算机与信息工程学院,福建 厦门 361024;2.福建省高校物联网应用技术重点实验室,福建 厦门 361024)
面向在线实时应用的卡通风格化方法
洪朝群1,2,陈旭辉1,2
(1.厦门理工学院计算机与信息工程学院,福建 厦门 361024;2.福建省高校物联网应用技术重点实验室,福建 厦门 361024)
针对视频的卡通风格化存在着处理速度慢和连续帧中边缘视觉效果差的问题,提出具有高实时性的视频卡通风格化处理方法.该方法主要包括扩展非线性扩散、边缘检测、彩色量化和融合4个步骤.边缘检测算法基于高斯-拉普拉斯算子进行改进,速度更快而且在连续帧中视觉效果更好;在扩展非线性扩散和色彩量化的过程中利用查表法获取滤波系数和量化值,避免了对每一个像素计算高斯方程和量化方程,进一步提高了速度;同时,在传输过程中对边缘图像和量化图像采取分离编码进行传输,降低了码率.实验证明,在视频聊天、在线游戏等实时性要求高的应用场合中,该方法对人脸和景物都取得了良好的卡通风格化效果.
卡通风格化;实时应用;边缘检测;扩展非线性扩散;色彩量化
目前,各种图像与视频风格化特效被广泛应用到在线视频聊天场合,用于增强娱乐效果或者改变自己的形象.微软的LiveMessenger、罗技的USB摄像头驱动已经实现了部分特效并进入实际应用领域.而在线游戏同样有类似需求.把现实抽象为卡通、动漫风格的方法是图像与视频风格化的方法之一,通常被称为卡通风格化,最近倍受国内外研究工作者的关注[1-5].在卡通风格化的相关方法中,DougDeCarlo和AnthonySantella提出了一种处理照片的算法[6],用于获得简化的、风格化的视觉效果,然而该方法没有考虑实时性的要求,只应用于静态图像,未能应用于视频序列当中.Wang提出了把现实视频转化为卡通化视频的半自动算法[7],该算法复杂度很高,不适合实时处理应用.JanFischer等人提出了一种更快的方法[8],并且应用于虚拟现实系统,但是所获得的视觉效果存在问题,特别是视频中连续帧的边缘效果,会出现前一帧中被检测为边缘的部分在下一帧的相似位置被检测为非边缘的现象.这一问题当视频中存在人脸的时候尤为明显.Winnnemoller等人提出了实时视频抽象方法[9],获得了比较好的效果,但是该方法的速度仍然较慢,在CPU模式下对于CIF分辨率的视频仅能达到每秒3到4帧,因此不能满足在线视频聊天等应用的高实时性要求.可见,现有方法在风格化速度和连续帧的边缘检测效果上还存在不足.本文基于传统卡通风格化方法的框架,在上述两方面提出了相应的改进方法,使其能够满足在线视频聊天等应用的高实时性要求.
1 本文提出的改进方法
基于对当前工作问题的分析,本文提出的改进处主要包括:
1)针对边缘检测过程,采用基于高斯-拉普拉斯算子(LaplacianofGaussian,LOG)的方法;
2)针对扩展非线性扩散和彩色量化过程,采用查表的方式获得滤波系数和量化值;
3)除了对风格化视频帧进行编码过程外,将边缘检测和量化的结果数据分离.
1.1整体结构
本文提出的实时卡通风格化方法的整体结构主要分为扩展非线性扩散、边缘检测、彩色量化和融合4个步骤.通过扩展非线性扩散的滤波处理,图像中对比度较高的边缘区域被锐化,而对比度较低的区域被平滑.扩展非线性扩散的这种特性可以提高边缘部分的对比度,增强边缘检测算法的效果.边缘检测算法应用到扩散后的图像上,可以得到视频帧中梯度变化较为明显的部分,即边缘信息,从而获得素描的效果.而色彩量化应用到扩散后的图像上,则可获得油画的效果.最后,将边缘检测和色彩量化的结果进行融合,便可产生卡通风格化的效果.
1.2扩展非线性扩散
在视频风格化的过程中,边缘检测是计算复杂度最高的部分.先通过滤波操作锐化边缘区域,然后通过边缘检测算子获得梯度变化剧烈的像素点,即边缘点.在滤波操作中,采用扩展非线性扩散.该方法最早由Barash和Comaniciu[10]提出,迭代双边滤波是其中的一个方法,并且可以使用Pham和Vliet提出的分离内核方法[11]进行近似,加快滤波操作的处理速度.
一维双边滤波可以用公式(1)来表示:
(1)
式(1)中x0是中心点p0的纵坐标或者横坐标,s是p0到滤波窗口边缘的距离,I(p0)是p0的灰度值.f(x,x0)是p0周围的双边滤波器,定义为:
(2)
式(2)中σs和 σt是双边滤波的空间和色调比例.在本文实现的系统中,分别设定σs=3 和σt=25.这些设定值比文献[9]方法中所使用的值高,因为经过实验证明,较高的值可以在不进行多次循环处理的情况下获得对比度较高的结果,从而提高处理速度.gs和gt分别为空间和色调权重系数,由高斯方程定义为:
(3)
在分离内核的滤波方法中,一维双边滤波首先被应用到第一维空间上,接着对第一维空间上的滤波结果在第二维空间上进行二次滤波.通过该处理方式,扩展非线性扩散的计算复杂度从O(Nmd) 降为O(Nmd),其中N是图像中的像素数量,m是滤波窗口的宽度,d是图像的维数.因此,使用双边滤波可以使滤波过程的处理速度得到明显的提高.
观察公式(1)和(2)中的参数,可以发现输入参数的定义域为:
(4)
1.3边缘检测
现有的边缘检测方法非常多,包括了Canny算子[12]、LOG算子[13]等.本文所使用的边缘检测方法基于Shen等提出的LOG算子的实时化实现[14].原始的LOG算子值域较大.Shen等利用了LOG算子的循环对称特性,使得查询表的大小控制在可接受的范围内.
离散LOG掩码定义为:
(5)
式(5)中k要使得掩码系数D(x,y,σd)的和接近于0,即k满足:
(6)
设w(i)代表高斯-拉普拉斯掩码数值.由于LOG算子的循环对称特性,掩码数值构成的数组的大小为:
(7)
因此本文中的LOG算子掩码的查询表可以表示为:
(8)
式(8)中i是表1中所示掩码的位置,j是要进行LOG算子掩码计算的点的灰度值.其中i和j的定义域表示为:
(9)
1.4色彩量化
标量量化方程定义为:
(10)
式(10)中qclosest是最接近于p0灰度值的量化边缘,Δq是量化宽度,φq是控制边缘尖锐程度的参数.本文在实验中设置这两个参数为:
(11)
根据观察,量化方程唯一的参数是I(p0),其定义域为:
(12)
类似调色板的思想,本文的方法初始化一个一维数组来保存所有灰度值可能的量化结果.该数组的大小为256.最终的量化操作便通过简单获取数组中第I(p0)个值来立即获得点p0的量化值.该方法也可以很容易地拓展到彩色图像的量化过程当中,以RGB颜色向量来代替I(p0).这一改进方法通过消耗一定的内存空间,大幅度提升了处理速度.
1.5分离编码
对于在线视频聊天而言,带宽往往是有限的.特别是面向移动网络的应用更是如此.实验表明,如果直接将风格化的结果进行编码,则效率较低,不利于网络传输.本文实现的系统把色彩量化与边缘检测结果分别进行编码,然后在解码端分别解码再结合成为完整的风格化结果.其中,量化结果直接进行编码,而边缘检测的结果转化为二值图像进行编码.该二值图像定义为:
(13)
2 实验结果
本文的实验系统运行在赛扬2.8 GHz、内存为512 MB的计算机上.系统用Visual C++2005实现.视频序列的分辨率为CIF.原始视频进行实时卡通风格化,并通过网络传输进行在线播放.
2.1边缘检测结果
为了展示边缘检测方法的效果,本文使用的检测方法与Canny算子进行了比较.
在Canny算子中使用的两个参数被设置为105和150[12].此处列出了Akiyo序列的第4帧和第5帧.如图1所示,在Canny算子的检测结果中,部分衣服的边缘在第4帧中被成功检测,而在第5帧中丢失(如播音员胸口的麦克风),但本文改进后的方法则未出现此种现象.因此,本文的方法在连续帧中的视觉效果比Canny算子好.另,本文的方法平均时间消耗为每帧1.8 ms,而Canny算子的平均时间消耗为每帧3.2 ms.
2.2色彩量化结果
为了展示色彩量化方法的效果,改进的方法应用到CIF分辨率的Akiyo、Carphone和Silence序列中.经过实验证实,该方法只需要一次初始化过程就能在整个视频的处理过程中获得良好的速度提升,所消耗的时间仅为未经优化的色彩量化方法的30%.同时,该方法所实现的油画效果良好(图2).2.3时间消耗
本实验记录了实验中对Carphone和Silence序列进行卡通风格化全部处理过程的平均时间,并且与文献[5]和[9]的方法进行比较,结果如表1所示.从表1可见,本文的方法速度更快,更适合实时应用.
表1 时间消耗的比较
2.4编码效率
把原始视频、风格化后的视频以及分离的视频帧分别用Xvid进行编码,获取各自的编码后数据大小,结果如表2所示.实验表明,与原始的视频帧1相比,对风格化结果进行编码会增加码率.而对量化结果和边缘检测结果分离后进行编码,空间消耗比直接对风格化帧进行编码更低,而且与原始数据的尺寸差别很小,使得本文提出的风格化方法更能适应在线视频应用.
表2 分离编码与未分离编码的空间消耗比较
2.5风格化效果
为了展示本文实现的系统中连续帧的视觉效果,本实验在图3中列出了Carphone序列的第27帧到第30帧,在图4中列出了Silence序列的第7帧到第10帧.这些序列与在线视频聊天的场景比较类似.这组实验说明本文实现的系统在有人脸的场景下获得了良好的视觉效果.
3 结论
通过边缘检测方法的改进,视频风格化整体处理速度得到明显提高,而且在视频中连续帧的视觉效果超过了其他使用固定阈值的边缘检测方法;避免了对每一个点计算高斯方程和量化方程的大量时间消耗,实现了对视频的实时处理;通过对风格化后的视频进行分离压缩,减小了传输和存储过程中的数据量.基于这一方法,本文实现了一套风格化系统,并且应用到高实时性要求的场合中,如在线聊天等.该方法完全自动运行,从而扩展了风格化方法的应用领域.
[1]ZHAO H,JIN X,SHEN J,et al.Real-time feature-aware video abstraction[J].The Visual Computing,2008,24(7):727-734.
[2]ZHAO H,MAO X,JIN X,et al.Real-time saliency-aware video abstraction[J].The Visual Computer,2009,25(11):973-984.
[3]KANG H,LEE S,CHUI C K.Flow-based image abstraction[J].IEEE Transaction on Visualization and Computer Graphics,2009,15(1):62-76.
[4]胡光琴,唐旭光,胡矿,等.卡通画的非真实感绘制技术[J].实验科学与技术,2012,10(5):39-41.
[5]高宝玉,方漪,杜娜,等.基于 RGB 颜色向量的二维彩色图像卡通风格渲染[J].青岛大学学报:自然科学版,2010,23(2):31-37.
[6]DECARLO D,SANTELLA A.Stylization and abstraction of photographs[C]//International Conference on Computer Graphics and Interactive Techniques.New York:ACM,2002:769-776.
[7]WANG J,XU Y,SHUM H Y,et al.Video tooning[C]//International Conference on Computer Graphics and Interactive Techniques.New York:ACM,2004:574-583.
[8]FISCHER J,BARTZ D,STRABER W.Stylized augmented reality for improved immersion[C]//Virtual Reality Conference.USA:IEEE,2005:195-202.
[9]WINNEMOLLER H,OLSEN S C,GOOCH B.Real-time video abstraction[J].ACM Transactions on Graphics,2006:1 221-1 226.
[10]BARASH D,COMANICIU D.A common framework for nonlinear diffusion,adaptive smoothing,bilateral filtering and mean shift[J].Image and Vision Computing,2004,22(1):73-81.
[11]PHAM T Q,VLIET L J.Seperal bilateral filtering for fast video preprocessing[C]//International Conference on Multimedia and Expo.USA:IEEE,2005:CD.1-4.
[12]CANNY J.A computational approach to edge detection[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,1986,6:679-698.
[13]HUERTAS A.Detection of intensity changes with subpixel accuracy using laplacian-gaussian masks[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,1986,8(5):651-664.
[14]SHEN L Q,SHEN D G,QI F H.Edge detection on real time using LOG filter[C]//International Symposium on Speech,Image Processing and Neural Networks.USA:IEEE,1994:37-40.
(责任编辑马诚)
Cartoon-like Video Stylization for Online Real-time Applications
HONG Chao-qun1,2,CHEN Xu-hui1,2
(1.School of Computer & Information Engineering,Xiamen University of Technology,Xiamen 361024,China;2.Fujian Universities Key Lab of IOT Application Technology,Xiamen 361024,China)
Cartoon-like stylization for video suffers the problems of low speed and unpleasant visual effect of edges in contiguous frames.In this paper,a novel approach of cartoon-like stylization for video is presented,which works well for occasions with a high real-time requirement. Generally speaking,this approach consists of four steps:extended nonlinear diffusion, edge detection, color quantization and fusion. In this approach,the edge detection algorithm is improved based on the Laplacian of Gaussian(LOG).It is faster and has better visual effect of edges in contiguous frames. In addition to that,an implementation based on querying the tables of filter coefficients and quantization values is used in extended nonlinear diffusion and color quantization. It avoids computing Gaussian function and quantization function for each pixel and further improves the speed of the proposed method.Furthermore,the encoding process of the edge picture and quantized picture are separated, which reduces the bit-rate.The experimental results show that the proposed method performs well on the human faces and scenery in the circumstances of video chatting and online games.
Cartoon-like stylization;real-time applications;edge detection;extended nonlinear diffusion;color quantization
2014-09-26
2014-11-27
国家自然科学基金项目(61202145);福建省自然科学基金项目(YKJ12005R)
洪朝群(1984-),男,副教授,博士,研究方向为多媒体信息处理与检索.E-mail:cqhong@xmut.edu.cn
TP391A
1673-4432(2015)01-0073-06